From: Jakub Jelinek Date: Thu, 1 Jan 2026 17:50:16 +0000 (+0100) Subject: Rotate ChangeLog files. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=24fbc14eeb90a913c37bc8a17717fc51e3cb3abb;p=thirdparty%2Fgcc.git Rotate ChangeLog files. Rotate ChangeLog files for ChangeLogs with yearly cadence. Also remove empty lines before Form Feed line. --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f44ba0afc7e..923c914865e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,36190 +1,5 @@ -2025-12-31 Pietro Monteiro - - * doc/install.texi (--enable-languages): Fix typo. - -2025-12-31 Jeff Law - - PR target/121485 - * config/riscv/vector-crypto.md: Fix mode attribute for the - lmul extending Zvkned patterns. - -2025-12-30 Jeff Law - - PR target/123318 - * config/riscv/riscv.cc (riscv_legitimize_const_move): Force - riscv_split_symbol to generate a new temporary if the provided - one isn't Pmode. - -2025-12-29 Andrew Pinski - - * ifcvt.cc (noce_try_cond_zero_arith): Remove restriction on comparison - against 0. - -2025-12-29 Andrew Pinski - - PR rtl-optimization/123308 - * ifcvt.cc (noce_try_cond_zero_arith): If noce_emit_cmove fails - for a lowpart subreg case, then try the full reg cmove and - take the lowpart subreg afterwards. - -2025-12-29 Andrew Pinski - - * ifcvt.cc (noce_try_cond_zero_arith): Don't swap if_info->cond - but use it directly with if_info->rev_cond. - -2025-12-29 Jakub Jelinek - - * auto-profile.cc (string_table::get_original_name): Avoid using - init-statement in selection statement. - -2025-12-29 Rainer Orth - - * configure: Regenerate. - -2025-12-29 Hongyu Wang - - * config/i386/i386.md (*setcc_qi): Force output setzucc for - reg operand[0]. - (*setcc_qi_slp): Likewise. - -2025-12-29 Andrew Pinski - - PR rtl-optimization/123295 - * lra-eliminations.cc (lra_eliminate_regs_1): For a debug - insn, create a raw SUBREG if simplify_gen_subreg fails. - -2025-12-28 Rainer Orth - - * configure.ac (gcc_cv_ld_ctf): New check. - (gcc_cv_have_ctfmerge): Likewise. - * configure: Regenerate. - * config.in: Regenerate. - * config/sol2.h (SCTF_CC1_SPEC): Define. - (LINK_SCTF_SPEC): Define. - (LINK_SPEC): Add LINK_SCTF_SPEC. - * config/i386/sol2.h (CC1_SPEC): Add SCTF_CC1_SPEC. - * config/sparc/sol2.h: Likewise. - * config/sol2.opt (gsctf): Declare. - * config/sol2.opt.urls: Regenerate. - * doc/invoke.texi (Option Summary): Add -gsctf. - (Solaris 2 Options): Document it. - -2025-12-28 Rainer Orth - - * configure.ac (gcc_cv_as_ix86_xbrace_comment): Remove. - * configure: Regenerate. - * config.in: Regenerate. - * config/i386/sol2.h (ASM_XBRACE_COMMENT_SPEC): Adapt guard. - -2025-12-27 Jakub Jelinek - - PR rtl-optimization/123114 - * simplify-rtx.cc (simplify_context::simplify_relational_operation): - Verify XEXP (XEXP (op0, 0), 0) mode and use CONST0_RTX (cmp_mode) - instead of CONST0_RTX (mode). - -2025-12-27 Andrew Pinski - - Revert: - 2025-12-24 Andrew Pinski - - * ifcvt.cc (noce_process_if_block): Move noce_try_cond_zero_arith - last. - -2025-12-26 Jeff Law - - PR target/123283 - * config/riscv/sync.md (subword_atomic_fetch_strong_nand): Add - USEs for naked operands that might be pseudos. - (subword_atomic_fetch_strong_): Likewise. - (subword_atomic_exchange_strong): Likewise. - (subword_atomic_cas_strong): Likewise. - -2025-12-26 Sandra Loosemore - - * config/i386/i386.opt.urls: Regenerated. - * config/riscv/riscv.opt.urls: Regenerated. - -2025-12-26 Sandra Loosemore - - * config/riscv/gen-riscv-ext-texi.cc: Fix table markup and - layout. - * config/riscv/riscv-ext-corev.def: Document missing extensions, - regularize spelling/capitalization in existing descriptions - * config/riscv/riscv-ext-mips.def: Likewise. - * config/riscv/riscv-ext-sifive.def: Likewise. - * config/riscv/riscv-ext-thead.def: Likewise. - * config/riscv/riscv-ext.def: Likewise. - * doc/riscv-ext.texi: Regenerated. - -2025-12-26 Sandra Loosemore - - PR other/122243 - * config/riscv/riscv.opt (mplt): Mark deprecated option Undocumented. - (msmall-data-limit=): Mark RejectNegative. - * doc/invoke.texi (Option Summary) : Remove -mplt - documentation. Only list one form of each option. Add missing - options -mcpu, -mscalar-strict-align, -mno-vector-strict-align, - -momit-leaf-frame-pointer, -mstringop-strategy, -mrvv-vector-bits, - -mrvv-max-lmul, -madjust-lmul-cost, -mmax-vectorization, and - -mno-autovec-segment. - (RISC-V Options): Remove -mplt documentation. Add documentation for - missing options listed above. Add missing index entries for negative - forms. Correct the default for the -minline-str* options, which - has changed. Copy-edit for markup, spelling, and usage. Trivial - whitespace fixes. - -2025-12-25 Arsen Arsenović - - * tree-ssa-math-opts.cc (execute_cse_sincos_1): If - mathfn_built_in_type fails to determine a type for our - operation, presume that it is the same as the input type. - -2025-12-24 Pan Li - - * config/riscv/predicates.md: Add geu to the swappable - cmp operator iterator. - * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Take - care of the swapped rtx code correspondly. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sve-builtins-base.cc: (svmul_impl::fold): - Replace use of type_suffix_pair with type_suffix_triple. - * config/aarch64/aarch64-sve-builtins-shapes.cc: (parse_element_type): - Handle third type suffix. - (parse_type): Handle c2 in function signature. Add the u signature with - the ability to pass a tuple with twice as many vectors as the base type. - Calculate number of vectors against the type with the maximum number of - bits rather than "the other one". - (load_contiguous_base::resolve): Add argument to resolve_to call. - (compare_scalar_def::resolve): Likewise. - (ternary_mfloat8_def::resolve): Likewise. - (ternary_mfloat8_lane_def::resolve): Likewise. - (ternary_mfloat8_opt_n_def::resolve): Likewise. - * config/aarch64/aarch64-sve-builtins.cc: (TYPES_all_pred, - TYPES_all_count, TYPES_all_pred_count, TYPES_all_float, - TYPES_all_signed, TYPES_all_float_and_signed, TYPES_all_unsigned, - TYPES_all_integer, TYPES_all_arith, TYPES_all_data, TYPES_b, TYPES_c, - TYPES_b_unsigned, TYPES_b_integer, TYPES_b_data, TYPES_bh_integer, - TYPES_bs_unsigned, TYPES_bhs_signed, TYPES_bhs_unsigned, - TYPES_bhs_integer, TYPES_bh_data, TYPES_bhs_data, TYPES_bhs_widen, - TYPES_h_bfloat, TYPES_h_float, TYPES_h_integer, TYPES_h_data, - TYPES_hs_signed, TYPES_hs_integer, TYPES_hs_float, TYPES_hs_data, - TYPES_hd_unsigned, TYPES_hsd_signed, TYPES_hsd_integer, TYPES_hsd_data, - TYPES_h_float_mf8, TYPES_s_float, TYPES_s_float_mf8, - TYPES_s_float_hsd_integer, TYPES_s_float_sd_integer, TYPES_s_signed, - TYPES_s_unsigned, TYPES_s_integer, TYPES_s_data, TYPES_sd_signed, - TYPES_sd_unsigned, TYPES_sd_integer, TYPES_sd_data, - TYPES_all_float_and_sd_integer, TYPES_d_float, TYPES_d_unsigned, - TYPES_d_integer, TYPES_d_data, TYPES_cvt, TYPES_cvt_bfloat, - TYPES_cvt_h_s_float, TYPES_cvt_f32_f16, TYPES_cvt_long, - TYPES_cvt_narrow_s, TYPES_cvt_narrow, TYPES_cvt_s_s, TYPES_cvt_mf8, - TYPES_cvtn_mf8, TYPES_cvtnx_mf8, TYPES_inc_dec_n, TYPES_qcvt_x2, - TYPES_qcvt_x4, TYPES_qrshr_x2,TYPES_qrshru_x2, TYPES_qrshr_x4, - TYPES_qrshru_x4, TYPES_reinterpret, TYPES_reinterpret_b,TYPES_while, - TYPES_while_x, TYPES_while_x_c, TYPES_s_narrow_fsu,TYPES_all_za, - TYPES_d_za, TYPES_za_bhsd_data,TYPES_za_all_data, TYPES_za_h_mf8, - TYPES_za_hs_mf8, TYPES_za_h_bfloat, TYPES_za_h_float, - TYPES_za_s_b_signed, TYPES_za_s_b_unsigned, TYPES_za_s_b_integer, - TYPES_za_s_h_integer,TYPES_za_s_h_data, TYPES_za_s_unsigned, - TYPES_za_s_integer, TYPES_za_s_mf8, TYPES_za_s_float, TYPES_za_s_data, - TYPES_za_d_h_integer, TYPES_za_d_float, TYPES_za_d_integer, - TYPES_mop_base, TYPES_mop_base_signed, TYPES_mop_base_unsigned, - TYPES_mop_i16i64, TYPES_mop_i16i64_signed, TYPES_mop_i16i64_unsigned, - ΤYPES_za): Extend defines to three arguments. - (DEF_VECTOR_TYPE, DEF_DOUBLE_TYPE): Likewise. - (DEF_TRIPLE_TYPE): Add new define. - (DEF_SVE_TYPES_ARRAY): Redefine all types_ arrays into arrays of - type_suffix_triple. - (types_none): Likewise. - (function_instance::hash): Add third type to hash calculation. - (function_builder::get_name): Add third type to function name. - (function_builder::add_overloaded_functions): Handle third type. - (function_resolver::lookup_form): Likewise. - (function_resolver::resolve_to): Likewise. - (function_resolver::resolve_unary): Likewise. - * config/aarch64/aarch64-sve-builtins.h: (type_suffix_triple): replace - type_suffix_pair. - (function_group_info::types): Likewise. - (function_instance::ctor): Likewise. - (function_instance::type_suffix_ids): Likewise. - (function_resolver::lookup_form): Add third type argument. - (function_resolver::resolve_to): Likewise. - (function_instance::operator==): Add third type to equality calculation. - -2025-12-24 Karl Meakin - - * config/aarch64/aarch64-sme.md - (@aarch64_sme_): New insn. - (@aarch64_fvdot_half): Likewise. - (@aarch64_fvdot_half_plus): Likewise. - * config/aarch64/aarch64-sve-builtins-functions.h - (class svvdot_half_impl): New function impl. - * config/aarch64/aarch64-sve-builtins-sme.cc (FUNCTION): Likewise. - * config/aarch64/aarch64-sve-builtins-shapes.cc (struct dot_half_za_slice_lane_def): - New function shape. - * config/aarch64/aarch64-sve-builtins-shapes.h: Likewise. - * config/aarch64/aarch64-sve-builtins-sme.def (svdot): New function. - (svdot_lane): Likewise. - (svvdot_lane): Likewise. - (svvdotb_lane): Likewise. - (svvdott_lane): Likewise. - * config/aarch64/aarch64-sve-builtins-sme.h (svvdotb_lane_za): New function. - (svvdott_lane_za): Likewise. - * config/aarch64/aarch64-sve-builtins.cc (TYPES_za_s_mf8): New types array. - (TYPES_za_hs_mf8): Likewise. - (za_hs_mf8): Likewise. - * config/aarch64/iterators.md (SME_ZA_F8F16): New mode iterator. - (SME_ZA_F8F32): Likewise. - (SME_ZA_FP8_x1): Likewise. - (SME_ZA_FP8_x2): Likewise. - (SME_ZA_FP8_x4): Likewise. - (UNSPEC_SME_FDOT_FP8): New unspec. - (UNSPEC_SME_FVDOT_FP8): Likewise. - (UNSPEC_SME_FVDOTT_FP8): Likewise. - (UNSPEC_SME_FVDOTB_FP8): Likewise. - (SME_FP8_DOTPROD): New int iterator. - (SME_FP8_FVDOT): Likewise. - (SME_FP8_FVDOT_HALF): Likewise. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sme.md - (@aarch64_sme_): Add - new define_insn. - * config/aarch64/aarch64-sve-builtins-shapes.cc - (struct binary_za_m_base): Support fpm argument. - * config/aarch64/aarch64-sve-builtins-sme.cc (svmopa_za): Extend for - fp8. - * config/aarch64/aarch64-sve-builtins-sme.def (svmopa): Add new - DEF_SME_ZA_FUNCTION_GS_FPM entries. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sme.md - (@aarch64_sme_): Add - new define_insn. - (*aarch64_sme__plus, - *aarch64_sme__plus, - @aarch64_sme_, - *aarch64_sme__plus, - *aarch64_sme__plus, - @aarch64_sme_single_, - *aarch64_sme_single__plus, - *aarch64_sme_single__plus, - @aarch64_sme_lane_, - *aarch64_sme_lane_, - *aarch64_sme_lane_): - Likewise. - * config/aarch64/aarch64-sve-builtins-shapes.cc - (struct binary_za_slice_lane_base): Support fpm argument. - (struct binary_za_slice_opt_single_base): Likewise. - * config/aarch64/aarch64-sve-builtins-sme.cc (svmla_za): Extend for fp8. - (svmla_lane_za): Likewise. - * config/aarch64/aarch64-sve-builtins-sme.def (svmla_lane): Add new - DEF_SME_ZA_FUNCTION_GS_FPM entries. - (svmla): Likewise. - * config/aarch64/iterators.md (SME_ZA_F8F16_32): Add new mode iterator. - (SME_ZA_FP8_x24, SME_ZA_FP8_x124): Likewise. - (UNSPEC_SME_FMLAL): Add new unspec. - (za16_offset_range): Add new mode_attr. - (za16_32_long): Likewise. - (za16_32_last_offset): Likewise. - (SME_FP8_TERNARY_SLICE): Add new iterator. - (optab): Add entry for UNSPEC_SME_FMLAL. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64.h: - (TARGET_STREAMING_SME_F8F16, TARGET_STREAMING_SME_F8F32): Add defines. - * config/aarch64/aarch64-c.cc: - (__ARM_FEATURE_SME_F8F16, __ARM_FEATURE_SME_F8F32): Add defines. - * config/aarch64/aarch64-option-extensions.def: - (sme-f8f16, sme-f8f32): Add arch options in command line. - * config/aarch64/aarch64-sve-builtins-functions.h: - (sme_2mode_function_t): Pass unspec_for_mfp8 parameter through ctor. - * config/aarch64/aarch64-sve-builtins-sme.def: - (DEF_SME_FUNCTION_GS, DEF_SME_FUNCTION): Redefine based on - DEF_SME_FUNCTION_GS_FPM. - (DEF_SME_ZA_FUNCTION_GS, DEF_SME_ZA_FUNCTION): Redefine based on - DEF_SME_ZA_FUNCTION_GS_FPM. - (AARCH64_FL_SME_F8F16, AARCH64_FL_SME_F8F32): Add new - REQUIRED_EXTENSIONS sections. - * config/aarch64/aarch64-sve-builtins.cc: - (TYPES_za_h_mf8): Add new types. - (TYPES_za_s_mf8): Likewise. - (sme_function_groups): Define using DEF_SME_FUNCTION_GS_FPM instead of - DEF_SME_FUNCTION_GS. - * doc/invoke.texi: (sme-f8f16, sme-f8f32): Add documentation of option. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sve-builtins-base.cc (svscale_impl): Added new - class for dealing with all svscale functions (including sve) - (svscale): updated FUNCTION macro call to make use of new class. - * config/aarch64/aarch64-sve-builtins-sve2.def: (svscale): - Added new DEF_SVE_FUNCTION_GS call to enable recognition of new variant. - * config/aarch64/aarch64-sve2.md (@aarch64_sve_fscale): Added - new define_insn. (@aarch64_sve_single_fscale): Likewise. - * config/aarch64/iterators.md: (SVE_Fx24_NOBF): Added new iterator, - similar to SVE_Fx24 but without brainfloat. - (SVE_Fx24): Updated to make use of SVE_Fx24_NOBF. - (SVSCALE_SINGLE_INTARG): Added new mode_attr. - (SVSCALE_INTARG): Likewise. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sve-builtins-base.cc (svcvt_impl): Update to - handle fp8 cases. - * config/aarch64/aarch64-sve-builtins-sve2.def (svcvt, svcvtn): Added - DEF_SVE_FUNCTION_GS_FPM instances. - * config/aarch64/aarch64-sve2.md - (@aarch64_sve2_fp8_cvtn): Updated define_insn for additional case. - (@aarch64_sme2_fp8_cvt): Added new define_insn. - * config/aarch64/iterators.md (VNx16F_NARROW): Added new iterator to - handle narrowing SVE floating point operations. - (UNSPEC_FCVT): Added new unspec. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sve-builtins-sve2.cc (svcvtl1, svcvtl2): Added - new FUNTIONs. - * config/aarch64/aarch64-sve-builtins-sve2.def - (svcvt1, svcvt2, svcvtl1, svcvtl2): Added new DEF_SVE_FUNCTION_GS_FPM. - * config/aarch64/aarch64-sve-builtins-sve2.h (svcvtl1, svcvtl2): Added - new function_base. - * config/aarch64/aarch64-sve-builtins.cc - (function_resolver::resolve_unary): use group_suffix_id when resolving - C overloads. - * config/aarch64/aarch64-sve2.md - (@aarch64_sve2_fp8_cvt_): Added new define_insn. - * config/aarch64/aarch64.h (TARGET_SSME2_FP8): Added new define. - * config/aarch64/iterators.md - (UNSPEC_F1CVTL. UNSPEC_F2CVTL): Added new unspecs. - (FP8CVT_UNS): Extended int_iterator. - (fp8_cvt_uns_op): Likewise. - -2025-12-24 Claudio Bantaloukas - - * config/aarch64/aarch64-sve-builtins.cc (TYPES_za_bhsd_data): Add - D (za8, mf8) combination to za_bhsd_data. - -2025-12-24 Andrew Pinski - - * ifcvt.cc (noce_process_if_block): Move noce_try_cond_zero_arith - last. - -2025-12-24 Andrew Pinski - - PR rtl-optimization/123276 - * ifcvt.cc (noce_try_cond_zero_arith): Reject non-scalar integral modes. - -2025-12-23 Jeff Law - - PR target/123274 - * config/riscv/riscv.md (usmul3): Add proper condition. - -2025-12-23 Jeff Law - - PR target/123278 - * config/riscv/andes-45-series.md (andes_45_fpu_alu_s): Handle - BF/HF modes too. - (andes_45_fpu_mul_s, andes_45_fpu_mac_s): Likewise. - -2025-12-23 Milan Tripkovic - - * config/riscv/spacemit-x60.md (spacemit_x60_clmul): Adjust latency. - -2025-12-23 Xi Ruoyao - - * config.gcc: Relax the check for LoongArch with_tune. - -2025-12-23 Andrew Pinski - - PR rtl-optimization/123267 - * ifcvt.cc (noce_try_cond_zero_arith): Pass the original operands - of a instead of the stripped off values. The mode of the operand - which is being used. - -2025-12-23 Dhruv Chawla - - * auto-profile.cc (struct summary_info): New struct. - (summary_info::read): New function. - (summary_info::get_threshold_count): Likewise. - (function_instance::read_function_instance): Read - afdo_profile_info->sum_max directly from summary info. - (autofdo_source_profile::read): Set afdo_hot_bb_threshold from - param_hot_bb_count_ws_permille. - (read_profile): Call summary_info->read. - (end_auto_profile): Free afdo_summary_info. - * gcov-io.h (GCOV_TAG_AFDO_SUMMARY): New define. - -2025-12-23 Dhruv Chawla - - * auto-profile.cc (string_table::~string_table): Update to free - original_names_map_. - (string_table::original_names_map_): New member. - (string_table::clashing_names_map_): Likewise. - (string_table::get_original_name): New function. - (string_table::read): Figure out clashes while reading. - (autofdo_source_profile::offline_external_functions): Call - get_original_name. - -2025-12-23 Dhruv Chawla - - * auto-profile.cc (AUTO_PROFILE_VERSION): Bump to 3. - (class function_instance_descriptor): New class. - (get_normalized_path): New function. - (string_table::~string_table): Update to free filenames. - (string_table::vector_): Rename to ... - (string_table::symbol_names_): ... this. - (string_table::map_): Rename to ... - (string_table::symbol_name_map_): ... this. - (string_table::filenames_): New member. - (string_table::filename_map_): Likewise. - (string_table::symbol_to_filename_map_): Likewise. - (string_table::get_index): Update to lookup symbol_name_map_. - (string_table::get_name): Rename to ... - (string_table::get_symbol_name): ... this. - (string_table::add_name): Rename to ... - (string_table::add_symbol_name): ... this. - (string_table::get_filename): New function. - (string_table::get_filename_by_symbol): Likewise. - (string_table::get_filename_index): Likewise. - (string_table::add_filename): Likewise. - (string_table::read): Read file names from the GCOV profile. - (function_instance::offline): Call - get_function_instance_by_descriptor. - (string_table::get_cgraph_node): Call get_symbol_name and - symbol_name. - (function_instance::get_function_instance_by_decl): Likewise. - (function_instance::get_cgraph_node): Likewise. - (function_instance::merge): Likewise. - (match_with_target): Likewise. - (function_instance::match): Likewise. - (function_instance::dump): Likewise. - (function_instance::dump_inline_stack): Likewise. - (function_instance::find_icall_target_map): Likewise. - (autofdo_source_profile::offline_unrealized_inlines): Likewise. - (autofdo_source_profile::offline_external_functions): Likewise. - (function_instance::read_function_instance): Likewise. - (afdo_indirect_call): - Also call find_function_instance, add_function_instance and - remove_function_instance. - (autofdo_source_profile::read): Likewise. - (autofdo_source_profile::get_function_instance_by_decl): Call - find_function_instance. - (autofdo_source_profile::get_function_instance_by_name_index): - Rename to ... - (autofdo_source_profile::get_function_instance_by_descriptor): - ... this. - (autofdo_source_profile::find_iter_for_function_instance): New - function. - (autofdo_source_profile::find_function_instance): Likewise. - (autofdo_source_profile::add_function_instance): Likewise. - (autofdo_source_profile::remove_function_instance): Likewise. - -2025-12-22 Kugan Vivekanandarajah - - PR middle-end/123067 - * tree-ssa-loop-im.cc(is_self_write): Check - load and store refer to same location. - -2025-12-22 Vineet Gupta - - * ifcvt.cc (get_base_reg): Handle subreg. - -2025-12-22 Vineet Gupta - Philipp Tomsich - - PR target/122769 - * ifcvt.cc (noce_try_cond_zero_arith): Use noce_emit_cmove. - Delete noce_emit_czero () no longer used. - -2025-12-22 Vineet Gupta - - * ifcvt.cc (noce_try_cond_zero_arith): Use expand_simple_binop - to re-expand the final pattern. - -2025-12-22 Vineet Gupta - - * ifcvt.cc (noce_try_cond_zero_arith): Refactor. - -2025-12-22 Vineet Gupta - - * ifcvt.cc (noce_bbs_ok_for_cond_zero_arith): Move logic out. - (noce_try_cond_zero_arith): Into here. - -2025-12-22 Jeff Law - - * config/riscv/riscv.cc (riscv_expand_mult_with_const_int): Signal - when this creates a simple copy that may be optimized. - (riscv_legitimate_poly_move): Try to optimize away any copy created - by riscv_expand_mult_with_const_int. - -2025-12-22 Filip Kastl - - * doc/invoke.texi: Document - --param=memtag-instrument-mem-intrinsics - -2025-12-21 Tamar Christina - - PR tree-optimization/123089 - * tree-vect-loop.cc (vect_update_ivs_after_vectorizer_for_early_breaks): - Add conversion if required, Note that if we did truncate the original - scalar loop had an overflow here anyway. - (vect_get_max_nscalars_per_iter): Expose. - * tree-vect-stmts.cc (vect_compute_type_for_early_break_scalar_iv): New. - (vectorizable_early_exit): Find smallest type where we won't have UB in - the signed IV and store it. - * tree-vectorizer.h (LOOP_VINFO_EARLY_BRK_IV_TYPE): New. - (class _loop_vec_info): Add early_break_iv_type. - (vect_min_prec_for_max_niters): New. - * tree-vect-loop-manip.cc (vect_do_peeling): Use it. - -2025-12-20 Andrew Pinski - - PR middle-end/123222 - * doc/extend.texi: Fix copy-and-pasto for __builtin_*_overflow_p. - -2025-12-20 Jakub Jelinek - - PR target/123216 - * common/config/i386/i386-common.cc (OPTION_MASK_ISA_AVX512FP16_UNSET): - Remove unused macro. - (OPTION_MASK_ISA2_AVX512FP16_UNSET, OPTION_MASK_ISA2_AVX512BF16_UNSET, - OPTION_MASK_ISA2_AVX512BW_UNSET): Or in OPTION_MASK_ISA2_AVX10_1_UNSET. - (OPTION_MASK_ISA2_AVX512CD_UNSET, OPTION_MASK_ISA2_AVX512DQ_UNSET, - OPTION_MASK_ISA2_AVX512VL_UNSET, OPTION_MASK_ISA2_AVX512IFMA_UNSET, - OPTION_MASK_ISA2_AVX512VNNI_UNSET, - OPTION_MASK_ISA2_AVX512VPOPCNTDQ_UNSET, - OPTION_MASK_ISA2_AVX512VBMI_UNSET, OPTION_MASK_ISA2_AVX512VBMI2_UNSET, - OPTION_MASK_ISA2_AVX512BITALG_UNSET): Define. - (ix86_handle_option): For - -mno-avx512{cd,dq,vl,ifma,vnni,vpopcntdq,vbmi,vbmi2,bitalg} also remove - corresponding OPTION_MASK_ISA2_AVX512*_UNSET from ix86_isa_flags2 - and add it to ix86_isa_flags2_explicit. - -2025-12-20 Jakub Jelinek - - PR target/123217 - * config/i386/i386-expand.cc (ix86_expand_builtin) - : Set target to a new pseudo even if it is - non-NULL but doesn't satisfy register_operand predicate. - -2025-12-19 Victor Do Nascimento - - PR tree-optimization/123152 - * tree-vect-loop-manip.cc - (slpeel_tree_duplicate_loop_to_edge_cfg): Correct order of - dominator update. - -2025-12-19 Jakub Jelinek - - * alias.cc (alias_set_subset_of): Fix comment typo, explicitely - -> explicitly. - * builtins.cc (get_object_alignment_2): Likewise. - * combine.cc (make_extraction): Fix comment typos, potentionally - -> potentially and implicitely -> implicitly. - (simplify_comparison): Fix comment typo, outmost -> outermost. - (record_truncated_values): Fix comment typo, truning -> turning. - (distribute_notes): Fix comment typo, recourse -> recurse. - * config/avr/avr.md (*maddqihi4_split): Fix comment - typo, explicitely -> explicitly. - (*mulusi3): Likewise. Fix comment typo, implicitely - -> implicitly. - * config/i386/i386.cc (ix86_get_drap_rtx): Fix comment typo, - statment -> statement. - * config/rs6000/rs6000.h (TARGET_DIRECT_MOVE_64BIT): Fix comment typo, - transfered -> transferred. - * config/s390/s390.cc (s390_encode_section_info): Fix comment typo, - catched -> caught. - * dwarf2out.cc (dwarf_proc_stack_usage_map): Fix comment typo, - invokation -> invocation. - (dwarf2out_die_ref_for_decl): Fix comment typo, refering -> referring. - (loc_list_from_tree_1): Fix message typo, INDCREMENT -> INCREMENT. - (field_byte_offset): Fix comment typo, simplier -> simpler. - (add_data_member_location_attribute): Fix comment typo, catched - -> caught. - (gen_lexical_block_die): Fix comment typo, conrecte -> concrete. - (analyze_variants_discr): Fix comment typo, consistant -> consistent. - (gen_decl_die): Fix comment typo, prunning -> pruning. - (resolve_variable_values): Fix comment typo, refering -> referring. - * genmatch.cc (expr::expr_type): Fix comment typo, explicitely - -> explicitly. - * gimple-range-phi.cc (phi_group::is_modifier_p): Fix comment typo, - statment -> statement. - * gimple-ssa-store-merging.cc (pass_optimize_bswap::execute): Fix - comment typo, invokation -> invocation. Add second space after dot. - * gimple-walk.cc (walk_gimple_op): Fix comment typo, explicitely - -> explicitly. - * gimplify.cc (mostly_copy_tree_r): Fix comment typo, gimplication - -> gimplification. - (var_needs_auto_init_p): Fix comment typo, automaticly - -> automatically. - (gimplify_decl_expr): Fix comment typos, varaible -> variable - and compatiple -> compatible. - (emit_warn_switch_unreachable): Fix comment typo, statment - -> statement. - (should_warn_for_implicit_fallthrough): Fix comment typo, fallthough - -> fallthrough. - (modify_call_for_omp_dispatch): Fix comment typo, interobject - -> interop. - (oacc_default_clause): Fix comment typo, tranfered -> transferred. - (omp_notice_variable): Likewise. - * graphite-isl-ast-to-gimple.cc (binary_op_to_tree): Fix comment - typo, explicitely -> explicitly. - * ipa-param-manipulation.cc (push_function_arg_decls): Likewise. - * ipa-prop.cc (ipa_make_edge_direct_to_target): Likewise. - * ipa-prop.h (ipa_node_params::node_within_scc): Fix comment typo, - potentionally -> potentially. - * loop-init.cc (fix_loop_structure): Fix comment typo, refering - -> referring. - * match.pd (1 / X -> X == 1): Fix comment typo, simplier -> simpler. - * opts.cc (global_options): Fix comment typo, explicitely - -> explicitly. - * sanopt.cc (sanopt_optimize_walker): Fix comment typo, potentionally - -> potentially. - * tree.cc (variably_modified_type_p): Fix comment typo, refering - -> referring. - * tree-cfg.cc (group_case_labels_stmt): Likewise. - (dump_function_to_file): Fix comment typo, explicitely -> explicitly. - (make_forwarders_with_degenerate_phis): Likewise. - * tree-inline.cc (replace_locals_op): Likewise. - * tree-loop-distribution.cc (loop_distribution::execute): Fix comment - typo, refering -> referring. - * tree-sra.cc (generate_subtree_deferred_init): Fix comment typo, - statment -> statement. - * tree-ssa-alias.cc (ptrs_compare_unequal): Fix comment typo, - explicitely -> explicitly. - * tree-ssa-forwprop.cc (_vec_perm_simplify_seq::stmt): Fix comment - typo, statment -> statement. - (narrow_vec_perm_simplify_seq): Fix message typo, statment - -> statement. - (blend_vec_perm_simplify_seqs): Likewise. - * tree-ssa-pre.cc (compute_antic_aux): Fix comment typo, explicitely - -> explicitly. - * tree-vect-loop-manip.cc (vect_do_peeling): Fix comment typo, - refering -> referring. - * tree-vect-patterns.cc: Fix comment typo, transfered -> transferred. - * tree-vect-slp.cc (vect_build_slp_tree_2): Fix comment typo, - explicitely -> explicitly. - (vect_build_slp_instance): Fix comment typo, transfered - -> transferred. - (vect_optimize_slp_pass::build_vertices): Fix comment typo, - explicitely -> explicitly. - (vect_slp_analyze_node_operations): Likewise. Fix comment typo, - refering -> referring. - * tree-vect-stmts.cc (vectorizable_store): Fix comment typo, catched - -> caught. - * vec.h (auto_vec::auto_vec): Fix comment typo, refering -> referring. - -2025-12-19 Robin Dapp - - PR target/122970 - * config/riscv/riscv-v.cc (expand_const_vector_interleaved_stepped_npatterns): - Reinterpret base as smaller type. - -2025-12-19 Robin Dapp - - * config/riscv/riscv-v.cc (expand_vector_subreg_extract): New - function that checks for and performs "vector extracts". - (legitimize_move): Call new function. - -2025-12-19 Robin Dapp - - * config/riscv/autovec.md: Ditto. - * config/riscv/autovec-opt.md: Add VLS modes. - * config/riscv/vector-crypto.md: Ditto. - * config/riscv/vector-iterators.md: Ditto. - * config/riscv/vector.md (@pred_ffs): Ditto. - (@pred_ffs): Ditto. - -2025-12-19 Robin Dapp - - * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Rename. - * config/riscv/riscv-protos.h (riscv_v_ext_vector_mode_p): - Rename. - (riscv_v_ext_tuple_mode_p): Ditto. - (riscv_v_ext_vls_mode_p): Ditto. - (riscv_vla_mode_p): To new name. - (riscv_tuple_mode_p): Ditto. - (riscv_vls_mode_p): Ditto. - * config/riscv/riscv-selftests.cc (run_const_vector_selftests): - Use new name. - (BROADCAST_TEST): Ditto. - * config/riscv/riscv-v.cc (imm_avl_p): Ditto. - (legitimize_move): Ditto. - (get_vlmul): Ditto. - (get_vlmax_rtx): Ditto. - (get_nf): Ditto. - (get_subpart_mode): Ditto. - (get_ratio): Ditto. - (get_mask_mode): Ditto. - (get_vector_mode): Ditto. - (get_tuple_mode): Ditto. - (can_find_related_mode_p): Ditto. - (cmp_lmul_le_one): Ditto. - (cmp_lmul_gt_one): Ditto. - (vls_mode_valid_p): Ditto. - * config/riscv/riscv-vector-builtins-bases.cc: Ditto. - * config/riscv/riscv-vector-builtins.cc (rvv_switcher::rvv_switcher): Ditto. - (register_builtin_type): Ditto. - * config/riscv/riscv-vector-costs.cc (max_number_of_live_regs): - Ditto. - (compute_estimated_lmul): Ditto. - (costs::costs): Ditto. - (costs::better_main_loop_than_p): Ditto. - (costs::adjust_stmt_cost): Ditto. - * config/riscv/riscv.cc (riscv_v_ext_vector_mode_p): Ditto. - (riscv_vla_mode_p): Ditto. - (riscv_v_ext_tuple_mode_p): Ditto. - (riscv_tuple_mode_p): Ditto. - (riscv_v_ext_vls_mode_p): Ditto. - (riscv_vls_mode_p): Ditto. - (riscv_v_ext_mode_p): Ditto. - (riscv_vector_mode_p): Ditto. - (riscv_v_adjust_nunits): Ditto. - (riscv_v_adjust_bytesize): Ditto. - (riscv_classify_address): Ditto. - (riscv_legitimate_address_p): Ditto. - (riscv_address_insns): Ditto. - (riscv_const_insns): Ditto. - (riscv_legitimize_move): Ditto. - (riscv_binary_cost): Ditto. - (riscv_rtx_costs): Ditto. - (riscv_pass_vls_aggregate_in_gpr): Ditto. - (riscv_get_vector_arg): Ditto. - (riscv_pass_vls_in_vr): Ditto. - (riscv_get_arg_info): Ditto. - (riscv_pass_by_reference): Ditto. - (riscv_vector_required_min_vlen): Ditto. - (riscv_get_v_regno_alignment): Ditto. - (riscv_print_operand): Ditto. - (riscv_secondary_memory_needed): Ditto. - (riscv_hard_regno_nregs): Ditto. - (riscv_hard_regno_mode_ok): Ditto. - (riscv_modes_tieable_p): Ditto. - (riscv_can_change_mode_class): Ditto. - (riscv_vector_mode_supported_p): Ditto. - (riscv_regmode_natural_size): Ditto. - (riscv_get_mask_mode): Ditto. - (riscv_vectorize_preferred_vector_alignment): Ditto. - (riscv_vectorize_vec_perm_const): Ditto. - (get_common_costs): Ditto. - (riscv_preferred_else_value): Ditto. - -2025-12-19 Robin Dapp - - * config/riscv/autovec.md (mask_len_gather_load): - Change from this... - (mask_len_gather_load): ...to this. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_gather_load): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - (mask_len_scatter_store): Ditto. - * config/riscv/riscv-v.cc (prepare_gather_scatter): Use new - scheme - (get_gather_scatter_code): Ditto. - (expand_gather_scatter): Ditto. - * config/riscv/riscv-vector-builtins-bases.cc: Ditto. - * config/riscv/vector-iterators.md: Ditto. - * config/riscv/vector.md (@pred_indexed_store): - Go from this... - (@pred_indexed_store_same_eew): ...to this. - (@pred_indexed_store): - Ditto. - (@pred_indexed_store_x2_greater_eew): Ditto. - (@pred_indexed_store): - Ditto. - (@pred_indexed_store_x4_greater_eew): Ditto. - (@pred_indexed_store): Ditto. - (@pred_indexed_store_x8_greater_eew): Ditto. - (@pred_indexed_store): Ditto. - (@pred_indexed_store_x2_smaller_eew): Ditto. - (@pred_indexed_store): Ditto. - (@pred_indexed_store_x4_smaller_eew): Ditto. - (@pred_indexed_store): Ditto. - (@pred_indexed_store_x8_smaller_eew): Ditto. - -2025-12-19 Robin Dapp - - PR tree-optimization/123118 - * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Check that - the type sign is equal. - -2025-12-19 Robin Dapp - - PR tree-optimization/123117 - * tree-ssa-forwprop.cc (simplify_vector_constructor): - Check if we had a nop conversion and don't use pack/unpack in - that case. - -2025-12-19 Robin Dapp - - * doc/md.texi: Use unicode quotation marks. - -2025-12-19 Robin Dapp - - * config/riscv/autovec.md (): Implement. - * config/riscv/predicates.md (riscv_cbranch_comparison_operator): - Define. - * config/riscv/vector-iterators.md: New iterators. - -2025-12-19 Robin Dapp - - * optabs.cc (emit_cmp_and_jump_insns): Fix len/bias operands. - -2025-12-19 Robin Dapp - - PR tree-optimization/123097 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Calculate vector size by number of elements * bit size per - element. - -2025-12-19 Vladimir N. Makarov - - PR rtl-optimization/123223 - * lra-constraints.cc (match_reload, curr_insn_transform): Check - rtx on REG when testing scratch pseudos. - -2025-12-19 Jeff Law - - * config/h8300/h8300.cc (output_logical_op): Adjust last argument to - be a pattern, not an insn. Corresponding implementation changes. - (output_shift_loop): Extracted from output_a_shift and improved - to use a sentinel to indicate when to stop the loop. - (output_a_shift): Use output_shift_loop. - (compute_a_shift_length): Handle adjusted shift loop code. - * config/h8300/logical.md (logicals): Pass pattern to output_logical_op - rather then the full insn. - * config/h8300/h8300-protos.h (output_logical_op): Update prototype. - -2025-12-19 Andrew MacLeod - - PR tree-optimization/123205 - * gimple-range-gori.cc (gori_compute::may_recompute_p): Only - recompute range-op statements. - * gimple-range-op.cc (gimple_range_op_handler): Default - recomputation to true. - (maybe_builtin_call): CFN_BUILT_IN_CONSTANT_P should not be - recomputable. - * gimple-range-op.h (recomputable_p): New. - (recomputable_p): New. - -2025-12-19 Tobias Burnus - - * tree-pretty-print.cc (dump_omp_clause): For uses_allocators, - print modifier before allocator variable. - -2025-12-19 Takayuki 'January June' Suwa - - * config/xtensa/predicates.md (xtensa_cstoresi_operator): - Change it to include unsigned comparisons only when TARGET_SALT is - enabled. - -2025-12-19 Jakub Jelinek - - PR debug/122968 - * dwarf2out.cc (premark_used_variables): Handle "structured bindings" - attribute. - (dwarf2out_late_global_decl): Likewise. - -2025-12-19 Jakub Jelinek - - * doc/install.texi (--with-tls=): Fix a typo, were -> where. - -2025-12-19 Alexandre Oliva - - PR target/55212 - * lra-constraints.cc (match_reload): Treat former scratch - regs as implicit unused output reloads. - (process_alt_operands): Likewise. - (curr_insn_transform): Likewise. - -2025-12-19 Lewis Hyatt - - PR bootstrap/12407 - * doc/install.texi (--enable-languages): Document the new language - exclusion feature. - -2025-12-18 Tobias Burnus - - * gimplify.cc (gimplify_scan_omp_clauses): Handle - OpenMP device_type clause. - * omp-low.cc (scan_sharing_clauses): Likewise. - (lower_omp_target): Print 'sorry, unimplemented' for - device_type clause value other than 'any'. - -2025-12-18 Tejas Belagod - - * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define - __ARM_FEATURE_SVE_PREDICATE_OPERATORS. - -2025-12-18 Victor Do Nascimento - - PR tree-optimization/123153 - * tree-vect-loop-manip.cc - (slpeel_tree_duplicate_loop_to_edge_cfg): use - profile_probability::even () for even likelihood. - -2025-12-18 Alfie Richards - - * config/aarch64/aarch64-option-extensions.def (sme-lutv2): Fix - feature string. - -2025-12-18 Alfie Richards - - * config/aarch64/aarch64-arches.def: Add armv9.6-a. - * config/aarch64/aarch64-option-extensions.def: - (sve-aes): Update to be enables by smeaes. - (sve-bitperm): Update to be enables by smesbitperm. - (fprcvt): New cli extension option. - (lsfe): Likewise. - (f8f32mm): Likewise. - (f8f16mm): Likewise. - (sme2p2): Likewise. - (sve2p2): Likewise. - (sve-aes2): Likewise. - (sve-f16f32mm): Likewise. - (sve-bfscale): Likewise. - (ssve-aes): Likewise. - (lsui): Likewise. - (occmo): Likewise. - (pcdphint): Likewise. - (pops): Likewise. - (ssve-bitperm): Likewise. - (ssve-fexpa): Likewise. - (sme-mop4): Likewise. - (sme-tmop): Likewise. - -2025-12-18 Alfie Richards - - * config/aarch64/aarch64-option-extensions.def - (sve-aes): New cli extension option. - (sve2-aes): Changed to be alias of sve2+sve-aes2. - (sve-bitperm): New cli extension option. - (sve2-bitperm): Changed to be alias of sve2+sve-bitperm. - (sve-sm4): New cli extension option. - (sve2-sm4): Changed to be alias of sve2+sve-sm4. - (sve-sm4): New cli extension option. - (sve2-sm4): Changed to be alias of sve2+sve-sm4. - * config/aarch64/aarch64.h (TARGET_SVE2_AES): Updated to require - sve2+sve-aes. - (TARGET_SVE2_BITPERM): Updated to require sve2+sve-bitperm. - (TARGET_SVE2_SHA3): Updated to require sve2+sve-sha3. - (TARGET_SVE2_SM4): Updated to require sve2+sve-sm4 - * config/aarch64/aarch64-sve-builtins-sve2.def: Update gating for sve2-X - intrinsics. - -2025-12-18 Alfie Richards - - * common/config/aarch64/aarch64-common.cc - (struct aarch64_extension_info): Add flags_alias_preferred_over. - (AARCH64_OPT_EXTENSION): Add setting flags preferred over to 0. - (AARCH64_OPT_EXTENSION_ALIAS): New macro def. - (aarch64_get_extension_string_for_isa_flags): Update to use alias - extensions over constituent extensions. - * config/aarch64/aarch64-feature-deps.h (alias_flags): New variable - (AARCH64_OPT_EXTENSION): New macro def. - (AARCH64_OPT_EXTENSION_ALIAS): New macro def. - (HANDLE): Update to use alias_flags. - (AARCH64_CORE): Update to use alias_flags. - * config/aarch64/aarch64-option-extensions.def - (AARCH64_OPT_EXTENSION_ALIAS): New macro def to - define alias_prefer_over_flags_X. - (crypto): Update to us AARCH64_OPT_EXTENSION_ALIAS. - -2025-12-18 WANG Xuerui - - PR target/123171 - * config/loongarch/loongarch.cc (loongarch_option_restore): Add - missing update to la_target.isa.base. - -2025-12-18 chenxiaolong - - * config/loongarch/loongarch.cc (loongarch_modes_tieable_p): - Add support for vector conversion. - -2025-12-18 Senthil Kumar Selvaraj - - * opts-common.cc (jobserver_info::jobserver_info): Do not skip - negative file descriptors in simple UNIX pipe mode. - -2025-12-18 Andrew Pinski - - PR tree-optimization/122734 - * tree-ssa-loop-ch.cc (should_duplicate_loop_header_p): Remove - check on very_unlikely probability. - -2025-12-18 Andrew Pinski - - * predict.cc (unlikely_executed_stmt_p): Fix up return for - __builtin_unreachable/__builtin_trap. - -2025-12-18 Alexandre Oliva - - * var-tracking.cc (vt_expand_var_loc_chain): Prepare to exit - the loop after unsuitable_loc. - -2025-12-17 H.J. Lu - - PR target/122343 - * cselib.cc (cselib_redundant_set_p): Return false for volatile - memory source or destination. - -2025-12-17 Georg-Johann Lay - - * config/avr/avr.cc (avr_out_shift_with_cnt): Tweak - execution time by count-1 cycles in some cases. - -2025-12-17 Georg-Johann Lay - - * config/avr/avr-protos.h (out_shift_with_cnt): Remove. - * config/avr/avr.cc (avr_out_shift_with_cnt): New static - function from out_shift_with_cnt: Pass shift rtx_code instead - of asm template. - (avr_out_shift_1): New static helper function. - (ashlqi3_out, ashlhi3_out, avr_out_ashlpsi3, ashlsi3_out) - (ashrqi3_out, ashrhi3_out, avr_out_ashrpsi3, ashrsi3_out) - (lshrqi3_out, lshrhi3_out, avr_out_lshrpsi3, lshrsi3_out): - Adjust avr_out_shift_with_cnt to new interface. - -2025-12-17 Jeff Law - - * config/riscv/sync.md (atomic compare and set): Reorder patterns - so the stricter pattern comes first. - -2025-12-17 Jakub Jelinek - - PR target/123155 - * config/i386/xmmintrin.h (_mm_maskmove_si64): Rename offset automatic - variable to __offset. - -2025-12-17 Jakub Jelinek - - PR target/123155 - * config/i386/avx10_2bf16intrin.h (_mm512_roundscale_pbh, - _mm512_mask_roundscale_pbh, _mm512_maskz_roundscale_pbh, - _mm256_roundscale_pbh, _mm256_mask_roundscale_pbh, - _mm256_maskz_roundscale_pbh, _mm_roundscale_pbh, - _mm_mask_roundscale_pbh, _mm_maskz_roundscale_pbh, - _mm512_reduce_pbh, _mm512_mask_reduce_pbh, _mm512_maskz_reduce_pbh, - _mm256_reduce_pbh, _mm256_mask_reduce_pbh, _mm256_maskz_reduce_pbh, - _mm_reduce_pbh, _mm_mask_reduce_pbh, _mm_maskz_reduce_pbh): Rename - B argument to __B. - -2025-12-17 Umesh Kalvakuntla - - * common/config/i386/cpuinfo.h (get_amd_cpu): Add znver6 1Ah - family model numbers. - (get_available_features): Set feature AVX512BMM. - * common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AVX512BMM_SET): - New macro. - (OPTION_MASK_ISA2_AVX512BMM_UNSET): New macro. - (OPTION_MASK_ISA2_AVX512BW_UNSET): Unset AVX512BMM. - (ix86_handle_option): Likewise. - * common/config/i386/i386-cpuinfo.h (enum processor_subtypes): - Add AMDFAM1AH_ZNVER6. - (enum processor_features): Add FEATURE_AVX512BMM. - * common/config/i386/i386-isas.h: Likewise. - * config.gcc: Add avx512bmmintrin.h, avx512bmmvlintrin.h, - znver6. - * config/i386/cpuid.h (bit_AVX512BMM): New macro. - * config/i386/driver-i386.cc (host_detect_local_cpu): Likewise. - * config/i386/i386-builtin.def (BDESC): Add AVX512BMM builtins. - * config/i386/i386-c.cc (ix86_target_macros_internal): Likewise. - * config/i386/i386-isa.def (AVX512BMM): Likewise. - * config/i386/i386-options.cc (m_ZNVER6): New macro. - (m_ZNVER): Add m_ZNVER6. - (processor_cost_table): Uses znver5_cost table for - PROCESSOR_ZNVER6 for now. - (ix86_valid_target_attribute_inner_p): Likewise. - * config/i386/i386.cc (ix86_reassociation_width): Likewise. - * config/i386/i386.h (enum processor_type): Likewise. - * config/i386/i386.md: Likewise. - * config/i386/i386.opt: Likewise. - * config/i386/i386.opt.urls: Likewise. - * config/i386/immintrin.h: Likewise. - * config/i386/sse.md (avx512bmm_vbmacor16x16x16_): New - define_insn. - (avx512bmm_vbmacxor16x16x16_): Likewise. - (avx512bmm_vbitrevb__mask): Likewise. - (avx512bmm_vbitrevb_): Likewise. - * config/i386/x86-tune-sched.cc (ix86_issue_rate): Likewise. - (ix86_adjust_cost): Likewise. - * config/i386/x86-tune.def (X86_TUNE_FUSE_ALU_AND_BRANCH): Add - m_ZNVER6. - (X86_TUNE_FUSE_MOV_AND_ALU): Likewise. - (X86_TUNE_USE_SCATTER_2PARTS): Likewise. - (X86_TUNE_USE_SCATTER_4PARTS): Likewise. - (X86_TUNE_USE_SCATTER_8PARTS): Likewise. - (X86_TUNE_AVOID_256FMA_CHAINS): Likewise. - (X86_TUNE_AVOID_512FMA_CHAINS): Likewise. - (X86_TUNE_AVX512_MOVE_BY_PIECES): Likewise. - * doc/extend.texi: Likewise. - * doc/invoke.texi: Likewise. - * config/i386/avx512bmmintrin.h: New file. - * config/i386/avx512bmmvlintrin.h: New file. - -2025-12-16 Iain Sandoe - - * config/aarch64/aarch64.cc - (aarch64_function_abi): Use checking assert. - (aarch64_fndecl_abi): Test for the availability of the - machine content before trying to look up the cached PCS. - Use a checking assert. - -2025-12-16 Jose E. Marchesi - - * common.opt.urls: Regenerate. - -2025-12-16 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xtensa_expand_scc_SALT): - New sub-function that emits the SALT/SALTU instructions. - (xtensa_expand_scc): Change the part related to the SALT/SALTU - instructions to a call to the above sub-function. - -2025-12-16 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc - (xtensa_expand_block_set_libcall, - xtensa_expand_block_set_unrolled_loop, - xtensa_expand_block_set_small_loop, xtensa_call_tls_desc): - Change the return statement to pass the return value of - end_sequence() directly without going through a variable, and - remove the definition of that variable. - -2025-12-16 Claudiu Zissulescu - Indu Bhagat - - * config/aarch64/aarch64.md (addg): Update pattern to use - addg/subg instructions. - (stg): Update pattern. - (st2g): New pattern. - (tag_memory): Likewise. - (compose_tag): Likewise. - (irq): Update pattern to accept xzr register. - (gmi): Likewise. - (UNSPECV_TAG_SPACE): Define. - * config/aarch64/aarch64.cc (AARCH64_MEMTAG_GRANULE_SIZE): - Define. - (AARCH64_MEMTAG_TAG_BITSIZE): Likewise. - (aarch64_override_options_internal): Error out if MTE instructions - are not available. - (aarch64_post_cfi_startproc): Emit .cfi_mte_tagged_frame. - (aarch64_can_tag_addresses): Add MEMTAG specific handling. - (aarch64_memtag_tag_bitsize): New function - (aarch64_memtag_granule_size): Likewise. - (aarch64_memtag_insert_random_tag): Likwise. - (aarch64_memtag_add_tag): Likewise. - (aarch64_memtag_extract_tag): Likewise. - (aarch64_granule16_memory_address_p): Likewise. - (aarch64_emit_stxg_insn): Likewise. - (aarch64_memtag_tag_memory_via_loop): New definition. - (aarch64_expand_tag_memory): Likewise. - (aarch64_check_memtag_ops): Likewise. - (TARGET_MEMTAG_TAG_BITSIZE): Likewise. - (TARGET_MEMTAG_GRANULE_SIZE): Likewise. - (TARGET_MEMTAG_INSERT_RANDOM_TAG): Likewise. - (TARGET_MEMTAG_ADD_TAG): Likewise. - (TARGET_MEMTAG_EXTRACT_TAG): Likewise. - * config/aarch64/aarch64-builtins.cc - (aarch64_expand_builtin_memtag): Update set tag builtin logic. - * config/aarch64/aarch64-linux.h: Pass memtag-stack sanitizer - specific options to the linker. - * config/aarch64/aarch64-protos.h - (aarch64_granule16_memory_address_p): New prototype. - (aarch64_check_memtag_ops): Likewise. - (aarch64_expand_tag_memory): Likewise. - * config/aarch64/constraints.md (Umg): New memory constraint. - (Uag): New constraint. - (Ung): Likewise. - * config/aarch64/predicates.md (aarch64_memtag_tag_offset): - Refactor it. - (aarch64_granule16_imm6): Rename from aarch64_granule16_uimm6 and - refactor it. - (aarch64_granule16_memory_operand): New constraint. - * config/aarch64/iterators.md (MTE_PP): New code iterator to be - used for mte instructions. - (stg_ops): New code attributes. - (st2g_ops): Likewise. - (mte_name): Likewise. - * config/aarch64/aarch64.opt (aarch64-tag-memory-loop-threshold): - New parameter. - * doc/invoke.texi: Update documentation. - -2025-12-16 Claudiu Zissulescu - Indu Bhagat - - * asan.cc (handle_builtin_stack_restore): Accommodate MEMTAG - sanitizer. - (handle_builtin_alloca): Expand differently if MEMTAG sanitizer. - (get_mem_refs_of_builtin_call): Include MEMTAG along with - HWASAN. - (memtag_sanitize_stack_p): New definition. - (memtag_sanitize_allocas_p): Likewise. - (memtag_memintrin): Likewise. - (hwassist_sanitize_p): Likewise. - (hwassist_sanitize_stack_p): Likewise. - (report_error_func): Include MEMTAG along with HWASAN. - (build_check_stmt): Likewise. - (instrument_derefs): MEMTAG too does not deal with globals yet. - (instrument_builtin_call): Include MEMTAG along with HWASAN. - (maybe_instrument_call): Likewise. - (asan_expand_mark_ifn): Likewise. - (asan_expand_check_ifn): Likewise. - (asan_expand_poison_ifn): Expand differently if MEMTAG sanitizer. - (asan_instrument): Include MEMTAG along with HWASAN. - (hwasan_emit_prologue): Expand differently if MEMTAG sanitizer. - (hwasan_emit_untag_frame): Likewise. - * asan.h (memtag_sanitize_stack_p): New declaration. - (memtag_sanitize_allocas_p): Likewise. - (hwassist_sanitize_p): Likewise. - (hwassist_sanitize_stack_p): Likewise. - (asan_sanitize_use_after_scope): Include MEMTAG along with - HWASAN. - * cfgexpand.cc (align_local_variable): Likewise. - (expand_one_stack_var_at): Likewise. - (expand_stack_vars): Likewise. - (expand_one_stack_var_1): Likewise. - (init_vars_expansion): Likewise. - (expand_used_vars): Likewise. - (pass_expand::execute): Likewise. - * gimplify.cc (asan_poison_variable): Likewise. - * internal-fn.cc (expand_HWASAN_ALLOCA_POISON): New definition. - (expand_HWASAN_ALLOCA_UNPOISON): Expand differently if MEMTAG - sanitizer. - (expand_HWASAN_MARK): Likewise. - * internal-fn.def (HWASAN_ALLOCA_POISON): Define new. - * params.opt: Document new param. - * sanopt.cc (pass_sanopt::execute): Include MEMTAG along with - HWASAN. - * gcc.cc (sanitize_spec_function): Add check for memtag-stack. - * doc/tm.texi: Regenerate. - * target.def (extract_tag): Update documentation. - (add_tag): Likewise. - (insert_random_tag): Likewise. - -2025-12-16 Indu Bhagat - Claudiu Zissulescu - - * builtins.def: Adjust the macro to include the new - SANTIZIE_MEMTAG_STACK. - * flag-types.h (enum sanitize_code): Add new enumerator for - SANITIZE_MEMTAG and SANITIZE_MEMTAG_STACK. - * opts.cc (finish_options): memtag-stack sanitizer conflicts with - hwaddress and address sanitizers. - (sanitizer_opts): Add new memtag-stack sanitizer. - (parse_sanitizer_options): memtag-stack sanitizer cannot recover. - * params.opt: Add new params for memtag-stack sanitizer. - * doc/invoke.texi: Update documentation. - -2025-12-16 Claudiu Zissulescu - - * target-insns.def (compose_tag): New target instruction. - * doc/md.texi (compose_tag): Add documentation. - -2025-12-16 Claudiu Zissulescu - - * target-insns.def (tag_memory): New target instruction. - * doc/md.texi (tag_memory): Add documentation. - -2025-12-16 Jennifer Schmitz - - * config/aarch64/aarch64.md: Include olympus.md. - * config/aarch64/olympus.md: New file. - * config/aarch64/tuning_models/olympus.h: Add dispatch - constraints and enable dispatch scheduling. - -2025-12-16 Maxim Kuvyrkov - - * haifa-sched.cc (choose_ready): Don't require dfa_lookahead <= 0 - to schedule SCHED_GROUP_P insns first. - -2025-12-16 Richard Biener - - PR ipa/122456 - * cgraph.cc (cgraph_edge::resolve_speculation): Handle - a NULL symtab_node::get (callee_decl). - -2025-12-16 Andrew Pinski - - PR tree-optimization/123110 - * tree-cfgcleanup.cc (maybe_remove_forwarder_block): Add back - check for eh landing pad or non-local dest on the dest. - -2025-12-16 Andrew Pinski - - PR tree-optimization/123111 - * tree-cfg.cc (ifconvertable_edge): New function. - (make_forwarders_with_degenerate_phis): Add skip_ifcvtable argument, - check ifconvertable_edge if skip_ifcvtable is true. - * tree-cfg.h (make_forwarders_with_degenerate_phis): New argument - with default of false. - * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): Update - argument to make_forwarders_with_degenerate_phis. - -2025-12-15 Martin Jambor - - PR ipa/107666 - * common.opt (fspeculatively-call-stored-functions): New. - * cgraph.h (cgraph_simple_indirect_info): New fields rec_type and - fld_offset. - * ipa-prop.h (ipa_analyze_var_static_initializer): Declare. - (ipa_dump_noted_record_fnptrs): Likewise. - (ipa_debug_noted_record_fnptrs): Likewise. - (ipa_single_noted_fnptr_in_record): Likewise. - (ipa_free_noted_fnptr_calls): Likewise. - * ipa-cp.cc (ipcp_generate_summary): Call - ipa_analyze_var_static_initializer on each varbool node with a static - initializer. - * ipa-devirt.cc (struct devirt_stats): New type. - (devirt_target_ok_p): New function. - (ipa_devirt): Move statistics counters to the new structure. dump - noted function pointers stored in records. Check for edge hotness - first and for odr_types only for polymorphic edges. Moved a number of - checks to devirt_target_ok_p. Also add speculative direct calls for - non-polymorphic indirect ones when ipa_single_noted_fnptr_in_record - finds a likely target. Call ipa_free_noted_fnptr_calls. - (pass_ipa_devirt::gate): Also check the new flag. - * ipa-prop.cc (noted_fnptr_store): New type. - (struct noted_fnptr_hasher): Likewise. - (noted_fnptr_hasher::hash): New function. - (noted_fnptr_hasher::equal): Likewise. - (noted_fnptrs_in_records): New. - (is_func_ptr_from_record): New function. - (ipa_analyze_indirect_call_uses): Also simple create indirect info - structures with fnptr_loaded_from_record set. - (note_fnptr_in_record): New function. - (ipa_dump_noted_record_fnptrs): Likewise. - (ipa_debug_noted_record_fnptrs): Likewise. - (ipa_single_noted_fnptr_in_record): Likewise. - (ipa_free_noted_fnptr_calls): Likewise. - (ipa_analyze_stmt_uses): Also look for stroes of function pointers to - record structures. - (ipa_analyze_var_static_initializer): New function. - (ipa_write_indirect_edge_info): Also stream fnptr_loaded_from_record - indirec infos. - (ipa_read_indirect_edge_info): Likewise. - (ipa_prop_write_jump_functions): Also stream the contents of - noted_fnptrs_in_records. - (ipa_prop_read_section): Likewise. - * opts.cc (default_options_table): Also turn on - OPT_fspeculatively_call_stored_functions at -O2. - (common_handle_option): Turn flag_speculatively_call_stored_functions - when using profile feedback. - * doc/invoke.texi (-fspeculatively-call-stored-functions): New. - -2025-12-15 Martin Jambor - - * cgraph.h (cgraph_node): Adjust the comment of member function - create_indirect_edge. - (enum cgraph_indirect_info_kind): New. - (cgraph_indirect_call_info): Convert into a base class. - (cgraph_simple_indirect_info): New. - (cgraph_polymorphic_indirect_info): Likewise. - (usable_polymorphic_info_p): Likewise. - (is_a_helper ::test): Likewise. - (is_a_helper ::test): Likewise. - (cgraph_allocate_init_indirect_info): Remove declaration. - (ipa_polymorphic_call_context::ipa_polymorphic_call_context): Use the - appropriate derived type of indirect info. - * cgraph.cc (cgraph_allocate_init_indirect_info): Removed. - (cgraph_node::create_indirect_edge): Create an appropriate type of - indirect_info. - (cgraph_node::dump): Dump indirect info using its dump function. - (cgraph_indirect_call_info::dump): New function. - (cgraph_indirect_call_info::debug): Likewise. - * cgraphclones.cc (cgraph_edge::clone): Create an appropriate type of - indirect_info. - * cgraphunit.cc (analyze_functions): Use the appropriate derived type - of indirect info. - * ipa-cp.cc (initialize_node_lattices): Adjust the check for - polymorphic indirect info. - (ipa_get_indirect_edge_target_1): Use the appropriate derived types of - indirect info. - (ipcp_discover_new_direct_edges): Likewise. - * ipa-devirt.cc (ipa_devirt): Use the polymorphis derived type of - indirect info and check that it is usable. - * ipa-inline.cc (dump_inline_stats): Adjust the check for polymorphic - indirect info. - * ipa-profile.cc (ipa_profile): Likewise and check usability. - * ipa-prop.cc (ipa_print_node_jump_functions): Dump indirect info - using its dumping member function. - (ipa_note_param_call): Removed. - (ipa_analyze_indirect_call_uses): Use the appropriate derived type of - indirect info, set all fields of indirect info separately rather than - relying on ipa_note_param_call. - (ipa_analyze_virtual_call_uses): Use the polymorphis derived type of - indirect info and check that it is usable, set all fields of indirect - info separately rather than relying on ipa_note_param_call. - (ipa_analyze_call_uses): Use the appropriate derived type of indirect - info. - (ipa_make_edge_direct_to_target): Use the appropriate derived type of - indirect info. Remove wrong note that member_ptr check was not - needed. Adjust check for polymorphic call when dumping. - (try_make_edge_direct_simple_call): Use the appropriate derived type - of indirect info. - (try_make_edge_direct_virtual_call): Use the polymorphis derived type - of indirect info and check that it is usable. - (update_indirect_edges_after_inlining): Use the appropriate derived - type of indirect info. Define local variables only before their first - use. - (ipa_write_indirect_edge_info): Also stream indirect info kind. Use - the appropriate derived type of indirect info. - (ipa_read_indirect_edge_info): Check that the streamed in indirect - info kind matches rthe structure at hand. Use the appropriate derived - type of indirect info. - * ipa-utils.h (possible_polymorphic_call_targets): Use the - polymorphis derived type of indirect info. Assert it is usable. - (dump_possible_polymorphic_call_targets): Use the polymorphis - derived type of indirect info and check it is usable. - (possible_polymorphic_call_target_p): Likewise. - * ipa.cc (symbol_table::remove_unreachable_nodes): Use - usable_polymorphic_info_p. - * lto-cgraph.cc (lto_output_edge): Stream indirect info kind. - (compute_ltrans_boundary): Use usable_polymorphic_info_p. - (input_edge): Move definition of ecf_flags before its first use. - Pass true as the last parameter to create_indirect_edge. Stream - indirect info kind and create a corresponding type to hold the - information. - * trans-mem.cc (ipa_tm_insert_gettmclone_call): Use the - polymorphis derived type of indirect info. - -2025-12-15 Martin Jambor - - * gengtype.cc (walk_subclasses): Avoid generating code with unused - variables. - -2025-12-15 Pengxuan Zheng - - PR tree-optimization/122987 - * tree-ssa-ifcombine.cc (ifcombine_ifandif): Replace - force_gimple_operand_gsi with gimple_build. - -2025-12-15 Joseph Myers - - * Makefile.in (PLUGIN_HEADERS): Add $(srcdir)/text-art/*.h. - (install-plugin): Preserve directory structure for text-art - headers. - -2025-12-15 Alfie Richards - - * config/aarch64/aarch64-cores.def (cortex-a320): New core. - * config/aarch64/aarch64-tune.md: Regenerate. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop.cc (vect_analyze_loop_form): Relax niters - condition. - -2025-12-15 Victor Do Nascimento - - * tree-vect-data-refs.cc (vect_enhance_data_refs_alignment): - Enable peeling for uncounted loops. - * tree-vect-loop-manip.cc - (slpeel_tree_duplicate_loop_to_edge_cfg): Add exit condition - duplication functionality. - * tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg): - Modify function signature. - (vect_do_peeling): Enable uncounted loop peeling. - -2025-12-15 Victor Do Nascimento - - * tree-vect-data-refs.cc (vect_prune_runtime_alias_test_list): - Reject when !operand_equal_p for any data ref pair. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop.cc (vect_analyze_loop_2): Disable partial - vector use for uncounted loops. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg): - reset IVs and accumulators for all exits for uncounted loops. - * tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg): - add boolean `uncounted_p' argument. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop-manip.cc (vect_do_peeling): Disable vector - loop skip checking. - (vect_loop_versioning): skip profitability check for uncounted loops. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop-manip.cc (vect_do_peeling): Disable niters - update. - * tree-vect-loop.cc (vect_transform_loop): Likewise. - -2025-12-15 Victor Do Nascimento - - * tree-vectorizer.h (LOOP_VINFO_IV_EXIT): Replace this... - (LOOP_VINFO_MAIN_EXIT): ...with this. - (LOOP_VINFO_EPILOGUE_IV_EXIT): Replace this... - (LOOP_VINFO_EPILOGUE_MAIN_EXIT): ...with this. - (LOOP_VINFO_SCALAR_IV_EXIT): Replace this... - (LOOP_VINFO_SCALAR_MAIN_EXIT): ...with this. - (class _loop_vec_info): s/iv/main for `vec_loop_iv_exit', - `vec_epilogue_loop_main_exit' and `scalar_loop_main_exit' - class members. - * tree-vect-data-refs.cc - (vect_enhance_data_refs_alignment): - s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/. - * tree-vect-loop-manip.cc - (vect_set_loop_controls_directly): Likewise. - (vect_gen_vector_loop_niters_mult_vf): Likewise. - (vect_loop_versioning): Likewise. - (vect_do_peeling): - s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/, - s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT, - s/LOOP_VINFO_EPILOGUE_IV_EXIT/LOOP_VINFO_EPILOGUE_MAIN_EXIT. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): - s/iv_exit/main_exit/ in initializer list. - (vec_init_loop_exit_info): Handle multiple-exit uncounted loops. - (vect_analyze_loop_form): Fix `failure_at' message. - (vect_create_loop_vinfo): - s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/. - (vect_create_epilog_for_reduction): Likewise. - (vectorizable_live_operation): Likewise. - (vect_update_ivs_after_vectorizer_for_early_breaks): Likewise. - (vect_transform_loop): - s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/, - s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT. - * tree-vectorizer.cc (set_uid_loop_bbs): - s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT. - -2025-12-15 Victor Do Nascimento - - * tree-vectorizer.h (LOOP_VINFO_EARLY_BREAKS_VECT_PEELED): OR - its current definition with `LOOP_VINFO_NITERS_UNCOUNTED_P(L)' - * tree-vect-loop.cc (vect_create_loop_vinfo): Don't populate - `LOOP_VINFO_LOOP_IV_COND' for uncounted loops. - -2025-12-15 Victor Do Nascimento - - * tree-vect-loop-manip.cc (vect_build_loop_niters): Gracefully - handle uncounted loops. - (vect_gen_prolog_loop_niters): Add type default of `sizetype'. - (vect_gen_vector_loop_niters): Likewise. - (vect_do_peeling): Likewise. - * tree-vect-loop.cc (vect_min_prec_for_max_niters): Likewise. - (loop_niters_no_overflow): Likewise. - * tree-vectorizer.h (LOOP_VINFO_NITERS_UNCOUNTED_P): New. - -2025-12-15 Peter Damianov - - PR target/108866 - * doc/install.texi: Document --with-windres configure option. - -2025-12-15 Peter Damianov - - PR target/108866 - * gcc.cc (find_a_program): Add check for DEFAULT_WINDRES. - * configure.ac: Add --with-windres= option. - * config.in: Regenerate. - * configure: Regenerate. - -2025-12-15 Peter Damianov - - PR driver/108866 - * gcc.cc (default_compilers): Add EXTRA_DEFAULT_COMPILERS so the config - of a target can add an extra compiler spec to default_compilers. - * config/i386/cygming.h (WINDRES_FORMAT_SPEC): New macro to handle - PE format selection based on TARGET_64BIT_DEFAULT and -m32/-m64 flags. - (EXTRA_DEFAULT_COMPILERS): Add spec for windres. - * config/aarch64/cygming.h (EXTRA_DEFAULT_COMPILERS): Likewise. - -2025-12-15 Jerry Zhang Jian - - * config/riscv/gen-riscv-ext-opt.cc: Rename UPPERCAE_NAME to - UPPERCASE_NAME. - * config/riscv/gen-riscv-ext-texi.cc: Likewise. - * config/riscv/riscv-ext-corev.def: Likewise. - * config/riscv/riscv-ext-sifive.def: Likewise. - * config/riscv/riscv-ext-thead.def: Likewise. - * config/riscv/riscv-ext-ventana.def: Likewise. - -2025-12-14 Lewis Hyatt - - PR tree-optimization/106409 - * gimple-ssa-warn-access.cc (maybe_warn_alloc_args_overflow): Adjust - comment for clarity, and augment check to work in LTO as well. - -2025-12-14 Surya Kumari Jangala - - PR rtl-optimization/122274 - * regcprop.cc (value_data_entry): New field. - (kill_value_one_regno): Update field. - (init_value_data): Initialize field. - (kill_set_value_data): New field. - (kill_set_value): Update field. - (kill_autoinc_value): Likewise. - (copy_value): New parameter. Update field. - (incompatible_frame_status): New function. - (find_oldest_value_reg): New parameter. Compare frame relatedness of - insn and propagated value. - (replace_oldest_value_reg): Pass additional parameter to - find_oldest_value_reg(). - (copyprop_hardreg_forward_1): Pass additional parameter to - find_oldest_value_reg(). Compare frame relatedness of insn and - propagated value. Call copy_value() with additional parameter. - -2025-12-13 Andrew Pinski - - PR tree-optimization/46555 - * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): - Unconditionally set TODO_cleanup_cfg. - -2025-12-13 Andrew Pinski - - * match.pd: Disable a few match patterns for !GIMPLE. - -2025-12-13 Andrew Pinski - - PR tree-optimization/122734 - * tree-ssa-loop-ch.cc (should_duplicate_loop_header_p): Add new argument, - canbe_neverexecuted. When canbe_neverexecuted is true, return if a loop - exit is "never executed" like we are doing an invariant conditional. - (ch_base::copy_headers): Update call to should_duplicate_loop_header_p. - -2025-12-13 Sandra Loosemore - - * config/alpha/alpha.opt.urls: Regenerated. - * config/arc/arc.opt.urls: Regenerated. - * config/arm/arm.opt.urls: Regenerated. - * config/bpf/bpf.opt.urls: Regenerated. - * config/c6x/c6x.opt.urls: Regenerated. - * config/cris/cris.opt.urls: Regenerated. - * config/csky/csky.opt.urls: Regenerated. - * config/h8300/h8300.opt.urls: Regenerated. - * config/i386/i386.opt.urls: Regenerated. - * config/ia64/ia64.opt.urls: Regenerated. - * config/lm32/lm32.opt.urls: Regenerated. - * config/loongarch/loongarch.opt.urls: Regenerated. - * config/lynx.opt.urls: Regenerated. - * config/m32r/m32r.opt.urls: Regenerated. - * config/m68k/m68k.opt.urls: Regenerated. - * config/mcore/mcore.opt.urls: Regenerated. - * config/microblaze/microblaze.opt.urls: Regenerated. - * config/mips/mips.opt.urls: Regenerated. - * config/mn10300/mn10300.opt.urls: Regenerated. - * config/moxie/moxie.opt.urls: Regenerated. - * config/msp430/msp430.opt.urls: Regenerated. - * config/nds32/nds32.opt.urls: Regenerated. - * config/or1k/elf.opt.urls: Regenerated. - * config/pa/pa-hpux.opt.urls: Regenerated. - * config/pa/pa.opt.urls: Regenerated. - * config/pdp11/pdp11.opt.urls: Regenerated. - * config/pru/pru.opt.urls: Regenerated. - * config/riscv/riscv.opt.urls: Regenerated. - * config/rs6000/rs6000.opt.urls: Regenerated. - * config/rs6000/sysv4.opt.urls: Regenerated. - * config/s390/s390.opt.urls: Regenerated. - * config/sh/sh.opt.urls: Regenerated. - * config/sparc/sparc.opt.urls: Regenerated. - * config/v850/v850.opt.urls: Regenerated. - * config/vax/vax.opt.urls: Regenerated. - * config/visium/visium.opt.urls: Regenerated. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Fix whitespace - in option list. - (PRU Options): Copy-editing. Index and list negative option forms. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/pdp11/pdp11.opt (m40, m45): Add RejectNegative. - * doc/invoke.texi (Option Summary) : Remove - redundant -mno- forms from the list. - (PDP-11 Options): Fix some markup issues. Merge documentation - of positive and negative forms of -mac0. Index negative forms - of -msplit, -mlra. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/or1k/elf.opt (mnewlib): Mark obsolete option as - "Undocumented". - * config/or1k/or1k.opt (mcmov): Don't use future tense in doc string. - (msfimm): Likewise. - (mshftimm): Likewise. - * doc/invoke.texi (Option Summary) : Don't - document -mnewlib. - (OpenRISC Options): Likewise. Add @opindex entry for - -mno-double-float. Fix more instances of incorrect use of future - tense. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Add - several missing options. - (Nvidia PTX Options): Correct index entry for -march-map. List - negative forms of -moptimize, muniform-simt, and -mgomp. Fix some - Texinfo markup issues. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Don't list - both positive and negative option forms. - (NDS32 Options): Consolidate separate entries for positive and - negative forms of the same option. Document missing negative - forms in the same style. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/msp430/msp430.opt (mcpu): Mark deprecated option as - "Undocumented". - (mdevices-csv-loc=): Mark option not intended to be used by users - as "Undocumented". - * doc/invoke.texi (Option Summary) : Fill in - argument syntax for options of the form -mfoo=@var{arg}. Don't - list deprecated option -mcpu=. Add missing entries for - -mwarn-devices-csv and -muse-lower-region-prefix. - (MSP430 Options): Similarly document argument syntax in the table - @item entries. Add @opindex entries for negative forms. - Delete documentation of deprecated -mcpu= option. Add - documentation for -muse-lower-region-prefix. Markup and - copy-editing fixes throughout the section. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Remove - redundant -mno- forms from the list. - (MN10300 Options): Combine the documentation for -mmult-bug, - -mam33, -mliw, and -msetlb with the entries for the respective - negative forms. List and index the negative forms -mno-am33-2, - -mno-am34, -mno-return-pointer-on-d0, -mno-mul.x. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Remove redundant - -mno- forms from the list. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/mips/mips.opt (mnoasmopt): Mark as "Undocumented". - * doc/invoke.texi (Option Summary) : Add missing - entries for -mel/-meb. Only list one of -mfoo/-mno-foo. - (MIPS Options): Document -meb/-mel as synonyms for -EB/-EL. - Add missing @opindex entries. Document -mmsa and -mfix4300. - Minor copy-editing for grammar and jargon issues. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/microblaze/microblaze.opt (Zxl-mode-bootstrap): - Mark as "Undocumented". - (Zxl-mode-executable): Likewise. - (Zxl-mode-novectors): Likewise. - (Zxl-mode-xilkernel): Likewise. - (Zxl-mode-xmdstub): Likewise. - (mxl-stack-check): Likewise. - (mno-clearbss): Likewise. - (mxl-mode-executable): Make help string more useful. - (mxl-mode-xmdstub): Likewise. - (mxl-mode-bootstrap): Likewise. - (mxl-mode-novectors): Likewise. - (mxl-mode-xilkernel): Mark as "Undocumented". - * doc/invoke.texi (Option Summary) : Delete - entries for obsolete options now explicitly undocumented, and add - missing -mxl-prefetch option. - (MicroBlaze Options): Add missing @opindex entries for negative - option forms and list negative forms explicitly when appropriate. - Delete documentation for obsolete/deprecated options. Add - missing @opindex entries for the m[no-]xml-mode- options. - Add missing documentation for -mxl-prefetch. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Remove - redundant -no options. - (MCore Options): Disambiguate documentation for - -mbig-endian/-mlittle-endian and -m210/-m340. - -2025-12-13 Sandra Loosemore - - PR other/122243 - PR target/119404 - * config/m68k/m68k.opt (mlra): Fix typo in help string. - * doc/invoke.texi (Option Summary) : Remove - redundant -mno- forms from the list. - (M680x0 Options): Combine documentation for -mshort, mbitfield, - -msep-data, -mid-shared-library with that for their respective - negatives that were formerly separately listed. Add missing - @opindex entries. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Remove - redundant -mno entry. - (M32R/D Options): Regularize form of @opindex entries for - various options of the form -mfoo=@var{value}. Combine - the documentation for -malign-loops and -mno-align-loops. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (M32C Options): Add missing @opindex for negative - form. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : - Remove redundant -mno forms from list. Fix formatting so that - there is uniformly two spaces between options on the same line. - (LoongArch Options): Copy-editing for grammar, etc. Add - @opindex for negative forms. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (LM32 Options): Add @opindex entries for negative - option forms. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/ia64/ia64.opt (msched-prefer-data-spec-insns): Mark as - explicitly "Undocumented". - (msched-prefer-non-control-spec-insns): Likewise. - * doc/invoke.texi (Option Summary) : Remove - explicitly undocumented and redundant mno- forms from the list. - (IA-64 Options): Remove documentation for already-deleted option - -mfused-add and the two explicitly undocumented options. Add - @opindex for negative forms and explicitly list the -mno-forms - of options that are enabled by default. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/pa/pa.opt (mbig-switch): Mark obsolete option as - "Undocumented". - (mjump-in-delay): Likewise. - (mlra): Likewise. - (mnosnake, msnake): Likewise. - * doc/invoke.texi (Option Summary) : Remove - deliberately undocumented options from list. Remove redundant - negative/positive forms from list. Fix formatting so there is - uniformly two spaces between options on the same line. - (HPPA Options): Remove documentation for obsolete options. - Add @opindex for negative forms. Properly list -mwsio instead - of just referring to it in the -msio docs. Light copy-editing to - fix markup, jargon, etc. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/h8300/h8300.opt (mexr, mno-exr): Add FIXME re ambiguity - for -mno-exr semantics. - * doc/extend.texi (H8/300 Function Attributes): Document - monitor and OS_Task attributes. - * doc/invoke.texi (Option Summary) - - PR other/122243 - * config/arc/arc.opt: Mark -mbig-endian, -mlittle-endian, - -mmixed-code, -mno-mpy, -margonaut, -munalign-prob-threshold=, - -mannotate-align, -malign-call, -mRcq, -mRcw, -mbbit-peephole, - -mcompact-casesi, -mq-class, -mexpand-adddi, -mcrc, -mdsp-packa, - -mdvbf, -mtelephony, -mrtsc, -EB, -EL, -mrla, -mEA, and - -multcost= as "Undocumented". - * doc/invoke.texi: Remove documentation for the above options. - plus -mmac-d16 and -mmac-24 (which were already marked as - "Undocumented"). Likewise remove documentation for - -mbarrel_shifter, -mdpfp_compact, -mdpfp_fast, -mdsp_packa, - -mmac_24, -mmac_d16, -mspfp_compact, and -mspfp_fast, which - had already been deleted from arc.opt at some point. - Add index entries for the -mno- forms of remaining options that - have them. Document positive forms of -mno-brcc and -mno-dpfp-lrsr. - -2025-12-13 Sandra Loosemore - - PR other/122243 - * config/arc/arc.opt (-mno-brcc, -mno-dpfp-lrsr): Redefine in - the positive sense. - -2025-12-13 Andrew Pinski - - PR ipa/122955 - * cgraph.h (toplevel_node): Add next and previous fields. - Add chain_next and chain_prev to GTY. - (symtab_node): Remove next and previous field. Remove chain_next and chain_prev - from the GTY. - (asm_node): Remove next field. - (symtab_node::next_defined_symbol): Use save_as_a around next. - (symbol_table::unregister): Likewise - (FOR_EACH_SYMBOL): Likewise - (symbol_table::first_defined_symbol): Likewise - (symbol_table::first_variable): Likewise - (symbol_table::next_variable): Likewise - (symbol_table::first_static_initializer): Likewise - (symbol_table::next_static_initializer): Likewise - (symbol_table::first_defined_variable): Likewise - (symbol_table::next_defined_variable): Likewise - (symbol_table::first_defined_function): Likewise - (symbol_table::next_defined_function): Likewise - (symbol_table::first_function): Likewise - (symbol_table::next_function): Likewise - (symbol_table::first_function_with_gimple_body): Likewise - (symbol_table::next_function_with_gimple_body): Likewise - * cgraphunit.cc (analyze_functions): Likewise - (output_in_order): Likewise - * lto-streamer-out.cc (lto_output): Use save_as_a around next. - * symtab.cc (symtab_node::verify_symtab_nodes): Likewise. - -2025-12-12 Chung-Lin Tang - Tobias Burnus - Andrew Stubbs - - * gimplify.cc (gimplify_scan_omp_clauses): Handle uses_allocators - by printing a 'sorry, unimplemented' and removing it. - * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_USES_ALLOCATORS. - * tree.cc (omp_clause_num_ops, omp_clause_code_name): Likewise. - * tree-pretty-print.cc (dump_omp_clause): Handle it. - * tree.h (OMP_CLAUSE_USES_ALLOCATORS_ALLOCATOR, - OMP_CLAUSE_USES_ALLOCATORS_MEMSPACE, - OMP_CLAUSE_USES_ALLOCATORS_TRAITS): New. - -2025-12-12 Andrew Pinski - - PR tree-optimization/103680 - * tree-loop-distribution.cc (destroy_loop): Set probability - of the exit edge to be always. - -2025-12-12 Andrew Pinski - - PR tree-optimization/103680 - * tree-cfg.cc (make_forwarders_with_degenerate_phis): Fix - initial value of the count to new bb. - -2025-12-12 Stefan Schulze Frielinghaus - - * config/s390/s390.cc (s390_expand_builtin): Warn about - non-overloaded deprecated builtins. - -2025-12-12 Stefan Schulze Frielinghaus - - * config/s390/s390-c.cc (s390_adjust_builtin_arglist): Fix - builtin s390_vec_load_bndry for C++. - -2025-12-12 Stefan Schulze Frielinghaus - - * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): - Perform array-to-pointer conversion for C++. - -2025-12-12 David Malcolm - - PR analyzer/122003 - * Makefile.in (ANALYZER_OBJS): Add analyzer/ops.o, - analyzer/supergraph-fixup-locations.o, - analyzer/supergraph-simplify.o, and analyzer/supergraph-sorting.o. - * digraph.h (dnode::add_in_edge): New. - (dnode::remove_in_edge): New. - (dnode::add_out_edge): New. - (dnode::remove_out_edge): New. - (dnode::m_preds): Make public. - (dnode::m_succs): Likewise. - (dnode::find_edge_idx): New. - (dedge::edge_t): New typedef. - (dedge::m_src): Make non-const. - (dedge::m_dest): Likewise. - (dedge::set_dest): New. - (digraph::add_any_extra_stmts): New. - (digraph::dump_dot_to_pp): Call it. - * doc/analyzer.texi: Update for rewrite of supergraph. - * doc/invoke.texi (fanalyzer-fine-grained): Make this as a no-op - preserved for backwards compatibility. - (fanalyzer-simplify-supergraph): Document new option. - (fdump-analyzer-supergraph): Update for changes to output. - * gdbhooks.py (AnaSupernodePrinter.to_string): Update for renaming - of supernode::m_index to supernode::m_id. - * system.h: Include if INCLUDE_DEQUE was defined. - -2025-12-12 Jakub Jelinek - - PR rtl-optimization/121852 - * rtlanal.cc (single_set_2): Only look for REG_UNUSED notes if - df && df_note, otherwise if df and SET_DEST is a pseudo with - DF_REG_USE_COUNT 0, assume it is unused as well. Otherwise - assume it may be used. - -2025-12-12 Tejas Belagod - Tamar Christina - - * config/aarch64/aarch64.cc (aarch64_instruction_selection): Flip - svbool_t == to != to avoid extra bit-inverse. - -2025-12-12 mengqinggang - - * config/loongarch/loongarch.cc (loongarch_block_move_loop): Change - length, align to unsigned. - (loongarch_expand_block_move): Ditto. - -2025-12-12 Jiajie Chen - - * config/loongarch/loongarch.cc (loongarch_emit_int_compare): - Call trunc_int_mode to ensure valid rhs. - -2025-12-12 mengqinggang - - * config/loongarch/predicates.md: Add CONSTM1_RTX for low_bitmask_operand. - -2025-12-12 mengqinggang - - * config/loongarch/larchintrin.h (__movgr2fcsr): Disable on soft float. - (__cacop_w): New. - (__lddir_d): Delete #error. - (__ldpte_d): Likewise. - (__crc_w_w_w): Disable on LA32 - (__crc_w_d_w): Likewise. - (__crcc_w_w_w): Likewise. - * config/loongarch/loongarch-builtins.cc : Disable some builtin on LA32. - -2025-12-12 mengqinggang - Jiajie Chen - - * config/loongarch/loongarch-opts.cc (loongarch_target_option_override): - Delete opts->x_flag_pcc_struct_return and enable mstrict-align by - default on LA32. - * config/loongarch/loongarch.cc (loongarch_for_each_saved_reg): Save reg - depend on float abi. - (loongarch_explicit_relocs_p): Disable explicit relocs on LA32. - (loongarch_valid_offset_p): Disable const_imm16_operand with 4 byte aligned. - (loongarch_valid_lo_sum_p): Allow lo_sum to be used with DF in ilp32d. - (loongarch_valid_index_p): Disable ADDRESS_REG_REG on LA32. - (loongarch_legitimize_address): Disable mem_shadd_or_shadd_rtx_p on LA32. - (loongarch_output_move_index): Assert TARGET_64BIT for ldx/stx. - (loongarch_output_move): Disable ldptr/stptr if offset is 0. - (loongarch_output_equal_conditional_branch): Disable beqz/bnez on LA32R. - (loongarch_trampoline_init): Change pcaddi to pcaddu12i. - (loongarch_get_separate_components): Disable ldptr/stptr on LA32. - (loongarch_c_mode_for_floating_type): Use TFmode for long double - regardless of target bitness. - (loongarch_bitint_type_info): Disable BitInt on LA32. - (loongarch_call_tls_get_addr): Use call30 on LA32. - (loongarch_split_move): Add split for DI, DF, TF. - * config/loongarch/loongarch.h (LA_LONG_DOUBLE_TYPE_SIZE): Set - LONG_DOUBLE_TYPE_SIZE to 128 regardless of target bitness. - (MAX_FIXED_MODE_SIZE): Set to 64 on LA32. - (DEFAULT_PCC_STRUCT_RETURN): New. - (STACK_BOUNDARY): Set to 128 on LA64 and LA32. - (LARCH_STACK_ALIGN): Set to 16 on LA64 and LA32. - (TRAMPOLINE_SIZE): Set to same value on LA64 and LA32. - -2025-12-12 mengqinggang - Jiajie Chen - - * config/loongarch/constraints.md: Disable k on LA32. - * config/loongarch/loongarch.md (*and3): Delete. - (*and3_extend): New. - (zero_extend2_la32r): New. - (extend2_la32r): New. - (extendqihi2_la32r): New. - (*movdi_32bit): Remove not working split, use existing - loongarch_split_move instead. - (move_doubleword_2_): New. - (load_low): New. - (load_high): New. - (store_word): New. - (movgr2frh): New. - (movfrh2gr): New. - * config/loongarch/predicates.md: Disable low_bitmask_operand and - ins_zero_bitmask_operand on LA32. Enable const_call_insn_operand on LA32. - * config/loongarch/sync.md (atomic_): Change to define_expand. - (la64_atomic_): New. - (la32_atomic_si): New. - (atomic_fetch_): Change to define_expand. - (la64_atomic_fetch_): New. - (la32_atomic_fetch_si): New. - (atomic_exchange): Change to define_expand. - (la64_atomic_exchange): New. - (la32_atomic_exchangesi): New. - -2025-12-12 mengqinggang - Jiajie Chen - - * config.gcc: Add target triple loongarch32-*-*-* and - corresponding abi ilp32f, ilp32d and ilp32s. - * config/loongarch/genopts/loongarch-strings: Add strings for - loongarch32 and ilp32 abi variants. - * config/loongarch/genopts/loongarch.opt.in: Add - -march=la32v1.0/la32rv1.0 and -mabi=ilp32d/ilp32f/ilp32s. - * config/loongarch/gnu-user.h: Add ilp32 abi variants to spec. - * config/loongarch/linux.h: Add ABI_LIBDIR for ilp32 abi - variants. - * config/loongarch/loongarch-c.cc (loongarch_define_unconditional_macros): - Add builtin definitions for loongarch32 target. - * config/loongarch/loongarch-def.cc: Add loongarch32 and ilp32 - definitions. - * config/loongarch/loongarch-def.h: Add loongarch32 and ilp32 - definitions. - * config/loongarch/loongarch-driver.h: Add ilp32 abi variants to - spec. - * config/loongarch/loongarch-opts.cc: Handle ilp32 abi variants. - * config/loongarch/loongarch-opts.h: Add loongarch32 case to - macros. - * config/loongarch/loongarch-str.h: Add loongarch32 and ilp32 - strings. - * config/loongarch/loongarch.opt: Add -march=la32v1.0/la32rv1.0 - and -mabi=ilp32d/ilp32f/ilp32s. - * config/loongarch/t-linux: Add ilp32 abi variants to multilib. - * doc/invoke.texi: Add LA32 arch and tune. - -2025-12-12 Pietro Monteiro - - * common.opt.urls: Regenerate. - -2025-12-11 Jakub Jelinek - - * config/arc/arc.cc (hwloop_optimize): Fix comment typo, - begining -> beginning. - * config/nds32/nds32-utils.cc (nds32::extract_pattern_from_insn): - Fix comment typo, funciton -> function. - * ipa-inline.cc (speculation_useful_p): Fix comment typo, - calll -> call. - * auto-profile.cc: Fix comment typos, implements -> implement, - inlning -> inlining, passe -> passes, form -> from, ambigous - -> ambiguous. - (afdo_hot_bb_threshod): Rename to ... - (afdo_hot_bb_threshold): ... this. - (maybe_hot_afdo_count_p): Adjust for the above change. - (function_instance::merge): Fix comment typo, hasnt -> hasn't. - (function_instance::offline_if_not_realized): Fix comment typo, - instancs -> instances. - (afdo_count_scale): Fix comment typo, reudce -> reduce. - (get_original_name): Fix comment typos, generetad -> generated, - sufix -> suffix. - (function_instance::get_function_instance): Fix dump message - typo, insteed -> instead. - (function_instance::merge): Fix comment typos, hasnt -> hasn't, - acounting -> accounting, calll -> call, begining -> beginning. - (function_instance::offline_if_in_set): Fix comment typo, - begining -> beginning. - (match_with_target): Fix comment typo, correspons -> corresponds. - (function_instance::match): Fix diagnostic typo, discrimnator - -> discriminator. - (autofdo_source_profile::offline_external_functions): Fix comment - typos, Doint -> Doing, distingush -> distinguish, shold -> should, - Poppulate -> Populate. Fix dump message typo, suffxes -> suffixes. - (autofdo_source_profile::offline_unrealized_inlines): Fix comment - typo, Poppulate -> Populate. - (autofdo_source_profile::update_inlined_ind_target): Fix dump message - typo, funciton -> function. - (autofdo_source_profile::read): Fix comment typos, function_instace - -> function_instance, exixts -> exits. Use afdo_hot_bb_threshold - instead of afdo_hot_bb_threshod. - (autofdo_source_profile::get_function_instance_by_inline_stack): - Fix dump message typo, locaction -> location. - (afdo_propagate_edge): Fix dump message typo, succesors -> successors. - (afdo_propagate): Fix comment typo, stablize -> stabilize. - (struct scale): Fix comment typo, descired -> desired. - (afdo_adjust_guessed_profile): Fix dump message typos, predecesor - -> predecessor, sucessor -> successor. Fix comment typo, inprecise - -> imprecise. - (auto_profile): Fix comment typo, annoate -> annotate. - * tree-vect-slp.cc (vectorizable_slp_permutation_1): Fix comment typo, - cylical -> cyclical. - * except.cc (maybe_add_nop_after_section_switch): Fix comment typo, - begining -> beginning. - * tree-ssa-loop-ivcanon.cc (tree_unroll_loops_completely): Fix comment - typo, begining -> beginning. - * gcc.cc (insert_comments): Likewise. - -2025-12-11 supers1ngular - - * doc/extend.texi: Bump version and clarify implementation - status. - -2025-12-11 Tamar Christina - - PR tree-optimization/123014 - * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): Detect - empty pre-header block. - (vect_do_peeling): Undo changes from PR122959. - -2025-12-11 Alfie Richards - - * config/aarch64/aarch64.cc (aarch64_fndecl_abi): New function. - (aarch64_function_abi): New function. - (aarch64_function_arg_regno_p): Update to use aarch64_fndecl_abi. - (aarch64_output_mi_thunk): Likewise. - (aarch64_is_variant_pcs): Likewise. - (aarch64_set_current_function): Update to initialize pcs value. - * config/aarch64/aarch64.h (enum arm_pcs): Move location earlier in - file. - (machine_function) Add pcs value. - -2025-12-11 supers1ngular - - * doc/invoke.texi: Update docs for '-Wdeprecated-openmp'. - -2025-12-11 Eric Botcazou - - PR target/80881 - * config/i386/i386.h (DEFAULT_TLS_SEG_OFFSET): New define. - * config/mingw/mingw32.h (DEFAULT_TLS_SEG_OFFSET): Likewise. - * config/i386/i386.cc (ix86_tls_index): Fix long line. - (legitimize_tls_address): Use get_thread_pointer, add comments and - fix long lines. - * config/i386/i386.md (*load_tp_): Use DEFAULT_TLS_SEG_OFFSET - (*load_tp_x32_zext): Likewise. - (*add_tp_): Likewise. - (*add_tp_x32_zext): Likewise. - * config/i386/predicates.md (pic_32bit_operand): Fix oversight. - (symbolic_operand): Accept UNSPEC_SECREL32 with or without offset. - -2025-12-10 Alexandre Oliva - - * config/i386/i386.md (lea peephole2): Add 3 new variants. - -2025-12-10 Jakub Jelinek - Andrew Pinski - - PR middle-end/123069 - * tree-vect-generic.cc (expand_vector_mult): Use - build_zero_cst (vectype) instead of build_int_cst (vectype, 0). - -2025-12-10 Jason Merrill - - * doc/invoke.texi (C++ Modules): Remove standard library header - units from missing pieces, mention importable header redirection. - -2025-12-10 Rainer Orth - - * config/sol2.h (PID_TYPE): Define. - * doc/tm.texi.in (Type Layout): Document PID_TYPE. - * doc/tm.texi: Regenerate. - -2025-12-09 John Ericson - - * Makefile.in: No longer include TARGET_SYSTEM_ROOT in - libgcc.mvars. - -2025-12-09 John Ericson - - * Makefile.in:: Remove NO_PIE_CFLAGS logic, since it is now in - libgcc. - * configure: Regenerate. - * configure.ac: Remove the enable_default_pie substitution, since - libgcc now has its own logic. - -2025-12-09 Robin Dapp - - PR tree-optimization/123074 - * tree-vect-loop.cc: Reset LOOP_VINFO_USING_SELECT_VL_P. - -2025-12-09 Pan Li - - * config/riscv/predicates.md: Append operator lt to - the comparison_swappable_operator. - * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Add - swappable operator lt handing. - -2025-12-09 Richard Biener - - PR target/121230 - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): - With FP mode and 387 math cost spill/reload. - -2025-12-09 Robin Dapp - - * config/riscv/riscv.opt.urls: Regenerate. - -2025-12-09 Andrew Stubbs - - * config/gcn/gcn.cc (gcn_init_cumulative_args): Only warn once. - Use "required" instead of "enabled" in the warning. - * config/gcn/mkoffload.cc (process_asm): Warn, don't error. - Use "required" instead of "on" in the warning. - -2025-12-09 Robin Dapp - - PR tree-optimization/122635 - * gimple-fold.cc (enum mask_load_store_state): New enum. - (gimple_fold_partial_load_store_mem_ref): Only fold - "all active" loads/stores. - (partial_load_store_mask_state): New function to compute mask - state. - (gimple_fold_partial_load): Remove. - (gimple_fold_partial_load_store): New function. - (gimple_fold_partial_store): Remove. - (gimple_fold_call): Use new function. - -2025-12-09 Robin Dapp - - * config/rs6000/predicates.md (lxvl_else_operand): New - predicate. - * config/rs6000/vsx.md: Add else operand. - * config/s390/predicates.md (vll_else_operand): New predicate. - * config/s390/vector.md: Add else operand. - * doc/md.texi: Document else operand. - * internal-fn.cc (internal_fn_len_index): Adjust IFN_LEN_LOAD. - (internal_fn_else_index): Add IFN_LEN_LOAD. - * optabs-tree.cc (target_supports_len_load_store_p): Get else - value for len_load. - * tree-vect-stmts.cc (vectorizable_load): Pun the else value - type. - -2025-12-09 Robin Dapp - - * config/riscv/riscv-target-attr.cc (riscv_target_attr_parser::handle_max_vect): - New parser entry. - (riscv_target_attr_parser::update_settings): Set max-vect - option. - (riscv_process_one_target_attr): Change null-arg handling. - * config/riscv/riscv.cc (riscv_override_options_internal): Set - max-vect option. - * config/riscv/riscv.opt: Add -mmax-vectorization option. - * doc/extend.texi: Document new option. - * doc/invoke.texi: Ditto. - -2025-12-09 Robin Dapp - - PR target/123022 - * config/riscv/vector.md: Add mode_idx attribute. - -2025-12-09 Robin Dapp - - PR target/115325 - * config/riscv/riscv-c.cc (riscv_pragma_target_parse): New - function. - (riscv_register_pragmas): Register riscv_pragma_target_parse. - * config/riscv/riscv-protos.h (riscv_process_target_attr_for_pragma): - Declare. - (riscv_reset_previous_fndecl): Ditto. - * config/riscv/riscv-target-attr.cc (riscv_process_target_attr_for_pragma): - New function. - * config/riscv/riscv.cc (riscv_reset_previous_fndecl): Reset. - (riscv_option_save): New function. - (riscv_option_print): Ditto. - (riscv_get_interrupt_type): Adjust docs. - (TARGET_OPTION_SAVE): Implement. - (TARGET_OPTION_PRINT): Ditto. - * doc/extend.texi: Document that riscv can do target pragams. - -2025-12-09 Robin Dapp - - * config/riscv/autovec.md (reduc_sbool_and_scal_): New - expander. - (reduc_sbool_ior_scal_): Ditto. - (reduc_sbool_xor_scal_): Ditto. - * config/riscv/riscv-protos.h (expand_mask_reduction): Declare. - * config/riscv/riscv-v.cc (expand_mask_reduction): New function. - -2025-12-09 Richard Biener - - PR target/123027 - * config/i386/i386-expand.cc (ix86_expand_sse_fp_minmax): - With !HONOR_NANS we can handle LE by swapping and inverting. - -2025-12-08 Andrew Pinski - - PR tree-optimization/46555 - * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): - Don't set todo to include cleanupcfg; do it manually. - Call make_forwarders_with_degenerate_phis if optimizing. - -2025-12-08 Andrew Pinski - - * tree-cfg.cc (make_forwarders_with_degenerate_phis): Add debug - dump. - -2025-12-08 Andrew Pinski - - * tree-ssa-dce.cc (sort_phi_args): Move to tree-cfg.cc. - (make_forwarders_with_degenerate_phis): Move to tree-cfg.cc. - (perform_tree_ssa_dce): Update for the updated return type - of make_forwarders_with_degenerate_phis. - * tree-cfg.cc (sort_phi_args): Moved from tree-ssa-dce.cc. - (make_forwarders_with_degenerate_phis): Moved from tree-ssa-dce.cc. - Update return type to bool and return true if an edge was split. - * tree-cfg.h (make_forwarders_with_degenerate_phis): New decl. - -2025-12-08 Eric Botcazou - - PR target/80881 - * config/mingw/winnt.cc (mingw_pe_unique_section): Put two dollar - signs for TLS sections after the prefix. - (mingw_pe_asm_named_section): Deal with all TLS sections uniformly. - -2025-12-08 Ezra Sitorus - - * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add C1-Nano, - C1-Pro, C1-Premium and C1-Ultra. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi: Document C1 cores. - -2025-12-08 Richard Biener - - PR tree-optimization/123040 - * tree-ssa-sccvn.cc (vn_nary_build_or_lookup_1): Only insert - nary results. - -2025-12-08 Josef Melcr - - PR ipa/122798 - * cgraph.cc (cgraph_edge::redirect_callee): Use - iterate_referring instead of referred_to_p. - * cgraphclones.cc (set_new_clone_decl_and_node_flags): Set local - to true iff the node does not have its address taken. - -2025-12-08 Richard Biener - - PR tree-optimization/123038 - * tree-vect-patterns.cc (vect_recog_ctz_ffs_pattern): Reject - pattern for reductions when the call argument is used multiple - times. - -2025-12-08 Tamar Christina - - PR target/123026 - * config/aarch64/aarch64-simd.md (reduc_sbool_ior_scal_, - reduc_sbool_and_scal_): Fix tmp operands[1] override. - -2025-12-08 Tamar Christina - - PR tree-optimization/122868 - * tree-vect-stmts.cc (vectorizable_load): Move check for invariant loads - down into the loop. - -2025-12-08 H.J. Lu - - PR target/122343 - * config/i386/sse.md (*_cmp3_dup_op): Don't allow - 2 volatile memory references. - -2025-12-07 Jason Merrill - - * config/darwin-c.cc (find_subframework_header): Use - _cpp_get_file_*. - -2025-12-07 H.J. Lu - - PR target/122343 - * common.opt: Add -ffuse-ops-with-volatile-access. - * common.opt.urls: Regenerated. - * recog.cc (general_operand): Allow volatile memory reference if - -ffuse-ops-with-volatile-access is enabled. - * simplify-rtx.cc (simplify_binary_operation_1): Keep PLUS for 2 - volatile memory references. - * doc/invoke.texi: Document -ffuse-ops-with-volatile-access. - -2025-12-07 Alexandre Oliva - - * cselib.cc (dump_cselib_val): Split out of and rename to... - (dump_cselib_val_ptr): ... this. - (dump_cselib_table): Adjust. Skip cselib_preserved_hash_table - when not allocated. - -2025-12-06 Alexandre Oliva - - PR rtl-optimization/122947 - * calls.cc (expand_call): Add stack function usage in - non-ACCUMULATE_OUTGOING_ARGS configurations. - -2025-12-06 Alexandre Oliva - - PR target/91420 - * config/riscv/riscv.cc (riscv_symbolic_constant_p): Require - offsets smaller than +/- 1GiB for PCREL symbols. - -2025-12-06 Jakub Jelinek - - * attribs.cc (decl_attributes): Use attribute_value_equal to - compare attribute values instead of simple_cst_equal. - -2025-12-06 Dimitar Dimitrov - - PR rtl-optimization/122675 - * bb-reorder.cc (edge_order): Fix BB edge ordering to be - descending. - -2025-12-05 Vladimir N. Makarov - - PR rtl-optimization/122215 - * ira-color.cc (improve_allocation): Use register filter for all - loop on hard regs. - -2025-12-05 Richard Earnshaw - - PR target/122999 - * config/arm/arm.cc (arm_canonicalize_comparison): Defer - initializing maxval until we know we are dealing with an - integer mode. - -2025-12-05 Richard Biener - - * tree-vect-loop.cc (vect_need_peeling_or_partial_vectors_p): - When peeling for gaps we always need an epilog. - -2025-12-05 Richard Biener - - PR tree-optimization/120939 - * tree-vect-loop.cc (vect_need_peeling_or_partial_vectors_p): - Remove eliding an epilogue based on not computed - LOOP_VINFO_COST_MODEL_THRESHOLD and estimated max stmt executions. - -2025-12-05 Richard Biener - - PR tree-optimization/123002 - * tree-vectorizer.h (supportable_widening_operation): Remove - vinfo and stmt_info parameters, add flag to indicate whether - the context would allow OP_{EVEN,ODD}. - * tree-vect-patterns.cc (vect_recog_abd_pattern): Adjust - and pass false. - (vect_recog_widen_op_pattern): Likewise. - (vect_recog_widen_abd_pattern): Likewise. - * tree-vect-stmts.cc (vectorizable_conversion): Move - even/odd validity check here, from supportable_widening_operation. - Adjust it to be conservative. - (supportable_widening_operation): Get flag whether even/odd - is OK to use and remove then unused parameters and code. - -2025-12-05 Richard Biener - - * tree-pretty-print.cc (dump_mem_ref): Dump clique : base - specifier for MEM_REF and TARGET_MEM_REF when dumping - GIMPLE format. - -2025-12-05 Tobias Burnus - - * gimplify.cc (gimplify_scan_omp_clauses): Handle - OMP_CLAUSE_DYN_GROUPPRIVATE by printing 'sorry, unimplemented'. - * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_DYN_GROUPPRIVATE. - (enum omp_clause_fallback_kind): New. - (struct tree_omp_clause): Add fallback_kind union member. - * tree-nested.cc (convert_nonlocal_omp_clauses, - convert_local_omp_clauses): Handle OMP_CLAUSE_DYN_GROUPPRIVATE. - * tree.cc (omp_clause_num_ops, omp_clause_code_name): Add - OMP_CLAUSE_DYN_GROUPPRIVATE. - * tree-pretty-print.cc (dump_omp_clause): Handle - OMP_CLAUSE_DYN_GROUPPRIVATE. - * tree.h (OMP_CLAUSE_DYN_GROUPPRIVATE_EXPR, - OMP_CLAUSE_DYN_GROUPPRIVATE_KIND): New #define. - -2025-12-05 Andrew Pinski - - PR middle-end/99782 - * config/i386/i386-expand.cc (ix86_gen_ccmp_next): Move the check - for mode earlier before expand_operands. - * config/aarch64/aarch64.cc (aarch64_gen_ccmp_next): Likewise. - -2025-12-05 Daniel Barboza - Jeff Law - - * match.pd (`x & c ? (x - c) | (x | c)`): New pattern. - (`x & c ? (x & ~c) | (x | c)`): Likewise. - -2025-12-05 Pan Li - - * config/riscv/autovec-opt.md (*pred_cmp_swapped_scalar): - Add new pattern to match vec_dup > vec for vmsltu. - * config/riscv/predicates.md (comparison_swappable_operator): - Add new iterator for above pattern - * config/riscv/riscv-protos.h (expand_vx_cmp_vec_dup_vec): Add - new func to emit vmsltu.vx. - * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Add new - func to convert cmp code to swapped, like gtu to ltu. - (expand_vx_cmp_vec_dup_vec): Add new func decl. - -2025-12-04 Jakub Jelinek - - PR target/122991 - * config/aarch64/aarch64.md (crc_rev4, - crc4): Use const_int_operand predicate for - the last operand. - -2025-12-04 Richard Biener - - PR tree-optimization/122776 - * tree-vectorizer.h (vect_simd_clone_data::clone, - vect_simd_clone_data::clone_inbranch): New fields for - the two selected clones. - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Record - both a possibly notinbranch and a inbranch clone. Delay - the choice between both to code generation based on - LOOP_VINFO_FULLY_MASKED_P. - -2025-12-04 Martin Jambor - - * gimple-range-fold.h (class fold_using_range): New member - function range_from_readonly_var. - * gimple-range-fold.cc (fold_using_range::fold_stmt): Call - range_from_readonly_var on assignments. - (range_from_missing_constructor_part): New function. - (range_from_readonly_load): Likewise. - (fold_using_range::range_from_readonly_var): Likewise. - * params.opt (param_vrp_cstload_limit): New. - * doc/invoke.texi (vrp-cstload-limit): Likewise. - -2025-12-04 Jakub Jelinek - - PR target/122991 - * config/i386/i386.md (crc_revsi4): Use const_int_operand - predicate for the last input argument. - -2025-12-04 Stefan Schulze Frielinghaus - - * lra-constraints.cc (get_reload_reg): Honor exclude start regs - while reusing reloads. - -2025-12-04 Kugan Vivekanandarajah - - Revert: - 2025-12-02 Kugan Vivekanandarajah - - * ipa-inline.cc (inline_functions_by_afdo): Remove resetting bool inlined. - -2025-12-03 Vladimir N. Makarov - - PR rtl-optimization/85072 - * lra-assigns.cc (init_live_reload_and_inheritance_pseudos): - Improve calculation of live_reload_and_inheritance_pseudos and set - a constraint to do this. - * params.opt - (lra-max-pseudos-points-log2-considered-for-preferences): New. - * doc/invoke.texi - (lra-max-pseudos-points-log2-considered-for-preferences): Document - it. - -2025-12-03 Eric Botcazou - - PR tree-optimization/122934 - * tree-ssa-loop-niter.cc (simplify_using_initial_conditions): Use - singleton_p predicate even with boolean ranges. - -2025-12-03 Jakub Jelinek - - PR tree-optimization/122943 - * tree-switch-conversion.cc (switch_conversion::build_arrays): - Always gimplify subtraction in utype without cast to tidxtype - and set m_arr_ref_first to the last stmt of that. Remove unneeded - update_stmt call. If tidxtype is not utype, append after that stmt - cast to tidxtype and set tidx to the lhs of that cast. - -2025-12-03 Andrew MacLeod - - PR tree-optimization/122898 - * gimple-range-fold.cc (fur_source::register_relation): Return a bool; - (fur_depend::register_relation): Ditto. - (fur_relation::register_relation): Ditto. - * gimple-range-fold.h (fur_source::register_relation): Adjust prototype. - (fur_depend::register_relation): Ditto. - * gimple-range-path.cc (jt_fur_source::register_relation): Return bool. - * value-relation.cc (equiv_oracle::add_partial_equiv): Return a bool. - (equiv_oracle::record): Return a bool. - (relation_oracle::record): Return a bool. - (dom_oracle::record): Return a bool. - (dom_oracle::set_one_relation): Remove some debug output. - (path_oracle::equiv_set): Return a bool. - (path_oracle::register_equiv): Return a bool. - (path_oracle::record): Return a bool. - * value-relation.h (relation_oracle::record): Adjust prototype. - (equiv_oracle::add_partial_equiv): Ditto - (equiv_oracle::record): Ditto. - (dom_oracle::record): Ditto. - (path_oracle::equiv_set): Ditto. - (path_oracle::register_equiv): Ditto. - (path_oracle::record): Ditto. - -2025-12-03 Jose E. Marchesi - - PR algol68/122964 - * dwarf2out.cc (gen_compile_unit_die): Set LVERSION to 1978 for - Algol 68 and add dwarf_version >= 5 to guard. - -2025-12-03 Tamar Christina - - PR tree-optimization/122969 - * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): handle - non-ssa name IV var args. - -2025-12-03 Mathias Krause - - * config/i386/i386.cc (x86_print_call_or_nop): Fix 16-bit NOP - generation. - -2025-12-03 Tamar Christina - - PR middle-end/122959 - * tree-vect-loop-manip.cc (vect_do_peeling): Delay setting update_e. - -2025-12-03 liuhongt - - PR target/71921 - * config/i386/predicates.md (ieee_maxmin_comparison_operator): - New predicator. - * config/i386/sse.md (*minmax3_3): New define_insn_and_split. - (*minmax3_4): Ditto. - (*minmax3_1): Extend operands[2]/operands[4] to handle - immediate_operand. - -2025-12-02 John David Anglin - - PR target/122874 - * config/pa/pa.cc (pa_emit_move_sequence): Break out large - REG+D addresses from MEM operands. Also, don't allow - unscaled indexed source operands till reload completes. - -2025-12-02 Robin Dapp - - PR target/122656 - * config/riscv/riscv-vector-builtins-bases.cc: Use - use_contiguous_load for vlsegff. - * config/riscv/riscv-vector-builtins.cc (function_expander::use_exact_insn): - Only add rounding mode operand if insn requires it and number of - arguments is < required. - (function_expander::use_ternop_insn): Ditto. - (function_expander::use_widen_ternop_insn): Ditto. - * config/riscv/vector.md: Use vector-mode source operand. - -2025-12-02 Kito Cheng - - * config/riscv/riscv-vector-builtins.cc - (function_builder::add_function): Remove placeholder_p parameter. - (function_builder::add_unique_function): Update call. - (function_builder::add_overloaded_function): Likewise. - * config/riscv/riscv-vector-builtins.h - (function_builder::add_function): Update declaration. - -2025-12-02 Robin Dapp - - * tree-vect-stmts.cc (vectorizable_scan_store): Pass loop_lens - to vect_get_data_ptr_increment. - -2025-12-02 Tamar Christina - - PR tree-optimization/122868 - * tree-vect-stmts.cc (vectorizable_load): Don't hoist loop invariant - conditional loads unless in header. - -2025-12-02 Kugan Vivekanandarajah - - * ipa-inline.cc (inline_functions_by_afdo): Remove resetting bool inlined. - -2025-12-02 Andrew Pinski - - PR target/122912 - * config/aarch64/t-aarch64 (TM_H): Add aarch64-tuning-enums.def. - -2025-12-02 Alexandre Oliva - - * hard-reg-set.h (hard_reg_set_iter_init): Drop unnecessary - increment of min. - (hard_reg_set_iter_set): Use ctz_hwi, and compute - word-advanced regno from word_no. - (hard_reg_set_iter_next): Only clear the cached LSB. - -2025-12-02 David Guillen Fandos - - * config/mips/mips.h (ISA_HAS_MADD_MSUB): Include allegrex. - * config/mips/mips.md: Tweak mul_acc_si/mul_sub_si to make it - work when MUL3 is not available. - -2025-12-02 David Guillen Fandos - - * config/mips/mips.h (ISA_HAS_WSBW): Defined a new macro. - * config/mips/mips.md (bswapsi2): Add new instruction. - (wsbwsi2): Replace with expand to support both wsbw and wsbh. - -2025-12-02 David Guillen Fandos - - * config/mips/mips.h (ISA_HAS_MIN_MAX): Defined a new macro. - * config/mips/mips.md (sminsi3): Defined a new instruction. - (smaxsi3): Defined a new instruction. - -2025-12-02 David Guillen Fandos - - * config/mips/mips-cpus.def (MIPS_CPU): Added a new CPU. - * config/mips/mips-tables.opt: Regenerated table. - * config/mips/mips.cc: Added cost table for the new CPU. - * config/mips/mips.h (TARGET_ALLEGREX): Defined a new macro. - (TUNE_ALLEGREX): Defined a new macro. - (ISA_HAS_CONDMOVE): Added Allegrex CPU to the list. - (ISA_HAS_LDC1_SDC1): Exclude Allegrex from the list. - (ISA_HAS_COND_TRAP): Exclude Allegrex from the list. - (ISA_HAS_COND_TRAPI): Exclude Allegrex from the list. - (ISA_HAS_CLZ_CLO): Added Allegrex CPU to the list. - (ISA_HAS_ROR): Added Allegrex CPU to the list. - (ISA_HAS_WSBH): Added Allegrex CPU to the list. - (ISA_HAS_SEB_SEH): Added Allegrex CPU to the list. - (ISA_HAS_EXT_INS): Added Allegrex CPU to the list. - (ISA_HAS_XFER_DELAY): Exclude Allegrex from the list. - (ISA_HAS_HILO_INTERLOCKS): Added Allegrex CPU to the list. - * config/mips/mips.md: Added Allegrex CPU as a new processor. - * doc/invoke.texi: Documented Allegrex as a new arch - -2025-12-02 Saurabh Jha - Radek Barton - - * config.gcc: Add new Makefile fragment and new object file. - * config/aarch64/aarch64-builtins.cc - (aarch64_ms_variadic_abi_init_builtins): Initialize builtin - variadic functions for aarch64-w64-mingw32. - * config/aarch64/aarch64-protos.h - (aarch64_ms_variadic_abi_init_builtins): Initialize builtin - variadic functions for aarch64-w64-mingw32. - * config/aarch64/aarch64.cc - (handle_aarch64_vector_pcs_attribute): Add support for - ARM_PCS_MS_VARIADIC. - (aarch64_ms_variadic_abi): Return descriptor to variadic - function call ABI for aarch64-w64-mingw32 target. - (aarch64_fntype_abi): Add support for variadic functions for - aarch64-w64-mingw32 target. - (aarch64_reg_save_mode): Add support for ARM_PCS_MS_VARIADIC. - (num_pcs_arg_regs): Add support for ARM_PCS_MS_VARIADIC. - (get_pcs_arg_reg): Add support for ARM_PCS_MS_VARIADIC. - (aarch64_arg_size): Returns size of argument. - (aarch64_ms_variadic_abi_layout_arg): aarch64-w64-mingw32 - specific support for variadic ABI. - (aarch64_layout_arg): Add support for ARM_PCS_MS_VARIADIC. - (aarch64_function_arg): Implement TARGET_FUNCTION_ARG. - (aarch64_function_arg_advance): Add support for - ARM_PCS_MS_VARIADIC. - (aarch64_function_arg_regno_p): Add support for - ARM_PCS_MS_VARIADIC. - (aarch64_init_builtins): Add support for TARGET_AARCH64_MS_ABI. - (aarch64_ms_variadic_abi_build_builtin_va_list): Setup va_list - for aarch64-w64-mingw32. - (aarch64_build_builtin_va_list): Add support for - TARGET_AARCH64_MS_ABI. - (aarch64_ms_variadic_abi_expand_builtin_va_start): Implement - TARGET_BUILD_BUILTIN_VA_START. - (aarch64_setup_incoming_varargs): Implement - TARGET_SETUP_INCOMING_VARARGS. - (aarch64_mangle_type): Implement TARGET_MANGLE_TYPE. - (aarch64_variadic_abi_strict_argument_naming): Implement - TARGET_STRICT_ARGUMENT_NAMING. - * config/aarch64/aarch64.h - (aarch64_frame): Add new field - unaligned_saved_varargs_size. - (enum arm_pcs): Add new enum option - ARM_PCS_MS_VARIADIC. - * config/aarch64/cygming.h - (SUBTARGET_ATTRIBUTE_TABLE): Add support for ms_abi. - * config/mingw/winnt.cc - (aarch64_handle_ms_abi_attribute): Handle ms_abi attribue. - * config/mingw/winnt.h - (aarch64_handle_ms_abi_attribute): Handle ms_abi attribute. - * config/aarch64/aarch64-abi-ms-protos.h: - (aarch64_arg_partial_bytes): Declare. - (aarch64_ms_variadic_abi_canonical_va_list_type): Declare. - (aarch64_ms_variadic_abi_enum_va_list): Declare. - (aarch64_ms_variadic_abi_fn_abi_va_list): Implement - TARGET_FN_ABI_VA_LIST. - * config/aarch64/aarch64-abi-ms.cc: - (aarch64_arg_partial_bytes): Implement TARGET_ARG_PARTIAL_BYTES. - (aarch64_ms_variadic_abi_canonical_va_list_type): Implement - TARGET_CANONICAL_VA_LIST_TYPE. - (aarch64_ms_variadic_abi_enum_va_list): Implement - TARGET_ENUM_VA_LIST_P. - (aarch64_ms_variadic_abi_fn_abi_va_list): Implement - TARGET_FN_ABI_VA_LIST. - * config/aarch64/t-aarch64-mingw: New Makefile fragment. - -2025-12-02 Saurabh Jha - Radek Barton - Martin Vejbora - - * config/aarch64/aarch64-abi-ms.h - (TARGET_LONG_DOUBLE_128): Set this to 0. - * config/aarch64/aarch64.cc - (aarch64_scalar_mode_supported_p): Make long double 64 bits. - (aarch64_c_mode_for_floating_type): Return true for TFmode. - * config/aarch64/aarch64.h - (TARGET_LONG_DOUBLE_128): Set this to 1. - -2025-12-02 Saurabh Jha - - * config/aarch64/aarch64-abi-ms.h - (ASM_COMMENT_START): Specify start of comment. - (ASM_OUTPUT_TYPE_DIRECTIVE): Moved from aarch64-coff.h. - (ASM_DECLARE_FUNCTION_SIZE): Specify end of function as comment. - * config/aarch64/aarch64-coff.h - (ASM_OUTPUT_TYPE_DIRECTIVE): Moved to aarch64-abi-ms.h. - (ASM_DECLARE_FUNCTION_SIZE): Moved to aarch64-abi-ms.h. - -2025-12-01 Peter Bergner - - PR target/122942 - * config/riscv/riscv-profiles.def (rva23s64): Add zifencei. - (rvb23s64): Likewise. - -2025-12-01 Jose E. Marchesi - - * doc/install.texi (Downloading the source): Mention Algol 68. - -2025-12-01 Christophe Lyon - - PR target/122858 - * config/arm/constraints.md (Ph): New constraint. - * config/arm/mve.md (mve_asrl_imm, mve_lsll_imm): Fix constraints - of operand 1 and handle 32 as special shift amount. - -2025-12-01 Robin Dapp - - PR target/122652 - * config/riscv/riscv-vsetvl.cc: Add nullptr check. - -2025-12-01 Paul-Antoine Arras - - PR fortran/120505 - * omp-low.cc (lower_omp_target): Set GOMP_MAP_IMPLICIT flag. - -2025-12-01 H.J. Lu - - PR target/122906 - * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the - TLS call after deleted instructions. - -2025-11-30 Tamar Christina - - PR tree-optimization/115120 - PR tree-optimization/119577 - PR tree-optimization/119860 - * tree-vect-loop-manip.cc (vect_can_advance_ivs_p): Check for nonlinear - mult induction and early break. - (vect_update_ivs_after_vectorizer): Support early break exits. - (vect_do_peeling): Support scalar IVs. - * tree-vect-loop.cc (vect_peel_nonlinear_iv_init): Support early break. - (vect_update_nonlinear_iv): use `unsigned_type_for` such that function - works for both vector and scalar types. - (vectorizable_induction, vectorizable_live_operation): Remove vector - early break IV code. - (vect_update_ivs_after_vectorizer_for_early_breaks): New. - (vect_transform_loop): Support new scalar IV for early break. - * tree-vect-slp.cc (vect_analyze_slp): Remove SLP build for early break - IVs. - * tree-vect-stmts.cc (vect_stmt_relevant_p): No longer mark early break - IVs as completely unused rather than used_only_live. They no longer - contribute to the vector loop and so should not be analyzed. - (can_vectorize_live_stmts): Remove vector early vreak IV code. - * tree-vectorizer.h (LOOP_VINFO_EARLY_BRK_NITERS_VAR): New. - (class loop_vec_info): Add early_break_niters_var. - -2025-11-30 Jose E. Marchesi - - * Makefile.in (OPT_URLS_HTML_DEPS): Add ga68/Option-Index.html. - -2025-11-30 Jose E. Marchesi - - * doc/install.texi (Configuration): Mention algol68 option for - --enable-languages. - (Algol 68-Specific Options): New section. - * doc/sourcebuild.texi (Top Level): Add entry for libga68. - -2025-11-30 Jose E. Marchesi - - * config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue): - Handle "GNU Algol 68" in language_string. - -2025-11-30 Jose E. Marchesi - - * config/darwin.h: Adapt specs for libga68.a. - -2025-11-30 Jose E. Marchesi - - * dwarf2out.cc: Set DW_LANG_Algol68 an DW_LNAME_Algol68. - -2025-11-30 Jose E. Marchesi - - * common.opt: New option -static-libga68. - * common.opt.urls: Generate. - * gcc.cc: Handle OPT_static_libga68. - * regenerate-opt-urls.py (PER_LANGUAGE_OPTION_INDEXES): Add Algol68. - -2025-11-30 Jose E. Marchesi - - * Makefile.def (libga68): New module. - (configure-target-libga68): Likewise. - * Makefile.tpl (GA68): Define. - (GA68_FOR_BUILD): Likewise. - (GA68FLAGS): Likewise. - * configure.ac (--enable-libga68): New option. - (--enable-algol68-gc): Likewise. - (GA68): Subst. - (GA68FLAGS): Likewise. - Invoke ACX_PROG_GA68. - * configure: Regenerate. - * Makefile.in: Likewise. - -2025-11-29 Sandra Loosemore - - * common.opt.urls: Regenerated. - * config/aarch64/aarch64.opt.urls: Regenerated. - * config/alpha/alpha.opt.urls: Regenerated. - * config/arm/arm.opt.urls: Regenerated. - * config/avr/avr.opt.urls: Regenerated. - * config/bpf/bpf.opt.urls: Regenerated. - * config/c6x/c6x.opt.urls: Regenerated. - * config/cris/cris.opt.urls: Regenerated. - * config/cris/elf.opt.urls: Regenerated. - * config/csky/csky.opt.urls: Regenerated. - * config/darwin.opt.urls: Regenerated. - * config/epiphany/epiphany.opt.urls: Regenerated. - * config/frv/frv.opt.urls: Regenerated. - * config/ft32/ft32.opt.urls: Regenerated. - * config/gcn/gcn.opt.urls: Regenerated. - * config/i386/i386.opt.urls: Regenerated. - * config/ia64/ia64.opt.urls: Regenerated. - * config/loongarch/loongarch.opt.urls: Regenerated. - * config/m68k/m68k.opt.urls: Regenerated. - * config/microblaze/microblaze.opt.urls: Regenerated. - * config/mips/mips.opt.urls: Regenerated. - * config/mmix/mmix.opt.urls: Regenerated. - * config/or1k/or1k.opt.urls: Regenerated. - * config/pa/pa.opt.urls: Regenerated. - * config/pdp11/pdp11.opt.urls: Regenerated. - * config/rs6000/rs6000.opt.urls: Regenerated. - * config/s390/s390.opt.urls: Regenerated. - * config/sparc/sparc.opt.urls: Regenerated. - * config/v850/v850.opt.urls: Regenerated. - * config/vax/vax.opt.urls: Regenerated. - * config/visium/visium.opt.urls: Regenerated. - -2025-11-29 Sandra Loosemore - - * doc/invoke.texi (Options Summary): Switch ordering of FRV - and FT32. - (Submodel Options): Likewise in the menu and section ordering. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi: Document -mno-android. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/frv/frv.opt (mbranch-cost=): Mark as Undocumented. - (mcond-exec-insns=): Likewise. - (mcond-exec-tempss=): Likewise. - * doc/invoke.texi (Option Summary) : Remove duplicate - positive/negative forms from the list. - (FRV Options): Combine documentation of positive/negative forms - where they were listed separately. Add @opindex entries for - negative forms. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/ft32/ft32.opt (mlra): Mark obsolete option as Undocumented. - * doc/invoke.texi (Option Summary) : Remove -mlra. - (FT32 Options): Likewise. Add @opindex entries for negative - option forms. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (FR30 Options): Add @opindex for -mno-small-model. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Fix formatting - issues. Remove redundant entry for -mno-co-re. - (eBPF Options): Add missing @opindex entries. Combine documentation - for -mco-re and -mno-co-re. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/alpha/alpha.opt (mgas): Mark as Undocumented. - * doc/invoke.texi (Option Summary) : Add - -mtls-kernel, -mtls-size=, -mlong-double-128, and -mlong-double-64. - (DEC Alpha Options): Likewise. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/darwin.opt (findirect-virtual-calls): Mark as Undocumented. - (fterminated-vtables): Likewise. - (multi_module): Likewise. - (multiply_defined): Likewise. - (multiply_defined_unused): Likewise. - (no_dead_strip_inits_and_terms): Likewise. - (noprefixbinding): Likewise. - (nomultidefs): Likewise. - (noprebind): Likewise. - (noseglinkedit): Likewise. - (ObjC, ObjC++): Add documentation strings. - (object): Mark as Undocumented. - (prebind): Likewise. - (prebind_all_twolevel_modules): Likewise. - (private_bundle): Likewise. - (sectobjectsymbols): Likewise. - (sectorder): Likewise. - (seg_addr_table_filename): Likewise. - (segcreate): Likewise. - (seglinkedit): Likewise. - (single_module): Likewise. - (X): Likewise. - (y): Likewise. - (Mach): Likewise. - * doc/invoke.texi (Option Summary) : Improve - alphabetization of the list. Remove obsolete/undocumented - options and add missing entries. - (Darwin Options): Add documentation for -arch, -dependency-file, - -fapple-kext, -matt-stubs, -fconstant-cfstrings, -mdynamic-no-pic, - -asm_macosx_version_min, -msymbol-stubs, -mtarget-linker, - -ObjC, -ObjC++, -Wnonportable-cfstrings. Update the list - of options passed to the linker to remove obsolete options - and add missing ones; also move the block of @opindex entries - before the list items instead of putting it in the middle. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : - Correct spelling of -mthreads and add missing options. - (Cygwin and MinGW Options): Add @opindex for negative forms. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Remove - entries for "Undocumented" options -EB, -EL, -mhard-float, - -msoft-float, and nonexistent option -mcse-cc. - (C-SKY Options): Likewise. Also remove references to "Undocumented" - option -mstm and uniformly index/document the -mno- forms for - consistency with other options in this section that already do so. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/cris/cris.opt (m32-bit, m16-bit, m8-bit): Remove - Undocumented property. - (m32bit, m8bit): Add Undocumented property. - * doc/invoke.texi (Option Summary) : Remove - obsolete -melf and -maout options from table, plus redundant - -mno-mul-bug-workaround. - (CRIS Options): Add @opindex for -mno- forms that didn't already - have one. Remove obsolete -melf documentation. Document - -mbest-lib-options, -moverride-best-lib-options, - -mtrap-using-break8, -mtrap-unaligned-atomic, and - -munaligned-atomic-may-use-library. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : Add -mdbst - and -mlong-calls. - (C6X Options): Likewise. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary) : - Remove redundant -mno- entries. - (Blackfin Options): Combine explicit -mno-* documentation - with that for the corresponding positive form of the option. - Add @opindex entries for the negative forms of options that - didn't already have one. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/arm/arm.opt (mapcs-reentrant): Mark as "Undocumented", - updatehelp string for internal documentation. - (mapcs-stack-check): Likewise update help string. - (mprint-tune-info, mneon-for-64bits): Mark as "Undocumented". - * doc/invoke.texi (Option Summary) : Remove duplicate - entries for negative forms and entries for options that are - explicitly "Undocumented". Add missing entry for - -mpic-data-is-text-relative. Fix some formatting issues. - (ARM Options): Remove documentation for -mapcs-stack-check, - -mapcs-reentrant, -mflip-thumb, -mneon-for-64-bits, - -mprint-tune-info, and -mverbose-cost-dump. Add index entries - for -mno- option forms. Minor editing for clarity. - -2025-11-29 Sandra Loosemore - - PR other/122243 - PR target/122288 - * config/gcn/gcn.opt (m32, m64, mgomp): Mark "Undocumented" - since these options don't actually do anything useful. - (flag_bypass_init_error, stack_size_opt, gang_size_opt): Correct - opt file syntax. - (mstack-size=): Mark "Undocumented" since it's obsolete. - * doc/invoke.texi (Option Summary) : - Remove obsolete options, add missing entries for - -mgang-private-size=, -msram-ecc=, and -mxnack=. - (AMD GCN Options): Likewise. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/epiphany/epiphany.opt (mlong-calls): Make it do something - useful. - (may-round-for-trunc): Make this undocumented option with a weird - name an alias for -mmay-round-for-trunc. - (mfp-iarith): Fix doc string. - * doc/invoke.texi (Option Summary) : - Add missing options. - (Adapteva Epiphany Options): Document negative forms also when - that is not the default, or where it's unclear. Document - -may-round-for-trunc and -mfp-iarith. Fix spelling of - -mpost-inc and -mpost-modify. - -2025-11-29 Sandra Loosemore - - PR other/122243 - * config/aarch64/aarch64.opt (Wexperimental-fmv-target): Mark - as "Undocumented". - * doc/invoke.texi (Option Summary) : Don't - list "Undocumented" aarch64 options -mverbose-cost-dump or - -Wexperimental-fmv-target, or both positive and negative forms - of other options. Add missing options. Fix whitespace problems. - (AArch64 Options): Light copy-editing. Add missing @opindex - entries to match the documented options. Undocument - -mverbose-cost-dump and -Wexperimental-fmv-target. - -2025-11-28 Jakub Jelinek - - * config/rs6000/rs6000.cc (complex_multiply_builtin_code): - Avoid arithmetics between enumerators from different enum types. - (complex_divide_builtin_code): Likewise. - -2025-11-28 Jakub Jelinek - - * config/loongarch/loongarch.cc (loongarch_unspec_address_offset): - Avoid arithmetics between enumerators from different enum types. - (loongarch_call_tls_get_addr): Likewise. - -2025-11-28 Jakub Jelinek - - * config/mips/mips.cc (mips_unspec_address_offset): Avoid - arithmetics between enumerators from different enum types. - -2025-11-28 Jakub Jelinek - - * config/riscv/riscv-v.cc (expand_const_vector_onestep): Avoid - bitwise ops between enumerators from different enum types. - (emit_vec_cvt_x_f): Likewise. - (emit_vec_cvt_x_f_rtz): Likewise. - * config/riscv/riscv.cc (riscv_unspec_address_offset): Avoid - arithmetics between enumerators from different enum types. - -2025-11-28 Sam James - - * crc-verification.cc (crc_symbolic_execution::is_used_outside_the_loop): - Fix 'assignment' typo. - -2025-11-28 Andrew MacLeod - - PR tree-optimization/122686 - * range-op.cc (operator_bitwise_and::op1_range): Check for - undefined bitmask. - * value-range.cc (prange::intersect): Handle undefined bitmask - intersection. - (irange::get_bitmask): Ditto. - (irange::intersect_bitmask): Ditto. - * value-range.h (irange_bitmask::intersect): Return false if the - result is UNDEFINED. - -2025-11-28 Tobias Burnus - - * config.gcc (amdgcn-*-*): Use gfx90a for 'with_arch'. - For TM_MULTILIB_CONFIG, replace specific archs by - gfx{9,9-4,10-3,11}-generic, keep gfx90{8,a}. - * config/gcn/gcn.opt (march=, mtune=): Use gfx90a. - * doc/install.texi (amdgcn): Update accordingly. - -2025-11-28 Stefan Schulze Frielinghaus - - * config/s390/s390-builtins.h - (S390_OVERLOADED_BUILTIN_VAR_OFFSET,S390_ALL_BUILTIN_MAX): Fix - enum arithmetic. - * config/s390/s390.cc (OB_DEF): Ditto. - -2025-11-28 Richard Biener - - PR tree-optimization/122844 - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Only - try stripping sign conversions around ops where this is valid. - -2025-11-28 Jim Lin - - * config/riscv/riscv.cc (riscv_output_move): Use \n\t instead - of semicolon to separate instructions in fmv.x.h emulation. - -2025-11-28 Charlie Jenkins - - * config.gcc: Add cpu to supported configure options - * config/riscv/riscv.h (riscv_arch_help): Use --with-cpu during - compilation - * doc/install.texi: Mention in docs that --with-cpu is supported - -2025-11-28 Mark Zhuang - - * config/riscv/riscv-cores.def (RISCV_CORE): Add xsmtvdot to - spacemit-x60 - * config/riscv/riscv-ext.def: Add xsmtvdot - * config/riscv/riscv-ext.opt: Ditto - * config/riscv/t-riscv: Ditto - * doc/riscv-ext.texi: Ditto - * config/riscv/riscv-ext-spacemit.def: Define xsmtvdot - -2025-11-28 Mark Zhuang - - * config/riscv/riscv-ext.opt: Generated file. - -2025-11-28 Kuan-Lin Chen - - * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-45-sereis. - (RISCV_CORE): Add Andes 45 series cpu list. - * config/riscv/riscv-opts.h - (enum riscv_microarchitecture_type): Add andes_45_series. - * config/riscv/riscv.cc: Add andes_45_tune_info. - * config/riscv/riscv.md: Add andes_45. - * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. - * doc/riscv-mtune.texi: Regenerated for andes-45-series. - * config/riscv/andes-45-series.md: New file. - -2025-11-28 Kuan-Lin Chen - - * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-23-series. - (RISCV_CORE): Add Andes 23-series cpu list. - * config/riscv/riscv-opts.h - (enum riscv_microarchitecture_type): Add andes_23_series. - * config/riscv/riscv.cc: Add andes_23_tune_info. - * config/riscv/riscv.md: Add andes_23. - * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. - * doc/riscv-mtune.texi: Regenerated for andes-23-series. - * config/riscv/andes-23-series.md: New file. - -2025-11-28 Jakub Jelinek - - PR tree-optimization/122733 - * gimple-match-head.cc (gimple_match_range_of_expr): Return false - even when range_of_expr returns true, but the range is undefined_p. - * match.pd ((mult (plus:s@5 (mult:s@4 @0 @1) @2) @3)): Remove - vr0.undefined_p () check. - ((plus (mult:s@5 (plus:s@4 @0 @1) @2) @3)): Likewise. - ((X + M*N) / N -> X / N + M): Remove vr4.undefined_p () check. - ((X - M*N) / N -> X / N - M): Likewise. - ((y << x) == x, (y << x) != x): Use convert2? instead of - nop_convert2? and test INTEGRAL_TYPE_P on TREE_TYPE (@0) rather than - TREE_TYPE (@1). - ((y << x) {<,<=,>,>=} x): New simplification. - (((T)(A)) + CST -> (T)(A + CST)): Remove vr.undefined_p () check. - (x_5 == cstN ? cst4 : cst3): Remove r.undefined_p () check. - -2025-11-28 Tamar Christina - - PR middle-end/122890 - * optabs.cc (emit_cmp_and_jump_insns): Check for SSA Name. - -2025-11-27 Matthieu Longo - - * config/aarch64/aarch64-c.cc (aarch64_define_unconditional_macros): Define - __ARM_BUILDATTR64_FV when BA support is detected in GAS. - -2025-11-27 Wilco Dijkstra - - * config/aarch64/aarch64.md (ctz2): Use compact syntax. - -2025-11-27 Wilco Dijkstra - - * config/aarch64/aarch64.md (ffs2): Use gen_ctz. - (ctz2): Model ctz as a single target instruction. - -2025-11-27 Wilco Dijkstra - - * config/aarch64/atomics.md (*dmb): Expand release fence into dmb ishld - and dmb ishst. - -2025-11-27 Andrew Pinski - - * tree-ssa-reassoc.cc (rewrite_expr_tree): Swap - oe1 and oe2 if commutative code and not in - canonical order. - -2025-11-27 Georg-Johann Lay - - * config/avr/avr-mcus.def (AVR_MCUS): Add avr16la14, avr16la20, - avr16la28, avr16la32, avr32la14, avr32la20, avr32la28, avr32la32. - * doc/avr-mmcu.texi: Rebuild. - -2025-11-27 Robin Dapp - - PR tree-optimization/122855 - PR tree-optimization/122850 - * tree-ssa-forwprop.cc (simplify_vector_constructor): Nop - convert input if necessary. - -2025-11-27 Andrew Stubbs - - * config/gcn/gcn.cc (gcn_init_cumulative_args): Emit a warning if the - -mxnack setting looks wrong. - * config/gcn/mkoffload.cc: Include tree.h and omp-general.h. - (process_asm): Add omp_requires parameter. - Emit HSA_XNACK code into mkoffload_setup, as required. - (main): Modify HSACO_ATTR_OFF to preserve user-set -mxnack. - Pass omp_requires to process_asm. - -2025-11-27 Jakub Jelinek - - PR target/122714 - * gimple-lower-bitint.cc (bitint_large_huge::limb_access): Adjust - MEM_REFs offset for bitint_big_endian if ltype doesn't have the - same byte size as m_limb_type. - -2025-11-27 Richard Biener - - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Fix - recording of the mask type again. Adjust placing of - mask arguments for non-masked calls. - -2025-11-27 Dhruv Chawla - - PR tree-optimization/122733 - * match.pd ((y << x) {<,<=,>,>=} x): Remove. - ((y << x) {==,!=} x): Call constant_boolean_node instead of - build_one_cst/build_zero_cst and combine into one pattern. - -2025-11-27 Jakub Jelinek - - * fold-const.h (expr_not_equal_to): Add gimple * argument defaulted - to NULL. - * fold-const.cc (expr_not_equal_to): Likewise, pass it through to - range_of_expr. - * generic-match-head.cc (gimple_match_ctx): New static inline. - * match.pd (X % -Y -> X % Y): Capture NEGATE and pass - gimple_match_ctx (@2) as new 3rd argument to expr_not_equal_to. - ((A * C) +- (B * C) -> (A+-B) * C): Pass gimple_match_ctx (@3) - as new 3rd argument to expr_not_equal_to. - (a rrotate (bitsize-b) -> a lrotate b): Likewise. - -2025-11-27 Jakub Jelinek - - PR tree-optimization/119683 - * gimple-match.h (gimple_match_ctx): Move to ... - * gimple-match-head.cc (gimple_match_ctx): ... here. Make static. - (gimple_match_range_of_expr): New static inline. - * match.pd ((mult (plus:s (mult:s @0 @1) @2) @3)): Use - gimple_match_range_of_expr. - ((plus (mult:s (plus:s @0 @1) @2) @3)): Likewise. - ((t * u) / u -> t): Likewise. - ((t * u) / v -> t * (u / v)): Likewise. - ((X + M*N) / N -> X / N + M): Likewise. - ((X - M*N) / N -> X / N - M): Likewise. - ((X + C) / N -> X / N + C / N): Likewise. - (((T)(A)) + CST -> (T)(A + CST)): Likewise - (x_5 == cstN ? cst4 : cst3): Likewise. Do r.set_varying - even when gimple_match_range_of_expr failed. - -2025-11-27 Christophe Lyon - - * config/arm/arm-builtins.cc (arm_init_mve_builtins): Remove - volatile qualifier. - -2025-11-27 Richard Biener - - PR tree-optimization/122885 - * tree-vect-loop.cc (vect_find_reusable_accumulator): Reject - mask vectors which do not use integer vector modes. - (vect_create_partial_epilog): Assert the same. - -2025-11-27 liuhongt - - * config/i386/i386-options.cc (set_ix86_tune_features): Set - gather/scatter tune if OPTION_SET_P. - * config/i386/i386.opt: Refactor mgather/mscatter. - -2025-11-27 Lulu Cheng - - * doc/extend.texi: Remove the incorrect prompt message. - -2025-11-27 Sandra Loosemore - - * doc/invoke.texi (Option Summary) : - Add --compile-std-module. - -2025-11-26 Jeff Law - - Revert: - 2025-10-14 Zhongyao Chen - - * 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 - - * doc/extend.texi (Syntax Extensions): Document _Maxof & _Minof. - -2025-11-26 Tamar Christina - - * optabs.cc (emit_cmp_and_jump_insns): Check for non-single use. - -2025-11-26 Jeff Law - - 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 - - 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. - (*thumb2_cbnz): Likewise. - -2025-11-26 Richard Biener - - 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 - - PR tree-optimization/122861 - * optabs.cc (emit_cmp_and_jump_insns): Check argument instead of result. - -2025-11-26 Jakub Jelinek - - * 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 - - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Handle - AVX512 masking for loop masked SIMD clone call. - -2025-11-26 Jakub Jelinek - - 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 - - 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 - - * 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 - - * 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 - - * json.h (class object): Add get_map () method. - (is_a_helper, is_a_helper): - New template specializations. - -2025-11-26 Soumya AR - - * 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 - - * 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 - - PR middle-end/116815 - * config/aarch64/aarch64.md - (*aarch64_plus_within_3_): New pattern. - (*aarch64_minus_within_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 - - * match.pd: Add pattern for SAT_MUL form 7 include - mul and widen_mul. - -2025-11-26 Andrew Pinski - - * 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 - - 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 - - * configure.ac (gcc_cv_header_zstd_h): Save, restore CXXFLAGS, - LDFLAGS. - * configure: Regenerate. - -2025-11-25 Tamar Christina - - PR target/118974 - * config/aarch64/aarch64-simd.md (xor3): Rename ... - (@xor3): .. to this. - (cbranch4): Update comments. - (): New. - * config/aarch64/aarch64-sve.md (cbranch4): Update comment. - (): New. - (aarch64_ptest): Rename to ... - (@aarch64_ptest): .. this. - * config/aarch64/iterators.md (UNSPEC_CMP_ALL, UNSPEC_CMP_ANY, - UNSPEC_COND_CMP_ALL, UNSPEC_COND_CMP_ANY): New. - (optabs): Add them. - (CBRANCH_CMP, COND_CBRANCH_CMP, cbranch_op): New. - * config/aarch64/predicates.md (aarch64_cbranch_compare_operation): New. - -2025-11-25 Tamar Christina - - PR target/118974 - * tree-vect-stmts.cc (supports_vector_compare_and_branch): New. - (vectorizable_early_exit): Use it. - -2025-11-25 Tamar Christina - - PR target/118974 - * optabs.def (vec_cbranch_any_optab, vec_cbranch_all_optab, - cond_vec_cbranch_any_optab, cond_vec_cbranch_all_optab, - cond_len_vec_cbranch_any_optab, cond_len_vec_cbranch_all_optab): New. - * doc/md.texi: Document them. - * optabs.cc (prepare_cmp_insn): Refactor to take optab to check for - instead of hardcoded cbranch and support mask and len. - (emit_cmp_and_jump_insn_1, emit_cmp_and_jump_insns): Implement them. - (emit_conditional_move, emit_conditional_add, gen_cond_trap): Update - after changing function signatures to support new optabs. - -2025-11-25 Jason Merrill - - * doc/invoke.texi: Document --compile-std-module. - * gcc.cc (struct infile): Add artificial field. - (add_infile): Set it. - (driver::prepare_infiles): Check it. - -2025-11-25 Jason Merrill - - * doc/invoke.texi (C++ Modules): Remove TU-local caveat. - -2025-11-25 Jakub Jelinek - - PR middle-end/120052 - * gimplify.cc (gimplify_call_expr): For IFN_UBSAN_BOUNDS - call with integer_onep first argument, change that argument - to 0 and add TYPE_MAX_VALUE (TYPE_DOMAIN (arr_type)) to - 3rd argument before gimplification. - -2025-11-25 Jakub Jelinek - - PR middle-end/120564 - * omp-expand.cc (extract_omp_for_update_vars): Use build2 instead of - fold_build2 to build argument for gimple_build_cond_empty. - -2025-11-25 Jakub Jelinek - - * alias.cc (get_alias_set): Fix comment typo, TYPE_CANOINCAL - -> TYPE_CANONICAL. - -2025-11-25 Jakub Jelinek - - PR middle-end/122624 - * tree.cc (build_bitint_type): Use type_hash_canon_hash. - -2025-11-25 Rainer Orth - - * doc/sourcebuild.texi (Add Options): Document - check_function_bodies. - -2025-11-24 Alexandre Oliva - - PR rtl-optimization/122767 - * ira-color.cc (allocno_hard_regs_compare): Break ties - using... - * hard-reg-set.h (hard_reg_set_first_diff): ... this. New - HARD_REG_SET API entry point. - -2025-11-24 Robin Dapp - - * tree-vect-slp.cc (vect_bb_vectorization_profitable_p): - Multiply scalar cost by vect-scalar-cost-multiplier. - -2025-11-24 Robin Dapp - - * config/riscv/autovec.md (select_vl): Rename to... - (select_vl): ...this. - * doc/md.texi: Document new behavior. - * internal-fn.cc (select_vl_direct): Make - (expand_select_vl_optab_fn): Adjust for convert optab. - (direct_select_vl_optab_supported_p): Ditto. - * internal-fn.def (SELECT_VL): Ditto. - * optabs.def (OPTAB_CD): Add select_vl. - (OPTAB_D): Remove select_vl. - * tree-vect-loop-manip.cc (vect_set_loop_controls_directly): - Adjust for convert select_vl optab. - * tree-vect-loop.cc: Ditto. - -2025-11-24 Robin Dapp - - * config/riscv/autovec.md: Use V_VLS_ZVFH for vec_set. - * config/riscv/riscv-modes.def (RVV_NF4_MODES): Add BF mdoes. - (ADJUST_PRECISION): Ditto. - (VECTOR_MODE_WITH_PREFIX): Ditto. - (VLS_MODES): Ditto. - * config/riscv/riscv-v.cc (can_be_broadcast_p): Add BF handling. - * config/riscv/riscv-vector-switch.def (VLS_ENTRY): Add BF - modes. - * config/riscv/riscv.md: Ditto. - * config/riscv/vector-iterators.md: Document modes. - * config/riscv/vector.md: Add BF modes. - -2025-11-24 Robin Dapp - - PR tree-optimization/122797 - * tree-vect-slp.cc (vect_load_perm_consecutive_p): Check - permutation start at element 0 with value instead of starting - at a given element. - (vect_optimize_slp_pass::remove_redundant_permutations): - Use start value of 0. - * tree-vectorizer.h (vect_load_perm_consecutive_p): Set default - value to to UINT_MAX. - -2025-11-24 Robin Dapp - - * tree-ssa-forwprop.cc (simplify_vector_constructor): - Allow nop conversions. - -2025-11-24 John David Anglin - - * config/pa/pa.h (REGS_OK_FOR_BASE_INDEX): New define. - * config/pa/pa.md: Update peephole2 patterns for scaled/unscaled - indexed loads and stores. - -2025-11-24 Richard Biener - - PR tree-optimization/122826 - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Only - use single-lane SLP for SIMD_CLONE_ARG_TYPE_UNIFORM - and SIMD_CLONE_ARG_TYPE_LINEAR_[REF_]CONSTANT_STEP. - -2025-11-24 Andrew Pinski - Richard Biener - - PR tree-optimization/116835 - * tree-ssa-phiprop.cc (propagate_with_phi): Admend the - post-dom check to deal with ssa cycles. - -2025-11-24 Andrew Pinski - - PR tree-optimization/60183 - * tree-ssa-phiprop.cc (propagate_with_phi): Delay the decision - of always rejecting proping into the loop until all are done. - if there was some delay stmts and a phi was created fill them in. - -2025-11-24 Andrew Pinski - - PR tree-optimization/60183 - * tree-ssa-phiprop.cc (propagate_with_phi): Allow - known non-trapping loads to happen back into the - loop. - -2025-11-24 Andrew Pinski - - * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow - for mismatched clobbers. - -2025-11-24 Andrew Pinski - - PR tree-optimization/122633 - * tree-ssa-forwprop.cc (do_simple_agr_dse): Remove - lhs of dead store for a call (or the whole call stmt). - -2025-11-24 Andrew Pinski - - * match.pd (`(ptr_diff (ptr_plus @0 @2) (ptr_plus @1 @2))`): Move pattern - earlier to the other `(ptr_diff (ptr_plus) (ptr_plus))` pattern. - -2025-11-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Move - all SIMD clone validity checks to SIMD clone selection. - Remove late constant/external def vector type setting and - verification. - -2025-11-24 Jeff Law - - PR rtl-optimization/122782 - * ext-dce.cc (ext_dct_process_uses): Guard against undefined shifts - by properly checking modes on the input object. - -2025-11-24 Yury Khrustalev - - PR debug/121964 - * dwarf2out.cc (gen_array_type_die): Add DW_AT_bit_stride attribute - for array types based on element type bit precision for integer and - boolean element types. - -2025-11-24 Yury Khrustalev - - * machmode.def (VECTOR_BOOL_MODE): Fix comment. - -2025-11-24 Eric Botcazou - - PR ada/33994 - * fold-const.h (int_const_convert): New prototype. - * fold-const.cc (fold_convert_const_int_from_int): Rename to... - (int_const_convert): ...this, remove static keyword and add third - parameter OVERFLOWABLE. - (fold_convert_const): Call int_const_convert if ARG1 is an integer - constant. - -2025-11-24 Francois-Xavier Coudert - - * config.gcc (aarch64-*-mingw*): Set native_system_header_dir. - -2025-11-23 John David Anglin - - * config/pa/pa64-linux.h (GLIBC_DYNAMIC_LINKER): Define. - -2025-11-23 John David Anglin - - PR target/113932 - PR target/113933 - * config/pa/pa.opt (mlra): Default to LRA instead of reload. - -2025-11-23 John David Anglin - - * config/pa/pa.cc (pa_print_operand): Use REG_POINTER - flag to select base and index registers on targets with - non-equivalent space registers. - (pa_legitimate_address_p): Don't allow scaled and unscaled - indexed addresses until reload is complete. Allow any - register order in unscaled addresses as long as the - REG_POINTER flag is correctly set/unset in the base/index - registers. - * config/pa/predicates.md (mem_operand): Remove code to - delay creating move insns with unscaled indexed addresses - until CSE is not expected. - (move_src_operand): Likewise. - -2025-11-23 Andrew Pinski - - * match.pd (1/x): Use fold_before_rtl_expansion_p. - (`(m1 CMP m2) * d`): Likewise. - -2025-11-23 Pan Li - - * match.pd: Remove unnecessary outer convert and add - c for the outer bit_ior. - -2025-11-23 Pan Li - - * match.pd: Add simplfy to fold outer convert of bit_op - to inner captures. - -2025-11-23 Kugan Vivekanandarajah - - * ipa-split.cc (pass_split_functions::gate): Do not run when - flag_auto_profile. - (pass_feedback_split_functions::gate): Run when flag_auto_profile. - -2025-11-23 Kugan Vivekanandarajah - - * tree-ssa-loop-im.cc (is_self_write): New. - (ref_indep_loop_p): Allow hoisting when aliasing references - form a self write pattern. - -2025-11-22 Jeff Law - - PR rtl-optimization/122701 - * ext-dce.cc (ext_dce_try_optimize_rshift): Emit a fresh reg->reg - copy rather than modifying the existing right shift. - -2025-11-22 Sandra Loosemore - - * omp-general.cc (omp_context_selector_matches): Add an optional - bool argument for the code elision case. - * omp-general.h (omp_context_selector_matches): Likewise. - -2025-11-22 Sandra Loosemore - - * omp-general.cc (omp_mangle_variant_name): New. - (omp_check_for_duplicate_variant): New. - (omp_copy_trait_set): New. - (omp_trait_selectors_equivalent): New. - (omp_combine_trait_sets): New. - (omp_merge_context_selectors): New. - * omp-general.h (omp_mangle_variant_name): Declare. - (omp_check_for_duplicate_variant): Declare. - (omp_merge_context_selectors): Declare. - -2025-11-22 zhaozhou - - * config/loongarch/loongarch.cc: Extract plus operation. - -2025-11-22 Deng Jianbo - - * config/loongarch/loongarch.md - (*bstrins_w_for_ior_ashift_and_extend): New template. - (*bstrins_d_for_ior_ashift_and): New template. - * config/loongarch/predicates.md (const_uimm63_operand): New - predicate. - -2025-11-22 zhaozhou - - * config/loongarch/lsx.md (lsx_vshuf4i_mem_w_0): Add template. - (lsx_vldrepl_merge_w_0): Ditto. - -2025-11-22 Kees Cook - - * config/aarch64/aarch64-protos.h (aarch64_indirect_branch_asm): - Declare. - * config/aarch64/aarch64.cc (aarch64_indirect_branch_asm): New - function to generate indirect branch with SLS barrier. - * config/aarch64/aarch64.md (*sibcall_insn): Use - aarch64_indirect_branch_asm. - (*sibcall_value_insn): Likewise. - -2025-11-21 Vladimir N. Makarov - - PR target/118358 - * lra-constraints.cc (curr_insn_transform): Move insn reloading - constant into a register right before insn using it. - -2025-11-21 Richard Biener - - PR tree-optimization/122762 - PR tree-optimization/122736 - PR tree-optimization/122790 - * cgraph.h (cgraph_simd_clone_arg::linear_step): Document - use for SIMD_CLONE_ARG_TYPE_MASK. - * omp-simd-clone.cc (simd_clone_adjust_argument_types): - Record the number of mask arguments in linear_step if - mask_mode is not VOIDmode. - * tree-vect-stmts.cc (vectorizable_simd_clone_call): - Remove num_mask_args computation, use a proper ncopies - to query/register loop masks, use linear_step for the - number of mask arguments when determining the number of - mask elements in a mask argument. - -2025-11-21 Richard Biener - - PR tree-optimization/122778 - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Honor - a loop mask when passing the conditional mask with AVX512 - style masking. - -2025-11-21 Jakub Jelinek - - PR target/122598 - * config/i386/predicates.md (const_vec_dup_operand): Remove. - * config/i386/sse.md (cond< with VI1_AVX512VL iterator): - Remove. - -2025-11-21 Eric Botcazou - - * doc/invoke.texi (Optimize Options) <-fmalloc-dce>: Remove - trailing space. - (AArch64 Options) <-march>: Fix pasto. - -2025-11-21 Jakub Jelinek - - PR middle-end/122773 - * gimplify.cc (collect_fallthrough_labels): Check whether - gimple_goto_dest is a LABEL_DECL before testing VACUOUS_INIT_LABEL_P. - (expand_FALLTHROUGH_r): Likewise. - -2025-11-21 Loeka Rogge - Keith Packard - - PR target/120375 - * config/arc/arc.md (*si3_nobs): merged with si3_loop. - (si3_loop): splits to relevant pattern or emits loop assembly. - (si3_cnt1_clobber): Removes clobber for shift or rotate by - const1. - -2025-11-21 Claudiu Zissulescu - Michiel Derhaeg - - * config/arc/arc.md: Modify define_insn_and_split "*extvsi_n_0" - -2025-11-21 Josef Melcr - - * attr-callback.cc (callback_edge_callee_has_attr): New - function. - * attr-callback.h (callback_edge_callee_has_attr): New function - decl. - * ipa-prop.cc (ipa_compute_jump_functions_for_bb): Don't skip - callback carriers when calculating jump functions. - -2025-11-21 Josef Melcr - - PR ipa/122768 - * attr-callback.cc (callback_edge_useful_p): Rewrite the - heuristic, now consider clones as well as icf bodies. - -2025-11-21 Deng Jianbo - - * config/loongarch/constraints.md: Update constraint YI to support - more numbers. - * config/loongarch/loongarch-protos.h - (loongarch_const_vector_vrepli): Rename. - (loongarch_const_vector_vldi): Ditto. - * config/loongarch/loongarch.cc (VLDI_NEG_MASK): New macro. - (loongarch_parse_vldi_const): New function to check if numbers can - be generated by {x}vldi instruction. - (loongarch_const_vector_vrepli): Rename. - (loongarch_const_vector_vldi): Use above function. - (loongarch_const_insns): Call renamed function. - (loongarch_split_vector_move_p): Ditto. - (loongarch_output_move): Ditto. - -2025-11-21 zhaozhou - - * config/loongarch/lsx.md: Fix predicate. - -2025-11-20 Andrew MacLeod - - PR tree-optimization/121345 - * gimple-range-phi.cc (phi_group::calculate_using_modifier): Restore - performance loss by being more selective when iterating. - -2025-11-20 Kito Cheng - - * config/riscv/riscv-opt-popretz.cc: New file. - * config/riscv/riscv-passes.def: Insert pass_combine_popretz before - pass_shorten_branches. - * config/riscv/riscv-protos.h (make_pass_combine_popretz): New - declaration. - * config/riscv/t-riscv: Add riscv-opt-popretz.o build rule. - * config.gcc (riscv*): Add riscv-opt-popretz.o to extra_objs. - -2025-11-20 Pan Li - - PR target/122692 - * config/riscv/riscv.cc (riscv_expand_ustrunc): Leverage - riscv_extend_to_xmode_reg to take care of src rtx. - -2025-11-20 Tamar Christina - - * target.def (instruction_selection): New. - * doc/tm.texi.in: Document it. - * doc/tm.texi: Regenerate - * gimple-isel.cc (pass_gimple_isel::execute): Use it. - * targhooks.cc (default_instruction_selection): New. - * targhooks.h (default_instruction_selection): New. - -2025-11-20 Josef Melcr - - PR ipa/122358 - * cgraph.cc (cgraph_add_edge_to_call_site_hash): Add an early - return when the hashed edge is a callback-carrying edge. - -2025-11-20 Arsen Arsenović - - * doc/rtl.texi (Regs and Memory): Use @table instead of @itemize - for lists with named items. - -2025-11-20 Xinhui Yang - - PR bootstrap/105664 - * Makefile.in (install-driver): detect name collision when - installing the driver program. - -2025-11-20 Rainer Orth - - * config/i386/sol2.h: Replace USE_GAS by HAVE_GNU_AS. - Replace USE_GLD by HAVE_GNU_LD. - * config/sol2.h: Likewise. - * config/sparc/sol2.h: Likewise. - * config/i386/i386.cc (i386_solaris_elf_named_section) - [TARGET_SOLARIS]: Replace USE_GAS by HAVE_GNU_AS. - * config/ia64/hpux.h: Likewise. - * config.gcc: Remove usegas.h, usegld.h. - * config/usegas.h: Remove. - * config/usegld.h: Remove - -2025-11-20 Rainer Orth - - * config/sol2.h (LINK_ARCH32_SPEC_BASE): Don't provide -YP - defaults. Rename to ... - (LINK_ARCH_SPEC_BASE): ... this. - (LINK_ARCH32_SPEC): Remove. - (LINK_ARCH64_SPEC_BASE): Remove. - (LINK_ARCH64_SPEC): Rename to ... - (LINK_ARCH_SPEC_1): ... this. - [!USE_GLD]: Simplify map.below4G use. - (LINK_ARCH_ERROR_SPEC): New macro. - (LINK_ARCH32_SPEC): Remove. - (LINK_ARCH_DEFAULT_SPEC): Remove. - (LINK_ARCH_SPEC): Simplify using LINK_ARCH_ERROR_SPEC, - LINK_ARCH_SPEC_1. - (SUBTARGET_EXTRA_SPECS): Remove link_arch32, link_arch64 - link_arch_default. - -2025-11-20 Xi Ruoyao - - * config/loongarch/lsx.md (vec_perm): Expand directly with - RTL template. - * config/loongarch/loongarch-protos.h - (loongarch_expand_vec_perm): Delete. - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm): - Delete. - -2025-11-20 Xi Ruoyao - - * config/loongarch/lasx.md (lasx_xvpermi_d): Add "@". - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): - Use gen_lasx_xvpermi_d instead of - gen_lasx_xvpermi_d_{v32qi,v16hi} to deduplicate the logic. Do - structrual programming instead of goto and label. - -2025-11-20 Xi Ruoyao - - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): - Clamp the selector using the twice of actual number of elements. - Compare the clamped selector with the element number to get the - blending mask. - -2025-11-20 Xi Ruoyao - - * config/loongarch/lasx.md (lasx_xvshuf_b): Remove. - (lasx_xvshuf__vshuf_<_f>): New define_expand. - * config/loongarch/loongarch.cc - (loongarch_try_expand_lsx_vshuf_const): Call gen_simd_vshuf - instead of gen_lasx_xvshuf and gen_lasx_xvshuf_b. - (loongarch_expand_vec_perm_const): Likewise. - -2025-11-20 Xi Ruoyao - - * config/loongarch/lasx.md (lasx_xvperm_): Add - "@" for gen_lasx_xvperm helper. - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): - Call gen_lasx_xvperm to unify V8SF and V8SI handling. - -2025-11-20 Xi Ruoyao - - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): - Use lasx_xvpackev_h (mask * 2, mask * 2 + 1) to "expand" the - V4DI selector to V8SI. - -2025-11-20 Xi Ruoyao - - PR target/122695 - * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): - Simplify and fix the logic preventing the xvshuf.* unpredictable - behavior. - -2025-11-19 Andrew MacLeod - - PR tree-optimization/122756 - * gimple-range-fold.cc (range_of_ssa_name_with_loop_info): Do - not invoke SCEV if already in a SCEV call. - -2025-11-19 Martin Liska - - * common.opt.urls: Include -fuse-ld=wild - -2025-11-19 Andrew Pinski - - PR tree-optimization/122754 - * gimple-fold.cc (get_range_strlen_tree): Use POINTER_TYPE_P instead - of direct comparing to POINTER_TYPE. - * gimple-ssa-sprintf.cc (format_integer): Likewise. - * gimple-ssa-warn-access.cc (maybe_warn_nonstring_arg): Likewise. - * gimple-ssa-warn-restrict.cc (pass_wrestrict::check_call): Likewise. - * tree-ssa-strlen.cc (maybe_set_strlen_range): Likewise. - (is_strlen_related_p): Likewise. - (strlen_pass::handle_assign): Likewise. - -2025-11-19 Andrew Pinski - - * tree-ssa-dce.cc (simple_dce_from_worklist): Use FOR_EACH_IMM_USE_FAST instead of - FOR_EACH_IMM_USE_STMT. - -2025-11-19 Alfie Richards - - PR target/122763 - * config/aarch64/aarch64.cc (aarch64_layout_arg): Return NULL_RTX for - arguments of size 0. - (aarch64_function_arg_advance): Remove assert. - -2025-11-19 Alfie Richards - - * doc/extend.texi (preserve_none): Minor grammar fix. - -2025-11-19 Martin Liska - - * collect2.cc (main): Add wild linker to -fuse-ld. - * common.opt: Likewise. - * configure: Regenerate. - * configure.ac: Add detection for wild linker. - * doc/invoke.texi: Document -fuse-ld=wild. - * gcc.cc (driver_handle_option): Support -fuse-ld=wild. - * opts.cc (common_handle_option): Likewise. - -2025-11-19 Tamar Christina - - * config/aarch64/aarch64-sve.md (vec_extract, - vec_extract): New. - * config/aarch64/iterators.md (V64, v64): New. - * config/aarch64/predicates.md (const0_to_1_operand): New. - -2025-11-19 Jeff Law - - * config/riscv/riscv-string.cc (riscv_expand_block_move_scalar): - Fix signed vs unsigned warning. - -2025-11-19 Richard Biener - - * tree-vect-stmts.cc (vectorizable_load): Make dr_chain - an auto_vec, move down to where we use it to avoid creating - it twice. - -2025-11-19 Richard Biener - - PR tree-optimization/122722 - * tree-vect-slp.cc (vect_analyze_slp_reductions): New - function, split out from vect_analyze_slp. Try SLP - sub-groups. - (vect_analyze_slp_reduction_group): New helper. - -2025-11-19 Richard Biener - - PR tree-optimization/122747 - * tree-vect-stmts.cc (vectorizable_call): Handle reduction - operations that are already conditional. - -2025-11-19 Jakub Jelinek - - * tree-ssanames.cc (get_known_nonzero_bits): Fix a pasto in - function comment, this function returns 0 if unknown rather - than -1. - -2025-11-19 Jakub Jelinek - - PR tree-optimization/122184 - * tree-ssa-live.cc (remove_unused_locals): Drop .DEFERRED_INIT - calls with MEM_REF lhs based on uninitialized SSA_NAME. - -2025-11-19 Rainer Orth - - * genmultilib: Check $enable_multilib to define DISABLE_MULTILIB. - -2025-11-19 Rainer Orth - - * config/sol2.h: Check USE_GLD instead of USE_GNU_LD. - -2025-11-19 Avinash Jayakar - - PR target/119130 - * config/rs6000/altivec.md (convert_4f32_8f16): Use same operand - order for both endian format. - -2025-11-19 Haochen Jiang - - * common/config/i386/i386-common.cc: Adjust to P_PROC_AVX10_1. - * config/i386/driver-i386.cc (host_detect_local_cpu): - Move Nova Lake to under AVX512 part. - * config/i386/i386.h (PTA_NOVALAKE): Add AVX10.1, AVX10.2, - APX_F and MOVRS. - * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set to 8. - * config/i386/x86-tune.def (X86_TUNE_AVX256_OPTIMAL): Add Nova - Lake. - * doc/invoke.texi: Adjust documentation. - -2025-11-18 Edwin Lu - - * config/riscv/riscv-string.cc (riscv_expand_block_move_scalar): - Add length check. - (expand_block_move): Ditto. - (expand_vec_setmem): Ditto. - * config/riscv/riscv.opt: Add param flags. - -2025-11-18 Christophe Lyon - - * config/arm/arm_mve.h (__ARM_mve_typeid): Delete. - (__ARM_mve_coerce): Delete. - (__ARM_mve_coerce_i_scalar): Delete. - (__ARM_mve_coerce_s8_ptr): Delete. - (__ARM_mve_coerce_u8_ptr): Delete. - (__ARM_mve_coerce_s16_ptr): Delete. - (__ARM_mve_coerce_u16_ptr): Delete. - (__ARM_mve_coerce_s32_ptr): Delete. - (__ARM_mve_coerce_u32_ptr): Delete. - (__ARM_mve_coerce_s64_ptr): Delete. - (__ARM_mve_coerce_u64_ptr): Delete. - (__ARM_mve_coerce_f_scalar): Delete. - (__ARM_mve_coerce_f16_ptr): Delete. - (__ARM_mve_coerce_f32_ptr): Delete. - -2025-11-18 Christophe Lyon - - * config/arm/arm-mve-builtins-shapes.cc (build_one): Add - which_overload parameter. - (inherent): Derive from overloaded_base<0>. Add support for - overloaded version. - * config/arm/arm-mve-builtins-shapes.h (inherent): Update comment. - * config/arm/arm-mve-builtins.cc (add_unique_function): Add - support for new which_overload parameter. - (pop_and_resolve_to): New. - * config/arm/arm-mve-builtins.h (NONOVERLOADED_FORM) - (OVERLOADED_FORM): New. - (add_unique_function): Update prototype. - (pop_and_resolve_to): New prototype. - * config/arm/arm_mve.h (vuninitializedq): Delete. - (vuninitializedq_u8): Delete. - (vuninitializedq_u16): Delete. - (vuninitializedq_u32): Delete. - (vuninitializedq_u64): Delete. - (vuninitializedq_s8): Delete. - (vuninitializedq_s16): Delete. - (vuninitializedq_s32): Delete. - (vuninitializedq_s64): Delete. - (vuninitializedq_f16): Delete. - (vuninitializedq_f32): Delete. - (__arm_vuninitializedq): Delete. - -2025-11-18 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (class - mve_function_vset_vget_lane): New. - (vgetq_lane, vsetq_lane): New. - * config/arm/arm-mve-builtins-base.def (vgetq_lane, vsetq_lane): - New. - * config/arm/arm-mve-builtins-base.h (vgetq_lane, vsetq_lane): - New. - * config/arm/arm-mve-builtins-shapes.cc (struct getq_lane) - (setq_lane): New. - * config/arm/arm-mve-builtins-shapes.h (getq_lane, setq_lane): - New. - * config/arm/arm_mve.h (vsetq_lane): Delete. - (vgetq_lane): Delete. - (vsetq_lane_f16): Delete. - (vsetq_lane_f32): Delete. - (vsetq_lane_s16): Delete. - (vsetq_lane_s32): Delete. - (vsetq_lane_s8): Delete. - (vsetq_lane_s64): Delete. - (vsetq_lane_u8): Delete. - (vsetq_lane_u16): Delete. - (vsetq_lane_u32): Delete. - (vsetq_lane_u64): Delete. - (vgetq_lane_f16): Delete. - (vgetq_lane_f32): Delete. - (vgetq_lane_s16): Delete. - (vgetq_lane_s32): Delete. - (vgetq_lane_s8): Delete. - (vgetq_lane_s64): Delete. - (vgetq_lane_u8): Delete. - (vgetq_lane_u16): Delete. - (vgetq_lane_u32): Delete. - (vgetq_lane_u64): Delete. - (__ARM_NUM_LANES): Delete. - (__ARM_LANEQ): Delete. - (__ARM_CHECK_LANEQ): Delete. - (__arm_vsetq_lane_s16): Delete. - (__arm_vsetq_lane_s32): Delete. - (__arm_vsetq_lane_s8): Delete. - (__arm_vsetq_lane_s64): Delete. - (__arm_vsetq_lane_u8): Delete. - (__arm_vsetq_lane_u16): Delete. - (__arm_vsetq_lane_u32): Delete. - (__arm_vsetq_lane_u64): Delete. - (__arm_vgetq_lane_s16): Delete. - (__arm_vgetq_lane_s32): Delete. - (__arm_vgetq_lane_s8): Delete. - (__arm_vgetq_lane_s64): Delete. - (__arm_vgetq_lane_u8): Delete. - (__arm_vgetq_lane_u16): Delete. - (__arm_vgetq_lane_u32): Delete. - (__arm_vgetq_lane_u64): Delete. - (__arm_vsetq_lane_f16): Delete. - (__arm_vsetq_lane_f32): Delete. - (__arm_vgetq_lane_f16): Delete. - (__arm_vgetq_lane_f32): Delete. - (__arm_vsetq_lane): Delete. - (__arm_vgetq_lane): Delete. - * config/arm/mve.md (mve_vec_extract): Add '@' - prefix. - (mve_vec_set_internal): Likewise. - -2025-11-18 Christophe Lyon - - * doc/extend.texi (Half-precision Floating-point): __fp16 is now - always available on arm. Move x86 paragraph closer to the rest of - the x86 information, and make it use present tense. - -2025-11-18 Christophe Lyon - - PR target/117814 - * config/arm/arm-builtins.cc (arm_init_fp16_builtins): Always - register __fp16 type. - * config/arm/arm-mve-builtins.cc (register_builtin_tuple_types): - Remove special handling when TARGET_HAVE_MVE_FLOAT is false. - (register_vector_type): Likewise. - (register_builtin_tuple_types): Likewise. - * config/arm/arm-opts.h (arm_fp16_format_type): Add - ARM_FP16_FORMAT_DEFAULT. - * config/arm/arm.cc (arm_vector_mode_supported_p): Accept - floating-point vector modes even if TARGET_HAVE_MVE_FLOAT is - false. - (arm_option_reconfigure_globals): Apply ARM_FP16_FORMAT_NONE if - requested. - * config/arm/arm.opt (mfp16-format): Default to - ARM_FP16_FORMAT_DEFAULT. - * config/arm/arm_mve_types.h (float16_t, float32_t): Define - unconditionally. - * doc/sourcebuild.texi (ARM-specific attributes): Document - arm_v8_1m_mve_nofp_ok. - -2025-11-18 Richard Biener - - PR tree-optimization/122736 - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Compute - num_mask_args for all mask modes. Pass the mask vector - type to vect_record_loop_mask and adjust ncopies according - to the number of mask arguments. - -2025-11-18 Austin Law - - * config/riscv/riscv-cores.def: Add RISCV_TUNE and RISCV_CORE entries - for the spacemit-x60 design. - * config/riscv/riscv-opts.h (riscv_microarchitecture_type): Add entry - for spacemit-x60 design. - * config/riscv/riscv.cc (spacemit_x60_tune_info): New tune structure - for the spacemit-x60 design. - * config/riscv/riscv.md (tune): Add spacemit_x60. - Include spacemit-x60.md. - * config/riscv/spacemit-x60.md: New file - * doc/riscv-mtune.texi: Regenerate. - * doc/riscv-mcpu.texi: Regenerate. - -2025-11-18 Richard Biener - - PR tree-optimization/122723 - * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): - Handle incoming .COND_* operation. - (vect_transform_reduction): Likewise. Handle .COND_* - operation when not using COND_EXPR masking in a masked loop. - -2025-11-18 Richard Biener - - PR tree-optimization/122723 - * tree-vect-stmts.cc (supportable_widening_operation): - Correct optab to query in the multi-step case when it is - supposed to hit the sbool case. - -2025-11-18 liuhongt - - PR target/103750 - * config/i386/sse.md (*_eq3_and15): New - define_insn. - (*avx512vl_eqv2di_and3): Ditto. - * config/i386/i386.md (*ior_ccz_1): Fix the typo in the - comments above. - -2025-11-17 David Malcolm - - PR analyzer/122626 - * tree-logical-location.cc - (tree_logical_location_manager::get_parent): Return null when - TYPE_CONTEXT is a TRANSLATION_UNIT_DECL so that we don't fail - the assertion in assert_valid_tree. - -2025-11-17 Evgeny Karpov - - PR diagnostics/122666 - * config/i386/x-mingw32 (LIBS): Add -lws2_32 - * diagnostics/sarif-sink.cc: Move sockets includes to before - config.h and support __MINGW32__. - -2025-11-17 Andrew Pinski - - PR middle-end/97894 - * attr-fnspec.h (attr_fnspec): arg_idx, known_p, arg_specified_p, - arg_direct_p, arg_used_p, arg_readonly_p, - arg_maybe_read_p, arg_maybe_written_p, - arg_max_access_size_given_by_arg_p, - arg_access_size_given_by_type_p, - arg_copied_to_arg_p, arg_noescape_p, returns_arg, - returns_noalias_p, global_memory_read_p, - global_memory_written_p, errno_maybe_written_p, arg_eaf_flags, - and get_str as const methods. - -2025-11-17 Andrew Pinski - - * tree-cfgcleanup.cc (maybe_remove_forwarder_block): Move a few - checks earlier. - -2025-11-17 Andrew Pinski - - * tree-cfgcleanup.cc (tree_forwarder_block_p): Merge this and ... - (remove_forwarder_block): This into ... - (maybe_remove_forwarder_block): Here. - (cleanup_tree_cfg_bb): Call only maybe_remove_forwarder_block. - (pass_merge_phi::execute): Likewise. - -2025-11-17 Andrew Pinski - - * tree-cfgcleanup.cc (pass_merge_phi::execute): Add stats for the removed - blocks. - -2025-11-17 Jeff Law - - PR rtl-optimization/122575 - * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): - Use correct mode for simplified IOR expression inside equality - conditional. - -2025-11-17 Xi Ruoyao - - * simplify-rtx.cc (simplify_const_binary_operation): Simplify - VEC_CONCAT two constant vectors. - -2025-11-17 Richard Biener - - * tree-ssa-loop-im.cc (move_computations_worker): Avoid newline - between 'Moving statement' and actual statement dump in dumpfile. - -2025-11-17 Richard Biener - - * tree-ssa-loop-im.cc (fill_always_executed_in): Skip - blocks not in loops when looking for possibly not returning - calls. - -2025-11-17 Victor Do Nascimento - - * cfgloop.cc (loop_exits_to_bb_p): Change return type. - (loop_exits_from_bb_p): Likewise. - * cfgloop.h: (loop_exits_to_bb_p): Likewise. - (loop_exits_from_bb_p): Likewise. - -2025-11-17 Alfie Richards - - * doc/extend.texi: (ARM C Language Extensions (ACLE)) Update ACLE URL - and description. - -2025-11-17 Artemiy Volkov - - * tree-ssa-forwprop.cc (optimize_vector_load): Inhibit - optimization when all uses are through subvectors without - extension. - -2025-11-17 Jakub Jelinek - - * tree-core.h (enum built_in_function): Avoid arithmetics or - bitwise operations between enumerators from different enums. - * lto-streamer.h (lto_tag_is_gimple_code_p): Likewise. - * gimple.h (gimple_omp_atomic_set_memory_order): Likewise. - * common/config/i386/i386-cpuinfo.h (M_CPU_SUBTYPE_START, - M_CPU_TYPE): Likewise. - * tree-complex.cc (expand_complex_libcall): Likewise. - * ipa-modref-tree.h (modref_access_node::operator ==): Change - argument type from modref_access_node & to - const modref_access_node &. - * ipa-modref-tree.cc (modref_access_node::operator ==): Likewise. - -2025-11-17 Richard Biener - - PR tree-optimization/122573 - * config/i386/i386.cc (ix86_vector_costs::finish_cost): Avoid - using masked epilogues when an SSE epilogue would have a VF of one. - -2025-11-17 Rainer Orth - - * configure.ac (gcc_cv_ld_compress_debug) <*-*-solaris2*>: Check - for zstd compression support. - * configure: Regenerate. - * doc/invoke.texi (Debugging Options, gz): Document zstd. - -2025-11-16 Andrew MacLeod - - PR tree-optimization/121345 - * gimple-range-phi.cc (phi_group::phi_group): Add modifier name. - (phi_group::is_modifier_p): Set modifier stmt operand name. - (phi_group::calculate_using_modifier): Bound the iteration range - by known global range. - (phi_analyzer::process_phi): Allow single PHIS if they meet certain - criteria. - * gimple-range-phi.h (m_modifier_name): New member. - (is_modifier_p): Adjust prototype. - -2025-11-16 Andrew MacLeod - - * gimple-range-fold.cc (fold_using_range::range_of_phi): Remove - the PHI analysis query. - * gimple-range-phi.cc (phi_analysis_object): Delete. - (phi_analysis_initialize): Delete. - (phi_analysis_finalize): Delete. - (phi_analysis_available_p): Delete. - (phi_analysis): Invoke a phi analyzer. - (phi_analyzer::phi_analyzer): Preprocess all phi nodes and set - global values for them in a query. - (phi_analyzer::process_phi): Use query, and export any inital - values found to the query. - * gimple-range-phi.h (m_global): Delete. - (phi_analysis_initialize): Delete. - (phi_analysis_finalize): Delete. - (phi_analysis_available_p): Delete. - (phi_analysis): Change prototype. - * tree-vrp.cc (execute_ranger_vrp): Call phi_analysis. - -2025-11-16 Andrew MacLeod - - * gimple-range-cache.cc (ranger_cache::update_consumers): New. - * gimple-range-cache.h (update_consumers): New prototype. - * gimple-range-fold.cc (fur_depend::fur_depend): Add cache ptr. - (fur_depend::register_relation): call update_consumers. - * gimple-range-fold.h (fur_depend): Add a cache pointer. - * gimple-range.cc (gimple_ranger::fold_range_internal): Add cache ptr. - -2025-11-16 Andrew MacLeod - - * gimple-range.cc (gimple_ranger::update_range_info): New. - * gimple-range.h (update_range_info): New prototype. - * tree-ssanames.cc (set_range_info): Update the range info for - the current range query. - * value-query.h (update_range_info): New prototype. - * value-query.cc (update_range_info): New default stub. - -2025-11-16 Andrew Pinski - - * tree-cfgcleanup.cc (tree_forwarder_block_p): Restore check on - LOOPS_HAVE_PREHEADERS. - -2025-11-16 Rainer Orth - - * config/sol2.h (MD_EXEC_PREFIX): Remove. - -2025-11-16 Richard Biener - - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): - Initialize can_use_partial_vectors_p to true. - (vect_determine_partial_vectors_and_peeling): Add masked_p - parameter and honor it. - (vect_analyze_loop_2): Pass through masked_p. - (vect_analyze_loop_1): Pass down masked_p. - (vect_analyze_loop): Simplify check on possible masking of - the epilog when there's no .WHILE_ULT. - -2025-11-16 Richard Biener - - * tree-vect-loop.cc (vect_determine_partial_vectors_and_peeling): - Remove resetting of LOOP_VINFO_USING_SELECT_VL_P. - (vect_analyze_loop_2): Decide on partial vectors before - deciding on decrementing IV or .SELECT_VL usage. - -2025-11-16 Richard Biener - - * tree-vectorizer.h (vect_determine_partial_vectors_and_peeling): - Remove. - (vect_need_peeling_or_partial_vectors_p): Declare. - * tree-vect-loop.cc (vect_determine_partial_vectors_and_peeling): - Make static. - (vect_need_peeling_or_partial_vectors_p): Export. - * tree-vect-loop-manip.cc (vect_do_peeling): Do not call - vect_determine_partial_vectors_and_peeling but instead - re-compute LOOP_VINFO_PEELING_FOR_NITER using - vect_need_peeling_or_partial_vectors_p. - -2025-11-16 Richard Biener - - * tree-vectorizer.h (_loop_vec_info::epil_using_partial_vectors_p): - Remove. - (LOOP_VINFO_EPIL_USING_PARTIAL_VECTORS_P): Likewise. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): - Do not initialize epil_using_partial_vectors_p. - (vect_determine_partial_vectors_and_peeling): Do not set it. - -2025-11-16 Lewis Hyatt - - * diagnostics/context.cc (num_digits): Change argument type from - `int' to `uint64_t'. - (test_num_digits): Add test for 64-bit argument. - * diagnostic.h (num_digits): Adjust prototype. - * input.cc (write_digit): Accept argument in range 0-9 instead of - an arbitrary int. - (write_digit_row): Adjust to change in write_digit(). - -2025-11-15 Jason Xu - - * config.gcc (aarch64-*-mingw*): Set use_gcc_stdint to wrap. - -2025-11-15 Jeff Law - - * config/riscv/riscv.cc (risc_legitimize_move): Use convert_modes - rather than gen_extend_insn for most cases. - * config/riscv/riscv.md (addv4): Likewise. - (uaddv4, subv4, usubv4): Likewise. - (mulv4, umulv4): Likewise. - * config/riscv/sync.md (atomic_compare_and_swap): Likewise. - -2025-11-15 Karl Meakin - - * config/aarch64/aarch64.md (movcc): Delete. - -2025-11-15 Karl Meakin - - * config/aarch64/aarch64.md(movcc): Use new predicate. - (movcc): Likewise. - (cc): Likewise. - * config/aarch64/predicates.md (aarch64_comparison_operator_cc): - New predicate. - -2025-11-15 Karl Meakin - - * config/aarch64/aarch64.md (mov): Delete - redundant check. - (movcc): Likewise. - (cc): Likewise. - -2025-11-15 Karl Meakin - - * config/aarch64/aarch64.md (movcc): Merge with ... - (movcc): ... this. - * config/aarch64/iterators.md(ALLI_GPF): New mode iterator. - -2025-11-15 Karl Meakin - - * config/aarch64/aarch64.md(movcc): Accept MODE_CC - conditions directly; reject QI/HImode conditions. - -2025-11-14 Kuan-Lin Chen - - * config/riscv/riscv.cc (andes_25_tune_info): Add prefer-agnostic. - -2025-11-14 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): - Add ss_SQRSHR, ss_SQSHL, ss_SRSHR, ss_UQRSHL, ss_UQSHL, and - ss_URSHR. - (mve_function_scalar_shift): Add support for ss_SQRSHR, ss_SQSHL, - ss_SRSHR, ss_UQRSHL, ss_UQSHL, and ss_URSHR. - (sqrshr, sqshl, srshr, uqrshl, uqshl, urshr): New. - * config/arm/arm-mve-builtins-base.def (sqrshr, sqshl, srshr) - (uqrshl, uqshl, urshr): New. - * config/arm/arm-mve-builtins-base.h (sqrshr, sqshl, srshr) - (uqrshl, uqshl, urshr): New. - * config/arm/arm-mve-builtins-shapes.cc (scalar_s32_shift): New. - (scalar_s32_shift_imm): New. - (scalar_u32_shift): New. - (scalar_u32_shift_imm): New. - * config/arm/arm-mve-builtins-shapes.h (scalar_s32_shift): New. - (scalar_s32_shift_imm): New. - (scalar_u32_shift): New. - (scalar_u32_shift_imm): New. - * config/arm/arm_mve.h (sqrshr): Delete. - (sqshl): Delete. - (srshr): Delete. - (uqrshl): Delete. - (uqshl): Delete. - (urshr): Delete. - (__arm_uqrshl): Delete. - (__arm_sqrshr): Delete. - (__arm_uqshl): Delete. - (__arm_urshr): Delete. - (__arm_sqshl): Delete. - (__arm_srshr): Delete. - * config/arm/mve.md (mve_sqshl_si, mve_srshr_si): Fix operand 1 - mode. - -2025-11-14 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): - Add ss_SQSHLL, ss_SRSHRL, ss_UQSHLL, ss_URSHRL. - (mve_function_scalar_shift): Add support for ss_SQSHLL, ss_SRSHRL, - ss_UQSHLL, ss_URSHRL. - * config/arm/arm-mve-builtins-base.def (sqshll, srshrl, uqshll) - (urshrl): New. - * config/arm/arm-mve-builtins-base.h (sqshll, srshrl, uqshll) - (urshrl): New. - * config/arm/arm-mve-builtins-shapes.cc (scalar_s64_shift_imm) - (scalar_u64_shift_imm): New. - * config/arm/arm-mve-builtins-shapes.h (scalar_s64_shift_imm) - (scalar_u64_shift_imm): New. - * config/arm/arm_mve.h (sqshll): Delete. - (srshrl): Delete. - (uqshll): Delete. - (urshrl): Delete. - (__arm_uqshll): Delete. - (__arm_urshrl): Delete. - (__arm_srshrl): Delete. - (__arm_sqshll): Delete. - -2025-11-14 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): - Add ss_SQRSHRL, ss_SQRSHRL_SAT48. - (mve_function_scalar_shift): Add support for ss_SQRSHRL, - ss_SQRSHRL_SAT48. - (sqrshrl, sqrshrl_sat48): New. - * config/arm/arm-mve-builtins-base.def (sqrshrl, sqrshrl_sat48): New. - * config/arm/arm-mve-builtins-base.h (sqrshrl, sqrshrl_sat48): New. - * config/arm/arm_mve.h (sqrshrl): Delete. - (sqrshrl_sat48): Delete. - (__arm_sqrshrl): Delete. - (__arm_sqrshrl_sat48): Delete. - * config/arm/mve.md (mve_sqrshrl_sat_di): Add '@' prefix. - -2025-11-14 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): - Add ss_UQRSHLL, ss_UQRSHLL_SAT48. - (mve_function_scalar_shift): Add support for ss_UQRSHLL, - ss_UQRSHLL_SAT48. - * config/arm/arm-mve-builtins-base.def (uqrshll, uqrshll_sat48): - New. - * config/arm/arm-mve-builtins-base.h (uqrshll, uqrshll_sat48): - New. - * config/arm/arm_mve.h (uqrshll): Delete. - (uqrshll_sat48): Delete. - (__arm_uqrshll): Delete. - (__arm_uqrshll_sat48): Delete. - * config/arm/mve.md (mve_uqrshll_sat_di): Add '@' prefix. - -2025-11-14 Christophe Lyon - - * config/arm/arm-mve-builtins-base.cc (class mve_function_vpnot): New. - (vpnot): New. - * config/arm/arm-mve-builtins-base.def (vpnot): New. - * config/arm/arm-mve-builtins-base.h (vpnot): New. - * config/arm/arm-mve-builtins-shapes.cc (struct vpnot): New. - * config/arm/arm-mve-builtins-shapes.h (vpnot): New. - * config/arm/arm_mve.h (vpnot): Delete. - (__arm_vpnot): Delete. - -2025-11-14 Filip Kastl - - * doc/invoke.texi: Remove mention of switch-lower-slow-alg-max-cases. - * params.opt: Remove switch-lower-slow-alg-max-cases. - -2025-11-14 Uros Bizjak - - * config/i386/i386.md (*sub_3): - Remove 'i' from operand 0 constraint. - -2025-11-14 Richard Biener - - PR ipa/122663 - * ipa-param-manipulation.cc (purge_all_uses): Collect - stmts to remove and process that list in reverse. - -2025-11-14 Richard Biener - - PR tree-optimization/122573 - * tree-vect-slp.cc (vect_build_slp_tree_1): Support - groups of invariant loads. - (vect_build_slp_tree_2): Likewise. - (vect_transform_slp_perm_load_1): Likewise. - * tree-vect-stmts.cc (vectorizable_load): Handle non-splat - SLP for invaraint loads. - -2025-11-14 Richard Biener - - PR tree-optimization/122680 - * tree-vect-stmts.cc (vectorizable_conversion): Avoid range - queries during transform. - -2025-11-14 Rainer Orth - - PR target/121458 - PR target/121457 - * configure.ac: Fix typos. - <*-*-solaris2*>: Require GNU ld 2.30. - (comdat_group) <*-*-solaris2.1[1-9]*>: Always set to yes. - (ld_ix86_gld_32_opt): Only use -melf_i386_sol2 for Solaris target. - (ld_ix86_gld_64_opt): Likewise with -melf_x86_64_sol. - (gcc_cv_ld_eh_frame_hdr) <*-*-solaris2*>: Likewise. - (gcc_cv_ld_pie) <*-*-solaris2*>: Remove special cases. - (gcc_cv_ld_compress_debug) <*-*-solaris2*>: Remove guard. - (gcc_cv_ld_as_needed): Simplify guard. - (gcc_cv_ld_sol2_emulation): Remove. - (gcc_cv_solaris_crts): Remove. - * configure: Regenerate. - * config.in: Regenerate. - * config/sol2.h (STARTFILE_CRTBEGIN_SPEC): Remove !HAVE_LD_PIE - support. - (ENDFILE_CRTEND_SPEC): Likewise. - (LD_PIE_SPEC): Likewise. - [USE_GLD] (LINK_EH_SPEC): Set unconditionally. - * config/i386/sol2.h [USE_GLD]: Remove !HAVE_LD_SOL2_EMULATION - support. - * config/sparc/sol2.h: Likewise. - * doc/install.texi (Specific, *-*-solaris2*): Update bundled gcc - versions. - Raise required binutils version. - Remove binutils 2.44 caveat. - -2025-11-14 Christophe Lyon - - PR target/122216 - * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): New. - (mve_function_scalar_shift): New. - (asrl, lsll): New. - * config/arm/arm-mve-builtins-base.def (asrl, lsll): New. - * config/arm/arm-mve-builtins-base.h (asrl, lsll): New. - * config/arm/arm_mve.h (asrl): Delete. - (lsll): Delete. - (__arm_asrl): Delete. - (__arm_lsll): Delete. - -2025-11-14 Christophe Lyon - - PR target/122216 - * config/arm/arm-mve-builtins-shapes.cc (scalar_s64_shift): New. - (scalar_u64_shift): New. - * config/arm/arm-mve-builtins-shapes.h: Likewise. - -2025-11-14 Christophe Lyon - - PR target/122216 - * config/arm/arm.md (ashldi3, ashrdi3): Force shift amount into - QImode. - * config/arm/constraints.md: Fix comment, Pg is valid in Thumb-2 - state only. - * config/arm/mve.md (mve_asrl): Handle various shift amount ranges. - (mve_asrl_imm, mve_asrl_internal): New patterns. - (mve_lsll): Handle various shift amount ranges. - (mve_lsll_imm, mve_lsll_internal): New patterns. - -2025-11-14 Christophe Lyon - - PR target/122216 - * config/arm/thumb2.md (thumb2_asrl, thumb2_lsll, thumb2_lsrl): - Move to ... - * config/arm/mve.md (mve_asrl, mve_lsll, mve_lsrl): ... here. Use - match_operand instead of match_dup. - * config/arm/arm.md (ashldi3, ashrdi3, lshrdi3): Remove useless - copy. Update for new prototype. - -2025-11-14 Xi Ruoyao - - * configure: Regenerate. - -2025-11-14 zhaozhou - - * config/loongarch/lasx.md (lasx_xvbsrl_d_f): New template. - * config/loongarch/loongarch.cc (emit_reduc_half): Replace insn. - -2025-11-14 zhaozhou - - * config/loongarch/predicates.md: Update ops. - -2025-11-14 zhaozhou - - * config.gcc: Add target_gtfiles. - * config/loongarch/loongarch-builtins.cc: Add header file. - -2025-11-13 Alexandre Oliva - Olivier Hainque - - * config/vxworks/base/b_NULL.h: New. - * config.gcc (extra_headers) <*-*-vxworks*>: Add it. - * Makefile.in (stmp-int-hdrs): Support /././ markers in USER_H - to mark the beginning of the install name. Document. - * doc/sourcebuild.texi (Headers): Document /././ marker. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (tree_forwarder_block_p): Remove must argument. - (remove_forwarder_block): Add can_split - argument. Handle the splitting case (iff phis in bb). - (cleanup_tree_cfg_bb): Update argument to tree_forwarder_block_p. - (remove_forwarder_block_with_phi): Remove. - (pass_merge_phi::execute): Update argument to tree_forwarder_block_p - and call remove_forwarder_block instead of remove_forwarder_block_with_phi. - -2025-11-13 Andrew Pinski - - PR tree-optimization/122493 - * tree-cfgcleanup.cc (tree_forwarder_block_p): Change bool argument - to a must have phi and allow phis if it is false. - (remove_forwarder_block): Add support for merging of forwarder blocks - with phis. - -2025-11-13 Andrew Pinski - - * tree-cfg.cc (copy_phi_arg_into_existing_phi): Use the original location - if the mapped location is unknown. - -2025-11-13 Andrew Pinski - - * tree-cfg.cc (copy_phi_arg_into_existing_phi): New use_map argument. - * tree-cfg.h (copy_phi_arg_into_existing_phi): Update declaration. - * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Use - copy_phi_arg_into_existing_phi instead of inlining it. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (remove_forwarder_block): Move - variable declaration ei into for loop. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Use - edge iterator instead of while loop. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (remove_forwarder_block): Remove check - on the available dominator information. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (tree_forwarder_block_p): Reject bb which has a single - predecessor which has a single successor. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (pass_merge_phi::execute): Move - check for abnormal or no phis to remove_forwarder_block_with_phi - and the check on dominated to tree_forwarder_block_p. - (remove_forwarder_block_with_phi): here. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Remove check on non-local label. - (remove_forwarder_block): Remove check on non-label/eh landing pad. - (tree_forwarder_block_p): Add check on lable for an eh landing pad. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (remove_forwarder_block): Remove check for infinite loop. - (remove_forwarder_block_with_phi): Likewise. Also remove check for loop header. - -2025-11-13 Andrew Pinski - - * tree-cfgcleanup.cc (pass_merge_phi::execute): Remove worklist. - -2025-11-13 Jeff Law - - * ext-dce.cc (ext_dce_try_optimize_rshift): New function to optimize a - shift pair implementing a zero/sign extension. - (ext_dce_try_optimize_extension): Renamed from - ext_dce_try_optimize_insn. - (ext_dce_process_uses): Handle shift pairs implementing extensions. - -2025-11-13 Andrew Pinski - - PR tree-optimization/122637 - * tree-scalar-evolution.cc (final_value_replacement_loop): Fix order - of gimplification and constant prop. - -2025-11-13 Jeff Law - - PR rtl-optimization/122627 - * lra-constraints.cc (update_equiv): Remove patch from last week - related to pr122321. - (lra_constraints): Expand the equivalence array after eliminations - are complete. - -2025-11-13 Xi Ruoyao - - * configure.ac (HAVE_AS_16B_ATOMIC): Define if the assembler - supports LSX and sc.q. - * configure: Regenerate. - * config.in: Regenerate. - * config/loongarch/loongarch-opts.h (HAVE_AS_16B_ATOMIC): - Defined to 0 if undefined yet. - * config/loongarch/linux.h (HAVE_IFUNC_FOR_LIBATOMIC_16B): - Define as HAVE_AS_16B_ATOMIC && OPTION_GLIBC. - * config/loongarch/loongarch-protos.h - (loongarch_16b_atomic_lock_free_p): New prototype. - * config/loongarch/loongarch.cc - (loongarch_16b_atomic_lock_free_p): Implement. - * config/loongarch/sync.md (atomic_storeti_lsx): Require - loongarch_16b_atomic_lock_free_p. - (atomic_storeti): Likewise. - (atomic_exchangeti_scq): Likewise. - (atomic_exchangeti): Likewise. - (atomic_compare_and_swapti): Likewise. - (atomic_fetch_ti_scq): Likewise. - (atomic_fetch_ti): Likewise. - (ALL_SC): Likewise for TImode. - (atomic_storeti_scq): Remove. - -2025-11-13 Richard Biener - - * config/i386/i386-features.cc (pass_x86_cse::x86_cse): Delete - loads. - -2025-11-13 Rainer Orth - - PR other/122638 - * doc/install.texi (Configuration, --enable-x86-64-mfentry): Fix - typo. - -2025-11-13 liuhongt - - * config/i386/i386.md (*ior_ccz_1): New define_insn. - -2025-11-13 Alice Carlotti - - * config/aarch64/driver-aarch64.cc - (host_detect_local_cpu): Extend feature string syntax. - -2025-11-13 Richard Biener - - * tree-ssa-dce.cc (simple_dce_from_worklist): For calls - with side-effects remove their LHS. - -2025-11-13 Andre Vieira - - * config/aarch64/aarch64-simd.md (*eor3q4): New insn to be used by - combine after reload to optimize any grouping of eor's that are using FP - registers for scalar modes. - -2025-11-13 Kuan-Lin Chen - - * config/riscv/riscv-target-attr.cc (riscv_process_target_str): Clean - the final byte of str_to_check. - -2025-11-12 David Malcolm - - PR diagnostics/115970 - * diagnostics/sarif-sink.cc (maybe_open_sarif_sink_for_socket): - Add "%m" to error messages, so that we print the string form of - errno. - -2025-11-12 David Malcolm - - * diagnostics/sarif-sink.cc (class unique_fd): New. - (sarif_socket_sink::sarif_socket_sink): Convert "fd" arg and m_fd - from int to unique_fd. - (~sarif_socket_sink): Drop. - (sarif_socket_sink::dump_kind): Update for m_fd becoming a - unique_fd. - (sarif_socket_sink::m_fd): Convert from "int" to "unique_fd". - (maybe_open_sarif_sink_for_socket): Likewise for "sfd". - -2025-11-12 Philipp Tomsich - - * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add ampere1c. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi: Document the above. - -2025-11-12 Stefan Schulze Frielinghaus - - * config/i386/i386.opt.urls: Regenerate. - * config/s390/s390.opt.urls: Ditto. - * doc/invoke.texi: Add documentation for - -mstack-protector-guard= and -mstack-protector-guard-record. - -2025-11-12 Arsen Arsenović - - * doc/invoke.texi (Diagnostic Message Formatting Options): Add - index entries for SARIF and HTML output formats. - -2025-11-12 Richard Biener - - PR tree-optimization/122653 - * tree-scalar-evolution.cc (interpret_rhs_expr): Handle - POINTER_DIFF_EXPR. - -2025-11-12 Christophe Lyon - Richard Earnshaw - - PR target/122175 - * config/arm/iterators.md (asm_const_size): New mode attr. - * config/arm/mve.md (@mve_q_n_): Use it. - -2025-11-12 Andre Vieira - - PR target/122539 - * config/arm/arm.cc (comp_not_to_clear_mask_str_un): Skip partial - register clearing logic for FP_REGS. - (compute_not_to_clear_mask): Likewise. - -2025-11-12 Andre Vieira - - PR target/122539 - * config/arm/arm.cc (comp_not_to_clear_mask_str_un): Update - not_to_clear_reg_mask for union members. - -2025-11-12 Stefan Schulze Frielinghaus - - * config/s390/s390-opts.h (enum stack_protector_guard): Define - SP_TLS and SP_GLOBAL. - * config/s390/s390.h (TARGET_SP_GLOBAL_GUARD): Define predicate. - (TARGET_SP_TLS_GUARD): Define predicate. - * config/s390/s390.md (stack_protect_global_guard_addr): - New insn. - (stack_protect_set): Also deal with a global guard. - (stack_protect_test): Also deal with a global guard. - * config/s390/s390.opt (-mstack-protector-guard={global,tls}): - New option. - (-mstack-protector-guard-record) New option. - -2025-11-12 Richard Biener - - PR tree-optimization/122647 - * tree-vect-stmts.cc (vectorizable_conversion): Fix guard on - bool to non-bool conversion. - * tree-vect-patterns.cc (vect_recog_bool_pattern): Also handle - FLOAT_EXPR from bool. - -2025-11-12 Kuan-Lin Chen - - * config/riscv/andes-25-series.md: New file. - * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-25-series. - (RISCV_CORE): Add Andes 25-series cpu list. - * config/riscv/riscv-opts.h - (enum riscv_microarchitecture_type): Add andes_25_series_. - * config/riscv/riscv.cc: Add andes_25_tune_info. - * config/riscv/riscv.md: Add andes_25. - * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. - * doc/riscv-mtune.texi: Regenerated for andes-25-series. - -2025-11-11 Andrew Stubbs - - * config/gcn/mkoffload.cc (process_asm): Replace "configure_stack_size" - constructor with a new regular function, "mkoffload_setup". - (process_obj): Call mkoffload_setup from the "init" constructor. - -2025-11-11 David Malcolm - - PR diagnostics/115970 - * diagnostics/sarif-sink.cc: Include and . - (sarif_builder::end_group): Update comment. - (sarif_sink::on_end_group): Drop "final". - (class sarif_socket_sink): New subclass. - (maybe_open_sarif_sink_for_socket): New function. - * diagnostics/sarif-sink.h: (maybe_open_sarif_sink_for_socket): - New decl. - * doc/invoke.texi (EXPERIMENTAL_SARIF_SOCKET): Document new - environment variable. - * toplev.cc: Define INCLUDE_VECTOR. Add include of - "diagnostics/sarif-sink.h". - (toplev::main): Call - diagnostics::maybe_open_sarif_sink_for_socket. - -2025-11-11 Richard Biener - - PR tree-optimization/122587 - * tree-vectorizer.cc (pass_vectorize::execute): Enable - ranger around analysis and code generation. - -2025-11-11 Richard Biener - - * tree-ssa-loop-niter.cc (simplify_using_initial_conditions): - Use the active ranger to simplify boolean expressions. - -2025-11-11 Jeff Law - - * config/riscv/crypto.md (packf splitters): Variant with - operands reversed. Add variants with the ashift/sign extend - exchanged as well. - -2025-11-11 Jeff Law - - * config/riscv/riscv.cc (riscv_extend_to_xmode_reg): Simplify - by using convert_modes + force_reg. - -2025-11-11 Richard Biener - - * gimple-range.cc (gimple_ranger::range_on_edge): Pass - the edge as 'edge' to get_tree_range. - (dom_ranger::range_on_edge): Likewise. - -2025-11-11 Andrew MacLeod - - * value-query.cc (range_query::invoke_range_of_expr): New - edge argument. If set invoke range_on_edge. - (range_query::get_tree_range): Likewise and adjust. - * value-query.h (range_query::invoke_range_of_expr): New - edge argument. - (range_query::get_tree_range): Likewise. - -2025-11-11 Dhruv Chawla - - * match.pd: New patterns. - -2025-11-11 Lulu Cheng - - * doc/extend.texi: Add description for LoongArch function - attributes. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc (loongarch_can_inline_p): - Do not inline when callee is versioned but caller is not. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_option_same_function_versions): Compare the target - attributes in two functions to determine which function’s - features get higher priority. - (TARGET_OPTION_SAME_FUNCTION_VERSIONS): Define. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch-protos.h - (loongarch_parse_fmv_features): Modify the type of parameter. - (loongarch_compare_version_priority): Function declaration. - * config/loongarch/loongarch-target-attr.cc - (enum features_prio): Define LA_PRIO_MAX to indicate the - highest priority of supported attributes. - (loongarch_parse_fmv_features): Added handling of setting - priority in attribute string. - (loongarch_compare_version_priority): Likewise. - * config/loongarch/loongarch.cc - (loongarch_process_target_version_attr): Likewise. - (get_feature_mask_for_version): Likewise. - (loongarch_compare_version_priority): Delete. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_compare_version_priority): Returns true if DECL1 - and DECL2 are versions of the same function. - (TARGET_COMPARE_VERSION_PRIORITY): Define. - -2025-11-11 Lulu Cheng - - * config/loongarch/genopts/gen-evolution.awk: - * config/loongarch/loongarch-evol-attr.def: Regenerate. - * config/loongarch/loongarch-protos.h - (loongarch_parse_fmv_features): Function declaration. - (get_feature_mask_for_version): Likewise. - * config/loongarch/loongarch-target-attr.cc - (enum features_prio): Defining the priority of features. - (struct loongarch_attribute_info): Add members about - features. - (LARCH_ATTR_MASK): Likewise. - (LARCH_ATTR_ENUM): Likewise. - (LARCH_ATTR_BOOL): Likewise. - (loongarch_parse_fmv_features): Parse a function - multiversioning feature string STR. - * config/loongarch/loongarch.cc - (get_suffixed_assembler_name): Return an identifier for the - base assembler name of a versioned function. - (get_feature_mask_for_version): Get the mask and priority of - features. - (add_condition_to_bb): Insert judgment statements for different - features functions. - (dispatch_function_versions): Generates the dispatch function for - multi-versioned functions. - (make_resolver_func): Make the resolver function decl to dispatch - the versions of a multi-versioned function. - (loongarch_generate_version_dispatcher_body): Generate the - dispatcher logic to invoke the right function version at run-time - for a given set of function versions. - (TARGET_GENERATE_VERSION_DISPATCHER_BODY): Define. - * common/config/loongarch/cpu-features.h: New file. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc (INCLUDE_STRING): Include. - (loongarch_mangle_decl_assembler_name): New function. - (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Define. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_get_function_versions_dispatcher): New function. - (TARGET_GET_FUNCTION_VERSIONS_DISPATCHER): Define. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_process_target_version_attr): New function. - (loongarch_option_valid_version_attribute_p): New function. - (TARGET_OPTION_VALID_VERSION_ATTRIBUTE_P): Define. - * config/loongarch/loongarch.h - (TARGET_HAS_FMV_TARGET_ATTRIBUTE): Define it to 0. - -2025-11-11 Lulu Cheng - - * config/loongarch/genopts/gen-evolution.awk: Output the - info needed for handling evolution features when parsing - the target pragma and attribute. - * config/loongarch/genopts/genstr.sh: Add support for - generating *.def files. - * config/loongarch/loongarch-target-attr.cc - (struct loongarch_attribute_info): Add structure member - record option mask. - (LARCH_ATTR_MASK): New macro. - (LARCH_ATTR_ENUM): Likewise. - (LARCH_ATTR_BOOL): Likewise. - (loongarch_handle_option): Support for new options. - (loongarch_process_one_target_attr): Added support for - the la64v1.1 extended instruction set. - * config/loongarch/t-loongarch: Generate loongarch-evol-attr.def. - * doc/extend.texi: Add new attribute description information. - * config/loongarch/loongarch-evol-attr.def: Generate. - -2025-11-11 Lulu Cheng - - * config/loongarch/loongarch-target-attr.cc - (loongarch_process_one_target_attr): Fix ICE. - -2025-11-11 Andrew Pinski - - PR tree-optimization/122629 - * tree-if-conv.cc (factor_out_operators): Reject - BIT_FIELD_REF and BIT_INSERT_EXPR if operand other - than 0 is different. - -2025-11-11 Jakub Jelinek - - PR lto/122620 - * gimplify-me.cc (gimple_regimplify_operands): Don't try to regimplify - TREE_CLOBBER on rhs of gimple_clobber_p if it has gimple_reg_type. - -2025-11-11 Hu, Lin1 - - PR target/122446 - * config/i386/amxavx512intrin.h (_tile_cvtrowps2bf16hi_internal): - Input register name by inline asm %c[...], and remove %% before tmm - from intel side. - (_tile_cvtrowps2bf16li_internal): Ditto. - * config/i386/amxbf16intrin.h (_tile_dpbf16ps_internal): Ditto - * config/i386/amxcomplexintrin.h (_tile_cmmimfp16ps_internal): Ditto - (_tile_cmmrlfp16ps_internal): Ditto - (_tile_cmmimfp16ps): Ditto - (_tile_cmmrlfp16ps): Ditto - * config/i386/amxfp16intrin.h (_tile_dpfp16ps_internal): Ditto - (_tile_dpfp16ps): Ditto - * config/i386/amxfp8intrin.h (_tile_dpbf8ps_internal): Ditto - (_tile_dpbhf8ps_internal): Ditto - (_tile_dphbf8ps_internal): Ditto - (_tile_dphf8ps_internal): Ditto - (_tile_dpbf8ps): Ditto - (_tile_dpbhf8ps): Ditto - (_tile_dphbf8ps): Ditto - (_tile_dphf8ps): Ditto - * config/i386/amxint8intrin.h (_tile_int8_dp_internal): Ditto - * config/i386/amxmovrsintrin.h (_tile_loaddrs_internal): Ditto - (_tile_loaddrst1_internal): Ditto - (_tile_loaddrs): Ditto - (_tile_loaddrst1): Ditto - * config/i386/amxtf32intrin.h (_tile_mmultf32ps_internal): Ditto - * config/i386/amxtileintrin.h (_tile_loadd): Ditto - (_tile_loadd_internal): Ditto - (_tile_stream_loadd): Ditto - (_tile_stream_loadd_internal): Ditto - (_tile_stored): Ditto - (_tile_stored_internal): Ditto - (_tile_zero): Ditto - (_tile_zero_internal): Ditto - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt.urls: Regenerated. - * config/dragonfly.opt.urls: Regenerated. - * config/freebsd.opt.urls: Regenerated. - * config/gcn/gcn.opt.urls: Regenerated. - * config/gnu-user.opt.urls: Regenerated. - -2025-11-10 Sam James - - * acinclude.m4: Quote "$gcc_cv_nm" and friends. - * configure.ac: Ditto. - * configure: Regenerate. - -2025-11-10 Andrew Pinski - - PR middle-end/122605 - * builtins.cc (expand_ifn_atomic_bit_test_and): Split out the call to - build_call_nary into two different statements. - (expand_ifn_atomic_op_fetch_cmp_0): Likewise. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt: Clean up comments/documentation for -fident. - * doc/invoke.texi: Move -Qy/-Qn documentation from System V options - and combine with -fident/-fno-ident entry. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt: Add comments/documentation for -N, -Q, -S, -T, - -Tbss, -Tdata, -Ttext, -Z, -n, -Q, -s, -t, -z. - * doc/invoke.texi: Add documentation for -Tbss, -Tdata, -Ttext, - -N, -n, -t, -Z. - -2025-11-10 Sandra Loosemore - - PR other/122243 - PR rtl-optimization/120064 - * doc/invoke.texi: Document -fconcepts-diagnostics-depth, - -Wdeprecated-copy-dtor, -Wformat-diag, -Wcannot-profile, - -fvar-tracking-uninit, -gno-pubnames, -finline-atomics, - -fext-dce, -fipa-icf-functions, -fipa-icf-variables, - -fprofile, -fdump-internal-locations, and -Wopenacc-dims. - Minor copy-editing and rearrangement of items in the option - summary lists. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * doc/cppdiropts.texi: Document --include-directory, - --include-directory-after, --include-barrier, --include-prefix, - --include-with-prefix, --include-with-prefix-after, - --include-with-prefix-before, --no-standard-includes. - --embed-directory. - * doc/cppopts.texi: Document --define-macro, --undefine-macro, - --include, --imacros, --dependencies, --user-dependencies, - --print-missing-file-dependencies, --write-dependencies, - --write-user-dependencies, --comments, --comments-in-macros, - --no-line-commands, --traditional, --traditional-cpp, - --trigraphs, --trace-includes, --dump. - * doc/invoke.texi: Add missing long options to Option Summary. - Document --language, --compile, --assemble, --preprocess, - --output, --dumpbase, --dumpbase-ext, --dumpdir, - --verbose, --pass-exit-codes, --pipe, --specs, --ansi, - --no-warnings, --pedantic, --pedantic-errors, --all-warnings, - --extra-warnings, --debug, --optimize, --profile, -coverage, - --no-integrated-cpp, --for-assembler, --no-standard-libraries, - --entries, --pie, --static-pie, --static, --shared, --symbolic, - --for-linker, --force-link, --library-directory, --prefix, - --no-canonical-prefixes, --dump, --save-temps, --print-file-name, - --print-multi-directory, --print-multi-lib, - --print-multi-os-directory, --print-multiarch, - --print-prog-name, --print-libgcc-file-name, --print-search-dirs, - --print-sysroot, --print-sysroot-headers-suffix. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * doc/cppopts.texi (-A): Restrict option documentation to the CPP - manual. Also document the --assert form. - * doc/invoke.texi (Option Summary): Don't list the -A option. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (Option Summary): Add missing entries, - also correct alphabetization and formatting of the C++ options. - (C++ Language Options): Fix some formatting issues. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt (fhelp, fhelp=, ftarget-help, fversion): Mark as - "Undocumented". - (fbounds-check): Update comments. - (flag-graphite, fsel-sched-reschedule-pipelined): Mark as - "Undocumented". - (fstack-limit): Add comment. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt (fhelp): Add RejectNegative. - (fhelp=): Likewise. - (ftarget-help): Likewise. - (fversion): Likewise. - (Wno-frame-larger-than): Likewise. - (Wno-larger-than): Likewise. - (Wno-stack-usage): Likewise. - (fdiagnostics-minimum-margin-width=): Likewise. - (flto-incremental=): Likewise. - (foffload=): Likewise. - (foffload-options=): Likewise. - (foffload-abi-host-opts=): Likewise. - (fpatchable-function-entry=): Likewise. - (gno-pubnames): Likewise. - (gpubnames): Likewise. - (ggnu-pubnames): Likewise. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * common.opt (ftree-lrs): Mark as "Ignore". - -2025-11-10 Sandra Loosemore - - PR other/122243 - * doc/cppopts.texi (fcanonical-system-headers): Add @opindex. - * doc/invoke.texi (fdump-ada-spec-slim): Add @opindex. - (fcontract-semantic): Likewise. - (fdiagnostics-plain-output): Likewise. - (Wc11-c2x-compat): Likewise. - (Wvla-parameter): Likewise. - (fanalyzer-verbose-edges): Likewise. - (fanalyzer-verbose-state-changes): Likewise. - (fanalyzer-verbosity): Likewise. - (flimit-function-alignment): Likewise. - -2025-11-10 Sandra Loosemore - - PR other/122243 - * doc/invoke.texi (fdump-analyzer-exploded-nodes): Correct - spelling of option in @opindex. - (fdump-analyzer-exploded-nodes-2): Likewise. - (fdump-analyzer-exploded-nodes-3): Likewise. - (fdump-analyzer-feasibility): Likewise. - (fdump-analyzer-infinite-loop): Likewise. - (fstack-reuse): Likewise. - -2025-11-10 Dimitar Dimitrov - - * config/pru/pru.h (REG_CLASS_CONTENTS): Use unsigned integer - constants. - -2025-11-10 Dimitar Dimitrov - - PR target/122415 - * config/pru/pru-protos.h (pru_fixup_jump_address_operand): - Declare. - * config/pru/pru.cc (pru_fixup_jump_address_operand): New - function. - (pru_addr_space_legitimize_address): New function. - (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Declare. - * config/pru/pru.md (call): Fixup the address operand. - (call_value): Ditto. - (sibcall): Ditto. - (sibcall_value): Ditto. - -2025-11-10 Tejas Belagod - - * config/aarch64/aarch64-sve-builtins.cc (register_builtin_types): Make - SVE vector boolean type equivalent to GNU vectors. - * config/aarch64/aarch64-sve.md (extend2, - zero_extend2, trunc2, vec_cmp): - New patterns to support additional operations on predicate modes. - * config/aarch64/aarch64.cc (aarch64_valid_vector_boolean_op): New. - (aarch64_invalid_unary_op): Consider vector bool types. - (aarch64_invalid_binary_op): Likewise. - (aarch64_convert_to_type): Define target hook and handle standard to - non-standard bool conversion. - -2025-11-10 Richard Earnshaw - - PR target/118460 - * config/arm/arm.md (movhfcc): Use expandable_comparison_operator. - (movsfcc, movdfcc): Likewise. - -2025-11-10 Robin Dapp - - PR middle-end/121985 - * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Only - set niter_vector's range if step == 1. - -2025-11-10 Robin Dapp - - * optabs-query.cc (qimode_for_vec_perm): Check if QImode's - precision divides the inner mode's precision. - -2025-11-10 Robin Dapp - - * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Bail if - offset_vectype is NULL. - -2025-11-10 Robin Dapp - - * tree-vect-slp.cc (vect_load_perm_consecutive_p): New function. - (vect_lower_load_permutations): Use. - (vect_optimize_slp_pass::remove_redundant_permutations): Use. - * tree-vect-stmts.cc (has_consecutive_load_permutation): New - function that uses vect_load_perm_consecutive_p. - (get_load_store_type): Use. - (vectorizable_load): Reduce group size. - * tree-vectorizer.h (struct vect_load_store_data): Add - subchain_p. - (vect_load_perm_consecutive_p): Declare. - -2025-11-08 Avinash Jayakar - - PR tree-optimization/122126 - * gimple-isel.cc (gimple_expand_vec_set_extract_expr): Add bound check. - -2025-11-08 Lulu Cheng - - PR target/122097 - * config/loongarch/loongarch.cc - (loongarch_const_vector_same_bytes_p): Add processing for - floating-point vector data. - -2025-11-08 Avinash Jayakar - - PR tree-optimization/122065 - * tree-vect-generic.cc (target_supports_mult_synth_alg): Add helper to - check mult synth. - (expand_vector_mult): Optimize mult when const is uniform but not - power of 2. - -2025-11-08 Andrew Pinski - - PR tree-optimization/122599 - * tree-scalar-evolution.cc (final_value_replacement_loop): Move - the removal of the phi until after the gimplification of the final - value expression. - -2025-11-07 David Malcolm - - * gdbhooks.py (class AnaSupernodePrinter): New. - (class AnaExplodedNodePrinter): New. - (build_pretty_printer): Register the above. - -2025-11-07 Andrew Pinski - - * tree.cc (build_call_nary): Remove decl. - Add template definition that uses std::initializer_list - and call build_call. - (build_call): New declaration. - * tree.h (build_call_nary): Remove. - (build_call): New function. - -2025-11-07 Robin Dapp - - * config/riscv/autovec.md: Use const_1_operand for scale and - extend predicates. - * config/riscv/riscv-v.cc (expand_gather_scatter): Remove scale - and extension handling. - -2025-11-07 Robin Dapp - - * tree-vect-stmts.cc (vect_use_strided_gather_scatters_p): - Do not convert offset type. - -2025-11-07 Robin Dapp - - * tree-vect-data-refs.cc (struct gather_scatter_config): - Add scale. - (vect_gather_scatter_get_configs): Try various scales. - (vect_gather_scatter_fn_p): Add scale handling. - (vect_check_gather_scatter): Add scale parameter. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Ditto. - (vect_truncate_gather_scatter_offset): Ditto. - (vect_use_grouped_gather): Ditto. - (get_load_store_type): Ditto. - (vectorizable_store): Scale offset if necessary. - (vectorizable_load): Ditto. - * tree-vectorizer.h (struct vect_load_store_data): Add - supported_scale. - (vect_gather_scatter_fn_p): Add argument. - -2025-11-07 Robin Dapp - - * tree-vect-data-refs.cc (struct gather_scatter_config): New - struct to hold gather/scatter configurations. - (vect_gather_scatter_which_ifn): New function to determine which - IFN to use. - (vect_gather_scatter_get_configs): New function to enumerate all - target-supported configs. - (vect_gather_scatter_fn_p): Rework to use - vect_gather_scatter_get_configs and try sign-swapped offset. - (vect_check_gather_scatter): Use new supported offset vectype - argument. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Ditto. - (vect_truncate_gather_scatter_offset): Ditto. - (vect_use_grouped_gather): Ditto. - (get_load_store_type): Ditto. - (vectorizable_store): Convert to sign-swapped offset type if - needed. - (vectorizable_load): Ditto. - * tree-vectorizer.h (struct vect_load_store_data): Add - supported_offset_vectype. - (vect_gather_scatter_fn_p): Add argument. - -2025-11-07 Andrew Pinski - - PR tree-optimization/122588 - * tree-ssa-forwprop.cc (optimize_unreachable): Don't touch - if the condition was already true or false. - -2025-11-07 David Faust - - PR target/122140 - * config/bpf/bpf.cc (bpf_expand_cpymem): Fix off-by-one offset - in backwards loop. Improve src and dest addrs used for the - branch condition. - (emit_move_loop): Improve emitted set insns and remove the - explict temporary register. - -2025-11-07 Richard Biener - - PR tree-optimization/122577 - * tree-vect-stmts.cc (vectorizable_conversion): Allow conversions - from non-mode-precision types. - -2025-11-07 Pan Li - - * match.pd: Leverage usmul_widen_mult by bit_ior based - unsigned SAT_MUL pattern. - -2025-11-07 Pan Li - - * config/riscv/autovec-opt.md (*vwsll_sign_extend_): Add - pattern to combine vsext.vf2 and vslli.vi to vwsll.vi. - -2025-11-07 Richard Biener - - PR tree-optimization/122589 - PR middle-end/122594 - * gimple-iterator.cc (gsi_replace_with_seq): Instead of - removing the last stmt from the sequence with gsi_remove, - split it using gsi_split_seq_before. - (gsi_split_seq_before): Fix bogus documentation. - -2025-11-07 Alfie Richards - - PR target/118328 - * config/aarch64/aarch64.cc (handle_aarch64_vector_pcs_attribute): - Add handling for ARM_PCS_PRESERVE_NONE. - (aarch64_pcs_exclusions): New definition. - (aarch64_gnu_attributes): Add entry for preserve_none and add - aarch64_pcs_exclusions to aarch64_vector_pcs entry. - (aarch64_preserve_none_abi): New function. - (aarch64_fntype_abi): Add handling for preserve_none. - (aarch64_reg_save_mode): Add handling for ARM_PCS_PRESERVE_NONE. - (aarch64_hard_regno_call_part_clobbered): Add handling for - ARM_PCS_PRESERVE_NONE. - (num_pcs_arg_regs): New helper function. - (get_pcs_arg_reg): New helper function. - (aarch64_function_ok_for_sibcall): Add handling for ARM_PCS_PRESERVE_NONE. - (aarch64_layout_arg): Add preserve_none argument lauout.. - (function_arg_preserve_none_regno_p): New helper function. - (aarch64_function_arg): Update to handle preserve_none. - (function_arg_preserve_none_regno_p): Update logic for preserve_none. - (aarch64_expand_builtin_va_start): Add preserve_none layout. - (aarch64_setup_incoming_varargs): Add preserve_none layout. - (aarch64_is_variant_pcs): Update for case of ARM_PCS_PRESERVE_NONE. - (aarch64_comp_type_attributes): Add preserve_none. - * config/aarch64/aarch64.h (NUM_PRESERVE_NONE_ARG_REGS): New macro. - (PRESERVE_NONE_REGISTERS): New macro. - (enum arm_pcs): Add ARM_PCS_PRESERVE_NONE. - * doc/extend.texi (preserve_none): Add docs for new attribute. - -2025-11-07 Pan Li - - * config/riscv/autovec-opt.md (*widen_mul_plus_vx_): Add - new pattern to combine the vwmaccu.vx. - * config/riscv/vector.md (*pred_widen_mul_plus_u_vx_undef): - Add undef define_insn for vmwaccu.vx emiting. - (@pred_widen_mul_plus_u_vx): Ditto. - -2025-11-07 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_sign_extend_if_subreg_prom_p): Determine if the - current operand is SUBREG and if the source of SUBREG is - the sign-extended value. - (loongarch_expand_conditional_move): Optimize. - -2025-11-07 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_canonicalize_int_order_test): Support GT GTU LT - and LTU. - (loongarch_extend_comparands): Expand the scope of op1 from - 0 to all immediate values. - * config/loongarch/loongarch.md - (*sge_): New template. - -2025-11-07 Lulu Cheng - - * config/loongarch/loongarch.cc - (loongarch_legitimize_move): Optimize. - -2025-11-06 Sandra Loosemore - - * doc/invoke.texi (AArch64 Options): Clean up description of - -mbranch-protection= argument. - (ARM Options): Likewise. - -2025-11-06 Alejandro Colomar - - * doc/extend.texi: Move _Countof under 'Syntax Extensions'. - -2025-11-06 Georg-Johann Lay - - PR target/122516 - * config/avr/elf.h (SUPPORTS_SHF_GNU_RETAIN): Define if - HAVE_GAS_SHF_GNU_RETAIN. - -2025-11-06 Jeff Law - - * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): Ignore - assignments of (const_int 0) to a register. They will get propagated - away. - -2025-11-06 Georg-Johann Lay - - * config/avr/avr.cc (avr_output_addr_vec): Output - a valid opcode prior to the first gs() label provided: - - The code is compiled for an arch that has AVR-SD mcus, and - - the function has a "section" attribute, and - - the function has a gs() label addresses switch/case table. - -2025-11-06 Your Name - - PR rtl-optimization/121136 - * config/riscv/riscv.md: Add define_insn to test the - upper bits of a register against zero using sltiu when - the bits are extracted via zero_extract or logial right shift. - Add 3->2 define_splits for gtu/leu cases testing upper bits - against zero. - -2025-11-06 Richard Biener - - * tree-core.h (tree_ssa_name::active_iterated_stmt): Mark - GTY((skip(""))). - -2025-11-06 Richard Biener - - * ssa-iterators.h (imm_use_iterator::name): Add. - (delink_imm_use): When in a FOR_EACH_IMM_USE_STMT iteration - enforce we only remove uses from the current stmt. - (end_imm_use_stmt_traverse): Reset current stmt. - (first_imm_use_stmt): Assert no FOR_EACH_IMM_USE_STMT on - var is in progress. Set the current stmt. - (next_imm_use_stmt): Set the current stmt. - (auto_end_imm_use_fast_traverse): New, lower iteration - depth upon destruction. - (first_readonly_imm_use): Bump the iteration depth. - * tree-core.h (tree_ssa_name::active_iterated_stmt, - tree_ssa_name::fast_iteration_depth): New members when - ENABLE_GIMPLE_CHECKING. - * tree-ssanames.cc (make_ssa_name_fn): Initialize - immediate use verifier bookkeeping members. - -2025-11-06 Richard Biener - - PR tree-optimization/122502 - * ssa-iterators.h (imm_use_iterator::iter_node): Remove. - (imm_use_iterator::next_stmt_use): New. - (next_readonly_imm_use): Adjust checking code. - (end_imm_use_stmt_traverse): Simplify. - (link_use_stmts_after): Likewise. Return the last use - with the same stmt. - (first_imm_use_stmt): Simplify. Set next_stmt_use. - (next_imm_use_stmt): Likewise. - (end_imm_use_on_stmt_p): Adjust. - -2025-11-06 Richard Biener - - * doc/tree-ssa.texi: Update immediate use iterator - documentation. - * ssa-iterators.h: Likewise. - -2025-11-06 Andrew MacLeod - - PR tree-optimization/113632 - * range-op-mixed.h (operator_bitwise_xor): Relocate and adjust. - (operator_bitwise_xor::m_and, m_or, m_not): New. - * range-op.cc (operator_bitwise_xor::fold_range): New. - -2025-11-06 Xi Ruoyao - - * config.gcc: Support --with-cmodel={medium,normal} and make - medium the default for LoongArch, define TARGET_DEFAULT_CMODEL - as the selected value. - * config/loongarch/loongarch-opts.cc: Use TARGET_DEFAULT_CMODEL - instead of hard coding CMODEL_NORMAL. - * doc/install.texi: Document that --with-cmodel= is supported - for LoongArch. - * doc/invoke.texi: Update the document about default code model - on LoongArch. - -2025-11-05 Nathaniel Shead - - PR c++/121574 - * doc/invoke.texi: Document '-Wexpose-global-module-tu-local'. - -2025-11-05 Artemiy Volkov - - * tree-ssa-forwprop.cc (simplify_vector_constructor): Support - vector constructor elements. - * tree-vect-generic.cc (ssa_uniform_vector_p): Make non-static and - move ... - * tree.cc (ssa_uniform_vector_p): ... here. - * tree.h (ssa_uniform_vector_p): Declare it. - -2025-11-05 Richard Biener - - * tree-ssa-forwprop.cc (forward_propagate_addr_expr): - Use gather_imm_use_stmts instead of FOR_EACH_IMM_USE_STMT. - -2025-11-05 Richard Biener - - * gimple.h (gimple::pad): Rename to ... - (gimple::ilf): ... this. - * ssa-iterators.h (gather_imm_use_stmts): Declare. - * tree-ssa-operands.cc (gather_imm_use_stmts): New function. - -2025-11-05 Richard Biener - - * gimple-ssa-isolate-paths.cc (check_loadstore): Set - the volatile flag on the stmt manually. - (find_implicit_erroneous_behavior): Move code transform - outside of FOR_EACH_IMM_USE_STMT iteration. - -2025-11-05 Richard Biener - - * tree-ssa-loop-niter.cc (dump_affine_iv): Use file, not - dump_file when printing. - (debug): New overload for affine_iv. - -2025-11-05 Xi Ruoyao - - * config/loongarch/loongarch.md (cntmap): Change to uppercase. - (popcount2): Modify to a post reload split. - -2025-11-04 Uros Bizjak - - PR target/122390 - * config/i386/i386.md (*add3_carry_2): New insn pattern. - (*add3_carry_0_cc): Ditto. - (*add3_carry_0r_cc): Ditto. - (*sub3_carry_2): Ditto. - (*sub3_carry_0_cc): Ditto. - (*sub3_carry_0r_cc): Ditt. - -2025-11-04 Kees Cook - - * config/arc/builtins.def: Add ATTRS parameter to DEF_BUILTIN - macro calls. Mark mathematical builtins (FFS, FLS, NORM, NORMW, - SWAP) with attr_const, leave others as NULL_TREE. - * config/arc/arc.cc: Add support for builtin function attributes. - Create attr_const using tree_cons. Update DEF_BUILTIN macro to - pass ATTRS parameter to add_builtin_function. - -2025-11-04 Pan Li - - * match.pd: Add usmul_widen_mult helper and referenced by - min based unsigned SAT_MUL pattern. - -2025-11-04 Siddhesh Poyarekar - - PR lto/122515 - * lto-wrapper.cc (debug_objcopy): Set type of INOFF to int64_t. - (run_gcc): Set type of FILE_OFFSET to int64_t. - -2025-11-04 Kishan Parmar - - PR rtl-optimization/93738 - * simplify-rtx.cc (simplify_binary_operation_1): Canonicalize - SUBREG(LSHIFTRT) into LSHIFTRT(SUBREG) when valid. - -2025-11-04 David Malcolm - - PR analyzer/122544 - * diagnostics/paths.cc (event::meaning::maybe_get_verb_str): - Handle the new verbs. - * diagnostics/paths.h (event::meaning::verb): Add new values - for special control flow operations. - (event::meaning::meaning): Add ctor taking just a verb. - -2025-11-03 Uros Bizjak - - PR target/122534 - * config/i386/i386.md (@test_ccno_1): - Use as operand 1 predicate. - (testqi_ccz_1): Use general_operand as operand 1 predicate. - (*testdi_1): Use x86_64_szext_general_operand as operand 1 predicate. - (*testqi_1_maybe_si): Use general_operand as operand 1 predicate. - Add (n,*a) alternative to allow UV pairing for pentium processor. - (*test_1): Use as operand 1 predicate. - -2025-11-03 Sam James - - * configure: Regenerate. - -2025-11-03 Jeff Law - - PR rtl-optimization/122536 - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Fix - guard against variable bit extracts in recent change. - -2025-11-03 Thomas Schwinge - - PR ipa/122512 - * symtab.cc: Fix 'static_assert'. - -2025-11-03 Loeka Rogge - - * config/arc/simdext.md(movv2hi_insn): Change order for movv2hi - for big-endian. - -2025-11-03 Tobias Burnus - - PR libgomp/122281 - PR middle-end/105001 - * gimple.cc (gimple_copy): Add missing unshare_expr for - GIMPLE_OMP_ATOMIC_LOAD and GIMPLE_OMP_ATOMIC_STORE. - -2025-11-03 Alfie Richards - - PR c/122202 - * doc/extend.texi (target function attribute): Update to describe FMV - behaviour. - (target_version function attribute): New section. - (target_clones attribute): Update to descrbe new behaviour with - target_version. - (Function Multiversioning): Update to discuss both target_version and - target based FMV. - -2025-11-03 Kito Cheng - - * config/riscv/riscv.cc (riscv_flatten_aggregate_field): Skip - empty unions and zero-length arrays when flattening aggregate - fields for ABI classification. - (riscv_pass_aggregate_in_fpr_pair_p): Refactor to use separate - field parsing and emit ABI change warning for affected types. - (riscv_pass_aggregate_in_fpr_and_gpr_p): Likewise. - -2025-11-03 Alfie Richards - - * config/aarch64/aarch64-option-extensions.def (dit): New fmv feature. - (dpb): New fmv feature. - (dpb2): New fmv feature. - (memtag): Change to also define an FMV feature. - (ssbs): Change to also define an FMV feature. - (bti): New fmv feature. - * config/aarch64/aarch64.cc (FEAT_SSBS): Add macro. - (FEAT_MEMTAG): Ditto. - -2025-11-03 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (int_iterator ANY_ROUND): - Specify "flag_unsafe_math_optimizations" in the condition of the - UNSPEC_ROUND element. - (int_attr c_round): Remove. - (lsfsi2, *lsfsi2_2x, *lsfsi2_scaled): - Remove " && " from the conditions. - -2025-11-03 Guo Jie - - * config/loongarch/loongarch.cc (loongarch_modes_tieable_p): - Make MODE_FLOAT and MODE_INT tieable. - * config/loongarch/loongarch.md: Adjust constraints. - -2025-11-03 Guo Jie - - * config/loongarch/loongarch.md - (and_load_zero_extend): New combiner. - * config/loongarch/predicates.md - (mask_operand): New predicate. - -2025-11-03 Guo Jie - - * config/loongarch/lasx.md (lasx_xvpermi_q_): - Add new splitter for optimization. - -2025-11-03 Guo Jie - - * config/loongarch/loongarch-protos.h - (loongarch_use_bstrins_bstrpick_for_and): New proto. - * config/loongarch/loongarch.cc - (loongarch_use_bstrins_bstrpick_for_and): Decide whether - to optimize. - (loongarch_rtx_costs): Adjust the cost of AND operation. - * config/loongarch/loongarch.md - (bstrins_bstrpick_for_and_imm): New insn_and_split. - -2025-11-03 Guo Jie - - * config/loongarch/loongarch.cc - (loongarch_can_change_mode_class): Support for conversion - between scalar INT and scalar FP. - -2025-11-03 Guo Jie - - * config/loongarch/loongarch.cc (loongarch_rtx_costs): - Correct the cost of mulh.{w[u]|d[u]}. - -2025-11-03 Tamar Christina - - PR tree-optimization/122475 - * tree-vect-loop.cc (vectorizable_reduction): Check for neutral_op. - -2025-11-03 H.J. Lu - - PR target/90262 - * config/i386/i386-expand.cc (ix86_expand_unroll_movmem): New. - (ix86_expand_n_move_movmem): Likewise. - (ix86_expand_load_movmem): Likewise. - (ix86_expand_store_movmem): Likewise. - (ix86_expand_n_overlapping_move_movmem): Likewise. - (ix86_expand_less_move_movmem): Likewise. - (ix86_expand_movmem): Likewise. - * config/i386/i386-protos.h (ix86_expand_movmem): Likewise. - * config/i386/i386.md (movmem): Likewise. - -2025-11-03 Shreya Munnangi - - PR target/52345 - * simplify-rtx.cc (simplify_relational_operation_1): Optimize boolean - IOR equality tests. - -2025-11-03 chenxiaolong - - * config/loongarch/lasx.md (vec_cast): New template - implemention. - (vec_insert_lo_): Dito. - (vec_insert_hi_): Dito. - * config/loongarch/lasxintrin.h (defined): Test for adding - the builtin function. - (__lasx_cast_128_s): Dito. - (__lasx_cast_128_d): Dito. - (__lasx_cast_128): Dito. - (__lasx_concat_128_s): Dito. - (__lasx_concat_128_d): Dito. - (__lasx_concat_128): Dito. - (__lasx_extract_128_lo_s): Dito. - (__lasx_extract_128_hi_s): Dito. - (__lasx_extract_128_lo_d): Dito. - (__lasx_extract_128_hi_d): Dito. - (__lasx_extract_128_lo): Dito. - (__lasx_extract_128_hi): Dito. - (__lasx_insert_128_lo_s): Dito. - (__lasx_insert_128_hi_s): Dito. - (__lasx_insert_128_lo_d): Dito. - (__lasx_insert_128_hi_d): Dito. - (__lasx_insert_128_lo): Dito. - (__lasx_insert_128_hi): Dito. - * config/loongarch/loongarch-builtins.cc - (CODE_FOR_lasx_extract_128_lo_s): Add builtins and register - icode. - (CODE_FOR_lasx_extract_128_hi_s): Dito. - (CODE_FOR_lasx_extract_128_lo_d): Dito. - (CODE_FOR_lasx_extract_128_hi_d): Dito. - (CODE_FOR_lasx_extract_128_lo): Dito. - (CODE_FOR_lasx_extract_128_hi): Dito. - (CODE_FOR_lasx_insert_128_lo_s): Dito. - (CODE_FOR_lasx_insert_128_hi_s): Dito. - (CODE_FOR_lasx_insert_128_lo_d): Dito. - (CODE_FOR_lasx_insert_128_hi_d): Dito. - (CODE_FOR_lasx_insert_128_lo): Dito. - (CODE_FOR_lasx_insert_128_hi): Dito. - (CODE_FOR_lasx_concat_128_s): Dito. - (CODE_FOR_lasx_concat_128_d): Dito. - (CODE_FOR_lasx_concat_128): Dito. - (CODE_FOR_lasx_cast_128_s): Dito. - (CODE_FOR_lasx_cast_128_d): Dito. - (CODE_FOR_lasx_cast_128): Dito. - (loongarch_expand_builtin_direct): For the newly added - insertion or extraction, construct the parallel parameter - corresponding to the operand. - * config/loongarch/loongarch-c.cc - (loongarch_update_cpp_builtins): Define - __loongarch_asx_sx_conv. - * config/loongarch/loongarch-ftypes.def: Declare the type - of the builtin function. - * doc/extend.texi: Add document description. - -2025-11-03 Lulu Cheng - - * config/loongarch/loongarch.cc (loongarch_move_integer): - No new virtual register is allocated during immediate load. - -2025-11-03 Lulu Cheng - - PR target/122477 - * config/loongarch/loongarch.cc - (loongarch_split_reduction): Added handling of scalar mode. - -2025-11-02 Jeff Law - - * config/riscv/bitmanip.md (rotrsi3): Use the sign extended form - for 32 bit rotates on TARGET_64BIT, even for constant counts. - * config/riscv/thead.md (th_srrisi3_extended): New pattern. - (th_srri3): Adjust formatting. - -2025-11-02 Uros Bizjak - - PR target/122518 - * config/i386/i386.cc (ix86_canonicalize_comparison): Convert - (compare (minus (a b)) a) to (compare (a b)) to - match *sub_3 pattern. - -2025-11-02 Georg-Johann Lay - - PR target/122527 - * config/avr/avr.cc (avr_load_libgcc_p): Return false if - the address-space is not ADDR_SPACE_FLASH. - (avr_out_lpm_no_lpmx [addr=REG]): Handle sizes of 3 and 4 bytes. - -2025-11-02 Georg-Johann Lay - - PR tree-optimization/118012 - PR tree-optimization/122505 - * config/avr/avr.md (mulpsi3): Also allow the insn condition - in the case where avropt_pr118012 && !AVR_TINY. - (*mulpsi3): Handle split for the !AVR_HAVE_MUL case. - (*mulpsi3-nomul.libgcc_split, *mulpsi3-nomul.libgcc): New insns. - -2025-11-02 Richard Biener - - * doc/tree-ssa.texi: Remove outdated info on FOR_EACH_IMM_USE_STMT - iteration, clarify SSA operand parts. - * ssa-iterators.h: Update toplevel comment. - -2025-11-02 Sam James - - * .simplify-rtx.cc.swo: Removed. - -2025-11-01 Shreya Munnangi - - PR target/67731 - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): - Handle IOR of single bit bitfields from the same object. - -2025-11-01 Jeff Law - - * config/riscv/riscv-protos.h (has_vtype_op): Add prototype. - (mask_agnostic_p, get_avl, vsetvl_insn_p): Likewise. - * config/riscv/riscv-vsetvl.cc (has_vtype_op): No longer static. - (vsetvl_insn_p, get_avl_mask_agnostic_p): Likewise. - * config/riscv/riscv.cc (struct last_vcofnig): New structure. - (clear_vconfig): New function. - (compatible_with_last_vconfig, riscv_sched_init): Likewise. - (riscv_sched_reorder): Likewise. - (TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Define. - * config/riscv/vector.md ("*mov"): Set has_vtype_op, has_vl_op - attributes. - * .simplify-rtx.cc.swo: New file. - -2025-11-01 Jeff Law - - PR rtl-optimization/122321 - * lra-constraints.cc (update_equiv): Make sure REGNO is in - ira_reg_equiv before trying to update ira_reg_equiv. - -2025-11-01 Martin Uecker - - * doc/extend.texi: Document new extension. - -2025-11-01 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (negsf2): - Add another insn pattern that is valid when TARGET_DENSITY is - enabled and both the source and destination are address registers. - -2025-11-01 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md - (c_enum "unspec", int_iterator ANY_ROUND): Add UNSPEC_ROUND. - (int_attr m_round): Add a pair of UNSPEC_ROUND and "round". - (int_attr c_round): New integer iterator attribute, that expands - to "flag_unsafe_math_optimizations" in the case of UNSPEC_ROUND, - and to "1" otherwise. - (lsfsi2, *lsfsi2_2x, *lsfsi2_scaled): - Append " && " to the conditions. - -2025-11-01 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (*fix_truncsfsi2_scaled, - *floatsisf2_scaled, *lsfsi2_scaled): - Remove 'F'-constraint. - -2025-11-01 Andrew Pinski - - PR ipa/122512 - * cgraph.h (enum toplevel_type): Add TOPLEVEL_MAX. Add comment - about keeping toplevel_type_names in sync. - * symtab.cc (symtab_type_names): Rename to ... - (toplevel_type_names): Add new types and add an assert about - the size. - (symtab_node::get_symtab_type_string): Use toplevel_type_names - instead of symtab_type_names. - (symtab_node::dump_base): Likewise. - -2025-10-31 Andrew Pinski - - PR tree-optimization/122437 - * fold-const.h (div_if_zero_remainder): Remove. - -2025-10-31 Tamar Christina - - PR target/121853 - * config/aarch64/aarch64-simd.md (extendbfsf2): New. - -2025-10-31 Richard Biener - - PR tree-optimization/122502 - * tree-scalar-evolution.cc (final_value_replacement_loop): - Avoid folding from within FOR_EACH_IMM_USE_STMT due to active - ranger. - -2025-10-31 Andrew Pinski - - PR tree-optimization/122437 - * fold-const.cc (div_if_zero_remainder): Remove. - -2025-10-31 Andrew Pinski - - PR tree-optimization/122497 - * tree-scalar-evolution.cc (final_value_replacement_loop): Call replace_uses_by - only after the replacement statement was created. - -2025-10-31 Lulu Cheng - - * config/loongarch/lasx.md: Support. - * config/loongarch/loongarch.cc - (loongarch_expand_vec_widen_hilo): Remove unused code. - * config/loongarch/lsx.md: Support. - -2025-10-31 Lulu Cheng - - * config/loongarch/lasx.md (ILASX_HB): Move to ... - * config/loongarch/lsx.md (ILSX_HB): Move to ... - * config/loongarch/simd.md (ILSX_HB): ... here. - (ILASX_HB): ... here. - (IVEC_HB): New iterator. - (WVEC_QUARTER): New attr. - (wvec_quarter): Likewise. - (simdfmt_qw): Likewise. - (dot_prod): New template. - -2025-10-31 Lulu Cheng - - * config/loongarch/lasx.md (hi_lo): Move to ... - * config/loongarch/simd.md (hi_lo): ... here. - * config/loongarch/loongarch.cc - (loongarch_expand_vec_widen_hilo): Add 128-bit data processing. - * config/loongarch/lsx.md - (vec_widen___): New define_expand. - (vec_widen_mult__): Likewise. - -2025-10-31 Lulu Cheng - - * config/loongarch/lasx.md (vec_widen_add_hi_): - Move. - (vec_widen_add_lo_): Move. - (vec_widen_sub_hi_): Move. - (vec_widen_sub_lo_): Move. - (vec_widen_mult_hi_): Move. - (vec_widen_mult_lo_): Move. - (hi_lo): New define_int_attr. - (vec_widen___): New define_expand. - (vec_widen_mult__): Likewise. - * config/loongarch/loongarch-protos.h - (loongarch_expand_vec_widen_hilo): Modify the function - parameter list. - * config/loongarch/loongarch.cc - (loongarch_expand_vec_widen_hilo): Optimized. - -2025-10-30 David Faust - - PR debug/122248 - * dwarf2out.cc (gen_btf_tag_dies): Always replace an existing - AT_GNU_annotation on the target die. - -2025-10-30 David Faust - - * btfout.cc (btf_add_used_type_1): Do not consider creating - fixups at typedefs. - -2025-10-30 Michal Jires - - * lto-cgraph.cc (output_symtab): Remove asm_nodes_out. - * lto-streamer-out.cc (lto_output_toplevel_asms): Use - partitioning. - (create_order_remap): Remove asm_nodes_out. - (lto_output): In LGEN add asm_nodes into partition. - * lto-streamer.h (lto_output_toplevel_asms): Add encoder. - -2025-10-30 Michal Jires - - * lto-cgraph.cc (compute_ltrans_boundary): Add asm_node. - -2025-10-30 Michal Jires - - * ipa-icf.cc (sem_item_optimizer::write_summary): Use - toplevel_node. - (sem_item_optimizer::read_section): Likewise. - * ipa-modref.cc (modref_write): Likewise. - * ipa-prop.cc (ipa_write_return_summaries): Likewise. - (ipcp_write_transformation_summaries): Likewise. - * ipa-reference.cc (ipa_reference_write_optimization_summary): - Likewise. - * lto-cgraph.cc (lto_symtab_encoder_new): Likewise. - (lto_symtab_encoder_encode): Likewise. - (lto_symtab_encoder_delete_node): Likewise. - (lto_symtab_encoder_in_partition_p): Likewise. - (lto_set_symtab_encoder_in_partition): Likewise. - (output_refs): Likewise. - (compute_ltrans_boundary): Likewise. - (output_symtab): Likewise. - (output_cgraph_opt_summary): Likewise. - * lto-streamer-out.cc (lto_output): Likewise. - (produce_symtab): Likewise. - (produce_symtab_extension): Likewise. - * lto-streamer.h (struct lto_encoder_entry): Likewise. - (struct lto_symtab_encoder_d): Likewise. - (lto_symtab_encoder_encode): Likewise. - (lto_symtab_encoder_delete_node): Likewise. - (lto_symtab_encoder_in_partition_p): Likewise. - (lto_symtab_encoder_lookup): Likewise. - (lsei_next): Likewise. - (lsei_varpool_node): Likewise. - -2025-10-30 Michal Jires - - * cgraph.h (enum symtab_type): Replace with toplevel_type. - (enum toplevel_type): New. - (struct toplevel_node): New. - (struct asm_node): Inherits from toplevel_node. - (test): New. - (symbol_table::finalize_toplevel_asm): Use constructor. - * coretypes.h (struct toplevel_node): New. - (struct asm_node): New. - * lto-streamer-in.cc (lto_input_toplevel_asms): Add - lto_file_data. - -2025-10-30 Michal Jires - - * cgraph.cc (cgraph_node::release_body): Keep lto_file_data. - (cgraph_node::remove): likewise. - * lto-section-in.cc (lto_free_function_in_decl_state_for_node): - likewise. - * varpool.cc (varpool_node::remove): likewise. - -2025-10-30 Qing Zhao - - * doc/extend.texi: Clarification when the counted_by attribute is applied - on a void pointer. - -2025-10-30 Andrew Pinski - - PR target/116075 - * fold-const-call.cc (fold_const_vec_shl_insert): New function. - (fold_const_call): Call fold_const_vec_shl_insert for CFN_VEC_SHL_INSERT. - * match.pd (`VEC_SHL_INSERT (dup (A), A)`): New pattern. - -2025-10-30 Andrew Pinski - - PR tree-optimization/122247 - * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow phi node for the usage - if the usage of the phi result is just the "same" as the original clobber. - -2025-10-30 Andrew Pinski - - PR tree-optimization/122247 - * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow - use to be a clobber of the same kind to the same lhs. - -2025-10-30 Robin Dapp - - * tree-ssa-loop-niter.cc (shifted_range_nonzero_p): New - function. - (number_of_iterations_cltz): Call new function. - * tree-ssa-loop.cc (pass_scev_cprop::execute): Enable ranger. - -2025-10-30 Robin Dapp - - PR target/122445 - * config/riscv/riscv-avlprop.cc (pass_avlprop::get_vlmax_ta_preferred_avl): - Scale AVL of subreg uses. - -2025-10-30 Artemiy Volkov - - PR tree-optimization/122478 - * match.pd: Fix the view_convert (BIT_FIELD_REF) pattern. - -2025-10-30 Richard Biener - - * config/i386/i386-options.cc (ix86_option_override_internal): - Fix check during opts->x_ix86_move_max initialization. - -2025-10-30 Stefan Schulze Frielinghaus - - PR rtl-optimization/121198 - * lra-constraints.cc (process_alt_operands): Compute least upper - bound of all register classes over all required registers in - order to determine register class for a hard register constraint. - -2025-10-30 Richard Biener - Eric Botcazou - - * tree-vect-slp.cc (vect_get_operand_map): Handle commutative - operands when swapping is requested. - (vect_build_slp_tree_1): Allow STMT_VINFO_REDUC_IDX differences - when operand swapping makes them match and request swapping. - (vect_build_slp_instance): Indicate we have successfully - discovered a SLP reduction group. - -2025-10-30 Uros Bizjak - - PR target/116815 - * config/i386/i386.md (ovf_add_cmp): New code attribute. - (udf_sub_cmp): Ditto. - (ovf_comm): New int iterator. - (*plus_within_3_): New insn and split pattern. - (*minus_within_3): Ditto. - -2025-10-30 Andrew Pinski - - * gimple-fold.cc (gimple_fold_builtin_assume_aligned): Remove. - (gimple_fold_builtin): Don't fold __builtin_assume_aligned - -2025-10-30 Andrew Pinski - - Revert: - 2025-10-27 Andrew Pinski - - PR middle-end/107389 - PR tree-optimization/122086 - * tree-ssa-forwprop.cc (forwprop_may_propagate_copy): New function. - (pass_forwprop::execute): Use forwprop_may_propagate_copy - instead of may_propagate_copy. - -2025-10-30 Richard Biener - - PR tree-optimization/120687 - * tree-vect-slp.cc (vect_optimize_slp_pass::is_compatible_layout): - New overload for checking a whole partition. - (vect_optimize_slp_pass::legitimize): New function trying - a single layout for all partitions for now. - (vect_optimize_slp_pass::run): Try legitimizing to a single - layout before propagating. - (vect_slp_analyze_operations): For dumping deal with - SLP_TREE_SCALAR_STMTS being empty or element zero being NULL. - -2025-10-30 liuhongt - - PR target/122457 - * config/i386/sse.md (VI2_AVX10_2): New mode iterator. - (usdot_prod): Use VI2_AVX10_2 - instead of VI2_AVX512F. - (udot_prod): Ditto. - -2025-10-30 Guo Jie - - * config/loongarch/lasx.md (fnma4): Remove. - * config/loongarch/lsx.md (fnma4): Remove. - * config/loongarch/simd.md (fnma4): Simplify and correct. - -2025-10-30 Jinyang He - Peng Fan - - * config/loongarch/loongarch.cc - (loongarch_expand_conditional_move): Only allow valid binary - op when optimize conditional move. - -2025-10-29 Jeff Law - - Revert: - 2025-10-29 Jeff Law - - PR target/116662 - * config/riscv/riscv.cc (riscv_option_override): Override - default value for destructive interference size. - -2025-10-29 Jeff Law - - Revert: - 2025-10-29 Jeff Law - - PR target/116662 - * config/riscv/riscv.cc (riscv_option_override): Apply correct version - of the patch. - -2025-10-29 Jeff Law - - PR target/116662 - * config/riscv/riscv.cc (riscv_option_override): Apply correct version - of the patch. - -2025-10-29 Jeff Law - - PR target/116662 - * config/riscv/riscv.cc (riscv_option_override): Override - default value for destructive interference size. - -2025-10-29 Andrew MacLeod - - PR tree-optimization/91191 - * gimple-range-op.cc (gimple_range_op_handler): Descend one - operand lower for a VIEW_CONVERT_EXPR. - * range-op-mixed.h (class operator_view): New. - * range-op.cc (range_op_table): Add VIEW_CONVERT_EXPR case. - (operator_view::fold_range): New. - (operator_view::op1_range): New. - (operator_view::update_bitmask): New. - -2025-10-29 Richard Biener - - * tree-vect-slp.cc (vect_analyze_slp): Mark stmts in BB roots - as released after vect_build_slp_instance. - (vect_build_slp_instance): Release scalar_stmts when exiting - early. - -2025-10-29 Lulu Cheng - - PR target/122097 - * config/loongarch/loongarch.cc - (loongarch_const_vector_bitimm_set_p): Add support for vector float. - (loongarch_const_vector_bitimm_clr_p): Likewise. - (loongarch_print_operand): Likewise. - * config/loongarch/simd.md (and3): Likewise. - -2025-10-29 Lulu Cheng - - * config/loongarch/lasx.md (xor3): Delete. - (ior3): Delete. - (and3): Delete. - * config/loongarch/lsx.md (xor3): Delete. - (ior3): Delete. - (and3): Delete. - * config/loongarch/simd.md (xor3): Define. - (ior3): Likewise. - (and3): Likewise. - -2025-10-29 Xi Ruoyao - - * config/loongarch/genopts/loongarch.opt.in (-mbreak-code=): - New. - * config/loongarch/loongarch.opt: Regenerate. - * config/loongarch/loongarch.md (trap): Separate to a - define_insn and a define_expand which takes la_break_code. - * doc/invoke.texi (-mbreak-code=): Document. - * config/loongarch/loongarch.opt.urls: Regenerate. - -2025-10-28 Richard Biener - - * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): - Avoid explicit LOOP_VINFO_IV_EXIT reference. - -2025-10-28 Artemiy Volkov - - * match.pd: Add pattern to simplify view_convert (BIT_FIELD_REF). - -2025-10-28 Kito Cheng - - * config/riscv/riscv.cc (riscv_get_vls_cc_attr): Fix error message - parameter order and add check_only condition. Improve diagnostic - message formatting with proper quoting. - (riscv_handle_rvv_vls_cc_attribute): Anonymize unused node parameter. - -2025-10-28 Avinash Jayakar - - PR tree-optimization/122065 - * tree-vect-generic.cc (add_rshift): Update name and add code parameter. - (add_shift): Update name. - (expand_vector_mult): New lowering for MULT_EXPR. - (expand_vector_divmod): Use updated function name. - (expand_vector_operation): Use updated function name. - -2025-10-27 Andrew Pinski - - * expr.cc (expr_has_boolean_range): New function. - (expand_expr_real_2): Use expr_has_boolean_range instead of - gimple_zero_one_valued_p. - * tree-ssanames.cc (ssa_name_has_boolean_range): Update to take - a gimple STMT. - * tree-ssanames.h (ssa_name_has_boolean_range): Update for the new - argument and default to nullptr. - -2025-10-27 Andrew Pinski - - PR tree-optimization/105749 - PR tree-optimization/80635 - * match.pd (`VCE(zero_one_valued_p) ==\!= 0`): New pattern. - -2025-10-27 Tamar Christina - - PR tree-optimization/122408 - * tree-vect-slp-patterns.cc (vect_validate_multiplication): Cleanup and - document interface. - (complex_mul_pattern::matches, complex_fms_pattern::matches): Update to - new interface. - -2025-10-27 Andrew Stubbs - - PR tree-optimization/104116 - * config/gcn/gcn-valu.md (abs2): New define_expand for - integer vector modes. - -2025-10-27 Richard Biener - - PR middle-end/122325 - * common.opt (flag_default_complex_method): Remove. - * opts.cc (init_options_struct): Default to fortran rules - for complex evaluations. - (finish_options): Remove (re-)instantiating of the frontend - default of the complex evaluation method. - -2025-10-27 Kito Cheng - - * config/riscv/riscv-protos.h (riscv_init_cumulative_args): Add - bool parameter. - * config/riscv/riscv.h (enum riscv_cc): Add RISCV_CC_VLS_V_32, - RISCV_CC_VLS_V_64, RISCV_CC_VLS_V_128, RISCV_CC_VLS_V_256, - RISCV_CC_VLS_V_512, RISCV_CC_VLS_V_1024, RISCV_CC_VLS_V_2048, - RISCV_CC_VLS_V_4096, RISCV_CC_VLS_V_8192, RISCV_CC_VLS_V_16384. - (CUMULATIVE_ARGS): Add abi_vlen field. - * config/riscv/riscv.cc (riscv_handle_rvv_vls_cc_attribute): New - function. - (riscv_gnu_attributes): Add vls_cc attribute entry. - (riscv_attributes): Add riscv_vls_cc attribute entry. - (riscv_flatten_aggregate_field): Add vls_p and abi_vlen parameters - to handle VLS vector types. - (riscv_flatten_aggregate_argument): Update call to - riscv_flatten_aggregate_field. - (riscv_get_vector_arg): Add vls_p parameter for VLS handling. - (riscv_vls_cc_p): New function. - (riscv_get_cc_abi_vlen): New function. - (riscv_valid_abi_vlen_vls_cc_p): New function. - (riscv_get_riscv_cc_by_abi_vlen): New function. - (riscv_get_vls_container_type): New function. - (riscv_pass_vls_in_vr): New function. - (riscv_pass_aggregate_in_vr): New function. - (riscv_get_arg_info): Add VLS calling convention handling. - (riscv_function_arg_advance): Update for VLS calling convention. - (riscv_return_in_memory): Add fntype parameter and initialize - cumulative args properly. - (riscv_v_abi): Add abi parameter. - (riscv_get_vls_cc_attr): New function. - (riscv_vls_cc_function_abi): New function. - (riscv_fntype_abi): Add VLS calling convention detection. - (riscv_asm_output_variant_cc): Update for VLS calling convention. - -2025-10-27 Jeff Law - - PR target/64345 - PR tree-optimization/80770 - * config/riscv/bitmanip.md (_not_const): Turn into a - peephole2 to avoid matching prior to combine. - * ifcvt.cc (noce_try_sign_bit_splat): When costs are equal steer - towards an AND based sequence. - -2025-10-27 Richard Biener - - PR tree-optimization/122419 - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Only - skip noop conversions. - -2025-10-27 Richard Biener - - PR tree-optimization/122435 - * tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): - Also match noop conversions when detecting redundant stores. - -2025-10-27 Guo Jie - - * config/loongarch/loongarch.cc (loongarch_rtx_costs): - Ignore the cost impact of SIGN_EXTEND/ZERO_EXTEND. - -2025-10-27 Guo Jie - - * config/loongarch/loongarch.md (both_non_zero): New combiner. - (both_non_zero_subreg): Ditto. - -2025-10-27 Guo Jie - - * config/loongarch/loongarch.md - (sign_extend_ashift): New combiner. - -2025-10-27 Kito Cheng - - * function-abi.h (NUM_ABI_IDS): Increase from 8 to 12. - -2025-10-27 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (one_cmplsi2): - Rearrange back as an expand pattern. - -2025-10-27 Andrew Pinski - - PR middle-end/107389 - PR tree-optimization/122086 - * tree-ssa-forwprop.cc (forwprop_may_propagate_copy): New function. - (pass_forwprop::execute): Use forwprop_may_propagate_copy - instead of may_propagate_copy. - -2025-10-26 Andrew Pinski - - PR target/122270 - * config/riscv/riscv-vector-builtins-bases.cc (vset::fold): Use the - unshare_expr for the statement that will be added seperately rather - the one which will be used for the replacement. - -2025-10-26 James K. Lowden - - * doc/install.texi: Add libxml2 dependency for COBOL - library. Clarify 128-bit numeric dependency. - -2025-10-26 Gerald Pfeifer - - * poly-int.h: Change struct poly_int to class poly_int. - -2025-10-26 LIU Hao - - PR target/119079 - * config/i386/i386.md: Use `movsxd` to perform SI-to-DI extension in Intel - syntax. - -2025-10-26 Kuan-Lin Chen - - * config/riscv/riscv.cc (riscv_legitimize_move): Append extend. - -2025-10-26 Osama Abdelkader - - * wide-int.h: Fix typo "accomodate" to "accommodate" in comment. - * value-range-storage.h: Likewise. - * tree-vectorizer.h (dr_set_safe_speculative_read_required): - Fix duplicate "the the" to "the" in comment. - -2025-10-25 Sam James - - * doc/extend.texi (nocf_check): Fix syntax errors in example. - -2025-10-25 Jiahao Xu - - * config/loongarch/lasx.md (vec_extract): New define_expand. - (vec_extract_lo_): New define_insn_and_split. - (vec_extract_hi_): New define_insn. - * config/loongarch/loongarch-protos.h (loongarch_check_vect_par_cnst_half) - New function prototype. - * config/loongarch/loongarch.cc (loongarch_split_reduction): - Implement TARGET_VECTORIZE_SPLIT_REDUCTION. - (loongarch_check_vect_par_cnst_half): New function. - * config/loongarch/predicates.md - (vect_par_cnst_low_half): New predicate. - (vect_par_cnst_high_half): New predicate. - -2025-10-24 Andrew MacLeod - - PR tree-optimization/114025 - * gimple-range-fold.cc (fold_using_range::condexpr_adjust): Handle - the same ssa_name in the condition and the COND_EXPR better. - -2025-10-24 Andrew MacLeod - - * range-op.cc (operator_bitwise_and::wi_fold): Split signed - operations crossing zero into 2 operations. - -2025-10-24 Andrew MacLeod - - PR tree-optimization/118254 - PR tree-optimization/114331 - * range-op.cc (operator_cast::fold_range): When VARYING is - reached, update the bitmask if we reach VARYING. - (operator_cast::op1_range): For truncating casts, create a - bitmask bit in LHS. - -2025-10-24 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (call_internal, call_value_internal, - sibcall_internal, sibcall_value_internal): Remove 'n'-constraint. - -2025-10-24 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (*addsubx, *subsi3_from_const, - *xtensa_clamps, *andsi3_const_pow2_minus_one, - *andsi3_const_negative_pow2, *andsi3_const_shifted_mask, - *splice_bits, extvsi_internal, extzvsi_internal, - *extzvsi-1bit_ashlsi3, *extzvsi-1bit_addsubx, insvsi, *lsiu, *ssiu, - *lsip, *ssip, *shift_per_byte_omit_AND_0, *shift_per_byte_omit_AND_1, - *shlrd_const, *shlrd_per_byte_omit_AND, *masktrue_const_bitcmpl, - *masktrue_const_pow2_minus_one, *masktrue_const_negative_pow2, - *masktrue_const_shifted_mask, call_internal, call_value_internal, - sibcall_internal, sibcall_value_internal, entry, - *eqne_zero_masked_bits, *eqne_in_range): Remove 'i'-constraint. - -2025-10-24 Josef Melcr - - PR middle-end/122392 - * attr-callback.cc (callback_build_attr): Remove erroneous - annotation. - -2025-10-24 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): SLP-ify reduction - operation processing a bit more. - -2025-10-24 Richard Biener - - PR tree-optimization/122406 - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Create - the SLP nodes for the conversions around the reduction - operation if required. - -2025-10-24 Paul-Antoine Arras - - PR fortran/121452 - * omp-low.cc (check_omp_nesting_restrictions): Accept an - OMP_STRUCTURED_BLOCK in a collapsed simd region and in an ordered loop. - -2025-10-24 Pengfei Li - - * match.pd: Fold VEC_PERM_EXPR chains implementing vector - concat-and-extract. - -2025-10-24 Olivier Hainque - - * config/rs6000/vxworks.h (SET_CMODEL): Undefine before - (re)defining. - -2025-10-23 Andrew Pinski - - * match.pd (`(type1)x CMP CST1 ? (type2)x : CST2`): Better handling - of `((signed)x) < 0`. - -2025-10-23 Andrew Pinski - - PR tree-optimization/101024 - * tree-ssa-phiopt.cc (match_simplify_replacement): Special - case fp `a CMP b ? a : b` when not creating a min/max. - (strip_bit_not): Remove. - (invert_minmax_code): Remove. - (minmax_replacement): Remove. - (pass_phiopt::execute): Update pass comment. - Don't call minmax_replacement. - -2025-10-23 Andrew Pinski - - PR tree-optimization/101024 - * fold-const.cc (minmax_from_comparison): New version that takes widest_int - instead of tree. - (minmax_from_comparison): Call minmax_from_comparison for integer cst case. - * fold-const.h (minmax_from_comparison): New declaration. - * match.pd (`((signed)a = 0) ? min/max (a, c) : b`): New pattern. - -2025-10-23 Alfie Richards - - * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Add - __HAVE_FUNCTION_MULTI_VERSIONING macro. - -2025-10-23 Alfie Richards - - * config/aarch64/aarch64.cc (dispatch_function_versions): Remove - unnecessary sorting and data structure. - -2025-10-23 Alfie Richards - - PR target/122190 - * config/aarch64/aarch64.cc (compare_feature_masks): Fix version rules. - -2025-10-23 Alfie Richards - - * config/aarch64/aarch64.cc (aarch64_generate_version_dispatcher_body): - Dump function versions and the ordering. - -2025-10-23 zhaozhou - - * match.pd: Add new pattern for round. - -2025-10-23 Richard Biener - - * tree-vectorizer.h (_loop_vec_info::slp_unrolling_factor): Remove. - (LOOP_VINFO_SLP_UNROLLING_FACTOR): Likewise. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Adjust. - (vect_analyze_loop_2): Likewise. - * tree-vect-slp.cc (vect_make_slp_decision): Set - LOOP_VINFO_VECT_FACTOR directly. - -2025-10-23 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop_2): Move vect_optimize_slp - after applying suggested_unroll_factor. - -2025-10-23 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop_2): Deal with NULL - element in SLP_TREE_SCALAR_STMTS. - -2025-10-23 liuhongt - - PR target/101639 - * config/i386/sse.md - (VI_AVX): New mode iterator. - (VI_AVX_CMP): Ditto. - (ssebytemode): Add V16HI, V32QI, V16QI. - (reduc_sbool_and_scal_): New expander. - (reduc_sbool_ior_scal_): Ditto. - (reduc_sbool_xor_scal_): Ditto. - (*eq3_2_negate): New pre_reload splitter. - (*ptest_ccz): Ditto. - -2025-10-23 liuhongt - - PR target/101639 - * config/i386/sse.md - (reduc_sbool_and_scal_): New expander. - (reduc_sbool_ior_scal_): Ditto. - (reduc_sbool_xor_scal_): Ditto. - -2025-10-22 H.J. Lu - - * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use - HOST_WIDE_INT_0U and HOST_WIDE_INT_M1U to initialize unsigned - HOST_WIDE_INT. - -2025-10-22 Tamar Christina - - * config/aarch64/aarch64-simd.md (reduc_sbool_and_scal_, - reduc_sbool_ior_scal_, reduc_sbool_xor_scal_): Use SVE if - available. - * config/aarch64/aarch64-sve.md (*cmp_ptest): Rename ... - (@aarch64_pred_cmp_ptest): ... To this. - (reduc_sbool_xor_scal_): Rename ... - (@reduc_sbool_xor_scal_): ... To this. - -2025-10-22 Tamar Christina - - * config/aarch64/aarch64-simd.md (reduc_sbool_and_scal_, - reduc_sbool_ior_scal_, reduc_sbool_xor_scal_): New. - * config/aarch64/iterators.md (VALLI): New. - -2025-10-22 Tamar Christina - - * config/aarch64/aarch64-sve.md (reduc_sbool_and_scal_, - reduc_sbool_ior_scal_, reduc_sbool_xor_scal_): New. - -2025-10-22 Tamar Christina - - * tree-vect-loop.cc (vectorizable_reduction): Don't always require - IFN_VEC_SHL_INSERT when using reduc sbool optabs. - -2025-10-22 Srinath Parvathaneni - - * config/aarch64/aarch64.opt.urls: Regenerate. - -2025-10-22 Richard Biener - - PR tree-optimization/122364 - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Re-try - linearization on a conversion source. - -2025-10-22 Richard Biener - - PR tree-optimization/122370 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Also update compute_vectype when demoting masks to an - integer vector. - -2025-10-22 Richard Biener - - PR tree-optimization/122371 - * tree-vect-loop.cc (vectorize_fold_left_reduction): Get - to the scalar def to replace via the scalar PHI backedge def. - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Do not - re-associate to for a reduction chain if a fold-left - reduction is required. - -2025-10-22 Richard Biener - - PR tree-optimization/122365 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Convert all inputs. Use the proper vector element sizes - for the elementwise reduction. - -2025-10-22 Haochen Jiang - - * common/config/i386/cpuinfo.h - (get_intel_cpu): Handle Nova Lake. - * common/config/i386/i386-common.cc (processor_name): - Add Nova Lake. - (processor_alias_table): Ditto. - * common/config/i386/i386-cpuinfo.h (enum processor_types): - Add INTEL_COREI7_NOVALAKE. - * config.gcc: Add -march=novalake. - * config/i386/driver-i386.cc (host_detect_local_cpu): Handle - novalake. - * config/i386/i386-c.cc (ix86_target_macros_internal): Ditto. - * config/i386/i386-options.cc (processor_cost_table): Ditto. - (m_NOVALAKE): New. - (m_CORE_HYBRID): Add novalake. - * config/i386/i386.h (enum processor_type): Ditto. - * doc/extend.texi: Ditto. - * doc/invoke.texi: Ditto. - -2025-10-22 Haochen Jiang - - * config/i386/driver-i386.cc (host_detect_local_cpu): Correct - the logic for unknown model number cpu guess value. - -2025-10-22 liuhongt - - PR target/122320 - * config/i386/sse.md (*_cmp3_dup_op): New define_insn_and_split. - -2025-10-22 Antoni Boucher - - * config/i386/i386-jit.cc: Mark new float types as supported. - -2025-10-21 Antoni Boucher - - * config.gcc (jit_target_objs): Don't set this variable since - the object files don't exist. - -2025-10-21 Roger Sayle - - * config/i386/i386-features.cc (timode_concatdi_p): New - function to recognize the various variants of *concatditi3_[1-7]. - (scalar_chain::add_insn): Like VEC_SELECT, ZERO_EXTEND and - timode_concatdi_p instructions don't require their input - operands to be converted (to TImode). - (timode_scalar_chain::compute_convert_gain): Split/clone XOR and - IOR cases from AND case, to handle timode_concatdi_p costs. - : Handle timode_concatdi_p conversion costs. - : Provide costs of DImode to TImode extension. - (timode_convert_concatdi): Helper function to transform - a *concatditi3 instruction into a vec_concatv2di instruction. - (timode_scalar_chain::convert_insn): Split/clone XOR and IOR - cases from ANS case, to handle timode_concatdi_p using the new - timode_convert_concatdi helper function. - : Convert zero_extendditi2 to *vec_concatv2di_0. - : Handle timode_concatdi_p using the new - timode_convert_concatdi helper function. - (timode_scalar_to_vector_candidate_p): Support timode_concatdi_p - instructions in IOR, XOR and PLUS cases. - : Consider zero extension of a register from - DImode to TImode to be a candidate. - -2025-10-21 Richard Biener - - PR tree-optimization/120687 - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): When - there's no natural reduction chain see if vect_slp_linearize_chain - can recover one and built the SLP instance manually in that - case. - (vect_schedule_slp): Deal with NULL lanes when looking for - stores to remove. - * tree-vect-loop.cc (vect_transform_cycle_phi): Dump when we - are successfully transforming a reduction chain. - -2025-10-21 Richard Biener - - * tree-vect-loop.cc (vect_create_partial_epilog): Pun back - to the requested type if necessary. - -2025-10-21 Andrew Pinski - - PR tree-optimization/95699 - PR tree-optimization/101024 - PR tree-optimization/110068 - * match.pd (`(type1)x CMP CST1 ? (type2)x : CST2`): Treat - `(signed)x = 0` as `x >=/< SIGNED_TYPE_MIN` - -2025-10-21 Olivier Hainque - - * config/rs6000/vxworks.h (ASM_PREFERRED_EH_DATA_FORMAT): - Redefine. - -2025-10-21 Olivier Hainque - - * config/vxworks.h (VXWORKS_ADDITIONAL_CPP_SPEC): - Remove guard on -fself-tests and replace %:getenv(VSB_DIR) by - sysroot references. - -2025-10-20 Josef Melcr - - * ipa-fnsummary.cc (redirect_to_unreachable): Purge callback - edges when redirecting the carrying edge. - (analyze_function_body): Fix typo. - -2025-10-20 Svante Signell - - PR go/104290 - * config/gnu.h (OPTION_GLIBC_P, OPTION_GLIBC): Define. - -2025-10-20 Takayuki 'January June' Suwa - - * config/xtensa/constraints.md (R, U): - Change define_memory_constraint to define_special_memory_constraint. - * config/xtensa/xtensa.md - (movsi_internal, movhi_internal, movqi_internal): - Rearrange their alternatives in the order of constant assignment, register- - register move, load, store and special. And also consolidate overlapping - alternatives. - (movsf_internal): Rearrange the alternatives as above, and remove the '^' - alternative character which is no longer needed. - -2025-10-20 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc - (constantsynth_method_const16): New. - (constantsynth_methods): Append constantsynth_method_const16(). - (constantsynth_info): Add cost calculation for full-word constant - assignment when TARGET_CONST16 is enabled. - (constantsynth_pass1): Change it so that it works regardless of - TARGET_CONST16. - * config/xtensa/xtensa.md (*xtensa_const16): New. - -2025-10-20 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (do_largeconst): - Change split_DI_SF_DF_const() to be called unconditionally. - -2025-10-20 Olivier Hainque - - * config.gcc (powerpc*-wrs-vxworks7r*): Add linux-protos.h - to tm_p_file. - -2025-10-20 Olivier Hainque - - * config/vxworks.h (VXWORKS_OS_CPP_BUILTINS): Only - builtin_define TOOL and TOOL_FAMILY for !TARGET_VXWORKS7. - Augment comment on VXWORKS_PERSONALITY. - * config/vxworks/vxworks-predef.h: Infer TOOL and TOOL_FAMILY - from the VSB autoconf.h when we have one, determined by the presence - of a _VSB_CONFIG_FILE definition. - -2025-10-20 Srinath Parvathaneni - - * config/aarch64/aarch64-elf.h (ASM_SPEC): Update the macro. - * config/aarch64/aarch64.cc (aarch64_valid_sysreg_name_p): - Add feature check condition. - (aarch64_retrieve_sysreg): Likewise. - * config/aarch64/aarch64.opt (menable-sysreg-checking): - Define new flag. - * doc/invoke.texi (menable-sysreg-checking): Document new flag. - -2025-10-20 Richard Biener - - PR tree-optimization/121631 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - When the reduction operation invokes UB on signed overflow - make sure to perform operations with it on an unsigned type. - -2025-10-20 Richard Biener - - PR tree-optimization/101639 - PR tree-optimization/103495 - * tree-vectorizer.h (vect_reduc_info_s): Add reduc_type_for_mask. - (VECT_REDUC_INFO_VECTYPE_FOR_MASK): New. - * tree-vect-patterns.cc (vect_determine_mask_precision): - Return whether the mask precision changed. - (vect_determine_precisions): Iterate mask precision computation - for loop vectorization. - * tree-vect-loop.cc (get_initial_defs_for_reduction): Properly - convert non-mask initial values to a mask initial def for - the reduction. - (sbool_reduction_fn_for_fn): New function. - (vect_create_epilog_for_reduction): For a mask input convert - it to the vector type analysis decided to use. Use a regular - conversion for the final convert to the scalar code type. - (vectorizable_reduction): Support mask reductions. Verify - we can compute a data vector from the mask result or a direct - maks reduction is provided by the target. - -2025-10-20 Richard Biener - - * doc/md.texi (reduc_sbool_{and,ior,xor}_scal_): Document. - * optabs.def (reduc_sbool_and_scal_optab, - reduc_sbool_ior_scal_optab, reduc_sbool_xor_scal_optab): New. - * internal-fn.def (REDUC_SBOOL_AND, REDUC_SBOOL_IOR, - REDUC_SBOO_XOR): Likewise. - * internal-fn.cc (reduc_sbool_direct): New initializer. - (expand_reduc_sbool_optab_fn): New expander. - (direct_reduc_sbool_optab_supported_p): New. - -2025-10-20 H.J. Lu - - PR target/99930 - PR target/122323 - * config/i386/i386-expand.cc (ix86_expand_copysign): Swap - operands[1] with operands[2]. Optimize copysign (x, const_double) - instead of copysign (const_double, x). - * config/i386/i386.md (copysign3): Swap constraints for - operands[1] and operands[2]. - -2025-10-19 Georg-Johann Lay - - * config/avr/avr.cc (avr_nonzero_bits_lsr_operands_p): Also - handle PLUS. - * config/avr/avr.md (pixaop): New code iterator for PLUS, - IOR, XOR, AND. - (nzb=1 insns): Use pixaop instead of bitop code iterator. - Handle PLUS in outputs. - -2025-10-18 Mark Wielaard - - * common.opt.urls: Regenerate. - -2025-10-18 Iain Sandoe - - PR c++/119060 - * builtins.cc (expand_builtin): Handle BUILT_IN_OBSERVABLE_CHKPT. - * builtins.def (BUILT_IN_OBSERVABLE_CHKPT): New. - * tree.cc (build_common_builtin_nodes): Build observable - checkpoint builtin. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/aarch64/aarch64-sve2.md - (widen_ssum3): Update. - (widen_usum3): Update. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/aarch64/aarch64-sve2.md: (widen_ssum3): New. - (widen_usum3): New. - * config/aarch64/iterators.md (Vnarrow): New, to match VNARROW. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/aarch64/aarch64-sve.md (widen_sum3): New. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/rs6000/altivec.md (widen_usum3): Rename ... - (widen_usumv4si3): ... to this. - (widen_ssumv16qi3): Rename ... - (widen_ssumv4siv16qi3): ... to this. - (widen_ssumv8hi3): Rename ... - (widen_ssumv4siv8hi3): ... to this. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/ia64/vect.md (widen_usumv8qi3): Renamed ... - (widen_usumv4hiv8qi3): ... into this. - (widen_usumv4hi3): Renamed ... - (widen_usumv2siv4hi3): ... into this. - (widen_ssumv8qi3): Renamed ... - (widen_ssumv4hiv8qi3): ... into this. - (widen_ssumv4hi3): Renamed ... - (widen_ssumv2siv4hi3): ... into this. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/arm/iterators.md (v_double_width): New, matching - V_double_width. - * config/arm/neon.md (widen_ssum3): Renamed ... - (widen_ssum3, widen_ssum3): ... - into these. - (widen_usum3): Renamed ... - (widen_usum3, widen_usum3): ... - into these. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/aarch64/aarch64-simd.md (widen_ssum3): New. - (widen_usum3): New. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * config/aarch64/aarch64-simd.md (widen_ssum3): Change into.. - (widen_ssum3, widen_ssum3): ... these. - (widen_usum3): Change into ... - (widen_usum3, widen_usum3): ... these. - * config/aarch64/iterators.md (Vdblw): New. - (Vwide): Extend to match VWIDE. - -2025-10-18 Tamar Christina - - PR middle-end/122069 - * doc/md.texi (widen_ssum@var{n}@var{m}3, widen_usum@var{n}@var{m}3): - Update docs. - * optabs.cc (expand_widen_pattern_expr): Add WIDEN_SUM_EXPR as widening. - * optabs.def (ssum_widen_optab, usum_widen_optab): Convert from direct - to a conversion optab. - * tree-vect-patterns.cc (vect_recog_widen_sum_pattern): Change - vect_supportable_direct_optab_p into vect_supportable_conv_optab_p. - -2025-10-18 Linsen Zhou - - PR tree-optimization/122012 - * tree-object-size.cc (check_for_plus_in_loops): Skip check - for the variable offset - -2025-10-17 David Faust - - PR target/122139 - * config/bpf/bpf.cc (bpf_expand_setmem): Duplicate byte value - across to new mode when using larger modes for store. - -2025-10-17 Tamar Christina - Jennifer Schmitz - - PR target/121604 - * config/aarch64/aarch64-sve-builtins-shapes.cc (apply_predication): - Store gp_index. - (struct pmov_to_vector_lane_def): Mark instruction as has no GP. - * config/aarch64/aarch64-sve-builtins.h (function_instance::gp_value, - function_instance::inactive_values, function_instance::gp_index, - function_shape::has_gp_argument_p): New. - * config/aarch64/aarch64-sve-builtins.cc (gimple_folder::fold_pfalse): - Simplify code and use GP helpers. - -2025-10-17 Richard Biener - - PR tree-optimization/122308 - * gimple-loop-jam.cc (tree_loop_unroll_and_jam): Do LIM - after applying unroll-and-jam. - -2025-10-17 Josef Melcr - - * Makefile.in: Add attr-callback.o to OBJS. - * builtin-attrs.def (ATTR_CALLBACK): Callback attr identifier. - (DEF_CALLBACK_ATTRIBUTE): Macro for callback attr creation. - (GOMP): Attr for libgomp functions. - (ATTR_CALLBACK_GOMP_LIST): ATTR_NOTHROW_LIST with GOMP callback - attr added. - * cgraph.cc (cgraph_add_edge_to_call_site_hash): Always hash the - callback-carrying edge. - (cgraph_node::get_edge): Always return the callback-carrying - edge. - (cgraph_edge::set_call_stmt): Add cascade for callback edges. - (symbol_table::create_edge): Allow callback edges to share call - stmts, initialize new flags. - (cgraph_edge::make_callback): New method, derives a new callback - edge. - (cgraph_edge::get_callback_carrying_edge): New method. - (cgraph_edge::first_callback_edge): Likewise. - (cgraph_edge::next_callback_edge): Likewise. - (cgraph_edge::purge_callback_edges): Likewise. - (cgraph_edge::redirect_callee): When redirecting a callback - edge, redirect its ref as well. - (cgraph_edge::redirect_call_stmt_to_callee): Add callback edge - redirection logic, set update_derived_edges to true hwne - redirecting the carrying edge. - (cgraph_node::remove_callers): Add cascade for callback edges. - (cgraph_edge::dump_edge_flags): Print callback flags. - (cgraph_node::verify_node): Add sanity checks for callback - edges. - * cgraph.h: Add new 1 bit flags and 16 bit callback_id to - cgraph_edge class. - * cgraphclones.cc (cgraph_edge::clone): Copy over callback data. - * cif-code.def (CALLBACK_EDGE): Add CIF_CALLBACK_EDGE code. - * ipa-cp.cc (purge_useless_callback_edges): New function, - deletes callback edges when necessary. - (ipcp_decision_stage): Call purge_useless_callback_edges. - * ipa-fnsummary.cc (ipa_call_summary_t::duplicate): Add - an exception for callback edges. - (analyze_function_body): Copy over summary from carrying to - callback edge. - * ipa-inline-analysis.cc (do_estimate_growth_1): Skip callback - edges when estimating growth. - * ipa-inline-transform.cc (inline_transform): Add redirection - cascade for callback edges. - * ipa-param-manipulation.cc - (drop_decl_attribute_if_params_changed_p): New function. - (ipa_param_adjustments::build_new_function_type): Add - args_modified out param. - (ipa_param_adjustments::adjust_decl): Drop callback attrs when - modifying args. - * ipa-param-manipulation.h: Adjust decl of - build_new_function_type. - * ipa-prop.cc (ipa_duplicate_jump_function): Add decl. - (init_callback_edge_summary): New function. - (ipa_compute_jump_functions_for_edge): Add callback edge - creation logic. - * lto-cgraph.cc (lto_output_edge): Stream out callback data. - (input_edge): Input callback data. - * omp-builtins.def (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC): Use new - attr list. - (BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED): Likewise. - (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_DYNAMIC): Likewise. - (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME): Likewise. - (BUILT_IN_GOMP_PARALLEL): Likewise. - (BUILT_IN_GOMP_PARALLEL_SECTIONS): Likewise. - (BUILT_IN_GOMP_TEAMS_REG): Likewise. - * tree-core.h (ECF_CB_1_2): New constant for callback(1,2). - * tree-inline.cc (copy_bb): Copy callback edges when copying the - carrying edge. - (redirect_all_calls): Redirect callback edges. - * tree.cc (set_call_expr_flags): Create callback attr according - to the ECF_CB flag. - * attr-callback.cc: New file. - * attr-callback.h: New file. - -2025-10-17 Richard Biener - - PR tree-optimization/122301 - * tree-vect-patterns.cc (vect_recog_over_widening_pattern): - Fix reduction guard. - (vect_mark_pattern_stmts): Fix reduction def check. - -2025-10-17 Avinash Jayakar - - PR tree-optimization/104116 - * tree-vect-patterns.cc (add_code_for_floorceilround_divmod): patt recog - for {FLOOR,ROUND,CEIL}_{DIV,MOD}_EXPR. - (vect_recog_divmod_pattern): Call add_code_for_floorceilround_divmod - after computing div/mod for each control path. - -2025-10-17 Andrew Pinski - - PR tree-optimization/122296 - * match.pd (`(a != b) | ((a|b) != 0)`): Reuse both - the ior and zero instead of recreating them. - (`(a == b) & ((a|b) == 0)`): Likewise - -2025-10-17 Andrew Pinski - - PR tree-optimization/122296 - * match.pd (`(a == b) | ((a|b) != 0)`): Fix true value. - -2025-10-17 Hu, Lin1 - - PR target/122119 - * config/i386/amxmovrsintrin.h - (_tile_loaddrs_internal): Use __PTRDIFF_TYPE__ instead of long. - (_tile_loaddrst1_internal): Ditto. - -2025-10-16 David Malcolm - - * 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 - - * 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 - -2025-10-16 Richard Biener - - 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 - - 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 - - * 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 - - * print-tree.cc (print_node): Print out clique/base - for MEM_REF and TARGET_MEM_REF. - -2025-10-15 Richard Earnshaw - - 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 - - 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 - - * 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 - - * 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 - - 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 - - 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 - - * 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 - - * 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 - - * config/i386/i386.h - (PTA_PANTHERLAKE): Remove PREFETCHI. - (PTA_DIAMONDRAPIDS): Remove USER_MSR. - * doc/invoke.texi: Correct documentation. - -2025-10-15 Pan Li - - * config/riscv/autovec-opt.md: Take concrete op instead - of any_widen_binop for vwaddu/vwsubu wx combine. - -2025-10-14 Richard Biener - - * 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 - - * tree-vect-slp.cc (vect_analyze_slp_reduction): Move - reduction chain discovery ... - (vect_analyze_slp_reduc_chain): ... here. - -2025-10-14 Richard Biener - - * 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 - - PR tree-optimization/121949 - * tree-vect-patterns.cc (vect_recog_vector_vector_shift_pattern): Remove - restriction on internal_def. - -2025-10-14 Robin Dapp - - * 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 - - * 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 - - * 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 - - * tree-ssa-phiopt.cc (pass_phiopt::execute): Disable - cselim-limited and factor out operations for -Og. - -2025-10-14 Andrew Pinski - - PR tree-optimization/122178 - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Handle - clobber statements. - -2025-10-14 Andrew Pinski - - 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 - - * 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 - - PR target/120811 - * config/riscv/riscv.cc (synthesize_add): Exchange constant terms when - generating addi pairs. - (synthesize_addsi): Similarly. - * config/riscv/riscv.md (addptr3): New define_expand. - (*add3_const_sum_of_two_s12): Remove pattern. - -2025-10-13 Jeff Law - - PR target/120674 - * config/riscv/riscv.cc (riscv_dwarf_poly_indeterminite_value): Do not - set FACTOR to zero, for that case use one instead. - -2025-10-13 Pan Li - - * match.pd: Add simplifed pattern for widen_mul based unsigned - SAT_MUL. - -2025-10-13 Jan Hubicka - - * ipa-inline.cc (max_count): Remove. - (has_nonzero_ipa_profile): New. - (inline_small_functions): Update. - (dump_inline_stats): Update. - -2025-10-13 Robin Dapp - - PR target/118019 - * internal-fn.cc (get_supported_else_vals): Exit at invalid - index. - (internal_strided_fn_supported_p): New funtion. - * internal-fn.h (internal_strided_fn_supported_p): Declare. - * tree-vect-stmts.cc (vector_vector_composition_type): - Add vector_only argument. - (vect_use_grouped_gather): New function. - (vect_get_store_rhs): Adjust docs of - vector_vector_composition_type. - (get_load_store_type): Try grouped gather. - (vectorizable_store): Use punned vectype. - (vectorizable_load): Ditto. - * tree-vectorizer.h (struct vect_load_store_data): Add punned - vectype. - -2025-10-13 Avinash Jayakar - - PR tree-optimization/122213 - * match.pd: Canonicalize unsigned pow2 div only for trunk, floor and - exact div. - -2025-10-13 Richard Biener - - * tree-vect-patterns.cc (integer_type_for_mask): Add optional - output dt argument. - (vect_recog_bool_pattern): Make sure to not apply the bitwise - binary pattern to an external operand. - -2025-10-11 Bohan Lei - - PR target/119587 - * config/riscv/thead.md (*th_memidx_operand): New splitter. - -2025-10-11 Georg-Johann Lay - - * coretypes.h (enum artificial_rodata): New enum type. - * doc/tm.texi: Rebuild. - * doc/tm.texi.in (TARGET_ADDR_SPACE_FOR_ARTIFICIAL_RODATA): - New hook. - * target.def (addr_sapce.for_artificial_rodata): New DEFHOOK. - * targhooks.cc (default_addr_space_convert): New function. - * targhooks.h (default_addr_space_convert): New prototype. - * tree-switch-conversion.cc (build_one_array) : - Set type_quals address-space according to - targetm.addr_space.for_artificial_rodata(). - * config/avr/avr.cc (avr_rodata_in_flash_p): Move up. - (TARGET_ADDR_SPACE_FOR_ARTIFICIAL_RODATA): Define to... - (avr_addr_space_for_artificial_rodata): ...this new function. - * common/config/avr/avr-common.cc (avr_option_optimization_table): - Adjust -ftree-switch-conversion comment. - -2025-10-11 Austin Law - - * config/riscv/sync.md (lrsc_atomic_fetch_): - Adjust operand predicate/constraint to allow simm12 operands - where valid. Adjust output template accordingly. - (subword_atomic_fech_strong_): Likewise. - (subword_atomic_fetch_strong_nand): Likewise. - (subword_atomic_exchange_strong): Likewise. - (subword_atomic_cas_strong): Likewise. - -2025-10-10 David Faust - - PR target/122141 - * config/bpf/bpf.cc (bpf_expand_cbranch): Use swap_condition - rather than reverse_condition when reversing jump condition to - work around missing instructions in very old BPF ISAs. - -2025-10-10 Andrew Pinski - - * tree-ssa-forwprop.cc (do_simple_agr_dse): New function. - (pass_forwprop::execute): Call do_simple_agr_dse for clobbers. - -2025-10-10 Umesh Kalvakuntla - - * common/config/i386/cpuinfo.h (get_amd_cpu): Fix znver5 family - model numbers. - (get_available_features): Set FEATURE_PREFETCHI for bit_AMD_PREFETCHI. - * config/i386/cpuid.h (bit_AMD_PREFETCHI): New Macro. - -2025-10-10 Pan Li - - * config/riscv/autovec-opt.md (*widen_wsubu_wx_): Add new - pattern to match vwsubu.wx. - -2025-10-10 Juergen Christ - - * config/s390/vector.md (fmax3): Restrict to no trapping - math. - (fmin3): Ditto. - -2025-10-10 Segher Boessenkool - - * config/rs6000/rs6000.md (mode_iterator CCANY): Add CCFP and CCEQ. - -2025-10-10 Christophe Lyon - - PR target/122223 - * config/arm/mve.md (@mve_vbicq_f): Fix operands order. - -2025-10-10 Andrew Stubbs - - * tree-vect-stmts.cc: Fix VEC_STMT parameter comments throughout. - -2025-10-10 Francois-Xavier Coudert - - * config/aarch64/aarch64-cores.def (AARCH64_CORE): Improve Apple - M3 and add Apple M4 cores. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi: Add apple-m4 core to the ones listed - for arch and tune selections. - -2025-10-10 Richard Biener - - PR tree-optimization/122111 - * tree-ssa-math-opts.cc (build_and_insert_cast): Remove - conversion simplification, instead use gimple_convert. - -2025-10-10 Robin Dapp - - * config/arm/arm.cc (arm_builtin_support_vector_misalignment): - Remove use of type. - -2025-10-10 Richard Biener - - PR tree-optimization/122225 - * tree-cfg.cc (verify_gimple_return): Look at DECL_RESULT - for DECL_BY_REFERENCE. - -2025-10-10 YunQiang Su - - Revert: - 2025-09-27 Jie Mei - - * config/mips/mips.cc(mips_option_override):Add conditions - for use of the -mmips16e2 and -mips16 option. - -2025-10-09 David Faust - - * doc/extend.texi (Common Function Attributes) - (Common Variable Attributes): Document btf_decl_tag attribute. - (Common Type Attributes): Document btf_type_tag attribute. - -2025-10-09 David Faust - - * btfout.cc (get_btf_kind): Handle DECL_TAG and TYPE_TAG kinds. - (btf_calc_num_vbytes): Likewise. - (btf_asm_type): Likewise. - (output_asm_btf_vlen_bytes): Likewise. - (output_btf_tags): New. - (btf_output): Call it here. - (btf_add_used_type): Replace with simple wrapper around... - (btf_add_used_type_1): ...the implementation. Handle - BTF_KIND_DECL_TAG and BTF_KIND_TYPE_TAG. - (btf_add_vars): Update btf_add_used_type call. - (btf_assign_tag_ids): New. - (btf_mark_type_used): Update btf_add_used_type call. - (btf_collect_pruned_types): Likewise. Handle type and decl tags. - (btf_finish): Call btf_assign_tag_ids. - -2025-10-09 David Faust - - * ctfc.cc (ctf_dtu_d_union_selector): Handle CTF_K_DECL_TAG and - CTF_K_TYPE_TAG. - (ctf_add_type_tag, ctf_add_decl_tag): New. - (ctf_add_variable): Return the new ctf_dvdef_ref rather than zero. - (new_ctf_container): Initialize new members. - (ctfc_delete_container): Deallocate new members. - * ctfc.h (ctf_dvdef, ctf_dvdef_t, ctf_dvdef_ref): Move forward - declarations earlier in file. - (ctf_decl_tag_t): New typedef. - (ctf_dtdef): Add ctf_decl_tag_t member to dtd_u union. - (ctf_dtu_d_union_enum): Add new CTF_DTU_D_TAG enumerator. - (ctf_container): Add ctfc_tags vector and ctfc_type_tags_map hash_map - members. - (ctf_add_type_tag, ctf_add_decl_tag): New function protos. - (ctf_add_variable): Change prototype return type to ctf_dvdef_ref. - * dwarf2ctf.cc (gen_ctf_type_tags, gen_ctf_decl_tags) - (gen_ctf_decl_tags_for_var): New static functions. - (gen_ctf_pointer_type): Handle type tags. - (gen_ctf_sou_type): Handle decl tags. - (gen_ctf_function_type): Likewise. - (gen_ctf_variable): Likewise. - (gen_ctf_function): Likewise. - (gen_ctf_type): Handle TAG_GNU_annotation DIEs. - -2025-10-09 David Faust - - * dwarf2out.cc (struct annotation_node, struct annotation_node_hasher) - (btf_tag_htab): New ancillary structures and hash table. - (annotation_node_hasher::hash, annotation_node_hasher::equal): New. - (hash_btf_tag, gen_btf_tag_dies, maybe_gen_btf_type_tag_dies) - (maybe_gen_btf_decl_tag_dies): New functions. - (modified_type_die): Add new argument to pass type attributes. - Handle btf_type_tag, and update recursive calls. - (base_type_for_mode): Add new arg for modified_type_die call. - (add_type_attribute): Likewise. - (gen_array_type_die): Call maybe_gen_btf_type_tag_dies for the type. - (gen_formal_parameter_die): Call maybe_gen_btf_decl_tag_dies for the - parameter. - (override_type_for_decl_p): Add new arg for modified_type_die call. - (force_type_die): Likewise. - (gen_tagged_type_die): Call maybe_gen_btf_type_tag_dies for the type. - (gen_decl_die): Call maybe_gen_btf_decl_tag_dies for the decl. - (dwarf2out_finish): Empty btf_tag_htab. - (dwarf2out_cc_finalize): Delete btf_tag_htab hash table. - -2025-10-09 Jakub Jelinek - - * ginclude/stdarg.h (va_start): Use __builtin_c23_va_start - also for C++26. - (__STDC_VERSION_STDARG_H__): Also define for C++26. - -2025-10-09 David Malcolm - - * diagnostic-global-context.cc: Define INCLUDE_VECTOR. - * diagnostics/buffering.cc: Likewise. - * diagnostics/context.cc (context::finish): Call - finalize_extensions on each sink. - (sink::dump): Dump any extensions. - (sink::finalize_extensions): New. - * diagnostics/macro-unwinding.cc: Define INCLUDE_VECTOR. - * diagnostics/selftest-context.cc: Likewise. - * diagnostics/sink.h (class sink::extension): New. - (sink::add_extension): New. - (sink::finalize_extensions): New decl. - (sink::m_extensions): New member. - * gcc.cc: Define INCLUDE_VECTOR. - * langhooks.cc: Likewise. - * opts.cc: Likewise. - * tree-diagnostic-client-data-hooks.cc: Likewise. - * tree-diagnostic.cc: Likewise. - -2025-10-09 Filip Kastl - - * Makefile.in: Add gimple-ssa-pta-constraints.cc. - * tree-ssa-structalias.cc (determine_global_memory_access): - External linkage, move to namespace pointer_analysis. - (fndecl_maybe_in_other_partition): External linkage, move to - namespace pointer_analysis. - (new_var_info): External linkage, move to namespace - pointer_analysis. - (create_variable_info_for): Move to - gimple-ssa-pta-constraints.cc. - (lookup_vi_for_tree): External linkage, move to namespace - pointer_analysis, move to gimple-ssa-pta-constraints.cc. - (type_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. - (make_param_constraints): Move to gimple-ssa-pta-constraints.cc. - (get_call_vi): Move to gimple-ssa-pta-constraints.cc. - (lookup_call_use_vi): External linkage, move to namespace - pointer_analysis, move to gimple-ssa-pta-constraints.cc. - (lookup_call_clobber_vi): External linkage, move to namespace - pointer_analysis, move to gimple-ssa-pta-constraints.cc. - (get_call_use_vi): Move to gimple-ssa-pta-constraints.cc. - (get_call_clobber_vi): Move to gimple-ssa-pta-constraints.cc. - (get_constraint_for_1): Move to gimple-ssa-pta-constraints.cc. - (get_constraint_for): Move to gimple-ssa-pta-constraints.cc. - (get_constraint_for_rhs): Move to gimple-ssa-pta-constraints.cc. - (do_deref): Move to gimple-ssa-pta-constraints.cc. - (constraint_pool): Move to gimple-ssa-pta-constraints.cc. - (new_constraint): Move to gimple-ssa-pta-constraints.cc. - (insert_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. - (alias_get_name): Move to gimple-ssa-pta-constraints.cc. - (get_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. - (new_scalar_tmp_constraint_exp): Move to - gimple-ssa-pta-constraints.cc. - (get_constraint_for_ssa_var): Move to - gimple-ssa-pta-constraints.cc. - (process_constraint): Move to gimple-ssa-pta-constraints.cc. - (bitpos_of_field): Move to gimple-ssa-pta-constraints.cc. - (get_constraint_for_ptr_offset): Move to - gimple-ssa-pta-constraints.cc. - (get_constraint_for_component_ref): Move to - gimple-ssa-pta-constraints.cc. - (get_constraint_for_address_of): Move to - gimple-ssa-pta-constraints.cc. - (process_all_all_constraints): Move to - gimple-ssa-pta-constraints.cc. - (do_structure_copy): Move to gimple-ssa-pta-constraints.cc. - (make_constraints_to): Move to gimple-ssa-pta-constraints.cc. - (make_constraint_to): Move to gimple-ssa-pta-constraints.cc. - (make_constraint_from): Move to gimple-ssa-pta-constraints.cc. - (make_copy_constraint): Move to gimple-ssa-pta-constraints.cc. - (make_escape_constraint): Move to gimple-ssa-pta-constraints.cc. - (make_indirect_escape_constraint): Move to - gimple-ssa-pta-constraints.cc. - (make_transitive_closure_constraints): Move to - gimple-ssa-pta-constraints.cc. - (make_any_offset_constraints): Move to - gimple-ssa-pta-constraints.cc. - (struct obstack fake_var_decl_obstack): Move to - gimple-ssa-pta-constraints.cc. - (build_fake_var_decl): Move to gimple-ssa-pta-constraints.cc. - (make_heapvar): Move to gimple-ssa-pta-constraints.cc. - (make_constraint_from_restrict): Move to - gimple-ssa-pta-constraints.cc. - (make_constraint_from_global_restrict): Move to - gimple-ssa-pta-constraints.cc. - (get_function_part_constraint): Move to - gimple-ssa-pta-constraints.cc. - (handle_call_arg): Move to gimple-ssa-pta-constraints.cc. - (handle_rhs_call): Move to gimple-ssa-pta-constraints.cc. - (handle_lhs_call): Move to gimple-ssa-pta-constraints.cc. - (get_fi_for_callee): Move to gimple-ssa-pta-constraints.cc. - (find_func_aliases_for_call_arg): Move to - gimple-ssa-pta-constraints.cc. - (find_func_aliases_for_builtin_call): Move to - gimple-ssa-pta-constraints.cc. - (find_func_aliases_for_call): Move to - gimple-ssa-pta-constraints.cc. - (find_func_aliases): Move to gimple-ssa-pta-constraints.cc. - (process_ipa_clobber): Move to gimple-ssa-pta-constraints.cc. - (find_func_clobbers): Move to gimple-ssa-pta-constraints.cc. - (struct fieldoff): Move to gimple-ssa-pta-constraints.cc. - (fieldoff_compare): Move to gimple-ssa-pta-constraints.cc. - (sort_fieldstack): Move to gimple-ssa-pta-constraints.cc. - (var_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. - (type_must_have_pointers): Move to - gimple-ssa-pta-constraints.cc. - (field_must_have_pointers): Move to - gimple-ssa-pta-constraints.cc. - (push_fields_onto_fieldstack): Move to - gimple-ssa-pta-constraints.cc. - (count_num_arguments): Move to gimple-ssa-pta-constraints.cc. - (create_function_info_for): Move to - gimple-ssa-pta-constraints.cc. - (check_for_overlaps): Move to gimple-ssa-pta-constraints.cc. - (create_variable_info_for_1): Move to - gimple-ssa-pta-constraints.cc. - (intra_create_variable_infos): Move to - gimple-ssa-pta-constraints.cc. - (init_base_vars): Move to gimple-ssa-pta-constraints.cc. - (init_constraint_builder): Move to - gimple-ssa-pta-constraints.cc. - (delete_constraint_builder): Move to - gimple-ssa-pta-constraints.cc. - (intra_build_constraints): Move to - gimple-ssa-pta-constraints.cc. - (delete_points_to_sets): Move to gimple-ssa-pta-constraints.cc. - (associate_varinfo_to_alias): Move to - gimple-ssa-pta-constraints.cc - (refered_from_nonlocal_fn): Move to - gimple-ssa-pta-constraints.cc - (refered_from_nonlocal_var): Move to - gimple-ssa-pta-constraints.cc - (ipa_create_function_infos): Move to - gimple-ssa-pta-constraints.cc - (ipa_create_global_variable_infos): Move to - gimple-ssa-pta-constraints.cc - (ipa_build_constraints): Move to gimple-ssa-pta-constraints.cc - * tree-ssa-structalias.h (struct constraint_stats): - (determine_global_memory_access): External linkage, move to - namespace pointer_analysis. - (fndecl_maybe_in_other_partition): External linkage, move to - namespace pointer_analysis. - (new_var_info): External linkage, move to namespace - pointer_analysis. - * gimple-ssa-pta-constraints.cc: New file. - * gimple-ssa-pta-constraints.h: New file. - -2025-10-09 Filip Kastl - - * tree-ssa-structalias.cc (init_constraint_builder): New - function. - (delete_constraint_builder): New function. - (compute_points_to_sets): Put constraint building into - intra_build_constraints and call it. - (intra_build_constraints): New function. - (delete_points_to_sets): Put cleanup of constraint builder - global vars into delete_constraint_builder and call it. - (ipa_pta_execute): Put constraint building into - ipa_build_constraints and call it. - (ipa_create_function_infos): New function. - (ipa_create_global_variable_infos): New function. - (ipa_build_constraints): New function. - -2025-10-09 Takayuki 'January June' Suwa - - * config/xtensa/xtensa-protos.h (xtensa_constantsynth): Remove. - * config/xtensa/xtensa.cc - (#include): Remove "context.h" and "pass_manager.h". - (machine_function): Remove "litpool_usage" member. - (xtensa_constantsynth_2insn, xtensa_constantsynth_rtx_SLLI, - xtensa_constantsynth_rtx_ADDSUBX, xtensa_constantsynth): Remove. - (constantsynth_method_lshr_m1, split_hwi_to_MOVI_ADDMI, - constantsynth_method_16bits, constantsynth_method_32bits, - constantsynth_method_square): New worker function related to - constant synthesis methods. - (constantsynth_method_info, constantsynth_methods): - New structure representing the list of all constant synthesis - methods. - (constantsynth_info): New structure that stores internal - information for "constantsynth". - (constantsynth_pass1, verify_synth_seq, constantsynth_pass2): - New functions that are the core of "constantsynth". - (do_largeconst): Add a call to constantsynth_pass1() to the insn - enumeration loop, and add a call to constantsynth_pass2() to the - end of this function. - * config/xtensa/xtensa.md (SHI): Remove. - (The two auxiliary define_splits for mov[sh]i_internal): Remove. - (The two auxiliary define_splits for movsf_internal): Remove. - -2025-10-09 Takayuki 'January June' Suwa - - * config/xtensa/xtensa-protos.h - (xtensa_split_DI_reg_imm): Remove. - * config/xtensa/xtensa.cc (xtensa_split_DI_reg_imm): Remove. - (split_DI_SF_DF_const): New worker function. - (do_largeconst): Add a call to split_DI_SF_DF_const() to the insn - enumeration loop. - * config/xtensa/xtensa.md (movdi): Remove split code when the - source is constant. - (movdi_internal): Add a new constraint pair (a, Y) to the second - of the existing constraint alternatives. - (The auxiliary define_split for movdi_internal): Remove. - -2025-10-09 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xt_full_rtx_costs): - New struct, derived from full_rtx_costs. - (FPreg_neg_scaled_simm12b_1, FPreg_neg_scaled_simm12b): - New worker functions. - (do_largeconst): Add a call to FPreg_neg_scaled_simm12b() to the - insn enumeration loop. - -2025-10-09 Takayuki 'January June' Suwa - - * config/xtensa/constraints.md (Y): - Change to reference xtensa_postreload_completed_p() instead of - xtensa_split1_finished_p(). - * config/xtensa/predicates.md (move_operand): Ditto. - * config/xtensa/t-xtensa (PASSES_EXTRA): - Add xtensa-passes.def as target-specific pass description. - * config/xtensa/xtensa-passes.def: - New definition file that inserts pass_xtensa_largeconst after - pass_postreload_cse. - * config/xtensa/xtensa-protos.h (xtensa_split1_finished_p): Remove. - (xtensa_postreload_completed_p, make_pass_xtensa_largeconst): - New function prototypes. - * config/xtensa/xtensa.cc (machine_function): - Add a new member "postreload_completed". - (xtensa_emit_move_sequence): - Change to reference xtensa_postreload_completed_p() instead of - can_create_pseudo_p(). - (xtensa_split1_finished_p): Remove. - (xtensa_postreload_completed_p): New function. - (xtensa_legitimate_constant_p): Change to also consider - xtensa_postreload_completed_p(). - (litpool_set_src_1, litpool_set_src, do_largeconst, - rest_of_handle_largeconst): - New sub-functions for pass_xtensa_largeconst. - (pass_data_xtensa_largeconst, pass_xtensa_largeconst): - New target-specific pass definition. - (make_pass_xtensa_largeconst): - New function called by the pass manager. - * config/xtensa/xtensa.md - (The auxiliary define_split for movdi_internal): - Change to reference xtensa_postreload_completed_p() instead of - xtensa_split1_finished_p(). - (The first of three auxiliary define_splits for mov[sh]i_internal): - Remove. - -2025-10-09 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc - (TARGET_MD_ASM_ADJUST): New macro definition. - (xtensa_md_asm_adjust): New function prototype and definition, that - prepends all 'g'-constraints in the "constraints" vector with 'n', - if neither TARGET_CONST16 nor TARGET_AUTO_LITPOOLS is enabled. - -2025-10-09 Richard Biener - - PR tree-optimization/122212 - * tree-ssa-forwprop.cc (simplify_count_zeroes): Apply - bias for CLZ after dealing with the zero special value. - -2025-10-09 Kito Cheng - - * config/riscv/riscv-protos.h (vls_mode_valid_p): New argument - allow_up_to_lmul_8. - * config/riscv/riscv-v.cc (autovectorize_vector_modes): Set - allow_up_to_lmul_8 to false. - (vls_mode_valid_p): Add new argument allow_up_to_lmul_8, and use - it to determine whether to allow LMUL 8. - -2025-10-09 Prathamesh Kulkarni - Matthew Malcolmson - - PR driver/81358 - * common.opt: New option -flink-libatomic. - * gcc.cc (LINK_LIBATOMIC_SPEC): New macro. - * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Use LINK_LIBATOMIC_SPEC. - * config/arm/uclinux-elf.h: Likewise. - * config/arm/unknown-elf.h: Likewise. - * config/avr/avrlibc.h: Likewise. - * config/bfin/linux.h: Likewise. - * config/darwin.h: Likewise. - * config/gnu-user.h: Likewise. - * config/lm32/uclinux-elf.h: Likewise. - * config/rs6000/linux64.h: Likewise. - * config/rs6000/rtems.h: Likewise. - * config/sparc/sparc.h: Likewise. - * doc/invoke.texi: Document -flink-libatomic. - * configure.ac: Define TARGET_PROVIDES_LIBATOMIC. - * configure: Regenerate. - * config.in: Regenerate. - * common.opt.urls: Regenerate. - -2025-10-09 Robin Dapp - - * config/aarch64/aarch64.cc (aarch64_builtin_support_vector_misalignment): - Remove type. - * config/arm/arm.cc (arm_builtin_support_vector_misalignment): - Ditto. - * config/epiphany/epiphany.cc (epiphany_support_vector_misalignment): - Ditto. - * config/gcn/gcn.cc (gcn_vectorize_support_vector_misalignment): - Ditto. - * config/loongarch/loongarch.cc (loongarch_builtin_support_vector_misalignment): - Ditto. - * config/riscv/riscv.cc (riscv_support_vector_misalignment): - Ditto. - * config/rs6000/rs6000.cc (rs6000_builtin_support_vector_misalignment): - Ditto. - * config/s390/s390.cc (s390_support_vector_misalignment): - Ditto. - * doc/tm.texi: Adjust vector misalignment docs. - * target.def: Ditto. - * targhooks.cc (default_builtin_support_vector_misalignment): - Remove type. - * targhooks.h (default_builtin_support_vector_misalignment): - Ditto. - * tree-vect-data-refs.cc (vect_can_force_dr_alignment_p): - Set misalignment for gather/scatter and remove type. - (vect_supportable_dr_alignment): Ditto. - -2025-10-09 Sam James - - PR c++/117219 - * doc/invoke.texi (-fstrict-aliasing): Explain that type-punning - through a union in C++ is supported as a GNU extension. - -2025-10-09 Sam James - - * doc/invoke.texi: Add missing full stop. - -2025-10-09 Sam James - - PR tree-optimization/18501 - * doc/invoke.texi (-Wmaybe-uninitialized): Mention interaction with - CCP. - -2025-10-08 Antoni Boucher - - * configure: Regenerate. - -2025-10-08 Trevor Gross - - PR target/115054 - * config/i386/i386.cc (function_arg_ms_64, - function_value_ms_64): Pass and return _Float16 in vector - registers on Windows. - -2025-10-08 Richard Biener - - PR tree-optimization/110223 - PR tree-optimization/122128 - * tree-vect-patterns.cc (vect_recog_bool_pattern): Add - compensation for mixed mask/data bitwise operations. - -2025-10-08 Richard Biener - - * tree-vect-patterns.cc (integer_type_for_mask): Only - reject vect_external_defs. - -2025-10-08 Richard Biener - - * doc/tm.texi.in (JIT Language and ABI): Add menu item. - * doc/tm.texi: Re-generate. - -2025-10-08 Richard Biener - - PR tree-optimization/110223 - * tree-vect-patterns.cc (vect_recog_bool_pattern): Fix - mistakes in the store-from-mask bool pattern. Add - required mask conversions. - -2025-10-08 Richard Biener - - PR tree-optimization/105490 - * tree-vect-patterns.cc (build_mask_conversion): Move earlier. - (vect_convert_mask_for_vectype): Likewise. - (vect_recog_bool_pattern): Remove redundant truth type - construction. Add missing possibly required mask conversion. - -2025-10-08 Antoni Boucher - - PR jit/112466 - * Makefile.in (tm_jit_file_list, tm_jit_include_list, TM_JIT_H, - JIT_TARGET_DEF, JIT_TARGET_H, JIT_TARGET_OBJS): New variables. - (tm_jit.h, cs-tm_jit.h, jit/jit-target-hooks-def.h, - s-jit-target-hooks-def-h, default-jit.o): New rules. - (s-tm-texi): Also check timestamp on jit-target.def. - (generated_files): Add TM_JIT_H and jit/jit-target-hooks-def.h. - (build/genhooks.o): Also depend on JIT_TARGET_DEF. - * config.gcc (tm_jit_file, jit_target_objs, target_has_targetjitm): - New variables. - * config/i386/t-i386 (i386-jit.o): New rule. - * configure: Regenerate. - * configure.ac (tm_jit_file_list, tm_jit_include_list, - jit_target_objs): Add substitutes. - * doc/tm.texi: Regenerate. - * doc/tm.texi.in (targetjitm): Document. - (target_has_targetjitm): Document. - * genhooks.cc: Include jit/jit-target.def. - * config/default-jit.cc: New file. - * config/i386/i386-jit.cc: New file. - * config/i386/i386-jit.h: New file. - -2025-10-07 Alfie Richards - - * doc/tm.texi: Regenerate. - * doc/tm.texi.in: Add documentation for TARGET_HAS_FMV_TARGET_ATTRIBUTE. - -2025-10-07 Georg-Johann Lay - - PR target/122187 - * config/avr/avr.cc (avr_out_extr, avr_out_extr_not): - Make a local copy of the passed rtx[] operands. - -2025-10-07 Jonathan Wakely - - * config/i386/i386-features.cc - (general_scalar_chain::vector_const_cost): Fix spelling in - comment. - * ipa-prop.h (enum jump_func_type): Likewise. - * tree-vectorizer.cc (try_vectorize_loop_1): Likewise. - -2025-10-07 Robin Dapp - - PR target/121845 - * config/riscv/riscv-v.cc (shuffle_series_patterns): - Modulo indices for VLA and punt when wrapping for VLS. - -2025-10-07 Raphael Moreira Zinsly - - PR target/122124 - * config/riscv/riscv-v.cc (shuffle_slide_patterns): Check if - the second pivot is in OP1 and improve comments. - -2025-10-07 Andrew Pinski - - PR tree-optimization/121921 - * match.pd (`-(a ptrdiff b)`): Extend for a nop_convert - between the neg and ptrdiff. - -2025-10-07 Andrew Pinski - - PR tree-optimization/122083 - * tree-ssa-phiopt.cc (single_trailing_store_in_bb): Rename to ... - (trailing_store_in_bb): This and take new argument to check for - only store. - (cond_if_else_store_replacement_limited): Update to use - trailing_store_in_bb. - (cond_if_else_store_replacement): Loop until - cond_if_else_store_replacement_limited returns false. - (pass_phiopt::execute): Instead of calling cond_if_else_store_replacement_limited - once, also loop on it. - -2025-10-06 Andrew Pinski - - PR tree-optimization/122155 - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Don't - create a phi if the 2 rhs are the same. - -2025-10-06 Jan Hubicka - - PR middle-end/122122 - * tree-cfgcleanup.cc (tree_forwarder_block_p): Cleanup. - * tree-ssa-dce.cc (propagate_counts): New function. - (eliminate_unnecessary_stmts): Use it. - -2025-10-06 Jan Hubicka - - * params.opt (-param=auto-profile-bbs=): Add missing full stop after - description. - -2025-10-06 Andrew MacLeod - - PR tree-optimization/121206 - * value-range.cc (irange::intersect_bitmask): Always call - set_range_from_bitmask if the bitmask changes. - -2025-10-06 Sam James - - PR rtl-optimization/111619 - * doc/install.texi (Building a native compiler): Discuss STAGE1_CFLAGS. - -2025-10-06 Jennifer Schmitz - - PR target/121599 - * config/aarch64/aarch64-sve-builtins.cc - (function_expander::use_cond_insn): Use add_fixed_operand if - fallback_arg == CONST0_RTX (mode). - -2025-10-06 Richard Biener - - PR tree-optimization/122131 - * tree-vect-data-refs.cc (vect_supportable_dr_alignment): Do - not use re-align loads for gathers. - -2025-10-06 Richard Biener - - PR tree-optimization/122158 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): Handle - bit-precision result. - -2025-10-06 Jakub Jelinek - - PR middle-end/122133 - * stmt.cc (resolve_asm_operand_names): Handle % and 2 letters followed - by open square. - -2025-10-06 Andrew Pinski - - PR tree-optimization/122142 - * generic-match-head.cc: Include gimple-iterator.h - and gimple-fold.h. - * gimple-fold.cc (gimple_fold_builtin_constant_p): Use - fold_before_rtl_expansion_p. - (gimple_fold_builtin_assume_aligned): Likewise. - (gimple_fold_builtin_stdarg): Likewise. - (gimple_fold_call): Likewise. - * gimple-fold.h: Include "tree-pass.h". - (fold_before_rtl_expansion_p): New function. - * match.pd: Use fold_before_rtl_expansion_p - instead of `cfun->curr_properties & PROP_last_full_fold`. - * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Likewise. - (optimize_stack_restore): Likewise. - -2025-10-05 H.J. Lu - - PR target/122150 - * config/i386/i386-expand.cc (setmem_epilogue_gen_val): Duplicate - OP if its size is smaller than MODE size. - -2025-10-05 John David Anglin - - * config/pa/pa.h (FUNCTION_BOUNDARY): Set to 32. - -2025-10-05 Pan Li - - * config/riscv/autovec-opt.md (*widen_waddu_wx_): Add new - pattern to match vwaddu.wx. - -2025-10-05 Pan Li - - * match.pd: Refactor the form 1 of SAT_MUL by keyword for. - -2025-10-04 Andrew Pinski - - PR tree-optimization/122143 - * tree-ssa-forwprop.cc (pass_forwprop::execute): Restrict setting - TODO_update_address_taken only when the statement was a call before fold_stmt. - -2025-10-04 Andrew Pinski - - PR tree-optimization/122153 - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Handle - stores of empty constructors too. - -2025-10-04 Matteo Nicoli - - PR tree-optimization/117760 - * match.pd: Add simplifications that exploit implied values after - logical tests. - -2025-10-04 Jakub Jelinek - - PR tree-optimization/122104 - * tree-ssa-math-opts.cc (maybe_optimize_guarding_check): Call - reset_flow_sensitive_info_in_bb on bb when optimizing out the - guarding condition. - -2025-10-04 Raphael Moreira Zinsly - - PR target/122114 - * config/riscv/riscv.cc - (riscv_allocate_and_probe_stack_space): Change initial_cfa_offset - type. - -2025-10-04 Jeff Law - - PR target/122147 - * config/riscv/predicates.md (move_operand): Only allow a REG as the - operand of a SUBREG. - -2025-10-04 Zhongyao Chen - - PR target/118945 - * config/riscv/riscv.cc (riscv_prefer_agnostic_p): New function. - (riscv_tune_param): Add prefer_agnostic member. - (various tune info structures): Initialize prefer_agnostic. - * config/riscv/riscv-protos.h (riscv_prefer_agnostic_p): Add - prototype. - * config/riscv/riscv-v.cc (get_prefer_tail_policy, - get_prefer_mask_policy): Use riscv_prefer_agnostic_p. - * config/riscv/riscv-vsetvl.cc (vsetvl_info::get_demand_flags): - demand policy for agnostic when prefer_agnostic is true. - -2025-10-04 Jakub Jelinek - - PR c++/114457 - * flag-types.h (enum auto_init_type): Add AUTO_INIT_CXX26. - * tree.h (VACUOUS_INIT_LABEL_P): Define. - * gimplify.cc (is_var_need_auto_init): Renamed to ... - (var_needs_auto_init_p): ... this. Don't return true for - vars with "indeterminate" attribute. Formatting fixes. - (gimplify_decl_expr): Use var_needs_auto_init_p instead of - is_var_need_auto_init. - (emit_warn_switch_unreachable): Remove the flag_auto_var_init - special cases. - (warn_switch_unreachable_and_auto_init_r): Handle them here - by doing just returning NULL. - (last_stmt_in_scope): Don't skip just debug stmts to find - the last stmt in seq, skip for - flag_auto_var_init > AUTO_INIT_UNINITIALIZED also IFN_DEFERRED_INIT - calls. - (collect_fallthrough_labels): For - flag_auto_var_init > AUTO_INIT_UNINITIALIZED ignore - IFN_DEFERRED_INIT calls and GIMPLE_GOTOs to - VACUOUS_INIT_LABEL_P. - (should_warn_for_implicit_fallthrough): For - flag_auto_var_init > AUTO_INIT_UNINITIALIZED also skip over - IFN_DEFERRED_INIT calls. - (expand_FALLTHROUGH_r): Likewise, and handle GIMPLE_GOTOs - to VACUOUS_INIT_LABEL_P. - (gimplify_init_constructor): Use var_needs_auto_init_p instead - of is_var_need_auto_init and for flag_auto_var_init - AUTO_INIT_CXX26 don't call gimple_add_padding_init_for_auto_var. - (gimplify_target_expr): If var_needs_auto_init_p and init has - void type, call gimple_add_init_for_auto_var and for - AUTO_INIT_PATTERN also gimple_add_padding_init_for_auto_var. - * tree-ssa-uninit.cc (maybe_warn_operand): Handle loads from *this - at the start of the function with "clobber *this" attribute on the - PARM_DECL. - * ipa-split.cc (split_function): Remove "clobber *this" attribute - from the first PARM_DECL (if any). - * doc/invoke.texi (ftrivial-auto-var-init=): Adjust documentation. - -2025-10-04 Nathaniel Shead - - PR c++/117658 - * doc/invoke.texi: Document '-Wno-external-tu-local'. - -2025-10-03 David Malcolm - - Revert: - 2025-10-03 David Malcolm - - * 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-03 Jeff Law - - PR rtl-optimization/121937 - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Make - sure we've got a scalar_int_mode before calling neg_poly_int_rtx. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * passes.def: Remove both pass_fold_builtin. - Swap out pass_copy_prop for pass_forwprop with - full_walk = false and last=true. - * tree-pass.h (make_pass_fold_builtins): Remove. - * tree-ssa-ccp.cc (class pass_fold_builtins): Delete. - (pass_fold_builtins::execute): Delete. - (make_pass_fold_builtins): Remove. - * doc/passes.texi (Folding built-in functions): Remove. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * gimple-isel.cc (gimple_nop_atomic_bit_test_and_p): New decl. - (gimple_nop_convert): Likewise. - (convert_atomic_bit_not): Moved from tree-ssa-ccp.cc. - (optimize_atomic_bit_test_and): Likewise. - (optimize_atomic_op_fetch_cmp_0): Likewise. - (gimple_isel_builtin_call): New function. - (CASE_ATOMIC): Moved from tree-ssa-ccp.cc. - (CASE_ATOMIC_CMP0): Likewise. - (CASE_ATOMIC_BIT_TEST_AND): Likewise. - (pass_gimple_isel::execute): For calls just call gimple_isel_builtin_call. - * tree-ssa-ccp.cc (convert_atomic_bit_not): Move to gimple-isel.cc. - (gimple_nop_atomic_bit_test_and_p): Likewise. - (gimple_nop_convert): Likewise. - (optimize_atomic_bit_test_and): Likewise. - (optimize_atomic_op_fetch_cmp_0): Likewise. - (pass_fold_builtins::execute): Just call fold_stmt for internal - or normal bultin calls. - (CASE_ATOMIC): Move to gimple-isel.cc. - (CASE_ATOMIC_CMP0): Likewise. - (CASE_ATOMIC_BIT_TEST_AND): Likewise. - -2025-10-03 Andrew Pinski - - * tree-ssa-ccp.cc (CASE_ATOMIC): New defined. - (CASE_ATOMIC_CMP0): New define. - (CASE_ATOMIC_BIT_TEST_AND): New defined. - (pass_fold_builtins::execute): Use CASE_ATOMIC, CASE_ATOMIC_CMP0, - and CASE_ATOMIC_BIT_TEST_AND. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * gimple-fold.cc (gimple_fold_builtin_stdarg): New function, - moved from tree-ssa-ccp.cc (optimize_stdarg_builtin). - (gimple_fold_builtin): Call gimple_fold_builtin_stdarg for - va_start, va_copy and va_end. - * tree-ssa-ccp.cc (optimize_stdarg_builtin): Remove. - (pass_fold_builtins::execute): Remove handling of - va_start, va_copy and va_end. - * tree-ssa-forwprop.cc (pass_forwprop::execute): Update - todos if fold_stmt return true if last forwprop to include - TODO_update_address_taken. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * tree-ssa-ccp.cc (optimize_unreachable): Move to tree-ssa-forwprop.cc - (pass_fold_builtins::execute): Remove handling of __builtin_unreachable. - * tree-ssa-forwprop.cc (optimize_unreachable): New function from - tree-ssa-ccp.cc. Change argument to bb. Remove check on first statement - being the __builtin_unreachable since it is handled already. - (pass_forwprop::execute): Handle first statement as being __builtin_unreachable - by calling optimize_unreachable. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * tree-ssa-ccp.cc (optimize_stack_restore): Move to tree-ssa-forwprop.cc. - (pass_fold_builtins::execute): Don't call optimize_stack_restore. - * tree-ssa-forwprop.cc (optimize_stack_restore): New function from - tree-ssa-ccp.cc. Return bool instead of value, use replace_call_with_value - istead of returning integer_zero_node. - (simplify_builtin_call): Call optimize_stack_restore. - -2025-10-03 Andrew Pinski - - PR tree-optimization/122033 - * tree-ssa-ccp.cc (optimize_stack_restore): Rewrite the call check. - Update comment in the front to new rules on calls. - * tree.h (fndecl_builtin_alloc_p): New function. - -2025-10-03 Andrew Pinski - - PR tree-optimization/121762 - * gimple-fold.cc (gimple_fold_call): Remove ASSUME internal function - calls when PROP_last_full_fold is set. - * tree-ssa-ccp.cc (pass_fold_builtins::execute): Handling folding - of all internal functions. - -2025-10-03 Andrew Pinski - - * tree-ssa-ccp.cc (optimize_stdarg_builtin): Mannually create the - gimple statements instead of depending on the gimplifier. - (pass_fold_builtins::execute): Handle updated call to optimize_stdarg_builtin. - -2025-10-03 Andrew Pinski - - * tree-ssa-ccp.cc (optimize_memcmp_eq): Remove. - (pass_fold_builtins::execute): Remove handling of memcmp. - * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Add folding - of memcmp to memcmp_eq for PROP_last_full_fold. - -2025-10-02 David Malcolm - - * 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-02 Aurelien Jarno - - PR target/121652 - * config/riscv/riscv.md (round_pattern): special case NaN input - instead of saving/restoring fflags. - -2025-10-02 David Malcolm - - * diagnostics/output-spec.cc: (scheme_handler::parse_bool_value): - Convert to... - (key_handler::parse_bool_value): ...this. - (scheme_handler::parse_enum_value): Convert to... - (key_handler::parse_enum_value): ...this. - (struct text_scheme_handler::decoded_args): Eliminate, moving - fields into class text_scheme_handler. - (text_scheme_handler::text_scheme_handler): Initialize the new - fields. - Add a "dc" param and use it to initialize m_show_color. - (struct sarif_scheme_handler::decoded_args): Eliminate, moving - fields into class sarif_scheme_handler. - (sarif_scheme_handler::sarif_scheme_handler): Initialize the new - fields. - (struct html_scheme_handler::decoded_args): Eliminate, moving - fields into class html_scheme_handler. - (html_scheme_handler::html_scheme_handler): Initialize the new - fields. - (context::report_unknown_key): Get keys from scheme rather than - passing them in. Support client keys. - (context::parse_and_make_sink): Pass dc to output_factory ctor. - (output_factory::output_factory): Pass dc to text_scheme_handler. - (output_factory::get_scheme_handler): Make return non-const. - (output_factory::make_sink): Move key-handling here, rather than - in individual sinks. - (context::handle_kv): New. - (text_scheme_handler::make_sink): Eliminate key decoding. - (text_scheme_handler::decode_kv): Convert to... - (text_scheme_handler::maybe_handle_kv): ...this... - (text_scheme_handler::get_keys): ...and this. - (sarif_scheme_handler::make_sink): Eliminate key decoding. - (sarif_scheme_handler::decode_kv): Convert to... - (sarif_scheme_handler::maybe_handle_kv): ...this... - (sarif_scheme_handler::get_keys): ...and this. - (html_scheme_handler::make_sink): Eliminate key decoding. - (html_scheme_handler::decode_kv): Convert to... - (html_scheme_handler::maybe_handle_kv): ...this... - (html_scheme_handler::get_keys): ...and this. - (struct selftest::parser_test): Add "client_keys" arg, and update - for new param ordering. - (selftest::parser_test::parse_and_make_sink): New. - (selftest::test_output_arg_parsing): Move auto-fixes to caller. - (class selftest::test_key_handler): New. - (selftest::test_client_arg_parsing): New test. - (selftest::output_spec_cc_tests): Call it. - * diagnostics/output-spec.h (class key_handler): New. - (class scheme_handler): Move here from output-spec.cc. - (context::report_unknown_key): Simplify params. - (context::handle_kv): Update params. - (context::context): Add "client_keys" param. - (context::m_client_keys): New field. - (struct dc_spec_context): Update order of params. Add - "client_keys" param. - * libgdiagnostics.cc (spec_context::spec_context): Pass nullptr - for client keys. - * opts-diagnostic.cc (opt_spec_context::opt_spec_context): - Likewise. Update for new param ordering. - -2025-10-02 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Do not allow - mask reductions. - -2025-10-02 Jan Hubicka - H.J. Lu - - * cfghooks.cc (merge_blocks): Fix typo in the previous change. - -2025-10-02 Jeff Law - - PR target/122051 - * config/riscv/predicates.md (pmode_reg_or_uimm5_operand): Implement - directly rather than using vector_length_operand. - -2025-10-02 H.J. Lu - - * aclocal.m4: Regenerated. - * configure: Likewise. - -2025-10-02 Richard Biener - - PR tree-optimization/122079 - * tree-ssa-pre.cc (compute_antic_aux): Re-instantiate - ANTIC_IN value pruning by the old solution. - -2025-10-02 Richard Biener - - PR tree-optimization/122079 - * tree-ssa-pre.cc (prune_clobbered_mems): Do not prune - values when the maximum expression set is involved. - -2025-10-01 Jeff Law - - PR target/122106 - * config/riscv/bitmanip.md (crc expanders): Add predicate for - polynomial argument. Drop unnecessary constraints. - -2025-10-01 Andreas Schwab - - PR target/122066 - * config/m68k/m68k.md (adddi3, subdi3): Strip POST_INC and PRE_DEC - when generating high part of the destination operand. - -2025-10-01 Jan Hubicka - - * auto-profile.cc (afdo_calculate_branch_prob): Improve dump file. - -2025-10-01 Jan Hubicka - - * auto-profile.cc (determine_scale): Break out from ... - (afdo_adjust_guessed_profile): ... here. - (scale_bb_profile): New function. - (afdo_annotate_cfg): Use it. - * params.opt (auto-profile-bbs): New parmaeter. - * doc/invoke.texi (auto-profile-bbs): Document. - -2025-10-01 Jan Hubicka - - * auto-profile.cc (afdo_unscaled_edge_count): New function based on - part of ... - (afdo_set_bb_count): ... this function; use it here. - (afdo_calculate_branch_prob): Try to determine edge counts using - phi args and goto locuses. - -2025-10-01 Jan Hubicka - - * Makefile.in (ALL_FDAS): New variable. - (ALL_HOST_BACKEND_OBJ): Use all.fda instead of cc1plus.fda - (all.fda): New target - -2025-10-01 Jan Hubicka - - * cfghooks.cc (merge_blocks): Choose more reliable or higher BB - count. - -2025-10-01 Jan Hubicka - - * predict.cc (unlikely_executed_stmt_p): Remove redundant check. - (rebuild_frequencies): Also recompute unlikely bbs when profile is - present or consistent. - -2025-10-01 Andrew MacLeod - - PR tree-optimization/120560 - * vr-values.cc (range_from_loop_direction): Use wi::ge_p rather - than wi::gt_p. - -2025-10-01 Richard Biener - - PR tree-optimization/122110 - * tree-vect-loop.cc (vectorizable_reduction): Relax restriction - to mode-precision operations. - -2025-09-30 David Malcolm - - * diagnostics/output-spec.cc (text_scheme_handler::make_sink): Use - the value of the "color" to determine if the sink's printer is - colorized. - -2025-09-30 David Malcolm - - * diagnostics/output-spec.cc: Add comments. Introduce a - "struct decoded_args" within each scheme_handler subclass, - and split out per-scheme key-value parsing from each make_sink - implementation into new per-scheme decode_kv member functions. - -2025-09-30 David Malcolm - - * diagnostics/output-spec.cc: Move class scheme_handler out from - inside class output_factory. - -2025-09-30 David Malcolm - - * diagnostics/output-spec.cc: Rename "parsed_arg" to - "scheme_and_kvs" throughout. Rename "unparsed_arg" to - "unparsed_spec" throughout, and make a member of - output_spec::context rather than passing it around. - * diagnostics/output-spec.h: Likewise. - * libgdiagnostics.cc: Likewise. - * opts-diagnostic.cc: Likewise. - -2025-09-30 Alfie Richards - - * config/aarch64/aarch64.cc (aarch64_functions_b_resolvable_from_a): New - function. - (TARGET_OPTION_FUNCTIONS_B_RESOLVABLE_FROM_A): New define. - * doc/tm.texi: Regenerate. - * doc/tm.texi.in: Add documentation for - TARGET_OPTION_FUNCTIONS_B_RESOLVABLE_FROM_A. - * multiple_target.cc (redirect_to_specific_clone): Add new optimisation - logic. - (ipa_target_clone): Remove check for TARGET_HAS_FMV_TARGET_ATTRIBUTE. - * target.def: Document new hook.. - * attribs.cc: (functions_b_resolvable_from_a) New function. - * attribs.h: (functions_b_resolvable_from_a) New function. - -2025-09-30 Jakub Jelinek - - * auto-profile.h (maybe_hot_afdo_count_p): Fix comment typos, - possiby -> possibly and ture -> true. - * gimplify.cc (build_asan_poison_call_expr): Change "of a for" - to "memory of the" in a comment. - * ipa-devirt.cc (add_type_duplicate): Fix comment typo, - mangles -> mangled. - * auto-profile.cc: Fix comment typo, -fauto-profile-inlinig - -> -fauto-profile-inlining. - (maybe_hot_afdo_count_p): Fix comment typos, possiby -> possibly - and ture -> true. - (function_instance::removed_icall_target): Fix comment typo, - Reutrn -> Return. - (function_instance::in_worklist_): Fix comment typo, Ture -> True. - (function_instance::offline): Fix comment typo, tolevel -> toplevel. - (function_instance::match): Fix comment typo, craeate_gcov -> - create_gcov. - (autofdo_source_profile::offline_external_functions): Fix comment - typos, tolevel -> toplevel and porfile -> profile. - (autofdo_source_profile::get_function_instance_by_inline_stack): Fix - comment typo, chekcing -> checking. - (struct scale): Fix comment typo, scalle -> scale. - * gimple.h (currently_expanding_gimple_stmt): Fix comment typo, - comminucating -> communicating. - * tree.h (canonical_type_used_p): Fix comment typo, ture -> true. - * tree-ssa-alias.cc (types_equal_for_same_type_for_tbaa_p): Likewise. - * ipa-profile.cc (contains_hot_call_p): Likewise. - * cfgexpand.cc (add_scope_conflicts_2): Fix comment typos, - Querry -> Query, referendd -> referenced and Querrying -> Querying. - * ipa-param-manipulation.cc (currently_expanding_gimple_stmt): Fix - comment typo, comminucating -> communicating. - * ipa-prop.cc (ipa_cst_ref_desc::refcount): Fix comment typo, - if -> is. - * tree-if-conv.cc (version_loop_for_if_conversion): Fix comment typos, - porfile -> profile and confistency -> consistency. - * fold-const.cc: Change size_int_wide in comment to size_int as - size_int_wide doesn't exit for 21 years. - -2025-09-30 Jan Hubicka - - * auto-profile.cc (function_instance::match): Sanity check - that gimple PHI has no location. - * tree-cfg.cc (assign_discriminators): Also remap locations - of gimple PHI arguments. - -2025-09-30 Jan Hubicka - - * basic-block.h (GCOV_COMPUTE_SCALE): Remove. - * ipa-profile.cc (ipa_profile_generate_summary): Use - profile-count scaling. - * sched-rgn.cc (compute_trg_info): Likewise. - -2025-09-30 Jan Hubicka - - * auto-profile.cc (stmt_loc_used_by_debug_info): New function. - (autofdo_source_profile::get_count_info): Use it. - (afdo_set_bb_count): Likewise. - (afdo_vpt_for_early_inline): Likewise. - -2025-09-30 Andre Vieira - - * gimple-lower-bitint.cc (bitint_precision_kind): Fix inconsistency in - results between first and consecutive calls to this function. - -2025-09-28 liuhongt - - PR target/121970 - * config/i386/i386-options.cc (ix86_target_string): Remove - store_max. - (ix86_debug_options): Ditto. - (ix86_function_specific_print): Ditto. - (ix86_valid_target_attribute_tree): Ditto. - (ix86_option_override_internal): Ditto. - * config/i386/i386-expand.cc (ix86_expand_builtin): Ditto. - * config/i386/i386-options.h (ix86_target_string): Ditto. - * config/i386/i386.h (MOVE_MAX): Ditto. - (STORE_MAX_PIECES): Set by move_max. - * config/i386/i386.opt: Deprecate mmove-max=. - * config/i386/x86-tune.def (X86_TUNE_AVX256_STORE_BY_PIECES): - Removed. - (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. - -2025-09-28 Peter Damianov - - * pretty-print.cc (decode_utf8_char): Move forward declaration. - (mingw_utf8_str_to_utf16_str): New function to convert UTF-8 to UTF-16. - (is_console_handle): New function to detect Windows console handles. - (write_all): Add UTF-8 to UTF-16 conversion for console output, - falling back to WriteFile for ASCII strings and regular files. - -2025-09-27 ChengLulu - - PR target/99217 - * config/mips/mips.cc (mips_start_function_definition): - Implements the functionality of '-fpatchable-function-entry='. - (mips_print_patchable_function_entry): Define empty function. - (TARGET_ASM_PRINT_PATCHABLE_FUNCTION_ENTRY): Define macro. - -2025-09-27 Jie Mei - - * config/mips/mips.cc(mips_option_override):Add conditions - for use of the -mmips16e2 and -mips16 option. - -2025-09-27 Jie Mei - - * config/mips/mips.md (fms4): Generates MSUBF.fmt - instructions. - (*fms4_msubf): Same as above. - (fnma4): Same as above. - (*fnma4_msubf): Same as above. - -2025-09-26 Alejandro Colomar - - * doc/extend.texi: Clarify documentation about lists of - parameter forward declarations, and mention that more than one - of them are unnecessary. - * doc/invoke.texi: Document the new - -Wmultiple-parameter-fwd-decl-lists. - -2025-09-26 Jan Hubicka - - * auto-profile.cc (afdo_propagate_edge): Fix handling of precize 0 - counts. - -2025-09-26 Andrew Stubbs - - * config/gcn/gcn.cc - (gcn_vectorize_support_vector_misalignment): Allow any alignment, as - long as it's not packed. - -2025-09-26 Jan Hubicka - - * profile-count.h (profile_probability::operator/): Do not cap - twice. - (profile_probability::operator/=): Likewise. - (profile_probability::apply_scale): Do not watch for overflow. - (profile_count::probability_in): Watch overflow. - -2025-09-26 Lulu Cheng - - PR target/121875 - * config/loongarch/loongarch.cc - (loongarch_can_inline_p): New function. - (TARGET_CAN_INLINE_P): Define. - -2025-09-25 Gerald Pfeifer - - * doc/invoke.texi (Warning Options): Use "bitwise" over - "bit-wise". - * doc/extend.texi (Vector Extensions): Use "elementwise" - over "element-wise". - * doc/md.texi (Standard Names): Ditto. - -2025-09-25 Gerald Pfeifer - - * doc/extend.texi (Vector Extensions): Fix grammar. - -2025-09-25 Xi Ruoyao - - * doc/invoke.texi (-ffp-int-builtin-inexact): Reword to match - the default value with the default C standard. - -2025-09-24 Dusan Stojkovic - - PR target/121778 - * config/riscv/riscv.md: Add define_split pattern. - -2025-09-24 Andrew Pinski - - PR tree-optimization/121762 - * gimple-fold.cc (gimple_fold_builtin_assume_aligned): New function. - (gimple_fold_builtin): Call gimple_fold_builtin_assume_aligned - for BUILT_IN_ASSUME_ALIGNED. - * tree-ssa-ccp.cc (pass_fold_builtins::execute): Remove handling - of BUILT_IN_ASSUME_ALIGNED. - -2025-09-24 Jennifer Schmitz - - * config/aarch64/aarch64.md: Include neoversev2.md. - * config/aarch64/tuning_models/neoversev2.h: Enable dispatch - scheduling and add dispatch constraints. - * config/aarch64/neoversev2.md: New file and new instruction attribute - neoversev2_dispatch. - -2025-09-24 Jennifer Schmitz - - * config.gcc: Add aarch64-sched-dispatch.o to extra_objs. - * config/aarch64/aarch64-protos.h (struct tune_params): New - field for dispatch scheduling. - (struct dispatch_constraint_info): New struct for dispatch scheduling. - * config/aarch64/aarch64-tuning-flags.def - (AARCH64_EXTRA_TUNING_OPTION): New flag to enable dispatch scheduling. - * config/aarch64/aarch64.cc (TARGET_SCHED_DISPATCH): Implement - target hook. - (TARGET_SCHED_DISPATCH_DO): Likewise. - (aarch64_override_options_internal): Add check for definition of - dispatch constraints if dispatch-scheduling tune flag is set. - * config/aarch64/t-aarch64: Add aarch64-sched-dispatch.o. - * config/aarch64/tuning_models/a64fx.h: Initialize fields for - dispatch scheduling in tune_params. - * config/aarch64/tuning_models/ampere1.h: Likewise. - * config/aarch64/tuning_models/ampere1a.h: Likewise. - * config/aarch64/tuning_models/ampere1b.h: Likewise. - * config/aarch64/tuning_models/cortexa35.h: Likewise. - * config/aarch64/tuning_models/cortexa53.h: Likewise. - * config/aarch64/tuning_models/cortexa57.h: Likewise. - * config/aarch64/tuning_models/cortexa72.h: Likewise. - * config/aarch64/tuning_models/cortexa73.h: Likewise. - * config/aarch64/tuning_models/cortexx925.h: Likewise. - * config/aarch64/tuning_models/emag.h: Likewise. - * config/aarch64/tuning_models/exynosm1.h: Likewise. - * config/aarch64/tuning_models/fujitsu_monaka.h: Likewise. - * config/aarch64/tuning_models/generic.h: Likewise. - * config/aarch64/tuning_models/generic_armv8_a.h: Likewise. - * config/aarch64/tuning_models/generic_armv9_a.h: Likewise. - * config/aarch64/tuning_models/neoverse512tvb.h: Likewise. - * config/aarch64/tuning_models/neoversen1.h: Likewise. - * config/aarch64/tuning_models/neoversen2.h: Likewise. - * config/aarch64/tuning_models/neoversen3.h: Likewise. - * config/aarch64/tuning_models/neoversev1.h: Likewise. - * config/aarch64/tuning_models/neoversev2.h: Likewise. - * config/aarch64/tuning_models/neoversev3.h: Likewise. - * config/aarch64/tuning_models/neoversev3ae.h: Likewise. - * config/aarch64/tuning_models/olympus.h: Likewise. - * config/aarch64/tuning_models/qdf24xx.h: Likewise. - * config/aarch64/tuning_models/saphira.h: Likewise. - * config/aarch64/tuning_models/thunderx.h: Likewise. - * config/aarch64/tuning_models/thunderx2t99.h: Likewise. - * config/aarch64/tuning_models/thunderx3t110.h: Likewise. - * config/aarch64/tuning_models/thunderxt88.h: Likewise. - * config/aarch64/tuning_models/tsv110.h: Likewise. - * config/aarch64/tuning_models/xgene1.h: Likewise. - * config/aarch64/aarch64-sched-dispatch.cc: New file for - dispatch scheduling for aarch64. - * config/aarch64/aarch64-sched-dispatch.h: New header file. - -2025-09-24 Jennifer Schmitz - - * config/aarch64/aarch64-sve.md: Annotate instructions with - attribute sve_type. - * config/aarch64/aarch64-sve2.md: Likewise. - * config/aarch64/aarch64.md (sve_type): New attribute sve_type. - * config/aarch64/iterators.md (sve_type_unspec): New int attribute. - (sve_type_int): New code attribute. - (sve_type_fp): New int attribute. - -2025-09-24 Richard Biener - - PR tree-optimization/116816 - * tree-vect-stmts.cc (get_load_store_type): Allow multi-lane - single-element interleaving to fall back to VMAT_ELEMENTWISE. - Fall back to VMAT_ELEMENTWISE when we cannot handle a load - permutation. - (vectorizable_load): Do not check a load permutation - for VMAT_ELEMENTWISE. Handle grouped loads with - VMAT_ELEMENTWISE and directly apply a load permutation. - -2025-09-24 Richard Biener - - * tree-vect-stmts.cc (get_load_store_type): Explicitly fail - when we end up with VMAT_ELEMENTWISE for BB vectorization. - -2025-09-24 Xi Ruoyao - - PR tree-optimization/122040 - * doc/invoke.texi (-fisolate-erroneous-paths-dereference): - Mention it also turns division by zero into a trap in addition - to null dereference. - -2025-09-24 Xi Ruoyao - - PR middle-end/66462 - * config/loongarch/loongarch.md (FCLASS_MASK): Add 3. - (fclass_optab): Assign isnan for 3. - (2): If FCLASS_MASK is 3, - only enable when -fsignaling-nans. - -2025-09-24 Pan Li - - * match.pd: Add pattern of mult and reuse the widen-mul - by for keyword. - -2025-09-23 David Malcolm - - PR diagnostics/121986 - * diagnostics/sarif-sink.cc: Include "intl.h". - (sarif_builder::make_message_describing_fix_it_hint): New. - (sarif_builder::make_fix_object): Attempt to auto-generate a - description for fix-it hints. - -2025-09-23 Richard Earnshaw - - PR target/121810 - * config/arm/mve.md (mve_mov): Move the Ui constraint - and pool_range attributes to the final alternative. Fix - the forward range value and correctly name the negative - range. - -2025-09-23 Pan Li - - PR middle-end/122031 - * tree-ssa-math-opts.cc (build_and_insert_cast): Fix the typo - of self assignment. - -2025-09-23 Alfie Richards - - * config/aarch64/aarch64.cc (aarch64_process_target_version_attr): - Remove warning. - * config/aarch64/aarch64.opt: Mark -Wno-experimental-fmv-target - deprecated. - * doc/invoke.texi: Ditto. - -2025-09-23 Alfie Richards - - * attribs.cc (is_function_default_version): Update to handle - target_clones. - * cgraph.h (FOR_EACH_FUNCTION_REMOVABLE): New macro. - * multiple_target.cc (expand_target_clones): Update logic to delete - empty target_clones and modify diagnostic. - (ipa_target_clone): Update to use FOR_EACH_FUNCTION_REMOVABLE. - -2025-09-23 Alfie Richards - - * attribs.h (common_function_versions): Removed. - * attribs.cc (common_function_versions): Removed. - * config/aarch64/aarch64.cc (aarch64_common_function_versions): Removed. - (aarch64_same_function_versions): New function to check if two version - strings imply the same version. - (TARGET_OPTION_FUNCTION_VERSIONS): Removed. - (TARGET_OPTION_SAME_FUNCTION_VERSIONS): New macro. - * config/i386/i386.cc (TARGET_OPTION_FUNCTION_VERSIONS): Removed. - * config/rs6000/rs6000.cc (TARGET_OPTION_FUNCTION_VERSIONS): Removed. - * config/riscv/riscv.cc (riscv_same_function_versions): New function - to check if two version strings imply the same version. - (riscv_common_function_versions): Removed. - (TARGET_OPTION_FUNCTION_VERSIONS): Removed. - (TARGET_OPTION_SAME_FUNCTION_VERSIONS): New macro. - * doc/tm.texi: Regenerated. - * target.def: Remove common_version hook and add same_function_version - hook. - * doc/tm.texi.in: Ditto. - * tree.cc (distinct_version_decls): New function. - (mergeable_version_decls): Ditto. - * tree.h (distinct_version_decls): New function. - (mergeable_version_decls): Ditto. - * hooks.h (hook_stringslice_stringslice_unreachable): New function. - * hooks.cc (hook_stringslice_stringslice_unreachable): New function. - -2025-09-23 Alfie Richards - - PR target/118313 - * cgraph.cc (delete_function_version): Made public static member of - cgraph_node. - * cgraph.h (delete_function_version): Ditto. - * cgraphunit.cc (analyze_functions): Add logic for target version - dependencies. - * ipa.cc (symbol_table::remove_unreachable_nodes): Ditto. - * multiple_target.cc (create_dispatcher_calls): Change to support - target version semantics. - (ipa_target_clone): Change to dispatch all function sets in - target_version semantics, and to have early and late pass. - (expand_target_clones): Add logic for cases of target_clones with no - defaults. - (is_simple_target_clones_case): New function. - (class pass_target_clone): New parameter for early or late pass. - * config/aarch64/aarch64.cc: (aarch64_get_function_versions_dispatcher): - Refactor with the assumption that the DECL node will be default. - * config/riscv/riscv.cc: (riscv_get_function_versions_dispatcher): - Refactor with the assumption that the DECL node will be default. - * passes.def: Split target_clones pass into early and late version. - -2025-09-23 Alfie Richards - - PR target/118339 - * target.def: Add check_target_clone_version hook. - * tree.cc (get_clone_attr_versions): Add filter argument. - (get_clone_versions): Add filter argument. - * tree.h (get_clone_attr_versions): Add filter. - (get_clone_versions): Add filter argument. - * config/aarch64/aarch64.cc (aarch64_check_target_clone_version): - New function - (TARGET_CHECK_TARGET_CLONE_VERSION): New define. - * config/riscv/riscv.cc (riscv_check_target_clone_version): - New function. - (TARGET_CHECK_TARGET_CLONE_VERSION): New define. - * doc/tm.texi: Regenerated. - * doc/tm.texi.in: Add documentation for new hook. - * hooks.h (hook_stringslice_locationtptr_true): New function. - * hooks.cc (hook_stringslice_locationtptr_true): New function. - -2025-09-23 Alfie Richards - - * config/riscv/riscv-protos.h (riscv_process_target_version_str): New function.. - * config/riscv/riscv-target-attr.cc (riscv_process_target_attr): Refactor to take - string_slice. - (riscv_process_target_version_str): New function. - * config/riscv/riscv.cc (parse_features_for_version): Refactor to take - string_slice. - (riscv_compare_version_priority): Ditto. - (dispatch_function_versions): Change to pass location. - -2025-09-23 Alfie Richards - - * attribs.cc (make_dispatcher_decl): Move duplicated cgraph logic into - this function and change to use targetm.mangle_decl_assembler_name for - mangling. - * cgraph.cc (cgraph_node::insert_new_function_version): Record - assembler_name. - * cgraph.h (struct cgraph_function_version_info): Add assembler_name. - (struct cgraph_node): Add dispatcher_resolver_function and - is_target_clone. - * config/aarch64/aarch64.cc (aarch64_parse_fmv_features): Change to - support string_slice. - (aarch64_process_target_version_attr): Ditto. - (get_feature_mask_for_version): Ditto. - (aarch64_mangle_decl_assembler_name): Add logic for mangling dispatched - symbol and resolver. - (get_suffixed_assembler_name): Removed. - (make_resolver_func): Refactor to use - aarch64_mangle_decl_assembler_name for mangling. - (aarch64_generate_version_dispatcher_body): Remove remangling. - (aarch64_get_function_versions_dispatcher): Refactor to remove - duplicated cgraph logic. - * config/i386/i386-features.cc - (ix86_mangle_function_version_assembler_name): Refactor to use - clone_identifier and to mangle default. - (ix86_mangle_decl_assembler_name): Add logic for mangling dispatched - symbol and resolver. - (ix86_get_function_versions_dispatcher): Remove duplicated cgraph - logic. - (make_resolver_func): Refactor to use ix86_mangle_decl_assembler_name - for mangling. - * config/riscv/riscv.cc (riscv_mangle_decl_assembler_name): Add logic - for FMV mangling. - (get_suffixed_assembler_name): Removed. - (make_resolver_func): Refactor to use riscv_mangle_decl_assembler_name - for mangling. - (riscv_generate_version_dispatcher_body): Remove unnecessary remangling. - (riscv_get_function_versions_dispatcher): Remove duplicated cgraph - logic. - * config/rs6000/rs6000.cc (rs6000_mangle_decl_assembler_name): New - function. - (rs6000_get_function_versions_dispatcher): Remove duplicated cgraph - logic. - (make_resolver_func): Refactor to use rs6000_mangle_decl_assembler_name - for mangling. - (rs6000_mangle_function_version_assembler_name): New function. - * multiple_target.cc (create_dispatcher_calls): Remove mangling code. - (get_attr_str): Removed. - (separate_attrs): Ditto. - (is_valid_asm_symbol): Removed. - (create_new_asm_name): Ditto. - (expand_target_clones): Refactor to use - targetm.mangle_decl_assembler_name for mangling and be more general. - * tree.cc (get_target_clone_attr_len): Removed. - * tree.h (get_target_clone_attr_len): Removed. - -2025-09-23 Alfie Richards - - * cgraph.h (clone_identifier): New function. - * cgraphclones.cc (clone_identifier): New function. - (clone_function_name): Refactored to use clone_identifier. - (is_valid_asm_symbol): New helper function. - -2025-09-23 liuhongt - - PR target/121994 - * config/i386/x86-tune-costs.h (znver2_cost): Set - vect_unroll_limit to 1. - (znver1_cost): Ditto. - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): - Adjust count number for {AVX256,AVX512}_SPLIT_REGS. - -2025-09-22 Peter Bergner - - PR target/121982 - * config/riscv/tt-ascalon-d8.md (tt_ascalon_d8_vec_idiv_byte): New - define_insn_reservation. - -2025-09-22 Andrew Pinski - - PR tree-optimization/121762 - * builtins.cc (fold_builtin_constant_p): Make non-static. - * builtins.h (fold_builtin_constant_p): New declaration. - * gimple-fold.cc (gimple_fold_builtin_constant_p): New function. - (gimple_fold_builtin): Call gimple_fold_builtin_constant_p - for BUILT_IN_CONSTANT_P. - * tree-ssa-ccp.cc (pass_fold_builtins::execute): Set PROP_last_full_fold - on curr_properties. Remove handling of BUILT_IN_CONSTANT_P. - -2025-09-22 Gerald Pfeifer - - * doc/libgdiagnostics/index.rst: Drop broken reference to - `modindex`. - -2025-09-22 Pan Li - - PR middle-end/122021 - * tree-ssa-math-opts.cc (build_and_insert_cast): Add sign-extend - check before prop. - -2025-09-22 Richard Biener - - PR tree-optimization/122016 - * tree-ssa-sccvn.cc (vn_nary_simplify): Do not use the - simplified expression when it references abnormals. - -2025-09-22 Richard Biener - - PR tree-optimization/122023 - * tree-vect-patterns.cc (vect_recog_rotate_pattern): Disable - for rotates. - -2025-09-22 Dimitar Dimitrov - - PR target/116205 - * config/pru/pru-passes.cc (class pass_pru_tiabi_check): Make - this an IPA pass. - (chkp_type_has_function_pointer): Remove. - (check_type_tiabi_compatibility): New function. - (chk_function_decl): Rename. - (check_function_decl): Simplify. - (check_op_callback): Rework to use - check_type_tiabi_compatibility. - (pass_pru_tiabi_check::execute): Rework to scan all symbols and - gimple contents of all defined functions. - * config/pru/pru-passes.def (INSERT_PASS_AFTER): Move after - pass_ipa_auto_profile_offline. - * config/pru/pru-protos.h (make_pru_tiabi_check): New - declaration to mark as IPA pass. - (make_pru_minrt_check): Specify it is making a gimple pass. - * doc/invoke.texi: Document that bit-fields are now rejected for - TI ABI. - -2025-09-21 Andrew Pinski - - * tree-ssa-ccp.cc (optimize_unreachable): Don't check for forced labels. - -2025-09-21 Jan Hubicka - - * cgraphclones.cc (cgraph_node::create_version_clone): Recompute - calls_comdat_local - -2025-09-21 Jan Hubicka - - * cgraph.cc (cgraph_edge::maybe_hot_p): For AFDO profiles force - count to be non-zero. - -2025-09-21 Jan Hubicka - - * auto-profile.cc (autofdo_source_profile::read): Scale profile up to - profile_count::n_bits - 10. - -2025-09-21 Jan Hubicka - - * ipa-inline-transform.cc (clone_inlined_nodes): Add KEEP_OFFLINE_COPY - parameter. - (inline_call): Sanity check profile and if it is clearly broken do - not subtract profile from original function. - * ipa-inline.cc (recursive_inlining): Update. - * ipa-inline.h (clone_inlined_nodes): Update. - -2025-09-20 Jan Hubicka - - * doc/invoke.texi (--param max-devirt-targets) Document. - * ipa-devirt.cc (ipa_devirt): Implement muti-target - devirtualization. - * params.opt (max-devirt-targets): New parameter. - -2025-09-19 Alexandre Oliva - - * ira.cc (setup_reg_equiv): Retain function invariant - equivalences. - -2025-09-19 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Take gimple* - instead of iterator. - (optimize_agr_copyprop): Likewise. - (simplify_builtin_call): Update call to optimize_aggr_zeroprop. - (pass_forwprop::execute): Update calls to optimize_aggr_zeroprop - and optimize_agr_copyprop. - -2025-09-19 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_aggr_zeroprop_1): Change return type - to void. - (optimize_aggr_zeroprop): Likewise. - (optimize_agr_copyprop_1): Likewise. - (optimize_agr_copyprop_arg): Likewise. - (optimize_agr_copyprop): Likewise. - (simplify_builtin_call): Handle update of the return type - of optimize_aggr_zeroprop. - (pass_forwprop::execute): Likewise and optimize_agr_copyprop. - -2025-09-19 Michael Eager - - PR target/118280 - * config/microblaze/iterators.md: New. - * config/microblaze/microblaze-protos.h: Add - microblaze_subword_address. - * config/microblaze/microblaze.cc: Ditto. - * config/microblaze/microblaze.md: constants: Add UNSPECV_CAS_BOOL, - UNSPECV_CAS_MEM, UNSPECV_CAS_VAL, UNSPECV_ATOMIC_FETCH_OP - type: add atomic - * config/microblaze/sync.md: Add atomic_fetch_si - atomic_test_and_set - -2025-09-19 Jan Hubicka - - * ipa-fnsummary.cc (estimate_edge_devirt_benefit): Handle speculative - edges correctly. - (estimate_edge_size_and_time): Even when not collecting hints, - devirtualization affects function size. - (estimate_calls_size_and_time): Do not use tables when devirtualization - is possible. - -2025-09-19 Jan Hubicka - - * cgraph.cc (cgraph_edge::make_direct): Do not ICE when there are - multiple speculations to comptaible targets - (cgraph_edge::combined_sreal_frequency): New member function. - * cgraph.h (cgraph_edge::combined_sreal_frequency): Declare. - * ipa-cp.cc (devirtualization_time_bonus): Return sreal; consider - profile. - (estimate_local_effects): Likewise. - -2025-09-19 Gaius Mulley - - PR modula2/121856 - * doc/gm2.texi (Compiler options): New item -fwideset. - -2025-09-19 Jeff Law - - PR target/121983 - * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Make sure - object is a REG before asking for its REGNO. Fix a trivial - whitespace nit. - -2025-09-19 Raphael Moreira Zinsly - - * config/riscv/riscv-v.cc - (shuffle_slide_patterns): Cover more permutations. - -2025-09-19 Jim Lin - - * config/riscv/riscv.cc (riscv_compute_frame_info): Remove the - dedicated calculation for RVE. - -2025-09-19 Jeff Law - - * config.gcc (riscv*); Add riscv-bclr-lowest-set-bit.o to extra_objs. - * config/riscv/riscv-bclr-lowest-set-bit.cc: New file. - * config/riscv/riscv-passes.def: Add new pass after combine. - * config/riscv/riscv-protos.h (make_pass_bclr_lowest_set_bit): Add - prototype. - * config/riscv/t-riscv: Add rules to build riscv-bclr-lowest-set-bit.o. - -2025-09-19 Richard Biener - - * tree-ssa-pre.cc (compute_antic_aux): Remove dead code. - -2025-09-19 Richard Biener - - * tree-vectorizer.h (_stmt_vec_info::store_count): Remove. - (DR_GROUP_STORE_COUNT): Likewise. - * tree-vect-stmts.cc (vect_transform_stmt): Remove non-SLP - path. - -2025-09-19 Richard Biener - - * tree-vectorizer.h (vect_get_num_copies): Remove unused - overload. Remove defaulted vectype argument and always - use the vector type of the SLP node. - * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): - Adjust. - (vectorizable_lane_reducing): Likewise. - (vect_transform_reduction): Likewise. - (vectorizable_nonlinear_induction): Likewise. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Likewise. - -2025-09-19 Richard Biener - - * tree-vectorizer.h (_slp_tree::vec_stmts_size): Remove. - (SLP_TREE_NUMBER_OF_VEC_STMTS): Likewise. - * tree-vect-loop.cc (vectorizable_reduction): Adjust. - (vect_transform_cycle_phi): Likewise. - (vect_transform_lc_phi): Likewise. - (vectorizable_recurr): Likewise. - (vectorizable_induction): Likewise. - (vectorizable_live_operation): Likewise. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Do not set - SLP_TREE_NUMBER_OF_VEC_STMTS. - (vect_slp_analyze_node_operations_1): Likewise. - (vect_slp_analyze_node_operations): Likewise. - (vect_prologue_cost_for_slp): Adjust. - (vect_create_constant_vectors): Likewise. - (vect_get_slp_vect_def): Likewise. - (vect_transform_slp_perm_load_1): Likewise. - (vectorizable_slp_permutation_1): Likewise. - (vect_schedule_slp_node): Likewise. - (vectorize_slp_instance_root_stmt): Likewise. - * tree-vect-stmts.cc (vect_model_simple_cost): Likewise. - (vectorizable_bswap): Likewise. - (vectorizable_call): Likewise. - (vectorizable_conversion): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_store): Likewise. - (vectorizable_load): Likewise. - (vectorizable_condition): Likewise. - (vectorizable_early_exit): Likewise. - -2025-09-18 David Malcolm - - * diagnostics/client-data-hooks.h (client_data_hooks::dump): New. - * diagnostics/context.cc (context::dump): Dump - m_client_data_hooks. - (client_data_hooks::dump): New. - * diagnostics/logical-locations.h - (logical_locations::manager::dump): New. - * diagnostics/selftest-logical-locations.cc: Include - "diagnostics/dumping.h". - (test_manager::dump): New. - * diagnostics/selftest-logical-locations.h (test_manager::dump): - New decl. - * libgdiagnostics.cc: Include "diagnostics/dumping.h". - (impl_logical_location_manager::dump): New. - * tree-logical-location.cc: Include "diagnostics/dumping.h". - (tree_logical_location_manager::dump): New. - * tree-logical-location.h (tree_logical_location_manager::dump): - New decl. - -2025-09-18 David Malcolm - - * diagnostics/paths-output.cc: Update for conversion of - location_aspect to enum class. - * diagnostics/source-printing.cc: Likewise. - * input.cc: Likewise. - * input.h: Likewise. - -2025-09-18 David Malcolm - - * diagnostics/buffering.cc: Drop include of "diagnostic.h". - * diagnostics/buffering.h: Likewise. - * diagnostics/context.h (diagnostics::metadata): Add forward decl. - * diagnostics/html-sink.cc: Drop include of "diagnostic.h". - * diagnostics/lazy-paths.cc: Likewise. - * diagnostics/macro-unwinding.cc: Likewise. - * diagnostics/macro-unwinding.h (diagnostics:diagnostic_info): Add - forward decl. - * diagnostics/option-classifier.h: Include - "diagnostics/option-id.h" and "diagnostics/kinds.h". - (diagnostics:diagnostic_info): Add forward decl. - * diagnostics/output-spec.cc: Drop include of "diagnostic.h". - * diagnostics/paths-output.cc: Likewise. - * diagnostics/paths.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/selftest-context.cc: Likewise. - * diagnostics/selftest-paths.cc: Likewise. - * diagnostics/source-printing-options.h: Include - "rich-location.h". - * diagnostics/text-sink.cc: Drop include of "diagnostic.h". - -2025-09-18 Qing Zhao - - PR tree-optimization/121894 - * tree-sra.cc (scan_function): Set grp_assignment_write to 1 when - specially handle call to .DEFERRED_INIT. - -2025-09-18 Zhongyao Chen - - PR target/121910 - * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): - Return RVV_M8 when estimated lmul is too large. - -2025-09-18 Jakub Jelinek - - PR c++/121977 - * omp-low.cc (lower_omp_regimplify_operands_p): If maybe_lookup_decl - returns NULL, use maybe_lookup_decl_in_outer_ctx as fallback. - -2025-09-18 Karl Meakin - - * config/aarch64/aarch64-sme.md (@aarch64_sme_write_zt): New insn. - (aarch64_sme_lut_zt): Likewise. - * config/aarch64/aarch64-sve-builtins-shapes.cc (parse_type): New type format "%T". - (struct luti_lane_zt_base): New function shape. - (SHAPE): Likewise. - (struct write_zt_def): Likewise. - (struct write_lane_zt_def): Likewise. - * config/aarch64/aarch64-sve-builtins-shapes.h: New function shape. - * config/aarch64/aarch64-sve-builtins-sme.cc (class svluti_zt_impl): New function expander. - (class svwrite_zt_impl): Likewise. - (class svwrite_lane_zt_impl): Likewise. - (FUNCTION): Likewise - * config/aarch64/aarch64-sve-builtins-sme.def (svwrite_zt): New function shape. - (svwrite_lane_zt): Likewise. - (svluti4_zt): Likewise. - * config/aarch64/aarch64-sve-builtins-sme.h: New function base. - * config/aarch64/aarch64-sve-builtins.h: Mention the arrays of function_group_info by name. - -2025-09-18 Karl Meakin - - * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Conditonally define - `__ARM_FEATURE_SME_LUTv2" macro. - * config/aarch64/aarch64-option-extensions.def (AARCH64_OPT_EXTENSION("sme-lutv2")): New - optional architecture extension. - * config/aarch64/aarch64.h (TARGET_SME_LUTv2): New macro. - * doc/invoke.texi: Document `+sme-lutv2` flag. - -2025-09-18 Pan Li - - * match.pd: Add pattern for SAT_MUL form 5. - * tree-ssa-math-opts.cc (math_opts_dom_walker::after_dom_children): - Try match pattern for IOR. - -2025-09-18 Jan Hubicka - - * ipa-cp.cc (update_counts_for_self_gen_clones): Do not update - call frequency for local profiles. - -2025-09-18 Richard Biener - - PR tree-optimization/87615 - * tree-ssa-sccvn.cc (vn_nary_op_insert_into): When inserting - a new predicate or location into an existing predicate list - make sure to not exceed 8 locations. Avoid copying things - when we later eventually throw them away. - (vn_nary_op_insert_pieces_predicated): Avoid expensive check - when not checking. - (dominated_by_p_w_unex): Apply the limit on a single successors - predecessor count consistently. - -2025-09-18 Tobias Burnus - Sandra Loosemore - - PR middle-end/121922 - * omp-general.cc (omp_dynamic_cond): Use 'unshare_expr' for - the user condition. - -2025-09-18 Richard Biener - - PR tree-optimization/121720 - * tree-ssa-pre.cc (bitmap_set_subtract_expressions): Add - flag to tell whether we should copy instead of prune the - value set. - (compute_antic_aux): Remove intersection of ANTIC_IN with - the old solution. When subtracting TMP_GEN from - ANTIC_OUT do not prune the value set when MAX was involved - in the ANTIC_OUT computation. - -2025-09-18 hongtao.liu - - * config/i386/x86-tune.def (X86_TUNE_AVX512_MOVE_BY_PIECES): - Remove SPR/GNR/DMR. - (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. - -2025-09-17 David Malcolm - - * sarif-replay.cc (set_defaults): Initialize - m_debug_physical_locations. - -2025-09-17 Andrew Pinski - - PR tree-optimization/121962 - * tree-ssa-forwprop.cc (same_for_assignment): New function. - (optimize_agr_copyprop_1): Use same_for_assignment to check for - nop copies. - (optimize_agr_copyprop): Likewise. - -2025-09-17 Andrew Pinski - - * tree-ssa-forwprop.cc (new_src_based_on_copy): An early out - if both are decls. - -2025-09-17 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Split out - the case where `operand_equal_p (dest, src2)` is false into ... - (new_src_based_on_copy): This. New function. - (optimize_agr_copyprop_arg): Use new_src_based_on_copy - instead of operand_equal_p to find the new src. - -2025-09-17 Shreya Munnangi - - PR tree-optimization/58727 - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): - In (A & C1) | C2, if (C1|C2) results in a constant with a single bit - clear, then adjust C1 appropriately. - -2025-09-17 Eric Botcazou - - * tree-inline.cc (maybe_copy_this_notrap): New function. Also copy - the TREE_THIS_NOTRAP flag for parameters when the argument is a full - object and the parameter's type is self-referential. - (remap_gimple_op_r): Call maybe_copy_this_notrap. - (copy_tree_body_r): Likewise. - -2025-09-17 Pan Li - - * config/riscv/autovec-opt.md (*widen_first__vx_): - Add helper bridge pattern for vwaddu.vx combine. - (*widen___vx_): Add - new pattern to match vwaddu.vx combine. - * config/riscv/iterators.md: Add code attr to get extend CODE. - * config/riscv/vector-iterators.md: Add Dmode iterator for - widen. - -2025-09-16 Jakub Jelinek - - * doc/invoke.texi (Wimplicit-fallthrough=): Document that also C23 - provides a standard way to suppress the warning with [[fallthrough]];. - -2025-09-16 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (#include): - Add "addresses.h". - * config/xtensa/xtensa.h (REGNO_OK_FOR_BASE_P): - Simplify to just a call to GP_REG_P(). - (BASE_REG_P): Replace REGNO_OK_FOR_BASE_P() with the equivalent - call to regno_ok_for_base_p(). - -2025-09-16 Wilco Dijkstra - - PR middle-end/66462 - * config/aarch64/aarch64.md (isnan2): Add new expander. - -2025-09-16 Richard Biener - - * tree-vect-stmts.cc (get_load_store_type): Get in a flag - whether a SLP_TREE_LOAD_PERMUTATION on the node can be - code generated and use it. Fix the condition on using - strided gather/scatter to avoid dropping a meaningful - permutation. - (vectorizable_store): Adjust. - (vectorizable_load): Analyze the permutation early and - pass the result down to get_load_store_type. Fix the - condition on when we are allowed to elide a load permutation. - -2025-09-16 Jennifer Schmitz - - PR target/121602 - * config/aarch64/aarch64-sve-builtins.cc - (gimple_folder::fold_active_lanes_to): Add force_vector - statement. - -2025-09-16 Jiawei - - * config.gcc: Accept RISC-V profiles in `--with-arch`. - * config/riscv/arch-canonicalize: Add profile detection and - skip canonicalization for profiles. - -2025-09-16 Jiawei - - * common/config/riscv/riscv-common.cc (struct riscv_profiles): Add comments. - (RISCV_PROFILE): Removed. - * config/riscv/riscv-profiles.def: New file. - -2025-09-16 Dongyan Chen - - * config/riscv/riscv-ext.def: Imply zicsr. - -2025-09-16 liuhongt - - * config/i386/predicates.md (avx_vbroadcast128_operand): New - predicate. - * config/i386/sse.md (*avx_vbroadcastf128__perm): New - pre_reload splitter. - -2025-09-15 Alexandre Oliva - - * config/rs6000/vxworks.h (TARGET_CMODEL, SET_CMODEL): Define. - -2025-09-15 Alexandre Oliva - - * configure.ac: Adjust base register in linker test for large - TOC support. - * configure: Rebuild. - -2025-09-15 Pan Li - - * match.pd: Remove unnecessary cast of unsigned - SAT_MUL for widen-mul. - -2025-09-15 Pan Li - - * tree-ssa-math-opts.cc (build_and_insert_cast): Refine - the cast insert by check the rhs of val. - -2025-09-15 David Faust - - PR debug/121411 - PR debug/121903 - * ctfc.h (ctf_add_sou): Change size arg from size_t to uHWI. - * ctfc.cc (ctf_add_sou): Likewise. - -2025-09-15 Andrew Pinski - - PR tree-optimization/121751 - PR tree-optimization/121418 - PR tree-optimization/121417 - * tree-ssa-forwprop.cc (split_core_and_offset_size): New function. - (optimize_agr_copyprop_1): Allow for the same - address but different type accesses via a VCE. - -2025-09-15 Alex Coplan - - PR tree-optimization/121772 - * match.pd: Add type check to reduc(ctor) pattern. - -2025-09-15 Georg-Johann Lay - - * config/avr/avr-mcus.def: Add avr32eb14, avr32eb20, - avr32eb28, avr32eb32. - * doc/avr-mmcu.texi: Rebuild. - -2025-09-15 H.J. Lu - - PR target/121934 - * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): If a - single instruction can store or move the whole block of memory, - use vector instruction and don't align destination. - -2025-09-15 Xi Ruoyao - - PR target/121906 - * config/loongarch/loongarch.md (*bstrins__for_ior_mask): - Always create a new pseudo for the input register of the bstrins - instruction. - -2025-09-15 Jakub Jelinek - - PR middle-end/121904 - * tree.cc (get_range_pos_neg): Return 3 if arg doesn't have - scalar integral type. - * expr.cc (expand_expr_real_2) : Only choose between - sign and zero extension based on costs for scalar integral inner - types. - -2025-09-15 Stefan Schulze Frielinghaus - - PR middle-end/121391 - * gimplify.cc (gimplify_asm_expr): In case an asm operand is an - error node, bail out early. - -2025-09-14 Richard Biener - - PR lto/121935 - * ipa-free-lang-data.cc (find_decls_types_r): Visit DECL_ARGUMENTS - chain manually. - -2025-09-14 Richard Biener - - * tree-vectorizer.h (stmt_vec_info_type::permute_info_type): Add. - (vectorizable_slp_permutation): Declare. - * tree-vect-slp.cc (vectorizable_slp_permutation): Export. - (vect_slp_analyze_node_operations_1): Set permute_info_type - on permute nodes successfully analyzed. - (vect_schedule_slp_node): Dispatch to vect_transform_stmt - for all nodes. - * tree-vect-stmts.cc (vect_transform_stmt): Remove redundant - dump, handle permute_info_type. - -2025-09-14 Richard Biener - - * tree-vect-stmts.cc (get_load_store_type): Use VMAT_STRIDED_SLP - for negative stride accesses when VMAT_CONTIGUOUS_REVERSE - isn't applicable. - -2025-09-14 Richard Biener - - * tree-vectorizer.h (vect_load_store_data::n_perms): New. - * tree-vect-stmts.cc (vectorizable_load): Analyze - SLP_TREE_LOAD_PERMUTATION only once and remember n_perms. - Verify the transform-time n_perms against the value stored - during analysis. - -2025-09-13 Gerald Pfeifer - - * target.def (dtors_from_cxa_atexit): Properly mark up - __cxa_atexit as code. - * doc/tm.texi: Regenerate. - -2025-09-13 Stefan Schulze Frielinghaus - - PR rtl-optimization/121205 - * lra-constraints.cc (curr_insn_transform): Stop processing on - error. - -2025-09-13 Gerald Pfeifer - - * doc/invoke.texi (Optimize Options): Editorial changes around - -fprofile-partial-training. - -2025-09-12 Jeff Law - - * lra-constraints.cc (get_equiv): Bounds check before accessing - data in ira_reg_equiv. - -2025-09-12 Edwin Lu - - * match.pd: New NARROW_CLIP variant for SAT_TRUNC. - * tree-vect-patterns.cc (gimple_unsigned_integer_narrow_clip): - Add new decl for NARROW_CLIP. - (vect_recog_sat_trunc_pattern): Add NARROW_CLIP check. - -2025-09-12 David Malcolm - - PR diagnostics/120063 - * diagnostics/context.cc (context::execution_failed_p): Also treat - any kind::fatal errors as leading to failed execution. - * diagnostics/sarif-sink.cc (maybe_get_sarif_level): Handle - kind::fatal as SARIF level "error". - -2025-09-12 David Malcolm - - PR diagnostics/121876 - * diagnostics/buffering.cc (context::set_diagnostic_buffer): Add - early reject of the no-op case. - -2025-09-12 Nathaniel Shead - - PR c++/121865 - * ipa-free-lang-data.cc (find_decls_types_r): Don't walk into - DECL_CHAIN for any DECL. - -2025-09-12 Eric Botcazou - - * ipa-pure-const.cc (check_stmt): Minor formatting tweaks. - (pass_data_nothrow): Fix pasto in description. - -2025-09-12 Tamar Christina - - * internal-fn.def (VEC_TRUNC_ADD_HIGH): New. - * doc/generic.texi: Document it. - * optabs.def (vec_trunc_add_high): New. - * doc/md.texi: Document it. - * tree-vect-stmts.cc (vectorizable_early_exit): Use addhn if supported. - -2025-09-12 Tamar Christina - - * config/aarch64/aarch64-simd.md (vec_addh_narrow): New. - -2025-09-12 Tamar Christina - - * tree-vect-loop.cc (vect_analyze_loop_1): If the unroll pragma was set - mark it as handled. - * doc/extend.texi (pragma GCC unroll): Update documentation. - -2025-09-11 Trevor Gross - - * doc/libgcc.texi (Comparison functions): Document functions as - returning CMPtype. - -2025-09-11 Wilco Dijkstra - - PR middle-end/66462 - * config/aarch64/aarch64.md (isfinite2): Add new expander. - -2025-09-11 Matteo Nicoli - - PR tree-optimization/121595 - * match.pd (fabs(a + 0.0) -> fabs (a)): Optimization pattern limited to - the -fno-trapping-math case. - -2025-09-11 Xi Ruoyao - - * config/loongarch/sync.md (atomic_compare_and_swapti_scq): - Require LSX. Change the operands for the output, the memory, - and the expected value to LSX vector modes. Add a FCCmode - output to indicate if CAS has written the desired value into - memory. Use LSX to atomically load both words of the 16B value - in memory. - (atomic_compare_and_swapti): Pun the modes to satisify - the new atomic_compare_and_swapti_scq implementation. Read the - bool return value from the FCC instead of performing a - comparision. - -2025-09-11 Xi Ruoyao - - * config/loongarch/loongarch.cc (loongarch_print_operand): Call - reg_or_0_operand for checking the sanity of %t. - -2025-09-11 Richard Biener - - PR tree-optimization/121703 - * tree-vect-stmts.cc (vectorizable_store): Value-initialize ls. - (vectorizable_load): Likewise. - -2025-09-11 Tsukasa OI - - * config/riscv/riscv.cc (riscv_function_ok_for_sibcall): - Suppress cross calling convention sibcall optimization from - the vector calling convention variant. - -2025-09-11 Richard Biener - - PR tree-optimization/121829 - * cfgloopmanip.cc (create_preheader): Ensure we can insert - at the end of a preheader. - -2025-09-11 Richard Biener - - PR tree-optimization/121870 - * tree-ssa-propagate.cc - (substitute_and_fold_engine::substitute_and_fold): Skip - removed stmts from noreturn fixup. - -2025-09-11 Robin Dapp - - * config/riscv/bitmanip.md (*_cmp_3): - New min/max ifcvt pattern. - * config/riscv/iterators.md (minu): New iterator. - * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): - Remove riscv-specific adjustment. - -2025-09-11 Robin Dapp - - * ifcvt.cc (noce_convert_multiple_sets_1): Add use_cond_earliest - param. - (noce_convert_multiple_sets): Set use_cond_earliest. - (noce_process_if_block): Just use original cost. - (noce_find_if_block): Use insn_cost (jump_insn). - -2025-09-11 Kito Cheng - - * config/riscv/riscv-selftests.cc (riscv_run_selftests): Call - run_vectorize_related_mode_selftests. - (test_vectorize_related_mode): New function to test - vectorize_related_mode behavior. - (run_vectorize_related_mode_selftests): New function to run all - vectorize_related_mode tests. - (run_vectorize_related_mode_vla_selftests): New function to test - VLA modes. - (run_vectorize_related_mode_vls_rv64gcv_selftests): New function to - test VLS modes on rv64gcv. - (run_vectorize_related_mode_vls_rv32gc_zve32x_zvl256b_selftests): - New function to test VLS modes on rv32gc_zve32x_zvl256b. - (run_vectorize_related_mode_vls_selftests): New function to run all - VLS mode tests. - * config/riscv/riscv-v.cc (can_find_related_mode_p): Fix VLS type - handling by converting TARGET_MIN_VLEN from bits to bytes. - -2025-09-10 Georg-Johann Lay - - PR target/81540 - PR target/49857 - * common/config/avr/avr-common.cc: Disable -ftree-switch-conversion. - -2025-09-10 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): - Change "Xtrnase" in the comment to "Xtensa". - -2025-09-10 Peter Bergner - - PR target/121878 - * config/riscv/tt-ascalon-d8.md (tt_ascalon_d8_vec_idiv_half): Test the - Selected Element Width (SEW) rather than the mode. - (tt_ascalon_d8_vec_idiv_single): Likewise. - (tt_ascalon_d8_vec_idiv_double): Likewise. - (tt_ascalon_d8_vec_float_divsqrt_half): Likewise. - (tt_ascalon_d8_vec_float_divsqrt_single): Likewise. - (tt_ascalon_d8_vec_float_divsqrt_double): Likewise. - -2025-09-10 Juergen Christ - - * tree-vect-loop.cc (vectorizable_live_operation_1): Fix - load/store bias handling. - -2025-09-10 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfwsub_wf_): New pattern to - combine float_extend + vec_duplicate + vfsub.vv into vfwsub.wf. - -2025-09-10 Jakub Jelinek - - PR middle-end/121828 - * gimple-lower-bitint.cc (gimple_lower_bitint): For REALPART_EXPR - consumed by store in the same bb and with REALPART_EXPR from - optimizable_arith_overflow, don't add REALPART_EXPR lhs to - the m_names bitmap only if the cast from IMAGPART_EXPR doesn't - appear in between the REALPART_EXPR and the store. - -2025-09-10 Jakub Jelinek - - PR middle-end/121831 - * expr.cc (raw_data_cst_read_str): New function. - (store_constructor) : Handle RAW_DATA_CST. - -2025-09-10 Juergen Christ - - * config/s390/s390.h (CLZ_DEFINED_VALUE_AT_ZERO): Adjust and - return 2. - (CTZ_DEFINED_VALUE_AT_ZERO): Return 2. - * config/s390/s390.md (clzsi2): Implement. - (ctzsi2): Implement. - -2025-09-10 Maximilian Immanuel Brandtner - - * config/s390/vector.md (*vec_extract_plus_zero_extend): - Fix define insn. - -2025-09-09 Andrew Stubbs - - * config/gcn/gcn-devices.def: Correct the Max ISA VGPRs counts for - GFX10 and GFX11 devices. - * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Remove the wave64 - VGPR count fudge. - -2025-09-09 Andrew Stubbs - - * config/gcn/gcn.cc (gcn_expand_builtin_1): Enable the "mode" parameter - and ensure that "target" is a register for most of the builtins. - -2025-09-09 David Faust - - PR debug/121411 - * dwarf2ctf.cc (ctf_get_AT_data_member_location) Use AT_unsigned - when fetching AT_bit_offset and AT_data_member_location. Simplify. - (ctf_die_bitsize): Return unsigned HOST_WIDE_INT instead of - uint32_t. - (gen_ctf_base_type, gen_ctf_sou_type, gen_ctf_enumeration_type): - Adapt accordingly. - -2025-09-09 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfwsub_vf_): New pattern to - combine float_extend + vec_duplicate + vfwsub.vv into vfwsub.vf. - -2025-09-09 Jakub Jelinek - - PR c++/121678 - * tree.cc (staticp): Handle REALPART_EXPR and IMAGPART_EXPR. - -2025-09-09 Jonathan Wakely - - * doc/invoke.texi (Warning Options): Note that an option - enabled by -Wextra is for C and ObjC only. - -2025-09-09 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfwadd_wf_): New pattern to - combine float_extend + vec_duplicate + vfadd.vv into vfwadd.wf. - * config/riscv/vector.md - (@pred_single_widen__scalar): Swap and reorder - operands to match the RTL emitted by expand. - -2025-09-09 Kyrylo Tkachov - - Revert: - 2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (*bcaxqdi4): New - define_insn_and_split. - -2025-09-09 Tamar Christina - - Revert: - 2025-09-08 Richard Biener - - PR tree-optimization/121829 - * tree-vect-loop-manip.cc (vect_remove_forwarder): New - function. - (slpeel_tree_duplicate_loop_to_edge_cfg): Use it. - -2025-09-09 H.J. Lu - - PR target/121861 - * config/i386/i386.cc (ix86_optab_supported_p): Drop - !flag_trapping_math check for floor_optab, ceil_optab and - btrunc_optab. - -2025-09-09 liuhongt - - * config/i386/i386-expand.cc (expand_vec_perm_vpermil): Extend - to handle V8SImode. - * config/i386/i386.cc (avx_vpermilp_parallel): Extend to - handle vector integer modes with same vector size and same - component size. - * config/i386/sse.md - (_vpermilp): Ditto. - (V48_AVX): New mode iterator. - (ssefltmodesuffix): Extend for V16SI/V8DI/V16SF/V8DF. - -2025-09-09 liuhongt - - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): - Check permutation index for vec_perm, don't count it if we - know it's not a cross-lane permutation. - -2025-09-08 Richard Biener - - PR tree-optimization/107997 - PR tree-optimization/121844 - * tree-ssa-loop-ivopts.cc (allow_ip_end_pos_p): Do not allow - IP_END for latches ending with a control stmt. - (create_new_iv): Do not split the latch edge, instead assert - that's not necessary. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfwadd_vf_): New pattern to - combine float_extend + vec_duplicate + vfwadd.vv into vfwadd.vf. - -2025-09-08 Anton Blanchard - - * config/riscv/riscv.cc (tt_ascalon_d8_tune_info): Increase branch_cost - from 3 to 4. - -2025-09-08 Richard Biener - - PR tree-optimization/121830 - * tree-vect-loop.cc (vect_analyze_scalar_cycles_1): Only - set STMT_VINFO_REDUC_DEF on reductions. - * tree-vect-slp.cc (vect_build_slp_tree_2): Identify reduction - PHIs by a set STMT_VINFO_REDUC_DEF instead of their def type. - -2025-09-08 Richard Biener - - PR tree-optimization/121829 - * tree-vect-loop-manip.cc (vect_remove_forwarder): New - function. - (slpeel_tree_duplicate_loop_to_edge_cfg): Use it. - -2025-09-08 Alex Coplan - - PR tree-optimization/114892 - * doc/invoke.texi (Developer Options): Document -folding option - for -fdump-tree-*. - -2025-09-08 Kugan Vivekanandarajah - - * ipa-cp.cc (gather_count_of_non_rec_edges): Check count - initialization before adding to total. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfrsub_vf_): New pattern to - combine vec_duplicate + vfsub.vv into vfrsub.vf. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfsub_vf_): New pattern to - combine vec_duplicate + vfsub.vv into vfsub.vf. - * config/riscv/vector.md (@pred__scalar): Allow VLS modes. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfadd_vf_): New pattern to - combine vec_duplicate + vfadd.vv into vfadd.vf. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfwmul_vf_): New pattern to - combine float_extend + vec_duplicate + vfmul.vv into vfmul.vf. - * config/riscv/vector.md (*@pred_dual_widen__scalar): - Swap operands to match the RTL emitted by expand, i.e. first - float_extend then vec_duplicate. - -2025-09-08 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfmin_vf_ieee_): Rename into... - (*v_vf_): New pattern to combine vec_duplicate + - vf{max,min}.vv (unspec) into vf{max,min}.vf. - -2025-09-08 Gerald Pfeifer - - * doc/extend.texi (SH Function Attributes): Remove reference to - GNU Binutils 2.7 requirement. - (H8/300 Variable Attributes): Ditto. - -2025-09-08 Andrew Pinski - - PR tree-optimization/87900 - * tree-ssa-strlen.cc (strlen_pass::handle_assign): Add RHS argument. - For empty constructor RHS, see if can combine with a previous malloc into - a calloc. - (strlen_pass::check_and_optimize_call): Update call to handle_assign; - passing NULL_TREE for RHS. - (strlen_pass::check_and_optimize_stmt): Update call to handle_assign. - -2025-09-08 Andrew Pinski - - PR tree-optimization/83022 - * tree-ssa-strlen.cc (last_stmt_ptr_check): New function. - (allow_memset_malloc_to_calloc): New function. - (strlen_pass::handle_builtin_memset): Check to see if it is a good - idea to do the malloc+memset->calloc optimization. - (printf_strlen_execute): Free post dom info. - -2025-09-08 Sam James - - * common.opt.urls: Regenerate. - -2025-09-07 Andrew Pinski - - PR tree-optimization/121841 - * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Allow - two different decls as bases as non-overlapping bases. - -2025-09-07 Jeff Law - - * dep-fusion.cc: Mark clone, gate and execute methods as final. - -2025-09-07 Kuan-Lin Chen - - * config/riscv/andes-vector-builtins-bases.cc (nds_vd4dot): New class. - (class nds_vd4dotsu): New class. - * config/riscv/andes-vector-builtins-bases.h: New def. - * config/riscv/andes-vector-builtins-functions.def (nds_vd4dots): Ditto. - (nds_vd4dotsu): Ditto. - (nds_vd4dotu): Ditto. - * config/riscv/andes-vector.md - (@pred_nds_vd4dot): New pattern. - (@pred_nds_vd4dotsu): New pattern. - * config/riscv/genrvv-type-indexer.cc (main): Modify sew of QUAD_FIX, - QUAD_FIX_SIGNED and QUAD_FIX_UNSIGNED. - * config/riscv/riscv-vector-builtins.cc - (qexti_vvvv_ops): New operand information. - (qexti_su_vvvv_ops): New operand information. - (qextu_vvvv_ops): New operand information. - * config/riscv/riscv-vector-builtins.h (XANDESVDOT_EXT): New def. - (required_ext_to_isa_name): Add case XANDESVDOT_EXT. - (required_extensions_specified): Ditto. - (struct function_group_info): Ditto. - * config/riscv/vector-iterators.md (NDS_QUAD_FIX): New iterator. - -2025-09-07 Jeff Law - - * config/riscv/riscv-opts.h (riscv_microarchitecture_type): Fix ordering. - -2025-09-07 Kuan-Lin Chen - - * common/config/riscv/riscv-common.cc: - Turn on VECTOR_ELEN_FP_16 for XAndesvpackfph. - * config/riscv/andes-vector-builtins-bases.cc (nds_vfpmad): New class. - * config/riscv/andes-vector-builtins-bases.h: New def. - * config/riscv/andes-vector-builtins-functions.def (nds_vfpmadt): Ditto. - (nds_vfpmadb): Ditto. - (nds_vfpmadt_frm): Ditto. - (nds_vfpmadb_frm): Ditto. - * config/riscv/andes-vector.md (@pred_nds_vfpmad): - New pattern. - * config/riscv/riscv-vector-builtins-types.def - (DEF_RVV_F16_OPS): New def. - * config/riscv/riscv-vector-builtins.cc (f16_ops): Ditto - * config/riscv/riscv-vector-builtins.def (float32_type_node): Ditto. - * config/riscv/riscv-vector-builtins.h (XANDESVPACKFPH_EXT): Ditto. - (required_ext_to_isa_name): Add case XANDESVPACKFPH_EXT. - (required_extensions_specified): Ditto. - * config/riscv/vector-iterators.md (VHF): New iterator. - -2025-09-07 Georg-Johann Lay - - PR target/121794 - * config/avr/avr.md (cmpqi3): Use cpi R,0 if possible. - -2025-09-07 Pan Li - - * config/riscv/autovec-opt.md (*vnmsac_vx_): Rename from. - (*mul_minus_vx_): Rename to and add nmsub support. - * config/riscv/vector.md (@pred_vnmsac_vx_): Rename from. - (@pred_mul_minus_vx_): Rename to and add nmsub support. - (*pred_nmsac__scalar_undef): Rename from. - (*pred_mul_minus_vx_undef): Rename to and add nmsub support. - -2025-09-06 Sam James - - * doc/generic.texi (TYPE_CANONICAL): Don't mention long-removed - --param verify-canonical-types. - -2025-09-06 Andrew Pinski - - PR rtl-optimization/121835 - * dep-fusion.cc (pass_dep_fusion::execute): Return early if - macro_fusion_pair_p is null. - -2025-09-06 Artemiy Volkov - - * Makefile.in (OBJS): Add dep-fusion.o. - * common.opt (fdep-fusion): Add option. - * dep-fusion.cc: New pass. - * doc/invoke.texi: Document it. - * opts.cc (default_options_table): Enable it at -O2+ and -Os. - * passes.def: Insert two instances of dep_fusion. - * tree-pass.h (make_pass_dep_fusion): Declare new function. - -2025-09-06 Sam James - - * doc/invoke.texi (x86 Options): Fix '-momit-leaf-frame-pointer' typo. - -2025-09-06 Andrew Pinski - - * tree-ssa-forwprop.cc (simplify_builtin_call): Factor out - the memcpy followed by a memset optimization to ... - (simplify_builtin_memcpy_memset): Here. New function. - -2025-09-06 Andrew Pinski - - * tree-ssa-forwprop.cc (simplify_builtin_call): Factor out the memchr - optimization to ... - (simplify_builtin_memchr): Here. New function. - -2025-09-06 Simon Martin - - * ipa-inline-transform.cc: Define INCLUDE_ALGORITHM. - -2025-09-06 Gerald Pfeifer - - PR target/69374 - * doc/install.texi (Prerequisites): Properly capitalize - GNU Binutils. - (Configuration): Ditto. - (Building): Ditto. - (Specific): Ditto. - -2025-09-06 Sam James - - * doc/invoke.texi: Say 'whole-program' consistently where - appropriate. - -2025-09-06 Sam James - - * doc/invoke.texi: Capitalize 'GNU Binutils' consistently. - -2025-09-06 Sam James - - PR ipa/116410 - * doc/invoke.texi (Link Options): Update -flinker-output= text - to reflect GNU Binutils changes. Fix grammar. - -2025-09-06 Kuan-Lin Chen - - * config/riscv/andes-vector-builtins-bases.cc - (nds_nibbleload): New class. - * config/riscv/andes-vector-builtins-bases.h (nds_vln8): New def. - (nds_vlnu8): Ditto. - * config/riscv/andes-vector-builtins-functions.def (nds_vln8): Ditto. - (nds_vlnu8): Ditto. - * config/riscv/andes-vector.md (@pred_intload_mov): New pattern. - * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_Q_OPS): New def. - (DEF_RVV_QU_OPS): Ditto. - * config/riscv/riscv-vector-builtins.cc - (q_v_void_const_ptr_ops): New operand information. - (qu_v_void_const_ptr_ops): Ditto. - * config/riscv/riscv-vector-builtins.def (void_const_ptr): New def. - * config/riscv/riscv-vector-builtins.h (enum required_ext): Ditto. - (required_ext_to_isa_name): Add case XANDESVSINTLOAD_EXT. - (required_extensions_specified): Ditto. - * config/riscv/vector-iterators.md (NDS_QVI): New iterator. - -2025-09-06 Kuan-Lin Chen - - * common/config/riscv/riscv-common.cc: - Turn on VECTOR_ELEN_BF_16 for XAndesvbfhcvt. - * config.gcc: Add extra_objs andes-vector-builtins-bases.o - and extra_headers andes_vector.h. - * config/riscv/riscv-vector-builtins-shapes.cc - (BASE_NAME_MAX_LEN): Increase size to 20. - * config/riscv/riscv-vector-builtins.cc - (f32_to_bf16_nf_w_ops): New operand information. - (f32_to_bf16_nf_w_ops): New operand information. - (DEF_RVV_FUNCTION): New def. - * config/riscv/riscv-vector-builtins.def (bf16): Ditto. - * config/riscv/riscv-vector-builtins.h (enum required_ext): Ditto. - (required_ext_to_isa_name): Add case XANDESVBFHCVT_EXT. - (required_extensions_specified): Ditto. - * config/riscv/t-riscv: Add andes-vector-builtins-functions.def, - andes-vector-builtins-bases.h and andes-vector-builtins-bases.o. - * config/riscv/vector-iterators.md (NDS_VWEXTBF): New iterator. - (NDS_V_DOUBLE_TRUNC_BF): New attr. - * config/riscv/andes-vector-builtins-bases.cc: New file. - * config/riscv/andes-vector-builtins-bases.h: New file. - * config/riscv/andes-vector-builtins-functions.def: New file. - * config/riscv/andes_vector.h: New file. - * config/riscv/andes-vector.md: New file. - * config/riscv/vector.md: Include andes_vector.md. - -2025-09-06 Anton Blanchard - - * config/riscv/riscv-cores.def (RISCV_TUNE): Update. - * config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): - Add tt_ascalon_d8. - * config/riscv/riscv.md: Update tune attribute and include - tt-ascalon-d8.md. - * config/riscv/tt-ascalon-d8.md: New file. - -2025-09-06 Andrew Pinski - - PR tree-optimization/108466 - * tree-ssa-phiopt.cc (factor_out_conditional_operation): Give better - locations to the new phi args and the new statement. - -2025-09-05 Andre Vehreschild - - PR middle-end/121806 - * gcc.cc (for_each_path): Initialize return value. - -2025-09-05 Robin Dapp - - PR target/121510 - * config/riscv/riscv.cc (riscv_legitimize_move): Check if we can - vec_extract. - -2025-09-05 Richard Sandiford - - PR rtl-optimization/121757 - * rtl-ssa/accesses.h (clobber_group::lookup_clobber): New member - function. - * rtl-ssa/accesses.cc (clobber_group::lookup_clobber): Likewise. - (clobber_group::prev_clobber, clobber_group::next_clobber) - (function_info::add_clobber): Use it. - -2025-09-05 Georg-Johann Lay - - PR target/121794 - * config/avr/avr.cc (avr_out_compare): Only use zero_reg - when there is no other sequence of the same length. - (avr_out_plus_ext): Same. - (avr_out_plus_1): Same. - -2025-09-05 Richard Biener - - * tree-vect-slp.cc (vectorizable_bb_reduc_epilogue): Do not - cost zero remaining scalar stmts. - (vectorizable_slp_permutation): Do not cost zero actual - permutations. - * tree-vect-stmts.cc (vectorizable_load): Likewise. - -2025-09-05 Richard Biener - - PR tree-optimization/121802 - * tree-vectorizer.h (vect_setup_realignment): Add vectype - argument. - * tree-vect-data-refs.cc (vect_setup_realignment): Replace - local vectype with argument. - * tree-vect-stmts.cc (vectorizable_load): Adjust. - -2025-09-05 Jakub Jelinek - - * J: Remove. - -2025-09-05 Kyrylo Tkachov - - * config/aarch64/iterators.md (sve_di_suf): New mode attribute. - * config/aarch64/aarch64-sve.md (3 SVE_INT_BINARY_MULTI): - Rename to... - (3): ... This. Use SVE_I_SIMD_DI mode - iterator. - * config/aarch64/aarch64-simd.md (v2di3): Use the above - for TARGET_SVE. - -2025-09-04 Pan Li - - * config/riscv/autovec-opt.md (*vmacc_vx_): Rename to - handle both the macc and madd. - (*mul_plus_vx_): Add madd pattern. - * config/riscv/vector.md (@pred_mul_plus_vx_): Rename to - handle both the macc and madd. - (*pred_macc__scalar_undef): Remove. - (*pred_nmsac__scalar_undef): Remove. - (*pred_mul_plus_vx_undef): Add new pattern to handle - both the vmacc and vmadd. - (@pred_mul_plus_vx): Ditto. - -2025-09-04 Jan Hubicka - - * auto-profile.cc (afdo_annotate_cfg): Apply zero_bbs after early - exit for missing profile; fix formating - -2025-09-04 Jan Hubicka - - * ipa-inline-transform.cc (inline_call): If function with - AFDO profile is inlined into function with - GUESSED_GLOBAL0_AFDO or GUESSED_GLOBAL0_ADJUSTED, scale - caller to AFDO profile. - * profile-count.h (profile_count::apply_scale): If num is AFDO - and den is not GUESSED, make result AFDO rather then GUESSED. - -2025-09-04 Wilco Dijkstra - - * builtins.cc (interclass_mathfn_icode): Add support for isnan - optab. - (expand_builtin): Add BUILT_IN_ISNAN to expand isnan optab. - (fold_builtin_interclass_mathfn): Expand BUILT_IN_ISNAN only after - checking for a valid optab. - (fold_builtin_classify): Move generic BUILT_IN_ISNAN expansion - to fold_builtin_interclass_mathfn. - (fold_builtin_1): For BUILT_IN_ISNAN first try fold_builtin_classify, - then fold_builtin_interclass_mathfn. - * optabs.def: Add isnan optab. - * doc/md.texi: Document isnan. - -2025-09-04 Richard Biener - - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Remove unnecessary code around double reductions. - -2025-09-04 Richard Earnshaw - - PR target/121775 - * config/arm/neon.md (vec_set_internal, all variants): - validate the immediate operand that indicates the lane to - modify. - -2025-09-04 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Eliminate - nested_cycle in favor of double_reduc and set that where - it makes most sense. Remove never taken paths and always - true conditions. - -2025-09-04 Robin Dapp - - PR target/121742 - PR target/121780 - PR target/121781 - * config/riscv/riscv-v.cc (expand_vec_perm): Swap target and - tmp_target. - -2025-09-04 Robin Dapp - - * tree-vect-loop-manip.cc (vect_gen_prolog_loop_niters): - Change prolog bound to poly_int64. - (vect_gen_scalar_loop_niters): Ditto. - (vect_do_peeling): Use poly estimate for frequency scaling. - -2025-09-04 Richard Biener - - PR tree-optimization/121768 - * tree-vect-loop.cc (vect_inner_phi_in_double_reduction_p): Remove. - (vect_analyze_scalar_cycles_1): Analyze inner loops of - double reductions immediately and only mark fully recognized - double reductions. Skip already analyzed inner loops. - (vect_is_simple_reduction): Change double_reduc from a flag - to an output of the inner loop PHI and to whether we are - processing an inner loop of a double reduction. - -2025-09-04 Richard Biener - - PR tree-optimization/121685 - * tree-eh.cc (ref_outside_object_p): Split out from ... - (tree_could_trap_p): ... here. Assume the this pointer - of a method refers to an object of at least size of its - base type. - -2025-09-04 Andrew Pinski - - PR tree-optimization/107051 - * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Allow for - memory sharing the same base if they known not to overlap over - the size. - -2025-09-04 Kito Cheng - - PR target/110812 - * config/riscv/riscv-c.cc (pragma_intrinsic_flags): Remove struct. - (riscv_pragma_intrinsic_flags_pollute): Remove function. - (riscv_pragma_intrinsic_flags_restore): Remove function. - (riscv_pragma_intrinsic): Simplify to only call handle_pragma_vector. - * config/riscv/riscv-vector-builtins.cc (pragma_intrinsic_flags): - Move struct definition here from riscv-c.cc. - (riscv_pragma_intrinsic_flags_pollute): Move and adapt from - riscv-c.cc, add zvfbfmin, zvfhmin and vector_elen_bf_16 support. - (riscv_pragma_intrinsic_flags_restore): Move from riscv-c.cc. - (rvv_switcher::rvv_switcher): Add pollute_flags parameter to - control flag manipulation. - (rvv_switcher::~rvv_switcher): Restore flags conditionally. - (register_builtin_types): Use rvv_switcher without polluting flags. - (get_required_extensions): Remove function. - (check_required_extensions): Simplify to only check type validity. - (function_instance::function_returns_void_p): Move implementation - from header. - (function_builder::add_function): Register placeholder for LTO. - (init_builtins): Simplify and handle LTO case. - (reinit_builtins): Remove function. - (handle_pragma_vector): Remove extension checking. - * config/riscv/riscv-vector-builtins.h - (function_instance::function_returns_void_p): Add declaration. - (function_call_info::function_returns_void_p): Remove inline - implementation. - -2025-09-04 Kito Cheng - - * common/config/riscv/riscv-common.cc (riscv_ext_is_subset): Fix - inverted logic in extension subset check. - -2025-09-04 Jakub Jelinek - - PR target/117599 - * gimple-lower-bitint.cc (bitint_large_huge::limb_access): Move - build_qualified_type calls into the if/else if/else bodies, for - the last one set ltype to m_limb_type first, drop limb_type_a - and use ltype instead. - -2025-09-04 Richard Biener - - PR tree-optimization/61247 - * tree-scalar-evolution.cc (simplify_peeled_chrec): - Handle the case of a converted peeled chrec. - -2025-09-04 Richard Biener - - PR tree-optimization/121740 - * tree-ssa-sccvn.cc (vn_reference_lookup_3): Allow skipping - may-defs from CTORs. Do not skip may-defs with storage-order - issues or (partial) must-defs. - -2025-09-03 Kuan-Lin Chen - - * config/riscv/andes.def: Add nds_fcvt_s_bf16 and nds_fcvt_bf16_s. - * config/riscv/riscv.md (truncsfbf2): Add TARGET_XANDESBFHCVT support. - (extendbfsf2): Ditto. - * config/riscv/riscv-builtins.cc: New AVAIL andesbfhcvt. - Add new define RISCV_ATYPE_BF and RISCV_ATYPE_SF. - * config/riscv/riscv-ftypes.def: New DEF_RISCV_FTYPE. - -2025-09-03 Kuan-Lin Chen - - * config/riscv/constraints.md (Ou07): New constraint. - (ads_Bext): New constraint. - * config/riscv/iterators.md (ANYLE32): New iterator. - (sizen): New iterator. - (sh_limit): New iterator. - (sh_bit): New iterator. - (cs): New iterator. - * config/riscv/predicates.md (ads_branch_bbcs_operand): New predicate. - (ads_branch_bimm_operand): New predicate. - (ads_imm_extract_operand): New predicate. - (ads_extract_size_imm_si): New predicate. - (ads_extract_size_imm_di): New predicate. - (const_int5_operand): New predicate. - * config/riscv/riscv-builtins.cc: - Add new AVAIL andesperf32 and andesperf64. - Add new define RISCV_ATYPE_DI. - * config/riscv/riscv-ftypes.def: New DEF_RISCV_FTYPE. - * config/riscv/riscv.cc - (riscv_extend_cost): Cost for pattern 'bfo'. - (riscv_rtx_costs): Cost for XAndesperf extension. - * config/riscv/riscv.md: Add support for XAndesperf to patterns - zero_extendsidi2_internal, zero_extendhi2, extendsidi2_internal, - extend2, 3 - and branch_on_bit. - * config/riscv/vector-iterators.md - (sz): Add sign_extract and zero_extract. - * config/riscv/andes.def: New file for vender Andes. - * config/riscv/andes.md: New file for vender Andes. - -2025-09-03 Kuan-Lin Chen - - * config/riscv/riscv-ext.def: Include riscv-ext-andes.def. - * config/riscv/riscv-ext.opt (riscv_xandes_subext): New variable. - (XANDESPERF) : New mask. - (XANDESBFHCVT): Ditto. - (XANDESVBFHCVT): Ditto. - (XANDESVSINTLOAD): Ditto. - (XANDESVPACKFPH): Ditto. - (XANDESVDOT): Ditto. - * config/riscv/t-riscv: Add riscv-ext-andes.def. - * doc/riscv-ext.texi: Regenerated. - * config/riscv/riscv-ext-andes.def: New file. - -2025-09-03 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfmax_vf_): Rename into... - (*vf_vf_): New pattern to combine vec_duplicate + - vf{min,max}.vv into vf{max,min}.vf. - * J: New file. - -2025-09-03 Austin Law - - PR target/121213 - * config/riscv/sync.md (amo_atomic_exchange_extended): - Separate insn with sign extension for 64 bit targets. - -2025-09-03 Jan Hubicka - - * ipa-profile.cc (ipa_profile): Dump profile_info. - -2025-09-03 Jan Hubicka - - * opts.cc (enable_fdo_optimizations): Do not auto-enabele loop - optimizations with AutoFDO. - -2025-09-03 Jan Hubicka - - * params.opt (-param=lto-partitions=): INcrease default value from 128 to 512. - -2025-09-03 Kyrylo Tkachov - - PR target/121749 - * config/aarch64/aarch64-simd.md (aarch64_shrn_n): - Use aarch64_simd_shift_imm_offset_ instead of - aarch64_simd_shift_imm_offset_ predicate. - (aarch64_shrn_n VQN define_expand): Likewise. - (*aarch64_rshrn_n_insn): Likewise. - (aarch64_rshrn_n): Likewise. - (aarch64_rshrn_n VQN define_expand): Likewise. - (aarch64_sqshrun_n_insn): Likewise. - (aarch64_sqshrun_n): Likewise. - (aarch64_sqshrun_n VQN define_expand): Likewise. - (aarch64_sqrshrun_n_insn): Likewise. - (aarch64_sqrshrun_n): Likewise. - (aarch64_sqrshrun_n): Likewise. - * config/aarch64/iterators.md (vn_mode): Handle DI, SI, HI modes. - -2025-09-03 Richard Biener - - PR tree-optimization/121756 - * tree-ssa-sink.cc (select_best_block): Avoid irreducible - regions in otherwise same loop depth. - (statement_sink_location): When sinking a VDEF, never place - that into an irreducible region. - -2025-09-03 Richard Biener - - * tree-vect-patterns.cc (vect_recog_cond_expr_convert_pattern): - Do not set any vector types. - -2025-09-03 Richard Biener - - PR tree-optimization/121767 - * tree-vect-patterns.cc (vect_recog_mod_var_pattern): Disable - for reductions. - -2025-09-03 Richard Biener - - PR tree-optimization/121758 - * tree-vect-patterns.cc (vect_mark_pattern_stmts): Try - harder to find a reduction continuation. - -2025-09-03 Andrew Pinski - - PR tree-optimization/121355 - * fold-const.cc (split_address_to_core_and_offset): Handle an MEM_REF after the call - to get_inner_reference. - -2025-09-02 Andrew Pinski - - * tree-ssa-ccp.cc (optimize_memcmp_eq): New function. - (pass_fold_builtins::execute): Call optimize_memcmp_eq - for memcmp. - * tree-ssa-strlen.cc (strlen_pass::handle_builtin_memcmp): Remove. - (strlen_pass::check_and_optimize_call): Don't call handle_builtin_memcmp. - -2025-09-02 Andrew Pinski - - * tree-ssa-strlen.cc (strlen_pass::handle_builtin_memcmp): Create - unaligned types if the alignment of the pointers is less - than the alignment of the new type. - -2025-09-02 Andrew Pinski - - * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Create - unaligned types if the alignment of the pointers is less - than the alignment of the new type. - -2025-09-02 Richard Biener - - PR tree-optimization/121753 - * tree-vect-patterns.cc (vect_synth_mult_by_constant): Properly - bail when synth_shift_p and an alg_shift use. Handle other - problematic cases. - -2025-09-02 Robin Dapp - - * config/riscv/riscv-v.cc (is_vlmax_len_p): Properly handle VLS - modes. - (imm_avl_p): Fix VLS length check. - (expand_strided_load): Use is_vlmax_len_p. - (expand_strided_store): Ditto. - * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): - Use GET_MODE_NUNITS / NF as avl. - -2025-09-02 Robin Dapp - - PR target/121742 - * config/riscv/riscv-v.cc (expand_vec_perm): Use temporary if - op1 and target overlap. - -2025-09-02 Andrew Stubbs - - * doc/options.texi: Document NoOffload. - -2025-09-02 Richard Biener - - * tree-vect-stmts.cc (vect_transform_stmt): Clear - STMT_VINFO_VECTYPE for all stmts. - (vect_analyze_stmt): Likewise. But restore at the end again. - -2025-09-02 Richard Biener - - PR tree-optimization/121754 - * tree-vectorizer.h (vect_reduc_type): Simplify to not ICE - on nested cycles. - -2025-09-02 Richard Biener - - * tree-vect-data-refs.cc (bump_vector_ptr): Remove the - STMT_VINFO_VECTYPE use, bump is always specified. - -2025-09-02 Richard Biener - - * tree-vectorizer.h (vect_check_gather_scatter): Add - vectype parameter. - * tree-vect-data-refs.cc (vect_check_gather_scatter): Get - vectype as parameter. - (vect_analyze_data_refs): Adjust. - * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Likewise. - * tree-vect-slp.cc (vect_get_and_check_slp_defs): Get vectype - as parameter, pass down. - (vect_build_slp_tree_2): Adjust. - * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): Likewise. - (vect_use_strided_gather_scatters_p): Likewise. - -2025-09-02 Jonathan Wakely - - * doc/extend.texi (Common Variable Attributes): Put counted_by - in alphabetical order. - -2025-09-02 Jakub Jelinek - - PR middle-end/121663 - * tree-cfg.cc (assign_discriminator): Change map argument type - from hash_map with int_hash to one with - int_hash . Cast LOCATION_LINE to unsigned. - Return early for (unsigned) LOCATION_LINE above -3U. - (assign_discriminators): Change map type from hash_map with - int_hash to one with int_hash . - -2025-09-02 Kito Cheng - - * config/riscv/gen-riscv-ext-opt.cc (version_t): Remove unused - struct. - (print_ext_doc_entry): Remove unused function. - -2025-09-01 Jonathan Grant - - * doc/install.texi (Configuration): Fix spelling of "support" - and "floating-point arithmetic". - -2025-09-01 Mark Harmstone - - * dwarf2codeview.cc (get_type_num_array_type): Don't try to - encode non-C-style arrays. - -2025-09-01 Jakub Jelinek - - * builtins.def: Implement C2Y N3577 - Rename s/uimaxabs/umaxabs/. - (BUILT_IN_UIMAXABS): Rename to ... - (BUILT_IN_UMAXABS): ... this. Change second argument to "umaxabs". - * builtins.cc (fold_builtin_1): Use BUILT_IN_UMAXABS rather than - BUILT_IN_UIMAXABS. - -2025-09-01 Gerald Pfeifer - - * doc/invoke.texi (Optimize Options): Update the perfwiki web - address. - -2025-09-01 Iain Sandoe - - * diagnostics/logging.h (log_param_location_t): Cast - location_t value to fmt_size_t. - -2025-09-01 Iain Sandoe - - * configure: Regenerate. - * configure.ac: Do not claim cfi instruction support even - if the assembler has it. - -2025-09-01 Yoshinori Sato - - PR target/89828 - * config/rx/rx.cc (add_pop_cfi_notes): Release the frame pointer if it is - used. - (rx_expand_prologue): Redesigned stack pointer and frame pointer update - process. - -2025-09-01 Richard Biener - - PR tree-optimization/121744 - * tree-vect-patterns.cc (vect_recog_vector_vector_shift_pattern): - Allow constant left operand. - -2025-09-01 Richard Biener - - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Use SLP_TREE_REDUC_IDX for following the SLP graph and - for identifying whether we use the 'else' in a COND. - (vectorizable_lane_reducing): Simplify check of whether - we are in a reduction. - (vectorizable_reduction): Add sanity checking around - SLP_TREE_REDUC_IDX and use it where it looks appropriate. - (vect_transform_reduction): Use SLP_TREE_REDUC_IDX. - * tree-vect-stmts.cc (vectorizable_call): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_condition): Likewise. - -2025-09-01 Richard Biener - - * tree-vect-loop.cc (vectorizable_live_operation): Check - vect_is_reduction on the SLP node rather than - STMT_VINFO_REDUC_DEF on the stmt. - (vectorizable_reduction): Do not set STMT_VINFO_REDUC_DEF - on live stmts. - -2025-09-01 Richard Biener - - * tree-vectorizer.h (vect_reduc_info): New. - (create_info_for_reduction): Likewise. - (VECT_REDUC_INFO_TYPE): Likewise. - (VECT_REDUC_INFO_CODE): Likewise. - (VECT_REDUC_INFO_FN): Likewise. - (VECT_REDUC_INFO_SCALAR_RESULTS): Likewise. - (VECT_REDUC_INFO_INITIAL_VALUES): Likewise. - (VECT_REDUC_INFO_REUSED_ACCUMULATOR): Likewise. - (VECT_REDUC_INFO_INDUC_COND_INITIAL_VAL): Likewise. - (VECT_REDUC_INFO_EPILOGUE_ADJUSTMENT): Likewise. - (VECT_REDUC_INFO_FORCE_SINGLE_CYCLE): Likewise. - (VECT_REDUC_INFO_RESULT_POS): Likewise. - (VECT_REDUC_INFO_VECTYPE): Likewise. - (STMT_VINFO_VEC_INDUC_COND_INITIAL_VAL): Remove. - (STMT_VINFO_REDUC_EPILOGUE_ADJUSTMENT): Likewise. - (STMT_VINFO_FORCE_SINGLE_CYCLE): Likewise. - (STMT_VINFO_REDUC_FN): Likewise. - (STMT_VINFO_REDUC_VECTYPE): Likewise. - (vect_reusable_accumulator::reduc_info): Adjust. - (vect_reduc_type): Adjust. - (_slp_tree::cycle_info): New member. - (SLP_TREE_REDUC_IDX): Likewise. - (vect_reduc_info_s): Move/copy data from ... - (_stmt_vec_info): ... here. - (_loop_vec_info::redcu_infos): New member. - (info_for_reduction): Adjust to take SLP node. - (vect_reduc_type): Adjust. - (vect_is_reduction): Add overload for SLP node. - * tree-vectorizer.cc (vec_info::new_stmt_vec_info): - Do not initialize removed members. - (vec_info::free_stmt_vec_info): Do not release them. - * tree-vect-stmts.cc (vectorizable_condition): Adjust. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize - cycle info. - (vect_build_slp_tree_2): Compute SLP reduc_idx and store - it. Create, populate and propagate reduction info. - (vect_print_slp_tree): Print cycle info. - (vect_analyze_slp_reduc_chain): Set cycle info on the - manual added conversion node. - (vect_optimize_slp_pass::start_choosing_layouts): Adjust. - * tree-vect-loop.cc (_loop_vec_info::~_loop_vec_info): - Release reduction infos. - (info_for_reduction): Get the reduction info from - the vector in the loop_vinfo. - (vect_create_epilog_for_reduction): Adjust. - (vectorizable_reduction): Likewise. - (vect_transform_reduction): Likewise. - (vect_transform_cycle_phi): Likewise, deal with nested - cycles not part of a double reduction have no reduction info. - * config/aarch64/aarch64.cc (aarch64_force_single_cycle): - Use VECT_REDUC_INFO_FORCE_SINGLE_CYCLE, get SLP node and use - that. - (aarch64_vector_costs::count_ops): Adjust. - -2025-09-01 Tobias Burnus - - PR target/121392 - * doc/install.texi (amdgcn): Mention Newlib commit - that fixes another SIMD issue. - -2025-09-01 Richard Biener - - * tree-vect-loop.cc (vect_is_simple_iv_evolution): Get - stmt_info and store into STMT_VINFO_LOOP_PHI_EVOLUTION_BASE_UNCHANGED - and STMT_VINFO_LOOP_PHI_EVOLUTION_PART here. Drop unused - output parameters. - (vect_is_nonlinear_iv_evolution): Likewise. - (vect_analyze_scalar_cycles_1): Remove redundant setting - of STMT_VINFO_LOOP_PHI_EVOLUTION_BASE_UNCHANGED and - STMT_VINFO_LOOP_PHI_EVOLUTION_PART. - -2025-09-01 Cui, Lili - - PR rtl-optimization/117838 - * ira-color.cc (improve_allocation): Remove soft conflict related code. - -2025-09-01 liuhongt - - PR target/121699 - * config/i386/predicates.md (const_vec_dup_operand): New - predicate. - * config/i386/sse.md (cond_): Fix predicate of - operands[3], and fix wrong operands passed to - ix86_vgf2p8affine_shift_matrix and - gen_vgf2p8affineqb__mask. - -2025-08-31 Takayuki 'January June' Suwa - - * config/xtensa/predicates.md (alt_ubranch_operator): - New predicate. - * config/xtensa/xtensa.md (*eqne_in_range): - New insn_and_split pattern. - -2025-08-31 Shreya Munnangi - - * config/riscv/riscv-protos.h (synthesize_add_extended): Prototype. - * config/riscv/riscv.cc (synthesize_add_extended): New function. - * config/riscv/riscv.md (addsi3): For RV64, try synthesize_add_extended. - -2025-08-31 Gerald Pfeifer - - * doc/install.texi (Binaries): Drop MinGW. - -2025-08-30 Jakub Jelinek - - PR tree-optimization/121698 - * tree-ssa-phiopt.cc (spaceship_replacement): Adjust - to handle spaceship unordered value -128 rather than 2 and - stmts from the new std::partial_order::_M_reverse() instead - of (_M_value & ~1) == _M_value etc. - * doc/md.texi (spaceship@var{m}4): Use -128 instead of 2. - * tree-ssa-math-opts.cc (optimize_spaceship): Adjust comments - that libstdc++ unordered value is -128 rather than 2 and use - that as the default unordered value. - * config/i386/i386-expand.cc (ix86_expand_fp_spaceship): Use - GEN_INT (-128) instead of const2_rtx and adjust comment accordingly. - * config/aarch64/aarch64.cc (aarch64_expand_fp_spaceship): Likewise. - * config/s390/s390.cc (s390_expand_fp_spaceship): Likewise. - -2025-08-30 Gerald Pfeifer - - * doc/extend.texi (Vector Extensions): Improve markup for list - of operators. - -2025-08-30 Gerald Pfeifer - - * doc/standards.texi (Standards): Update "Object-Oriented - Programming and the Objective-C Language" reference. - -2025-08-30 H.J. Lu - - PR target/121725 - * config/i386/i386-features.cc - (pass_x86_cse::candidate_gnu2_tls_p): Use the UNSPEC_DTPOFF - operand to check source operand in TLS64_COMBINE pattern. - -2025-08-30 Andrew Pinski - - PR tree-optimization/116651 - PR tree-optimization/93265 - PR tree-optimization/103647 - PR tree-optimization/52171 - * tree-ssa-forwprop.cc (simplify_builtin_memcmp): New function. - (simplify_builtin_call): Call simplify_builtin_memcmp for memcmp - memcmp_eq builtins. - -2025-08-29 Gaius Mulley - - PR modula2/121709 - * doc/gm2.texi (Module Search Path): Reflect the new - search order. - -2025-08-29 David Malcolm - - * Makefile.in (OBJS-libcommon): Add diagnostics/logging.o. - * diagnostic-global-context.cc: Include "diagnostics/logging.h". - (log_function_params, auto_inc_log_depth): New "using" decls. - (verbatim): Add logging. - (emit_diagnostic): Likewise. - (emit_diagnostic_valist): Likewise. - (emit_diagnostic_valist_meta): Likewise. - (inform): Likewise. - (inform_n): Likewise. - (warning): Likewise. - (warning_at): Likewise. - (warning_meta): Likewise. - (warning_n): Likewise. - (pedwarn): Likewise. - (permerror): Likewise. - (permerror_opt): Likewise. - * diagnostics/context.cc: Include "diagnostics/logging.h". - (context::initialize): Initialize m_logger. Add logging. - (context::finish): Add logging. Clean up m_logger. - (context::dump): Add indent param. - (context::set_sink): Add logging. - (context::add_sink): Add logging. - (diagnostic_kind_debug_text): New. - (get_debug_string_for_kind): New. - (context::report_diagnostic): Add logging. - (context::diagnostic_impl): Likewise. - (context::diagnostic_n_impl): Likewise. - (context::end_group): Likewise. - * diagnostics/context.h: Include "diagnostics/logging.h". - (context::dump): Add indent param. - (context::get_logger): New accessor. - (context::classify_diagnostics): Add logging. - (context::push_diagnostics): Likewise. - (context::pop_diagnostics): Likewise. - (context::m_logger): New field. - * diagnostics/html-sink.cc: Include "diagnostics/logging.h". - (html_builder::flush_to_file): Add logging. - (html_sink::on_report_diagnostic): Likewise. - * diagnostics/kinds.h (get_debug_string_for_kind): New decl. - * diagnostics/logging.cc: New file. - * diagnostics/logging.h: New file. - * diagnostics/output-file.h: Include "label-text.h". - * diagnostics/sarif-sink.cc: Include "diagnostics/logging.h". - (sarif_builder::flush_to_object): Add logging. - (sarif_builder::flush_to_file): Likewise. - (sarif_sink::on_report_diagnostic): Likewise. - * diagnostics/sink.h (sink::get_logger): New. - * diagnostics/text-sink.cc: Include "diagnostics/logging.h". - (text_sink::on_report_diagnostic): Add logging. - * doc/invoke.texi (Environment Variables): Document - GCC_DIAGNOSTICS_LOG. - * opts-diagnostic.cc: Include "diagnostics/logging.h". - (handle_OPT_fdiagnostics_add_output_): Add loggging. - (handle_OPT_fdiagnostics_set_output_): Likewise. - -2025-08-29 Takayuki 'January June' Suwa - - * config/xtensa/xtensa-protos.h (xtensa_bswapsi2_output): - New function prototype. - * config/xtensa/xtensa.cc - (xtensa_bswapsi2_output_1, xtensa_bswapsi2_output): - New functions. - * config/xtensa/xtensa.md (bswapsi2_internal): - Rewrite in compact syntax and use xtensa_bswapsi2_output() as asm - output. - -2025-08-29 Jeff Law - - PR target/121548 - * config/riscv/riscv-avlprop.cc (get_insn_vtype_mode): Assert - MODE_IDX is smaller than the number of operands. - (simplify_replace_vlmax_avl): Similarly. - (pass_avlprop::get_vlmax_ta_preferred_avl): Similarly. - * config/riscv/vector.md: Override merge_op_idx computation - for simple moves, just like is done for avl_type_idx and mode_idx. - -2025-08-29 Paul-Antoine Arras - - * config/riscv/autovec-opt.md - (*vfmin_vf_ieee_): Add new patterns to combine vec_duplicate + - vfmin.vv (unspec) into vfmin.vf. - (*vfmul_vf_, *vfrdiv_vf_, *vfmin_vf_): Fix attribute - types. - * config/riscv/vector.md (@pred__scalar): Allow - VLS modes. - -2025-08-29 H.J. Lu - - PR target/121096 - * config/i386/i386-expand.cc (expand_cpymem_epilogue): Set and - clear by_pieces_in_use when using by_pieces op. - (expand_setmem_epilogue): Likewise. - * config/i386/i386.cc (ix86_use_by_pieces_infrastructure_p): New. - (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): Likewise. - * config/i386/i386.h (machine_function): Add by_pieces_in_use. - -2025-08-29 H.J. Lu - - PR target/121108 - * config/i386/i386-expand.cc (setmem_epilogue_gen_val): Don't - assert op_mode == word_mode and handle any integer modes. - -2025-08-29 H.J. Lu - - PR target/121694 - * config/i386/i386-features.cc (redundant_pattern): Add - tlsdesc_val. - (pass_x86_cse): Likewise. - (pass_x86_cse::tls_set_insn_from_symbol): New member function. - (pass_x86_cse::candidate_gnu2_tls_p): Set tlsdesc_val. For - TLS64_COMBINE, match both UNSPEC_TLSDESC and UNSPEC_DTPOFF - symbols. For TLS64_CALL, match the UNSPEC_TLSDESC sumbol. - (pass_x86_cse::x86_cse): Initialize the tlsdesc_val field in - load. Pass the tlsdesc_val field to ix86_place_single_tls_call - for X86_CSE_TLSDESC. - -2025-08-29 Tobias Burnus - - * doc/invoke.texi (AMD GCN Options: -march): Remove '(experimental)' - from gfx-{9,10-3,11}-generic. - -2025-08-29 Tobias Burnus - - * doc/install.texi (amdgcn): Clarify which binaries must be the - LLVM version and which must be installed. Update version data for - ROCm for generic architectures. - -2025-08-29 liuhongt - - * doc/invoke.texi: Document -param=ix86-vect-unroll-limit. - -2025-08-29 Pan Li - - * config/riscv/autovec-opt.md (*vnmsac_vx_): Add new - pattern to combine to vx. - * config/riscv/vector.md (@pred_vnmsac_vx_): Add new - pattern to generate rtl. - (*pred_nmsac__scalar_undef): Ditto. - -2025-08-28 Andrew Pinski - - PR tree-optimization/115201 - * passes.def: Move cleanup_eh before first tail_recursion. - -2025-08-28 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfmin_vf_): Add new pattern to - combine vec_duplicate + vfmin.vv into vfmin.vf. - * config/riscv/vector.md (@pred__scalar): Allow VLS modes. - -2025-08-28 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop_form): Dump - niter assumption used for versioning. - -2025-08-28 Wilco Dijkstra - - PR middle-end/66462 - * config/aarch64/aarch64.md (isinf2): Add new expander. - * config/aarch64/iterators.md (mantissa_bits): Add new mode_attr. - -2025-08-28 Richard Biener - - * tree-vect-loop.cc (vectorize_fold_left_reduction): Do not get - reduc_var as argument, instead compute it here. - (vect_transform_reduction): Adjust. - -2025-08-28 Gaius Mulley - - PR modula2/121629 - * doc/gm2.texi (Module Search Path): New section. - (Compiler options): New option -fm2-pathname-root=. - New option -fm2-pathname-rootI. - -2025-08-28 Tobias Burnus - - PR debug/119367 - * acinclude.m4 (gcc_GAS_FLAGS): For gcn, use "--filetype=obj - -triple=amdgcn--amdhsa", if supported. - * configure: Regenerate. - * doc/install.texi (amdgcn-*-*): Also add llvm-objdump to the list of - to-be-copied files. - -2025-08-28 Richard Biener - Jakub Jelinek - - * tree-vect-patterns.cc (vect_synth_mult_by_constant): Avoid - in cases that introduce multiple uses of reduction operands. - -2025-08-28 Richard Biener - - * tree-vect-patterns.cc (vect_recog_divmod_pattern): Avoid - for stmts participating in a reduction. - -2025-08-28 Jakub Jelinek - - PR debug/119367 - * configure.ac (gcc_cv_as_leb128): Add fallback using readelf. - Grammar fix in comment. - * configure: Regenerate. - -2025-08-28 Jakub Jelinek - - PR debug/119367 - * dwarf2out.cc (output_one_line_info_table) : If - HAVE_AS_LEB128, use DW_LNS_advance_pc with dw2_asm_output_delta_uleb128 - instead of DW_LNS_fixed_advance_pc with dw2_asm_output_delta. - -2025-08-27 Andrew Pinski - - PR tree-optimization/121695 - * tree-if-conv.cc (factor_out_operators): Fix typo - in assignment of the phi. - -2025-08-27 Richard Biener - - * tree-vect-loop.cc (vect_transform_cycle_phi): Remove - unused reduc_stmt_info. - -2025-08-27 Richard Biener - - PR tree-optimization/121686 - * tree-vect-slp.cc (vect_analyze_slp): Consider all only-live - non-reduction defs for discovery. - -2025-08-27 H.J. Lu - - PR target/121668 - * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the - TLS call after debug marker. - -2025-08-27 Jeff Law - - * config/riscv/riscv-cores.def (xt-c908v): Drop xtheadvdot. - (xt-c910v2): Remove extraenous whitespace. - (xt-c920v2): Drop xtheadvdot and remove extraeonous whitespace. - -2025-08-26 liuhongt - - * config/i386/i386.cc (ix86_vector_costs::ix86_vector_costs): - Addd new memeber m_num_reduc, m_prefer_unroll. - (ix86_vector_costs::add_stmt_cost): Set m_prefer_unroll and - m_num_reduc - (ix86_vector_costs::finish_cost): Determine - m_suggested_unroll_vector with consideration of - reduc_lat_mult_thr, m_num_reduction and - ix86_vect_unroll_limit. - * config/i386/i386.h (enum ix86_reduc_unroll_factor): New - enum. - (processor_costs): Add reduc_lat_mult_thr and - vect_unroll_limit. - * config/i386/x86-tune-costs.h: Initialize - reduc_lat_mult_thr and vect_unroll_limit. - * config/i386/i386.opt: Add -param=ix86-vect-unroll-limit. - -2025-08-26 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfrdiv_vf_): Add new pattern to - combine vec_duplicate + vfdiv.vv into vfrdiv.vf. - * config/riscv/vector.md (@pred__reverse_scalar): Allow VLS - modes. - -2025-08-26 Tamar Christina - - PR target/121290 - * config/aarch64/aarch64.cc - (class aarch64_vector_costs ): Add m_loop_fully_scalar_dup. - (aarch64_vector_costs::add_stmt_cost): Detect invariant inner loops. - (adjust_body_cost): Adjust final costing if m_loop_fully_scalar_dup. - -2025-08-26 Paul-Antoine Arras - - * config/riscv/autovec-opt.md (*vfmul_vf_): Add new pattern to - combine vec_duplicate + vfmul.vv into vfmul.vf. - * config/riscv/vector.md (@pred__scalar): Allow VLS modes. - -2025-08-26 Jeff Law - - * config/riscv/riscv.cc (riscv_arg_partial_bytes): Remove name - from unused parameter. - -2025-08-26 Richard Biener - - * tree-vectorizer.h (vect_reduc_type): Get SLP node as argument. - * config/aarch64/aarch64.cc (aarch64_sve_in_loop_reduction_latency): - Take SLO node as argument and adjust. - (aarch64_in_loop_reduction_latency): Likewise. - (aarch64_detect_vector_stmt_subtype): Adjust. - (aarch64_vector_costs::count_ops): Likewise. Treat reductions - during scalar costing as single-cycle. - -2025-08-26 Richard Biener - - PR tree-optimization/121659 - * tree-vect-slp.cc (vect_build_slp_tree_1): Do not allow - matching up comparison operators by swapping if that would - disturb STMT_VINFO_REDUC_IDX. Make sure to only - actually mark operands for swapping when there was a - mismatch and we're not processing the first stmt. - -2025-08-26 Richard Biener - - * tree-vect-stmts.cc (vectorizable_store): Access lanes_ifn - only when VMAT_LOAD_STORE_LANES. - (vectorizable_load): Likewise. - -2025-08-26 Richard Biener - - * tree-vectorizer.h (stmt_vec_info_::reduc_vectype_in): Remove. - (STMT_VINFO_REDUC_VECTYPE_IN): Likewise. - * tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): Get - at the input vectype via the SLP node child. - (vectorizable_lane_reducing): Likewise. - (vect_transform_reduction): Likewise. - (vectorizable_reduction): Do not set STMT_VINFO_REDUC_VECTYPE_IN. - -2025-08-26 Jakub Jelinek - - PR target/121658 - * config/i386/sse.md (3 any_shift): Use const0_rtx - instead of GEN_INT (0). - (cond_ any_shift): Likewise. Formatting fix. - (3 any_rotate): Use register_operand predicate instead of - general_operand for match_operand 1. Use const0_rtx instead of - GEN_INT (0). - (v16qi3 any_rotate): Use force_reg on operands[1]. Formatting - fix. - * config/i386/i386.cc (ix86_shift_rotate_cost): Comment formatting - fixes. - -2025-08-26 Pan Li - - * config/riscv/vector.md (@pred_mul_plus_vx_): Add new pattern to - generate vmacc rtl. - (*pred_macc__scalar_undef): Ditto. - * config/riscv/autovec-opt.md (*vmacc_vx_): Add new - pattern to match the vmacc vx combine. - -2025-08-25 Jakub Jelinek - - PR middle-end/121453 - * omp-expand.cc (expand_omp_for_init_counts): Clear fd->loop.n2 - before first zero count check if zero_iter1_bb is non-NULL upon - entry and fd->loop.n2 has not been written yet. - -2025-08-25 David Faust - - PR debug/121411 - * dwarf2ctf.cc (gen_ctf_subrange_type): Use unsigned HWI for - array_num_elements. Fallback to CTF_K_UNKNOWN if the array - type has too many elements for CTF to represent. - -2025-08-25 Andrew Pinski - - * tree-ssa-forwprop.cc (simplify_permutation): Boolify. - (pass_forwprop::execute): No longer handle 2 as the return - from simplify_permutation. - -2025-08-25 Andrew Pinski - - * tree-ssa-forwprop.cc (forward_propagate_into_comparison): Boolify. - (pass_forwprop::execute): Don't handle return of 2 from - forward_propagate_into_comparison. - -2025-08-25 Andrew Pinski - - * tree-ssa-forwprop.cc (remove_prop_source_from_use): Remove - return type. - (forward_propagate_into_comparison): Update dealing with - no return type of remove_prop_source_from_use. - (forward_propagate_into_gimple_cond): Likewise. - (simplify_permutation): Likewise. - -2025-08-25 Andrew Pinski - - * tree-ssa-forwprop.cc (simplify_gimple_switch): Add simple_dce_worklist - argument. Mark the old index when doing the replacement. - (pass_forwprop::execute): Update call to simplify_gimple_switch. - -2025-08-25 Andrew Pinski - - PR tree-optimization/121279 - * gimple-fold.cc (gimple_needing_rewrite_undefined): Return - true for non mode precision boolean loads. - (rewrite_to_defined_unconditional): Handle non mode precision loads. - -2025-08-25 Andrew Pinski - - * tree-ssa-loop-im.cc (execute_sm): Call - get_or_create_ssa_default_def for the new uninitialized - decl. - -2025-08-25 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (addsi3, mulhisi3, andsi3, - zero_extendsi2, extendhisi2_internal, movsi_internal, - movhi_internal, movqi_internal, movsf_internal, ashlsi3_internal, - ashrsi3, lshrsi3, rotlsi3, rotrsi3): - Rewrite in compact syntax. - -2025-08-25 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md - (The auxiliary define_split for *masktrue_const_bitcmpl): - Use a more concise function call, i.e., - (1 << GET_MODE_BITSIZE (mode)) - 1 is equivalent to - GET_MODE_MASK (mode). - -2025-08-25 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (mode_bits): - New mode attribute. - (zero_extendsi2): Use the appropriate mode iterator and - attribute to unify "zero_extend[hq]isi2" to this description. - -2025-08-25 Richard Biener - - PR tree-optimization/121638 - * tree-vect-stmts.cc (process_use): Do not make induction - PHI backedge values relevant. - -2025-08-25 Indu Bhagat - Claudiu Zissulescu - - * asan.h (HWASAN_TAG_SIZE): Use targetm.memtag.tag_bitsize. - * config/i386/i386.cc (ix86_memtag_tag_size): Rename to - ix86_memtag_tag_bitsize. - (TARGET_MEMTAG_TAG_SIZE): Renamed to TARGET_MEMTAG_TAG_BITSIZE. - * doc/tm.texi (TARGET_MEMTAG_TAG_SIZE): Likewise. - * doc/tm.texi.in (TARGET_MEMTAG_TAG_SIZE): Likewise. - * target.def (tag_size): Rename to tag_bitsize. - * targhooks.cc (default_memtag_tag_size): Rename to - default_memtag_tag_bitsize. - * targhooks.h (default_memtag_tag_size): Likewise. - -2025-08-25 Kito Cheng - - * config/riscv/riscv-protos.h (riscv_init_cumulative_args): Change - fntype parameter from tree to const_tree. - * config/riscv/riscv.cc (riscv_init_cumulative_args): Likewise. - (riscv_function_value): Replace with new implementation that - conforms to TARGET_FUNCTION_VALUE hook signature. - (riscv_libcall_value): New function implementing TARGET_LIBCALL_VALUE. - (TARGET_FUNCTION_VALUE): Define. - (TARGET_LIBCALL_VALUE): Define. - * config/riscv/riscv.h (FUNCTION_VALUE): Remove. - (LIBCALL_VALUE): Remove. - -2025-08-25 Andi Kleen - - * config/i386/i386-expand.cc (ix86_vgf2p8affine_shift_matrix): - New function to lookup shift/rotate matrixes for gf2p8affine. - * config/i386/i386-protos.h (ix86_vgf2p8affine_shift_matrix): - Declare new function. - * config/i386/i386.cc (ix86_shift_rotate_cost): Add cost model - for shift/rotate implemented using gf2p8affine. - * config/i386/sse.md (VI1_AVX512_3264): New mode iterator. - (3): Add GFNI case for shift patterns. - (cond_3): New pattern. - (3): Dito. - (v16qi): New rotate pattern to handle XOP V16QI case - and GFNI. - (rotl3, rotr3): Exclude V16QI case. - -2025-08-25 Xi Ruoyao - - PR target/121634 - * config/loongarch/simd.md (simd_maddw_evod__): Use - WVEC_HALF instead of WVEC for the mode of the sign_extend for - the rhs of multiplication. - -2025-08-25 Jeff Law - - * ifcvt.cc (noce_try_sign_bit_splat): Fix right shift computation. - -2025-08-23 Sam James - - PR target/120933 - * config.gcc (supported_defaults): Add tls for i386, x86_64. - * config/i386/i386.h (OPTION_DEFAULT_SPECS): Add tls. - * doc/install.texi: Document --with-tls= for i386, x86_64. - -2025-08-23 John Ericson - - * gcc.cc (for_each_path): templated, to make passing lambdas - possible/easy/safe, and to have a polymorphic return type. - (struct add_to_obstack_info): Deleted, lambda captures replace - it. - (add_to_obstack): Moved to lambda in build_search_list. - (build_search_list): Has above lambda now. - (struct file_at_path_info): Deleted, lambda captures replace - it. - (file_at_path): Moved to lambda in find_a_file. - (find_a_file): Has above lambda now. - (struct spec_path_info): Reamed to just struct spec_path. - (struct spec_path): New name. - (spec_path): Rnamed to spec_path::operator() - (spec_path::operator()): New name - (do_spec_1): Updated for_each_path call sites. - -2025-08-22 Kishan Parmar - - PR target/118890 - * config/rs6000/rs6000.cc (can_be_rotated_to_negative_lis): Add bounds - checks for shift counts to prevent undefined behavior. - (rs6000_emit_set_long_const): Likewise. - -2025-08-22 Jeff Law - - PR rtl-optimization/120553 - * ifcvt.cc (noce_try_sign_bit_splat): New function. - (noce_process_if_block): Use it. - -2025-08-22 Richard Biener - - * tree-vect-loop.cc (vectorizable_live_operation): Pass - the representative of the PHIs node to - vect_create_epilog_for_reduction. - -2025-08-22 Richard Biener - - * tree-vect-loop.cc (vectorizable_lane_reducing): Get - reduction info properly. Adjust checks according to - comments. - (vectorizable_reduction): Do not set STMT_VINFO_REDUC_VECTYPE_IN - on the reduc info. - (vect_transform_reduction): Query STMT_VINFO_REDUC_VECTYPE_IN - on the actual reduction stmt, not the info. - -2025-08-22 Pan Li - - * match.pd: Add form 3 for unsigned SAT_MUL. - -2025-08-22 H.J. Lu - - PR target/121635 - * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the - TLS call after NOTE_INSN_FUNCTION_BEG. - -2025-08-22 Richard Biener - - * tree-vect-loop.cc (get_initial_defs_for_reduction): Adjust - comment. - (vect_create_epilog_for_reduction): Get at the reduction - kind via the instance, re-use the slp_reduc flag instead - of checking REDUC_GROUP_FIRST_ELEMENT again. - Remove unreachable code. - (vectorizable_reduction): Compute a reduc_chain flag from - the SLP instance kind, avoid REDUC_GROUP_FIRST_ELEMENT - checks. - (vect_transform_cycle_phi): Likewise. - (vectorizable_live_operation): Check the SLP instance - kind instead of REDUC_GROUP_FIRST_ELEMENT. - -2025-08-22 Richard Biener - - * tree-parloops.cc (parloops_is_simple_reduction): Pass - in double reduction inner loop LC phis and query that. - (parloops_force_simple_reduction): Similar, but set it. - Check for valid reduction types here. - (valid_reduction_p): Remove. - (gather_scalar_reductions): Adjust, fixup double - reduction inner loop processing. - -2025-08-22 Sebastian Huber - - * config/riscv/t-rtems: Add -mstrict-align multilibs for - targets without support for misaligned access in hardware. - -2025-08-21 Dimitar Dimitrov - - * config/pru/pru.cc (pru_init_libfuncs): Set softmpy libgcc - functions for optab multiplication entries if TARGET_OPT_MUL - option is not set. - -2025-08-21 Dimitar Dimitrov - - * config.gcc: Include pru/t-multilib. - * config/pru/pru.h (MULTILIB_DEFAULTS): Define. - * config/pru/t-multilib: New file. - -2025-08-21 Dimitar Dimitrov - - * common/config/pru/pru-common.cc (TARGET_DEFAULT_TARGET_FLAGS): - Keep multiplication, FILL and ZERO instructions enabled by - default. - * config/pru/pru.md (prumov): Gate code generation on - TARGET_OPT_FILLZERO. - (mov): Ditto. - (zero_extendqidi2): Ditto. - (zero_extendhidi2): Ditto. - (zero_extendsidi2): Ditto. - (@pru_ior_fillbytes): Ditto. - (@pru_and_zerobytes): Ditto. - (@di3): Ditto. - (mulsi3): Gate code generation on TARGET_OPT_MUL. - * config/pru/pru.opt: Add mmul and mfillzero options. - * config/pru/pru.opt.urls: Regenerate. - * config/rl78/rl78.opt.urls: Regenerate. - * doc/invoke.texi: Document new options. - -2025-08-21 Richard Sandiford - - PR rtl-optimization/121619 - * rtl-ssa/functions.h (function_info::commit_make_use_available): - Declare. - * rtl-ssa/blocks.cc (function_info::commit_make_use_available): - New function. - * rtl-ssa/changes.cc (function_info::apply_changes_to_insn): Use it. - -2025-08-21 Richard Biener - - PR tree-optimization/111494 - * gimple-fold.h (arith_code_with_undefined_signed_overflow): Declare. - * gimple-fold.cc (arith_code_with_undefined_signed_overflow): Export. - * tree-vect-stmts.cc (vectorizable_operation): Use unsigned - arithmetic for operations participating in a reduction. - -2025-08-21 H.J. Lu - - PR target/121607 - * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the - TLS call after NOTE_INSN_BASIC_BLOCK in a basic block with only - a label. - -2025-08-21 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md (*btrue_INT_MIN): - Change the branch insn condition to test for a negative number - rather than testing for the MSB. - -2025-08-21 Richard Biener - - * tree-vectorizer.h (vectorizable_phi): Take bb_vec_info. - (vectorizable_early_exit): Take loop_vec_info. - * tree-vect-loop.cc (vectorizable_phi): Adjust. - * tree-vect-slp.cc (vect_slp_analyze_operations): Likewise. - (vectorize_slp_instance_root_stmt): Likewise. - * tree-vect-stmts.cc (vectorizable_early_exit): Likewise. - (vect_transform_stmt): Likewise. - (vect_analyze_stmt): Merge the sequences of vectorizable_* - where common. - -2025-08-20 Qing Zhao - - * common.opt.urls: Regenerate. - -2025-08-20 Qing Zhao - - PR tree-optimization/109071 - PR tree-optimization/85788 - PR tree-optimization/88771 - PR tree-optimization/106762 - PR tree-optimization/108770 - PR tree-optimization/115274 - PR tree-optimization/117179 - * Makefile.in (OBJS): Add diagnostic-context-rich-location.o. - * common.opt (fdiagnostics-show-context): New option. - (fdiagnostics-show-context=): New option. - * diagnostic-context-rich-location.cc: New file. - * diagnostic-context-rich-location.h: New file. - * doc/invoke.texi (fdiagnostics-details): Add - documentation for the new options. - * gimple-array-bounds.cc (check_out_of_bounds_and_warn): Add - one new parameter. Use rich location with details for warning_at. - (array_bounds_checker::check_array_ref): Use rich location with - ditails for warning_at. - (array_bounds_checker::check_mem_ref): Add one new parameter. - Use rich location with details for warning_at. - (array_bounds_checker::check_addr_expr): Use rich location with - move_history_diagnostic_path for warning_at. - (array_bounds_checker::check_array_bounds): Call check_mem_ref with - one more parameter. - * gimple-array-bounds.h: Update prototype for check_mem_ref. - * gimple-ssa-warn-access.cc (warn_string_no_nul): Use rich location - with details for warning_at. - (maybe_warn_nonstring_arg): Likewise. - (maybe_warn_for_bound): Likewise. - (warn_for_access): Likewise. - (check_access): Likewise. - (pass_waccess::check_strncat): Likewise. - (pass_waccess::maybe_check_access_sizes): Likewise. - * gimple-ssa-warn-restrict.cc (pass_wrestrict::execute): Calculate - dominance info for diagnostics show context. - (maybe_diag_overlap): Use rich location with details for warning_at. - (maybe_diag_access_bounds): Use rich location with details for - warning_at. - -2025-08-20 Andrew Pinski - - PR tree-optimization/121568 - * ipa-prop.h (build_ref_for_offset): Remove. - * tree-sra.cc (build_ref_for_offset): Make static. - -2025-08-20 Richard Sandiford - - * config.gcc (aarch64*-*-*): Remove aarch64-cc-fusion.o from - extra_objs. - * config/aarch64/aarch64-passes.def (pass_cc_fusion): Delete. - * config/aarch64/aarch64-protos.h (make_pass_cc_fusion): Delete. - * config/aarch64/t-aarch64 (aarch64-cc-fusion.o): Delete. - * config/aarch64/aarch64-cc-fusion.cc: Delete. - * late-combine.cc (late_combine::optimizable_set): Take a set_info * - rather than an insn_info * and move destination tests from... - (late_combine::combine_into_uses): ...here. Take a set_info * rather - an insn_info *. Take the rtx set. - (late_combine::parallelize_insns, late_combine::combine_cc_setter) - (late_combine::combine_insn): New member functions. - (late_combine::m_parallel): New member variable. - * rtlanal.cc (pattern_cost): Handle sets of CC registers in the - same way as comparisons. - -2025-08-20 Richard Sandiford - - * rtl-ssa/blocks.cc (function_info::create_degenerate_phi): Fix - inverted test of bitmap_set_bit. Call add_live_out_use even - if the register was previously live-out from the predecessor block. - Instead... - (function_info::add_live_out_use): ...check here whether a live-out - use already exists. - -2025-08-20 Richard Sandiford - - * rtl-ssa/accesses.h (use_lookup): New class. - * rtl-ssa/functions.h (function_info::find_def): Expand comment. - (function_info::find_use): Declare. - * rtl-ssa/member-fns.inl (use_lookup::prev_use, use_lookup::next_use) - (use_lookup::matching_use, use_lookup::matching_or_prev_use) - (use_lookup::matching_or_next_use): New member functions. - * rtl-ssa/accesses.cc (function_info::find_use): Likewise. - -2025-08-20 Richard Biener - - PR tree-optimization/114480 - * cfganal.cc (compute_idf): Split processing of the initial - workset from the main iteration. Use a vector for the - workset of the main iteration. - -2025-08-20 Georg-Johann Lay - - PR target/121608 - * config/avr/specs.h (LINK_RELAX_SPEC): Wrap in %{!r...}. - -2025-08-20 Richard Biener - - * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): New, - copied from vect_analyze_slp_instance and only handle - slp_inst_kind_reduc_chain. Inline vect_build_slp_instance. - (vect_analyze_slp_instance): Only handle slp_inst_kind_store. - Inline vect_build_slp_instance. - (vect_build_slp_instance): Remove now unused stmt_info parameter, - remove special code for store groups and reduction chains. - (vect_analyze_slp): Call vect_analyze_slp_reduc_chain - for reduction chain SLP build and adjust. - -2025-08-20 Richard Biener - - * tree-vect-data-refs.cc (vect_check_gather_scatter): - Remove restriction on epilogue of epilogue vectorization. - -2025-08-20 Richard Biener - - * tree-vect-loop.cc (update_epilogue_loop_vinfo): Remove - fixing up pattern stmt operands and gather/scatter DR_REFs. - (find_in_mapping): Remove. - -2025-08-20 Richard Biener - - * tree-vectorizer.h (vect_load_store_data): New. - (_slp_tree::memory_access_type): Remove. - (SLP_TREE_MEMORY_ACCESS_TYPE): Turn into inline function. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Do not - initialize SLP_TREE_MEMORY_ACCESS_TYPE. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Remove gather_scatter_info pointer argument, instead get - info from the SLP node. - (vect_build_one_gather_load_call): Get SLP node and builtin - decl as argument and remove uses of gather_scatter_info. - (vect_build_one_scatter_store_call): Likewise. - (vect_get_gather_scatter_ops): Remove uses of gather_scatter_info. - (vect_get_strided_load_store_ops): Get SLP node and remove - uses of gather_scatter_info. - (get_load_store_type): Take pointer to vect_load_store_data - instead of individual pointers. - (vectorizable_store): Adjust. Re-use get_load_store_type - result from analysis time. - (vectorizable_load): Likewise. - -2025-08-20 H.J. Lu - - PR target/121572 - * config/i386/i386-features.cc (replace_tls_call): Add a bitmap - argument and put the updated TLS instruction in the bitmap. - (ix86_get_dominator_for_reg): New. - (ix86_check_flags_reg): Likewise. - (ix86_emit_tls_call): Likewise. - (ix86_place_single_tls_call): Add 2 bitmap arguments for updated - GNU and GNU2 TLS instructions. Call ix86_emit_tls_call to emit - TLS instruction. Correct debug dump for before instruction. - -2025-08-19 Andrew Pinski - - PR middle-end/120024 - * calls.cc (expand_call): Remove start_sequence/end_sequence - for ECF_MALLOC. - Check valreg before deferencing it when it comes to malloc like - functions. Use the return value of emit_move_insn instead of - calling get_last_insn. - -2025-08-19 Richard Biener - - * tree-parloops.cc (parloops_is_slp_reduction): Remove. - (parloops_is_simple_reduction): Do not call it. - -2025-08-19 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Pass the - appropriate SLP node for costing of single-def-use-cycle - operations. - (vectorizable_live_operation): Pass the SLP node to the - costing hook. - * tree-vect-stmts.cc (vectorizable_bswap): Likewise. - (vectorizable_store): Likewise. - -2025-08-19 Richard Biener - - PR tree-optimization/121592 - * tree-vect-slp.cc (vect_analyze_slp): When SLP reduction chain - discovery fails, fail overall when the tail of the chain - isn't also the entry for the non-SLP reduction. - -2025-08-19 Richard Biener - - * config.gcc (riscv*-*-*): Look for python3, then fall back - to python. Never use python2. - -2025-08-19 Richard Biener - - PR tree-optimization/121527 - * tree-sra.cc (build_access_from_expr_1): Do not strip an - outer VIEW_CONVERT_EXPR as it's relevant for the size of - the access. - (get_access_for_expr): Likewise. - -2025-08-19 Tamar Christina - - PR target/121536 - * config/aarch64/aarch64.cc (aarch64_bool_compound_p): Use - SLP_TREE_VECTYPE instead of STMT_VINFO_VECTYPE. - (aarch64_adjust_stmt_cost, aarch64_vector_costs::count_ops): Pass SLP - node to aarch64_bool_compound_p. - -2025-08-19 Tamar Christina - - PR target/121536 - * tree-vect-loop.cc (vectorizable_phi, vectorizable_recurr, - vectorizable_nonlinear_induction, vectorizable_induction): Pass slp_node - instead of stmt_info to record_stmt_cost. - -2025-08-19 Tamar Christina - - PR target/121536 - * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): Set - vectype from type of lhs of gimple stmt. - -2025-08-18 Andrew Pinski - - PR middle-end/121581 - * doc/extend.texi (__builtin_object_size): Fix example. - -2025-08-18 Indu Bhagat - - * flag-types.h (sanitize_code_type): Define. - * asan.h (sanitize_flags_p): Use 'sanitize_code_type' instead of - 'unsigned int'. - * common.opt: Likewise. - * dwarf2asm.cc (dw2_output_indirect_constant_1): Likewise. - * opts.cc (find_sanitizer_argument): Likewise. - (report_conflicting_sanitizer_options): Likewise. - (parse_sanitizer_options): Likewise. - (parse_no_sanitize_attribute): Likewise. - * opts.h (parse_sanitizer_options): Likewise. - (parse_no_sanitize_attribute): Likewise. - * tree-cfg.cc (print_no_sanitize_attr_value): Likewise. - * tree.cc (tree_fits_sanitize_code_type_p): Define. - (tree_to_sanitize_code_type): Likewise. - * tree.h (tree_fits_sanitize_code_type_p): Declare. - (tree_to_sanitize_code_type): Likewise. - -2025-08-18 Indu Bhagat - - * config/aarch64/aarch64.md (MEMTAG_TAG_MASK): New define - constant. - (MEMTAG_ADDR_MASK): Likewise. - (irg, subp, ldg): Use new constants. - -2025-08-18 Richard Sandiford - - PR rtl-optimization/97497 - * function-abi.h (predefined_function_abi::only_partial_reg_clobbers) - (function_abi::only_partial_reg_clobbers): New member functions. - * gcse-common.cc: Include regs.h and function-abi.h. - (compute_transp): Check for partially call-clobbered registers - and treat them as not being transparent in blocks with calls. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (UNSPEC_TI_FETCH_ADD): New unspec. - (UNSPEC_TI_FETCH_SUB): Likewise. - (UNSPEC_TI_FETCH_AND): Likewise. - (UNSPEC_TI_FETCH_XOR): Likewise. - (UNSPEC_TI_FETCH_OR): Likewise. - (UNSPEC_TI_FETCH_NAND_MASK_INVERTED): Likewise. - (ALL_SC): New define_mode_iterator. - (_scq): New define_mode_attr. - (atomic_fetch_nand): Accept ALL_SC instead of only GPR. - (UNSPEC_TI_FETCH_DIRECT): New define_int_iterator. - (UNSPEC_TI_FETCH): New define_int_iterator. - (amop_ti_fetch): New define_int_attr. - (size_ti_fetch): New define_int_attr. - (atomic_fetch_ti_scq): New define_insn. - (atomic_fetch_ti): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_exchangeti_scq): New - define_insn. - (atomic_exchangeti): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_compare_and_swapti_scq): New - define_insn. - (atomic_compare_and_swapti): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/loongarch.cc (loongarch_print_operand_reloc): - Accept "%t" for printing the number of the 64-bit machine - register holding the upper half of a TImode. - * config/loongarch/sync.md (atomic_storeti_scq): New - define_insn. - (atomic_storeti): expand to atomic_storeti_scq if !ISA_HAS_LSX. - -2025-08-18 Xi Ruoyao - - * config/loongarch/genopts/isa-evolution.in (scq): New evolution - feature. - * config/loongarch/loongarch-evolution.cc: Regenerate. - * config/loongarch/loongarch-evolution.h: Regenerate. - * config/loongarch/loongarch-str.h: Regenerate. - * config/loongarch/loongarch.opt: Regenerate. - * config/loongarch/loongarch.opt.urls: Regenerate. - * config/loongarch/loongarch-def.cc: Make -mscq the default for - -march=la664 and -march=la64v1.1. - * doc/invoke.texi (LoongArch Options): Document -m[no-]scq. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_storeti_lsx): New - define_insn. - (atomic_storeti): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_loadti_lsx): New define_insn. - (atomic_loadti): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md - (atomic_fetch_nand_mask_inverted): New define_insn. - (atomic_fetch_nand): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_fetch_sub): - Disable if ISA_HAS_LAM_BH. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (UNSPEC_COMPARE_AND_SWAP_AND): - Remove. - (UNSPEC_COMPARE_AND_SWAP_XOR): Remove. - (UNSPEC_COMPARE_AND_SWAP_OR): Remove. - (atomic_test_and_set): Rename to ... - (atomic_fetch_): ... this, and - adapt the expansion to use it for any bitwise operations and any - val, instead of just ior 1. - (atomic_test_and_set): New define_expand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_test_and_set): Remove - unneeded andi instruction from the expansion. - -2025-08-18 Xi Ruoyao - - * config/loongarch/loongarch.cc (loongarch_print_operand_reloc): - Make "%T" output a comment marker if the operand is a memory - order for which the barrier won't be generated; remove "%t". - * config/loongarch/sync.md (atomic_cas_value_strong): Add - %T before "b 3f". - (atomic_cas_value_cmp_and_7_): Likewise. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (UNSPEC_COMPARE_AND_SWAP_AMCAS): New - UNSPEC code. - (atomic_cas_value_strong): NFC, update the comment to note - we only need to consider failure memory order. - (atomic_cas_value_strong_amcas): Use - UNSPEC_COMPARE_AND_SWAP_AMCAS instead of - UNSPEC_COMPARE_AND_SWAP. - (atomic_compare_and_swap): Pass failure memorder to - gen_atomic_cas_value_strong. - (atomic_compare_and_swap): Pass failure memorder to - gen_atomic_cas_value_cmp_and_7_si. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_test_and_set): Use bstrins - for masking the address if possible. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_load): Remove "+" for - the memory operand. - (atomic_store): Use "=" instead of "+" for the memory - operand. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md: Use instead of . - (amo): Remove. - -2025-08-18 Xi Ruoyao - - * config/loongarch/sync.md (atomic_optab): Remove. - (atomic_): Change atomic_optab to amop. - (atomic_fetch_): Likewise. - -2025-08-17 Austin Law - - PR target/121213 - * config/riscv/sync.md (amo_atomic_exchange): Allow - (const_int 0) as input operand. Do not tie input to output. - No longer earlyclobber the output. - -2025-08-17 Artemiy Volkov - - * regrename.cc (scan_rtx_reg): Handle fused insn pairs. - -2025-08-17 Jan Dubiec - - PR target/109324 - * config/h8300/addsub.md: Explicitly specify mode for plus operation. - * config/h8300/jumpcall.md: Explicitly specify modes for eq and - match_operand operations. - * config/h8300/testcompare.md: Explicitly specify modes for eq, ltu - and compare operations. - -2025-08-17 Artemiy Volkov - - * ira-conflicts.cc (add_insn_allocno_copies): Handle fused insn pairs. - * rtl.h (single_output_fused_pair_p): Declare new function. - * rtlanal.cc (single_output_fused_pair_p): Define it. - -2025-08-17 Dimitar Dimitrov - - PR target/121538 - * config/riscv/arch-canonicalize (parse_dep_exts): - Match condition block up to closing brace. - (test_parse_long_condition_block): New test. - -2025-08-17 H.J. Lu - - PR target/121541 - * config/i386/i386-options.cc - (ix86_valid_target_attribute_inner_p): Add target("80387") - attribute. Set the mask bit in opts_set->x_target_flags if the - mask bit in opts->x_target_flags is updated. - * doc/extend.texi: Document target("80387") function attribute. - -2025-08-17 Pan Li - - * config/riscv/autovec-opt.md: Add supported insn - of vx combine. - -2025-08-17 Pan Li - - * config/riscv/autovec-opt.md: Add missed DONE - for vx combine pattern. - -2025-08-15 Jakub Jelinek - - * doc/extend.texi (Type Traits): Document - __builtin_structured_binding_size. - -2025-08-15 Jakub Jelinek - - PR c++/121552 - * doc/invoke.texi (-Wno-non-c-typedef-for-linkage): Document. - -2025-08-15 Robert Dubner - - * real.cc (real_to_decimal_for_mode): Set str[0] to known value. - -2025-08-15 Vineet Gupta - - PR target/121534 - * config/riscv/riscv.md (round_pattern): save/restore fflags. - -2025-08-15 Qing Zhao - - * doc/extend.texi: Extend counted_by attribute to pointer fields in - structures. Add one more requirement to pointers with counted_by - attribute. - -2025-08-15 Umesh Kalappa - - * config/riscv/riscv-ext-mips.def (DEFINE_RISCV_EXT): - Added mips prefetch extension. - * config/riscv/riscv-ext.opt: Generated file. - * config/riscv/riscv.md (prefetch): - Added mips prefetch address operand constraint. - * config/riscv/constraints.md: Added mips specific constraint. - * config/riscv/predicates.md (prefetch_operand): - Updated for mips nine bits offset. - * config/riscv/riscv.cc (riscv_prefetch_offset_address_p): - Legitimate address with offset for prefetch check. - * config/riscv/riscv-protos.h: Likewise. - * config/riscv/riscv.h: - Macros to support for mips cached type. - * doc/riscv-ext.texi: Updated for mips prefetch. - -2025-08-15 Richard Sandiford - - * config/riscv/riscv-protos.h - (riscv_process_target_version_attr): Change location_t argument - to location_t *. - * config/riscv/riscv-subset.h - (riscv_subset_list::riscv_subset_list): Change location_t argument - to location_t *. - (riscv_subset_list::parse): Likwise. - (riscv_subset_list::set_loc): Likewise. - (riscv_minimal_hwprobe_feature_bits): Likewise. - (riscv_subset_list::m_loc): Change type to location_t. - * common/config/riscv/riscv-common.cc - (riscv_subset_list::riscv_subset_list): Change location_t argument - to location_t *. - (riscv_subset_list::add): Suppress diagnostics when m_loc is null. - (riscv_subset_list::parsing_subset_version): Likewise. - (riscv_subset_list::parse_profiles): Likewise. - (riscv_subset_list::parse_base_ext): Likewise. - (riscv_subset_list::parse_single_std_ext): Likewise. - (riscv_subset_list::check_conflict_ext): Likewise. - (riscv_subset_list::parse_single_multiletter_ext): Likewise. - (riscv_subset_list::parse): Change location_t argument to location_t *. - (riscv_subset_list::set_loc): Likewise. - (riscv_minimal_hwprobe_feature_bits): Likewise. - (riscv_parse_arch_string): Update call accordingly. - * config/riscv/riscv-target-attr.cc - (riscv_target_attr_parser::m_loc): Change type to location_t *. - (riscv_target_attr_parser::riscv_target_attr_parser): Change - location_t argument to location_t *. - (riscv_process_one_target_attr): Likewise. - (riscv_process_target_attr): Likewise. - (riscv_process_target_version_attr): Likewise. - (riscv_target_attr_parser::parse_arch): Suppress diagnostics when - m_loc is null. - (riscv_target_attr_parser::handle_arch): Likewise. - (riscv_target_attr_parser::handle_cpu): Likewise. - (riscv_target_attr_parser::handle_tune): Likewise. - (riscv_target_attr_parser::handle_priority): Likewise. - (riscv_option_valid_attribute_p): Update call accordingly. - (riscv_option_valid_version_attribute_p): Likewise. - * config/riscv/riscv.cc (parse_features_for_version): Add a - location_t * argument. - (dispatch_function_versions): Update call accordingly. - (riscv_compare_version_priority): Likewise, suppressing diagnostics. - -2025-08-15 Kito Cheng - - * tree-nrv.cc (pass_return_slot::execute): Use - gimple_call_fntype instead of gimple_call_fndecl. - -2025-08-15 Lulu Cheng - - PR target/121542 - * config/loongarch/loongarch.cc - (loongarch_vector_costs::add_stmt_cost): When using vectype, - first determine whether it is NULL. - -2025-08-14 Jeff Law - - PR target/119275 - * config/riscv/riscv.cc (riscv_legitimize_move): Avoid calling - gen_lowpart for cases where it'll fail. Just use standard expander - paths for those cases. - -2025-08-14 Mikael Pettersson - - PR target/121336 - * config/cris/cris.h: Do not abbreviate --emulation. - -2025-08-14 Richard Sandiford - - PR target/121501 - * config/rs6000/rs6000.md (cmprb, setb_signed, setb_unsigned) - (cmprb2, cmpeqb): Add missing modes to nested if_then_elses. - -2025-08-14 Andrew Pinski - - PR tree-optimization/121474 - * passes.def: Update forwprop1/2 to have full_walk to be true. - * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Add new argument - full_walk. Take into account the full_walk and clobbers at the end - of the limit can be done always. - (simplify_builtin_call): Add new argument, full_walk. - Update call to optimize_aggr_zeroprop. - (pass_forwprop): Add m_full_walk field. - (pass_forwprop::set_pass_param): Update for m_full_walk. - (pass_forwprop::execute): Update call to simplify_builtin_call - and optimize_aggr_zeroprop. - -2025-08-14 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): New function split out of ... - (optimize_agr_copyprop): Here. Also try calling optimize_agr_copyprop_arg. - (optimize_agr_copyprop_arg): New function. - -2025-08-14 Stefan Schulze Frielinghaus - - * config/s390/s390.md: Merge movdi_zero_extend_A and - movsi_zero_extend_A into zero_extendsidi2 and - zero_extendhi2_z10 and - zero_extend2_extimm. - * config/s390/vector.md (*movdi_zero_extend_A): Remove. - (*movsi_zero_extend_A): Remove. - (*movdi_zero_extend_B): Move to vec_extract patterns and - rename to *vec_extract_zero_extend. - (*movsi_zero_extend_B): Ditto. - -2025-08-14 H.J. Lu - - PR target/121540 - * config/i386/i386-options.cc (ix86_set_current_function): - Properly check if MMX and 80387 are enabled. - -2025-08-13 Jeff Law - - PR target/121531 - * config/riscv/sifive-p400.md (sifive_p400_unknown): New reservation. - * config/riscv/sifive-p600.md (sifive_p600_unkonwn): Likewise. - -2025-08-13 David Malcolm - - * diagnostics/output-spec.cc (sarif_scheme_handler::make_sink): - Populate sarif_generation_options instance directly, rather than - through local variables. - (sarif_scheme_handler::make_sarif_gen_opts): Drop. - (html_scheme_handler::make_sink): Populate html_generation_options - instance directly, rather than through local variables. - -2025-08-13 Andrew Pinski - - * config.gcc: Mark epiphany*-*-* and rl78*-*-* as - obsolete targets. - -2025-08-13 H.J. Lu - - PR target/81501 - * config/i386/i386-features.cc (x86_cse_kind): Add X86_CSE_TLS_GD, - X86_CSE_TLS_LD_BASE and X86_CSE_TLSDESC. - (redundant_load): Renamed to ... - (redundant_pattern): This. - (ix86_place_single_vector_set): Replace redundant_load with - redundant_pattern. - (replace_tls_call): New. - (ix86_place_single_tls_call): Likewise. - (pass_remove_redundant_vector_load): Renamed to ... - (pass_x86_cse): This. Add val, def_insn, mode, scalar_mode, kind, - x86_cse, candidate_gnu_tls_p, candidate_gnu2_tls_p and - candidate_vector_p. - (pass_x86_cse::candidate_gnu_tls_p): New. - (pass_x86_cse::candidate_gnu2_tls_p): Likewise. - (pass_x86_cse::candidate_vector_p): Likewise. - (remove_redundant_vector_load): Renamed to ... - (pass_x86_cse::x86_cse): This. Extend to remove redundant TLS - calls. - (make_pass_remove_redundant_vector_load): Renamed to ... - (make_pass_x86_cse): This. - * config/i386/i386-passes.def: Replace - pass_remove_redundant_vector_load with pass_x86_cse. - * config/i386/i386-protos.h (ix86_tls_get_addr): New. - (make_pass_remove_redundant_vector_load): Renamed to ... - (make_pass_x86_cse): This. - * config/i386/i386.cc (ix86_tls_get_addr): Remove static. - * config/i386/i386.h (machine_function): Add - tls_descriptor_call_multiple_p. - * config/i386/i386.md (tls64): New attribute. - (@tls_global_dynamic_64_): Set tls_descriptor_call_multiple_p. - (@tls_local_dynamic_base_64_): Likewise. - (@tls_dynamic_gnu2_64_): Likewise. - (*tls_global_dynamic_64_): Set tls64 attribute to gd. - (*tls_local_dynamic_base_64_): Set tls64 attribute to ld_base. - (*tls_dynamic_gnu2_lea_64_): Set tls64 attribute to lea. - (*tls_dynamic_gnu2_call_64_): Set tls64 attribute to call. - (*tls_dynamic_gnu2_combine_64_): Set tls64 attribute to - combine. - -2025-08-13 Iain Sandoe - - * config.in: Regenerate. - * config/darwin.h (DARWIN_LD_NO_DEDUPLICATE): New. - (LINK_SPEC): Handle -no_deduplicate. - * configure: Regenerate. - * configure.ac: Detect linker support for -no_deduplicate. - -2025-08-13 Iain Sandoe - - * config/darwin-sections.def (asan_string_section, - asan_globals_section, asan_liveness_section): New. - * config/darwin.cc (objc_method_decl): Use asan sections - when asan is enabled. - (darwin_encode_section_info): Alter string constant - linker visibility depending on asan. - (machopic_select_section): Use the asan sections when - asan is enabled. - -2025-08-13 Jeff Law - - PR target/121160 - * config/riscv/riscv.cc (canonicalize_comparands); Tighten check for - forcing value into a GPR. - -2025-08-13 Andrew Pinski - - PR tree-optimization/121474 - * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Move the check - for limit before the alias check. - -2025-08-13 Richard Biener - - * tree-vectorizer.h (SLP_TREE_PERMUTE_P): New. - * tree-vect-slp-patterns.cc (linear_loads_p): Adjust. - (vect_detect_pair_op): Likewise. - (addsub_pattern::recognize): Likewise. - * tree-vect-slp.cc (vect_print_slp_tree): Likewise. - (vect_gather_slp_loads): Likewise. - (vect_is_slp_load_node): Likewise. - (optimize_load_redistribution_1): Likewise. - (vect_optimize_slp_pass::is_cfg_latch_edge): Likewise. - (vect_optimize_slp_pass::internal_node_cost): Likewise. - (vect_optimize_slp_pass::start_choosing_layouts): Likewise. - (vect_optimize_slp_pass::backward_cost): Likewise. - (vect_optimize_slp_pass::forward_pass): Likewise. - (vect_optimize_slp_pass::get_result_with_layout): Likewise. - (vect_optimize_slp_pass::materialize): Likewise. - (vect_optimize_slp_pass::dump): Likewise. - (vect_optimize_slp_pass::decide_masked_load_lanes): Likewise. - (vect_update_slp_vf_for_node): Likewise. - (vect_slp_analyze_node_operations_1): Likewise. - (vect_schedule_slp_node): Likewise. - (vect_schedule_scc): Likewise. - * tree-vect-stmts.cc (vect_analyze_stmt): Likewise. - (vect_transform_stmt): Likewise. - (vect_is_simple_use): Likewise. - -2025-08-13 Richard Biener - - * tree-vect-stmts.cc (vect_analyze_stmt): Use - SLP_TREE_DEF_TYPE instead of STMT_VINFO_DEF_TYPE. - -2025-08-13 Richard Biener - - * tree-vectorizer.h (vect_memory_access_type): Replace - VMAT_GATHER_SCATTER with three separate access types, - VMAT_GATHER_SCATTER_LEGACY, VMAT_GATHER_SCATTER_IFN and - VMAT_GATHER_SCATTER_EMULATED. - (mat_gather_scatter_p): New predicate. - (GATHER_SCATTER_LEGACY_P): Remove. - (GATHER_SCATTER_IFN_P): Likewise. - (GATHER_SCATTER_EMULATED_P): Likewise. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Adjust. - (get_load_store_type): Likewise. - (vect_get_loop_variant_data_ptr_increment): Likewise. - (vectorizable_store): Likewise. - (vectorizable_load): Likewise. - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): - Likewise. - * config/riscv/riscv-vector-costs.cc - (costs::need_additional_vector_vars_p): Likewise. - * config/aarch64/aarch64.cc (aarch64_detect_vector_stmt_subtype): - Likewise. - (aarch64_vector_costs::count_ops): Likewise. - (aarch64_vector_costs::add_stmt_cost): Likewise. - -2025-08-13 Richard Biener - - * tree-vectorizer.h (vect_supportable_dr_alignment): Pass - a bool instead of a pointer to gather_scatter_info. - * tree-vect-data-refs.cc (vect_supportable_dr_alignment): - Likewise. - * tree-vect-stmts.cc (get_load_store_type): Adjust. - -2025-08-13 Lulu Cheng - - PR target/120476 - * config/loongarch/loongarch.cc - (loongarch_compute_pressure_classes): New function. - (TARGET_COMPUTE_PRESSURE_CLASSES): Define. - -2025-08-13 Yang Yujie - - PR target/117599 - * config/loongarch/loongarch.h: Define a PROMOTE_MODE case for - small _BitInts. - * config/loongarch/loongarch.cc (loongarch_promote_function_mode): - Same. - (loongarch_bitint_type_info): New function. - (TARGET_C_BITINT_TYPE_INFO): Declare. - -2025-08-13 Jeff Law - - PR target/121113 - * config/riscv/sifive-p400.md: Handle HFmode for fdiv/fsqrt. - * config/riscv/sifive-p600.md: Likewise. - * config/riscv/xiangshan.md: Likewise. - -2025-08-13 H.J. Lu - Liu, Hongtao - - PR target/121497 - * config/i386/i386-features.cc (ix86_broadcast_inner): Convert - integer constant to mode of move - -2025-08-12 Pan Li - - * config/riscv/autovec-opt.md (*merge_vx_): Add new - pattern to combine the vmerge.vxm. - -2025-08-12 Robin Dapp - - PR target/121334 - * config/riscv/riscv-v.cc (expand_slide1up): New function. - (expand_vector_init_trailing_same_elem): Use new function. - (expand_const_vector_onestep): New function. - (expand_const_vector): Uew expand_slide1up. - (expand_vector_init_merge_repeating_sequence): Ditto. - (shuffle_off_by_one_patterns): Ditto. - -2025-08-12 mengqinggang - - * config/loongarch/loongarch-def.h (ABI_BASE_LP64D): New macro. - (ABI_BASE_LP64F): New macro. - (ABI_BASE_LP64S): New macro. - (N_ABI_BASE_TYPES): New macro. - -2025-08-12 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop_2): Change - slp_done_for_suggested_uf to a boolean - single_lane_slp_done_for_suggested_uf. Change slp - to force_single_lane boolean. - (vect_analyze_loop_1): Adjust similarly. - -2025-08-12 Richard Sandiford - - PR rtl-optimization/121253 - * fwprop.cc (forward_propagate_into): Don't propagate asm defs. - -2025-08-12 Richard Biener - - PR tree-optimization/121509 - * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): - Fail early when we detect a relevant but not handled PHI. - -2025-08-12 Richard Biener - - PR tree-optimization/121514 - * tree-ssa-sccvn.cc (visit_nary_op): Only call - vn_nary_op_insert_stmt for SSA name result. - -2025-08-12 Andrew Pinski - - PR tree-optimization/121494 - * tree-ssa-forwprop.cc (optimize_agr_copyprop): Mark the bb of the use - stmt if needed for eh cleanup. - -2025-08-12 Richard Biener - - * tree-vect-stmts.cc (vect_analyze_stmt): Only set - STMT_VINFO_VECTYPE for dataref SLP representatives. - Clear it for others and do not restore the original value. - (vect_transform_stmt): Likewise. - -2025-08-12 Richard Biener - - * tree-vect-loop.cc (get_initial_defs_for_reduction): - Get vector type as argument. - (vect_find_reusable_accumulator): Likewise. - (vect_transform_cycle_phi): Adjust. - -2025-08-12 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Replace - STMT_VINFO_VECTYPE use with SLP_TREE_VECTYPE. - -2025-08-12 Richard Biener - - PR tree-optimization/121493 - * tree-ssa-sccvn.cc (vn_reference_lookup_3): Opportunistically - strip components with known offset. - -2025-08-12 Richard Biener - - * tree-ssa-sccvn.cc (vn_reference_lookup_3): When we fail to - match up the two base MEM_REFs, fail. - -2025-08-12 Shreya Munnangi - Jeff Law - Philipp Tomsich - - * config/riscv/riscv-protos.h (synthesize_add): Add prototype. - * config/riscv/riscv.cc (synthesize_add): New function. - * config/riscv/riscv.md (addsi3): Allow any constant as operands[2] - in the expander. Force the constant into a register as needed for - TARGET_64BIT. Use synthesize_add for !TARGET_64BIT. - (*adddi3): Renamed from adddi3. - (adddi3): New expander. Use synthesize_add. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.md (movcc): Accept MODE_CC - conditions directly; reject QI/HImode conditions. - -2025-08-11 Richard Henderson - - PR target/121388 - * config/aarch64/aarch64.cc (aarch64_cb_rhs): Restrict the - range of LT/GE and GT/LE to their intersections. - * config/aarch64/aarch64.md (*aarch64_cb): Unexport. - Use cmpbr_imm_predicate instead of aarch64_cb_rhs. - * config/aarch64/constraints.md (Uc1): Accept 0..62. - (Uc2): Remove. - * config/aarch64/iterators.md (cmpbr_imm_predicate): New. - (cmpbr_imm_constraint): Update to match aarch64_cb_rhs. - * config/aarch64/predicates.md (aarch64_cb_reg_i63_operand): New. - (aarch64_cb_reg_i62_operand): New. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): - Use aarch64_cb_rhs to match CB insns. - -2025-08-11 Richard Henderson - - PR target/121385 - * config/aarch64/aarch64.md (*aarch64_tbz1): Remove - cc clobber and expansion via TST+Bcond. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.h (TARGET_CMPBR): False when - aarch64_track_speculation is true. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.cc (aarch64_gen_compare_split_imm24): New. - * config/aarch64/aarch64-protos.h: Update. - * config/aarch64/aarch64.md (*aarch64_bcond_wide_imm): Use it. - Add match_scratch and cc clobbers. Use match_operator instead of - iterator expansion. - (*compare_cstore_insn): Likewise. - -2025-08-11 Richard Henderson - - * config/aarch64/predicates.md (aarch64_split_imm24): Rename from - aarch64_imm24; exclude aarch64_move_imm and aarch64_uimm12_shift. - * config/aarch64/aarch64.md (*aarch64_bcond_wide_imm): - Update for aarch64_split_imm24. - (*compare_cstore_insn): Likewise. - * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): Likewise. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.md (tbranch_3): Remove. - (save_stack_nonlocal): Use aarch64_gen_compare_zero_and_branch. - (restore_stack_nonlocal): Likewise. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.cc - (aarch64_gen_compare_zero_and_branch): Export. - * config/aarch64/aarch64-protos.h - (aarch64_gen_compare_zero_and_branch): Declare it. - * config/aarch64/aarch64-sme.md (aarch64_restore_za): Use it. - * config/aarch64/aarch64.md (*aarch64_cbz): Unexport. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.cc (aarch64_if_the_else_costs): Reorg to - include the cost of inner within TBZ sign-bit test, only match - CBZ/CBNZ with valid modes, and both for the aarch64_imm24 test. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): Remove - else after return and re-indent. - -2025-08-11 Richard Henderson - - * config/aarch64/aarch64.md (BRANCH_LEN_N_1KiB): Rename - from BRANCH_LEN_N_1Kib. - -2025-08-11 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Recognize stores - of integer_zerop as memset of 0. - -2025-08-11 Jeff Law - - * doc/sourcebuild.texi: Add riscv_b_ok and riscv_v_ok target selectors. - -2025-08-11 Richard Biener - - PR tree-optimization/121488 - * tree-ssa-sccvn.cc (visit_nary_op): If the BIT_FIELD_REF - result is of wrong type, try a VIEW_CONVERT_EXPR around it. - -2025-08-11 Richard Biener - - PR tree-optimization/121362 - * tree-ssa-sccvn.cc (vn_reference_lookup_3): Swap index - guards on component stripping loops. - -2025-08-11 Pan Li - - * tree-ssa-math-opts.cc (match_saturation_mul): Add new func - to emit IFN_SAT_MUL if matched. - (math_opts_dom_walker::after_dom_children): Try to match - the phi node for SAT_MUL. - -2025-08-11 Pan Li - - * match.pd: Add form 2 for unsigned SAT_MUL. - -2025-08-11 Pan Li - - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Remove. - (riscv_rtx_costs): Refactor to serach vec_duplicate on the - sub rtx. - -2025-08-11 Andre Vieira - - PR target/121464 - * config/arm/arm.md (arm_, arm_): Fix operand check. - -2025-08-11 Richard Sandiford - - PR rtl-optimization/121306 - * simplify-rtx.cc (simplify_context::simplify_subreg): Distribute - non-narrowing integer-to-integer subregs through logic ops, - in a similar way to the existing word_mode handling. - -2025-08-11 Jakub Jelinek - - * tree-cfg.cc (find_case_label_for_value): Fix comment typo, - singe-valued -> single-valued. - * config/arc/arc.md: Fix comment typos, unsinged -> unsigned. - -2025-08-10 Matthew Fortune - - * config/mips/mips.h (FRAME_GROWS_DOWNWARD) Allow the frame to - grow downwards for mips16 when -mgrow-frame-downwards is set. - * config/mips/mips.opt: Add -mgrow-frame-downwards option. - -2025-08-10 Andrew Pinski - - PR middle-end/121438 - PR middle-end/121444 - * output.h (MAX_ALIGN_MERGABLE): Rename to ... - (MAX_MERGEABLE_BITSIZE): This. - * tree-switch-conversion.cc (switch_conversion::build_one_array): Don't - increase the alignment. - * varasm.cc (mergeable_string_section): Use MAX_MERGEABLE_BITSIZE - instead of MAX_ALIGN_MERGABLE. Also replace `/ 8` with `/ BITS_PER_UNIT`. - (mergeable_constant_section): Select the mergeable section based on - the bitsize rather than the alignment. Make sure the align is less - than the entity size. - -2025-08-10 Andrew Pinski - - PR middle-end/121394 - * varasm.cc (assemble_variable_contents): Pad out - mergeable sections if needed. - (output_constant_pool_1): Change the padding to be explicit - zeroing for mergeable sections. - -2025-08-10 H.J. Lu - - * configure: Regenerated. - -2025-08-09 Iain Sandoe - - * config/darwin.cc (darwin_encode_section_info): Do not - make anchored symbols linker-visible. - (darwin_use_anchors_for_symbol_p): Disallow anchoring on - symbols that must be linker-visible (or external), even - if the definitions are in this TU. - -2025-08-09 Iain Sandoe - - * config/darwin.h (ASM_GENERATE_INTERNAL_LABEL): New - entry for LANCHOR. - -2025-08-09 David Malcolm - - * diagnostics/context.cc (context::dump): Bulletproof against - m_reference_printer being null. - * diagnostics/dumping.cc (emit_field): Replace - with... - (emit_string_field): ...this. - (emit_field): Eliminate. - (emit_field): Replace with... - (emit_bool_field): ...this. - (emit_field): Replace with... - (emit_size_t_field): ...this, and use HOST_SIZE_T_PRINT_DEC rather - than %zi in fprintf call. - (emit_field): Replace with... - (emit_int_field): ...this. - (emit_field): Replace with... - (emit_unsigned_field): ...this. - * diagnostics/dumping.h (emit_field): Replace this template decl - with... - (emit_string_field): ...this, - (emit_bool_field): ...this, - (emit_size_t_field): ...this, - (emit_int_field): ...this, - (emit_unsigned_field): ... and this. - (DIAGNOSTICS_DUMPING_EMIT_FIELD): Rename to... - (DIAGNOSTICS_DUMPING_EMIT_BOOL_FIELD): ...this and update for - above change. - * diagnostics/file-cache.cc (file_cache_slot::dump): Replace - emit_field calls with calls that explicitly state the type. Fix - type of dump of m_missing_trailing_newline to use bool. - (file_cache_slot::dump): Use HOST_SIZE_T_PRINT_DEC rather than - %zi in fprintf call. - * diagnostics/html-sink.cc (html_generation_options::dump): Update - for macro renaming. - * diagnostics/sarif-sink.cc - (sarif_serialization_format_json::dump): Likewise. - (sarif_generation_options::dump): Likewise, and for function - renaming. - * diagnostics/text-sink.cc (text_sink::dump): Update for macro - renaming. - * libgdiagnostics.cc (diagnostic_manager_debug_dump_file): Use - HOST_SIZE_T_PRINT_DEC rather than %zi in fprintf call. - * pretty-print.cc: Include "diagnostics/dumping.h". - (pp_formatted_chunks::dump): Use it. - (get_url_format_as_string): New. - (pretty_printer::dump): Use diagnostics::dumping. Bulletproof - against m_buffer being null. - -2025-08-09 Takayuki 'January June' Suwa - - * config/xtensa/constraints.md (T): - Change define_memory_constraint to define_special_memory_constraint. - -2025-08-08 Andrew Pinski - - PR tree-optimization/120599 - * tree-ssa-forwprop.cc (optimize_agr_copyprop): Don't try to copy - from statements that throw. - -2025-08-08 Andrew Pinski - - PR tree-optimization/118946 - PR tree-optimization/121422 - * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Remove. - (optimize_aggr_zeroprop_1): New function. - (optimize_aggr_zeroprop): New function. - (simplify_builtin_call): Don't call optimize_memcpy_to_memset - for memcpy but call optimize_aggr_zeroprop for memset. - (pass_forwprop::execute): Don't call optimize_memcpy_to_memset - for aggregate copies but rather call optimize_aggr_zeroprop - for aggregate stores. - -2025-08-08 Andrew Pinski - - * tree-ssa-forwprop.cc (optimize_agr_copyprop): Change into a - forward looking (looking at vdef's uses) instead of a back - looking (vuse's def). - -2025-08-08 David Malcolm - - PR diagnostics/116253 - * common.opt (fdiagnostics-show-nesting): New option. - (fdiagnostics-show-nesting-locations): New option. - (fdiagnostics-show-nesting-levels): New option. - * common.opt.urls: Regenerate. - * diagnostics/context.cc (context::set_show_nesting): New. - (context::set_show_nesting_locations): New. - (context::set_show_nesting_levels): New. - * diagnostics/context.h (context::set_show_nesting): New decl. - (context::set_show_nesting_locations): New decl. - (context::set_show_nesting_levels): New decl. - * diagnostics/html-sink.cc: Tweak comment. - * diagnostics/output-spec.cc (text_scheme_handler::make_sink): - Rename "experimental-nesting" to "show-nesting" and enable by - default. Rename "experimental-nesting-show-locations" to - "show-nesting-locations". Rename - "experimental-nesting-show-levels" to "show-nesting-levels". - * diagnostics/sink.h (sink::dyn_cast_text_sink): New. - * diagnostics/text-sink.h (text_sink::dyn_cast_text_sink): New. - * doc/invoke.texi: Add -fdiagnostics-show-nesting, - -fdiagnostics-show-nesting-locations, and - -fdiagnostics-show-nesting-levels. Update for changes to - output-spec.cc above. - * lto-wrapper.cc (merge_and_complain): Ignore - OPT_fdiagnostics_show_nesting, - OPT_fdiagnostics_show_nesting_locations, and - OPT_fdiagnostics_show_nesting_levels. - (append_compiler_options): Likewise. - (append_diag_options): Likewise. - * opts-common.cc (decode_cmdline_options_to_array): Add - "-fno-diagnostics-show-nesting" to -fdiagnostics-plain-output. - * opts.cc (common_handle_option): Handle the new options. - (gen_command_line_string): Ignore the new options. - * toplev.cc (general_init): Call set_show_nesting, - set_show_nesting_locations, and set_show_nesting_levels on - global_dc. - -2025-08-08 David Malcolm - - * Makefile.in (OBJS-libcommon): Add diagnostics/dumping.o. - * diagnostics/buffering.cc: Include "diagnostics/dumping.h". - (buffer::dump): Reimplement using diagnostics::dumping. - * diagnostics/context.cc: Include "diagnostics/dumping.h". - (context::dump): Reimplement using diagnostics::dumping. - Use sink::dump_kind when listing the sinks. - (sink::dump): Reimplement using diagnostics::dumping. - (counters::dump): Likewise. - * diagnostics/dumping.cc: New file. - * diagnostics/dumping.h: New file. - * diagnostics/file-cache.cc: Include "diagnostics/dumping.h". - (file_cache::dump): Reimplement using diagnostics::dumping. - (file_cache_slot::dump): Likewise. - * diagnostics/html-sink.cc: Include "diagnostics/dumping.h". - (html_generation_options::dump): New. - (html_sink_buffer::dump): Reimplement using diagnostics::dumping. - (html_builder::dump): New. - (html_sink::dump): Reimplement using diagnostics::dumping. - Add dump of the html_builder. - (html_file_sink::dump): Replace with... - (html_file_sink::dump_kind): ...this. - (html_buffered_sink::dump_kind): New. - * diagnostics/html-sink.h (html_generation_options::dump): New - decl. - * diagnostics/sarif-sink.cc: Include "diagnostics/dumping.h". - (sarif_serialization_format_json::dump): New. - (sarif_builder::dump): New. - (sarif_sink_buffer::dump): Reimplement using diagnostics::dumping. - (sarif_sink::dump): Likewise. Add dump of the sarif_builder. - (sarif_stream_sink::dump_kind): New. - (sarif_file_sink::dump): Replace with... - (sarif_file_sink::dump_kind): ...this. - (get_dump_string_for_sarif_version): New. - (sarif_generation_options::dump): New. - (class buffered_sink): Rename to... - (class sarif_buffered_sink): ...this. - (sarif_buffered_sink::dump_kind): New. - * diagnostics/sarif-sink.h (sarif_serialization_format::dump): - New. - (sarif_serialization_format_json::dump): New decl. - (sarif_generation_options::dump): New decl. - * diagnostics/sink.h (sink::dump_kind): New. - * diagnostics/text-sink.cc: Include "diagnostics/dumping.h". - (text_sink_buffer::dump): Reimplement using diagnostics::dumping. - (text_sink::dump): Likewise. Emit fields m_show_nesting, - m_show_locations_in_nesting, and m_show_nesting_levels. - * diagnostics/text-sink.h (text_sink::dump_kind): New. - -2025-08-08 David Malcolm - - * diagnostic.h (diagnostics::get_cwe_url): Move decl to - diagnostics/metadata.h. - (diagnostics::maybe_line_and_column): Move into - diagnostics::text_sink. - * diagnostics/context.cc: Update for maybe_line_and_column - becoming a static member of text_sink. - * diagnostics/metadata.h (diagnostics::get_cwe_url): Move decl - here from diagnostic.h. - * diagnostics/text-sink.cc (maybe_line_and_column): Convert to... - (text_sink::maybe_line_and_column): ...this. - * diagnostics/text-sink.h (text_sink::maybe_line_and_column): Move - here from diagnostic.h. - -2025-08-08 David Malcolm - - * diagnostics/context.cc (context::get_any_inlining_info): Convert - "context" arg of m_set_locations_cb from ptr to const &. - (context::report_diagnostic): Convert "context" arg of - m_adjust_diagnostic_info from ptr to const &. - * diagnostics/context.h (context::set_locations_callback_t): - Likewise. - (context::set_adjust_diagnostic_info_callback): Likewise. - (context::m_adjust_diagnostic_info): Likewise. - * tree-diagnostic.cc (set_inlining_locations): Likewise. - -2025-08-08 David Malcolm - - * diagnostics/column-options.h: New file, adding struct - diagnostics::column_options, taken from fields in - diagnostics::context and diagnostics::column_policy. - * diagnostics/context.cc (context::initialize): Update for moving - fields of diagnostics::context into diagnostics::column_options. - (column_policy::column_policy): Likewise. - (column_policy::converted_column): Move implementation to... - (column_options::convert_column): ...this new function. - (context::report_diagnostic): Update for moving fields of - diagnostics::context into diagnostics::column_options. - (assert_location_text): Likewise. - * diagnostics/context.h: Include "diagnostics/column-options.h". - (class column_policy): Replace fields m_column_unit, - m_column_origin, and m_tabstop with m_column_options. - (context::get_column_options): New accessors. - (context::m_column_unit): Move to struct column_options and - replace with m_column_options. - (context::m_column_origin): Likewise. - (context::m_tabstop): Likewise. - * diagnostics/sarif-sink.cc (sarif_builder::sarif_builder): Update - for moving fields of diagnostics::context into - diagnostics::column_options. - * diagnostics/source-printing.cc: Likewise. - * opts.cc (common_handle_option): Likewise. - -2025-08-08 Christophe Lyon - - PR target/120977 - * config/arm/arm.md (call): Move unspec parameter to parallel. - (nonsecure_call_internal): Likewise. - (call_value): Likewise. - (nonsecure_call_value_internal): Likewise. - * config/arm/thumb1.md (nonsecure_call_reg_thumb1_v5): Likewise. - (nonsecure_call_value_reg_thumb1_v5): Likewise. - * config/arm/thumb2.md (nonsecure_call_reg_thumb2_fpcxt): - Likewise. - (nonsecure_call_reg_thumb2): Likewise. - (nonsecure_call_value_reg_thumb2_fpcxt): Likewise. - (nonsecure_call_value_reg_thumb2): Likewise. - * config/arm/arm.cc (cmse_nonsecure_call_inline_register_clear): - Likewise. - -2025-08-08 Pengfei Li - - PR target/121449 - * config/aarch64/aarch64-sve.md - (mask_gather_load): Use vg - constraints for alternatives with immediate offset. - (mask_scatter_store): Likewise. - -2025-08-08 Richard Biener - - * doc/tm.texi.in: Add Vectorization and OpenMP and OpenACC - sub-sections to the list of target macros and functions. - * doc/tm.texi: Re-generate. - -2025-08-08 Richard Biener - - * tree-vect-loop.cc (vect_determine_vectype_for_stmt_1): Remove. - (vect_determine_vectype_for_stmt): Likewise. - (vect_set_stmts_vectype): Likewise. - (vect_analyze_loop_2): Do not call vect_set_stmts_vectype. - * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): Detect - irregular stmts early here. - -2025-08-08 Alex Coplan - - PR target/120986 - * config/aarch64/aarch64-sve-builtins.cc - (function_expander::expand): Relax fpm_t assert to allow - modeless const_ints. - -2025-08-08 Alex Coplan - - PR target/120986 - * config/aarch64/aarch64-sve2.md (@aarch64_sve_dot): - Switch mode iterator from SVE_FULL_HSF to new iterator; - remove insn predicate as this is now taken care of by conditions - in the mode iterator. - (@aarch64_sve_dot_lane): Likewise. - * config/aarch64/iterators.md (SVE_FULL_HSF_FP8_FDOT): New. - -2025-08-08 Richard Biener - - PR tree-optimization/121454 - * tree-ssa-sccvn.cc (visit_nary_op): Avoid unexpected - BIT_FIELD_REFs. - -2025-08-08 Jakub Jelinek - - PR middle-end/121389 - * tree-tailcall.cc (find_tail_calls): For finally_tmp.N - handle not just GIMPLE_CONDs with EQ_EXPR/NE_EXPR and only - values 0 and 1, but arbitrary non-negative values, arbitrary - comparisons in conditions and also GIMPLE_SWITCH next to - GIMPLE_CONDs. - -2025-08-08 Richard Biener - - * tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): Get - the SLP node rather than the stmt_info. - (vectorizable_lane_reducing): Adjust, pass SLP node to costing. - (vect_transform_reduction): Adjust. - -2025-08-08 Richard Biener - - * tree-vect-stmts.cc (vect_model_promotion_demotion_cost): Pass - in SLP node and drop unused dr argument. Use SLP node for - costing, drop costing of constant/external operands. - (vectorizable_conversion): Adjust. - -2025-08-08 Richard Biener - - * tree-vect-stmts.cc (vectorizable_store): Apply SLP_TREE_VECTYPE - to slp_node rather than stmt_info. - -2025-08-07 Richard Sandiford - - PR target/121414 - * config/aarch64/aarch64.cc (aarch64_is_variant_pcs): New function, - split out from... - (aarch64_asm_output_variant_pcs): ...here. Handle various types - of SME function type. - -2025-08-07 Richard Sandiford - - PR rtl-optimization/120718 - * simplify-rtx.cc (simplify_context::simplify_gen_subreg): - Remove MODE_COMPOSITE_P condition. - -2025-08-07 Richard Biener - - PR tree-optimization/121405 - * tree-ssa-sccvn.cc (visit_nary_op): Handle BIT_FIELD_REF - with reference def by looking up a combination of both. - -2025-08-07 Pengfei Li - - * tree-vect-data-refs.cc (vect_compute_data_ref_alignment): - Allow DR target alignment to be a poly_int. - (vect_enhance_data_refs_alignment): Support peeling and - versioning for VLA modes. - * tree-vect-loop-manip.cc (get_misalign_in_elems): Remove - power-of-two rounding in peeling. - (vect_create_cond_for_align_checks): Update alignment check - logic for poly_int mask. - (vect_create_cond_for_vla_spec_read): New runtime checks. - (vect_loop_versioning): Support new runtime checks. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Add a new - loop_vinfo field. - (vectorizable_induction): Fix wrong IV offset issue. - * tree-vect-stmts.cc (get_load_store_type): Refactor - vectorizable checks for speculative loads. - * tree-vectorizer.h (LOOP_VINFO_MAX_SPEC_READ_AMOUNT): New - macro for new runtime checks. - (LOOP_REQUIRES_VERSIONING_FOR_SPEC_READ): Likewise - (LOOP_REQUIRES_VERSIONING): Update macro for new runtime checks. - -2025-08-07 Jakub Jelinek - - PR preprocessor/120778 - * doc/invoke.texi (Wkeyword-macro): Document. - -2025-08-07 Stefan Schulze Frielinghaus - - * config/s390/s390.cc (print_operand): Allow arbitrary wide_int - constants for _BitInt. - (s390_bitint_type_info): Implement target hook - TARGET_C_BITINT_TYPE_INFO. - -2025-08-06 Uros Bizjak - - PR target/96226 - * config/i386/predicates.md (and_operator): New operator. - * config/i386/i386.md (splitter after *3_mask): - Use and_operator to match AND RTX and use its mode - in the split pattern. - -2025-08-06 Gerald Pfeifer - - PR target/69374 - * doc/install.texi (Prerequisites): Replace bzip2 by xz. - -2025-08-06 Yangyu Chen - - * config/i386/i386.h (PTA_BDVER1): - Add missing PTA_POPCNT and PTA_LZCNT with PTA_ABM. - (PTA_ZNVER1): Ditto. - (PTA_BTVER1): Ditto. - (PTA_LUJIAZUI): Ditto. - (PTA_YONGFENG): Do not include extra PTA_LZCNT. - -2025-08-06 Sam James - - PR libstdc++/29286 - * Makefile.in (ALIASING_FLAGS): Drop. - * configure: Regenerate. - * configure.ac: Drop -fno-strict-aliasing workaround for < GCC 4.3. - -2025-08-06 Richard Biener - - * tree-vect-data-refs.cc (vect_supportable_dr_alignment): - Prune dead code. - -2025-08-06 Patrick Palka - - PR c++/121231 - PR c++/119688 - PR c++/94511 - * common.opt: Document additional ABI version 21 change. - * doc/invoke.texi: Likewise. - -2025-08-06 Richard Biener - - * tree-vectorizer.h (_slp_tree::gs_scale): New. - (_slp_tree::gs_base): Likewise. - (SLP_TREE_GS_SCALE): Likewise. - (SLP_TREE_GS_BASE): Likewise. - (vect_describe_gather_scatter_call): Declare. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize - new members. - (vect_build_slp_tree_2): Record gather/scatter base and scale. - (vect_get_and_check_slp_defs): For gather/scatter IFNs - describe the call to first_gs_info. - * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Add - mode of operation with fixed offset vector type. - (vect_describe_gather_scatter_call): Export. - * tree-vect-stmts.cc (get_load_store_type): Do not call - vect_check_gather_scatter to fill gs_info, instead populate - from the SLP tree. Check which of, IFN, decl or fallback - is supported and record that decision. - -2025-08-06 Richard Biener - - * tree-vect-stmts.cc (vectorizable_store): Build proper - alias + align pointer value for gather/scatter and SLP - and use it. - (vectorizable_load): Likewise. - -2025-08-06 Richard Biener - - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Remove redundant gather/scatter target support check, instead - check the recorded ifns. Also allow legacy gather/scatter - with loop masking. - -2025-08-06 Jakub Jelinek - - PR tree-optimization/121413 - * gimple-lower-bitint.cc (gimple_lower_bitint): Fix up last - commit, cast limb_prec to unsigned before comparison. - -2025-08-06 Yang Yujie - - * match.pd: Preserve conversion to _BitInt before a VCE - if the _BitInt is extended. - -2025-08-06 Yang Yujie - - * gimple-lower-bitint.cc (bitint_large_huge::lower_mergeable_stmt): - Zero-extend the partial limb of any unsigned _BitInt LHS assigned - with a widening sign-extension. - -2025-08-06 Yang Yujie - - * gimple-lower-bitint.cc (bitint_large_huge::limb_access): - Add a parameter abi_load_p. If set, load a limb directly - in its actual precision without casting from m_limb_type. - (struct bitint_large_huge): Same. - (bitint_large_huge::handle_load): Use. - -2025-08-06 Jakub Jelinek - - PR tree-optimization/121413 - * gimple-lower-bitint.cc (abi_limb_prec): New variable - (bitint_precision_kind): Initialize it. - (gimple_lower_bitint): Clear it at the start. For - min_prec > limb_prec descreased precision vars for - INTEGER_CST PHI arguments ensure min_prec is either - prec or multiple of abi_limb_prec. - -2025-08-06 Jakub Jelinek - - PR tree-optimization/121127 - * gimple-lower-bitint.cc (bitint_large_huge::handle_operand_addr): For - uninitialized SSA_NAME, set *prec_stored to 0 rather than *prec. - Handle that case in narrowing casts. If prec_stored is non-NULL, - set *prec_stored to prec_stored_val. - -2025-08-06 Jakub Jelinek - - PR bootstrap/121386 - * Makefile.in (gengtype-lex.cc): Append #define FLEX_SCANNER, - #include "system.h" and #undef FLEX_SCANNER to the prepended lines. - * gengtype-lex.l: Remove inclusion of config.h or bconfig.h, system.h - and definition of malloc/realloc from %{} section. - -2025-08-06 Kito Cheng - - * config/riscv/arch-canonicalize: Read extension data from - riscv-ext*.def and adding unittest. - -2025-08-06 Kito Cheng - - * common/config/riscv/riscv-common.cc (riscv_expand_arch): - Ignore `unset`. - * config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Handle - `-march=unset`. - (ARCH_UNSET_CLEANUP_SPECS): New. - (DRIVER_SELF_SPECS): Handle -march=unset. - * doc/invoke.texi (RISC-V Options): Update documentation for - `-march=unset`. - -2025-08-06 Kwok Cheung Yeung - - * gimplify.cc (remove_unused_omp_iterator_vars): Display unused - variable warning for 'to' and 'from' clauses. - (gimplify_scan_omp_clauses): Add argument for iterator loop sequence. - Gimplify the clause decl and size into the iterator loop if iterators - are used. - (gimplify_omp_workshare): Add argument for iterator loops sequence - in call to gimplify_scan_omp_clauses. - (gimplify_omp_target_update): Call remove_unused_omp_iterator_vars and - build_omp_iterators_loops. Add loop sequence as argument when calling - gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses and building - the Gimple statement. - * tree-pretty-print.cc (dump_omp_clause): Call dump_omp_iterators - for to/from clauses with iterators. - * tree.cc (omp_clause_num_ops): Add extra operand for OMP_CLAUSE_FROM - and OMP_CLAUSE_TO. - * tree.h (OMP_CLAUSE_HAS_ITERATORS): Add check for OMP_CLAUSE_TO and - OMP_CLAUSE_FROM. - (OMP_CLAUSE_ITERATORS): Likewise. - -2025-08-06 Kwok Cheung Yeung - Andrew Stubbs - - * gimple-pretty-print.cc (dump_gimple_omp_target): Print expanded - iterator loops. - * gimple.cc (gimple_build_omp_target): Add argument for iterator - loops sequence. Initialize iterator loops field. - * gimple.def (GIMPLE_OMP_TARGET): Set GSS symbol to GSS_OMP_TARGET. - * gimple.h (gomp_target): Set GSS symbol to GSS_OMP_TARGET. Add extra - field for iterator loops. - (gimple_build_omp_target): Add argument for iterator loops sequence. - (gimple_omp_target_iterator_loops): New. - (gimple_omp_target_iterator_loops_ptr): New. - (gimple_omp_target_set_iterator_loops): New. - * gimplify.cc (find_var_decl): New. - (copy_omp_iterator): New. - (remap_omp_iterator_var_1): New. - (remap_omp_iterator_var): New. - (remove_unused_omp_iterator_vars): New. - (struct iterator_loop_info_t): New type. - (iterator_loop_info_map_t): New type. - (build_omp_iterators_loops): New. - (enter_omp_iterator_loop_context_1): New. - (enter_omp_iterator_loop_context): New. - (enter_omp_iterator_loop_context): New. - (exit_omp_iterator_loop_context): New. - (gimplify_adjust_omp_clauses): Add argument for iterator loop - sequence. Gimplify the clause decl and size into the iterator - loop if iterators are used. - (gimplify_omp_workshare): Call remove_unused_omp_iterator_vars and - build_omp_iterators_loops for OpenMP target expressions. Add - loop sequence as argument when calling gimplify_adjust_omp_clauses - and building the Gimple statement. - * gimplify.h (enter_omp_iterator_loop_context): New prototype. - (exit_omp_iterator_loop_context): New prototype. - * gsstruct.def (GSS_OMP_TARGET): New. - * omp-low.cc (lower_omp_map_iterator_expr): New. - (lower_omp_map_iterator_size): New. - (finish_omp_map_iterators): New. - (lower_omp_target): Add sorry if iterators used with deep mapping. - Call lower_omp_map_iterator_expr before assigning to sender ref. - Call lower_omp_map_iterator_size before setting the size. Insert - iterator loop sequence before the statements for the target clause. - * tree-nested.cc (convert_nonlocal_reference_stmt): Walk the iterator - loop sequence of OpenMP target statements. - (convert_local_reference_stmt): Likewise. - (convert_tramp_reference_stmt): Likewise. - * tree-pretty-print.cc (dump_omp_iterators): Dump extra iterator - information if present. - (dump_omp_clause): Call dump_omp_iterators for iterators in map - clauses. - * tree.cc (omp_clause_num_ops): Add operand for OMP_CLAUSE_MAP. - (walk_tree_1): Do not walk last operand of OMP_CLAUSE_MAP. - * tree.h (OMP_CLAUSE_HAS_ITERATORS): New. - (OMP_CLAUSE_ITERATORS): New. - -2025-08-05 H.J. Lu - - PR target/121410 - * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use - STORE_MAX_PIECES to get the widest vector mode in vector loop - for memset. - -2025-08-05 Georg-Johann Lay - - * config/avr/avr.cc (avr_rtx_costs_1) [SIGN_EXTEND]: Adjust cost. - * config/avr/avr.md (*sext.ashift2): New - insn and a cc split. - -2025-08-05 Richard Sandiford - - PR target/121306 - * config/i386/predicates.md (extract_operator): Replace with... - (extract_high_operator): ...this new predicate. - * config/i386/i386.md (*cmpqi_ext_1, *cmpqi_ext_2) - (*cmpqi_ext_3, *cmpqi_ext_4, *movstrictqi_ext_1) - (*extzv, *insvqi_2, *extendqi_ext_1) - (*addqi_ext_1_slp, *addqi_ext_1_slp, *addqi_ext_0) - (*addqi_ext2_0, *addqi_ext_1, *qi_ext_2) - (*subqi_ext_1_slp, *subqi_ext_2_slp, *subqi_ext_0) - (*subqi_ext2_0, *subqi_ext_1, *testqi_ext_1) - (*testqi_ext_2, *qi_ext_1_slp) - (*qi_ext_2_slp. *qi_ext_0) - (*qi_ext2_0, *qi_ext_1) - (*qi_ext_1_cc, *qi_ext_1_cc) - (*qi_ext_2, *qi_ext_3, *negqi_ext_1) - (*one_cmplqi_ext_1, *ashlqi_ext_1, *qi_ext_1) - (define_peephole2): Replace uses of extract_operator with - extract_high_operator, matching only the first operand. - Use zero_extract rather than match_op_dup when splitting. - -2025-08-05 Richard Biener - - * tree-vectorizer.h (vect_relevant::hybrid): Remove. - * tree-vect-loop.cc (vect_analyze_loop_2): Do not call - vect_detect_hybrid_slp. - * tree-vect-slp.cc (maybe_push_to_hybrid_worklist): Remove. - (vect_detect_hybrid_slp): Likewise. - -2025-08-05 Georg-Johann Lay - - PR target/121359 - * config/avr/avr.h: Remove -mlra and remains of reload. - * config/avr/avr.cc: Same. - * config/avr/avr.md: Same. - * config/avr/avr-log.cc: Same. - * config/avr/avr-protos.h: Same. - * config/avr/avr.opt: Same. - * config/avr/avr.opt.urls: Same. - -2025-08-05 H.J. Lu - - PR target/121306 - * config/i386/i386.md (*one_cmplqi_ext_1): Updated to - support the new pattern. - -2025-08-05 Richard Biener - - PR tree-optimization/121395 - * tree-vectorizer.h (_loop_vec_info::alternate_defs): New member. - (LOOP_VINFO_ALTERNATE_DEFS): New. - * tree-vect-stmts.cc (vect_stmt_relevant_p): Populate it. - (vectorizable_simd_clone_call): Do not register a SLP def - when there is none. - * tree-vect-slp.cc (vect_build_slp_tree_1): Allow a NULL - vectype when there's no LHS. Allow all calls w/o LHS. - (vect_analyze_slp): Process LOOP_VINFO_ALTERNATE_DEFS as - SLP graph entries. - (vect_make_slp_decision): Handle a NULL SLP_TREE_VECTYPE. - (vect_slp_analyze_node_operations_1): Likewise. - (vect_schedule_slp_node): Likewise. - -2025-08-05 Richard Biener - - * tree-vectorizer.h (enum slp_vect_type): Rename loop_vect - to not_vect, clarify docs. - (HYBRID_SLP_STMT): Remove. - * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Adjust. - * tree-vect-loop.cc (vect_analyze_loop_2): Likewise. - -2025-08-05 Richard Biener - - * tree-vect-data-refs.cc (vect_get_data_access_cost): Use - ncopies == 1. - * tree-vect-slp.cc (vect_remove_slp_scalar_calls): Remove - hybrid/loop SLP skip. - * tree-vect-stmts.cc (vectorizable_store): Remove pure SLP assert. - -2025-08-05 Richard Biener - - PR tree-optimization/121382 - * tree-ssa-loop-ivopts.cc (create_new_iv): Rewrite the IV - step to defined form. - -2025-08-05 Richard Biener - - PR tree-optimization/121370 - * tree-scalar-evolution.cc (scev_dfs::add_to_evolution_1): - Avoid UB integer overflow in accumulating CHREC_RIGHT. - -2025-08-05 Yang Yujie - - * expr.cc (expand_expr_real_1): Do not call - reduce_to_bit_field_precision if the target assumes the _BitInt - results to be already extended. - (EXTEND_BITINT): Same. - * expr.h (bitint_extended): Declare the cache variable. - * function.cc (prepare_function_start): Initialize it. - -2025-08-05 Yang Yujie - - * explow.cc (promote_function_mode): Add a case for - small/medium _BitInts. - (promote_mode): Same. - -2025-08-05 Gerald Pfeifer - - PR target/69374 - * doc/install.texi (Configuration): Mark up atexit as code. - -2025-08-05 Pan Li - - * config/riscv/riscv.cc (riscv_expand_xmode_usmul): Take - umulhu for high bits mul result. - -2025-08-04 Hans-Peter Nilsson - - * defaults.h (MAX_FIXED_MODE_SIZE): Default to 2 * BITS_PER_WORD - for larger-than-32-bitters. - * doc/tm.texi.in (MAX_FIXED_MODE_SIZE): Adjust accordingly. Tweak - wording. - * doc/tm.texi: Regenerate. - -2025-08-04 David Malcolm - - * dump-context.h: Convert "enum optinfo_item_kind" into - "enum class kind" within class optinfo_item. - * dumpfile.cc: Likewise. Use "auto" in a few places. - Convert "enum optinfo_kind" to "enum class kind" within - class optinfo. - * opt-problem.cc: Likewise. - * optinfo-emit-json.cc: Likewise. - * optinfo.cc: Likewise. - * optinfo.h: Likewise. - -2025-08-04 David Malcolm - - PR diagnostics/116253 - * diagnostics/context.cc (context::set_nesting_level): New. - * diagnostics/context.h (context::set_nesting_level): New decl. - * doc/libgdiagnostics/topics/compatibility.rst - (LIBGDIAGNOSTICS_ABI_5): New. - * doc/libgdiagnostics/topics/physical-locations.rst - (diagnostic_manager_set_debug_physical_locations): New. - * libgdiagnostics++.h (manager::set_debug_physical_locations): - New. - * libgdiagnostics-private.h - (private_diagnostic_set_nesting_level): New decl. - * libgdiagnostics.cc (diagnostic_manager::diagnostic_manager): - Initialize m_debug_physical_locations. - (diagnostic_manager::new_location_from_file_and_line): Add debug - printing. - (diagnostic_manager::new_location_from_file_line_column): - Likewise. - (diagnostic_manager::new_location_from_range): Likewise. - (diagnostic_manager::set_debug_physical_locations): New. - (diagnostic_manager::ensure_linemap_for_file_and_line): Avoid - redundant calls to linemap_add. - (diagnostic_manager::new_location): Add debug printing. - (diagnostic_manager::m_debug_physical_locations): New field. - (diagnostic::diagnostic): Initialize m_nesting_level. - (diagnostic::get_nesting_level): New accessor. - (diagnostic::set_nesting_level): New. - (diagnostic::m_nesting_level): New field. - (diagnostic_manager::emit_va): Set and reset the nesting level - of the context from that of the diagnostic. - (diagnostic_manager_set_debug_physical_locations): New. - (private_diagnostic_set_nesting_level): New. - * libgdiagnostics.h - (diagnostic_manager_set_debug_physical_locations): New decl. - * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_5): New. - * libsarifreplay.cc (sarif_replayer::handle_result_obj): Support - the "nestingLevel" property. - * libsarifreplay.h (replay_options::m_debug_physical_locations): - New field. - * sarif-replay.cc: Add -fdebug-physical-locations. - -2025-08-04 David Malcolm - - PR diagnostics/116792 - * diagnostics/html-sink.cc - (html_builder::make_element_for_diagnostic): Don't add the - metadata element if it's empty. - (html_builder::make_element_for_metadata): Return null rather than - an empty element. - -2025-08-04 David Malcolm - - * diagnostics/context.h: Move struct counters to its own header - and include it. - * diagnostics/counters.h: New file, from the above. - -2025-08-04 David Malcolm - - * diagnostics/context.h: Split struct source_printing_options out - into "diagnostics/source-printing-options.h" and include it. - * diagnostics/source-printing-options.h: New file, from the above. - -2025-08-04 David Malcolm - - * diagnostics/context.cc: Update for renaming of option_manager to - option_id_manager and of context::m_option_mgr to - context::m_option_id_mgr. - * diagnostics/context.h: Likewise, moving class declaration to a - new diagnostics/option-id-manager.h. - * diagnostics/lazy-paths.cc: Likewise. - * diagnostics/option-id-manager.h: New file, from material in - diagnostics/context.h. - * lto-wrapper.cc: Update for renaming of option_manager to - option_id_manager. - * opts-common.cc: Likewise. - * opts-diagnostic.h: Likewise. - * opts.cc: Likewise. - * toplev.cc: Likewise. - -2025-08-04 David Malcolm - - * diagnostics/buffering.h: Update comment to refer to output sinks - rather than output formats. - -2025-08-04 David Malcolm - - * gimple-warn-recursion.cc (pass_warn_recursion::execute): Add - missing auto_diagnostic_group. - -2025-08-04 Konstantinos Eleftheriou - - PR rtl-optimization/121303 - * avoid-store-forwarding.cc (is_store_forwarding): Add check - for `off_val` in `is_store_forwarding`. - -2025-08-04 Richard Biener - - * tree-vect-slp.cc (vect_analyze_slp): When analyzing a loop - and slp instance discovery fails, immediately fail the whole - process. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve-builtins.cc - (function_expander::expand): Assert that the return value - has an appropriate mode. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-protos.h - (aarch64_convert_sve_data_to_pred): Remove the mode argument. - * config/aarch64/aarch64.cc - (aarch64_sve_emit_int_cmp): Allow PRED_MODE to be VNx16BI or - the natural predicate mode for the data mode. - (aarch64_convert_sve_data_to_pred): Remove the mode argument - and instead always create a VNx16BI result. - (aarch64_expand_sve_const_pred): Update call accordingly. - * config/aarch64/aarch64-sve-builtins-base.cc - (svdupq_impl::expand): Likewise, ensuring that the result - has mode VNx16BI. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-protos.h - (aarch64_emit_sve_pred_vec_duplicate): Declare. - * config/aarch64/aarch64.cc - (aarch64_emit_sve_pred_vec_duplicate): New function. - * config/aarch64/aarch64-sve.md (vec_duplicate): Use it. - * config/aarch64/aarch64-sve-builtins-base.cc - (svdup_impl::expand): Handle boolean values specially. Check for - constants and fall back on aarch64_emit_sve_pred_vec_duplicate - for the variable case, ensuring that the result has mode VNx16BI. - -2025-08-04 Richard Sandiford - - * config/aarch64/iterators.md (PNEXT_ONLY): New int iterator. - * config/aarch64/aarch64-sve.md - (@aarch64_sve_): Restrict SVE_PITER pattern - to VNx16BI_ONLY. - (@aarch64_sve_): New PNEXT_ONLY pattern for - PRED_HSD. - (*aarch64_sve_): Likewise. - (*aarch64_sve__cc): Likewise. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve2.md (@aarch64_pred_): - Split SVE2_MATCH pattern into a VNx16QI_ONLY define_ins and a - VNx8HI_ONLY define_expand. Use a VNx16BI destination for the latter. - (*aarch64_pred_): New SVE2_MATCH pattern for - VNx8HI_ONLY. - (*aarch64_pred__cc): Likewise. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_pred_fac): - Replace with... - (@aarch64_pred_fac_acle): ...this new expander. - (*aarch64_pred_fac_strict_acle): New pattern. - * config/aarch64/aarch64-sve-builtins-base.cc - (svac_impl::expand): Update accordingly. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_pred_fcm_acle) - (*aarch64_pred_fcm_acle, @aarch64_pred_fcmuo_acle) - (*aarch64_pred_fcmuo_acle): New patterns. - * config/aarch64/aarch64-sve-builtins-base.cc - (svcmp_impl::expand, svcmpuo_impl::expand): Use them. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp_wide): - Split into VNx16QI_ONLY and SVE_FULL_HSI patterns. Use VNx16BI - results for both. - (*aarch64_pred_cmp_wide): New pattern. - (*aarch64_pred_cmp_wide_cc): Likewise. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md - (*aarch64_pred_cmp_wide_cc): Turn into a - define_insn_and_rewrite and rewrite the governing predicate - of the comparison so that it is identical to the PTEST's. - (*aarch64_pred_cmp_wide_ptest): Likewise. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp_wide) - (*aarch64_pred_cmp_wide_cc): Use instead of - VNx16BI for the governing predicate. - (*aarch64_pred_cmp_wide_ptest): Likewise. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp_acle) - (*aarch64_pred_cmp_acle, *cmp_acle_cc) - (*cmp_acle_and): New patterns that yield VNx16BI - results for all element types. - * config/aarch64/aarch64-sve-builtins-base.cc - (svcmp_impl::expand): Use them. - (svcmp_wide_impl::expand): Likewise when implementing an svcmp_wide - against an in-range constant. - -2025-08-04 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_sve_punpk_acle) - (*aarch64_sve_punpk_acle): New patterns. - * config/aarch64/aarch64-sve-builtins-base.cc - (svunpk_impl::expand): Use them for boolean svunpk*. - -2025-08-04 Richard Sandiford - - PR target/121294 - * config/aarch64/aarch64.md (UNSPEC_REV_PRED): New unspec. - * config/aarch64/aarch64-sve.md (@aarch64_sve_rev_acle) - (*aarch64_sve_rev_acle): New patterns. - * config/aarch64/aarch64-sve-builtins-base.cc - (svrev_impl::expand): Use the new patterns for boolean svrev. - -2025-08-04 Richard Sandiford - - PR target/121294 - * config/aarch64/iterators.md (UNSPEC_TRN1_CONV): Delete. - (UNSPEC_PERMUTE_PRED): New unspec. - * config/aarch64/aarch64-sve.md (@aarch64_sve_trn1_conv): - Replace with... - (@aarch64_sve__acle) - (*aarch64_sve__acle): ...these new patterns. - * config/aarch64/aarch64.cc (aarch64_expand_sve_const_pred_trn): - Update accordingly. - * config/aarch64/aarch64-sve-builtins-functions.h - (binary_permute::expand): Use the new _acle patterns for - predicate operations. - -2025-08-04 Richard Sandiford - - PR testsuite/121118 - * config/aarch64/iterators.md (VNx16BI_ONLY): New mode iterator. - * config/aarch64/predicates.md (aarch64_ptrue_all_operand): New - predicate. - * config/aarch64/aarch64-sve.md - (@aarch64_sve_while__acle) - (@aarch64_sve_while__acle) - (*aarch64_sve_while__acle) - (*while__acle_cc): New - patterns. - * config/aarch64/aarch64-sve-builtins-functions.h - (while_comparison::expand): Use the new _acle patterns that - always return a VNx16BI. - * config/aarch64/aarch64-sve-builtins-sve2.cc - (svwhilerw_svwhilewr_impl::expand): Likewise. - * config/aarch64/aarch64.cc - (aarch64_sve_move_pred_via_while): Likewise. - -2025-08-04 Richard Sandiford - - PR target/121293 - * config/aarch64/aarch64-sve-builtins-base.cc (svdupq_lane::expand): - Use aarch64_sve_reinterpret instead of subregs. Explicitly - reinterpret the result back to the required mode, rather than - leaving the caller to take a subreg. - -2025-08-04 Richard Biener - - PR tree-optimization/121362 - * tree-ssa-sccvn.cc (vn_reference_lookup_3): Generalize - aggregate copy handling. - -2025-08-04 Filip Kastl - - * doc/invoke.texi: Add remark about -options being documented - under -fdump-tree. Remove remark about -graph working only for - RTL. - -2025-08-04 H.J. Lu - - PR target/120941 - * config/i386/i386-features.cc (x86_cse_kind): Moved before - ix86_place_single_vector_set. - (redundant_load): Likewise. - (ix86_place_single_vector_set): Replace the last argument to the - pointer to redundant_load. For X86_CSE_VEC_DUP, don't place the - vector set outside of the loop to avoid extra spills. - (remove_redundant_vector_load): Pass load to - ix86_place_single_vector_set. - -2025-08-03 Georg-Johann Lay - - * config/avr/avr.md (define_insn_and_split) [reload_completed]: - For splits that just append a (clobber (reg:CC REG_CC)) to - the pattern, use avr_add_ccclobber (curr_insn) instead of - repeating the original pattern. - * config/avr/avr-dimode.md: Same. - * config/avr/avr-fixed.md: Same. - -2025-08-03 Georg-Johann Lay - - * config/avr/avr.cc (avr_add_ccclobber): New function. - * config/avr/avr-protos.h (avr_add_ccclobber): New proto. - (DONE_ADD_CCC): New define. - -2025-08-03 Richard Biener - - PR tree-optimization/90242 - * tree-ssa-sccvn.cc (vn_reference_compute_hash): Use - poly_offset_int for offset accumulation. For hashing - truncate to 64 bits and also hash 64 bits. - (vn_reference_eq): Likewise. - -2025-08-02 Gerald Pfeifer - - PR target/69374 - * doc/install.texi (Specific) : Drop note on 16-bit - Windows support. Streamline note on 32-bit support. - -2025-08-01 Richard Biener - - PR tree-optimization/121350 - * tree-vect-stmts.cc (vectorizable_store): Pass down SLP - node when costing scalar stores in vect_body. - -2025-08-01 Richard Biener - - PR tree-optimization/121349 - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Get full SLP mask, reduce to uniform scalar_mask for further - processing if possible. - (vect_check_scalar_mask): Remove scalar mask output, remove - code conditional on slp_mask. - (vectorizable_call): Adjust. - (check_scan_store): Get and check SLP mask. - (vectorizable_store): Eliminate scalar mask variable. - (vectorizable_load): Likewise. - -2025-08-01 Gerald Pfeifer - - * doc/install.texi (Prerequisites): mdocml.bsd.lv is now - mandoc.bsd.lv. - -2025-08-01 Richard Biener - - * tree-vect-stmts.cc (get_group_load_store_type): Remove, - inline into ... - (get_load_store_type): ... this. Remove ncopies parameter. - (vectorizable_load): Adjust. - (vectorizable_store): Likewise. - -2025-08-01 Richard Biener - - * tree-vect-stmts.cc (get_group_load_store_type): Remove - checks performed at SLP build time. - (vect_check_store_rhs): Remove scalar RHS output. - (vectorizable_store): Remove uses of scalar RHS. - -2025-08-01 Richard Biener - - * tree-vectorizer.h (VMAT_UNINITIALIZED): New - vect_memory_access_type. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Use it. - -2025-08-01 Richard Biener - - PR tree-optimization/121338 - * tree-ssa-loop-ivopts.cc (avg_loop_niter): Return an - unsigned. - (adjust_setup_cost): When niters is so large the division - result is one or zero avoid it. - (create_new_ivs): Adjust. - -2025-08-01 Richard Biener - - * tree-vectorizer.h (vect_simd_clone_data): New. - (_slp_tree::simd_clone_info): Remove. - (SLP_TREE_SIMD_CLONE_INFO): Likewise. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Adjust. - (_slp_tree::~_slp_tree): Likewise. - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Use - tyupe specific data to store SLP_TREE_SIMD_CLONE_INFO. - -2025-08-01 Richard Biener - - * tree-vect-slp.cc (_slp_tree::_slp_tree): Adjust. - (_slp_tree::~_slp_tree): Likewise. - * tree-vectorizer.h (vect_data): New base class. - (_slp_tree::u): Remove. - (_slp_tree::data): Add pointer to vect_data. - (_slp_tree::get_data): New helper template. - -2025-08-01 Jakub Jelinek - - PR middle-end/121322 - * gimple-ssa-store-merging.cc (find_bswap_or_nop): Return NULL if - count is 0. - -2025-07-31 Georg-Johann Lay - - * config/avr/avr.opt.urls (-mfuse-move2): Add url. - -2025-07-31 Georg-Johann Lay - - * config/avr/avr.cc (avr_output_addr_vec) : Asm out its .type. - -2025-07-31 Georg-Johann Lay - - PR rtl-optimization/121340 - * config/avr/avr.opt (-mfuse-move2): New option. - * config/avr/avr-passes.def (avr_pass_2moves): Insert after combine. - * config/avr/avr-passes.cc (make_avr_pass_2moves): New function. - (pass_data avr_pass_data_2moves): New static variable. - (avr_pass_2moves): New rtl_opt_pass. - * config/avr/avr-protos.h (make_avr_pass_2moves): New proto. - * common/config/avr/avr-common.cc - (default_options avr_option_optimization_table) <-mfuse-move2>: - Set for -O1 and higher. - * doc/invoke.texi (AVR Options) <-mfuse-move2>: Document. - -2025-07-31 Tamar Christina - - PR tree-optimization/120805 - * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Skip setting - bounds on epilogues. - -2025-07-31 Wilco Dijkstra - - * common/config/aarch64/cpuinfo.h: Remove unused features, add FEAT_CSSC - and FEAT_MOPS. - * config/aarch64/aarch64-option-extensions.def: Remove FMV support - for RPRES, use PULL rather than AES, add FMV support for CSSC and MOPS. - -2025-07-31 Wilco Dijkstra - - * config/aarch64/tuning_models/generic_armv9_a.h - (generic_armv9_a_addrcost_table): Use zero cost for himode. - -2025-07-31 Richard Biener - - * tree-vect-stmts.cc (get_group_load_store_type): Properly - compare the scalar type of the gather/scatter offset to - the offset vector component type. - -2025-07-31 Richard Biener - - * gimple-fold.h (fold_stmt_inplace): Add valueization hook - argument, defaulted to no_follow_ssa_edges. - * gimple-fold.cc (fold_stmt_inplace): Adjust. - -2025-07-31 Artemiy Granat - - * config/i386/i386-options.cc (ix86_handle_cconv_attribute): - Fix typo. - -2025-07-31 Artemiy Granat - - * config/i386/i386-options.cc (ix86_handle_cconv_attribute): - Handle simultaneous use of regparm and thiscall attributes in - case when regparm is set before thiscall. - -2025-07-31 Artemiy Granat - - * config/i386/i386-options.cc (ix86_handle_cconv_attribute): - Fix comments which state that combination of stdcall and fastcall - attributes is valid but redundant. - -2025-07-31 Artemiy Granat - - * config/i386/i386-options.cc (ix86_handle_cconv_attribute): - Move 64-bit mode check before regparm handling. - -2025-07-31 Richard Biener - - PR tree-optimization/121320 - * tree-ssa-sccvn.cc (ao_ref_init_from_vn_reference): Convert - op->off to poly_offset_int before multiplying by - BITS_PER_UNIT. - -2025-07-31 Richard Biener - - PR tree-optimization/121323 - * tree-ssa-alias.cc (ao_ref_init_from_ptr_and_range): Check - the pointer offset fits in a HWI when represented in bits. - -2025-07-31 Yury Khrustalev - - * config/aarch64/aarch64.cc (build_ifunc_arg_type): - Add new fields _hwcap3 and _hwcap4. - -2025-07-31 Kishan Parmar - - PR target/118890 - * config/rs6000/rs6000.cc (can_be_rotated_to_negative_lis): Avoid left - shift of negative value and guard shift count. - (can_be_built_by_li_and_rldic): Likewise. - (rs6000_emit_set_long_const): Likewise. - * config/rs6000/rs6000.md (splitter for plus into two 16-bit parts): Fix - UB from overflow in addition. - -2025-07-31 Richard Biener - - * config/aarch64/aarch64.cc (aarch64_detect_vector_stmt_subtype): - Check for node before dereferencing. - (aarch64_vector_costs::add_stmt_cost): Likewise. - -2025-07-31 Spencer Abson - - PR target/121028 - * config/aarch64/aarch64-sme.md (aarch64_smstart_sm): Use the .inst - directive if !TARGET_SME. - (aarch64_smstop_sm): Likewise. - -2025-07-31 Richard Biener - - * tree-vectorizer.h (_stmt_vec_info::memory_access_type): Remove. - (STMT_VINFO_MEMORY_ACCESS_TYPE): Likewise. - (vect_mem_access_type): Likewise. - * tree-vect-stmts.cc (vectorizable_store): Do not set - STMT_VINFO_MEMORY_ACCESS_TYPE. Fix SLP_TREE_MEMORY_ACCESS_TYPE - usage. - * tree-vect-loop.cc (update_epilogue_loop_vinfo): Remove - checking of memory access type. - * config/riscv/riscv-vector-costs.cc (costs::compute_local_live_ranges): - Use SLP_TREE_MEMORY_ACCESS_TYPE. - (costs::need_additional_vector_vars_p): Likewise. - (segment_loadstore_group_size): Get SLP node as argument, - use SLP_TREE_MEMORY_ACCESS_TYPE. - (costs::adjust_stmt_cost): Pass down SLP node. - * config/aarch64/aarch64.cc (aarch64_ld234_st234_vectors): Use - SLP_TREE_MEMORY_ACCESS_TYPE instead of vect_mem_access_type. - (aarch64_detect_vector_stmt_subtype): Likewise. - (aarch64_vector_costs::count_ops): Likewise. - (aarch64_vector_costs::add_stmt_cost): Likewise. - -2025-07-31 Richard Biener - - * tree-vect-loop.cc (vect_transform_loop): Do not verify DRs - have not been modified for epilogue loops. - (update_epilogue_loop_vinfo): Do not copy modified DRs to - the originals. - -2025-07-31 Jakub Jelinek - - PR tree-optimization/121264 - * machmode.h (get_best_mode): Change type of first 2 arguments - from int to HOST_WIDE_INT. - * stor-layout.cc (get_best_mode): Likewise. - -2025-07-31 Jakub Jelinek - - * gimple-ssa-store-merging.cc (find_bswap_or_nop): Fix comment typos, - hanlde -> handle. - * config/i386/i386.cc (ix86_gimple_fold_builtin, ix86_rtx_costs): - Likewise. - * config/i386/i386-features.cc (remove_partial_avx_dependency): - Likewise. - -2025-07-31 Richard Biener - - * tree-vect-stmts.cc (check_scan_store): Remove redundant - slp_node check. Disallow epilogue vectorization. - -2025-07-31 Richard Biener - - * tree-vectorizer.h (vector_costs::costing_for_scalar): New - accessor. - (add_stmt_cost): For scalar costing force vectype to NULL. - Verify we do not pass in a SLP node. - -2025-07-31 Kito Cheng - - PR target/121312 - * config/riscv/arch-canonicalize: Add H extension to the - canonical order. - -2025-07-30 Andrew Pinski - - PR rtl-optimization/121308 - * simplify-rtx.cc (simplify_context::simplify_subreg): Handle - subreg of `not` with word_mode to make it symmetric with the - other bitwise operators. - -2025-07-30 Andrew Pinski - - PR tree-optimization/121236 - PR tree-optimization/121295 - * tree-if-conv.cc (factor_out_operators): Change the phi node - to the new result and args. - -2025-07-30 Andrew Pinski - - Revert: - 2025-07-28 Andrew Pinski - - PR tree-optimization/121236 - * tree-if-conv.cc (is_cond_scalar_reduction): Instead of phi argument, - pass bb and res of the phi. - (factor_out_operators): Add iterator for the phi. Remove the phi - if this is the first time. Return if we had removed the phi. - (predicate_scalar_phi): Add the phi iterator argument. - Update call to is_cond_scalar_reduction. - Update call to factor_out_operators and set the return value to true - when factor_out_operators returns true. - (predicate_all_scalar_phis): Don't remove the phi if predicate_scalar_phi - already removed it. - -2025-07-30 Jan Hubicka - - * auto-profile.cc (string_table::read): Check gcov_is_error. - (read_profile): Likewise. - * gcov-io.cc (gcov_is_error): Export for gcc linkage. - * gcov-io.h (gcov_is_error): Declare. - -2025-07-30 Richard Biener - - * config/i386/i386.cc (ix86_default_vector_cost): Split - out from ... - (ix86_builtin_vectorization_cost): ... this and use - mode instead of vectype as argument. - (ix86_vector_costs::add_stmt_cost): Call - ix86_default_vector_cost instead of ix86_builtin_vectorization_cost. - -2025-07-30 Stefan Schulze Frielinghaus - - PR target/117015 - * config/s390/s390-protos.h (s390_expand_int_spaceship): New - function. - (s390_expand_fp_spaceship): New function. - * config/s390/s390.cc (s390_expand_int_spaceship): New function. - (s390_expand_fp_spaceship): New function. - * config/s390/s390.md (spaceship4): New expander. - -2025-07-30 Stefan Schulze Frielinghaus - - * cprop.cc (bypass_block): Extract single set. - (bypass_conditional_jumps): Ditto. - -2025-07-30 H.J. Lu - - PR target/120427 - * config/i386/i386.md (peephole2): Transform "movq $-1,reg" to - "pushq $-1; popq reg" for -Oz if reg is a legacy integer register. - -2025-07-30 Jan Hubicka - - * auto-profile.cc (function_instance::match): Disable warning - about bogus locations since dwarf does not represent enough - info to output them correctly in all cases. - (add_scale): Use nonzero_p instead of orig.force_nonzero () == orig. - (afdo_adjust_guessed_profile): Add missing newline in dump - file. - -2025-07-30 Jan Hubicka - - * symtab.cc (symbol_table::change_decl_assembler_name): Recompute DECL_RTL - in case it is already computed. - -2025-07-30 Jan Hubicka - - * predict.cc (unlikely_executed_edge_p): Ignore EDGE_EH if profile - is reliable. - (unlikely_executed_stmt_p): special case builtin_trap/unreachable and - ignore other heuristics for reliable profiles. - (tree_estimate_probability): Disable unlikely bb detection when - doing dry run - -2025-07-30 Andrew Stubbs - Julian Brown - - * doc/tm.texi.in (TARGET_VECTORIZE_PREFER_GATHER_SCATTER): Add - documentation hook. - * doc/tm.texi: Regenerate. - * target.def (prefer_gather_scatter): Add target hook under vectorizer. - * hooks.cc (hook_bool_mode_int_unsigned_false): New function. - * hooks.h (hook_bool_mode_int_unsigned_false): New prototype. - * tree-vect-stmts.cc (vect_use_strided_gather_scatters_p): Add - parameters group_size and single_element_p, and rework to use - targetm.vectorize.prefer_gather_scatter. - (get_group_load_store_type): Move some of the condition into - vect_use_strided_gather_scatters_p. - * config/gcn/gcn.cc (gcn_prefer_gather_scatter): New function. - (TARGET_VECTORIZE_PREFER_GATHER_SCATTER): Define hook. - -2025-07-30 Andrew Stubbs - - * config/gcn/gcn.cc (gcn_option_override): Add note to set default for - param_vect_partial_vector_usage to "1". - * optc-save-gen.awk: Don't pass through options marked "NoOffload". - * params.opt (-param=vect-epilogues-nomask): Add NoOffload. - (-param=vect-partial-vector-usage): Likewise. - (-param=vect-inner-loop-cost-factor): Likewise. - -2025-07-30 Richard Biener - - PR tree-optimization/121130 - * tree-vect-stmts.cc (vectorizable_call): Bail out for - .MASK_CALL. - -2025-07-30 Pengfei Li - - PR tree-optimization/121020 - * tree-vect-loop-manip.cc (vect_do_peeling): Update the - condition of omitting the skip-vector check. - * tree-vectorizer.h (LOOP_VINFO_USE_VERSIONING_WITHOUT_PEELING): - Add a helper macro. - -2025-07-30 Pengfei Li - - PR tree-optimization/121190 - * tree-vect-data-refs.cc (vect_enhance_data_refs_alignment): - Increase alignment requirement for speculative loads. - -2025-07-30 Alfie Richards - - PR target/121300 - * config/aarch64/aarch64-sve-builtins-sme.def (svamin/svamax): Fix - arch gating. - -2025-07-30 Richard Biener - - * tree-vect-stmts.cc (get_group_load_store_type): - Process STMT_VINFO_GATHER_SCATTER before reading - memory_access_type. - -2025-07-30 Spencer Abson - - * config/aarch64/aarch64-sve.md (@cond_): Extend - to support partial FP modes. - (*cond__2_strict): Extend from SVE_FULL_F to SVE_F, - use aarch64_predicate_operand. - (*cond__4_strict): Extend from SVE_FULL_F_B16B16 to - SVE_F_B16B16, use aarch64_predicate_operand. - (*cond__any_strict): Likewise. - -2025-07-30 Spencer Abson - - * config/aarch64/aarch64-sve.md (*cond__2_relaxed): - Extend from SVE_FULL_F to SVE_F. - (*cond__4_relaxed): Extend from SVE_FULL_F_B16B16 - to SVE_F_B16B16. - (*cond__any_relaxed): Likewise. - -2025-07-30 Spencer Abson - - * config/aarch64/aarch64-sve.md (4): Extend from - SVE_FULL_F_B16B16 to SVE_F_B16B16. Use aarch64_sve_fp_pred instead - of aarch64_ptrue_reg. - (@aarch64_pred_): Extend from SVE_FULL_F_B16B16 to - SVE_F_B16B16. Use aarch64_predicate_operand. - -2025-07-30 liuhongt - - * config/i386/i386-modes.def: Remove VECTOR_MODES(FLOAT, 256) - and VECTOR_MODE (INT, SI, 64). - * config/i386/i386.cc (ix86_hard_regno_nregs): Remove related - code for V64SF/V64SImode. - -2025-07-30 liuhongt - - PR target/121274 - * config/i386/sse.md (*vec_concatv2di_0): Add a splitter - before it. - -2025-07-30 Andrew Pinski - - PR rtl-optimization/121302 - * simplify-rtx.cc (simplify_context::simplify_subreg): Use - byte instead of 0 when calling simplify_subreg. - -2025-07-29 Spencer Abson - - * config/aarch64/aarch64-protos.h (aarch64_sve_emit_masked_fp_pred): - Declare. - * config/aarch64/aarch64-sve.md (and3): Change this to... - (@and3): ...this, so that we can use gen_and3. - (@cond_): Extend from SVE_FULL_F_B16B16 to SVE_F_B16B16, - use aarch64_predicate_operand. - (*cond__2_strict): Likewise. - (*cond__3_strict): Likewise. - (*cond__any_strict): Likwise. - (*cond__2_const_strict): Extend from SVE_FULL_F to SVE_F, - use aarch64_predicate_operand. - (*cond__any_const_strict): Likewise. - (*cond_sub_3_const_strict): Likwise. - (*cond_sub_const_strict): Likewise. - (*vcond_mask_): Use aarch64_predicate_operand, and update - the comment here. - * config/aarch64/aarch64.cc (aarch64_sve_emit_masked_fp_pred): New - function. Helper to mask the predicate in conditional expanders. - -2025-07-29 Dongyan Chen - - * Makefile.in: Add riscv-mcpu.texi and riscv-mtune.texi to the list - of files to be processed by the Texinfo generator. - * config/riscv/t-riscv: Add rule for generating riscv-mcpu.texi - and riscv-mtune.texi. - * doc/invoke.texi: Replace hand‑written extension table with - `@include riscv-mcpu.texi` and `@include riscv-mtune.texi` to - pull in auto‑generated entries. - * config/riscv/gen-riscv-mcpu-texi.cc: New file. - * config/riscv/gen-riscv-mtune-texi.cc: New file. - * doc/riscv-mcpu.texi: New file. - * doc/riscv-mtune.texi: New file. - -2025-07-29 Richard Sandiford - - * simplify-rtx.cc (simplify_context::simplify_subreg): Distribute - lowpart subregs through AND/IOR/XOR, if doing so eliminates one - of the terms. - (test_scalar_int_ext_ops): Add some tests of the above for integers. - * config/aarch64/aarch64.cc (aarch64_test_sve_folding): Likewise - add tests for predicate modes. - -2025-07-29 Richard Sandiford - - * config/aarch64/aarch64-sve-builtins.cc - (function_expander::get_reg_target): Check whether the target - is a valid register_operand. - -2025-07-29 Konstantinos Eleftheriou - - PR rtl-optimization/120660 - * avoid-store-forwarding.cc (process_store_forwarding): - Fix instruction generation when haveing multiple stores with - base offset. - -2025-07-29 Christoph Müllner - - * common/config/riscv/riscv-common.cc (riscv_ext_is_subset): - Remove use of structured binding to fix compiler warning. - -2025-07-29 Konstantinos Eleftheriou - - PR rtl-optimization/119795 - * avoid-store-forwarding.cc - (store_forwarding_analyzer::avoid_store_forwarding): Skip - transformations for stores that operate on the same address - range as deleted ones. - -2025-07-29 Pan Li - - * match.pd: Add mul based unsigned SAT_MUL. - -2025-07-29 Richard Biener - - PR tree-optimization/120687 - * tree-ssa-reassoc.cc (reassociate_bb): Do not disturb - the sorted operand order in the early pass. - * tree-vect-slp.cc (vect_analyze_slp): Dump when a detected - reduction chain fails SLP discovery. - -2025-07-29 Alfie Richards - - PR middle-end/121261 - * vec.h: Add null ptr check. - -2025-07-29 Jakub Jelinek - - PR middle-end/121159 - * calls.cc (can_implement_as_sibling_call_p): Don't reject declared - noreturn functions in musttail calls. - -2025-07-29 Andrew Pinski - - * output.h (MAX_ALIGN_MERGABLE): New define. - * tree-switch-conversion.cc (switch_conversion::build_one_array): - Use MAX_ALIGN_MERGABLE instead of 256. - * varasm.cc (mergeable_string_section): Likewise - (mergeable_constant_section): Likewise - -2025-07-29 Andrew Pinski - - PR middle-end/120523 - * output.h (mergeable_constant_section): New declaration taking - unsigned HOST_WIDE_INT for the size. - * tree-switch-conversion.cc (switch_conversion::build_one_array): - Increase the alignment of CSWTCH for sizes less than 32bytes. - * varasm.cc (mergeable_constant_section): Split out twice. - One that takes the size in unsigned HOST_WIDE_INT and the - other size in a tree. - (default_elf_select_section): Pass DECL_SIZE instead of - DECL_MODE to mergeable_constant_section. - -2025-07-29 Richard Biener - - * tree-vect-stmts.cc (vectorizable_load): Un-factor VMAT - specific code to their handling blocks. - -2025-07-29 Richard Biener - - * tree-vectorizer.h (gather_scatter_info::offset_dt): Remove. - * tree-vect-data-refs.cc (vect_describe_gather_scatter_call): - Do not set it. - (vect_check_gather_scatter): Likewise. - * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): - Likewise. - (get_group_load_store_type): Use the vector type of the offset - SLP child. Do not re-check vect_is_simple_use validated by - SLP build. - -2025-07-28 Georg-Johann Lay - - PR target/121277 - * config/avr/avr.cc (avr_addr_space_convert): When converting - from generic AS to __flashx, don't set bit 23. - (avr_convert_to_type): Don't -Waddr-space-convert when NULL - is converted to __flashx or to __flash. - -2025-07-28 Andrew Pinski - - PR tree-optimization/121236 - * tree-if-conv.cc (is_cond_scalar_reduction): Instead of phi argument, - pass bb and res of the phi. - (factor_out_operators): Add iterator for the phi. Remove the phi - if this is the first time. Return if we had removed the phi. - (predicate_scalar_phi): Add the phi iterator argument. - Update call to is_cond_scalar_reduction. - Update call to factor_out_operators and set the return value to true - when factor_out_operators returns true. - (predicate_all_scalar_phis): Don't remove the phi if predicate_scalar_phi - already removed it. - -2025-07-28 H.J. Lu - - PR target/121208 - * config/i386/i386.cc (ix86_tls_get_addr): Issue an error for - -mtls-dialect=gnu with no_caller_saved_registers attribute and - suggest -mtls-dialect=gnu2. - -2025-07-28 Mikael Pettersson - - PR other/121260 - * diagnostics/changes.cc: Correct nesting of namespaces - and #if CHECKING_P blocks. - * diagnostics/context.cc: Likewise. - * diagnostics/html-sink.cc: Likewise. - * diagnostics/output-spec.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - -2025-07-28 Tobias Burnus - - * config/nvptx/nvptx.opt (march-map=): Add sm_100{,f,a}, - sm_101{,f,a}, sm_103{,a,f}, sm_120{,a,f} and sm_121{,f,a}. - -2025-07-28 Tobias Burnus - - * config/gcn/gcn.md (atomic_load, atomic_store, atomic_exchange): - Fix CDNA3 L2 cache write-back before atomic instructions. - -2025-07-28 Richard Biener - - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Make *gs_info const. - (vect_build_one_gather_load_call): Likewise. - (vect_build_one_scatter_store_call): Likewise. - (vect_get_gather_scatter_ops): Likewise. - (vect_get_strided_load_store_ops): Likewise. - -2025-07-28 Tobias Burnus - - * config/gcn/gcn.md (define_attr "vcmp"): Add with values - vcmp/vcmpx/no. - (*movbi, cstoredi4.., cstore4): Set it. - * config/gcn/gcn-valu.md (vec_cmp...): Likewise. - * config/gcn/gcn.cc (gcn_cmpx_insn_p): Remove. - (gcn_md_reorg): Add two new conditions for MI300. - -2025-07-28 Tobias Burnus - - * config/gcn/gcn-opts.h (enum hsaco_attr_type): Add comment - about 'sc0'. - * config/gcn/gcn.cc (gcn_md_reorg): Use gen_nops instead of gen_nop. - (print_operand_address): Document 'R' and 'V' in the - pre-function comment as well. - * config/gcn/gcn.md (nops): Add. - -2025-07-28 Richard Biener - - PR tree-optimization/121256 - * tree-vect-loop.cc (vectorizable_recurr): Build a correct - initialization vector for SLP_TREE_LANES > 1. - -2025-07-28 Richard Biener - - * tree-vectorizer.h (_slp_tree::type): Add. - (_slp_tree::u): Likewise. - (_stmt_vec_info::type): Remove. - (STMT_VINFO_TYPE): Likewise. - (SLP_TREE_TYPE): New. - * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Do not - initialize type. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize type. - (vect_slp_analyze_node_operations): Adjust. - (vect_schedule_slp_node): Likewise. - * tree-vect-patterns.cc (vect_init_pattern_stmt): Do not - copy STMT_VINFO_TYPE. - * tree-vect-loop.cc: Set SLP_TREE_TYPE instead of - STMT_VINFO_TYPE everywhere. - (vect_create_loop_vinfo): Do not set STMT_VINFO_TYPE on - loop conditions. - * tree-vect-stmts.cc: Set SLP_TREE_TYPE instead of - STMT_VINFO_TYPE everywhere. - (vect_analyze_stmt): Adjust. - (vect_transform_stmt): Likewise. - * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): - Access SLP_TREE_TYPE instead of STMT_VINFO_TYPE. - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): - Remove non-SLP element-wise load/store matching. - * config/rs6000/rs6000.cc - (rs6000_cost_data::update_target_cost_per_stmt): Pass in - the SLP node. Use that to get at the memory access - kind and type. - (rs6000_cost_data::add_stmt_cost): Pass down SLP node. - * config/riscv/riscv-vector-costs.cc (variable_vectorized_p): - Use SLP_TREE_TYPE. - (costs::need_additional_vector_vars_p): Likewise. - (costs::update_local_live_ranges): Likewise. - -2025-07-28 Jennifer Schmitz - Dhruv Chawla - - * config/aarch64/aarch64-cores.def (olympus): Use olympus tuning - model. - * config/aarch64/aarch64.cc: Include olympus.h. - * config/aarch64/tuning_models/olympus.h: New file. - -2025-07-28 Lulu Cheng - - * config/loongarch/loongarch.h - (CASE_VECTOR_SHORTEN_MODE): Delete. - -2025-07-28 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xtensa_is_insn_L32R_p): - Re-rewrite to more accurately capture insns that could be L32R machine - instructions wherever possible, and add comments that help understand - the intent of the process. - -2025-07-27 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vxrm_vec_vec_dup): - Add new case UNSPEC_VAADD. - (expand_vx_binary_vxrm_vec_dup_vec): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new case UNSPEC_VAADD to - iterator. - -2025-07-27 Nathaniel Shead - - PR middle-end/120855 - * cgraphunit.cc (symbol_table::compile): Assert a transparent - alias is not an internal identifier. - * symtab.cc (symbol_table::change_decl_assembler_name): - Likewise. - * varasm.cc (assemble_name_resolve): Check for - IDENTIFIER_TRANSPARENT_ALIAS instead of just TREE_CHAIN. - -2025-07-26 Thomas Schwinge - - * diagnostics/context.cc (context::diagnostic_impl) - (context::diagnostic_n_impl): In presence of formal parameter - 'kind', explicitly state 'diagnostics::' scope for 'kind' enum. - -2025-07-26 Thomas Schwinge - - * diagnostics/option-classifier.cc - (update_effective_level_from_pragmas): In presence of local - variable 'kind', explicitly state 'diagnostics::' scope for 'kind' - enum. - -2025-07-26 Christoph Müllner - - * config/riscv/riscv-ext.def: Add allocated group IDs and - group bit positions. - -2025-07-25 David Malcolm - - * diagnostics/context.cc: Eliminate digraphs::lazy_digraph in - favor of lazily_created template. - * diagnostics/context.h: Likewise. - * diagnostics/digraphs.cc: Likewise, also digraphs::lazy_digraphs. - * diagnostics/digraphs.h: Likewise. - * diagnostics/html-sink.cc: Likewise. - * diagnostics/metadata.h: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/sink.h: Likewise. - * diagnostics/text-sink.h: Likewise. - * lazily-created.h: New file. - * libgdiagnostics.cc: Eliminate digraphs::lazy_digraph in - favor of lazily_created template. - -2025-07-25 David Malcolm - - * diagnostic.h: Use TextOrHtml rather than Sink for template - params. - * diagnostics/context.h: Likewise. - * diagnostics/selftest-context.cc: Use "html_or_text" rather than - "sink". - * diagnostics/source-printing.cc: Use TextOrHtml rather than Sink - for template params. Use "text_out" and "html_out" rather than - "sink". - -2025-07-25 David Malcolm - - * diagnostic.h (diagnostic_set_caret_max_width): Drop forward - decl. - (diagnostic_same_line): Make - diagnostics::context::m_source_printing private. - * diagnostics/context.cc (diagnostic_set_caret_max_width): Convert - to... - (diagnostics::context::set_caret_max_width): ...this. - * diagnostics/context.h - (diagnostics::context::get_source_printing_options): New - accessors. - (diagnostics::context::m_source_printing): Make private. - * diagnostics/html-sink.cc: Make - diagnostics::context::m_source_printing private. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/selftest-context.cc: Likewise. - * diagnostics/selftest-context.h - (diagnostics::selftest::test_context::colorize_source): New. - (diagnostics::selftest::test_context::show_labels): New. - (diagnostics::selftest::test_context::show_line_numbers): New. - (diagnostics::selftest::test_context::show_ruler): New. - (diagnostics::selftest::test_context::show_event_links): New. - (diagnostics::selftest::test_context::set_caret_char): New. - * diagnostics/source-printing.cc: Make - diagnostics::context::m_source_printing private. - * diagnostics/text-sink.h: Likewise. - * libgdiagnostics.cc: Likewise. - * opts.cc: Likewise. - * toplev.cc: Likewise. - -2025-07-25 David Malcolm - - * diagnostic.h: Eliminate "diagnostic_info" typedef. - * diagnostics/context.cc: Update usage of "diagnostic_info" to - explicitly refer to "diagnostics::diagnostic_info". - * langhooks.cc: Likewise. - * libgdiagnostics.cc: Likewise. - * rtl-error.cc: Likewise. - * substring-locations.cc: Likewise. - * toplev.cc: Likewise. - * tree-diagnostic.cc: Likewise. - * tree-diagnostic.h: Likewise. - -2025-07-25 David Malcolm - - * diagnostic.h (enum diagnostics_column_unit): Move to - diagnostics/context-options.h. - (enum diagnostics_escape_format): Likewise. - (enum diagnostics_output_format): Likewise. - (enum diagnostic_path_format): Likewise. - (enum diagnostics_extra_output_kind): Likewise. - (enum diagnostic_text_art_charset): Likewise. - * diagnostics/context-options.h: New file, based on the above - material. - * diagnostics/context.h: Include it. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Add diagnostics/file-cache.o. - * diagnostics/changes.cc: Update for file_cache and char_span - moving from input.h to diagnostics/file-cache.h and into the - "diagnostics::" namespace. - * diagnostics/context.cc: Likewise. - * diagnostics/diagnostics-selftests.cc: Likewise. - * diagnostics/diagnostics-selftests.h: Likewise. - * diagnostics/file-cache.cc: New file, based on the file_cache - and file_cache_slot material in input.cc. - * diagnostics/file-cache.h: Likewise for input.h. - * diagnostics/selftest-source-printing.h: Update for file_cache - and char_span moving from input.h to diagnostics/file-cache.h and - into the "diagnostics::" namespace. - * diagnostics/source-printing.cc: Likewise. - * final.cc: Likewise. - * gcc-rich-location.cc: Likewise. - * input.cc (default_charset_callback): Move to - diagnostics/file-cache.cc. - (file_cache::initialize_input_context): Likewise. - (class file_cache_slot): Likewise. - (file_cache::tune): Likewise. - (file_cache::lookup_file): Likewise. - (file_cache::forcibly_evict_file): Likewise. - (file_cache::missing_trailing_newline_p): Likewise. - (file_cache::add_buffered_content): Likewise. - (file_cache::evicted_cache_tab_entry): Likewise. - (file_cache::add_file): Likewise. - (file_cache::file_cache): Likewise. - (file_cache::dump): Likewise. - (file_cache::dump): Likewise. - (file_cache::lookup_or_add_file): Likewise. - (find_end_of_line): Likewise. - (file_cache::get_source_line): Likewise. - (check_line): Likewise. - (test_replacement): Likewise. - (test_reading_source_line): Likewise. - (test_reading_source_buffer): Likewise. - * input.h (class char_span): Move to diagnostics/file-cache.h and - into the "diagnostics::" namespace. - (class file_cache_slot): Likewise. - (class file_cache): Likewise. - * libgdiagnostics.cc: Update for file_cache and char_span moving - from input.h to diagnostics/file-cache.h and into the - "diagnostics::" namespace. - * selftest.cc: Likewise. - * selftest.h: Likewise. - * substring-locations.h: Likewise. - * toplev.cc: Likewise. - -2025-07-25 David Malcolm - - * diagnostics/selftest-paths.cc: Don't include "demangle.h" - and "backtrace.h". - * diagnostics/source-printing.cc: Likewise. - * diagnostics/state-graphs.cc: Don't include "graphviz.h", - "xml.h", "xml-printer.h", or "intl.h". - -2025-07-25 David Malcolm - - * diagnostic.h: Move include of "unique-argv.h" - and various forward decls into... - * diagnostics/context.h: ...here. - -2025-07-25 David Malcolm - - * diagnostic.h (num_digits): Move to... - (diagnostics::num_digits): ...here. - (get_cwe_url): Move to... - (diagnostics::get_cwe_url): ...here. - (maybe_line_and_column): Move to... - (diagnostics::maybe_line_and_column): ...here. - * diagnostic.cc: Move to... - * diagnostics/context.cc: ...here. - * diagnostics/diagnostics-selftests.cc - (run_diagnostics_selftests): Add comment about context_cc_tests. - * diagnostics/diagnostics-selftests.h: Add context_cc_tests decl. - * diagnostics/sarif-sink.cc: Update for file rename. - * diagnostics/source-printing.cc: Update for num_digits moving to - diagnostics::num_digits. - * errors.cc: Update for file rename. - * input.cc: Update for num_digits moving to - diagnostics::num_digits. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace diagnostic.o with - diagnostics/context.o. - -2025-07-25 David Malcolm - - * Makefile.in: Replace diagnostic.def with diagnostics/kinds.def. - * config/aarch64/aarch64.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - * config/i386/i386-options.cc: Likewise. - * config/s390/s390.cc: Likewise. - * diagnostic-core.h: Replace typedef diagnostic_t with - enum class diagnostics::kind in diagnostics/kinds.h and include - it. - * diagnostic-global-context.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostics/buffering.cc: Likewise. - * diagnostics/buffering.h: Likewise. - * diagnostics/context.h: Likewise. - * diagnostics/diagnostic-info.h: Likewise. - * diagnostics/html-sink.cc: Likewise. - * diagnostic.def: Move to... - * diagnostics/kinds.def: ...here and update for diagnostic_t - becoming enum class diagnostics::kind. - * diagnostics/kinds.h: New file, based on material in - diagnostic-core.h. - * diagnostics/lazy-paths.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - * diagnostics/option-classifier.cc: Likewise. - * diagnostics/option-classifier.h: Likewise. - * diagnostics/output-spec.h: Likewise. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/selftest-context.cc: Likewise. - * diagnostics/selftest-context.h: Likewise. - * diagnostics/sink.h: Likewise. - * diagnostics/source-printing.cc: Likewise. - * diagnostics/text-sink.cc: Likewise. - * diagnostics/text-sink.h: Likewise. - * gcc.cc: Likewise. - * libgdiagnostics.cc: Likewise. - * lto-wrapper.cc: Likewise. - * opts-common.cc: Likewise. - * opts-diagnostic.h: Likewise. - * opts.cc: Likewise. - * rtl-error.cc: Likewise. - * substring-locations.cc: Likewise. - * toplev.cc: Likewise. - -2025-07-25 David Malcolm - - * diagnostic-core.h: Include "diagnostics/option-id.h". - (struct diagnostic_option_id): Move there, renaming to - diagnostics::option_id. - * diagnostic-global-context.cc: Update for renaming of - diagnostic_option_id to diagnostics::option_id. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostics/context.h: Likewise. - * diagnostics/diagnostic-info.h: Likewise. - * diagnostics/lazy-paths.cc: Likewise. - * diagnostics/option-classifier.cc: Likewise. - * diagnostics/option-classifier.h: Likewise. - * diagnostics/option-id.h: New file, taken from material in - diagnostic-core.h. - * diagnostics/selftest-context.cc: Update for renaming of - diagnostic_option_id to diagnostics::option_id. - * diagnostics/selftest-context.h: Likewise. - * ipa-pure-const.cc: Likewise. - * lto-wrapper.cc: Likewise. - * opts-common.cc: Likewise. - * opts-diagnostic.h: Likewise. - * opts.cc: Likewise. - * substring-locations.cc: Likewise. - * substring-locations.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace diagnostic-spec.o with - gcc-diagnostic-spec.o. - (GTFILES): Replace diagnostic-spec.h with gcc-diagnostic-spec.h. - * diagnostic-spec.cc: Move to... - * gcc-diagnostic-spec.cc: ...here. - * diagnostic-spec.h: Move to... - * gcc-diagnostic-spec.h: ...here. - * gengtype.cc (open_base_files): Replace diagnostic-spec.h with - gcc-diagnostic-spec.h. - * warning-control.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace diagnostics/changes.o with - diagnostics/edit-context.o. - * diagnostic.cc: Update for move of diagnostics/edit-context.h to - diagnostics/changes.h. - (diagnostics::context::initialize): Update for renaming of - m_edit_context_ptr to m_fixits_change_set. - (diagnostics::context::finish): Likewise. - (diagnostics::context::create_edit_context): Rename to... - (diagnostics::context::initialize_fixits_change_set): ...this and - update for other renamings. - (diagnostics::context::report_diagnostic): Update for renaming of - m_edit_context_ptr to m_fixits_change_set. - * diagnostic.h (diagnostics::edit_context): Drop forward decl - * diagnostics/edit-context.cc: Move to... - * diagnostics/changes.cc: ...here. Update for move of - diagnostics/edit-context.h to diagnostics/changes.h. - Rename diagnostics::edit_context to - diagnostics::changes::change_set. Rename diagnostics::edited_file - to diagnostics::changes::changed_file. Rename - diagnostics::edited_line to diagnostics::changes::changed_line. - * diagnostics/edit-context.h: Move to... - * diagnostics/changes.h: ...here, renaming as above. - * diagnostics/context.h (diagnostics::changes::change_set): New - forward decl. - (diagnostics::context::create_edit_context): Rename to... - (diagnostics::context::initialize_fixits_change_set): ...this. - (diagnostics::context::get_edit_context): Rename to... - (diagnostics::context::get_fixits_change_set): ...this. - (diagnostics::context::m_edit_context_ptr): Rename to... - (diagnostics::context::m_fixits_change_set): ..this and update - type. - * diagnostics/diagnostics-selftests.cc: Update for renaming. - * diagnostics/diagnostics-selftests.h: Likewise. - * diagnostics/html-sink.cc: Update for above changes. - * libgdiagnostics.cc: Likewise. - * toplev.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS): Move diagnostics/lazy-paths.o to... - (OBJS-libcommon): ...here. Add - diagnostics/diagnostics-selftests.o. - * diagnostic.cc: Update for move of - selftest::test_diagnostic_context to - diagnostics::selftest::test_context. - * diagnostics/color.cc: Move selftests from selftest:: to - diagnostics::selftest::. - * diagnostics/diagnostics-selftests.cc: New file. - * diagnostics/diagnostics-selftests.h: New file. - * diagnostics/digraphs.cc: Move selftests from selftest:: to - diagnostics::selftest::. - * diagnostics/edit-context.cc: Likewise. - * diagnostics/html-sink.cc: Likewise. - * diagnostics/lazy-paths.cc: Likewise. Eliminate use of "tree" - by porting selftests from simple-diagnostic-path.h to - diagnostics/selftest-paths.h. - * diagnostics/output-spec.cc: Move selftests from selftest:: to - diagnostics::selftest::. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/selftest-context.cc: Move - selftest::test_diagnostic_context to - diagnostics::selftest::test_context. - * diagnostics/selftest-context.h: Likewise. - * diagnostics/selftest-logical-locations.cc: Move selftests from - selftest:: to diagnostics::logical_locations::selftest::. - * diagnostics/selftest-logical-locations.h: Move - selftest::logical_location_manager to - diagnostics::logical_locations::selftest::logical_location_manager. - * diagnostics/selftest-paths.cc: Move - selftest::test_diagnostic_path to - diagnostics::paths::selftest::test_path. Move - selftest::test_diagnostic_event to - diagnostics::paths::selftest::test_event. - * diagnostics/selftest-paths.h: Likewise, and move - selftest::test_diagnostic_thread to - diagnostics::paths::selftest::test_thread. - * diagnostics/selftest-source-printing.h: Move - selftest::diagnostic_show_locus_fixture to - diagnostics::selftest::source_printing_fixture. - * diagnostics/source-printing.cc: Move selftests from selftest:: - to diagnostics::selftest:: and update for renames. - * diagnostics/state-graphs.cc: Likewise. - * selftest-run-tests.cc: Include - "diagnostics/diagnostics-selftests.h". - (selftest::run_tests): Replace invocation of the various diagnostics - selftests with a call to - diagnostics::selftest::run_diagnostics_selftests. - * selftest.h: Move decls of the various per-file diagnostics - invocation functions to diagnostics/diagnostics-selftests.h, - renaming due to diagostics prefix being implied by namespace. - -2025-07-25 David Malcolm - - * common.opt: Update for move of diagnostic-url.h to - diagnostics/url.h. - * diagnostic.cc: Likewise. - * diagnostics/color.cc: Likewise. - * diagnostics/text-sink.cc: Likewise. - * diagnostic-url.h: Move to... - * diagnostics/url.h: ...here. - * libgdiagnostics.cc: Update for move of diagnostic-url.h to - diagnostics/url.h. - * pretty-print.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace diagnostic-color.o with - diagnostics/color.o. - (PLUGIN_HEADERS): Remove diagnostic-color.h in favor of glob. - * common.opt: Update for move of diagnostic-color.h to - diagnostics/color.h. - * diagnostic.cc: Likewise. - * diagnostic-color.cc: Move to... - * diagnostics/color.cc: ...here. - * diagnostic-color.h: Move to... - * diagnostics/color.h: ...here. - * diagnostics/edit-context.cc: Update for move of - diagnostic-color.h to diagnostics/color.h. - * diagnostics/output-spec.cc: Likewise. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/source-printing.cc: Likewise. - * diagnostics/text-sink.cc: Likewise. - * libgdiagnostics.cc: Likewise. - * opts.cc: Likewise. - * pretty-print-markup.h: Likewise. - * pretty-print.cc: Likewise. - * selftest-run-tests.cc: Likewise. - * selftest.h: Likewise. - * text-art/style.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace selftest-diagnostic.o with - diagnostics/selftest-context.o. - * diagnostic.cc: Update for move of selftest-diagnostic.h to - diagnostics/selftest-context.h. - * diagnostics/html-sink.cc: Likewise. - * diagnostics/lazy-paths.cc: Likewise. - * diagnostics/output-spec.cc: Likewise. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * selftest-diagnostic.cc: Move to... - * diagnostics/selftest-context.cc: ...here and update for move of - header file. - * selftest-diagnostic.h: Move to... - * diagnostics/selftest-context.h: ...here. - * diagnostics/source-printing.cc: Update for move of - selftest-diagnostic.h to diagnostics/selftest-context.h. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Add diagnostics/buffering.o. - * diagnostic.cc (diagnostics::context::set_diagnostic_buffer): Move to - diagnostics/buffering.cc. - (diagnostics::context::clear_diagnostic_buffer): Likewise. - (diagnostics::context::flush_diagnostic_buffer): Likewise. - (diagnostics::buffer::buffer): Likewise. - (diagnostics::buffer::~buffer): Likewise. - (diagnostics::buffer::dump): Likewise. - (diagnostics::buffer::empty_p): Likewise. - (diagnostics::buffer::move_to): Likewise. - (diagnostics::buffer::ensure_per_sink_buffers): Likewise. - * diagnostics/buffering.cc: New file, from material in diagnostic.cc. - * diagnostics/buffering.h: Fix comment. - * diagnostics/text-sink.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Add - diagnostics/option-classifier.o. - * diagnostic.cc (diagnostics::option_classifier::init): Move to - diagnostics/option-classifier.cc. - (diagnostics::option_classifier::fini): Likewise. - (diagnostics::option_classifier::pch_save): Likewise. - (diagnostics::option_classifier::pch_restore): Likewise. - (diagnostics::option_classifier::push): Likewise. - (diagnostics::option_classifier::pop): Likewise. - (diagnostics::option_classifier::classify_diagnostic): Likewise. - (diagnostics::option_classifier::update_effective_level_from_pragmas): - Likewise. - * diagnostics/context.h: Include - "diagnostics/option-classifier.h". - (class option_classifier): Move to - diagnostics/option-classifier.h. - * diagnostics/option-classifier.cc: New file, based on material - from diagnostic.cc. - * diagnostics/option-classifier.h: New file, based on material - from diagnostics/context.h. - -2025-07-25 David Malcolm - - * coretypes.h: Update for diagnostic_context becoming - diagnostics::context. - * diagnostic-global-context.cc: Likewise. - * diagnostic.cc: Likewise. Also for diagnostic_option_classifier - becoming diagnostics::option_classifier. - * diagnostic.h (diagnostic_text_starter_fn): Rename to... - (diagnostics::text_starter_fn): ...this, and move to - diagnostics/context.h. - (get_printer): Rename to... - (diagnostics::get_printer): ...this, and move to - diagnostics/context.h. - (class diagnostic_option_manager): Rename to... - (class diagnostics::option_manager): ...this, and move to - diagnostics/context.h. - (class diagnostic_option_classifier): Rename to... - (class diagnostics::option_classifier): ...this, and move to - diagnostics/context.h. - (struct diagnostic_source_printing_options): Rename to... - (struct diagnostics::source_printing_options): ...this, and move - to diagnostics/context.h. - (class diagnostic_column_policy): Rename to... - (class diagnostics::column_policy): ...this, and move to - diagnostics/context.h. - (class diagnostic_location_print_policy): Rename to... - (class diagnostics::location_print_policy): ...this, and move to - diagnostics/context.h. - (class html_label_writer): Rename to... - (class diagnostics::html_label_writer): ...this, and move to - diagnostics/context.h. - (class diagnostic_source_print_policy): Rename to... - (class diagnostics::source_print_policy): ...this, and move to - diagnostics/context.h. - (struct diagnostic_counters): Rename to... - (struct diagnostics::counters): ...this, and move to - diagnostics/context.h. - (class diagnostic_context): Rename to... - (class diagnostics::context): ...this, and move to - diagnostics/context.h. - (diagnostic_text_starter): Rename to... - (diagnostics::text_starter): ...this, and move to - diagnostics/context.h. - (diagnostic_start_span): Rename to... - (diagnostics::start_span): ...this, and move to - diagnostics/context.h. - (diagnostic_text_finalizer): Rename to... - (diagnostics::text_finalizer): ...this, and move to - diagnostics/context.h. - Include "diagnostics/context.h". - * diagnostics/buffering.h: Update for diagnostic_context becoming - diagnostics::context; similarly for diagnostic_counters. - * diagnostics/client-data-hooks.h: Likewise. - * diagnostics/context.h: New file, taken from material in - diagnostic.h. - * diagnostics/html-sink.cc: : Update for diagnostic_context - becoming diagnostics::context. - * diagnostics/html-sink.h: Likewise. - * diagnostics/lazy-paths.cc: Likewise for - diagnostic_option_manager. - * diagnostics/output-file.h: Likewise for diagnostic_context. - * diagnostics/output-spec.cc: Likewise. - * diagnostics/output-spec.h: Likewise. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/sarif-sink.h: Likewise. - * diagnostics/sink.h: Likewise. - * diagnostics/source-printing.cc: Likewise. - * diagnostics/text-sink.cc: Likewise. - * diagnostics/text-sink.h: Likewise. - * gcc-rich-location.h: Likewise. - * gcc.cc: Likewise. - * gdbinit.in: Likewise. - * langhooks-def.h: Likewise. - * langhooks.cc: Likewise. - * langhooks.h: Likewise. - * libgdiagnostics.cc: Likewise. - * optc-gen.awk: Likewise. - * opth-gen.awk: Likewise. - * opts-common.cc: Likewise. - * opts-diagnostic.cc: Likewise. - * opts-diagnostic.h: Likewise. - * opts-global.cc: Likewise. - * opts.cc: Likewise. - * opts.h: Likewise. - * selftest-diagnostic.cc: Likewise. - * selftest-diagnostic.h: Likewise. - * toplev.cc: Likewise. - * tree-diagnostic-client-data-hooks.cc: Likewise. - * tree-diagnostic.cc: Likewise. - * tree-diagnostic.h: Likewise. - -2025-07-25 David Malcolm - - * diagnostic.h (struct diagnostic_info): Move to - diagnostics/diagnostic-info.h as diagnostics::diagnostic_info. - Add typedef bringing it back into root namespace, for now. - * diagnostics/diagnostic-info.h: New file, based on the above. - * langhooks-def.h: Update for diagnostic_info moving into - namespace diagnostics. - * langhooks.h: Likewise. - -2025-07-25 David Malcolm - - * diagnostic.cc: Update to add "m_" prefix to fields of - diagnostic_info throughout. - * diagnostic.h: Likewise. - * diagnostics/html-sink.cc: Likewise. - * diagnostics/sarif-sink.cc: Likewise. - * diagnostics/text-sink.cc: Likewise. - * libgdiagnostics.cc: Likewise. - * substring-locations.cc: Likewise. - * tree-diagnostic.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS): Replace diagnostic-macro-unwinding.o with - diagnostics/macro-unwinding.o. - * diagnostic-macro-unwinding.cc: Move to... - * diagnostics/macro-unwinding.cc: ...here, moving content into - namespace diagnostics. - * diagnostic-macro-unwinding.h: Move to... - * diagnostics/macro-unwinding.h: ...here, moving content into - namespace diagnostics. - * diagnostics/paths-output.cc: Update for move of - "diagnostic-macro-unwinding.h" to "diagnostics/macro-unwinding.h". - -2025-07-25 David Malcolm - - * Makefile.in (OBJS): Replace diagnostic-show-locus.o with - diagnostics/source-printing.o. - * diagnostic.h (class diagnostic_source_effect_info): Replace - with... - (class diagnotics::source_effect_info): ...this. - * diagnostics/paths-output.cc: Likewise. Update for move of - "diagnostic-label-effects.h" to - "diagnostics/source-printing-effects.h". - * diagnostics/sarif-sink.cc: Update for move of - "selftest-diagnostic-show-locus.h" to - "diagnostics/selftest-source-printing.h". - * selftest-diagnostic-show-locus.h: Move to... - * diagnostics/selftest-source-printing.h: ...here. - * diagnostic-label-effects.h: Move to... - * diagnostics/source-printing-effects.h: ...here, updating - for above changes. - * diagnostic-show-locus.cc: Move to... - * diagnostics/source-printing.cc: ...here. - * gcc-rich-location.h: Likewise. - * selftest-run-tests.cc: Likewise. - * selftest.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS): Replace diagnostic-format-html.o with - diagnostics/html-sink.o, diagnostic-format-sarif.o with - diagnostics/sarif-sink.o, and diagnostic-format-text.o with - diagnostics/text-sink.o. - * coretypes.h (class diagnostic_text_output_format): Replace - with... - (class diagnostics::text_sink): ...this. - * diagnostic-global-context.cc: Update for move of diagnostics - output formats into namespace "diagnostics", as "sinks". - * diagnostic-macro-unwinding.cc: Likewise. - * diagnostic-macro-unwinding.h: Likewise. - * diagnostic-show-locus.cc: Likewise. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostic-buffer.h: Rename to... - * diagnostics/buffering.h: ...this, updating for above changes. - * diagnostics/client-data-hooks.h: Likewise. - * diagnostics/digraphs.cc: Likewise. - * diagnostic-format-html.cc: Rename to... - * diagnostics/html-sink.cc: ...this, updating for above changes. - * diagnostic-format-html.h: Rename to... - * diagnostics/html-sink.h: ...this, updating for above changes. - * diagnostics/lazy-paths.cc: Likewise. - * diagnostics/metadata.h: Likewise. - * diagnostics/output-spec.cc: Likewise. - * diagnostics/output-spec.h: Likewise. - * diagnostics/paths-output.cc: Likewise. - * diagnostics/paths.h: Likewise. - * diagnostic-format-sarif.cc: Rename to... - * diagnostics/sarif-sink.cc: ...this, updating for above changes. - * diagnostic-format-sarif.h: Rename to... - * diagnostics/sarif-sink.h: ...this, updating for above changes. - * diagnostic-format.h: Rename to... - * diagnostics/sink.h: ...this, updating for above changes. - * diagnostics/state-graphs-to-dot.cc: Likewise. - * diagnostic-format-text.cc: Rename to... - * diagnostics/text-sink.cc: ...this, updating for above changes. - * diagnostic-format-text.h: Rename to... - * diagnostics/text-sink.h: ...this, updating for above changes. - * gcc.cc: Likewise. - * langhooks-def.h: Likewise. - * langhooks.cc: Likewise. - * langhooks.h: Likewise. - * libgdiagnostics.cc: Likewise. - * opts-diagnostic.cc: Likewise. - * opts.cc: Likewise. - * selftest-diagnostic.cc: Likewise. - * selftest-run-tests.cc: Likewise. - * selftest.h: Likewise. - * tree-diagnostic-client-data-hooks.cc: Likewise. - * tree-diagnostic.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS): Replace lazy-diagnostic-path.o with - diagnostics/lazy-paths.o. - (OBJS-libcommon): Replace diagnostic-path.o with - diagnostics/paths.o, diagnostic-path-output.o with - diagnostics/paths-output.o, and selftest-diagnostic-path.o with - diagnostics/selftest-paths.o. - (EXTRA_BACKEND_OBJS): Replace lazy-diagnostic-path.o with - diagnostics/lazy-paths.o. - * diagnostic-format-html.cc: Update #include for - "diagnostic-path.h" moving to "diagnostics/paths.h", - diagnostic_thread_id_t to diagnostics::paths::thread_id_t, - diagnostic_event_id_t to diagnostics::paths::event_id_t, - diagnostic_path to diagnostics::paths::path, and - diagnostic_thread to diagnostics::paths::thread, and - diagnostic_event to diagnostics::paths::event. - * diagnostic-format-html.h: Likewise. - * diagnostic-format-sarif.cc: Likewise. Update PROPERTY_PREFIX - for threadFlowLocations from "gcc/diagnostic_event/" to - "gcc/diagnostics/paths/event/". - * diagnostic-format-text.cc: Likewise. - * diagnostic-format-text.h: Likewise. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostic-event-id.h: Move to... - * diagnostics/event-id.h: ...here, updating header guard. - (diagnostics:paths:event_id_t): New typedef. - (diagnostic_thread_id_t): Replace with... - (diagnostics:paths:thread_id_t): New typedef. - * lazy-diagnostic-path.cc: Move to... - * diagnostics/lazy-paths.cc: ...here. Update for above changes, - lazy_diagnostic_path becomes diagnostics::paths::lazy_path. - (lazy_diagnostic_path_cc_tests): Rename to... - (diagnostics_lazy_paths_cc_tests): ...this. - * lazy-diagnostic-path.h: Move to... - * diagnostics/lazy-paths.h: ...here, updating header guard. - Update for above changes. - * diagnostic-path-output.cc: Move to... - * diagnostics/paths-output.cc: ...here. Update for above changes. - (diagnostic_path_output_cc_tests): Rename to... - (diagnostics_paths_output_cc_tests): ...this. - * diagnostic-path.cc: Move to... - * diagnostics/paths.cc: ...here. Update for above changes. - * diagnostic-path.h: Move to... - * diagnostics/paths.h: ...here, updating header guard. - Update #include for moving "diagnostic-event-id.h" to - "diagnostics/event-id.h". - (class diagnostic_event): Convert to... - (class diagnostics::paths::event): ...this. - (class diagnostic_thread): Convert to... - (class diagnostics::paths::thread): ...this. - (class diagnostic_path): Convert to... - (class diagnostics::paths::path): ...this. - * diagnostic-show-locus.cc: Update for above changes. - * doc/analyzer.texi: Likewise. - * selftest-diagnostic-path.cc: Move to... - * diagnostics/selftest-paths.cc: ...here. Update for - above changes, and for "selftest-diagnostic-path.h" moving to - "diagnostics/selftest-paths.h". - * selftest-diagnostic-path.h: Move to... - * diagnostics/selftest-paths.h: ...here, updating header guard. - Update for above changes. - * libgdiagnostics.cc: Update for above changes. - * libsarifreplay.cc: Update property prefix for - threadFlowLocations from "gcc/diagnostic_event/" to - "gcc/diagnostics/paths/event/". - * pretty-print-format-impl.h: Update for above changes. - * pretty-print.cc: Likewise. - * selftest-run-tests.cc (selftest::run_tests): Update for - renaming of lazy_diagnostic_path_cc_tests to - diagnostics_lazy_paths_cc_tests, and of - diagnostic_path_output_cc_tests to - diagnostics_paths_output_cc_tests. - * selftest.h (lazy_diagnostic_path_cc_tests): Replace decl with... - (diagnostics_lazy_paths_cc_tests): ...this. - (diagnostic_path_output_cc_tests): Replace decl with... - (diagnostics_paths_output_cc_tests): ...this. - * simple-diagnostic-path.cc: Clarify that this relates to "tree" - and thus shouldn't be in "diagnostics". Update for above changes. - * simple-diagnostic-path.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace diagnostic-output-spec.o - with diagnostics/output-spec.o. - * diagnostic-output-spec.cc: Move to... - * diagnostics/output-spec.cc: ...here. Update #include for - move of diagnostic-output-spec.h to diagnostics/output-spec.h. - (namespace::diagnostics_output_spec): Replace with... - (namespace diagnostics::output_spec): ...this, removing redundant - prefixes. - (diagnostics_output_spec::gcc_spec_context): Replace with... - (diagnostics::output_spec::dc_spec_context): ...this. - (diagnostic_output_spec_cc_tests): Rename to... - (diagnostics_output_spec_cc_tests): ...this. - * diagnostic-output-spec.h: Move to... - * diagnostics/output-spec.h: ...here and update inclusion guard. - (namespace::diagnostics_output_spec): Replace with... - (namespace diagnostics::output_spec): ...this, removing redundant - prefixes. - (diagnostics_output_spec::gcc_spec_context): Replace with... - (diagnostics::output_spec::dc_spec_context): ...this. - * libgdiagnostics.cc: Update #include for move of - diagnostic-output-spec.h to diagnostics/output-spec.h. - * opts-diagnostic.cc: Likewise. Update for namespace and name - changes. - * selftest-run-tests.cc (selftest::run_tests): Update for renaming - of diagnostic_output_spec_cc_tests to - diagnostics_output_spec_cc_tests. - * selftest.h (diagnostic_output_spec_cc_tests): Rename decl to... - (diagnostics_output_spec_cc_tests): ...this. - -2025-07-25 David Malcolm - - * diagnostic-format-html.cc: Update #include for move of - diagnostic-output-file.h to diagnostics/output-file.h. Update for - move of diagnostic_output_file to diagnostics::output_file. - * diagnostic-format-html.h: Likewise. - * diagnostic-format-sarif.cc: Likewise. - * diagnostic-format-sarif.h: Likewise. - * diagnostic-output-spec.cc: Likewise. - * diagnostic-output-spec.h (along): Likewise. - * diagnostic-output-file.h: Move to... - * diagnostics/output-file.h: ...here, updating header guard. - (class diagnostic_output_file): Move to... - (class diagnostics::output_file): ...here. - * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for - move of diagnostic_output_file to diagnostics::output_file. - -2025-07-25 David Malcolm - - * diagnostic-format-html.cc: Update #include for move of - diagnostic-client-data-hooks.h to diagnostics/client-data-hooks.h. - * diagnostic-format-sarif.cc: Likewise. Update for move of - diagnostic_client_plugin_info to diagnostics::client_plugin_info. - * diagnostic-format-text.cc: Likewise. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostic-client-data-hooks.h: Move to... - * diagnostics/client-data-hooks.h: ...here, updating header guard. - (class diagnostic_client_data_hooks): Move to... - (class diagnostics::client_data_hooks): ...here. Remove redundant - "diagnostics::" prefixes. - (class diagnostic_client_plugin_info): Move to... - (class diagnostics::client_plugin_info): ...here. - * libgdiagnostics.cc: : Update #include for move of - diagnostic-client-data-hooks.h to diagnostics/client-data-hooks.h. - Update for move of diagnostic_client_data_hooks to - diagnostics::client_data_hooks, and for move of - diagnostic_client_version_info to diagnostics::client_version_info. - * tree-diagnostic-client-data-hooks.cc: Likewise. - * tree-diagnostic.cc: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace edit-context.o with - diagnostics/edit-context.o. - * diagnostic-format-html.cc: Update #include for move - of edit-context.h to diagnostics subdir. - * diagnostic.cc: Likewise. Update for move of edit_context to - diagnostics::edit_context. - * diagnostic.h: Likewise. - * edit-context.cc: Move to... - * diagnostics/edit-context.cc: ...here. Update #include for move - of edit-context.h to diagnostics subdir. Move all code - within namespace diagnostics. - * edit-context.h: Move to... - * diagnostics/edit-context.h: ...here, updating header guard. - Move all code within namespace diagnostics. - * libgdiagnostics.cc: Update #include for move of edit-context.h - to diagnostics subdir. Update for move of edit_context - to diagnostics::edit_context. - * toplev.cc: Update #include for move of edit-context.h - to diagnostics subdir. - -2025-07-25 David Malcolm - - * diagnostic-format-html.cc: Update for move of diagnostic_diagram - to diagnostics::diagram. - * diagnostic-format-sarif.cc: Update #include for move of - "diagnostic-diagram.h" to "diagnostics/diagram.h". Update for move - of diagnostic_diagram to diagnostics::diagram. - * diagnostic-format-text.cc: Likewise. - * diagnostic-format-text.h: Update for move of diagnostic_diagram - to diagnostics::diagram. - * diagnostic-format.h: Likewise. - * diagnostic.cc: Update #include for move of - "diagnostic-diagram.h" to "diagnostics/diagram.h". Update for move - of diagnostic_diagram to diagnostics::diagram. - * diagnostic.h: Update for move of diagnostic_diagram to - diagnostics::diagram. - * diagnostic-diagram.h: Move to... - * diagnostics/diagram.h: ...here. - (class diagnostic_diagram): Convert to... - (class diagnostics::diagram): ...this. - -2025-07-25 David Malcolm - - * diagnostic-core.h: Update for move of diagnostic_metadata to - diagnostics::metadata. - * diagnostic-format-html.cc: Likewise; also, update #include for - move of "diagnostic-metadata.h" to "diagnostics/metadata.h". - * diagnostic-format-sarif.cc: Likewise. - * diagnostic-format-text.cc: Likewise. - * diagnostic-global-context.cc: Likewise. - * diagnostic.cc: Likewise. - * diagnostic.h: Likewise. - * diagnostic-metadata.h: Move to... - * diagnostics/metadata.h: ...here, updating header guard. - (class diagnostic_metadata): Move to... - (class diagnostics::metadata): ...here. Drop redundant - "diagnostics::" qualifiers. - * libgdiagnostics.cc: : Update #include for move of - "diagnostic-metadata.h" to "diagnostics/metadata.h", and update - for move of diagnostic_metadata to diagnostics::metadata. - * selftest-diagnostic.cc: Update for move of diagnostic_metadata - to diagnostics::metadata. - * selftest-diagnostic.h: Likewise. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Replace - selftest-logical-location.o with - diagnostics/selftest-logical-locations.o. - * diagnostic-client-data-hooks.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, and of logical_location - to diagnostics::logical_locations::key. - * diagnostic-format-html.cc: Add "using namespace diagnostics;", - and drop now-redundant "diagnostics::" prefixes. - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, of logical_location to - diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - * diagnostic-format-sarif.cc: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". Add - "using namespace diagnostics;", and drop now-redundant - "diagnostics::" prefixes. - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, of logical_location to - diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - * diagnostic-format-sarif.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location to - diagnostics::logical_locations::key. - * diagnostic-path-output.cc: Add "using namespace diagnostics;". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, and - of logical_location to diagnostics::logical_locations::key, - * diagnostic-path.cc: Add "using namespace diagnostics;". - Update for conversion of logical_location to - diagnostics::logical_locations::key. - * diagnostic-path.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, and of logical_location - to diagnostics::logical_locations::key, - * diagnostic.cc: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - * diagnostic.h: Reorganize forward decls. - (class logical_location_manager): Replace this forward decl - with... - (class diagnostics::logical_locations::manager): ...this. - (diagnostic_context::get_logical_location_manager): Update - return type. - * diagnostics/digraphs.h: : Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location to - diagnostics::logical_locations::key. - * logical-location.h: Move to... - * diagnostics/logical-locations.h: ...here. - (enum class logical_location_kind): Convert to... - (enum class diagnostics::logical_locations::kind): ... this. - (class logical_location_manager::key): Convert to... - (class diagnostics::logical_locations::key): ... this. - (class logical_location_manager): Convert to... - (class diagnostics::logical_locations::manager): ... this. - (logical_location): Drop this typedef in favor of - diagnostics::logical_locations::key. - * selftest-logical-location.cc: Move to... - * diagnostics/selftest-logical-locations.cc: ...here. - Update #include for move of "selftest-logical-location.h" to - "diagnostics/selftest-logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, of logical_location to - diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - (selftest_logical_location_cc_tests): Rename to... - (diagnostics_selftest_logical_locations_cc_tests): ...this. - * selftest-logical-location.h: Move to... - * diagnostics/selftest-logical-locations.h: ...here, updating - include guard. - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, of logical_location to - diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - * diagnostics/state-graphs-to-dot.cc: Add - "using namespace diagnostics;" and drop now-redundant - "diagnostics::" prefixes. - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager. - * diagnostics/state-graphs.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, - of logical_location to diagnostics::logical_locations::key. - * libgdiagnostics.cc: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, and of logical_location - to diagnostics::logical_locations::key. - * selftest-diagnostic-path.cc: Update for conversion of - logical_location to diagnostics::logical_locations::key. - * selftest-diagnostic-path.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location to - diagnostics::logical_locations::key. - * selftest-run-tests.cc (selftest::run_tests): Update for - renaming of selftest_logical_location_cc_tests to - diagnostics_selftest_logical_locations_cc_tests. - * selftest.h: Likewise. - * simple-diagnostic-path.h: Update for conversion of - logical_location to diagnostics::logical_locations::key. - * tree-diagnostic-client-data-hooks.cc: Update for conversion of - logical_location_manager to - diagnostics::logical_locations::manager, and of logical_location - to diagnostics::logical_locations::key. - * tree-logical-location.cc: Update for conversions. - Update for conversion of logical_location to - diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - * tree-logical-location.h: Update #include for move of - "logical-location.h" to "diagnostics/logical-locations.h". - Update for conversion of logical_location_manager to - diagnostics::logical_locations::manager, of logical_location - to diagnostics::logical_locations::key, and of - enum logical_location_kind to - enum diagnostics::logical_locations::kind. - -2025-07-25 David Malcolm - - * Makefile.in (OBJS-libcommon): Rename diagnostic-digraphs.o to - diagnostics/digraphs.o. Rename diagnostic-state-graphs.o to - diagnostics/state-graphs.o. Rename diagnostic-state-to-dot.o to - diagnostics/state-graphs-to-dot.o. - (PLUGIN_HEADERS): Add $(srcdir)/diagnostics/*.h. - (install-plugin:): Likewise. - * configure: Regenerate. - * configure.ac (gccdepdir): Add "diagnostics" to directories. - * diagnostic-format-html.cc: Update #includes for move of - "diagnostic-digraphs.h" to "diagnostics/digraphs.h" and of - move of "diagnostic-state-graphs.h" to - "diagnostics/state-graphs.h". - * diagnostic-format-sarif.cc: Likewise. - * diagnostic-path.cc: Likewise for state-graphs.h - * diagnostic-digraphs.cc: Move... - * diagnostics/digraphs.cc: ...to here. Update #include - for renaming of digraphs.h. - (selftest::diagnostic_digraphs_cc_tests): Rename to... - (selftest::diagnostics_digraphs_cc_tests): ...this. - * diagnostic-digraphs.h: Move... - * diagnostics/digraphs.h: ...to here, updating header guard. - * diagnostic-state-to-dot.cc: Move... - * diagnostics/state-graphs-to-dot.cc: ...to here. Update #include - of state-graphs.h. - * diagnostic-state-graphs.cc: Move... - * diagnostics/state-graphs.cc: ...to here. Update #include - of state-graphs.h. - (selftest::diagnostic_state_graphs_cc_tests): Rename... - (selftest::diagnostics_state_graphs_cc_tests): ...to this. - * diagnostic-state-graphs.h: Move... - * diagnostics/state-graphs.h: ...to here, updating header guard. - * libgdiagnostics.cc: Update #includes for move of - "diagnostic-digraphs.h" to "diagnostics/digraphs.h" and of - move of "diagnostic-state-graphs.h" to - "diagnostics/state-graphs.h". - * selftest-run-tests.cc (selftest::run_tests): Update for - function renamings that reflect file renamings. - * selftest.h (selftest::diagnostic_digraphs_cc_tests): Rename - to... - (selftest::diagnostics_digraphs_cc_tests): ...this. - (selftest::diagnostic_state_graphs_cc_tests): Rename... - (selftest::diagnostics_state_graphs_cc_tests): ...to this. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (vect_get_vec_defs): Remove overload - with operand vector type. Remove stmt_vec_info and - ncopies argument. - * tree-vect-stmts.cc (vect_get_vec_defs): Likewise. - (vectorizable_conversion): Adjust by not passing in - vector types, stmt_vec_info and ncopies. - (vectorizable_bswap): Likewise. - (vectorizable_assignment): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_scan_store): Likewise. - (vectorizable_store): Likewise. - (vectorizable_condition): Likewise. - (vectorizable_comparison_1): Likewise. - * tree-vect-loop.cc (vect_transform_reduction): Likewise. - (vect_transform_lc_phi): Likewise. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (vect_is_simple_use): Remove stmt-info - with vectype output overload and remove stmt-info argument - from SLP based API. - * tree-vect-loop.cc (vectorizable_lane_reducing): Remove - unused def_stmt_info output argument to vect_is_simple_use. - Adjust. - * tree-vect-stmts.cc (get_group_load_store_type): Get - the gather/scatter offset vector type from the SLP child. - (vect_check_scalar_mask): Remove stmt_info argument. Adjust. - (vect_check_store_rhs): Likewise. - (vectorizable_call): Likewise. - (vectorizable_simd_clone_call): Likewise. - (vectorizable_conversion): Likewise. - (vectorizable_assignment): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_load): Likewise. - (vect_is_simple_cond): Remove stmt_info argument. Adjust. - (vectorizable_condition): Likewise. - (vectorizable_comparison_1): Likewise. - (vectorizable_store): Likewise. - (vect_is_simple_use): Remove overload and non-SLP path. - -2025-07-25 Richard Biener - - * tree-vect-stmts.cc (vect_model_simple_cost): Removed code - when no SLP node is passed, remove then unused dt and ndts - parameters and fix the number of vector stmts calculation. - (vectorizable_call): Adjust. - (vectorizable_simd_clone_call): Likewise. - (vectorizable_conversion): Likewise. - (vectorizable_assignment): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_condition): Likewise. - (vectorizable_comparison_1): Likewise. - -2025-07-25 Robin Dapp - - * config/riscv/riscv-vector-costs.cc (get_live_range): - Move compute_local_program_points to cost class. - (variable_vectorized_p): Add slp node parameter. - (need_additional_vector_vars_p): Move from here... - (costs::need_additional_vector_vars_p): ... to here and add slp - parameter. - (compute_estimated_lmul): Move update_local_live_ranges to cost - class. - (has_unexpected_spills_p): Move from here... - (costs::has_unexpected_spills_p): ... to here. - (costs::record_lmul_spills): New function. - (costs::add_stmt_cost): Add stmt_info, slp mapping. - (costs::finish_cost): Analyze loop. - * config/riscv/riscv-vector-costs.h: Move declarations to class. - -2025-07-25 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop_2): Get vectype - from the SLP node. - (vectorize_fold_left_reduction): Likewise. - (vect_transform_reduction): Likewise. - (vect_transform_cycle_phi): Likewise. - (vect_transform_lc_phi): Likewise. - * tree-vect-slp.cc (vect_analyze_slp): Likewise. - * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): - Pass in vectype and use that. - (vect_use_strided_gather_scatters_p): Likewise. - (get_group_load_store_type): Adjust. - (vect_check_scalar_mask): We always have a SLP node. - Use vectype from the SLP node. - (vect_check_store_rhs): Likewise. - (vect_build_one_gather_load_call): Pass in the vector type - and use that. - (vect_get_strided_load_store_ops): Likewise. - (vectorizable_store): Adjust. - (vectorizable_load): Use the vector type from the SLP node - and adjust. - -2025-07-25 Richard Biener - - * target.h (stmt_vectype): Remove. - * tree-vect-stmts.cc (stmt_vectype): Likewise. - -2025-07-25 Christoph Müllner - - * config/riscv/riscv.cc (enum riscv_privilege_levels): Remove USER_MODE. - (riscv_handle_type_attribute): Remove "user" interrupts. - (riscv_expand_epilogue): Likewise. - (riscv_get_interrupt_type): Likewise. - * config/riscv/riscv.md (riscv_uret): Remove URET pattern. - * doc/extend.texi: Remove documentation of user interrupts. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (_stmt_vec_info::vec_stmts): Remove. - (STMT_VINFO_VEC_STMTS): Likewise. - * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Do not - initialize it. - (vec_info::free_stmt_vec_info): Nor free it. - * tree-vect-data-refs.cc (vect_vfa_access_size): Remove - check on STMT_VINFO_VEC_STMTS. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (vect_transform_grouped_load): Remove. - (vect_record_grouped_load_vectors): Likewise. - * tree-vect-data-refs.cc (vect_permute_load_chain): Likewise. - (vect_shift_permute_load_chain): Likewise. - (vect_transform_grouped_load): Likewise. - (vect_record_grouped_load_vectors): Likewise. - * tree-vect-stmts.cc (vectorizable_load): Remove comments - about load interleaving. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (vect_permute_store_chain): Remove. - * tree-vect-data-refs.cc (vect_permute_store_chain): Likewise. - * tree-vect-stmts.cc (vectorizable_store): Remove comment - about store interleaving. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (vect_get_vec_defs_for_operand): Remove. - * tree-vect-stmts.cc (vect_get_vec_defs_for_operand): Likewise. - (vect_get_vec_defs): Remove non-SLP path. - (check_load_store_for_partial_vectors): We always have an - SLP node. - (vect_check_store_rhs): Likewise. - (vect_get_gather_scatter_ops): Likewise. - (vect_create_vectorized_demotion_stmts): Likewise. - (vectorizable_store): Adjust. - (vectorizable_load): Likewise. - -2025-07-25 Richard Biener - - * tree-vectorizer.h (VMAT_CONTIGUOUS_PERMUTE): Remove. - * tree-vect-stmts.cc (check_load_store_for_partial_vectors): - Remove checks on VMAT_CONTIGUOUS_PERMUTE. - (vectorizable_load): Likewise. - (vectorizable_store): Likewise. Prune dead code. - -2025-07-25 Richard Biener - - * tree-vect-stmts.cc (vectorizable_store): Remove trivially - dead code. - -2025-07-25 Tobias Burnus - - * config/gcn/gcn-opts.h (TARGET_NO_MANUAL_NOPS, - TARGET_CDNA3_NOPS): Define. - * config/gcn/gcn.md (define_attr "laneselect): Change 'yes' to - 'read' and 'write'. - (define_attr "flatmemaccess"): Add with values store, storex34, - load, atomic, atomicwait, cmpswapx2, and no. Replacing ... - (define_attr "delayeduse"): Remove. - (define_attr "transop"): Add with values yes and no. - (various insns): Update 'laneselect', add flatmemaccess and transop, - remove delayeduse; fixing an issue for s_load_dwordx4 vs. - flat_store_dwordx4 related to delayeduse (now: flatmemaccess). - * config/gcn/gcn-valu.md: Update laneselect attribute and add - flatmemaccess. - * config/gcn/gcn.cc (gcn_cmpx_insn_p): New. - (gcn_md_reorg): Update for MI300 to add additional s_nop. - Skip s_nop-insertion part for RDNA{2,3}; add "VALU writes EXEC - followed by VALU DPP" unconditionally for CDNA2/CDNA3/GCN5. - -2025-07-25 Stefan Schulze Frielinghaus - - PR middle-end/121214 - * genpreds.cc (constraint_max_namelen): Delete. - (write_tm_preds_h): Always write insn_constraint_len() and - define CONSTRAINT_LEN to it, i.e., remove guard - constraint_max_namelen>1. Remove outer guard - constraint_max_namelen>0 and re-indent. - (write_insn_preds_c): Remove guard - constraint_max_namelen>0 and re-indent. - -2025-07-25 Christoph Müllner - - * config/riscv/riscv.cc (enum riscv_privilege_levels): Add - RNMI_MODE. - (riscv_handle_type_attribute): Handle 'rnmi' interrupt attribute. - (riscv_expand_epilogue): Generate nmret for RNMI handlers. - (riscv_get_interrupt_type): Handle 'rnmi' interrupt attribute. - * config/riscv/riscv.md (riscv_rnmi): Add nmret INSN. - * doc/extend.texi: Add documentation for 'rnmi' interrupt attribute. - -2025-07-24 Richard Biener - - * tree-vectorizer.h (vectorizable_induction): Remove - gimple **vec_stmt argument. - (vectorizable_phi): Likewise. - (vectorizable_recurr): Likewise. - (vectorizable_early_exit): Likewise. - * tree-vect-loop.cc (vectorizable_phi): Likewise and adjust. - (vectorizable_recurr): Likewise. - (vectorizable_nonlinear_induction): Likewise. - (vectorizable_induction): Likewise. - * tree-vect-stmts.cc (vectorizable_bswap): Likewise. - (vectorizable_call): Likewise. - (vectorizable_simd_clone_call): Likewise. - (vectorizable_conversion): Likewise. - (vectorizable_assignment): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_store): Likewise. - (vectorizable_load): Likewise. - (vectorizable_condition): Likewise. - (vectorizable_comparison_1): Likewise. - (vectorizable_comparison): Likewise. - (vectorizable_early_exit): Likewise. - (vect_analyze_stmt): Adjust. - (vect_transform_stmt): Likewise. - * tree-vect-slp.cc (vect_slp_analyze_operations): Adjust. - (vectorize_slp_instance_root_stmt): Likewise. - -2025-07-24 Andrew Pinski - - * doc/cpp.texi (#ifdef): Correct typo. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_early_exit): Remove non-SLP - path. - -2025-07-24 Richard Biener - - * tree-vectorizer.h (_stmt_vec_info::simd_clone_info): Remove. - (STMT_VINFO_SIMD_CLONE_INFO): Likewise. - * tree-vectorizer.cc (vec_info::free_stmt_vec_info): Do not - release it. - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Remove - non-SLP path. - -2025-07-24 Robin Dapp - - * internal-fn.cc (internal_fn_len_index): Adjust indices for new - alias_ptr param. - (internal_fn_else_index): Ditto. - (internal_fn_mask_index): Ditto. - (internal_fn_stored_value_index): Ditto. - (internal_fn_alias_ptr_index): Ditto. - (internal_fn_offset_index): Ditto. - (internal_fn_scale_index): Ditto. - (internal_gather_scatter_fn_supported_p): Ditto. - * internal-fn.h (internal_fn_alias_ptr_index): Ditto. - * optabs-query.cc (supports_vec_gather_load_p): Ditto. - * tree-vect-data-refs.cc (vect_check_gather_scatter): Add alias - pointer. - * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Add - alias pointer. - * tree-vect-slp.cc (vect_get_operand_map): Adjust for alias - pointer. - * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): Add - alias pointer and misalignment handling. - (get_load_store_type): Move from here... - (get_group_load_store_type): ...To here. - (vectorizable_store): Add alias pointer. - (vectorizable_load): Ditto. - * tree-vectorizer.h (struct gather_scatter_info): Ditto. - -2025-07-24 Robin Dapp - - * config/aarch64/aarch64.cc (aarch64_builtin_support_vector_misalignment): - Return true for gather/scatter. - * config/arm/arm.cc (arm_builtin_support_vector_misalignment): - Ditto. - * config/epiphany/epiphany.cc (epiphany_support_vector_misalignment): - Ditto. - * config/gcn/gcn.cc (gcn_vectorize_support_vector_misalignment): - Ditto. - * config/loongarch/loongarch.cc (loongarch_builtin_support_vector_misalignment): - Ditto. - * config/riscv/riscv.cc (riscv_support_vector_misalignment): - Add gather/scatter argument. - * config/rs6000/rs6000.cc (rs6000_builtin_support_vector_misalignment): - Return true for gather/scatter. - * config/s390/s390.cc (s390_support_vector_misalignment): - Ditto. - * doc/tm.texi: Add argument. - * target.def: Ditto. - * targhooks.cc (default_builtin_support_vector_misalignment): - Ditto. - * targhooks.h (default_builtin_support_vector_misalignment): - Ditto. - * tree-vect-data-refs.cc (vect_supportable_dr_alignment): - Ditto. - -2025-07-24 Robin Dapp - - * tree-vect-slp.cc (GATHER_SCATTER_OFFSET): New define. - (vect_get_and_check_slp_defs): Use. - * tree-vectorizer.h (GATHER_SCATTER_LEGACY_P): New define. - (GATHER_SCATTER_IFN_P): Ditto. - (GATHER_SCATTER_EMULATED_P): Ditto. - * tree-vect-stmts.cc (vectorizable_store): Use. - (vectorizable_load): Use. - -2025-07-24 Robin Dapp - - * internal-fn.cc (expand_scatter_store_optab_fn): Use new - function. - (expand_gather_load_optab_fn): Ditto. - (internal_fn_offset_index): Ditto. - (internal_fn_scale_index): Ditto. - * internal-fn.h (internal_fn_offset_index): New function. - (internal_fn_scale_index): Ditto. - * tree-vect-data-refs.cc (vect_describe_gather_scatter_call): - Use new function. - -2025-07-24 Alfie Richards - - * tree-vect-data-refs.cc (vect_create_data_ref_ptr): Remove unnecessary - casts to aggr_ptr_type. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_comparison_1): Remove - non-SLP path. - (vectorizable_comparison): Likewise. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_condition): Remove - non-SLP paths. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_scan_store): Remove - non-SLP path and unused parameters. - (vectorizable_store): Adjust. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_shift): Remove non-SLP paths. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_assignment): Remove - non-SLP paths. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_call): Remove non-SLP path. - -2025-07-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_bswap): Remove non-SLP path. - -2025-07-24 Richard Biener - - * tree-vect-loop.cc (vectorizable_recurr): Remove non-SLP path. - -2025-07-24 Spencer Abson - - * config/aarch64/aarch64-sve.md (*cond__2_relaxed): - Extend from SVE_FULL_F_B16B16 to SVE_F_B16B16. - (*cond__3_relaxed): Likewise. - (*cond__any_relaxed): Likwise. - (*cond__any_const_relaxed): Extend from SVE_FULL_F - to SVE_F. - (*cond_add_2_const_relaxed): Likewise. - (*cond_add_any_const_relaxed): Likewise. - (*cond_sub_3_const_relaxed): Likewise. - (*cond_sub_const_relaxed): Likewise. - -2025-07-24 Spencer Abson - - * config/aarch64/aarch64-sve.md: (@aarch64_sve_): - Extend from SVE_FULL_F to SVE_F, use aarch64_predicate_operand. - (@aarch64_frecpe): Extend from SVE_FULL_F to SVE_F. - (@aarch64_frecps): Likewise. - (div3): Likewise, use aarch64_sve_fp_pred. - * config/aarch64/iterators.md: Add warnings above SVE_FP_UNARY - and SVE_FP_BINARY. - -2025-07-24 Spencer Abson - - * config/aarch64/aarch64-sve.md (3): Extend from - SVE_FULL_F to SVE_F, use aarch64_sve_fp_pred. - (*post_ra_3): Extend from SVE_FULL_F to SVE_F. - (@aarch64_pred_): Extend from SVE_FULL_F to SVE_F, - use aarch64_predicate_operand (ADD/SUB/MUL/MAX/MIN). - (split for using unpredicated insns): Move SVE_RELAXED_GP into - the pattern, rather than testing for it in the condition. - * config/aarch64/aarch64-sve2.md (@aarch64_pred_): - Extend from VNx8BF_ONLY to SVE_BF. - -2025-07-24 Pan Li - - * config/riscv/autovec-opt.md (*uavg_floor_vx_): Rename - from... - (*_vx_): Rename to... - (*_vx_): Rename to... - * config/riscv/riscv-protos.h (enum insn_flags): Add vxrm - RNE, ROD type. - (enum insn_type): Add RNE_P, ROD_P type. - (expand_vx_binary_vxrm_vec_vec_dup): Add new func decl. - (expand_vx_binary_vxrm_vec_dup_vec): Ditto. - * config/riscv/riscv-v.cc (get_insn_type_by_vxrm_val): Add - helper to get insn type by vxrm value. - (expand_vx_binary_vxrm_vec_vec_dup): Add new func impl - to expand vec + vec_dup pattern. - (expand_vx_binary_vxrm_vec_dup_vec): Ditto but for - vec_dup + vec pattern. - * config/riscv/vector-iterators.md: Add helper iterator - for sat vx combine. - -2025-07-23 Spencer Abson - - * config/aarch64/aarch64-sve.md (*cond__2_relaxed): - Extend from SVE_FULL_F to SVE_F. - (*cond__any_relaxed): Likewise. - -2025-07-23 Spencer Abson - - * config/aarch64/aarch64-sve.md (2): Replace use of - aarch64_ptrue_reg with aarch64_sve_fp_pred. - (@aarch64_pred_): Extend from SVE_FULL_F to SVE_F, - and use aarch64_predicate_operand. - * config/aarch64/iterators.md: Split FABS/FNEG out of - SVE_COND_FP_UNARY (into new SVE_COND_FP_UNARY_BITWISE). - -2025-07-23 Spencer Abson - - * config/aarch64/aarch64-sve.md - (*cond__nontrunc_relaxed): - New FCVT/SEL combiner pattern. - (*cond__trunc_relaxed): - New FCVTZ{S,U}/SEL combiner pattern. - (*cond__nonextend_relaxed): - New {S,U}CVTF/SEL combiner pattern. - (*cond__trunc): - New FCVT/SEL combiner pattern. - (*cond__nontrunc_relaxed): - New FCVTZ{S,U}/SEL combiner pattern. - * config/aarch64/iterators.md: New mode iterator for VNx2SI. - -2025-07-23 Robin Dapp - - PR target/121073 - * config/riscv/autovec-opt.md: Use new helpers. - * config/riscv/autovec.md: Ditto. - * config/riscv/predicates.md (strided_broadcast_mask_operand): - New predicate. - (strided_broadcast_operand): Ditto. - (any_broadcast_operand): Ditto. - * config/riscv/riscv-protos.h (expand_broadcast): Declare. - (expand_set_first): Ditto. - (expand_set_first_tu): Ditto. - (strided_broadcast_p): Ditto. - * config/riscv/riscv-string.cc (expand_vec_setmem): Use new - helpers. - * config/riscv/riscv-v.cc (expand_broadcast): New functionk. - (expand_set_first): Ditto. - (expand_set_first_tu): Ditto. - (expand_const_vec_duplicate): Use new helpers. - (expand_const_vector_duplicate_repeating): Ditto. - (expand_const_vector_duplicate_default): Ditto. - (sew64_scalar_helper): Ditto. - (expand_vector_init_merge_repeating_sequence): Ditto. - (expand_reduction): Ditto. - (strided_broadcast_p): New function. - (whole_reg_to_reg_move_p): Use new helpers. - * config/riscv/riscv-vector-builtins-bases.cc: Use either - broadcast or strided broadcast. - * config/riscv/riscv-vector-builtins.cc (function_expander::use_ternop_insn): - Ditto. - (function_expander::use_widen_ternop_insn): Ditto. - (function_expander::use_scalar_broadcast_insn): Ditto. - * config/riscv/riscv-vector-builtins.h: Declare scalar - broadcast. - * config/riscv/vector.md (*pred_broadcast): Split into - regular and strided broadcast. - (*pred_broadcast_zvfh): Split. - (pred_broadcast_zvfh): Ditto. - (*pred_broadcast_zvfhmin): Ditto. - (@pred_strided_broadcast): Ditto. - (*pred_strided_broadcast): Ditto. - (*pred_strided_broadcast_zvfhmin): Ditto. - -2025-07-23 Andrew Pinski - - PR target/120119 - * config/aarch64/cortex-a57-fma-steering.cc (func_fma_steering::analyze): - Skip if renaming fails. - -2025-07-23 Richard Biener - - PR tree-optimization/121220 - * tree-ssa-sink.cc (statement_sink_location): For stores - handle sinking to paths ending in a store. Skip loads - that do not use the store. - -2025-07-23 Martin Jambor - - PR tree-optimization/119085 - * tree-sra.cc (sort_and_splice_var_accesses): Prevent total - scalarization if two incompatible aggregates access the same place. - -2025-07-23 Rainer Orth - - * config.gcc (with_cpu): Default to ultrasparc3. - -2025-07-23 Richard Biener - - * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): - Check vectype is non-NULL before accessing it. - -2025-07-23 Richard Biener - - PR middle-end/121216 - * expr.cc (constant_byte_string): Check the string type - size fits an uhwi before converting to uhwi. - -2025-07-22 Andrew Pinski - - PR middle-end/109267 - * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): If the first - non debug statement in the first (and only) basic block is a call - to __builtin_unreachable change it to a call to __builtin_trap or an - infinite loop. - -2025-07-22 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xtensa_is_insn_L32R_p): - Rewrite to capture insns that could be L32R machine instructions - wherever possible. - (xtensa_rtx_costs): Fix to consider that moves larger than a - natural word can take multiple L32R machine instructions. - (constantpool_address_p): Cosmetics. - * config/xtensa/xtensa.md (movdi_internal, movdf_internal): - Add missing insn attributes. - -2025-07-22 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md - (movsi_internal, movhi_internal, movsf_internal): - Change the value of the "type" attribute from "move" to "load" - when the source operand constraint is "Y". - -2025-07-22 Karl Meakin - - * tree-vect-data-refs.cc (vect_check_gather_scatter): Swap - `base` and `off` in more scenarios. Also assert at the end of - the function that `base` and `off` are loop-invariant and not - loop-invariant respectively. - -2025-07-22 Jeff Law - - * config/riscv/generic-vector-ooo.md: Restrict insn reservations to - generic_ooo and generic tuning models. - -2025-07-22 Richard Biener - - PR tree-optimization/121202 - * tree-vect-slp.cc (vect_schedule_slp_node): Do not take - an out-of-region stmt as "last". - -2025-07-22 Stefan Schulze Frielinghaus - - * genpreds.cc (write_insn_constraint_len): Replace rawmemchr by - a loop. - -2025-07-21 Jeff Law - - * config/riscv/mips-p8700.md: Add support for "ghost" insn types. - * config/riscv/xiangshan.md: Add support for "sf_vc" and "sf_vc_se" - insn types. - -2025-07-21 Andrew Pinski - - PR tree-optimization/110949 - PR tree-optimization/95906 - * match.pd (cmp - 1): New pattern. - -2025-07-21 Andreas Schwab - - PR target/121121 - * config/riscv/riscv.cc (riscv_allocate_and_probe_stack_space): - Use temp2 instead of temp1 for the CFA note. - -2025-07-21 Pan Li - - * config/riscv/vector.md: Allow VLS DImode for sat_op vx pattern. - -2025-07-21 Pan Li - - * config/riscv/autovec-opt.md (*uavg_floor_vx_): Add - pattern for vaaddu.vx combine. - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add UNSPEC - handling for UNSPEC_VAADDU. - (riscv_rtx_costs): Ditto. - -2025-07-21 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (aarch64_simd_vec_set_zero): - Enable only when optimizing for size. - -2025-07-21 Kyrylo Tkachov - - * config/aarch64/aarch64.cc (aarch64_rtx_costs): Add extra_cost values - only when speed is true for CONST_VECTOR, VEC_DUPLICATE, VEC_SELECT - cases. - * config/aarch64/aarch64-cost-tables.h (qdf24xx_extra_costs, - thunderx_extra_costs, thunderx2t99_extra_costs, - thunderx3t110_extra_costs, tsv110_extra_costs, a64fx_extra_costs, - ampere1_extra_costs, ampere1a_extra_costs, ampere1b_extra_costs): - Reduce cost of movi, dup, extract fields by COSTS_N_INSNS (1). - * config/arm/aarch-cost-tables.h (generic_extra_costs, - cortexa53_extra_costs, cortexa57_extra_costs, cortexa76_extra_costs, - exynosm1_extra_costs, xgene1_extra_costs): Likewise. - -2025-07-21 Richard Biener - - PR tree-optimization/121194 - * tree-vect-loop.cc (vectorizable_lc_phi): Verify - vector types are compatible. - -2025-07-21 Andrew Stubbs - - * config/gcn/gcn-valu.md (gather_load): New. - (scatter_store): New. - (mask_gather_load): New. - (mask_scatter_store): New. - * config/gcn/gcn.cc (gcn_expand_scaled_offsets): Support DImode. - -2025-07-21 Andrew Stubbs - - * config/gcn/gcn.cc (GEN_VNM_NOEXEC): Use USE_QHF. - (GEN_VNM): Likewise, and call for new ashl and mul variants. - -2025-07-21 Andrew Stubbs - - * config/gcn/gcn-valu.md (add3_dup): New. - (add3_dup_exec): New. - (mul3_highpart_dup): New. - (mul3_dup): Move the vec_duplicate to operand 1. - (mul3_dup_exec): New. - (vec_series): Adjust call to gen_mul3_dup. - * config/gcn/gcn.cc (gcn_expand_vector_init): Likewise. - -2025-07-21 Stefan Schulze Frielinghaus - - * genoutput.cc (main): Emit function - verify_reg_names_in_constraints() for run-time validation. - (mdep_constraint_len): Deal with hard register constraints. - * output.h (verify_reg_names_in_constraints): New function - declaration. - * toplev.cc (backend_init): If checking is enabled, call into - verify_reg_names_in_constraints(). - -2025-07-21 Stefan Schulze Frielinghaus - - * cfgexpand.cc (n_occurrences): Move this ... - (check_operand_nalternatives): and this ... - (expand_asm_stmt): and the call to gimplify.cc. - * config/s390/s390.cc (s390_md_asm_adjust): Pass null pointer to - parse_{input,output}_constraint(). - * gimple-walk.cc (walk_gimple_asm): Pass null pointer to - parse_{input,output}_constraint(). - (walk_stmt_load_store_addr_ops): Ditto. - * gimplify-me.cc (gimple_regimplify_operands): Ditto. - * gimplify.cc (num_occurrences): Moved from cfgexpand.cc. - (num_alternatives): Ditto. - (gimplify_asm_expr): Deal with hard register constraints. - * stmt.cc (eliminable_regno_p): New helper. - (hardreg_ok_p): Perform a similar check as done in - make_decl_rtl(). - (parse_output_constraint): Add parameter for gimplify_reg_info - and validate hard register constrained operands. - (parse_input_constraint): Ditto. - * stmt.h (class gimplify_reg_info): Forward declaration. - (parse_output_constraint): Add parameter. - (parse_input_constraint): Ditto. - * tree-ssa-operands.cc - (operands_scanner::get_asm_stmt_operands): Pass null pointer - to parse_{input,output}_constraint(). - * tree-ssa-structalias.cc (find_func_aliases): Pass null pointer - to parse_{input,output}_constraint(). - * varasm.cc (assemble_asm): Pass null pointer to - parse_{input,output}_constraint(). - * gimplify_reg_info.h: New file. - -2025-07-21 Stefan Schulze Frielinghaus - - * config/cris/cris.cc (cris_md_asm_adjust): Deal with hard - register constraint. - * config/i386/i386.cc (map_egpr_constraints): Ditto. - * config/s390/s390.cc (f_constraint_p): Ditto. - * doc/extend.texi: Document hard register constraints. - * doc/md.texi: Ditto. - * function.cc (match_asm_constraints_2): Have a unique pseudo - for each operand with a hard register constraint. - (pass_match_asm_constraints::execute): Calling into new helper - match_asm_constraints_2(). - * genoutput.cc (mdep_constraint_len): Return the length of a - hard register constraint. - * genpreds.cc (write_insn_constraint_len): Support hard register - constraints for insn_constraint_len(). - * ira.cc (valid_replacement_for_asm_input_p_1): New helper. - (valid_replacement_for_asm_input_p): New helper. - (decrease_live_ranges_number): Similar to - match_asm_constraints_2() ensure that each operand has a unique - pseudo if constrained by a hard register. - * lra-constraints.cc (process_alt_operands): Install hard - register filter according to constraint. - * recog.cc (asm_operand_ok): Accept register type for hard - register constrained asm operands. - (constrain_operands): Validate hard register constraints. - * stmt.cc (decode_hard_reg_constraint): Parse a hard register - constraint into the corresponding register number or bail out. - (parse_output_constraint): Parse hard register constraint and - set *ALLOWS_REG. - (parse_input_constraint): Ditto. - * stmt.h (decode_hard_reg_constraint): Declaration of new - function. - -2025-07-21 Richard Biener - - * tree-vectorizer.h (vect_analyze_data_refs): Remove min_vf - output. - * tree-vect-data-refs.cc (vect_analyze_data_refs): Likewise. - * tree-vect-loop.cc (vect_analyze_loop_2): Remove early - out based on bogus min_vf. - * tree-vect-slp.cc (vect_slp_analyze_bb_1): Adjust. - -2025-07-20 Pan Li - - * config/riscv/autovec.md: Add (const_int 1) as the op2 of - ashiftrt. - -2025-07-19 Dimitar Dimitrov - - PR target/121124 - * config/pru/pru-pragma.cc (pru_pragma_ctable_entry): Handle the - ctable base address as signed 32-bit value, and sign-extend to - HOST_WIDE_INT. - * config/pru/pru-protos.h (struct pru_ctable_entry): Store the - ctable base address as signed. - (pru_get_ctable_exact_base_index): Pass base address as signed. - (pru_get_ctable_base_index): Ditto. - (pru_get_ctable_base_offset): Ditto. - * config/pru/pru.cc (pru_get_ctable_exact_base_index): Ditto. - (pru_get_ctable_base_index): Ditto. - (pru_get_ctable_base_offset): Ditto. - (pru_print_operand_address): Ditto. - -2025-07-19 Paul-Antoine Arras - - PR target/119100 - * config/riscv/autovec-opt.md (*vfwnmacc_vf_): New pattern. - (*vfwnmsac_vf_): New pattern. - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add support for a - vec_duplicate in a neg. - -2025-07-19 Artemiy Volkov - - * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Protect - from a NULL PREV_SET or CURR_SET. - -2025-07-19 Georg-Johann Lay - - * config/avr/avr-passes.cc (avr_optimize_casesi): Fuse - get_insns() with end_sequence(). - -2025-07-18 Pan Li - - * config/riscv/autovec.md (avg3_ceil): Add new pattern - of avg3_ceil for RVV DImode - -2025-07-18 Martin Jambor - - PR tree-optimization/117423 - * tree-sra.cc (analyze_access_subtree): Fix computation of grp_covered - flag. - -2025-07-18 Richard Biener - - PR tree-optimization/121126 - * tree-vect-stmts.cc (vect_analyze_stmt): Analyze the - live lane extract for LC PHIs that are vect_internal_def. - -2025-07-18 Richard Biener - - * tree-vect-loop.cc (vectorizable_live_operation_1): - Remove stmt_info and ncopies parameters. Remove !slp_node - paths. - (vectorizable_live_operation): Remove !slp_node paths. - -2025-07-18 Richard Biener - - PR tree-optimization/120924 - * params.opt (uninit-max-chain-len): Up from 8 to 12. - -2025-07-18 Richard Biener - - PR tree-optimization/121048 - * tree-vect-loop.cc (vect_determine_vectype_for_stmt_1): - Remove rejecting vector(1) vector types. - (vect_set_stmts_vectype): Likewise. - * tree-vect-slp.cc (vect_make_slp_decision): Only - count instances with non-vector(1) root towards whether - we have any interesting instances to vectorize. - -2025-07-18 Jakub Jelinek - - PR tree-optimization/121131 - * gimple-fold.cc (fold_nonarray_ctor_reference): Use - TREE_INT_CST_LOW (TYPE_SIZE ()) instead of - GET_MODE_BITSIZE (SCALAR_INT_TYPE_MODE ()) for BLKmode BITINT_TYPEs. - Don't compute encoding_size at all for little endian targets. - -2025-07-17 Andrew Pinski - - PR middle-end/121095 - * gcse.cc (execute_hardreg_pre): Skip if the hardreg which is never live. - -2025-07-17 Filip Kastl - - * tree-ssa-structalias.cc (lookup_vi_for_tree): Fix GNU style. - (process_constraint): Fix GNU style. - (get_constraint_for_component_ref): Fix GNU style. - (get_constraint_for_1): Fix GNU style. - (get_function_part_constraint): Fix GNU style. - (handle_lhs_call): Fix GNU style. - (find_func_aliases_for_builtin_call): Fix GNU style. - (find_func_aliases): Fix GNU style. - (find_func_clobbers): Fix GNU style. - (struct shared_bitmap_hasher): Fix GNU style. - (shared_bitmap_hasher::hash): Fix GNU style. - (pt_solution_includes_global): Fix GNU style. - (init_base_vars): Fix GNU style. - (visit_loadstore): Fix GNU style. - (compute_dependence_clique): Fix GNU style. - (struct pt_solution): Fix GNU style. - (ipa_pta_execute): Fix GNU style. - -2025-07-17 Filip Kastl - - * pta-andersen.cc (struct constraint_graph): Fix GNU style. - (constraint_equal): Fix GNU style. - (set_union_with_increment): Fix GNU style. - (insert_into_complex): Fix GNU style. - (merge_node_constraints): Fix GNU style. - (unify_nodes): Fix GNU style. - (do_ds_constraint): Fix GNU style. - (scc_info::scc_info): Fix GNU style. - (find_indirect_cycles): Fix GNU style. - (equiv_class_lookup_or_add): Fix GNU style. - (label_visit): Fix GNU style. - (dump_pred_graph): Fix GNU style. - (perform_var_substitution): Fix GNU style. - (eliminate_indirect_cycles): Fix GNU style. - (solve_graph): Fix GNU style. - (solve_constraints): Fix GNU style. - * tree-ssa-structalias.cc (first_vi_for_offset): Fix GNU style. - (debug_constraint): Fix GNU style. - * tree-ssa-structalias.h (struct constraint_expr): Fix GNU - style. - (struct variable_info): Fix GNU style. - -2025-07-17 H.J. Lu - - * config/i386/i386-expand.cc (ix86_expand_ternlog): Don't change - mode for XOR. - -2025-07-17 Filip Kastl - - * Makefile.in: Add pta-andersen.o. - * tree-ssa-structalias.cc (create_variable_info_for): Just move - around. - (unify_nodes): Move to pta-andersen.cc. - (struct constraint): Move to tree-ssa-structalias.h. - (EXECUTE_IF_IN_NONNULL_BITMAP): Move to pta-andersen.cc. - (struct variable_info): Move to tree-ssa-structalias.h. - (struct constraint_stats): Move to tree-ssa-structalias.h. - (first_vi_for_offset): External linkage, move to namespace - pointer_analysis. - (first_or_preceding_vi_for_offset): External linkage, move to namespace - pointer_analysis. - (dump_constraint): External linkage, move to namespace - pointer_analysis. - (debug_constraint): External linkage, move to namespace - pointer_analysis. - (dump_constraints): External linkage, move to namespace - pointer_analysis. - (debug_constraints): External linkage, move to namespace - pointer_analysis. - (lookup_vi_for_tree): Move around inside tree-ssa-structalias.cc. - (type_can_have_subvars): Move around inside tree-ssa-structalias.cc. - (make_param_constraints): Move around inside tree-ssa-structalias.cc. - (dump_solution_for_var): External linkage, move to namespace - pointer_analysis. find (...) -> var_rep[...]. - (get_varinfo): Move to tree-ssa-structalias.h. - (debug_solution_for_var): External linkage, move to namespace - pointer_analysis. - (vi_next): Move to tree-ssa-structalias.h. - (dump_sa_stats): External linkage, move to namespace pointer_analysis. - (new_var_info): Just move around. - (dump_sa_points_to_info): External linkage, move to namespace - pointer_analysis. - (debug_sa_points_to_info): External linkage, move to namespace - pointer_analysis. - (get_call_vi): Just move around. - (dump_varinfo): External linkage, move to namespace pointer_analysis. - (lookup_call_use_vi): Just move around. - (lookup_call_clobber_vi): Just move around. - (get_call_use_vi): Just move around. - (get_call_clobber_vi): Just move around. - (enum constraint_expr_type): Move to tree-ssa-structalias.h. - (struct constraint_expr): Move to tree-ssa-structalias.h. - (UNKNOWN_OFFSET): Move to tree-ssa-structalias.h. - (get_constraint_for_1): Just move around. - (get_constraint_for): Just move around. - (get_constraint_for_rhs): Just move around. - (do_deref): Just move around. - (constraint_pool): Just move around. - (struct constraint_graph): Move to pta-andersen.h. - (FIRST_REF_NODE): Move to pta-andersen.cc. - (LAST_REF_NODE): Move to pta-andersen.cc. - (find): Move to pta-andersen.cc. - (unite): Move to pta-andersen.cc. - (new_constraint): Just move around. - (debug_constraint_graph): External linkage, move to namespace - pointer_analysis. - (debug_varinfo): External linkage, move to namespace pointer_analysis. - (debug_varmap): External linkage, move to namespace pointer_analysis. - (dump_constraint_graph): External linkage, move to namespace - pointer_analysis. - (constraint_expr_equal): Move to pta-andersen.cc. - (constraint_expr_less): Move to pta-andersen.cc. - (constraint_less): Move to pta-andersen.cc. - (constraint_equal): Move to pta-andersen.cc. - (constraint_vec_find): Move to pta-andersen.cc. - (constraint_set_union): Move to pta-andersen.cc. - (solution_set_expand): Move to pta-andersen.cc. - (set_union_with_increment): Move to pta-andersen.cc. - (insert_into_complex): Move to pta-andersen.cc. - (merge_node_constraints): Move to pta-andersen.cc. - (clear_edges_for_node): Move to pta-andersen.cc. - (merge_graph_nodes): Move to pta-andersen.cc. - (add_implicit_graph_edge): Move to pta-andersen.cc. - (add_pred_graph_edge): Move to pta-andersen.cc. - (add_graph_edge): Move to pta-andersen.cc. - (init_graph): Move to pta-andersen.cc. Initialize - predbitmap_obstack here. - (build_pred_graph): Move to pta-andersen.cc. - (build_succ_graph): Move to pta-andersen.cc. - (class scc_info): Move to pta-andersen.cc. - (scc_visit): Move to pta-andersen.cc. - (solve_add_graph_edge): Move to pta-andersen.cc. - (do_sd_constraint): Move to pta-andersen.cc. - (do_ds_constraint): Move to pta-andersen.cc. - (do_complex_constraint): Move to pta-andersen.cc. - (scc_info::scc_info): Move to pta-andersen.cc. - (scc_info::~scc_info): Move to pta-andersen.cc. - (find_indirect_cycles): Move to pta-andersen.cc. - (topo_visit): Move to pta-andersen.cc. - (compute_topo_order): Move to pta-andersen.cc. - (struct equiv_class_hasher): Move to pta-andersen.cc. - (equiv_class_hasher::hash): Move to pta-andersen.cc. - (equiv_class_hasher::equal): Move to pta-andersen.cc. - (equiv_class_lookup_or_add): Move to pta-andersen.cc. - (condense_visit): Move to pta-andersen.cc. - (label_visit): Move to pta-andersen.cc. - (dump_pred_graph): External linkage, move to namespace - pointer_analysis. - (dump_varmap): External linkage, move to namespace pointer_analysis. - (perform_var_substitution): Move to pta-andersen.cc. - (free_var_substitution_info): Move to pta-andersen.cc. - (find_equivalent_node): Move to pta-andersen.cc. - (unite_pointer_equivalences): Move to pta-andersen.cc. - (move_complex_constraints): Move to pta-andersen.cc. - (rewrite_constraints): Move to pta-andersen.cc. - (eliminate_indirect_cycles): Move to pta-andersen.cc. - (solve_graph): Move to pta-andersen.cc. - (set_uids_in_ptset): find (...) -> var_rep[...]. - (find_what_var_points_to): find (...) -> var_rep[...]. - (init_alias_vars): Don't initialize predbitmap_obstack here. - (remove_preds_and_fake_succs): Move to pta-andersen.cc. - (solve_constraints): Move to pta-andersen.cc. Call - delete_graph() at the end. - (delete_points_to_sets): Don't delete graph here. Delete var_rep here. - (visit_loadstore): find (...) -> var_rep[...]. - (compute_dependence_clique): find (...) -> var_rep[...]. - (ipa_pta_execute): find (...) -> var_rep[...]. - * pta-andersen.cc: New file. - * pta-andersen.h: New file. - * tree-ssa-structalias.h: New file. - -2025-07-17 Richard Sandiford - Yury Khrustalev - - * doc/sourcebuild.texi (aarch64_sme_hw): Document. - -2025-07-17 Stefan Schulze Frielinghaus - - * config/s390/s390.md (signbit_tdc): Rename expander. - (signbit2): New expander. - (signbit2_z10): New expander. - -2025-07-17 Stefan Schulze Frielinghaus - - * config/s390/s390.cc (s390_register_move_cost): Add costing for - vlvg/vlgv. - -2025-07-17 Stefan Schulze Frielinghaus - - * config/s390/vector.md (bhfgq): Add scalar modes. - (*movdi_zero_extend_A): New insn. - (*movsi_zero_extend_A): New insn. - (*movdi_zero_extend_B): New insn. - (*movsi_zero_extend_B): New insn. - -2025-07-17 Xi Ruoyao - - PR target/121064 - * config/loongarch/lsx.md (lsx_vshuf_): Add '@' to - generate a mode-aware helper. Use as the mode of the - operand 1 (selector). - * config/loongarch/lasx.md (lasx_xvshuf_): Likewise. - * config/loongarch/loongarch.cc - (loongarch_try_expand_lsx_vshuf_const): Create a new pseudo for - the selector. Use the mode-aware helper to simplify the code. - (loongarch_expand_vec_perm_const): Likewise. - -2025-07-17 Richard Biener - - * tree-vect-slp.cc (vect_build_slp_tree_1): Reject - single-lane vector types. - -2025-07-17 Richard Biener - - PR tree-optimization/121035 - * tree-ssa-pre.cc (find_or_generate_expression): Handle - values without expression. - -2025-07-16 David Malcolm - - * diagnostic-state-to-dot.cc (state_diagram::m_show_tags): Drop - unused field. - -2025-07-16 Kwok Cheung Yeung - - * gimplify.cc (gimplify_omp_affinity): Use OMP_ITERATOR_DECL_P. - (compute_omp_iterator_count): New. - (build_omp_iterator_loop): New. - (gimplify_omp_depend): Use OMP_ITERATOR_DECL_P, - compute_omp_iterator_count and build_omp_iterator_loop. - * tree-inline.cc (copy_tree_body_r): Use OMP_ITERATOR_DECL_P. - * tree-pretty-print.cc (dump_omp_clause): Likewise. - * tree.h (OMP_ITERATOR_DECL_P): New macro. - -2025-07-16 Uros Bizjak - - PR target/121062 - * config/i386/i386.cc (ix86_convert_const_vector_to_integer): - Handle E_V1SImode and E_V1DImode. - * config/i386/mmx.md (V_16_32_64): Add V1SI, V2BF and V1DI. - (mmxinsnmode): Add V1DI and V1SI. - Add V_16_32_64 splitter for constant vector loads from constant - vector pool. - (V_16_32_64:*mov_imm): Moved after V_16_32_64 splitter. - Replace lowpart_subreg with adjust_address. - -2025-07-16 H.J. Lu - - PR target/120881 - PR testsuite/121078 - * config/i386/i386-options.cc (ix86_option_override_internal): - Warn -pg without -mfentry only on glibc targets. - -2025-07-16 Uros Bizjak - - * config/i386/i386-expand.cc (ix86_expand_move): - Use MEM_P predicate instead of open coding it. - (ix86_erase_embedded_rounding): - Use NONJUMP_INSN_P predicate instead of open coding it. - * config/i386/i386-features.cc (convertible_comparison_p): - Use REG_P predicate instead of open coding it. - * config/i386/i386.cc (ix86_rtx_costs): - Use SUBREG_P predicate instead of open coding it. - -2025-07-16 Uros Bizjak - - * config/i386/i386.cc (symbolic_reference_mentioned_p): - Use LABEL_REF_P predicate instead of open coding it. - (ix86_legitimate_constant_p): Ditto. - (legitimate_pic_address_disp_p): Ditto. - (ix86_legitimate_address_p): Ditto. - (legitimize_pic_address): Ditto. - (ix86_print_operand): Ditto. - (ix86_print_operand_address_as): Ditto. - (ix86_rip_relative_addr_p): Ditto. - * config/i386/i386.h (SYMBOLIC_CONST): Ditto. - * config/i386/i386.md (*anddi_1 to *andsi_1_zext splitter): Ditto. - * config/i386/predicates.md (symbolic_operand): Ditto. - (local_symbolic_operand): Ditto. - (vsib_address_operand): Ditto. - -2025-07-16 Uros Bizjak - - * config/i386/i386-expand.cc (ix86_expand_move): - Use SYMBOL_REF_P predicate instead of open coding it. - (ix86_split_long_move): Ditto. - (construct_plt_address): Ditto. - (ix86_expand_call): Ditto. - (ix86_notrack_prefixed_insn_p): Ditto. - * config/i386/i386-features.cc - (rest_of_insert_endbr_and_patchable_area): Ditto. - * config/i386/i386.cc (symbolic_reference_mentioned_p): Ditto. - (ix86_force_load_from_GOT_p): Ditto. - (ix86_legitimate_constant_p): Ditto. - (legitimate_pic_operand_p): Ditto. - (legitimate_pic_address_disp_p): Ditto. - (ix86_legitimate_address_p): Ditto. - (legitimize_pic_address): Ditto. - (ix86_legitimize_address): Ditto. - (ix86_delegitimize_tls_address): Ditto. - (ix86_print_operand): Ditto. - (ix86_print_operand_address_as): Ditto. - (ix86_rip_relative_addr_p): Ditto. - (symbolic_base_address_p): Ditto. - * config/i386/i386.h (SYMBOLIC_CONST): Ditto. - * config/i386/i386.md (*anddi_1 to *andsi_1_zext splitter): Ditto. - * config/i386/predicates.md (symbolic_operand): Ditto. - (local_symbolic_operand): Ditto. - (local_func_symbolic_operand): Ditto. - -2025-07-16 Uros Bizjak - - * config/i386/i386-expand.cc (ix86_expand_vector_logical_operator): - Use CONST_VECTOR_P instead of open coding it. - (ix86_expand_int_sse_cmp): Ditto. - (ix86_extract_perm_from_pool_constant): Ditto. - (ix86_split_to_parts): Ditto. - (const_vector_equal_evenodd_p): Ditto. - * config/i386/i386.cc (ix86_print_operand): Ditto. - * config/i386/predicates.md (zero_extended_scalar_load_operand): Ditto. - (float_vector_all_ones_operand): Ditto. - * config/i386/sse.md (avx512vl_vextractf128): Ditto. - -2025-07-16 Richard Biener - - PR tree-optimization/121049 - * internal-fn.h (widening_evenodd_fn_p): Declare. - * internal-fn.cc (widening_evenodd_fn_p): New function. - * tree-vect-stmts.cc (vectorizable_conversion): When using - an even/odd widening function disable loop masking. - -2025-07-16 Andrew Pinski - - PR tree-optimization/119920 - PR tree-optimization/112324 - PR tree-optimization/110015 - * tree-if-conv.cc (find_different_opnum): New function. - (factor_out_operators): New function. - (predicate_scalar_phi): Call factor_out_operators when - there is only 2 elements of a phi. - -2025-07-16 Andrew Pinski - - * tree-if-conv.cc (fold_build_cond_expr): Return early if lhs and rhs - are the same. - -2025-07-16 Andrew Pinski - - * tree-if-conv.cc (combine_blocks): Remove predicated - dynamic array. - -2025-07-16 Richard Biener - - PR tree-optimization/121116 - * tree-vect-loop.cc (vectorizable_induction): Use the - step vector element type for further processing. - -2025-07-16 Andrew Stubbs - - * config/gcn/gcn-valu.md (add3_vcc_dup): Change - operand 2 to allow gcn_alu_operand. Swap the operands in the VCC - update RTL. - (add3_vcc_zext_dup): Likewise. - (add3_vcc_zext_dup_exec): Likewise. - (add3_vcc_zext_dup2): Likewise. - (add3_vcc_zext_dup2_exec): Likewise. - -2025-07-16 Spencer Abson - - PR target/117850 - * config/aarch64/aarch64-builtins.cc (LO_HI_PAIRINGS): New, group the - lo/hi pairs from aarch64-builtin-pairs.def. - (aarch64_get_highpart_builtin): New function. - (aarch64_v128_highpart_ref): New function, helper to look for vector - highparts. - (aarch64_build_vector_cst): New function, helper to build duplicated - VECTOR_CSTs. - (aarch64_fold_lo_call_to_hi): New function. - (aarch64_general_gimple_fold_builtin): Add cases for the lo builtins - in aarch64-builtin-pairs.def. - * config/aarch64/aarch64-builtin-pairs.def: New file, declare the - parirs of lowpart-operating and highpart-operating builtins. - -2025-07-16 Alfie Richards - - * tree.cc (get_clone_versions): New function. - (get_clone_attr_versions): New function. - (get_version): New function. - * tree.h (get_clone_versions): New function. - (get_clone_attr_versions): New function. - (get_target_version): New function. - -2025-07-16 Alfie Richards - - * attribs.cc (make_attribute): Change arguments. - * attribs.h (make_attribute): Change arguments. - -2025-07-16 Alfie Richards - - * pretty-print.cc (format_phase_2): Add support for string_slice. - * vec.cc (string_slice::tokenize): New static method. - (string_slice::strcmp): New static method. - (string_slice::strip): New method. - (test_string_slice_initializers): New test. - (test_string_slice_tokenize): Ditto. - (test_string_slice_strcmp): Ditto. - (test_string_slice_equality): Ditto. - (test_string_slice_inequality): Ditto. - (test_string_slice_invalid): Ditto. - (test_string_slice_strip): Ditto. - (vec_cc_tests): Add new tests. - * vec.h (class string_slice): New class. - -2025-07-16 Robin Dapp - - PR middle-end/121065 - * cfgexpand.cc (expand_debug_expr): Allow fixed-point modes for - RDIV_EXPR. - * optabs-tree.cc (optab_for_tree_code): Ditto. - -2025-07-16 Robin Dapp - - PR target/120297 - * config/riscv/riscv-vsetvl.def: Do not forget ratio demand of - previous vsetvl. - -2025-07-16 Kyrylo Tkachov - - * config/aarch64/aarch64-sve2.md (*aarch64_sve2_bsl2n_eon): - New pattern. - (*aarch64_sve2_eon_bsl2n_unpred): Likewise. - -2025-07-16 Kyrylo Tkachov - - * config/aarch64/aarch64-sve2.md (*aarch64_sve2_unpred_nor): - New define_insn. - (*aarch64_sve2_nand_unpred): Likewise. - -2025-07-16 Jeremy Rifkin - - PR c/82134 - * gimplify.cc (gimplify_modify_expr): Add suppress_warning - * tree-cfg.cc (do_warn_unused_result): Check warning_suppressed_p - -2025-07-16 Haochen Jiang - - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_AMX_AVX512_SET): Do not set AVX10.2. - (OPTION_MASK_ISA2_AVX10_2_UNSET): Remove AMX-AVX512 unset. - (OPTION_MASK_ISA2_AVX512F_UNSET): Unset AMX-AVX512. - (ix86_handle_option): Imply AVX512F for AMX-AVX512. - -2025-07-16 Pan Li - - * config/riscv/autovec.md (avg3_floor): Add new - pattern of avg3_floor for rvv DImode. - -2025-07-15 David Malcolm - - * spellcheck.cc: Define INCLUDE_ALGORITHM. - (CASE_COST, BASE_COST): Convert to... - (case_cost, base_cost): ...these, in an anonymous namespace. - (get_edit_distance): Update for above. Use std::min rather than - MIN. - (get_edit_distance_cutoff): Likewise. Use std::max rather than - MAX. - (selftest::test_edit_distances): Update for BASE_COST renaming. - (selftest::get_old_cutoff): Likewise. Use std::max. - (selftest::assert_not_suggested_for): Use nullptr. - (selftest::test_find_closest_string): Likewise. - * spellcheck.h: Replace TYPE with StringLikeType in templates, - and use CamelCase. - -2025-07-15 David Malcolm - - PR sarif-replay/120792 - * auto-obstack.h: New file, based on material taken from - pretty-print.cc. - * diagnostic-digraphs.h - (diagnostics::digraphs::digraph::set_description): New. - (diagnostics::digraphs::node::set_label): New. - * doc/libgdiagnostics/topics/compatibility.rst: Add - LIBGDIAGNOSTICS_ABI_4. - * doc/libgdiagnostics/topics/diagnostics.rst - (diagnostic_finish_via_msg_buf): Document new entrypoint. - * doc/libgdiagnostics/topics/execution-paths.rst - (diagnostic_execution_path_add_event_via_msg_buf): Document new - entrypoint. - * doc/libgdiagnostics/topics/index.rst: Add message-buffers.rst. - * doc/libgdiagnostics/topics/message-buffers.rst: New file. - * doc/libgdiagnostics/topics/message-formatting.rst: Add note - about message buffers. - * doc/libgdiagnostics/topics/physical-locations.rst - (diagnostic_add_location_with_label_via_msg_buf): Add. - * doc/libgdiagnostics/tutorial/07-execution-paths.rst: Link to - next section. - * doc/libgdiagnostics/tutorial/08-message-buffers.rst: New file. - * doc/libgdiagnostics/tutorial/index.rst: Add - 08-message-buffers.rst. - * libgdiagnostics++.h (libgdiagnostics::message_buffer): New - class. - (libgdiagnostics::execution_path::add_event_via_msg_buf): New. - (libgdiagnostics::diagnostic::add_location_with_label): New. - (libgdiagnostics::diagnostic::finish_via_msg_buf): New. - (libgdiagnostics::graph::set_description): New overload. - (libgdiagnostics::graph::add_edge): New overload. - (libgdiagnostics::node::set_label): New overload. - * libgdiagnostics-private.h - (private_diagnostic_execution_path_add_event_2): Drop decl. - (private_diagnostic_execution_path_add_event_3): New decl. - * libgdiagnostics.cc: Include "pretty-print-format-impl.h", - "pretty-print-markup.h", and "auto-obstack.h". - (class copying_token_printer): New. - (struct diagnostic_message_buffer): New. - (class pp_element_message_buffer): New. - (libgdiagnostics_path_event::libgdiagnostics_path_event): Replace - params "gmsgid" and "args" with "msg_buf". - (libgdiagnostics_path_event::print_desc): Reimplement using - pp_element_message_buffer to replay m_msg_buf into "pp". - (libgdiagnostics_path_event::m_desc_uncolored): Drop field. - (libgdiagnostics_path_event::m_desc_colored): Drop field. - (libgdiagnostics_path_event::msg_buf): New field. - (diagnostic_execution_path::add_event_va): Reimplement. - (diagnostic_execution_path::add_event_via_msg_buf): New. - (diagnostic::add_location_with_label): New overload, using - msg_buf. - (diagnostic_manager::emit): Reimplement with... - (diagnostic_manager::emit_va): ...this. - (diagnostic_manager::emit_msg_buf): New. - (FAIL_IF_NULL): Rename "p" to "ptr_arg". - (diagnostic_finish_va): Update to use diagnostic_manager::emit_va. - (diagnostic_graph::add_node_with_id): Rename "id" to "node_id". - (diagnostic_graph_add_node): Likewise. - (diagnostic_graph_add_edge): Rename "id" to "edge_id". - (diagnostic_graph_get_node_by_id): Rename "id" to "node_id". - (diagnostic_graph_get_edge_by_id): Rename "id" to "edge_id". - (private_diagnostic_execution_path_add_event_2): Delete. - (diagnostic_message_buffer_new): New public entrypoint. - (diagnostic_message_buffer_release): Likewise. - (diagnostic_message_buffer_append_str): Likewise. - (diagnostic_message_buffer_append_text): Likewise. - (diagnostic_message_buffer_append_byte): Likewise. - (diagnostic_message_buffer_append_printf): Likewise. - (diagnostic_message_buffer_append_event_id): Likewise. - (diagnostic_message_buffer_begin_url): Likewise. - (diagnostic_message_buffer_end_url): Likewise. - (diagnostic_message_buffer_begin_quote): Likewise. - (diagnostic_message_buffer_end_quote): Likewise. - (diagnostic_message_buffer_begin_color): Likewise. - (diagnostic_message_buffer_end_color): Likewise. - (diagnostic_message_buffer_dump): Likewise. - (diagnostic_finish_via_msg_buf): Likewise. - (diagnostic_add_location_with_label_via_msg_buf): Likewise. - (diagnostic_execution_path_add_event_via_msg_buf): Likewise. - (diagnostic_graph_set_description_via_msg_buf): Likewise. - (diagnostic_graph_add_edge_via_msg_buf): Likewise. - (diagnostic_node_set_label_via_msg_buf): Likewise. - (private_diagnostic_execution_path_add_event_3): New private - entrypoint. - * libgdiagnostics.h (LIBGDIAGNOSTICS_PARAM_FORMAT_STRING): New macro. - (LIBGDIAGNOSTICS_PARAM_PRINTF_FORMAT_STRING): New macro. - (diagnostic_message_buffer): New typedef. - (LIBDIAGNOSTICS_HAVE_diagnostic_message_buffer): New define. - (diagnostic_message_buffer_new): New decl. - (diagnostic_message_buffer_release): New decl. - (diagnostic_message_buffer_append_str): New decl. - (diagnostic_message_buffer_append_text): New decl. - (diagnostic_message_buffer_append_byte): New decl. - (diagnostic_message_buffer_append_printf): New decl. - (diagnostic_message_buffer_append_event_id): New decl. - (diagnostic_message_buffer_begin_url): New decl. - (diagnostic_message_buffer_end_url): New decl. - (diagnostic_message_buffer_begin_quote): New decl. - (diagnostic_message_buffer_end_quote): New decl. - (diagnostic_message_buffer_begin_color): New decl. - (diagnostic_message_buffer_end_color): New decl. - (diagnostic_message_buffer_dump): New decl. - (diagnostic_finish_via_msg_buf): New decl. - (diagnostic_add_location_with_label_via_msg_buf): New decl. - (diagnostic_execution_path_add_event_via_msg_buf): New decl. - (diagnostic_graph_set_description_via_msg_buf): New decl. - (diagnostic_graph_add_edge_via_msg_buf): New decl. - (diagnostic_node_set_label_via_msg_buf): New decl. - * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_3): Drop - private_diagnostic_execution_path_add_event_2. - (LIBGDIAGNOSTICS_ABI_4): New. - * libsarifreplay.cc (class annotation): Use - libgdiagnostics::message_buffer rather than label_text. - (add_any_annotations): Likewise. - (sarif_replayer::handle_result_obj): Likewise. - (make_plain_text_within_result_message): Likewise. - (handle_thread_flow_location_object): Likewise. - (handle_location_object): Likewise. - (sarif_replayer::handle_graph_object): Likewise. - (sarif_replayer::handle_node_object): Likewise. - (sarif_replayer::handle_edge_object): Likewise. - * pretty-print-format-impl.h (pp_token_list::push_back_byte): New - decl. - * pretty-print-markup.h (pp_markup::context::begin_url): New decl. - (pp_markup::context::end_url): New decl. - (pp_markup::context::add_event_id): New decl. - * pretty-print.cc: Include "auto-obstack.h". - (pp_token_list::push_back_byte): New. - (struct auto_obstack): Move to auto-obstack.h. - (default_token_printer): Make non-static. - (pp_markup::context::begin_url): New. - (pp_markup::context::end_url): New. - (pp_markup::context::add_event_id): New. - -2025-07-15 Umesh Kalappa - - * config/riscv/riscv-cores.def (RISCV_CORE): Updated the supported march. - * config/riscv/riscv-ext-mips.def (DEFINE_RISCV_EXT): - New file added for mips conditional mov extension. - * config/riscv/riscv-ext.def: Likewise. - * config/riscv/t-riscv: Generates riscv-ext.opt - * config/riscv/riscv-ext.opt: Generated file. - * config/riscv/riscv.cc (riscv_expand_conditional_move): Updated for mips cmov - and outlined some code that handle arch cond move. - * config/riscv/riscv.md (movcc): updated expand for MIPS CCMOV. - * config/riscv/mips-insn.md: New file for mips-p8700 ccmov insn. - * doc/riscv-ext.texi: Updated for mips cmov. - -2025-07-15 Konstantinos Eleftheriou - - * avoid-store-forwarding.cc (generate_bit_insert_sequence): - Remove adjustment of bitfield insertion's starting position - when BYTES_BIG_ENDIAN != BITS_BIG_ENDIAN. - (process_store_forwarding): Update offset check in base reg - initialization to take into account the target's endianness. - -2025-07-15 Soumya AR - - * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNING_OPTION): - Add AVOID_LDAPUR tuning flag. - * config/aarch64/aarch64.cc (aarch64_adjust_generic_arch_tuning): - Set AVOID_LDAPUR for architectures before armv8.8-a. - (aarch64_override_options_internal): Apply generic tuning adjustments - to generic_armv8_a_tunings and generic_armv9_a_tunings. - * config/aarch64/aarch64.h (TARGET_ENABLE_LDAPUR): New macro to - control LDAPUR usage based on RCPC2 and tuning flags. - * config/aarch64/aarch64.md: Add enable_ldapur attribute. - * config/aarch64/atomics.md (aarch64_atomic_load_rcpc): Modify - to emit LDAPUR for cores with RCPC2. - (*aarch64_atomic_load_rcpc_zext): Likewise. - (*aarch64_atomic_load_rcpc_sext): Update constraint to Ust. - * config/aarch64/tuning_models/cortexx925.h: Add AVOID_LDAPUR flag. - * config/aarch64/tuning_models/neoversev2.h: Likewise. - * config/aarch64/tuning_models/neoversev3.h: Likewise. - * config/aarch64/tuning_models/neoversev3ae.h: Likewise. - -2025-07-15 Richard Biener - Richard Sandiford - - PR tree-optimization/121059 - * tree-vect-stmts.cc (vectorizable_operation): Query - scalar_cond_masked_set with the correct number of masks. - -2025-07-15 Jakub Jelinek - Jason Merrill - - PR c/44677 - * common.opt (Wunused-but-set-parameter=, Wunused-but-set-variable=): - New options. - (Wunused-but-set-parameter, Wunused-but-set-variable): Turn into - aliases. - * common.opt.urls: Regenerate. - * diagnostic-spec.cc (nowarn_spec_t::nowarn_spec_t): Use - OPT_Wunused_but_set_variable_ instead of OPT_Wunused_but_set_variable - and OPT_Wunused_but_set_parameter_ instead of - OPT_Wunused_but_set_parameter. - * gimple-ssa-store-merging.cc (find_bswap_or_nop_1): Remove unused - but set variable tmp. - * ipa-strub.cc (pass_ipa_strub::execute): Cast named_args to - (void) if ATTR_FNSPEC_DECONST_WATERMARK is not defined. - * doc/invoke.texi (Wunused-but-set-parameter=, - Wunused-but-set-variable=): Document new options. - (Wunused-but-set-parameter, Wunused-but-set-variable): Adjust - documentation now that they are just aliases. - -2025-07-15 Alfie Richards - - * config/aarch64/aarch64-sme.md (@aarch64_sme_): - Change gating and comment. - -2025-07-15 Kyrylo Tkachov - - Revert: - 2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (*eor3qdi4): New - define_insn_and_split. - -2025-07-15 Spencer Abson - - * config/aarch64/aarch64-sve.md (*fcm_and_combine): - Extend from SVE_FULL_F to SVE_F. - (*fcmuo_and_combine): Likewise. - (*fcm_bic_combine): Likewise. - (*fcm_nor_combine): Likewise. - (*fcmuo_bic_combine): Likewise. - (*fcmuo_nor_combine): Likewise. Move the comment here to - above fcmuo_bic_combine, since it applies to both patterns. - -2025-07-15 Rainer Orth - - * tree.cc: Include memmodel.h. - -2025-07-14 Andrew Stubbs - - * config/gcn/gcn-valu.md (vec_cmpudi_exec): Call gen_vec_cmp*, - not gen_vec_cmpu*. - -2025-07-14 Richard Biener - - Revert: - 2025-07-14 Richard Biener - - PR tree-optimization/121059 - * tree-vect-stmts.cc (vectorizable_operation): Record a - loop mask for mask AND operations. - -2025-07-14 Juergen Christ - - * config/s390/vector.md (reduc_plus_scal_): Implement. - (reduc_plus_scal_v2df): Implement. - (reduc_plus_scal_v4sf): Implement. - (REDUC_FMINMAX): New int iterator. - (reduc_fminmax_name): New int attribute. - (reduc_minmax): New code iterator. - (reduc_minmax_name): New code attribute. - (reduc__scal_v2df): Implement. - (reduc__scal_v4sf): Implement. - (reduc__scal_v2df): Implement. - (reduc__scal_v4sf): Implement. - (REDUCBIN): New code iterator. - (reduc_bin_insn): New code attribute. - (reduc__scal_v2di): Implement. - (reduc__scal_v4si): Implement. - (reduc__scal_v8hi): Implement. - (reduc__scal_v16qi): Implement. - -2025-07-14 Juergen Christ - - * config/s390/s390.cc (s390_option_override_internal): Remove override. - -2025-07-14 Andrew Stubbs - - * config/gcn/gcn-valu.md (add3): Rename ... - (add3): ... to this, remove the clobber, and change the - instruction from v_add_co_u32 to v_add_u32. - (add3_dup): Rename ... - (add3_dup): ... to this, and likewise. - (sub3): Rename ... - (sub3): ... to this, and likewise - * config/gcn/gcn.md (addsi3): Remove the DI clobber, and change the - instruction from v_add_co_u32 to v_add_u32. - (addsi3_scc): Likewise. - (subsi3): Likewise, but for v_sub_co_u32. - (muldi3): Likewise. - -2025-07-14 Richard Biener - - PR tree-optimization/121059 - * tree-vect-stmts.cc (vectorizable_operation): Record a - loop mask for mask AND operations. - -2025-07-14 Pan Li - - * match.pd: Make sure widen mul has twice bitsize - of the inputs in SAT_MUL pattern. - -2025-07-14 Uros Bizjak - - PR target/121015 - * config/i386/i386-features.cc (ix86_broadcast_inner): Check all - 0s/1s vectors with standard_sse_constant_p. - -2025-07-14 H.J. Lu - - PR target/120881 - * config.in: Regenerated. - * configure: Likewise. - * configure.ac: Add --enable-x86-64-mfentry. - * config/i386/i386-options.cc (ix86_option_override_internal): - Enable __fentry__ in 64-bit mode if ENABLE_X86_64_MFENTRY is set - to 1. Warn -pg without -mfentry with shrink wrapping enabled. - * doc/install.texi: Document --enable-x86-64-mfentry. - -2025-07-14 François-Xavier Coudert - - PR target/120645 - * config/darwin-driver.cc: Account for latest macOS numbering - scheme. - -2025-07-14 Paul-Antoine Arras - - PR target/119100 - * config/riscv/autovec-opt.md (*vfwmacc_vf_): New pattern to - handle both vfwmacc and vfwmsac. - (*extend_vf_): New pattern that serves as an intermediate combine - step. - * config/riscv/vector-iterators.md (vsubel): New mode attribute. This is - just the lower-case version of VSUBEL. - * config/riscv/vector.md (@pred_widen_mul__scalar): Reorder - and swap operands to match the RTL emitted by expand, i.e. first - float_extend then vec_duplicate. - -2025-07-14 Alfie Richards - - * config/aarch64/aarch64-sme.md (@aarch64_sme_): - New patterns. - * config/aarch64/aarch64-sve-builtins-sme.def (svamin): New intrinsics. - (svamax): New intrinsics. - * config/aarch64/aarch64-sve-builtins-sve2.cc (class faminmaximpl): New - class. - (svamin): New function. - (svamax): New function. - -2025-07-14 Haochen Jiang - - * config/i386/i386.h (PTA_PANTHERLAKE): Revmoe KL and WIDEKL. - (PTA_CLEARWATERFOREST): Ditto. - * doc/invoke.texi: Revise documentation. - -2025-07-13 Andrew Pinski - - PR middle-end/120866 - * tree.cc: Add include to tm_p.h. - -2025-07-13 Benjamin Wu - - * gimple.h (GTMA_DOES_GO_IRREVOCABLE): Fix typo. - -2025-07-12 Jan Hubicka - - * auto-profile.cc (function_instance::~function_instance): - Move down in source. - (string_table::get_cgraph_node): New member function with - logic broken out from ... - (function_instance::get_cgraph_node): ... here. - (match_with_target): Fix formating. - (function_instance::match): Fix formating; do not use iterators - after modifying map; remove incorrect set of warned flag. - (autofdo_source_profile::offline_external_functions): Keep - seen set up to date. - (function_instance::read_function_instance): Fix formating. - -2025-07-12 Uros Bizjak - - * config/i386/mmx.md (mov): - Use nonimm_or_0_operand predicate for operand 1. - (*mov_internal): Ditto. - (movv2qi): Ditto. - (*movv2qi_internal): Ditto. Use ix86_hardreg_mov_ok - in insn condition. - -2025-07-12 Xi Ruoyao - - PR rtl-optimization/120983 - * lra-constraints.cc (process_alt_operands): Allow reloading - user hard registers unless the insn is an asm. - -2025-07-11 David Malcolm - - * diagnostic-format-html.cc: Include "diagnostic-format-sarif.h", - Replace include of "diagnostic-state.h" with includes of - "diagnostic-digraphs.h" and "diagnostic-state-graphs.h". - (html_generation_options::html_generation_options): Update for - field renaming. - (html_builder::m_body_element): New field. - (html_builder::html_builder): Initialize m_body_element. - (html_builder::maybe_make_state_diagram): Port from XML - implementation to state graph implementation. - (html_builder::make_element_for_diagnostic): Add any - per-diagnostic graphs. - (html_builder::add_graph): New. - (html_builder::emit_global_graph): New. - (html_output_format::report_global_digraph): New. - * diagnostic-format-html.h - (html_generation_options::m_show_state_diagram_xml): Replace - with... - (html_generation_options::m_show_state_diagrams_sarif): ...this. - (html_generation_options::m_show_state_diagram_dot_src): Rename - to... - (html_generation_options::m_show_state_diagrams_dot_src): ...this. - * diagnostic-format-sarif.cc: Include "diagnostic-digraphs.h" and - "diagnostic-state-graphs.h". - (sarif_builder::m_run_graphs): New field. - (sarif_result::on_nested_diagnostic): Update call to - make_location_object to pass arg by pointer. - (sarif_builder::sarif_builder): Initialize m_run_graphs. - (sarif_builder::report_global_digraph): New. - (sarif_builder::make_result_object): Add any graphs to - the result object. - (sarif_builder::make_locations_arr): Update call to - make_location_object to pass arg by pointer. - (sarif_builder::make_location_object): Pass param "loc_mgr" by - pointer rather than by reference so that it can be null, and - handle this case. - (copy_any_property_bag): New. - (make_sarif_graph): New. - (make_sarif_node): New. - (make_sarif_edge): New. - (sarif_property_bag::set_graph): New. - (populate_thread_flow_location_object): Port from XML - implementation to state graph implementation. - (make_run_object): Store any graphs. - (sarif_output_format::report_global_digraph): New. - (sarif_generation_options::sarif_generation_options): Rename - m_xml_state to m_state_graph. - (selftest::test_make_location_object): Update for change to - make_location_object. - * diagnostic-format-sarif.h: - (sarif_generation_options::m_xml_state): Replace with... - (sarif_generation_options::m_state_graph): ...this. - (class sarif_location_manager): Add forward decl. - (diagnostics::digraphs::digraph): New forward decl. - (diagnostics::digraphs::node): New forward decl. - (diagnostics::digraphs::edge): New forward decl. - (sarif_property_bag::set_graph): New decl. - (class sarif_graph): New. - (class sarif_node): New. - (class sarif_edge): New. - (make_sarif_graph): New decl. - (make_sarif_node): New decl. - (make_sarif_edge): New decl. - * diagnostic-format-text.h - (diagnostic_text_output_format::report_global_digraph): New. - * diagnostic-format.h - (diagnostic_output_format::report_global_digraph): New vfunc. - * diagnostic-digraphs.cc: New file. - * diagnostic-digraphs.h: New file. - * diagnostic-metadata.h (diagnostics::digraphs::lazy_digraphs): - New forward decl. - (diagnostic_metadata::diagnostic_metadata): Initialize - m_lazy_digraphs. - (diagnostic_metadata::set_lazy_digraphs): New. - (diagnostic_metadata::get_lazy_digraphs): New. - (diagnostic_metadata::m_lazy_digraphs): New field. - * diagnostic-output-spec.cc (sarif_scheme_handler::make_sink): - Update for XML to state graph changes. - (sarif_scheme_handler::make_sarif_gen_opts): Likewise. - (html_scheme_handler::make_sink): Rename "show-state-diagram-xml" - to "show-state-diagrams-sarif" and use pluralization consistently. - * diagnostic-path.cc: Replace include of "xml.h" with - "diagnostic-state-graphs.h". - (diagnostic_event::maybe_make_xml_state): Replace with... - (diagnostic_event::maybe_make_diagnostic_state_graph): ...this. - * diagnostic-path.h (diagnostics::digraphs::digraph): New forward - decl. - (diagnostic_event::maybe_make_xml_state): Replace with... - (diagnostic_event::maybe_make_diagnostic_state_graph): ...this. - * diagnostic-state-graphs.cc: New file. - * diagnostic-state-graphs.h: New file. - * diagnostic-state-to-dot.cc: Port implementation from XML to - state graphs. - * diagnostic-state.h: Deleted file. - * diagnostic.cc (diagnostic_context::report_global_digraph): New. - * diagnostic.h (diagnostics::digraphs::lazy_digraph): New forward - decl. - (diagnostic_context::report_global_digraph): New decl. - * doc/analyzer.texi (Debugging the Analyzer): Update to reflect - change from XML to state graphs. - * doc/invoke.texi ("sarif" diagnostics sink): Replace "xml-state" - with "state-graphs". - ("experimental-html" diagnostics sink): Replace - "show-state-diagrams-xml" with "show-state-diagrams-sarif" - * doc/libgdiagnostics/topics/compatibility.rst - (LIBGDIAGNOSTICS_ABI_3): New. - * doc/libgdiagnostics/topics/graphs.rst: New file. - * doc/libgdiagnostics/topics/index.rst: Add graphs.rst. - * graphviz.h (node_id::operator=): New. - * json.h (json::value::dyn_cast_string): New. - (json::object::get_num_keys): New accessor. - (json::object::get_key): New accessor. - (json::string::dyn_cast_string): New. - * libgdiagnostics++.h (class libgdiagnostics::graph): New. - (class libgdiagnostics::node): New. - (class libgdiagnostics::edge): New. - (class libgdiagnostics::diagnostic::take_graph): New. - (class libgdiagnostics::manager::take_global_graph): New. - (class libgdiagnostics::graph::set_description): New. - (class libgdiagnostics::graph::get_node_by_id): New. - (class libgdiagnostics::graph::get_edge_by_id): New. - (class libgdiagnostics::graph::add_edge): New. - (class libgdiagnostics::node::set_label): New. - (class libgdiagnostics::node::set_location): New. - (class libgdiagnostics::node::set_logical_location): New. - * libgdiagnostics-private.h: New file. - * libgdiagnostics.cc: Define INCLUDE_STRING. Include - "diagnostic-digraphs.h", "diagnostic-state-graphs.h", and - "libgdiagnostics-private.h". - (struct diagnostic_graph): New. - (struct diagnostic_node): New. - (struct diagnostic_edge): New. - (libgdiagnostics_path_event::libgdiagnostics_path_event): Add - state_graph param. - (libgdiagnostics_path_event::maybe_make_diagnostic_state_graph): - New. - (libgdiagnostics_path_event::m_state_graph): New field. - (diagnostic_execution_path::add_event_va): Add state_graph param. - (class prebuilt_digraphs): New. - (diagnostic::diagnostic): Use m_graphs in m_metadata. - (diagnostic::take_graph): New. - (diagnostic::get_graphs): New accessor. - (diagnostic::m_graphs): New field. - (diagnostic_manager::take_global_graph): New. - (diagnostic_execution_path_add_event): Update for new param to - add_event_va. - (diagnostic_execution_path_add_event_va): Likewise. - (diagnostic_graph::add_node_with_id): New public entrypoint. - (diagnostic_graph::add_edge_with_label): New public entrypoint. - (diagnostic_manager_new_graph): New public entrypoint. - (diagnostic_manager_take_global_graph): New public entrypoint. - (diagnostic_take_graph): New public entrypoint. - (diagnostic_graph_release): New public entrypoint. - (diagnostic_graph_set_description): New public entrypoint. - (diagnostic_graph_add_node): New public entrypoint. - (diagnostic_graph_add_edge): New public entrypoint. - (diagnostic_graph_get_node_by_id): New public entrypoint. - (diagnostic_graph_get_edge_by_id): New public entrypoint. - (diagnostic_node_set_location): New public entrypoint. - (diagnostic_node_set_label): New public entrypoint. - (diagnostic_node_set_logical_location): New public entrypoint. - (private_diagnostic_execution_path_add_event_2): New private - entrypoint. - (private_diagnostic_graph_set_property_bag): New private - entrypoint. - (private_diagnostic_node_set_property_bag): New private - entrypoint. - (private_diagnostic_edge_set_property_bag): New private - entrypoint. - * libgdiagnostics.h (diagnostic_graph): New typedef. - (diagnostic_node): New typedef. - (diagnostic_edge): New typedef. - (diagnostic_manager_new_graph): New decl. - (diagnostic_manager_take_global_graph): New decl. - (diagnostic_take_graph): New decl. - (diagnostic_graph_release): New decl. - (diagnostic_graph_set_description): New decl. - (diagnostic_graph_add_node): New decl. - (diagnostic_graph_add_edge): New decl. - (diagnostic_graph_get_node_by_id): New decl. - (diagnostic_graph_get_edge_by_id): New decl. - (diagnostic_node_set_label): New decl. - (diagnostic_node_set_location): New decl. - (diagnostic_node_set_logical_location): New decl. - * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_3): New. - * libsarifreplay.cc: Include "libgdiagnostics-private.h". - (id_map): New "using". - (sarif_replayer::report_invalid_sarif): Update for change to - report_problem params. - (sarif_replayer::report_unhandled_sarif): Likewise. - (sarif_replayer::report_note): New. - (sarif_replayer::report_problem): Pass param "ref" by - pointer rather than reference and handle it being null. - (sarif_replayer::maybe_get_property_bag): New. - (sarif_replayer::maybe_get_property_bag_value): New. - (sarif_replayer::handle_run_obj): Handle run-level "graphs" as per - §3.14.20. - (sarif_replayer::handle_result_obj): Handle result-level "graphs" - as per §3.27.19. - (handle_thread_flow_location_object): Optionally handle graphs - stored in property "gcc/diagnostic_event/state_graph" as state - graphs. - (sarif_replayer::handle_graph_object): New. - (sarif_replayer::handle_node_object): New. - (sarif_replayer::handle_edge_object): New. - (sarif_replayer::get_graph_node_by_id_property): New. - * selftest-run-tests.cc (selftest::run_tests): Call - selftest::diagnostic_graph_cc_tests and - selftest::diagnostic_state_graph_cc_tests. - * selftest.h (selftest::diagnostic_graph_cc_tests): New decl. - (selftest::diagnostic_state_graph_cc_tests): New decl. - -2025-07-11 David Malcolm - - * Makefile.in (OBJS-libcommon): Add diagnostic-digraphs.o and - diagnostic-state-graphs.o. - -2025-07-11 David Malcolm - - * json.cc (json::object::clone): New. - (json::object::clone_as_object): New. - (json::array::clone): New. - (json::float_number::clone): New. - (json::integer_number::clone): New. - (json::string::clone): New. - (json::literal::clone): New. - (selftest::test_cloning): New test. - (selftest::json_cc_tests): Call it. - * json.h (json::value::clone): New vfunc. - (json::object::clone): New decl. - (json::object::clone_as_object): New decl. - (json::array::clone): New decl. - (json::float_number::clone): New decl. - (json::integer_number::clone): New decl. - (json::string::clone): New decl. - (json::literal::clone): New decl. - -2025-07-11 David Malcolm - - * json.cc (string::string): When constructing from pointer and - length, ensure the new buffer is null-terminated. - (selftest::test_strcmp): New. - (selftest::json_cc_tests): Likewise. - -2025-07-11 David Malcolm - - * doc/libgdiagnostics/topics/compatibility.rst - (_LIBGDIAGNOSTICS_ABI_2): Add missing anchor. - * doc/libgdiagnostics/topics/diagnostic-manager.rst - (diagnostic_manager_add_sink_from_spec): Add links to GCC's - documentation of "-fdiagnostics-add-output=". Fix parameter - markup. - (diagnostic_manager_set_analysis_target): Fix parameter markup. - Add link to SARIF spec. - * doc/libgdiagnostics/topics/logical-locations.rst: Markup fix. - * doc/libgdiagnostics/tutorial/02-physical-locations.rst: Clarify - wording of what "the source file" means, and that a range can't - have multiple files. - -2025-07-11 Vladimir N. Makarov - - * lra-constraints.cc (process_address_1): When changing base reg - on a reg of the base class, fall back to reload of whole inner address. - (process_address): Constrain the iteration number. - -2025-07-11 Jakub Jelinek - - PR c++/119064 - * doc/invoke.texi (Wc++26-compat): Document. - -2025-07-11 Richard Sandiford - - PR target/121027 - * config/aarch64/aarch64.cc (aarch64_evpc_sve_tbl): Punt on 2-input - operations that can be handled by vec_perm. - -2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (*eor3qdi4): New - define_insn_and_split. - -2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (*bcaxqdi4): New - define_insn_and_split. - -2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (eor3q4): Use VDQ_I mode - iterator. - -2025-07-11 Kyrylo Tkachov - - * config/aarch64/aarch64-simd.md (bcaxq4): Use VDQ_I mode - iterator. - -2025-07-11 Richard Biener - - PR tree-optimization/121034 - * tree-vect-loop.cc (vectorizable_reduction): Cleanup - reduction chain following code. - -2025-07-11 Jan Hubicka - - * opts.cc (finish_options): Enable debug_nonbind_markers_p for - auto-profile. - * tree-cfg.cc (struct locus_discrim_map): Remove. - (struct locus_discrim_hasher): Remove. - (locus_discrim_hasher::hash): Remove. - (locus_discrim_hasher::equal): Remove. - (first_non_label_nondebug_stmt): Remove. - (build_gimple_cfg): Do not allocate discriminator tables. - (next_discriminator_for_locus): Remove. - (same_line_p): Remove. - (struct discrim_entry): New structure. - (assign_discriminator): Rewrite. - (assign_discriminators): Rewrite. - -2025-07-11 Jan Hubicka - - PR ipa/114790 - * cgraph.cc (cgraph_update_edges_for_call_stmt_node): Resolve devirtualization - if call statement was optimized out or turned to direct call. - -2025-07-11 Jakub Jelinek - Martin Jambor - - PR ipa/121023 - * ipa-fnsummary.cc (compute_fn_summary): Disallow signature changes - on cfun->has_musttail functions. - -2025-07-11 Hu, Lin1 - - PR target/91384 - * config/i386/i386.md: Add new peeophole2 for optimize *negsi_1 - followed by *cmpsi_ccno_1 with APX_F. - -2025-07-11 Richard Biener - - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Use - the LHS of a scalar stmt to determine mode and whether it is FP. - -2025-07-10 Richard Sandiford - - * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): - Guard VF-based costing with !m_costing_for_scalar. - -2025-07-10 Qing Zhao - - * internal-fn.cc (expand_ACCESS_WITH_SIZE): Update comments. - * internal-fn.def (ACCESS_WITH_SIZE): Update comments. - * tree-object-size.cc (access_with_size_object_size): Update comments. - Adjust the arguments per the new design. - -2025-07-10 Qing Zhao - - PR middle-end/121000 - * internal-fn.cc (expand_ACCESS_WITH_SIZE): Update comments. - * internal-fn.def (ACCESS_WITH_SIZE): Update comments. - * tree-object-size.cc (access_with_size_object_size): Update comments. - Get the element_size from the 6th argument directly. - -2025-07-10 Richard Sandiford - - * config/aarch64/aarch64-sve2.md (aarch64_gather_ld1q): Replace with... - (@aarch64_gather_ld1q): ...this, parameterizing based on mode. - * config/aarch64/aarch64-sve-builtins-sve2.cc - (svld1q_gather_impl::expand): Update accordingly. - (svst1q_scatter_impl::expand): Use aarch64_sve_reinterpret - instead of force_lowpart_subreg. - -2025-07-10 Jan Hubicka - - * auto-profile.cc: Include output.h. - (function_instance::set_call_location): Also sanity check - that location is known. - (raw_symbol_name): Two new static functions. - (dump_inline_stack): Use it. - (string_table::get_index_by_decl): Likewise. - (function_instance::get_cgraph_node): Likewise. - (function_instance::get_function_instance_by_decl): Fix typo - in warning; use raw names; fix lineno decoding. - (match_with_target): Add containing funciton parameter; - correctly output function and call location in warning. - (function_instance::lookup_count): Fix warning locations. - (function_instance::match): Fix warning locations; avoid - crash with mismatched callee; do not warn about broken callsites - twice. - (autofdo_source_profile::offline_external_functions): Use - raw_assembler_name. - (walk_block): Use raw_assembler_name. - -2025-07-10 Robin Dapp - - PR target/121014 - * cfgexpand.cc (expand_debug_expr): Assert FLOAT_MODE_P. - * optabs-tree.cc (optab_for_tree_code): Assert FLOAT_TYPE_P. - * tree-vect-loop.cc (vect_get_loop_len): Use EXACT_DIV_EXPR. - -2025-07-10 Robin Dapp - - PR target/118734 - * config/riscv/constraints.md (Wdm): Use tunable for Wdm - constraint. - * config/riscv/riscv-protos.h (emit_avltype_insn): Declare. - (can_be_broadcasted_p): Rename to... - (can_be_broadcast_p): ...this. - * config/riscv/predicates.md: Use renamed function. - (strided_load_broadcast_p): Declare. - * config/riscv/riscv-selftests.cc (run_broadcast_selftests): - Only run broadcast selftest if strided broadcasts are OK. - * config/riscv/riscv-v.cc (emit_avltype_insn): New function. - (sew64_scalar_helper): Only emit a pred_broadcast if the new - tunable says so. - (can_be_broadcasted_p): Rename to... - (can_be_broadcast_p): ...this and use new tunable. - * config/riscv/riscv.cc (struct riscv_tune_param): Add strided - broad tunable. - (strided_load_broadcast_p): Implement. - * config/riscv/vector.md: Use strided_load_broadcast_p () and - work around 64-bit broadcast on rv32 targets. - -2025-07-10 Co-authored-by: Jeff Law - - * config/riscv/riscv.cc (riscv_fusion_pairs): Add new cases. - (riscv_set_is_add): New function. - (riscv_set_is_addi, riscv_set_is_adduw, riscv_set_is_shNadd): Likewise. - (riscv_set_is_shNadduw): Likewise. - (riscv_macro_fusion_pair_p): Add new fusion cases. - -2025-07-10 Richard Biener - - * tree-vect-slp.cc (vect_analyze_slp): Fail for non-canonical - gconds. - -2025-07-10 Richard Biener - - * tree-vect-slp.cc (vect_build_slp_instance): Do not use - SLP_TREE_VECTYPE to determine the conversion back to the - reduction IV. - -2025-07-10 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Avoid - vect_is_simple_use and record a vector type if we come - up with one. - -2025-07-10 Richard Biener - - * tree-vect-stmts.cc (get_load_store_type): Do not use - vect_is_simple_use to fill gather/scatter offset operand - vectype and dt. - -2025-07-10 Richard Biener - - * tree-vect-loop.cc (vect_model_reduction_cost): Get SLP - node instead of stmt_info and use that when recording costs. - -2025-07-10 Kyrylo Tkachov - - PR target/120999 - * config/aarch64/aarch64-sve2.md (*aarch64_sve2_nor): - Adjust movprfx alternative. - -2025-07-10 Richard Sandiford - - * doc/sourcebuild.texi (aarch64_sve2_hw, aarch64_sve2p1_hw): Document. - * config/aarch64/aarch64.cc (aarch64_evpc_hvla): Extend to - BYTES_BIG_ENDIAN. - -2025-07-10 Richard Biener - - * tree-vectorizer.h (vect_analyze_stmt): Remove stmt-info - and need_to_vectorize arguments. - * tree-vect-slp.cc (vect_slp_analyze_node_operations_1): - Adjust. - * tree-vect-stmts.cc (can_vectorize_live_stmts): Remove - stmt_info argument and remove non-SLP path. - (vect_analyze_stmt): Remove stmt_info and need_to_vectorize - argument and prune paths no longer reachable. - (vect_transform_stmt): Adjust. - -2025-07-10 Jakub Jelinek - - * config/i386/x86-tune.def: Change "Tunning the" to "tuning" in - comment and use semicolon instead of dot in comment. - * loop-unroll.cc (decide_unroll_stupid): Comment spelling fix, - tunning -> tuning. - -2025-07-10 Jakub Jelinek - - * tree-vect-loop.cc (scale_profile_for_vect_loop): Comment - spelling fix: bellow -> below. - * ipa-polymorphic-call.cc (record_known_type): Likewise. - * config/i386/x86-tune.def: Likewise. - * config/riscv/vector.md (*vsetvldi_no_side_effects_si_extend): - Likewise. - * tree-scalar-evolution.cc (iv_can_overflow_p): Likewise. - * ipa-devirt.cc (add_type_duplicate): Likewise. - * tree-ssa-loop-niter.cc (maybe_lower_iteration_bound): Likewise. - * gimple-ssa-sccopy.cc: Likewise. - * cgraphunit.cc: Likewise. - * graphite.h (struct poly_dr): Likewise. - * ipa-reference.cc (ignore_edge_p): Likewise. - * tree-ssa-alias.cc (ao_compare::compare_ao_refs): Likewise. - * profile-count.h (profile_probability::probably_reliable_p): - Likewise. - * ipa-inline-transform.cc (inline_call): Likewise. - -2025-07-10 Richard Biener - - * tree-vect-loop.cc (vect_dissolve_slp_only_groups): Remove. - (vect_analyze_loop_2): Do not call it. - -2025-07-10 Richard Biener - - * tree-vect-loop.cc (vect_active_double_reduction_p): Remove. - (vect_analyze_loop_operations): Remove. - (vect_analyze_loop_2): Do not call it. - -2025-07-10 Richard Biener - - * tree-vect-loop.cc (vect_determine_vf_for_stmt_1): Rename - to ... - (vect_determine_vectype_for_stmt_1): ... this and only set - STMT_VINFO_VECTYPE. Fail for single-element vector types. - (vect_determine_vf_for_stmt): Rename to ... - (vect_determine_vectype_for_stmt): ... this and only set - STMT_VINFO_VECTYPE. Fail for single-element vector types. - (vect_determine_vectorization_factor): Rename to ... - (vect_set_stmts_vectype): ... this and only set STMT_VINFO_VECTYPE. - (vect_update_vf_for_slp): Remove. - (vect_analyze_loop_operations): Remove walk over stmts. - (vect_analyze_loop_2): Call vect_set_stmts_vectype instead of - vect_determine_vectorization_factor. Set vectorization factor - from LOOP_VINFO_SLP_UNROLLING_FACTOR. Fail if vect_detect_hybrid_slp - detects hybrid stmts or when vect_make_slp_decision finds - nothing to SLP. - * tree-vect-slp.cc (vect_detect_hybrid_slp): Move check - whether we have any hybrid stmts here from vect_update_vf_for_slp - * tree-vect-stmts.cc (vect_analyze_stmt): Remove loop over - stmts. - * tree-vectorizer.h (vect_detect_hybrid_slp): Update. - -2025-07-09 Richard Sandiford - - * config/aarch64/aarch64.cc (aarch64_simd_valid_imm): Account - for FLOAT_WORDS_BIG_ENDIAN when building a floating-point value. - -2025-07-09 Jan Hubicka - - * auto-profile.cc (afdo_adjust_guessed_profile): Add forgotten - if (dump_file) guard. - -2025-07-09 Richard Sandiford - - * config/aarch64/aarch64.cc (aarch64_sve_index_series_p): New - function, split out from... - (aarch64_simd_valid_imm): ...here. Account for the different - SVE and Advanced SIMD element orders on big-endian targets. - Check each vector in a structure mode. - -2025-07-09 Richard Sandiford - - * read-rtl-function.cc (function_reader::read_rtx_operand_r): Use - hard_regno_nregs to work out REG_NREGS for hard registers. - -2025-07-09 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add - new case SS_MINUS. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op ss_minus. - -2025-07-09 Richard Sandiford - - * ext-dce.cc (ext_dce_process_uses): Apply is_constant directly - to the subreg_lsb. - -2025-07-09 Jan Dubiec - - PR target/109286 - * config.gcc: Include elfos.h before h8300/h8300.h. - * config/h8300/h8300.h (INIT_SECTION_ASM_OP): Override - default version from elfos.h. - (FINI_SECTION_ASM_OP): Ditto. - (ASM_DECLARE_FUNCTION_NAME): Ditto. - (ASM_GENERATE_INTERNAL_LABEL): Macro removed because it was - being overridden in elfos.h anyway. - (ASM_OUTPUT_SKIP): Ditto. - -2025-07-09 Icen Zeyada - - PR tree-optimization/119196 - * match.pd: Allow scalar optimizations with bitwise AND/OR/XOR to apply to vectors. - -2025-07-09 Icen Zeyada - - PR tree-optimization/119196 - * match.pd: Merge multiple vec_cond_expr in a single one for - bit_and, bit_ior and bit_xor. - -2025-07-09 Jeff Law - - PR target/120642 - * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Do not do - constant AVL propagation for xtheadvector. - -2025-07-09 Richard Biener - - * tree-vect-loop.cc (vectorizable_reduction): Get the - output vector type from slp_for_stmt_info. - * tree-vect-stmts.cc (vect_analyze_stmt): Bail out earlier - for PURE_SLP_STMT when doing loop stmt analysis. - -2025-07-09 Jan Hubicka - - * auto-profile.cc (struct scale): New structure. - (add_scale): Also record weights. - (afdo_adjust_guessed_profile): Compute robust average - of scales and cap by max count in function. - -2025-07-09 Jan Hubicka - - * tree-inline.cc (initialize_cfun): Use num and den for scaling. - -2025-07-09 Jan Hubicka - - * auto-profile.cc (get_original_name): Fix loop walking the - suffixes. - -2025-07-09 Christophe Lyon - - * config/arm/arm_neon.h: Remove useless push/pop pragmas. - -2025-07-09 Tamar Christina - - PR tree-optimization/120922 - * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Support range - for partial vectors. - -2025-07-09 Tamar Christina - - PR tree-optimization/120922 - * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Don't set range - for partial vectors. - -2025-07-08 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xtensa_b4const_or_zero): - Remove. - (xtensa_b4const): Add a case where the value is 0, and rename - to xtensa_b4const_or_zero. - (xtensa_rtx_costs): Fix to also consider the result of - xtensa_b4constu(). - -2025-07-08 Stefan Schulze Frielinghaus - - * config/s390/s390.md (stack_protect_get_tpsi): New insn. - (stack_protect_get_tpdi): New insn. - (stack_protect_set): Use new insn. - (stack_protect_test): Use new insn. - -2025-07-08 Robin Dapp - - PR target/120461 - * config/riscv/riscv-v.cc (emit_vlmax_insn_lra): Do not emit - vsetivli for XTHeadVector. - -2025-07-08 Robin Dapp - - PR target/113829 - * config/riscv/riscv-vector-builtins.cc (registered_function::overloaded_hash): - Skip non-type arguments. - -2025-07-08 Andreas Schwab - - PR target/120995 - * config/riscv/sync.md (zacas_atomic_cas_value_strong): - Allow op3 to be zero. - -2025-07-08 Richard Biener - - * config/i386/x86-tune.def (X86_TUNE_AVX512_MASKED_EPILOGUES): - New tunable, default on for m_ZNVER4 and m_ZNVER5. - * config/i386/i386.cc (ix86_vector_costs::finish_cost): With - X86_TUNE_AVX512_MASKED_EPILOGUES and when the main loop - had a vectorization factor > 2 use a masked epilogue when - possible and when not obviously problematic. - -2025-07-08 Richard Biener - - * tree-vectorizer.h (vector_costs::suggested_epilogue_mode): - Add masked output parameter and return m_masked_epilogue. - (vector_costs::m_masked_epilogue): New tristate flag. - (vector_costs::vector_costs): Initialize m_masked_epilogue. - * tree-vect-loop.cc (vect_analyze_loop_1): Pass in masked - flag to optionally initialize can_use_partial_vectors_p. - (vect_analyze_loop): For epilogues also get whether to use - a masked epilogue for this loop from the target and use - that for the first epilogue mode we try. - -2025-07-08 Richard Biener - - PR tree-optimization/120358 - * tree-ssa-structalias.cc (get_constraint_for_1): Adjust - pruning of sub-variables according to the imprecise - known start offset. - -2025-07-08 Alexandre Oliva - - * config/vxworks-dummy.h (TARGET_VXWORKS_VAROFF): New. - (TARGET_VXWORKS_GOTTPIC): New. - * config/vxworks.h (TARGET_VXWORKS_VAROFF): Override. - (TARGET_VXWORKS_GOTTPIC): Likewise. - * config/i386/i386.cc (output_set_got): Disable VxWorks6 GOT - sequence on VxWorks7. - (legitimize_pic_address): Accept relative addressing of - labels on VxWorks7. - (ix86_delegitimize_address_1): Likewise. - (ix86_output_addr_diff_elt): Likewise. - * config/i386/i386.md (tablejump): Likewise. - (set_got, set_got_labelled): Set no-red-zone flag on VxWorks7. - * config/i386/predicates.md (gotoff_operand): Test - TARGET_VXWORKS_VAROFF. - -2025-07-08 Alexandre Oliva - - * config.gcc (vxworks-dummy.h): Add to aarch64-*-* as well. - -2025-07-07 Qing Zhao - - Revert: - 2025-07-07 Qing Zhao - - * doc/extend.texi: Extend counted_by attribute to pointer fields in - structures. Add one more requirement to pointers with counted_by - attribute. - -2025-07-07 Qing Zhao - - Revert: - 2025-07-01 Qing Zhao - - * tree-object-size.cc (access_with_size_object_size): Update comments - for pointers with .ACCESS_WITH_SIZE. - (collect_object_sizes_for): Propagate size info through GIMPLE_ASSIGN - for pointers with .ACCESS_WITH_SIZE. - -2025-07-07 Martin Jambor - - * value-range.h (class irange): Mark member function verify_range - with override. - (class prange): Mark member function verify_range with final override. - (class frange): Mark member function verify_range with override. - -2025-07-07 H.J. Lu - - PR target/120888 - * config/xtensa/xtensa.cc (xtensa_promote_function_mode): New. - (TARGET_PROMOTE_FUNCTION_MODE): Use. - (TARGET_PROMOTE_PROTOTYPES): Removed. - -2025-07-07 Juergen Christ - - * config/s390/s390.md: Update UNSPECs - * config/s390/vector.md (fmax3): New expander. - (fmin3): New expander. - * config/s390/vx-builtins.md (*fmin): New insn. - (vfmin): Redefined to use new insn. - (*fmax): New insn. - (vfmax): Redefined to use new insn. - -2025-07-07 Jason Merrill - - PR c++/120917 - * doc/invoke.texi: Add -Wno-abbreviated-auto-in-template-arg. - -2025-07-07 Kyrylo Tkachov - - * config/aarch64/aarch64.md (popcountti2): Add TARGET_SVE path. - -2025-07-07 Richard Biener - - PR tree-optimization/120817 - * tree-ssa-dse.cc (initialize_ao_ref_for_dse): Use - ao_ref_init_from_ptr_and_range with unknown size for - .MASK_STORE and .MASK_LEN_STORE. - -2025-07-07 Pan Li - - * config/riscv/riscv-protos.h (riscv_expand_usmul): Add new func - decl. - * config/riscv/riscv.cc (riscv_expand_xmode_usmul): Add new func - to expand Xmode SAT_MUL. - (riscv_expand_non_xmode_usmul): Ditto but for non-Xmode. - (riscv_expand_usmul): Add new func to implment SAT_MUL. - * config/riscv/riscv.md (usmul3): Add new pattern to match - standard name usmul. - -2025-07-07 Pan Li - - * match.pd: Add new match pattern for unsigned SAT_MUL. - * tree-ssa-math-opts.cc (gimple_unsigned_integer_sat_mul): - new decl for pattern match func. - (match_unsigned_saturation_mul): Add new func to match unsigned - SAT_MUL. - (math_opts_dom_walker::after_dom_children): Try to match - unsigned SAT_MUL on NOP. - -2025-07-07 Pan Li - - * internal-fn.cc (commutative_binary_fn_p): Add new case - for SAT_MUL. - * internal-fn.def (SAT_MUL): Add new IFN_SAT_MUL. - * optabs.def (OPTAB_NL): Remove fixed point limitation. - -2025-07-07 Juergen Christ - - * config/s390/s390.md: Removed unused unspecs. - * config/s390/vector.md (avg3_ceil): New expander. - (uavg3_ceil): New expander. - (smul3_highpart): New expander. - (umul3_highpart): New expander. - * config/s390/vx-builtins.md (vec_umulh): Remove unspec. - (vec_smulh): Remove unspec. - -2025-07-07 Spencer Abson - - * config/aarch64/aarch64-sve.md (vec_cmp): Extend - to handle partial FP modes. - (@aarch64_pred_fcm): Likewise. - (@aarch64_pred_fcmuo): Likewise. - (*one_cmpl3): Rename to... - (@aarch64_pred_one_cmpl_z): ... this. - * config/aarch64/aarch64.cc (aarch64_emit_sve_fp_cond): Allow the - target and governing predicates to have different modes. - (aarch64_emit_sve_or_fp_conds): Likewise. - (aarch64_emit_sve_invert_fp_cond): Likewise. - (aarch64_expand_sve_vec_cmp_float): Likewise. - -2025-07-07 Richard Sandiford - - PR tree-optimization/118891 - * tree-vect-stmts.cc (supportable_widening_operation): Swap the - hi and lo internal functions on big-endian targets. - -2025-07-07 Richard Sandiford - - * ext-dce.cc (ext_dce_process_uses): Apply is_constant directly - to the subreg_lsb. - -2025-07-07 Richard Sandiford - - * config/aarch64/aarch64-sve.md (@aarch64_sve_set_neonq_): - Use %Z instead of lowpart_subreg. Tweak formatting. - -2025-07-07 Richard Sandiford - - PR target/118891 - * config/aarch64/aarch64.cc (aarch64_expand_vector_init): Fix the - ZIP1 operand order for big-endian targets. - -2025-07-07 Jan Hubicka - - * tree-ssa-live.cc (dump_scope_block): Print discriminators - of inlined functions. - -2025-07-07 H.J. Lu - - PR target/120670 - PR target/120683 - * config/i386/i386-expand.cc (expand_set_or_cpymem_via_loop): - Don't generate the loop if the loop count is 1. - (expand_cpymem_epilogue): Use move_by_pieces. - (setmem_epilogue_gen_val): New. - (expand_setmem_epilogue): Use store_by_pieces. - (expand_small_cpymem_or_setmem): Choose cpymem mode from MOVE_MAX. - For memset with vector and the size is smaller than the vector - size, first try the narrower vector, otherwise, use the scalar - value. - (promote_duplicated_reg): Duplicate the scalar value for vector. - (ix86_expand_set_or_cpymem): Always expand vector-version of - memset for vector_loop. Use misaligned prologue if alignment - isn't needed and destination isn't aligned. Always initialize - vec_promoted_val from the promoted scalar value for vector_loop. - -2025-07-07 Andrew Pinski - - PR middle-end/120709 - * builtins.cc (expand_builtin_crc_table_based): Error out - instead of asserting the 3rd argument is an integer constant. - * internal-fn.cc (expand_crc_optab_fn): Likewise. - * doc/extend.texi (crc): Document requirement of the poly argument - being a constant. - -2025-07-06 Georg-Johann Lay - - * config/avr/avr-mcus.def: -mmcu= takes lower case MCU names. - * doc/avr-mmcu.texi: Rebuild. - -2025-07-06 Georg-Johann Lay - - * config/avr/avr-mcus.def (avr32da28S, avr32da32S, avr32da48S) - (avr64da28S, avr64da32S, avr64da48S avr64da64S) - (avr128da28S, avr128da32S, avr128da48S, avr128da64S): Add devices. - * doc/avr-mmcu.texi: Rebuild. - -2025-07-06 Andrew Pinski - - PR tree-optimization/120951 - * tree-call-cdce.cc (use_internal_fn): For non-call exceptions - with EQ_EXPR can throw for floating point types, then create - the EQ_EXPR seperately. - -2025-07-06 Andrew Pinski - - PR middle-end/120921 - * tree-cfg.cc (verify_gimple_assign_single): Reject constant and address expression LHS. - For non-empty vector constructors, make sure the LHS is an is_gimple_reg. - -2025-07-06 Jan Hubicka - - * auto-profile.cc - (autofdo_source_profile::read): Scale cutoff. - (read_autofdo_file): Initialize cutoff - * coverage.cc (read_counts_file): Initialize cutoff to 1. - * gcov-io.h (struct gcov_summary): Add cutoff field. - * ipa-inline.cc (inline_small_functions): mac_count can be non-zero - also with auto_profile. - * lto-cgraph.cc (output_profile_summary): Write cutoff - and sum_max. - (input_profile_summary): Read cutoff and sum max. - (merge_profile_summaries): Initialize and scale global cutoffs - and sum max. - * profile-count.cc: Include profile.h - (profile_count::force_nonzero): move here from ...; use cutoff. - * profile-count.h: (profile_count::force_nonzero): ... here. - -2025-07-06 Jan Hubicka - - * profile-count.cc (profile_count::operator*): fix overflow check. - -2025-07-05 Alexandre Oliva - - * config/rs6000/vxworks.h (SUBTARGET_DRIVER_SELF_SPECS): - Redefine to select word size matching TARGET_VXWORKS64. - (TARGET_VXWORKS64): Redefine in terms of TARGET_64BIT. - -2025-07-04 Vineet Gupta - - PR target/118241 - * config/riscv/riscv.md (prefetch): Add alternative "r". - -2025-07-04 Vineet Gupta - - * config/riscv/predicates.md (prefetch_operand): mack 5 bits. - -2025-07-04 Raphael Moreira Zinsly - - * config/sh/predicates.md - (treg_set_expr_not_const01): call sh_recog_treg_set_expr_not_01 - * config/sh/sh-protos.h - (sh_recog_treg_set_expr_not_01): New function - * config/sh/sh.cc (sh_recog_treg_set_expr_not_01): Likewise - -2025-07-04 Andrew Pinski - - PR c/118948 - * fold-const.cc (tree_expr_nonnegative_warnv_p): Use - error_operand_p instead of checking for error_mark_node directly. - -2025-07-04 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case SS_PLUS. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op ss_plus. - -2025-07-04 Richard Biener - - PR tree-optimization/120944 - * tree-ssa-sccvn.cc (vn_reference_lookup_3): Gate optimizations - invalid when volatile is involved. - -2025-07-04 Jan Hubicka - - * common.opt: Add period. - * common.opt.urls: Regenerate. - -2025-07-04 Richard Biener - - PR tree-optimization/120927 - * tree-vect-data-refs.cc (vect_compute_data_ref_alignment): - Do not force a DRs base alignment when analyzing an - epilog loop. Check whether the step preserves alignment - for all VFs possibly involved sofar. - -2025-07-04 Xi Ruoyao - - * config/loongarch/loongarch.md (crc_combine): Avoid nested - subreg. - -2025-07-04 Shreya Munnangi - - * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Add basic - instrumentation to all cases where fusion is detected. Fix - minor formatting goofs found in the process. - -2025-07-04 panciyan - - * match.pd: Add signed scalar SAT_ADD IMM form2 matching. - -2025-07-03 Juergen Christ - - * config/s390/s390.cc (expand_perm_with_merge): Add size change cases. - (expand_perm_with_pack): New function. - (vectorize_vec_perm_const_1): Wire up new function. - -2025-07-03 Co-authored-by: Daniel Barboza - Co-authored-by: Shreya Munnangi - - PR target/118886 - * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Check - for fusion being disabled earlier. If PREV is already fused, - then it can't be fused again. Be more selective about fusing - when the destination registers do not match. Don't fuse into - loads that aren't scalar integer modes. Revamp store pair - commit support. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (aarch64_cbz1): Move - above rules for CBB/CBH/CB. - (*aarch64_tbz1): Likewise. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64-protos.h (aarch64_cb_rhs): New function. - * config/aarch64/aarch64.cc (aarch64_cb_rhs): Likewise. - * config/aarch64/aarch64.md (cbranch4): Rename to ... - (cbranch4): ...here, and emit CMPBR if possible. - (cbranch4): New expand rule. - (aarch64_cb): New insn rule. - (aarch64_cb): Likewise. - * config/aarch64/constraints.md (Uc0): New constraint. - (Uc1): Likewise. - (Uc2): Likewise. - * config/aarch64/iterators.md (cmpbr_suffix): New mode attr. - (INT_CMP): New code iterator. - (cmpbr_imm_constraint): New code attr. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64-option-extensions.def (cmpbr): New - option. - * config/aarch64/aarch64.h (TARGET_CMPBR): New macro. - * doc/invoke.texi (cmpbr): New option. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (far_branch): Replace 0/1 with - no/yes. - (aarch64_bcond): Handle rename. - (aarch64_cbz1): Likewise. - (*aarch64_tbz1): Likewise. - (@aarch64_tbz): Likewise. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (BRANCH_LEN_P_1MiB): New constant. - (BRANCH_LEN_N_1MiB): Likewise. - (BRANCH_LEN_P_32KiB): Likewise. - (BRANCH_LEN_N_32KiB): Likewise. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (condjump): Rename to ... - (aarch64_bcond): ...here. - (*compare_condjump): Rename to ... - (*aarch64_bcond_wide_imm): ...here. - (aarch64_cb): Rename to ... - (aarch64_cbz1): ...here. - (*cb1): Rename to ... - (*aarch64_tbz1): ...here. - (@aarch64_tb): Rename to ... - (@aarch64_tbz): ...here. - (restore_stack_nonlocal): Handle rename. - (stack_protect_combined_test): Likewise. - * config/aarch64/aarch64-simd.md (cbranch4): Likewise. - * config/aarch64/aarch64-sme.md (aarch64_restore_za): Likewise. - * config/aarch64/aarch64.cc (aarch64_gen_test_and_branch): Likewise. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (cbranch4): Reformat. - (cbranchcc4): Likewise. - (condjump): Likewise. - (*compare_condjump): Likewise. - (aarch64_cb1): Likewise. - (*cb1): Likewise. - (tbranch_3): Likewise. - (@aarch64_tb): Likewise. - -2025-07-03 Karl Meakin - - * config/aarch64/aarch64.md (condjump): Move. - (*compare_condjump): Likewise. - (aarch64_cb1): Likewise. - (*cb1): Likewise. - (tbranch_3): Likewise. - (@aarch64_tb): Likewise. - -2025-07-03 Siddhesh Poyarekar - - PR tree-optimization/120780 - * tree-object-size.cc (inner_at_offset, - get_wholesize_for_memref): New functions. - (addr_object_size): Call get_wholesize_for_memref. - -2025-07-03 H.J. Lu - - PR target/120936 - * config/i386/i386.cc (x86_print_call_or_nop): Add a label - argument and use it to print label. - (x86_function_profiler): Emit label only when __mcount_loc - section is used. - -2025-07-03 Jan Hubicka - - * auto-profile.cc (get_combined_location): Handle negative - offsets; output better diagnostics. - (get_relative_location_for_locus): Reutrn -1 for unknown location. - (function_instance::get_cgraph_node): New member function. - (match_with_target): New function. - (dump_stmt): New function. - (function_instance::lookup_count): New function. - (mark_expr_locations): New function. - (function_instance::match): New function. - (autofdo_source_profile::offline_external_functions): Do - not repeat renaming; manage two worklists and do matching. - (autofdo_source_profile::offline_unrealized_inlines): Simplify. - (afdo_set_bb_count): do not look for lost discriminators. - (auto_profile): Do not ICE when profile reading failed. - * common.opt (Wauto-profile): New warning flag - * doc/invoke.texi (-Wauto-profile): Document. - -2025-07-03 Jan Hubicka - - * ipa-fnsummary.cc (analyze_function_body): For loop - heuristics use header count instead of preheader count. - -2025-07-03 Jan Hubicka - - * ipa-cp.cc (update_profiling_info): Watch for division by zero. - -2025-07-03 Alex Coplan - - * config/aarch64/aarch64-sve.md - (vec_load_lanes): Expand else operand in - subvector mode, as per optab documentation. - (vec_mask_load_lanes): Add missing mode for - operand 3. - * config/aarch64/predicates.md (aarch64_maskload_else_operand): - Remove const_int. - -2025-07-03 Alex Coplan - - * doc/md.texi (Standard Names): Clarify mode of else operand for - vec_mask_load_lanesmn optab. - -2025-07-03 Jan Hubicka - - * ipa-cp.cc (cs_interesting_for_ipcp_p): Handle - correctly GLOBAL0 afdo counts. - (ipcp_cloning_candidate_p): Do not rule out nodes - !node->optimize_for_size_p (). - (good_cloning_opportunity_p): Handle afdo counts - as non-zero. - -2025-07-03 Jan Hubicka - - * ipa-cp.cc (hint_time_bonus): Return sreal and avoid - conversions to integer. - (good_cloning_opportunity_p): Avoid sreal to integer - conversions - (perform_estimation_of_a_value): Update. - -2025-07-03 Jan Hubicka - - * auto-profile.cc (afdo_hot_bb_threshod): New global - variable. - (maybe_hot_afdo_count_p): New function. - (autofdo_source_profile::read): Do not set up dump file; - set afdo_hot_bb_threshod. - (afdo_annotate_cfg): Handle partial training. - (afdo_callsite_hot_enough_for_early_inline): - Use maybe_hot_afdo_count_p. - (auto_profile_offline::execute): Read autofdo file. - * auto-profile.h (maybe_hot_afdo_count_p): Declare. - (afdo_hot_bb_threshold): Declare. - * coverage.cc (read_counts_file): Also set gcov_profile_info. - (coverage_init): Do not read autofdo file. - * opts.cc (enable_fdo_optimizations): Add autofdo parameter; - do not set flag_branch_probabilities and flag_profile_values - with it. - (common_handle_option): Update. - * passes.cc (finish_optimization_passes): Do not end branch - prob here. - (pass_manager::dump_profile_report): Also mark change after - autofdo pass. - * profile.cc: Include auto-profile.h - (gcov_profile_info): New global variable. - (struct afdo_fdo_record): New struture. - (compute_branch_probabilities): Record afdo profile. - (end_branch_prob): Dump afdo/fdo profile comparsion. - * profile.h (gcov_profile_info): Declarre. - * tree-profile.cc (tree_profiling): Call end_branch_prob - (pass_ipa_tree_profile::gate): Also enable with autoFDO - -2025-07-03 Richard Biener - - PR tree-optimization/118669 - * tree-vect-stmts.cc (vectorizable_load): Emit loads - with proper (element) alignment. - (vectorizable_store): Likewise. - -2025-07-03 H.J. Lu - - PR target/120908 - * config/i386/i386.cc (legitimize_tls_address): Pass RDI to - gen_tls_local_dynamic_64. - * config/i386/i386.md (*tls_global_dynamic_64_largepic): Add - RDI clobber and use it to generate LEA. - (*tls_local_dynamic_64_): Likewise. - (*tls_local_dynamic_base_64_largepic): Likewise. - (@tls_local_dynamic_64_): Add a clobber. - -2025-07-02 H.J. Lu - - PR target/120908 - * config/i386/i386.cc (legitimize_tls_address): Pass RDI to - gen_tls_global_dynamic_64. - * config/i386/i386.md (*tls_global_dynamic_64_): Add RDI - clobber and use it to generate LEA. - (@tls_global_dynamic_64_): Add a clobber. - -2025-07-02 Alexey Merzlyakov - - PR target/120356 - * config/riscv/riscv-v.cc - (expand_const_vector_interleaved_stepped_npatterns): - Fix ASHIFT to LSHIFTRT insn. - -2025-07-02 Richard Biener - - PR tree-optimization/120927 - * tree-vect-loop.cc (vect_analyze_loop): Stop querying - further epilogues after one with partial vectors. - -2025-07-02 Haochen Jiang - - * config/i386/driver-i386.cc (host_detect_local_cpu): Change - to AMX-FP8 for Diamond Rapids. - -2025-07-01 Qing Zhao - - * tree-object-size.cc (access_with_size_object_size): Update comments - for pointers with .ACCESS_WITH_SIZE. - (collect_object_sizes_for): Propagate size info through GIMPLE_ASSIGN - for pointers with .ACCESS_WITH_SIZE. - -2025-07-01 Qing Zhao - - * doc/extend.texi: Extend counted_by attribute to pointer fields in - structures. Add one more requirement to pointers with counted_by - attribute. - -2025-07-01 Jakub Jelinek - - PR c++/120471 - * tree.h (address_invariant_p): New function. - * tree.cc (address_invariant_p): New function. - (tree_invariant_p_1): Use it for ADDR_EXPR handling. Formatting - tweak. - -2025-07-01 Remi Machet - - * config/aarch64/aarch64-simd.md (*shrn_to_subhn_): Add pattern - converting mvn+shrn into mvni+subhn. - -2025-07-01 Jakub Jelinek - - PR middle-end/120608 - * passes.def (pass_musttail): Move before pass_sanopt. - * tree-tailcall.cc (empty_eh_cleanup): Handle GIMPLE_RESX - which doesn't throw externally through recursion on single - eh edge (if any and cnt still allows that). - (find_tail_calls): Add ESUCC, IGNORED_EDGES and MUST_SEE_BBS - arguments. Handle GIMPLE_CONDs for non-simplified cleanups with - finally_tmp temporaries both on backward and forward walks, adjust - recursive call. - (tree_optimize_tail_calls_1): Adjust find_tail_calls callers. - -2025-07-01 Ezra Sitorus - - * config/aarch64/aarch64-sys-regs.def: Copy from Binutils. - -2025-07-01 H.J. Lu - - PR debug/120902 - * print-tree.cc (debug with const tree_node *): Call debug_tree - instead of debug. - -2025-07-01 Yuao Ma - - * fold-const-call.cc (fold_const_call_ss): Constant fold for - single arg pi-based trigonometric builtins. - (fold_const_call_sss): Constant fold for double arg pi-based - trigonometric builtins. - * fold-const.cc (negate_mathfn_p): asinpi/atanpi is odd func. - (tree_call_nonnegative_warnv_p): acospi always non-neg, - asinpi/atanpi non-neg iff arg non-neg. - * tree-call-cdce.cc (can_test_argument_range): Add acospi/asinpi. - (edom_only_function): Add acospi/asinpi/cospi/sinpi. - (get_no_error_domain): Add acospi/asinpi. - -2025-06-30 Jeff Law - - PR rtl-optimization/120242 - PR rtl-optimization/120627 - PR rtl-optimization/120736 - PR rtl-optimization/120813 - * ext-dce.cc (ext_dce_process_uses): Remove some cases where we - unnecessarily expanded live sets for promoted subregs. - (expand_changed_pseudos): New function. - (reset_subreg_promoted_p): Use it. - -2025-06-30 Alexey Merzlyakov - - PR target/120714 - * config/riscv/riscv.cc (riscv_allocate_and_probe_stack_space): - Fix SP-addresses in REG_CFA_DEF_CFA notes for stack-clash case. - -2025-06-30 David Malcolm - - * diagnostic-color.cc: Use nullptr rather than NULL. - * diagnostic-format-sarif.cc: Likewise. - * diagnostic-format-text.cc: Likewise. - * diagnostic-macro-unwinding.cc: Likewise. - * diagnostic-path-output.cc: Likewise. - * diagnostic-path.cc: Likewise. - * diagnostic-show-locus.cc: Likewise. - * diagnostic-spec.cc: Likewise. - * diagnostic.cc: Likewise. - * lazy-diagnostic-path.cc: Likewise. - * simple-diagnostic-path.cc: Likewise. - * tree-diagnostic-client-data-hooks.cc: Likewise. - -2025-06-30 David Malcolm - - * diagnostic-format-sarif.cc - (sarif_builder::maybe_make_kinds_array): Convert - diagnostic_event::meaning enums to enum class. - * diagnostic-path-output.cc (path_label::get_text): Likewise. - * diagnostic-path.cc - (diagnostic_event::meaning::maybe_get_verb_str): Likewise. - (diagnostic_event::meaning::maybe_get_noun_str): Likewise. - (diagnostic_event::meaning::maybe_get_property_str): Likewise. - * diagnostic-path.h (diagnostic_event::verb): Likewise. - (diagnostic_event::noun): Likewise. - (diagnostic_event::property): Likewise. - (diagnostic_event::meaning): Likewise. - -2025-06-30 David Malcolm - - * Makefile.in (OBJS-libcommon): Drop diagnostic-format-json.o. - * common.opt (fdiagnostics-format=): Drop - "json|json-stderr|json-file". - (diagnostics_output_format): Drop values "json", "json-stderr", - and "json-file". - * diagnostic-format-json.cc: Delete file. - * diagnostic-format.h - (diagnostic_output_format_init_json_stderr): Delete. - (diagnostic_output_format_init_json_file): Delete. - * diagnostic.cc (diagnostic_output_format_init): Delete cases for - DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR and - DIAGNOSTICS_OUTPUT_FORMAT_JSON_FILE. - * diagnostic.h (DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR): Delete. - (DIAGNOSTICS_OUTPUT_FORMAT_JSON_FILE): Delete. - * doc/invoke.texi: Remove references to json output format. - * doc/ux.texi: Likewise. - * selftest-run-tests.cc (selftest::run_tests): Drop call to - deleted selftest::diagnostic_format_json_cc_tests. - * selftest.h (selftest::diagnostic_format_json_cc_tests): Delete. - -2025-06-30 Mark Wielaard - - * common.opt.urls: Regenerate. - -2025-06-30 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add - new case US_MINUS. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op us_minus. - -2025-06-30 Peter Bergner - - PR target/109116 - * config/rs6000/mma.md (unspec): Delete UNSPEC_MMA_EXTRACT. - (vsx_disassemble_pair): Expand into a vector register sized subreg. - (mma_disassemble_acc): Likewise. - (*vsx_disassemble_pair): Delete. - (*mma_disassemble_acc): Likewise. - -2025-06-30 Kito Cheng - - * config/riscv/sifive-7.md: Add primary vector pipeline model - for SiFive 7 series. - -2025-06-30 Kito Cheng - - PR target/120659 - * config/riscv/sifive-7.md: Add B extension, fp16 and missing - scalar instruction type for sifive-7 pipeline model. - -2025-06-30 Richard Biener - - * tree-vect-slp.cc (vect_build_slp_2): Handle ternary - and call operators when swapping operands. - -2025-06-30 Paul-Antoine Arras - - PR target/119100 - * config/riscv/autovec-opt.md (*vfnmsub_,*vfnmadd_): Handle - both add and acc variants. - * config/riscv/vector.md (*pred_mul_neg__scalar_undef): New - pattern. - -2025-06-30 Kyrylo Tkachov - - * config/aarch64/aarch64-cores.def (gb10): New entry. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi (AArch64 Options): Document the above. - -2025-06-30 Jakub Jelinek - - PR c/120520 - PR c/117023 - * builtin-attrs.def (DEF_LIST_INT_INT_INT): Define it and - use for 1,2,3. - (ATTR_NONNULL_IF123_LIST): New DEF_ATTR_TREE_LIST. - (ATTR_NONNULL_4_IF123_LIST): Likewise. - * builtins.def (BUILT_IN_FWRITE): Use ATTR_NONNULL_4_IF123_LIST - instead of ATTR_NONNULL_LIST. - (BUILT_IN_FWRITE_UNLOCKED): Likewise. - * gimple.h (infer_nonnull_range_by_attribute): Add another optional - tree * argument defaulted to NULL. - * gimple.cc (infer_nonnull_range_by_attribute): Add OP3 argument, - handle 3 argument nonnull_if_nonzero attribute. - * builtins.cc (validate_arglist): Handle 3 argument nonnull_if_nonzero - attribute. - * tree-ssa-ccp.cc (pass_post_ipa_warn::execute): Likewise. - * ubsan.cc (instrument_nonnull_arg): Adjust - infer_nonnull_range_by_attribute caller, handle 3 argument - nonnull_if_nonzero attribute. - * gimple-range-infer.cc (gimple_infer_range::gimple_infer_range): - Handle 3 argument nonnull_if_nonzero attribute. - * doc/extend.texi (nonnull_if_nonzero): Document 3 argument version - of the attribute. - -2025-06-30 Richard Sandiford - - PR rtl-optimization/120733 - * lra-eliminations.cc (move_plus_up): Check whether lowpart_subreg - returns null. - -2025-06-30 Jan Hubicka - - * auto-profile.cc (autofdo_source_profile::offline_external_functions): - Add missing newline in dump. - (afdo_propagate_edge): If annotated BB or edge has too small count - bump it up to mitigate profile imprecisions caused by vectorizer. - (afdo_propagate): Increase number of iteraitons and fix dump - -2025-06-30 Jan Hubicka - - * auto-profile.cc (struct decl_lineno): Turn to structure; add - location. - (dump_inline_stack): Update. - (get_inline_stack): Update. - (get_relative_location_for_locus): Fixup formating. - (function_instance::get_function_instance_by_decl): Add - LOCATION parameter; improve dumping. - (autofdo_source_profile::get_callsite_total_count): Improve dumping; - update. - (walk_block): Update. - (autofdo_source_profile::offline_unrealized_inlines): Update. - (autofdo_source_profile::get_count_info): Update. - -2025-06-30 H.J. Lu - - PR target/120840 - * config/i386/i386-expand.cc (ix86_expand_call): Don't mark - hard frame pointer as clobber. - * config/i386/i386-options.cc (ix86_set_func_type): Use - TYPE_NO_CALLEE_SAVED_REGISTERS instead of - TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. - * config/i386/i386.cc (ix86_function_ok_for_sibcall): Remove the - TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP check. - (ix86_save_reg): Merge TYPE_NO_CALLEE_SAVED_REGISTERS and - TYPE_PRESERVE_NONE with TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. - * config/i386/i386.h (call_saved_registers_type): Remove - TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. - * doc/extend.texi: Update no_callee_saved_registers documentation. - -2025-06-30 Jin Ma - - * config/riscv/riscv-vsetvl.cc (bitmap_union_of_preds_with_entry): - Refactor. - -2025-06-30 Kito Cheng - - * config/riscv/pipeline-checker: New file. - -2025-06-28 H.J. Lu - - PR debug/120849 - * print-tree.cc (debug): New. - * print-tree.h (debug): Likewise. - -2025-06-28 Georg-Johann Lay - - PR target/120856 - * config/avr/avr.cc (avr_hard_regno_mode_ok) [-mno-lra]: Deny - hard regs >= 4 bytes that overlap Y. - -2025-06-28 Jan Hubicka - Kugan Vivekanandarajah - - * auto-profile.cc (get_original_name): Only strip suffixes introduced - after auto-fdo annotation. - (string_table::get_index_by_decl): Simplify. - (string_table::add_name): New member function. - (string_table::read): Micro-optimize allocation. - (function_instance::get_function_instance_by_decl): Dump reasons - for failure; try to compensate lost discriminators. - (function_instance::merge): Simplify sanity check; do not check - for realized flag; fix merging of targets. - (function_instance::offline_if_in_set): Simplify. - (function_instance::dump): Sanity check that names are consistent. - (autofdo_source_profile::offline_external_functions): Also handle - stripping suffixes. - (walk_block): Move up in source. - (autofdo_source_profile::offline_unrealized_inlines): Also compute - realized functions. - (autofdo_source_profile::get_function_instance_by_name_index): Simplify. - (autofdo_source_profile::add_function_instance): Simplify. - (autofdo_source_profile::read): Do not strip suffxies; error on duplicates. - (mark_realized_functions): Remove. - (auto_profile): Do not call mark_realized_functions. - * passes.def: Move auto_profile_offline before free_lang_data. - -2025-06-27 Eric Botcazou - - * gimple-fold.cc (fold_const_aggregate_ref_1) : - Bail out immediately if the reference has reverse storage order. - * tree-ssa-sccvn.cc (fully_constant_vn_reference_p): Likewise. - -2025-06-27 Jakub Jelinek - - PR c++/120777 - * gimple-fold.cc (gimple_get_virt_method_for_vtable): Revert - 2018-09-18 changes. - -2025-06-27 Nathaniel Shead - - PR c++/98735 - PR c++/118904 - * tree.cc (struct identifier_hash): New type. - (struct identifier_count_traits): New traits. - (internal_label_nums): New hash map. - (generate_internal_label): New function. - (prefix_for_internal_label): New function. - * tree.h (IDENTIFIER_INTERNAL_P): New macro. - (generate_internal_label): Declare. - (prefix_for_internal_label): Declare. - * ubsan.cc (ubsan_ids): Remove. - (ubsan_type_descriptor): Use generate_internal_label. - (ubsan_create_data): Likewise. - -2025-06-27 Jan Hubicka - - * auto-profile.cc (function_instance::set_name, - function_instance::set_realized, function_instnace::realized_p, - function_instance::set_in_worklist, - function_instance::clear_in_worklist, - function_instance::in_worklist_p): New member functions. - (function_instance::in_worklist, function_instance::realized_): - new. - (get_relative_location_for_locus): Break out from .... - (get_relative_location_for_stmt): ... here. - (function_instance::~function_instance): Sanity check that - removed function is not in worklist. - (function_instance::merge): Do not offline realized instances. - (function_instance::offline): Make private; add duplicate functions - to worklist rather then merging immediately. - (function_instance::offline_if_in_set): Cleanup. - (function_instance::remove_external_functions): Likewise. - (function_instance::offline_if_not_realized): New member function. - (autofdo_source_profile::offline_external_functions): Handle delayed - functions. - (autofdo_source_profile::offline_unrealized_inlines): New member function. - (walk_block): New function. - (mark_realized_functions): New function. - (afdo_annotate_cfg): Fix dump. - (auto_profile): Mark realized functions and offline rest; do not compute - fn summary. - -2025-06-27 Georg-Johann Lay - - PR target/113934 - * config/avr/avr.opt (-mlra): Turn on per default. - -2025-06-27 Richard Biener - - PR tree-optimization/120808 - * tree-vect-slp-patterns.cc (vect_match_expression_p): - Take a code_helper and also match calls. - (addsub_pattern::recognize): Handle .FMA/.FMS pairs - in addition to PLUS/MINUS. - (addsub_pattern::build): Adjust. - -2025-06-27 Richard Biener - - * tree-vectorizer.h (vect_chooses_same_modes_p): New - overload. - * tree-vect-stmts.cc (vect_chooses_same_modes_p): Likewise. - * tree-vect-loop.cc (vect_analyze_loop): Prune epilogue - analysis further when not using partial vectors. - -2025-06-27 Richard Biener - - * tree-vect-loop.cc (vect_analyze_loop): Consider AVX512 - style masking when computing supports_partial_vectors. - -2025-06-27 Tamar Christina - - * doc/extend.texi: Fix typo in unsed attribute docs. - -2025-06-27 H.J. Lu - - PR target/120830 - * config/i386/i386-features.cc (ix86_get_vector_cse_mode): Handle - vector broadcast source. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (elimination_2sp_occurred_p): Rename - from... - (elimination_fp2sp_occured_p): ... this. Adjust all uses. - (lra_eliminate_regs_1): Don't require a from-frame-pointer - elimination to set it. - (update_reg_eliminate): Likewise to test it. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (lra_eliminate_regs_1): Adjust autoinc - addresses that are MEMs. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (lra_update_fp2sp_elimination): Reorder - and regroup related statements. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (lra_update_fp2sp_elimination): - Avoid sp offsets in further fp2sp eliminations... - (update_reg_eliminate): ... and restore to_rtx before assert - checking. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (lra_update_fp2sp_elimination): - Compute complete live ranges and recompute slots' live ranges - if needed. - * lra-lives.cc (lra_reset_live_range_list): New. - (lra_complete_live_ranges): New. - * lra-spills.cc (assign_spill_hard_regs): Reject empty live - ranges. - (add_pseudo_to_slot): Likewise. - (lra_recompute_slots_live_ranges): New. - * lra-int.h (lra_reset_live_range_list): Declare. - (lra_complete_live_ranges): Declare. - (lra_recompute_slots_live_ranges): Declare. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * genoutput.cc (scan_operands): Make MATCH_SCRATCHes eliminable. - -2025-06-27 Alexandre Oliva - - PR rtl-optimization/120424 - * lra-eliminations.cc (lra_update_fp2sp_elimination): - Inactivate the unused fp2sp elimination right away. - -2025-06-26 Dimitar Dimitrov - - * config/pru/pru.md (reg move splitter): New splitter for 64-bit - register moves into two 32-bit moves. - (const_int move splitter): New splitter for 64-bit constant - integer moves into two 32-bit moves. - -2025-06-26 David Malcolm - - * diagnostic.h (diagnostic_context::set_permissive_option): New. - (diagnostic_context::set_fatal_errors): New. - (diagnostic_context::set_internal_error_callback): New. - (diagnostic_context::set_adjust_diagnostic_info_callback): New. - (diagnostic_context::inhibit_notes): New. - (diagnostic_context::m_opt_permissive): Make private. - (diagnostic_context::m_fatal_errors): Likewise. - (diagnostic_context::m_internal_error): Likewise. - (diagnostic_context::m_adjust_diagnostic_info): Likewise. - (diagnostic_context::m_inhibit_notes_p): Likewise. - (diagnostic_inhibit_notes): Delete. - * opts.cc (common_handle_option): Use - diagnostic_context::set_fatal_errors. - * toplev.cc (internal_error_function): Use - diagnostic_context::set_internal_error_callback. - (general_init): Likewise. - (process_options): Use diagnostic_context::inhibit_notes. - -2025-06-26 David Malcolm - - PR analyzer/120809 - * diagnostic-format-html.cc - (html_builder::maybe_make_state_diagram): Bulletproof against the - SVG generation failing. - * xml.cc (xml::printer::push_element): Assert that the ptr is - nonnull. - (xml::printer::append): Likewise. - -2025-06-26 David Malcolm - - * diagnostic-output-spec.cc (sarif_scheme_handler::make_sink): - Split out creation of sarif_generation_options and - sarif_serialization_format into... - (sarif_scheme_handler::make_sarif_gen_opts): ...this... - (sarif_scheme_handler::make_sarif_serialization_object): ...and - this. - -2025-06-26 Paul-Antoine Arras - - PR target/120828 - * config/riscv/riscv-v.cc (prepare_ternary_operands): Handle the - vector-scalar case. - -2025-06-26 Uros Bizjak - - PR target/120719 - * config/i386/i386.md (crc_revsi4): New expander. - -2025-06-26 Kito Cheng - - * config/riscv/riscv.md: Fix build issue. - -2025-06-26 Martin Jambor - - * lto-ltrans-cache.h (class ltrans_file_cache): Remove member prefix. - * lto-ltrans-cache.cc (ltrans_file_cache::ltrans_file_cache): Do - not initialize member prefix. - -2025-06-26 Kito Cheng - - * config/riscv/riscv.md: Add comment and reorder include - files. - -2025-06-26 Martin Jambor - - * tree-vect-stmts.cc (supportable_indirect_convert_operation): - Remove an unused shadowed variable. - -2025-06-26 Martin Jambor - - * tree-vect-slp.cc (cond_expr_maps): Remove. - -2025-06-26 Jan Hubicka - - * auto-profile.cc (function_instance::merge): Add TODO. - (autofdo_source_profile::offline_external_functions): - Do not use range for on the worklist. - * timevar.def (TV_IPA_AUTOFDO_OFFLINE): New timevar. - -2025-06-26 Jan Hubicka - - * auto-profile.cc (name_index_set, name_index_map): New types. - (dump_afdo_loc): New function. - (dump_inline_stack): Simplify. - (function_instance::merge): Merge recursively inlined functions; - offline if necessary; collect new fnctions. - (function_instance::offline): New member function. - (function_instance::offline_if_in_set): New member function. - (function_instance::remove_external_functions): New member function. - (function_instance::dump): New member function. - (function_instance::debug): New member function. - (function_instance::dump_inline_stack): New member function. - (function_instance::find_icall_target_map): Use removed_icall_target. - (function_instance::remove_icall_target): Only mark icall target removed. - (autofdo_source_profile::offline_external_functions): New function. - (function_instance::read_function_instance): Record inlined_to pointers; - use -1 for unknown head counts. - (autofdo_source_profile::get_function_instance_by_name_index): New - function. - (autofdo_source_profile::add_function_instance): New member function. - (autofdo_source_profile::read): Do not leak memory; fix formatting. - (read_profile): Fix formatting. - (afdo_annotate_cfg): LIkewise. - (class pass_ipa_auto_profile_offline): New pass. - (make_pass_ipa_auto_profile_offline): New function. - * passes.def (pass_ipa_auto_profile_offline): Add - * tree-pass.h (make_pass_ipa_auto_profile): Declare - -2025-06-26 H.J. Lu - - PR target/120819 - * config/i386/i386-features.cc (ix86_broadcast_inner): Also handle - all 1s float vector constant. - -2025-06-26 H.J. Lu - - PR target/120816 - * config/i386/i386-features.cc (remove_redundant_vector_load): - Handle REG_EH_REGION note in DEF_INSN. - -2025-06-26 H.J. Lu - - PR target/119628 - * config/i386/i386-expand.cc (ix86_expand_call): Call - ix86_type_no_callee_saved_registers_p instead of looking up - no_callee_saved_registers attribute. - * config/i386/i386-options.cc (ix86_set_func_type): Look up - preserve_none attribute. Check preserve_none attribute for - interrupt attribute. Don't check no_caller_saved_registers nor - no_callee_saved_registers conflicts here. - (ix86_set_func_type): Check no_callee_saved_registers before - checking no_caller_saved_registers attribute. - (ix86_set_current_function): Allow SSE with - no_caller_saved_registers attribute. - (ix86_handle_call_saved_registers_attribute): Check preserve_none, - no_callee_saved_registers and no_caller_saved_registers conflicts. - (ix86_gnu_attributes): Add preserve_none attribute. - * config/i386/i386-protos.h (ix86_type_no_callee_saved_registers_p): - New. - * config/i386/i386.cc - (x86_64_preserve_none_int_parameter_registers): New. - (ix86_using_red_zone): Don't use red-zone when there are no - caller-saved registers with SSE. - (ix86_type_no_callee_saved_registers_p): New. - (ix86_function_ok_for_sibcall): Also check TYPE_PRESERVE_NONE - and call ix86_type_no_callee_saved_registers_p instead of looking - up no_callee_saved_registers attribute. - (ix86_comp_type_attributes): Call - ix86_type_no_callee_saved_registers_p instead of looking up - no_callee_saved_registers attribute. Return 0 if preserve_none - attribute doesn't match in 64-bit mode. - (ix86_function_arg_regno_p): For cfun with TYPE_PRESERVE_NONE, - use x86_64_preserve_none_int_parameter_registers. - (init_cumulative_args): Set preserve_none_abi. - (function_arg_64): Use x86_64_preserve_none_int_parameter_registers - with preserve_none attribute. - (setup_incoming_varargs_64): Use - x86_64_preserve_none_int_parameter_registers with preserve_none - attribute. - (ix86_save_reg): Treat TYPE_PRESERVE_NONE like - TYPE_NO_CALLEE_SAVED_REGISTERS. - (ix86_nsaved_sseregs): Allow saving XMM registers for - no_caller_saved_registers attribute. - (ix86_compute_frame_layout): Likewise. - (x86_this_parameter): Use - x86_64_preserve_none_int_parameter_registers with preserve_none - attribute. - * config/i386/i386.h (ix86_args): Add preserve_none_abi. - (call_saved_registers_type): Add TYPE_PRESERVE_NONE. - (machine_function): Change call_saved_registers to 3 bits. - * doc/extend.texi: Add preserve_none attribute. Update - no_caller_saved_registers attribute to remove -mgeneral-regs-only - restriction. - -2025-06-25 H.J. Lu - - * config/i386/i386-features.cc (ix86_place_single_vector_set): - Add debug dump. - (replace_vector_const): Likewise. - (remove_redundant_vector_load): Likewise. - -2025-06-25 Luis Silva - - * config/arc/arc.md (mulvsi4): New define_expand. - (mulsi3_Vcmp): New define_insn. - -2025-06-25 Luis Silva - - * config/arc/arc.cc (arc_select_cc_mode): Handle multiplication - results compared against zero, selecting CC_Zmode. - * config/arc/arc.md (*mulsi3_cmp0): New define_insn. - (*mulsi3_cmp0_noout): New define_insn. - -2025-06-25 Shahab Vahedi - - * config/arc/arc.md (subsi3_v, subvsi4, subsi3_c): New patterns. - -2025-06-25 Shahab Vahedi - - * config/arc/arc-modes.def (CC_V): New mode. - * config/arc/arc-protos.h (arc_gen_unlikely_cbranch): New - function declaration. - * config/arc/arc.cc (arc_gen_unlikely_cbranch): New - function. - (get_arc_condition_code): Handle new mode. - * config/arc/arc.md (addvsi3_v, addvsi4, addsi3_c, uaddvsi4): New - patterns. - * config/arc/predicates.md (proper_comparison_operator): Handel - the new V_mode. - (equality_comparison_operator): Likewise. - -2025-06-25 Martin Jambor - - * diagnostic-path-output.cc (path_label::get_effects): Mark as - final override. - * diagnostic-format-html.cc - (html_output_format::after_diagnostic): Likewise. - -2025-06-25 Martin Jambor - - * gimple-range-op.cc - (gimple_range_op_handler::maybe_builtin_call): Use - CFN_BUILT_IN_ISINF instead of BUILT_IN_ISINF. - -2025-06-25 Martin Jambor - - * value-relation.h (class dom_oracle): Mark member function - next_relation as override. - -2025-06-25 Martin Jambor - - * tree-ssa-propagate.h (class substitute_and_fold_engine): Mark - member functions value_of_expr and range_of_expr as override. - -2025-06-25 Martin Jambor - - * range-op-mixed.h (class operator_plus): Mark member function - overflow_free_p as final override. - (class operator_minus): Likewise. - (class operator_mult): Likewise. - * range-op-ptr.cc (class pointer_plus_operator): Mark member - function lhs_op1_relation as final override. - * range-op.cc (class operator_div::): Mark member functions - op2_range and update_bitmask as final override. - (class operator_logical_and): Mark member functions fold_range, - op1_range and op2_range as final override. Remove unnecessary - virtual. - (class operator_logical_or): Likewise. - (class operator_logical_not): Mark member functions fold_range and - op1_range as final override. Remove unnecessary virtual. - formatting easier. - (class operator_absu): Mark member functions wi_fold as final - override. - -2025-06-25 Martin Jambor - - * gimple-ssa-sccopy.cc (class pass_sccopy): Mark member functions - gate and execute as final override. - -2025-06-25 Martin Jambor - - * avoid-store-forwarding.cc (class - pass_rtl_avoid_store_forwarding): Mark member function gate as - final override. - -2025-06-25 Andrew MacLeod - - * value-relation.cc (relation_to_code): Remove. - -2025-06-25 Andrew MacLeod - - * value-range.cc (frange::verify_range): Constify. - (irange::verify_range): Constify. - * value-range.h (vrange::verify_range): New. - (irange::verify_range): Make public. - (prange::verify_range): Make public. - (prange::verify_range): Make public. - (value_range::verify_range): New. - -2025-06-25 Andrew MacLeod - - * value-range.cc (irange::get_bitmask): Return original mask if - result is unknown. - (assert_snap_result): New. - (test_irange_snap_bounds): New. - (range_tests_misc): Call test_irange_snap_bounds. - -2025-06-25 Richard Biener - - PR tree-optimization/109892 - * tree-vect-loop.cc (check_reduction_path): Handle fma. - (vectorizable_reduction): Apply FOLD_LEFT_REDUCTION code - generation constraints. - -2025-06-25 Richard Biener - - PR tree-optimization/120808 - * tree-vectorizer.h (compatible_calls_p): Add flag to - indicate a FMA/FMS pair is allowed. - * tree-vect-slp.cc (compatible_calls_p): Likewise. - (vect_build_slp_tree_1): Allow mixed .FMA/.FMS as two-operator. - (vect_build_slp_tree_2): Handle calls in two-operator SLP build. - * tree-vect-slp-patterns.cc (compatible_complex_nodes_p): - Adjust. - -2025-06-25 Alfie Richards - - * tree-ssa-loop-ivopts.cc (constant_multiple_of): Change - tree_to_aff_combination to tree_to_aff_combination_expand and add - parameter to take ivopts_data. - (get_computation_aff_1): Change parameters and calls to include - ivopts_data. - (get_computation_aff): Ditto. - (get_computation_at) Ditto.: - (get_debug_computation_at) Ditto.: - (get_computation_cost) Ditto.: - (rewrite_use_nonlinear_expr) Ditto.: - (rewrite_use_address) Ditto.: - (rewrite_use_compare) Ditto.: - (remove_unused_ivs) Ditto.: - -2025-06-25 Richard Sandiford - - PR rtl-optimization/120745 - * rtl-ssa/changes.cc (process_uses_of_deleted_def): Rewrite to - handle deletions of non-degenerate phis. - -2025-06-25 H.J. Lu - - PR target/120815 - * common/config/i386/i386-common.cc (processor_alias_table): - Replace CPU_SLM/PTA_NEHALEM with CPU_HASWELL/PTA_HASWELL for - PROCESSOR_INTEL. - * config/i386/i386-options.cc (processor_cost_table): Replace - intel_cost with alderlake_cost. - * config/i386/x86-tune-costs.h (intel_cost): Removed. - * config/i386/x86-tune-sched.cc (ix86_issue_rate): Treat - PROCESSOR_INTEL like PROCESSOR_ALDERLAKE. - (ix86_adjust_cost): Likewise. - * doc/invoke.texi: Update -mtune=intel for Diamond Rapids and - Clearwater Forest. - -2025-06-25 Haochen Jiang - - * config/i386/i386.h (PTA_ALDERLAKE): Use PTA_GOLDMONT_PLUS - as base to remove PTA_CLDEMOTE. - (PTA_SIERRAFOREST): Add PTA_CLDEMOTE since PTA_ALDERLAKE - does not include that anymore. - * doc/invoke.texi: Update texi file. - -2025-06-25 Jiawei - - * common/config/riscv/riscv-common.cc: New Profiles. - -2025-06-25 Jan Hubicka - - * common.opt: (fauto-profile-inlining): New - * doc/invoke.texi (-fauto-profile-inlining): Document. - * ipa-inline.cc (inline_functions_by_afdo): Check - flag_auto_profile. - (early_inliner): Also do inline_functions_by_afdo with - !flag_early_inlining. - -2025-06-25 Jan Hubicka - - * auto-profile.cc: Update toplevel comment. - (early_inline): Remove. - (auto_profile): Don't do early inlining. - -2025-06-24 Tobias Burnus - - * config/gcn/gcn-opts.h (TARGET_GLC_NAME): Fix and extend the - description in the comment. - * config/gcn/gcn.cc (print_operand): Extend the comment about - 'G' and 'g'. - * config/gcn/gcn.md: Use 'glc' instead of %G where appropriate. - -2025-06-24 Paul-Antoine Arras - - PR target/119100 - * config/riscv/autovec-opt.md (*_vf_): Handle both add and - acc FMA variants. - * config/riscv/vector.md (*pred_mul__scalar_undef): New. - -2025-06-24 Uros Bizjak - - * config/i386/i386.md - (@pro_epilogue_adjust_stack_add_nocc): Add type attribute. - (pro_epilogue_adjust_stack_add_nocc peephole2 pattern): - Convert pro_epilogue_adjust_stack_add_nocc variant to - pro_epilogue_adjust_stack_add when FLAGS_REG is dead. - -2025-06-24 Richard Biener - - * tree-vect-stmts.cc (vectorizable_load): Remove non-SLP - paths and propagate out ncopies == 1. - -2025-06-24 Marc Poulhiès - - * diagnostic-state-to-dot.cc (get_color_for_dynalloc_state): - Rename argument dynalloc_state to dynalloc_st. - (add_title_tr): Rename argument style to styl. - (on_xml_node): Rename local variable dynalloc_state to dynalloc_st. - -2025-06-24 Yuao Ma - - * tree-call-cdce.cc (edom_only_function): Remove atan. - -2025-06-24 Juergen Christ - - * config/s390/vector.md (VF): Don't restrict modes. - (VEC_SET_SINGLEFLOAT): Ditto. - -2025-06-24 Tamar Christina - - * config/aarch64/aarch64.cc (aarch64_override_options_internal): Set - value of parameter based on option. - * config/aarch64/aarch64.opt (autovec-preference): New. - * doc/invoke.texi (autovec-preference): Document it. - -2025-06-24 Tamar Christina - - * config/aarch64/aarch64.opt (max-vectorization): New. - * config/aarch64/aarch64.cc (aarch64_override_options_internal): Save - and restore option. - Implement it through vect-scalar-cost-multiplier. - (aarch64_attributes): Default to off. - * common/config/aarch64/aarch64-common.cc (aarch64_handle_option): - Initialize option. - * doc/extend.texi (max-vectorization): Document attribute. - * doc/invoke.texi (max-vectorization): Document flag. - -2025-06-24 hongtao.liu - - PR target/115842 - * tree-ssa-loop-ivopts.cc (determine_group_iv_cost_address): - Don't recalculate inv_expr when group-candidate cost - calucalution. - -2025-06-24 Tamar Christina - - * doc/extend.texi: Document pragma unroll interaction with vectorizer. - * tree-vectorizer.h (LOOP_VINFO_USER_UNROLL): New. - (class _loop_vec_info): Add user_unroll. - * tree-vect-loop.cc (vect_analyze_loop_1): Set - suggested_unroll_factor and retry. - (_loop_vec_info::_loop_vec_info): Initialize user_unroll. - (vect_transform_loop): Clear the loop->unroll value if the pragma was - used. - -2025-06-24 Tamar Christina - - * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters, - vect_gen_vector_loop_niters_mult_vf): Remove uses of log_vf. - -2025-06-24 H.J. Lu - - PR target/92080 - * config/i386/i386-expand.cc (ix86_expand_call): Set - recursive_function to true for recursive call. - * config/i386/i386-features.cc (ix86_place_single_vector_set): - Add an argument for inner scalar, default to nullptr. Set the - source from inner scalar if not nullptr. - (ix86_get_vector_load_mode): Renamed to ... - (ix86_get_vector_cse_mode): This. Add an argument for scalar mode - and handle integer and float scalar modes. - (replace_vector_const): Add an argument for scalar mode and pass - it to ix86_get_vector_load_mode. - (x86_cse_kind): New. - (redundant_load): Likewise. - (ix86_broadcast_inner): Likewise. - (remove_redundant_vector_load): Also support const0_rtx and - constm1_rtx broadcasts. Handle vector broadcasts from constant - and variable scalars. - * config/i386/i386.h (machine_function): Add recursive_function. - -2025-06-24 H.J. Lu - - PR target/70308 - PR target/101366 - PR target/102294 - PR target/108585 - PR target/118276 - PR target/119596 - PR target/119703 - PR target/119704 - * config/i386/x86-tune-costs.h (generic_memcpy): Updated. - (generic_memset): Likewise. - (generic_cost): Change CLEAR_RATIO to 10. - -2025-06-24 Jan Hubicka - - * tree-inline.cc (expand_call_inline): Preserve discriminator. - -2025-06-24 Jan Hubicka - - * auto-profile.cc (afdo_set_bb_count): Dump also 0 count stmts. - (afdo_annotate_cfg): Fix conditional for block having non-zero static - profile. - -2025-06-24 Lili Cui - - PR target/120741 - * config/i386/i386.cc (ix86_expand_prologue): - Remove 1 assertion. - -2025-06-24 Jeff Law - - PR target/118241 - * config/riscv/predicates.md: Fix comment typo in recent change. - -2025-06-23 Sam James - Jeff Law - - PR rtl-optimization/120795 - * ext-dce.cc (ext_dce_try_optimize_insn): Enable rescan in - remove_reg_equal_equiv_notes call. - -2025-06-23 David Malcolm - - PR other/116792 - PR testsuite/116163 - PR sarif-replay/120792 - * Makefile.in (OBJS-libcommon): Add diagnostic-output-spec.o. - * diagnostic-format-html.cc (html_builder::html_builder): Ensure - title is non-empty. - * diagnostic-output-spec.cc: New file, taken from material in - opts-diagnostic.cc. - * diagnostic-output-spec.h: New file. - * diagnostic.cc (diagnostic_context::set_main_input_filename): - New. - * diagnostic.h (diagnostic_context::set_main_input_filename): New - decl. - * doc/libgdiagnostics/topics/compatibility.rst - (LIBGDIAGNOSTICS_ABI_2): New. - * doc/libgdiagnostics/topics/diagnostic-manager.rst - (diagnostic_manager_add_sink_from_spec): New. - (diagnostic_manager_set_analysis_target): New. - * libgdiagnostics++.h (manager::add_sink_from_spec): New. - (manager::set_analysis_target): New. - * libgdiagnostics.cc: Include "diagnostic-output-spec.h". - (struct spec_context): New. - (diagnostic_manager_add_sink_from_spec): New. - (diagnostic_manager_set_analysis_target): New. - * libgdiagnostics.h - (LIBDIAGNOSTICS_HAVE_diagnostic_manager_add_sink_from_spec): New - define. - (diagnostic_manager_add_sink_from_spec): New decl. - (LIBDIAGNOSTICS_HAVE_diagnostic_manager_set_analysis_target): New - define. - (diagnostic_manager_set_analysis_target): New decl. - * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_2): New. - * libsarifreplay.cc (sarif_replayer::handle_artifact_obj): Looks - for "analysisTarget" in roles and call set_analysis_target using - the artifact if found. - * opts-diagnostic.cc: Refactor, moving material to - diagnostic-output-spec.cc. - (struct opt_spec_context): New. - (handle_OPT_fdiagnostics_add_output_): Use opt_spec_context. - (handle_OPT_fdiagnostics_set_output_): Likewise. - * sarif-replay.cc: Define INCLUDE_STRING. - (struct options): Add m_extra_output_specs. - (usage_msg): Add -fdiagnostics-add-output=SCHEME. - (str_starts_with): New. - (parse_options): Add -fdiagnostics-add-output=SCHEME. - (main): Likewise. - * selftest-run-tests.cc (selftest::run_tests): Call - diagnostic_output_spec_cc_tests rather than - opts_diagnostic_cc_tests. - * selftest.h (selftest::diagnostic_output_spec_cc_tests): - Replace... - (selftest::opts_diagnostic_cc_tests): ...this. - -2025-06-23 David Malcolm - - PR other/116792 - * Makefile.in (ANALYZER_OBJS): Add - analyzer/ana-state-to-diagnostic-state.o. - (OBJS): Move graphviz.o to... - (OBJS-libcommon): ...here. Add diagnostic-state-to-dot.o and pex.o. - * diagnostic-format-html.cc: Include "diagnostic-state.h" and - "graphviz.h". - (html_generation_options::html_generation_options): Initialize the - new flags. - (HTML_SCRIPT): Add function "get_any_state_diagram". Use it - when changing current focus id to update the visibility of the - pertinent diagram, if any. - (print_pre_source): New. - (html_builder::maybe_make_state_diagram): New. - (html_path_label_writer::html_path_label_writer): Add "path" param. - Initialize m_path and m_curr_event_id. - (html_path_label_writer::begin_label): Store current event id. - (html_path_label_writer::end_label): Attempt to make a state - diagram and add it if successful. - (html_path_label_writer::get_element_id): New. - (html_path_label_writer::m_path): New field. - (html_path_label_writer::m_curr_event_id): New field. - (html_builder::make_element_for_diagnostic): Pass path to label - writer. - * diagnostic-format-html.h - (html_generation_options::m_show_state_diagrams): New field. - (html_generation_options::m_show_state_diagram_xml): New field. - (html_generation_options::m_show_state_diagram_dot_src): New field. - * diagnostic-format-sarif.cc: Include "xml.h". - (populate_thread_flow_location_object): If requested, attempt to - generate xml state and add it to the proeprty bag as - "gcc/diagnostic_event/xml_state" in xml source form. - (sarif_generation_options::sarif_generation_options): Initialize - m_xml_state. - * diagnostic-format-sarif.h - (sarif_generation_options::m_xml_state): New field. - * diagnostic-path.cc: Define INCLUDE_MAP. Include "xml.h". - (diagnostic_event::maybe_make_xml_state): New. - * diagnostic-path.h (class xml::document): New forward decl. - (diagnostic_event::maybe_make_xml_state): New vfunc decl. - * diagnostic-state-to-dot.cc: New file. - * diagnostic-state.h: New file. - * digraph.cc: Define INCLUDE_STRING and INCLUDE_VECTOR. - * doc/analyzer.texi: Document state diagrams in html output. - (__analyzer_dump_dot): New. - (__analyzer_dump_xml): New. - * doc/invoke.texi (sarif): Add "xml-state" key. - (experimental-html): Add keys "show-state-diagrams", - "show-state-diagrams-dot-src" and "show-state-diagrams-xml". - * graphviz.cc: Define INCLUDE_MAP, INCLUDE_STRING, and - INCLUDE_VECTOR. Include "xml.h", "xml-printer.h", "pex.h" and - "selftest.h". - (graphviz_out::graphviz_out): Extract... - (dot::writer::writer): ...this. - (graphviz_out::write_indent): Convert to... - (dot::writer::write_indent): ...this. - (graphviz_out::print): Use get_pp. - (graphviz_out::println): Likewise. - (graphviz_out::begin_tr): Likewise. - (graphviz_out::end_tr): Likewise. - (graphviz_out::begin_td): Likewise. - (graphviz_out::end_td): Likewise. - (graphviz_out::begin_trtd): Likewise. - (graphviz_out::end_tdtr): Likewise. - (dot::ast_node::dump): New. - (dot::id::id): New. - (dot::id::print): New. - (dot::id::is_identifier_p): New. - (dot::kv_pair::print): New. - (dot::attr_list::print): New. - (dot::stmt_list::print): New. - (dot::stmt_list::add_edge): New. - (dot::stmt_list::add_attr): New. - (dot::graph::print): New. - (dot::stmt_with_attr_list::set_label): New. - (dot::node_stmt::print): New. - (dot::attr_stmt::print): New. - (dot::kv_stmt::print): New. - (dot::node_id::print): New. - (dot::port::print): New. - (dot::edge_stmt::print): New. - (dot::subgraph::print): New. - (dot::make_svg_document_buffer_from_graph): New. - (dot::make_svg_from_graph): New. - (selftest:test_ids): New. - (selftest:test_trivial_graph): New. - (selftest:test_layout_example): New. - (selftest:graphviz_cc_tests): New. - * graphviz.h (xml::node): New forward decl. - (class graphviz_out): Split out into... - (class dot::writer): ...this new class - (struct dot::ast_node): New. - (struct dot::id): New. - (struct dot::kv_pair): New. - (struct dot::attr_list): New. - (struct dot::stmt_list): New. - (struct dot::graph): New. - (struct dot::stmt): New. - (struct dot::stmt_with_attr_list): New. - (struct dot::node_stmt): New. - (struct dot::attr_stmt): New. - (struct dot::kv_stmt): New. - (enum class dot::compass_pt): New. - (struct dot::port): New. - (struct dot::node_id): New. - (struct dot::edge_stmt): New. - (struct dot::subgraph): New. - (dot::make_svg_from_graph): New. - * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Add - "xml-state" flag. - (html_scheme_handler::make_sink): Add flags "show-state-diagrams", - "show-state-diagram-dot-src", and "show-state-diagram-xml". - * pex.cc: New file. - * pex.h: New file. - * selftest-run-tests.cc (selftest::run_tests): Call - graphviz_cc_tests. - * selftest.h (selftest::graphviz_cc_tests): New decl. - * xml.cc (xml::node_with_children::add_comment): New. - (xml::node_with_children::find_child_element): New. - (xml::element::get_attr): New. - (xml::comment::write_as_xml): New. - (selftest::test_printer): Add coverage of find_child_element and - get_attr. - (selftest::test_comment): New. - (selftest::xml_cc_tests): Call test_comment. - * xml.h: New forward decls. - (xml::node::dyn_cast_text): Use nullptr. - (xml::node::dyn_cast_element): New vfunc. - (xml::node_with_children::add_comment): New decl. - (xml::node_with_children::find_child_element): New decl. - (xml::element::dyn_cast_element): New vfunc impl. - (xml::element::get_attr): New decl. - (struct xml::comment): New xml::node subclass. - -2025-06-23 David Malcolm - - PR other/116792 - * diagnostic-format-html.cc (html_token_printer::print_tokens): - Handle pp_token::kind::event_id. - (selftest::test_token_printer): Add coverage of printing an event - id. - -2025-06-23 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case US_PLUS. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op us_plus. - -2025-06-23 Jakub Jelinek - - PR middle-end/120608 - * tree-tailcall.cc (empty_eh_cleanup): Ignore .ASAN_MARK (POISON) - internal calls for the cfun->has_musttail case and diag_musttail. - (find_tail_calls): Likewise. - -2025-06-23 Jakub Jelinek - - PR middle-end/120608 - * cfgexpand.cc: Include rtl-iter.h. - (expand_gimple_tailcall): Add ASAN_EPILOG_SEQ argument, if non-NULL - and expand_gimple_stmt emitted a tail call, emit a copy of that - insn sequence before the call sequence. - (expand_gimple_basic_block): Remove DISABLE_TAIL_CALLS argument, add - ASAN_EPILOG_SEQ argument. Disable tail call flag only on non-musttail - calls if that flag is set, pass it to expand_gimple_tailcall. - (pass_expand::execute): Pass VAR_RET_SEQ directly as last - expand_gimple_basic_block argument rather than its comparison with - NULL. - -2025-06-23 Pengfei Li - - * tree-vect-data-refs.cc (vect_peeling_supportable): Return new - enum values to indicate if combined peeling and versioning can - potentially support vectorization. - (vect_enhance_data_refs_alignment): Support combined peeling and - versioning in vectorization analysis. - * tree-vect-loop-manip.cc (vect_create_cond_for_align_checks): - Add a new type of runtime check for mutually aligned DRs. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Set - default value of allow_mutual_alignment in the initializer list. - * tree-vectorizer.h (enum peeling_support): Define type of - peeling support for function vect_peeling_supportable. - (LOOP_VINFO_ALLOW_MUTUAL_ALIGNMENT): New access macro. - -2025-06-23 Mikael Morin - - * match.pd (`-(-X)`, `~(~X)`, `conj(conj(X))`): Add a - NON_LVALUE_EXPR wrapper to the simplification of doubled unary - operators NEGATE_EXPR, BIT_NOT_EXPR and CONJ_EXPR. - -2025-06-23 Richard Biener - - PR tree-optimization/120729 - * gimple-predicate-analysis.h (uninit_analysis::prune_phi_opnds): - Add argument of work budget remaining. - * gimple-predicate-analysis.cc (uninit_analysis::prune_phi_opnds): - Likewise. Maintain and honor it throughout the recursion. - * params.opt (uninit-max-prune-work): New. - * doc/invoke.texi (uninit-max-prune-work): Document. - -2025-06-23 Richard Sandiford - - PR rtl-optimization/120721 - * function.cc (instantiate_virtual_regs_in_insn): Use force_subreg - instead of simplify_gen_subreg when instantiating an rvalue SUBREG. - -2025-06-23 H.J. Lu - - PR target/120728 - * config/i386/i386.cc (ix86_get_ssemov): Use vmovdqu16/vmovdqu8 - only with EVEX register operands. - -2025-06-23 H.J. Lu - - * config/i386/i386-options.cc (processor_cost_table): Add a - PROCESSOR_XXX comment to each entry. - -2025-06-22 Andrew Pinski - - PR target/119830 - * config/riscv/riscv.cc (riscv_build_integer_1): Make arithmetic in bclr case - clean for 32 bit hosts. - -2025-06-22 Jeff Law - - PR rtl-optimization/120550 - * ext-dce.cc (ext_dce_try_optimize_insn): Drop REG_EQUAL/REG_EQUIV - notes on modified insns. - -2025-06-22 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.h (TARGET_DEPBITS): New macro. - * config/xtensa/xtensa.md (insvsi): New insn pattern. - -2025-06-22 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.cc (xtensa_zero_call_used_regs): - New prototype and function. - (TARGET_ZERO_CALL_USED_REGS): Define macro. - -2025-06-22 Jan Hubicka - - * auto-profile.cc (update_count_by_afdo_count): Make static; - add variant accepting profile_count. - (afdo_find_equiv_class): Use update_count_by_afdo_count. - (afdo_propagate_edge): Likewise. - (afdo_propagate): Likewise. - (afdo_calculate_branch_prob): Fix handling of all_known. - (afdo_annotate_cfg): Annotate by 0 where both afdo and static - profile agrees. - -2025-06-22 Jan Hubicka - - * auto-profile.cc (afdo_set_bb_count): Dump inline stacks - and reasons when lookup failed. - (afdo_set_bb_count): Record info about BBs with zero AFDO count. - (afdo_annotate_cfg): Set profile to global0_afdo if there are - no samples in profile. - -2025-06-22 Jan Hubicka - - * ipa-profile.cc (ipa_profile): Use widest_int to avoid - possible overflows. - -2025-06-22 Jan Hubicka - - * auto-profile.cc (autofdo::afdo_count_scale): New. - (autofdo_source_profile::update_inlined_ind_target): Scale - counts. - (autofdo_source_profile::read): Set scale and dump - statistics. - (afdo_indirect_call): Scale. - (afdo_set_bb_count): Scale. - (afdo_find_equiv_class): Fix dumps. - (afdo_annotate_cfg): Scale. - -2025-06-22 Jan Hubicka - - * cgraph.cc (cgraph_node::make_profile_global0): Support - GUESSED_GLOBAL0_AFDO - * ipa-cp.cc (update_profiling_info): Use - GUESSED_GLOBAL0_AFDO. - * profile-count.cc (profile_probability::dump): Use - quality (). - (profile_probability::stream_in): Use m_adjusted_quality. - (profile_probability::stream_out): Use m_adjusted_quality. - (profile_count::combine_with_ipa_count): Use quality (). - (profile_probability::sqrt): Likewise. - * profile-count.h (enum profile_quality): Add - GUESSED_GLOBAL0_AFDO; reoder GUESSED_GLOBAL0_ADJUSTED and - GUESSED_GLOBAL0. - (profile_probability): Add min_quality; replase m_quality - by m_adjused_quality; add set_quality; update all users - of quality. - (profile_count): Set n_bits to 60; make m_quality 4 bits; - update uses of quality. - (profile_count::afdo_zero, profile_count::globa0afdo): New. - -2025-06-21 Jan Hubicka - - * tree-inline.cc (copy_cfg_body): Fix profile of split functions. - -2025-06-21 Jeff Law - - PR target/118241 - * config/riscv/predicates.md (prefetch_operand): New predicate. - * config/riscv/constraints.md (Q): New constraint. - * config/riscv/riscv.md (prefetch): Use new predicate and constraint. - (riscv_prefetchi_): Similarly. - -2025-06-21 Jakub Jelinek - - PR middle-end/120746 - * value-range.cc (irange::snap): Use int type instead of uint. - -2025-06-21 Jan Hubicka - - * auto-profile.cc (dump_inline_stack): New function. - (get_inline_stack_in_node): New function. - (get_relative_location_for_stmt): Add FN parameter. - (has_indirect_call): Remove. - (function_instance::find_icall_target_map): Add FN parameter. - (function_instance::remove_icall_target): New function. - (function_instance::read_function_instance): Set sum_max. - (autofdo_source_profile::get_count_info): Add NODE parameter. - (autofdo_source_profile::update_inlined_ind_target): Add NODE parameter. - (autofdo_source_profile::remove_icall_target): New function. - (afdo_indirect_call): Add INDIRECT_EDGE parameter; dump reason - for failure; do not check for recursion; do not inline call. - (afdo_vpt): Add INDIRECT_EDGE parameter. - (afdo_set_bb_count): Do not take PROMOTED set. - (afdo_vpt_for_early_inline): Remove. - (afdo_annotate_cfg): Do not take PROMOTED set. - (auto_profile): Do not call afdo_vpt_for_early_inline. - (afdo_callsite_hot_enough_for_early_inline): Dump count. - (remove_afdo_speculative_target): New function. - * auto-profile.h (afdo_vpt_for_early_inline): Declare. - (remove_afdo_speculative_target): Declare. - * ipa-inline.cc (inline_functions_by_afdo): Do VPT. - (early_inliner): Redirecct edges if inlining happened. - * tree-inline.cc (expand_call_inline): Add sanity check. - -2025-06-21 Jan Hubicka - - * auto-profile.cc (get_inline_stack): Add fn parameter. - * ipa-inline.cc (want_early_inline_function_p): Do not care - about AFDO. - (inline_functions_by_afdo): New function. - (early_inliner): Use it. - -2025-06-21 Pan Li - - PR target/120652 - * config/riscv/autovec.md: Add immediate_operand for - select_vl operand 2. - -2025-06-20 Andrew MacLeod - - PR tree-optimization/120701 - * value-range.cc (irange::verify_range): Verify range pairs are - sorted properly. - (irange::snap): Check for over/underflow properly. - -2025-06-20 Andrew Stubbs - - PR target/120722 - * config/gcn/gcn.cc (gcn_hard_regno_mode_ok): Allow SImode in VCC_HI. - -2025-06-20 Jørgen Kvalsvik - - PR gcov-profile/120634 - * prime-paths.cc (struct auto_vec_vec): Add constructor from - vec. - (test_split_components): Use auto_vec_vec. - (test_scc_internal_prime_paths): Ditto. - (test_scc_entry_exit_paths): Ditto. - (test_complete_prime_paths): Ditto. - (test_entry_prime_paths): Ditto. - (test_singleton_path): Ditto. - -2025-06-20 Jørgen Kvalsvik - - PR gcov-profile/120634 - * prime-paths.cc (trie::paths): Use auto_vec. - -2025-06-20 Richard Biener - - PR tree-optimization/120654 - * vr-values.cc (range_fits_type_p): Check for undefined_p () - before accessing type (). - -2025-06-20 H.J. Lu - - PR target/120708 - * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use - MOVE_MAX to get the widest vector mode in vector loop. - -2025-06-20 Stafford Horne - - * config/or1k/or1k.cc (or1k_noce_conversion_profitable_p): New - function. - (or1k_is_cmov_insn): New function. - (TARGET_NOCE_CONVERSION_PROFITABLE_P): Define macro. - * config/or1k/or1k.md (cbranchsi4): Convert to insn_and_split. - (cbranch4): Convert to insn_and_split. - -2025-06-20 Stafford Horne - - PR target/120587 - * config/or1k/or1k.md (zero_extendbisi2_sr_f): New expand. - (extendbisi2_sr_f): New expand. - * config/or1k/predicates.md (sr_f_reg_operand): New predicate. - -2025-06-20 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case UMIN. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op umin. - -2025-06-19 Jakub Jelinek - - PR target/120689 - * function.cc (assign_parm_setup_block): Align parm to at least - word alignment even on !STRICT_ALIGNMENT targets, as long as - BITS_PER_WORD is not larger than MAX_SUPPORTED_STACK_ALIGNMENT. - -2025-06-19 H.J. Lu - - PR target/120427 - * config/i386/i386.md (*mov_and): Changed to - define_insn_and_split. Split it to "mov $0,mem" if not -Oz. - (*mov_or): Changed to define_insn_and_split. Split it - to "mov $-1,mem" if not -Oz. - (peephole2): Don't transform "mov $-1,reg" to "push $-1; pop reg" - for -Oz since it will be transformed to "or $-1,reg". - -2025-06-19 Georg-Johann Lay - - PR other/115893 - * doc/install.texi (Prerequisites): Note that Texinfo older - than v7.1 may throw incorrect build warnings, cf. - https://lists.nongnu.org/archive/html/help-texinfo/2023-11/msg00004.html - -2025-06-19 Dongyan Chen - - * config/riscv/riscv-cores.def (RISCV_TUNE): Add "generic" tune. - * config/riscv/riscv.cc: Add generic_tune_info. - * config/riscv/riscv.h (RISCV_TUNE_STRING_DEFAULT): Change default tune. - -2025-06-19 Jakub Jelinek - - PR middle-end/120631 - * dfp.cc (decimal_real_to_integer): Use result multiplication not just - when precision > 128 and dn.exponent > 19, but when precision > 64 - and dn.exponent > 0. - -2025-06-19 Kito Cheng - - * config/riscv/riscv.cc (riscv_legitimize_move): Use - riscv_2x_xlen_mode_p. - (riscv_binary_cost): Ditto. - (riscv_hard_regno_mode_ok): Ditto. - -2025-06-19 Kito Cheng - - * config/riscv/riscv.cc (riscv_cost_model): Add cost model for - zilsd. - -2025-06-19 Lili Cui - - PR target/120697 - * config/i386/i386.cc (ix86_expand_prologue): - Remove 3 assertions and associated code. - -2025-06-18 Dimitar Dimitrov - Richard Sandiford - Andrew Pinski - - PR target/119966 - * emit-rtl.cc (validate_subreg): Call simplify_subreg_regno - instead of checking info.representable_p.. - * rtl.h (simplify_subreg_regno): Add new argument - allow_stack_regs. - * rtlanal.cc (simplify_subreg_regno): Do not reject - stack-related registers if allow_stack_regs is true. - -2025-06-18 Andrew MacLeod - - * value-range.cc (irange::intersect_bitmask): Always update the - stored mask to reflect the current calculated mask. - -2025-06-18 Andrew MacLeod - - PR tree-optimization/119039 - * value-range.cc (irange::contains_p): Call wide_int version of - contains_p for singleton ranges. - (irange::intersect): If either range is a singleton, use - contains_p. - -2025-06-18 Andrew MacLeod - - PR tree-optimization/119039 - * vr-values.cc (simplify_using_ranges::legacy_fold_cond): Remove. - (simplify_using_ranges::simplify_switch_using_ranges): Adjust. - -2025-06-18 Richard Biener - - * tree-cfg.cc (dump_function_to_file): Use flags, not dump_flags. - -2025-06-18 Jan Beulich - - * doc/gcov.texi: Drop blank after @anchor. - -2025-06-18 Jan Beulich - - * doc/extend.texi: Fill first argument of @xref{}. - -2025-06-18 Jakub Jelinek - - PR middle-end/120631 - * real.cc (decimal_from_integer): Add digits argument, if larger than - 256, use XALLOCAVEC allocated buffer. - (real_from_integer): Pass val_in's precision divided by 3 to - decimal_from_integer. - * dfp.cc (decimal_real_to_integer): For precision > 128 if finite - and exponent is large, decrease exponent and multiply resulting - wide_int by powers of 10^19. - -2025-06-18 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case SMIN. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op smin. - -2025-06-18 Lili Cui - Michael Matz - - * config/i386/i386-protos.h (ix86_get_separate_components): - New function. - (ix86_components_for_bb): Likewise. - (ix86_disqualify_components): Likewise. - (ix86_emit_prologue_components): Likewise. - (ix86_emit_epilogue_components): Likewise. - (ix86_set_handled_components): Likewise. - * config/i386/i386.cc (save_regs_using_push_pop): - Split from ix86_compute_frame_layout. - (ix86_compute_frame_layout): - Use save_regs_using_push_pop. - (pro_epilogue_adjust_stack): - Use gen_pro_epilogue_adjust_stack_add_nocc. - (ix86_expand_prologue): Add some assertions and adjust - the stack frame at the beginning of the prolog for shrink - wrapping separate. - (ix86_emit_save_regs_using_mov): - Skip registers that are wrapped separately. - (ix86_emit_restore_regs_using_mov): Likewise. - (ix86_expand_epilogue): Add some assertions and set - restore_regs_via_mov to true for shrink wrapping separate. - (ix86_get_separate_components): New function. - (ix86_components_for_bb): Likewise. - (ix86_disqualify_components): Likewise. - (ix86_emit_prologue_components): Likewise. - (ix86_emit_epilogue_components): Likewise. - (ix86_set_handled_components): Likewise. - (TARGET_SHRINK_WRAP_GET_SEPARATE_COMPONENTS): Define. - (TARGET_SHRINK_WRAP_COMPONENTS_FOR_BB): Likewise. - (TARGET_SHRINK_WRAP_DISQUALIFY_COMPONENTS): Likewise. - (TARGET_SHRINK_WRAP_EMIT_PROLOGUE_COMPONENTS): Likewise. - (TARGET_SHRINK_WRAP_EMIT_EPILOGUE_COMPONENTS): Likewise. - (TARGET_SHRINK_WRAP_SET_HANDLED_COMPONENTS): Likewise. - * config/i386/i386.h (struct machine_function):Add - reg_is_wrapped_separately array for register wrapping - information. - * config/i386/i386.md - (@pro_epilogue_adjust_stack_add_nocc): New. - -2025-06-18 Andrew MacLeod - - PR tree-optimization/120661 - * value-range.cc (irange::snap): New. - (irange::snap_subranges): New. - (irange::set_range_from_bitmask): Call snap_subranges. - * value-range.h (snap, snap_subranges): New prototypes. - -2025-06-17 Jan Hubicka - - * auto-profile.cc (afdo_indirect_call): Compute speculative edge - probability. - (add_scale): Break out from ... - (scale_bbs): Break out from ... - (afdo_adjust_guessed_profile): ... here; use componet array instead of - current_component hash_map; handle components with only 0 profile; - be more agressive on finding scales along the boundary. - -2025-06-17 Jan Hubicka - - * cgraph.cc (cgraph_node::apply_scale): Special case scaling - to profile_count::zero (). - (cgraph_node::verify_node): Add extra compatibility check. - -2025-06-17 Umesh Kalappa - - * config/riscv/sync.md (lrsc_atomic_exchange): Use scratch - register for loop control rather than lr output. - -2025-06-17 Jason Merrill - - * diagnostic.h (diagnostic_option_classifier): Friend - diagnostic_context. - (diagnostic_context::get_classification_history): New. - -2025-06-17 Jakub Jelinek - - PR tree-optimization/120677 - * gimple-crc-optimization.cc (crc_optimization::optimize_crc_loop): - Insert before gsi_after_labels instead of gsi_start_bb. Use - gimple_bb (output_crc) instead of output_crc->bb. Formatting fix. - -2025-06-17 Richard Sandiford - - PR target/113027 - * config/aarch64/aarch64-protos.h (aarch64_decompose_vec_struct_index): - Declare. - * config/aarch64/aarch64.cc (aarch64_decompose_vec_struct_index): New - function. - * config/aarch64/iterators.md (VEL, Vel): Add Advanced SIMD - structure modes. - * config/aarch64/aarch64-simd.md (vec_set) - (vec_extract): New patterns. - -2025-06-17 Tobias Burnus - - * omp-offload.cc (omp_discover_declare_target_tgt_fn_r): Also - walk external functions that are declare inline (and have a - DECL_SAVED_TREE). - -2025-06-16 Spencer Abson - - * config/aarch64/aarch64-protos.h (aarch64_sve_valid_pred_p): - Declare helper for aarch64_predicate_operand. - (aarch64_sve_packed_pred): Declare helper for new expanders. - (aarch64_sve_fp_pred): Likewise. - * config/aarch64/aarch64-sve.md (2): - Extend into... - (2): New expander for converting - vectors of HF,SF to vectors of HI,SI,DI. - (2): New expander for converting - vectors of SI,DI to vectors of DF. - (*aarch64_sve__nontrunc): - New pattern to match those we've added here. - (@aarch64_sve__trunc): Extend - into... - (@aarch64_sve__trunc): Match both - VNx2SI<-VNx2DF and VNx4SI<-VNx4DF. - (2): Extend into... - (2): New expander for converting vectors - of HI,SI,DI to vectors of HF,SF,DF. - (*aarch64_sve__nonextend): New - pattern to match those we've added here. - (trunc2): New expander to handle - narrowing ('truncating') FP<-FP conversions. - (*aarch64_sve__trunc): New - pattern to handle those we've added here. - (extend2): New expander to handle - widening ('extending') FP<-FP conversions. - (*aarch64_sve__nontrunc): New - pattern to handle those we've added here. - * config/aarch64/aarch64.cc (aarch64_sve_packed_pred): New function. - (aarch64_sve_fp_pred): Likewise. - (aarch64_sve_valid_pred_p): Likewise. - * config/aarch64/iterators.md (SVE_PARTIAL_HSF): New mode iterator. - (SVE_HSF): Likewise. - (SVE_SDF): Likewise. - (SVE_SI): Likewise. - (SVE_2SDI) Likewise. - (self_mask): Extend to all integer/FP vector modes. - (narrower_mask): Likewise (excluding QI). - * config/aarch64/predicates.md (aarch64_predicate_operand): New special - predicate to handle narrower predicate modes. - -2025-06-16 Spencer Abson - - * config/aarch64/aarch64-sve.md: Replace uses of SVE_FULL_F_BF - with SVE_FULL_F_B16B16. - Replace use of SVE_F with SVE_F_BF. - * config/aarch64/iterators.md (SVE_PARTIAL_F): New iterator for - partial SVE FP modes. - (SVE_FULL_F_BF): Rename to SVE_FULL_F_B16B16. - (SVE_PARTIAL_F_B16B16): New iterator (BF16 included) for partial - SVE FP modes. - (SVE_F_B16B16): New iterator for all SVE FP modes. - (SVE_BF): New iterator for all SVE BF16 modes. - (SVE_F): Redefine to exclude BF16 modes. - (SVE_F_BF): New iterator to replace the previous SVE_F. - (VPRED): Describe the VPRED mapping for partial vector modes. - (b): Cover partial FP modes. - (is_bf16): Likewise. - -2025-06-16 Jason Merrill - - * doc/invoke.texi: Document -Wsfinae-incomplete. - -2025-06-16 Matthieu Longo - Srinath Parvathaneni - - * config.in: Regenerate. - * config/aarch64/aarch64-elf-metadata.h - (class aeabi_subsection): New class for BAs. - * config/aarch64/aarch64-protos.h - (aarch64_pacret_enabled): New function. - * config/aarch64/aarch64.cc - (HAVE_AS_AEABI_BUILD_ATTRIBUTES): New definition. - (aarch64_file_end_indicate_exec_stack): Emit BAss. - (aarch64_pacret_enabled): New function. - (aarch64_start_file): Indent. - * configure: Regenerate. - * configure.ac: New configure check for BAs support in binutils. - -2025-06-16 Matthieu Longo - - * Makefile.in: Add missing declaration of BACKEND_H. - * config.gcc: Add aarch64-elf-metadata.o to extra_objs. - * config/aarch64/aarch64-elf-metadata.h: New file - * config/aarch64/aarch64-elf-metadata.cc: New file. - * config/aarch64/aarch64.cc - (GNU_PROPERTY_AARCH64_FEATURE_1_AND): Removed. - (GNU_PROPERTY_AARCH64_FEATURE_1_BTI): Likewise. - (GNU_PROPERTY_AARCH64_FEATURE_1_PAC): Likewise. - (GNU_PROPERTY_AARCH64_FEATURE_1_GCS): Likewise. - (aarch64_file_end_indicate_exec_stack): Move GNU properties code to - aarch64-elf-metadata.cc - * config/aarch64/t-aarch64: Declare target aarch64-elf-metadata.o - -2025-06-16 Matthieu Longo - - * config/aarch64/aarch64.cc - (aarch64_file_end_indicate_exec_stack): Emit assembly comments. - -2025-06-16 Jan Hubicka - - * auto-profile.cc (edge_set): Remove unused typedef. - (is_bb_annotated): Sanity check that annotated BBs has - quality AFDO and non-anntoated non-AFDO. Exceptions are - zeros. - (set_bb_annotated): Verify that BB set annotated has - AFDO profile. - (afdo_set_bb_count): Do not return true for 0 counts. - (afdo_find_equiv_class): Fix formating; - do not combine profile of annoated and non-annotated BBs. - (afdo_propagate_edge): Fix variable names; dump info - about changes; do not change non-annoated BB profiles; - if all flow out of BB was decided on, annotate remaining - edges with 0. - (afdo_propagate): Dump info about copied BB counts - and number of iteraitons used. - (cmp): New function. - (afdo_adjust_guessed_profile): New function. - (afdo_calculate_branch_prob): Do not initialize loop - optimizer here; call afdo_adjust_guessed_profile. - (afdo_annotate_cfg): Initialize profile here; - anotate entry/exit blocks only of profile is non-0. - * profile-count.h: (profile_count::force_guessed): New. - * tree-cfg.cc (gimple_verify_flow_info): Fix typo. - -2025-06-16 Jiawei - - * common/config/riscv/riscv-common.cc: Add b-ext and supm. - -2025-06-16 Takayuki 'January June' Suwa - - * config/xtensa/predicates.md (reload_operand): - Remove. - * config/xtensa/xtensa.md: - Remove the peephole2 pattern that was previously added. - -2025-06-16 Takayuki 'January June' Suwa - - * config/xtensa/xtensa.md: - Remove the peephole2 pattern that was previously added. - -2025-06-16 Jiawei - - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Handle - more logical simplifications. - -2025-06-15 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new - case UMAX. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op umax. - -2025-06-14 Georg-Johann Lay - - Backported from master: - 2025-06-14 Georg-Johann Lay - - PR rtl-optimization/120423 - PR rtl-optimization/116389 - * config/avr/avr.md [-mno-lra]: Add pre-reload split to transform - (left shift of) a paradoxical subreg to a (left shift of) zero-extend. - -2025-06-13 Jakub Jelinek - - PR middle-end/120629 - * cfgexpand.cc (expand_split_edge): New function. - (expand_gimple_cond, construct_init_block): Use it. - -2025-06-13 Spencer Abson - - PR target/118150 - * config/aarch64/aarch64-sve.md (*one_cmpl3_cc): New - combiner pattern. - (*one_cmpl3_ptest): Likewise. - -2025-06-13 Jakub Jelinek - - PR middle-end/120629 - * cfgexpand.cc (construct_init_block): If first_block isn't BB_RTL, - has any PHI nodes and false_edge->dest_idx before redirection is - different from make_single_succ_edge result's dest_idx, swap the - latter with the former last pred edge and their dest_idx members. - -2025-06-13 Kito Cheng - - * gcc.cc (driver::set_up_specs): Use gcc_exec_prefix to - read the spec file rather than standard_exec_prefix. - -2025-06-13 H.J. Lu - - PR target/120589 - * config/mcore/mcore.cc (mcore_mark_dllimport): Don't use - gen_rtx_MEM. - -2025-06-12 Jakub Jelinek - - PR tree-optimization/120638 - * tree-ssa-math-opts.cc (pass_cse_reciprocals::execute): Call - reset_flow_sensitive_info on arg1. - -2025-06-12 Stafford Horne - - PR target/120587 - * config/or1k/or1k.cc (or1k_can_change_mode_class): Allow - changing flags mode from BI to SI to allow for paradoxical - subregs. - -2025-06-12 Uros Bizjak - - PR target/120604 - * config/i386/i386-expand.cc (ix86_expand_int_movcc): Make sure - we can represent the difference between two 64-bit DImode - immediate values in 64-bit HOST_WIDE_INT. - -2025-06-12 Jakub Jelinek - - PR middle-end/120629 - * cfgexpand.cc (expand_gimple_cond): If dest bb isn't BB_RTL, - has any PHI nodes and false_edge->dest_idx before redirection is - different from make_single_succ_edge result's dest_idx, swap the - latter with the former last pred edge and their dest_idx members. - -2025-06-12 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new - case SMAX. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op smax. - -2025-06-12 Richard Sandiford - - PR target/120624 - * config/aarch64/aarch64.md (SME_STATE_REGNUM): Expand on comments. - * config/aarch64/aarch64-sme.md (aarch64_restore_za): Also set - SME_STATE_REGNUM - -2025-06-12 Alfie Richards - - * cgraph.cc (cgraph_node::record_function_versions): Refactor and - rename to... - (cgraph_node::add_function_version): new function. - * cgraph.h (cgraph_node::record_function_versions): Refactor and - rename to... - (cgraph_node::add_function_version): new function. - * config/aarch64/aarch64.cc (aarch64_get_function_versions_dispatcher): - Remove reordering. - * config/i386/i386-features.cc (ix86_get_function_versions_dispatcher): - Remove reordering. - * config/riscv/riscv.cc (riscv_get_function_versions_dispatcher): - Remove reordering. - * config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher): - Remove reordering. - -2025-06-12 Alfie Richards - - * attribs.cc (is_function_default_version): Add target_version logic. - -2025-06-12 Hu, Lin1 - - * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set 4 for SRF, - 6 for GRR, GNR, CWF, DMR, ARL, PTL. - -2025-06-11 David Malcolm - - PR other/116792 - * diagnostic-format-html.cc: Include "selftest-xml.h". - (html_builder::make_element_for_diagnostic): Move... - (class html_token_printer): ...from local to the function - to the global namespace. - (struct selftest::token_printer_test): New. - (selftest::test_token_printer): New. - (selftest::test_simple_log): Simplify using ASSERT_XML_PRINT_EQ. - (selftest::test_metadata): Likewise. - (selftest::diagnostic_format_html_cc_tests): Run the new test. - * selftest-xml.h: New file. - * xml.cc: Include "selftest-xml.h". - (selftest::assert_xml_print_eq): New. - (selftest::test_no_dtd): Simplify using ASSERT_XML_PRINT_EQ. - (selftest::test_printer): Likewise. - (selftest::test_attribute_ordering): Likewise. - -2025-06-11 Edwin Lu - - * config/riscv/riscv.cc (struct riscv_tune_param): Add tune - param. - (riscv_sched_can_speculate_insn): Implement. - (TARGET_SCHED_CAN_SPECULATE_INSN): Ditto. - -2025-06-11 Uros Bizjak - - PR target/120604 - * config/i386/i386-expand.cc (ix86_expand_int_movcc): Cast operands of - signed 64-bit HOST_WIDE_INT subtractions to (unsigned HOST_WIDE_INT). - -2025-06-11 Paul-Antoine Arras - - PR target/119100 - * config/riscv/autovec-opt.md (*_vf_): Only handle vfmadd - and vfmsub. - (*vfnmsub_): New pattern. - (*vfnmadd_): New pattern. - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add cost model for - NEG and VEC_DUPLICATE. - -2025-06-11 Jakub Jelinek - - PR middle-end/120434 - * gimple-range-fold.cc: Include rtl.h. - (fold_using_range::range_of_range_op): Handle bb ending with - GIMPLE_COND during RTL expansion where there is only one succ - edge instead of two. - -2025-06-11 Jakub Jelinek - - * internal-fn.cc (expand_POPCOUNT): Use - expand_expr (lhs, NULL_RTX, VOIDmode, EXPAND_WRITE) instead of - expand_normal (lhs). - -2025-06-11 David Malcolm - - PR other/116792 - * diagnostic-format-html.cc: Include "diagnostic-path.h" and - "diagnostic-client-data-hooks.h". - (html_builder::m_logical_loc_mgr): New field. - (html_builder::m_cur_nesting_levels): New field. - (html_builder::m_last_logical_location): New field. - (html_builder::m_last_location): New field. - (html_builder::m_last_expanded_location): New field. - (HTML_STYLE): Add "white-space: pre;" to .source and .annotation. - Add "gcc-quoted-text" CSS class. - (html_builder::html_builder): Initialize the new fields. If CSS - is enabled, add CDN links to PatternFly 3 stylesheets. - (html_builder::add_stylesheet): New. - (html_builder::on_report_diagnostic): Add "alert" param to - make_element_for_diagnostic, setting it by default, but unsetting - it for nested diagnostics below the top level. Use - add_at_nesting_level for nested diagnostics. - (add_nesting_level_attr): New. - (html_builder::add_at_nesting_level): New. - (get_pf_class_for_alert_div): New. - (get_pf_class_for_alert_icon): New. - (get_label_for_logical_location_kind): New. - (add_labelled_value): New. - (html_builder::make_element_for_diagnostic): Add leading comment. - Add "alert" param. Drop class="gcc-diagnostic" from
tag, - instead adding the class for a PatternFly 3 alert if "alert" is - true, and adding a with an alert icon, both according to - the diagnostic severity. Add a severity prefix to the message for - alerts. Add any metadata/option text as suffixes to the message. - Show any logical location. Show any physical location. Don't - show the locus if the last location is unchanged within the - diagnostic_group. Wrap any execution path element in a -
and add a label to it. Wrap any - generated patch in a
and add a label - to it. - (selftest::test_simple_log): Update expected HTML. - -2025-06-11 David Malcolm - - * diagnostic-path-output.cc: Use xml::printer::add_text_from_pp. - * diagnostic-show-locus.cc: Likewise. - * xml-printer.h (xml::printer::add_text_from_pp): New decl. - * xml.cc (xml::node_with_children::add_text_from_pp): New. - (xml::printer::add_text_from_pp): New. - * xml.h (xml::node_with_children::add_text_from_pp): New decl. - -2025-06-11 David Malcolm - - PR other/120610 - * diagnostic-format-html.cc (html_builder::html_builder): Update - for new param of xml::printer::pop_tag. - (html_path_label_writer::end_label): Likewise. - (html_builder::make_element_for_diagnostic::html_token_printer): - Give the instance its own xml::printer. Update for new param of - xml::printer::pop_tag. - (html_builder::make_element_for_diagnostic): Give the instance its - own xml::printer. - (html_builder::make_metadata_element): Update for new param of - xml::printer::pop_tag. - (html_builder::flush_to_file): Likewise. - * diagnostic-path-output.cc (begin_html_stack_frame): Likewise. - (begin_html_stack_frame): Likewise. - (end_html_stack_frame): Likewise. - (print_path_summary_as_html): Likewise. - * diagnostic-show-locus.cc - (struct to_text::auto_check_tag_nesting): New. - (struct to_html:: auto_check_tag_nesting): New. - (to_text::pop_html_tag): Change param to const char *. - (to_html::pop_html_tag): Likewise; rename param to - "expected_name". - (default_diagnostic_start_span_fn): Update for new param - of xml::printer::pop_tag. - (layout_printer::end_label): Likewise. - (layout_printer::print_trailing_fixits): Add RAII sentinel - to check tag nesting for the HTML case. Delete stray popping - of "td" in the presence of fix-it hints. - (layout_printer::print_line): Add RAII sentinel - to check tag nesting for the HTML case. - (diagnostic_source_print_policy::print_as_html): Likewise. - (layout_printer::print): Likewise. - * xml-printer.h (xml::printer::printer): Add optional - "check_popped_tags" param. - (xml::printer::pop_tag): Add "expected_name" param. - (xml::printer::get_num_open_tags): New accessor. - (xml::printer::dump): New decl. - (xml::printer::m_check_popped_tags): New field. - (class xml::auto_check_tag_nesting): New. - (class xml::auto_print_element): Update for new param of pop_tag. - * xml.cc: Move pragma pop so that the pragma also covers - xml::printer's member functions, "dump" in particular. - (xml::printer::printer): Add param "check_popped_tags". - (xml::printer::pop_tag): Add param "expected_name" and use it to assert - that the popped tag is as expected. Assert that we have a tag to - pop. - (xml::printer::dump): New. - (selftest::test_printer): Update for new param of pop_tag. - (selftest::test_attribute_ordering): Likewise. - -2025-06-11 David Malcolm - - * gimple-ssa-warn-access.cc - (pass_waccess::maybe_check_dealloc_call): Add missing - auto_diagnostic_group to nest the "returned from %qD" - note within the warning. - -2025-06-10 Jan Hubicka - - * cgraph.cc (cgraph_node::make_profile_local): New member function. - (cgraph_node::make_profile_global0): New member function. - (cgraph_node::apply_scale): Do not call adjust_for_ipa_scalling. - (cgraph_node::scale_profile_to): New member function. - * cgraph.h (cgraph_node::make_profile_local, - cgraph_node::make_profile_global0, cgraph_node::scale_profile_to): - Declare. - * ipa-cp.cc (lenient_count_portion_handling): Fix logic dropping count - to local. - (update_counts_for_self_gen_clones): Use scale_profile_to. - (update_profiling_info): Use make_profile_local, make_profile_global0 - and scale_profile_to. - (update_specialized_profile): Likewise. - * ipa-inline-transform.cc (clone_inlined_nodes): Call - adjust_for_ipa_scalling. - -2025-06-10 Jakub Jelinek - - PR middle-end/120434 - * expr.cc (expand_expr_real_2) : If get_range_pos_neg - at -O2 for scalar integer extension suggests the most significant - bit of op0 is not set, try both unsigned and signed conversion and - choose the cheaper one. If both are the same cost, choose one - based on TYPE_UNSIGNED (TREE_TYPE (treeop0)). - -2025-06-10 Jakub Jelinek - - PR middle-end/120434 - * config/i386/i386.md (*bsr_rex64_2): Rename to ... - (*bsr_rex64_2): ... this. Use any_extend instead of sign_extend. - (*bsr_2): Rename to ... - (*bsr_2): ... this. Use any_extend instead of sign_extend. - (bsr splitters after those): Use any_extend instead of sign_extend. - -2025-06-10 Jakub Jelinek - - PR middle-end/120434 - * cfgrtl.h (update_bb_for_insn_chain): Declare. - * cfgrtl.cc (update_bb_for_insn_chain): No longer static. - * cfgexpand.h (expand_remove_edge): Declare. - * cfgexpand.cc: Include "gimple-range.h". - (head_end_for_bb): New variable. - (label_rtx_for_bb): Drop ATTRIBUTE_UNUSED from bb argument. - Use head_end_for_bb if possible for non-BB_RTL bbs. - (expand_remove_edge): New function. - (maybe_cleanup_end_of_block): Use it instead of remove_edge. - (expand_gimple_cond): Don't clear EDGE_TRUE_VALUE and - EDGE_FALSE_VALUE just yet. Use head_end_for_bb elts instead - of BB_END and update_bb_for_insn_chain instead of update_bb_for_insn. - (expand_gimple_tailcall): Use expand_remove_edge instead of - remove_edge. Use head_end_for_bb elts instead of BB_END and - update_bb_for_insn_chain instead of update_bb_for_insn. - (expand_gimple_basic_block): Don't change bb to BB_RTL here, instead - use head_end_for_bb elts instead of BB_HEAD and BB_END. Use - update_bb_for_insn_chain instead of update_bb_for_insn. - (pass_expand::execute): Enable ranger before expand_gimple_basic_block - calls and create head_end_for_bb vector. Disable ranger after - those calls, turn still non-BB_RTL blocks into BB_RTL and set their - BB_HEAD and BB_END from head_end_for_bb elts, and clear EDGE_TRUE_VALUE - and EDGE_FALSE_VALUE flags on edges. Release head_end_for_bb - vector. - * tree-outof-ssa.cc (expand_phi_nodes): Don't clear phi nodes here. - * tree.h (get_range_pos_neg): Add gimple * argument defaulted to NULL. - * tree.cc (get_range_pos_neg): Add stmt argument. Use - get_range_query (cfun) instead of get_global_range_query () and pass - stmt as third argument to range_of_expr. - * expr.cc (expand_expr_divmod): Pass currently_expanding_gimple_stmt - to get_range_pos_neg. - (expand_expr_real_1) : Change internal fn handling - to avoid temporarily overwriting gimple_call_lhs of ifn, instead - temporarily overwrite SSA_NAME_VAR of its lhs. - (maybe_optimize_pow2p_mod_cmp): Pass currently_expanding_gimple_stmt - to get_range_pos_neg. - (maybe_optimize_mod_cmp): Likewise. - * internal-fn.cc (get_min_precision): Likewise. Use - get_range_query (cfun) instead of get_global_range_query () and pass - currently_expanding_gimple_stmt as third argument to range_of_expr. - Pass g to get_range_pos_neg. - (expand_addsub_overflow): Pass currently_expanding_gimple_stmt - to get_range_pos_neg. - (expand_mul_overflow): Likewise. - (expand_arith_overflow): Pass stmt to get_range_pos_neg. - * gimple-range-edge.cc: Include rtl.h. - (gimple_outgoing_range_stmt_p): Return NULL for BB_RTL bbs. - (gimple_outgoing_range::calc_switch_range): If default_edge is NULL, - assert currently_expanding_to_rtl and return before trying to - set range on that edge. - * builtins.cc (expand_builtin_strnlen): Use get_range_query (cfun) - instead of get_global_range_query () and pass - currently_expanding_gimple_stmt as third argument to range_of_expr. - (determine_block_size): Likewise. - * gimple-range.cc (gimple_ranger::range_on_exit): Set s to NULL - instead of last_nondebug_stmt for BB_RTL bbs. - * stmt.cc: Include cfgexpand.h. - (expand_case): Use expand_remove_edge instead of remove_edge. - -2025-06-10 Andrew MacLeod - - * value-range.cc (irange::set_range_from_bitmask): When the bitmask - result is a singleton, check if it is contained in the range. - -2025-06-10 Tobias Burnus - - * config/gcn/gcn-devices.def: Add gfx942, gfx950 and gfx9-4-generic. - * config/gcn/gcn-opts.h (TARGET_CDNA3, TARGET_CDNA3_PLUS, - TARGET_GLC_NAME, TARGET_TARGET_SC_CACHE): Define. - (TARGET_ARCHITECTED_FLAT_SCRATCH): Use also for CDNA3. - * config/gcn/gcn.h (gcn_isa): Add ISA_CDNA3 to the enum. - * config/gcn/gcn.cc (print_operand): Update 'g' to use - TARGET_GLC_NAME; add 'G' to print TARGET_GLC_NAME unconditionally. - * config/gcn/gcn-valu.md (scatter, gather): Use TARGET_GLC_NAME. - * config/gcn/gcn.md: Use %G instead of glc; use 'buffer_inv sc1' - for TARGET_TARGET_SC_CACHE. - * doc/invoke.texi (march): Add gfx942, gfx950 and gfx9-4-generic. - * doc/install.texi (amdgcn*-*-*): Add gfx942, gfx950 and gfx9-4-generic. - * config/gcn/gcn-tables.opt: Regenerate. - -2025-06-10 Jeff Law - - * config/riscv/riscv.md (lui-constraintand_to_or): Do not use - the RTL template for split code. Emit it directly taking care to avoid - emitting a constant load that needed synthesis. Fix formatting. - -2025-06-10 Kito Cheng - - * doc/riscv-ext.texi: Regen. - -2025-06-10 Pan Li - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new - case UMOD. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op umod. - -2025-06-09 David Malcolm - - * diagnostic-format-sarif.cc (maybe_get_sarif_kind): Update for - conversion of enum logical_location_kind to enum class. - * diagnostic.cc (logical_location_manager::function_p): Likewise. - * libgdiagnostics.cc (html-output/missing-semicolon.py::get_kind): - Likewise. - * logical-location.h (enum logical_location_kind): Convert to... - (enum class logical_location_kind): ...this. - * selftest-logical-location.cc - (test_logical_location_manager::item_from_funcname): Update for - conversion of enum logical_location_kind to enum class. - * tree-logical-location.cc - (tree_logical_location_manager::get_kind): Likewise. - -2025-06-09 Jan Hubicka - - * cgraph.cc (cgraph_node::apply_scale): New member function. - * cgraph.h (struct cgraph_node): declare. - * ipa-cp.cc (update_counts_for_self_gen_clones): - Use cgraph_node::apply_scale. - (update_profiling_info): Do not overwrite local - profile when dropping to 0 global profile. - (update_specialized_profile): Likewise. - * ipa-inline-transform.cc (update_noncloned_counts): Remove. - (can_remove_node_now_p_1): Fix formating. - (clone_inlined_nodes): Use cgraph_node::apply_scale. - * profile-count.cc (profile_count::dump): Do not ICE - when count is not compatible with entry block count. - * tree-cfg.cc (gimple_verify_flow_info): Check - compatibility of count and entry block count. - -2025-06-09 David Malcolm - - PR other/116792 - * diagnostic-format-html.cc (html_builder::m_title_element): New - field. - (html_builder::html_builder): Initialize it. Don't add - placeholder text. - (html_builder::set_main_input_filename): New. - (html_output_format::set_main_input_filename): New. - (test_html_diagnostic_context::test_html_diagnostic_context): Call - set_main_input_filename on the new sink. - (seldtest::test_simple_log): Update expected text. - * diagnostic-format-json.cc (diagnostic_output_format_init_json): - Return a reference to the new sink. - (diagnostic_output_format_init_json_stderr): Likewise. - (diagnostic_output_format_init_json_file): Likewise. - * diagnostic-format-sarif.cc (sarif_builder::sarif_builder): Drop - "main_input_filename_" param, and move adding an artifact for it - with diagnostic_artifact_role::analysis_target to... - (sarif_builder::set_main_input_filename): ...this new function. - (sarif_output_format::set_main_input_filename): New. - (sarif_output_format::sarif_output_format): Drop - "main_input_filename_" param. - (sarif_stream_output_format::sarif_stream_output_format): - Likewise. - (sarif_file_output_format::sarif_file_output_format): Likewise. - (diagnostic_output_format_init_sarif): Return a reference to *FMT. - (diagnostic_output_format_init_sarif_stderr): Return a refererence - to the new sink. Drop "main_input_filename_" param. - (diagnostic_output_format_init_sarif_file): Likewise. - (diagnostic_output_format_init_sarif_stream): Likewise. - (make_sarif_sink): Drop "main_input_filename_" param. - (selftest::test_sarif_diagnostic_context::test_sarif_diagnostic_context): - Likewise. Call set_main_input_filename on the new format. - (selftest::test_sarif_diagnostic_context::buffered_output_format::buffered_output_format): - Drop "main_input_filename_" param. - (selftest::test_make_location_object): Likewise. - * diagnostic-format-sarif.h - (diagnostic_output_format_init_sarif_stderr): Return a refererence - to the new sink. Drop "main_input_filename_" param. - (diagnostic_output_format_init_sarif_file): Likewise. - (diagnostic_output_format_init_sarif_stream): Likewise. - (make_sarif_sink): Drop "main_input_filename_" param. - * diagnostic-format.h - (diagnostic_output_format::set_main_input_filename): New vfunc. - (diagnostic_output_format_init_json_stderr): Return a refererence - to the new sink. - (diagnostic_output_format_init_json_file): Likewise. - * diagnostic.cc (diagnostic_output_format_init): Likewise. Call - set_main_input_filename on the new sink. - * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for above - changes. - * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Likewise. - (handle_OPT_fdiagnostics_add_output_): Likewise. - (handle_OPT_fdiagnostics_set_output_): Likewise. - -2025-06-09 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): Relax - condition for adjustments due to copies from promoted SUBREGs. - -2025-06-09 Tamar Christina <tamar.christina@arm.com> - - * doc/extend.texi (outline-atomics): Document the inverse -mno flag. - -2025-06-09 Tamar Christina <tamar.christina@arm.com> - - * params.opt (vect-scalar-cost-multiplier): New. - * tree-vect-loop.cc (vect_estimate_min_profitable_iters): Use it. - * doc/invoke.texi (vect-scalar-cost-multiplier): Document it. - -2025-06-09 liuhongt <hongtao.liu@intel.com> - - PR target/103750 - * config/i386/i386.cc (ix86_rtx_costs): Adjust rtx_cost for - maskload. - * config/i386/sse.md (*<avx512>_load<mode>mask_and15): New - define_insn_and_split. - (*<avx512>_load<mode>mask_and3): Ditto. - -2025-06-09 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new - case MOD. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op mod. - -2025-06-08 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * auto-profile.cc (function_instance::merge): Fix typo. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - PR target/120203 - * config/riscv/riscv.cc (CFUN_IN_CALL): New macro. - (struct mode_switching_info): Add new field. - (riscv_frm_adjust_mode_after_call): Remove. - (riscv_frm_mode_needed): Track call_insn. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119164 - * config/riscv/riscv.cc (riscv_emit_frm_mode_set): check - STATIC_FRM_P for transition to DYN. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - * config/riscv/riscv.cc (riscv_frm_emit_after_bb_end): Delete. - (riscv_frm_mode_needed): Remove call riscv_frm_emit_after_bb_end. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - * config/riscv/riscv.cc (riscv_dynamic_frm_mode_p): Remove. - (riscv_mode_confluence): Ditto. - (TARGET_MODE_CONFLUENCE): Ditto. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - * emit-rtl.cc (next_nonnote_nondebug_insn): Update comments. - -2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-phiopt.cc (cond_if_else_store_replacement): Move - definitin of else_vdef to right before the usage. Reformat - slightly. - -2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120533 - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_limited): New function. - (pass_phiopt::execute): Call cond_if_else_store_replacement_limited - for diamand case. - -2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-phiopt.cc (single_trailing_store_in_bb): Add vphi argument. - Check for single use of the vdef of the store instead of a loop - and check vdef's single use statement is the same as vphi. - (cond_if_else_store_replacement): Update call to single_trailing_store_in_bb. - -2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-phiopt.cc (cond_if_else_store_replacement): Use get_virtual_phi - instead of inlining it. - -2025-06-08 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_expand_conditional_move): Use - riscv_extend_comparands to extend sub-word comparison arguments. - -2025-06-08 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * config/xtensa/xtensa.cc (printx, print_operand): - Add two instruction operand format codes 'U' and 'V', - whose represent scale factors of 0 to 15th positive/negative - power of two. - * config/xtensa/xtensa.md (c_enum "unspec"): - Add UNSPEC_CEIL and UNSPEC_FLOOR. - (int_iterator ANY_ROUND, int_attr m_round): - New integer iterator and its attribute. - (fix<s_fix>_truncsfsi2, *fix<s_fix>_truncsfsi2_2x, - *fix<s_fix>_truncsfsi2_scaled, float<s_float>sisf2, - *float<s_float>sisf2_scaled): - Use output templates with the operand formats added above, - instead of individual output statements. - (l<m_round>sfsi2, *l<m_round>sfsi2_2x, *l<m_round>sfsi2_scaled): - New insn patterns. - -2025-06-07 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_expand_conditional_move): Use - riscv_extend_comparands to extend sub-word comparison arguments. - -2025-06-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120572 - * doc/invoke.texi (Wmusttail-local-addr, - Wno-maybe-musttail-local-addr): Fix opindex. - * common.opt.urls: Regenerate. - -2025-06-06 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-html.cc (struct html_doctypedecl): New. - (html_builder::html_builder): Use it to populate the document's - m_doctypedecl. - * xml.cc (xml::document::write_as_xml): Replace hardcoded HTML DTD - with use of m_doctypedecl field. - (selftest::test_no_dtd): New. - (selftest::xml_cc_tests): New. - * xml.h (struct doctypedecl): New decl. - -2025-06-06 David Malcolm <dmalcolm@redhat.com> - - * Makefile.in (OBJS-libcommon): Add xml.o. - * diagnostic-format-html.cc (namespace xml): Move implementation - to xml.cc - (selftest::test_printer): Likewise. - (selftest::test_attribute_ordering): Likewise. - (selftest::diagnostic_format_html_cc_tests): Don't call the moved - tests here; they will be called from xml_cc_tests in xml.cc. - * selftest-run-tests.cc (selftest::run_tests): Call xml_cc_tests. - * selftest.h (selftest::xml_cc_tests): New decl. - * xml.cc: New file, based on material from - diagnostic-format-html.cc. - -2025-06-06 David Malcolm <dmalcolm@redhat.com> - - * selftest.h: Fix the sorting of the various *_cc_tests decls. - -2025-06-06 David Malcolm <dmalcolm@redhat.com> - - * text-art/widget.cc (selftest::test_empty_wrapper_widget): New. - (selftest::text_art_widget_cc_tests): Call it. - * text-art/widget.h (text_art::wrapper_widget::calc_req_size): - Gracefully handle m_child being null. - (text_art::wrapper_widget::update_child_alloc_rects): Likewise. - (text_art::wrapper_widget::paint_to_canvas): Likewise. - -2025-06-06 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Add vphi argument. - Manually update the vphi and new_stmt vdef/lhs. - (cond_if_else_store_replacement): Update call to cond_if_else_store_replacement_1. - -2025-06-06 Tobias Burnus <tburnus@baylibre.com> - Sandra Loosemore <sloosemore@baylibre.com> - - * gimple-fold.cc (gimple_fold_builtin_omp_get_initial_device, - gimple_fold_builtin_omp_get_num_devices): New. - (gimple_fold_builtin): Call them. - * omp-builtins.def (BUILT_IN_OMP_GET_INITIAL_DEVICE): Add - (BUILT_IN_OMP_GET_NUM_DEVICES): Make uservisible + pure. - -2025-06-06 Tobias Burnus <tburnus@baylibre.com> - - * builtins.def (DEF_GOACC_BUILTIN_COMPILER, DEF_GOMP_BUILTIN_COMPILER): - Set NONANSI_P = false to enable those also with -fno-nonansi-builtins. - -2025-06-06 Richard Biener <rguenther@suse.de> - - * tree-vect-stmts.cc (get_group_load_store_type): Remove - non-SLP path. - (get_load_store_type): Likewise. - -2025-06-06 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new - case UDIV. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op divu. - -2025-06-06 Richard Biener <rguenther@suse.de> - - * tree-vect-stmts.cc (vectorizable_store): Remove non-SLP - paths. - -2025-06-06 Richard Biener <rguenther@suse.de> - - * gimple-fold.h (create_tmp_reg_or_ssa_name): Remove. - * gimple-fold.cc (create_tmp_reg_or_ssa_name): Likewise. - (gimple_fold_builtin_memory_op): Use make_ssa_name. - (gimple_fold_builtin_strchr): Likewise. - (gimple_fold_builtin_strcat): Likewise. - (gimple_load_first_char): Likewise. - (gimple_fold_builtin_string_compare): Likewise. - (gimple_build): Likewise. - * tree-inline.cc (copy_bb): Likewise. - * config/rs6000/rs6000-builtin.cc (fold_build_vec_cmp): Likewise. - (rs6000_gimple_fold_mma_builtin): Likewise. - (rs6000_gimple_fold_builtin): Likewise. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * expr.cc (store_constructor) <ARRAY_TYPE>: Perform the arithmetics - on offsets in (unsigned) sizetype. - -2025-06-06 Jan Hubicka <hubicka@ucw.cz> - - * coverage.cc (coverage_init): Return early when in LTO - -2025-06-06 Jan Hubicka <hubicka@ucw.cz> - - * profile-count.cc (profile_count::to_sreal_scale): Special case 0 of autofdo. - (profile_count::combine_with_ipa_count): If outer function has GLOBAL0 profile - but innter counter has non-zero profile, force it to be 0. - -2025-06-06 Jiawei <jiawei@iscas.ac.cn> - Jiawei Chen <jiawei@iscas.ac.cn> - Yangyu Chen <cyy@cyyself.name> - Tang Haojin <tanghaojin@outlook.com> - - * config/riscv/riscv-cores.def (RISCV_TUNE): New cpu tune. - (RISCV_CORE): New cpu. - * doc/invoke.texi: Ditto. - -2025-06-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120032 - * tree-ssa-forwprop.cc (simplify_count_zeroes): When we cannot use - the IFN to determine the result at zero use a conditional move - to reproduce the correct result from the table-based - algorithm. - -2025-06-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120032 - * match.pd (clz_table_index): New match. - * tree-ssa-forwprop.cc (check_table_array): Rename from - check_ctz_array. Split out actual verification to a functor. - (check_table_string): Rename from check_ctz_string and likewise. - (check_table): Rename from check_ctz_table and adjust. - (gimple_clz_table_index): Declare. - (simplify_count_zeroes): Rename from simplify_count_trailing_zeroes. - Extend to cover CLZ. - (pass_forwprop::execute): Adjust. - -2025-06-06 Richard Biener <rguenther@suse.de> - - * tree-ssa-forwprop.cc (simplify_count_trailing_zeroes): - Use ranger instead of tree_expr_nonzero_p. - -2025-06-06 Richard Biener <rguenther@suse.de> - - * tree-ssa-forwprop.cc (optimize_count_trailing_zeroes): - Inline into ... - (simplify_count_trailing_zeroes): ... this function. - Split out ... - (check_ctz_table): ... a wrapper for CONSTRUCTOR vs. STRING_CST - handling. - -2025-06-05 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_expand_conditional_move): Avoid - zicond in some cases involving sign bit tests. - * config/riscv/riscv.md: Split a splat of the sign bit feeding a - masking off high bits into a pair of right shifts. - -2025-06-05 Uros Bizjak <ubizjak@gmail.com> - - PR target/120553 - * config/i386/i386.md (mov<mode>cc): Use "general_operand" - predicate for operands 2 and 3 for all modes. - -2025-06-05 Marek Polacek <polacek@redhat.com> - - * doc/invoke.texi: Update a link to c99status.html. - * doc/standards.texi: Likewise. - -2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-ccp.cc (insert_clobber_before_stack_restore): Update the virtual - op on the inserted clobber and the stack restore function. - (do_ssa_ccp): Don't add TODO_update_ssa to the todo. - -2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> - - * config/aarch64/aarch64-sve-builtins.cc: Include value-range.h and tree-ssanames.h - (gimple_folder::convert_and_fold): Use make_ssa_name - instead of create_tmp_var for the temporary. Add comment about callback argument. - -2025-06-05 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120231 - * range-op.cc (range_op_table::range_op_table): Register op_cast - also for FLOAT_EXPR and FIX_TRUNC_EXPR. - (RO_III): Adjust comment. - (range_op_handler::op1_range): Handle RO_IFI rather than RO_IFF. - Don't handle RO_FII. - (range_operator::op1_range): Remove overload with - irange &, tree, const frange &, const frange &, relation_trio - and frange &, tree, const irange &, const irange &, relation_trio - arguments. Add overload with - irange &, tree, const frange &, const irange &, relation_trio - arguments. - * range-op-mixed.h (operator_cast::op1_range): Remove overload with - irange &, tree, const frange &, const frange &, relation_trio - and frange &, tree, const irange &, const irange &, relation_trio - arguments. Add overload with - irange &, tree, const frange &, const irange &, relation_trio and - frange &, tree, const irange &, const frange &, relation_trio - arguments. - * range-op.h (range_operator::op1_cast): Remove overload with - irange &, tree, const frange &, const frange &, relation_trio - and frange &, tree, const irange &, const irange &, relation_trio - arguments. Add overload with - irange &, tree, const frange &, const irange &, relation_trio - arguments. - * range-op-float.cc (operator_cast::fold_range): Implement - float to int and int to float casts. - (operator_cast::op1_range): Remove overload with - irange &, tree, const frange &, const frange &, relation_trio - and frange &, tree, const irange &, const irange &, relation_trio - arguments. Add overload with - irange &, tree, const frange &, const irange &, relation_trio and - frange &, tree, const irange &, const frange &, relation_trio - arguments and implement reverse op of float to int and int to float - cast there. - -2025-06-05 Jan Hubicka <hubicka@ucw.cz> - - * auto-profile.cc (afdo_calculate_branch_prob): Fix typo - in previous patch. - -2025-06-05 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc: Remove structured binding - from the code. - -2025-06-05 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120547 - * real.cc (real_from_integer): Remove maxbitlen variable, use - len instead of that. When shifting right, or in 1 if any of the - shifted away bits are non-zero. Formatting fix. - -2025-06-05 Jan Hubicka <hubicka@ucw.cz> - - * auto-profile.cc (update_count_by_afdo_count): Fix handling - of GUESSED_LOCAL. - (afdo_calculate_branch_prob): Preserve static profile for - probabilities 0 and 1. - -2025-06-05 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec-opt.md: Leverage vdup_v and v_vdup - binary op for different patterns. - * config/riscv/vector-iterators.md: Add vdup_v and v_vdup - binary op iterators. - -2025-06-05 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/zicond.md: Add new splitters to select - 1, -1 or -1, 1 based on a sign bit test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension definition. - * config/riscv/riscv-ext.opt: New extension mask. - * doc/riscv-ext.texi: Document the new extension. - -2025-06-05 Eric Botcazou <ebotcazou@adacore.com> - - * tree-vect-data-refs.cc (vect_can_force_dr_alignment_p): Return - false if the variable has no symtab node. - -2025-06-05 Spencer Abson <spencer.abson@arm.com> - - * tree-eh.cc (operation_could_trap_helper_p): Cover FIX_TRUNC - expressions explicitly. - -2025-06-05 Tobias Burnus <tburnus@baylibre.com> - - * config.gcc (--with-{arch,tune}): Use .def file to validate gcn - processor names. - * doc/install.texi (amdgcn*-*-*): Update list of devices supported - by --with-arch/--with-tune. - -2025-06-05 Hongyu Wang <hongyu.wang@intel.com> - - PR middle-end/112824 - * tree-sra.cc (sra_get_max_scalarization_size): Use MOVE_MAX - instead of UNITS_PER_WORD to define max_scalarization_size. - -2025-06-05 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/sse.md - (avx512f_movddup512<mask_name>): Change sselog1 to ssemov. - (avx_movddup256<mask_name>): Ditto. - (*vec_dupv2di): Change alternative 4's type attribute from sselog1 - to ssemov. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: Update declaration. - -2025-06-04 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * auto-profile.cc (autofdo_source_profile::read): Dump message - while merging profile. - * pass_manager.h (get_pass_auto_profile): New. - -2025-06-04 Sandra Loosemore <sloosemore@baylibre.com> - - PR c++/120518 - * omp-general.cc (omp_device_num_check): Look inside a - CLEANUP_POINT_EXPR when trying to optimize special cases. - -2025-06-04 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/mkoffload.cc (process): Use an 'auto_vec' for - 'file_idx'. - -2025-06-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/14295 - PR tree-optimization/108358 - PR tree-optimization/114169 - * tree-ssa-forwprop.cc (optimize_agr_copyprop): New function. - (pass_forwprop::execute): Call optimize_agr_copyprop for load/store statements. - -2025-06-04 Pengfei Li <Pengfei.Li2@arm.com> - - * match.pd: Add folding rule for vector average. - * tree-ssa-ccp.cc (get_default_value): Reject vector types. - (evaluate_stmt): Reject vector types. - * tree-ssanames.cc (get_nonzero_bits_1): Extend to handle - uniform vectors. - -2025-06-04 Xi Ruoyao <xry111@xry111.site> - - PR rtl-optimization/120050 - * ext-dce.cc (ext_dce_process_uses): Break early if a SUBREG in - rhs is promoted and the truncation from the inner mode to the - outer mode is not a noop when handling SETs. - -2025-06-04 Jakub Jelinek <jakub@redhat.com> - - * range-op-float.cc (range_operator::fold_range, - range_operator::op1_range, range_operator::op2_range, - range_operator::lhs_op1_relation, range_operator::lhs_op2_relation, - operator_equal::op1_range, foperator_unordered_gt::op1_range): Fix - up parameter indentation. - * range-op.cc (range_operator::fold_range, range_operator::op1_range, - range_operator::op1_op2_relation_effect, - range_operator::update_bitmask, plus_minus_ranges, - operator_bitwise_and::lhs_op1_relation): Likewise. - -2025-06-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120231 - * range-op-mixed.h (operator_cast::fold_range): Add overload - with 3 {,const} frange & operands. Change parameter names and - add final override keywords for float <-> integer cast overloads. - (operator_cast::op1_range): Likewise. - * range-op-float.cc (operator_cast::fold_range): New overload - with 3 {,const} frange & operands. - (operator_cast::op1_range): Likewise. - -2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * config/riscv/riscv-ext.def: Imply zicsr. - -2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension defs. - * config/riscv/riscv-ext.opt: Ditto. - * doc/riscv-ext.texi: Ditto. - -2025-06-04 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120447 - * emit-rtl.cc (validate_subreg): Restrict ordered_p test - between osize and regsize to cases where the inner value - occupies multiple blocks. - -2025-06-04 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Rename - the args to scalar2vr. - (riscv_rtx_costs): Leverage above func to avoid code dup. - -2025-06-04 H.J. Lu <hjl.tools@gmail.com> - - PR debug/120525 - * var-tracking.cc (prepare_call_arguments): Use MEM_EXPR only - if MEM_P is true. - -2025-06-04 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension defs. - * config/riscv/riscv-ext.opt: Ditto. - * doc/riscv-ext.texi: Ditto. - -2025-06-04 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/i386.md (define_peephole2): Define some new peephole2 for - APX NDD. - -2025-06-04 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/i386.md: Add 4 new peephole2 by swap the original - peephole2's operands' order to support new pattern. - -2025-06-04 H.J. Lu <hjl.tools@gmail.com> - - PR other/120494 - * calls.cc (expand_call): Always add REG_CALL_DECL note. - (emit_library_call_value_1): Likewise. - -2025-06-03 Richard Biener <rguenther@suse.de> - - * gimple-fold.cc (create_tmp_reg_or_ssa_name): Always - create a SSA name. - -2025-06-03 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new - case for DIV op. - * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add new func - to get the cost of vector binary. - (riscv_rtx_costs): Add div rtx match and leverage above wrap to - get cost. - * config/riscv/vector-iterators.md: Add new op div to no_shift_vx_op. - -2025-06-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120517 - * tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): - Fix math in dataref group split. - -2025-06-03 Paul-Antoine Arras <parras@baylibre.com> - - * config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost): Replace - FR2VR with get_fr2vr_cost (). - * config/riscv/riscv.cc (riscv_register_move_cost): Likewise. - (riscv_builtin_vectorization_cost): Likewise. - -2025-06-03 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * config/riscv/autovec-opt.md (*<optab>_vf_<mode>): Add new pattern to - combine vec_duplicate + vfm{add,sub}.vv into vfm{add,sub}.vf. - * config/riscv/riscv-opts.h (FPR2VR_COST_UNPROVIDED): Define. - * config/riscv/riscv-protos.h (get_fr2vr_cost): Declare function. - * config/riscv/riscv.cc (riscv_rtx_costs): Add cost model for MULT with - VEC_DUPLICATE. - (get_fr2vr_cost): New function. - * config/riscv/riscv.opt: Add new option --param=fpr2vr-cost. - -2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120451 - * tree-switch-conversion.cc (switch_conversion::build_one_array): Mark - the newly created decl as mergable. - -2025-06-02 Alexandre Oliva <oliva@adacore.com> - - PR rtl-optimization/120424 - PR middle-end/118939 - * lra-spills.cc (spill_pseudos): Update insn regno info. - * lra-eliminations.cc (update_reg_eliminate): Recognize - disabling of active elimination regardless of - prev_can_eliminate. - -2025-06-02 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension defs. - * config/riscv/riscv-ext.opt: Ditto. - * doc/riscv-ext.texi: Ditto. - -2025-06-02 Stafford Horne <shorne@gmail.com> - - * config/or1k/predicates.md (call_insn_operand): Add condition - to not allow symbol_ref operands with TARGET_CMODEL_LARGE. - * config/or1k/or1k.opt: Document new -mcmodel=large - implications. - * doc/invoke.texi: Likewise. - -2025-06-02 Christophe Lyon <christophe.lyon@linaro.org> - - * doc/sourcebuild.texi (tls_link): Add documentation. - -2025-06-02 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/t-riscv: Adjust build rule for gen-riscv-ext-opt - and gen-riscv-ext-texi. - -2025-06-02 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Use - range-based-for-loop. - * config/riscv/riscv-subset.h (riscv_subset_list::iterator): - New. - (riscv_subset_list::const_iterator): New. - -2025-06-01 H.J. Lu <hjl.tools@gmail.com> - - PR other/120493 - * final.cc (call_from_call_insn): Change the argument type to - const rtx_call_insn *. - (get_call_rtx_from): New. - * rtl.h (is_a_helper <const rtx_call_insn *>::test): New. - (get_call_rtx_from): Moved to the final.cc section. - * rtlanal.cc (get_call_rtx_from): Removed. - -2025-06-01 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (optimize_vector_load): Set the vuse manually - on the new load statements. Also remove forward declaration since - the definition is before the first use. - (pass_forwprop::execute): Likewise for complex loads. - (pass_data_forwprop): Remove TODO_update_ssa. - -2025-06-01 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec.md: Fix line too long for sorts - of pattern. - -2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * config/xtensa/xtensa.cc: Remove include of reload.h. - -2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * config/xtensa/xtensa.md (movsf_internal): - Remove destination side constraint modifier '^' in the third - alternative. - -2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * config/xtensa/xtensa.cc - (xtensa_ira_change_pseudo_allocno_class): - New prototype and function. - (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Define macro. - (xtensa_register_move_cost): - Change between integer and FP register move cost to a value - based on actual behavior, i.e. 2, the default and the same as - the move cost between integer registers. - -2025-05-31 Andrew Pinski <quic_apinski@quicinc.com> - - * function.h (struct function): Remove last_verified. - * gimple-harden-conditionals.cc (pass_data_harden_compares): Remove - TODO_verify_il. - (pass_data_harden_conditional_branches): Likewise. - * gimple-harden-control-flow.cc (pass_harden_control_flow_redundancy::execute): - Don't return TODO_verify_il. - * ipa-strub.cc (pass_data_ipa_strub): Remove TODO_verify_il. - * passes.cc (TODO_verify_il): Define. - (execute_function_todo): Don't use or set last_verified. - (clear_last_verified): Remove. - (execute_one_ipa_transform_pass): Update comment before execute_todo. - Assert that none of the todos have TODO_verify_il set on it. - (execute_one_pass): Don't call clear_last_verified on all functions. - Assert that none of the todos have TODO_verify_il set on it. - * tree-inline.cc (initialize_cfun): Don't copy last_verified. - * tree-pass.h (TODO_verify_all): Remove. - * tree-vrp.cc (pass_data_early_vrp): Remove TODO_verify_all. - (pass_data_fast_vrp): Likewise. - -2025-05-31 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120357 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): Create - the conditional reduction induction IV increment before the - main IV exit. - -2025-05-31 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120389 - * doc/gm2.texi (-fm2-strict-type-reason): Document new flag. - -2025-05-30 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * diagnostic-format-html.cc (HTML_STYLE): Add ".highlight-a" and - ".highlight-b". - (html_builder::make_element_for_diagnostic): Handle begin_color - and end_color. - * diagnostic-show-locus.cc (to_html::to_html): Add "richloc" - param and use it to initialize m_richloc. - (to_html::colorize_text_for_range_idx): Drop. - (to_html::get_location_range_by_idx): New. - (to_html::get_highlight_color_for_range_idx): New. - (to_html::m_richloc): New field. - (print_html_span_start): Update for new param of to_html ctor. - (line_printer::m_was_in_range_p): New field. - (line_printer::m_last_range_idx): New field. - (layout_printer<Sink>::print_source_line): Use set_in_range - and set_outside_range rather than colorization calls. - (layout_printer<Sink>::set_in_range): New. - (layout_printer<Sink>::set_outside_range): New. - (layout_printer<Sink>::print_annotation_line): Use set_in_range - and set_outside_range rather than colorization calls. - (layout_printer<to_text>::begin_label): Convert param from label - to state_idx. Add "is_label_text" param and use it to guard logic - for turning off colorization within paths. - (layout_printer<to_html>::begin_label): Likewise. Push <span> - for any highlight color. - (layout_printer<to_text>::end_label): Likewise. - (layout_printer<to_text>::end_label): Likewise, popping the - <span>. - (layout_printer<Sink>::print_any_labels): Convert begin/end_label - calls to pass in state_idx rather than label. Use begin/end_label - rather than colorization calls. - (layout_printer<Sink>::layout_printer): Likewise. - (layout_printer<Sink>::layout_printer): Initialize new fields. - (diagnostic_source_print_policy::print_as_html): Update for new - param of to_html ctor. - -2025-05-30 Andrew Pinski <quic_apinski@quicinc.com> - - * passes.cc (execute_all_ipa_transforms): Fix typo in - commenet. - -2025-05-30 Joseph Myers <josmyers@redhat.com> - - * doc/standards.texi (C Language): Document library facilities - provided in terms of headers not declaring functions with external - linkage, not in terms of headers required of freestanding - implementations. - * doc/sourcebuild.texi (Subdirectories, Headers): Likewise. - * doc/trouble.texi (Standard Libraries): Likewise. - -2025-05-30 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec.md (avg<v_double_trunc>3_ceil): Add insn - expand to leverage vaadd with rnu directly. - -2025-05-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120341 - * tree-ssa-loop-im.cc (can_sm_ref_p): STRING_CSTs are readonly. - * tree-ssa-phiopt.cc (cond_store_replacement): Likewise. - -2025-05-30 Thomas Schwinge <tschwinge@baylibre.com> - Richard Biener <rguenther@suse.de> - - PR middle-end/119835 - * tree-nrv.cc (pass_nrv::execute): Defuse 'RESULT_DECL' check. - -2025-05-30 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-show-locus.cc (colorizer::m_current_named_color): New - field. - (colorizer::set_named_color): Use it to consolidate repeated calls - to the same color. - -2025-05-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120457 - * tree-vect-slp.cc (vect_lower_load_permutations): Implement - the same heuristics as load vectorization for single-element - interleaving that spans multiple vectors. - -2025-05-30 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120347 - * rtlanal.cc (rtx_properties::try_to_add_src): Don't drop the - IN_MEM_LOAD and IN_MEM_STORE flags for autoinc registers. - * rtl-ssa/changes.cc (recog_level2): Check whether an - RTX_AUTOINCed register also appears outside of an address. - -2025-05-30 Julian Brown <julian@codesourcery.com> - Tobias Burnus <tburnus@baylibre.com> - - * gimplify.cc (gimplify_omp_ctx): Add IMPLICIT_MAPPERS field. - (new_omp_context): Initialise IMPLICIT_MAPPERS hash map. - (delete_omp_context): Delete IMPLICIT_MAPPERS hash map. - (instantiate_mapper_info): New structs. - (remap_mapper_decl_1, omp_mapper_copy_decl, omp_instantiate_mapper, - omp_instantiate_implicit_mappers): New functions. - (gimplify_scan_omp_clauses): Handle MAPPER_BINDING clauses. - (gimplify_adjust_omp_clauses): Instantiate implicit declared mappers. - (gimplify_omp_declare_mapper): New function. - (gimplify_expr): Call above function. - * langhooks-def.h (lhd_omp_mapper_lookup, - lhd_omp_extract_mapper_directive, lhd_omp_map_array_section): Add - prototypes. - (LANG_HOOKS_OMP_FINISH_MAPPER_CLAUSES, - LANG_HOOKS_OMP_MAPPER_LOOKUP, LANG_HOOKS_OMP_EXTRACT_MAPPER_DIRECTIVE, - LANG_HOOKS_OMP_MAP_ARRAY_SECTION): Define macros. - (LANG_HOOK_DECLS): Add above macros. - * langhooks.cc (lhd_omp_mapper_lookup, - lhd_omp_extract_mapper_directive, lhd_omp_map_array_section): New - dummy functions. - * langhooks.h (lang_hooks_for_decls): Add OMP_FINISH_MAPPER_CLAUSES, - OMP_MAPPER_LOOKUP, OMP_EXTRACT_MAPPER_DIRECTIVE, OMP_MAP_ARRAY_SECTION - hooks. - * omp-general.h (omp_name_type<T>): Add templatized struct, hash type - traits (for omp_name_type<tree> specialization). - (omp_mapper_list<T>): Add struct. - * tree-core.h (omp_clause_code): Add OMP_CLAUSE__MAPPER_BINDING_. - * tree-pretty-print.cc (dump_omp_clause): Support GOMP_MAP_UNSET, - GOMP_MAP_PUSH_MAPPER_NAME, GOMP_MAP_POP_MAPPER_NAME artificial mapping - clauses. Support OMP_CLAUSE__MAPPER_BINDING_ and OMP_DECLARE_MAPPER. - * tree.cc (omp_clause_num_ops, omp_clause_code_name): Add - OMP_CLAUSE__MAPPER_BINDING_. - * tree.def (OMP_DECLARE_MAPPER): New tree code. - * tree.h (OMP_DECLARE_MAPPER_ID, OMP_DECLARE_MAPPER_DECL, - OMP_DECLARE_MAPPER_CLAUSES): New defines. - (OMP_CLAUSE__MAPPER_BINDING__ID, OMP_CLAUSE__MAPPER_BINDING__DECL, - OMP_CLAUSE__MAPPER_BINDING__MAPPER): New defines. - -2025-05-30 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-ssa-sccopy.cc (scc_copy_prop::replace_scc_by_value): Return true - if something was done. - (scc_copy_prop::propagate): Return true if something was changed. - (pass_sccopy::execute): Return TODO_cleanup_cfg if a prop happened. - -2025-05-30 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * auto-profile.cc (function_instance::merge): New. - (autofdo_source_profile::read): Call merge. - -2025-05-29 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * config/aarch64/gcc-auto-profile: Make script executable. - -2025-05-29 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Adds - statistics when the statement changed. - -2025-05-29 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Change check - from NULL/non-ssa name to default name. - -2025-05-29 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-html.cc (HTML_STYLE): Fix PatternFly URL in - comment. - -2025-05-29 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-html.cc - (html_builder::make_element_for_diagnostic::html_token_printer): - Reimplement in terms of xml::printer. - (html_builder::make_element_for_diagnostic): Create an - xml::printer and use it with the html_token_printer. - -2025-05-29 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-html.cc (html_builder::make_metadata_element): - Gracefully handle the case where "url" is null. - -2025-05-29 David Malcolm <dmalcolm@redhat.com> - - * pretty-print.cc (pretty_printer::pretty_printer): Use "nullptr" - rather than "NULL". Remove explicit delete of - m_format_postprocessor. - * pretty-print.h (format_postprocessor::clone): Use unique_ptr. - (pretty_printer::set_format_postprocessor): New. - (pretty_printer::m_format_postprocessor): Use unique_ptr. - (pp_format_postprocessor): Update for use of unique_ptr, removing - reference from return type. - -2025-05-29 Martin Jambor <mjambor@suse.cz> - - PR ipa/120295 - * ipa-prop.cc (update_jump_functions_after_inlining): Do not - combine pass-through jump functions with type-casts changing - signedness. - -2025-05-29 Martin Jambor <mjambor@suse.cz> - - * ipa-prop.cc (ipa_dump_jump_function): Fix whitespace when - dumping IPA VRs. - -2025-05-29 Pranav Gorantla <Pranav.Gorantla@amd.com> - - * config/i386/i386-expand.cc (emit_reduc_half): Use shuffles to - generate reduc half for V4SI, similar modes. - * config/i386/i386.h (TARGET_SSE_REDUCTION_PREFER_PSHUF): New Macro. - * config/i386/x86-tune.def (X86_TUNE_SSE_REDUCTION_PREFER_PSHUF): - New tuning. - -2025-05-29 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/120464 - * ggc-page.cc (struct ggc_globals): Fix up comment formatting. - (find_free_list): Likewise. - (alloc_page): For defined(USING_MALLOC_PAGE_GROUPS) use - free_list->free_pages instead of G.free_pages. - (do_release_pages): Add n1 and n2 arguments, make them used. - Move defined(USING_MALLOC_PAGE_GROUPS) page group freeing to - release_pages and dumping of statistics as well. Formatting fixes. - (release_pages): Adjust do_release_pages caller, move here - defined(USING_MALLOC_PAGE_GROUPS) page group freeing and dumping - of statistics. - (ggc_handle_finalizers): Fix up comment formatting and typo. - -2025-05-29 Jerry Zhang Jian <jerry.zhangjian@sifive.com> - - * config/riscv/riscv-ext.def: New extensions - * config/riscv/riscv-ext.opt: Auto re-generated - * doc/riscv-ext.texi: Auto re-generated - -2025-05-29 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case for MULT op. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op mult to no_shift_vx_ops. - -2025-05-28 Jan Hubicka <hubicka@ucw.cz> - - PR target/119298 - * config/i386/x86-tune-costs.h (struct processor_costs): Set addss cost - back to 2. - -2025-05-28 Robin Dapp <rdapp.gcc@gmail.com> - - * tree-vect-stmts.cc (vectorizable_load): Remove non-SLP paths. - -2025-05-28 Robin Dapp <rdapp@ventanamicro.com> - - PR target/120436 - * config/riscv/riscv-vector-builtins-shapes.cc (struct vset_def): - Avoid division by zero. - (struct vget_def): Ditto. - * config/riscv/riscv-vector-builtins.h (struct function_group_info): - Use required_extensions_specified instead of duplicating code. - -2025-05-28 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec.md (avg<v_double_trunc>3_floor): Add insn - expand to leverage vaadd directly. - -2025-05-28 Jan Hubicka <hubicka@ucw.cz> - - * cgraph.cc (cgraph_edge::maybe_hot_p): For auto-fdo turn 0 - to non-zero. - * ipa-cp.cc (cs_interesting_for_ipcp_p): Do not trust - auto-fdo 0. - * profile-count.cc (profile_count::adjust_for_ipa_scaling): Likewise. - (profile_count::from_gcov_type): Fix formating. - -2025-05-28 Jan Hubicka <hubicka@ucw.cz> - - * predict.cc (rebuild_frequencies): look harder for presence - of profile feedback. - -2025-05-28 Yuta Mukai <mukai.yuta@fujitsu.com> - - * config/aarch64/aarch64-cores.def (fujitsu-monaka): Update ISA - features. - -2025-05-28 Jan Hubicka <hubicka@ucw.cz> - - * predict.cc (set_even_probabilities): Set quality to guessed. - -2025-05-28 Jan Hubicka <hubicka@ucw.cz> - - * auto-profile.cc (update_count_by_afdo_count): New function. - (afdo_set_bb_count): Add debug output; only set count if it is - non-zero. - (afdo_find_equiv_class): Add debug output. - (afdo_calculate_branch_prob): Fix formating. - (afdo_annotate_cfg): Add debug output; do not erase static - profile if autofdo profile is all 0. - -2025-05-28 Haochen Jiang <haochen.jiang@intel.com> - - * doc/extend.texi (C Extensions): Add missing menu items. - -2025-05-28 liuhongt <hongtao.liu@intel.com> - - PR tree-optimization/119181 - * tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): - Split datarefs when there's a gap bigger than - MAX_BITSIZE_MODE_ANY_MODE. - -2025-05-27 Jason Merrill <jason@redhat.com> - - PR c++/120400 - * fold-const.cc (simple_operand_p): False for vars with - DECL_VALUE_EXPR. - -2025-05-27 Alejandro Colomar <alx@kernel.org> - - PR c/117025 - * Makefile.in (USER_H): Add <stdcountof.h>. - * ginclude/stdcountof.h: New file. - -2025-05-27 Alejandro Colomar <alx@kernel.org> - Martin Uecker <uecker@tugraz.at> - - PR c/117025 - * doc/extend.texi: Document _Countof operator. - -2025-05-27 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/gcc-auto-profile: regenerate. - -2025-05-27 Jan Hubicka <hubicka@ucw.cz> - - * auto-profile.cc (function_instance::mark_annotated): Remove. - (function_instance::total_annotated_count): Remove. - (autofdo_source_profile::mark_annotated): Remove. - (afdo_set_bb_count): Do not mark annotated locations. - (afdo_annotate_cfg): Likewise. - -2025-05-27 Eric Botcazou <ebotcazou@adacore.com> - - * ipa-sra.cc (scan_expr_access): Also disqualify storage order - barriers from splitting. - * tree.h (storage_order_barrier_p): Also return false if the - operand of the VIEW_CONVERT_EXPR has reverse storage order. - -2025-05-27 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * diagnostic-format-html.cc: Define INCLUDE_STRING. - Include "xml.h", "xml-printer.h", and "json.h". - (html_generation_options::html_generation_options): New. - (namespace xml): Move decls to xml.h and convert from using - label_text to std::string. - (xml::text::write_as_xml): Reimplement indentation so it is done - by this node, rather than the parent. - (xml::node_with_children::add_text): Convert from label_text to - std::string. Consolidate runs of text into a single node. - (xml::document::write_as_xml): Reimplement indentation. - (xml::element::write_as_xml): Reimplement indentation so it is - done by this node, rather than the parent. Convert from - label_text to std::string. Update attribute-printing to new - representation to preserve insertion order. - (xml::element::set_attr): Convert from label_text to std::string. - Record insertion order. - (xml::raw::write_as_xml): New. - (xml::printer::printer): New. - (xml::printer::push_tag): New. - (xml::printer::push_tag_with_class): New. - (xml::printer::pop_tag): New. - (xml::printer::set_attr): New. - (xml::printer::add_text): New. - (xml::printer::add_raw): New. - (xml::printer::push_element): New. - (xml::printer::append): New. - (xml::printer::get_insertion_point): New. - (html_builder::add_focus_id): New. - (html_builder::m_html_gen_opts): New field. - (html_builder::m_head_element): New field. - (html_builder::m_next_diag_id): New field. - (html_builder::m_ui_focus_ids): New field. - (make_div): Convert from label_text to std::string. - (make_span): Likewise. - (HTML_STYLE): New. - (HTML_SCRIPT): New. - (html_builder::html_builder): Fix indentation. Add - "html_gen_opts" param. Initialize new fields. Reimplement - using xml::printer. Optionally add style and script tags. - (class html_path_label_writer): New. - (html_builder::make_element_for_diagnostic): Convert from - label_text to std::string. Set "id" on "gcc-diagnostic" and - "gcc-message" <div> elements; add the latter to the focus ids. - Use diagnostic_context::maybe_show_locus_as_html rather than - html_builder::make_element_for_source. Use print_path_as_html - rather than html_builder::make_element_for_path. - (html_builder::make_element_for_source): Drop. - (html_builder::make_element_for_path): Drop. - (html_builder::make_element_for_patch): Convert from label_text to - std::string. - (html_builder::make_metadata_element): Likewise. Use - xml::printer. - (html_builder::make_element_for_metadata): Convert from label_text - to std::string. - (html_builder::emit_diagram): Expand comment. - (html_builder::flush_to_file): Write out initializer for - "focus_ids" into javascript. - (html_output_format::html_output_format): Add param - "html_gen_opts" and use it to initialize m_builder. - (html_file_output_format::html_file_output_format): Likewise, to - initialize base class. - (make_html_sink): Likewise, to pass to ctor. - (selftest::test_html_diagnostic_context::test_html_diagnostic_context): - Set up html_generation_options. - (selftest::html_buffered_output_format::html_buffered_output_format): - Add html_gen_opts param. - (selftest::test_simple_log): Add id attributes to expected text - for "gcc-diagnostic" and "gcc-message" elements. Update - whitespace for indentation fixes. - (selftest::test_metadata): Update whitespace for indentation - fixes. - (selftest::test_printer): New selftest. - (selftest::test_attribute_ordering): New selftest. - (selftest::diagnostic_format_html_cc_tests): Call the new - selftests. - * diagnostic-format-html.h (struct html_generation_options): New. - (make_html_sink): Add "html_gen_opts" param. - (print_path_as_html): New decl. - * diagnostic-path-output.cc: Define INCLUDE_MAP. Add includes of - "diagnostic-format-html.h", "xml.h", and "xml-printer.h". - (path_print_policy::path_print_policy): Add ctor. - (path_print_policy::get_diagram_theme): Fix whitespace. - (struct stack_frame): New. - (begin_html_stack_frame): New function. - (end_html_stack_frame): New function. - (emit_svg_arrow): New function. - (event_range::print): Rename to... - (event_range::print_as_text): ...this. Update call to - diagnostic_start_span. - (event_range::print_as_html): New, based on the above, but ported - from pretty_printer to xml::printer. - (thread_event_printer::print_swimlane_for_event_range): Rename - to... - (thread_event_printer::print_swimlane_for_event_range_as_text): - ...this. Update for renaming of event_range::print to - event_range::print_as_text. - (thread_event_printer::print_swimlane_for_event_range_as_html): - New. - (print_path_summary_as_text): Update for "_as_text" renaming. - (print_path_summary_as_html): New. - (print_path_as_html): New. - * diagnostic-show-locus.cc: Add defines of INCLUDE_MAP and - INCLUDE_STRING. Add includes of "xml.h" and "xml-printer.h". - (struct char_display_policy): Replace "m_print_cb" with - "m_print_text_cb" and "m_print_html_cb". - (struct to_text): New. - (struct to_html): New. - (get_printer): New. - (default_diagnostic_start_span_fn<to_text>): New. - (default_diagnostic_start_span_fn<to_html>): New. - (class layout): Update "friend class layout_printer;" for - template. - (enum class margin_kind): New. - (class layout_printer): Convert into a template. - (layout_printer::m_pp): Replace field with... - (layout_printer::m_sink): ...this. - (layout_printer::m_colorizer): Drop field in favor of a pointer - in the "to_text" sink. - (default_print_decoded_ch): Convert into a template. - (escape_as_bytes_print): Likewise. - (escape_as_unicode_print): Likewise. - (make_char_policy): Update to use both text and html callbacks. - (layout_printer::print_gap_in_line_numbering): Replace with... - (layout_printer<to_text>::print_gap_in_line_numbering): ...this - (layout_printer<to_html>::print_gap_in_line_numbering): ...and - this. - (layout_printer::print_source_line): Convert to template, using - m_sink. - (layout_printer::print_leftmost_column): Likewise. - (layout_printer::start_annotation_line): Likewise. - (layout_printer<to_text>::end_line): New. - (layout_printer<to_html>::end_line): New. - (layout_printer::print_annotation_line): Convert to template, - using m_sink. - (class line_label): Add field m_original_range_idx. - (layout_printer<to_text>::begin_label): New. - (layout_printer<to_html>::begin_label): New. - (layout_printer<to_text>::end_label): New. - (layout_printer<to_html>::end_label): New. - (layout_printer::print_any_labels): Convert to template, using - m_sink. - (layout_printer::print_leading_fixits): Likewise. - (layout_printer::print_trailing_fixits): Likewise. - (layout_printer::print_newline): Drop. - (layout_printer::move_to_column): Convert to template, using - m_sink. - (layout_printer::show_ruler): Likewise. - (layout_printer::print_line): Likewise. - (layout_printer::print_any_right_to_left_edge_lines): Likewise. - (layout_printer::layout_printer): Likewise. - (diagnostic_context::maybe_show_locus_as_html): New. - (diagnostic_source_print_policy::diagnostic_source_print_policy): - Update for split of start_span_cb into text vs html variants. - (diagnostic_source_print_policy::print): Update for use of - templates; use to_text. - (diagnostic_source_print_policy::print_as_html): New. - (layout_printer::print): Convert to template, using m_sink. - (selftest::make_element_for_locus): New. - (selftest::make_raw_html_for_locus): New. - (selftest::test_layout_x_offset_display_utf8): Update for use of - templates. - (selftest::test_layout_x_offset_display_tab): Likewise. - (selftest::test_one_liner_caret_and_range): Add test coverage of - HTML output. - (selftest::test_one_liner_labels): Likewise. - * diagnostic.cc (diagnostic_context::initialize): Update for split - of start_span_cb into text vs html variants. - (default_diagnostic_start_span_fn): Move to - diagnostic-show-locus.cc, converting to template. - * diagnostic.h (class xml::printer): New forward decl. - (diagnostic_start_span_fn): Replace typedef with "using", - converting to a template. - (struct to_text): New forward decl. - (struct to_html): New forward decl. - (get_printer): New decl. - (diagnostic_location_print_policy::print_text_span_start): New - decl. - (diagnostic_location_print_policy::print_html_span_start): New - decl. - (class html_label_writer): New. - (diagnostic_source_print_policy::print_as_html): New decl. - (diagnostic_source_print_policy::get_start_span_fn): Replace - with... - (diagnostic_source_print_policy::get_text_start_span_fn): ...this - (diagnostic_source_print_policy::get_html_start_span_fn): ...and - this - (diagnostic_source_print_policy::m_start_span_cb): Replace with... - (diagnostic_source_print_policy::m_text_start_span_cb): ...this - (diagnostic_source_print_policy::m_html_start_span_cb): ...and - this. - (diagnostic_context::maybe_show_locus_as_html): New decl. - (diagnostic_context::m_text_callbacks::m_start_span): Replace - with... - (diagnostic_context::m_text_callbacks::m_text_start_span): ...this - (diagnostic_context::m_text_callbacks::m_html_start_span): ...and - this. - (diagnostic_start_span): Update for template change. - (diagnostic_show_locus_as_html): New inline function. - (default_diagnostic_start_span_fn): Convert to template. - * doc/invoke.texi (experimental-html): Add "css" and "javascript" - keys. - * opts-diagnostic.cc (html_scheme_handler::make_sink): Likewise. - * selftest-diagnostic.cc - (selftest::test_diagnostic_context::start_span_cb): Update for - template changes. - * selftest-diagnostic.h - (selftest::test_diagnostic_context::start_span_cb): Likewise. - * xml-printer.h: New file. - * xml.h: New file, based on material in diagnostic-format-html.cc, - but using std::string rather than label_text. - (xml::element::m_key_insertion_order): New field. - (struct xml::raw): New. - -2025-05-27 David Malcolm <dmalcolm@redhat.com> - - * Makefile.in (OBJS-libcommon): Add diagnostic-path-output.o. - * diagnostic-path-output.cc: New file, taken from material in - diagnostic-path.cc. - * diagnostic-path.cc: Drop includes of - "diagnostic-macro-unwinding.h", "intl.h", "gcc-rich-location.h", - "diagnostic-color.h", "diagnostic-event-id.h", - "diagnostic-label-effects.h", "pretty-print-markup.h", - "selftest.h", "selftest-diagnostic.h", - "selftest-diagnostic-path.h", "text-art/theme.h", and - "diagnostic-format-text.h". - (class path_print_policy): Move to diagnostic-path-output.cc. - (class path_label): Likewise. - (can_consolidate_events): Likewise. - (class per_thread_summary): Likewise. - (struct event_range): Likewise. - (struct path_summary): Likewise. - (per_thread_summary::interprocedural_p): Likewise. - (path_summary::path_summary): Likewise. - (write_indent): Likewise. - (base_indent): Likewise. - (per_frame_indent): Likewise. - (class thread_event_printer): Likewise. - (print_path_summary_as_text): Likewise. - (class element_event_desc): Likewise. - (diagnostic_text_output_format::print_path): Likewise. - (selftest::path_events_have_column_data_p): Likewise. - (selftest::test_empty_path): Likewise. - (selftest::test_intraprocedural_path): Likewise. - (selftest::test_interprocedural_path_1): Likewise. - (selftest::test_interprocedural_path_2): Likewise. - (selftest::test_recursion): Likewise. - (class selftest::control_flow_test): Likewise. - (selftest::test_control_flow_1): Likewise. - (selftest::test_control_flow_2): Likewise. - (selftest::test_control_flow_3): Likewise. - (selftest::assert_cfg_edge_path_streq): Likewise. - (ASSERT_CFG_EDGE_PATH_STREQ): Likewise. - (selftest::test_control_flow_4): Likewise. - (selftest::test_control_flow_5): Likewise. - (selftest::test_control_flow_6): Likewise. - (selftest::control_flow_tests): Likewise. - (selftest::diagnostic_path_cc_tests): Likewise, renaming - accordingly. - * selftest-run-tests.cc (selftest::run_tests): Update for - move of path-printing selftests. - * selftest.h (selftest::diagnostic_path_cc_tests): Replace decl - with... - (selftest::diagnostic_path_output_cc_tests): ...this. - -2025-05-27 Juergen Christ <jchrist@linux.ibm.com> - - * config/s390/vector.md(*vec_extract<mode>): Fix mnemonic. - -2025-05-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117965 - * tree-ssa-phiprop.cc (phivn_valid_p): Remove. - (propagate_with_phi): Pass in virtual PHI node from BB, - rewrite load motion validity check to require the same - virtual use along all paths. - -2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/119884 - * avoid-store-forwarding.cc (process_store_forwarding): - Use `lowpart_subreg` for the base register initialization - and remove redundant stores from the store/load sequence. - -2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - * sbitmap.cc (bitmap_any_bit_in_range_p): - Call and return the result of `bitmap_bit_in_range_p` with the - `any_inverted` parameter set to false. - (bitmap_bit_in_range_p): New function. - (bitmap_all_bits_in_range_p): New function. - * sbitmap.h (bitmap_all_bits_in_range_p): New function. - -2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - * sbitmap.cc (bitmap_bit_in_range_p): Renamed the function. - (bitmap_any_bit_in_range_p): New function name. - (bitmap_bit_in_range_p_checking): Renamed the function. - (bitmap_any_bit_in_range_p_checking): New function name. - (test_set_range): Updated function calls to use the new name. - (test_bit_in_range): Likewise. - * sbitmap.h (bitmap_bit_in_range_p): Renamed the function. - (bitmap_any_bit_in_range_p): New function name. - * tree-ssa-dse.cc (live_bytes_read): - Updated function call to use the new name. - -2025-05-27 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/bitmanip.md (andi+bclr splits): Simplified from - prior define_insn_and_splits. - * config/riscv/riscv.cc (synthesize_and): Add support for andi+bclr - sequences. - -2025-05-27 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add - new case for XOR op. - (expand_vx_binary_vec_vec_dup): Diito. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op or to no_shift_vx_ops. - -2025-05-27 Juergen Christ <jchrist@linux.ibm.com> - - * config/s390/vector.md (VF): New mode iterator. - (VEC_SET_NONFLOAT): New mode iterator. - (VEC_SET_SINGLEFLOAT): New mode iterator. - (*vec_set<mode>): Split pattern in two. - (*vec_setv2df): Extract special handling for V2DF mode. - (*vec_extract<mode>): Split pattern in two. - -2025-05-27 Jonathan Wakely <jwakely@redhat.com> - - * doc/extend.texi (Common Variable Attributes): Fix typo in - description of nonstring. - -2025-05-27 Kito Cheng <kito.cheng@sifive.com> - - * gcc.cc (find_multilib_os_dir_by_multilib_dir): New. - (set_multilib_dir): Fix multilib_os_dir and multiarch_dir - if multilib_os_dir is not set. - -2025-05-27 xuli <xuli1@eswincomputing.com> - - * match.pd: add singned vector SAT_ADD IMM form1 matching. - -2025-05-27 xuli <xuli1@eswincomputing.com> - - * match.pd: Add signed scalar SAT_ADD IMM form1 with IMM=-1 matching. - * tree-ssa-math-opts.cc (match_unsigned_saturation_add): Adapt function name. - (match_saturation_add_with_assign): Match signed and unsigned SAT_ADD with assign. - (math_opts_dom_walker::after_dom_children): Match imm=-1 signed SAT_ADD with NOP_EXPR case. - -2025-05-26 Jason Merrill <jason@redhat.com> - - * doc/invoke.texi: Move C++ -fdump-lang to C++ section. - Add -fdump-lang-tinst. - -2025-05-26 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * config/aarch64/gcc-auto-profile: New file. - -2025-05-26 Segher Boessenkool <segher@kernel.crashing.org> - - * config/rs6000/rs6000.cc: Remove include of reload.h . - -2025-05-26 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * ipa-split.cc (pass_feedback_split_functions::clone): New. - * passes.def: Enable pass_feedback_split_functions for - pass_ipa_auto_profile. - -2025-05-25 Michael J. Eager <eager@eagercon.com> - - PR target/86772 - Tracking CVE-2017-5753 - * config/microblaze/microblaze.cc (TARGET_HAVE_SPECULATION_SAFE_VALUE): - Define to speculation_save_value_not_needed - -2025-05-25 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_builtin_vectorization_cost): - use sse_op instead of addss to cost vinsertti128 and vinsertti64x4; - compute correct mode of vinsertti128. - (ix86_vector_costs::add_stmt_cost): For integer 256bit and 512bit - vector constructions account more integer_to_sse moves. - -2025-05-25 LIU Hao <lh_mouse@126.com> - - PR target/53929 - PR target/80881 - * config/i386/i386-protos.h (ix86_asm_output_labelref): Declare new - function for quoting user-defined symbols in Intel syntax. - * config/i386/i386.cc (ix86_asm_output_labelref): Implement it. - * config/i386/i386.h (ASM_OUTPUT_LABELREF): Use it. - * config/i386/cygming.h (ASM_OUTPUT_LABELREF): Use it. - -2025-05-24 Shreya Munnangi <smunnangi1@ventanamicro.com> - - * config/riscv/riscv.cc (synthesize_and): Use a srl+andi+sll - sequence when the mask fits in a simm12 after shifting by the - number of trailing zeros. - Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - -2025-05-24 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new - case for IOR op. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op or to no_shift_vx_ops. - -2025-05-23 Andi Kleen <ak@gcc.gnu.org> - - * doc/install.texi: Document bootstrap-native. - -2025-05-23 Andi Kleen <ak@gcc.gnu.org> - - PR middle-end/114563 - PR c++/119387 - * ggc-page.cc (struct free_list): New structure. - (struct page_entry): Point to free_list. - (find_free_list): New function. - (find_free_list_order): Dito. - (alloc_page): Use specific free_list. - (release_pages): Dito. - (do_release_pages): Dito. - (init_ggc): Dito. - (ggc_print_statistics): Print overflow stat. - (ggc_pch_read): Use specific free list. - -2025-05-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * doc/implement-c.texi (C Implementation): Add missing menu items. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * common/config/riscv/riscv-common.cc (riscv_subset_list::parse_base_ext): - Adjust error message. - (riscv_handle_option): Parse as CPU string first. - (riscv_expand_arch): Ditto. - * doc/invoke.texi: Document. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * config/riscv/riscv-v.cc (autovectorize_vector_modes): Return - user-specified mode if available. - * config/riscv/riscv.opt: New param. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * config/riscv/riscv.cc (singleton_vxrm_need): Init - saved_vxrm_mode. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): - Always use vect_vf_for_cost and TARGET_MIN_VLEN. - -2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> - Richard Sandiford <richard.sandiford@arm.com> - - * expmed.cc (expand_rotate_as_vec_perm): Avoid a no-op move if the - target already provided the result in the expected register. - * config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): - Avoid forcing subregs into fresh registers unnecessarily. - * config/aarch64/aarch64-sve.md: Add define_split for rotate. - (*v_revvnx8hi): New pattern. - -2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> - Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64-sve.md (@aarch64_adr<mode>_shift): - Match lowered form of ashift. - (*aarch64_adr<mode>_shift): Likewise. - (*aarch64_adr_shift_sxtw): Likewise. - (*aarch64_adr_shift_uxtw): Likewise. - (<ASHIFT:optab><mode>3): Check amount instead of operands[2] in - aarch64_sve_<lr>shift_operand. - (v<optab><mode>3): Generate unpredicated shifts for constant - operands. - (@aarch64_pred_<optab><mode>): Convert to a define_expand. - (*aarch64_pred_<optab><mode>): Create define_insn_and_split pattern - from @aarch64_pred_<optab><mode>. - (*post_ra_v_ashl<mode>3): Rename to ... - (aarch64_vashl<mode>3_const): ... this and remove reload requirement. - (*post_ra_v_<optab><mode>3): Rename to ... - (aarch64_v<optab><mode>3_const): ... this and remove reload - requirement. - * config/aarch64/aarch64-sve2.md - (@aarch64_sve_add_<sve_int_op><mode>): Match lowered form of - SHIFTRT. - (*aarch64_sve2_sra<mode>): Likewise. - (*bitmask_shift_plus<mode>): Match lowered form of lshiftrt. - -2025-05-22 Joseph Myers <josmyers@redhat.com> - - * doc/implement-c.texi: Document C23 implementation-defined - behavior. - (Constant expressions implementation, Types implementation): New - nodes. - -2025-05-22 Eric Botcazou <ebotcazou@adacore.com> - - * dwarf2out.cc (loc_list_from_tree_1) <COMPONENT_REF>: Add specific - handling of bit-fields for big-endian targets. - -2025-05-22 Alexandre Oliva <oliva@adacore.com> - - * config/aarch64/aarch64-vxworks.h (TARGET_OS_USES_R18): Define. - Update comments. - * config/aarch64/aarch64.cc (aarch64_conditional_register_usage): - Mark x18 as fixed on VxWorks. - (aarch64_override_options_internal): Issue sorry message on - -fsanitize=shadow-call-stack if TARGET_OS_USES_R18. - -2025-05-22 Shreya Munnangi <smunnangi1@ventanamicro.com> - - * config/riscv/riscv.cc (synthesize_and): When profitable, use a three - shift sequence to clear bits at both upper and lower bits rather than - synthesizing the constant mask. - -2025-05-22 Siarhei Volkau <lis8215@gmail.com> - - PR target/70557 - * config/riscv/riscv.md (movdi_32bit): Add "J" constraint to allow storing 0 - directly to memory. - -2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/120372 - * config/aarch64/aarch64.cc (aarch64_rtx_costs <case CONST_INSN>): Handle - if outer is COMPARE and the constant can be handled by the cmp instruction. - -2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> - - * expmed.cc (canonicalize_comparison): Use rtx_cost directly - instead of gen_move_insn. Print out the choice if dump is enabled. - -2025-05-22 Jakub Jelinek <jakub@redhat.com> - - * gimple-lower-bitint.cc (bitint_extended): New variable. - (bitint_large_huge::lower_shift_stmt): For LSHIFT_EXPR with - bitint_extended if lhs has most significant partial limb extend - it afterwards. - -2025-05-22 Xi Ruoyao <xry111@xry111.site> - - * doc/md.texi: Document the 'q' constraint for LoongArch. - -2025-05-22 Jakub Jelinek <jakub@redhat.com> - - PR target/120360 - * config/i386/predicates.md (x86_64_neg_const_int_operand): New - predicate. - * config/i386/i386.md (*cmp<mode>_plus_1): New pattern. - -2025-05-22 Shreya Munnangi <smunnangi1@ventanamicro.com> - - * config/riscv/riscv.cc (synthesize_and): When profitable, use two - shift combinations to clear high or low bits rather than synthsizing - the constant. - -2025-05-22 Pengxuan Zheng <quic_pzheng@quicinc.com> - - * config/aarch64/aarch64.cc (aarch64_evpc_reencode): Copy zero_op0_p and - zero_op1_p from d to newd. - -2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/120090 - * combine.cc (gen_lowpart_for_combine_no_emit): New function. - (RTL_HOOKS_GEN_LOWPART_NO_EMIT): Set to gen_lowpart_for_combine_no_emit. - -2025-05-21 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.md ((x << C1) + C2): Tighten split condition - and generate more efficient code when splitting. - -2025-05-21 Jeff Law <jlaw@ventanamicro.com> - - PR target/120368 - * config/riscv/riscv.md (shift with masked shift count): Fix - opcode when generating an SImode shift on rv64. - -2025-05-21 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new - case for rtx code AND. - (expand_vx_binary_vec_vec_dup): Ditto. - * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. - * config/riscv/vector-iterators.md: Add new op and to no_shift_vx_ops. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * gensupport.h (needs_barrier_p): Delete. - * gensupport.cc (needs_barrier_p): Likewise. - * rtl.h (always_void_p): Return true for PC, RETURN and SIMPLE_RETURN. - (expand_opcode): New enum class. - (expand_rtx, complete_seq): Declare. - * emit-rtl.cc (rtx_expander): New class. - (expand_rtx, complete_seq): New functions. - * gengenrtl.cc (special_rtx, excluded_rtx): Add a cross-reference - comment. - * genemit.cc (FIRST_CODE): New constant. - (print_code): Delete. - (generator::file, generator::used, generator::sequence_type): Delete. - (generator::bytes): New member variable. - (generator::generator): Update accordingly. - (generator::gen_rtx_scratch): Delete. - (generator::add_uint, generator::add_opcode, generator::add_code) - (generator::add_match_operator, generator::add_exp) - (generator::add_vec, generator::gen_table): New member functions. - (generator::gen_exp): Rewrite to use a bytecode expansion. - (generator::gen_emit_seq): Likewise. - (start_gen_insn): Return the C++ expression for the operands array. - (gen_insn, gen_expand, gen_split): Update callers accordingly. - (emit_c_code): Remove use of _val. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (clobber_pat::code): Delete. - (maybe_queue_insn): Don't set clobber_pat::code. - (output_add_clobbers): Remove info argument and output the two - REG and SCRATCH cases directly. - (main): Update call accordingly. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (generator::gen_exp): Report an error for 's' operands. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (generator::gen_exp): Raise an error if we see - an 'L' operand. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (generator::used): Update comment. - (generator::gen_exp): Remove handling of null unused arrays. - (gen_insn, gen_expand): Always pass a used array. - (output_add_clobbers): Note why the used array is null here. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (generator): New structure. - (gen_rtx_scratch, gen_exp, gen_emit_seq): Turn into member - functions of generator. - (gen_insn, gen_expand, gen_split, output_add_clobbers): Update - users accordingly. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (gen_rtx_scratch, gen_exp): Use operands[%d] rather than - operand%d. - (start_gen_insn): Mark the incoming arguments as const and store - them to an operands array. - (gen_expand, gen_split): Remove copies into and out of the operands - array. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (start_gen_insn): New function, split out from... - (gen_insn, gen_expand): ...here. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (queue): New static variable. - (maybe_queue_insn): New function, split out from... - (gen_insn): ...here. - (queue_expand): New function, split out from... - (gen_expand): ...here. - (gen_split): New function, split out from... - (queue_split): ...here. - (main): Queue definitions for later processing rather than - emitting them on the fly. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * genemit.cc (gen_exp): Make the info argument a constant reference. - (gen_emit_seq, gen_insn, gen_expand, gen_split): Likewise. - (output_add_clobbers): Likewise. - (main): Update calls accordingly. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * config/sparc/sparc.md (zero_extendhisi2, zero_extendhidi2) - (extendhisi2, extendqihi2, extendqisi2, extendqidi2) - (extendhidi2): Use operands[0] and operands[1] instead of - operand0 and operand1. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - * config/stormy16/stormy16.md (negsi2): Remove unused assignment. - -2025-05-21 Richard Sandiford <richard.sandiford@arm.com> - - PR target/100837 - * config/nds32/nds32-intrinsic.md (unspec_get_pending_int): Use - a local variable instead of operands[2]. - -2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/120369 - * tree-complex.cc (gimple_expand_builtin_cabs): Return early - if the LHS of cabs is null. - -2025-05-21 Co-Authored-By: Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv-protos.h (synthesize_and): Prototype. - * config/riscv/riscv.cc (synthesize_and): New function. - * config/riscv/riscv.md (and<mode>3): Use it. - -2025-05-21 liuhongt <hongtao.liu@intel.com> - - PR middle-end/118994 - * match.pd ((a >> 1) + (b >> 1) + ((a | b) & 1) to - .AVG_CEIL (a, b)): New pattern. - ((a | b) - ((a ^ b) >> 1) to .AVG_CEIL (a, b)): Ditto. - -2025-05-20 Andrew Pinski <quic_apinski@quicinc.com> - - * Makefile.in (gimple-match-exports.o-warn): Remove. - * gimple-match-exports.cc (gimple_extract): Remove valueize_condition - argument. - (gimple_extract_op): Update call to gimple_extract. - (gimple_simplify): Likewise. Also remove valueize_condition lambda. - -2025-05-20 Umesh Kalappa <ukalappa.mips@gmail.com> - - * config/riscv/mips-p8700.md (mips_p8700_dummies): New - reservation. - (mips_p8700_unknown): Reservation for all the dummies. - -2025-05-20 Umesh Kalappa <ukalappa.mips@gmail.com> - - * config/riscv/mips-p8700.md: New scheduler model. - * config/riscv/riscv-cores.def (mips-p87000): New tuning model - and core architecture. - * config/riscv/riscv-opts.h (riscv_microarchitecture_type); Add - mips-p8700. - * config/riscv/riscv.cc (mips_p8700_tune_info): New uarch - tuning parameters. - * config/riscv/riscv.md (tune): Add mips_p8700. - Include mips-p8700.md - * doc/invoke.texi: Document tune/cpu options for the MIPS P8700. - Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - -2025-05-20 Jakub Jelinek <jakub@redhat.com> - - * tree-chrec.cc (convert_affine_scev): Use signed_type_for instead of - build_nonstandard_integer_type. - -2025-05-20 Jakub Jelinek <jakub@redhat.com> - - * gimple-lower-bitint.cc (bitint_big_endian): New variable. - (bitint_precision_kind): Set it. - (struct bitint_large_huge): Add unsigned argument to - finish_arith_overflow. - (bitint_large_huge::limb_access_type): Handle bitint_big_endian. - (bitint_large_huge::handle_operand): Likewise. - (bitint_large_huge::handle_cast): Likewise. - (bitint_large_huge::handle_bit_field_ref): Likewise. - (bitint_large_huge::handle_load): Likewise. - (bitint_large_huge::lower_shift_stmt): Likewise. - (bitint_large_huge::finish_arith_overflow): Likewise. - Add nelts argument. - (bitint_large_huge::lower_addsub_overflow): Handle bitint_big_endian. - Adjust finish_arith_overflow caller. - (bitint_large_huge::lower_mul_overflow): Likewise. - (bitint_large_huge::lower_bit_query): Handle bitint_big_endian. - (bitint_large_huge::lower_stmt): Likewise. - (build_bitint_stmt_ssa_conflicts): Likewise. - (gimple_lower_bitint): Likewise. - -2025-05-20 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/bitmanip.md (various splits): Avoid writing the output - more than once when trivially possible. - -2025-05-20 liuhongt <hongtao.liu@intel.com> - - PR tree-optimization/103771 - * match.pd (cond_expr_convert_p): Extend the match to handle - REAL_CST. - * tree-vect-patterns.cc - (vect_recog_cond_expr_convert_pattern): Handle REAL_CST. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec-opt.md: Leverage the new add func to - expand the vx insn. - * config/riscv/riscv-protos.h (expand_vx_binary_vec_dup_vec): Add - new func decl to expand format v = vop(vec_dup(x), v). - (expand_vx_binary_vec_vec_dup): Diito but for format - v = vop(v, vec_dup(x)). - * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new - func impl to expand vx for v = vop(vec_dup(x), v). - (expand_vx_binary_vec_vec_dup): Diito but for another format - v = vop(v, vec_dup(x)). - -2025-05-19 Jeff Law <jlaw@ventanamicro.com> - - PR target/120333 - * config/riscv/bitmanip.md: Remove bext formed from left+right - shift patterns. - -2025-05-19 John David Anglin <danglin@gcc.gnu.org> - - * config/pa/pa-hpux.h (TARGET_HAVE_LIBATOMIC): Define. - (HAVE_sync_compare_and_swapqi): Likewise. - (HAVE_sync_compare_and_swaphi): Likewise. - (HAVE_sync_compare_and_swapsi): Likewise. - (HAVE_sync_compare_and_swapdi): Likewise. - -2025-05-19 Thomas Schwinge <tschwinge@baylibre.com> - - PR lto/120308 - * lto-streamer-out.cc (hash_tree): Don't handle 'TYPE_EMPTY_P' for - 'lto_stream_offload_p'. - * tree-streamer-in.cc (unpack_ts_type_common_value_fields): - Likewise. - * tree-streamer-out.cc (pack_ts_type_common_value_fields): - Likewise. - -2025-05-19 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (synthesize_ior_xor): Initialize OUTPUT and - verify it's non-null before emitting the final copy insn. - -2025-05-19 Richard Earnshaw <rearnsha@arm.com> - - PR target/120351 - * config/arm/predicates.md (mem_noofs_operand): Also check the op - is a valid memory_operand. - -2025-05-19 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * common/config/riscv/riscv-common.cc (get_riscv_ext_info): Fix argument type. - (riscv_subset_list::check_implied_ext): Type conversion. - -2025-05-19 zhusonghe <zhusonghe@eswincomputing.com> - - * config/riscv/gen-riscv-ext-texi.cc (struct version_t):rename - major/minor to major_version/minor_version. - -2025-05-19 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv.cc (riscv_legitimize_move): Handle - load/store with odd-even reg pair. - (riscv_split_64bit_move_p): Don't split load/store if zilsd enabled. - (riscv_hard_regno_mode_ok): Only allow even reg can be used for - 64 bits mode for zilsd. - -2025-05-19 Jennifer Schmitz <jschmitz@nvidia.com> - - PR middle-end/120276 - * regcprop.cc (copy_value): Return in case of unordered modes. - -2025-05-19 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/constraints.md (cR): New constraint. - * doc/md.texi (Machine Constraints::RISC-V): Document the new cR - constraint. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * config.gcc: Remove 512 intrin file. - * config/i386/avx10_2-512bf16intrin.h: - Removed and combined to ... - * config/i386/avx10_2bf16intrin.h: ... this. - * config/i386/avx10_2-512convertintrin.h: - Removed and combined to ... - * config/i386/avx10_2convertintrin.h: ... this. - * config/i386/avx10_2-512mediaintrin.h: - Removed and combined to ... - * config/i386/avx10_2mediaintrin.h: ... this. - * config/i386/avx10_2-512minmaxintrin.h: - Removed and combined to ... - * config/i386/avx10_2minmaxintrin.h: ... this. - * config/i386/avx10_2-512satcvtintrin.h: - Removed and combined to ... - * config/i386/avx10_2satcvtintrin.h: ... this. - * config/i386/immintrin.h: Remove 512 intrin file. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/sse.md (VF1_VF2_AVX10_2): Removed. - (VF2_AVX10_2): Ditto. - (VI1248_AVX10_2): Ditto. - (VFH_AVX10_2): Ditto. - (VF1_AVX10_2): Ditto. - (VHF_AVX10_2): Ditto. - (VBF_AVX10_2): Ditto. - (VI8_AVX10_2): Ditto. - (VI2_AVX10_2): Ditto. - (VBF): New. - (div<mode>3): Use VBF instead of AVX10.2 ones. - (vec_cmp<mode><avx512fmaskmodelower>): Ditto. - (avx10_2_cvt2ps2phx_<mode><mask_name><round_name>): - Use VHF_AVX512VL instead of AVX10.2 ones. - (vcvt<convertfp8_pack><mode><mask_name>): Ditto. - (vcvthf82ph<mode><mask_name>): Ditto. - (VHF_AVX10_2_2): Remove not needed TARGET_AVX10_2. - (usdot_prod<sseunpackmodelower><mode>): Use VI2_AVX512F - instead of AVX10.2 ones. - (vdpphps_<mode>): Use VF1_AVX512VL instead of AVX10.2 ones. - (vdpphps_<mode>_mask): Ditto. - (vdpphps_<mode>_maskz): Ditto. - (vdpphps_<mode>_maskz_1): Ditto. - (avx10_2_scalefbf16_<mode><mask_name>): Use VBF instead of - AVX10.2 ones. - (<code><mode>3): Ditto. - (avx10_2_<code>bf16_<mode><mask_name>): Ditto. - (avx10_2_fmaddbf16_<mode>_maskz); Ditto. - (avx10_2_fmaddbf16_<mode><sd_maskz_name>): Ditto. - (avx10_2_fmaddbf16_<mode>_mask): Ditto. - (avx10_2_fmaddbf16_<mode>_mask3): Ditto. - (avx10_2_fnmaddbf16_<mode>_maskz): Ditto. - (avx10_2_fnmaddbf16_<mode><sd_maskz_name>): Ditto. - (avx10_2_fnmaddbf16_<mode>_mask): Ditto. - (avx10_2_fnmaddbf16_<mode>_mask3): Ditto. - (avx10_2_fmsubbf16_<mode>_maskz); Ditto. - (avx10_2_fmsubbf16_<mode><sd_maskz_name>): Ditto. - (avx10_2_fmsubbf16_<mode>_mask): Ditto. - (avx10_2_fmsubbf16_<mode>_mask3): Ditto. - (avx10_2_fnmsubbf16_<mode>_maskz): Ditto. - (avx10_2_fnmsubbf16_<mode><sd_maskz_name>): Ditto. - (avx10_2_fnmsubbf16_<mode>_mask): Ditto. - (avx10_2_fnmsubbf16_<mode>_mask3): Ditto. - (avx10_2_rsqrtbf16_<mode><mask_name>): Ditto. - (avx10_2_sqrtbf16_<mode><mask_name>): Ditto. - (avx10_2_rcpbf16_<mode><mask_name>): Ditto. - (avx10_2_getexpbf16_<mode><mask_name>): Ditto. - (avx10_2_<bf16immop>bf16_<mode><mask_name>): Ditto. - (avx10_2_fpclassbf16_<mode><mask_scalar_merge_name>): Ditto. - (avx10_2_cmpbf16_<mode><mask_scalar_merge_name>): Ditto. - (avx10_2_cvt<sat_cvt_trunc_prefix>bf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): - Ditto. - (avx10_2_cvtph2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_name>): - Use VHF_AVX512VL instead of AVX10.2 ones. - (avx10_2_cvttph2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_saeonly_name>): - Ditto. - (avx10_2_cvtps2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_name>): - Use VF1_AVX512VL instead of AVX10.2 ones. - (avx10_2_cvttps2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_saeonly_name>): - Ditto. - (avx10_2_vcvtt<castmode>2<sat_cvt_sign_prefix>dqs<mode><mask_name><round_saeonly_name>): - Use VF instead of AVX10.2 ones. - (avx10_2_vcvttpd2<sat_cvt_sign_prefix>qqs<mode><mask_name><round_saeonly_name>): - Use VF2 instead of AVX10.2 ones. - (avx10_2_vcvttps2<sat_cvt_sign_prefix>qqs<mode><mask_name><round_saeonly_name>): - Use VI8 instead of AVX10.2 ones. - (avx10_2_minmaxbf16_<mode><mask_name>): Use VBF instead of - AVX10.2 ones. - (avx10_2_minmaxp<mode><mask_name><round_saeonly_name>): - Use VFH_AVX512VL instead of AVX10.2 ones. - (avx10_2_vmovrs<ssemodesuffix><mode><mask_name>): - Use VI1248_AVX512VLBW instead of AVX10.2 ones. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/cpuinfo.h - (get_available_features): Remove feature set for AVX10_1_256. - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_EVEX512_SET): Removed. - (OPTION_MASK_ISA2_AVX10_1_256_SET): Removed. - (OPTION_MASK_ISA_AVX10_1_SET): Imply all AVX512 features. - (OPTION_MASK_ISA2_AVX10_1_SET): Ditto. - (OPTION_MASK_ISA2_AVX2_UNSET): Remove AVX10_1_UNSET. - (OPTION_MASK_ISA2_EVEX512_UNSET): Removed. - (OPTION_MASK_ISA2_AVX10_1_UNSET): Remove AVX10_1_256. - (OPTION_MASK_ISA2_AVX512F_UNSET): Unset AVX10_1. - (ix86_handle_option): Remove special handling for AVX512/AVX10.1 - options, evex512 and avx10_1_256. Modify ISA set for AVX10 options. - * common/config/i386/i386-cpuinfo.h - (enum feature_priority): Remove P_AVX10_1_256. - (enum processor_features): Remove FEATURE_AVX10_1_256. - * common/config/i386/i386-isas.h: Remove avx10.1-256/512. - * config/i386/avx512bf16intrin.h: Rollback target push before - evex512 is introduced. - * config/i386/avx512bf16vlintrin.h: Ditto. - * config/i386/avx512bitalgintrin.h: Ditto. - * config/i386/avx512bitalgvlintrin.h: Ditto. - * config/i386/avx512bwintrin.h: Ditto. - * config/i386/avx512cdintrin.h: Ditto. - * config/i386/avx512dqintrin.h: Ditto. - * config/i386/avx512fintrin.h: Ditto. - * config/i386/avx512fp16intrin.h: Ditto. - * config/i386/avx512fp16vlintrin.h: Ditto. - * config/i386/avx512ifmaintrin.h: Ditto. - * config/i386/avx512ifmavlintrin.h: Ditto. - * config/i386/avx512vbmi2intrin.h: Ditto. - * config/i386/avx512vbmi2vlintrin.h: Ditto. - * config/i386/avx512vbmiintrin.h: Ditto. - * config/i386/avx512vbmivlintrin.h: Ditto. - * config/i386/avx512vlbwintrin.h: Ditto. - * config/i386/avx512vldqintrin.h: Ditto. - * config/i386/avx512vlintrin.h: Ditto. - * config/i386/avx512vnniintrin.h: Ditto. - * config/i386/avx512vnnivlintrin.h: Ditto. - * config/i386/avx512vp2intersectintrin.h: Ditto. - * config/i386/avx512vp2intersectvlintrin.h: Ditto. - * config/i386/avx512vpopcntdqintrin.h: Ditto. - * config/i386/avx512vpopcntdqvlintrin.h: Ditto. - * config/i386/gfniintrin.h: Ditto. - * config/i386/vaesintrin.h: Ditto. - * config/i386/vpclmulqdqintrin.h: Ditto. - * config/i386/driver-i386.cc (check_avx512_features): Removed. - (host_detect_local_cpu): Remove -march=native special handling. - * config/i386/i386-builtins.cc - (ix86_vectorize_builtin_gather): Remove TARGET_EVEX512. - * config/i386/i386-c.cc - (ix86_target_macros_internal): Remove EVEX512 and AVX10_1_256. - * config/i386/i386-expand.cc - (ix86_valid_mask_cmp_mode): Remove TARGET_EVEX512. - (ix86_expand_int_sse_cmp): Ditto. - (ix86_vector_duplicate_simode_const): Ditto. - (ix86_expand_vector_init_duplicate): Ditto. - (ix86_expand_vector_init_one_nonzero): Ditto. - (ix86_emit_swsqrtsf): Ditto. - (ix86_vectorize_vec_perm_const): Ditto. - (ix86_expand_vecop_qihi2): Ditto. - (ix86_expand_sse2_mulvxdi3): Ditto. - (ix86_gen_bcst_mem): Ditto. - * config/i386/i386-isa.def (EVEX512): Removed. - (AVX10_1_256): Ditto. - * config/i386/i386-options.cc - (isa2_opts): Remove evex512 and avx10.1-256. - (ix86_function_specific_save): Remove no_avx512_explicit and - no_avx10_1_explicit. - (ix86_function_specific_restore): Ditto. - (ix86_valid_target_attribute_inner_p): Remove evex512 and - avx10.1-256/512. - (ix86_valid_target_attribute_tree): Remove special handling - to rerun ix86_option_override_internal for AVX10.1-256. - (ix86_option_override_internal): Remove warning handling. - (ix86_simd_clone_adjust): Remove evex512. - * config/i386/i386.cc - (type_natural_mode): Remove TARGET_EVEX512. - (ix86_return_in_memory): Ditto. - (standard_sse_constant_p): Ditto. - (standard_sse_constant_opcode): Ditto. - (ix86_get_ssemov): Ditto. - (ix86_legitimate_constant_p): Ditto. - (ix86_vectorize_builtin_scatter): Ditto. - (ix86_hard_regno_mode_ok): Ditto. - (ix86_set_reg_reg_cost): Ditto. - (ix86_rtx_costs): Ditto. - (ix86_vector_mode_supported_p): Ditto. - (ix86_preferred_simd_mode): Ditto. - (ix86_autovectorize_vector_modes): Ditto. - (ix86_get_mask_mode): Ditto. - (ix86_simd_clone_compute_vecsize_and_simdlen): Ditto. - (ix86_simd_clone_usable): Ditto. - * config/i386/i386.h (BIGGEST_ALIGNMENT): Ditto. - (MOVE_MAX): Ditto. - (STORE_MAX_PIECES): Ditto. - (PTA_SKYLAKE_AVX512): Remove PTA_EVEX512. - (PTA_CANNONLAKE): Ditto. - (PTA_ZNVER4): Ditto. - (PTA_GRANITERAPIDS): Use PTA_AVX10_1. - (PTA_DIAMONDRAPIDS): Use PTA_GRANITERAPIDS. - * config/i386/i386.md: Remove TARGET_EVEX512, avx512f_512 - and avx512bw_512. - * config/i386/i386.opt: Remove ix86_no_avx512_explicit, - ix86_no_avx10_1_explicit, mevex512, mavx10.1-256/512 and - warning for mavx10.1. Modify option comment. - * config/i386/i386.opt.urls: Remove evex512 and avx10.1-256/512. - * config/i386/predicates.md: Remove TARGET_EVEX512. - * config/i386/sse.md: Ditto. - * doc/extend.texi: Remove avx10.1-256/512. Modify avx10.1 doc. - * doc/invoke.texi: Remove avx10.1-256/512 and evex512. - * doc/sourcebuild.texi: Remove avx10.1-256/512. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/i386-builtin.def - (BDESC): Remove OPTION_MASK_ISA2_EVEX512. - * config/i386/i386-builtins.cc - (ix86_init_mmx_sse_builtins): Ditto. - -2025-05-18 Dimitar Dimitrov <dimitar@dinux.eu> - Richard Sandiford <richard.sandiford@arm.com> - - PR target/119966 - * emit-rtl.cc (validate_subreg): Do not exit immediately for - paradoxical subregs. Filter subsequent tests which are - not valid for paradoxical subregs. - -2025-05-18 Eric Botcazou <ebotcazou@adacore.com> - - * dwarf2out.cc (loc_list_from_tree_1) <COMPONENT_REF>: Do not bail - out when the size is not a multiple of a byte. - Deal with bit-fields whose size is not a multiple of a byte when - dereferencing an address. - -2025-05-18 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-fold.cc (mark_lhs_in_seq_for_dce): Make - non-static. - * gimple-fold.h (mark_lhs_in_seq_for_dce): Declare. - * tree-ssa-phiopt.cc (match_simplify_replacement): Use - mark_lhs_in_seq_for_dce instead of manually looping. - -2025-05-17 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv-vect-permconst.cc (vector_permconst:process_bb): - Use rtvec_alloc, not gen_rtvec since we don't want/need to initialize - the vector. - -2025-05-17 Yuao Ma <c8ef@outlook.com> - - * doc/extend.texi: Mention new builtins. - -2025-05-17 Yuao Ma <c8ef@outlook.com> - - * builtins.def (TRIG_TYPE): New. - (BUILT_IN_ACOSPI): New. - (BUILT_IN_ACOSPIF): New. - (BUILT_IN_ACOSPIL): New. - (BUILT_IN_ASINPI): New. - (BUILT_IN_ASINPIF): New. - (BUILT_IN_ASINPIL): New. - (BUILT_IN_ATANPI): New. - (BUILT_IN_ATANPIF): New. - (BUILT_IN_ATANPIL): New. - (BUILT_IN_COSPI): New. - (BUILT_IN_COSPIF): New. - (BUILT_IN_COSPIL): New. - (BUILT_IN_SINPI): New. - (BUILT_IN_SINPIF): New. - (BUILT_IN_SINPIL): New. - (BUILT_IN_TANPI): New. - (BUILT_IN_TANPIF): New. - (BUILT_IN_TANPIL): New. - (TRIG2_TYPE): New. - (BUILT_IN_ATAN2PI): New. - (BUILT_IN_ATAN2PIF): New. - (BUILT_IN_ATAN2PIL): New. - -2025-05-17 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (synthesize_ior_xor): Avoid writing - operands[0] more than once, use new pseudos instead. - -2025-05-17 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/riscv.cc (riscv_gpr_save_operation_p): Remove - break and fixbug for elt index. - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - PR target/100165 - * config/aarch64/aarch64-protos.h (aarch64_output_fmov): New prototype. - (aarch64_simd_valid_and_imm_fmov): Likewise. - * config/aarch64/aarch64-simd.md (and<mode>3<vczle><vczbe>): Allow FMOV - codegen. - * config/aarch64/aarch64.cc (aarch64_simd_valid_and_imm_fmov): New. - (aarch64_output_fmov): Likewise. - * config/aarch64/constraints.md (Df): New constraint. - * config/aarch64/predicates.md (aarch64_reg_or_and_imm): Update - predicate to support FMOV codegen. - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - PR target/100165 - * config/aarch64/aarch64.cc (aarch64_evpc_and): New. - (aarch64_expand_vec_perm_const_1): Call aarch64_evpc_and. - * optabs.cc (vec_perm_and_mask): New. - * optabs.h (vec_perm_and_mask): New prototype. - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - * config/aarch64/aarch64.cc (aarch64_evpc_reencode): Zero initialize - newd. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (forward_propagate_into_comparison): Dump - when replacing statement. - -2025-05-16 Martin Jambor <mjambor@suse.cz> - Michal Jires <mjires@suse.cz> - - * cgraph.h (symtab_node): Make member function get_uid const. - * cgraphclones.cc (dump_callgraph_transformation): Dump m_uid of the - call graph nodes instead of order. - * cgraph.cc (cgraph_node::remove): Likewise. - * ipa-cp.cc (ipcp_lattice<valtype>::print): Likewise. - * ipa-sra.cc (ipa_sra_summarize_function): Likewise. - * symtab.cc (symtab_node::dump_base): Likewise. - -2025-05-16 Ville Voutilainen <ville.voutilainen@gmail.com> - - * doc/invoke.texi: Add to_underlying to -ffold-simple-inlines. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/118603 - * config/aarch64/driver-aarch64.cc (aarch64_cpu_data): Add cast to unsigned - to VARIANT of the define AARCH64_CORE. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - * config/aarch64/aarch64-protos.h (struct sve_vec_cost): Change gather_load_x32_cost - and gather_load_x64_cost fields to unsigned. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Add a limit on the alias walk. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-fold.cc (optimize_memcpy_to_memset): Move to - tree-ssa-forwprop.cc. - (gimple_fold_builtin_memory_op): Remove call to - optimize_memcpy_to_memset. - (fold_stmt_1): Likewise. - * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Move from - gimple-fold.cc. - (simplify_builtin_call): Try to optimize memcpy/memset. - (pass_forwprop::execute): Try to optimize memcpy like assignment - from a previous memset. - -2025-05-16 Richard Sandiford <richard.sandiford@arm.com> - - * config/arm/arm.cc (arm_gen_load_multiple_1): Simplify use of - end_sequence. - (arm_gen_store_multiple_1): Likewise. - * expr.cc (gen_move_insn): Likewise. - * gentarget-def.cc (main): Likewise. - -2025-05-16 Richard Sandiford <richard.sandiford@arm.com> - - * asan.cc (asan_emit_allocas_unpoison): Directly return the - result of end_sequence. - (hwasan_emit_untag_frame): Likewise. - * config/aarch64/aarch64-speculation.cc - (aarch64_speculation_clobber_sp): Likewise. - (aarch64_speculation_establish_tracker): Likewise. - * config/arm/arm.cc (arm_call_tls_get_addr): Likewise. - * config/avr/avr-passes.cc (avr_parallel_insn_from_insns): Likewise. - * config/sh/sh_treg_combine.cc - (sh_treg_combine::make_not_reg_insn): Likewise. - * tree-outof-ssa.cc (emit_partition_copy): Likewise. - -2025-05-16 Richard Sandiford <richard.sandiford@arm.com> - - * asan.cc (asan_clear_shadow): Use the return value of end_sequence, - rather than calling get_insns separately. - (asan_emit_stack_protection, asan_emit_allocas_unpoison): Likewise. - (hwasan_frame_base, hwasan_emit_untag_frame): Likewise. - * auto-inc-dec.cc (attempt_change): Likewise. - * avoid-store-forwarding.cc (process_store_forwarding): Likewise. - * bb-reorder.cc (fix_crossing_unconditional_branches): Likewise. - * builtins.cc (expand_builtin_apply_args): Likewise. - (expand_builtin_return, expand_builtin_mathfn_ternary): Likewise. - (expand_builtin_mathfn_3, expand_builtin_int_roundingfn): Likewise. - (expand_builtin_int_roundingfn_2, expand_builtin_saveregs): Likewise. - (inline_string_cmp): Likewise. - * calls.cc (expand_call): Likewise. - * cfgexpand.cc (expand_asm_stmt, pass_expand::execute): Likewise. - * cfgloopanal.cc (init_set_costs): Likewise. - * cfgrtl.cc (insert_insn_on_edge, prepend_insn_to_edge): Likewise. - (rtl_lv_add_condition_to_bb): Likewise. - * config/aarch64/aarch64-speculation.cc - (aarch64_speculation_clobber_sp): Likewise. - (aarch64_speculation_establish_tracker): Likewise. - (aarch64_do_track_speculation): Likewise. - * config/aarch64/aarch64.cc (aarch64_load_symref_appropriately) - (aarch64_expand_vector_init, aarch64_gen_ccmp_first): Likewise. - (aarch64_gen_ccmp_next, aarch64_mode_emit): Likewise. - (aarch64_md_asm_adjust): Likewise. - (aarch64_switch_pstate_sm_for_landing_pad): Likewise. - (aarch64_switch_pstate_sm_for_jump): Likewise. - (aarch64_switch_pstate_sm_for_call): Likewise. - * config/alpha/alpha.cc (alpha_legitimize_address_1): Likewise. - (alpha_emit_xfloating_libcall, alpha_gp_save_rtx): Likewise. - * config/arc/arc.cc (hwloop_optimize): Likewise. - * config/arm/aarch-common.cc (arm_md_asm_adjust): Likewise. - * config/arm/arm-builtins.cc: Likewise. - * config/arm/arm.cc (require_pic_register): Likewise. - (arm_call_tls_get_addr, arm_gen_load_multiple_1): Likewise. - (arm_gen_store_multiple_1, cmse_clear_registers): Likewise. - (cmse_nonsecure_call_inline_register_clear): Likewise. - (arm_attempt_dlstp_transform): Likewise. - * config/avr/avr-passes.cc (bbinfo_t::optimize_one_block): Likewise. - (avr_parallel_insn_from_insns): Likewise. - * config/avr/avr.cc (avr_prologue_setup_frame): Likewise. - (avr_expand_epilogue): Likewise. - * config/bfin/bfin.cc (hwloop_optimize): Likewise. - * config/c6x/c6x.cc (c6x_expand_compare): Likewise. - * config/cris/cris.cc (cris_split_movdx): Likewise. - * config/cris/cris.md: Likewise. - * config/csky/csky.cc (csky_call_tls_get_addr): Likewise. - * config/epiphany/resolve-sw-modes.cc - (pass_resolve_sw_modes::execute): Likewise. - * config/fr30/fr30.cc (fr30_move_double): Likewise. - * config/frv/frv.cc (frv_split_scc, frv_split_cond_move): Likewise. - (frv_split_minmax, frv_split_abs): Likewise. - * config/frv/frv.md: Likewise. - * config/gcn/gcn.cc (move_callee_saved_registers): Likewise. - (gcn_expand_prologue, gcn_restore_exec, gcn_md_reorg): Likewise. - * config/i386/i386-expand.cc - (ix86_expand_carry_flag_compare, ix86_expand_int_movcc): Likewise. - (ix86_vector_duplicate_value, expand_vec_perm_interleave2): Likewise. - (expand_vec_perm_vperm2f128_vblend): Likewise. - (expand_vec_perm_2perm_interleave): Likewise. - (expand_vec_perm_2perm_pblendv): Likewise. - (expand_vec_perm2_vperm2f128_vblend, ix86_gen_ccmp_first): Likewise. - (ix86_gen_ccmp_next): Likewise. - * config/i386/i386-features.cc - (scalar_chain::make_vector_copies): Likewise. - (scalar_chain::convert_reg, scalar_chain::convert_op): Likewise. - (timode_scalar_chain::convert_insn): Likewise. - * config/i386/i386.cc (ix86_init_pic_reg, ix86_va_start): Likewise. - (ix86_get_drap_rtx, legitimize_tls_address): Likewise. - (ix86_md_asm_adjust): Likewise. - * config/ia64/ia64.cc (ia64_expand_tls_address): Likewise. - (ia64_expand_compare, spill_restore_mem): Likewise. - (expand_vec_perm_interleave_2): Likewise. - * config/loongarch/loongarch.cc - (loongarch_call_tls_get_addr): Likewise. - * config/m32r/m32r.cc (gen_split_move_double): Likewise. - * config/m32r/m32r.md: Likewise. - * config/m68k/m68k.cc (m68k_call_tls_get_addr): Likewise. - (m68k_call_m68k_read_tp, m68k_sched_md_init_global): Likewise. - * config/m68k/m68k.md: Likewise. - * config/microblaze/microblaze.cc - (microblaze_call_tls_get_addr): Likewise. - * config/mips/mips.cc (mips_call_tls_get_addr): Likewise. - (mips_ls2_init_dfa_post_cycle_insn): Likewise. - (mips16_split_long_branches): Likewise. - * config/nvptx/nvptx.cc (nvptx_gen_shuffle): Likewise. - (nvptx_gen_shared_bcast, nvptx_propagate): Likewise. - (workaround_uninit_method_1, workaround_uninit_method_2): Likewise. - (workaround_uninit_method_3): Likewise. - * config/or1k/or1k.cc (or1k_init_pic_reg): Likewise. - * config/pa/pa.cc (legitimize_tls_address): Likewise. - * config/pru/pru.cc (pru_expand_fp_compare, pru_reorg_loop): Likewise. - * config/riscv/riscv-shorten-memrefs.cc - (pass_shorten_memrefs::transform): Likewise. - * config/riscv/riscv-vsetvl.cc (pre_vsetvl::emit_vsetvl): Likewise. - * config/riscv/riscv.cc (riscv_call_tls_get_addr): Likewise. - (riscv_frm_emit_after_bb_end): Likewise. - * config/rl78/rl78.cc (rl78_emit_libcall): Likewise. - * config/rs6000/rs6000.cc (rs6000_debug_legitimize_address): Likewise. - * config/s390/s390.cc (legitimize_tls_address): Likewise. - (s390_two_part_insv, s390_load_got, s390_va_start): Likewise. - * config/sh/sh_treg_combine.cc - (sh_treg_combine::make_not_reg_insn): Likewise. - * config/sparc/sparc.cc (sparc_legitimize_tls_address): Likewise. - (sparc_output_mi_thunk, sparc_init_pic_reg): Likewise. - * config/stormy16/stormy16.cc (xstormy16_split_cbranch): Likewise. - * config/xtensa/xtensa.cc (xtensa_copy_incoming_a7): Likewise. - (xtensa_expand_block_set_libcall): Likewise. - (xtensa_expand_block_set_unrolled_loop): Likewise. - (xtensa_expand_block_set_small_loop, xtensa_call_tls_desc): Likewise. - * dse.cc (emit_inc_dec_insn_before, find_shift_sequence): Likewise. - (replace_read): Likewise. - * emit-rtl.cc (reorder_insns, gen_clobber, gen_use): Likewise. - * except.cc (dw2_build_landing_pads, sjlj_mark_call_sites): Likewise. - (sjlj_emit_function_enter, sjlj_emit_function_exit): Likewise. - (sjlj_emit_dispatch_table): Likewise. - * expmed.cc (expmed_mult_highpart_optab, expand_sdiv_pow2): Likewise. - * expr.cc (convert_mode_scalar, emit_move_multi_word): Likewise. - (gen_move_insn, expand_cond_expr_using_cmove): Likewise. - (expand_expr_divmod, expand_expr_real_2): Likewise. - (maybe_optimize_pow2p_mod_cmp, maybe_optimize_mod_cmp): Likewise. - * function.cc (emit_initial_value_sets): Likewise. - (instantiate_virtual_regs_in_insn, expand_function_end): Likewise. - (get_arg_pointer_save_area, make_split_prologue_seq): Likewise. - (make_prologue_seq, gen_call_used_regs_seq): Likewise. - (thread_prologue_and_epilogue_insns): Likewise. - (match_asm_constraints_1): Likewise. - * gcse.cc (prepare_copy_insn): Likewise. - * ifcvt.cc (noce_emit_store_flag, noce_emit_move_insn): Likewise. - (noce_emit_cmove): Likewise. - * init-regs.cc (initialize_uninitialized_regs): Likewise. - * internal-fn.cc (expand_POPCOUNT): Likewise. - * ira-emit.cc (emit_move_list): Likewise. - * ira.cc (ira): Likewise. - * loop-doloop.cc (doloop_modify): Likewise. - * loop-unroll.cc (compare_and_jump_seq): Likewise. - (unroll_loop_runtime_iterations, insert_base_initialization): Likewise. - (split_iv, insert_var_expansion_initialization): Likewise. - (combine_var_copies_in_loop_exit): Likewise. - * lower-subreg.cc (resolve_simple_move,resolve_shift_zext): Likewise. - * lra-constraints.cc (match_reload, check_and_process_move): Likewise. - (process_addr_reg, insert_move_for_subreg): Likewise. - (process_address_1, curr_insn_transform): Likewise. - (inherit_reload_reg, process_invariant_for_inheritance): Likewise. - (inherit_in_ebb, remove_inheritance_pseudos): Likewise. - * lra-remat.cc (do_remat): Likewise. - * mode-switching.cc (commit_mode_sets): Likewise. - (optimize_mode_switching): Likewise. - * optabs.cc (expand_binop, expand_twoval_binop_libfunc): Likewise. - (expand_clrsb_using_clz, expand_doubleword_clz_ctz_ffs): Likewise. - (expand_doubleword_popcount, expand_ctz, expand_ffs): Likewise. - (expand_absneg_bit, expand_unop, expand_copysign_bit): Likewise. - (prepare_float_lib_cmp, expand_float, expand_fix): Likewise. - (expand_fixed_convert, gen_cond_trap): Likewise. - (expand_atomic_fetch_op): Likewise. - * ree.cc (combine_reaching_defs): Likewise. - * reg-stack.cc (compensate_edge): Likewise. - * reload1.cc (emit_input_reload_insns): Likewise. - * sel-sched-ir.cc (setup_nop_and_exit_insns): Likewise. - * shrink-wrap.cc (emit_common_heads_for_components): Likewise. - (emit_common_tails_for_components): Likewise. - (insert_prologue_epilogue_for_components): Likewise. - * tree-outof-ssa.cc (emit_partition_copy): Likewise. - (insert_value_copy_on_edge): Likewise. - * tree-ssa-loop-ivopts.cc (computation_cost): Likewise. - -2025-05-16 Richard Sandiford <richard.sandiford@arm.com> - - * rtl.h (end_sequence): Return the sequence. - * emit-rtl.cc (end_sequence): Likewise. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec-opt.md (*<optab>_vx_<mode>): Add new - pattern to convert vec_duplicate + vsub.vv to vsub.vx. - * config/riscv/riscv.cc (riscv_rtx_costs): Add minus as plus op. - * config/riscv/vector-iterators.md: Add minus to iterator - any_int_binop_no_shift_vx. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/116546 - * range-op.cc (operator_bitwise_and::op1_range): Utilize bitmask - from the LHS to improve op1's bitmask. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/116546 - * value-range.cc (irange::intersect_bitmask): Allow unknown - bitmasks to be processed. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/116546 - * value-range.cc (irange_bitmask::irange_bitmask): Include - leading ones in the bitmask. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - * value-range.cc (irange_bitmask::irange_bitmask): Rename from - get_bitmask_from_range and tweak. - (prange::set): Use new constructor. - (prange::intersect): Use new constructor. - (irange::get_bitmask): Likewise. - * value-range.h (irange_bitmask): New constructor prototype. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120277 - * range-op-ptr.cc (operator_cast::fold_range): Check if the cast - if UNDEFINED before setting bounds. - -2025-05-15 Jeff Law <jlaw@ventanamicro.com> - - PR target/120223 - * config/riscv/riscv.cc (synthesize_ior_xor): XTHEADBS does not have - single bit manipulations. - -2025-05-15 Alexander Monakov <amonakov@ispras.ru> - - * tree-cfg.cc (verify_gimple_assign_unary): Accept only - COMPLEX_TYPE for CONJ_EXPR. - -2025-05-15 Andrew Pinski <quic_apinski@quicinc.com> - - * fold-const.cc (tree_swap_operands_p): Put ADDR_EXPR last - instead of just is_gimple_invariant_address ones. - * match.pd (`a ptr+ b !=\== ADDR`, `ADDR !=/== ssa_name`): - Move the ADDR to the last operand. Update comment. - -2025-05-15 Richard Biener <rguenther@suse.de> - - * tree-vectorizer.cc (vect_transform_loops): When diagnosing - a vectorized loop indicate whether we vectorized an epilogue, - whether we used masked vectors and what unroll factor was - used. - -2025-05-15 Richard Biener <rguenther@suse.de> - - * config/i386/i386.cc (ix86_vector_costs::finish_cost): - Do not suggest a first epilogue mode for AVX512 sized - main loops with X86_TUNE_AVX512_TWO_EPILOGUES as that - interferes with using a masked epilogue. - -2025-05-14 Richard Biener <rguenther@suse.de> - - * tree-vectorizer.h (record_stmt_cost): Remove mixed - stmt_vec_info/SLP node inline overload. - * tree-vect-stmts.cc (vectorizable_store): For costing - vector stmts only pass SLP node to record_stmt_cost. - (vectorizable_load): Likewise. - -2025-05-14 Richard Biener <rguenther@suse.de> - - * tree-vect-stmts.cc (vect_get_store_cost): Compute vectype based - on whether we got SLP node or stmt_vec_info and use the full - record_stmt_cost API. - (vect_get_load_cost): Likewise. - -2025-05-14 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc - (riscv_subset_list::riscv_subset_list): Init m_allow_adding_dup. - -2025-05-14 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/riscv-ext.def: New extension defs. - * config/riscv/riscv-ext.opt: Ditto. - * doc/riscv-ext.texi: Ditto. - -2025-05-14 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/t-riscv: Drop duplicate build rule for - riscv-ext.opt. - -2025-05-14 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv-ext.opt.urls: Regenerate. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-cfgcleanup.cc (canonicalize_bool_cond): New function. - (cleanup_control_expr_graph): Call canonicalize_bool_cond for GIMPLE_COND. - * tree-cfgcleanup.h (canonicalize_bool_cond): New declaration. - * tree-ssa-forwprop.cc (forward_propagate_into_gimple_cond): - Call canonicalize_bool_cond. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple.h (gimple_cond_set_code): Add assert of the code - being a comparison. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (forward_propagate_into_gimple_cond): Assert - that gimple_cond_code is always a comparison. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-fold.cc (replace_stmt_with_simplification): Check cfun before - accessing cfun. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (pass_forwprop::execute): Move marking of to_purge bb - and marking of fixup statements to after the local optimizations. - -2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-forwprop.cc (pass_forwprop::execute): Use `|=` for - changed on the local folding. - -2025-05-14 Richard Biener <rguenther@suse.de> - - * tree-vectorizer.h (record_stmt_cost): Add overload with - only SLP node and no vector type. - * tree-vect-stmts.cc (record_stmt_cost): Use - SLP_TREE_REPRESENTATIVE for stmt_vec_info. - (vect_model_simple_cost): Do not get stmt_vec_info argument - and adjust. - (vectorizable_call): Adjust. - (vectorizable_simd_clone_call): Likewise. - (vectorizable_conversion): Likewise. - (vectorizable_assignment): Likewise. - (vectorizable_shift): Likewise. - (vectorizable_operation): Likewise. - (vectorizable_condition): Likewise. - (vectorizable_comparison_1): Likewise. - * tree-vect-slp.cc (vect_prologue_cost_for_slp): Use - full-blown record_stmt_cost. - -2025-05-14 liuhongt <hongtao.liu@intel.com> - - PR target/120215 - * config/i386/i386-features.cc - (scalar_chain::mark_dual_mode_def): Weight - cost of integer<->sse move with bb frequency when it's - optimized_for_speed_p. - (general_scalar_chain::compute_convert_gain): Ditto, and - adjust function prototype to return true/false when cost model - is profitable or not. - (timode_scalar_chain::compute_convert_gain): Ditto. - (convert_scalars_to_vector): Adjust after the upper two - function prototype are changed. - * config/i386/i386-features.h (class scalar_chain): Change - n_integer_to_sse/n_sse_to_integer to cost_sse_integer, and add - weighted_cost_sse_integer. - (class general_scalar_chain): Adjust prototype to return bool - intead of int. - (class timode_scalar_chain): Ditto. - -2025-05-14 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/111873 - * tree-sra.cc (sra_modify_expr): When processing a load which has - a type-incompatible replacement, do not store the contents of the - replacement into the original aggregate when that aggregate is - const. - -2025-05-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/vector.md: Fix tf_to_fprx2 by using vlr instead of - ldr. - -2025-05-14 liuhongt <hongtao.liu@intel.com> - - PR tree-optimization/103771 - * match.pd (cond_expr_convert_p): Extend the match to handle - scalar floating point type. - * tree-vect-patterns.cc - (vect_recog_cond_expr_convert_pattern): Handle floating point - type. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/119903 - * gimple-fold.cc (replace_stmt_with_simplification): Reject for - noncall exceptions replacing comparison with itself. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/118868 - * tree-cfg.cc (verify_gimple_assign_unary): Allow pointers - but disallow aggregate types for PAREN_EXPR. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - * cfgexpand.cc (vars_ssa_cache::operator()): Update the cache if the use is already - has a cache. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - * cfgexpand.cc (vars_ssa_cache::operator()): Reverse the order of the going - through the update list. - -2025-05-13 Richard Biener <rguenther@suse.de> - - * tree-vect-loop.cc (vectorizable_nonlinear_induction): - Remove non-SLP path, use SLP_TREE_VECTYPE. - (vectorizable_induction): Likewise. Drop ncopies variable - which is always 1. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc (riscv_extra_ext_flag_table_t): - New. - (riscv_ext_flag_table): Rename to ... - (riscv_extra_ext_flag_table): this, and drop most of definitions - that can obtained from the flags field of the riscv_ext_info_t - structures. - (apply_extra_extension_flags): Use riscv_ext_info_t. - (riscv_ext_is_subset): Ditto. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc (riscv_ext_version_table): - Remove. - (standard_extensions_p): Use riscv_ext_info_t. - (get_default_version): Use riscv_ext_info_t. - (riscv_arch_help): Ditto. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc - (riscv_implied_info::riscv_implied_info_t): Remove unused - variant. - (struct riscv_implied_info_t): Remove unsued field. - (riscv_implied_info::match): Remove unused variant, and adjust - the logic. - (get_riscv_ext_info): New. - (riscv_implied_info): Remove. - (riscv_ext_info_t::apply_implied_ext): New. - (riscv_combine_info). Remove. - (riscv_subset_list::handle_implied_ext): Use riscv_ext_info_t - rather than riscv_implied_info. - (riscv_subset_list::check_implied_ext): Ditto. - (riscv_subset_list::handle_combine_ext): Use riscv_ext_info_t - rather than riscv_combine_info. - (riscv_minimal_hwprobe_feature_bits): Use riscv_ext_info_t - rather than riscv_implied_info. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc (riscv_ext_info_t): New - struct. - (opt_var_ref_t): Adjust order. - (cl_opt_var_ref_t): Ditto. - (riscv_ext_flag_table_t): Adjust order, and add a new construct - that not hold the extension name. - (riscv_version_t): New struct. - (riscv_implied_info_t): Adjust order, and add a new construct that not - hold the extension name. - (apply_extra_extension_flags): New function. - (riscv_ext_infos): New. - (riscv_implied_info): Adjust. - * config/riscv/riscv-opts.h (EXT_FLAG_MACRO): New macro. - (BITMASK_NOT_YET_ALLOCATED): New macro. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * common/config/riscv/riscv-common.cc (riscv_can_inline_p): Drop - extension flags check from `target_flags`. - * config/riscv/riscv-subset.h (riscv_x_target_flags_isa_mask): - Remove. - * config/riscv/riscv.cc (riscv_x_target_flags_isa_mask): Remove. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * doc/invoke.texi: Replace hand‑written extension table with - `@include riscv-ext.texi` to pull in auto‑generated entries. - * doc/riscv-ext.texi: New generated definition file - containing formatted documentation entries for each extension. - * Makefile.in: Add riscv-ext.texi to the list of files to be - processed by the Texinfo generator. - * config/riscv/gen-riscv-ext-texi.cc: New. - * config/riscv/t-riscv: Add rule for generating riscv-ext.texi. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/gen-riscv-ext-opt.cc: New. - * config/riscv/riscv.opt: Drop manual entries for target - options, and include riscv-ext.opt. - * config/riscv/riscv-ext.opt: New. - * config/riscv/riscv-ext.opt.urls: New. - * config.gcc: Add riscv-ext.opt to the list of target options files. - * common/config/riscv/riscv-common.cc (riscv_ext_flag_table): Adjsut target - option variable entry. - (riscv_set_arch_by_subset_list): Adjust target option variable. - * config/riscv/riscv-c.cc (riscv_ext_flag_table): Adjust target - option variable entry. - * config/riscv/riscv-vector-builtins.cc (pragma_intrinsic_flags): - Adjust variable name. - (riscv_pragma_intrinsic_flags_pollute): Adjust variable name. - (riscv_pragma_intrinsic_flags_restore): Ditto. - * config/riscv/t-riscv: Add the rule for generating - riscv-ext.opt. - * config/riscv/riscv-opts.h (TARGET_MIN_VLEN): Update. - (TARGET_MIN_VLEN_OPTS): Update. - -2025-05-13 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv-ext.def: New file; define extension metadata table. - * config/riscv/riscv-ext-corev.def: New. - * config/riscv/riscv-ext-sifive.def: New. - * config/riscv/riscv-ext-thead.def: New. - * config/riscv/riscv-ext-ventana.def: New. - -2025-05-13 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * diagnostic-format-html.cc: Include "diagnostic-format-text.h", - "pretty-print-urlifier.h" and "edit-context.h". - (html_builder::html_builder): Fix indentation in decl. - (html_builder::make_element_for_diagnostic): Split out metadata - code into make_element_for_metadata. Call - make_element_for_source, make_element_for_path, and - make_element_for_patch. - (html_builder::make_element_for_source): New. - (html_builder::make_element_for_path): New. - (html_builder::make_element_for_patch): New. - (html_builder::make_metadata_element): New. - (html_builder::make_element_for_metadata): New. - (html_output_format::get_builder): New. - (selftest::test_html_diagnostic_context::get_builder): New. - (selftest::test_simple_log): Update test to print a quoted string, - and verify that it uses a "gcc-quoted-text" span. - (selftest::test_metadata): New. - (selftest::diagnostic_format_html_cc_tests): Call it. - -2025-05-13 Andrew MacLeod <amacleod@redhat.com> - - * tree-ssanames.cc (set_bitmask): Use int_range_max for temps. - * value-range.cc (irange::set_range_from_bitmask): Handle all - trailing zero values. - -2025-05-12 Pan Li <pan2.li@intel.com> - - * match.pd: Add form 7 matching pattern for unsigned integer - SAT_ADD. - -2025-05-12 Andrew Pinski <quic_apinski@quicinc.com> - - * config/aarch64/aarch64.md (cmov<mode>6): Remove. - -2025-05-12 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/120230 - * optabs.cc (can_compare_p): Remove support for ccp_cmov. - * optabs.def (cmov_optab): Remove. - * optabs.h (can_compare_purpose): Remove ccp_cmov. - -2025-05-12 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120231 - * range-op-float.cc (operator_cast::fold_range): New variants. - (operator_cast::op1_range): Likewise. - * range-op-mixed.h (operator_cast::fold_range): Likewise. - (operator_cast::op1_range): Likewise - * range-op.cc (range_op_handler::fold_range): Add RO_FIF dispatch. - (range_op_handler::op1_range): Add RO_IFF and RO_FII patterns. - (range_operator::fold_range): Provide new variant default. - (range_operator::op1_range): Likewise. - * range-op.h (range_operator): Add new variant methods. - -2025-05-12 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120188 - * doc/gm2.texi (Semantic checking): Add -fm2-plugin command line option. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx-sm.def: Add '61'. - * config/nvptx/nvptx-gen.h: Regenerate. - * config/nvptx/nvptx-gen.opt: Likewise. - * config/nvptx/nvptx.cc (first_ptx_version_supporting_sm): Adjust. - * config/nvptx/nvptx.opt (-march-map=sm_61, -march-map=sm_62): - Likewise. - * config.gcc: Likewise. - * doc/invoke.texi (Nvidia PTX Options): Document '-march=sm_61'. - * config/nvptx/gen-multilib-matches-tests: Extend. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx-opts.h (enum ptx_version): Add - 'PTX_VERSION_5_0'. - * config/nvptx/nvptx.cc (ptx_version_to_string) - (ptx_version_to_number): Adjust. - * config/nvptx/nvptx.h (TARGET_PTX_5_0): New. - * config/nvptx/nvptx.opt (Enum(ptx_version)): Add 'EnumValue' - '5.0' for 'PTX_VERSION_5_0'. - * doc/invoke.texi (Nvidia PTX Options): Document '-mptx=5.0'. - -2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * common/config/riscv/riscv-common.cc - (riscv_subset_list::check_conflict_ext): New extension. - * config/riscv/riscv.opt: Ditto. - -2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * common/config/riscv/riscv-common.cc - (riscv_subset_list::check_conflict_ext): New extension. - * config/riscv/riscv.opt: Ditto. - -2025-05-12 Richard Biener <rguenther@suse.de> - - * lto-streamer-out.cc (hash_tree): Hash TYPE_MODE_RAW. - When offloading hash modes as VOIDmode for aggregates - and vectors. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * doc/extend.texi: Remove the iwmmxt intrinsics. - * doc/md.texi: Remove the iwmmxt-related constraints. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/aout.h (REGISTER_NAMES): Remove iwmmxt registers. - * config/arm/arm.h (FIRST_IWMMXT_REGNUM): Delete. - (LAST_IWMMXT_REGNUM): Delete. - (FIRST_IWMMXT_GR_REGNUM): Delete. - (LAST_IWMMXT_GR_REGNUM): Delete. - (IS_IWMMXT_REGNUM): Delete. - (IS_IWMMXT_GR_REGNUM): Delete. - (FRAME_POINTER_REGNUM): Define relative to CC_REGNUM. - (ARG_POINTER_REGNUM): Define relative to FRAME_POINTER_REGNUM. - (FIRST_PSEUDO_REGISTER): Adjust. - (WREG): Delete. - (WGREG): Delete. - (REG_ALLOC_ORDER): Remove iWMMX registers. - (enum reg_class): Remove iWMMX register classes. - (REG_CLASS_NAMES): Likewise. - (REG_CLASS_CONTENTS): Remove iWMMX registers. - * config/arm/arm.md (CC_REGNUM): Adjust value. - (VFPCC_RENGUM): Likewise. - (APSRQ_REGNUM): Likewise. - (APSRGE_REGNUM): Likewise. - (VPR_REGNUM): Likewise. - (RA_AUTH_CODE): Likewise. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm-cpus.in (feature iwmmxt, feature iwmmxt2): Delete. - * config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Delete. - (arm_output_iwmmxt_tinsr): Delete. - (arm_arch_iwmmxt): Delete. - (arm_arch_iwmmxt2): Delete. - * config/arm/arm.h (TARGET_IWMMXT): Delete. - (TARGET_IWMMXT2): Delete. - (TARGET_REALLY_IWMMXT): Delete. - (TARGET_REALLY_IWMMXT2): Delete. - (VALID_IWMMXT_REG_MODE): Delete. - (ARM_HAVE_V8QI_ARITH): Remove iWMMXT. - (ARM_HAVE_V4HI_ARITH): Likewise. - (ARM_HAVE_V2SI_ARITH): Likewise. - (ARM_HAVE_V8QI_LDST): Likewise. - (ARM_HAVE_V4HI_LDST): Likewise. - (ARM_HAVE_V2SI_LDST): Likewise. - (SECONDARY_OUTPUT_RELOAD_CLASS): Remove iWMMXT cases. - (SECONDARY_INPUT_RELOAD_CLASS): Likewise. - * config/arm/arm.cc (arm_arch_iwmmxt): Delete. - (arm_arch_iwmmxt2): Delete. - (arm_option_reconfigure_globals): Don't initialize them. - (arm_register_move_cost): Remove costs for iwmmxt. - (struct minipool_node): Update comment. - (output_move_double): Likewise - (output_return_instruction): Likewise. - (arm_print_operand, cases 'U' and 'w'): Report an error if - used. - (arm_regno_class): Remove iWMMXT cases. - (arm_debugger_regno): Remove iWMMXT cases. - (arm_output_iwmmxt_shift_immediate): Delete. - (arm_output_iwmmxt_tinsr): Delete. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm-c.cc (arm_cpu_builtins): Remove predefines - for __IWWMXT__, __IWMMXT2__ and __ARM_WMMX. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/iterators.md (VMMX, VMMX2): Remove mode iterators. - (MMX_char): Remove mode iterator attribute. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.md (core_cycles): Remove iwmmxt attributes. - * config/arm/types.md (autodetect_type): Likewise. - * config/arm/marvell-f-iwmmxt.md: Removed. - * config/arm/t-arm: Remove marvell-f-iwmmxt.md - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.cc (arm_option_check_internal): Remove - IWMMXT check. - (arm_options_perform_arch_sanity_checks): Likewise. - (use_return_insn): Likewise. - (arm_init_cumulative_args): Likewise. - (arm_legitimate_index_p): Likewise. - (thumb2_legitimate_index_p): Likewise. - (arm_compute_save_core_reg_mask): Likewise. - (output_return_instruction): Likewise. - (arm_compute_frame_layout): Likewise. - (arm_save_coproc_regs): Likewise. - (arm_hard_regno_mode_ok): Likewise. - (arm_expand_epilogue_apcs_frame): Likewise. - (arm_expand_epilogue): Likewise. - (arm_vector_mode_supported_p): Likewise. - (arm_preferred_simd_mode): Likewise. - (arm_conditional_register_usage): Likewise. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config.gcc (arm, --with-abi): Remove iwmmxt abi option. - * config/arm/arm.opt (enum ARM_ABI_IWMMXT): Remove. - * config/arm/arm.h (TARGET_IWMMXT_ABI): Delete. - (enum arm_pcs): Remove ARM_PCS_AAPCS_IWMMXT. - (FUNCTION_ARG_REGNO_P): Remove IWMMXT ABI support. - (CUMULATIVE_ARGS): Remove iwmmxt_nregs. - * config/arm/arm.cc (arm_options_perform_arch_sanity_checks): - Remove IWMMXT ABI checks. - (arm_libcall_value_1): Likewise. - (arm_function_value_regno_p): Likewise. - (arm_apply_result_size): Remove adjustment for IWMMXT ABI. - (arm_function_arg): Remove IWMMXT ABI support. - (arm_arg_partial_bytes): Likewise. - (arm_function_arg_advance): Likewise. - (arm_init_cumulative_args): Don't initialize iwmmxt_nregs. - * doc/invoke.texi (arm -mabi): Remove mention of the iwmmxt - ABI option. - * config/arm/arm-opts.h (enum arm_abi_type): Remove ARM_ABI_IWMMXT. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.md(attr arch): Remove iwmmxt and iwmmxt2. - Remove checks based on TARGET_REALLY_IWMMXT2 from all split - patterns. - (arm_movdi): Likewise. - (*arm_movt): Likewise. - (arch_enabled): Remove test for iwmmxt2. - * config/arm/constraints.md (y, z): Remove register constraints. - (Uy): Remove memory constraint. - * config/arm/thumb2.md (thumb2_pop_single): Remove check for - IWMMXT. - * config/arm/vec-common.md (mov<mode>): Remove check for IWMMXT. - (mul<mode>3): Likewise. - (xor<mode>3): Likewise. - (<absneg_str><mode>2): Likewise. - (@movmisalign<mode>): Likewise. - (@mve_<mve_insn>q_<supf><mode>): Likewise. - (vashl<mode>3): Likewise. - (vashr<mode>3): Likewise. - (vlshr<mode>3): Likewise. - (uavg<mode>3_ceil): Likewise. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.md: Don't include iwmmxt.md. - * config/arm/t-arm (MD_INCLUDES): Remove iwmmxt*.md. - * config/arm/iwmmxt.md: Removed. - * config/arm/iwmmxt2.md: Removed. - * config/arm/unspecs.md: Remove comment referring to - iwmmxt2.md. - (enum unspec): Remove iWMMXt unspec values. - (enum unspecv): Likewise. - * config/arm/predicates.md (imm_or_reg_operand): Delete. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm-builtins.cc (enum arm_builtins): Delete iWMMX - builtin values. - (bdesc_2arg): Likewise. - (bdesc_1arg): Likewise. - (arm_init_iwmmxt_builtins): Delete. - (arm_init_builtins): Don't call arm_init_iwmmxt_builtins. - (safe_vector_operand): Use __builtin_unreachable instead of emitting - an iwmmxt builtin. - (arm_general_expand_builtin): Remove iWMMX builtins support. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm-cpus.in (arch iwmmxt): treat in the same - way as we would treat XScale. - (arch iwmmxt2): Likewise. - (cpu xscale): Add aliases for iwmmxt and iwmmxt2. - (cpu iwmmxt): Delete. - (cpu iwmmxt2): Delete. - * config/arm/arm-generic.md (load_ldsched_xscale): Remove references - to iwmmxt. - (load_ldsched): Likewise. - * config/arm/arm-tables.opt: Regenerated. - * config/arm/arm-tune.md: Regenerated. - * doc/sourcebuild.texi (arm_iwmmxt_ok): Delete. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add parentheis - and re-indent. - (SECONDARY_INPUT_RELOAD_CLASS): Likewise. - -2025-05-12 H.J. Lu <hjl.tools@gmail.com> - - PR target/120228 - * config/i386/i386-features.cc (ix86_place_single_vector_set): - Remove df_insn_rescan after emit_insn_*. - (remove_partial_avx_dependency): Likewise. - (replace_vector_const): Likewise. - -2025-05-11 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_widen_mult_cost): Use sse_op to cost - SSE integer addition. - (ix86_multiplication_cost): Use COSTS_N_INSNS (...)/2 to cost sse - loads. - (ix86_shift_rotate_cost): Likewise. - (ix86_vector_costs::add_stmt_cost): Likewise. - -2025-05-11 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * config/xtensa/xtensa.cc (xtensa_register_move_cost): - Add appropriate move costs between AR_REGS and FP_REGS. - -2025-05-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120211 - * tree-vect-stmts.cc (vect_stmt_relevant_p): Only add PHIs - from the loop header to LOOP_VINFO_EARLY_BREAKS_LIVE_IVS. - -2025-05-11 Jiawei <jiawei@iscas.ac.cn> - - * common/config/riscv/riscv-common.cc: New profile. - -2025-05-11 Jiawei <jiawei@iscas.ac.cn> - - * common/config/riscv/riscv-common.cc (struct riscv_profiles): New struct. - (riscv_subset_list::parse_profiles): New parser. - (riscv_subset_list::parse_base_ext): Ditto. - * config/riscv/riscv-subset.h: New def. - * doc/invoke.texi: New option descriptions. - -2025-05-10 H.J. Lu <hjl.tools@gmail.com> - - PR target/92080 - PR target/117839 - * config/i386/i386-features.cc (replace_vector_const): Change - dest to src. - -2025-05-10 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386-features.cc - (general_scalar_chain::vector_const_cost): Add BB parameter; handle - size costs; use COSTS_N_INSNS to compute move costs. - (general_scalar_chain::compute_convert_gain): Use optimize_bb_for_size - instead of optimize_insn_for size; use COSTS_N_INSNS to compute move costs; - update calls of general_scalar_chain::vector_const_cost; use - ix86_cost->integer_to_sse. - (timode_immed_const_gain): Add bb parameter; use - optimize_bb_for_size_p. - (timode_scalar_chain::compute_convert_gain): Use optimize_bb_for_size_p. - * config/i386/i386-features.h (class general_scalar_chain): Update - prototype of vector_const_cost. - * config/i386/i386.h (struct processor_costs): Add integer_to_sse. - * config/i386/x86-tune-costs.h (struct processor_costs): Copy - sse_to_integer to integer_to_sse everywhere. - -2025-05-10 Filip Kastl <fkastl@suse.cz> - - PR tree-optimization/120080 - * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests): - Replace assert with return. - -2025-05-10 Shreya Munnangi <smunnangi1@ventanamicro.com> - - * config/riscv/iterators.md (OPTAB): New iterator. - * config/riscv/predicates.md (arith_or_zbs_operand): Remove. - (reg_or_const_int_operand): New predicate. - * config/riscv/riscv-protos.h (synthesize_ior_xor): Prototype. - * config/riscv/riscv.cc (synthesize_ior_xor): New function. - * config/riscv/riscv.md (ior/xor expander): Use synthesize_ior_xor. - -2025-05-10 LIU Hao <lh_mouse@126.com> - - PR target/111107 - * config/i386/cygming.h (PREFERRED_STACK_BOUNDARY_DEFAULT): Override - definition from i386.h. - (STACK_REALIGN_DEFAULT): Undefine, as it no longer has an effect. - * config/i386/i386.cc (ix86_update_stack_boundary): Force minimum - 128-bit alignment if `force_align_arg_pointer`. - -2025-05-10 Anton Blanchard <antonb@tenstorrent.com> - - * config/riscv/bitmanip.md (crc_rev<ANYI1:mode><ANYI:mode>4): Check - TARGET_ZVBC. - * config/riscv/riscv.cc (expand_crc_using_clmul): Emit code using - vclmul if TARGET_ZVBC. - -2025-05-09 Eric Botcazou <ebotcazou@adacore.com> - - * vr-values.cc (simplify_using_ranges::simplify) <BIT_AND_EXPR>: - Do not call simplify_bit_ops_using_ranges for boolean types whose - precision is not 1. - -2025-05-09 Richard Biener <rguenther@suse.de> - - PR tree-optimization/114166 - * tree-vect-stmts.cc (vectorizable_operation): Lower also - bitwise operations on word-mode vectors. - -2025-05-09 Richard Biener <rguenther@suse.de> - - * tree-vect-stmts.cc (vectorizable_operation): Remve non-SLP - path. - -2025-05-09 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple.h (gimple_cond_true_canonical_p): New function. - (gimple_cond_false_canonical_p): New function. - * gimple-fold.cc (replace_stmt_with_simplification): Return - false if replacing the operands of GIMPLE_COND with an INTEGER_CST - and already in canonical form. - -2025-05-09 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/120182 - * dse.cc (canon_address): Constant addresses have no - separate store group. - -2025-05-09 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * tree-vect-slp.cc (vect_slp_can_convert_to_external): - Handle cases where defs from multiple BBs are ordered - by their dominance relation. - -2025-05-09 Jørgen Kvalsvik <j@lambda.is> - - PR gcov-profile/120086 - * gcov.cc (print_prime_path_lines): Use unsigned, format with - %u. - (print_prime_path_source): Likewise. - (output_path_coverage): Format with HOST_SIZE_T_PRINT_UNSIGNED, - use unsigned for pathno. - -2025-05-09 Jennifer Schmitz <jschmitz@nvidia.com> - - * config/aarch64/aarch64-sve.md (*aarch64_sve_ptrue<mode>_ldr_str): - Add define_insn_and_split to fold predicated SVE loads/stores with - ptrue predicates to unpredicated instructions. - -2025-05-09 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * Makefile.in (OBJS-libcommon): Add diagnostic-format-html.o. - * diagnostic-format-html.cc: Move here from - testsuite/gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc. - Simplify includes. Rename "xhtml" to "html" throughout. - (write_escaped_text): Drop. - (class xhtml_stream_output_format): Drop. - (class html_file_output_format): Reimplement using - diagnostic_output_file. - (diagnostic_output_format_init_xhtml): Drop. - (diagnostic_output_format_init_xhtml_stderr): Drop. - (diagnostic_output_format_init_xhtml_file): Drop. - (diagnostic_output_format_open_html_file): New. - (make_html_sink): New. - (xhtml_format_selftests): Convert to... - (diagnostic_format_html_cc_tests): ...this. - (plugin_is_GPL_compatible): Drop. - (plugin_init): Drop. - * diagnostic-format-html.h: New file. - * doc/invoke.texi (-fdiagnostics-add-output=): Add - "experimental-html" scheme. - * opts-diagnostic.cc: Include "diagnostic-format-html.h". - (class html_scheme_handler): New. - (output_factory::output_factory): Add html_scheme_handler. - (html_scheme_handler::make_sink): New. - * selftest-run-tests.cc (selftest::run_tests): Call the new - selftests. - * selftest.h (selftest::diagnostic_format_html_cc_tests): New - decl. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-fold.cc (replace_stmt_with_simplification): Return false - if replacing `bool_var != 0` with `bool_var` in GIMPLE_COND. - -2025-05-08 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * tree-vect-loop.cc (get_initial_def_for_reduction): Remove. - (vect-create_epilog_for_reduction): Remove non-SLP path. - (vectorize_fold_left_reduction): Likewise. - (vectorizable_lane_reducing): Likewise. - (vectorizable_reduction): Likewise. - (vect_transform_reduction): Likewise. - (vect_transform_cycle_phi): Likewise. - (vectorizable_lc_phi): Remove non-SLP PATH and split into... - (vect_transform_lc_phi): ... this. - (update_epilogue_loop_vinfo): Update comment. - * tree-vect-stmts.cc (vect_analyze_stmt): Update call to - vectorizable_lc_phi. - (vect_transform_stmt): Update calls to vect_transform_reduction and - vect_transform_cycle_phi. Rename call from vectorizable_lc_phi to - vect_transform_lc_phi. - * tree-vectorizer.h (vect_transform_reduction): Update declaration. - (vect_transform_cycle_phi): Likewise. - (vectorizable_lc_phi): Likewise. - (vect_transform_lc_phi): New. - -2025-05-08 Richard Earnshaw <rearnsha@arm.com> - - * gensupport.cc (conlist::conlist): Pass a location to the constructor. - Only allow skipping of non-alpha-numeric characters when parsing a - number and only allow '=', '+' or '%'. Add some error checking when - parsing an operand number. - (parse_section_layout): Pass the location to the conlist constructor. - (parse_section): Allow an optional list of forbidden characters. - If specified, reject strings containing them. - (convert_syntax): Reject '=', '+' or '%' in an alternative. - -2025-05-08 Richard Earnshaw <rearnsha@arm.com> - - * config/aarch64/aarch64-sve.md (@aarch64_pred_<optab><mode>): Move - commutative marker to the cons specification. - (add<mode>3): Likewise. - (@aarch64_pred_<su>abd<mode>): Likewise. - (@aarch64_pred_<optab><mode>): Likewise. - (*cond_<optab><mode>_z): Likewise. - (<optab><mode>3): Likewise. - (@aarch64_pred_<optab><mode>): Likewise. - (*aarch64_pred_abd<mode>_relaxed): Likewise. - (*aarch64_pred_abd<mode>_strict): Likewise. - (@aarch64_pred_<optab><mode>): Likewise. - (@aarch64_pred_<optab><mode>): Likewise. - (@aarch64_pred_fma<mode>): Likewise. - (@aarch64_pred_fnma<mode>): Likewise. - (@aarch64_pred_<optab><mode>): Likewise. - * config/aarch64/aarch64-sve2.md (@aarch64_sve_<su>clamp<mode>): Move - commutative marker to the cons specification. - (*aarch64_sve_<su>clamp<mode>_x): Likewise. - (@aarch64_sve_fclamp<mode>): Likewise. - (*aarch64_sve_fclamp<mode>_x): Likewise. - (*aarch64_sve2_nor<mode>): Likewise. - (*aarch64_sve2_nand<mode>): Likewise. - (*aarch64_pred_faminmax_fused): Likewise. - * config/aarch64/aarch64.md (*loadwb_pre_pair_<ldst_sz>): Move the - early-clobber marker to the relevant alternative. - (*storewb_pre_pair_<ldst_sz>): Likewise. - (*add<mode>3_aarch64): Move commutative marker to the cons - specification. - (*addsi3_aarch64_uxtw): Likewise. - (*add<mode>3_poly_1): Likewise. - (add<mode>3_compare0): Likewise. - (*addsi3_compare0_uxtw): Likewise. - (*add<mode>3nr_compare0): Likewise. - (<optab><mode>3): Likewise. - (*<optab>si3_uxtw): Likewise. - (*and<mode>3_compare0): Likewise. - (*andsi3_compare0_uxtw): Likewise. - (@aarch64_and<mode>3nr_compare0): Likewise. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/116352 - * tree-vect-slp.cc (vect_build_slp_tree_2): When compressing - operands from a two-operator node make sure the resulting - operation does not mix defs from different basic-blocks. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120043 - * tree-ssa-phiopt.cc (cond_store_replacement): Check - whether the store is to readonly memory. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/116938 - * tree-ssa-phiopt.cc (move_stmt): Use rewrite_to_defined_overflow - isntead of manually doing the rewrite of the VCE. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120122 - PR tree-optimization/116939 - * gimple-fold.h (gimple_with_undefined_signed_overflow): Rename to .. - (rewrite_to_defined_overflow): This. - (gimple_needing_rewrite_undefined): Rename to ... - (rewrite_to_defined_unconditional): this. - * gimple-fold.cc (gimple_with_undefined_signed_overflow): Rename to ... - (gimple_needing_rewrite_undefined): This. Return true for VCE with integral - types of smaller precision. - (rewrite_to_defined_overflow): Rename to ... - (rewrite_to_defined_unconditional): This. Handle VCE rewriting to a cast. - * tree-if-conv.cc: s/gimple_with_undefined_signed_overflow/gimple_needing_rewrite_undefined/ - s/rewrite_to_defined_overflow/rewrite_to_defined_unconditional. - * tree-scalar-evolution.cc: Likewise - * tree-ssa-ifcombine.cc: Likewise. - * tree-ssa-loop-im.cc: Likewise. - * tree-ssa-loop-split.cc: Likewise. - * tree-ssa-reassoc.cc: Likewise. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR ipa/120146 - * tree-ssa-structalias.cc (create_variable_info_for): If - the symtab cannot tell us whether all refs to a variable - are explicit assume they are not. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119589 - PR tree-optimization/119586 - PR tree-optimization/119155 - * tree-vect-stmts.cc (vectorizable_store): Verify - DR_STEP_ALIGNMENT preserves DR_TARGET_ALIGNMENT when - VF > 1 and VMAT_STRIDED_SLP. Use vector aligned accesses when - we can. - (vectorizable_load): Likewise. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120143 - * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): - Move/update the original stmts, not the pattern stmts which - lack virtual operands and are not in the IL. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120089 - * tree-vect-stmts.cc (vect_stmt_relevant_p): Mark all - PHIs live when not already so and doing early-break - vectorization. - (vect_mark_stmts_to_be_vectorized): Skip virtual PHIs. - * tree-vect-slp.cc (vect_analyze_slp): Robustify handling - of early-break forced IVs. - -2025-05-08 Pengxuan Zheng <quic_pzheng@quicinc.com> - - * config/aarch64/aarch64-protos.h (aarch64_exact_log2_inverse): New. - * config/aarch64/aarch64-simd.md (aarch64_simd_vec_set_zero<mode>): - Update pattern accordingly. - * config/aarch64/aarch64.cc (aarch64_exact_log2_inverse): New. - * simplify-rtx.cc (simplify_context::simplify_ternary_operation): - Canonicalize vec_merge. - -2025-05-07 Jeff Law <jlaw@ventanamicro.com> - - PR target/120137 - PR target/120154 - * config/riscv/riscv-vect-permconst.cc (process_bb): Verify each - canonicalized element fits into the vector element mode. - -2025-05-07 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * common/config/riscv/riscv-common.cc: New extension. - * config/riscv/riscv.opt: Ditto. - -2025-05-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/91323 - * config/arm/arm.cc (arm_select_cc_mode): Use CCFPEmode for LTGT. - -2025-05-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/110796 - PR target/118446 - * config/arm/arm.h (REVERSIBLE_CC_MODE): FP modes are only - reversible if flag_finite_math_only. - * config/arm/arm.cc (arm_select_cc_mode): Return CCFPmode for all - FP comparisons if flag_finite_math_only. - -2025-05-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/111276 - * gimple-fold.cc (arith_code_with_undefined_signed_overflow): Make static. - (gimple_with_undefined_signed_overflow): New function. - * gimple-fold.h (arith_code_with_undefined_signed_overflow): Remove. - (gimple_with_undefined_signed_overflow): Add declaration. - * tree-if-conv.cc (if_convertible_gimple_assign_stmt_p): Use - gimple_with_undefined_signed_overflow instead of manually - checking lhs and the code of the stmt. - (predicate_statements): Likewise. - * tree-ssa-ifcombine.cc (ifcombine_rewrite_to_defined_overflow): Likewise. - * tree-ssa-loop-im.cc (move_computations_worker): Likewise. - * tree-ssa-reassoc.cc (update_range_test): Likewise. Reformat. - * tree-scalar-evolution.cc (final_value_replacement_loop): Use - gimple_with_undefined_signed_overflow instead of - arith_code_with_undefined_signed_overflow. - * tree-ssa-loop-split.cc (split_loop): Likewise. - -2025-05-07 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-loop-im.cc (compute_invariantness): Hoist to the always executed point - if ignorning the cost. - -2025-05-07 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Add FLOAT_EXPR; - FIX_TRUNC_EXPR and vec_promote_demote costs. - -2025-05-07 Jennifer Schmitz <jschmitz@nvidia.com> - - PR target/117978 - * config/aarch64/aarch64-protos.h: Declare - aarch64_emit_load_store_through_mode and aarch64_sve_maskloadstore. - * config/aarch64/aarch64-sve.md - (maskload<mode><vpred>): New define_expand folding maskloads with - certain predicate patterns to ASIMD loads. - (*aarch64_maskload<mode><vpred>): Renamed from maskload<mode><vpred>. - (maskstore<mode><vpred>): New define_expand folding maskstores with - certain predicate patterns to ASIMD stores. - (*aarch64_maskstore<mode><vpred>): Renamed from maskstore<mode><vpred>. - * config/aarch64/aarch64.cc - (aarch64_emit_load_store_through_mode): New function emitting a - load/store through subregs of a given mode. - (aarch64_emit_sve_pred_move): Refactor to use - aarch64_emit_load_store_through_mode. - (aarch64_expand_maskloadstore): New function to emit ASIMD loads/stores - for maskloads/stores with SVE predicates with VL1, VL2, VL4, VL8, or - VL16 patterns. - (aarch64_partial_ptrue_length): New function returning number of leading - set bits in a predicate. - -2025-05-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-protos.h (s390_expand_cstoreti4): New - function. - * config/s390/s390.cc (s390_expand_cstoreti4): New function. - * config/s390/s390.md (CC_SUZ): New mode iterator. - (l): New mode attribute. - (cc_tolower): New mode attribute. - * config/s390/vector.md (cstoreti4): New expander. - (*vec_cmpv2di_lane0_<cc_tolower>): New insn. - (*vec_cmpti_<cc_tolower>): New insn. - -2025-05-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/120036 - * config/i386/i386-features.cc (ix86_get_vector_load_mode): - Handle 8/4/2 bytes. - (remove_redundant_vector_load): If the mode size is smaller than - its natural size, first insert an extra move with a QI vector - SUBREG of the same size to avoid validate_subreg failure. - -2025-05-07 hongtao.liu <hongtao.liu@intel.com> - - PR gcov-profile/118508 - * auto-profile.cc - (autofdo_source_profile::get_callsite_total_count): Fix name - mismatch for fortran. - -2025-05-07 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.md (*branch<ANYI:mode>_shiftedarith_equals_zero): - Avoid generating unnecessary andi. Fix formatting. - -2025-05-06 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * common/config/riscv/riscv-common.cc: New extension. - -2025-05-06 Mingzhu Yan <yanmingzhu@iscas.ac.cn> - - * common/config/riscv/riscv-common.cc (riscv_ext_version_table): New - extension. - (riscv_ext_flag_table) Ditto. - * config/riscv/riscv.opt: New mask. - * doc/invoke.texi (RISC-V Options): New extension - -2025-05-06 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_rtx_costs): Cost FLOAT, UNSIGNED_FLOAT, - FIX, UNSIGNED_FIX. - * config/i386/i386.h (struct processor_costs): Add - cvtsi2ss, cvtss2si, cvtpi2ps, cvtps2pi. - * config/i386/x86-tune-costs.h (struct processor_costs): Update tables. - -2025-05-06 Martin Jambor <mjambor@suse.cz> - - PR ipa/119852 - * cgraph.h (cgraph_node::create_clone): Remove the default value of - argument suffix. Update function comment. - * cgraphclones.cc (cgraph_node::create_clone): Update function comment. - * ipa-inline-transform.cc (clone_inlined_nodes): Pass NULL to suffix - of create_clone explicitely. - * ipa-inline.cc (recursive_inlining): Likewise. - * lto-cgraph.cc (input_node): Likewise. - -2025-05-06 Martin Jambor <mjambor@suse.cz> - - * cgraph.h (cgraph_node::create_version_clone_with_body): Fix function - comment. Change the name of clone_name to suffix, in line with the - function definition. - * cgraphclones.cc (cgraph_node::create_version_clone_with_body): Fix - function comment. - -2025-05-06 Martin Jambor <mjambor@suse.cz> - - PR ipa/119852 - * cgraphclones.cc (dump_callgraph_transformation): Document the - function. Do not dump if suffix is NULL. - -2025-05-06 Martin Jambor <mjambor@suse.cz> - - * doc/invoke.texi (Developer Options): Document -fdump-ipa-clones. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * selftest-diagnostic.cc (test_diagnostic_context::report): Use - diagnostic_option_id rather than plain int. - * selftest-diagnostic.h (test_diagnostic_context::report): - Likewise. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/117988 - * json.cc (json::pointer::token::token): New ctors. - (json::pointer::token::~token): New. - (json::pointer::token::operator=): New. - (json::object::set): Set the value's m_pointer_token. - (json::array::append): Likewise. - * json.h (json::pointer::token): New struct. - (json::value::get_pointer_token): New accessor. - (json::value::m_pointer_token): New field. - * libsarifreplay.cc (get_logical_location_kind_for_json_kind): - New. - (make_logical_location_from_jv): New. - (sarif_replayer::report_problem): Set the logical location of the - diagnostic. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-sarif.cc (maybe_get_sarif_kind): Add cases for - new kinds of logical location. - * doc/libgdiagnostics/topics/logical-locations.rst: Add new kinds - of logical location for handling XML and JSON. - * libgdiagnostics.cc (impl_logical_location_manager::get_kind): - Add cases for new kinds of logical location. - (diagnostic_text_sink::text_starter): Likewise, introducing a - macro for this. - (diagnostic_manager_debug_dump_logical_location): Likewise. - * libgdiagnostics.h (enum diagnostic_logical_location_kind_t): Add - new kinds of logical location for handling XML and JSON. - * libsarifreplay.cc (handle_logical_location_object): Add entries - to "kind_values" for decoding sarif logical location kinds - relating to XML and JSON. - * logical-location.h (enum logical_location_kind): Add new kinds - of logical location for handling XML and JSON. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - PR other/116176 - * diagnostic-format-sarif.cc (class sarif_array_of_unique): New - template. - (class sarif_logical_location): Move here from - diagnostic-format-sarif.h. - (sarif_builder::m_cached_logical_locs): New. - (sarif_builder::sarif_builder): Initialize it. - (sarif_builder::set_any_logical_locs_arr): Call - make_minimal_sarif_logical_location rather than - make_sarif_logical_location_object. - (sarif_property_bag::set_logical_location): Likewise. - (make_sarif_logical_location_object): Replace with... - (sarif_builder::ensure_sarif_logical_location_for): ...this. - Capture "parentIndex" property. Consolidate into - theRuns.logicalLocations. - (sarif_builder::make_minimal_sarif_logical_location): New. - (sarif_builder::make_run_object): Add "index" properties to - m_cached_logical_locs and move it to theRuns.logicalLocations. - (selftest::test_sarif_array_of_unique_1): New. - (selftest::test_sarif_array_of_unique_2): New. - (selftest::diagnostic_format_sarif_cc_tests): Call the new - selftests. - * diagnostic-format-sarif.h (class sarif_logical_location): Move - to diagnostic-format-sarif.cc. - (make_sarif_logical_location_object): Drop decl. - * json.cc (value::compare): New. - (object::compare): New. - (selftest::fail_comparison): New. - (selftest::assert_json_equal): New. - (ASSERT_JSON_EQ): New. - (selftest::assert_json_non_equal): New. - (ASSERT_JSON_NE): New. - (selftest::test_comparisons): New. - (selftest::json_cc_tests): Call the new selftest. - * json.h (json::value::dyn_cast_object): New vfunc. - (json::object::dyn_cast_object): New vfunc impl. - (json::object::compare): New decl. - * libgdiagnostics.cc - (impl_logical_location_manager::get_parent): New. - * logical-location.h (logical_location_manager::get_parent): New - vfunc impl. - * selftest-logical-location.h - (test_logical_location_manager::get_parent): New vfunc impl. - * tree-logical-location.cc (assert_valid_tree): New. - (tree_logical_location_manager::get_short_name): Support types as - well as decls. - (tree_logical_location_manager::get_name_with_scope): Gracefully - handle non-decl nodes. - (tree_logical_location_manager::get_internal_name): Likewise. - (tree_logical_location_manager::get_kind): Don't attempt to handle - null nodes. Handle NAMESPACE_DECL and RECORD_TYPE. - (tree_logical_location_manager::get_name_for_path_output): - Gracefully handle non-decl nodes. - (tree_logical_location_manager::get_parent): New. - * tree-logical-location.h - (tree_logical_location_manager::get_parent): New vfunc impl. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-client-data-hooks.h: Include "logical-location.h". - (diagnostic_client_data_hooks::get_logical_location_manager): New. - (diagnostic_client_data_hooks::get_current_logical_location): - Convert return type from const logical_location * to - logical_location. - * diagnostic-format-json.cc: Include - "diagnostic-client-data-hooks.h". - (make_json_for_path): Update to use logical_location_manager from - the context. - * diagnostic-format-sarif.cc - (sarif_builder::get_logical_location_manager): New. - (sarif_builder::make_location_object): Update type of logical_loc - from "const logical_location *" to "logical_location". - (sarif_builder::set_any_logical_locs_arr): Likewise. - (sarif_builder::m_logical_loc_mgr): New field. - (sarif_result::on_nested_diagnostic): Use logical_location default - ctor rather than nullptr. - (sarif_builder::sarif_builder): Initialize m_logical_loc_mgr from - context's client data hooks. - (sarif_builder::make_locations_arr): Convert type of logical_loc - from from "const logical_location *" to "logical_location". - (sarif_builder::set_any_logical_locs_arr): Likewise. Pass manager - to make_sarif_logical_location_object. - (sarif_builder::make_location_object): Likewise. - (sarif_property_bag::set_logical_location): New. - (make_sarif_logical_location_object): Update for introduction of - logical_location_manager. - (populate_thread_flow_location_object): Pass builder to - ev.maybe_add_sarif_properties. - (selftest::test_make_location_object): Use logical_location - default ctor rather than nullptr. - * diagnostic-format-sarif.h (class logical_location): Replace - forward decl with include of "logical-location.h". - (class sarif_builder): New forward decl. - (sarif_property_bag::set_logical_location): New. - (make_sarif_logical_location_object): Add "mgr" param. - * diagnostic-path.cc - (diagnostic_path::get_first_event_in_a_function): Update for - change of logical_location type. - (per_thread_summary::per_thread_summary): Pass in - "logical_loc_mgr". - (per_thread_summary::m_logical_loc_mgr): New field. - (event_range::m_logical_loc): Update for change of - logical_location type. - (path_summary::get_logical_location_manager): New accessor. - (path_summary::m_logical_loc_mgr): New field. - (path_summary::get_or_create_events_for_thread_id): Pass - m_logical_loc_mgr to per_thread_summary ctor. - (path_summary::path_summary): Initialize m_logical_loc_mgr. - (thread_event_printer::print_swimlane_for_event_range): Add param - "logical_loc_mgr". Update for change in logical_loc type. - (print_path_summary_as_text): Pass manager to - thread_event_printer::print_swimlane_for_event_range. - (diagnostic_text_output_format::print_path): Update for - introduction of logical_location_manager. - * diagnostic-path.h: Include "logical-location.h". - (class sarif_builder): New forward decl. - (diagnostic_event::get_logical_location): Convert return type from - "const logical_location *" to "logical_location". - (diagnostic_event::maybe_add_sarif_properties): Add sarif_builder - param. - (diagnostic_path::get_logical_location_manager): New accessor. - (diagnostic_path::diagnostic_path): New ctor, taking manager. - (diagnostic_path::m_logical_loc_mgr): New field. - * diagnostic.cc - (diagnostic_context::get_logical_location_manager): New. - (logical_location::function_p): Convert to... - (logical_location_manager::function_p): ...this. - * diagnostic.h (class logical_location): Replace forward decl - with... - (class logical_location_manager): ...this. - (diagnostic_context::get_logical_location_manager): New decl. - * lazy-diagnostic-path.cc - (selftest::test_lazy_path::test_lazy_path): Pass m_logical_loc_mgr - to path ctor. - (selftest::test_lazy_path::make_inner_path): Likewise. - (selftest::test_lazy_path::m_logical_loc_mgr): New field. - * lazy-diagnostic-path.h - (lazy_diagnostic_path::lazy_diagnostic_path): New ctor. - * libgdiagnostics.cc (struct diagnostic_logical_location): Convert - from subclass of logical_location to a plain struct, dropping - accessors. - (class impl_logical_location_manager): New. - (impl_diagnostic_client_data_hooks::get_logical_location_manager): - New - (impl_diagnostic_client_data_hooks::m_logical_location_manager): - New field. - (diagnostic_manager::get_logical_location_manager): New. - (libgdiagnostics_path_event::get_logical_location): Reimplement. - (diagnostic_execution_path::diagnostic_execution_path): Add - logical_loc_mgr and pass to base class. - (diagnostic_execution_path::same_function_p): Update for change to - logical_location type. - (diagnostic::add_execution_path): Pass logical_loc_mgr to path - ctor. - (impl_diagnostic_client_data_hooks::get_current_logical_location): - Reimplement. - (diagnostic_text_sink::text_starter): Reimplement printing of - logical location. - (diagnostic_manager::new_execution_path): Pass mgr to path ctor. - (diagnostic_manager_debug_dump_logical_location): Update for - changes to diagnostic_logical_location. - (diagnostic_logical_location_get_kind): Likewise. - (diagnostic_logical_location_get_parent): Likewise. - (diagnostic_logical_location_get_short_name): Likewise. - (diagnostic_logical_location_get_fully_qualified_name): Likewise. - (diagnostic_logical_location_get_decorated_name): Likewise. - * logical-location.h (class logical_location_manager): New. - (class logical_location): Convert to typedef of - logical_location_manager::key. - * selftest-diagnostic-path.cc - (selftest::test_diagnostic_path::test_diagnostic_path): Pass - m_test_logical_loc_mgr to base ctor. - (selftest::test_diagnostic_path::same_function_p): Use pointer - comparison. - (selftest::test_diagnostic_path::add_event): Use - logical_location_from_funcname. - (selftest::test_diagnostic_path::add_thread_event): Likewise. - (selftest::test_diagnostic_path::logical_location_from_funcname): - New. - (selftest::test_diagnostic_event::test_diagnostic_event): Fix - indentation. Pass logical_location rather than const char *. - * selftest-diagnostic-path.h - (selftest::test_diagnostic_event::test_diagnostic_event): - Likewise. - (selftest::test_diagnostic_event::get_logical_location): Update - for change to logical_location type. - (selftest::test_diagnostic_event::get_function_name): Drop. - (selftest::test_diagnostic_event::m_logical_loc): Convert from - test_logical_location to logical_location. - (selftest::test_diagnostic_path::logical_location_from_funcname): - New. - (selftest::test_diagnostic_path::m_test_logical_loc_mgr): New - field. - * selftest-logical-location.cc: Include "selftest.h". - (selftest::test_logical_location::test_logical_location): Drop. - (selftest::test_logical_location_manager::~test_logical_location_manager): - New. - (selftest::test_logical_location::get_short_name): Replace with... - (selftest::test_logical_location_manager::get_short_name): - ...this. - (selftest::test_logical_location::get_name_with_scope): Replace - with... - (selftest::test_logical_location_manager::get_name_with_scope): - ...this. - (selftest::test_logical_location::get_internal_name): Replace - with... - (selftest::test_logical_location_manager::get_internal_name): - ...this. - (selftest::test_logical_location::get_kind): Replace with... - (selftest::test_logical_location_manager::get_kind): ...this. - (selftest::test_logical_location::get_name_for_path_output): - Replace with... - (selftest::test_logical_location_manager::get_name_for_path_output): - ...this. - (selftest::test_logical_location_manager::logical_location_from_funcname): - New. - (selftest::test_logical_location_manager::item_from_funcname): - New. - (selftest::selftest_logical_location_cc_tests): New. - * selftest-logical-location.h (class test_logical_location): - Replace with... - (class test_logical_location_manager): ...this. - * selftest-run-tests.cc (selftest::run_tests): Call - selftest_logical_location_cc_tests. - * selftest.h (selftest::selftest_logical_location_cc_tests): New - decl. - * simple-diagnostic-path.cc - (simple_diagnostic_path::simple_diagnostic_path): Add - "logical_loc_mgr" param and pass it to base ctor. - (simple_diagnostic_event::simple_diagnostic_event): Update init of - m_logical_loc. - (selftest::test_intraprocedural_path): Update for changes to - logical locations. - * simple-diagnostic-path.h: Likewise. - * tree-diagnostic-client-data-hooks.cc - (compiler_data_hooks::get_logical_location_manger): New. - (compiler_data_hooks::get_current_logical_location): Update. - (compiler_data_hooks::m_current_fndecl_logical_loc): Replace - with... - (compiler_data_hooks::m_logical_location_manager): ...this. - * tree-logical-location.cc - (compiler_logical_location::get_short_name_for_tree): Replace - with... - (tree_logical_location_manager::get_short_name): ...this. - (compiler_logical_location::get_name_with_scope_for_tree): Replace - with... - (tree_logical_location_manager::get_name_with_scope): ...this. - (compiler_logical_location::get_internal_name_for_tree): Replace - with... - (tree_logical_location_manager::get_internal_name): ...this. - (compiler_logical_location::get_kind_for_tree): Replace with... - (tree_logical_location_manager::get_kind): ...this. - (compiler_logical_location::get_name_for_tree_for_path_output): - Replace with... - (tree_logical_location_manager::get_name_for_path_output): - ...this. - (tree_logical_location::get_short_name): Drop. - (tree_logical_location::get_name_with_scope): Drop. - (tree_logical_location::get_internal_name): Drop. - (tree_logical_location::get_kind): Drop. - (tree_logical_location::get_name_for_path_output): Drop. - (current_fndecl_logical_location::get_short_name): Drop. - (current_fndecl_logical_location::get_name_with_scope): Drop. - (current_fndecl_logical_location::get_internal_name): Drop. - (current_fndecl_logical_location::get_kind): Drop. - (current_fndecl_logical_location::get_name_for_path_output): Drop. - * tree-logical-location.h (class compiler_logical_location): Drop. - (class tree_logical_location): Drop. - (class current_fndecl_logical_location): Drop. - (class tree_logical_location_manager): New. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * doc/libgdiagnostics/topics/compatibility.rst: New file, based - on gcc/jit/docs/topics/compatibility.rst. - * doc/libgdiagnostics/topics/index.rst: Add compatibility.rst. - * doc/libgdiagnostics/topics/logical-locations.rst (Accessors): - New section. - * libgdiagnostics++.h (logical_location::operator bool): New. - (logical_location::operator==): New. - (logical_location::operator!=): New. - (logical_location::get_kind): New. - (logical_location::get_parent): New. - (logical_location::get_short_name): New. - (logical_location::get_fully_qualified_name): New. - (logical_location::get_decorated_name): New. - * libgdiagnostics.cc - (diagnostic_logical_location::get_fully_qualified_name): New. - (diagnostic_logical_location_get_kind): New entrypoint. - (diagnostic_logical_location_get_parent): New entrypoint. - (diagnostic_logical_location_get_short_name): New entrypoint. - (diagnostic_logical_location_get_fully_qualified_name): New - entrypoint. - (diagnostic_logical_location_get_decorated_name): New entrypoint. - * libgdiagnostics.h - (LIBDIAGNOSTICS_HAVE_LOGICAL_LOCATION_ACCESSORS): New define. - (diagnostic_logical_location_get_kind): New entrypoint. - (diagnostic_logical_location_get_parent): New entrypoint. - (diagnostic_logical_location_get_short_name): New entrypoint. - (diagnostic_logical_location_get_fully_qualified_name): New - entrypoint. - (diagnostic_logical_location_get_decorated_name): New entrypoint. - * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_1): New. - -2025-05-06 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR middle-end/114512 - * config/riscv/bitmanip.md (bext* patterns): New patterns for - bext recognition plus splitter for extracting variable bit from - a constant. - * config/riscv/predicates.md (bitpos_mask_operand): New predicate. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * config/riscv/autovec-opt.md (*<optab>_vx_<mode>): Add new - combine to convert vec_duplicate + vadd.vv to vaddvx on GR2VR - cost. - * config/riscv/riscv.cc (riscv_rtx_costs): Take care of the cost - when vec_dup and vadd v, vec_dup(x). - * config/riscv/vector-iterators.md: Add new iterator for vx. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-protos.h (get_gr2vr_cost): Add new decl to - get the cost of gr2vr. - * config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost): - Leverage the helper function to get the cost of gr2vr. - * config/riscv/riscv.cc (riscv_register_move_cost): Ditto. - (riscv_builtin_vectorization_cost): Ditto. - (get_gr2vr_cost): Add new impl of the helper function. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-opts.h (RVV_GR2VR_COST_UNPROVIDED): Add - new macro to indicate the param is not provided. - * config/riscv/riscv.opt: Add new option --pararm=gpr2vr-cost. - -2025-05-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/1157777 - * tree-vectorizer.h (_slp_tree::avoid_stlf_fail): New member. - * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize it. - (vect_print_slp_tree): Dump it. - * tree-vect-data-refs.cc (vect_slp_analyze_instance_dependence): - For dataflow dependent loads of a store check whether there's - a cross-iteration data dependence that for sure prohibits - store-to-load forwarding and mark involved loads. - * tree-vect-stmts.cc (get_group_load_store_type): For avoid_stlf_fail - marked loads use VMAT_ELEMENTWISE. - -2025-05-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120074 - * gimple-fold.cc (fold_truth_andor_for_ifcombine): For - lsignbit && l_xor case, punt if ll_bitsize != lr_bitsize. Similarly - for rsignbit && r_xor case, punt if rl_bitsize != rr_bitsize. - Formatting fix. - -2025-05-06 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_tls_index): Add ifdef. - -2025-05-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120031 - * match.pd ((nop_outer_cast)-(inner_cast)var -> -(outer_cast)(var)): - Allow inner conversions that are not widenings when the outer - type is unsigned. - -2025-05-06 LIU Hao <lh_mouse@126.com> - - PR pch/14940 - * config/i386/host-mingw32.cc (mingw32_gt_pch_use_address): - Replace the loop that attempted to map the PCH only to its - original address with more adaptive operations - -2025-05-06 Julian Waters <tanksherman27@gmail.com> - Eric Botcazou <ebotcazou@adacore.com> - Uroš Bizjak <ubizjak@gmail.com> - Liu Hao <lh_mouse@126.com> - - * config/i386/i386.cc (ix86_legitimate_constant_p): Handle new UNSPEC. - (legitimate_pic_operand_p): Handle new UNSPEC. - (legitimate_pic_address_disp_p): Handle new UNSPEC. - (ix86_legitimate_address_p): Handle new UNSPEC. - (ix86_tls_index_symbol): New symbol for _tls_index. - (ix86_tls_index): Handle creation of _tls_index symbol. - (legitimize_tls_address): Create thread local access sequence. - (output_pic_addr_const): Handle new UNSPEC. - (i386_output_dwarf_dtprel): Handle new UNSPEC. - (i386_asm_output_addr_const_extra): Handle new UNSPEC. - * config/i386/i386.h (TARGET_WIN32_TLS): Define. - * config/i386/i386.md: New UNSPEC. - * config/i386/predicates.md: Handle new UNSPEC. - * config/mingw/mingw32.h (TARGET_WIN32_TLS): Define. - (TARGET_ASM_SELECT_SECTION): Define. - (DEFAULT_TLS_SEG_REG): Define. - * config/mingw/winnt.cc (mingw_pe_select_section): Select proper TLS section. - (mingw_pe_unique_section): Handle TLS section. - * config/mingw/winnt.h (mingw_pe_select_section): Declare. - * configure: Regenerate. - * configure.ac: New check for broken linker thread local support - -2025-05-05 Jeff Law <jlaw@ventanamicro.com> - - PR target/119971 - * config/riscv/bitmanip.md (rotation with masked count): Rewrite - as define_insn patterns. Fix formatting. - * config/riscv/riscv.md (shift with masked count): Similarly. - -2025-05-05 Uros Bizjak <ubizjak@gmail.com> - Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR target/120019 - * config/i386/i386.cc (ix86_print_operand): Handle 'v' operand - modifier to emit segment override prefix. - * config/i386/i386.md (*strmovdi_rex_1): Use %v operand modifier - to emit segment override prefix. - (*strmovsi_1): Ditto. - (*strmovhi_1): Ditto. - (*strmovqi_1): Ditto. - (*rep_movdi_rex64): Ditto. - (*rep_movsi): Ditto. - (*rep_movqi): Ditto. - -2025-05-05 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120048 - * ipa-cp.cc (ipcp_store_vr_results): Check for UNDEFINED. - -2025-05-05 Kyle Huey <khuey@kylehuey.com> - - * dwarf2out.cc (resolve_addr_in_expr): Propagate dtprel into the address - table when appropriate. - -2025-05-05 Simon Martin <simon@nasilyan.com> - - PR c++/118163 - PR c++/118392 - * diagnostic.cc (diagnostic_context::initialize): Initialize - m_diagnostic_groups.m_inhibiting_notes_from. - (diagnostic_context::inhibit_notes_in_group): New. - (diagnostic_context::notes_inhibited_in_group): New - (diagnostic_context::report_diagnostic): Call - inhibit_notes_in_group and notes_inhibited_in_group. - (diagnostic_context::end_group): Call inhibit_notes_in_group. - (diagnostic_context::pop_nesting_level): Ditto. - * diagnostic.h (diagnostic_context::m_diagnostic_groups): Add - member to track the depth at which a warning has been inhibited. - (diagnostic_context::notes_inhibited_in_group): Declare. - (diagnostic_context::inhibit_notes_in_group): Declare. - * doc/ux.texi: Document diagnostic_group behavior with regards - to inhibited warnings. - -2025-05-05 Jakub Jelinek <jakub@redhat.com> - - * config/i386/i386.md (truncsfbf2): Fix comment typo, - unsafte -> unsafe. - -2025-05-05 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/genrvv-type-indexer.cc: Apply clang-format to the - file. - -2025-05-04 Jeff Law <jlaw@ventanamicro.com> - - * config.gcc (riscv): Add riscv-vect-permcost.o to extra_objs. - * config/riscv/riscv-passes.def (pass_vector_permcost): Add new pass. - * config/riscv/riscv-protos.h (make_pass_vector_permconst): Declare. - * config/riscv/riscv-vect-permconst.cc: New file. - * config/riscv/t-riscv: Add build rule for riscv-vect-permcost.o - -2025-05-04 Jin Ma <jinma@linux.alibaba.com> - Dimitar Dimitrov <dimitar@dinux.eu> - - * config/riscv/riscv.cc (riscv_print_operand): Add H. - * doc/extend.texi: Document for H. - -2025-05-04 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_register_move_cost): Handle - subclasses with vector registers as well. - -2025-05-04 Jan Hubicka <hubicka@ucw.cz> - - PR target/119900 - * cgraph.cc (cgraph_edge::maybe_hot_p): Add - a variant accepting a sreal scale; use reliability of - profile. - * cgraph.h (cgraph_edge::maybe_hot_p): Declare - a varaint accepting a sreal scale. - * ipa-inline.cc (callee_speedup): New function. - (want_inline_small_function_p): add early return - and avoid duplicated lookup of summaries; use scaled - maybe_hot predicate. - -2025-05-04 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv.cc (riscv_emit_frm_mode_set): Refactor - the frm mode set by removing fsrmsi_restore_volatile. - * config/riscv/vector-iterators.md (unspecv): Remove as - unnecessary. - * config/riscv/vector.md (fsrmsi_restore_volatile): Ditto. - -2025-05-03 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (unspec_pcmp_p): New function. - (ix86_rtx_costs): Cost VEC_MERGE more realistically. - -2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/120059 - * simplify-rtx.cc (simplify_with_subreg_not): Check the result - of simplify_gen_subreg. - -2025-05-02 Jakub Jelinek <jakub@redhat.com> - Andrew MacLeod <amacleod@redhat.com> - - PR c/117023 - * gimple-range-infer.cc (gimple_infer_range::gimple_infer_range): - For nonnull_if_nonzero attribute check also arg2 range if it doesn't - include zero and in that case call add_nonzero too. - -2025-05-02 Jeff Law <jlaw@ventanamicro.com> - - Revert: - 2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> - - * config/mips/mips.cc (mips_option_override): Error out for - -mmicromips -mmsa. - -2025-05-02 Jan Hubicka <hubicka@ucw.cz> - - PR target/119900 - * config/i386/i386.cc (ix86_can_change_mode_class): Add TODO - comment. - (ix86_rtx_costs): Make VEC_SELECT equivalent to SUBREG cost 1. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/120012 - * doc/invoke.texi: Document C++20 aggregate fix. - * common.opt: Likewise. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/60336 - * config/i386/i386.cc (ix86_warn_parameter_passing_abi): - If no target, check the current TU. - -2025-05-02 Richard Biener <rguenther@suse.de> - - * config/arc/arc.cc (TARGET_LRA_P): Remove define. - * config/gcn/gcn.cc (TARGET_LRA_P): Likewise. - -2025-05-02 Filip Kastl <fkastl@suse.cz> - - PR middle-end/117091 - * tree-switch-conversion.cc (switch_decision_tree::analyze_switch_statement): - Remove warning about using different algorithms. - -2025-05-02 Filip Kastl <fkastl@suse.cz> - - * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests): - Modify the dynamic programming algorithm to take is_beneficial() - into account earlier. To do this efficiently, copy some logic - from is_beneficial() here. Add detailed comments about how the - DP algorithm works. - (bit_test_cluster::can_be_handled): Check that the cluster range - is >, not >= BITS_IN_WORD. Remove the - "vec<cluster *> &, unsigned, unsigned" overloaded variant since - we no longer need it. - (bit_test_cluster::is_beneficial): Add a comment that this - function is closely tied to m_max_case_bit_tests. Remove the - "vec<cluster *> &, unsigned, unsigned" overloaded variant since - we no longer need it. - * tree-switch-conversion.h: Remove the vec overloaded variants - of bit_test_cluster::is_beneficial and - bit_test_cluster::can_be_handled. - -2025-05-02 Filip Kastl <fkastl@suse.cz> - - PR middle-end/117091 - * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests_fast): - Remove function. - (bit_test_cluster::find_bit_tests_slow): Remove function. - (bit_test_cluster::find_bit_tests): We don't need to decide - between slow and fast so just put the modified (no longer) slow - algorithm here. - -2025-05-02 Jennifer Schmitz <jschmitz@nvidia.com> - - * config/aarch64/aarch64-sve.md (vec_extract<mode><Vel>): - Prevent the emission of pfalse+lastb for VLS. - -2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118617 - * tree-vect-generic.cc (expand_vector_conversion): Have 2 elements - as internal storage for converts. - * tree-vect-stmts.cc (vectorizable_conversion): Likewise. - -2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118659 - * tree-ssanames.cc (get_known_nonzero_bits_1): Use - wi::bit_and_not instead of `a & ~b`. - -2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/118090 - * ccmp.cc (get_compare_parts): Remove the up argument. - (expand_ccmp_next): Update call to get_compare_parts. - (expand_ccmp_expr_1): Likewise. - -2025-05-02 Richard Biener <rguenther@suse.de> - - * common.opt.urls: Regenerate. - -2025-05-01 Jason Merrill <jason@redhat.com> - - * doc/invoke.texi: Add -fabi-version detail. - * common.opt: Likewise. - -2025-05-01 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-ssa-phiopt.cc (phiopt_early_allow): Only allow a sequence - with one statement for MIN/MAX and the op was MIN/MAX. - -2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> - - * config/aarch64/arm_acle.h (__sqrt, __sqrtf): New function. - -2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> - - * config/aarch64/aarch64-simd-builtins.def: Change - BUILTIN_VHSDF_DF to BUILTIN_VHSDF_HSDF. - -2025-05-01 Jason Merrill <jason@redhat.com> - - PR c++/119162 - * fold-const.cc (maybe_nonzero_address): Return 1 for non-symtab - vars if folding_cxx_constexpr. - -2025-05-01 Richard Biener <rguenther@suse.de> - - * tree-vect-stmts.cc (vectorizable_conversion): Remove non-SLP - paths. - -2025-05-01 Richard Biener <rguenther@suse.de> - - * tree-vect-slp.cc (vect_remove_slp_scalar_calls): Look - at the original stmt. - -2025-05-01 Jakub Jelinek <jakub@redhat.com> - - * combine.cc (try_combine): Sets which satisfy set_noop_p can go - to i2 unless i3 is a jump and the other set is not. - -2025-04-30 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/120042 - * tree-vectorizer.h: Include dominance.h. - -2025-04-30 David Malcolm <dmalcolm@redhat.com> - - * prime-paths.cc (limit_checked_add): Remove redundant trailing - ';'. - (enters_through_p): Likewise. - -2025-04-30 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-sarif.cc - (sarif_serialization_format_json::write_to_file): New. - (sarif_builder::m_formatted): Replace field with... - (sarif_builder::m_serialization_format): ...this. - (sarif_builder::sarif_builder): Update for field change. - (sarif_builder::flush_to_file): Call m_serialization_format's - write_to_file vfunc. - (sarif_output_format::sarif_output_format): Replace param - "formatted" with "serialization_format". - (sarif_stream_output_format::sarif_output_format): Likewise. - (sarif_file_output_format::sarif_file_output_format): Likewise. - (diagnostic_output_format_init_sarif_stderr): Make a - sarif_serialization_format_json and pass it to - diagnostic_output_format_init_sarif. - (diagnostic_output_format_open_sarif_file): Split out into... - (diagnostic_output_file::try_to_open): ...this, adding - "serialization_kind" param. - (diagnostic_output_format_init_sarif_file): Update for new param - to diagnostic_output_format_open_sarif_file. Make a - sarif_serialization_format_json and pass it to - diagnostic_output_format_init_sarif. - (diagnostic_output_format_init_sarif_stream): Make a - sarif_serialization_format_json and pass it to - diagnostic_output_format_init_sarif. - (make_sarif_sink): Replace param "formatted" with "serialization". - (selftest::test_make_location_object): Update for changes to - sarif_builder ctor. - * diagnostic-format-sarif.h (enum class sarif_serialization): New. - (diagnostic_output_format_open_sarif_file): Add param - "serialization_kind". - (class sarif_serialization_format): New. - (class sarif_serialization_format_json): New. - (make_sarif_sink): Replace param "formatted" with - "serialization_format". - * diagnostic-output-file.h (diagnostic_output_file::try_to_open): - New decl. - * diagnostic.h (enum diagnostics_output_format): Tweak comments. - * doc/invoke.texi (-fdiagnostics-add-output): Add "serialization" - param to sarif scheme. - * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for change - to make_sarif_sink. - * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Add - "serialization" param and pass it on to make_sarif_sink. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * tree-vect-slp.cc (vect_schedule_slp_node): Sanity - check dominance check on operand defs. - -2025-04-30 Richard Biener <rguenther@suse.de> - - Revert: - 2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * tree-vect-slp.cc (vect_slp_can_convert_to_external): - Handle cases where defs from multiple BBs are ordered - by their dominance relation. - -2025-04-30 Richard Biener <rguenther@suse.de> - - * tree-vectorizer.h (get_later_stmt): Robustify against - stmts in different BBs, assert when they are unordered. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * tree-vect-slp.cc (vect_slp_can_convert_to_external): - Handle cases where defs from multiple BBs are ordered - by their dominance relation. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR ipa/120006 - * tree-ssa-structalias.cc (find_func_clobbers): Handle - strdup, strndup, realloc, index, strchr, strrchr, memchr, - strstr, strpbrk builtins like find_func_aliases does. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120003 - * tree-ssa-threadbackward.cc (back_threader::find_paths_to_names): - Allow block re-use but do not enlarge the path beyond such a - re-use. - -2025-04-30 Georg-Johann Lay <avr@gjlay.de> - - Backported from master: - 2025-04-30 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (xload_<mode>_libgcc): Clobber R21, Z. - -2025-04-30 Kito Cheng <kito.cheng@sifive.com> - - PR target/119832 - * config/riscv/riscv.cc (riscv_dynamic_frm_mode_p): New. - (riscv_mode_confluence): New. - (TARGET_MODE_CONFLUENCE): Define to riscv_mode_confluence. - -2025-04-30 Jerry Zhang Jian <jerry.zhangjian@sifive.com> - - * common/config/riscv/riscv-common.cc: Add Zve32x depends on Zicsr - -2025-04-30 Jennifer Schmitz <jschmitz@nvidia.com> - - * config/aarch64/aarch64.cc (aarch64_emit_sve_pred_move): - Fold LD1/ST1 with ptrue to LDR/STR for 128-bit VLS. - -2025-04-30 yulong <shiyulong@iscas.ac.cn> - - * config/riscv/constraints.md (Ou01): New constraint. - (Ou02): Ditto. - * config/riscv/generic-vector-ooo.md (vec_sf_vcp): New reservation. - * config/riscv/genrvv-type-indexer.cc (main): New type. - * config/riscv/riscv-c.cc (riscv_pragma_intrinsic): Add xsfvcp strings. - * config/riscv/riscv-vector-builtins-shapes.cc (struct sf_vcix_se_def): - New function. - (struct sf_vcix_def): Ditto. - (SHAPE): Ditto. - * config/riscv/riscv-vector-builtins-shapes.h: Ditto. - * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_X2_U_OPS): New type. - (DEF_RVV_X2_WU_OPS): Ditto. - (vuint8mf8_t): Ditto. - (vuint8mf4_t): Ditto. - (vuint8mf2_t): Ditto. - (vuint8m1_t): Ditto. - (vuint8m2_t): Ditto. - (vuint8m4_t): Ditto. - (vuint16mf4_t): Ditto. - (vuint16mf2_t): Ditto. - (vuint16m1_t): Ditto. - (vuint16m2_t): Ditto. - (vuint16m4_t): Ditto. - (vuint32mf2_t): Ditto. - (vuint32m1_t): Ditto. - (vuint32m2_t): Ditto. - (vuint32m4_t): Ditto. - * config/riscv/riscv-vector-builtins.cc (DEF_RVV_X2_U_OPS): New builtins - def. - (DEF_RVV_X2_WU_OPS): Ditto. - (rvv_arg_type_info::get_scalar_float_type): Ditto. - (function_instance::modifies_global_state_p): Ditto. - * config/riscv/riscv-vector-builtins.def (v_x): New base type. - (i): Ditto. - (v_i): Ditto. - (xv): Ditto. - (iv): Ditto. - (fv): Ditto. - (vvv): Ditto. - (xvv): Ditto. - (ivv): Ditto. - (fvv): Ditto. - (vvw): Ditto. - (xvw): Ditto. - (ivw): Ditto. - (fvw): Ditto. - (v_vv): Ditto. - (v_xv): Ditto. - (v_iv): Ditto. - (v_fv): Ditto. - (v_vvv): Ditto. - (v_xvv): Ditto. - (v_ivv): Ditto. - (v_fvv): Ditto. - (v_vvw): Ditto. - (v_xvw): Ditto. - (v_ivw): Ditto. - (v_fvw): Ditto. - (x2_vector): Ditto. - (scalar_float): Ditto. - * config/riscv/riscv-vector-builtins.h (enum required_ext): New extension. - (required_ext_to_isa_name): Ditto. - (required_extensions_specified): Ditto. - (struct rvv_arg_type_info): Ditto. - (struct function_group_info): Ditto. - * config/riscv/riscv.md: New attr. - * config/riscv/sifive-vector-builtins-bases.cc (class sf_vc): New function. - (BASE): New base_name. - * config/riscv/sifive-vector-builtins-bases.h: New function_base. - * config/riscv/sifive-vector-builtins-functions.def - (REQUIRED_EXTENSIONS): New intrinsics def. - (sf_vc): Ditto. - * config/riscv/sifive-vector.md (@sf_vc_x_se<mode>): New RTL mode. - (@sf_vc_v_x_se<mode>): Ditto. - (@sf_vc_v_x<mode>): Ditto. - (@sf_vc_i_se<mode>): Ditto. - (@sf_vc_v_i_se<mode>): Ditto. - (@sf_vc_v_i<mode>): Ditto. - (@sf_vc_vv_se<mode>): Ditto. - (@sf_vc_v_vv_se<mode>): Ditto. - (@sf_vc_v_vv<mode>): Ditto. - (@sf_vc_xv_se<mode>): Ditto. - (@sf_vc_v_xv_se<mode>): Ditto. - (@sf_vc_v_xv<mode>): Ditto. - (@sf_vc_iv_se<mode>): Ditto. - (@sf_vc_v_iv_se<mode>): Ditto. - (@sf_vc_v_iv<mode>): Ditto. - (@sf_vc_fv_se<mode>): Ditto. - (@sf_vc_v_fv_se<mode>): Ditto. - (@sf_vc_v_fv<mode>): Ditto. - (@sf_vc_vvv_se<mode>): Ditto. - (@sf_vc_v_vvv_se<mode>): Ditto. - (@sf_vc_v_vvv<mode>): Ditto. - (@sf_vc_xvv_se<mode>): Ditto. - (@sf_vc_v_xvv_se<mode>): Ditto. - (@sf_vc_v_xvv<mode>): Ditto. - (@sf_vc_ivv_se<mode>): Ditto. - (@sf_vc_v_ivv_se<mode>): Ditto. - (@sf_vc_v_ivv<mode>): Ditto. - (@sf_vc_fvv_se<mode>): Ditto. - (@sf_vc_v_fvv_se<mode>): Ditto. - (@sf_vc_v_fvv<mode>): Ditto. - (@sf_vc_vvw_se<mode>): Ditto. - (@sf_vc_v_vvw_se<mode>): Ditto. - (@sf_vc_v_vvw<mode>): Ditto. - (@sf_vc_xvw_se<mode>): Ditto. - (@sf_vc_v_xvw_se<mode>): Ditto. - (@sf_vc_v_xvw<mode>): Ditto. - (@sf_vc_ivw_se<mode>): Ditto. - (@sf_vc_v_ivw_se<mode>): Ditto. - (@sf_vc_v_ivw<mode>): Ditto. - (@sf_vc_fvw_se<mode>): Ditto. - (@sf_vc_v_fvw_se<mode>): Ditto. - (@sf_vc_v_fvw<mode>): Ditto. - * config/riscv/vector-iterators.md: New iterator. - * config/riscv/vector.md: New vtype. - -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 - * doc/invoke.texi: Add -Wanalyzer-throw-of-unexpected-type. - * gimple.h (gimple_call_nothrow_p): Make arg const. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-json.cc: Drop include of "make-unique.h". - Replace uses of ::make_unique with std::make_unique. - * diagnostic-format-sarif.cc: Likewise. - * diagnostic-format-text.cc: Likewise. - * diagnostic.cc: Likewise. - * dumpfile.cc: Likewise. - * gcc-attribute-urlifier.cc: Likewise. - * gcc-urlifier.cc: Likewise. - * json-parsing.cc: Likewise. - * json.cc: Likewise. - * lazy-diagnostic-path.cc: Likewise. - * libgdiagnostics.cc: Likewise. - * libsarifreplay.cc: Likewise. - * lto-wrapper.cc: Likewise. - * make-unique.h: Delete. - * opts-diagnostic.cc: Drop include of "make-unique.h". - Replace uses of ::make_unique with std::make_unique. - * pretty-print.cc: Likewise. - * text-art/style.cc: Likewise. - * text-art/styled-string.cc: Likewise. - * text-art/table.cc: Likewise. - * text-art/tree-widget.cc: Likewise. - * text-art/widget.cc: Likewise. - * timevar.cc: Likewise. - * toplev.cc: Likewise. - * tree-diagnostic-client-data-hooks.cc: Likewise. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * pass_manager.h (class pass_manager): Add "m_" prefix to all pass - fields. - * passes.cc (pass_manager::execute_early_local_passes): Update - for added "m_" prefix. - (pass_manager::execute_pass_mode_switching): Likewise. - (pass_manager::finish_optimization_passes): Likewise. - (pass_manager::pass_manager): Likewise. - (pass_manager::dump_profile_report): Likewise. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * diagnostic.h (diagnostic_context::m_opt_permissive): Convert - from int to diagnostic_option_id. Update comment. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * diagnostic.h (diagnostic_context::set_abort_on_error): New. - (diagnostic_context::m_abort_on_error): Make private. - (diagnostic_abort_on_error): Delete. - * opts.cc (setup_core_dumping): Update for above changes. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-format-sarif.cc (sarif_builder::get_opts): New - accessor. - (sarif_builder::get_version): Update for... - (sarif_builder::m_version): Replace this field... - (sarif_builder::m_m_sarif_gen_opts): ...with this. - (sarif_builder::sarif_builder): Replace version with - sarif_gen_opts throughout. - (sarif_builder::make_top_level_object): Use get_version. - (sarif_output_format::sarif_output_format): Replace version with - sarif_gen_opts throughout. - (sarif_stream_output_format::sarif_stream_output_format): - Likewise. - (sarif_file_output_format::sarif_file_output_format): Likewise. - (diagnostic_output_format_init_sarif_stderr): Drop version param - and use default for sarif_generation_options instead. - (diagnostic_output_format_init_sarif_file): Likewise. - (diagnostic_output_format_init_sarif_stream): Likewise. - (make_sarif_sink): Replace version with sarif_gen_opts throughout. - (sarif_generation_options::sarif_generation_options): New. - (selftest::test_sarif_diagnostic_context::test_sarif_diagnostic_context): - Replace version with sarif_gen_opts throughout. - (selftest::test_make_location_object): Likewise. - (selftest::test_simple_log): Likewise. - (selftest::test_simple_log_2): Likewise. - (selftest::test_message_with_embedded_link): Likewise. - (selftest::test_message_with_braces): Likewise. - (selftest::test_buffering): Likewise. - (selftest::run_tests_per_version): Replace with... - (selftest::for_each_sarif_gen_option): ...this... - (selftest::run_line_table_case_tests_per_version): ...and this. - (selftest::diagnostic_format_sarif_cc_tests): Update to use - for_each_sarif_gen_option and - run_line_table_case_tests_per_version. - * diagnostic-format-sarif.h (enum class sarif_version): Move lower - down. - (diagnostic_output_format_init_sarif_stderr): Drop "version" - param. - (diagnostic_output_format_init_sarif_file): Likewise. - (diagnostic_output_format_init_sarif_stream): Likewise. - (struct sarif_generation_options): New. - (make_sarif_sink): Add "formatted" param. Replace version param - with sarif_gen_opts. - * diagnostic.cc (diagnostic_output_format_init): Drop hardcoded - sarif_version::v2_1_0 arguments from calls, which instead use - the default ctor for sarif_generation_options internally. - * libgdiagnostics.cc (sarif_sink::sarif_sink): Replace version - param with sarif_gen_opts, and update for changes to - make_sarif_sink. - (diagnostic_manager_add_sarif_sink): Use sarif_gen_opts rather - than version. - * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Likewise. - Pass "true" for "formatted" param. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - * value-relation.cc (value_relation::swap): New. - (value_relation::negate): Remove. - (dom_oracle::next_relation): New. - (block_relation_iterator::block_relation_iterator): New. - (block_relation_iterator::get_next_relation): New. - (dom_oracle::dump): Use iterator. - * value-relation.h (relation_oracle::next_relation): New. - (dom_oracle::next_relation): New prototype. - (class block_relation_iterator): New. - (FOR_EACH_RELATION_BB): New. - (FOR_EACH_RELATION_NAME): New. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - * range-op-ptr.cc (range_operator::lhs_op1_relation): Add - prange/prange/irange (PPI) default. - (pointer_plus_operator::lhs_op1_relation): New. - * range-op.cc (range_op_handler::lhs_op1_relation): Add RO_PPI case. - * range-op.h (range_op_handler::lhs_op1_relation): Add prototype. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - * gimple-range-fold.cc (fold_using_range::range_of_range_op): Use a - new local variable for intermediate relation results. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - * gimple-range-cache.cc (ranger_cache::apply_inferred_ranges): Pass - 'this' as the range-query to the inferred range constructor. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/95801 - * range-op.cc (operator_div::op2_range): New. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/119712 - * value-range.cc (range_bitmask::adjust_range): Delete. - (irange::set_range_from_bitmask): Integrate adjust_range. - (irange::update_bitmask): Do nothing if bitmask doesnt change. - (irange:intersect_bitmask): Do not call adjust_range. Exit if there - is no second bitmask. - * value-range.h (adjust_range): Remove prototype. - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/67797 - * tree-tailcall.cc (find_tail_calls): Add support for ERF_RETURNS_ARG. - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - * tree-cfg.cc (verify_gimple_cond): Error out if the comparison - throws. - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR c/119432 - * tree-pretty-print.cc (op_symbol_code): For LROTATE_EXPR, - output __ROTATE_LEFT for gimple. - For RROTATE_EXPR output __ROTATE_RIGHT for gimple. - -2025-04-28 Richard Sandiford <richard.sandiford@arm.com> - - * rtl.h (native_decode_int): Declare. - * simplify-rtx.cc (native_decode_int): New function, split out from... - (native_decode_rtx): ...here. - -2025-04-28 H.J. Lu <hjl.tools@gmail.com> - Uros Bizjak <ubizjak@gmail.com> - - PR target/109780 - PR target/109093 - * config/i386/i386.cc (stack_access_data): New. - (ix86_update_stack_alignment): Likewise. - (ix86_find_all_reg_use_1): Likewise. - (ix86_find_all_reg_use): Likewise. - (ix86_find_max_used_stack_alignment): Also check memory accesses - from registers defined by stack or frame registers. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR ipa/119973 - * tree-ssa-structalias.cc (create_variable_info_for): - Build constraints from DECL_INITIAL directly rather than - the IPA reference list which is incomplete. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR lto/113207 - * ipa-free-lang-data.cc (fld_type_variant): Add extra checking. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119044 - * tree-predcom.cc (ref_at_iteration): Copy alias info - from the original ref. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119103 - * tree-ssa-loop-im.cc (in_loop_pipeline): Globalize. - (compute_invariantness): Override costing when we run - right before PRE and PRE is enabled. - (pass_lim::execute): Adjust. - * tree-vect-patterns.cc (vect_determine_precisions_from_users): - For variable shift amounts use range information. - -2025-04-28 Richard Biener <rguenther@suse.de> - - * genmatch.cc (::gen_transform): Add in_place parameter. - Assert it isn't set in unexpected places. - (possible_noop_convert): New. - (expr::gen_transform): Support in_place and emit code to - compute a child in-place when the operation is a conversion. - (dt_simplify::gen_1): Arrange for an outermost conversion - to be elided by generating the transform of the operand - in-place. - * match.pd (__real cepxi (x) -> cos (x)): Use single_use. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR middle-end/60779 - * common.opt (fcx-method=): New, map to flag_complex_method. - (Enum complex_method): New. - (fcx-limited-range): Alias to -fcx-method=limited-range. - (fcx-fortran-rules): Alias to -fcx-medhot=fortran. - * ipa-inline-transform.cc (inline_call): Check flag_complex_method. - * ipa-inline.cc (can_inline_edge_by_limits_p): Likewise. - * opts.cc (finish_options): Adjust. - (set_fast_math_flags): Likewise. - * doc/invoke.texi (fcx-method=): Document. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR middle-end/116083 - * stor-layout.cc (layout_type): Compute TYPE_SIZE and - TYPE_SIZE_UNIT for vector types from the component mode - sizes. - -2025-04-28 Richard Biener <rguenther@suse.de> - - * tree-vect-loop.cc (vect_analyze_loop_operations): Prune - all actual analysis and only fail when we discover a not - SLP covered stmt. - (vect_analyze_loop_2): Remove path trying without SLP. - -2025-04-28 Richard Biener <rguenther@suse.de> - - * tree-vect-loop.cc (vect_loop_kill_debug_uses): Remove. - (maybe_set_vectorized_backedge_value): Likewise. - (vect_transform_loop_stmt): Likewise. Move dump printing - to vect_transform_stmt. - (vect_transform_loop): Remove loop over loop stmts transforming - them, but retain some DCE code still necessary. - * tree-vect-stmts.cc (vect_transform_stmt): Dump that - we're vectorizing a stmt. - -2025-04-28 Richard Biener <rguenther@suse.de> - - * params.opt (--param=vect-force-slp): Remove. - * doc/invoke.texi (--param=vect-force-slp): Likewise. - * tree-vect-loop.cc (vect_analyze_loop_2): Assume - param_vect_force_slp is 1. - * tree-vect-stmts.cc (vect_analyze_stmt): Likewise. - -2025-04-28 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119493 - * tree-tailcall.cc (find_tail_calls): Handle non-gimple_reg_type - arguments which aren't just passed through for tail recursions - even for non-musttail calls. - -2025-04-28 LIU Hao <lh_mouse@126.com> - - PR target/111107 - * config/i386/cygming.h (STACK_REALIGN_DEFAULT): Copy from sol2.h. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR c/48274 - PR middle-end/112877 - PR middle-end/118288 - * gimple.cc (gimple_builtin_call_types_compatible_p): Remove the - targetm.calls.promote_prototypes call. - * tree.cc (tree_builtin_call_types_compatible_p): Likewise. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * calls.cc (initialize_argument_information): Promote small integer - arguments if TARGET_PROMOTE_PROTOTYPES returns true. - -2025-04-27 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_const_vector): Extract - const vector stepped into separated func. - (expand_const_vector_single_step_npatterns): Add new func - to take care of single step. - (expand_const_vector_interleaved_stepped_npatterns): Add new - func to take care of interleaved step. - (expand_const_vector_stepped): Add new func to take care of - const vector stepped. - -2025-04-27 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_const_vector_duplicate_repeating): - Add new func to take care of vector duplicate with repeating. - (expand_const_vector_duplicate_default): Add new func to take - care of default const vector duplicate. - (expand_const_vector_duplicate): Add new func to take care - of all const vector duplicate. - (expand_const_vector): Extract const vector duplicate into - separated function. - -2025-04-27 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_const_vec_series): Add new - func to take care of the const vec_series. - (expand_const_vector): Extract const vec_series into separated - function. - -2025-04-27 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv-v.cc (expand_const_vector): Extract - const vec_duplicate into separated function. - (expand_const_vec_duplicate): Add new func to take care - of the const vec_duplicate. - -2025-04-27 liuhongt <hongtao.liu@intel.com> - - PR target/119549 - * common/config/i386/i386-common.cc (ix86_handle_option): - Refactor msse4 and mno-sse4. - * config/i386/i386.opt (msse4): Remove RejectNegative. - (mno-sse4): Remove the entry. - * config/i386/i386-options.cc - (ix86_valid_target_attribute_inner_p): Remove special code - which handles mno-sse4. - -2025-04-26 Jan Hubicka <hubicka@ucw.cz> - - PR target/105275 - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Fix cost of FP scalar - MAX_EXPR and MIN_EXPR - -2025-04-26 Iain Buclaw <ibuclaw@gdcproject.org> - - * config.gcc (LIST): --enable-obsolete for m32c-elf. - -2025-04-26 Andrew Pinski <quic_apinski@quicinc.com> - - * simplify-rtx.cc (simplify_context::simplify_unary_operation_1) <case ZERO_EXTEND>: - Add simplifcation for and with a constant. - -2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> - - * doc/sourcebuild.texi: Document variadic_mi_thunk effective - target check. - -2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> - - * doc/sourcebuild.texi: Document effective target - using_sjlj_exceptions. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - - * match.pd: Move `(cmp (cond @0 @1 @2) @3)` simplifcation after - the bool comparison simplifications. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple.h (gimple_cond_make_false): Fix comment. - (gimple_cond_make_true): Likewise. - (gimple_cond_true_p): Fix spello for statement in comment. - -2025-04-25 Jason Merrill <jason@redhat.com> - - * common.opt: Add ABI v21. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - - * ipa-icf.cc (sem_function::sem_function): Remove - the obstack argument version one. - (sem_variable::sem_variable): Likewise. - * ipa-icf.h (sem_function): Remove ctor for - obstack argument only one. - (sem_variable): Likewise. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - - * ipa-icf.cc (sem_function::init): Remove assignment of node from itself. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/119811 - * tree-ssa-phiopt.cc: Remove calls.h include. - -2025-04-25 Andre Vieira <andre.simoesdiasvieira@arm.com> - - PR rtl-optimization/116479 - * modulo-sched.cc (doloop_register_get): Reject conditions with - decrements that are not 1. - -2025-04-25 Jakub Jelinek <jakub@redhat.com> - - PR target/119873 - * config/s390/s390.cc (s390_call_saved_register_used): Don't return - true if default definition of PARM_DECL SSA_NAME of the same register - is passed in call saved register in the PARALLEL case either. - -2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> - Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119737 - * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Properly - switch sections. - -2025-04-25 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> - - PR target/119122 - * common/config/riscv/riscv-common.cc (riscv_implied_info): Add a rule - for Zca to C implication. - -2025-04-24 Jakub Jelinek <jakub@redhat.com> - Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/119873 - * config/s390/s390.cc (s390_call_saved_register_used): Don't return - true if default definition of PARM_DECL SSA_NAME of the same register - is passed in call saved register. - (s390_function_ok_for_sibcall): Adjust comment. - -2025-04-24 Jan Hubicka <hubicka@ucw.cz> - - PR target/119919 - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Account - correctly cond_expr and min/max when one of operands is 0 or -1. - -2025-04-24 Jan Hubicka <hubicka@ucw.cz> - - PR ipa/119924 - * ipa-cp.cc (update_counts_for_self_gen_clones): Use nonzero_p. - (update_profiling_info): Likewise. - (update_specialized_profile): Likewise. - -2025-04-24 Richard Sandiford <richard.sandiford@arm.com> - - PR target/119610 - * config/aarch64/aarch64.cc (aarch64_allocate_and_probe_stack_space): - Add a bytes_below_sp parameter and use it to calculate the CFA - offsets. Attach the first SVE CFA note to the move into the - associated temporary register. - (aarch64_allocate_and_probe_stack_space): Update calls accordingly. - Start out with bytes_per_sp set to the frame size and decrement - it after each allocation. - -2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> - - * opts.cc (validate_ipa_reorder_locality_lto_partition): Check opts - instead of opts_set for x_flag_ipa_reorder_for_locality. - (finish_options): Update call site. - -2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> - - * common.opt (LTO_PARTITION_DEFAULT): Delete. - (flto-partition=): Change default back to balanced. - * flag-types.h (lto_partition_model): Remove LTO_PARTITION_DEFAULT. - * opts.cc (validate_ipa_reorder_locality_lto_partition): - Check opts_set->x_flag_lto_partition instead of LTO_PARTITION_DEFAULT. - (finish_options): Remove handling of LTO_PARTITION_DEFAULT. - -2025-04-24 Jakub Jelinek <jakub@redhat.com> - - PR debug/119711 - * dwarf2out.h (struct dw_val_node): Add u member. - (struct dw_loc_descr_node): Remove dw_loc_opc, dtprel, - frame_offset_rel and dw_loc_addr members. - (dw_loc_opc, dw_loc_dtprel, dw_loc_frame_offset_rel, dw_loc_addr): - Define. - (struct dw_attr_struct): Remove dw_attr member. - (dw_attr): Define. - * dwarf2out.cc (loc_descr_equal_p_1): Use dw_loc_dtprel instead of - dtprel. - (output_loc_operands, new_addr_loc_descr, loc_checksum, - loc_checksum_ordered): Likewise. - (resolve_args_picking_1): Use dw_loc_frame_offset_rel instead of - frame_offset_rel. - (loc_list_from_tree_1): Likewise. - (resolve_addr_in_expr): Use dw_loc_dtprel instead of dtprel. - (copy_deref_exprloc): Copy val_class, val_entry and v members - instead of whole dw_loc_oprnd1 and dw_loc_oprnd2. - (optimize_string_length): Copy val_class, val_entry and v members - instead of whole dw_attr_val. - (hash_loc_operands): Use dw_loc_dtprel instead of dtprel. - (compare_loc_operands, compare_locs): Likewise. - -2025-04-24 liuhongt <hongtao.liu@intel.com> - - PR target/103750 - * config/i386/sse.md (*<avx512>_cmp<mode>3_and15): New define_insn. - (*<avx512>_ucmp<mode>3_and15): Ditto. - (*<avx512>_cmp<mode>3_and3): Ditto. - (*avx512vl_ucmpv2di3_and3): Ditto. - (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>): - Change operands[3] predicate to <cmp_imm_predicate>. - (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): - Ditto. - (*<avx512>_cmp<mode>3): Add GET_MODE_NUNITS (<MODE>mode) >= 8 - to the condition. - (*<avx512>_ucmp<mode>3): Ditto. - (V48_AVX512VL_4): New mode iterator. - (VI48_AVX512VL_4): Ditto. - (V8_AVX512VL_2): Ditto. - -2025-04-23 Jan Hubicka <hubicka@ucw.cz> - - * ipa-cp.cc (base_count): Remove. - (struct caller_statistics): Rename n_hot_calls to n_interesting_calls; - add called_without_ipa_profile. - (init_caller_stats): Update. - (cs_interesting_for_ipcp_p): New function. - (gather_caller_stats): collect n_interesting_calls and - called_without_profile. - (ipcp_cloning_candidate_p): Use n_interesting-calls rather then hot. - (good_cloning_opportunity_p): Rewrite heuristics when IPA profile is - present - (estimate_local_effects): Update. - (value_topo_info::propagate_effects): Update. - (compare_edge_profile_counts): Remove. - (ipcp_propagate_stage): Do not collect base_count. - (get_info_about_necessary_edges): Record whether function is called - without profile. - (decide_about_value): Update. - (ipa_cp_cc_finalize): Do not initialie base_count. - * profile-count.cc (profile_count::operator*): New. - (profile_count::operator*=): New. - * profile-count.h (profile_count::operator*): Declare - (profile_count::operator*=): Declare. - * params.opt: Remove ipa-cp-profile-count-base. - * doc/invoke.texi: Likewise. - -2025-04-23 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Cost truth_value - exprs. - -2025-04-23 liuhongt <hongtao.liu@intel.com> - - * config/i386/predicates.md (vector_or_0_or_1s_operand): New predicate. - (nonimm_or_0_or_1s_operand): Ditto. - * config/i386/sse.md (vcond_mask_<mode><sseintvecmodelower>): - Extend the predicate of operands1 to accept 0 or allones - operands. - (vcond_mask_<mode><sseintvecmodelower>): Ditto. - (vcond_mask_v1tiv1ti): Ditto. - (vcond_mask_<mode><sseintvecmodelower>): Ditto. - * config/i386/i386.md (mov<mode>cc): Ditto for operands[2] and - operands[3]. - * config/i386/i386-expand.cc (ix86_expand_sse_fp_minmax): - Force immediate_operand to register. - -2025-04-22 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Add special cases - for COND_EXPR; make MIN_EXPR, MAX_EXPR, ABS_EXPR and ABSU_EXPR more realistic. - -2025-04-22 Jakub Jelinek <jakub@redhat.com> - - PR target/119327 - * config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore also - OPTION_MASK_SAVE_TOC_INDIRECT differences. - -2025-04-22 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define - __ARM_FEATURE_FAMINMAX. - -2025-04-22 Spencer Abson <spencer.abson@arm.com> - - * tree-vect-loop.cc (vectorizable_induction): Add target support - checks for vectorized MULT_EXPR and FLOAT_EXPR where necessary for - scalable types. - Prefer target_supports_op_p over directly_supports_p for these tree - codes. - (vectorizable_nonlinear_induction): Fix a doc comment while I'm - here. - -2025-04-22 Spencer Abson <spencer.abson@arm.com> - - * config/aarch64/aarch64.md: Update cbranch, cstore, fcmp - and fcmpe to use the GPF_F16 iterator for floating-point - modes. - -2025-04-22 Spencer Abson <spencer.abson@arm.com> - - PR target/117013 - * config/aarch64/aarch64-protos.h (aarch64_expand_fp_spaceship): - Declare optab expander function for floating-point types. - * config/aarch64/aarch64.cc (aarch64_expand_fp_spaceship): - Define optab expansion for floating-point types (new function). - * config/aarch64/aarch64.md (spaceship<mode>4): - Add define_expands for spaceship<mode>4 on integer and - floating-point types. - -2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> - - * config/aarch64/aarch64-cores.def (olympus): Add fp8fma, fp8dot4 - explicitly. - -2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> - - * config/riscv/riscv-cores.def (RISCV_TUNE): Add xt-c908, xt-c908v, - xt-c910, xt-c910v2, xt-c920, xt-c920v2. - (RISCV_CORE): Add xt-c908, xt-c908v, xt-c910, xt-c910v2, xt-c920, - xt-c920v2. - * doc/invoke.texi: Add xt-c908, xt-c908v, xt-c910, xt-c910v2, - xt-c920, xt-c920v2. - -2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> - - * doc/invoke.texi (lto-partition-locality-frequency-cutoff, - lto-partition-locality-size-cutoff, lto-max-locality-partition): - Document. - -2025-04-22 Alexandre Oliva <oliva@adacore.com> - - PR target/118182 - * config/riscv/vector.md (@pred_broadcast<mode>): Expand to - _zero and _imm variants without vec_duplicate. - -2025-04-21 Jan Hubicka <hubicka@ucw.cz> - - PR target/119879 - * config/i386/i386.cc (fp_conversion_stmt_cost): Inline to ... - (ix86_vector_costs::add_stmt_cost): ... here; fix handling of NOP_EXPR. - -2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> - - * config/mips/mips.cc (mips_option_override): Error out for - -mmicromips -mmsa. - -2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/119507 - * except.cc (switch_to_exception_section): Don't use the cached section if - the current function is in comdat. - -2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> - - * vec.h (array_slice::begin): Assert that the - slice is valid. - (array_slice::end): Likewise. - -2025-04-21 hongtao.liu <hongtao.liu@intel.com> - - * config/i386/i386-expand.cc (ix86_emit_swdivsf): Generate 2 - FMA instructions when TARGET_FMA. - -2025-04-19 Jeff Law <jlaw@ventanamicro.com> - - PR target/119865 - * config/riscv/riscv.cc (parse_features_for_version): Do not - explicitly free the architecture string. - -2025-04-19 Jeff Law <jlaw@ventanamicro.com> - - PR target/118410 - * config/riscv/bitmanip.md (logical with constant argument): New - splitter for cases where synthesizing ~C is cheaper than synthesizing - the original constant C. - -2025-04-19 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.cc (vec_fp_conversion_cost): New function. - (ix86_rtx_costs): Use it for SSE/AVX FP conversoins. - (ix86_builtin_vectorization_cost): Fix indentation; - and use vec_fp_conversion_cost in vec_promote_demote. - (fp_conversion_stmt_cost): New function. - (ix86_vector_costs::add_stmt_cost): Use it to cost NOP_EXPR - and vec_promote_demote. - * config/i386/i386.h (struct processor_costs): - * config/i386/x86-tune-costs.h (struct processor_costs): - -2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/111949 - * combine.cc (find_split_point): Add a split point - for `(and (not X) Y)` if not in the outer set already. - -2025-04-19 Jiaxun Yang <jiaxun.yang@flygoat.com> - - PR target/111814 - * config/sh/sh-modes.def (RESET_FLOAT_FORMAT): Use mips format. - (FLOAT_MODE): Use mips mode. - -2025-04-19 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha.cc - (alpha_get_mem_rtx_alignment_and_offset): Recurse into - COMPONENT_REF nodes. - -2025-04-18 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/bitmanip.md (*bext<mode>_mask_pos): New pattern - for extracting a single bit at masked bit position. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/87901 - * tree-ssa-dse.cc (maybe_trim_constructor_store): Add was_integer_cst argument. - Check for was_integer_cst instead of `{}` when was_integer_cst is true. - (maybe_trim_partially_dead_store): Handle INTEGER_CST stores of 0 as stores of `{}`. - Udpate call to maybe_trim_constructor_store for CONSTRUCTOR. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/87901 - * tree-ssa-dse.cc (maybe_trim_constructor_store): Strip over useless type - conversions after taking the address of the MEM_REF. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118902 - * fold-const.cc (tree_swap_operands_p): Place invariants in the first operand - if not used with constants. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118947 - * gimple-fold.cc (optimize_memcpy_to_memset): Walk back until we get a - statement that may clobber the read. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/78408 - PR tree-optimization/118947 - * gimple-fold.cc (optimize_memcpy_to_memset): Handle STRING_CST case too. - -2025-04-18 Richard Braun <rbraun@sceen.net> - - * config/c6x/c6x.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove the - DW_EH_PE_indirect flag. - -2025-04-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119858 - * tree-vect-loop.cc (vectorizable_live_operation): Convert - pointer offset to sizetype. - -2025-04-18 Hakan Candar <hakancandar@protonmail.com> - - * config.gcc: Recognize riscv*-*-gnu* targets. - * config/riscv/gnu.h: New file. - -2025-04-18 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> - - PR middle-end/108016 - PR middle-end/108016 - * config/riscv/riscv.md (addv<mode>4, uaddv<mode>4, subv<mode>4, - usubv<mode>4): Tunes for unnecessary sext.w elimination. - -2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/119160 - * avoid-store-forwarding.cc (process_store_forwarding): - Zero-extend the value stored in the base register, in case - of load-elimination, only when the mode of the destination - is wider. - -2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> - - * doc/cfg.texi: Update the exception handling section for the - REG_EH_REGION notes to make it clear that the note is attached - to the instruction throwing the exception. - -2025-04-17 翁愷邑 <kaiweng9487@gmail.com> - - * config/riscv/riscv-target-attr.cc - (riscv_target_attr_parser::update_settings): - Do not manually free any arch string. - -2025-04-17 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * tree.def (BOOLEAN_TYPE): Add more details. - -2025-04-17 Sam James <sam@gentoo.org> - - * doc/invoke.texi: Use "compatible types" term. Rephrase to be - more precise (and correct). - -2025-04-17 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/119351 - * tree-vect-stmts.cc (vectorizable_early_exit): Mask both operands of - the gcond for partial masking support. - -2025-04-17 Jakub Jelinek <jakub@redhat.com> - - PR target/119834 - * config/s390/s390.md (define_split after *cpymem_short): Use - (clobber (match_scratch N)) instead of (clobber (scratch)). Use - (match_dup 4) and operands[4] instead of (match_dup 3) and operands[3] - in the last of those. - (define_split after *clrmem_short): Use (clobber (match_scratch N)) - instead of (clobber (scratch)). - (define_split after *cmpmem_short): Likewise. - -2025-04-17 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.cc (TARGET_ASM_NEED_VAR_DECL_BEFORE_USE): - Don't '#define'. - -2025-04-17 Hans-Peter Nilsson <hp@axis.com> - - * combine.cc: Correct comments about combine_validate_cost. - -2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/88382 - * doc/extend.texi (Syntax Extensions): Adjust menu. - (Raw String Literals): New section. - -2025-04-16 Keith Packard <keithp@keithp.com> - - * config/rx/rx.md (cmpstrnsi): Allow constant length. For - static length 0, just store 0 into the output register. - For dynamic zero, set C/Z appropriately. - (rxcmpstrn): No longer set C/Z. - -2025-04-16 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * tree-ssa-phiopt.cc (factor_out_conditional_operation): Do not - bypass the int_fits_type_p test for boolean types whose precision - is not 1. - -2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> - - * common.opt.urls: Regenerated. - -2025-04-16 Ard Biesheuvel <ardb@kernel.org> - - PR target/119386 - * config/i386/i386-options.cc: Permit -mnop-mcount when - using -fpic with PLTs. - -2025-04-16 Ard Biesheuvel <ardb@kernel.org> - - PR target/119386 - * config/i386/i386.cc (x86_print_call_or_nop): Add @PLT suffix - where appropriate. - (x86_function_profiler): Fall through to x86_print_call_or_nop() - for PIC codegen when flag_plt is set. - -2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> - - PR driver/90465 - * doc/invoke.texi (Overall Options): Add a @cindex for -Q in - connection with --help=. - (Developer Options): Point at --help= documentation for the - other use of -Q. - -2025-04-16 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/97106 - * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) - [ACCEL_COMPILER]: Make sure to emit C++ constructor, destructor - aliases. - -2025-04-16 Jan Hubicka <hubicka@ucw.cz> - - PR tree-optimization/119614 - * ipa-prop.cc (ipa_write_return_summaries): New function. - (ipa_record_return_value_range_1): Break out from .... - (ipa_record_return_value_range): ... here. - (ipa_read_return_summaries): New function. - (ipa_prop_read_section): Read return summaries. - (read_ipcp_transformation_info): Read return summaries. - (ipcp_write_transformation_summaries): Write return summaries; - do not stream stray 0. - -2025-04-16 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/119351 - * tree-vectorizer.h (LOOP_VINFO_MASK_NITERS_PFA_OFFSET, - LOOP_VINFO_NON_LINEAR_IV): New. - (class _loop_vec_info): Add mask_skip_niters_pfa_offset and - nonlinear_iv. - * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Initialize them. - (vect_analyze_scalar_cycles_1): Record non-linear inductions. - (vectorizable_induction): If early break and PFA using masking create a - new phi which tracks where the scalar code needs to start... - (vectorizable_live_operation): ...and generate the adjustments here. - (vect_use_loop_mask_for_alignment_p): Reject non-linear inductions and - early break needing peeling. - -2025-04-16 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119808 - * gimple-lower-bitint.cc (gimple_lower_bitint): Don't set - m_single_use_names bits for SSA_NAMEs which have single use but - their SSA_NAME_DEF_STMT is a copy from another SSA_NAME which doesn't - have a single use, or single use which is such a copy etc. - -2025-04-16 Jesse Huang <jesse.huang@sifive.com> - - * config/riscv/riscv.cc (riscv_file_end): Fix .p2align value. - -2025-04-16 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv.h (JUMP_TABLES_IN_TEXT_SECTION): Check if - large code model. - -2025-04-16 Tejas Belagod <tejas.belagod@arm.com> - - * config/aarch64/aarch64-sve.md (vec_extract<vpred><Vel>): Fix operand - order to gen_vcond_mask_*. - -2025-04-16 Alice Carlotti <alice.carlotti@arm.com> - - * config/aarch64/aarch64.cc - (aarch64_valid_sysreg_name_p): Remove feature check. - (aarch64_retrieve_sysreg): Ditto. - -2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> - - PR tree-optimization/71094 - * doc/invoke.texi (Optimize Options): Document that -fivopts is - enabled at -O1 and higher. Add blurb about -O0 causing GCC to - completely ignore most optimization options. - -2025-04-15 Iain Sandoe <iain@sandoe.co.uk> - - * configure: Regenerate. - * configure.ac: Recognise PROJECT:ld-mmmm.nn.aa as an identifier - for Darwin's static linker. - -2025-04-15 Iain Sandoe <iainsandoe@mini-05-seq.local> - - PR target/116827 - * ginclude/stddef.h: Undefine __PTRDIFF_T and __SIZE_T for module- - enabled c++ on Darwin/macOS platforms. - -2025-04-15 Kyrylo Tkachov <ktkachov@nvidia.com> - - * common.opt.urls: Regenerate. - -2025-04-15 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set - to 4 for znver5. - -2025-04-15 Jan Hubicka <hubicka@ucw.cz> - - PR target/119298 - * config/i386/x86-tune-costs.h (znver5_cost): Set ADDSS cost to 3. - -2025-04-15 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119533 - * config/riscv/riscv-vsetvl.cc (invalid_opt_bb_p): Check for - EDGE_ABNOMAL. - (pre_vsetvl::compute_lcm_local_properties): Initialize kill - bitmap. - Debug dump skipped edge. - -2025-04-15 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119547 - * config/riscv/riscv-vsetvl.cc (pre_vsetvl::earliest_fuse_vsetvl_info): - Do not perform lift if block is not transparent. - -2025-04-15 Kyrylo Tkachov <ktkachov@nvidia.com> - - * Makefile.in (OBJS): Add ipa-locality-cloning.o. - * cgraph.h (set_new_clone_decl_and_node_flags): Declare prototype. - * cgraphclones.cc (set_new_clone_decl_and_node_flags): Remove static - qualifier. - * common.opt (fipa-reorder-for-locality): New flag. - (LTO_PARTITION_DEFAULT): Declare. - (flto-partition): Change default to LTO_PARTITION_DFEAULT. - * doc/invoke.texi: Document -fipa-reorder-for-locality. - * flag-types.h (enum lto_locality_cloning_model): Declare. - (lto_partitioning_model): Add LTO_PARTITION_DEFAULT. - * lto-cgraph.cc (lto_set_symtab_encoder_in_partition): Add dumping of - node and index. - * opts.cc (validate_ipa_reorder_locality_lto_partition): Define. - (finish_options): Handle LTO_PARTITION_DEFAULT. - * params.opt (lto_locality_cloning_model): New enum. - (lto-partition-locality-cloning): New param. - (lto-partition-locality-frequency-cutoff): Likewise. - (lto-partition-locality-size-cutoff): Likewise. - (lto-max-locality-partition): Likewise. - * passes.def: Register pass_ipa_locality_cloning. - * timevar.def (TV_IPA_LC): New timevar. - * tree-pass.h (make_pass_ipa_locality_cloning): Declare. - * ipa-locality-cloning.cc: New file. - * ipa-locality-cloning.h: New file. - -2025-04-15 Martin Jambor <mjambor@suse.cz> - Jakub Jelinek <jakub@redhat.com> - - PR ipa/119803 - * ipa-cp.cc (ipcp_bits_lattice::meet_with_1): Move m_value adjustmed - according to m_mask below the adjustment of the latter according to - cap_mask. Optimize the calculation of cap_mask a bit. - (ipcp_bits_lattice::meet_with): Optimize the calculation of cap_mask a - bit. - -2025-04-15 Jakub Jelinek <jakub@redhat.com> - - * ipa-cp.cc (ipcp_print_widest_int): Print values with all ones in - bits 128+ with "0xf..f" prefix instead of "all ones folled by ". - Simplify wide_int check for -1 or all ones above least significant - 128 bits. - -2025-04-15 Jakub Jelinek <jakub@redhat.com> - - PR sanitizer/119801 - * sanitizer.def (BUILT_IN_TSAN_FUNC_EXIT): Use BT_FN_VOID rather - than BT_FN_VOID_PTR. - * tree-tailcall.cc: Include attribs.h and asan.h. - (struct tailcall): Add has_tsan_func_exit member. - (empty_eh_cleanup): Add eh_has_tsan_func_exit argument, set what - it points to to 1 if there is exactly one __tsan_func_exit call - and ignore that call otherwise. Adjust recursive call. - (find_tail_calls): Add RETRY_TSAN_FUNC_EXIT argument, pass it - to recursive calls. When seeing __tsan_func_exit call with - RETRY_TSAN_FUNC_EXIT 0, set it to -1. If RETRY_TSAN_FUNC_EXIT - is 1, initially ignore __tsan_func_exit calls. Adjust - empty_eh_cleanup caller. When looking through stmts after the call, - ignore exactly one __tsan_func_exit call but remember it in - t->has_tsan_func_exit. Diagnose if EH cleanups didn't have - __tsan_func_exit and normal path did or vice versa. - (optimize_tail_call): Emit __tsan_func_exit before the tail call - or tail recursion. - (tree_optimize_tail_calls_1): Adjust find_tail_calls callers. If - find_tail_calls changes retry_tsan_func_exit to -1, set it to 1 - and call it again with otherwise the same arguments. - -2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> - - PR ipa/113203 - * doc/extend.texi (Common Function Attributes): Explain how to - use always_inline in programs that have multiple translation - units, and that LTO inlining additionally needs optimization - enabled. - -2025-04-15 liuhongt <hongtao.liu@intel.com> - - PR target/108134 - * doc/extend.texi: Remove documents from r11-344-g0fec3f62b9bfc0. - -2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> - - PR target/42683 - * doc/invoke.texi (x86 Options): Clarify that -march=pentiumpro - doesn't include MMX. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/118794 - * config/gcn/gcn.opt (-mfake-exceptions): Support. - * config/nvptx/nvptx.opt (-mfake-exceptions): Likewise. - * config/gcn/gcn.md (define_expand "exception_receiver"): Use it. - * config/nvptx/nvptx.md (define_expand "exception_receiver"): - Likewise. - * config/gcn/mkoffload.cc (main): Set it. - * config/nvptx/mkoffload.cc (main): Likewise. - * config/nvptx/nvptx.cc (nvptx_assemble_integer) - <in_section == exception_section>: Special handling for - 'SYMBOL_REF's. - * except.cc (expand_dw2_landing_pad_for_region): Don't generate - bogus code for (default) - '#define EH_RETURN_DATA_REGNO(N) INVALID_REGNUM'. - -2025-04-14 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119785 - * expmed.cc (init_expmed): Always pass QImode rather than mode to - set_src_cost passed to set_zero_cost. - -2025-04-14 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119718 - * tree-pretty-print.cc (dump_generic_node) <case CALL_EXPR>: Dump - also CALL_EXPR_MUST_TAIL_CALL flag. - * calls.cc (maybe_complain_about_tail_call): Emit error about - CALL_EXPR_MUST_TAIL_CALL only after emitting dump message, not before - it. - -2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> - - * doc/install.texi: Add requirements for building gccrs. - -2025-04-14 H.J. Lu <hjl.tools@gmail.com> - - PR target/119784 - * config/i386/i386.cc (ix86_using_red_zone): Don't use red-zone - with 32 GPRs and no caller-saved registers. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/118097 - * ipa-cp.cc (ipa_get_jf_arith_result): Require res_operand for - anything except NOP_EXPR or ADDR_EXPR, document it and remove the code - trying to deduce it. - (ipa_value_from_jfunc): Use the stored and streamed type of arithmetic - pass-through functions. - (ipa_agg_value_from_jfunc): Use the stored and streamed type of - arithmetic pass-through functions, convert to the type used to store - the value if necessary. - (get_val_across_arith_op): New parameter op_type, pass it to - ipa_get_jf_arith_result. - (propagate_vals_across_arith_jfunc): New parameter op_type, pass it to - get_val_across_arith_op. - (propagate_vals_across_pass_through): Use the stored and streamed type - of arithmetic pass-through functions. - (propagate_aggregate_lattice): Likewise. - (push_agg_values_for_index_from_edge): Use the stored and streamed - type of arithmetic pass-through functions, convert to the type used to - store the value if necessary. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/118785 - * ipa-cp.cc (ipa_vr_intersect_with_arith_jfunc): Use the stored - and streamed type of arithmetic pass-through functions. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - * ipa-cp.cc (ipcp_print_widest_int): Also add a truncated form of - dumping of widest ints which only have zeros in the lowest 128 bits. - Update the comment. - (ipcp_bits_lattice::print): Also dump the mask using - ipcp_print_widest_int. - (ipcp_store_vr_results): Likewise. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/119318 - * ipa-cp.cc (ipcp_bits_lattice::meet_with_1): Set all mask bits - not covered by precision to one. - (ipcp_bits_lattice::meet_with): Likewise. - (propagate_bits_across_jump_function): Use the stored operation - type to perform meet with other lattices. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/118097 - PR ipa/118785 - PR ipa/119318 - * lto-streamer.h (lto_variably_modified_type_p): Declare. - * ipa-prop.h (ipa_pass_through_data): New field op_type. - (ipa_get_jf_pass_through_op_type): New function. - * ipa-prop.cc: Include lto-streamer.h. - (ipa_dump_jump_function): Dump also pass-through - operation types, if any. Dump pass-through operands only if not NULL. - (ipa_set_jf_simple_pass_through): Set op_type accordingly. - (compute_complex_assign_jump_func): Set op_type of arithmetic - pass-through jump_functions. - (analyze_agg_content_value): Update lhs when walking assighment - copies. Set op_type of aggregate arithmetic pass-through - jump_functions. - (update_jump_functions_after_inlining): Also transfer the operation - type from the source arithmentic pass-through jump function to the - destination jump function. - (ipa_write_jump_function): Stream also the op_type when necessary. - (ipa_read_jump_function): Likewise. - (ipa_agg_pass_through_jf_equivalent_p): Also compare operation types. - * lto-streamer-out.cc (lto_variably_modified_type_p): Make public. - -2025-04-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119757 - * tree-vect-slp.cc (vect_build_slp_tree_1): Record and compare - whether a stmt uses a maks. - -2025-04-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119778 - * tree-inline.cc (copy_edges_for_bb): Mark calls that are - source of abnormal edges as altering control-flow. - -2025-04-14 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119779 - * doc/gm2.texi (Interface to assembly language): Use eax - rather than rax in both examples. - -2025-04-14 Jakub Jelinek <jakub@redhat.com> - - PR driver/119727 - * configure.ac (HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE): New check. - * gcc.cc: Include sys/personality.h if - HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE is defined. - (try_generate_repro): Call - personality (personality (0xffffffffU) | ADDR_NO_RANDOMIZE) - if HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE is defined. - * config.in: Regenerate. - * configure: Regenerate. - -2025-04-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390.cc: Add z17 scheduler description. - * config/s390/s390.h: Ditto. - * config/s390/s390.md: Ditto. - * config/s390/9175.md: New file. - -2025-04-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * common/config/s390/s390-common.cc: Rename arch15 to z17. - * config.gcc: Add z17. - * config/s390/driver-native.cc: Detect z17 machine. - * config/s390/s390-builtins.def (B_VXE3): Rename arch15 to z17. - * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): Ditto. - * config/s390/s390-opts.h (enum processor_type): Ditto. - * config/s390/s390.cc: Ditto. - * config/s390/s390.h: Ditto. - * config/s390/s390.md: Ditto. - * config/s390/s390.opt: Add z17. - * doc/invoke.texi: Ditto. - -2025-04-12 Sandra Loosemore <sloosemore@baylibre.com> - - PR target/97585 - * doc/invoke.texi (x86 Options): Document list of extensions - supported by -march=x86_64, according to the declaration of - PTA_X86_64_BASELINE in config/i386/i386.h. - -2025-04-12 Jakub Jelinek <jakub@redhat.com> - - PR driver/119727 - * gcc.cc (files_equal_p): Rewritten using fopen/fgets/fclose instead - of open/fstat/read/close. At the start of lines, ignore lowercase - hexadecimal addresses followed by space. - -2025-04-12 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119722 - * gimple-lower-bitint.h (build_bitint_stmt_ssa_conflicts): Add - CLEAR argument. - * gimple-lower-bitint.cc (build_bitint_stmt_ssa_conflicts): Add - CLEAR argument. Call clear on gimple_assign_copy_p rhs1 if lhs - is large/huge bitint unless lhs is not in names. - * tree-ssa-coalesce.cc (build_ssa_conflict_graph): Adjust - build_bitint_stmt_ssa_conflicts caller. Move gimple_assign_copy_p - handling to after the build_bitint_stmt_ssa_conflicts call. - -2025-04-12 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119718 - * tree-tailcall.cc (maybe_error_musttail): Dump the GIMPLE at the - end of the Cannot tail-call line rather than on the line before it. - * calls.cc (maybe_complain_about_tail_call): Dump the GENERIC - at the end of the ;; Cannot tail-call line rather than on the - line before it. - -2025-04-12 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119718 - * tree-tailcall.cc (maybe_error_musttail): Only dump into dump_file - if dump_flags & TDF_DETAILS. Use "Cannot tail-call: " prefix instead - of "Cannot convert: ". - (find_tail_calls, tree_optimize_tail_calls_1): Formatting fixes - for maybe_error_musttail calls. - * calls.cc (maybe_complain_about_tail_call): Emit also a message - into dump_file when dump_flags & TDF_DETAILS for CALL_EXPR_TAILCALL - calls. - (initialize_argument_information): Formatting fix for - maybe_complain_about_tail_call calls. - (can_implement_as_sibling_call_p, expand_call): Likewise. - -2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> - - PR c++/106618 - * doc/invoke.texi (Option Summary): Remove -fargs-in-order, add - -fstrong-eval-order. - (C++ Dialect Options): Explicitly document that -fstrong-eval-order - takes an optional argument and what the choices are. Generalize - references to C++17. - -2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/105548 - * doc/invoke.texi (Optimize Options): Delete misleading sentence - about conversions. - -2025-04-11 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119707 - * gimple-lower-bitint.cc (bitint_large_huge::handle_cast): Only use - m_data[save_data_cnt] instead of m_data[save_data_cnt + 1] if - idx is odd and equal to low + 1. Remember tree_to_uhwi (idx) in - a temporary instead of calling the function multiple times. - -2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> - - PR tree-optimization/87909 - * common.opt.urls: Regenerate. - * doc/invoke.texi (Option Summary): Add -ftree-cselim. - (Optimize Options): Likewise. - -2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/14708 - * doc/invoke.texi (Optimize Options): List -fexcess-precision - before -ffloat-store, moving some background discussion to the - former from the latter. Recommend using -fexcess-precision=standard - instead of -ffloat-store. - -2025-04-10 Iain Sandoe <iain@sandoe.co.uk> - - * config/darwin.h (LINK_SPEC): Add support for - -static-libgcobol. - -2025-04-10 Richard Biener <rguenther@suse.de> - - PR middle-end/119706 - * gimple-expr.cc (is_gimple_mem_ref_addr): Also allow - POLY_INT_CST. - -2025-04-10 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/119399 - * tree-data-ref.cc (create_waw_or_war_checks): Use a MINUS_EXPR - on two converted pointers, rather than converting a POINTER_DIFF_EXPR - on the pointers. - -2025-04-10 Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/multilib-generator: Remove the compact code model - and check large code model for RV32. - -2025-04-09 Jakub Jelinek <jakub@redhat.com> - - * pretty-print.cc (pretty_printer::format): Use %.Ns instead of - %Ns in function comment. - -2025-04-09 Jakub Jelinek <jakub@redhat.com> - - PR target/119664 - * config/h8300/jumpcall.md (bit test and jump define_insn_and_split): - Use HSI iterator rather than QHSI. - -2025-04-09 Jakub Jelinek <jakub@redhat.com> - - * config/riscv/riscv-vector-builtins.cc (verify_type_context): - Diagnose RVV types for a given OpenMP context. - -2025-04-09 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/119689 - PR rtl-optimization/115568 - * lra-remat.cc (create_cands): Use prev_nonnote_nondebug_insn - to check whether insn2 is directly before insn. - -2025-04-09 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/116595 - * expr.cc (categorize_ctor_elements_1): Use - constant_lower_bound. - -2025-04-09 Yang Yujie <yangyujie@loongson.cn> - - * config/loongarch/genopts/gen-evolution.awk: remove - usage of "asort". - * config/loongarch/genopts/genstr.sh: replace sed with awk. - -2025-04-08 Sandra Loosemore <sloosemore@baylibre.com> - - PR c++/90468 - * doc/invoke.texi (Warning Options): Clean up text describing - -Wno-xxx. - -2025-04-08 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119672 - * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): - For POPCOUNT == 0 or != 0 optimizations use - CONST0_RTX (GET_MODE (XEXP (op0, 0))) rather than const0_rtx. - -2025-04-08 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/119662 - * gimplify.cc (modify_call_for_omp_dispatch): Fix GOMP_interop - arg passing; add location info to function calls. - -2025-04-08 Jakub Jelinek <jakub@redhat.com> - - PR target/119678 - * config/riscv/freebsd.h (LINK_SPEC): Use FBSD_LINK_PG_NOTE rather - than non-existing FBSD_LINK_PG_NOTES. - -2025-04-08 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) - [!ACCEL_COMPILER]: Don't define label 'emit_ptx_alias'. - -2025-04-08 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119594 - * cse.cc (count_reg_usage): Count even x == dest regs if they have - non-zero counts already and incr is positive. - -2025-04-08 Jakub Jelinek <jakub@redhat.com> - - PR lto/119625 - * lto-opts.cc (lto_write_options): Mask of CF_SET from - global_options.x_flag_cf_protection. - -2025-04-08 Tejas Belagod <tejas.belagod@arm.com> - Andrea Corallo <andrea.corallo@arm.com> - - * target.h (type_context_kind): Add new context kinds for target clauses. - (omp_type_context): Query if the context is of OMP kind. - * config/aarch64/aarch64-sve-builtins.cc (verify_type_context): Diagnose - SVE types for a given OpenMP context. - (omp_type_context): New. - * gimplify.cc (omp_notice_variable): Diagnose implicitly-mapped SVE - objects in OpenMP regions. - (gimplify_scan_omp_clauses): Diagnose SVE types for various target - clauses. - -2025-04-08 Tejas Belagod <tejas.belagod@arm.com> - - * tree.h (strip_pointer_types): New. - -2025-04-08 Richard Sandiford <richard.sandiford@arm.com> - Tejas Belagod <tejas.belagod@arm.com> - - PR middle-end/101018 - * poly-int.h (can_and_p): New function. - * fold-const.cc (poly_int_binop): Use it to optimize BIT_AND_EXPRs - involving POLY_INT_CSTs. - * gimplify.cc (omp_notice_variable): Use poly_int_tree_p instead - of INTEGER_CST when checking for constant-sized omp data. - (gimplify_adjust_omp_clauses_1): Likewise. - (gimplify_adjust_omp_clauses): Likewise. - * omp-low.cc (scan_sharing_clauses): Likewise. - -2025-04-08 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/i386.h (PTA_DIAMONDRAPIDS): Add PTA_AVX10_1_256. - -2025-04-08 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/vector.md: Disable vsext/vzext for XTheadVector. - -2025-04-07 Iain Sandoe <iain@sandoe.co.uk> - - PR target/113257 - * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Apple-a12, - Apple-M1, Apple-M2, Apple-M3 with expanded names to allow for the - LITTLE.big versions. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi: Add apple-m1,2 and 3 cores to the ones listed - for arch and tune selections. - -2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.opt (-mfake-ptx-alloca): Update. - -2025-04-07 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/118924 - * tree-sra.cc (create_total_scalarization_access): Set - grp_same_access_path flag to zero. - -2025-04-07 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/118924 - * tree-ssa-alias-compare.h (types_equal_for_same_type_for_tbaa_p): - Declare. - * tree-ssa-alias.cc: Include ipa-utils.h. - (types_equal_for_same_type_for_tbaa_p): New public overloaded variant. - * tree-sra.cc: Include tree-ssa-alias-compare.h. - (create_access): Initialzie grp_same_access_path to true. - (build_accesses_from_assign): Detect tbaa hazards and clear - grp_same_access_path fields of involved accesses when they occur. - (sort_and_splice_var_accesses): Take previous values of - grp_same_access_path into account. - -2025-04-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119640 - * tree-vect-stmts.cc (vectorizable_shift): Always insert code - for one of our SLP operands before the code for the vector - shift itself. - -2025-04-07 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119614 - * tree-tailcall.cc (find_tail_calls): Remember edges which have been - walked through if !ass_var. Perform IPA-VRP workaround even when - ret_var is not TREE_CONSTANT, in that case check in a loop if it is - a PHI result and in that case look at the PHI argument from - corresponding edge in the edge vector. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/116398 - * params.opt (-param=max-combine-search-insns=): New param. - * doc/invoke.texi: Document it. - * combine.cc (insn_link::insn_count): New field. - (alloc_insn_link): Initialize it. - (distribute_links): Add a limit parameter. - (try_combine): Use the new param to limit distribute_links - when only i3 has changed. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/116398 - * combine.cc (distribute_links): Take an optional start point. - (try_combine): If only i3 has changed, only distribute i3's links, - not i2's. Start the search for the new use from i3 rather than - from the definition instruction. Likewise start the search for - the new use from i2 when distributing i2's links. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/116398 - * combine.cc (try_combine): Shortcut the split_i2i3 handling if - i2 is unchanged. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - Richard Biener <rguenther@suse.de> - - PR testsuite/116398 - * combine.cc (try_combine): Reallow 2->2 combinations. Detect when - only i3 has changed and restart from i3 in that case. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - - * simplify-rtx.cc (simplify_const_relational_operation): Generalize - the constant checks in the fold-via-minus path to match the - INTEGRAL_MODE_P condition. - -2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi (Boolean Type): Further clarify support for - _Bool in C23 and C++. - -2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/78874 - * doc/invoke.texi (Warning Options): Fix description of - -Wno-aggressive-loop-optimizations to reflect that this turns - off the warning, and the default is for it to be enabled. - -2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/81831 - * doc/invoke.texi (Option Summary): Add -Wno-psabi. - (Warning Options): Document -Wpsabi separately from -Wabi. - Note it's enabled by default, not just implied by -Wabi. - Replace the detailed example for a GCC 4.4 change for x86 - (which is unlikely to be very interesting nowadays) with - just a list of all targets that presently diagnose these - warnings. - (RS/6000 and PowerPC Options): Add cross-references for - -Wno-psabi. - -2025-04-05 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/112589 - * common.opt (-fcf-protection): Add documentation string. - * doc/invoke.texi (Option Summary): Add entry for -fcf-protection - without argument. - (Instrumentation Options): Tidy the -fcf-protection entry and - and add documention for the form without an argument. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR lto/119625 - * lto-opts.cc (lto_write_options): If neither flag_pic nor - flag_pie are set, check first for flag_pie and only later - for flag_pic rather than the other way around, use a temporary - variable. If flag_cf_protection is not set, don't append anything - if flag_cf_protection is none of CF_{NONE,FULL,BRANCH,RETURN} and - use a temporary variable. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR gcov-profile/119618 - * profile.cc (branch_prob): Only check for musttail calls if - cfun->has_musttail. Use gsi_last_nondebug_bb instead of gsi_last_bb. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119616 - * tree-tailcall.cc (suitable_for_tail_call_opt_p): Move checking - for addressable parameters from here ... - (find_tail_calls): ... here. If cfun->has_musttail, don't clear - opt_tailcalls for it, instead set a local flag and punt if we can't - tail recurse optimize it. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119613 - * cfgrtl.cc (purge_dead_edges): Remove REG_EH_REGION notes from - tail calls. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR target/115910 - * rtlanal.cc (pattern_cost): Return at least COSTS_N_INSNS (1) - rather than just COSTS_N_INTNS (1) for cost <= 0. - * config/i386/i386.cc (ix86_rtx_costs): Set *total to 1 for - TARGET_64BIT x86_64_zext_immediate_operand constants. - -2025-04-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR ipa/119599 - * tree-cfg.cc (pass_warn_function_return::execute): Turn return statements always - into __builtin_unreachable calls. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119614 - * tree-tailcall.cc (find_tail_calls): Handle also pointer types in the - IPA-VRP workaround. - -2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119573 - * config/nvptx/nvptx.cc (nvptx_encode_section_info): Don't set - 'DATA_AREA_CONST' for 'TREE_CONSTANT', or 'TREE_READONLY'. - (nvptx_asm_declare_constant_name): Use '.global' instead of - '.const'. - -2025-04-03 Peter Bergner <bergner@linux.ibm.com> - - PR target/119308 - * config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue): - Handle GCC COBOL for the tbtab lang field. - -2025-04-03 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi (Statement Attributes): Copy-edit the musttail - attribute documentation and correct the comment in the last - example. - -2025-04-03 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/x86-tune-costs.h (ix86_size_cost): Fix sizes of move - instructions - -2025-04-03 Jakub Jelinek <jakub@redhat.com> - - PR cobol/119242 - * fold-const.h (native_encode_wide_int): Declare. - * fold-const.cc (native_encode_wide_int): New function. - (native_encode_int): Use it. - -2025-04-03 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/genopts/gen-evolution.awk: Avoid using gensub - that FreeBSD awk lacks. - -2025-04-03 Hongyu Wang <hongyu.wang@intel.com> - - PR target/119539 - * config/i386/i386.md (*<insn><mode>3_mask): Emit NF variant of - rotate when APX_NF enabled, and use force_lowpart_subreg. - (*<insn><mode>3_mask_1): Likewise. - -2025-04-03 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/101440 - * doc/extend.texi (Common Function Attributes): Clean up some - confusing language in the description of the "access" attribute. - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - GUO Yixuan <culu.gyx@gmail.com> - - PR driver/58973 - * common.opt (Werror, Werror=): Use less awkward wording in - description. - (pedantic-errors): Likewise. - * doc/invoke.texi (Warning Options): Likewise for -Werror and - -Werror= here. - -2025-04-02 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119572 - * config/riscv/autovec.md: Mask broadcast value. - -2025-04-02 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/bitmanip.md: The optimization can only be applied if - the high bit of operands[3] is set to 1. - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/114957 - PR c/78008 - PR c++/60972 - * doc/extend.texi (Structure-Layout Pragmas): Add @cindex - entries and reformat the pragma descriptions to match the markup - used for other pragmas. Document what #pragma pack(0) does. - Add cross-references to similar attributes. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119491 - * tree-tailcall.cc (single_non_eh_succ_edge): New function. - (independent_of_stmt_p): Use single_non_eh_succ_edge (bb)->dest - instead of single_succ (bb). - (empty_eh_cleanup): New function. - (find_tail_calls): Diagnose throwing of exceptions which do not - propagate only if there are no EDGE_EH successor edges. If there are - and the call is musttail, use empty_eh_cleanup to find if the cleanup - is not empty. If not or the call is not musttail, use different - diagnostics. Set is_noreturn even if there are successor edges. Use - single_non_eh_succ_edge (abb) instead of single_succ_edge (abb). Punt - on internal noreturn calls. - (decrease_profile): Don't assert 0 or 1 successor edges. - (eliminate_tail_call): Use - single_non_eh_succ_edge (gsi_bb (t->call_gsi)) instead of - single_succ_edge (gsi_bb (t->call_gsi)). - (tree_optimize_tail_calls_1): Also look into basic blocks with - single succ edge which is EDGE_EH for noreturn musttail calls. - -2025-04-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119586 - * tree-vect-stmts.cc (vectorizable_load): Assume we got - alignment analysis for VMAT_STRIDED_SLP wrong. - (vectorizable_store): Likewise. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - * doc/extend.texi (musttail statement attribute): Hint how - to avoid -Wmaybe-musttail-local-addr warnings. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * common.opt (Wmusttail-local-addr, Wmaybe-musttail-local-addr): New. - * tree-tailcall.cc (suitable_for_tail_call_opt_p): Don't fail for - TREE_ADDRESSABLE PARM_DECLs for musttail calls if diag_musttail. - Emit -Wmusttail-local-addr warnings. - (maybe_error_musttail): Use gimple_location instead of directly - accessing location member. - (find_tail_calls): For musttail calls if diag_musttail, don't fail - if address of local could escape to the call, instead emit - -Wmaybe-musttail-local-addr warnings. Emit - -Wmaybe-musttail-local-addr warnings also for address taken - parameters. - * common.opt.urls: Regenerate. - * doc/extend.texi (musttail statement attribute): Clarify local - variables without non-trivial destruction are considered out of scope - before the tail call instruction. - * doc/invoke.texi (-Wno-musttail-local-addr, - -Wmaybe-musttail-local-addr): Document. - -2025-04-02 Andi Kleen <ak@gcc.gnu.org> - - PR middle-end/119482 - * bitmap.cc (bitmap_set_bit): Write back value unconditionally - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR c++/118982 - * doc/extend.texi (Common Function Attributes): For the - constructor/destructory attribute, be more explicit about the - relationship between the constructor attribute and - the C++ init_priority attribute, and add a cross-reference. - Also document that most targets support this. - (C++ Attributes): Similarly for the init_priority attribute. - -2025-04-01 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/118118 - * doc/extend.texi (Boolean Type): New section. - -2025-04-01 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/117689 - * doc/extend.texi (Incomplete Enums): Rename to.... - (Enum Extensions): This. Document support for specifying the - underlying type of an enum as an extension in all earlier C - and C++ standards. Document that a forward declaration with - underlying type is not an incomplete type, and which dialects - GCC supports that in. - -2025-04-01 Tom Tromey <tromey@adacore.com> - - * dwarf2out.cc (modified_type_die): Use mod_scope for - ranged types, base types, and array types. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119493 - * tree-tailcall.cc (find_tail_calls): Don't punt on tail recusion - if some arguments don't have is_gimple_reg_type, only punt if they - have non-POD types, or volatile, or addressable or (for now) it is - not a musttail call. Set tailr_arg_needs_copy in those cases too. - (eliminate_tail_call): Copy call arguments to params if they don't - have is_gimple_reg_type, use temporaries if the argument is used - later. - (tree_optimize_tail_calls_1): Skip !is_gimple_reg_type - tailr_arg_needs_copy parameters. Formatting fix. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119291 - * combine.cc (try_combine): For splitting of PARALLEL with - 2 independent SETs into i2 and i3 sets check reg_used_between_p - of the SET_DESTs rather than just modified_between_p. - -2025-04-01 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119534 - * tree-vect-stmts.cc (get_load_store_type): Reject - VECTOR_BOOLEAN_TYPE_P offset vector type for emulated gathers. - -2025-04-01 Martin Uecker <uecker@tugraz.at> - - PR c/119173 - * doc/invoke.texi (Warning Options): Move to general options. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR gcov-profile/119535 - * profile.cc (branch_prob): Ignore any edges from bbs ending with - musttail call, rather than only EDGE_FAKE edges from those to EXIT. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119493 - * tree-tailcall.cc (tree_optimize_tail_calls_1): Ignore tail recursion - candidates which need accumulators if there is at least one musttail - non-recursive call. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119537 - * gimplify.cc (find_used_user_labels): New function. - (gimplify_call_expr): Don't remove complex assume expression at -O0 - if it defines any user labels. - * gimple-low.cc: Include diagnostic-core.h. - (assume_labels): New variable. - (diagnose_assume_labels): New function. - (lower_function_body): Call it via walk_gimple_seq if assume_labels - is non-NULL, then BITMAP_FREE assume_labels. - (find_assumption_locals_r): Record in assume_labels uids of user - labels defined in assume attribute expressions. - -2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119369 - * config/gcn/gcn-protos.h (gcn_asm_weaken_decl): Declare. - * config/gcn/gcn.cc (gcn_asm_weaken_decl): New. - * config/gcn/gcn-hsa.h (ASM_WEAKEN_DECL): '#define' to this. - -2025-04-01 Richard Biener <rguenther@suse.de> - - PR target/119549 - * common/config/i386/i386-common.cc (ix86_handle_option): - Assert that both OPT_msse4 and OPT_mno_sse4 are never unset. - * config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p): - Process negated OPT_msse4 as OPT_mno_sse4. - -2025-04-01 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/119559 - * gimplify.cc (modify_call_for_omp_dispatch): Reorder checks to avoid - asserts and bogus diagnostic. - -2025-04-01 Hu, Lin1 <lin1.hu@intel.com> - Hongyu Wang <hongyu.wang@intel.com> - - PR target/119473 - * config/i386/sse.md - (vaesdec_<mode>): Set attr "isa" as "avx,vaes_avx512vl", "type" as - "sselog1", "mode" as "TI". - (vaesdeclast_<mode>): Ditto. - (vaesenc_<mode>): Ditto. - (vaesenclast_<mode>): Ditto. - -2025-04-01 Monk Chiang <monk.chiang@sifive.com> - Kito Cheng <kito.cheng@sifive.com> - - * config/riscv/riscv-v.cc: Add restrict for insert LMUL. - * config/riscv/riscv-vector-builtins-types.def: - Use RVV_REQUIRE_ELEN_64 to check LMUL number. - * config/riscv/riscv-vector-switch.def: Likewise. - * config/riscv/vector-iterators.md: Check TARGET_VECTOR_ELEN_64 - rather than "TARGET_MIN_VLEN > 32" for all iterator. - -2025-04-01 Lulu Cheng <chenglulu@loongson.cn> - - * doc/invoke.texi: Corrected the position of '-mtls-dialect=opt' - option. - -2025-03-31 Jørgen Kvalsvik <j@lambda.is> - - PR gcov-profile/119553 - * path-coverage.cc (find_paths): Return path count, don't - write to gcno, and rename to ... - (instrument_prime_paths): ... this. - * profile.cc (branch_prob): Write path counts to gcno. - -2025-03-31 Marek Polacek <polacek@redhat.com> - - PR c++/116960 - PR c++/119303 - * diagnostic.cc (diagnostic_context::report_diagnostic): Check for - non-zero m_lock later, after checking diagnostic_enabled. - -2025-03-31 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com> - - * config/aarch64/aarch64-option-extensions.def (SME): Remove SVE2 as - prerequisite and add in FCMA and F16FML. - * config/aarch64/aarch64.cc (aarch64_override_options_internal): - Diagnose use of SME without SVE2 and implicitly enable SVE2 when - enabling SME after streaming mode diagnosis. - * doc/invoke.texi (sme): Document that this can only be used with the - sve2 extension. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119532 - * tree-tailcall.cc (process_assignment): FAIL for fixed-point - typed functions. - -2025-03-31 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/119541 - * gimplify.cc (modify_call_for_omp_dispatch): Limit interop claues - processing by the number of append_args arguments. - -2025-03-31 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR middle-end/119442 - * expr.cc (store_constructor): Also allow element modes explicitly - accepted by target vec_duplicate pattern. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/sse.md (*vmov<mode>_constm1_pternlog_false_dep): - Add mode attribute. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_mov_fp_load, - znver5_sse_mov_fp_load): Also match ssemov2. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_log_evex_store, - znver5_sse_log_evex_store): New reservations. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_icvt): Use sseicvt. - (znver4_sse_icvt_store): Likewise. - (znver5_sse_icvt_store): Likewise. - (znver4_sse_icvt2): New. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_div_pd, - znver4_sse_div_pd_load, znver5_sse_div_pd_load): Handle DFmode. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_cmp_avx128, - znver5_sse_cmp_avx128): Handle TImode. - (znver4_sse_cmp_avx256, znver5_sse_cmp_avx256): Handle OImode. - (znver4_sse_cmp_avx512, znver5_sse_cmp_avx512): Handle XImode. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_test): Drop test of - prefix_extra attribute. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_log1): Rename to - znver4_sse_log1_store. - (znver5_sse_log1): Rename to znver5_sse_log1_store. - (znver4_sse_log1): New memory-less variant. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi (New/Delete Builtins): Cleanup up the text and - explicitly list the builtins being documented. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Numeric Builtins): Move Integer Overflow Builtins - section here, as a subsection. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Atomic Memory Access): New section. - (__sync Builtins): Make it a subsection of the above. - (Atomic Memory Access): Likewise. - (x86 specific memory model extensions for transactional memory): - Delete this section, incorporating the text into the discussion - of __atomic builtins. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Built-in Functions): Incorporate some text - formerly in "Other Builtins" into the introduction. Adjust - menu for new sections. - (Library Builtins): New section, split from "Other Builtins". - (Numeric Builtins): Likewise. - (Stack Allocation): Likewise. - (Constructing Calls): Move __builtin_call_with_static_chain here. - (Object Size Checking): Minor copy-editing. - (Other Builtins): Move text to new sections listed above. Delete - duplicate docs for object-size checking builtins. - * doc/invoke.texi (C dialect options): Update @xref for -fno-builtin. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (C Extensions): Move menu items for - builtin-related sections to... - (Built-in Functions): New chapter. - * doc/gcc.texi (Introduction): Add menu entry for new chapter. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Attributes): New section. - (Function Attributes): Make it a subsection of the new section. - (Variable Attributes): Likewise. - (Type Attributes): Likewise. - (Label Attributes): Likewise. - (Enumerator Attributes): Likewise. - (Attribute Syntax): Likewise. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Function Attributes): Merge text from "Target - Format Checks" into the main discussion of the format and - format_arg attributes. - (Target Format Checks): Delete section. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - PR target/117759 - * config/alpha/alpha-protos.h - (alpha_expand_unaligned_store_safe_partial): New prototype. - * config/alpha/alpha.cc (alpha_expand_movmisalign) - (alpha_expand_block_move, alpha_expand_block_clear): Handle - TARGET_SAFE_PARTIAL. - (alpha_expand_unaligned_store_safe_partial) - (alpha_expand_unaligned_store_words_safe_partial) - (alpha_expand_clear_safe_partial_nobwx): New functions. - * config/alpha/alpha.md (insvmisaligndi): Handle - TARGET_SAFE_PARTIAL. - * config/alpha/alpha.opt (msafe-partial): New option. - * config/alpha/alpha.opt.urls: Regenerate. - * doc/invoke.texi (Option Summary, DEC Alpha Options): Document - the new option. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - PR target/117759 - * config/alpha/alpha-modes.def (OI): New integer mode. - * config/alpha/alpha-protos.h (alpha_expand_mov_safe_bwa): New - prototype. - * config/alpha/alpha.cc (alpha_expand_mov_safe_bwa): New - function. - (alpha_secondary_reload): Handle TARGET_SAFE_BWA. - * config/alpha/alpha.md (aligned_store_safe_bwa) - (unaligned_store<mode>_safe_bwa, reload_out<mode>_safe_bwa) - (reload_out<mode>_unaligned_safe_bwa): New expanders. - (mov<mode>, movcqi, reload_out<mode>_aligned): Handle - TARGET_SAFE_BWA. - (reload_out<mode>): Guard against TARGET_SAFE_BWA. - * config/alpha/alpha.opt (msafe-bwa): New option. - * config/alpha/alpha.opt.urls: Regenerate. - * doc/invoke.texi (Option Summary, DEC Alpha Options): Document - the new option. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - * function.h (struct function): Add - `split_basic_blocks_after_reload' member. - * lra.cc (lra): Handle it. - * reload1.cc (reload): Likewise. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha-protos.h (alpha_emit_unlikely_jump): New - prototype. - * config/alpha/alpha.cc (emit_unlikely_jump): Rename to... - (alpha_emit_unlikely_jump): ... this. Return the insn emitted. - (alpha_split_atomic_op, alpha_split_compare_and_swap) - (alpha_split_compare_and_swap_12, alpha_split_atomic_exchange) - (alpha_split_atomic_exchange_12): Update call sites accordingly. - -2025-03-30 LIU Hao <lh_mouse@126.com> - - * config/mingw/winnt.cc (mingw_pe_file_end): Add `.p2align`. - -2025-03-29 Iain Sandoe <iain@sandoe.co.uk> - - PR cobol/119283 - * config.in: Regenerate. - * configure: Regenerate. - * configure.ac: Check for host memrchr. - -2025-03-29 Lulu Cheng <chenglulu@loongson.cn> - - * doc/invoke.texi: Modify the description of '-mld-seq-sa'. - -2025-03-29 Lulu Cheng <chenglulu@loongson.cn> - - * config/loongarch/loongarch-def.cc - (la464_align): Add settings for labels. - (la664_align): Likewise. - * config/loongarch/loongarch-opts.cc - (loongarch_target_option_override): Likewise. - * config/loongarch/loongarch-tune.h - (struct loongarch_align): Implement the function `label_`. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - * common.opt.urls: Regenerate. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - * Makefile.in (gcc.srcextra): Use sed to turn .../gcc/gengtype-lex.l - in #line directives into just gengtype-lex.l. - -2025-03-28 Andrew MacLeod <amacleod@redhat.com> - - * range-op.cc (operator_mult::op1_range): If the LHS does not - contain zero, return non-zero. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119483 - * tree-tailcall.cc (find_tail_calls): Handle noreturn musttail - calls. - (eliminate_tail_call): Likewise. - (tree_optimize_tail_calls_1): If cfun->has_musttail and - diag_musttail, handle also basic blocks with no successors - with noreturn musttail calls. - * calls.cc (can_implement_as_sibling_call_p): Allow ECF_NORETURN - calls if they are musttail calls. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119484 - * ipa-sra.cc (isra_analyze_call): Don't set m_return_ignored if - gimple_call_must_tail_p even if it doesn't have lhs. - -2025-03-28 Richard Biener <rguenther@suse.de> - - * fold-const.h (native_encode_real): Export. - * fold-const.cc (native_encode_real): Change API to take - mode and REAL_VALUE_TYPE. - (native_encode_expr): Adjust. - -2025-03-27 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.cc (ix86_redzone_clobber): Use integer, not rtx - as the third argument of plus_constant. - -2025-03-27 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_insn_both, znver5_insn_both): - New reservation for ALU ops with load and store. - -2025-03-27 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_add, znver4_sse_add_load, - znver5_sse_add_load, znver4_sse_add1, znver4_sse_add1_load, - znver5_sse_add1_load, znver4_sse_mul, znver4_sse_mul_load, - znver5_sse_mul_load, znver4_sse_cvt, znver4_sse_cvt_load, - znver5_sse_cvt_load, znver4_sse_shuf, znver5_sse_shuf, - znver4_sse_shuf_load, znver5_sse_shuf_load, - znver4_sse_cmp_avx128, znver5_sse_cmp_avx128, - znver4_sse_cmp_avx128_load, znver5_sse_cmp_avx128_load): - Also handle DFmode. - (znver4_sse_muladd_load, znver5_sse_muladd_load): Use - ssemuladd type. - -2025-03-27 Tobias Burnus <tburnus@baylibre.com> - - * gimplify.cc (modify_call_for_omp_dispatch): Remove sorry. - -2025-03-27 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/neon.md (<fmaxmin><mode>3): Move pattern from here... - * config/arm/vec-common.md (<fmaxmin><mode>3): ... to here. Convert - to define_expand and disable the pattern when denormal values might - get truncated to zero. Iterate on VF to add V4HF and V8HF variants. - -2025-03-27 Hu, Lin1 <lin1.hu@intel.com> - - PR target/119425 - * config/i386/sse.md: - (vec_set<mode>_0): Set the alternative with constraint "jm"'s - attribute "addr" to "gpr16". - (<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>): - Ditto. - (avx512vl_shuf_<shuffletype>32x4_1<mask_name>): Ditto. - (avx2_pblendd<mode>): Ditto. - (aesenc): Ditto. - (aesenclast): Ditto. - (aesdec): Ditto. - (aesdeclast): Ditto. - (vaesdec_<mode>): Ditto. - (vaesdeclast_<mode>): Ditto. - (vaesenc_<mode>):: Ditto. - (vaesenclast_<mode>):: Ditto. - (aes<aesklvariant>u8): Ditto. - (*aes<aeswideklvariant>u8): Ditto. - -2025-03-27 Lulu Cheng <chenglulu@loongson.cn> - - PR target/119408 - * config/loongarch/loongarch.cc - (loongarch_c_mode_for_suffix): New. - (TARGET_C_MODE_FOR_SUFFIX): Define. - -2025-03-26 Jørgen Kvalsvik <j@lambda.is> - - * builtins.cc (expand_builtin_fork_or_exec): Call - coverage_instrumentation_p. - * ipa-inline.cc (can_early_inline_edge_p): Likewise. - * passes.cc (finish_optimization_passes): Likewise. - * profile.cc (coverage_instrumentation_p): New function. - * profile.h (coverage_instrumentation_p): New declaration. - * tree-profile.cc (tree_profiling): Call - coverage_instrumentation_p. - (pass_ipa_tree_profile::gate): Likewise. - * value-prof.h (coverage_instrumentation_p): New declaration. - -2025-03-26 Jørgen Kvalsvik <j@lambda.is> - - * Makefile.in (OBJS): Add prime-paths.o, path-coverage.o. - (GTFILES): Add prime-paths.cc, path-coverage.cc - (GCOV_OBJS): Add graphds.o, prime-paths.o, bitmap.o - * builtins.cc (expand_builtin_fork_or_exec): Check - path_coverage_flag. - * collect2.cc (main): Add -fno-path-coverage to OBSTACK. - * common.opt: Add new options -fpath-coverage, - -fpath-coverage-limit, -Wcoverage-too-many-paths - * doc/gcov.texi: Add --prime-paths, --prime-paths-lines, - --prime-paths-source documentation. - * doc/invoke.texi: Add -fpath-coverage, -fpath-coverage-limit, - -Wcoverage-too-many-paths documentation. - * gcc.cc: Link gcov on -fpath-coverage. - * gcov-counter.def (GCOV_COUNTER_PATHS): New. - * gcov-io.h (GCOV_TAG_PATHS): New. - (GCOV_TAG_PATHS_LENGTH): New. - (GCOV_TAG_PATHS_NUM): New. - * gcov.cc (class path_info): New. - (struct coverage_info): Add paths, paths_covered. - (find_prime_paths): New. - (add_path_counts): New. - (find_arc): New. - (print_usage): Add -e, --prime-paths, --prime-paths-lines, - --prime-paths-source. - (process_args): Likewise. - (json_set_prime_path_coverage): New. - (output_json_intermediate_file): Call - json_set_prime_path_coverage. - (process_all_functions): Call find_prime_paths. - (generate_results): Call add_path_counts. - (read_graph_file): Read path counters. - (read_count_file): Likewise. - (function_summary): Print path counts. - (file_summary): Likewise. - (print_source_line): New. - (print_prime_path_lines): New. - (print_inlined_separator): New. - (print_prime_path_source): New. - (output_path_coverage): New. - (output_lines): Print path coverage. - * ipa-inline.cc (can_early_inline_edge_p): Check - path_coverage_flag. - * passes.cc (finish_optimization_passes): Likewise. - * profile.cc (branch_prob): Likewise. - * selftest-run-tests.cc (selftest::run_tests): Run path coverage - tests. - * selftest.h (path_coverage_cc_tests): New declaration. - * tree-profile.cc (tree_profiling): Check path_coverage_flag. - (pass_ipa_tree_profile::gate): Likewise. - * path-coverage.cc: New file. - * prime-paths.cc: New file. - -2025-03-26 Jørgen Kvalsvik <j@lambda.is> - - * gcov.cc (generate_results): Count branches, conditions. - (function_summary): Output branch, calls, condition count. - -2025-03-26 Thomas Schwinge <thomas@codesourcery.com> - - PR driver/101544 - * gcc.cc (driver_handle_option): Forward host '-lstdc++' to - offloading compilation. - * config/gcn/mkoffload.cc (main): Adjust. - * config/nvptx/mkoffload.cc (main): Likewise. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119417 - * tree-ssa-math-opts.cc (convert_mult_to_widen): Before changing - typeN because actual_precision/from_unsignedN differs cast rhsN - to typeN if it has a different type. - (convert_plusminus_to_widen): Before changing - typeN because actual_precision/from_unsignedN differs cast mult_rhsN - to typeN if it has a different type. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - Andi Kleen <ak@gcc.gnu.org> - - PR gcov-profile/118442 - * profile.cc (branch_prob): Ignore EDGE_FAKE edges from musttail calls - to EXIT. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - PR target/119450 - * config/i386/i386.md (narrow test peephole2): Test for - offsettable_memref_p in condition. - -2025-03-26 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_sse_mov_fp, znver4_sse_mov_fp_load, - znver5_sse_mov_fp_load, znver4_sse_mov_fp_store, - znver5_sse_mov_fp_store): Also match V1SF and DF. - -2025-03-26 Richard Biener <rguenther@suse.de> - - PR target/119010 - * config/i386/zn4zn5.md (znver4_imov_double_store, - znver5_imov_double_store, znver4_imov_store, znver5_imov_store): - New reservations for integer stores. - -2025-03-26 Richard Biener <rguenther@suse.de> - - PR middle-end/118795 - * match.pd (vec_perm <vec_perm <a, b>> -> vec_perm <a, b>): - Use the appropriate check to see whether the original - outer permute was supported. - -2025-03-26 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2-512convertintrin.h (_mm512_mask_cvtx2ps_ph): Formatting fixes - (_mm512_mask_cvtx_round2ps_ph): Ditto - (_mm512_maskz_cvtx_round2ps_ph): Ditto - (_mm512_cvtbiassph_bf8): Rename to _mm512_cvts_biasph_bf8. - (_mm512_mask_cvtbiassph_bf8): Rename to _mm512_mask_cvts_biasph_bf8. - (_mm512_maskz_cvtbiassph_bf8): Rename to _mm512_maskz_cvts_biasph_bf8. - (_mm512_cvtbiassph_hf8): Rename to _mm512_cvts_biasph_hf8. - (_mm512_mask_cvtbiassph_hf8): Rename to _mm512_mask_cvts_biasph_hf8. - (_mm512_maskz_cvtbiassph_hf8): Rename to _mm512_maskz_cvts_biasph_hf8. - (_mm512_cvts2ph_bf8): Rename to _mm512_cvts_2ph_bf8. - (_mm512_mask_cvts2ph_bf8): Rename to _mm512_mask_cvts_2ph_bf8. - (_mm512_maskz_cvts2ph_bf8): Rename to _mm512_maskz_cvts_2ph_bf8. - (_mm512_cvts2ph_hf8): Rename to _mm512_cvts_2ph_hf8. - (_mm512_mask_cvts2ph_hf8): Rename to _mm512_mask_cvts_2ph_hf8. - (_mm512_maskz_cvts2ph_hf8): Rename to _mm512_maskz_cvts_2ph_hf8. - (_mm512_cvtsph_bf8): Rename to _mm512_cvts_ph_bf8. - (_mm512_mask_cvtsph_bf8): Rename to _mm512_mask_cvts_ph_bf8. - (_mm512_maskz_cvtsph_bf8): Rename to _mm512_maskz_cvts_ph_bf8. - (_mm512_cvtsph_hf8): Rename to _mm512_cvts_ph_hf8. - (_mm512_mask_cvtsph_hf8): Rename to _mm512_mask_cvts_ph_hf8. - (_mm512_maskz_cvtsph_hf8): Rename to _mm512_maskz_cvts_ph_hf8. - * config/i386/avx10_2convertintrin.h - (_mm_cvtbiassph_bf8): Rename to _mm_cvts_biasph_bf8. - (_mm_mask_cvtbiassph_bf8): Rename to _mm_mask_cvts_biasph_bf8. - (_mm_maskz_cvtbiassph_bf8): Rename to _mm_maskz_cvts_biasph_bf8. - (_mm256_cvtbiassph_bf8): Rename to _mm256_cvts_biasph_bf8. - (_mm256_mask_cvtbiassph_bf8): Rename to _mm256_mask_cvts_biasph_bf8. - (_mm256_maskz_cvtbiassph_bf8): Rename to _mm256_maskz_cvts_biasph_bf8. - (_mm_cvtbiassph_hf8): Rename to _mm_cvts_biasph_hf8. - (_mm_mask_cvtbiassph_hf8): Rename to _mm_mask_cvts_biasph_hf8. - (_mm_maskz_cvtbiassph_hf8): Rename to _mm_maskz_cvts_biasph_hf8. - (_mm256_cvtbiassph_hf8): Rename to _mm256_cvts_biasph_hf8. - (_mm256_mask_cvtbiassph_hf8): Rename to _mm256_mask_cvts_biasph_hf8. - (_mm256_maskz_cvtbiassph_hf8): Rename to _mm256_maskz_cvts_biasph_hf8. - (_mm_cvts2ph_bf8): Rename to _mm_cvts_2ph_bf8. - (_mm_mask_cvts2ph_bf8): Rename to _mm_mask_cvts_2ph_bf8. - (_mm_maskz_cvts2ph_bf8): Rename to _mm_maskz_cvts_2ph_bf8. - (_mm256_cvts2ph_bf8): Rename to _mm256_cvts_2ph_bf8. - (_mm256_mask_cvts2ph_bf8): Rename to _mm256_mask_cvts_2ph_bf8. - (_mm256_maskz_cvts2ph_bf8): Rename to _mm256_maskz_cvts_2ph_bf8. - (_mm_cvts2ph_hf8): Rename to _mm_cvts_2ph_hf8. - (_mm_mask_cvts2ph_hf8): Rename to _mm_mask_cvts_2ph_hf8. - (_mm_maskz_cvts2ph_hf8): Rename to _mm_maskz_cvts_2ph_hf8. - (_mm256_cvts2ph_hf8): Rename to _mm256_cvts_2ph_hf8. - (_mm256_mask_cvts2ph_hf8): Rename to _mm256_mask_cvts_2ph_hf8. - (_mm256_maskz_cvts2ph_hf8): Rename to _mm256_maskz_cvts_2ph_hf8. - (_mm_cvtsph_bf8): Rename to _mm_cvts_ph_bf8. - (_mm_mask_cvtsph_bf8): Rename to _mm_mask_cvts_ph_bf8. - (_mm_maskz_cvtsph_bf8): Rename to _mm_maskz_cvts_ph_bf8. - (_mm256_cvtsph_bf8): Rename to _mm256_cvts_ph_bf8. - (_mm256_mask_cvtsph_bf8): Rename to _mm256_mask_cvts_ph_bf8. - (_mm256_maskz_cvtsph_bf8): Rename to _mm256_maskz_cvts_ph_bf8. - (_mm_cvtsph_hf8): Rename to _mm_cvts_ph_hf8. - (_mm_mask_cvtsph_hf8): Rename to _mm_mask_cvts_ph_hf8. - (_mm_maskz_cvtsph_hf8): Rename to _mm_maskz_cvts_ph_hf8. - (_mm256_cvtsph_hf8): Rename to _mm256_cvts_ph_hf8. - (_mm256_mask_cvtsph_hf8): Rename to _mm256_mask_cvts_ph_hf8. - (_mm256_maskz_cvtsph_hf8): Rename to _mm256_maskz_cvts_ph_hf8. - -2025-03-25 Iain Sandoe <iain@sandoe.co.uk> - - * gcov.cc (get_gcov_intermediate_filename): Use lbasename(). - -2025-03-25 Iain Sandoe <iain@sandoe.co.uk> - - PR other/119250 - * config.in: Regenerate. - * configure: Regenerate. - * configure.ac: Match the configure test in libiberty when checking - the basename decl. - -2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * gimplify.cc (modify_call_for_omp_dispatch): Adjust arguments. - Remove the "sorry" for the case where new interop objects must be - constructed, and add code to make it work instead. - (expand_variant_call_expr): Adjust arguments and call to - modify_call_for_omp_dispatch. - (gimplify_variant_call_expr): Simplify logic for calling - expand_variant_call_expr. - -2025-03-25 Jakub Jelinek <jakub@redhat.com> - - PR target/96226 - PR target/119428 - * config/i386/i386.md (splitter after *<rotate_insn><mode>3_mask, - splitter after *<rotate_insn><mode>3_mask_1): Revert 2020-12-05 - changes. - -2025-03-25 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119224 - * config/riscv/autovec.md: Disable abd splitter. - -2025-03-25 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/119325 - * doc/install.texi (gcn): Change ROCm > 6.3.2 to >6.3.3 for generic - support; mention Newlib commit that fixes a SIMD math issue. - -2025-03-25 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/118627 - * omp-general.cc (omp_parse_access_method): Change to return void. - (omp_parse_access_methods): Return void; remove 'if' around a - function call. - (omp_parse_expr): Remove 'if' around a function call. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.md (<US>mull): Add alternatives that allow Rs - to be tied to either Rdlo or Rdhi. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - PR middle-end/117811 - * optabs.cc (expand_binop_directly): Remove LAST as an argument, - instead record the last insn on entry. Only delete insns if - we need to restart and restart by calling ourself, not expand_binop. - (expand_binop): Update callers to expand_binop_directly. If it - fails to expand the operation, delete back to LAST. - -2025-03-25 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * tree-tailcall.cc (suitable_for_tail_opt_p): Add DIAG_MUSTTAIL - argument, propagate it down to maybe_error_musttail. - (suitable_for_tail_call_opt_p): Likewise. - (maybe_error_musttail): Add DIAG_MUSTTAIL argument. Don't emit error - for gimple_call_must_tail_p calls if it is false. - (find_tail_calls): Add DIAG_MUSTTAIL argument, propagate it down to - maybe_error_musttail, suitable_for_tail_opt_p, - suitable_for_tail_call_opt_p and find_tail_calls calls. - (tree_optimize_tail_calls_1): Add DIAG_MUSTTAIL argument, propagate - it down to find_tail_calls and if set, clear cfun->has_musttail flag - at the end. Rename OPT_MUSTCALL argument to OPT_MUSTTAIL. - (execute_tail_calls): Pass true to DIAG_MUSTTAIL - tree_optimize_tail_calls_1 argument. - (pass_tail_recursion::execute): Pass false to DIAG_MUSTTAIL - tree_optimize_tail_calls_1 argument. - (pass_musttail::gate): Don't test flag_optimize_sibling_calls. - (pass_musttail::execute): Pass true to DIAG_MUSTTAIL - tree_optimize_tail_calls_1 argument. - -2025-03-24 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118616 - * tree-vect-generic.cc (expand_vector_conversion): Add - an assert that converts vect is non empty if - supportable_indirect_convert_operation returns true. - -2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/101544 - * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) - [ACCEL_COMPILER]: Special-case certain host-setup symbol aliases. - * varasm.cc (do_assemble_alias) [ACCEL_COMPILER]: Adjust. - -2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.cc (default_ptx_version_option): Default at - least to '-mptx=6.3'. - * doc/invoke.texi (Nvidia PTX Options): Update '-mptx=[...]'. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/cpuinfo.h - (get_available_features): Change to FEATURE_AVX10_1. - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_AVX10_1_512_SET): Renamed to ... - (OPTION_MASK_ISA2_AVX10_1_SET): ... this. - (OPTION_MASK_ISA2_AVX10_2_SET): Use renamed macro. - (OPTION_MASK_ISA2_AVX10_1_UNSET): Ditto. - (ix86_handle_option): Ditto. - (processor_alias_table): Use P_PROC_AVX10_1. - * common/config/i386/i386-cpuinfo.h - (enum feature_priority): Rename from AVX10_1_512 to AVX10_1. - (enum processor_features): Ditto. - * common/config/i386/i386-isas.h: Add avx10.1. - * config/i386/driver-i386.cc - (host_detect_local_cpu): Use renamed enum. - * config/i386/i386-c.cc - (ix86_target_macros_internal): Rename to avx10.1. - * config/i386/i386-isa.def (AVX10_1_512): Rename to ... - (AVX10_1): ... this. - * config/i386/i386-options.cc (isa2_opts): Rename to avx10.1. - (ix86_valid_target_attribute_inner_p): Add avx10.1. - (ix86_option_override_internal): Rename to AVX10_1. - Revise warnings to mention behavior change for option - combination in GCC 16. - * config/i386/i386.h (PTA_DIAMONDRAPIDS): Use AVX10_1. - * config/i386/i386.opt: Add avx10.1. - Add deprecate warnings for mevex512 and mavx10.1-256/512. - * config/i386/i386.opt.urls: Add avx10.1. - * doc/extend.texi: Ditto. - * doc/sourcebuild.texi: Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/cpuinfo.h - (get_available_features): Revise the logic AVX10 version. - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_AVX10_2_256_SET): Removed. - (OPTION_MASK_ISA2_AVX10_2_512_SET): Ditto. - (OPTION_MASK_ISA2_AVX10_2_SET): New. - (OPTION_MASK_ISA2_AMX_AVX512_SET): Use AVX10.2 macro. - (OPTION_MASK_ISA2_AVX10_2_UNSET): Ditto. - (ix86_handle_option): Remove avx10.2-256 part. Adjust avx10.2. - * common/config/i386/i386-cpuinfo.h - (enum processor_features): Remove FEATURE_AVX10_2_256 and skip - the value for it. Change the name from FEATURE_AVX10_2_512 to - FEATURE_AVX10_2. - * common/config/i386/i386-isas.h: Remove avx10.2-256/512. - * config/i386/avx10_2-512bf16intrin.h: Use avx10.2 instead of - avx10.2-256/512. - * config/i386/avx10_2-512convertintrin.h: Ditto. - * config/i386/avx10_2-512mediaintrin.h: Ditto. - * config/i386/avx10_2-512minmaxintrin.h: Ditto. - * config/i386/avx10_2-512satcvtintrin.h: Ditto. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/avx10_2convertintrin.h: Ditto. - * config/i386/avx10_2mediaintrin.h: Ditto. - * config/i386/avx10_2minmaxintrin.h: Ditto. - * config/i386/avx10_2satcvtintrin.h: Ditto. - * config/i386/movrsintrin.h: Ditto. - * config/i386/sm4intrin.h: Ditto. - * config/i386/cpuid.h (bit_AVX10_256): Removed. - (bit_AVX10_512): Ditto. - * config/i386/driver-i386.cc (host_detect_local_cpu): Adjust - Diamond Rapids and -march=native condition. - * config/i386/i386-builtin.def (BDESC): Use AVX10.2 macro - instead of AVX10.2-256/512. - * config/i386/i386-c.cc (ix86_target_macros_internal): Ditto. - * config/i386/i386-expand.cc - (ix86_expand_branch): Use TARGET_AVX10_2 instead of specifying - vector size. - (ix86_prepare_fp_compare_args): Ditto. - (ix86_expand_fp_compare): Ditto. - (ix86_ssecom_setcc): Ditto. - (ix86_expand_sse_comi): Ditto. - (ix86_expand_sse_comi_round): Ditto. - (ix86_check_builtin_isa_match): Ditto. - * config/i386/i386.cc (ix86_fp_compare_code_to_integer): Ditto. - (ix86_get_mask_mode): Ditto. - * config/i386/i386.h (SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P): Ditto. - * config/i386/i386.md: Ditto. - * config/i386/mmx.md: Ditto. - * config/i386/sse.md: Ditto. - * config/i386/predicates.md: Ditto. - * config/i386/i386-isa.def (AVX10_2_256): Removed. - (AVX10_2_512): Removed. - (AVX10_2): New. - * config/i386/i386-options.cc - (isa2_opts): Remove avx10.2-256/512. - (ix86_valid_target_attribute_inner_p): Ditto. - (PTA_DIAMONDRAPIDS): Use PTA_AVX10_2. - * config/i386/i386.opt: Remove avx10.2-256/512. - * config/i386/i386.opt.urls: Ditto. - * doc/extend.texi: Ditto. - * doc/invoke.texi: Ditto. - * doc/sourcebuild.texi: Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config.gcc: Add avx10_2roundingintrin.h. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V4DF_FTYPE_V4DF_V4DF_V4DF_UQI_INT, V8SF_FTYPE_V8SF_V8SF_V8SF_UQI_INT, - V16HF_FTYPE_V16HF_V16HF_V16HF_UHI_INT, UQI_FTYPE_V4DF_V4DF_INT_UQI_INT, - UHI_FTYPE_V16HF_V16HF_INT_UHI_INT, UQI_FTYPE_V8SF_V8SF_INT_UQI_INT. - * config/i386/immintrin.h: Include avx10_2roundingintrin.h. - * config/i386/sse.md: Change subst_attr name due to renaming. - * config/i386/subst.md: - (<round_mode512bit_condition>): Add condition check for avx10.2 - rounding control 256bit intrins and renamed to ... - (<round_mode_condition>): ...this. - (round_saeonly_mode512bit_condition): Add condition check for - avx10.2 rounding control 256 bit intris and renamed to ... - (round_saeonly_mode_condition): ...this. - * config/i386/avx10_2roundingintrin.h: New file. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: Add new intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V8SF_FTYPE_V8SI_V8SF_UQI_INT, V4SF_FTYPE_V4DF_V4SF_UQI_INT, - V8HF_FTYPE_V8SI_V8HF_UQI_INT, V8HF_FTYPE_V4DF_V8HF_UQI_INT. - * config/i386/sse.md: - (avx512fp16_vcvt<floatsuffix><sseintconvert>2ph_<mode><mask_name><round_name>): - Add condition check. - (avx512fp16_vcvtpd2ph_v4df_mask_round): New expand. - (*avx512fp16_vcvt<castmode>2ph_<mode>_mask): Change name to - avx512fp16_vcvt<castmode>2ph_<mode>_mask<round_name>_1 - and extend pattern to generate 256bit insns. - (avx_cvtpd2ps256<mask_name>): Change name to - avx_cvtpd2ps256<mask_name><round_name> and extend pattern to - generate 256bit insns. - * config/i386/subst.md (round_applied): New condition. - (round_suff): New iterator. - (round_mode_condition): Add V32HI check for 512bit. - (round_saeonly_mode_condition): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: Add new intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V4DI_FTYPE_V4DF_V4DI_UQI_INT, V4SI_FTYPE_V4DF_V4SI_UQI_INT. - * config/i386/sse.md: - (avx_cvtpd2dq256<mask_name>): Change name to - avx_cvtpd2dq256<mask_name><round_name> and extend pattern to - generate 256bit insns. - (fixuns_notrunc<mode><si2dfmodelower>2<mask_name><round_name>): - Add round_mode_condition. - * config/i386/subst.md (round_pd2udqsuff): New iterator. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V8SF_FTYPE_V8HF_V8SF_UQI_INT, V8SI_FTYPE_V8HF_V8SI_UQI_INT, - V4DF_FTYPE_V8HF_V4DF_UQI_INT, V4DI_FTYPE_V8HF_V4DI_UQI_INT. - * config/i386/sse.md: - (avx512fp16_float_extend_ph<mode>2<mask_name><round_saeonly_name>): - Add condition check. - (avx512fp16_vcvtph2<sseintconvertsignprefix><sseintconvert>_<mode> - <mask_name><round_name>): - Ditto. - (avx512fp16_float_extend_ph<mode>2<mask_name>): Extend round saeonly. - (vcvtph2ps256<mask_name>): Ditto. - * config/i386/subst.md - (round_saeonly_applied): New condition. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V16HI_FTYPE_V16HF_V16HI_UHI_INT, V4DF_FTYPE_V4SF_V4DF_UQI_INT - V8HF_FTYPE_V8SF_V8HF_UQI_INT. - * config/i386/sse.md - (avx512fp16_vcvt<castmode>2ph_<mode><mask_name><round_name>): - Add round condition check. - * config/i386/subst.md (round_mode_condition): Add V16HI check for - 256bit. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V8SI_FTYPE_V8SF_V8SI_UQI_INT, V4DI_FTYPE_V4SF_V4DI_UQI_INT. - * config/i386/sse.md - (<sse2_avx_avx512f>_fix_notrunc<sf2simodelower><mode><mask_name>): - Extend to round. - (<mask_codefor><avx512>_fixuns_notrunc<sf2simodelower><mode><mask_name><round_name>): - Add round condition check. - * config/i386/subst.md (round_constraint4): New. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V4DF_FTYPE_V4DI_V4DF_UQI_INT, V4SF_FTYPE_V4DI_V4SF_UQI_INT, - V8HF_FTYPE_V4DI_V8HF_UQI_INT. - * config/i386/sse.md: - (avx512fp16_vcvt<floatsuffix>qq2ph_v4di_mask_round): New expand. - (*avx512fp16_vcvt<floatsuffix><sseintconvert>2ph_<mode>_mask): - Extend round control and add "_1" suffix. - (float<floatunssuffix><sseintvecmodelower><mode>2<mask_name><round_name>): - Add condition check. - (float<floatunssuffix><sselongvecmodelower><mode>2<mask_name><round_name>): - Ditto. - (float<floatunssuffix><mode><ssePSmode2lower>2<mask_name><round_name>): - Limit suffix output. - (unspec_fix_truncv4dfv4si2<mask_name>): Extend round control. - (unspec_fixuns_truncv4dfv4si2<mask_name>): Ditto. - * config/i386/subst.md (round_qq2pssuff): New iterator. - (round_saeonly_suff): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md (avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name>): - Extend round control for 256bit. - (unspec_avx512fp16_fix<vcvtt_uns_suffix>_trunc<mode>2<mask_name>): - Ditto. - (avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name><round_saeonly_name>): - Add condition check. - * config/i386/subst.md - (round_saeonly_mode_condition): Add V16HI check for 256bit. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md - (unspec_fix_truncv8sfv8si2<mask_name>): Extend rounding control. - (<mask_codefor>fixuns_trunc<mode><sseintvecmodelower>2<mask_name>): - Ditto. - (<mask_codefor>floatuns<sseintvecmodelower><mode>2<mask_name><round_name>): - Add condition check. - (fix<fixunssuffix>_trunc<mode><sselongvecmodelower>2<mask_name><round_saeonly_name>): - Remove round_saeonly_name. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V16HF_FTYPE_V16HI_V16HF_UHI_INT. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V16HF_FTYPE_V16HF_V16HF_INT, V16HF_FTYPE_V16HF_V16HF_V16HF_INT, - V16HF_FTYPE_V16HF_V16HF_V16HF_UQI_INT, - V4DF_FTYPE_V4DF_V4DF_V4DI_INT_UQI_INT, - V8SF_FTYPE_V8SF_V8SF_V8SI_INT_UQI_INT. - * config/i386/sse.md: - (<avx512>_fixupimm<mode><sd_maskz_name><round_saeonly_name>): - Add condition check. - (<avx512>_fixupimm<mode>_mask<round_saeonly_name>): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md: - (<avx512>_fmadd_<mode>_mask3<round_name>): Add condition check. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md: - (<avx512>_fmaddsub_<mode>_mask<round_name>): Add condition check. - (<avx512>_fmaddsub_<mode>_mask3<round_name>): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md: - (<avx512>_fmsub_<mode>_mask<round_name>): Add condition check. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md: - (<avx512>_fnmsub_<mode>_mask3<round_name>): Add condition check. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle - V8SF_FTYPE_V8SF_V8SF_UQI_INT, V4DF_FTYPE_V4DF_V4DF_UQI_INT, - V16HF_FTYPE_V16HF_V16HF_UHI_INT, V16HF_FTYPE_V16HF_INT_V16HF_UHI_INT, - V4DF_FTYPE_V4DF_INT_V4DF_UQI_INT, V8SF_FTYPE_V8SF_INT_V8SF_UQI_INT. - * config/i386/sse.md: - (<avx512>_getexp<mode><mask_name><round_saeonly_name>): - Add condition check. - (<avx512>_getmant<mode><mask_name><round_saeonly_name>): - Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/i386-expand.cc (ix86_expand_round_builtin): - Handle V8SF_FTYPE_V8SF_V8SF_INT_V8SF_UQI_INT, - V4DF_FTYPE_V4DF_V4DF_INT_V4DF_UQI_INT. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - * config/i386/sse.md: - (<mask_codefor>reducep<mode><mask_name><round_saeonly_name>): - Add condition check. - (<avx512>_rndscale<mode><mask_name><round_saeonly_name>): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def: Add new builtins. - * config/i386/sse.md: - (<avx512>_scalef<mode><mask_name><round_name>): Add condition check. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2roundingintrin.h: New intrins. - * config/i386/i386-builtin.def (BDESC): Add new builtins. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/avx10_2satcvtintrin.h: Remove rounding intrins. - Use non-round intrins. - * config/i386/i386-builtin.def (BDESC): Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/avx10_2convertintrin.h: Remove rounding intrins. - Use non-round builtins. - * config/i386/avx10_2minmaxintrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/i386-builtin-types.def: Remove unused type. - * config/i386/i386-expand.cc - (ix86_expand_args_builtin): Ditto. - (ix86_expand_round_builtin): Ditto. - -2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Nonlocal Gotos): Group with other built-ins - sections. - (Constructing Calls): Likewise. - (Pragmas): Move earlier in the section, before the built-ins docs. - (Thread-Local): Likewise. - (OpenMP): Likewise. - (OpenACC): Likewise. - -2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Syntax Extensions): New section. - (Statement Exprs): Make it a subsection of the above. - (Local Labels): Likewise. - (Labels as Values): Likewise. - (Nested Functions): Likewise. - (Typeof): Likewise. - (Offsetof): Likewise. - (Alignment): Likewise. - (Incomplete Enums): Likewise. - (Variadic Macros): Likewise. - (Conditionals): Likewise. - (Case Ranges): Likewise. - (Mixed Labels and Declarations): Likewise. - (C++ Comments): Likewise. - (Escaped Newlines): Likewise. - (Hex Floats): Likewise. - (Binary constants): Likewise. - (Dollar Signs): Likewise. - (Character Escapes): Likewise. - (Alternate Keywords): Likewise. - (Function Names): Likewise. - (Semantic Extensions): New section. - (Function Prototypes): Make it a subsection of the above. - (Pointer Arith): Likewise. - (Variadic Pointer Args): Likewise. - (Pointers to Arrays): Likewise. - (Const and Volatile Functions): Likewise. - -2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Aggregate Types): New section. - (Variable Length): Make it a subsection of the above. - (Zero Length): Likewise. - (Empty Structures): Likewise. - (Flexible Array Members in Unions): Likewise. - (Flexible Array Members alone in Structures): Likewise. - (Unnamed Fields): Likewise. - (Cast to Union): Likewise. - (Subscripting): Likewise. - (Initializers): Likewise. - (Compound Literals): Likewise. - (Designated Inits): Likewise. - -2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/42270 - * doc/extend.texi (Additional Numeric Types): New section. - (__int128): Make it a subsection of the above. - (Long Long): Likewise. - (Complex): Likewise. - (Floating Types): Likewise. - (Half-Precision): Likewise. - (Decimal Float): Likewise. - (Fixed-Point): Likewise. - -2025-03-23 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-mcus.def: Add AVR32SD20, AVR32SD28, AVR32SD32, - AVR64SD28, AVR64SD32, AVR64SD48. - * doc/avr-mmcu.texi: Rebuild. - -2025-03-23 Georg-Johann Lay <avr@gjlay.de> - - * doc/invoke.texi (AVR Optimization Options) - <-maccumulate-args>: Refer to -fdefer-pop. - <-muse-nonzero-bits>: Re-formulate what the option does. - -2025-03-22 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.cc (avr_option_override): Use - "avr-peep2-after-fuse-move" as dump name instead of "peephole2". - -2025-03-22 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.opt.urls: Add -muse-nonzero-bits. - -2025-03-22 Georg-Johann Lay <avr@gjlay.de> - - PR target/119421 - * config/avr/avr.opt (-muse-nonzero-bits): New option. - * config/avr/avr-protos.h (avr_nonzero_bits_lsr_operands_p): New. - (make_avr_pass_split_nzb): New. - * config/avr/avr.cc (avr_nonzero_bits_lsr_operands_p): New function. - (avr_rtx_costs_1): Return costs for the new insns. - * config/avr/avr.md (nzb): New insn attribute. - (*nzb=1.<code>...): New insns to better support some bit - operations for <code> in AND, IOR, XOR. - * config/avr/avr-passes.def (avr_pass_split_nzb): Insert pass - atfer combine. - * config/avr/avr-passes.cc (avr_pass_data_split_nzb). New pass data. - (avr_pass_split_nzb): New pass. - (make_avr_pass_split_nzb): New function. - * common/config/avr/avr-common.cc (avr_option_optimization_table): - Enable -muse-nonzero-bits for -O2 and higher. - * doc/invoke.texi (AVR Options): Document -muse-nonzero-bits. - -2025-03-22 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.cc (avr_attrs_section_name): New function. - (avr_insert_attributes): Add "used" attribute to functions - in .initN and .finiN. - -2025-03-22 Iain Sandoe <iain@sandoe.co.uk> - - * config/darwin.h (DL_LIBRARY): New. - -2025-03-22 Jakub Jelinek <jakub@redhat.com> - - * gimplify.cc (warn_switch_unreachable_and_auto_init_r): Add missing - space in the middle of diagnostics. - * tree-vect-stmts.cc (vectorizable_load): Add missing space in the - middle of debug dump message. - * sym-exec/sym-exec-state.cc (state::check_args_compatibility): - Likewise. - -2025-03-21 Surya Kumari Jangala <jskumari@linux.ibm.com> - Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/116028 - PR rtl-optimization/118615 - * lra-constraints.cc (first_call_insn): New variable. - (split_reg): Spill register before first_call_insn if call_save_p - and the call is in a different bb in the ebb. - (split_if_necessary): Formatting fix. - (inherit_in_ebb): Set first_call_insn when handling a CALL_INSN. - For successful split_if_necessary with before_p, only change - use_insn if it emitted any new instructions before curr_insn. - Clear first_call_insn before returning. - -2025-03-21 Paul-Antoine Arras <parras@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * builtin-types.def - (BT_FN_VOID_INT_INT_PTR_PTR_PTR_INT_PTR_INT_PTR_UINT_PTR): New. - * gimple-low.cc (lower_stmt): Handle GIMPLE_OMP_INTEROP. - * gimple-pretty-print.cc (dump_gimple_omp_interop): New function. - (pp_gimple_stmt_1): Handle GIMPLE_OMP_INTEROP. - * gimple.cc (gimple_build_omp_interop): New function. - (gimple_copy): Handle GIMPLE_OMP_INTEROP. - * gimple.def (GIMPLE_OMP_INTEROP): Define. - * gimple.h (gimple_build_omp_interop): Declare. - (gimple_omp_interop_clauses): New function. - (gimple_omp_interop_clauses_ptr): Likewise. - (gimple_omp_interop_set_clauses): Likewise. - (gimple_return_set_retval): Handle GIMPLE_OMP_INTEROP. - * gimplify.cc (gimplify_scan_omp_clauses): Handle OMP_CLAUSE_INIT, - OMP_CLAUSE_USE and OMP_CLAUSE_DESTROY. - (gimplify_omp_interop): New function. - (gimplify_expr): Replace sorry with call to gimplify_omp_interop. - * omp-builtins.def (BUILT_IN_GOMP_INTEROP): Define. - * omp-low.cc (scan_sharing_clauses): Handle OMP_CLAUSE_INIT, - OMP_CLAUSE_USE and OMP_CLAUSE_DESTROY. - (scan_omp_1_stmt): Handle GIMPLE_OMP_INTEROP. - (lower_omp_interop_action_clauses): New function. - (lower_omp_interop): Likewise. - (lower_omp_1): Handle GIMPLE_OMP_INTEROP. - -2025-03-21 Jason Merrill <jason@redhat.com> - - PR c++/114992 - * multiple_target.cc (create_dispatcher_calls): - remove_from_same_comdat_group before add_to_same_comdat_group. - -2025-03-21 Dhruv Chawla <dhruvc@nvidia.com> - - * config/aarch64/aarch64-cores.def (olympus): New entry. - * config/aarch64/aarch64-tune.md: Regenerate. - * doc/invoke.texi (AArch64 Options): Document the above. - -2025-03-21 Antoni Boucher <bouanto@zoho.com> - - * config/i386/i386-rust-and-jit.inc: New file. - * config/i386/i386-rust.cc: Move code to i386-rust-and-jit.inc. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * ipa-icf-gimple.cc (func_checker::compare_gimple_call): Return false - for gimple_call_must_tail_p mismatches. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * ipa-split.cc (split_function): Call gimple_call_set_must_tail - on the call to outlined partition if has_musttail and - !add_tsan_func_exit. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * tree-inline.cc (remap_gimple_stmt): Silently clear - gimple_call_must_tail_p on inlined call stmts if id->call_stmt - is a call without that flag set. - -2025-03-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/119235 - * config/s390/s390.cc (s390_hard_regno_mode_ok): Accept only - Pmode for registers AP/FP/RA. - -2025-03-21 Richard Biener <rguenther@suse.de> - - * cgraphunit.cc (symbol_table::finalize_compilation_unit): - Put early debug generation under TV_SYMOUT. - -2025-03-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/118914 - * combine.cc (recog_for_combine): Add old_nregs and new_nregs - argument (defaulting to 0). Update call to recog_for_combine_1. - (combine_split_insns): Add old_nregs and new_nregs arguments, - store the old and new max registers to them. - (try_combine): Update calls to combine_split_insns and - pass old_nregs and new_nregs for the i3 call to recog_for_combine. - (find_split_point): Update call to combine_split_insns; ignoring - the values there. - (recog_for_combine_1): Add old_nregs and new_nregs arguments, - if the insn was recognized (and not to no-op move), add the - REG_DEAD notes to pnotes argument. - -2025-03-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119389 - * tree-ssa-sccvn.cc (dominated_by_p_w_unex): Limit the number - of predecessors of a CFG merge we try to skip. - -2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - Revert: - 2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config.gcc: Fail in case of option --with-mode=esa. - * config/s390/s390.cc (s390_option_override_internal): Default - to z/Architecture mode. - * config/s390/s390.h (DRIVER_SELF_SPECS): Ditto. - * config/s390/s390.opt: Emit a warning for option -mesa. - * doc/invoke.texi: Document the change. - -2025-03-20 Filip Kastl <fkastl@suse.cz> - - * gimple-ssa-sccopy.cc (scc_copy_prop::propagate): Don't - increment after vec::unordered_remove(). - -2025-03-20 Richard Biener <rguenther@suse.de> - - * tree-core.h (function_decl_type): Make a scoped enum. - * tree.h (set_function_decl_type): Adjust. - (DECL_IS_OPERATOR_NEW_P): Likewise. - (DECL_SET_IS_OPERATOR_NEW): Likewise. - (DECL_IS_OPERATOR_DELETE_P): Likewise. - (DECL_SET_IS_OPERATOR_DELETE): Likewise. - (DECL_LAMBDA_FUNCTION_P): Likewise. - (DECL_SET_LAMBDA_FUNCTION): Likewise. - * lto-streamer-out.cc (hash_tree): Hash all of - FUNCTION_DECL_DECL_TYPE. - * tree-streamer-out.cc (pack_ts_function_decl_value_fields): - Adjust. - * config/aarch64/aarch64-simd-pragma-builtins.def (vcombine_mf8): - Use literal zero instead of NONE. - -2025-03-20 liuhongt <hongtao.liu@intel.com> - - PR target/117452 - * config/i386/i386.md (cbranchbf4): Use - ix86_fp_comparison_operator instead of comparison_operator. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2-512satcvtintrin.h: Add "s_" before - intrinsics' core name. - * config/i386/avx10_2satcvtintrin.h: Ditto. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2-512satcvtintrin.h: Add new intrinsics. - * config/i386/avx10_2satcvtintrin.h: Ditto. - * config/i386/i386-builtin-types.def: - Add DEF_FUNCTION_TYPE (V32HI, V32HF, V32HI, USI), - (V16SI, V16SF, V16SI, UHI), (V8DI, V8SF, V8DI, UQI), - (V8DI, V8DF, V8DI, UQI), (V8SI, V8DF, V8SI, UQI). - * config/i386/i386-builtin.def: Add new builtins. - * config/i386/i386-expand.cc: Handle V16SI_FTYPE_V16SF_V16SI_UHI, - V32HI_FTYPE_V32HF_V32HI_USI, V8DI_FTYPE_V8SF_V8DI_UQI, - V8DI_FTYPE_V8DF_V8DI_UQI, V8SI_FTYPE_V8DF_V8SI_UQI. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * config/i386/avx10_2-512satcvtintrin.h: Change *i[u]bs's type suffix - of intrin name. - * config/i386/avx10_2satcvtintrin.h: Ditto. - -2025-03-19 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/119270 - * ira-costs.cc (calculate_equiv_gains): Ignore equiv init insns - only for invariants. - -2025-03-19 David Malcolm <dmalcolm@redhat.com> - - PR c/119366 - * diagnostic-format-sarif.cc (test_message_with_embedded_link): - Convert diagnostic_context from one urlifier to a stack of - urlifiers, where each node in the stack tracks whether the - urlifier is owned or borrowed. - * diagnostic.cc (diagnostic_context::initialize): Likewise. - (diagnostic_context::finish): Likewise. - (diagnostic_context::set_urlifier): Delete. - (diagnostic_context::push_owned_urlifier): New. - (diagnostic_context::push_borrowed_urlifier): New. - (diagnostic_context::pop_urlifier): New. - (diagnostic_context::get_urlifier): Reimplement in terms of stack. - (diagnostic_context::override_urlifier): Delete. - * diagnostic.h (diagnostic_context::set_urlifier): Delete decl. - (diagnostic_context::override_urlifier): Delete decl. - (diagnostic_context::push_owned_urlifier): New decl. - (diagnostic_context::push_borrowed_urlifier): New decl. - (diagnostic_context::pop_urlifier): New decl. - (diagnostic_context::get_urlifier): Make return value const; hide - implementation. - (diagnostic_context::m_urlifier): Replace with... - (diagnostic_context::urlifier_stack_node): ... this and... - (diagnostic_context::m_urlifier_stack): ...this. - * gcc-urlifier.cc - (auto_override_urlifier::auto_override_urlifier): Reimplement. - (auto_override_urlifier::~auto_override_urlifier): Reimplement. - * gcc-urlifier.h (class auto_override_urlifier): Reimplement. - (auto_urlify_attributes::auto_urlify_attributes): Update for - pass-by-reference. - * gcc.cc (driver::global_initializations): Update for - reimplementation of urlifiers in terms of a stack. - * toplev.cc (general_init): Likewise. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - PR target/119357 - * config/i386/sse.md (pmovmskb 0xffff to ptest splitter, - *pmovsk_ptest_<mode>_avx512): Force operands[0] into a REG. - -2025-03-19 Kyrylo Tkachov <ktkachov@nvidia.com> - - * config/aarch64/aarch64-arches.def (...): Add SVE2p1. - * doc/invoke.texi (AArch64 Options): Document +sve2p1 in - -march=armv9.4-a. - -2025-03-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch.h (ADDITIONAL_REGISTER_NAMES): Add - fa0-fa7, ft0-ft16, and fs0-fs7. - -2025-03-18 Georg-Johann Lay <avr@gjlay.de> - - PR target/119355 - * config/avr/avr-passes.cc (memento_t::apply): Only - read values[p.arg] when it is actually used. - -2025-03-18 Iain Sandoe <iain@sandoe.co.uk> - - PR cobol/119301 - * config.in: Regenerate. - * configure: Regenerate. - * configure.ac: Add check for get_current_dir_name. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR c/116545 - * doc/extend.texi (musttail statement attribute): Document - that musttail GNU attribute can be used as well. - -2025-03-18 Michael Matz <matz@suse.de> - - * config/rs6000/rs6000.opt.urls: Regenerate. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - * doc/sourcebuild.texi (dg-output-file): Document. - -2025-03-18 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-ssa-sccopy.cc (scc_copy_prop::replace_scc_by_value): Dump - what is being replaced with what. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119307 - * lra.cc (lra_rtx_hash): Handle SUBREG. - -2025-03-18 Richard Biener <rguenther@suse.de> - - PR debug/101533 - * dwarf2out.cc (gen_type_die_with_usage): When we have - output the typedef already do nothing for a typedef variant. - Do not set TREE_ASM_WRITTEN on the type. - -2025-03-18 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/riscv.md (equality shifted-arith splitter): Do not - create op AND -1 as it won't be cleaned up post-reload. - -2025-03-18 Andrew Pinski <quic_apinski@quicinc.com> - - * configure: Regenerate. - * configure.ac: s/gcc_cv_ld64_macosx_version_min/gcc_cv_ld64_macos_version_min/. - -2025-03-17 Jeff Law <jlaw@ventanamicro.com> - - * config/riscv/bitmanip.md (*<or_optab>i<mode>_extrabit): Reject cases - where we only need to twiddle one bit. Fix formatting. - (*andi<mode>extrabit): Likewise. - -2025-03-17 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/119285 - * ira-costs.cc (equiv_can_be_consumed_p): Use 2 ways for - recognizing a valid insn after equiv insertion. - -2025-03-17 Michael Matz <matz@suse.de> - - PR target/112980 - * config/rs6000/rs6000.opt (msplit-patch-nops): New option. - * doc/invoke.texi (RS/6000 and PowerPC Options): Document it. - * config/rs6000/rs6000.h (machine_function.stop_patch_area_print): - New member. - * config/rs6000/rs6000.cc (rs6000_print_patchable_function_entry): - Emit split nops under control of that one. - * config/rs6000/rs6000-logue.cc (rs6000_output_function_prologue): - Add handling of split patch nops. - -2025-03-17 Michal Jires <mjires@suse.cz> - - * common.opt.urls: Regenerate. - -2025-03-17 Michal Jires <mjires@suse.cz> - - * doc/invoke.texi: (Optimize Options): - Add incremental LTO flags. - -2025-03-17 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119114 - * config/riscv/autovec.md: Apply & 0x1 mask when initializing - bitmask vector. - -2025-03-17 Ayan Shafqat <ayan.x.shafqat@gmail.com> - - * config/aarch64/arm_acle.h (__fma, __fmaf): New functions. - -2025-03-17 Richard Biener <rguenther@suse.de> - - * opts.cc (gen_producer_string): Record -D and -U - with _FORTIFY_SOURCE prefix. - -2025-03-16 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * config/riscv/riscv.md (reassociation splitters): Do not load the - adjusted addend into a register if it fits in a simm12. - -2025-03-16 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/113546 - * tree-cfg.cc (first_non_label_stmt): Rename to ... - (first_non_label_nondebug_stmt): This and use gsi_start_nondebug_after_labels_bb. - (assign_discriminators): Update call to first_non_label_nondebug_stmt. - -2025-03-16 Iain Sandoe <iain@sandoe.co.uk> - - Backported from master: - 2025-03-16 Iain Sandoe <iain@sandoe.co.uk> - - PR target/119172 - * config.in: Regenerate. - * config/darwin.h (DARWIN_PLATFORM_ID): Add the option to - use -macos_version_min where available. - * configure: Regenerate. - * configure.ac: Check for ld64 support of -macos_version_min. - -2025-03-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/116572 - * cgraph.cc (cgraph_update_edges_for_call_stmt): Do not update - edges of clones that are unexpanded thunk. Assert that the node - passed as the parameter is not an unexpanded thunk. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119287 - * match.pd (((X >> C1) & C2) * (1 << C1) to X & (C2 << C1)): Use - (convert @0) instead of @0 in the substitution. - -2025-03-14 Thomas Schwinge <thomas@codesourcery.com> - - PR target/92713 - PR target/101544 - * config/gcn/gcn.h (LIBSTDCXX): Don't set. - * config/nvptx/nvptx.h (LIBSTDCXX): Likewise. - -2025-03-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119274 - * tree-ssa-sccvn.cc (dominated_by_p_w_unex): Handle the - top block being the only executable forwarder to a CFG - merge. - -2025-03-14 Richard Sandiford <richard.sandiford@arm.com> - - * tree-vect-slp.cc (vect_build_slp_instance): Pass the new group - size (i) rather than 1 to vect_slp_prefer_store_lanes_p. - (vect_analyze_slp): Only force the use of load-lanes and - store-lanes if that is preferred for at least one load/store pair. - -2025-03-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119155 - * tree-vect-stmts.cc (vectorizable_store): Do not always - use vector element alignment for VMAT_STRIDED_SLP but - a more correct alignment towards both ends. - (vectorizable_load): Likewise. - -2025-03-14 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi (Alternate Keywords): Clean up text and remove - discussion of "restrict", which is not a GNU extension at all. - * doc/invoke.texi (C Dialect Options): Remove detailed discussion. - -2025-03-13 Jan Hubicka <hubicka@ucw.cz> - - PR ipa/119147 - * ipa-inline.cc: Include ipa-modref-tree.h and - ipa-modref.h. - (speculation_useful_p): If target is a clone, speculation is usef; - fix mixup of caller and callee; speculate also calls not considered - hot; consider modref summary also possibly useful for optimization. - * ipa-profile.cc (ipa_profile): Keep non-hot speculations. - -2025-03-13 Richard Biener <rguenther@suse.de> - - * tree.h (DECL_NOT_GIMPLE_REG_P): Update description. - -2025-03-13 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * common/config/aarch64/cpuinfo.h: Remove FEAT_PREDRES and FEAT_LS64*. - * config/aarch64/aarch64-option-extensions.def: Remove FMV support - for PREDRES. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - * match.pd: Extend pointer alignment folds so that they handle - the case where a constant is added before or after the alignment. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - * match.pd: Fold ((X >> C1) & C2) * (1 << C1) to X & (C2 << C1). - -2025-03-13 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119115 - * config/riscv/riscv-vsetvl.cc (reg_used): New function. - (reg_single_use_in_avl): Ditto. - (pre_vsetvl::fuse_local_vsetvl_info): Use reg_single_use_in_avl - when checking if vsetvl can be deleted. - -2025-03-13 Robin Dapp <rdapp@ventanamicro.com> - - PR target/117955 - * config/riscv/riscv-vsetvl.cc: Use LMUL/ratio from vsetvl with - larger SEW. - -2025-03-13 Matthias Klose <doko@ubuntu.com> - - * configure.ac: Add option --enable-versioned-jit. - * configure: Regenerate. - * Makefile.in: Move from jit/Make-lang.in, setting value from - configure.ac. - * doc/install.texi: Document option --enable-versioned-jit. - -2025-03-13 Xi Ruoyao <xry111@xry111.site> - - PR target/119238 - * config/loongarch/simd.md (<su>dot_prod<wvec_half><mode>): - Stop using structured binding. - -2025-03-12 Alex Coplan <alex.coplan@arm.com> - - PR rtl-optimization/116564 - * df-problems.cc (df_simulate_defs): For partial defs, mark the - register live (treat it as a RMW operation). - -2025-03-12 Richard Earnshaw <rearnsha@arm.com> - - PR target/115439 - * config/arm/predicates.md (vpr_register_operand): Allow type-punning - subregs. - -2025-03-12 Richard Sandiford <richard.sandiford@arm.com> - - PR target/116901 - * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): Allow - stmt_info to be null. - (aarch64_vector_costs::add_stmt_cost): Call count_ops even if - stmt_info is null. - -2025-03-12 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/116901 - * tree-vect-loop.cc (vectorizable_reduction): Set ncopies to - SLP_TREE_NUMBER_OF_VEC_STMTS for SLP. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - * tree.def (RAW_DATA_CST): Document meaning of NULL RAW_DATA_OWNER. - (CONSTRUCTOR): Document meaning of RAW_DATA_CST used as element - value. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119204 - PR middle-end/119219 - * builtins.cc (fold_builtin_2): Pass type as another argument - to fold_builtin_strspn and fold_builtin_strcspn. - (fold_builtin_strspn): Add type argument, use it instead of - size_type_node. - (fold_builtin_strcspn): Add type argument, use it instead of - TREE_TYPE (expr). - -2025-03-12 Jeff Law <jlaw@ventanamicro.com> - - Revert: - 2025-03-09 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/117467 - * ext-dce.cc (ext_dce_process_uses): When trivially possible advance - the iterator over the destination of a SET. - -2025-03-11 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/119131 - * config/aarch64/aarch64.cc (aarch64_valid_fp_move): Remove check - for !DECIMAL_FLOAT_MODE_P. - (aarch64_float_const_representable_p): Reject decimal floating modes. - * config/aarch64/aarch64.md (mov<mode>): Likewise. - -2025-03-11 Jonathan Wakely <jwakely@redhat.com> - - * doc/extend.texi (Common Variable Attributes): Fix grammar in - final sentence of -ftrivial-auto-var-init description. - -2025-03-11 Juergen Christ <jchrist@linux.ibm.com> - - * config/s390/s390.cc (s390_delegitimize_address): Add missing case. - -2025-03-11 Martin Jambor <mjambor@suse.cz> - - * tree-ssa-alias.cc (ao_compare::compare_ao_refs): Fix a - copy-and-paste error. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - * dwarf2out.cc (gen_compile_unit_die): Use DW_LANG_Cobol85 if - language_string is "GCC COBOL" rather than "Cobol". - -2025-03-11 Richard Biener <rguenther@suse.de> - - PR middle-end/119204 - * builtins.cc (fold_builtin_strcspn): Preserve the original - expression type. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - PR c/119183 - * tree.cc (skip_simple_arithmetic): If first operand of binary - expr is TREE_CONSTANT or TREE_READONLY with no side-effects, call - tree_invariant_p on that operand first instead of on the second. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - PR debug/119190 - * tree-complex.cc (update_complex_assignment, tree_lower_complex): - Perform simple dce on dce_worklist only if optimize. - -2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config.gcc: Fail in case of option --with-mode=esa. - * config/s390/s390.cc (s390_option_override_internal): Default - to z/Architecture mode. - * config/s390/s390.h (DRIVER_SELF_SPECS): Ditto. - * config/s390/s390.opt: Emit a warning for option -mesa. - * doc/invoke.texi: Document the change. - -2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/115835 - * config/s390/s390.cc (s390_insn_cost): Implement. - (TARGET_INSN_COST): Define. - -2025-03-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119166 - * tree-vect-stmts.cc (get_load_store_type): Guard SLP tree - access. - -2025-03-11 James K. Lowden <jklowden@symas.com> - - * doc/contrib.texi: Update for gcobol. - * doc/frontends.texi: Likewise. - * doc/install.texi: Likewise. - * doc/invoke.texi: Likewise. - * doc/sourcebuild.texi: Likewise. - * doc/standards.texi: Likewise. - -2025-03-11 James K. Lowden <jklowden@symas.com> - - * Makefile.in (installdirs): Create man3 directory. - * common.opt (static-libgcobol): New driver option. - * dwarf2out.cc (gen_compile_unit_die): Support Cobol as - source language. - -2025-03-10 Richard Sandiford <richard.sandiford@arm.com> - Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - PR target/115258 - * config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): Use - d.one_vector_p to decide whether op1 should be a copy of op0. - -2025-03-10 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/114991 - * ira-costs.cc (equiv_can_be_consumed_p): Add new argument invariant_p. - Add code for dealing with the invariant. - (calculate_equiv_gains): Don't consider init insns. Pass the new - argument to equiv_can_be_consumed_p. Don't treat invariant as - memory. - -2025-03-10 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/invoke.texi (Instrumentation Options): Fix typo introduced - in commit 313edeeeb607fe32da5633cfb6f91977add446f6. - -2025-03-10 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/115439 - * config/arm/mve.md (vec_vcmp, vec_vcmpu, vcond_mask): Use - vpr_register_operand predicate for MVE_VPRED operands. - -2025-03-10 Xi Ruoyao <xry111@xry111.site> - - PR target/119127 - * config/loongarch/loongarch.cc - (loongarch_reassoc_shift_bitwise): Sign extend mask to mode, - specially handle the case it's extended to -1. - * config/loongarch/loongarch.md - (loongarch_reassoc_shift_bitwise): Update the comment for the - special case. - -2025-03-10 Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * gimple-ssa-warn-access.cc (maybe_warn_nonstring_arg): Look through - multi-dimensional array types, stop at the innermost ARRAY_TYPE. - -2025-03-09 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/117467 - * ext-dce.cc (ext_dce_process_sets): Handle FP destinations better. - -2025-03-09 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/117467 - * ext-dce.cc (ext_dce_process_uses): When trivially possible advance - the iterator over the destination of a SET. - -2025-03-09 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118922 - * tree-ssa-phiopt.cc (value_replacement): Set empty_or_with_defined_p - to false when there is phi nodes for the middle bb. - -2025-03-09 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118457 - * gimplify.cc (modify_call_for_omp_dispatch): New, containing - code split from gimplify_call_expr and modified to emit tree - instead of gimple. Remove the error for falling through to a call - to the base function. - (expand_variant_call_expr): New, split from gimplify_variant_call_expr. - Call modify_call_for_omp_dispatch on calls to - variants in a dispatch construct context. - (gimplify_variant_call_expr): Make it call expand_variant_call_expr - to do the actual work. - (gimplify_call_expr): Remove sorry for calls involving both - dynamic/late selectors and adjust_args/append_args, and adjust - for new interface. Move adjust_args/append_args code to - modify_call_for_omp_dispatch. - (gimplify_omp_dispatch): Add some comments. - -2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi (Basic Asm): Document that AssemblerInstructions - can be an asm constexpr. - (Extended Asm): Move the notes about asm constexprs for - AssemblerTemplate and Clobbers to the corresponding subsections. - Remove the notes for OutputOperands and InputOperands and reword - misleading descriptions of the list item syntax. Note that - constraint strings can be asm constexprs. - (Asm constexprs): Use "title case" for subsection name. Be - explicit about what parts of the asm syntax this applies to and - that the parentheses are required. Correct markup and terminology. - -2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/67301 - * doc/extend.texi (Extended Asm): Clarify that the square brackets - around the asmSymbolicName of operands are a required part of - the syntax. - -2025-03-07 Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * tree.cc (get_attr_nonstring_decl): Look through all ARRAY_REFs, not - just one and handle COMPONENT_REF and MEM_REF after skipping those - rather than only when there wasn't ARRAY_REF. Formatting fix. - -2025-03-07 Kees Cook <kees@kernel.org> - Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * doc/invoke.texi (Wunterminated-string-initialization): Document - the new interaction between this warning and -Wc++-compat and that - initialization of decls with nonstring attribute aren't warned about. - -2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> - - PR sanitizer/56682 - * doc/invoke.texi (Instrumentation Options): Document that -g - is useful with -fsanitize=thread and -fsanitize=address. - Also mention -fno-omit-frame-pointer per the asan wiki. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/117477 - * config/aarch64/aarch64.cc (aarch64_count_saves): New function. - (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) - (aarch64_frame_allocation_cost): Likewise. - (TARGET_CALLEE_SAVE_COST): Define. - (TARGET_FRAME_ALLOCATION_COST): Likewise. - * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): - Replace with... - (ix86_callee_save_cost): ...this new hook. - (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST): Define. - * target.h (spill_cost_type, frame_cost_type): New enums. - * target.def (callee_save_cost, frame_allocation_cost): New hooks. - (ira_callee_saved_register_cost_scale): Delete. - * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. - * doc/tm.texi: Regenerate. - * hard-reg-set.h (hard_reg_set_popcount): New function. - * ira-color.cc (allocated_memory_p): New variable. - (allocated_callee_save_regs): Likewise. - (record_allocation): New function. - (assign_hard_reg): Use targetm.frame_allocation_cost to model - the cost of the first spill or first caller save. Use - targetm.callee_save_cost to model the cost of using new callee-saved - registers. Apply the exit rather than entry frequency to the cost - of restoring a register or deallocating the frame. Update the - new variables above. - (improve_allocation): Use record_allocation. - (color): Initialize allocated_callee_save_regs. - (ira_color): Initialize allocated_memory_p. - * targhooks.h (default_callee_save_cost): Declare. - (default_frame_allocation_cost): Likewise. - * targhooks.cc (default_callee_save_cost): New function. - (default_frame_allocation_cost): Likewise. - -2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> - - PR target/116708 - * doc/invoke.texi (x86 Options): Clarify how -msse4 and -mno-sse4 - interact with other SSE options. - -2025-03-07 Martin Jambor <mjambor@suse.cz> - - PR ipa/118318 - * ipa-cp.cc (adjust_clone_incoming_counts): Add a compatible_p check. - -2025-03-07 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm_neon.h: Try harder to detect if we have - the softfp ABI enabled. - -2025-03-07 Jakub Jelinek <jakub@redhat.com> - - PR c/112960 - PR c/117029 - * doc/extend.texi (Complex): Add I and J suffixes to the list of - complex suffixes, adjust for all of those being part of ISO C2Y, - clarify that for -fno-ext-numeric-literals none of those are - recognized as GNU extensions and for C++14 i is considered UDL - even for -fext-numeric-literals when <complex> is included. - -2025-03-07 Simon Martin <simon@nasilyan.com> - - * tree-vect-data-refs.cc: Define INCLUDE_ALGORITHM. - -2025-03-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118464 - PR tree-optimization/116855 - * doc/invoke.texi (min-pagesize): Update docs with vectorizer use. - * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): Delay - checks. - (vect_compute_data_ref_alignment): Remove alignment checks and move to - get_load_store_type, increase group access alignment. - (vect_enhance_data_refs_alignment): Add note to comment needing - investigating. - (vect_analyze_data_refs_alignment): Likewise. - (vect_supportable_dr_alignment): For group loads look at first DR. - * tree-vect-stmts.cc (get_load_store_type): - Perform safety checks for early break pfa. - * tree-vectorizer.h (dr_set_safe_speculative_read_required, - dr_safe_speculative_read_required, DR_SCALAR_KNOWN_BOUNDS): New. - (need_peeling_for_alignment): Renamed to... - (safe_speculative_read_required): .. This - (class dr_vec_info): Add scalar_access_known_in_bounds. - -2025-03-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118464 - PR tree-optimization/116855 - * config/aarch64/aarch64-sve.md (@extract_<last_op>_<mode>, - @fold_extract_<last_op>_<mode>, - @aarch64_fold_extract_vector_<last_op>_<mode>): Change SVE_FULL to - SVE_ALL. - * config/aarch64/iterators.md (vccore): Add more partial types. - -2025-03-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119145 - * tree-vectorizer.cc (try_vectorize_loop_1): Avoid BB - vectorizing an if-converted loop body when there's a .MASK_CALL - in the loop body. - -2025-03-07 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/115485 - * config/arm/arm.cc (require_pic_register): Fix typos in - comment. Handle fixed arm_pic_register. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/116125 - * tree-vect-data-refs.cc (vect_prune_runtime_alias_test_list): Make - the dr_with_seg_len alignment fields describe tha access sizes as - well as the pointer alignment. - * tree-data-ref.cc (create_intersect_range_checks): Don't compensate - for invalid alignment fields here. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - - PR target/119133 - * config/aarch64/aarch64.md - (*aarch64_bfi<GPI:mode><ALLX:mode>_<SUBDI_BITS>): Use - force_lowpart_subreg. - -2025-03-07 Richard Biener <rguenther@suse.de> - - PR middle-end/118801 - * tree-ssa-dce.cc (eliminate_unnecessary_stmts): Prune - sequences of uninterrupted DEBUG BEGIN_STMTs, keeping only - the last of a set with unique location. - -2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/113515 - * doc/invoke.texi (Warning Options): Improve -Wstringop-overflow - documentation. - -2025-03-07 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/avx10_2-512convertintrin.h - (_mm512_mask_cvtbf8_ph): Correct mask width. - (_mm512_maskz_cvtbf8_ph): Ditto. - * config/i386/avx10_2convertintrin.h - (_mm256_mask_cvtbf8_ph): Ditto. - (_mm256_maskz_cvtbf8_ph): Ditto. - -2025-03-06 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> - - PR rtl-optimization/119099 - * ext-dce.cc (ext_dce_rd_transfer_n): Do not allow the livein - set to shrink. - -2025-03-06 Simon Martin <simon@nasilyan.com> - - * config/i386/x86-tune-sched.cc (ix86_fuse_mov_alu_p): Fix - comment typo, paramter -> parameter. - * config/lm32/lm32.cc (lm32_std_gimplify_va_arg_expr): Likewise. - -2025-03-06 Wilco Dijkstra <wilco.dijkstra@arm.com> - - PR target/118351 - PR other/38768 - * common/config/aarch64/aarch64-common.cc: Enable early scheduling with - -O3 and higher. - * doc/invoke.texi (-fschedule-insns): Update comment. - -2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - - Revert: - 2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - - PR rtl-optimization/117477 - * config/aarch64/aarch64.cc (aarch64_count_saves): New function. - (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) - (aarch64_frame_allocation_cost): Likewise. - (TARGET_CALLEE_SAVE_COST): Define. - (TARGET_FRAME_ALLOCATION_COST): Likewise. - * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): - Replace with... - (ix86_callee_save_cost): ...this new hook. - (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST): Define. - * target.h (spill_cost_type, frame_cost_type): New enums. - * target.def (callee_save_cost, frame_allocation_cost): New hooks. - (ira_callee_saved_register_cost_scale): Delete. - * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. - * doc/tm.texi: Regenerate. - * hard-reg-set.h (hard_reg_set_popcount): New function. - * ira-color.cc (allocated_memory_p): New variable. - (allocated_callee_save_regs): Likewise. - (record_allocation): New function. - (assign_hard_reg): Use targetm.frame_allocation_cost to model - the cost of the first spill or first caller save. Use - targetm.callee_save_cost to model the cost of using new callee-saved - registers. Apply the exit rather than entry frequency to the cost - of restoring a register or deallocating the frame. Update the - new variables above. - (improve_allocation): Use record_allocation. - (color): Initialize allocated_callee_save_regs. - (ira_color): Initialize allocated_memory_p. - * targhooks.h (default_callee_save_cost): Declare. - (default_frame_allocation_cost): Likewise. - * targhooks.cc (default_callee_save_cost): New function. - (default_frame_allocation_cost): Likewise. - -2025-03-06 Richard Biener <rguenther@suse.de> - - PR lto/114501 - * ipa-free-lang-data.cc (find_decls_types_r): Explicitly - handle CONSTRUCTORs as walk_tree handling of those is - incomplete. - -2025-03-06 Alex Coplan <alex.coplan@arm.com> - - PR rtl-optimization/114492 - * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Check for singleton - move range before calling restrict_movement. - (pair_fusion::try_promote_writeback): Likewise. - -2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - - PR rtl-optimization/117477 - * config/aarch64/aarch64.cc (aarch64_count_saves): New function. - (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) - (aarch64_frame_allocation_cost): Likewise. - (TARGET_CALLEE_SAVE_COST): Define. - (TARGET_FRAME_ALLOCATION_COST): Likewise. - * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): - Replace with... - (ix86_callee_save_cost): ...this new hook. - (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST): Define. - * target.h (spill_cost_type, frame_cost_type): New enums. - * target.def (callee_save_cost, frame_allocation_cost): New hooks. - (ira_callee_saved_register_cost_scale): Delete. - * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. - (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. - * doc/tm.texi: Regenerate. - * hard-reg-set.h (hard_reg_set_popcount): New function. - * ira-color.cc (allocated_memory_p): New variable. - (allocated_callee_save_regs): Likewise. - (record_allocation): New function. - (assign_hard_reg): Use targetm.frame_allocation_cost to model - the cost of the first spill or first caller save. Use - targetm.callee_save_cost to model the cost of using new callee-saved - registers. Apply the exit rather than entry frequency to the cost - of restoring a register or deallocating the frame. Update the - new variables above. - (improve_allocation): Use record_allocation. - (color): Initialize allocated_callee_save_regs. - (ira_color): Initialize allocated_memory_p. - * targhooks.h (default_callee_save_cost): Declare. - (default_frame_allocation_cost): Likewise. - * targhooks.cc (default_callee_save_cost): New function. - (default_frame_allocation_cost): Likewise. - -2025-03-06 Richard Biener <rguenther@suse.de> - - PR middle-end/119119 - * gimplify.cc (is_gimple_mem_rhs_or_call): All empty CTORs - are OK when not a register type. - -2025-03-05 Hannes Braun <hannes@hannesbraun.net> - - PR target/118942 - * config/arm/arm_neon.h (vld1q_s8_x3): Use int8_t instead of - uint16_t. - (vld1q_s16_x3): Use int16_t instead of uint16_t. - (vld1q_s8_x4): Likewise. - (vld1q_s16_x4): Likewise. - -2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR rtl-optimization/119046 - * config/aarch64/aarch64.cc (aarch64_evpc_dup): Use VOIDmode for - PARALLEL. - -2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR rtl-optimization/119046 - * rtlanal.cc (may_trap_p_1): Don't mark FP-mode PARALLELs as trapping. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118953 - * value-range.cc (irange::union_bitmask): Update m_bitmask if - get_bitmask () is unknown_p and m_bitmask is not even when the - semantic bitmask didn't change and returning false. - -2025-03-05 Richard Biener <rguenther@suse.de> - - PR middle-end/97323 - * tree.cc (gimple_canonical_types_compatible_p): Ignore - TYPE_MODE also for ARRAY_TYPE. - (verify_type): Likewise. - -2025-03-05 Xi Ruoyao <xry111@xry111.site> - - PR target/119084 - * config/loongarch/lasx.md (UNSPEC_LASX_XVLDX): Remove. - (lasx_xvldx): Remove. - * config/loongarch/lsx.md (UNSPEC_LSX_VLDX): Remove. - (lsx_vldx): Remove. - * config/loongarch/simd.md (QIVEC): New define_mode_iterator. - (<simd_isa>_<x>vldx): New define_expand. - * config/loongarch/loongarch.cc (loongarch_address_insns_1): New - static function with most logic factored out from ... - (loongarch_address_insns): ... here. Call - loongarch_address_insns_1 with reg_reg_cost = 1. - (loongarch_address_cost): Call loongarch_address_insns_1 with - reg_reg_cost = la_addr_reg_reg_cost. - -2025-03-04 Georg-Johann Lay <avr@gjlay.de> - - * doc/invoke.texi (AVR Optimization Options): New @subsubsection - for pure optimization options. - -2025-03-04 Oscar Gustafsson <oscar.gustafsson@gmail.com> - - * doc/extend.texi: Improve example for __builtin_bswap16. - -2025-03-04 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.h (TARGET_AVOID_FALSE_DEP_FOR_TZCNT): New macro. - (TARGET_AVOID_FALSE_DEP_FOR_BLS): New macro. - * config/i386/i386.md (*bmi_blsi_<mode>): Add splitter for false - dependency. - (*bmi_blsi_<mode>_ccno): Add splitter for false dependency. - (*bmi_blsi_<mode>_falsedep): New pattern. - (*bmi_blsmsk_<mode>): Add splitter for false dependency. - (*bmi_blsmsk_<mode>_falsedep): New pattern. - (*bmi_blsr_<mode>): Add splitter for false dependency. - (*bmi_blsr_<mode>_cmp): Add splitter for false dependency - (*bmi_blsr_<mode>_cmp_falsedep): New pattern. - * config/i386/x86-tune.def (X86_TUNE_AVOID_FALSE_DEP_FOR_TZCNT): New tune. - (X86_TUNE_AVOID_FALSE_DEP_FOR_BLS): New tune. - -2025-03-04 Jan Hubicka <hubicka@ucw.cz> - - * config/i386/i386.h (TARGET_FUSE_ALU_AND_BRANCH_MEM): New macro. - (TARGET_FUSE_ALU_AND_BRANCH_MEM_IMM): New macro. - (TARGET_FUSE_ALU_AND_BRANCH_RIP_RELATIVE): New macro. - * config/i386/x86-tune-sched.cc (ix86_fuse_mov_alu_p): Support - non-single-set. - (ix86_macro_fusion_pair_p): Allow ALU which only clobbers; - be more careful about immediates; check TARGET_FUSE_ALU_AND_BRANCH_MEM, - TARGET_FUSE_ALU_AND_BRANCH_MEM_IMM, TARGET_FUSE_ALU_AND_BRANCH_RIP_RELATIVE; - verify that we never use unsigned checks with inc/dec. - * config/i386/x86-tune.def (X86_TUNE_FUSE_ALU_AND_BRANCH): New tune. - (X86_TUNE_FUSE_ALU_AND_BRANCH_MEM): New tune. - (X86_TUNE_FUSE_ALU_AND_BRANCH_MEM_IMM): New tune. - (X86_TUNE_FUSE_ALU_AND_BRANCH_RIP_RELATIVE): New tune. - -2025-03-04 Tamar Christina <tamar.christina@arm.com> - - PR target/118892 - * config/aarch64/aarch64.md (copysign<GPF:mode>3): Use - force_lowpart_subreg instead of lowpart_subreg. - -2025-03-04 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118976 - * fold-const.cc (const_unop): Use ~ rather than - for BIT_NOT_EXPR. - * config/aarch64/aarch64.cc (aarch64_test_sve_folding): New function. - (aarch64_run_selftests): Run it. - -2025-03-04 Richard Sandiford <richard.sandiford@arm.com> - Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119002 - * simplify-rtx.cc - (simplify_context::simplify_logical_relational_operation): Handle - comparisons between CC values. If there is no evidence that the - CC values are unsigned, restrict the fold to always-true or - always-false results. - -2025-03-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119096 - * tree-vect-loop.cc (vect_transform_reduction): Use the - correct else value for .COND_fn. - -2025-03-03 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (struct aarch64_extension_info): Add field. - (aarch64_get_required_features): New. - * config/aarch64/aarch64-builtins.cc - (aarch64_simd_switcher::aarch64_simd_switcher): Rename to... - (aarch64_target_switcher::aarch64_target_switcher): ...this, - and extend to handle sve, nosimd and target pragmas. - (aarch64_simd_switcher::~aarch64_simd_switcher): Rename to... - (aarch64_target_switcher::~aarch64_target_switcher): ...this, - and extend to handle sve, nosimd and target pragmas. - (handle_arm_acle_h): Use aarch64_target_switcher. - (handle_arm_neon_h): Rename switcher and pass explicit flags. - (aarch64_general_init_builtins): Ditto. - * config/aarch64/aarch64-protos.h - (class aarch64_simd_switcher): Rename to... - (class aarch64_target_switcher): ...this, and add new members. - (aarch64_get_required_features): New prototype. - * config/aarch64/aarch64-sve-builtins.cc - (sve_switcher::sve_switcher): Delete - (sve_switcher::~sve_switcher): Delete - (sve_alignment_switcher::sve_alignment_switcher): New - (sve_alignment_switcher::~sve_alignment_switcher): New - (register_builtin_types): Use alignment switcher - (init_builtins): Rename switcher. - (handle_arm_neon_sve_bridge_h): Ditto. - (handle_arm_sme_h): Ditto. - (handle_arm_sve_h): Ditto, and use alignment switcher. - * config/aarch64/aarch64-sve-builtins.h - (class sve_switcher): Delete. - (class sme_switcher): Delete. - (class sve_alignment_switcher): New. - * config/aarch64/t-aarch64 (aarch64-builtins.o): Add $(REGS_H). - (aarch64-sve-builtins.o): Remove $(REG_H). - -2025-03-03 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/thumb1.md (split patterns for GEU and LEU): New. - -2025-03-03 Uros Bizjak <ubizjak@gmail.com> - - Revert: - 2025-03-03 Uros Bizjak <ubizjak@gmail.com> - - * combine.cc (distribute_notes): - Reverse negative logic in ternary operators. - -2025-03-03 Uros Bizjak <ubizjak@gmail.com> - - * combine.cc (distribute_notes): - Reverse negative logic in ternary operators. - -2025-03-03 Uros Bizjak <ubizjak@gmail.com> - - PR rtl-optimization/118739 - * combine.cc (distribute_notes) <case REG_UNUSED>: Correct the - logic when the register is used by I3. - -2025-03-03 Martin Jambor <mjambor@suse.cz> - - PR ipa/118785 - * ipa-cp.cc (ipa_vr_intersect_with_arith_jfunc): Handle non-conversion - unary operations separately before doing any conversions. Check - expr_type_first_operand_type_p for non-unary operations too. Fix type - of op_res. - -2025-03-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119057 - * tree-vect-loop.cc (check_reduction_path): Add argument - specifying whether we're analyzing the inner loop of a - double reduction. Do not allow extra uses outside of the - double reduction cycle in this case. - (vect_is_simple_reduction): Adjust. - -2025-03-03 Richard Biener <rguenther@suse.de> - - PR ipa/119067 - * ipa-devirt.cc (odr_types_equivalent_p): Check - TYPE_VECTOR_SUBPARTS for vectors. - -2025-03-02 Jeff Law <jlaw@ventanamicro.com> - - PR target/118934 - * config/riscv/corev.md (cv_branch): Adjust output template. - (branch): Likewise. - * config/riscv/riscv.md (branch): Likewise. - * config/riscv/riscv.cc (riscv_asm_output_opcode): Handle 'r' rather - than 'n'. - -2025-03-02 Jakub Jelinek <jakub@redhat.com> - - PR translation/118991 - * config/avr/avr.cc (avr_print_operand): Print ival into - a temporary buffer and use %s in output_operand_lossage to make - the diagnostics translatable. - -2025-03-02 Filip Kastl <fkastl@suse.cz> - - PR tree-optimization/117919 - * gimple-ssa-sccopy.cc (scc_copy_prop::propagate): Prune - statements that 'replace_uses_by ()' removed. - -2025-03-01 Gerald Pfeifer <gerald@pfeifer.com> - - PR target/69374 - * doc/install.texi (Specific, *-*-freebsd*): Simplify description. - -2025-03-01 Jakub Jelinek <jakub@redhat.com> - - PR jit/117047 - * ggc-common.cc (ggc_internal_cleared_alloc_no_dtor): Pass size - rather than s as the first argument to ggc_internal_cleared_alloc. - -2025-03-01 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> - - PR target/118906 - * common/config/riscv/riscv-common.cc: fix zce to zcf - implication. - -2025-03-01 Jan Dubiec <jdx@o2.pl> - - PR target/114222 - * config/h8300/h8300.cc (h8300_init_libfuncs): For HImode override - calls to external ffs() (from newlib) with calls to __ffshi2() from - libgcc. The implementation of ffs() in newlib calls __builtin_ffs() - what causes infinite recursion and finally a stack overflow. - -2025-03-01 Jakub Jelinek <jakub@redhat.com> - - PR other/119052 - * input.cc (check_line): Don't call sscanf on non-null terminated - buffer, instead copy line.length () bytes from line.get_buffer () - to a local buffer, null terminate it and call sscanf on that. - Formatting fix. - (test_replacement): Just allocate maxline * 5 rather than maxline * 15 - bytes for the file. Formatting fix. - -2025-03-01 Jakub Jelinek <jakub@redhat.com> - - PR jit/117047 - * acinclude.m4 (gcc_CHECK_ATTRIBUTE_ALIAS): New. - * configure.ac: Add gcc_CHECK_ATTRIBUTE_ALIAS. - * ggc.h (ggc_internal_alloc): Remove ATTRIBUTE_MALLOC from - overload with finalizer pointer. Call ggc_internal_alloc_no_dtor - in inline overload without finalizer pointer. - (ggc_internal_alloc_no_dtor): Declare. - (ggc_internal_cleared_alloc): Remove ATTRIBUTE_MALLOC from - overload with finalizer pointer. Call - ggc_internal_cleared_alloc_no_dtor in inline overload without - finalizer pointer. - (ggc_internal_cleared_alloc_no_dtor): Declare. - (ggc_alloc): Call ggc_internal_alloc_no_dtor if no finalization - is needed. - (ggc_alloc_no_dtor): Call ggc_internal_alloc_no_dtor. - (ggc_cleared_alloc): Call ggc_internal_cleared_alloc_no_dtor if no - finalization is needed. - (ggc_vec_alloc): Call ggc_internal_alloc_no_dtor if no finalization - is needed. - (ggc_cleared_vec_alloc): Call ggc_internal_cleared_alloc_no_dtor if no - finalization is needed. - * ggc-page.cc (ggc_internal_alloc): If HAVE_ATTRIBUTE_ALIAS, turn - overload with finalizer into alias to ggc_internal_alloc_ and - rename it to ... - (ggc_internal_alloc_): ... this, make it extern "C". - (ggc_internal_alloc_no_dtor): New alias if HAVE_ATTRIBUTE_ALIAS, - otherwise new noinline wrapper. - * ggc-common.cc (ggc_internal_cleared_alloc): If HAVE_ATTRIBUTE_ALIAS, - turn overload with finalizer into alias to ggc_internal_alloc_ and - rename it to ... - (ggc_internal_cleared_alloc_): ... this, make it extern "C". - (ggc_internal_cleared_alloc_no_dtor): New alias if - HAVE_ATTRIBUTE_ALIAS, otherwise new noinline wrapper. - * ggc-none.cc (ggc_internal_alloc): If HAVE_ATTRIBUTE_ALIAS, turn - overload with finalizer into alias to ggc_internal_alloc_ and - rename it to ... - (ggc_internal_alloc_): ... this, make it extern "C". - (ggc_internal_alloc_no_dtor): New alias if HAVE_ATTRIBUTE_ALIAS, - otherwise new wrapper. - (ggc_internal_cleared_alloc): If HAVE_ATTRIBUTE_ALIAS, turn overload - with finalizer into alias to ggc_internal_alloc_ and rename it to ... - (ggc_internal_cleared_alloc_): ... this, make it extern "C". - (ggc_internal_cleared_alloc_no_dtor): New alias if - HAVE_ATTRIBUTE_ALIAS, otherwise new wrapper. - * genmatch.cc (ggc_internal_cleared_alloc, ggc_free): Formatting fix. - (ggc_internal_cleared_alloc_no_dtor): Define. - * config.in: Regenerate. - * configure: Regenerate. - -2025-03-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/115871 - * omp-simd-clone.cc (simd_clone_adjust): For SIMD_CLONE_ARG_TYPE_MASK - and sc->mask_mode not VOIDmode, set elem_type to the characteristic - type rather than boolean_type_node. - -2025-03-01 Jan Dubiec <jdx@o2.pl> - - PR target/109189 - * config/h8300/h8300.cc (h8300_print_operand): Replace %ld format - strings with HOST_WIDE_INT_PRINT_DEC macro in order to silence - -Wformat warnings when building on Windows/MinGW64. - -2025-02-28 Martin Jambor <mjambor@suse.cz> - - PR ipa/118243 - * ipa-sra.cc (pull_accesses_from_callee): New parameters - caller_ipcp_ts and param_idx. Check that scalar pulled accesses would - not clash with a known IPA-CP aggregate constant. - (param_splitting_across_edge): Pass IPA-CP transformation summary and - caller parameter index to pull_accesses_from_callee. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR ipa/111245 - * ipa-modref.cc (modref_access_analysis::analyze_store): Do - not guard the check of whether the stmt could throw by - cfun->can_throw_non_call_exceptions. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117712 - * expr.cc (force_operand): Handle {,UNSIGNED_}FIX with - FIX operand using expand_fix on the inner FIX operand. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/87984 - * tree-ssa-dom.cc (dom_opt_dom_walker::optimize_stmt): Do - not perform redundant store elimination to hard register - variables. - * tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): - Likewise. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR middle-end/66279 - * gimplify.cc (gimplify_asm_expr): Copy TREE_PURPOSE before - rewriting it for "+" processing. - -2025-02-28 H.J. Lu <hjl.tools@gmail.com> - - * config/i386/i386.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): - Moved to ... - * config/i386/i386.cc (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): - Here. - -2025-02-27 Pan Li <pan2.li@intel.com> - - PR target/118931 - * config/riscv/riscv-v.cc (expand_const_vector): Add overflow to - smode check and clean up highest bits if overflow. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119030 - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Fix a pasto, - ll_unsignedp -> rl_unsignedp. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/118860 - * input.h (file_cache::tune): No longer static. Rename argument - from num_file_slots_ to num_file_slots. Formatting fix. - (file_cache::num_file_slots): Renamed to ... - (file_cache::m_num_file_slots): ... this. No longer static. - * input.cc (file_cache_slot::tune): Change return type from void to - size_t, return previous file_cache_slot::line_record_size value. - Formatting fixes. - (file_cache::tune): Rename argument from num_file_slots_ to - num_file_slots. Set m_num_file_slots rather than num_file_slots. - If m_num_file_slots or file_cache_slot::line_record_size changes, - delete[] m_file_slots and new it again. - (file_cache::num_file_slots): Remove definition. - (file_cache::lookup_file): Use m_num_file_slots rather than - num_file_slots. - (file_cache::evicted_cache_tab_entry): Likewise. - (file_cache::file_cache): Likewise. Initialize m_num_file_slots - to 16. - (file_cache::dump): Use m_num_file_slots rather than num_file_slots. - (file_cache_slot::get_next_line): Formatting fixes. - (file_cache_slot::read_line_num): Likewise. - (get_source_text_between): Likewise. - * toplev.cc (toplev::main): Call global_dc->get_file_cache ().tune - rather than file_cache::tune. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.h (MAX_FIXED_MODE_SIZE): '#define'. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.opt (-mfake-ptx-alloca): New. - * config/nvptx/nvptx-protos.h (nvptx_output_fake_ptx_alloca): - Declare. - * config/nvptx/nvptx.cc (nvptx_output_fake_ptx_alloca): New. - * config/nvptx/nvptx.md (define_insn "@nvptx_alloca_<mode>") - [!(TARGET_PTX_7_3 && TARGET_SM52)]: Use it for - '-mfake-ptx-alloca'. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.md (define_expand "allocate_stack") - [!TARGET_SOFT_STACK]: Move - 'sorry ("dynamic stack allocation not supported");'... - (define_insn "@nvptx_alloca_<mode>"): ... here. - -2025-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/108369 - * doc/invoke.texi: Add a note to clarify. Adjust some wording. - -2025-02-27 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/x86-tune.def - (X86_TUNE_DEST_FALSE_DEP_FOR_GLC): Add GNR, GNR-D, DMR. - (X86_TUNE_AVOID_256FMA_CHAINS): Ditto. - (X86_TUNE_AVX512_MOVE_BY_PIECES): Ditto. - (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - * gimple-range-phi.cc (phi_analyzer::process_phi): Fix comment typo, - dpoesn;t -> doesn't. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/116143 - * Makefile.in (EXTRA_BACKEND_OBJS): New variable. - (BACKEND): Use it before libbackend.a. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/118819 - * alias.cc (memrefs_conflict_p): Perform arithmetics on c, xsize and - ysize in poly_offset_int and return -1 if it is not representable in - poly_int64. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR c/119001 - * varasm.cc (output_constructor_regular_field): Don't fail - assertion if next is non-NULL and FIELD_DECL if - TREE_CODE (local->type) is UNION_TYPE. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR c/114870 - * ginclude/stddef.h (__STDC_VERSION_STDDEF_H__, unreachable): Don't - redefine multiple times if stddef.h is first included without __need_* - defines and later with them. Move nullptr_t and unreachable and - __STDC_VERSION_STDDEF_H__ definitions into the same - defined (__STDC_VERSION__) && __STDC_VERSION__ > 201710L #if block. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119002 - * config/arm/arm.h (REVERSE_CONDITION): Use CODE - the macro - argument - in the macro rather than code. - -2025-02-26 Vladimir N. Makarov <vmakarov@redhat.com> - - PR middle-end/119021 - * lra.cc (lra_asm_insn_error): Use lra_invalidate_insn_data - instead of lra_update_insn_regno_info. - * lra-assigns.cc (lra_split_hard_reg_for): Restore old code. - -2025-02-26 Alexandre Oliva <oliva@adacore.com> - - * doc/sourcebuild.texi: Add x86 effective target. - -2025-02-26 Alexandre Oliva <oliva@adacore.com> - - * doc/sourcebuild.texi (dg-do-if): Document. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/116143 - * simple-diagnostic-path.h (simple_diagnostic_path::num_events): Define - inline. - (simple_diagnostic_path::num_threads): Likewise. - * simple-diagnostic-path.cc (simple_diagnostic_path::num_events): - Remove out of line definition. - (simple_diagnostic_path::num_threads): Likewise. - -2025-02-25 Jason Merrill <jason@redhat.com> - - * doc/install.texi: 10.5 won't bootstrap with C++98. - -2025-02-25 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/115458 - * lra-int.h (LRA_MAX_FAILED_SPLITS): Define and check its value. - (lra_split_hard_reg_for): Change prototype. - * lra.cc (lra): Try to split hard reg range several times after a - failure. - * lra-assigns.cc (lra_split_hard_reg_for): Add an arg, a flag of - giving up. Report asm error and nullify the asm insn depending on - the arg value. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR translation/118991 - * config/pru/pru-pragma.cc (pru_pragma_ctable_entry): Use %wd - instead of %" HOST_WIDE_INT_PRINT "d to print a hwi in error. - -2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118654 - * config/i386/i386-d.cc (ix86_d_target_versions): Predefine GNU_CET. - (ix86_d_handle_target_cf_protection): New. - (ix86_d_register_target_info): Add 'CET' TargetInfo key. - -2025-02-24 Robin Dapp <rdapp@ventanamicro.com> - - PR target/114516 - * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): - Add pattern statements to program points. - -2025-02-24 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/118950 - * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Use - original LHS's type. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118915 - * tree-ssa-reassoc.cc (optimize_range_tests_to_bit_test): For - highj == NULL_TREE use TYPE_MAX_VALUE (TREE_TYPE (lowj)) rather - than TYPE_MAX_VALUE (type). - -2025-02-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118973 - * tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Calls - that alter control flow in unpredictable ways need to be - preserved. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/118993 - * gimplify.cc (gimplify_scan_omp_clauses): Fix diagnostics typo, - undfined -> undefined. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR c/117023 - * builtin-attrs.def (ATTR_NONNULL_IF_NONZERO): New DEF_ATTR_IDENT. - (ATTR_NOTHROW_NONNULL_IF12_LEAF, ATTR_NOTHROW_NONNULL_IF13_LEAF, - ATTR_NOTHROW_NONNULL_IF123_LEAF, ATTR_NOTHROW_NONNULL_IF23_LEAF, - ATTR_NOTHROW_NONNULL_1_IF23_LEAF, ATTR_PURE_NOTHROW_NONNULL_IF12_LEAF, - ATTR_PURE_NOTHROW_NONNULL_IF13_LEAF, - ATTR_PURE_NOTHROW_NONNULL_IF123_LEAF, - ATTR_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF, - ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF): New - DEF_ATTR_TREE_LIST. - * builtins.def (BUILT_IN_STRNDUP): Use - ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF instead of - ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_LEAF. - (BUILT_IN_STRNCAT, BUILT_IN_STRNCAT_CHK): Use - ATTR_NOTHROW_NONNULL_1_IF23_LEAF instead of ATTR_NOTHROW_NONNULL_LEAF. - (BUILT_IN_BCOPY, BUILT_IN_MEMCPY, BUILT_IN_MEMCPY_CHK, - BUILT_IN_MEMMOVE, BUILT_IN_MEMMOVE_CHK, BUILT_IN_STRNCPY, - BUILT_IN_STRNCPY_CHK): Use ATTR_NOTHROW_NONNULL_IF123_LEAF instead of - ATTR_NOTHROW_NONNULL_LEAF. - (BUILT_IN_MEMPCPY, BUILT_IN_MEMPCPY_CHK, BUILT_IN_STPNCPY, - BUILT_IN_STPNCPY_CHK): Use ATTR_NOTHROW_NONNULL_IF123_LEAF instead of - ATTR_RETNONNULL_NOTHROW_LEAF. - (BUILT_IN_BZERO, BUILT_IN_MEMSET, BUILT_IN_MEMSET_CHK): Use - ATTR_NOTHROW_NONNULL_IF13_LEAF instead of ATTR_NOTHROW_NONNULL_LEAF. - (BUILT_IN_BCMP, BUILT_IN_MEMCMP, BUILT_IN_STRNCASECMP, - BUILT_IN_STRNCMP): Use ATTR_PURE_NOTHROW_NONNULL_IF123_LEAF instead of - ATTR_PURE_NOTHROW_NONNULL_LEAF. - (BUILT_IN_STRNLEN): Use ATTR_PURE_NOTHROW_NONNULL_IF12_LEAF instead of - ATTR_PURE_NOTHROW_NONNULL_LEAF. - (BUILT_IN_MEMCHR): Use ATTR_PURE_NOTHROW_NONNULL_IF13_LEAF instead of - ATTR_PURE_NOTHROW_NONNULL_LEAF. - -2025-02-24 Lino Hsing-Yu Peng <linopeng@andestech.com> - - * config/riscv/riscv.cc: Set multi push regs bits. - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * config/bpf/bpf.md (define_expand "allocate_stack"): Emit - 'sorry, unimplemented: dynamic stack allocation not supported'. - * config/nvptx/nvptx.md (define_expand "allocate_stack") - [!TARGET_SOFT_STACK && !(TARGET_PTX_7_3 && TARGET_SM52)]: Likewise. - -2025-02-21 H.J. Lu <hjl.tools@gmail.com> - - * sese.cc (debug_edge): Append a newline. - -2025-02-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118954 - * tree-predcom.cc (ref_at_iteration): Make sure to not - associate the constant offset with DR_BASE_ADDRESS when - that is an offsetted pointer. - -2025-02-20 David Malcolm <dmalcolm@redhat.com> - - * diagnostic-core.h: Add comments making clear that these - functions implicitly use global_dc. - -2025-02-20 David Malcolm <dmalcolm@redhat.com> - - * libsarifreplay.cc - (sarif_replayer::make_plain_text_within_result_message): Capture - which json::string was used. When reporting on unescaped "{" or - "}" in SARIF message strings, use that string rather than the - message object, and refer the user to §3.11.5 ("Messages with - placeholders") rather than §3.11.11 ("arguments"). Ideally we'd - place the error at the precise character, but that can't be done - without reworking json-parsing.cc's lexer::lex_string, which is - too invasive for stage 4. - (sarif_replayer::get_plain_text_from_mfms): Capture which - json::string was used. - (sarif_replayer::lookup_plain_text_within_result_message): - Likewise. - -2025-02-20 Gerald Pfeifer <gerald@pfeifer.com> - - PR target/69374 - * doc/install.texi (Specific, aarch64*-*-*): Drop note for - Binutils pre 2.24. - -2025-02-20 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64-protos.h (aarch64_expand_sve_vec_cmp_float): - Remove can_invert_p argument and change return type to void. - * config/aarch64/aarch64.cc (aarch64_expand_sve_vec_cmp_float): - Likewise. - * config/aarch64/aarch64-sve.md (vec_cmp<mode><vpred>): Update call - accordingly. - -2025-02-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118521 - * tree-scalar-evolution.cc (final_value_replacement_loop): - Fold uses of the replaced PHI def. - -2025-02-20 Filip Kastl <fkastl@suse.cz> - - * doc/invoke.texi: Fix typo file-cache-files -> - file-cache-lines. - -2025-02-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/86270 - * tree-outof-ssa.cc (insert_backedge_copies): Pattern - match a single conflict in a loop condition and adjust - that avoiding the conflict if possible. - -2025-02-20 H.J. Lu <hjl.tools@gmail.com> - - Revert: - 2025-02-16 H.J. Lu <hjl.tools@gmail.com> - - PR target/109780 - PR target/109093 - * config/i386/i386.cc (ix86_update_stack_alignment): New. - (ix86_find_all_reg_use_1): Likewise. - (ix86_find_all_reg_use): Likewise. - (ix86_find_max_used_stack_alignment): Also check memory accesses - from registers defined by stack or frame registers. - -2025-02-20 H.J. Lu <hjl.tools@gmail.com> - - Revert: - 2025-02-17 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.cc (ix86_find_all_reg_use): - Scan only for SET RTX in PARALLEL. - -2025-02-19 David Malcolm <dmalcolm@redhat.com> - - PR other/118919 - * input.cc (file_cache_slot::m_file_path): Make non-const. - (file_cache_slot::evict): Free m_file_path. - (file_cache_slot::create): Store a copy of file_path if non-null. - (file_cache_slot::~file_cache_slot): Free m_file_path. - -2025-02-19 Pan Li <pan2.li@intel.com> - - PR middle-end/116351 - * tree-vect-loop.cc (vect_verify_loop_lens): Return false if the - loop_vinfo has relevant mode such as DImode. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/lasx.md (UNSPEC_LASX_XVSRARI): Remove. - (UNSPEC_LASX_XVSRLRI): Remove. - (lasx_xvsrari_<lsxfmt>): Remove. - (lasx_xvsrlri_<lsxfmt>): Remove. - * config/loongarch/lsx.md (UNSPEC_LSX_VSRARI): Remove. - (UNSPEC_LSX_VSRLRI): Remove. - (lsx_vsrari_<lsxfmt>): Remove. - (lsx_vsrlri_<lsxfmt>): Remove. - * config/loongarch/simd.md (simd_<optab>_imm_round_<mode>): New - define_insn. - (<simd_isa>_<x>v<insn>ri_<simdfmt>): New define_expand. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/simd.md (wvec_half): New define_mode_attr. - (<su>dot_prod<wvec_half><mode>): New define_expand. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/simd.md (even_odd): New define_int_attr. - (vec_widen_<su>mult_<even_odd>_<mode>): New define_expand. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/simd.md (LVEC): New define_mode_attr. - (simdfmt_as_i): Make it same as simdfmt for integer vector - modes. - (_f): New define_mode_attr. - * config/loongarch/lsx.md (lsx_vpickev_b): Remove. - (lsx_vpickev_h): Remove. - (lsx_vpickev_w): Remove. - (lsx_vpickev_w_f): Remove. - (lsx_vpickod_b): Remove. - (lsx_vpickod_h): Remove. - (lsx_vpickod_w): Remove. - (lsx_vpickev_w_f): Remove. - (lsx_pick_evod_<mode>): New define_insn. - (lsx_<x>vpick<ev_od>_<simdfmt_as_i><_f>): New - define_expand. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/lasx.md (UNSPEC_LASX_XVMADDWEV): Remove. - (UNSPEC_LASX_XVMADDWEV2): Remove. - (UNSPEC_LASX_XVMADDWEV3): Remove. - (UNSPEC_LASX_XVMADDWOD): Remove. - (UNSPEC_LASX_XVMADDWOD2): Remove. - (UNSPEC_LASX_XVMADDWOD3): Remove. - (lasx_xvmaddwev_h_b<u>): Remove. - (lasx_xvmaddwev_w_h<u>): Remove. - (lasx_xvmaddwev_d_w<u>): Remove. - (lasx_xvmaddwev_q_d): Remove. - (lasx_xvmaddwod_h_b<u>): Remove. - (lasx_xvmaddwod_w_h<u>): Remove. - (lasx_xvmaddwod_d_w<u>): Remove. - (lasx_xvmaddwod_q_d): Remove. - (lasx_xvmaddwev_q_du): Remove. - (lasx_xvmaddwod_q_du): Remove. - (lasx_xvmaddwev_h_bu_b): Remove. - (lasx_xvmaddwev_w_hu_h): Remove. - (lasx_xvmaddwev_d_wu_w): Remove. - (lasx_xvmaddwev_q_du_d): Remove. - (lasx_xvmaddwod_h_bu_b): Remove. - (lasx_xvmaddwod_w_hu_h): Remove. - (lasx_xvmaddwod_d_wu_w): Remove. - (lasx_xvmaddwod_q_du_d): Remove. - * config/loongarch/lsx.md (UNSPEC_LSX_VMADDWEV): Remove. - (UNSPEC_LSX_VMADDWEV2): Remove. - (UNSPEC_LSX_VMADDWEV3): Remove. - (UNSPEC_LSX_VMADDWOD): Remove. - (UNSPEC_LSX_VMADDWOD2): Remove. - (UNSPEC_LSX_VMADDWOD3): Remove. - (lsx_vmaddwev_h_b<u>): Remove. - (lsx_vmaddwev_w_h<u>): Remove. - (lsx_vmaddwev_d_w<u>): Remove. - (lsx_vmaddwev_q_d): Remove. - (lsx_vmaddwod_h_b<u>): Remove. - (lsx_vmaddwod_w_h<u>): Remove. - (lsx_vmaddwod_d_w<u>): Remove. - (lsx_vmaddwod_q_d): Remove. - (lsx_vmaddwev_q_du): Remove. - (lsx_vmaddwod_q_du): Remove. - (lsx_vmaddwev_h_bu_b): Remove. - (lsx_vmaddwev_w_hu_h): Remove. - (lsx_vmaddwev_d_wu_w): Remove. - (lsx_vmaddwev_q_du_d): Remove. - (lsx_vmaddwod_h_bu_b): Remove. - (lsx_vmaddwod_w_hu_h): Remove. - (lsx_vmaddwod_d_wu_w): Remove. - (lsx_vmaddwod_q_du_d): Remove. - * config/loongarch/simd.md (simd_maddw_evod_<mode>_<su>): - New define_insn. - (<simd_isa>_<x>vmaddw<ev_od>_<simdfmt_w>_<simdfmt><u>): New - define_expand. - (simd_maddw_evod_<mode>_hetero): New define_insn. - (<simd_isa>_<x>vmaddw<ev_od>_<simdfmt_w>_<simdfmt>u_<simdfmt>): - New define_expand. - (<simd_isa>_maddw<ev_od>_q_d<u>_punned): New define_expand. - (<simd_isa>_maddw<ev_od>_q_du_d_punned): New define_expand. - * config/loongarch/loongarch-builtins.cc - (CODE_FOR_lsx_vmaddwev_q_d): Define as a macro to override it - with the punned expand. - (CODE_FOR_lsx_vmaddwev_q_du): Likewise. - (CODE_FOR_lsx_vmaddwev_q_du_d): Likewise. - (CODE_FOR_lsx_vmaddwod_q_d): Likewise. - (CODE_FOR_lsx_vmaddwod_q_du): Likewise. - (CODE_FOR_lsx_vmaddwod_q_du_d): Likewise. - (CODE_FOR_lasx_xvmaddwev_q_d): Likewise. - (CODE_FOR_lasx_xvmaddwev_q_du): Likewise. - (CODE_FOR_lasx_xvmaddwev_q_du_d): Likewise. - (CODE_FOR_lasx_xvmaddwod_q_d): Likewise. - (CODE_FOR_lasx_xvmaddwod_q_du): Likewise. - (CODE_FOR_lasx_xvmaddwod_q_du_d): Likewise. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/lasx.md (UNSPEC_LASX_XVHADDW_Q_D): Remove. - (UNSPEC_LASX_XVHSUBW_Q_D): Remove. - (UNSPEC_LASX_XVHADDW_QU_DU): Remove. - (UNSPEC_LASX_XVHSUBW_QU_DU): Remove. - (lasx_xvh<addsub:optab>w_h<u>_b<u>): Remove. - (lasx_xvh<addsub:optab>w_w<u>_h<u>): Remove. - (lasx_xvh<addsub:optab>w_d<u>_w<u>): Remove. - (lasx_xvhaddw_q_d): Remove. - (lasx_xvhsubw_q_d): Remove. - (lasx_xvhaddw_qu_du): Remove. - (lasx_xvhsubw_qu_du): Remove. - (reduc_plus_scal_v4di): Call gen_lasx_haddw_q_d_punned instead - of gen_lasx_xvhaddw_q_d. - (reduc_plus_scal_v8si): Likewise. - * config/loongarch/lsx.md (UNSPEC_LSX_VHADDW_Q_D): Remove. - (UNSPEC_ASX_VHSUBW_Q_D): Remove. - (UNSPEC_ASX_VHADDW_QU_DU): Remove. - (UNSPEC_ASX_VHSUBW_QU_DU): Remove. - (lsx_vh<addsub:optab>w_h<u>_b<u>): Remove. - (lsx_vh<addsub:optab>w_w<u>_h<u>): Remove. - (lsx_vh<addsub:optab>w_d<u>_w<u>): Remove. - (lsx_vhaddw_q_d): Remove. - (lsx_vhsubw_q_d): Remove. - (lsx_vhaddw_qu_du): Remove. - (lsx_vhsubw_qu_du): Remove. - (reduc_plus_scal_v2di): Change the temporary register mode to - V1TI, and pun the mode calling gen_vec_extractv2didi. - (reduc_plus_scal_v4si): Change the temporary register mode to - V1TI. - * config/loongarch/simd.md (simd_h<optab>w_<mode>_<su>): New - define_insn. - (<simd_isa>_<x>vh<optab>w_<simdfmt_w><u>_<simdfmt><u>): New - define_expand. - (<simd_isa>_h<optab>w_q<u>_d<u>_punned): New define_expand. - * config/loongarch/loongarch-builtins.cc - (CODE_FOR_lsx_vhaddw_q_d): Define as a macro to override with - punned expand. - (CODE_FOR_lsx_vhaddw_qu_du): Likewise. - (CODE_FOR_lsx_vhsubw_q_d): Likewise. - (CODE_FOR_lsx_vhsubw_qu_du): Likewise. - (CODE_FOR_lasx_xvhaddw_q_d): Likewise. - (CODE_FOR_lasx_xvhaddw_qu_du): Likewise. - (CODE_FOR_lasx_xvhsubw_q_d): Likewise. - (CODE_FOR_lasx_xvhsubw_qu_du): Likewise. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/lasx.md (UNSPEC_LASX_XVADDWEV): Remove. - (UNSPEC_LASX_XVADDWEV2): Remove. - (UNSPEC_LASX_XVADDWEV3): Remove. - (UNSPEC_LASX_XVSUBWEV): Remove. - (UNSPEC_LASX_XVSUBWEV2): Remove. - (UNSPEC_LASX_XVMULWEV): Remove. - (UNSPEC_LASX_XVMULWEV2): Remove. - (UNSPEC_LASX_XVMULWEV3): Remove. - (UNSPEC_LASX_XVADDWOD): Remove. - (UNSPEC_LASX_XVADDWOD2): Remove. - (UNSPEC_LASX_XVADDWOD3): Remove. - (UNSPEC_LASX_XVSUBWOD): Remove. - (UNSPEC_LASX_XVSUBWOD2): Remove. - (UNSPEC_LASX_XVMULWOD): Remove. - (UNSPEC_LASX_XVMULWOD2): Remove. - (UNSPEC_LASX_XVMULWOD3): Remove. - (lasx_xv<addsubmul:optab>wev_h_b<u>): Remove. - (lasx_xv<addsubmul:optab>wev_w_h<u>): Remove. - (lasx_xv<addsubmul:optab>wev_d_w<u>): Remove. - (lasx_xvaddwev_q_d): Remove. - (lasx_xvsubwev_q_d): Remove. - (lasx_xvmulwev_q_d): Remove. - (lasx_xv<addsubmul:optab>wod_h_b<u>): Remove. - (lasx_xv<addsubmul:optab>wod_w_h<u>): Remove. - (lasx_xv<addsubmul:optab>wod_d_w<u>): Remove. - (lasx_xvaddwod_q_d): Remove. - (lasx_xvsubwod_q_d): Remove. - (lasx_xvmulwod_q_d): Remove. - (lasx_xvaddwev_q_du): Remove. - (lasx_xvsubwev_q_du): Remove. - (lasx_xvmulwev_q_du): Remove. - (lasx_xvaddwod_q_du): Remove. - (lasx_xvsubwod_q_du): Remove. - (lasx_xvmulwod_q_du): Remove. - (lasx_xv<addmul:optab>wev_h_bu_b): Remove. - (lasx_xv<addmul:optab>wev_w_hu_h): Remove. - (lasx_xv<addmul:optab>wev_d_wu_w): Remove. - (lasx_xv<addmul:optab>wod_h_bu_b): Remove. - (lasx_xv<addmul:optab>wod_w_hu_h): Remove. - (lasx_xv<addmul:optab>wod_d_wu_w): Remove. - (lasx_xvaddwev_q_du_d): Remove. - (lasx_xvsubwev_q_du_d): Remove. - (lasx_xvmulwev_q_du_d): Remove. - (lasx_xvaddwod_q_du_d): Remove. - (lasx_xvsubwod_q_du_d): Remove. - * config/loongarch/lsx.md (UNSPEC_LSX_XVADDWEV): Remove. - (UNSPEC_LSX_VADDWEV2): Remove. - (UNSPEC_LSX_VADDWEV3): Remove. - (UNSPEC_LSX_VSUBWEV): Remove. - (UNSPEC_LSX_VSUBWEV2): Remove. - (UNSPEC_LSX_VMULWEV): Remove. - (UNSPEC_LSX_VMULWEV2): Remove. - (UNSPEC_LSX_VMULWEV3): Remove. - (UNSPEC_LSX_VADDWOD): Remove. - (UNSPEC_LSX_VADDWOD2): Remove. - (UNSPEC_LSX_VADDWOD3): Remove. - (UNSPEC_LSX_VSUBWOD): Remove. - (UNSPEC_LSX_VSUBWOD2): Remove. - (UNSPEC_LSX_VMULWOD): Remove. - (UNSPEC_LSX_VMULWOD2): Remove. - (UNSPEC_LSX_VMULWOD3): Remove. - (lsx_v<addsubmul:optab>wev_h_b<u>): Remove. - (lsx_v<addsubmul:optab>wev_w_h<u>): Remove. - (lsx_v<addsubmul:optab>wev_d_w<u>): Remove. - (lsx_vaddwev_q_d): Remove. - (lsx_vsubwev_q_d): Remove. - (lsx_vmulwev_q_d): Remove. - (lsx_v<addsubmul:optab>wod_h_b<u>): Remove. - (lsx_v<addsubmul:optab>wod_w_h<u>): Remove. - (lsx_v<addsubmul:optab>wod_d_w<u>): Remove. - (lsx_vaddwod_q_d): Remove. - (lsx_vsubwod_q_d): Remove. - (lsx_vmulwod_q_d): Remove. - (lsx_vaddwev_q_du): Remove. - (lsx_vsubwev_q_du): Remove. - (lsx_vmulwev_q_du): Remove. - (lsx_vaddwod_q_du): Remove. - (lsx_vsubwod_q_du): Remove. - (lsx_vmulwod_q_du): Remove. - (lsx_v<addmul:optab>wev_h_bu_b): Remove. - (lsx_v<addmul:optab>wev_w_hu_h): Remove. - (lsx_v<addmul:optab>wev_d_wu_w): Remove. - (lsx_v<addmul:optab>wod_h_bu_b): Remove. - (lsx_v<addmul:optab>wod_w_hu_h): Remove. - (lsx_v<addmul:optab>wod_d_wu_w): Remove. - (lsx_vaddwev_q_du_d): Remove. - (lsx_vsubwev_q_du_d): Remove. - (lsx_vmulwev_q_du_d): Remove. - (lsx_vaddwod_q_du_d): Remove. - (lsx_vsubwod_q_du_d): Remove. - (lsx_vmulwod_q_du_d): Remove. - * config/loongarch/loongarch-modes.def: Add V4TI and V1DI. - * config/loongarch/loongarch-protos.h - (loongarch_gen_stepped_int_parallel): New function prototype. - * config/loongarch/loongarch.cc (loongarch_print_operand): - Accept 'O' for printing "ev" or "od." - (loongarch_gen_stepped_int_parallel): Implement. - * config/loongarch/predicates.md - (vect_par_cnst_even_or_odd_half): New define_predicate. - * config/loongarch/simd.md (WVEC_HALF): New define_mode_attr. - (simdfmt_w): Likewise. - (zero_one): New define_int_iterator. - (ev_od): New define_int_attr. - (simd_<optab>w_evod_<mode:IVEC>_<su>): New define_insn. - (<simd_isa>_<x>v<optab>w<ev_od>_<simdfmt_w>_<simdfmt><u>): New - define_expand. - (simd_<optab>w_evod_<mode>_hetero): New define_insn. - (<simd_isa>_<x>v<optab>w<ev_od>_<simdfmt_w>_<simdfmt>u_<simdfmt>): - New define_expand. - (DIVEC): New define_mode_iterator. - (<simd_isa>_<optab>w<ev_od>_q_d<u>_punned): New define_expand. - (<simd_isa>_<optab>w<ev_od>_q_du_d_punned): Likewise. - * config/loongarch/loongarch-builtins.cc - (CODE_FOR_lsx_vaddwev_q_d): Define as a macro to override it - with the punned expand. - (CODE_FOR_lsx_vaddwev_q_du): Likewise. - (CODE_FOR_lsx_vsubwev_q_d): Likewise. - (CODE_FOR_lsx_vsubwev_q_du): Likewise. - (CODE_FOR_lsx_vmulwev_q_d): Likewise. - (CODE_FOR_lsx_vmulwev_q_du): Likewise. - (CODE_FOR_lsx_vaddwod_q_d): Likewise. - (CODE_FOR_lsx_vaddwod_q_du): Likewise. - (CODE_FOR_lsx_vsubwod_q_d): Likewise. - (CODE_FOR_lsx_vsubwod_q_du): Likewise. - (CODE_FOR_lsx_vmulwod_q_d): Likewise. - (CODE_FOR_lsx_vmulwod_q_du): Likewise. - (CODE_FOR_lsx_vaddwev_q_du_d): Likewise. - (CODE_FOR_lsx_vmulwev_q_du_d): Likewise. - (CODE_FOR_lsx_vaddwod_q_du_d): Likewise. - (CODE_FOR_lsx_vmulwod_q_du_d): Likewise. - (CODE_FOR_lasx_xvaddwev_q_d): Likewise. - (CODE_FOR_lasx_xvaddwev_q_du): Likewise. - (CODE_FOR_lasx_xvsubwev_q_d): Likewise. - (CODE_FOR_lasx_xvsubwev_q_du): Likewise. - (CODE_FOR_lasx_xvmulwev_q_d): Likewise. - (CODE_FOR_lasx_xvmulwev_q_du): Likewise. - (CODE_FOR_lasx_xvaddwod_q_d): Likewise. - (CODE_FOR_lasx_xvaddwod_q_du): Likewise. - (CODE_FOR_lasx_xvsubwod_q_d): Likewise. - (CODE_FOR_lasx_xvsubwod_q_du): Likewise. - (CODE_FOR_lasx_xvmulwod_q_d): Likewise. - (CODE_FOR_lasx_xvmulwod_q_du): Likewise. - (CODE_FOR_lasx_xvaddwev_q_du_d): Likewise. - (CODE_FOR_lasx_xvmulwev_q_du_d): Likewise. - (CODE_FOR_lasx_xvaddwod_q_du_d): Likewise. - (CODE_FOR_lasx_xvmulwod_q_du_d): Likewise. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/lsx.md (mov<LSX:mode>): Remove. - (movmisalign<LSX:mode>): Remove. - (mov<LSX:mode>_lsx): Remove. - * config/loongarch/lasx.md (mov<LASX:mode>): Remove. - (movmisalign<LASX:mode>): Remove. - (mov<LASX:mode>_lasx): Remove. - * config/loongarch/loongarch-modes.def (V1TI): Add. - (V2TI): Mention in the comment. - * config/loongarch/loongarch.md (mode): Add V1TI and V2TI. - * config/loongarch/simd.md (ALLVEC_TI): New mode iterator. - (mov<ALLVEC_TI:mode): New define_expand. - (movmisalign<ALLVEC_TI:mode>): Likewise. - (mov<ALLVEC_TI:mode>_simd): New define_insn_and_split. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch-protos.h - (loongarch_const_vector_vrepli): New function prototype. - * config/loongarch/loongarch.cc (loongarch_const_vector_vrepli): - Implement. - (loongarch_const_insns): Call loongarch_const_vector_vrepli - instead of loongarch_const_vector_same_int_p. - (loongarch_split_vector_move_p): Likewise. - (loongarch_output_move): Use loongarch_const_vector_vrepli to - pun operend[1] into a better mode if it's a const int vector, - and decide the suffix of [x]vrepli with the new mode. - * config/loongarch/constraints.md (YI): Call - loongarch_const_vector_vrepli instead of - loongarch_const_vector_same_int_p. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - PR target/115478 - * config/loongarch/loongarch.md (any_or_plus): New - define_code_iterator. - (bstrins_<mode>_for_ior_mask): Use any_or_plus instead of ior. - (bytepick_w_<bytepick_imm>): Likewise. - (bytepick_d_<bytepick_imm>): Likewise. - (bytepick_d_<bytepick_imm>_rev): Likewise. - -2025-02-19 Jeff Law <jlaw@ventanamicro.com> - - PR middle-end/113525 - * doc/invoke.texi (dump-rtl-sibling): Drop documentation for pass - removed long ago. - (dump-rtl-unshare): Likewise. - -2025-02-18 Andi Kleen <ak@gcc.gnu.org> - - * doc/invoke.texi: - -2025-02-18 David Malcolm <dmalcolm@redhat.com> - - * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Put - properties in alphabetical order. - -2025-02-18 Robin Dapp <rdapp@ventanamicro.com> - - PR target/115703 - * config/riscv/riscv-vsetvl.cc: Use max_sew for calculating the - new LMUL. - -2025-02-18 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/108840 - * late-combine.cc (late_combine::check_register_pressure): - Take only allocatable registers into account when checking - the permissiveness of register classes. - -2025-02-18 Alex Coplan <alex.coplan@arm.com> - - PR rtl-optimization/118320 - * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Tweak wording in dump - message when punting on invalid use arrays. - -2025-02-18 Soumya AR <soumyaa@nvidia.com> - - * config/aarch64/tuning_models/generic_armv8_a.h: Updated prefetch - struct pointer. - -2025-02-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/98845 - * tree-ssa-tail-merge.cc (stmt_local_def): Consider a - def with no uses not local. - -2025-02-18 Pan Li <pan2.li@intel.com> - - PR target/118540 - * config/riscv/riscv-target-attr.cc (riscv_target_attr_parser::parse_arch): - Report error when cmd xlen is different with target attribute. - -2025-02-18 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/i386.opt.urls: Adjust the order for avx10.2 - and avx10.2-512 due to their order change in i386.opt. - -2025-02-18 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118805 - * gimple-fold.cc (fold_truth_andor_for_combine): Detect and - cope with zero-extension in signbit tests. Reject swapping - right-compare operands if rsignbit. - -2025-02-17 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.cc (ix86_find_all_reg_use): - Scan only for SET RTX in PARALLEL. - -2025-02-17 Uros Bizjak <ubizjak@gmail.com> - - PR middle-end/118288 - * builtins.cc (expand_builtin_crc_table_based): - Use gen_int_mode to emit constant integers with MSB set. - -2025-02-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118895 - * tree-ssa-sccvn.cc (vn_nary_build_or_lookup_1): Only allow - CSE if we can verify the result is available. - -2025-02-17 Georg-Johann Lay <avr@gjlay.de> - - PR target/118764 - * config/avr/gen-avr-mmcu-specs.cc (print_mcu) - [has CVT]: Mention CVT in header comment of generated specs file. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/i386.opt.urls: Regenetated. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_AVX10_1_UNSET): Adjust macro. - (OPTION_MASK_ISA2_AVX10_2_256_UNSET): Removed. - (OPTION_MASK_ISA2_AVX10_2_512_UNSET): Ditto. - (OPTION_MASK_ISA2_AVX10_2_UNSET): New. - (ix86_handle_option): Remove disable part for avx10.2-256. - Rename avx10.2-512 switch case to avx10.2 and adjust disable - part macro. - * common/config/i386/i386-isas.h: Adjust avx10.2 and - avx10.2-512. - * config/i386/driver-i386.cc - (host_detect_local_cpu): Do not append -mno-avx10.x-256 - for -march=native. - * config/i386/i386-options.cc - (ix86_valid_target_attribute_inner_p): Adjust avx10.2 and - avx10.2-512. - * config/i386/i386.opt: Reject Negative for mavx10.2-256. - Alias mavx10.2-512 to mavx10.2. Reject Negative for - mavx10.2-512. - * doc/extend.texi: Adjust documentation. - * doc/sourcebuild.texi: Ditto. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/i386-common.cc - (OPTION_MASK_ISA2_AVX2_UNSET): Change AVX10.1 unset macro. - (OPTION_MASK_ISA2_AVX10_1_256_UNSET): Removed. - (OPTION_MASK_ISA2_AVX10_1_512_UNSET): Removed. - (OPTION_MASK_ISA2_AVX10_1_UNSET): New. - (ix86_handle_option): Adjust AVX10.1 unset macro. - * common/config/i386/i386-isas.h: Remove avx10.1. - * config/i386/i386-options.cc - (ix86_valid_target_attribute_inner_p): Ditto. - (ix86_option_override_internal): Adjust warning message. - * config/i386/i386.opt: Remove mavx10.1. - * doc/extend.texi: Remove avx10.1 and adjust doc. - * doc/sourcebuild.texi: Ditto. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118815 - * config/i386/i386-options.cc (ix86_option_override_internal): - Do not check vector size conflict when AVX512 is not explicitly - set. - -2025-02-16 Jakub Jelinek <jakub@redhat.com> - - PR target/118248 - * config/riscv/riscv-string.cc (riscv_block_move_straight): Only - allocate REGS buffer if it will be needed. - -2025-02-16 Georg-Johann Lay <avr@gjlay.de> - - PR target/118764 - * config/avr/avr-c.cc (avr_cpu_cpp_builtins) - [TARGET_CVT]: Define __AVR_CVT__. - * doc/invoke.texi (AVR Built-in Macros): Document __AVR_CVT__. - -2025-02-16 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.cc (avr_result_regno_unused_p): New static function. - (avr_out_bitop): Only output result bytes that are used. - (avr_out_plus_1): Same. - -2025-02-16 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-protos.h (avr_builtin_supported_p): Remove. - * config/avr/avr.cc (avr_init_builtins): Don't initialize - non-available built-ins with NULL_TREE. - (avr_builtin_supported_p): Move to... - * config/avr/avr-c.cc: ...here. - (avr_resolve_overloaded_builtin): Run avr_builtin_supported_p. - -2025-02-16 H.J. Lu <hjl.tools@gmail.com> - - PR target/109780 - PR target/109093 - * config/i386/i386.cc (ix86_update_stack_alignment): New. - (ix86_find_all_reg_use_1): Likewise. - (ix86_find_all_reg_use): Likewise. - (ix86_find_max_used_stack_alignment): Also check memory accesses - from registers defined by stack or frame registers. - -2025-02-15 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/98028 - * vr-values.cc (check_for_binary_op_overflow): Try to use a known - relationship betwen op0/op1 to statically determine overflow state. - -2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> - - * config/riscv/autovec-opt.md - (*single_widen_first_<any_widen_binop:optab><any_extend:su><mode>): - New combine "bridge" pattern. - -2025-02-15 Keith Packard <keithp@keithp.com> - - * config/rx/rx.md (rx_cmpstrn): Correctly handle len=0 case. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * libsarifreplay.cc (sarif_replayer::handle_result_obj): Call - handle_fix_object if we see a single-element "fixes" array. - (sarif_replayer::handle_fix_object): New. - (sarif_replayer::handle_artifact_change_object): New. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * libsarifreplay.cc (should_add_rule_p): New. - (sarif_replayer::handle_result_obj): Use it to filter out rules - that don't make sense. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * libsarifreplay.cc (sarif_replayer::handle_result_obj): Treat any - relatedLocations without messages as secondary ranges within the - diagnostic. Doing so requires stashing the notes until after - the diagnostic has been finished, so that relatedLocations can be - walked in one pass. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/118881 - * doc/libgdiagnostics/topics/physical-locations.rst: Add - diagnostic_physical_location_get_file. - * libgdiagnostics++.h (physical_location::get_file): New wrapper. - (diagnostic::add_location): Likewise. - * libgdiagnostics.cc (diagnostic_manager::get_file_by_name): New. - (diagnostic_physical_location::get_file): New. - (diagnostic_physical_location_get_file): New. - * libgdiagnostics.h (diagnostic_physical_location_get_file): New. - * libgdiagnostics.map (diagnostic_physical_location_get_file): New. - * libsarifreplay.cc (class annotation): New. - (add_any_annotations): New. - (sarif_replayer::handle_result_obj): Collect vectors of - annotations in the calls to handle_location_object and apply them - to "err" and to "note" as appropriate. - (sarif_replayer::handle_thread_flow_location_object): Pass nullptr - for annotations. - (sarif_replayer::handle_location_object): Handle §3.28.6 - "annotations" property, using it to populate a new - "out_annotations" param. - -2025-02-15 Thomas Schwinge <thomas@codesourcery.com> - - * config/nvptx/nvptx.cc (nvptx_record_needed_fndecl): Tag as - 'static'. - -2025-02-15 Jin Ma <jinma@linux.alibaba.com> - - PR target/118872 - * config/riscv/riscv.cc (riscv_fntype_abi): Strengthen the logic - of the check to avoid missing the error report. - -2025-02-14 Georg-Johann Lay <avr@gjlay.de> - - PR target/118878 - * config/avr/avr.cc (avr_out_plus_1): Don't ICE on result of - paradoxical reg's register allocation. - -2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/94282 - PR target/113331 - * common/config/gcn/gcn-common.cc (gcn_except_unwind_info): 'return UI_TARGET;'. - * config/gcn/gcn.cc (gcn_asm_init_sections): New function. - (TARGET_ASM_INIT_SECTIONS): '#define'. - -2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/86660 - * common/config/nvptx/nvptx-common.cc (nvptx_except_unwind_info): - 'return UI_TARGET;'. - * config/nvptx/nvptx.cc (nvptx_assemble_integer): Handle - 'exception_section'. - (nvptx_output_section_asm_op, nvptx_asm_init_sections): New - functions. - (TARGET_ASM_INIT_SECTIONS): '#define'. - * config/nvptx/nvptx.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): - Don't '#define'. - (ASM_OUTPUT_DWARF_DELTA): '#define'. - -2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.cc (init_frag): New 'bool active' member. - (output_init_frag, nvptx_assemble_value, nvptx_assemble_integer) - (nvptx_output_skip, nvptx_assemble_decl_begin) - (nvptx_assemble_decl_end): Sanity-check its state. - -2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx.cc (nvptx_output_skip): Clarify case of - no or incomplete initializer. - -2025-02-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118852 - * tree-vect-slp.cc (vect_analyze_slp): For early-break - forced-live IVs make sure we create an appropriate - entry into the SLP graph. - -2025-02-14 Jakub Jelinek <jakub@redhat.com> - - PR debug/118790 - * tree.cc (struct gt_value_expr_mark_data): New type. - (gt_value_expr_mark_2): Don't call ggc_set_mark, instead check - ggc_marked_p. Treat data as gt_value_expr_mark_data * with pset - in it rather than address of the pset itself and push to be marked - VAR_DECLs into to_mark vec. - (gt_value_expr_mark_1): Change argument from hash_set<tree> * - to gt_value_expr_mark_data * and find pset in it. - (gt_value_expr_mark): Pass to traverse_noresize address of - gt_value_expr_mark_data object rather than hash_table<tree> and - for all entries in the to_mark vector after the traversal call - gt_ggc_mx. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - * config/loongarch/genopts/loongarch.opt.in: Add - option '-maddr-reg-reg-cost='. - * config/loongarch/loongarch-def.cc - (loongarch_rtx_cost_data::loongarch_rtx_cost_data): Initialize - addr_reg_reg_cost to 3. - * config/loongarch/loongarch-opts.cc - (loongarch_target_option_override): If '-maddr-reg-reg-cost=' - is not used, set it to the initial value. - * config/loongarch/loongarch-tune.h - (struct loongarch_rtx_cost_data): Add the member - addr_reg_reg_cost and its assignment function to the structure - loongarch_rtx_cost_data. - * config/loongarch/loongarch.cc (loongarch_address_insns): - Use la_addr_reg_reg_cost to set the cost of ADDRESS_REG_REG. - * config/loongarch/loongarch.opt: Regenerate. - * config/loongarch/loongarch.opt.urls: Regenerate. - * doc/invoke.texi: Add description of '-maddr-reg-reg-cost='. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118843 - * config/loongarch/loongarch-c.cc - (loongarch_update_cpp_builtins): Fix macro definition issues. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118828 - * config/loongarch/loongarch-c.cc (loongarch_pragma_target_parse): - Update the predefined macros. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - * config/loongarch/loongarch-c.cc (builtin_undef): New macro. - (loongarch_cpu_cpp_builtins): Split to loongarch_update_cpp_builtins - and loongarch_define_unconditional_macros. - (loongarch_def_or_undef): New functions. - (loongarch_define_unconditional_macros): Likewise. - (loongarch_update_cpp_builtins): Likewise. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - * config/loongarch/loongarch-target-attr.cc - (loongarch_pragma_target_parse): Move to ... - (loongarch_register_pragmas): Move to ... - * config/loongarch/loongarch-c.cc - (loongarch_pragma_target_parse): ... here. - (loongarch_register_pragmas): ... here. - * config/loongarch/loongarch-protos.h - (loongarch_process_target_attr): Function Declaration. - -2025-02-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/90579 - * tree-ssa-forwprop.cc (simplify_bitfield_ref): Move to - match.pd. - (pass_forwprop::execute): Adjust. - * match.pd (bit_field_ref (vec_perm ...)): New pattern - modeled after simplify_bitfield_ref. - * tree-vect-loop.cc (vect_expand_fold_left): Fold the - element extract stmt, combining it with the vector def. - -2025-02-13 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/118832 - * config/riscv/riscv-v.cc (expand_const_vector): Expand as - vlmax insn during lra. - -2025-02-13 Marek Polacek <polacek@redhat.com> - - PR driver/117739 - * doc/invoke.texi: Tweak wording for -Whardened. - * gcc.cc (driver_handle_option): If -z lazy or -z norelro was - specified, don't enable linker hardening. - (process_command): Don't check warn_hardened. - -2025-02-13 Ed Catmur <ed@catmur.uk> - Jason Merrill <jason@redhat.com> - - PR c++/70536 - * dwarf2out.cc (gen_formal_parameter_pack_die): Add name attr. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR debug/118790 - * gengtype.cc (write_roots): Remove cache variable, instead break from - the loop on match and test o for NULL. If the cache option has - non-empty string argument, call the specified function with v->name - as argument before calling gt_cleare_cache on it. - * tree.cc (gt_value_expr_mark_2, gt_value_expr_mark_1, - gt_value_expr_mark): New functions. - (value_expr_for_decl): Use GTY ((cache ("gt_value_expr_mark"))) rather - than just GTY ((cache)). - * doc/gty.texi (cache): Document optional argument of cache option. - -2025-02-13 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/114522 - * config/arm/arm-builtins.cc (arm_fold_aes_op): New function. - (arm_general_gimple_fold_builtin): New function. - * config/arm/arm-builtins.h (arm_general_gimple_fold_builtin): New - prototype. - * config/arm/arm.cc (arm_gimple_fold_builtin): Call - arm_general_gimple_fold_builtin as needed. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/118822 - PR c++/118833 - * tree-iterator.h (tsi_split_stmt_list): Declare. - * tree-iterator.cc (tsi_split_stmt_list): New function. - -2025-02-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure.ac (gcc_cv_ld_eh_frame_ciev3): Remove. - * configure, config.in: Regenerate. - * config/sol2.cc (solaris_override_options): Remove. - * config/sol2.h (SUBTARGET_OVERRIDE_OPTIONS): Remove. - * config/sol2-protos.h (solaris_override_options): Remove. - -2025-02-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * doc/install.texi (Specific, *-*-solaris2*): Updates for newer - Solaris 11.4 SRUs and binutils 2.44. - -2025-02-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/118835 - * config/s390/s390.cc (s390_valid_shift_count): Reject shift - count operands which do not trivially fit the scheme of - address operands. - -2025-02-13 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118817 - * tree-ssa-sccvn.cc (vn_nary_simplify): Do not process - CONSTRUCTOR NARY or update from CONSTRUCTOR simplified - gimple_match_op. - -2025-02-12 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/102150 - * loop-invariant.cc (find_invariant_insn): Treat inline-asm similar to - trapping instruction and only move them if always executed. - -2025-02-12 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/102150 - * ifcvt.cc (cheap_bb_rtx_cost_p): Return false if the insn - has an inline-asm in it. - -2025-02-12 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.opt.urls: Add -mcall-main. - -2025-02-12 Georg-Johann Lay <avr@gjlay.de> - - PR target/118806 - * config/avr/avr.opt (-mcall-main): New option and... - (avropt_call_main): ...variable. - * config/avr/avr.cc (avr_no_call_main_p): New variable. - (avr_insert_attributes) [-mno-call-main, main]: Add attributes - noreturn and section(".init9") to main. Set avr_no_call_main_p. - (avr_file_end) [avr_no_call_main_p]: Define symbol __call_main. - * doc/invoke.texi (AVR Options) <-mno-call-main>: Document. - <-mnodevicelib>: Extend explanation. - -2025-02-12 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/117790 - * tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg): - Set profile counts for {main,alt}_loop_exit_block. - -2025-02-12 Vineet Gupta <vineetg@rivosinc.com> - - * config/riscv/vector.md: vncvt substitute vnsrl. - vnsrl with x0 replace with immediate 0. - vneg substitute vrsub. - -2025-02-12 Jin Ma <jinma@linux.alibaba.com> - - PR target/118601 - * config/riscv/riscv-string.cc (expand_block_move): Check with new - constraint 'vl' instead of 'K'. - (expand_vec_setmem): Likewise. - (expand_vec_cmpmem): Likewise. - * config/riscv/riscv-v.cc (force_vector_length_operand): Likewise. - (expand_load_store): Likewise. - (expand_strided_load): Likewise. - (expand_strided_store): Likewise. - (expand_lanes_load_store): Likewise. - -2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/install.texi: Add missing comma after @xref to fix warning. - -2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/extend.texi: Fix a bunch of typos and other writing bugs. - * doc/invoke.texi: Likewise. - -2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> - - * Makefile.in (TEXI_GCCINT_FILES): Remove interface.texi. - * doc/gccint.texi (Top): Remove menu entry for the "interface" node, - and include of interface.texi. - * doc/interface.texi: Delete. - -2025-02-12 Yangyu Chen <cyy@cyyself.name> - - * config/riscv/riscv-feature-bits.h (RISCV_VENDOR_FEATURE_BITS_LENGTH): Drop. - (struct riscv_vendor_feature_bits): Drop. - -2025-02-11 Jeff Law <jlaw@ventanamicro.com> - - PR target/115478 - * config/aarch64/iterators.md (any_or_plus): New code iterator. - * config/aarch64/aarch64.md (extr<mode>5_insn): Use any_or_plus. - (extr<mode>5_insn_alt, extrsi5_insn_uxtw): Likewise. - (extrsi5_insn_uxtw_alt, extrsi5_insn_di): Likewise. - -2025-02-11 Jason Merrill <jason@redhat.com> - - PR c++/188574 - * doc/invoke.texi: Adjust -frange-for-ext-temps documentation. - -2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-option-extensions.def - (SSVE_FP8FMA): Adjust formatting. - (FP8DOT4): Replace FP8FMA dependency with FP8. - (SSVE_FP8DOT4): Replace SSVE_FP8FMA dependency with SME2+FP8. - (FP8DOT2): Replace FP8DOT4 dependency with FP8. - (SSVE_FP8DOT2): Replace SSVE_FP8DOT4 dependency with SME2+FP8. - -2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> - - * omp-general.cc (omp_check_context_selector): Change - metadirective_p argument to a 3-way flag. Add extra check for - OMP_CTX_BEGIN_DECLARE_VARIANT. - * omp-general.h (enum omp_ctx_directive): New. - (omp_check_context_selector): Adjust declaration. - -2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> - - * omp-general.cc (omp_context_selector_props_compare): Handle - arbitrary expressions in the "user" and "device_num" selectors. - (omp_context_selector_set_compare): Detect mismatch when one - selector specifies a score and the other doesn't. - -2025-02-11 Martin Jambor <mjambor@suse.cz> - - PR lto/118125 - * ipa-fnsummary.cc (redirect_to_unreachable): Add checking assert - that the builtin_unreachable decl has attribute cold. - -2025-02-11 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/118792 - * libsarifreplay.cc (sarif_replayer::handle_region_object): Fix - off-by-one in handling of endColumn property so that the code - matches the comment and the SARIF spec (§3.30.8). - -2025-02-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118817 - * tree-ssa-pre.cc (fully_constant_expression): Fold into - the single caller. - (phi_translate_1): Refactor folded in fully_constant_expression. - * tree-ssa-sccvn.cc (vn_nary_simplify): Update the NARY with - the simplified expression. - -2025-02-11 H.J. Lu <hjl.tools@gmail.com> - - PR target/118825 - * config/i386/i386.h (ASM_OUTPUT_SYMBOL_REF): Replace x with - SYM. - -2025-02-11 YunQiang Su <syq@debian.org> - - * config.gcc: Add mips*64*-linux-muslabi64 triple support. - -2025-02-11 Jie Mei <jie.mei@oss.cipunited.com> - Xi Ruoyao <xry111@xry111.site> - - * config/mips/i6400.md (i6400_fpu_minmax): Include - fclass type. - (i6400_fpu_fadd): Include frint type. - * config/mips/mips.cc (AVAIL_NON_MIPS16): Add an entry - for __builtin_mipsr6_xxx. - (MIPSR6_BUILTIN_PURE): Same as above. - (CODE_FOR_mipsr6_min_a_s, CODE_FOR_mipsr6_min_a_d) - (CODE_FOR_mipsr6_max_a_s, CODE_FOR_mipsr6_max_a_d) - (CODE_FOR_mipsr6_class_s, CODE_FOR_mipsr6_class_d): - New code_aliasing macros. - (mips_builtins): Add mips32r6 min_a_s, min_a_d, max_a_s, - max_a_d, class_s, class_d builtins. - * config/mips/mips.h (ISA_HAS_FRINT): Define a new macro. - (ISA_HAS_FCLASS): Same as above. - * config/mips/mips.md (UNSPEC_FRINT): New unspec. - (UNSPEC_FCLASS): Same as above. - (type): Add frint and fclass. - (fmin_a_<mode>): Generates MINA.fmt instructions. - (fmax_a_<mode>): Generates MAXA.fmt instructions. - (rint<mode>2): Generates RINT.fmt instructions. - (fclass_<mode>): Generates CLASS.fmt instructions. - * config/mips/p6600.md (p6600_fpu_fadd): Include - frint type. - (p6600_fpu_fabs): Include fclass type. - -2025-02-11 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118813 - * config/i386/avx512bwintrin.h: Fix wrong __OPTIMIZE__ - wrap. - -2025-02-10 Tobias Burnus <tburnus@baylibre.com> - - * config/gcn/mkoffload.cc (enum elf_arch_code): Add - EF_AMDGPU_MACH_AMDGCN_NONE. - (elf_arch): Use enum elf_arch_code as type. - (tool_cleanup): Silence warning by removing tailing '.' from error. - (get_arch_name): Return enum elf_arch_code. - (check_for_missing_lib): New; print fatal error if the multilib - is not available but it is for the associate generic ISA. - (main): Call it. - -2025-02-10 Tobias Burnus <tburnus@baylibre.com> - - * doc/install.texi (GCN): Update section about multilibs and - required LLVM version. - -2025-02-10 Martin Jambor <mjambor@suse.cz> - - PR ipa/118097 - * ipa-cp.cc (ipa_get_jf_arith_result): Adjust comment. - (ipa_get_jf_pass_through_result): Removed. - (ipa_value_from_jfunc): Use directly ipa_get_jf_arith_result, do - not specify operation type but make sure we check and possibly - convert the result. - (get_val_across_arith_op): Remove the last parameter, always pass - NULL_TREE to ipa_get_jf_arith_result in its last argument. - (propagate_vals_across_arith_jfunc): Do not pass res_type to - get_val_across_arith_op. - (propagate_vals_across_pass_through): Add checking assert that - parm_type is not NULL. - -2025-02-10 Jakub Jelinek <jakub@redhat.com> - - PR target/118623 - * config/i386/i386.md (*bt<mode>): Represent bt as - compare:CCC of const0_rtx and zero_extract rather than - zero_extract and const0_rtx. - (*bt<SWI48:mode>_mask): Likewise. - (*jcc_bt<mode>): Likewise. Use LTU and GEU as flags test - instead of EQ and NE. - (*jcc_bt<mode>_mask): Likewise. - (*jcc_bt<SWI48:mode>_mask_1): Likewise. - (Help combine recognize bt followed by cmov splitter): Likewise. - (*bt<mode>_setcqi): Likewise. - (*bt<mode>_setncqi): Likewise. - (*bt<mode>_setnc<mode>): Likewise. - (*bt<mode>_setncqi_2): Likewise. - (*bt<mode>_setc<mode>_mask): Likewise. - -2025-02-09 Dario Gjorgjevski <dario.gjorgjevski@gmail.com> - - PR middle-end/117263 - * genautomata.cc (output_statistics): Avoid set but unnused warnings - when compiling with NDEBUG. - -2025-02-09 Jeff Law <jlaw@ventanamicro.com> - - PR target/118146 - * config/riscv/riscv.cc (riscv_legitimize_move): Handle subreg - of vector source better to avoid ICE. - -2025-02-08 Georg-Johann Lay <avr@gjlay.de> - - PR target/118764 - * doc/invoke.texi (AVR Options): Fix typos. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * config/gcn/gcn.md (exception_receiver): 'define_expand'. - * config/nvptx/nvptx.md (exception_receiver): Likewise. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * doc/sourcebuild.texi (Effective-Target Keywords): Clarify that - effective-target 'exceptions' and 'exceptions_enabled' are - orthogonal. - -2025-02-08 Jakub Jelinek <jakub@redhat.com> - - PR target/118776 - * config/i386/sse.md (<code><mode>3_mask): Use VI1248_AVX512VLBW - iterator rather than VI48_AVX512VL. - (<mask_codefor><code><mode>3<mask_name>): Rename to ... - (*avx512bw_<code><mode>3<mask_name>): ... this. Use - nonimmediate_operand rather than register_operand predicate and %v - rather than v constraint for operand 1 and adjust condition to reject - MEMs in both operand 1 and 2. - -2025-02-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/114522 - * config/aarch64/aarch64-builtins.cc (aarch64_fold_aes_op): New function. - (aarch64_general_gimple_fold_builtin): Call aarch64_fold_aes_op for crypto_aese - and crypto_aesd. - -2025-02-07 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (file_cache::m_line_recent, - m_line_recent_first, m_line_recent_last): Add. - (file_cache_slot::evict): Clear new fields. - (file_cache_slot::create): Clear new fields. - (file_cache_slot::file_cache_slot): Initialize new fields. - (file_cache_slot::~file_cache_slot): Release m_line_recent. - (file_cache_slot::get_next_line): Maintain ring buffer of lines - in m_line_recent. - (file_cache_slot::read_line_num): Use m_line_recent to look up - recent lines quickly. - -2025-02-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/118089 - * config/arm/arm.cc (arm_emit_multi_reg_pop): Restructure. - Don't emit LDR on thumb2 when POP can be used for smaller code. - Don't add a CFA adjust note when SP is popped off the stack. - -2025-02-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/118089 - * config/arm/arm.cc (arm_emit_multi_reg_pop): Add a CFA adjust - note to single-register POP instructions. - -2025-02-07 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/116244 - * ira-build.cc (create_insn_allocnos): Do not restrict the check for - subreg uses to allocno creation time. Do it for all uses. - -2025-02-07 Richard Biener <rguenther@suse.de> - - PR jit/118780 - * system.h: Check INCLUDE_DLFCN_H for including dlfcn.h instead - of ENABLE_PLUGIN. - * plugin.cc: Define INCLUDE_DLFCN_H. - -2025-02-07 Pan Li <pan2.li@intel.com> - - PR target/118103 - * config/riscv/riscv.cc (riscv_conditional_register_usage): Add - the VXRM as the global_regs. - -2025-02-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/118771 - * config/aarch64/aarch64.cc (aarch64_split_move): Assert that npieces is - greater than 0. - -2025-02-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/115538 - * tree-vectorizer.h (vect_get_slp_scalar_def): Declare. - * tree-vect-slp.cc (vect_get_slp_scalar_def): New helper. - * tree-vect-generic.cc (expand_vector_conversion): Adjust. - * tree-vect-stmts.cc (vectorizable_conversion): For SLP - correctly look at ranges of the scalar defs of the SLP operand. - (supportable_indirect_convert_operation): Likewise. - -2025-02-07 Tobias Burnus <tburnus@baylibre.com> - - * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Update - 'amdhsa.version' output to match used code version. - * config/gcn/gen-gcn-device-macros.awk: Add a comment to - crosslink. - -2025-02-07 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch.md - (*sel<code><GPR:mode>_using_<GPR2:mode>): Rename to ... - (*sel<code><GPR:mode>_using_<X:mode>): ... here. - (GPR2): Remove as nothing uses it now. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118514 - PR tree-optimization/118706 - * gimple-fold.cc (decode_field_reference): Refuse to consider - merging out-of-bounds BIT_FIELD_REFs. - (make_bit_field_load): Drop too-strict assert. - * tree-eh.cc (bit_field_ref_in_bounds_p): Rename to... - (access_in_bounds_of_type_p): ... this. Change interface, - export. - (tree_could_trap_p): Adjust. - * tree-eh.h (access_in_bounds_of_type_p): Declare. - -2025-02-07 Tobias Burnus <tburnus@baylibre.com> - - * config/gcn/gcn-devices.def (GCN_DEVICE): Add gfx9-generic, - gfx902, gfx904, gfx909, gfx1031, gfx1032, gfx1033, gfx1034, - gfx1035, gfx1101, gfx1102, gfx1150, gfx1151, gfx1152, and gfx1153. - Add a currently unused column linking, a specific ISA to a generic - one (if it exists). - * config/gcn/gcn-tables.opt: Regenerate - * doc/invoke.texi (AMD GCN): Add the the new gfc... and the older - gfx{10-3,11}-generic to -march= as 'experimental'. - -2025-02-07 Tobias Burnus <tburnus@baylibre.com> - - * config/gcn/gcn-devices.def (GCN_DEVICE): Change sramecc for - gfx906 to 'any'. - * config/gcn/gcn.cc (GCN_DEVICE): Add tailing ... to #define. - -2025-02-07 H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/111673 - PR rtl-optimization/115932 - PR rtl-optimization/116028 - PR rtl-optimization/117081 - PR rtl-optimization/117082 - PR rtl-optimization/118497 - * ira-color.cc (assign_hard_reg): Call the target hook for the - callee-saved register cost scale in epilogue and prologue. - * target.def (ira_callee_saved_register_cost_scale): New target - hook. - * targhooks.cc (default_ira_callee_saved_register_cost_scale): - New. - * targhooks.h (default_ira_callee_saved_register_cost_scale): - Likewise. - * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): - New. - (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Likewise. - * doc/tm.texi: Regenerated. - * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): - New. - -2025-02-06 Craig Blackmore <craig.blackmore@embecosm.com> - - * config/riscv/riscv.md: Move UNSPEC_SSP_SET and UNSPEC_SSP_TEST - to unspec enum. - -2025-02-06 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.opt.urls: Add mcvt. - -2025-02-06 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118756 - * tree-ssa-loop-ivopts.cc (contain_complex_addr_expr): Remove. - -2025-02-06 Georg-Johann Lay <avr@gjlay.de> - - PR target/118764 - * config/avr/avr.opt (-mcvt): New target option. - * config/avr/avr-arch.h (AVR_CVT): New enum value. - * config/avr/avr-mcus.def: Add AVR_CVT flag for devices that - support it. - * config/avr/avr.cc (avr_handle_isr_attribute) [TARGET_CVT]: Issue - an error when a vector number larger that 3 is used. - * config/avr/gen-avr-mmcu-specs.cc (McuInfo.have_cvt): New property. - (print_mcu) <*avrlibc_startfile>: Use crt<mcu>-cvt.o depending - on -mcvt (or issue an error when the device doesn't support a CVT). - * doc/invoke.texi (AVR Options): Document -mcvt. - -2025-02-06 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117506 - * loop-iv.cc (get_biv_step_1): For {ZERO,SIGN}_EXTEND - of PLUS apply {ZERO,SIGN}_EXTEND to op1. - -2025-02-06 Georg-Johann Lay <avr@gjlay.de> - - PR target/118768 - * config/avr/genmultilib.awk: Parse the AVR_MCU lines in - a more robust way w.r.t. white spaces. - -2025-02-06 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118561 - * config/loongarch/loongarch-builtins.cc - (loongarch_expand_builtin_lsx_test_branch): - NULL_RTX will not be returned when an error is detected. - (loongarch_expand_builtin): Likewise. - -2025-02-06 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/110449 - * tree-ssa-loop-manip.h (insert_iv_increment): Declare. - * tree-ssa-loop-manip.cc (insert_iv_increment): New function, - split out from... - (create_iv): ...here and generalized to gimple_seqs. - * tree-vect-loop.cc (vectorizable_induction): Use - standard_iv_increment_position and insert_iv_increment - to insert the IV increment. - -2025-02-06 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/117922 - * fold-mem-offsets.cc (pass_fold_mem_offsets::execute): - Do nothing for a highly connected CFG. - -2025-02-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118749 - * tree-vect-data-refs.cc (vector_alignment_reachable_p): Pass - in the vectorization factor, when that cannot maintain - the DRs target alignment do not claim we can reach that - by peeling. - -2025-02-05 Jeff Law <jlaw@ventanamicro.com> - - * config/bfin/bfin.md (abssi): Disable pattern. - -2025-02-05 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/115568 - * lra-remat.cc (create_cands): Check that output reload insn is - adjacent to given insn. Update a comment. - -2025-02-05 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64.cc (aarch64_insn_cost): Give PARALLELs - the same cost as the costliest SET. - -2025-02-05 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117239 - * cselib.cc (cselib_init): Remove spurious closing paren in - the #ifdef STACK_ADDRESS_OFFSET specific code. - -2025-02-05 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117239 - * cselib.cc: Include predict.h. - (callmem): Change type from rtx to rtx[2]. - (cselib_preserve_only_values): Use callmem[0] rather than callmem. - (cselib_invalidate_mem): Optimize and don't try to invalidate - for the mem_rtx == callmem[1] case MEMs which clearly can't be - below the stack pointer. - (cselib_process_insn): Use callmem[0] rather than callmem. - For const/pure calls also call cselib_invalidate_mem (callmem[1]) - in !ACCUMULATE_OUTGOING_ARGS or cfun->calls_alloca functions. - (cselib_init): Initialize callmem[0] rather than callmem and also - initialize callmem[1]. - -2025-02-05 Richard Earnshaw <rearnsha@arm.com> - - PR target/118089 - * config/arm/arm.cc (thumb2_expand_return): Use LDM SP!, {PC} - when optimizing for size, or when there's no performance benefit over - LDR PC, [SP], #4. - (arm_expand_epilogue): Likewise. - -2025-02-05 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.md (*pop_multiple_with_writeback_and_return): Remove - constraints. Don't validate the first transfer register here. - -2025-02-05 Richard Earnshaw <rearnsha@arm.com> - - * config/arm/arm.cc (decompose_addr_for_ldm_stm): New function. - (ldm_stm_operation_p): Rework to clarify logic. Allow single - registers to be pushed or popped using LDM/STM. - -2025-02-05 Xi Ruoyao <xry111@xry111.site> - - PR tree-optimization/118727 - * tree-vect-patterns.cc (vect_recog_sad_pattern): Don't call - vect_look_through_possible_promotion on ABD inputs. - -2025-02-05 Sebastian Huber <sebastian.huber@embedded-brains.de> - - * config/arm/t-rtems: Add Cortex-M33 multilib. - -2025-02-04 Andi Kleen <ak@gcc.gnu.org> - - * doc/invoke.texi: Document file cache tunables. - * params.opt: Move auto tuning description to lines. - -2025-02-04 Ilya Leoshkevich <iii@linux.ibm.com> - - * config/s390/s390.cc (print_operand): Remove the no longer - necessary 31-bit and weak symbol handling. - * config/s390/s390.md (*movdi_64): Do not use @PLT with larl. - (*movsi_larl): Likewise. - (main_base_64): Likewise. - (reload_base_64): Likewise. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117113 - * gimple-loop-jam.cc (unroll_jam_possible_p): Detect when - we cannot handle virtual SSA update. - -2025-02-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/116926 - * optabs-query.cc (find_widening_optab_handler_and_mode): Fix - limit for `vec-mode -> scalar-mode` case. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/117611 - * combine.cc (simplify_shift_const_1): Bail if not - scalar int mode. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR lto/113207 - * ipa-free-lang-data.cc (free_lang_data_in_type): First drop - const/volatile qualifiers from function argument types, - then build a simplified type. - -2025-02-03 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (*sibcall_pop_memory): - Disable for TARGET_INDIRECT_BRANCH_REGISTER - * config/i386/predicates.md (call_insn_operand): Enable when - "satisfies_constraint_Bw (op)" is true, instead of open-coding - constraint here. - (sibcall_insn_operand): Ditto with "satisfies_constraint_Bs (op)" - -2025-02-03 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64.cc (aarch64_choose_vector_init_constant): - New function, split out from... - (aarch64_expand_vector_init_fallback): ...here. Use a bit- - reversed increment to find a constant index. Add support for - stepped constants. - -2025-02-03 John David Anglin <danglin@gcc.gnu.org> - - PR rtl-optimization/117248 - * config/pa/predicates.md (r25_operand): New predicate. - (r26_operand): Likewise. - * config/pa/pa.md: Use match_operand for r25 and r26 hard - register operands in mult, div, udiv, mod and umod millicode - patterns. - -2025-02-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118717 - * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): - Do not common stores referencing abnormal SSA names. - * tree-ssa-sink.cc (sink_common_stores_to_bb): Likewise. - -2025-02-03 Andi Kleen <ak@gcc.gnu.org> - - * input.cc (check_line): New. - (test_replacement): New function to test line caching. - (input_cc_tests): Call test_replacement - -2025-02-03 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (file_cache_slot::get_next_line): Implement - dynamic sizing of m_line_record based on input length. - * params.opt: (param_file_cache_lines): Set to 0 to size - dynamically. - -2025-02-03 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (total_lines_num): Remove. - (file_cache_slot::evict): Ditto. - (file_cache_slot::create): Ditto. - (file_cache_slot::set_content): Ditto. - (file_cache_slot::file_cache_slot): Ditto. - (file_cache_slot::dump): Ditto. - -2025-02-03 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (file_cache_slot::get_next_line): Use new algorithm - to maintain - (file_cache_slot::read_line_num): Use binary search for lookup. - -2025-02-03 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (file_cache::tune): New function. - * input.h (class file_cache): Make tunables non const. - * params.opt: Add new tunables. - * toplev.cc (toplev::main): Initialize input buffer context - tunables. - -2025-02-02 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/117411 - * doc/gm2.texi (Exception handling): New section. - (The ISO system module): Add description of COFF_T. - (Assembler language): Tidy up last sentance. - -2025-02-02 Lewis Hyatt <lhyatt@gmail.com> - - PR middle-end/115913 - * optc-save-gen.awk (cl_optimization_compare): Skip options with - CL_WARNING flag. - -2025-02-01 H.J. Lu <hjl.tools@gmail.com> - - PR target/118713 - * config/i386/i386-expand.cc (ix86_expand_call): Change "if - (TARGET_X32 ...)" back to "else if (TARGET_X32 ...)". - -2025-02-01 H.J. Lu <hjl.tools@gmail.com> - - PR target/118713 - * config/i386/constraints.md (Bs): Always disable if - TARGET_INDIRECT_BRANCH_REGISTER is true. - (Bw): Likewise. - * config/i386/i386-expand.cc (ix86_expand_call): Force indirect - call via register for x32 GOT slot call if - TARGET_INDIRECT_BRANCH_REGISTER is true. - * config/i386/i386-protos.h (ix86_nopic_noplt_attribute_p): New. - * config/i386/i386.cc (ix86_nopic_noplt_attribute_p): Make it - global. - * config/i386/i386.md (*call_got_x32): Disable indirect call via - memory for TARGET_INDIRECT_BRANCH_REGISTER. - (*call_value_got_x32): Likewise. - (*sibcall_value_pop_memory): Likewise. - * config/i386/predicates.md (constant_call_address_operand): - Return false if both TARGET_INDIRECT_BRANCH_REGISTER and - ix86_nopic_noplt_attribute_p are true. - -2025-02-01 David Malcolm <dmalcolm@redhat.com> - - * libsarifreplay.cc (sarif_replayer::handle_run_obj): Pass run to - handle_result_obj. - (sarif_replayer::handle_result_obj): Add run_obj param and pass it - to handle_location_object and handle_thread_flow_object. - (sarif_replayer::handle_thread_flow_object): Add run_obj param and - pass it to handle_thread_flow_location_object. - (sarif_replayer::handle_thread_flow_location_object): Add run_obj - param and pass it to handle_location_object. - (sarif_replayer::handle_location_object): Add run_obj param and - pass it to handle_logical_location_object. - (sarif_replayer::handle_logical_location_object): Add run_obj - param. If the run_obj is non-null and has "logicalLocations", - then use these "cached" logical locations if we see an "index" - property, as per §3.33.3 - -2025-02-01 Jeff Law <jlaw@ventanamicro.com> - - PR tree-optimization/114277 - * match.pd (a * (a || b) -> a): New pattern. - (a * !(a || b) -> 0): Likewise. - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR ipa/117432 - * ipa-icf-gimple.cc (func_checker::compare_asm_inputs_outputs): - Also return_false if operands have incompatible types. - (func_checker::compare_gimple_call): Check fntype1 vs. fntype2 - compatibility for all non-internal calls and assume fntype1 and - fntype2 are non-NULL for those. For calls to non-prototyped - calls or for stdarg_p functions after the last named argument (if any) - check type compatibility of call arguments. - -2025-01-31 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/116234 - * lra-constraints.cc (multiple_insn_refs_p): New function. - (curr_insn_transform): Use it. - -2025-01-31 Richard Biener <rguenther@suse.de> - - PR debug/100530 - * dwarf2out.cc (modified_type_die): Do not claim we handle - address-space qualification with dwarf_qual_info[]. - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118689 - PR modula2/115032 - * tree-ssa-loop-niter.cc (build_cltz_expr): Return NULL_TREE if fn is - NULL and use_ifn is false. - -2025-01-31 Richard Biener <rguenther@suse.de> - - * tree-vect-loop.cc (vect_analyze_loop_operations): Only - call vectorizable_lc_phi when not PURE_SLP. - (vectorizable_reduction): Do not claim having handled - the inner loop LC PHI for outer loop vectorization. - -2025-01-30 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/builtins.def (STRLEN_FLASH, STRLEN_FLASHX) - (STRLEN_MEMX): New DEF_BUILTIN's. - * config/avr/avr.cc (avr_ftype_strlen): New static function. - (avr_builtin_supported_p): New built-ins are not for AVR_TINY. - (avr_init_builtins) <strlen_flash_node, strlen_flashx_node, - strlen_memx_node>: Provide new fntypes. - (avr_fold_builtin) [AVR_BUILTIN_STRLEN_FLASH] - [AVR_BUILTIN_STRLEN_FLASHX, AVR_BUILTIN_STRLEN_MEMX]: Fold if - possible. - * doc/extend.texi (AVR Built-in Functions): Document - __builtin_avr_strlen_flash, __builtin_avr_strlen_flashx, - __builtin_avr_strlen_memx. - -2025-01-30 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/builtins.def (AVR_FIRST_C_ONLY_BUILTIN_ID): New macro. - * config/avr/avr-protos.h (avr_builtin_supported_p): New. - * config/avr/avr.cc (avr_builtin_supported_p): New function. - (avr_init_builtins): Only provide a built-in when it is supported. - * config/avr/avr-c.cc (avr_cpu_cpp_builtins): Only define the - __BUILTIN_AVR_<NAME> build-in defines when the associated built-in - function is supported. - * doc/extend.texi (AVR Built-in Functions): Add a note that - following built-ins are supported for only for GNU-C. - -2025-01-30 Jakub Jelinek <jakub@redhat.com> - Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/118696 - * config/s390/vector.md (*vec_cmpgt<mode><mode>_nocc_emu, - *vec_cmpgtu<mode><mode>_nocc_emu): Duplicate the first rather than - second V2DImode element. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR middle-end/118695 - * expr.cc (expand_expr_real_1): When expanding a MEM_REF - to a non-MEM by committing it to a stack temporary make - sure to handle misaligned accesses correctly. - -2025-01-30 Tobias Burnus <tburnus@baylibre.com> - - * gimplify.cc (gimplify_call_expr): For OpenMP's append_args clause - processed by 'omp dispatch', update for internal-representation - changes; fix handling of hidden arguments, add some comments and - handle Fortran's value dummy and optional/pointer/allocatable actual - args. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR middle-end/118692 - * expr.cc (expand_expr_real_1): When expanding a MEM_REF - as BIT_FIELD_REF avoid large offsets for accesses not - overlapping the base object. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/114052 - * tree-ssa-loop-niter.cc (maybe_lower_iteration_bound): Check - for infinite subloops we might not exit. - -2025-01-30 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118320 - * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Commonize - the merge of input_uses and return early if it fails. - -2025-01-29 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118010 - PR modula2/118183 - PR modula2/116073 - * doc/gm2.texi (-fm2-file-offset-bits=): Change the default size - description to CSSIZE_T. - Add COFF_T to the list of data types exported by SYSTEM.def. - -2025-01-29 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118429 - * pair-fusion.cc (latest_hazard_before): Add an extra parameter - to say whether the instruction is a load or a store. If the - instruction is not a load or store and has memory side effects, - prevent it from being moved earlier. - (pair_fusion::find_trailing_add): Update call accordingly. - (pair_fusion_bb_info::fuse_pair): If the trailng addition had - a memory side-effect, use a tombstone to preserve it. - -2025-01-29 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (*negsi2.libgcc): New insn. - -2025-01-29 Yoshinori Sato <ysato@users.sourceforge.jp> - - * config/rx/constraints.md (Q): Also check that the address - passes rx_is_restricted_memory-address. - -2025-01-29 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118505 - * gimple-ssa-split-paths.cc (poor_ifcvt_pred): Return - true for trapping statements. - -2025-01-29 Andrew Pinski <quic_apinski@quicinc.com> - - * gimple-ssa-split-paths.cc (poor_ifcvt_candidate_code): Remove CALL_EXPR handling. - -2025-01-29 Martin Jambor <mjambor@suse.cz> - Michal Jireš <mjires@suse.cz> - - PR tree-optimization/117892 - * tree-ssa-dse.cc (dse_optimize_call): Leave control-altering - noreturn calls alone. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * config/riscv/riscv.cc (riscv_expand_sstrunc): Leverage the helper - riscv_extend_to_xmode_reg with SIGN_EXTEND. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * config/riscv/riscv.cc (riscv_expand_sssub): Leverage the helper - riscv_extend_to_xmode_reg with SIGN_EXTEND. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * config/riscv/riscv.cc (riscv_expand_ssadd): Leverage the helper - riscv_extend_to_xmode_reg with SIGN_EXTEND. - -2025-01-29 Pan Li <pan2.li@intel.com> - - * config/riscv/riscv.cc (riscv_gen_zero_extend_rtx): Rename from ... - (riscv_extend_to_xmode_reg): Rename to and add rtx_code for - zero/sign extend if non-Xmode. - (riscv_expand_usadd): Leverage the renamed function with ZERO_EXTEND. - (riscv_expand_ussub): Ditto. - -2025-01-29 Richard Biener <rguenther@suse.de> - - PR middle-end/118684 - * expr.cc (expand_expr_real_1): When creating a stack local - during expansion of a handled component, when the base is - a SSA_NAME use its type alignment and avoid calling - get_object_alignment. - -2025-01-28 Richard Biener <rguenther@suse.de> - - PR middle-end/118684 - * expr.cc (expand_expr_real_1): When expanding a reference - based on a register and we end up needing a MEM make sure - that's aligned as the original reference required. - -2025-01-28 David Malcolm <dmalcolm@redhat.com> - - * input.cc (file_cache_slot::dump): Show indices within - m_line_record when dumping entries. - -2025-01-28 David Malcolm <dmalcolm@redhat.com> - - PR other/118675 - * diagnostic-format-sarif.cc: Define INCLUDE_STRING. - (escape_braces): New. - (set_string_property_escaping_braces): New. - (sarif_builder::make_message_object): Escape braces in the "text" - property. - (sarif_builder::make_message_object_for_diagram): Likewise, and - for the "markdown" property. - (sarif_builder::make_multiformat_message_string): Likewise for the - "text" property. - (xelftest::test_message_with_braces): New. - (selftest::diagnostic_format_sarif_cc_tests): Call it. - -2025-01-28 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/117270 - * tree-vect-slp.cc (vectorizable_slp_permutation_1): Make nperms - account for the number of times that each permutation will be used - during transformation. - -2025-01-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/112859 - * tree-loop-distribution.cc - (loop_distribution::pg_add_dependence_edges): Add comment. - -2025-01-28 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118663 - * lra-constraints.cc (invalid_mode_reg_p): Check empty - reg_class_contents. - -2025-01-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117424 - * tree-eh.cc (tree_could_trap_p): Verify the base is - fully contained within a decl. - -2025-01-28 Thomas Schwinge <tschwinge@baylibre.com> - - * tree-pretty-print.cc (dump_omp_clause): Clarify - 'OMP_CLAUSE_MAP_RUNTIME_IMPLICIT_P'. - -2025-01-28 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/118638 - * combine.cc (make_extraction): Only optimize (mult x 2^n) if len is - larger than 1. - -2025-01-28 Richard Sandiford <richard.sandiford@arm.com> - - * tree-vect-slp.cc (vectorizable_slp_permutation_1): Remove - extra newline from dump message. - -2025-01-28 Jeff Law <jlaw@ventanamicro.com> - - PR target/114085 - * config/h8300/constraints.md (U): No longer accept REGs. - * config/h8300/logical.md (andqi3_2): Use "rU" rather than "U". - (andqi3_2_clobber_flags, andqi3_1, <code>qi3_1): Likewise. - * config/h8300/testcompare.md (tst_extzv_1_n): Likewise. - -2025-01-27 Robin Dapp <rdapp@ventanamicro.com> - - PR target/117173 - * config/riscv/riscv-v.cc (shuffle_generic_patterns): Only - support single-source permutes by default. - * config/riscv/riscv.opt: New param "riscv-two-source-permutes". - -2025-01-27 John David Anglin <danglin@gcc.gnu.org> - - PR c++/116524 - * configure.ac: Check for munmap and msync. - * configure: Regenerate. - * config.in: Regenerate. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118653 - * tree-vect-loop.cc (vectorizable_live_operation): Also allow - out-of-loop debug uses. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/118662 - * combine.cc (try_combine): When re-materializing a load - from an extended reg by a lowpart subreg make sure we're - not dealing with vector or complex modes. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR middle-end/118643 - * expr.cc (expand_expr_real_1): Avoid falling back to BIT_FIELD_REF - expansion for negative offset. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/112859 - PR tree-optimization/115347 - * tree-loop-distribution.cc - (loop_distribution::pg_add_dependence_edges): For a zero - distance vector still make sure to not have an inner - loop with zero distance. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118637 - * match.pd: Canonicalize unsigned division by power of two to - right shift. - -2025-01-27 Soumya AR <soumyaa@nvidia.com> - - PR target/118490 - * match.pd: Added ! to verify that log/exp (CST) can be constant folded. - -2025-01-26 Ilya Leoshkevich <iii@linux.ibm.com> - - * asan.cc (asan_emit_stack_protection): Always zero the flag - unless it is cleared by the __asan_stack_free_N() libcall. - -2025-01-26 Pan Li <pan2.li@intel.com> - - PR target/118103 - * config/riscv/riscv.cc (riscv_conditional_register_usage): Add - the FRM as the global_regs. - -2025-01-25 Andi Kleen <ak@gcc.gnu.org> - - PR preprocessor/118168 - * input.cc (file_cache_slot::m_error): New field. - (file_cache_slot::create): Clear m_error. - (file_cache_slot::file_cache_slot): Clear m_error. - (file_cache_slot::read_data): Set m_error on error. - (file_cache_slot::get_next_line): Use m_error instead of ferror. - -2025-01-25 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * config/riscv/riscv.md (mvconst_internal): Reject single bit - constants. - * config/riscv/riscv.cc (riscv_gen_zero_extend_rtx): Improve - handling constants. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V9_5A): Add CPA. - * config/aarch64/aarch64-option-extensions.def (CPA): New. - * doc/invoke.texi: Document +cpa. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * doc/invoke.texi: Add +wfxt and +xs to armv9.2-a - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V9_5A): New. - * doc/invoke.texi: Document armv9.5-a option. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc: Assert that CRYPTO - bit is not set. - * config/aarch64/aarch64-feature-deps.h - (info<FEAT>.explicit_on): Unset CRYPTO bit. - (cpu_##CORE_IDENT): Ditto. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (aarch64_rewrite_selected_cpu): Refactor and inline into... - (aarch64_rewrite_mcpu): this. - * config/aarch64/aarch64-protos.h - (aarch64_rewrite_selected_cpu): Delete. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (aarch64_get_arch_string_for_assembler): New. - (aarch64_rewrite_march): New. - (aarch64_rewrite_selected_cpu): Call new function. - * config/aarch64/aarch64-elf.h (ASM_SPEC): Remove identity mapping. - * config/aarch64/aarch64-protos.h - (aarch64_get_arch_string_for_assembler): New. - * config/aarch64/aarch64.cc - (aarch64_declare_function_name): Call new function. - (aarch64_start_file): Ditto. - * config/aarch64/aarch64.h - (EXTRA_SPEC_FUNCTIONS): Use new macro name. - (MCPU_TO_MARCH_SPEC): Rename to... - (MARCH_REWRITE_SPEC): ...this, and extend the spec rule. - (aarch64_rewrite_march): New declaration. - (MCPU_TO_MARCH_SPEC_FUNCTIONS): Rename to... - (AARCH64_BASE_SPEC_FUNCTIONS): ...this, and add new function. - (ASM_CPU_SPEC): Use new macro name. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (aarch64_get_all_extension_candidates): Inline into... - (aarch64_print_hint_for_extensions): ...this. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (aarch64_get_all_extension_candidates): Move within file. - (aarch64_print_hint_candidates): Move from aarch64.cc. - (aarch64_print_hint_for_extensions): Ditto. - (aarch64_print_hint_for_arch): Ditto. - (aarch64_print_hint_for_core): Ditto. - (enum aarch_parse_opt_result): Ditto. - (aarch64_parse_arch): Ditto. - (aarch64_parse_cpu): Ditto. - (aarch64_parse_tune): Ditto. - (aarch64_validate_march): Ditto. - (aarch64_validate_mcpu): Ditto. - (aarch64_validate_mtune): Ditto. - * config/aarch64/aarch64-protos.h - (aarch64_rewrite_selected_cpu): Move within file. - (aarch64_print_hint_for_extensions): Share function prototype. - (aarch64_print_hint_for_arch): Ditto. - (aarch64_print_hint_for_core): Ditto. - (enum aarch_parse_opt_result): Ditto. - (aarch64_validate_march): Ditto. - (aarch64_validate_mcpu): Ditto. - (aarch64_validate_mtune): Ditto. - (aarch64_get_all_extension_candidates): Unshare prototype. - * config/aarch64/aarch64.cc - (aarch64_parse_arch): Move to aarch64-common.cc. - (aarch64_parse_cpu): Ditto. - (aarch64_parse_tune): Ditto. - (aarch64_print_hint_candidates): Ditto. - (aarch64_print_hint_for_core): Ditto. - (aarch64_print_hint_for_arch): Ditto. - (aarch64_print_hint_for_extensions): Ditto. - (aarch64_validate_mcpu): Ditto. - (aarch64_validate_march): Ditto. - (aarch64_validate_mtune): Ditto. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64.cc - (aarch64_print_hint_candidates): New helper function. - (aarch64_print_hint_for_core_or_arch): Inline into callers. - (aarch64_print_hint_for_core): Inline callee and use new helper. - (aarch64_print_hint_for_arch): Ditto. - (aarch64_print_hint_for_extensions): Use new helper. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64.cc - (aarch64_print_hint_for_extensions): Receive string as a char *. - (aarch64_parse_arch): Don't return a const struct processor *. - (aarch64_parse_cpu): Ditto. - (aarch64_parse_tune): Ditto. - (aarch64_validate_mtune): Ditto. - (aarch64_validate_mcpu): Ditto, and use temporary variables for - march/mcpu cross-check. - (aarch64_validate_march): Ditto. - (aarch64_override_options): Adjust for changed parameter types. - (aarch64_handle_attr_arch): Ditto. - (aarch64_handle_attr_cpu): Ditto. - (aarch64_handle_attr_tune): Ditto. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (struct aarch64_option_extension): Rename to.. - (struct aarch64_extension_info): ...this. - (all_extensions): Update type name. - (struct arch_to_arch_name): Rename to... - (struct aarch64_arch_info): ...this, and rename name field. - (all_architectures): Update type names, and move before... - (struct processor_name_to_arch): ...this. Rename to... - (struct aarch64_processor_info): ...this, rename name field and - add cpu field. - (all_cores): Update type name, and set new field. - (aarch64_parse_extension): Update names. - (aarch64_get_all_extension_candidates): Ditto. - (aarch64_rewrite_selected_cpu): Ditto. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * common/config/aarch64/aarch64-common.cc - (all_cores): Remove explicit generic entry. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-opts.h - (enum aarch64_processor): Rename to... - (enum aarch64_cpu): ...this, and rename the entries. - * config/aarch64/aarch64.cc - (aarch64_type): Rename type and initial value. - (struct processor): Rename member types. - (all_architectures): Rename enum members. - (all_cores): Ditto. - (aarch64_get_tune_cpu): Rename type and enum member. - * config/aarch64/aarch64.h (enum target_cpus): Remove. - (TARGET_CPU_DEFAULT): Rename default value. - (aarch64_tune): Rename type. - * config/aarch64/aarch64.opt: - (selected_tune): Rename type and default value. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64.cc (aarch64_override_options): Compare - returned feature masks directly. - -2025-01-24 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118497 - * ira-int.h (target_ira_int): Add x_ira_hard_regno_nrefs. - (ira_hard_regno_nrefs): New macro. - * ira.cc (setup_hard_regno_aclass): Remove unused code. Modify - the comment. - (setup_hard_regno_nrefs): New function. - (ira): Call it. - * ira-color.cc (calculate_saved_nregs): Check - ira_hard_regno_nrefs. - -2025-01-24 yxj-github-437 <2457369732@qq.com> - - * config/aarch64/aarch64.cc (aarch64_build_builtin_va_list): Mark - __builtin_va_list as TREE_PUBLIC. - * config/arm/arm.cc (arm_build_builtin_va_list): Likewise. - -2025-01-24 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/117670 - * Makefile.in (SARIF_REPLAY_INSTALL_NAME): New. - (install-libgdiagnostics): Use it,and exeext, rather than just - sarif-replay. - -2025-01-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/116010 - * tree-data-ref.cc (contains_ssa_ref_p_1): New function. - (contains_ssa_ref_p): Likewise. - (dr_may_alias_p): Avoid treating unanalyzed base parts without - SSA reference conservatively. - -2025-01-24 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390.h (S390_TDC_POSITIVE_ZERO): Remove. - (S390_TDC_NEGATIVE_ZERO): Remove. - (S390_TDC_POSITIVE_NORMALIZED_BFP_NUMBER): Remove. - (S390_TDC_NEGATIVE_NORMALIZED_BFP_NUMBER): Remove. - (S390_TDC_POSITIVE_DENORMALIZED_BFP_NUMBER): Remove. - (S390_TDC_NEGATIVE_DENORMALIZED_BFP_NUMBER): Remove. - (S390_TDC_POSITIVE_INFINITY): Remove. - (S390_TDC_NEGATIVE_INFINITY): Remove. - (S390_TDC_POSITIVE_QUIET_NAN): Remove. - (S390_TDC_NEGATIVE_QUIET_NAN): Remove. - (S390_TDC_POSITIVE_SIGNALING_NAN): Remove. - (S390_TDC_NEGATIVE_SIGNALING_NAN): Remove. - (S390_TDC_POSITIVE_DENORMALIZED_DFP_NUMBER): Remove. - (S390_TDC_NEGATIVE_DENORMALIZED_DFP_NUMBER): Remove. - (S390_TDC_POSITIVE_NORMALIZED_DFP_NUMBER): Remove. - (S390_TDC_NEGATIVE_NORMALIZED_DFP_NUMBER): Remove. - (S390_TDC_SIGNBIT_SET): Remove. - (S390_TDC_INFINITY): Remove. - * config/s390/s390.md (signbit<mode>2<tf_fpr>): Merge this one - (isinf<mode>2<tf_fpr>): and this one into - (<TDC_CLASS:tdc_insn><mode>2<tf_fpr>): new expander. - (isnormal<mode>2<tf_fpr>): New BFP expander. - (isnormal<mode>2): New DFP expander. - * config/s390/vector.md (signbittf2_vr): Merge this one - (isinftf2_vr): and this one into - (<tdc_insn>tf2_vr): new expander. - (signbittf2): Merge this one - (isinftf2): and this one into - (<tdc_insn>tf2): new expander. - -2025-01-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118634 - * tree-ssa-loop-ivcanon.cc (try_unroll_loop_completely): - Dump the number of estimated eliminated insns. - -2025-01-24 Saurabh Jha <saurabh.jha@arm.com> - - * config/aarch64/aarch64-sve2.md: - (*aarch64_pred_faminmax_fused): Fix to use the correct flags. - * config/aarch64/aarch64.h - (TARGET_SVE_FAMINMAX): Remove. - * config/aarch64/iterators.md: Fix iterators so that famax and - famin use correct flags. - -2025-01-24 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118572 - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Compare as - unsigned the variables whose extension bits are masked out. - -2025-01-24 Alexandre Oliva <oliva@adacore.com> - - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Document - reversep's absence of effects on range tests. Don't reject - reversep mismatches before trying compare swapping. - -2025-01-24 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118514 - * tree-eh.cc (bit_field_ref_in_bounds_p): New. - (tree_could_trap_p) <BIT_FIELD_REF>: Call it. - * gimple-fold.cc (make_bit_field_load): Check trapping status - of replacement load against original load. - -2025-01-23 John David Anglin <danglin@gcc.gnu.org> - - * config/pa/pa32-regs.h (ADDITIONAL_REGISTER_NAMES): Change - register 86 name to "%fr31L". - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118628 - * tree-vect-stmts.cc (vectorizable_store, vectorizable_load): - Initialize offvar to NULL_TREE. - -2025-01-23 Georg-Johann Lay <avr@gjlay.de> - - PR tree-optimization/118012 - PR tree-optimization/118360 - * config/avr/avr.opt (-mpr118012): New undocumented option. - * config/avr/avr-protos.h (avr_out_sextr) - (avr_emit_skip_pixop, avr_emit_skip_clear): New protos. - * config/avr/avr.cc (avr_adjust_insn_length) - [case ADJUST_LEN_SEXTR]: Handle case. - (avr_rtx_costs_1) [NEG]: Costs for NEG (ZERO_EXTEND (ZERO_EXTRACT)). - [MULT && avropt_pr118012]: Costs for MULT (x AND 1). - (avr_out_sextr, avr_emit_skip_pixop, avr_emit_skip_clear): New - functions. - * config/avr/avr.md [avropt_pr118012]: Add combine patterns with - that condition that try to work around PR118012. - (adjust_len) <sextr>: Add insn attr value. - (pixop): New code iterator. - (mulsi3) [avropt_pr118012 && !AVR_TINY]: Allow these in insn condition. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118562 - * rtl-ssa/blocks.cc (function_info::replace_phi): When converting - to a degenerate phi, make sure to remove all uses of the previous - inputs. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64-tuning-flags.def - (AARCH64_EXTRA_TUNE_CHEAP_FPMR_WRITE): New tuning flag. - * config/aarch64/aarch64.h (TARGET_CHEAP_FPMR_WRITE): New macro. - * config/aarch64/aarch64.md: Split moves into FPMR into a test - and branch around. - (aarch64_write_fpmr): New pattern. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64.cc (aarch64_memory_move_cost): Account - for the cost of moving in and out of GENERAL_SYSREGS. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64.md (*mov<SHORT:mode>_aarch64) - (*movsi_aarch64, *movdi_aarch64): Allow the source of an MSR - to be zero. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118605 - * tree-assume.cc (assume_query::m_parm_list): Change type - from bitmap & to bitmap. - -2025-01-23 Tejas Belagod <tejas.belagod@arm.com> - - * omp-low.cc (use_pointer_for_field): Use pointer if the OMP data - structure's field type is a poly-int. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/114877 - * builtins.cc (fold_builtin_frexp): Handle rvc_nan and rvc_inf cases - like rvc_zero, return passed in arg and set *exp = 0. - -2025-01-23 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * doc/sourcebuild.texi (Effective-Target Keywords): Document - 'alarm'. - -2025-01-23 Georg-Johann Lay <avr@gjlay.de> - - PR target/117726 - * config/avr/avr.cc (avr_ld_regno_p): New function. - (ashlsi3_out) [case 25,26,27,28,29,30]: Handle and tweak. - (lshrsi3_out): Same. - (avr_rtx_costs_1) [SImode, ASHIFT, LSHIFTRT]: Adjust costs. - * config/avr/avr.md (ashlsi3, *ashlsi3, *ashlsi3_const): - Add "r,r,C4L" alternative. - (lshrsi3, *lshrsi3, *lshrsi3_const): Add "r,r,C4R" alternative. - * config/avr/constraints.md (C4R, C4L): New, - -2025-01-23 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118558 - * tree-vectorizer.h (vect_known_alignment_in_bytes): Pass - through offset to dr_misalignment. - * tree-vect-stmts.cc (get_group_load_store_type): Compute - offset applied for negative stride and use it when querying - alignment of accesses. - (vectorizable_load): Likewise. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/107741 - * common.opt: Add -fabi-version=20. - * doc/invoke.texi: Likewise. - -2025-01-23 Xi Ruoyao <xry111@xry111.site> - - PR target/118501 - * config/loongarch/loongarch.md (@xorsign<mode>3): Use - force_lowpart_subreg. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/avx10_2-512convertintrin.h: - Omit "p" for packed for FP8. - * config/i386/avx10_2convertintrin.h: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512satcvtintrin.h: Change intrin and - builtin name according to new mnemonics. - * config/i386/avx10_2satcvtintrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VCVTBF162IBS): Rename from UNSPEC_VCVTNEBF162IBS. - (UNSPEC_VCVTBF162IUBS): Rename from UNSPEC_VCVTNEBF162IUBS. - (UNSPEC_VCVTTBF162IBS): Rename from UNSPEC_VCVTTNEBF162IBS. - (UNSPEC_VCVTTBF162IUBS): Rename from UNSPEC_VCVTTNEBF162IUBS. - (UNSPEC_CVTNE_BF16_IBS_ITER): Rename to... - (UNSPEC_CVT_BF16_IBS_ITER): ...this. Adjust UNSPEC name. - (sat_cvt_sign_prefix): Adjust UNSPEC name. - (sat_cvt_trunc_prefix): Ditto. - (avx10_2_cvt<sat_cvt_trunc_prefix>nebf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): - Rename to... - (avx10_2_cvt<sat_cvt_trunc_prefix>bf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): - ...this. Change instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512convertintrin.h: Change intrin and - builtin name according to new mnemonics. - * config/i386/avx10_2convertintrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VCVTPH2BF8): Rename from UNSPEC_VCVTNEPH2BF8. - (UNSPEC_VCVTPH2BF8S): Rename from UNSPEC_VCVTNEPH2BF8S. - (UNSPEC_VCVTPH2HF8): Rename from UNSPEC_VCVTNEPH2HF8. - (UNSPEC_VCVTPH2HF8S): Rename from UNSPEC_VCVTNEPH2HF8S. - (UNSPEC_CONVERTPH2FP8): Rename from UNSPEC_NECONVERTPH2FP8. - Adjust UNSPEC name. - (convertph2fp8): Rename from neconvertph2fp8. Adjust - iterator map. - (vcvt<neconvertph2fp8>v8hf): Rename to... - (vcvt<neconvertph2fp8>v8hf): ...this. - (*vcvt<neconvertph2fp8>v8hf): Rename to... - (*vcvt<neconvertph2fp8>v8hf): ...this. - (vcvt<neconvertph2fp8>v8hf_mask): Rename to... - (vcvt<neconvertph2fp8>v8hf_mask): ...this. - (*vcvt<neconvertph2fp8>v8hf_mask): Rename to... - (*vcvt<neconvertph2fp8>v8hf_mask): ...this. - (vcvt<neconvertph2fp8><mode><mask_name>): Rename to... - (vcvt<convertph2fp8><mode><mask_name>): ...this. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512convertintrin.h: Change intrin and - builtin name according to new mnemonics. - * config/i386/avx10_2convertintrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VCVT2PH2BF8): Rename from UNSPEC_VCVTNE2PH2BF8. - (UNSPEC_VCVT2PH2BF8S): Rename from UNSPEC_VCVTNE2PH2BF8S. - (UNSPEC_VCVT2PH2HF8): Rename from UNSPEC_VCVTNE2PH2HF8. - (UNSPEC_VCVT2PH2HF8S): Rename from UNSPEC_VCVTNE2PH2HF8S. - (UNSPEC_CONVERTFP8_PACK): Rename from UNSPEC_NECONVERTFP8_PACK. - Adjust UNSPEC name. - (convertfp8_pack): Rename from neconvertfp8_pack. Adjust - iterator map. - (vcvt<neconvertfp8_pack><mode><mask_name>): Rename to... - (vcvt<convertfp8_pack><mode><mask_name>): ...this. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/i386-expand.cc - (ix86_expand_fp_compare): Adjust comments. - (ix86_expand_builtin): Adjust switch case. - * config/i386/i386.md (cmpibf): Change instruction name output. - * config/i386/sse.md (UNSPEC_VCOMSBF16): Removed. - (avx10_2_comisbf16_v8bf): New. - (avx10_2_comsbf16_v8bf): Removed. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VFPCLASSBF16); Rename from UNSPEC_VFPCLASSPBF16. - (avx10_2_getexppbf16_<mode><mask_name>): Rename to... - (avx10_2_getexpbf16_<mode><mask_name>): ...this. - Change instruction name output. - (avx10_2_fpclasspbf16_<mode><mask_scalar_merge_name>): - Rename to... - (avx10_2_fpclassbf16_<mode><mask_scalar_merge_name>): ...this. - Change instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VSCALEFBF16): Rename from UNSPEC_VSCALEFPBF16. - (avx10_2_scalefpbf16_<mode><mask_name>): Rename to... - (avx10_2_scalefbf16_<mode><mask_name>): ...this. - Change instruction name output. - (avx10_2_rsqrtpbf16_<mode><mask_name>): Rename to... - (avx10_2_rsqrtbf16_<mode><mask_name>): ...this. - Change instruction name output. - (avx10_2_sqrtnepbf16_<mode><mask_name>): Rename to... - (avx10_2_sqrtbf16_<mode><mask_name>): ...this. - Change instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_VRNDSCALEBF16): Rename from UNSPEC_VRNDSCALENEPBF16. - (UNSPEC_VREDUCEBF16): Rename from UNSPEC_VREDUCENEPBF16. - (UNSPEC_VGETMANTBF16): Rename from UNSPEC_VGETMANTPBF16. - (BF16IMMOP): Adjust iterator due to UNSPEC name change. - (bf16immop): Ditto. - (avx10_2_<bf16immop>pbf16_<mode><mask_name>): Rename to... - (avx10_2_<bf16immop>bf16_<mode><mask_name>): ...this. Change - instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512minmaxintrin.h: Change intrin and - builtin name according to new mnemonics. - * config/i386/avx10_2minmaxintrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (UNSPEC_MINMAXBF16): Rename from UNSPEC_MINMAXNEPBF16. - (avx10_2_minmaxnepbf16_<mode><mask_name>): Rename to... - (avx10_2_minmaxbf16_<mode><mask_name>): ...this. Change - instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (avx10_2_<code>pbf16_<mode><mask_name>): Rename to... - (avx10_2_<code>bf16_<mode><mask_name>): ...this. - Change instruction name output. - (avx10_2_cmppbf16_<mode><mask_scalar_merge_name>): Rename to... - (avx10_2_cmpbf16_<mode><mask_scalar_merge_name>): ...this. - Change instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - names according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md - (avx10_2_fmaddnepbf16_<mode>_maskz): Rename to... - (avx10_2_fmaddbf16_<mode>_maskz): ...this. Adjust emit_insn. - (avx10_2_fmaddnepbf16_<mode><sd_maskz_name>): Rename to... - (avx10_2_fmaddbf16_<mode><sd_maskz_name>): ...this. - Change instruction name output. - (avx10_2_fmaddnepbf16_<mode>_mask): Rename to... - (avx10_2_fmaddbf16_<mode>_mask): ...this. - Change instruction name output. - (avx10_2_fmaddnepbf16_<mode>_mask3): Rename to... - (avx10_2_fmaddbf16_<mode>_mask3): ...this. - Change instruction name output. - (avx10_2_fnmaddnepbf16_<mode>_maskz): Rename to... - (avx10_2_fnmaddbf16_<mode>_maskz): ...this. Adjust emit_insn. - (avx10_2_fnmaddnepbf16_<mode><sd_maskz_name>): Rename to... - (avx10_2_fnmaddbf16_<mode><sd_maskz_name>): ...this. - Change instruction name output. - (avx10_2_fnmaddnepbf16_<mode>_mask): Rename to... - (avx10_2_fnmaddbf16_<mode>_mask): ...this. - Change instruction name output. - (avx10_2_fnmaddnepbf16_<mode>_mask3): Rename to... - (avx10_2_fnmaddbf16_<mode>_mask3): ...this. - Change instruction name output. - (avx10_2_fmsubnepbf16_<mode>_maskz): Rename to... - (avx10_2_fmsubbf16_<mode>_maskz): ...this. Adjust emit_insn. - (avx10_2_fmsubnepbf16_<mode><sd_maskz_name>): Rename to... - (avx10_2_fmsubbf16_<mode><sd_maskz_name>): ...this. - Change instruction name output. - (avx10_2_fmsubnepbf16_<mode>_mask): Rename to... - (avx10_2_fmsubbf16_<mode>_mask): ...this. - Change instruction name output. - (avx10_2_fmsubnepbf16_<mode>_mask3): Rename to... - (avx10_2_fmsubbf16_<mode>_mask3): ...this. - Change instruction name output. - (avx10_2_fnmsubnepbf16_<mode>_maskz): Rename to... - (avx10_2_fnmsubbf16_<mode>_maskz): ...this. Adjust emit_insn. - (avx10_2_fnmsubnepbf16_<mode><sd_maskz_name>): Rename to... - (avx10_2_fnmsubbf16_<mode><sd_maskz_name>): ...this. - Change instruction name output. - (avx10_2_fnmsubnepbf16_<mode>_mask): Rename to... - (avx10_2_fnmsubbf16_<mode>_mask): ...this. - Change instruction name output. - (avx10_2_fnmsubnepbf16_<mode>_mask3): Rename to... - (avx10_2_fnmsubbf16_<mode>_mask3): ...this. - Change instruction name output. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin - name according to new mnemonics. - * config/i386/avx10_2bf16intrin.h: Ditto. - * config/i386/i386-builtin.def (BDESC): Ditto. - * config/i386/sse.md (div<mode>3): Adjust emit_insn. - (avx10_2_<insn>nepbf16_<mode><mask_name>): Rename to... - (avx10_2_<insn>bf16_<mode><mask_name>): ...this. Change - instruction name output. - (avx10_2_rcppbf16_<mode><mask_name>): Rename to... - (avx10_2_rcpbf16_<mode><mask_name>):...this. Change - instruction name output. - -2025-01-22 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390.cc: Fix arch15 machine string which must not - be empty. - -2025-01-22 Richard Sandiford <richard.sandiford@arm.com> - - * config/aarch64/aarch64.md (aarch64_read_sysregti): Change - the source predicate to aarch64_reg_or_zero. - -2025-01-22 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch.md - (<optab>_alsl_reversesi_extended): Add '&' to the destination - register constraint and append '0' to the first source register - constraint to indicate the destination register cannot be same - as the second source register, and change the split condition to - reload_completed so that the insn will be split only after RA in - order to obtain allocated registers that satisfy the above - constraints. - -2025-01-21 Jeff Law <jlaw@ventanamicro.com> - - Revert: - 2024-10-29 yulong <shiyulong@iscas.ac.cn> - - * config.gcc: Add riscv_cmo.h. - * config/riscv/riscv_cmo.h: New file. - -2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118483 - * match.pd (`x ==/!= ~x`): Allow for an optional convert - and use itwise_inverted_equal_p/maybe_bit_not instead of - directly matching bit_not. - -2025-01-21 Robin Dapp <rdapp@ventanamicro.com> - - * config/riscv/riscv.cc (riscv_file_end): Fix format string. - (riscv_lshift_subword): Mark MODE as unused. - -2025-01-21 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-passes.cc (avr_emit_shift) [ASHIFT,HImode]: - Allow offsets 5 and 6 as 3op provided have MUL and a scratch. - * config/avr/avr.cc (avr_optimize_size_max_p): New function. - (avr_out_ashlhi3_mul): New function. - (ashlhi3_out) [case 4, 5, 6]: Better speed for -Os. - * config/avr/avr.md (isa) <mul, no_mul>: New attr values. - (*ashlhi3_const): Add alternative for offsets 5 and 6. - -2025-01-21 Jin Ma <jinma@linux.alibaba.com> - - PR target/116593 - * config/riscv/constraints.md (vl): New. - * config/riscv/thead-vector.md: Replacing rK with rvl. - * config/riscv/vector.md: Likewise. - -2025-01-21 Denis Chertykov <chertykov@gmail.com> - - * lra-spills.cc (assign_stack_slot_num_and_sort_pseudos): Use known_ge - to compare sizes. - -2025-01-21 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * config/riscv/predicates.md (consecutive_bits_operand): Properly - handle (const_int 0). - -2025-01-21 Alfie Richards <alfie.richards@arm.com> - - * config/aarch64/aarch64.opt.urls: Regenerate - -2025-01-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118569 - * cfgloopmanip.cc (fix_loop_placement): When the loops - nesting parents changed, mark all blocks to be scanned - for LC PHI uses. - (fix_bb_placements): Remove code moved into fix_loop_placement. - -2025-01-21 Vladimir Miloserdov <vladimir.miloserdov@arm.com> - - * config/aarch64/aarch64-c.cc - (aarch64_update_cpp_builtins): Add new flag TARGET_LUT. - * config/aarch64/aarch64-sve-builtins-shapes.cc - (struct luti_base): Shape for lut intrinsics. - (SHAPE): Specializations for lut shapes for luti2 and luti4.. - * config/aarch64/aarch64-sve-builtins-shapes.h: Declare lut - intrinsics. - * config/aarch64/aarch64-sve-builtins-sve2.cc - (class svluti_lane_impl): Define expand for lut intrinsics. - (FUNCTION): Define expand for lut intrinsics. - * config/aarch64/aarch64-sve-builtins-sve2.def - (REQUIRED_EXTENSIONS): Declare lut intrinsics behind lut flag. - (svluti2_lane): Define intrinsic behind flag. - (svluti4_lane): Define intrinsic behind flag. - * config/aarch64/aarch64-sve-builtins-sve2.h: Declare lut - intrinsics. - * config/aarch64/aarch64-sve-builtins.cc - (TYPES_bh_data): New type for byte and halfword. - (bh_data): Type array for byte and halfword. - (h_data): Type array for halfword. - * config/aarch64/aarch64-sve2.md - (@aarch64_sve_luti<LUTI_BITS><mode>): Instruction patterns for - lut intrinsics. - * config/aarch64/iterators.md: Iterators and attributes for lut - intrinsics. - -2025-01-21 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/118273 - * tree-vect-stmts.cc (vectorizable_simd_clone_call): Use nvectors when - doing mask registrations. - -2025-01-21 Tamar Christina <tamar.christina@arm.com> - - * config.gcc (aarch64-*-elf): Drop ILP32 from default multilibs. - -2025-01-21 Lulu Cheng <chenglulu@loongson.cn> - - * config/loongarch/loongarch-protos.h - (loongarch_reset_previous_fndecl): Add function declaration. - (loongarch_save_restore_target_globals): Likewise. - (loongarch_register_pragmas): Likewise. - * config/loongarch/loongarch-target-attr.cc - (loongarch_option_valid_attribute_p): Optimize the processing - of attributes. - (loongarch_pragma_target_parse): New functions. - (loongarch_register_pragmas): Likewise. - * config/loongarch/loongarch.cc - (loongarch_reset_previous_fndecl): New functions. - (loongarch_set_current_function): When the old_tree is the same - as the new_tree, the rules for using registers, etc., - are set according to the option values to ensure that the - pragma can be processed correctly. - * config/loongarch/loongarch.h (REGISTER_TARGET_PRAGMAS): - Define macro. - * doc/extend.texi: Supplemental Documentation. - -2025-01-21 Lulu Cheng <chenglulu@loongson.cn> - - * attr-urls.def: Regenerate. - * config.gcc: Add loongarch-target-attr.o to extra_objs. - * config/loongarch/loongarch-protos.h - (loongarch_option_valid_attribute_p): Function declaration. - (loongarch_option_override_internal): Likewise. - * config/loongarch/loongarch.cc - (loongarch_option_override_internal): Delete the modifications - to target_option_default_node and target_option_current_node. - (loongarch_set_current_function): Add annotation information. - (loongarch_option_override): add assignment operations to - target_option_default_node and target_option_current_node. - (TARGET_OPTION_VALID_ATTRIBUTE_P): Define. - * config/loongarch/t-loongarch: Add compilation of target file - loongarch-target-attr.o. - * doc/extend.texi: Add description information of LoongArch - Function Attributes. - * config/loongarch/loongarch-target-attr.cc: New file. - -2025-01-21 Alfie Richards <alfie.richards@arm.com> - - * config/aarch64/aarch64.cc - (aarch64_process_target_version_attr): Add experimental warning. - * config/aarch64/aarch64.opt: Add command line option to disable - warning. - * doc/invoke.texi: Add documentation for -W[no-]experimental-fmv-target. - -2025-01-20 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118560 - * lra-constraints.cc (invalid_mode_reg_p): Exchange args in - hard_reg_set_subset_p call. - -2025-01-20 Jeff Law <jlaw@ventanamicro.com> - - PR target/114442 - * config/riscv/xiangshan.md: Add missing insn types to a - new dummy insn reservation. - -2025-01-20 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * config/riscv/riscv.md (reassocating constant addition): Adjust - condition to avoid creating an unrecognizable insn. - -2025-01-20 Denis Chertykov <chertykov@gmail.com> - - PR rtl-optimization/117868 - * lra-spills.cc (assign_stack_slot_num_and_sort_pseudos): Reuse slots - only without allocated memory or only with equal or smaller registers - with equal or smaller alignment. - (lra_spill): Print slot size as width. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118348 - * tree-vectorizer.cc (vec_info::move_dr): Copy - STMT_VINFO_SIMD_LANE_ACCESS_P. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - Revert: - 2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118384 - * tree-vectorizer.cc (vec_info::move_dr): Copy - STMT_VINFO_SIMD_LANE_ACCESS_P. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118384 - * tree-vectorizer.cc (vec_info::move_dr): Copy - STMT_VINFO_SIMD_LANE_ACCESS_P. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118501 - * config/aarch64/aarch64.md (@xorsign<mode>3): Use - force_lowpart_subreg. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118531 - * config/aarch64/aarch64.md (*insv_reg<mode>_<SUBDI_BITS>) - (*aarch64_bfi<GPI:mode><ALLX:mode>_<SUBDI_BITS>) - (*aarch64_bfidi<ALLX:mode>_subreg_<SUBDI_BITS>): Add missing - simd requirements. - -2025-01-20 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/thead.md (*th_cond_mov<GPR:mode><GPR2:mode>): - Change GPR2 to X. - (*th_cond_mov<GPR:mode>): Likewise. - -2025-01-20 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118077 - PR tree-optimization/117668 - * tree-inline.cc (fold_marked_statements): Purge abnormal edges - as needed. - -2025-01-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117875 - * tree-vect-slp.cc (vect_build_slp_tree_1): Handle SSA copies. - -2025-01-20 Xi Ruoyao <xry111@xry111.site> - - PR target/115921 - * config/loongarch/loongarch-protos.h - (loongarch_reassoc_shift_bitwise): New function prototype. - * config/loongarch/loongarch.cc - (loongarch_reassoc_shift_bitwise): Implement. - * config/loongarch/loongarch.md - (*alslsi3_extend_subreg): New define_insn_and_split. - (<any_bitwise:optab>_shift_reverse<X:mode>): New - define_insn_and_split. - (<any_bitwise:optab>_alsl_reversesi_extended): New - define_insn_and_split. - (zero_extend_ashift): Remove as it's just a special case of - and_shift_reversedi, and it does not make too much sense to - write "alsl.d rd,rs,r0,shamt" instead of "slli.d rd,rs,shamt". - (bstrpick_alsl_paired): Remove as it is already done by - splitting and_shift_reversedi into and + ashift first, then - late combining the ashift and a further add. - -2025-01-20 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/constraints.md (Yy): New define_constriant. - * config/loongarch/loongarch.cc (loongarch_print_operand): - For "%M", output the index of bits to be used with - bstrins/bstrpick. - * config/loongarch/predicates.md (ins_zero_bitmask_operand): - Exclude low_bitmask_operand as for low_bitmask_operand it's - always better to use bstrpick instead of bstrins. - (and_operand): New define_predicate. - * config/loongarch/loongarch.md (any_or): New - define_code_iterator. - (bitwise_operand): New define_code_attr. - (*<optab:any_or><mode:GPR>3): New define_insn. - (*and<mode:GPR>3): New define_insn. - (<optab:any_bitwise><mode:X>3): New define_expand. - (and<mode>3_extended): Remove, replaced by the 3rd alternative - of *and<mode:GPR>3. - (bstrins_<mode>_for_mask): Remove, replaced by the 4th - alternative of *and<mode:GPR>3. - (*<optab:any_bitwise>si3_internal): Remove, already covered by - the *<optab:any_or><mode:GPR>3 and *and<mode:GPR>3 templates. - -2025-01-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118552 - * cfgloopmanip.cc (fix_loop_placement): Properly mark - exit source blocks as to be scanned for LC SSA update when - the loops nesting relationship changed. - (fix_loop_placements): Adjust. - (fix_bb_placements): Likewise. - -2025-01-20 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/t-nvptx (MULTILIB_OPTIONS): Don't add 'mptx=3.1' if - neither sm_30 nor sm_35 multilib variant is built. - -2025-01-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/118509 - * tree.cc (tree_invariant_p_1): Return true for TARGET_EXPR too. - -2025-01-20 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118224 - * tree-ssa-dce.cc (is_removable_allocation_p): Multiply a1 by a2 - instead of adding it. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_load_len): Deprecate - some overloads. - (s390_vec_store_len): Deprecate some overloads. - (s390_vec_load_len_r): Add. - (s390_vec_store_len_r): Add. - * config/s390/s390-c.cc (s390_vec_load_len_r): Add. - (s390_vec_store_len_r): Add. - * config/s390/vecintrin.h (vec_load_len_r): Redefine. - (vec_store_len_r): Redefine. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def: Add 128-bit variants. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/vector.md (<vec_shifts_name><mode>3): Add 128-bit - variants. - * config/s390/vx-builtins.md: Ditto. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def: Add 128-bit variants and remove - bool variants. - * config/s390/s390-builtin-types.def: Update accordinly. - * config/s390/s390.md: Emulate min/max for GPR. - * config/s390/vector.md: Add min/max patterns and emulate in - case of no VXE3. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_abs_s128): Add. - (s390_vlpq): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/vector.md (abs<mode>2): Emulate w/o VXE3. - (*abs<mode>2): Add 128-bit variant. - (*vec_sel0<mode>): Make it a ... - (vec_sel0<mode>): named pattern. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def: Add 128-bit variants. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.cc (s390_expand_vec_compare_cc): Also - consider TI modes for vectors. - * config/s390/vector.md: Enable *vec_cmp et al. for VXE3. - * config/s390/vx-builtins.md: Ditto. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/vector.md (div<mode>3): Add. - (udiv<mode>3): Add. - (mod<mode>3): Add. - (umod<mode>3): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_cntlz): Add 128-bit - integer overloads. - (s390_vclzq): Add. - (s390_vec_cnttz): Add 128-bit integer overloads. - (s390_vctzq): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.h (CTZ_DEFINED_VALUE_AT_ZERO): Define. - * config/s390/s390.md (*clzg): New insn. - (clztidi2): Exploit new insn for target arch15. - (ctzdi2): New insn. - * config/s390/vector.md (clz<mode>2): Extend modes including - 128-bit integer. - (ctz<mode>2): Likewise. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_gen_element_masks_128): Add. - (s390_vgemb): Add. - (s390_vgemh): Add. - (s390_vgemf): Add. - (s390_vgemg): Add. - (s390_vgemq): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.md (UNSPEC_VEC_VGEM): Add. - * config/s390/vecintrin.h (vec_gen_element_masks_8): Define. - (vec_gen_element_masks_16): Define. - (vec_gen_element_masks_32): Define. - (vec_gen_element_masks_64): Define. - (vec_gen_element_masks_128): Define. - * config/s390/vx-builtins.md (vgemv16qi): Add. - (vgem<mode>): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_evaluate): Add. - (s390_veval): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.md (UNSPEC_VEC_VEVAL): Add. - * config/s390/vecintrin.h (vec_evaluate): Define. - * config/s390/vector.md - (*veval<mode>_<logic_op1:logic_op_stringify><logic_op2:logic_op_stringify>): - Add. - (veval<mode>): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_vec_blend): Add. - (s390_vblendb): Add. - (s390_vblendh): Add. - (s390_vblendf): Add. - (s390_vblendg): Add. - (s390_vblendq): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.md (UNSPEC_VEC_VBLEND): Add. - * config/s390/vecintrin.h (vec_blend): Define. - * config/s390/vx-builtins.md (vblend<mode>): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def (s390_bdepg): Add. - (s390_bextg): Add. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/s390.md (UNSPEC_BDEPG): Add. - (UNSPEC_BEXTG): Add. - (bdepg): Add. - (bextg): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390.md (*lxa<LXAMODE>_index): Add. - (*lxa<LXAMODE>_displacement_index): Add. - (*lxa<LXAMODE>_index_base): Add. - (*lxa<LXAMODE>_displacement_index_base): Add. - (*lxab_displacement_index_base): Add. - (*llxa<LXAMODE>_displacement_index): Add. - (*llxa<LXAMODE>_index_base): Add. - (*llxa<LXAMODE>_displacement_index_base): Add. - (*llxab_displacement_index_base): Add. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-builtins.def: Add new instruction variants. - * config/s390/s390-builtin-types.def: Update accordingly. - * config/s390/vecintrin.h: Add new defines. - * config/s390/vector.md: Adapt insns for new instruction - variants. - * config/s390/vx-builtins.md: Ditto. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * config/s390/s390-builtins.def (B_VXE3): Define. - (B_ARCH15): Define. - * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): - Consistency checks for VXE3. - * config/s390/s390.cc (s390_expand_builtin): Consistency checks - for VXE3. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * config/s390/s390-c.cc (rid_int128): New helper function. - (s390_macro_to_expand): Deal with `vector __int128`. - (s390_cpu_cpp_builtins_internal): Bump __VEC__. - * config/s390/s390.cc (s390_handle_vectorbool_attribute): Add - 128-bit bool zvector. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * common/config/s390/s390-common.cc: Add arch15 processor flags. - * config.gcc: Add arch15 for options --with-{arch,mtune}. - * config/s390/driver-native.cc (s390_host_detect_local_cpu): - Default to arch15. - * config/s390/s390-opts.h (enum processor_type): Add - PROCESSOR_ARCH15. - * config/s390/s390.cc (processor_table,s390_issue_rate, - s390_get_sched_attrmask,s390_get_unit_mask): Add arch15. - * config/s390/s390.h (enum processor_flags): Add processor flags - for VXE3 and ARCH15. - (TARGET_CPU_VXE3): Define. - (TARGET_CPU_VXE3_P): Define. - (TARGET_CPU_ARCH15): Define. - (TARGET_CPU_ARCH15_P): Define. - (TARGET_VXE3): Define. - (TARGET_VXE3_P): Define. - (TARGET_ARCH15): Define. - (TARGET_ARCH15_P): Define. - * config/s390/s390.md: Add VXE3 and ARCH15 to cpu_facility, and - let attribute "enabled" deal with them. - * config/s390/s390.opt: Add arch15. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * config/s390/vecintrin.h: Sort definitions. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/vector.md: Stay scalar for TOINTVEC/tointvec. - -2025-01-20 Kito Cheng <kito.cheng@sifive.com> - - * config.gcc (riscv*): Install sifive_vector.h. - * config/riscv/sifive_vector.h: New. - -2025-01-20 Hongyu Wang <hongyu.wang@intel.com> - - PR target/118510 - * config/i386/i386.md (*x86_64_shld_ndd_2): Use register_operand - for operand[0] and adjust the output template to directly - generate ndd form shld pattern. - (*x86_shld_ndd_2): Likewise. - (*x86_64_shrd_ndd_2): Likewise. - (*x86_shrd_ndd_2): Likewise. - -2025-01-19 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (*movdi_internal): Reorder ISA attribute - by ascending alternative index. - -2025-01-19 Mark Wielaard <mark@klomp.org> - - * config/sparc/sparc.opt.urls: Regenerated. - -2025-01-19 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/gm2.texi (Type compatibility): Move modula2.org link - to https. - -2025-01-19 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/extend.texi (OpenMP): Adjust link to specifications. - -2025-01-18 Jeff Law <jlaw@ventanamicro.com> - - PR target/116308 - * config/riscv/riscv.cc (riscv_lshift_subword): Use gen_lowpart - rather than simplify_gen_subreg. - -2025-01-18 Michal Jires <mjires@suse.cz> - - * cgraph.cc (symbol_table::create_empty): - Move uid to symtab_node. - (test_symbol_table_test): Change expected dump id. - * cgraph.h (struct cgraph_node): - Move uid to symtab_node. - (symbol_table::register_symbol): Likewise. - * dumpfile.cc (test_capture_of_dump_calls): - Change expected dump id. - * ipa-inline.cc (update_caller_keys): - Use summary id instead of uid. - (update_callee_keys): Likewise. - * symtab.cc (symtab_node::get_dump_name): - Use uid instead of order. - -2025-01-18 Eric Botcazou <ebotcazou@adacore.com> - - PR target/118512 - * config/sparc/sparc-c.cc (sparc_target_macros): Deal with VIS 3B. - * config/sparc/sparc.cc (dump_target_flag_bits): Likewise. - (sparc_option_override): Likewise. - (sparc_vis_init_builtins): Likewise. - * config/sparc/sparc.md (fpcmp_vis): Replace TARGET_VIS3 with - TARGET_VIS3B. - (vec_cmp): Likewise. - (fpcmpu_vis): Likewise. - (vec_cmpu): Likewise. - (vcond_mask_): Likewise. - * config/sparc/sparc.opt (VIS3B): New target mask. - * doc/invoke.texi (SPARC options): Document -mvis3b. - -2025-01-18 Jin Ma <jinma@linux.alibaba.com> - - PR target/118357 - * config/riscv/riscv-vsetvl.cc: Function change_vtype_only_p always - returns false for XTheadVector. - -2025-01-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118529 - * tree-vect-stmts.cc (vectorizable_condition): Check the - shape of the vector and condition vector type are compatible. - -2025-01-18 Georg-Johann Lay <avr@gjlay.de> - - * doc/invoke.texi (AVR Options): Fix plenk at -msplit-ldst. - -2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> - Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-builtins.cc: Expand iterators. - * config/aarch64/aarch64-simd-builtins.def: Use standard names - * config/aarch64/aarch64-simd.md: Use standard names, split insn - definitions on signedness of operator and type of operands. - * config/aarch64/arm_neon.h: Use standard builtin names. - * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to - simplify splitting of insn for unsigned scalar arithmetic. - -2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> - - * config/aarch64/aarch64-sve.md: Rename insns - -2025-01-18 Tamar Christina <tamar.christina@arm.com> - - Revert: - 2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-builtins.cc: Expand iterators. - * config/aarch64/aarch64-simd-builtins.def: Use standard names - * config/aarch64/aarch64-simd.md: Use standard names, split insn - definitions on signedness of operator and type of operands. - * config/aarch64/arm_neon.h: Use standard builtin names. - * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to - simplify splitting of insn for unsigned scalar arithmetic. - -2025-01-18 Tamar Christina <tamar.christina@arm.com> - - Revert: - 2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-sve.md: Rename insns - -2025-01-18 Monk Chiang <monk.chiang@sifive.com> - - * config/riscv/riscv.cc: Remove unused variable. - -2025-01-18 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch.cc (loongarch_rtx_costs): Fix the - cost for (a + b * imm) and (a + (b << imm)) which can be - implemented with a single alsl instruction. - -2025-01-18 Xi Ruoyao <xry111@xry111.site> - - * config/loongarch/loongarch.md (alslsi3_extend): Add alsl.wu. - -2025-01-17 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/118067 - * lra-constraints.cc (invalid_mode_reg_p): New function. - (curr_insn_transform): Use it to check mode returned by target - secondary_memory_needed_mode. - -2025-01-17 Jakub Jelinek <jakub@redhat.com> - - PR target/118511 - * config/s390/s390.cc (print_operand) <case 'p'>: Use - output_operand_lossage instead of gcc_checking_assert. - (print_operand) <case 'q'>: Likewise. - (print_operand) <case 'r'>: Likewise. - -2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-sve.md: Rename insns - -2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-builtins.cc: Expand iterators. - * config/aarch64/aarch64-simd-builtins.def: Use standard names - * config/aarch64/aarch64-simd.md: Use standard names, split insn - definitions on signedness of operator and type of operands. - * config/aarch64/arm_neon.h: Use standard builtin names. - * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to - simplify splitting of insn for unsigned scalar arithmetic. - -2025-01-17 Carl Love <cel@linux.ibm.com> - - * config/rs6000/rs6000-builtins.def (__builtin_vsx_xvcvuxwdp): - Remove built-in definition. - -2025-01-17 Carl Love <cel@linux.ibm.com> - - * config/rs6000/rs6000-builtins.def (__builtin_vsx_vperm_8hi, - __builtin_vsx_vperm_8hi_uns): Remove built-in definitions. - -2025-01-17 Carl Love <cel@linux.ibm.com> - - * doc/extend.texi: Fix spelling mistake in description of the - vec_sel built-in. Add documentation of the 128-bit vec_perm - instance. - -2025-01-17 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-c.cc (DEF_BUILTIN): Add ATTRS argument to macro - definition. - * config/avr/avr.cc: Same. - (avr_init_builtins) <attr_const>: New variable that can be used - as ATTRS argument in DEF_BUILTIN. - * config/avr/builtins.def (DEF_BUILTIN): Add ATTRS parameter - to all definitions. - -2025-01-17 Georg-Johann Lay <avr@gjlay.de> - - PR target/118329 - * config/avr/avr-modes.def: Add INT_N (PSI, 24). - * config/avr/avr.cc (avr_init_builtin_int24) - <__int24>: Remove definition. - <__uint24>: Adjust definition to INT_N interface. - -2025-01-17 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118522 - * match.pd ((FTYPE) N CMP (FTYPE) M): Add convert, as in GENERIC - integral types with the same precision and sign might actually not - be compatible types. - -2025-01-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/92539 - * tree-ssa-loop-ivcanon.cc (tree_unroll_loops_completely_1): - Also try force-evaluation if ivcanon did not yet run. - (canonicalize_loop_induction_variables): - When niter was computed constant by force evaluation add a - canonical IV if we didn't unroll. - * tree-ssa-loop-niter.cc (loop_niter_by_eval): When we - don't find a proper PHI try if the exit condition scans - over a STRING_CST and simulate that. - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * config/riscv/riscv.cc - (is_zicfilp_p): New function. - (is_zicfiss_p): New function. - * config/riscv/riscv-zicfilp.cc: Update. - * config/riscv/riscv.h: Update. - * config/riscv/riscv.md: Update. - * config/riscv/riscv-c.cc: Add CFI predefine marco. - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * config/riscv/riscv.cc - (riscv_file_end): Add .note.gnu.property. - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * common/config/riscv/riscv-common.cc: Add ZICFILP ISA - string. - * config.gcc: Add riscv-zicfilp.o - * config/riscv/riscv-passes.def (INSERT_PASS_BEFORE): - Insert landing pad instructions. - * config/riscv/riscv-protos.h (make_pass_insert_landing_pad): - Declare. - * config/riscv/riscv-zicfilp.cc: New file. - * config/riscv/riscv.cc - (riscv_trampoline_init): Add landing pad instructions. - (riscv_legitimize_call_address): Likewise. - (riscv_output_mi_thunk): Likewise. - * config/riscv/riscv.h: Update. - * config/riscv/riscv.md: Add landing pad patterns. - * config/riscv/riscv.opt (TARGET_ZICFILP): Define. - * config/riscv/t-riscv: Add build rule for - riscv-zicfilp.o - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * common/config/riscv/riscv-common.cc: Add ZICFISS ISA string. - * config/riscv/predicates.md: New predicate x1x5_operand. - * config/riscv/riscv.cc - (riscv_expand_prologue): Insert shadow stack instructions. - (riscv_expand_epilogue): Likewise. - (riscv_for_each_saved_reg): Assign t0 or ra register for - sspopchk instruction. - (need_shadow_stack_push_pop_p): New function. Omit shadow - stack operation on leaf function. - * config/riscv/riscv.h - (need_shadow_stack_push_pop_p): Define. - * config/riscv/riscv.md: Add shadow stack patterns. - (save_stack_nonlocal): Add shadow stack instructions for setjump. - (restore_stack_nonlocal): Add shadow stack instructions for longjump. - * config/riscv/riscv.opt (TARGET_ZICFISS): Define. - -2025-01-16 Tamar Christina <tamar.christina@arm.com> - Richard Sandiford <richard.sandiford@arm.com> - - PR target/113257 - * config/aarch64/driver-aarch64.cc (get_cpu_from_id, DEFAULT_CPU): New. - (host_detect_local_cpu): Use it. - -2025-01-16 Tamar Christina <tamar.christina@arm.com> - - PR target/110901 - * config/aarch64/aarch64.h (MCPU_TO_MARCH_SPEC): Don't override if - march is set. - -2025-01-16 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/1180167 - * lra-constraints.cc (process_alt_operands): Use operand mode not - subreg reg mode. Add and improve debugging prints for updating - losers. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * omp-general.cc (omp_complete_construct_context): Check - "omp declare target" attribute, not "omp declare target block". - -2025-01-16 Peter Bergner <bergner@linux.ibm.com> - - * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Return - const0_rtx when there is an error. - -2025-01-16 Peter Bergner <bergner@linux.ibm.com> - - * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Use correct - array size for the loop limit. - * config/rs6000/rs6000-builtins.def: Fix field size for PMASK operand. - -2025-01-16 Liao Shihua <shihua@iscas.ac.cn> - - * config/riscv/vector.md: New attr set. - -2025-01-16 Jiawei <jiawei@iscas.ac.cn> - - * config/riscv/genrvv-type-indexer.cc (expand_floattype): New func. - (main): New type. - * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_XFQF_OPS): New def. - (vint8mf8_t): Ditto. - (vint8mf4_t): Ditto. - (vint8mf2_t): Ditto. - (vint8m1_t): Ditto. - (vint8m2_t): Ditto. - * config/riscv/riscv-vector-builtins.cc (DEF_RVV_XFQF_OPS): Ditto. - (rvv_arg_type_info::get_xfqf_float_type): Ditto. - * config/riscv/riscv-vector-builtins.def (xfqf_vector): Ditto. - (xfqf_float): Ditto. - * config/riscv/riscv-vector-builtins.h - (struct rvv_arg_type_info): New function prototype. - * config/riscv/sifive-vector.md: Update iterator. - * config/riscv/vector-iterators.md: Ditto. - -2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> - - PR tree-optimization/118487 - * tree-ssa-forwprop.cc (recognise_vec_perm_simplify_seq): - Ensure that shuffle masks are VECTOR_CSTs. - -2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> - - * tree-ssa-forwprop.cc (recognise_vec_perm_simplify_seq): - Eliminate redundant calls to to_constant(). - -2025-01-16 Richard Biener <rguenther@suse.de> - Mikael Morin <mikael@gcc.gnu.org> - - PR tree-optimization/115494 - * tree-ssa-pre.cc (phi_translate_1): Always generate a - representative for translated dependent expressions. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118430 - * tree-ssa-propagate.cc (may_propagate_copy): Return false if dest - is lhs of an [[gnu::musttail]] call. - (substitute_and_fold_dom_walker::before_dom_children): Formatting fix. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118430 - * tree-tailcall.cc: Include gimple-range.h, alloc-pool.h, sreal.h, - symbol-summary.h, ipa-cp.h and ipa-prop.h. - (find_tail_calls): If ass_var is NULL and ret_var is not, check if - IPA-VRP has not found singleton return range for it. In that case, - don't punt if ret_var is the only value in that range. Adjust the - maybe_error_musttail message otherwise to diagnose different value - being returned from the caller and callee rather than using return - slot. Formatting fixes. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - * doc/extend.texi (Using Assembly Language with C): Add Asm constexprs - to @menu. - (Basic Asm): Move @node asm constexprs before Asm Labels, rename to - Asm constexprs, change wording so that it is clearer that the constant - expression actually must not return a string literal, just some specific - container and other wording tweaks. Only talk about top-level for basic - asms in this @node, move restrictions on top-level extended asms to ... - (Extended Asm): ... here. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - PR ipa/118400 - * vec.h (vec<T, va_heap, vl_ptr>::release): Call m_vec->truncate (0) - instead of clearing m_vec->m_vecpfx.m_num. - -2025-01-16 liuhongt <hongtao.liu@intel.com> - - PR target/118489 - * config/i386/sse.md (VF1_AVX512BW): Fix typo. - -2025-01-16 Richard Biener <rguenther@suse.de> - - PR tree-optimization/115895 - * tree-vect-stmts.cc (get_group_load_store_type): When we - might overrun because the group size is not a multiple of the - vector size we cannot use loop masking since that does not - implement the required load shortening. - -2025-01-16 Keith Packard <keithp@keithp.com> - - * config/lm32/lm32.cc: Add several #includes. - (va_list_type): New. - (lm32_build_va_list): New function. - (lm32_builtin_va_start): Likewise. - (lm32_sd_gimplify_va_arg_expr): Likewise. - (lm32_gimplify_va_arg_expr): Likewise. - -2025-01-16 Keith Packard <keithp@keithp.com> - - * config/lm32/lm32.cc (setup_incoming_varargs): Adjust the - conditionals so that pretend_size is always computed, even - if no_rtl is set. - -2025-01-16 Keith Packard <keithp@keithp.com> - - * config/lm32/lm32.cc (lm32_setup_incoming_varargs): Skip last - named parameter when preparing to flush registers with unnamed - arguments to th stack. - -2025-01-16 Keith Packard <keithp@keithp.com> - - * config/lm32/lm32.cc (lm32_function_arg): Pass unnamed - arguments in registers too, just like named arguments. - -2025-01-16 Andi Kleen <ak@gcc.gnu.org> - - * config/i386/x86-tune-sched-core.cc: Fix incorrect comment. - -2025-01-16 Eugene Rozenfeld <erozen@microsoft.com> - - PR gcov-profile/116743 - * auto-profile.cc (afdo_annotate_cfg): Fix mismatch between the call graph node count - and the entry block count. - -2025-01-15 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/102705 - * match.pd (`(1 >> X) != 0`): Remove pattern. - (`1 >> x`): New pattern. - -2025-01-15 Sam James <sam@gentoo.org> - - * doc/extend.texi: Cleanup trailing whitespace. - -2025-01-15 Sam James <sam@gentoo.org> - - * doc/extend.texi: Add 'a' for grammar fix. - -2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * config/aarch64/tuning_models/neoverse512tvb.h (tune_flags): Update. - -2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNE_BASE): - Add AARCH64_EXTRA_TUNE_FULLY_PIPELINED_FMA. - * config/aarch64/tuning_models/ampere1b.h: Remove redundant - AARCH64_EXTRA_TUNE_FULLY_PIPELINED_FMA. - * config/aarch64/tuning_models/neoversev2.h: Likewise. - -2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * config/aarch64/aarch64.cc (aarch64_override_options): Add warning. - * doc/invoke.texi: Document -mabi=ilp32 as deprecated. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * config/bpf/core-builtins.cc (compute_field_expr): Change - VAR_DECL outcome in switch case. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * config/bpf/core-builtins.cc - (make_gimple_core_safe_access_index): Fix in condition. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * btfout.cc (get_btf_kind): Remove static from function definition. - * config/bpf/btfext-out.cc (bpf_code_reloc_add): Check if CO-RE type - is not a const or volatile. - * ctfc.h (btf_dtd_kind): Add prototype for function. - -2025-01-15 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/118472 - * fold-const.cc (operand_compare::operand_equal_p): Fix incorrect - replacement. - -2025-01-15 Richard Biener <rguenther@suse.de> - - * genmatch.cc (define_dump_logs): Make reverse lookup in - dbg_line_numbers easier by adding comments with start index - and cutting number of elements per line to 10. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR ipa/116068 - * cgraphunit.cc (symbol_table::process_new_functions): Call - bitmap_obstack_initialize (NULL); and bitmap_obstack_release (NULL) - around processing the functions. - -2025-01-15 Kito Cheng <kito.cheng@sifive.com> - - PR target/118182 - * config/riscv/autovec-opt.md (*widen_reduc_plus_scal_<mode>): Adjust - argument for expand_reduction. - (*widen_reduc_plus_scal_<mode>): Ditto. - (*fold_left_widen_plus_<mode>): Ditto. - (*mask_len_fold_left_widen_plus_<mode>): Ditto. - (*cond_widen_reduc_plus_scal_<mode>): Ditto. - (*cond_len_widen_reduc_plus_scal_<mode>): Ditto. - (*cond_widen_reduc_plus_scal_<mode>): Ditto. - * config/riscv/autovec.md (reduc_plus_scal_<mode>): Adjust argument for - expand_reduction. - (reduc_smax_scal_<mode>): Ditto. - (reduc_umax_scal_<mode>): Ditto. - (reduc_smin_scal_<mode>): Ditto. - (reduc_umin_scal_<mode>): Ditto. - (reduc_and_scal_<mode>): Ditto. - (reduc_ior_scal_<mode>): Ditto. - (reduc_xor_scal_<mode>): Ditto. - (reduc_plus_scal_<mode>): Ditto. - (reduc_smax_scal_<mode>): Ditto. - (reduc_smin_scal_<mode>): Ditto. - (reduc_fmax_scal_<mode>): Ditto. - (reduc_fmin_scal_<mode>): Ditto. - (fold_left_plus_<mode>): Ditto. - (mask_len_fold_left_plus_<mode>): Ditto. - * config/riscv/riscv-v.cc (expand_reduction): Add one more - argument for reduction code for vl0-safe. - * config/riscv/riscv-protos.h (expand_reduction): Ditto. - * config/riscv/vector-iterators.md (unspec): Add _VL0_SAFE variant of - reduction. - (ANY_REDUC_VL0_SAFE): New. - (ANY_WREDUC_VL0_SAFE): Ditto. - (ANY_FREDUC_VL0_SAFE): Ditto. - (ANY_FREDUC_SUM_VL0_SAFE): Ditto. - (ANY_FWREDUC_SUM_VL0_SAFE): Ditto. - (reduc_op): Add _VL0_SAFE variant of reduction. - (order) Ditto. - * config/riscv/vector.md (@pred_<reduc_op><mode>): New. - -2025-01-15 Richard Biener <rguenther@suse.de> - - PR tree-optimization/115777 - * tree-vect-slp.cc (vect_bb_slp_scalar_cost): Do not - cost a scalar stmt that needs to be preserved. - -2025-01-15 Michal Jires <mjires@suse.cz> - - PR lto/118238 - * lto-wrapper.cc (run_gcc): Remove link() copying. - -2025-01-15 Anton Blanchard <antonb@tenstorrent.com> - Jeff Law <jlaw@ventanamicro.com> - - PR target/118170 - * config/riscv/generic-ooo.md (generic_ooo_float_div_half): New - reservation. - -2025-01-15 Richard Sandiford <richard.sandiford@arm.com> - Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/109592 - * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): - Simplify nested shifts with subregs. - -2025-01-14 anetczuk <anetczuk@o2.pl> - - * tree-dump.cc (dequeue_and_dump): Handle OBJ_TYPE_REF. - -2025-01-14 Alexandre Oliva <oliva@adacore.com> - - * gimple-fold.cc (decode_field_reference): Rebustify to set - out parms only when returning non-NULL. - (fold_truth_andor_for_ifcombine): Bail if - decode_field_reference returns NULL. Add complementary assert - on r_const's not being set when l_const isn't. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - - * cgraph.cc (symbol_table::create_edge): Don't set - calls_declare_variant_alt in the caller. - * cgraph.h (struct cgraph_node): Remove declare_variant_alt - and calls_declare_variant_alt flags. - * cgraphclones.cc (cgraph_node::create_clone): Don't copy - calls_declare_variant_alt bit. - * gimplify.cc: Remove previously #ifdef-ed out code. - * ipa-free-lang-data.cc (free_lang_data_in_decl): Adjust code - referencing declare_variant_alt bit. - * ipa.cc (symbol_table::remove_unreachable_nodes): Likewise. - * lto-cgraph.cc (lto_output_node): Remove references to deleted - bits. - (output_refs): Adjust code referencing declare_variant_alt bit. - (input_overwrite_node): Remove references to deleted bits. - (input_refs): Adjust code referencing declare_variant_alt bit. - * lto-streamer-out.cc (lto_output): Likewise. - * lto-streamer.h (omp_lto_output_declare_variant_alt): Delete. - (omp_lto_input_declare_variant_alt): Delete. - * omp-expand.cc (expand_omp_target): Use has_omp_variant_constructs - bit to trigger pass_omp_device_lower instead of - calls_declare_variant_alt. - * omp-general.cc (struct omp_declare_variant_entry): Delete. - (struct omp_declare_variant_base_entry): Delete. - (struct omp_declare_variant_hasher): Delete. - (omp_declare_variant_hasher::hash): Delete. - (omp_declare_variant_hasher::equal): Delete. - (omp_declare_variants): Delete. - (omp_declare_variant_alt_hasher): Delete. - (omp_declare_variant_alt_hasher::hash): Delete. - (omp_declare_variant_alt_hasher::equal): Delete. - (omp_declare_variant_alt): Delete. - (omp_lto_output_declare_variant_alt): Delete. - (omp_lto_input_declare_variant_alt): Delete. - (includes): Delete unnecessary include of gt-omp-general.h. - * omp-offload.cc (execute_omp_device_lower): Remove references - to deleted bit. - (pass_omp_device_lower::gate): Likewise. - * omp-simd-clone.cc (simd_clone_create): Likewise. - * passes.cc (ipa_write_summaries): Likeise. - * symtab.cc (symtab_node::get_partitioning_class): Likewise. - * tree-inline.cc (expand_call_inline): Likewise. - (tree_function_versioning): Likewise. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Marcel Vollweiler <marcel@codesourcery.com> - - PR middle-end/114596 - PR middle-end/112779 - PR middle-end/113904 - * Makefile.in (GTFILES): Move omp-general.h earlier; required - because of moving score_wide_int declaration to that file. - * cgraph.h (struct cgraph_node): Add has_omp_variant_constructs flag. - * cgraphclones.cc (cgraph_node::create_clone): Propagate - has_omp_variant_constructs flag. - * gimplify.cc (omp_resolved_variant_calls): New. - (expand_late_variant_directive): New. - (find_supercontext): New. - (gimplify_variant_call_expr): New. - (gimplify_call_expr): Adjust parameters to make fallback available. - Update processing for "declare variant" substitution. - (is_gimple_stmt): Add OMP_METADIRECTIVE. - (omp_construct_selector_matches): Ifdef out unused function. - (omp_get_construct_context): New. - (gimplify_omp_dispatch): Replace call to deleted function - omp_resolve_declare_variant with equivalent logic. - (expand_omp_metadirective): New. - (expand_late_variant_directive): New. - (gimplify_omp_metadirective): New. - (gimplify_expr): Adjust arguments to gimplify_call_expr. Add - cases for OMP_METADIRECTIVE, OMP_NEXT_VARIANT, and - OMP_TARGET_DEVICE_MATCHES. - (gimplify_function_tree): Initialize/clean up - omp_resolved_variant_calls. - * gimplify.h (omp_construct_selector_matches): Delete declaration. - (omp_get_construct_context): Declare. - * lto-cgraph.cc (lto_output_node): Write has_omp_variant_constructs. - (input_overwrite_node): Read has_omp_variant_constructs. - * omp-builtins.def (BUILT_IN_OMP_GET_NUM_DEVICES): New. - * omp-expand.cc (expand_omp_taskreg): Propagate - has_omp_variant_constructs. - (expand_omp_target): Likewise. - * omp-general.cc (omp_maybe_offloaded): Add construct_context - parameter; use it instead of querying gimplifier state. Add - comments. - (omp_context_name_list_prop): Do not test lang_GNU_Fortran in - offload compiler, just use the string as-is. - (expr_uses_parm_decl): New. - (omp_check_context_selector): Add metadirective_p parameter. - Remove sorry for target_device selector. Add additional checks - specific to metadirective or declare variant. - (make_omp_metadirective_variant): New. - (omp_construct_traits_match): New. - (omp_context_selector_matches): Temporarily ifdef out the previous - code, and add a new implementation based on the old one with - different parameters, some unnecessary loops removed, and code - re-indented. - (omp_target_device_matches_on_host): New. - (resolve_omp_target_device_matches): New. - (omp_construct_simd_compare): Support matching of "simdlen" and - "aligned" clauses. - (omp_context_selector_set_compare): Make static. Adjust call to - omp_construct_simd_compare. - (score_wide_int): Move declaration to omp-general.h. - (omp_selector_is_dynamic): New. - (omp_device_num_check): New. - (omp_dynamic_cond): New. - (omp_context_compute_score): Ifdef out the old version and - re-implement with different parameters. - (omp_complete_construct_context): New. - (omp_resolve_late_declare_variant): Ifdef out. - (omp_declare_variant_remove_hook): Likewise. - (omp_resolve_declare_variant): Likewise. - (sort_variant): New. - (omp_get_dynamic_candidates): New. - (omp_declare_variant_candidates): New. - (omp_metadirective_candidates): New. - (omp_early_resolve_metadirective): New. - (omp_resolve_variant_construct): New. - * omp-general.h (score_wide_int): Moved here from omp-general.cc. - (struct omp_variant): New. - (make_omp_metadirective_variant): Declare. - (omp_construct_traits_to_codes): Delete declaration. - (omp_check_context_selector): Adjust parameters. - (omp_context_selector_matches): Likewise. - (omp_context_selector_set_compare): Delete declaration. - (omp_resolve_declare_variant): Likewise. - (omp_declare_variant_candidates): Declare. - (omp_metadirective_candidates): Declare. - (omp_get_dynamic_candidates): Declare. - (omp_early_resolve_metadirective): Declare. - (omp_resolve_variant_construct): Declare. - (omp_dynamic_cond): Declare. - * omp-offload.cc (resolve_omp_variant_cookies): New. - (execute_omp_device_lower): Call the above function to resolve - variant directives. Remove call to omp_resolve_declare_variant. - (pass_omp_device_lower::gate): Check has_omp_variant_construct bit. - * omp-simd-clone.cc (simd_clone_create): Propagate - has_omp_variant_constructs bit. - * tree-inline.cc (expand_call_inline): Likewise. - (tree_function_versioning): Likewise. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - - * doc/generic.texi (OpenMP): Document OMP_METADIRECTIVE, - OMP_NEXT_VARIANT, and OMP_TARGET_DEVICE_MATCHES. - * fold-const.cc (operand_compare::hash_operand): Ignore - the new nodes. - * gimple-expr.cc (is_gimple_val): Allow OMP_NEXT_VARIANT - and OMP_TARGET_DEVICE_MATCHES. - * gimple.cc (get_gimple_rhs_num_ops): OMP_NEXT_VARIANT and - OMP_TARGET_DEVICE_MATCHES are both GIMPLE_SINGLE_RHS. - * tree-cfg.cc (tree_node_can_be_shared): Allow sharing of - OMP_NEXT_VARIANT. - * tree-inline.cc (remap_gimple_op_r): Ignore subtrees of - OMP_NEXT_VARIANT. - * tree-pretty-print.cc (dump_generic_node): Handle OMP_METADIRECTIVE, - OMP_NEXT_VARIANT, and OMP_TARGET_DEVICE_MATCHES. - * tree-ssa-operands.cc (operands_scanner::get_expr_operands): - Ignore operands of OMP_NEXT_VARIANT and OMP_TARGET_DEVICE_MATCHES. - * tree.def (OMP_METADIRECTIVE): New. - (OMP_NEXT_VARIANT): New. - (OMP_TARGET_DEVICE_MATCHES): New. - * tree.h (OMP_METADIRECTIVE_VARIANTS): New. - (OMP_METADIRECTIVE_VARIANT_SELECTOR): New. - (OMP_METADIRECTIVE_VARIANT_DIRECTIVE): New. - (OMP_METADIRECTIVE_VARIANT_BODY): New. - (OMP_NEXT_VARIANT_INDEX): New. - (OMP_NEXT_VARIANT_STATE): New. - (OMP_TARGET_DEVICE_MATCHES_SELECTOR): New. - (OMP_TARGET_DEVICE_MATCHES_PROPERTIES): New. - -2025-01-14 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118456 - * gimple-fold.cc (decode_field_reference): Punt if shifting - after changing signedness. - (fold_truth_andor_for_ifcombine): Check extension bits in - constants before clipping. - -2025-01-14 Robin Dapp <rdapp@ventanamicro.com> - - PR target/118154 - * config/riscv/riscv-vsetvl.cc (MAX_LMUL): New define. - (pre_vsetvl::earliest_fuse_vsetvl_info): Use. - (pre_vsetvl::pre_global_vsetvl_info): New predicate with equal - ratio. - * config/riscv/riscv-vsetvl.def: Use. - -2025-01-14 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/118140 - * gimple-match-exports.cc (maybe_resimplify_conditional_op): Add - COND_EXPR when we simplified to a scalar gimple value but still - have an else value. - -2025-01-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118405 - * tree-vect-stmts.cc (vectorizable_load): When we fall back - to scalar loads make sure we properly convert to vector(1) T - when there was only a single vector element. - -2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> - - * config/riscv/riscv-v.cc (expand_const_vector): Shift in Xmode. - -2025-01-14 Jiufu Guo <guojiufu@linux.ibm.com> - - PR target/116030 - * config/rs6000/vsx.md (vsx_stxvd2x4_le_const_<mode>): Add clobber - and guard with !altivec_indexed_or_indirect_operand. - -2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/117682 - * config/riscv/riscv-v.cc (expand_const_vector): Fall back to - merging if either step is negative. - -2025-01-13 Xi Ruoyao <xry111@xry111.site> - - PR target/115921 - * config/riscv/riscv.md (<optab>_shift_reverse): Remove - check for TARGET_ZBA. - -2025-01-13 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118418 - * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): - Take STORE_FLAG_VALUE into account when handling signed comparisons - of comparison results. - -2025-01-13 Xi Ruoyao <xry111@xry111.site> - - PR target/115921 - * config/riscv/riscv.md (<optab>_shift_reverse): Only check - popcount_hwi if !TARGET_ZBS. - -2025-01-13 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/riscv-vsetvl.cc (demand_system::use_max_sew): Also - set the ratio for PREV. - -2025-01-13 Vineet Gupta <vineetg@rivosinc.com> - - * config/riscv/riscv.cc (riscv_register_move_cost): Remove buggy - check. - -2025-01-13 Jin Ma <jinma@linux.alibaba.com> - - * config/riscv/riscv.cc (riscv_build_integer_1): Change - 1UL/1ULL to HOST_WIDE_INT_1U. - -2025-01-13 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/107455 - * postreload.cc (reload_cse_regs_1): Take advantage of conditional - equivalences. - -2025-01-13 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118409 - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Apply the - signbit mask to the right-hand XOR operand too. - -2025-01-13 Jakub Jelinek <jakub@redhat.com> - - PR target/115910 - * expr.cc (expand_expr_divmod): Prefix the TDF_DETAILS note with - ";; " and add a space before (needed tie breaker). Formatting fixes. - -2025-01-13 Richard Biener <rguenther@suse.de> - Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - PR tree-optimization/117119 - * tree-data-ref.cc (initialize_matrix_A): Check whether - an INTEGER_CST fits in HWI, otherwise return chrec_dont_know. - -2025-01-13 Michal Jires <mjires@suse.cz> - - PR lto/118181 - * lto-ltrans-cache.cc (ltrans_file_cache::create_item): - Pass checksum by reference. - * lto-ltrans-cache.h: Likewise. - -2025-01-13 Michal Jires <mjires@suse.cz> - - * lockfile.cc (LOCKFILE_USE_FCNTL): New. - (lockfile::lock_write): Use LOCKFILE_USE_FCNTL. - (lockfile::try_lock_write): Use LOCKFILE_USE_FCNTL. - (lockfile::lock_read): Use LOCKFILE_USE_FCNTL. - (lockfile::unlock): Use LOCKFILE_USE_FCNTL. - (lockfile::lockfile_supported): Use LOCKFILE_USE_FCNTL. - -2025-01-13 liuhongt <hongtao.liu@intel.com> - - * config/i386/i386-expand.cc (ix86_expand_vecop_qihi2): - Refactor to avoid redundant TARGET_AVX512BW in many places. - -2025-01-13 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/117997 - PR middle-end/118415 - * expr.cc (assemble_crc_table): Make static, remove id argument, - use output_constant_def. Emit note if -fdump-rtl-expand-details - about which table has been emitted. - (generate_crc_table): Make static, adjust assemble_crc_table - caller, call it always. - (calculate_table_based_CRC): Make static. - * internal-fn.cc (expand_crc_optab_fn): Emit note if - -fdump-rtl-expand-details about using optab for crc. Formatting fix. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha.cc (alpha_expand_block_move): Use a HImode - subreg of a DImode register to hold data from an aligned HImode - load. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha.cc (alpha_expand_block_move): Merge loaded - data from pairs of SImode registers into single DImode registers - if to be used with unaligned stores. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha.cc (alpha_option_override): Ignore CPU - flags corresponding to features the enabling or disabling of - which has been requested with an individual feature option. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - PR middle-end/64242 - * config/alpha/alpha.md (`builtin_longjmp'): Restore frame - pointer last. Add frame clobber and schedule blockage. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * config/alpha/alpha.md (builtin_longjmp): Add memory clobbers. - -2025-01-12 Richard Biener <rguenther@suse.de> - - * tree-vect-slp.cc (vect_analyze_slp): Release saved_stmts - vector. - (vect_build_slp_tree_2): Release new_oprnds_info when not - used. - (vect_analyze_slp): Release root_stmts when gcond SLP - build fails. - -2025-01-12 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/118411 - * final.cc (get_attr_length_1): Handle asm for CALL_INSN - and JUMP_INSNs. - -2025-01-11 mengqinggang <mengqinggang@loongson.cn> - - * config/loongarch/lasx.md: Use new loongarch_output_move. - * config/loongarch/loongarch-protos.h (loongarch_output_move): - Change parameters from (rtx, rtx) to (rtx *). - * config/loongarch/loongarch.cc (loongarch_output_move): - Generate final immediate for lu12i.w and lu52i.d. - * config/loongarch/loongarch.md: - Generate final immediate for lu32i.d and lu52i.d. - * config/loongarch/lsx.md: Use new loongarch_output_move. - -2025-01-11 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/88575 - * vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Query - relation between op0 and op1 and utilize it. - (simplify_using_ranges::simplify): Do not eliminate float checks. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost): - Don't skip over gconds. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * tree-vect-loop-manip.cc (vect_do_peeling): Adjust skip_vector - condition to only omit the edge if we're versioning for - alignment. - -2025-01-10 Tamar Christina <Tamar.Christina@arm.com> - Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * tree-vect-loop-manip.cc (vect_do_peeling): Update immediate - dominators of nodes that were dominated by the prolog skip block - after inserting vector skip edge. Initialize prolog variable to - NULL to avoid bogus -Wmaybe-uninitialized during bootstrap. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * tree-vect-loop-manip.cc (vect_do_peeling): Avoid emitting an - epilogue guard for inverted early-exit loops. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): - Set need_peeling_for_alignment flag on read DRs instead of - failing vectorization. Punt on gathers. - (dr_misalignment): Handle non-constant target alignments. - (vect_compute_data_ref_alignment): If need_peeling_for_alignment - flag is set on the DR, then override the target alignment chosen - by the preferred_vector_alignment hook to choose a safe - alignment. - (vect_supportable_dr_alignment): Override - support_vector_misalignment hook if need_peeling_for_alignment - is set on the DR: in this case we must return - dr_unaligned_unsupported in order to force peeling. - * tree-vect-loop-manip.cc (vect_do_peeling): Allow prolog - peeling by a compile-time non-constant amount. - * tree-vectorizer.h (dr_vec_info): Add new flag - need_peeling_for_alignment. - -2025-01-10 Tamar Christina <tamar.christina@arm.com> - - * config/aarch64/aarch64-cores.def (AARCH64_CORE): Fix cortex-x4 parts - num. - -2025-01-10 Richard Biener <rguenther@suse.de> - - * df-core.cc (rest_of_handle_df_finish): Release dflow for - problems without free function (like LR). - * gimple-crc-optimization.cc (crc_optimization::loop_may_calculate_crc): - Release loop_bbs on all exits. - * tree-vectorizer.h (supportable_indirect_convert_operation): Change. - * tree-vect-generic.cc (expand_vector_conversion): Adjust. - * tree-vect-stmts.cc (vectorizable_conversion): Use auto_vec for - converts. - (supportable_indirect_convert_operation): Get a reference to - the output vector of converts. - -2025-01-10 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/118332 - * config/arm/arm-mve-builtins.cc (wrap_type_in_struct): Delete. - (register_type_decl): Delete. - (register_builtin_tuple_types): Use - lang_hooks.types.simulate_record_decl. - -2025-01-10 Richard Biener <rguenther@suse.de> - - * gcse.cc (pass_hardreg_pre::gate): Wrap possibly unused - fun argument. - -2025-01-10 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/117467 - PR rtl-optimization/117934 - * ext-dce.cc (ext_dce_execute): Do nothing if a memory - allocation estimate exceeds what is allowed by - --param max-gcse-memory. - -2025-01-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * config/s390/s390-protos.h (s390_emit_compare): Add mode - parameter for the resulting RTX. - * config/s390/s390.cc (s390_emit_compare): Dito. - (s390_emit_compare_and_swap): Change. - (s390_expand_vec_strlen): Change. - (s390_expand_cs_hqi): Change. - (s390_expand_split_stack_prologue): Change. - * config/s390/s390.md (*add<mode>3_carry1_cc): Renamed to ... - (add<mode>3_carry1_cc): this and in order to use the - corresponding gen function, encode CC mode into pattern. - (*sub<mode>3_borrow_cc): Renamed to ... - (sub<mode>3_borrow_cc): this and in order to use the - corresponding gen function, encode CC mode into pattern. - (*add<mode>3_alc_carry1_cc): Renamed to ... - (add<mode>3_alc_carry1_cc): this and in order to use the - corresponding gen function, encode CC mode into pattern. - (sub<mode>3_slb_borrow1_cc): New. - (uaddc<mode>5): New. - (usubc<mode>5): New. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * doc/passes.texi: Document hardreg PRE pass. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64.h (HARDREG_PRE_REGNOS): New macro. - * gcse.cc (doing_hardreg_pre_p): New global variable. - (do_load_motion): New boolean check. - (current_hardreg_regno): New global variable. - (compute_local_properties): Unset transp for hardreg clobbers. - (prune_hardreg_uses): New function. - (want_to_gcse_p): Use different checks for hardreg PRE. - (oprs_unchanged_p): Disable load motion for hardreg PRE pass. - (hash_scan_set): For hardreg PRE, skip non-hardreg sets and - check for hardreg clobbers. - (record_last_mem_set_info): Skip for hardreg PRE. - (compute_pre_data): Prune hardreg uses from transp bitmap. - (pre_expr_reaches_here_p_work): Add sentence to comment. - (insert_insn_start_basic_block): New functions. - (pre_edge_insert): Don't add hardreg sets to predecessor block. - (pre_delete): Use hardreg for the reaching reg. - (reset_hardreg_debug_uses): New function. - (pre_gcse): For hardreg PRE, reset debug uses and don't insert - copies. - (one_pre_gcse_pass): Disable load motion for hardreg PRE. - (execute_hardreg_pre): New. - (class pass_hardreg_pre): New. - (pass_hardreg_pre::gate): New. - (make_pass_hardreg_pre): New. - * passes.def (pass_hardreg_pre): New pass. - * tree-pass.h (make_pass_hardreg_pre): New. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * multiple_target.cc - (redirect_to_specific_clone): Assert that "target" attribute is - used for FMV before checking it. - (ipa_target_clone): Skip redirect_to_specific_clone on some - targets. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * doc/invoke.texi: Add new AArch64 flags. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_7A): Add XS. - * config/aarch64/aarch64-option-extensions.def (XS): New flag. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_7A): Add WFXT. - * config/aarch64/aarch64-option-extensions.def (WFXT): New flag. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_4A): Add RCPC2. - * config/aarch64/aarch64-option-extensions.def - (RCPC2): New flag. - (RCPC3): Add RCPC2 dependency. - * config/aarch64/aarch64.h (TARGET_RCPC2): Use new flag. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_5A): Add FLAGM2. - * config/aarch64/aarch64-option-extensions.def (FLAGM2): New flag. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_5A): Add FRINTTS - * config/aarch64/aarch64-option-extensions.def (FRINTTS): New flag. - * config/aarch64/aarch64.h (TARGET_FRINT): Use new flag. - * config/aarch64/arm_acle.h: Use new flag for frintts intrinsics. - * config/aarch64/arm_neon.h: Ditto. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_3A): Add JSCVT. - * config/aarch64/aarch64-option-extensions.def (JSCVT): New flag. - * config/aarch64/aarch64.h (TARGET_JSCVT): Use new flag. - * config/aarch64/arm_acle.h: Use new flag for jscvt intrinsics. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64-arches.def (V8_3A): Add FCMA. - * config/aarch64/aarch64-option-extensions.def (FCMA): New flag. - (SVE): Add FCMA dependency. - * config/aarch64/aarch64.h (TARGET_COMPLEX): Use new flag. - * config/aarch64/arm_neon.h: Use new flag for fcma intrinsics. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * config/aarch64/aarch64.cc - (aarch64_expand_epilogue): Use TARGET_PAUTH. - * config/aarch64/aarch64.md: Update comment. - -2025-01-10 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/117186 - * rtl.h (simplify_context::simplify_logical_relational_operation): Add - an invert0_p parameter. - * simplify-rtx.cc (unsigned_comparison_to_mask): New function. - (mask_to_unsigned_comparison): Likewise. - (comparison_code_valid_for_mode): Delete. - (simplify_context::simplify_logical_relational_operation): Add - an invert0_p parameter. Handle AND and XOR. Handle unsigned - comparisons. Handle always-false results. Ignore the low bit - of the mask if the operands are always ordered and remove the - then-redundant check of comparison_code_valid_for_mode. Check - for side-effects in the operands before simplifying them away. - (simplify_context::simplify_binary_operation_1): Remove - simplification of (compare (gt ...) (lt ...)) and instead... - (simplify_context::simplify_relational_operation_1): ...handle - comparisons of comparisons here. - (test_comparisons): New function. - (test_scalar_ops): Call it. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - * gimple-fold.cc (decode_field_reference): Drop misuses of - uniform_integer_cst_p. - (fold_truth_andor_for_ifcombine): Likewise. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118344 - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Fix typo in - rr_and_mask's type adjustment test. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - * gimple-fold.cc (decode_field_reference): Add xor_pand_mask. - Propagate pand_mask to the right-hand xor operand. Don't - require the right-hand xor operand to be a constant. - (fold_truth_andor_for_ifcombine): Pass right-hand mask when - appropriate. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118206 - * gimple-fold.cc (decode_field_reference): Account for upper - bits dropped by narrowing conversions whether before or after - a right shift. - (fold_truth_andor_for_ifcombine): Fold masks, compares, and - combined results. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - * gimple-fold.cc (fold_truth_andor_for_ifcombine): Limit - boundary choice by word size as well. Try aligned double-word - loads as a last resort. - -2025-01-10 Martin Jambor <mjambor@suse.cz> - - PR ipa/118138 - * ipa-cp.cc (ipacp_value_safe_for_type): Return the appropriate - type instead of a bool, accept NULL_TREE VALUEs. - (propagate_vals_across_arith_jfunc): Use the new returned value of - ipacp_value_safe_for_type. - (propagate_vals_across_ancestor): Likewise. - (propagate_scalar_across_jump_function): Likewise. - -2025-01-10 chenxiaolong <chenxiaolong@loongson.cn> - Deng Jianbo <dengjianbo@loongson.cn>. - - * config/loongarch/loongarch.cc - (loongarch_builtin_vectorization_cost): Modify the - construction cost of the vec_construct vector. - -2025-01-09 Tamar Christina <tamar.christina@arm.com> - - PR target/118188 - * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): Adjust - throughput of emulated gather and scatters. - -2025-01-09 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118017 - * lra-constraints.cc (inherit_reload_reg): Check reg class on uniformity. - -2025-01-09 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/118362 - * config/s390/s390.cc (s390_constant_via_vgbm_p): Allow at most - 16-byte vectors. - -2025-01-09 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/118131 - * config/arm/arm.h (VALID_MVE_STRUCT_MODE): Accept TI, OI and XI - modes again. - -2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * config/nvptx/nvptx.cc (nvptx_get_drap_rtx): Handle - '!TARGET_SOFT_STACK'. - * config/nvptx/nvptx.md (define_c_enum "unspec"): Add - 'UNSPEC_STACKSAVE', 'UNSPEC_STACKRESTORE'. - (define_expand "allocate_stack", define_expand "save_stack_block") - (define_expand "save_stack_block"): Handle '!TARGET_SOFT_STACK', - PTX 'alloca'. - (define_insn "@nvptx_alloca_<mode>") - (define_insn "@nvptx_stacksave_<mode>") - (define_insn "@nvptx_stackrestore_<mode>"): New. - * doc/invoke.texi (Nvidia PTX Options): Update '-msoft-stack', - '-mno-soft-stack'. - * doc/sourcebuild.texi (nvptx-specific attributes): Document - 'nvptx_runtime_alloca_ptx'. - (Add Options): Document 'nvptx_alloca_ptx'. - -2025-01-09 Richard Biener <rguenther@suse.de> - - * cfgloopmanip.cc (duplicate_loop_body_to_header_edge): When - copying to the header edge first redirect the entry to the - new loop and then the exit to the old to avoid PHI node - re-allocation. - -2025-01-09 H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/118266 - * ree.cc (add_removable_extension): Skip extension on fixed - register. - -2025-01-09 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/117927 - * tree-pass.h (PROP_last_full_fold): Define. - * passes.def: Add last= parameters to pass_forwprop. - * tree-ssa-forwprop.cc (pass_forwprop): Add last_p non-static - data member and initialize it in the ctor. - (pass_forwprop::set_pass_param): New method. - (pass_forwprop::execute): Set PROP_last_full_fold in curr_properties - at the start if last_p. - * match.pd (a rrotate (32-b) -> a lrotate b): Only optimize either - if @2 is known not to be equal to prec or if during/after last - forwprop the subtraction has single use and prec is power of two; in - that case transform it into orotate by masked count. - -2025-01-09 Haochen Jiang <haochen.jiang@intel.com> - - * common/config/i386/cpuinfo.h (get_intel_cpu): Remove 0x00. - -2025-01-09 xuli <xuli1@eswincomputing.com> - - * config/riscv/riscv-vector-builtins.cc (function_builder::add_unique_function): - Only register overloaded intrinsic for g++. - Only insert non_overloaded_function_table for gcc. - (function_builder::add_overloaded_function): Only register overloaded intrinsic for gcc. - (handle_pragma_vector): Only initialize non_overloaded_function_table for gcc. - -2025-01-09 Tobias Burnus <tburnus@baylibre.com> - - * builtin-types.def (BT_FN_PTRMODE_PTR_INT_PTR): Add. - * gimplify.cc (gimplify_call_expr): Add error for multiple - list items to the OpenMP interop clause if no device clause; - continue instead of restarting after append_args handling. - (gimplify_omp_dispatch): Extract device number from the - single interop-clause list item. - * omp-builtins.def (BUILT_IN_OMP_GET_INTEROP_INT): Add. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * config/nvptx/nvptx.cc (default_ptx_version_option): For - '-march=sm_52' and higher, default at least to '-mptx=7.3'. - * doc/invoke.texi (Nvidia PTX Options): Update '-mptx=[...]'. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - * config/nvptx/nvptx-opts.h (enum ptx_version): Add - 'PTX_VERSION_7_3'. - * config/nvptx/nvptx.cc (ptx_version_to_string) - (ptx_version_to_number): Adjust. - * config/nvptx/nvptx.h (TARGET_PTX_7_3): New. - * config/nvptx/nvptx.opt (Enum(ptx_version)): Add 'EnumValue' - '7.3' for 'PTX_VERSION_7_3'. - * doc/invoke.texi (Nvidia PTX Options): Document '-mptx=7.3'. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - * doc/sourcebuild.texi (Effective-Target Keywords): Document - 'nvptx_softstack'. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * config/nvptx/nvptx.h (STACK_SAVEAREA_MODE): '#define'. - * config/nvptx/nvptx.md [!TARGET_SOFT_STACK] - (save_stack_function): 'define_expand'. - (restore_stack_function): Handle '!TARGET_SOFT_STACK'. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * config/nvptx/nvptx.md [!TARGET_SOFT_STACK] (save_stack_block): - 'define_expand'. - -2025-01-08 Thiago Jung Bauermann <thiago.bauermann@linaro.org> - - * configure.ac: Fix check for HAVE_GAS_SHF_MERGE on Arm targets. - * configure: Regenerate. - -2025-01-08 Richard Sandiford <richard.sandiford@arm.com> - - PR target/107102 - * config/aarch64/aarch64.cc (aarch64_function_ok_for_sibcall): Only - reject calls with different PCSes if the callee clobbers register - state that the caller must preserve. - -2025-01-08 Tobias Burnus <tburnus@baylibre.com> - - * gimplify.cc (gimplify_call_expr): Disable variant function's - append_args in 'omp dispatch' when invoking the variant directly - and not through the base function. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - * doc/invoke.texi (Nvidia PTX Options): Update '-march-map=sm_50'. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117979 - * tree-ssa-dce.cc (make_forwarders_with_degenerate_phis): - Properly update the irreducible region state. - -2025-01-08 Jakub Jelinek <jakub@redhat.com> - - * dwarf2out.cc (break_out_comdat_types): Copy over - DW_AT_language_{name,version} if present. - (output_skeleton_debug_sections): Remove also - DW_AT_language_{name,version}. - (gen_compile_unit_die): For C17, C23, C2Y, C++17, C++20, C++23 - and C++26 emit for -gdwarf-5 -gno-strict-dwarf also - DW_AT_language_{name,version} attributes. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR middle-end/118325 - * tree-nested.cc (convert_nl_goto_reference): Assign proper - context to generated artificial label. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118269 - * tree-vect-loop.cc (vect_create_epilog_for_reduction): - Use the correct stmt for the REDUC_GROUP_FIRST_ELEMENT lookup. - -2025-01-08 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/118332 - * config/arm/arm-mve-builtins.cc (wrap_type_in_struct): Use 'val' - instead of '__val'. - -2025-01-08 Haochen Jiang <haochen.jiang@intel.com> - - * config/i386/amxavx512intrin.h - (_tile_cvtrowps2pbf16h_internal): Rename to... - (_tile_cvtrowps2bf16h_internal): ...this. - (_tile_cvtrowps2pbf16hi_internal): Rename to... - (_tile_cvtrowps2bf16hi_internal): ...this. - (_tile_cvtrowps2pbf16l_internal): Rename to... - (_tile_cvtrowps2bf16l_internal): ...this. - (_tile_cvtrowps2pbf16li_internal): Rename to... - (_tile_cvtrowps2bf16li_internal): ...this. - (_tile_cvtrowps2pbf16h): Rename to... - (_tile_cvtrowps2bf16h): ...this. - (_tile_cvtrowps2pbf16hi): Rename to... - (_tile_cvtrowps2bf16hi): ...this. - (_tile_cvtrowps2pbf16l): Rename to... - (_tile_cvtrowps2bf16l): ...this. - (_tile_cvtrowps2pbf16li): Rename to... - (_tile_cvtrowps2bf16li): ...this. - -2025-01-08 Hongyu Wang <hongyu.wang@intel.com> - - * config/i386/i386.cc (ix86_noce_max_ifcvt_seq_cost): Adjust - cost with ix86_tune_cost->br_mispredict_scale. - * config/i386/i386.h (processor_costs): Add br_mispredict_scale. - * config/i386/x86-tune-costs.h: Add new br_mispredict_scale to - all processor_costs, in which icelake_cost/alderlake_cost - with value COSTS_N_INSNS (2) + 3 and other processor with value - COSTS_N_INSNS (2). - -2025-01-07 Pan Li <pan2.li@intel.com> - - * match.pd: Update comments for sat_* pattern. - -2025-01-07 Pan Li <pan2.li@intel.com> - - * match.pd: Extract saturated value match for signed SAT_*. - -2025-01-07 Pan Li <pan2.li@intel.com> - - * match.pd: Refactor sorts of signed SAT_TRUNC match patterns - -2025-01-07 Pan Li <pan2.li@intel.com> - - * match.pd: Refactor sorts of signed SAT_SUB match patterns. - -2025-01-07 Vineet Gupta <vineetg@rivosinc.com> - Pan Li <pan2.li@intel.com> - - PR target/117722 - * config/riscv/autovec.md: Add uabd expander. - -2025-01-07 Tsung Chun Lin <tclin914@gmail.com> - - * expr.cc (widest_fixed_size_mode_for_size): Prefer scalar modes - over vector modes in more cases. - -2025-01-07 Andreas Schwab <schwab@suse.de> - - PR target/118137 - * config/riscv/sync.md ("lrsc_atomic_exchange<mode>"): Apply mask - to shifted value. - -2025-01-07 Jeff Law <jlaw@ventanamicro.com> - - * config/ft32/ft32.md (casesi expander): Force operands[2] into - a register if it's not a suitable rimm operand. - -2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * common/config/aarch64/aarch64-common.cc: Switch off fschedule_insns. - -2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * config/aarch64/aarch64.md (movhf_aarch64): Use aarch64_valid_fp_move. - (movsf_aarch64): Likewise. - (movdf_aarch64): Likewise. - * config/aarch64/aarch64.cc (aarch64_valid_fp_move): New function. - * config/aarch64/aarch64-protos.h (aarch64_valid_fp_move): Likewise. - -2025-01-07 Paul-Antoine Arras <parras@baylibre.com> - - * gimplify.cc (gimplify_call_expr): Create variable - variant_substituted_p to control whether adjust_args applies. - -2025-01-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/114932 - * tree-ssa-loop-ivopts.cc (alloc_iv): Perform affine unsigned fold. - -2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/105769 - * cfgexpand.cc (vars_ssa_cache::operator()): For constructors - walk over the elements. - -2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/117426 - PR middle-end/111422 - * cfgexpand.cc (struct vars_ssa_cache): New class. - (vars_ssa_cache::vars_ssa_cache): New constructor. - (vars_ssa_cache::~vars_ssa_cache): New deconstructor. - (vars_ssa_cache::create): New method. - (vars_ssa_cache::exists): New method. - (vars_ssa_cache::add_one): New method. - (vars_ssa_cache::update): New method. - (vars_ssa_cache::dump): New method. - (add_scope_conflicts_2): Factor mostly out to - vars_ssa_cache::operator(). New cache argument. - Walk the bitmap cache for the stack variables addresses. - (vars_ssa_cache::operator()): New method factored out from - add_scope_conflicts_2. Rewrite to be a full walk of all operands - and use a worklist. - (add_scope_conflicts_1): Add cache new argument for the addr cache. - Just call add_scope_conflicts_2 for the phi result instead of calling - for the uses and don't call walk_stmt_load_store_addr_ops for phis. - Update call to add_scope_conflicts_2 to add cache argument. - (add_scope_conflicts): Add cache argument and update calls to - add_scope_conflicts_1. - -2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> - - * cfgexpand.cc (INVALID_STACK_INDEX): New defined. - (decl_stack_index): New function. - (visit_op): Use decl_stack_index. - (visit_conflict): Likewise. - (add_scope_conflicts_1): Likewise. - -2025-01-07 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/118298 - * loop-unroll.cc (decide_unroll_constant_iterations): Honor - loop->unroll even if the loop is too big for heuristics. - -2025-01-07 Deng Jianbo <dengjianbo@loongson.cn> - - * config/loongarch/loongarch.cc (loongarch_output_move): - Optimize instructions for initializing fp regsiter to zero. - -2025-01-07 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118010 - * doc/gm2.texi (Compiler options): New option - -fm2-file-offset-bits=. - -2025-01-07 Jennifer Schmitz <jschmitz@nvidia.com> - - * tree-vect-stmts.cc (vectorizable_store): Extend the use of - n_adjacent_stores to also cover vec_to_scalar operations. - * config/aarch64/aarch64-tuning-flags.def: Remove - use_new_vector_costs as tuning option. - * config/aarch64/aarch64.cc (aarch64_use_new_vector_costs_p): - Remove. - (aarch64_vector_costs::add_stmt_cost): Remove use of - aarch64_use_new_vector_costs_p. - (aarch64_vector_costs::finish_cost): Remove use of - aarch64_use_new_vector_costs_p. - * config/aarch64/tuning_models/cortexx925.h: Remove - AARCH64_EXTRA_TUNE_USE_NEW_VECTOR_COSTS. - * config/aarch64/tuning_models/fujitsu_monaka.h: Likewise. - * config/aarch64/tuning_models/generic_armv8_a.h: Likewise. - * config/aarch64/tuning_models/generic_armv9_a.h: Likewise. - * config/aarch64/tuning_models/neoverse512tvb.h: Likewise. - * config/aarch64/tuning_models/neoversen2.h: Likewise. - * config/aarch64/tuning_models/neoversen3.h: Likewise. - * config/aarch64/tuning_models/neoversev1.h: Likewise. - * config/aarch64/tuning_models/neoversev2.h: Likewise. - * config/aarch64/tuning_models/neoversev3.h: Likewise. - * config/aarch64/tuning_models/neoversev3ae.h: Likewise. - -2025-01-06 Alexandre Oliva <oliva@adacore.com> - - PR middle-end/118006 - * cfgexpand.cc (expand_gimple_basic_block): Do not emit - pending stack adjustments after a barrier. - -2025-01-06 Akram Ahmad <Akram.Ahmad@arm.com> - - * config/aarch64/aarch64-simd.md: (*aarch64_trunc_concat) - new insn definition. - -2025-01-06 Fangrui Song <maskray@gcc.gnu.org> - - PR gcov-profile/96092 - * coverage.cc (coverage_init): Remap getpwd(). - -2025-01-06 Jennifer Schmitz <jschmitz@nvidia.com> - - * config/aarch64/aarch64-sve-builtins-base.cc - (svmul_impl::fold): Wrap code for folding to svneg in lambda - function and pass to gimple_folder::convert_and_fold to enable - the transform for unsigned types. - * config/aarch64/aarch64-sve-builtins.cc - (gimple_folder::convert_and_fold): New function that converts - operands to target type before calling callback function, adding the - necessary conversion statements. - (gimple_folder::redirect_call): Set fntype of redirected call. - (get_vector_type): Move from here to aarch64-sve-builtins.h. - * config/aarch64/aarch64-sve-builtins.h - (gimple_folder::convert_and_fold): Declare function. - (get_vector_type): Move here as inline function. - -2025-01-06 Martin Jambor <mjambor@suse.cz> - - * ipa-cp.cc (ipcp_print_widest_int): New function. - (ipcp_store_vr_results): Use it. - (ipcp_bits_lattice::print): Likewise. Fix formatting. - -2025-01-06 Mark Wielaard <mark@klomp.org> - - PR tree-optimization/118032 - * tree-switch-conversion.cc (jump_table_cluster::find_jump_tables): - Remove param_switch_lower_slow_alg_max_cases check. - -2025-01-06 Tamar Christina <tamar.christina@arm.com> - - PR target/96342 - PR target/118272 - * config/aarch64/aarch64-sve.md (vec_init<mode><Vquad>, - vec_initvnx16qivnx2qi): New. - * config/aarch64/aarch64.cc (aarch64_sve_expand_vector_init_subvector): - Rewrite to support any arbitrary combinations. - * config/aarch64/iterators.md (SVE_NO2E): Update to use SVE_NO4E - (SVE_NO2E, Vquad): New. - -2025-01-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118224 - * tree-ssa-dce.cc (is_removable_allocation_p): Don't return true - for allocations with constant size argument larger than PTRDIFF_MAX - or for calloc with one of the arguments constant larger than - PTRDIFF_MAX or their product known constant above PTRDIFF_MAX. - Fix comment typos, furhter -> further and then -> than. - * lto-section-in.cc (lto_free_function_in_decl_state_for_node): - Fix comment typo, furhter -> further. - -2025-01-04 Hans-Peter Nilsson <hp@axis.com> - - * config/mmix/mmix.cc (mmix_asm_output_labelref): Replace '.' - with '::'. - * config/mmix/mmix.h (ASM_PN_FORMAT): Define to actual default. - -2025-01-03 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/117938 - * rtlanal.cc (rtx_properties::try_to_add_dest): Treat writes - to the stack pointer as also writing to memory. - -2025-01-03 Jakub Jelinek <jakub@redhat.com> - - PR c++/118275 - * varasm.cc (array_size_for_constructor): Use build_int_cst - with TREE_TYPE (index) as first argument, instead of bitsize_int. - -2025-01-03 Jakub Jelinek <jakub@redhat.com> - - * tree-ssa-forwprop.cc (check_ctz_array): Use tree_fits_shwi_p instead - of just TREE_CODE tests for INTEGER_CST. - -2025-01-03 Jose E. Marchesi <jose.marchesi@oracle.com> - - * config.gcc: install a wrapping stdint.h in bpf targets. - -2025-01-02 Paul-Antoine Arras <parras@baylibre.com> - - * gimplify.cc (gimplify_call_expr): Fix handling of need_device_ptr for - type(c_ptr). Fix handling of nested function calls in a dispatch region. - (find_ifn_gomp_dispatch): Return the IFN without stripping it. - (gimplify_omp_dispatch): Keep IFN_GOMP_DISPATCH until - gimplify_call_expr. - -2025-01-02 Tobias Burnus <tburnus@baylibre.com> - - * doc/install.texi (amdgcn-x-amdhsa): Refer to Newlib 4.5.0 for - the I/O locking fixes. - -2025-01-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118171 - * tree-ssa-pre.cc (create_component_ref_by_pieces_1): Do not - fold any component ref parts. - -2025-01-02 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118184 - * config/aarch64/aarch64-early-ra.cc (allocno_assignment_is_rmw): - New function. - (early_ra::record_insn_defs): Mark the live range information as - untrustworthy if an assignment would change part of an allocno - but preserve the rest. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * tree-ssa-forwprop.cc (check_ctz_array): Handle also RAW_DATA_CST - in the CONSTRUCTOR_ELTS. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * doc/libgdiagnostics/conf.py: Use u'' instead of '' in - project and copyright initialization. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * gcc.cc (process_command): Update copyright notice dates. - * gcov-dump.cc (print_version): Ditto. - * gcov.cc (print_version): Ditto. - * gcov-tool.cc (print_version): Ditto. - * gengtype.cc (create_file): Ditto. - * doc/cpp.texi: Bump @copying's copyright year. - * doc/cppinternals.texi: Ditto. - * doc/gcc.texi: Ditto. - * doc/gccint.texi: Ditto. - * doc/gcov.texi: Ditto. - * doc/install.texi: Ditto. - * doc/invoke.texi: Ditto. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/loongarch.cc - (loongarch_expand_conditional_move): Add some optimization - implementations based on noce_try_cmove_arith. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/lasx.md (lasx_xvabsd_s_<lasxfmt>): Remove. - (<su>abd<mode>3): New insn pattern. - (lasx_xvabsd_u_<lasxfmt_u>): Remove. - * config/loongarch/loongarch-builtins.cc (CODE_FOR_lsx_vabsd_b): - Rename. - (CODE_FOR_lsx_vabsd_h): Ditto. - (CODE_FOR_lsx_vabsd_w): Ditto. - (CODE_FOR_lsx_vabsd_d): Ditto. - (CODE_FOR_lsx_vabsd_bu): Ditto. - (CODE_FOR_lsx_vabsd_hu): Ditto. - (CODE_FOR_lsx_vabsd_wu): Ditto. - (CODE_FOR_lsx_vabsd_du): Ditto. - (CODE_FOR_lasx_xvabsd_b): Ditto. - (CODE_FOR_lasx_xvabsd_h): Ditto. - (CODE_FOR_lasx_xvabsd_w): Ditto. - (CODE_FOR_lasx_xvabsd_d): Ditto. - (CODE_FOR_lasx_xvabsd_bu): Ditto. - (CODE_FOR_lasx_xvabsd_hu): Ditto. - (CODE_FOR_lasx_xvabsd_wu): Ditto. - (CODE_FOR_lasx_xvabsd_du): Ditto. - * config/loongarch/loongarch.md (u): Add smax/umax. - * config/loongarch/lsx.md (SU_MAX): New iterator. - (su_min): New attr. - (lsx_vabsd_s_<lsxfmt>): Remove. - (<su>abd<mode>3): New insn pattern. - (lsx_vabsd_u_<lsxfmt_u>): Remove. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/lasx.md (vec_unpacks_lo_<mode>): Redefine. - (vec_unpacku_lo_<mode>): Ditto. - (lasx_vext2xv_h<u>_b<u>): Replaced by vec_unpack<su>_lo_v32qi. - (vec_unpack<su>_lo_v32qi): New insn. - (lasx_vext2xv_w<u>_h<u>): Replaced by vec_unpack<su>_lo_v16hi. - (vec_unpack<su>_lo_v16qi_internal): New insn, for 128 bits. - (vec_unpack<su>_lo_v16hi): New insn. - (lasx_vext2xv_d<u>_w<u>): Replaced by vec_unpack<su>_lo_v8si. - (vec_unpack<su>_lo_v8hi_internal): New insn, for 128 bits. - (vec_unpack<su>_lo_v8si): New insn. - (vec_unpack<su>_lo_v4si_internal): New insn, for 128 bits. - (vec_packs_float_v4di): New expander. - (vec_pack_sfix_trunc_v4df): Ditto. - (vec_unpacks_float_hi_v8si): Ditto. - (vec_unpacks_float_lo_v8si): Ditto. - (vec_unpack_sfix_trunc_hi_v8sf): Ditto. - (vec_unpack_sfix_trunc_lo_v8sf): Ditto. - * config/loongarch/loongarch-builtins.cc - (CODE_FOR_lsx_vftintrz_w_d): Rename. - (CODE_FOR_lsx_vftintrzh_l_s): Ditto. - (CODE_FOR_lsx_vftintrzl_l_s): Ditto. - (CODE_FOR_lsx_vffint_s_l): Ditto. - (CODE_FOR_lsx_vffinth_d_w): Ditto. - (CODE_FOR_lsx_vffintl_d_w): Ditto. - (CODE_FOR_lsx_vexth_h_b): Ditto. - (CODE_FOR_lsx_vexth_w_h): Ditto. - (CODE_FOR_lsx_vexth_d_w): Ditto. - (CODE_FOR_lsx_vexth_hu_bu): Ditto. - (CODE_FOR_lsx_vexth_wu_hu): Ditto. - (CODE_FOR_lsx_vexth_du_wu): Ditto. - (CODE_FOR_lsx_vfcvth_d_s): Ditto. - (CODE_FOR_lsx_vfcvtl_d_s): Ditto. - (CODE_FOR_lasx_vext2xv_h_b): Ditto. - (CODE_FOR_lasx_vext2xv_w_h): Ditto. - (CODE_FOR_lasx_vext2xv_d_w): Ditto. - (CODE_FOR_lasx_vext2xv_hu_bu): Ditto. - (CODE_FOR_lasx_vext2xv_wu_hu): Ditto. - (CODE_FOR_lasx_vext2xv_du_wu): Ditto. - (loongarch_expand_builtin_insn): Swap source operands in - CODE_FOR_lsx_vftintrz_w_d and CODE_FOR_lsx_vffint_s_l. - * config/loongarch/loongarch-protos.h - (loongarch_expand_vec_unpack): Remove useless parameter high_p. - * config/loongarch/loongarch.cc (loongarch_expand_vec_unpack): - Rewrite. - * config/loongarch/lsx.md (vec_unpacks_hi_v4sf): Redefine. - (vec_unpacks_lo_v4sf): Ditto. - (vec_unpacks_hi_<mode>): Ditto. - (vec_unpacku_hi_<mode>): Ditto. - (lsx_vfcvth_d_s): Replaced by vec_unpacks_hi_v4sf. - (lsx_vfcvtl_d_s): Replaced by vec_unpacks_lo_v4sf. - (lsx_vffint_s_l): Replaced by vec_packs_float_v2di. - (vec_packs_float_v2di): New insn. - (lsx_vftintrz_w_d): Replaced by vec_pack_sfix_trunc_v2df. - (vec_pack_sfix_trunc_v2df): New insn. - (lsx_vffinth_d_w): Replaced by vec_unpacks_float_hi_v4si. - (vec_unpacks_float_hi_v4si): New insn. - (lsx_vffintl_d_w): Replaced by vec_unpacks_float_lo_v4si. - (vec_unpacks_float_lo_v4si): New insn. - (lsx_vftintrzh_l_s): Replaced by vec_unpack_sfix_trunc_hi_v4sf. - (vec_unpack_sfix_trunc_hi_v4sf): New insn. - (lsx_vftintrzl_l_s): Replaced by vec_unpack_sfix_trunc_lo_v4sf. - (vec_unpack_sfix_trunc_lo_v4sf): New insn. - (lsx_vexth_h<u>_b<u>): Replaced by vec_unpack<su>_hi_v16qi. - (vec_unpack<su>_hi_v16qi): New insn. - (lsx_vexth_w<u>_h<u>): Replaced by vec_unpack<su>_hi_v8hi. - (vec_unpack<su>_hi_v8hi): New insn. - (lsx_vexth_d<u>_w<u>): Replaced by vec_unpack<su>_hi_v4si. - (vec_unpack<su>_hi_v4si): New insn. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/loongarch.md - (bytepick_d_<bytepick_imm>_rev): New combiner. - (bstrpick_alsl_paired): Reorder input operands. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/lasx.md: Remove useless vec_select. - * config/loongarch/predicates.md: Correct error predicate. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/lasx.md: Fix selector index. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * config/loongarch/lasx.md: Remove useless code. - * config/loongarch/lsx.md: Ditto. - -2025-01-01 Sam James <sam@gentoo.org> - - * doc/cpp.texi (Common Predefined Macros): Fix syntax. - -2025-01-01 Richard Biener <rguenther@suse.de> - - PR middle-end/118174 - * tree-outof-ssa.cc (ssa_is_replaceable_p): Exclude tailcalls. - -2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> - - * doc/invoke.texi (Option Summary): Put "M32C Options" and - "Cygwin and MinGW Options" in alphabetical order. Add - cross-references. - (Cygwin and MinGW Options): Likewise move the section to its - correct alphabetical location. - * config/lynx.opt.urls: Regenerated. - * config/mingw/cygming.opt.urls: Regenerated. -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/ChangeLog-2025 b/gcc/ChangeLog-2025 new file mode 100644 index 00000000000..f44ba0afc7e --- /dev/null +++ b/gcc/ChangeLog-2025 @@ -0,0 +1,36191 @@ +2025-12-31 Pietro Monteiro <pietro@sociotechnical.xyz> + + * doc/install.texi (--enable-languages): Fix typo. + +2025-12-31 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/121485 + * config/riscv/vector-crypto.md: Fix mode attribute for the + lmul extending Zvkned patterns. + +2025-12-30 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123318 + * config/riscv/riscv.cc (riscv_legitimize_const_move): Force + riscv_split_symbol to generate a new temporary if the provided + one isn't Pmode. + +2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * ifcvt.cc (noce_try_cond_zero_arith): Remove restriction on comparison + against 0. + +2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123308 + * ifcvt.cc (noce_try_cond_zero_arith): If noce_emit_cmove fails + for a lowpart subreg case, then try the full reg cmove and + take the lowpart subreg afterwards. + +2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * ifcvt.cc (noce_try_cond_zero_arith): Don't swap if_info->cond + but use it directly with if_info->rev_cond. + +2025-12-29 Jakub Jelinek <jakub@redhat.com> + + * auto-profile.cc (string_table::get_original_name): Avoid using + init-statement in selection statement. + +2025-12-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure: Regenerate. + +2025-12-29 Hongyu Wang <hongyu.wang@intel.com> + + * config/i386/i386.md (*setcc_qi): Force output setzucc for + reg operand[0]. + (*setcc_qi_slp): Likewise. + +2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123295 + * lra-eliminations.cc (lra_eliminate_regs_1): For a debug + insn, create a raw SUBREG if simplify_gen_subreg fails. + +2025-12-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure.ac (gcc_cv_ld_ctf): New check. + (gcc_cv_have_ctfmerge): Likewise. + * configure: Regenerate. + * config.in: Regenerate. + * config/sol2.h (SCTF_CC1_SPEC): Define. + (LINK_SCTF_SPEC): Define. + (LINK_SPEC): Add LINK_SCTF_SPEC. + * config/i386/sol2.h (CC1_SPEC): Add SCTF_CC1_SPEC. + * config/sparc/sol2.h: Likewise. + * config/sol2.opt (gsctf): Declare. + * config/sol2.opt.urls: Regenerate. + * doc/invoke.texi (Option Summary): Add -gsctf. + (Solaris 2 Options): Document it. + +2025-12-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure.ac (gcc_cv_as_ix86_xbrace_comment): Remove. + * configure: Regenerate. + * config.in: Regenerate. + * config/i386/sol2.h (ASM_XBRACE_COMMENT_SPEC): Adapt guard. + +2025-12-27 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/123114 + * simplify-rtx.cc (simplify_context::simplify_relational_operation): + Verify XEXP (XEXP (op0, 0), 0) mode and use CONST0_RTX (cmp_mode) + instead of CONST0_RTX (mode). + +2025-12-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + Revert: + 2025-12-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * ifcvt.cc (noce_process_if_block): Move noce_try_cond_zero_arith + last. + +2025-12-26 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123283 + * config/riscv/sync.md (subword_atomic_fetch_strong_nand): Add + USEs for naked operands that might be pseudos. + (subword_atomic_fetch_strong_<atomic_optab>): Likewise. + (subword_atomic_exchange_strong): Likewise. + (subword_atomic_cas_strong): Likewise. + +2025-12-26 Sandra Loosemore <sloosemore@baylibre.com> + + * config/i386/i386.opt.urls: Regenerated. + * config/riscv/riscv.opt.urls: Regenerated. + +2025-12-26 Sandra Loosemore <sloosemore@baylibre.com> + + * config/riscv/gen-riscv-ext-texi.cc: Fix table markup and + layout. + * config/riscv/riscv-ext-corev.def: Document missing extensions, + regularize spelling/capitalization in existing descriptions + * config/riscv/riscv-ext-mips.def: Likewise. + * config/riscv/riscv-ext-sifive.def: Likewise. + * config/riscv/riscv-ext-thead.def: Likewise. + * config/riscv/riscv-ext.def: Likewise. + * doc/riscv-ext.texi: Regenerated. + +2025-12-26 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/riscv/riscv.opt (mplt): Mark deprecated option Undocumented. + (msmall-data-limit=): Mark RejectNegative. + * doc/invoke.texi (Option Summary) <RISC-V Options>: Remove -mplt + documentation. Only list one form of each option. Add missing + options -mcpu, -mscalar-strict-align, -mno-vector-strict-align, + -momit-leaf-frame-pointer, -mstringop-strategy, -mrvv-vector-bits, + -mrvv-max-lmul, -madjust-lmul-cost, -mmax-vectorization, and + -mno-autovec-segment. + (RISC-V Options): Remove -mplt documentation. Add documentation for + missing options listed above. Add missing index entries for negative + forms. Correct the default for the -minline-str* options, which + has changed. Copy-edit for markup, spelling, and usage. Trivial + whitespace fixes. + +2025-12-25 Arsen Arsenović <aarsenovic@baylibre.com> + + * tree-ssa-math-opts.cc (execute_cse_sincos_1): If + mathfn_built_in_type fails to determine a type for our + operation, presume that it is the same as the input type. + +2025-12-24 Pan Li <pan2.li@intel.com> + + * config/riscv/predicates.md: Add geu to the swappable + cmp operator iterator. + * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Take + care of the swapped rtx code correspondly. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sve-builtins-base.cc: (svmul_impl::fold): + Replace use of type_suffix_pair with type_suffix_triple. + * config/aarch64/aarch64-sve-builtins-shapes.cc: (parse_element_type): + Handle third type suffix. + (parse_type): Handle c2 in function signature. Add the u signature with + the ability to pass a tuple with twice as many vectors as the base type. + Calculate number of vectors against the type with the maximum number of + bits rather than "the other one". + (load_contiguous_base::resolve): Add argument to resolve_to call. + (compare_scalar_def::resolve): Likewise. + (ternary_mfloat8_def::resolve): Likewise. + (ternary_mfloat8_lane_def::resolve): Likewise. + (ternary_mfloat8_opt_n_def::resolve): Likewise. + * config/aarch64/aarch64-sve-builtins.cc: (TYPES_all_pred, + TYPES_all_count, TYPES_all_pred_count, TYPES_all_float, + TYPES_all_signed, TYPES_all_float_and_signed, TYPES_all_unsigned, + TYPES_all_integer, TYPES_all_arith, TYPES_all_data, TYPES_b, TYPES_c, + TYPES_b_unsigned, TYPES_b_integer, TYPES_b_data, TYPES_bh_integer, + TYPES_bs_unsigned, TYPES_bhs_signed, TYPES_bhs_unsigned, + TYPES_bhs_integer, TYPES_bh_data, TYPES_bhs_data, TYPES_bhs_widen, + TYPES_h_bfloat, TYPES_h_float, TYPES_h_integer, TYPES_h_data, + TYPES_hs_signed, TYPES_hs_integer, TYPES_hs_float, TYPES_hs_data, + TYPES_hd_unsigned, TYPES_hsd_signed, TYPES_hsd_integer, TYPES_hsd_data, + TYPES_h_float_mf8, TYPES_s_float, TYPES_s_float_mf8, + TYPES_s_float_hsd_integer, TYPES_s_float_sd_integer, TYPES_s_signed, + TYPES_s_unsigned, TYPES_s_integer, TYPES_s_data, TYPES_sd_signed, + TYPES_sd_unsigned, TYPES_sd_integer, TYPES_sd_data, + TYPES_all_float_and_sd_integer, TYPES_d_float, TYPES_d_unsigned, + TYPES_d_integer, TYPES_d_data, TYPES_cvt, TYPES_cvt_bfloat, + TYPES_cvt_h_s_float, TYPES_cvt_f32_f16, TYPES_cvt_long, + TYPES_cvt_narrow_s, TYPES_cvt_narrow, TYPES_cvt_s_s, TYPES_cvt_mf8, + TYPES_cvtn_mf8, TYPES_cvtnx_mf8, TYPES_inc_dec_n, TYPES_qcvt_x2, + TYPES_qcvt_x4, TYPES_qrshr_x2,TYPES_qrshru_x2, TYPES_qrshr_x4, + TYPES_qrshru_x4, TYPES_reinterpret, TYPES_reinterpret_b,TYPES_while, + TYPES_while_x, TYPES_while_x_c, TYPES_s_narrow_fsu,TYPES_all_za, + TYPES_d_za, TYPES_za_bhsd_data,TYPES_za_all_data, TYPES_za_h_mf8, + TYPES_za_hs_mf8, TYPES_za_h_bfloat, TYPES_za_h_float, + TYPES_za_s_b_signed, TYPES_za_s_b_unsigned, TYPES_za_s_b_integer, + TYPES_za_s_h_integer,TYPES_za_s_h_data, TYPES_za_s_unsigned, + TYPES_za_s_integer, TYPES_za_s_mf8, TYPES_za_s_float, TYPES_za_s_data, + TYPES_za_d_h_integer, TYPES_za_d_float, TYPES_za_d_integer, + TYPES_mop_base, TYPES_mop_base_signed, TYPES_mop_base_unsigned, + TYPES_mop_i16i64, TYPES_mop_i16i64_signed, TYPES_mop_i16i64_unsigned, + ΤYPES_za): Extend defines to three arguments. + (DEF_VECTOR_TYPE, DEF_DOUBLE_TYPE): Likewise. + (DEF_TRIPLE_TYPE): Add new define. + (DEF_SVE_TYPES_ARRAY): Redefine all types_ arrays into arrays of + type_suffix_triple. + (types_none): Likewise. + (function_instance::hash): Add third type to hash calculation. + (function_builder::get_name): Add third type to function name. + (function_builder::add_overloaded_functions): Handle third type. + (function_resolver::lookup_form): Likewise. + (function_resolver::resolve_to): Likewise. + (function_resolver::resolve_unary): Likewise. + * config/aarch64/aarch64-sve-builtins.h: (type_suffix_triple): replace + type_suffix_pair. + (function_group_info::types): Likewise. + (function_instance::ctor): Likewise. + (function_instance::type_suffix_ids): Likewise. + (function_resolver::lookup_form): Add third type argument. + (function_resolver::resolve_to): Likewise. + (function_instance::operator==): Add third type to equality calculation. + +2025-12-24 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64-sme.md + (@aarch64_sme_<optab><SME_ZA_F8F16_32:mode><SME_ZA_FP8_x24:mode>): New insn. + (@aarch64_fvdot_half<optab>): Likewise. + (@aarch64_fvdot_half<optab>_plus): Likewise. + * config/aarch64/aarch64-sve-builtins-functions.h + (class svvdot_half_impl): New function impl. + * config/aarch64/aarch64-sve-builtins-sme.cc (FUNCTION): Likewise. + * config/aarch64/aarch64-sve-builtins-shapes.cc (struct dot_half_za_slice_lane_def): + New function shape. + * config/aarch64/aarch64-sve-builtins-shapes.h: Likewise. + * config/aarch64/aarch64-sve-builtins-sme.def (svdot): New function. + (svdot_lane): Likewise. + (svvdot_lane): Likewise. + (svvdotb_lane): Likewise. + (svvdott_lane): Likewise. + * config/aarch64/aarch64-sve-builtins-sme.h (svvdotb_lane_za): New function. + (svvdott_lane_za): Likewise. + * config/aarch64/aarch64-sve-builtins.cc (TYPES_za_s_mf8): New types array. + (TYPES_za_hs_mf8): Likewise. + (za_hs_mf8): Likewise. + * config/aarch64/iterators.md (SME_ZA_F8F16): New mode iterator. + (SME_ZA_F8F32): Likewise. + (SME_ZA_FP8_x1): Likewise. + (SME_ZA_FP8_x2): Likewise. + (SME_ZA_FP8_x4): Likewise. + (UNSPEC_SME_FDOT_FP8): New unspec. + (UNSPEC_SME_FVDOT_FP8): Likewise. + (UNSPEC_SME_FVDOTT_FP8): Likewise. + (UNSPEC_SME_FVDOTB_FP8): Likewise. + (SME_FP8_DOTPROD): New int iterator. + (SME_FP8_FVDOT): Likewise. + (SME_FP8_FVDOT_HALF): Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sme.md + (@aarch64_sme_<optab><SME_ZA_F8F16_32:mode><VNx16QI_ONLY:mode>): Add + new define_insn. + * config/aarch64/aarch64-sve-builtins-shapes.cc + (struct binary_za_m_base): Support fpm argument. + * config/aarch64/aarch64-sve-builtins-sme.cc (svmopa_za): Extend for + fp8. + * config/aarch64/aarch64-sve-builtins-sme.def (svmopa): Add new + DEF_SME_ZA_FUNCTION_GS_FPM entries. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sme.md + (@aarch64_sme_<optab><SME_ZA_F8F16_32:mode><SME_ZA_FP8_x24:mode>): Add + new define_insn. + (*aarch64_sme_<optab><VNx8HI_ONLY:mode><SME_ZA_FP8_x24:mode>_plus, + *aarch64_sme_<optab><VNx4SI_ONLY:mode><SME_ZA_FP8_x24:mode>_plus, + @aarch64_sme_<optab><SME_ZA_F8F16_32:mode><VNx16QI_ONLY:mode>, + *aarch64_sme_<optab><VNx8HI_ONLY:mode><VNx16QI_ONLY:mode>_plus, + *aarch64_sme_<optab><VNx4SI_ONLY:mode><VNx16QI_ONLY:mode>_plus, + @aarch64_sme_single_<optab><SME_ZA_F8F16_32:mode><SME_ZA_FP8_x24:mode>, + *aarch64_sme_single_<optab><VNx8HI_ONLY:mode><SME_ZA_FP8_x24:mode>_plus, + *aarch64_sme_single_<optab><VNx4SI_ONLY:mode><SME_ZA_FP8_x24:mode>_plus, + @aarch64_sme_lane_<optab><SME_ZA_F8F16_32:mode><SME_ZA_FP8_x124:mode>, + *aarch64_sme_lane_<optab><VNx8HI_ONLY:mode><SME_ZA_FP8_x124:mode>, + *aarch64_sme_lane_<optab><VNx4SI_ONLY:mode><SME_ZA_FP8_x124:mode>): + Likewise. + * config/aarch64/aarch64-sve-builtins-shapes.cc + (struct binary_za_slice_lane_base): Support fpm argument. + (struct binary_za_slice_opt_single_base): Likewise. + * config/aarch64/aarch64-sve-builtins-sme.cc (svmla_za): Extend for fp8. + (svmla_lane_za): Likewise. + * config/aarch64/aarch64-sve-builtins-sme.def (svmla_lane): Add new + DEF_SME_ZA_FUNCTION_GS_FPM entries. + (svmla): Likewise. + * config/aarch64/iterators.md (SME_ZA_F8F16_32): Add new mode iterator. + (SME_ZA_FP8_x24, SME_ZA_FP8_x124): Likewise. + (UNSPEC_SME_FMLAL): Add new unspec. + (za16_offset_range): Add new mode_attr. + (za16_32_long): Likewise. + (za16_32_last_offset): Likewise. + (SME_FP8_TERNARY_SLICE): Add new iterator. + (optab): Add entry for UNSPEC_SME_FMLAL. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64.h: + (TARGET_STREAMING_SME_F8F16, TARGET_STREAMING_SME_F8F32): Add defines. + * config/aarch64/aarch64-c.cc: + (__ARM_FEATURE_SME_F8F16, __ARM_FEATURE_SME_F8F32): Add defines. + * config/aarch64/aarch64-option-extensions.def: + (sme-f8f16, sme-f8f32): Add arch options in command line. + * config/aarch64/aarch64-sve-builtins-functions.h: + (sme_2mode_function_t): Pass unspec_for_mfp8 parameter through ctor. + * config/aarch64/aarch64-sve-builtins-sme.def: + (DEF_SME_FUNCTION_GS, DEF_SME_FUNCTION): Redefine based on + DEF_SME_FUNCTION_GS_FPM. + (DEF_SME_ZA_FUNCTION_GS, DEF_SME_ZA_FUNCTION): Redefine based on + DEF_SME_ZA_FUNCTION_GS_FPM. + (AARCH64_FL_SME_F8F16, AARCH64_FL_SME_F8F32): Add new + REQUIRED_EXTENSIONS sections. + * config/aarch64/aarch64-sve-builtins.cc: + (TYPES_za_h_mf8): Add new types. + (TYPES_za_s_mf8): Likewise. + (sme_function_groups): Define using DEF_SME_FUNCTION_GS_FPM instead of + DEF_SME_FUNCTION_GS. + * doc/invoke.texi: (sme-f8f16, sme-f8f32): Add documentation of option. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sve-builtins-base.cc (svscale_impl): Added new + class for dealing with all svscale functions (including sve) + (svscale): updated FUNCTION macro call to make use of new class. + * config/aarch64/aarch64-sve-builtins-sve2.def: (svscale): + Added new DEF_SVE_FUNCTION_GS call to enable recognition of new variant. + * config/aarch64/aarch64-sve2.md (@aarch64_sve_fscale<mode>): Added + new define_insn. (@aarch64_sve_single_fscale<mode>): Likewise. + * config/aarch64/iterators.md: (SVE_Fx24_NOBF): Added new iterator, + similar to SVE_Fx24 but without brainfloat. + (SVE_Fx24): Updated to make use of SVE_Fx24_NOBF. + (SVSCALE_SINGLE_INTARG): Added new mode_attr. + (SVSCALE_INTARG): Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sve-builtins-base.cc (svcvt_impl): Update to + handle fp8 cases. + * config/aarch64/aarch64-sve-builtins-sve2.def (svcvt, svcvtn): Added + DEF_SVE_FUNCTION_GS_FPM instances. + * config/aarch64/aarch64-sve2.md + (@aarch64_sve2_fp8_cvtn<mode>): Updated define_insn for additional case. + (@aarch64_sme2_fp8_cvt<mode>): Added new define_insn. + * config/aarch64/iterators.md (VNx16F_NARROW): Added new iterator to + handle narrowing SVE floating point operations. + (UNSPEC_FCVT): Added new unspec. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sve-builtins-sve2.cc (svcvtl1, svcvtl2): Added + new FUNTIONs. + * config/aarch64/aarch64-sve-builtins-sve2.def + (svcvt1, svcvt2, svcvtl1, svcvtl2): Added new DEF_SVE_FUNCTION_GS_FPM. + * config/aarch64/aarch64-sve-builtins-sve2.h (svcvtl1, svcvtl2): Added + new function_base. + * config/aarch64/aarch64-sve-builtins.cc + (function_resolver::resolve_unary): use group_suffix_id when resolving + C overloads. + * config/aarch64/aarch64-sve2.md + (@aarch64_sve2_fp8_cvt_<fp8_cvt_uns_op><mode>): Added new define_insn. + * config/aarch64/aarch64.h (TARGET_SSME2_FP8): Added new define. + * config/aarch64/iterators.md + (UNSPEC_F1CVTL. UNSPEC_F2CVTL): Added new unspecs. + (FP8CVT_UNS): Extended int_iterator. + (fp8_cvt_uns_op): Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * config/aarch64/aarch64-sve-builtins.cc (TYPES_za_bhsd_data): Add + D (za8, mf8) combination to za_bhsd_data. + +2025-12-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * ifcvt.cc (noce_process_if_block): Move noce_try_cond_zero_arith + last. + +2025-12-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123276 + * ifcvt.cc (noce_try_cond_zero_arith): Reject non-scalar integral modes. + +2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123274 + * config/riscv/riscv.md (usmul<mode>3): Add proper condition. + +2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123278 + * config/riscv/andes-45-series.md (andes_45_fpu_alu_s): Handle + BF/HF modes too. + (andes_45_fpu_mul_s, andes_45_fpu_mac_s): Likewise. + +2025-12-23 Milan Tripkovic <Milan.Tripkovic@rt-rk.com> + + * config/riscv/spacemit-x60.md (spacemit_x60_clmul): Adjust latency. + +2025-12-23 Xi Ruoyao <xry111@xry111.site> + + * config.gcc: Relax the check for LoongArch with_tune. + +2025-12-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123267 + * ifcvt.cc (noce_try_cond_zero_arith): Pass the original operands + of a instead of the stripped off values. The mode of the operand + which is being used. + +2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> + + * auto-profile.cc (struct summary_info): New struct. + (summary_info::read): New function. + (summary_info::get_threshold_count): Likewise. + (function_instance::read_function_instance): Read + afdo_profile_info->sum_max directly from summary info. + (autofdo_source_profile::read): Set afdo_hot_bb_threshold from + param_hot_bb_count_ws_permille. + (read_profile): Call summary_info->read. + (end_auto_profile): Free afdo_summary_info. + * gcov-io.h (GCOV_TAG_AFDO_SUMMARY): New define. + +2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> + + * auto-profile.cc (string_table::~string_table): Update to free + original_names_map_. + (string_table::original_names_map_): New member. + (string_table::clashing_names_map_): Likewise. + (string_table::get_original_name): New function. + (string_table::read): Figure out clashes while reading. + (autofdo_source_profile::offline_external_functions): Call + get_original_name. + +2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> + + * auto-profile.cc (AUTO_PROFILE_VERSION): Bump to 3. + (class function_instance_descriptor): New class. + (get_normalized_path): New function. + (string_table::~string_table): Update to free filenames. + (string_table::vector_): Rename to ... + (string_table::symbol_names_): ... this. + (string_table::map_): Rename to ... + (string_table::symbol_name_map_): ... this. + (string_table::filenames_): New member. + (string_table::filename_map_): Likewise. + (string_table::symbol_to_filename_map_): Likewise. + (string_table::get_index): Update to lookup symbol_name_map_. + (string_table::get_name): Rename to ... + (string_table::get_symbol_name): ... this. + (string_table::add_name): Rename to ... + (string_table::add_symbol_name): ... this. + (string_table::get_filename): New function. + (string_table::get_filename_by_symbol): Likewise. + (string_table::get_filename_index): Likewise. + (string_table::add_filename): Likewise. + (string_table::read): Read file names from the GCOV profile. + (function_instance::offline): Call + get_function_instance_by_descriptor. + (string_table::get_cgraph_node): Call get_symbol_name and + symbol_name. + (function_instance::get_function_instance_by_decl): Likewise. + (function_instance::get_cgraph_node): Likewise. + (function_instance::merge): Likewise. + (match_with_target): Likewise. + (function_instance::match): Likewise. + (function_instance::dump): Likewise. + (function_instance::dump_inline_stack): Likewise. + (function_instance::find_icall_target_map): Likewise. + (autofdo_source_profile::offline_unrealized_inlines): Likewise. + (autofdo_source_profile::offline_external_functions): Likewise. + (function_instance::read_function_instance): Likewise. + (afdo_indirect_call): + Also call find_function_instance, add_function_instance and + remove_function_instance. + (autofdo_source_profile::read): Likewise. + (autofdo_source_profile::get_function_instance_by_decl): Call + find_function_instance. + (autofdo_source_profile::get_function_instance_by_name_index): + Rename to ... + (autofdo_source_profile::get_function_instance_by_descriptor): + ... this. + (autofdo_source_profile::find_iter_for_function_instance): New + function. + (autofdo_source_profile::find_function_instance): Likewise. + (autofdo_source_profile::add_function_instance): Likewise. + (autofdo_source_profile::remove_function_instance): Likewise. + +2025-12-22 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + PR middle-end/123067 + * tree-ssa-loop-im.cc(is_self_write): Check + load and store refer to same location. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + + * ifcvt.cc (get_base_reg): Handle subreg. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + Philipp Tomsich <philipp.tomsich@vrull.eu> + + PR target/122769 + * ifcvt.cc (noce_try_cond_zero_arith): Use noce_emit_cmove. + Delete noce_emit_czero () no longer used. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + + * ifcvt.cc (noce_try_cond_zero_arith): Use expand_simple_binop + to re-expand the final pattern. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + + * ifcvt.cc (noce_try_cond_zero_arith): Refactor. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + + * ifcvt.cc (noce_bbs_ok_for_cond_zero_arith): Move logic out. + (noce_try_cond_zero_arith): Into here. + +2025-12-22 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_expand_mult_with_const_int): Signal + when this creates a simple copy that may be optimized. + (riscv_legitimate_poly_move): Try to optimize away any copy created + by riscv_expand_mult_with_const_int. + +2025-12-22 Filip Kastl <fkastl@suse.cz> + + * doc/invoke.texi: Document + --param=memtag-instrument-mem-intrinsics + +2025-12-21 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/123089 + * tree-vect-loop.cc (vect_update_ivs_after_vectorizer_for_early_breaks): + Add conversion if required, Note that if we did truncate the original + scalar loop had an overflow here anyway. + (vect_get_max_nscalars_per_iter): Expose. + * tree-vect-stmts.cc (vect_compute_type_for_early_break_scalar_iv): New. + (vectorizable_early_exit): Find smallest type where we won't have UB in + the signed IV and store it. + * tree-vectorizer.h (LOOP_VINFO_EARLY_BRK_IV_TYPE): New. + (class _loop_vec_info): Add early_break_iv_type. + (vect_min_prec_for_max_niters): New. + * tree-vect-loop-manip.cc (vect_do_peeling): Use it. + +2025-12-20 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/123222 + * doc/extend.texi: Fix copy-and-pasto for __builtin_*_overflow_p. + +2025-12-20 Jakub Jelinek <jakub@redhat.com> + + PR target/123216 + * common/config/i386/i386-common.cc (OPTION_MASK_ISA_AVX512FP16_UNSET): + Remove unused macro. + (OPTION_MASK_ISA2_AVX512FP16_UNSET, OPTION_MASK_ISA2_AVX512BF16_UNSET, + OPTION_MASK_ISA2_AVX512BW_UNSET): Or in OPTION_MASK_ISA2_AVX10_1_UNSET. + (OPTION_MASK_ISA2_AVX512CD_UNSET, OPTION_MASK_ISA2_AVX512DQ_UNSET, + OPTION_MASK_ISA2_AVX512VL_UNSET, OPTION_MASK_ISA2_AVX512IFMA_UNSET, + OPTION_MASK_ISA2_AVX512VNNI_UNSET, + OPTION_MASK_ISA2_AVX512VPOPCNTDQ_UNSET, + OPTION_MASK_ISA2_AVX512VBMI_UNSET, OPTION_MASK_ISA2_AVX512VBMI2_UNSET, + OPTION_MASK_ISA2_AVX512BITALG_UNSET): Define. + (ix86_handle_option): For + -mno-avx512{cd,dq,vl,ifma,vnni,vpopcntdq,vbmi,vbmi2,bitalg} also remove + corresponding OPTION_MASK_ISA2_AVX512*_UNSET from ix86_isa_flags2 + and add it to ix86_isa_flags2_explicit. + +2025-12-20 Jakub Jelinek <jakub@redhat.com> + + PR target/123217 + * config/i386/i386-expand.cc (ix86_expand_builtin) + <case IX86_BUILTIN_ENCODEKEY128U32, case IX86_BUILTIN_ENCODEKEY256U32, + case IX86_BUILTIN_URDMSR>: Set target to a new pseudo even if it is + non-NULL but doesn't satisfy register_operand predicate. + +2025-12-19 Victor Do Nascimento <victor.donascimento@arm.com> + + PR tree-optimization/123152 + * tree-vect-loop-manip.cc + (slpeel_tree_duplicate_loop_to_edge_cfg): Correct order of + dominator update. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * alias.cc (alias_set_subset_of): Fix comment typo, explicitely + -> explicitly. + * builtins.cc (get_object_alignment_2): Likewise. + * combine.cc (make_extraction): Fix comment typos, potentionally + -> potentially and implicitely -> implicitly. + (simplify_comparison): Fix comment typo, outmost -> outermost. + (record_truncated_values): Fix comment typo, truning -> turning. + (distribute_notes): Fix comment typo, recourse -> recurse. + * config/avr/avr.md (*<extend_u>maddqihi4_split): Fix comment + typo, explicitely -> explicitly. + (*mulu<mode>si3): Likewise. Fix comment typo, implicitely + -> implicitly. + * config/i386/i386.cc (ix86_get_drap_rtx): Fix comment typo, + statment -> statement. + * config/rs6000/rs6000.h (TARGET_DIRECT_MOVE_64BIT): Fix comment typo, + transfered -> transferred. + * config/s390/s390.cc (s390_encode_section_info): Fix comment typo, + catched -> caught. + * dwarf2out.cc (dwarf_proc_stack_usage_map): Fix comment typo, + invokation -> invocation. + (dwarf2out_die_ref_for_decl): Fix comment typo, refering -> referring. + (loc_list_from_tree_1): Fix message typo, INDCREMENT -> INCREMENT. + (field_byte_offset): Fix comment typo, simplier -> simpler. + (add_data_member_location_attribute): Fix comment typo, catched + -> caught. + (gen_lexical_block_die): Fix comment typo, conrecte -> concrete. + (analyze_variants_discr): Fix comment typo, consistant -> consistent. + (gen_decl_die): Fix comment typo, prunning -> pruning. + (resolve_variable_values): Fix comment typo, refering -> referring. + * genmatch.cc (expr::expr_type): Fix comment typo, explicitely + -> explicitly. + * gimple-range-phi.cc (phi_group::is_modifier_p): Fix comment typo, + statment -> statement. + * gimple-ssa-store-merging.cc (pass_optimize_bswap::execute): Fix + comment typo, invokation -> invocation. Add second space after dot. + * gimple-walk.cc (walk_gimple_op): Fix comment typo, explicitely + -> explicitly. + * gimplify.cc (mostly_copy_tree_r): Fix comment typo, gimplication + -> gimplification. + (var_needs_auto_init_p): Fix comment typo, automaticly + -> automatically. + (gimplify_decl_expr): Fix comment typos, varaible -> variable + and compatiple -> compatible. + (emit_warn_switch_unreachable): Fix comment typo, statment + -> statement. + (should_warn_for_implicit_fallthrough): Fix comment typo, fallthough + -> fallthrough. + (modify_call_for_omp_dispatch): Fix comment typo, interobject + -> interop. + (oacc_default_clause): Fix comment typo, tranfered -> transferred. + (omp_notice_variable): Likewise. + * graphite-isl-ast-to-gimple.cc (binary_op_to_tree): Fix comment + typo, explicitely -> explicitly. + * ipa-param-manipulation.cc (push_function_arg_decls): Likewise. + * ipa-prop.cc (ipa_make_edge_direct_to_target): Likewise. + * ipa-prop.h (ipa_node_params::node_within_scc): Fix comment typo, + potentionally -> potentially. + * loop-init.cc (fix_loop_structure): Fix comment typo, refering + -> referring. + * match.pd (1 / X -> X == 1): Fix comment typo, simplier -> simpler. + * opts.cc (global_options): Fix comment typo, explicitely + -> explicitly. + * sanopt.cc (sanopt_optimize_walker): Fix comment typo, potentionally + -> potentially. + * tree.cc (variably_modified_type_p): Fix comment typo, refering + -> referring. + * tree-cfg.cc (group_case_labels_stmt): Likewise. + (dump_function_to_file): Fix comment typo, explicitely -> explicitly. + (make_forwarders_with_degenerate_phis): Likewise. + * tree-inline.cc (replace_locals_op): Likewise. + * tree-loop-distribution.cc (loop_distribution::execute): Fix comment + typo, refering -> referring. + * tree-sra.cc (generate_subtree_deferred_init): Fix comment typo, + statment -> statement. + * tree-ssa-alias.cc (ptrs_compare_unequal): Fix comment typo, + explicitely -> explicitly. + * tree-ssa-forwprop.cc (_vec_perm_simplify_seq::stmt): Fix comment + typo, statment -> statement. + (narrow_vec_perm_simplify_seq): Fix message typo, statment + -> statement. + (blend_vec_perm_simplify_seqs): Likewise. + * tree-ssa-pre.cc (compute_antic_aux): Fix comment typo, explicitely + -> explicitly. + * tree-vect-loop-manip.cc (vect_do_peeling): Fix comment typo, + refering -> referring. + * tree-vect-patterns.cc: Fix comment typo, transfered -> transferred. + * tree-vect-slp.cc (vect_build_slp_tree_2): Fix comment typo, + explicitely -> explicitly. + (vect_build_slp_instance): Fix comment typo, transfered + -> transferred. + (vect_optimize_slp_pass::build_vertices): Fix comment typo, + explicitely -> explicitly. + (vect_slp_analyze_node_operations): Likewise. Fix comment typo, + refering -> referring. + * tree-vect-stmts.cc (vectorizable_store): Fix comment typo, catched + -> caught. + * vec.h (auto_vec::auto_vec): Fix comment typo, refering -> referring. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR target/122970 + * config/riscv/riscv-v.cc (expand_const_vector_interleaved_stepped_npatterns): + Reinterpret base as smaller type. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-v.cc (expand_vector_subreg_extract): New + function that checks for and performs "vector extracts". + (legitimize_move): Call new function. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/autovec.md: Ditto. + * config/riscv/autovec-opt.md: Add VLS modes. + * config/riscv/vector-crypto.md: Ditto. + * config/riscv/vector-iterators.md: Ditto. + * config/riscv/vector.md (@pred_ffs<VB:mode><P:mode>): Ditto. + (@pred_ffs<VB_VLS:mode><P:mode>): Ditto. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Rename. + * config/riscv/riscv-protos.h (riscv_v_ext_vector_mode_p): + Rename. + (riscv_v_ext_tuple_mode_p): Ditto. + (riscv_v_ext_vls_mode_p): Ditto. + (riscv_vla_mode_p): To new name. + (riscv_tuple_mode_p): Ditto. + (riscv_vls_mode_p): Ditto. + * config/riscv/riscv-selftests.cc (run_const_vector_selftests): + Use new name. + (BROADCAST_TEST): Ditto. + * config/riscv/riscv-v.cc (imm_avl_p): Ditto. + (legitimize_move): Ditto. + (get_vlmul): Ditto. + (get_vlmax_rtx): Ditto. + (get_nf): Ditto. + (get_subpart_mode): Ditto. + (get_ratio): Ditto. + (get_mask_mode): Ditto. + (get_vector_mode): Ditto. + (get_tuple_mode): Ditto. + (can_find_related_mode_p): Ditto. + (cmp_lmul_le_one): Ditto. + (cmp_lmul_gt_one): Ditto. + (vls_mode_valid_p): Ditto. + * config/riscv/riscv-vector-builtins-bases.cc: Ditto. + * config/riscv/riscv-vector-builtins.cc (rvv_switcher::rvv_switcher): Ditto. + (register_builtin_type): Ditto. + * config/riscv/riscv-vector-costs.cc (max_number_of_live_regs): + Ditto. + (compute_estimated_lmul): Ditto. + (costs::costs): Ditto. + (costs::better_main_loop_than_p): Ditto. + (costs::adjust_stmt_cost): Ditto. + * config/riscv/riscv.cc (riscv_v_ext_vector_mode_p): Ditto. + (riscv_vla_mode_p): Ditto. + (riscv_v_ext_tuple_mode_p): Ditto. + (riscv_tuple_mode_p): Ditto. + (riscv_v_ext_vls_mode_p): Ditto. + (riscv_vls_mode_p): Ditto. + (riscv_v_ext_mode_p): Ditto. + (riscv_vector_mode_p): Ditto. + (riscv_v_adjust_nunits): Ditto. + (riscv_v_adjust_bytesize): Ditto. + (riscv_classify_address): Ditto. + (riscv_legitimate_address_p): Ditto. + (riscv_address_insns): Ditto. + (riscv_const_insns): Ditto. + (riscv_legitimize_move): Ditto. + (riscv_binary_cost): Ditto. + (riscv_rtx_costs): Ditto. + (riscv_pass_vls_aggregate_in_gpr): Ditto. + (riscv_get_vector_arg): Ditto. + (riscv_pass_vls_in_vr): Ditto. + (riscv_get_arg_info): Ditto. + (riscv_pass_by_reference): Ditto. + (riscv_vector_required_min_vlen): Ditto. + (riscv_get_v_regno_alignment): Ditto. + (riscv_print_operand): Ditto. + (riscv_secondary_memory_needed): Ditto. + (riscv_hard_regno_nregs): Ditto. + (riscv_hard_regno_mode_ok): Ditto. + (riscv_modes_tieable_p): Ditto. + (riscv_can_change_mode_class): Ditto. + (riscv_vector_mode_supported_p): Ditto. + (riscv_regmode_natural_size): Ditto. + (riscv_get_mask_mode): Ditto. + (riscv_vectorize_preferred_vector_alignment): Ditto. + (riscv_vectorize_vec_perm_const): Ditto. + (get_common_costs): Ditto. + (riscv_preferred_else_value): Ditto. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/autovec.md (mask_len_gather_load<RATIO64:mode><RATIO64I:mode>): + Change from this... + (mask_len_gather_load<mode><vindex>): ...to this. + (mask_len_gather_load<RATIO32:mode><RATIO32I:mode>): Ditto. + (mask_len_gather_load<mode><vindex_double_trunc>): Ditto. + (mask_len_gather_load<RATIO16:mode><RATIO16I:mode>): Ditto. + (mask_len_gather_load<mode><vindex_quad_trunc>): Ditto. + (mask_len_gather_load<RATIO8:mode><RATIO8I:mode>): Ditto. + (mask_len_gather_load<mode><vindex_oct_trunc>): Ditto. + (mask_len_gather_load<RATIO4:mode><RATIO4I:mode>): Ditto. + (mask_len_gather_load<mode><vindex_double_ext>): Ditto. + (mask_len_gather_load<RATIO2:mode><RATIO2I:mode>): Ditto. + (mask_len_gather_load<mode><vindex_quad_ext>): Ditto. + (mask_len_gather_load<mode><mode>): Ditto. + (mask_len_gather_load<mode><vindex_oct_ext>): Ditto. + (mask_len_scatter_store<RATIO64:mode><RATIO64I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex>): Ditto. + (mask_len_scatter_store<RATIO32:mode><RATIO32I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex_double_trunc>): Ditto. + (mask_len_scatter_store<RATIO16:mode><RATIO16I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex_quad_trunc>): Ditto. + (mask_len_scatter_store<RATIO8:mode><RATIO8I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex_oct_trunc>): Ditto. + (mask_len_scatter_store<RATIO4:mode><RATIO4I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex_double_ext>): Ditto. + (mask_len_scatter_store<RATIO2:mode><RATIO2I:mode>): Ditto. + (mask_len_scatter_store<mode><vindex_quad_ext>): Ditto. + (mask_len_scatter_store<mode><mode>): Ditto. + (mask_len_scatter_store<mode><vindex_oct_ext>): Ditto. + * config/riscv/riscv-v.cc (prepare_gather_scatter): Use new + scheme + (get_gather_scatter_code): Ditto. + (expand_gather_scatter): Ditto. + * config/riscv/riscv-vector-builtins-bases.cc: Ditto. + * config/riscv/vector-iterators.md: Ditto. + * config/riscv/vector.md (@pred_indexed_<order>store<RATIO64:mode><RATIO64I:mode>): + Go from this... + (@pred_indexed_<order>store<mode>_same_eew): ...to this. + (@pred_indexed_<order>store<RATIO32:mode><RATIO32I:mode>): + Ditto. + (@pred_indexed_<order>store<mode>_x2_greater_eew): Ditto. + (@pred_indexed_<order>store<RATIO16:mode><RATIO16I:mode>): + Ditto. + (@pred_indexed_<order>store<mode>_x4_greater_eew): Ditto. + (@pred_indexed_<order>store<RATIO8:mode><RATIO8I:mode>): Ditto. + (@pred_indexed_<order>store<mode>_x8_greater_eew): Ditto. + (@pred_indexed_<order>store<RATIO4:mode><RATIO4I:mode>): Ditto. + (@pred_indexed_<order>store<mode>_x2_smaller_eew): Ditto. + (@pred_indexed_<order>store<RATIO2:mode><RATIO2I:mode>): Ditto. + (@pred_indexed_<order>store<mode>_x4_smaller_eew): Ditto. + (@pred_indexed_<order>store<RATIO1:mode><RATIO1:mode>): Ditto. + (@pred_indexed_<order>store<mode>_x8_smaller_eew): Ditto. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR tree-optimization/123118 + * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Check that + the type sign is equal. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR tree-optimization/123117 + * tree-ssa-forwprop.cc (simplify_vector_constructor): + Check if we had a nop conversion and don't use pack/unpack in + that case. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + * doc/md.texi: Use unicode quotation marks. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/autovec.md (<cbranch_optab><mode>): Implement. + * config/riscv/predicates.md (riscv_cbranch_comparison_operator): + Define. + * config/riscv/vector-iterators.md: New iterators. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * optabs.cc (emit_cmp_and_jump_insns): Fix len/bias operands. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/123097 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Calculate vector size by number of elements * bit size per + element. + +2025-12-19 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/123223 + * lra-constraints.cc (match_reload, curr_insn_transform): Check + rtx on REG when testing scratch pseudos. + +2025-12-19 Jeff Law <jlaw@ventanamicro.com> + + * config/h8300/h8300.cc (output_logical_op): Adjust last argument to + be a pattern, not an insn. Corresponding implementation changes. + (output_shift_loop): Extracted from output_a_shift and improved + to use a sentinel to indicate when to stop the loop. + (output_a_shift): Use output_shift_loop. + (compute_a_shift_length): Handle adjusted shift loop code. + * config/h8300/logical.md (logicals): Pass pattern to output_logical_op + rather then the full insn. + * config/h8300/h8300-protos.h (output_logical_op): Update prototype. + +2025-12-19 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/123205 + * gimple-range-gori.cc (gori_compute::may_recompute_p): Only + recompute range-op statements. + * gimple-range-op.cc (gimple_range_op_handler): Default + recomputation to true. + (maybe_builtin_call): CFN_BUILT_IN_CONSTANT_P should not be + recomputable. + * gimple-range-op.h (recomputable_p): New. + (recomputable_p): New. + +2025-12-19 Tobias Burnus <tburnus@baylibre.com> + + * tree-pretty-print.cc (dump_omp_clause): For uses_allocators, + print modifier before allocator variable. + +2025-12-19 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/predicates.md (xtensa_cstoresi_operator): + Change it to include unsigned comparisons only when TARGET_SALT is + enabled. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR debug/122968 + * dwarf2out.cc (premark_used_variables): Handle "structured bindings" + attribute. + (dwarf2out_late_global_decl): Likewise. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * doc/install.texi (--with-tls=): Fix a typo, were -> where. + +2025-12-19 Alexandre Oliva <oliva@gnu.org> + + PR target/55212 + * lra-constraints.cc (match_reload): Treat former scratch + regs as implicit unused output reloads. + (process_alt_operands): Likewise. + (curr_insn_transform): Likewise. + +2025-12-19 Lewis Hyatt <lhyatt@gmail.com> + + PR bootstrap/12407 + * doc/install.texi (--enable-languages): Document the new language + exclusion feature. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (gimplify_scan_omp_clauses): Handle + OpenMP device_type clause. + * omp-low.cc (scan_sharing_clauses): Likewise. + (lower_omp_target): Print 'sorry, unimplemented' for + device_type clause value other than 'any'. + +2025-12-18 Tejas Belagod <tejas.belagod@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define + __ARM_FEATURE_SVE_PREDICATE_OPERATORS. + +2025-12-18 Victor Do Nascimento <victor.donascimento@arm.com> + + PR tree-optimization/123153 + * tree-vect-loop-manip.cc + (slpeel_tree_duplicate_loop_to_edge_cfg): use + profile_probability::even () for even likelihood. + +2025-12-18 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-option-extensions.def (sme-lutv2): Fix + feature string. + +2025-12-18 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-arches.def: Add armv9.6-a. + * config/aarch64/aarch64-option-extensions.def: + (sve-aes): Update to be enables by smeaes. + (sve-bitperm): Update to be enables by smesbitperm. + (fprcvt): New cli extension option. + (lsfe): Likewise. + (f8f32mm): Likewise. + (f8f16mm): Likewise. + (sme2p2): Likewise. + (sve2p2): Likewise. + (sve-aes2): Likewise. + (sve-f16f32mm): Likewise. + (sve-bfscale): Likewise. + (ssve-aes): Likewise. + (lsui): Likewise. + (occmo): Likewise. + (pcdphint): Likewise. + (pops): Likewise. + (ssve-bitperm): Likewise. + (ssve-fexpa): Likewise. + (sme-mop4): Likewise. + (sme-tmop): Likewise. + +2025-12-18 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-option-extensions.def + (sve-aes): New cli extension option. + (sve2-aes): Changed to be alias of sve2+sve-aes2. + (sve-bitperm): New cli extension option. + (sve2-bitperm): Changed to be alias of sve2+sve-bitperm. + (sve-sm4): New cli extension option. + (sve2-sm4): Changed to be alias of sve2+sve-sm4. + (sve-sm4): New cli extension option. + (sve2-sm4): Changed to be alias of sve2+sve-sm4. + * config/aarch64/aarch64.h (TARGET_SVE2_AES): Updated to require + sve2+sve-aes. + (TARGET_SVE2_BITPERM): Updated to require sve2+sve-bitperm. + (TARGET_SVE2_SHA3): Updated to require sve2+sve-sha3. + (TARGET_SVE2_SM4): Updated to require sve2+sve-sm4 + * config/aarch64/aarch64-sve-builtins-sve2.def: Update gating for sve2-X + intrinsics. + +2025-12-18 Alfie Richards <alfie.richards@arm.com> + + * common/config/aarch64/aarch64-common.cc + (struct aarch64_extension_info): Add flags_alias_preferred_over. + (AARCH64_OPT_EXTENSION): Add setting flags preferred over to 0. + (AARCH64_OPT_EXTENSION_ALIAS): New macro def. + (aarch64_get_extension_string_for_isa_flags): Update to use alias + extensions over constituent extensions. + * config/aarch64/aarch64-feature-deps.h (alias_flags): New variable + (AARCH64_OPT_EXTENSION): New macro def. + (AARCH64_OPT_EXTENSION_ALIAS): New macro def. + (HANDLE): Update to use alias_flags. + (AARCH64_CORE): Update to use alias_flags. + * config/aarch64/aarch64-option-extensions.def + (AARCH64_OPT_EXTENSION_ALIAS): New macro def to + define alias_prefer_over_flags_X. + (crypto): Update to us AARCH64_OPT_EXTENSION_ALIAS. + +2025-12-18 WANG Xuerui <git@xen0n.name> + + PR target/123171 + * config/loongarch/loongarch.cc (loongarch_option_restore): Add + missing update to la_target.isa.base. + +2025-12-18 chenxiaolong <chenxiaolong@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_modes_tieable_p): + Add support for vector conversion. + +2025-12-18 Senthil Kumar Selvaraj <saaadhu@gcc.gnu.org> + + * opts-common.cc (jobserver_info::jobserver_info): Do not skip + negative file descriptors in simple UNIX pipe mode. + +2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122734 + * tree-ssa-loop-ch.cc (should_duplicate_loop_header_p): Remove + check on very_unlikely probability. + +2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * predict.cc (unlikely_executed_stmt_p): Fix up return for + __builtin_unreachable/__builtin_trap. + +2025-12-18 Alexandre Oliva <oliva@adacore.com> + + * var-tracking.cc (vt_expand_var_loc_chain): Prepare to exit + the loop after unsuitable_loc. + +2025-12-17 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * cselib.cc (cselib_redundant_set_p): Return false for volatile + memory source or destination. + +2025-12-17 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_out_shift_with_cnt): Tweak + execution time by count-1 cycles in some cases. + +2025-12-17 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-protos.h (out_shift_with_cnt): Remove. + * config/avr/avr.cc (avr_out_shift_with_cnt): New static + function from out_shift_with_cnt: Pass shift rtx_code instead + of asm template. + (avr_out_shift_1): New static helper function. + (ashlqi3_out, ashlhi3_out, avr_out_ashlpsi3, ashlsi3_out) + (ashrqi3_out, ashrhi3_out, avr_out_ashrpsi3, ashrsi3_out) + (lshrqi3_out, lshrhi3_out, avr_out_lshrpsi3, lshrsi3_out): + Adjust avr_out_shift_with_cnt to new interface. + +2025-12-17 Jeff Law <jeffrey.law@oss.qualcomm.com> + + * config/riscv/sync.md (atomic compare and set): Reorder patterns + so the stricter pattern comes first. + +2025-12-17 Jakub Jelinek <jakub@redhat.com> + + PR target/123155 + * config/i386/xmmintrin.h (_mm_maskmove_si64): Rename offset automatic + variable to __offset. + +2025-12-17 Jakub Jelinek <jakub@redhat.com> + + PR target/123155 + * config/i386/avx10_2bf16intrin.h (_mm512_roundscale_pbh, + _mm512_mask_roundscale_pbh, _mm512_maskz_roundscale_pbh, + _mm256_roundscale_pbh, _mm256_mask_roundscale_pbh, + _mm256_maskz_roundscale_pbh, _mm_roundscale_pbh, + _mm_mask_roundscale_pbh, _mm_maskz_roundscale_pbh, + _mm512_reduce_pbh, _mm512_mask_reduce_pbh, _mm512_maskz_reduce_pbh, + _mm256_reduce_pbh, _mm256_mask_reduce_pbh, _mm256_maskz_reduce_pbh, + _mm_reduce_pbh, _mm_mask_reduce_pbh, _mm_maskz_reduce_pbh): Rename + B argument to __B. + +2025-12-17 Umesh Kalvakuntla <umesh.kalvakuntla@amd.com> + + * common/config/i386/cpuinfo.h (get_amd_cpu): Add znver6 1Ah + family model numbers. + (get_available_features): Set feature AVX512BMM. + * common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AVX512BMM_SET): + New macro. + (OPTION_MASK_ISA2_AVX512BMM_UNSET): New macro. + (OPTION_MASK_ISA2_AVX512BW_UNSET): Unset AVX512BMM. + (ix86_handle_option): Likewise. + * common/config/i386/i386-cpuinfo.h (enum processor_subtypes): + Add AMDFAM1AH_ZNVER6. + (enum processor_features): Add FEATURE_AVX512BMM. + * common/config/i386/i386-isas.h: Likewise. + * config.gcc: Add avx512bmmintrin.h, avx512bmmvlintrin.h, + znver6. + * config/i386/cpuid.h (bit_AVX512BMM): New macro. + * config/i386/driver-i386.cc (host_detect_local_cpu): Likewise. + * config/i386/i386-builtin.def (BDESC): Add AVX512BMM builtins. + * config/i386/i386-c.cc (ix86_target_macros_internal): Likewise. + * config/i386/i386-isa.def (AVX512BMM): Likewise. + * config/i386/i386-options.cc (m_ZNVER6): New macro. + (m_ZNVER): Add m_ZNVER6. + (processor_cost_table): Uses znver5_cost table for + PROCESSOR_ZNVER6 for now. + (ix86_valid_target_attribute_inner_p): Likewise. + * config/i386/i386.cc (ix86_reassociation_width): Likewise. + * config/i386/i386.h (enum processor_type): Likewise. + * config/i386/i386.md: Likewise. + * config/i386/i386.opt: Likewise. + * config/i386/i386.opt.urls: Likewise. + * config/i386/immintrin.h: Likewise. + * config/i386/sse.md (avx512bmm_vbmacor16x16x16_<mode>): New + define_insn. + (avx512bmm_vbmacxor16x16x16_<mode>): Likewise. + (avx512bmm_vbitrevb_<mode>_mask): Likewise. + (avx512bmm_vbitrevb_<mode>): Likewise. + * config/i386/x86-tune-sched.cc (ix86_issue_rate): Likewise. + (ix86_adjust_cost): Likewise. + * config/i386/x86-tune.def (X86_TUNE_FUSE_ALU_AND_BRANCH): Add + m_ZNVER6. + (X86_TUNE_FUSE_MOV_AND_ALU): Likewise. + (X86_TUNE_USE_SCATTER_2PARTS): Likewise. + (X86_TUNE_USE_SCATTER_4PARTS): Likewise. + (X86_TUNE_USE_SCATTER_8PARTS): Likewise. + (X86_TUNE_AVOID_256FMA_CHAINS): Likewise. + (X86_TUNE_AVOID_512FMA_CHAINS): Likewise. + (X86_TUNE_AVX512_MOVE_BY_PIECES): Likewise. + * doc/extend.texi: Likewise. + * doc/invoke.texi: Likewise. + * config/i386/avx512bmmintrin.h: New file. + * config/i386/avx512bmmvlintrin.h: New file. + +2025-12-16 Iain Sandoe <iain@sandoe.co.uk> + + * config/aarch64/aarch64.cc + (aarch64_function_abi): Use checking assert. + (aarch64_fndecl_abi): Test for the availability of the + machine content before trying to look up the cached PCS. + Use a checking assert. + +2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> + + * common.opt.urls: Regenerate. + +2025-12-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_expand_scc_SALT): + New sub-function that emits the SALT/SALTU instructions. + (xtensa_expand_scc): Change the part related to the SALT/SALTU + instructions to a call to the above sub-function. + +2025-12-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc + (xtensa_expand_block_set_libcall, + xtensa_expand_block_set_unrolled_loop, + xtensa_expand_block_set_small_loop, xtensa_call_tls_desc): + Change the return statement to pass the return value of + end_sequence() directly without going through a variable, and + remove the definition of that variable. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + Indu Bhagat <indu.bhagat@oracle.com> + + * config/aarch64/aarch64.md (addg): Update pattern to use + addg/subg instructions. + (stg): Update pattern. + (st2g): New pattern. + (tag_memory): Likewise. + (compose_tag): Likewise. + (irq): Update pattern to accept xzr register. + (gmi): Likewise. + (UNSPECV_TAG_SPACE): Define. + * config/aarch64/aarch64.cc (AARCH64_MEMTAG_GRANULE_SIZE): + Define. + (AARCH64_MEMTAG_TAG_BITSIZE): Likewise. + (aarch64_override_options_internal): Error out if MTE instructions + are not available. + (aarch64_post_cfi_startproc): Emit .cfi_mte_tagged_frame. + (aarch64_can_tag_addresses): Add MEMTAG specific handling. + (aarch64_memtag_tag_bitsize): New function + (aarch64_memtag_granule_size): Likewise. + (aarch64_memtag_insert_random_tag): Likwise. + (aarch64_memtag_add_tag): Likewise. + (aarch64_memtag_extract_tag): Likewise. + (aarch64_granule16_memory_address_p): Likewise. + (aarch64_emit_stxg_insn): Likewise. + (aarch64_memtag_tag_memory_via_loop): New definition. + (aarch64_expand_tag_memory): Likewise. + (aarch64_check_memtag_ops): Likewise. + (TARGET_MEMTAG_TAG_BITSIZE): Likewise. + (TARGET_MEMTAG_GRANULE_SIZE): Likewise. + (TARGET_MEMTAG_INSERT_RANDOM_TAG): Likewise. + (TARGET_MEMTAG_ADD_TAG): Likewise. + (TARGET_MEMTAG_EXTRACT_TAG): Likewise. + * config/aarch64/aarch64-builtins.cc + (aarch64_expand_builtin_memtag): Update set tag builtin logic. + * config/aarch64/aarch64-linux.h: Pass memtag-stack sanitizer + specific options to the linker. + * config/aarch64/aarch64-protos.h + (aarch64_granule16_memory_address_p): New prototype. + (aarch64_check_memtag_ops): Likewise. + (aarch64_expand_tag_memory): Likewise. + * config/aarch64/constraints.md (Umg): New memory constraint. + (Uag): New constraint. + (Ung): Likewise. + * config/aarch64/predicates.md (aarch64_memtag_tag_offset): + Refactor it. + (aarch64_granule16_imm6): Rename from aarch64_granule16_uimm6 and + refactor it. + (aarch64_granule16_memory_operand): New constraint. + * config/aarch64/iterators.md (MTE_PP): New code iterator to be + used for mte instructions. + (stg_ops): New code attributes. + (st2g_ops): Likewise. + (mte_name): Likewise. + * config/aarch64/aarch64.opt (aarch64-tag-memory-loop-threshold): + New parameter. + * doc/invoke.texi: Update documentation. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + Indu Bhagat <indu.bhagat@oracle.com> + + * asan.cc (handle_builtin_stack_restore): Accommodate MEMTAG + sanitizer. + (handle_builtin_alloca): Expand differently if MEMTAG sanitizer. + (get_mem_refs_of_builtin_call): Include MEMTAG along with + HWASAN. + (memtag_sanitize_stack_p): New definition. + (memtag_sanitize_allocas_p): Likewise. + (memtag_memintrin): Likewise. + (hwassist_sanitize_p): Likewise. + (hwassist_sanitize_stack_p): Likewise. + (report_error_func): Include MEMTAG along with HWASAN. + (build_check_stmt): Likewise. + (instrument_derefs): MEMTAG too does not deal with globals yet. + (instrument_builtin_call): Include MEMTAG along with HWASAN. + (maybe_instrument_call): Likewise. + (asan_expand_mark_ifn): Likewise. + (asan_expand_check_ifn): Likewise. + (asan_expand_poison_ifn): Expand differently if MEMTAG sanitizer. + (asan_instrument): Include MEMTAG along with HWASAN. + (hwasan_emit_prologue): Expand differently if MEMTAG sanitizer. + (hwasan_emit_untag_frame): Likewise. + * asan.h (memtag_sanitize_stack_p): New declaration. + (memtag_sanitize_allocas_p): Likewise. + (hwassist_sanitize_p): Likewise. + (hwassist_sanitize_stack_p): Likewise. + (asan_sanitize_use_after_scope): Include MEMTAG along with + HWASAN. + * cfgexpand.cc (align_local_variable): Likewise. + (expand_one_stack_var_at): Likewise. + (expand_stack_vars): Likewise. + (expand_one_stack_var_1): Likewise. + (init_vars_expansion): Likewise. + (expand_used_vars): Likewise. + (pass_expand::execute): Likewise. + * gimplify.cc (asan_poison_variable): Likewise. + * internal-fn.cc (expand_HWASAN_ALLOCA_POISON): New definition. + (expand_HWASAN_ALLOCA_UNPOISON): Expand differently if MEMTAG + sanitizer. + (expand_HWASAN_MARK): Likewise. + * internal-fn.def (HWASAN_ALLOCA_POISON): Define new. + * params.opt: Document new param. + * sanopt.cc (pass_sanopt::execute): Include MEMTAG along with + HWASAN. + * gcc.cc (sanitize_spec_function): Add check for memtag-stack. + * doc/tm.texi: Regenerate. + * target.def (extract_tag): Update documentation. + (add_tag): Likewise. + (insert_random_tag): Likewise. + +2025-12-16 Indu Bhagat <indu.bhagat@oracle.com> + Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + + * builtins.def: Adjust the macro to include the new + SANTIZIE_MEMTAG_STACK. + * flag-types.h (enum sanitize_code): Add new enumerator for + SANITIZE_MEMTAG and SANITIZE_MEMTAG_STACK. + * opts.cc (finish_options): memtag-stack sanitizer conflicts with + hwaddress and address sanitizers. + (sanitizer_opts): Add new memtag-stack sanitizer. + (parse_sanitizer_options): memtag-stack sanitizer cannot recover. + * params.opt: Add new params for memtag-stack sanitizer. + * doc/invoke.texi: Update documentation. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + + * target-insns.def (compose_tag): New target instruction. + * doc/md.texi (compose_tag): Add documentation. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + + * target-insns.def (tag_memory): New target instruction. + * doc/md.texi (tag_memory): Add documentation. + +2025-12-16 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64.md: Include olympus.md. + * config/aarch64/olympus.md: New file. + * config/aarch64/tuning_models/olympus.h: Add dispatch + constraints and enable dispatch scheduling. + +2025-12-16 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> + + * haifa-sched.cc (choose_ready): Don't require dfa_lookahead <= 0 + to schedule SCHED_GROUP_P insns first. + +2025-12-16 Richard Biener <rguenther@suse.de> + + PR ipa/122456 + * cgraph.cc (cgraph_edge::resolve_speculation): Handle + a NULL symtab_node::get (callee_decl). + +2025-12-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/123110 + * tree-cfgcleanup.cc (maybe_remove_forwarder_block): Add back + check for eh landing pad or non-local dest on the dest. + +2025-12-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/123111 + * tree-cfg.cc (ifconvertable_edge): New function. + (make_forwarders_with_degenerate_phis): Add skip_ifcvtable argument, + check ifconvertable_edge if skip_ifcvtable is true. + * tree-cfg.h (make_forwarders_with_degenerate_phis): New argument + with default of false. + * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): Update + argument to make_forwarders_with_degenerate_phis. + +2025-12-15 Martin Jambor <mjambor@suse.cz> + + PR ipa/107666 + * common.opt (fspeculatively-call-stored-functions): New. + * cgraph.h (cgraph_simple_indirect_info): New fields rec_type and + fld_offset. + * ipa-prop.h (ipa_analyze_var_static_initializer): Declare. + (ipa_dump_noted_record_fnptrs): Likewise. + (ipa_debug_noted_record_fnptrs): Likewise. + (ipa_single_noted_fnptr_in_record): Likewise. + (ipa_free_noted_fnptr_calls): Likewise. + * ipa-cp.cc (ipcp_generate_summary): Call + ipa_analyze_var_static_initializer on each varbool node with a static + initializer. + * ipa-devirt.cc (struct devirt_stats): New type. + (devirt_target_ok_p): New function. + (ipa_devirt): Move statistics counters to the new structure. dump + noted function pointers stored in records. Check for edge hotness + first and for odr_types only for polymorphic edges. Moved a number of + checks to devirt_target_ok_p. Also add speculative direct calls for + non-polymorphic indirect ones when ipa_single_noted_fnptr_in_record + finds a likely target. Call ipa_free_noted_fnptr_calls. + (pass_ipa_devirt::gate): Also check the new flag. + * ipa-prop.cc (noted_fnptr_store): New type. + (struct noted_fnptr_hasher): Likewise. + (noted_fnptr_hasher::hash): New function. + (noted_fnptr_hasher::equal): Likewise. + (noted_fnptrs_in_records): New. + (is_func_ptr_from_record): New function. + (ipa_analyze_indirect_call_uses): Also simple create indirect info + structures with fnptr_loaded_from_record set. + (note_fnptr_in_record): New function. + (ipa_dump_noted_record_fnptrs): Likewise. + (ipa_debug_noted_record_fnptrs): Likewise. + (ipa_single_noted_fnptr_in_record): Likewise. + (ipa_free_noted_fnptr_calls): Likewise. + (ipa_analyze_stmt_uses): Also look for stroes of function pointers to + record structures. + (ipa_analyze_var_static_initializer): New function. + (ipa_write_indirect_edge_info): Also stream fnptr_loaded_from_record + indirec infos. + (ipa_read_indirect_edge_info): Likewise. + (ipa_prop_write_jump_functions): Also stream the contents of + noted_fnptrs_in_records. + (ipa_prop_read_section): Likewise. + * opts.cc (default_options_table): Also turn on + OPT_fspeculatively_call_stored_functions at -O2. + (common_handle_option): Turn flag_speculatively_call_stored_functions + when using profile feedback. + * doc/invoke.texi (-fspeculatively-call-stored-functions): New. + +2025-12-15 Martin Jambor <mjambor@suse.cz> + + * cgraph.h (cgraph_node): Adjust the comment of member function + create_indirect_edge. + (enum cgraph_indirect_info_kind): New. + (cgraph_indirect_call_info): Convert into a base class. + (cgraph_simple_indirect_info): New. + (cgraph_polymorphic_indirect_info): Likewise. + (usable_polymorphic_info_p): Likewise. + (is_a_helper <cgraph_simple_indirect_info *>::test): Likewise. + (is_a_helper <cgraph_polymorphic_indirect_info *>::test): Likewise. + (cgraph_allocate_init_indirect_info): Remove declaration. + (ipa_polymorphic_call_context::ipa_polymorphic_call_context): Use the + appropriate derived type of indirect info. + * cgraph.cc (cgraph_allocate_init_indirect_info): Removed. + (cgraph_node::create_indirect_edge): Create an appropriate type of + indirect_info. + (cgraph_node::dump): Dump indirect info using its dump function. + (cgraph_indirect_call_info::dump): New function. + (cgraph_indirect_call_info::debug): Likewise. + * cgraphclones.cc (cgraph_edge::clone): Create an appropriate type of + indirect_info. + * cgraphunit.cc (analyze_functions): Use the appropriate derived type + of indirect info. + * ipa-cp.cc (initialize_node_lattices): Adjust the check for + polymorphic indirect info. + (ipa_get_indirect_edge_target_1): Use the appropriate derived types of + indirect info. + (ipcp_discover_new_direct_edges): Likewise. + * ipa-devirt.cc (ipa_devirt): Use the polymorphis derived type of + indirect info and check that it is usable. + * ipa-inline.cc (dump_inline_stats): Adjust the check for polymorphic + indirect info. + * ipa-profile.cc (ipa_profile): Likewise and check usability. + * ipa-prop.cc (ipa_print_node_jump_functions): Dump indirect info + using its dumping member function. + (ipa_note_param_call): Removed. + (ipa_analyze_indirect_call_uses): Use the appropriate derived type of + indirect info, set all fields of indirect info separately rather than + relying on ipa_note_param_call. + (ipa_analyze_virtual_call_uses): Use the polymorphis derived type of + indirect info and check that it is usable, set all fields of indirect + info separately rather than relying on ipa_note_param_call. + (ipa_analyze_call_uses): Use the appropriate derived type of indirect + info. + (ipa_make_edge_direct_to_target): Use the appropriate derived type of + indirect info. Remove wrong note that member_ptr check was not + needed. Adjust check for polymorphic call when dumping. + (try_make_edge_direct_simple_call): Use the appropriate derived type + of indirect info. + (try_make_edge_direct_virtual_call): Use the polymorphis derived type + of indirect info and check that it is usable. + (update_indirect_edges_after_inlining): Use the appropriate derived + type of indirect info. Define local variables only before their first + use. + (ipa_write_indirect_edge_info): Also stream indirect info kind. Use + the appropriate derived type of indirect info. + (ipa_read_indirect_edge_info): Check that the streamed in indirect + info kind matches rthe structure at hand. Use the appropriate derived + type of indirect info. + * ipa-utils.h (possible_polymorphic_call_targets): Use the + polymorphis derived type of indirect info. Assert it is usable. + (dump_possible_polymorphic_call_targets): Use the polymorphis + derived type of indirect info and check it is usable. + (possible_polymorphic_call_target_p): Likewise. + * ipa.cc (symbol_table::remove_unreachable_nodes): Use + usable_polymorphic_info_p. + * lto-cgraph.cc (lto_output_edge): Stream indirect info kind. + (compute_ltrans_boundary): Use usable_polymorphic_info_p. + (input_edge): Move definition of ecf_flags before its first use. + Pass true as the last parameter to create_indirect_edge. Stream + indirect info kind and create a corresponding type to hold the + information. + * trans-mem.cc (ipa_tm_insert_gettmclone_call): Use the + polymorphis derived type of indirect info. + +2025-12-15 Martin Jambor <mjambor@suse.cz> + + * gengtype.cc (walk_subclasses): Avoid generating code with unused + variables. + +2025-12-15 Pengxuan Zheng <pengxuan.zheng@oss.qualcomm.com> + + PR tree-optimization/122987 + * tree-ssa-ifcombine.cc (ifcombine_ifandif): Replace + force_gimple_operand_gsi with gimple_build. + +2025-12-15 Joseph Myers <josmyers@redhat.com> + + * Makefile.in (PLUGIN_HEADERS): Add $(srcdir)/text-art/*.h. + (install-plugin): Preserve directory structure for text-art + headers. + +2025-12-15 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-cores.def (cortex-a320): New core. + * config/aarch64/aarch64-tune.md: Regenerate. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop.cc (vect_analyze_loop_form): Relax niters + condition. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-data-refs.cc (vect_enhance_data_refs_alignment): + Enable peeling for uncounted loops. + * tree-vect-loop-manip.cc + (slpeel_tree_duplicate_loop_to_edge_cfg): Add exit condition + duplication functionality. + * tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg): + Modify function signature. + (vect_do_peeling): Enable uncounted loop peeling. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-data-refs.cc (vect_prune_runtime_alias_test_list): + Reject when !operand_equal_p for any data ref pair. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop.cc (vect_analyze_loop_2): Disable partial + vector use for uncounted loops. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg): + reset IVs and accumulators for all exits for uncounted loops. + * tree-vectorizer.h (slpeel_tree_duplicate_loop_to_edge_cfg): + add boolean `uncounted_p' argument. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop-manip.cc (vect_do_peeling): Disable vector + loop skip checking. + (vect_loop_versioning): skip profitability check for uncounted loops. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop-manip.cc (vect_do_peeling): Disable niters + update. + * tree-vect-loop.cc (vect_transform_loop): Likewise. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vectorizer.h (LOOP_VINFO_IV_EXIT): Replace this... + (LOOP_VINFO_MAIN_EXIT): ...with this. + (LOOP_VINFO_EPILOGUE_IV_EXIT): Replace this... + (LOOP_VINFO_EPILOGUE_MAIN_EXIT): ...with this. + (LOOP_VINFO_SCALAR_IV_EXIT): Replace this... + (LOOP_VINFO_SCALAR_MAIN_EXIT): ...with this. + (class _loop_vec_info): s/iv/main for `vec_loop_iv_exit', + `vec_epilogue_loop_main_exit' and `scalar_loop_main_exit' + class members. + * tree-vect-data-refs.cc + (vect_enhance_data_refs_alignment): + s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/. + * tree-vect-loop-manip.cc + (vect_set_loop_controls_directly): Likewise. + (vect_gen_vector_loop_niters_mult_vf): Likewise. + (vect_loop_versioning): Likewise. + (vect_do_peeling): + s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/, + s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT, + s/LOOP_VINFO_EPILOGUE_IV_EXIT/LOOP_VINFO_EPILOGUE_MAIN_EXIT. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): + s/iv_exit/main_exit/ in initializer list. + (vec_init_loop_exit_info): Handle multiple-exit uncounted loops. + (vect_analyze_loop_form): Fix `failure_at' message. + (vect_create_loop_vinfo): + s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/. + (vect_create_epilog_for_reduction): Likewise. + (vectorizable_live_operation): Likewise. + (vect_update_ivs_after_vectorizer_for_early_breaks): Likewise. + (vect_transform_loop): + s/LOOP_VINFO_IV_EXIT/LOOP_VINFO_MAIN_EXIT/, + s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT. + * tree-vectorizer.cc (set_uid_loop_bbs): + s/LOOP_VINFO_SCALAR_IV_EXIT/LOOP_VINFO_SCALAR_MAIN_EXIT. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vectorizer.h (LOOP_VINFO_EARLY_BREAKS_VECT_PEELED): OR + its current definition with `LOOP_VINFO_NITERS_UNCOUNTED_P(L)' + * tree-vect-loop.cc (vect_create_loop_vinfo): Don't populate + `LOOP_VINFO_LOOP_IV_COND' for uncounted loops. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * tree-vect-loop-manip.cc (vect_build_loop_niters): Gracefully + handle uncounted loops. + (vect_gen_prolog_loop_niters): Add type default of `sizetype'. + (vect_gen_vector_loop_niters): Likewise. + (vect_do_peeling): Likewise. + * tree-vect-loop.cc (vect_min_prec_for_max_niters): Likewise. + (loop_niters_no_overflow): Likewise. + * tree-vectorizer.h (LOOP_VINFO_NITERS_UNCOUNTED_P): New. + +2025-12-15 Peter Damianov <peter0x44@disroot.org> + + PR target/108866 + * doc/install.texi: Document --with-windres configure option. + +2025-12-15 Peter Damianov <peter0x44@disroot.org> + + PR target/108866 + * gcc.cc (find_a_program): Add check for DEFAULT_WINDRES. + * configure.ac: Add --with-windres= option. + * config.in: Regenerate. + * configure: Regenerate. + +2025-12-15 Peter Damianov <peter0x44@disroot.org> + + PR driver/108866 + * gcc.cc (default_compilers): Add EXTRA_DEFAULT_COMPILERS so the config + of a target can add an extra compiler spec to default_compilers. + * config/i386/cygming.h (WINDRES_FORMAT_SPEC): New macro to handle + PE format selection based on TARGET_64BIT_DEFAULT and -m32/-m64 flags. + (EXTRA_DEFAULT_COMPILERS): Add spec for windres. + * config/aarch64/cygming.h (EXTRA_DEFAULT_COMPILERS): Likewise. + +2025-12-15 Jerry Zhang Jian <jerry.zhangjian@sifive.com> + + * config/riscv/gen-riscv-ext-opt.cc: Rename UPPERCAE_NAME to + UPPERCASE_NAME. + * config/riscv/gen-riscv-ext-texi.cc: Likewise. + * config/riscv/riscv-ext-corev.def: Likewise. + * config/riscv/riscv-ext-sifive.def: Likewise. + * config/riscv/riscv-ext-thead.def: Likewise. + * config/riscv/riscv-ext-ventana.def: Likewise. + +2025-12-14 Lewis Hyatt <lhyatt@gmail.com> + + PR tree-optimization/106409 + * gimple-ssa-warn-access.cc (maybe_warn_alloc_args_overflow): Adjust + comment for clarity, and augment check to work in LTO as well. + +2025-12-14 Surya Kumari Jangala <jskumari@linux.ibm.com> + + PR rtl-optimization/122274 + * regcprop.cc (value_data_entry): New field. + (kill_value_one_regno): Update field. + (init_value_data): Initialize field. + (kill_set_value_data): New field. + (kill_set_value): Update field. + (kill_autoinc_value): Likewise. + (copy_value): New parameter. Update field. + (incompatible_frame_status): New function. + (find_oldest_value_reg): New parameter. Compare frame relatedness of + insn and propagated value. + (replace_oldest_value_reg): Pass additional parameter to + find_oldest_value_reg(). + (copyprop_hardreg_forward_1): Pass additional parameter to + find_oldest_value_reg(). Compare frame relatedness of insn and + propagated value. Call copy_value() with additional parameter. + +2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/46555 + * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): + Unconditionally set TODO_cleanup_cfg. + +2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * match.pd: Disable a few match patterns for !GIMPLE. + +2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122734 + * tree-ssa-loop-ch.cc (should_duplicate_loop_header_p): Add new argument, + canbe_neverexecuted. When canbe_neverexecuted is true, return if a loop + exit is "never executed" like we are doing an invariant conditional. + (ch_base::copy_headers): Update call to should_duplicate_loop_header_p. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + * config/alpha/alpha.opt.urls: Regenerated. + * config/arc/arc.opt.urls: Regenerated. + * config/arm/arm.opt.urls: Regenerated. + * config/bpf/bpf.opt.urls: Regenerated. + * config/c6x/c6x.opt.urls: Regenerated. + * config/cris/cris.opt.urls: Regenerated. + * config/csky/csky.opt.urls: Regenerated. + * config/h8300/h8300.opt.urls: Regenerated. + * config/i386/i386.opt.urls: Regenerated. + * config/ia64/ia64.opt.urls: Regenerated. + * config/lm32/lm32.opt.urls: Regenerated. + * config/loongarch/loongarch.opt.urls: Regenerated. + * config/lynx.opt.urls: Regenerated. + * config/m32r/m32r.opt.urls: Regenerated. + * config/m68k/m68k.opt.urls: Regenerated. + * config/mcore/mcore.opt.urls: Regenerated. + * config/microblaze/microblaze.opt.urls: Regenerated. + * config/mips/mips.opt.urls: Regenerated. + * config/mn10300/mn10300.opt.urls: Regenerated. + * config/moxie/moxie.opt.urls: Regenerated. + * config/msp430/msp430.opt.urls: Regenerated. + * config/nds32/nds32.opt.urls: Regenerated. + * config/or1k/elf.opt.urls: Regenerated. + * config/pa/pa-hpux.opt.urls: Regenerated. + * config/pa/pa.opt.urls: Regenerated. + * config/pdp11/pdp11.opt.urls: Regenerated. + * config/pru/pru.opt.urls: Regenerated. + * config/riscv/riscv.opt.urls: Regenerated. + * config/rs6000/rs6000.opt.urls: Regenerated. + * config/rs6000/sysv4.opt.urls: Regenerated. + * config/s390/s390.opt.urls: Regenerated. + * config/sh/sh.opt.urls: Regenerated. + * config/sparc/sparc.opt.urls: Regenerated. + * config/v850/v850.opt.urls: Regenerated. + * config/vax/vax.opt.urls: Regenerated. + * config/visium/visium.opt.urls: Regenerated. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <PRU Options>: Fix whitespace + in option list. + (PRU Options): Copy-editing. Index and list negative option forms. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/pdp11/pdp11.opt (m40, m45): Add RejectNegative. + * doc/invoke.texi (Option Summary) <PDP-11 Options>: Remove + redundant -mno- forms from the list. + (PDP-11 Options): Fix some markup issues. Merge documentation + of positive and negative forms of -mac0. Index negative forms + of -msplit, -mlra. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/or1k/elf.opt (mnewlib): Mark obsolete option as + "Undocumented". + * config/or1k/or1k.opt (mcmov): Don't use future tense in doc string. + (msfimm): Likewise. + (mshftimm): Likewise. + * doc/invoke.texi (Option Summary) <OpenRISC Options>: Don't + document -mnewlib. + (OpenRISC Options): Likewise. Add @opindex entry for + -mno-double-float. Fix more instances of incorrect use of future + tense. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <Nvidia PTX Options>: Add + several missing options. + (Nvidia PTX Options): Correct index entry for -march-map. List + negative forms of -moptimize, muniform-simt, and -mgomp. Fix some + Texinfo markup issues. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <NDS32 Options>: Don't list + both positive and negative option forms. + (NDS32 Options): Consolidate separate entries for positive and + negative forms of the same option. Document missing negative + forms in the same style. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/msp430/msp430.opt (mcpu): Mark deprecated option as + "Undocumented". + (mdevices-csv-loc=): Mark option not intended to be used by users + as "Undocumented". + * doc/invoke.texi (Option Summary) <MSP430 Options>: Fill in + argument syntax for options of the form -mfoo=@var{arg}. Don't + list deprecated option -mcpu=. Add missing entries for + -mwarn-devices-csv and -muse-lower-region-prefix. + (MSP430 Options): Similarly document argument syntax in the table + @item entries. Add @opindex entries for negative forms. + Delete documentation of deprecated -mcpu= option. Add + documentation for -muse-lower-region-prefix. Markup and + copy-editing fixes throughout the section. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <MN10300 Options>: Remove + redundant -mno- forms from the list. + (MN10300 Options): Combine the documentation for -mmult-bug, + -mam33, -mliw, and -msetlb with the entries for the respective + negative forms. List and index the negative forms -mno-am33-2, + -mno-am34, -mno-return-pointer-on-d0, -mno-mul.x. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <MMIX Options>: Remove redundant + -mno- forms from the list. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/mips/mips.opt (mnoasmopt): Mark as "Undocumented". + * doc/invoke.texi (Option Summary) <MIPS Options>: Add missing + entries for -mel/-meb. Only list one of -mfoo/-mno-foo. + (MIPS Options): Document -meb/-mel as synonyms for -EB/-EL. + Add missing @opindex entries. Document -mmsa and -mfix4300. + Minor copy-editing for grammar and jargon issues. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/microblaze/microblaze.opt (Zxl-mode-bootstrap): + Mark as "Undocumented". + (Zxl-mode-executable): Likewise. + (Zxl-mode-novectors): Likewise. + (Zxl-mode-xilkernel): Likewise. + (Zxl-mode-xmdstub): Likewise. + (mxl-stack-check): Likewise. + (mno-clearbss): Likewise. + (mxl-mode-executable): Make help string more useful. + (mxl-mode-xmdstub): Likewise. + (mxl-mode-bootstrap): Likewise. + (mxl-mode-novectors): Likewise. + (mxl-mode-xilkernel): Mark as "Undocumented". + * doc/invoke.texi (Option Summary) <MicroBlaze Options>: Delete + entries for obsolete options now explicitly undocumented, and add + missing -mxl-prefetch option. + (MicroBlaze Options): Add missing @opindex entries for negative + option forms and list negative forms explicitly when appropriate. + Delete documentation for obsolete/deprecated options. Add + missing @opindex entries for the m[no-]xml-mode- options. + Add missing documentation for -mxl-prefetch. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <MCore Options>: Remove + redundant -no options. + (MCore Options): Disambiguate documentation for + -mbig-endian/-mlittle-endian and -m210/-m340. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + PR target/119404 + * config/m68k/m68k.opt (mlra): Fix typo in help string. + * doc/invoke.texi (Option Summary) <M680x0 Options>: Remove + redundant -mno- forms from the list. + (M680x0 Options): Combine documentation for -mshort, mbitfield, + -msep-data, -mid-shared-library with that for their respective + negatives that were formerly separately listed. Add missing + @opindex entries. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <M32R/D Options>: Remove + redundant -mno entry. + (M32R/D Options): Regularize form of @opindex entries for + various options of the form -mfoo=@var{value}. Combine + the documentation for -malign-loops and -mno-align-loops. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (M32C Options): Add missing @opindex for negative + form. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <LoongArch Options>: + Remove redundant -mno forms from list. Fix formatting so that + there is uniformly two spaces between options on the same line. + (LoongArch Options): Copy-editing for grammar, etc. Add + @opindex for negative forms. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (LM32 Options): Add @opindex entries for negative + option forms. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/ia64/ia64.opt (msched-prefer-data-spec-insns): Mark as + explicitly "Undocumented". + (msched-prefer-non-control-spec-insns): Likewise. + * doc/invoke.texi (Option Summary) <IA-64 Options>: Remove + explicitly undocumented and redundant mno- forms from the list. + (IA-64 Options): Remove documentation for already-deleted option + -mfused-add and the two explicitly undocumented options. Add + @opindex for negative forms and explicitly list the -mno-forms + of options that are enabled by default. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/pa/pa.opt (mbig-switch): Mark obsolete option as + "Undocumented". + (mjump-in-delay): Likewise. + (mlra): Likewise. + (mnosnake, msnake): Likewise. + * doc/invoke.texi (Option Summary) <HPPA Options>: Remove + deliberately undocumented options from list. Remove redundant + negative/positive forms from list. Fix formatting so there is + uniformly two spaces between options on the same line. + (HPPA Options): Remove documentation for obsolete options. + Add @opindex for negative forms. Properly list -mwsio instead + of just referring to it in the -msio docs. Light copy-editing to + fix markup, jargon, etc. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/h8300/h8300.opt (mexr, mno-exr): Add FIXME re ambiguity + for -mno-exr semantics. + * doc/extend.texi (H8/300 Function Attributes): Document + monitor and OS_Task attributes. + * doc/invoke.texi (Option Summary) <H8/300 Options}: Add -msx, + -ms2600, -mquickcall, -mslowbyte. Combine -mexr and -mno-exr. + (H8/300 Options): Likewise. Add @opindex entries for options + that have negative forms. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/arc/arc.opt: Mark -mbig-endian, -mlittle-endian, + -mmixed-code, -mno-mpy, -margonaut, -munalign-prob-threshold=, + -mannotate-align, -malign-call, -mRcq, -mRcw, -mbbit-peephole, + -mcompact-casesi, -mq-class, -mexpand-adddi, -mcrc, -mdsp-packa, + -mdvbf, -mtelephony, -mrtsc, -EB, -EL, -mrla, -mEA, and + -multcost= as "Undocumented". + * doc/invoke.texi: Remove documentation for the above options. + plus -mmac-d16 and -mmac-24 (which were already marked as + "Undocumented"). Likewise remove documentation for + -mbarrel_shifter, -mdpfp_compact, -mdpfp_fast, -mdsp_packa, + -mmac_24, -mmac_d16, -mspfp_compact, and -mspfp_fast, which + had already been deleted from arc.opt at some point. + Add index entries for the -mno- forms of remaining options that + have them. Document positive forms of -mno-brcc and -mno-dpfp-lrsr. + +2025-12-13 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/arc/arc.opt (-mno-brcc, -mno-dpfp-lrsr): Redefine in + the positive sense. + +2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR ipa/122955 + * cgraph.h (toplevel_node): Add next and previous fields. + Add chain_next and chain_prev to GTY. + (symtab_node): Remove next and previous field. Remove chain_next and chain_prev + from the GTY. + (asm_node): Remove next field. + (symtab_node::next_defined_symbol): Use save_as_a<symtab_node*> around next. + (symbol_table::unregister): Likewise + (FOR_EACH_SYMBOL): Likewise + (symbol_table::first_defined_symbol): Likewise + (symbol_table::first_variable): Likewise + (symbol_table::next_variable): Likewise + (symbol_table::first_static_initializer): Likewise + (symbol_table::next_static_initializer): Likewise + (symbol_table::first_defined_variable): Likewise + (symbol_table::next_defined_variable): Likewise + (symbol_table::first_defined_function): Likewise + (symbol_table::next_defined_function): Likewise + (symbol_table::first_function): Likewise + (symbol_table::next_function): Likewise + (symbol_table::first_function_with_gimple_body): Likewise + (symbol_table::next_function_with_gimple_body): Likewise + * cgraphunit.cc (analyze_functions): Likewise + (output_in_order): Likewise + * lto-streamer-out.cc (lto_output): Use save_as_a<asm_node*> around next. + * symtab.cc (symtab_node::verify_symtab_nodes): Likewise. + +2025-12-12 Chung-Lin Tang <cltang@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * gimplify.cc (gimplify_scan_omp_clauses): Handle uses_allocators + by printing a 'sorry, unimplemented' and removing it. + * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_USES_ALLOCATORS. + * tree.cc (omp_clause_num_ops, omp_clause_code_name): Likewise. + * tree-pretty-print.cc (dump_omp_clause): Handle it. + * tree.h (OMP_CLAUSE_USES_ALLOCATORS_ALLOCATOR, + OMP_CLAUSE_USES_ALLOCATORS_MEMSPACE, + OMP_CLAUSE_USES_ALLOCATORS_TRAITS): New. + +2025-12-12 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/103680 + * tree-loop-distribution.cc (destroy_loop): Set probability + of the exit edge to be always. + +2025-12-12 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/103680 + * tree-cfg.cc (make_forwarders_with_degenerate_phis): Fix + initial value of the count to new bb. + +2025-12-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.cc (s390_expand_builtin): Warn about + non-overloaded deprecated builtins. + +2025-12-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-c.cc (s390_adjust_builtin_arglist): Fix + builtin s390_vec_load_bndry for C++. + +2025-12-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): + Perform array-to-pointer conversion for C++. + +2025-12-12 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122003 + * Makefile.in (ANALYZER_OBJS): Add analyzer/ops.o, + analyzer/supergraph-fixup-locations.o, + analyzer/supergraph-simplify.o, and analyzer/supergraph-sorting.o. + * digraph.h (dnode::add_in_edge): New. + (dnode::remove_in_edge): New. + (dnode::add_out_edge): New. + (dnode::remove_out_edge): New. + (dnode::m_preds): Make public. + (dnode::m_succs): Likewise. + (dnode::find_edge_idx): New. + (dedge::edge_t): New typedef. + (dedge::m_src): Make non-const. + (dedge::m_dest): Likewise. + (dedge::set_dest): New. + (digraph::add_any_extra_stmts): New. + (digraph<GraphTraits>::dump_dot_to_pp): Call it. + * doc/analyzer.texi: Update for rewrite of supergraph. + * doc/invoke.texi (fanalyzer-fine-grained): Make this as a no-op + preserved for backwards compatibility. + (fanalyzer-simplify-supergraph): Document new option. + (fdump-analyzer-supergraph): Update for changes to output. + * gdbhooks.py (AnaSupernodePrinter.to_string): Update for renaming + of supernode::m_index to supernode::m_id. + * system.h: Include <deque> if INCLUDE_DEQUE was defined. + +2025-12-12 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/121852 + * rtlanal.cc (single_set_2): Only look for REG_UNUSED notes if + df && df_note, otherwise if df and SET_DEST is a pseudo with + DF_REG_USE_COUNT 0, assume it is unused as well. Otherwise + assume it may be used. + +2025-12-12 Tejas Belagod <tejas.belagod@arm.com> + Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64.cc (aarch64_instruction_selection): Flip + svbool_t == to != to avoid extra bit-inverse. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_block_move_loop): Change + length, align to unsigned. + (loongarch_expand_block_move): Ditto. + +2025-12-12 Jiajie Chen <c@jia.je> + + * config/loongarch/loongarch.cc (loongarch_emit_int_compare): + Call trunc_int_mode to ensure valid rhs. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * config/loongarch/predicates.md: Add CONSTM1_RTX for low_bitmask_operand. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * config/loongarch/larchintrin.h (__movgr2fcsr): Disable on soft float. + (__cacop_w): New. + (__lddir_d): Delete #error. + (__ldpte_d): Likewise. + (__crc_w_w_w): Disable on LA32 + (__crc_w_d_w): Likewise. + (__crcc_w_w_w): Likewise. + * config/loongarch/loongarch-builtins.cc : Disable some builtin on LA32. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + Jiajie Chen <c@jia.je> + + * config/loongarch/loongarch-opts.cc (loongarch_target_option_override): + Delete opts->x_flag_pcc_struct_return and enable mstrict-align by + default on LA32. + * config/loongarch/loongarch.cc (loongarch_for_each_saved_reg): Save reg + depend on float abi. + (loongarch_explicit_relocs_p): Disable explicit relocs on LA32. + (loongarch_valid_offset_p): Disable const_imm16_operand with 4 byte aligned. + (loongarch_valid_lo_sum_p): Allow lo_sum to be used with DF in ilp32d. + (loongarch_valid_index_p): Disable ADDRESS_REG_REG on LA32. + (loongarch_legitimize_address): Disable mem_shadd_or_shadd_rtx_p on LA32. + (loongarch_output_move_index): Assert TARGET_64BIT for ldx/stx. + (loongarch_output_move): Disable ldptr/stptr if offset is 0. + (loongarch_output_equal_conditional_branch): Disable beqz/bnez on LA32R. + (loongarch_trampoline_init): Change pcaddi to pcaddu12i. + (loongarch_get_separate_components): Disable ldptr/stptr on LA32. + (loongarch_c_mode_for_floating_type): Use TFmode for long double + regardless of target bitness. + (loongarch_bitint_type_info): Disable BitInt on LA32. + (loongarch_call_tls_get_addr): Use call30 on LA32. + (loongarch_split_move): Add split for DI, DF, TF. + * config/loongarch/loongarch.h (LA_LONG_DOUBLE_TYPE_SIZE): Set + LONG_DOUBLE_TYPE_SIZE to 128 regardless of target bitness. + (MAX_FIXED_MODE_SIZE): Set to 64 on LA32. + (DEFAULT_PCC_STRUCT_RETURN): New. + (STACK_BOUNDARY): Set to 128 on LA64 and LA32. + (LARCH_STACK_ALIGN): Set to 16 on LA64 and LA32. + (TRAMPOLINE_SIZE): Set to same value on LA64 and LA32. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + Jiajie Chen <c@jia.je> + + * config/loongarch/constraints.md: Disable k on LA32. + * config/loongarch/loongarch.md (*and<mode>3): Delete. + (*and<mode>3_extend): New. + (zero_extend<SHORT:mode><GPR:mode>2_la32r): New. + (extend<SHORT:mode><GPR:mode>2_la32r): New. + (extendqihi2_la32r): New. + (*movdi_32bit): Remove not working split, use existing + loongarch_split_move instead. + (move_doubleword_2_<mode>): New. + (load_low<mode>): New. + (load_high<mode>): New. + (store_word<mode>): New. + (movgr2frh<mode>): New. + (movfrh2gr<mode>): New. + * config/loongarch/predicates.md: Disable low_bitmask_operand and + ins_zero_bitmask_operand on LA32. Enable const_call_insn_operand on LA32. + * config/loongarch/sync.md (atomic_<amop><mode>): Change to define_expand. + (la64_atomic_<amop><mode>): New. + (la32_atomic_<amop>si): New. + (atomic_fetch_<amop><mode>): Change to define_expand. + (la64_atomic_fetch_<amop><mode>): New. + (la32_atomic_fetch_<amop>si): New. + (atomic_exchange<mode>): Change to define_expand. + (la64_atomic_exchange<mode>): New. + (la32_atomic_exchangesi): New. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + Jiajie Chen <c@jia.je> + + * config.gcc: Add target triple loongarch32-*-*-* and + corresponding abi ilp32f, ilp32d and ilp32s. + * config/loongarch/genopts/loongarch-strings: Add strings for + loongarch32 and ilp32 abi variants. + * config/loongarch/genopts/loongarch.opt.in: Add + -march=la32v1.0/la32rv1.0 and -mabi=ilp32d/ilp32f/ilp32s. + * config/loongarch/gnu-user.h: Add ilp32 abi variants to spec. + * config/loongarch/linux.h: Add ABI_LIBDIR for ilp32 abi + variants. + * config/loongarch/loongarch-c.cc (loongarch_define_unconditional_macros): + Add builtin definitions for loongarch32 target. + * config/loongarch/loongarch-def.cc: Add loongarch32 and ilp32 + definitions. + * config/loongarch/loongarch-def.h: Add loongarch32 and ilp32 + definitions. + * config/loongarch/loongarch-driver.h: Add ilp32 abi variants to + spec. + * config/loongarch/loongarch-opts.cc: Handle ilp32 abi variants. + * config/loongarch/loongarch-opts.h: Add loongarch32 case to + macros. + * config/loongarch/loongarch-str.h: Add loongarch32 and ilp32 + strings. + * config/loongarch/loongarch.opt: Add -march=la32v1.0/la32rv1.0 + and -mabi=ilp32d/ilp32f/ilp32s. + * config/loongarch/t-linux: Add ilp32 abi variants to multilib. + * doc/invoke.texi: Add LA32 arch and tune. + +2025-12-12 Pietro Monteiro <pietro@sociotechnical.xyz> + + * common.opt.urls: Regenerate. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + * config/arc/arc.cc (hwloop_optimize): Fix comment typo, + begining -> beginning. + * config/nds32/nds32-utils.cc (nds32::extract_pattern_from_insn): + Fix comment typo, funciton -> function. + * ipa-inline.cc (speculation_useful_p): Fix comment typo, + calll -> call. + * auto-profile.cc: Fix comment typos, implements -> implement, + inlning -> inlining, passe -> passes, form -> from, ambigous + -> ambiguous. + (afdo_hot_bb_threshod): Rename to ... + (afdo_hot_bb_threshold): ... this. + (maybe_hot_afdo_count_p): Adjust for the above change. + (function_instance::merge): Fix comment typo, hasnt -> hasn't. + (function_instance::offline_if_not_realized): Fix comment typo, + instancs -> instances. + (afdo_count_scale): Fix comment typo, reudce -> reduce. + (get_original_name): Fix comment typos, generetad -> generated, + sufix -> suffix. + (function_instance::get_function_instance): Fix dump message + typo, insteed -> instead. + (function_instance::merge): Fix comment typos, hasnt -> hasn't, + acounting -> accounting, calll -> call, begining -> beginning. + (function_instance::offline_if_in_set): Fix comment typo, + begining -> beginning. + (match_with_target): Fix comment typo, correspons -> corresponds. + (function_instance::match): Fix diagnostic typo, discrimnator + -> discriminator. + (autofdo_source_profile::offline_external_functions): Fix comment + typos, Doint -> Doing, distingush -> distinguish, shold -> should, + Poppulate -> Populate. Fix dump message typo, suffxes -> suffixes. + (autofdo_source_profile::offline_unrealized_inlines): Fix comment + typo, Poppulate -> Populate. + (autofdo_source_profile::update_inlined_ind_target): Fix dump message + typo, funciton -> function. + (autofdo_source_profile::read): Fix comment typos, function_instace + -> function_instance, exixts -> exits. Use afdo_hot_bb_threshold + instead of afdo_hot_bb_threshod. + (autofdo_source_profile::get_function_instance_by_inline_stack): + Fix dump message typo, locaction -> location. + (afdo_propagate_edge): Fix dump message typo, succesors -> successors. + (afdo_propagate): Fix comment typo, stablize -> stabilize. + (struct scale): Fix comment typo, descired -> desired. + (afdo_adjust_guessed_profile): Fix dump message typos, predecesor + -> predecessor, sucessor -> successor. Fix comment typo, inprecise + -> imprecise. + (auto_profile): Fix comment typo, annoate -> annotate. + * tree-vect-slp.cc (vectorizable_slp_permutation_1): Fix comment typo, + cylical -> cyclical. + * except.cc (maybe_add_nop_after_section_switch): Fix comment typo, + begining -> beginning. + * tree-ssa-loop-ivcanon.cc (tree_unroll_loops_completely): Fix comment + typo, begining -> beginning. + * gcc.cc (insert_comments): Likewise. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * doc/extend.texi: Bump version and clarify implementation + status. + +2025-12-11 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/123014 + * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): Detect + empty pre-header block. + (vect_do_peeling): Undo changes from PR122959. + +2025-12-11 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc (aarch64_fndecl_abi): New function. + (aarch64_function_abi): New function. + (aarch64_function_arg_regno_p): Update to use aarch64_fndecl_abi. + (aarch64_output_mi_thunk): Likewise. + (aarch64_is_variant_pcs): Likewise. + (aarch64_set_current_function): Update to initialize pcs value. + * config/aarch64/aarch64.h (enum arm_pcs): Move location earlier in + file. + (machine_function) Add pcs value. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * doc/invoke.texi: Update docs for '-Wdeprecated-openmp'. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + PR target/80881 + * config/i386/i386.h (DEFAULT_TLS_SEG_OFFSET): New define. + * config/mingw/mingw32.h (DEFAULT_TLS_SEG_OFFSET): Likewise. + * config/i386/i386.cc (ix86_tls_index): Fix long line. + (legitimize_tls_address): Use get_thread_pointer, add comments and + fix long lines. + * config/i386/i386.md (*load_tp_<mode>): Use DEFAULT_TLS_SEG_OFFSET + (*load_tp_x32_zext): Likewise. + (*add_tp_<mode>): Likewise. + (*add_tp_x32_zext): Likewise. + * config/i386/predicates.md (pic_32bit_operand): Fix oversight. + (symbolic_operand): Accept UNSPEC_SECREL32 with or without offset. + +2025-12-10 Alexandre Oliva <oliva@adacore.com> + + * config/i386/i386.md (lea peephole2): Add 3 new variants. + +2025-12-10 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/123069 + * tree-vect-generic.cc (expand_vector_mult): Use + build_zero_cst (vectype) instead of build_int_cst (vectype, 0). + +2025-12-10 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi (C++ Modules): Remove standard library header + units from missing pieces, mention importable header redirection. + +2025-12-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/sol2.h (PID_TYPE): Define. + * doc/tm.texi.in (Type Layout): Document PID_TYPE. + * doc/tm.texi: Regenerate. + +2025-12-09 John Ericson <git@JohnEricson.me> + + * Makefile.in: No longer include TARGET_SYSTEM_ROOT in + libgcc.mvars. + +2025-12-09 John Ericson <git@JohnEricson.me> + + * Makefile.in:: Remove NO_PIE_CFLAGS logic, since it is now in + libgcc. + * configure: Regenerate. + * configure.ac: Remove the enable_default_pie substitution, since + libgcc now has its own logic. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/123074 + * tree-vect-loop.cc: Reset LOOP_VINFO_USING_SELECT_VL_P. + +2025-12-09 Pan Li <pan2.li@intel.com> + + * config/riscv/predicates.md: Append operator lt to + the comparison_swappable_operator. + * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Add + swappable operator lt handing. + +2025-12-09 Richard Biener <rguenther@suse.de> + + PR target/121230 + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + With FP mode and 387 math cost spill/reload. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv.opt.urls: Regenerate. + +2025-12-09 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc (gcn_init_cumulative_args): Only warn once. + Use "required" instead of "enabled" in the warning. + * config/gcn/mkoffload.cc (process_asm): Warn, don't error. + Use "required" instead of "on" in the warning. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122635 + * gimple-fold.cc (enum mask_load_store_state): New enum. + (gimple_fold_partial_load_store_mem_ref): Only fold + "all active" loads/stores. + (partial_load_store_mask_state): New function to compute mask + state. + (gimple_fold_partial_load): Remove. + (gimple_fold_partial_load_store): New function. + (gimple_fold_partial_store): Remove. + (gimple_fold_call): Use new function. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * config/rs6000/predicates.md (lxvl_else_operand): New + predicate. + * config/rs6000/vsx.md: Add else operand. + * config/s390/predicates.md (vll_else_operand): New predicate. + * config/s390/vector.md: Add else operand. + * doc/md.texi: Document else operand. + * internal-fn.cc (internal_fn_len_index): Adjust IFN_LEN_LOAD. + (internal_fn_else_index): Add IFN_LEN_LOAD. + * optabs-tree.cc (target_supports_len_load_store_p): Get else + value for len_load. + * tree-vect-stmts.cc (vectorizable_load): Pun the else value + type. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-target-attr.cc (riscv_target_attr_parser::handle_max_vect): + New parser entry. + (riscv_target_attr_parser::update_settings): Set max-vect + option. + (riscv_process_one_target_attr): Change null-arg handling. + * config/riscv/riscv.cc (riscv_override_options_internal): Set + max-vect option. + * config/riscv/riscv.opt: Add -mmax-vectorization option. + * doc/extend.texi: Document new option. + * doc/invoke.texi: Ditto. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR target/123022 + * config/riscv/vector.md: Add mode_idx attribute. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR target/115325 + * config/riscv/riscv-c.cc (riscv_pragma_target_parse): New + function. + (riscv_register_pragmas): Register riscv_pragma_target_parse. + * config/riscv/riscv-protos.h (riscv_process_target_attr_for_pragma): + Declare. + (riscv_reset_previous_fndecl): Ditto. + * config/riscv/riscv-target-attr.cc (riscv_process_target_attr_for_pragma): + New function. + * config/riscv/riscv.cc (riscv_reset_previous_fndecl): Reset. + (riscv_option_save): New function. + (riscv_option_print): Ditto. + (riscv_get_interrupt_type): Adjust docs. + (TARGET_OPTION_SAVE): Implement. + (TARGET_OPTION_PRINT): Ditto. + * doc/extend.texi: Document that riscv can do target pragams. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/autovec.md (reduc_sbool_and_scal_<mode>): New + expander. + (reduc_sbool_ior_scal_<mode>): Ditto. + (reduc_sbool_xor_scal_<mode>): Ditto. + * config/riscv/riscv-protos.h (expand_mask_reduction): Declare. + * config/riscv/riscv-v.cc (expand_mask_reduction): New function. + +2025-12-09 Richard Biener <rguenther@suse.de> + + PR target/123027 + * config/i386/i386-expand.cc (ix86_expand_sse_fp_minmax): + With !HONOR_NANS we can handle LE by swapping and inverting. + +2025-12-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/46555 + * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): + Don't set todo to include cleanupcfg; do it manually. + Call make_forwarders_with_degenerate_phis if optimizing. + +2025-12-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfg.cc (make_forwarders_with_degenerate_phis): Add debug + dump. + +2025-12-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-dce.cc (sort_phi_args): Move to tree-cfg.cc. + (make_forwarders_with_degenerate_phis): Move to tree-cfg.cc. + (perform_tree_ssa_dce): Update for the updated return type + of make_forwarders_with_degenerate_phis. + * tree-cfg.cc (sort_phi_args): Moved from tree-ssa-dce.cc. + (make_forwarders_with_degenerate_phis): Moved from tree-ssa-dce.cc. + Update return type to bool and return true if an edge was split. + * tree-cfg.h (make_forwarders_with_degenerate_phis): New decl. + +2025-12-08 Eric Botcazou <ebotcazou@adacore.com> + + PR target/80881 + * config/mingw/winnt.cc (mingw_pe_unique_section): Put two dollar + signs for TLS sections after the prefix. + (mingw_pe_asm_named_section): Deal with all TLS sections uniformly. + +2025-12-08 Ezra Sitorus <Ezra.Sitorus@arm.com> + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add C1-Nano, + C1-Pro, C1-Premium and C1-Ultra. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi: Document C1 cores. + +2025-12-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123040 + * tree-ssa-sccvn.cc (vn_nary_build_or_lookup_1): Only insert + nary results. + +2025-12-08 Josef Melcr <josef.melcr@suse.com> + + PR ipa/122798 + * cgraph.cc (cgraph_edge::redirect_callee): Use + iterate_referring instead of referred_to_p. + * cgraphclones.cc (set_new_clone_decl_and_node_flags): Set local + to true iff the node does not have its address taken. + +2025-12-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123038 + * tree-vect-patterns.cc (vect_recog_ctz_ffs_pattern): Reject + pattern for reductions when the call argument is used multiple + times. + +2025-12-08 Tamar Christina <tamar.christina@arm.com> + + PR target/123026 + * config/aarch64/aarch64-simd.md (reduc_sbool_ior_scal_<mode>, + reduc_sbool_and_scal_<mode>): Fix tmp operands[1] override. + +2025-12-08 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122868 + * tree-vect-stmts.cc (vectorizable_load): Move check for invariant loads + down into the loop. + +2025-12-08 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * config/i386/sse.md (*<avx512>_cmp<mode>3_dup_op): Don't allow + 2 volatile memory references. + +2025-12-07 Jason Merrill <jason@redhat.com> + + * config/darwin-c.cc (find_subframework_header): Use + _cpp_get_file_*. + +2025-12-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * common.opt: Add -ffuse-ops-with-volatile-access. + * common.opt.urls: Regenerated. + * recog.cc (general_operand): Allow volatile memory reference if + -ffuse-ops-with-volatile-access is enabled. + * simplify-rtx.cc (simplify_binary_operation_1): Keep PLUS for 2 + volatile memory references. + * doc/invoke.texi: Document -ffuse-ops-with-volatile-access. + +2025-12-07 Alexandre Oliva <oliva@adacore.com> + + * cselib.cc (dump_cselib_val): Split out of and rename to... + (dump_cselib_val_ptr): ... this. + (dump_cselib_table): Adjust. Skip cselib_preserved_hash_table + when not allocated. + +2025-12-06 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/122947 + * calls.cc (expand_call): Add stack function usage in + non-ACCUMULATE_OUTGOING_ARGS configurations. + +2025-12-06 Alexandre Oliva <oliva@adacore.com> + + PR target/91420 + * config/riscv/riscv.cc (riscv_symbolic_constant_p): Require + offsets smaller than +/- 1GiB for PCREL symbols. + +2025-12-06 Jakub Jelinek <jakub@redhat.com> + + * attribs.cc (decl_attributes): Use attribute_value_equal to + compare attribute values instead of simple_cst_equal. + +2025-12-06 Dimitar Dimitrov <dimitar@dinux.eu> + + PR rtl-optimization/122675 + * bb-reorder.cc (edge_order): Fix BB edge ordering to be + descending. + +2025-12-05 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/122215 + * ira-color.cc (improve_allocation): Use register filter for all + loop on hard regs. + +2025-12-05 Richard Earnshaw <rearnsha@arm.com> + + PR target/122999 + * config/arm/arm.cc (arm_canonicalize_comparison): Defer + initializing maxval until we know we are dealing with an + integer mode. + +2025-12-05 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_need_peeling_or_partial_vectors_p): + When peeling for gaps we always need an epilog. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120939 + * tree-vect-loop.cc (vect_need_peeling_or_partial_vectors_p): + Remove eliding an epilogue based on not computed + LOOP_VINFO_COST_MODEL_THRESHOLD and estimated max stmt executions. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123002 + * tree-vectorizer.h (supportable_widening_operation): Remove + vinfo and stmt_info parameters, add flag to indicate whether + the context would allow OP_{EVEN,ODD}. + * tree-vect-patterns.cc (vect_recog_abd_pattern): Adjust + and pass false. + (vect_recog_widen_op_pattern): Likewise. + (vect_recog_widen_abd_pattern): Likewise. + * tree-vect-stmts.cc (vectorizable_conversion): Move + even/odd validity check here, from supportable_widening_operation. + Adjust it to be conservative. + (supportable_widening_operation): Get flag whether even/odd + is OK to use and remove then unused parameters and code. + +2025-12-05 Richard Biener <rguenther@suse.de> + + * tree-pretty-print.cc (dump_mem_ref): Dump clique : base + specifier for MEM_REF and TARGET_MEM_REF when dumping + GIMPLE format. + +2025-12-05 Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (gimplify_scan_omp_clauses): Handle + OMP_CLAUSE_DYN_GROUPPRIVATE by printing 'sorry, unimplemented'. + * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_DYN_GROUPPRIVATE. + (enum omp_clause_fallback_kind): New. + (struct tree_omp_clause): Add fallback_kind union member. + * tree-nested.cc (convert_nonlocal_omp_clauses, + convert_local_omp_clauses): Handle OMP_CLAUSE_DYN_GROUPPRIVATE. + * tree.cc (omp_clause_num_ops, omp_clause_code_name): Add + OMP_CLAUSE_DYN_GROUPPRIVATE. + * tree-pretty-print.cc (dump_omp_clause): Handle + OMP_CLAUSE_DYN_GROUPPRIVATE. + * tree.h (OMP_CLAUSE_DYN_GROUPPRIVATE_EXPR, + OMP_CLAUSE_DYN_GROUPPRIVATE_KIND): New #define. + +2025-12-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/99782 + * config/i386/i386-expand.cc (ix86_gen_ccmp_next): Move the check + for mode earlier before expand_operands. + * config/aarch64/aarch64.cc (aarch64_gen_ccmp_next): Likewise. + +2025-12-05 Daniel Barboza <dbarboza@ventanamicro.com> + Jeff Law <jlaw@ventanamicro.com> + + * match.pd (`x & c ? (x - c) | (x | c)`): New pattern. + (`x & c ? (x & ~c) | (x | c)`): Likewise. + +2025-12-05 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*pred_cmp_swapped<mode>_scalar): + Add new pattern to match vec_dup > vec for vmsltu. + * config/riscv/predicates.md (comparison_swappable_operator): + Add new iterator for above pattern + * config/riscv/riscv-protos.h (expand_vx_cmp_vec_dup_vec): Add + new func to emit vmsltu.vx. + * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Add new + func to convert cmp code to swapped, like gtu to ltu. + (expand_vx_cmp_vec_dup_vec): Add new func decl. + +2025-12-04 Jakub Jelinek <jakub@redhat.com> + + PR target/122991 + * config/aarch64/aarch64.md (crc_rev<ALLI:mode><ALLX:mode>4, + crc<ALLI:mode><ALLX:mode>4): Use const_int_operand predicate for + the last operand. + +2025-12-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122776 + * tree-vectorizer.h (vect_simd_clone_data::clone, + vect_simd_clone_data::clone_inbranch): New fields for + the two selected clones. + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Record + both a possibly notinbranch and a inbranch clone. Delay + the choice between both to code generation based on + LOOP_VINFO_FULLY_MASKED_P. + +2025-12-04 Martin Jambor <mjambor@suse.cz> + + * gimple-range-fold.h (class fold_using_range): New member + function range_from_readonly_var. + * gimple-range-fold.cc (fold_using_range::fold_stmt): Call + range_from_readonly_var on assignments. + (range_from_missing_constructor_part): New function. + (range_from_readonly_load): Likewise. + (fold_using_range::range_from_readonly_var): Likewise. + * params.opt (param_vrp_cstload_limit): New. + * doc/invoke.texi (vrp-cstload-limit): Likewise. + +2025-12-04 Jakub Jelinek <jakub@redhat.com> + + PR target/122991 + * config/i386/i386.md (crc_rev<SWI124:mode>si4): Use const_int_operand + predicate for the last input argument. + +2025-12-04 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * lra-constraints.cc (get_reload_reg): Honor exclude start regs + while reusing reloads. + +2025-12-04 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + Revert: + 2025-12-02 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * ipa-inline.cc (inline_functions_by_afdo): Remove resetting bool inlined. + +2025-12-03 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/85072 + * lra-assigns.cc (init_live_reload_and_inheritance_pseudos): + Improve calculation of live_reload_and_inheritance_pseudos and set + a constraint to do this. + * params.opt + (lra-max-pseudos-points-log2-considered-for-preferences): New. + * doc/invoke.texi + (lra-max-pseudos-points-log2-considered-for-preferences): Document + it. + +2025-12-03 Eric Botcazou <ebotcazou@adacore.com> + + PR tree-optimization/122934 + * tree-ssa-loop-niter.cc (simplify_using_initial_conditions): Use + singleton_p predicate even with boolean ranges. + +2025-12-03 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122943 + * tree-switch-conversion.cc (switch_conversion::build_arrays): + Always gimplify subtraction in utype without cast to tidxtype + and set m_arr_ref_first to the last stmt of that. Remove unneeded + update_stmt call. If tidxtype is not utype, append after that stmt + cast to tidxtype and set tidx to the lhs of that cast. + +2025-12-03 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/122898 + * gimple-range-fold.cc (fur_source::register_relation): Return a bool; + (fur_depend::register_relation): Ditto. + (fur_relation::register_relation): Ditto. + * gimple-range-fold.h (fur_source::register_relation): Adjust prototype. + (fur_depend::register_relation): Ditto. + * gimple-range-path.cc (jt_fur_source::register_relation): Return bool. + * value-relation.cc (equiv_oracle::add_partial_equiv): Return a bool. + (equiv_oracle::record): Return a bool. + (relation_oracle::record): Return a bool. + (dom_oracle::record): Return a bool. + (dom_oracle::set_one_relation): Remove some debug output. + (path_oracle::equiv_set): Return a bool. + (path_oracle::register_equiv): Return a bool. + (path_oracle::record): Return a bool. + * value-relation.h (relation_oracle::record): Adjust prototype. + (equiv_oracle::add_partial_equiv): Ditto + (equiv_oracle::record): Ditto. + (dom_oracle::record): Ditto. + (path_oracle::equiv_set): Ditto. + (path_oracle::register_equiv): Ditto. + (path_oracle::record): Ditto. + +2025-12-03 Jose E. Marchesi <jose.marchesi@oracle.com> + + PR algol68/122964 + * dwarf2out.cc (gen_compile_unit_die): Set LVERSION to 1978 for + Algol 68 and add dwarf_version >= 5 to guard. + +2025-12-03 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122969 + * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): handle + non-ssa name IV var args. + +2025-12-03 Mathias Krause <minipli@grsecurity.net> + + * config/i386/i386.cc (x86_print_call_or_nop): Fix 16-bit NOP + generation. + +2025-12-03 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122959 + * tree-vect-loop-manip.cc (vect_do_peeling): Delay setting update_e. + +2025-12-03 liuhongt <hongtao.liu@intel.com> + + PR target/71921 + * config/i386/predicates.md (ieee_maxmin_comparison_operator): + New predicator. + * config/i386/sse.md (*minmax<mode>3_3): New define_insn_and_split. + (*minmax<mode>3_4): Ditto. + (*minmax<mode>3_1): Extend operands[2]/operands[4] to handle + immediate_operand. + +2025-12-02 John David Anglin <danglin@gcc.gnu.org> + + PR target/122874 + * config/pa/pa.cc (pa_emit_move_sequence): Break out large + REG+D addresses from MEM operands. Also, don't allow + unscaled indexed source operands till reload completes. + +2025-12-02 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/122656 + * config/riscv/riscv-vector-builtins-bases.cc: Use + use_contiguous_load for vlsegff. + * config/riscv/riscv-vector-builtins.cc (function_expander::use_exact_insn): + Only add rounding mode operand if insn requires it and number of + arguments is < required. + (function_expander::use_ternop_insn): Ditto. + (function_expander::use_widen_ternop_insn): Ditto. + * config/riscv/vector.md: Use vector-mode source operand. + +2025-12-02 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-vector-builtins.cc + (function_builder::add_function): Remove placeholder_p parameter. + (function_builder::add_unique_function): Update call. + (function_builder::add_overloaded_function): Likewise. + * config/riscv/riscv-vector-builtins.h + (function_builder::add_function): Update declaration. + +2025-12-02 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-stmts.cc (vectorizable_scan_store): Pass loop_lens + to vect_get_data_ptr_increment. + +2025-12-02 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122868 + * tree-vect-stmts.cc (vectorizable_load): Don't hoist loop invariant + conditional loads unless in header. + +2025-12-02 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * ipa-inline.cc (inline_functions_by_afdo): Remove resetting bool inlined. + +2025-12-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/122912 + * config/aarch64/t-aarch64 (TM_H): Add aarch64-tuning-enums.def. + +2025-12-02 Alexandre Oliva <oliva@adacore.com> + + * hard-reg-set.h (hard_reg_set_iter_init): Drop unnecessary + increment of min. + (hard_reg_set_iter_set): Use ctz_hwi, and compute + word-advanced regno from word_no. + (hard_reg_set_iter_next): Only clear the cached LSB. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * config/mips/mips.h (ISA_HAS_MADD_MSUB): Include allegrex. + * config/mips/mips.md: Tweak mul_acc_si/mul_sub_si to make it + work when MUL3 is not available. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * config/mips/mips.h (ISA_HAS_WSBW): Defined a new macro. + * config/mips/mips.md (bswapsi2): Add new instruction. + (wsbwsi2): Replace with expand to support both wsbw and wsbh. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * config/mips/mips.h (ISA_HAS_MIN_MAX): Defined a new macro. + * config/mips/mips.md (sminsi3): Defined a new instruction. + (smaxsi3): Defined a new instruction. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * config/mips/mips-cpus.def (MIPS_CPU): Added a new CPU. + * config/mips/mips-tables.opt: Regenerated table. + * config/mips/mips.cc: Added cost table for the new CPU. + * config/mips/mips.h (TARGET_ALLEGREX): Defined a new macro. + (TUNE_ALLEGREX): Defined a new macro. + (ISA_HAS_CONDMOVE): Added Allegrex CPU to the list. + (ISA_HAS_LDC1_SDC1): Exclude Allegrex from the list. + (ISA_HAS_COND_TRAP): Exclude Allegrex from the list. + (ISA_HAS_COND_TRAPI): Exclude Allegrex from the list. + (ISA_HAS_CLZ_CLO): Added Allegrex CPU to the list. + (ISA_HAS_ROR): Added Allegrex CPU to the list. + (ISA_HAS_WSBH): Added Allegrex CPU to the list. + (ISA_HAS_SEB_SEH): Added Allegrex CPU to the list. + (ISA_HAS_EXT_INS): Added Allegrex CPU to the list. + (ISA_HAS_XFER_DELAY): Exclude Allegrex from the list. + (ISA_HAS_HILO_INTERLOCKS): Added Allegrex CPU to the list. + * config/mips/mips.md: Added Allegrex CPU as a new processor. + * doc/invoke.texi: Documented Allegrex as a new arch + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + Radek Barton <radek.barton@microsoft.com> + + * config.gcc: Add new Makefile fragment and new object file. + * config/aarch64/aarch64-builtins.cc + (aarch64_ms_variadic_abi_init_builtins): Initialize builtin + variadic functions for aarch64-w64-mingw32. + * config/aarch64/aarch64-protos.h + (aarch64_ms_variadic_abi_init_builtins): Initialize builtin + variadic functions for aarch64-w64-mingw32. + * config/aarch64/aarch64.cc + (handle_aarch64_vector_pcs_attribute): Add support for + ARM_PCS_MS_VARIADIC. + (aarch64_ms_variadic_abi): Return descriptor to variadic + function call ABI for aarch64-w64-mingw32 target. + (aarch64_fntype_abi): Add support for variadic functions for + aarch64-w64-mingw32 target. + (aarch64_reg_save_mode): Add support for ARM_PCS_MS_VARIADIC. + (num_pcs_arg_regs): Add support for ARM_PCS_MS_VARIADIC. + (get_pcs_arg_reg): Add support for ARM_PCS_MS_VARIADIC. + (aarch64_arg_size): Returns size of argument. + (aarch64_ms_variadic_abi_layout_arg): aarch64-w64-mingw32 + specific support for variadic ABI. + (aarch64_layout_arg): Add support for ARM_PCS_MS_VARIADIC. + (aarch64_function_arg): Implement TARGET_FUNCTION_ARG. + (aarch64_function_arg_advance): Add support for + ARM_PCS_MS_VARIADIC. + (aarch64_function_arg_regno_p): Add support for + ARM_PCS_MS_VARIADIC. + (aarch64_init_builtins): Add support for TARGET_AARCH64_MS_ABI. + (aarch64_ms_variadic_abi_build_builtin_va_list): Setup va_list + for aarch64-w64-mingw32. + (aarch64_build_builtin_va_list): Add support for + TARGET_AARCH64_MS_ABI. + (aarch64_ms_variadic_abi_expand_builtin_va_start): Implement + TARGET_BUILD_BUILTIN_VA_START. + (aarch64_setup_incoming_varargs): Implement + TARGET_SETUP_INCOMING_VARARGS. + (aarch64_mangle_type): Implement TARGET_MANGLE_TYPE. + (aarch64_variadic_abi_strict_argument_naming): Implement + TARGET_STRICT_ARGUMENT_NAMING. + * config/aarch64/aarch64.h + (aarch64_frame): Add new field + unaligned_saved_varargs_size. + (enum arm_pcs): Add new enum option + ARM_PCS_MS_VARIADIC. + * config/aarch64/cygming.h + (SUBTARGET_ATTRIBUTE_TABLE): Add support for ms_abi. + * config/mingw/winnt.cc + (aarch64_handle_ms_abi_attribute): Handle ms_abi attribue. + * config/mingw/winnt.h + (aarch64_handle_ms_abi_attribute): Handle ms_abi attribute. + * config/aarch64/aarch64-abi-ms-protos.h: + (aarch64_arg_partial_bytes): Declare. + (aarch64_ms_variadic_abi_canonical_va_list_type): Declare. + (aarch64_ms_variadic_abi_enum_va_list): Declare. + (aarch64_ms_variadic_abi_fn_abi_va_list): Implement + TARGET_FN_ABI_VA_LIST. + * config/aarch64/aarch64-abi-ms.cc: + (aarch64_arg_partial_bytes): Implement TARGET_ARG_PARTIAL_BYTES. + (aarch64_ms_variadic_abi_canonical_va_list_type): Implement + TARGET_CANONICAL_VA_LIST_TYPE. + (aarch64_ms_variadic_abi_enum_va_list): Implement + TARGET_ENUM_VA_LIST_P. + (aarch64_ms_variadic_abi_fn_abi_va_list): Implement + TARGET_FN_ABI_VA_LIST. + * config/aarch64/t-aarch64-mingw: New Makefile fragment. + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + Radek Barton <radek.barton@microsoft.com> + Martin Vejbora <mvejbora@microsoft.com> + + * config/aarch64/aarch64-abi-ms.h + (TARGET_LONG_DOUBLE_128): Set this to 0. + * config/aarch64/aarch64.cc + (aarch64_scalar_mode_supported_p): Make long double 64 bits. + (aarch64_c_mode_for_floating_type): Return true for TFmode. + * config/aarch64/aarch64.h + (TARGET_LONG_DOUBLE_128): Set this to 1. + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + + * config/aarch64/aarch64-abi-ms.h + (ASM_COMMENT_START): Specify start of comment. + (ASM_OUTPUT_TYPE_DIRECTIVE): Moved from aarch64-coff.h. + (ASM_DECLARE_FUNCTION_SIZE): Specify end of function as comment. + * config/aarch64/aarch64-coff.h + (ASM_OUTPUT_TYPE_DIRECTIVE): Moved to aarch64-abi-ms.h. + (ASM_DECLARE_FUNCTION_SIZE): Moved to aarch64-abi-ms.h. + +2025-12-01 Peter Bergner <bergner@tenstorrent.com> + + PR target/122942 + * config/riscv/riscv-profiles.def (rva23s64): Add zifencei. + (rvb23s64): Likewise. + +2025-12-01 Jose E. Marchesi <jose.marchesi@oracle.com> + + * doc/install.texi (Downloading the source): Mention Algol 68. + +2025-12-01 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122858 + * config/arm/constraints.md (Ph): New constraint. + * config/arm/mve.md (mve_asrl_imm, mve_lsll_imm): Fix constraints + of operand 1 and handle 32 as special shift amount. + +2025-12-01 Robin Dapp <rdapp@ventanamicro.com> + + PR target/122652 + * config/riscv/riscv-vsetvl.cc: Add nullptr check. + +2025-12-01 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/120505 + * omp-low.cc (lower_omp_target): Set GOMP_MAP_IMPLICIT flag. + +2025-12-01 H.J. Lu <hjl.tools@gmail.com> + + PR target/122906 + * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the + TLS call after deleted instructions. + +2025-11-30 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/115120 + PR tree-optimization/119577 + PR tree-optimization/119860 + * tree-vect-loop-manip.cc (vect_can_advance_ivs_p): Check for nonlinear + mult induction and early break. + (vect_update_ivs_after_vectorizer): Support early break exits. + (vect_do_peeling): Support scalar IVs. + * tree-vect-loop.cc (vect_peel_nonlinear_iv_init): Support early break. + (vect_update_nonlinear_iv): use `unsigned_type_for` such that function + works for both vector and scalar types. + (vectorizable_induction, vectorizable_live_operation): Remove vector + early break IV code. + (vect_update_ivs_after_vectorizer_for_early_breaks): New. + (vect_transform_loop): Support new scalar IV for early break. + * tree-vect-slp.cc (vect_analyze_slp): Remove SLP build for early break + IVs. + * tree-vect-stmts.cc (vect_stmt_relevant_p): No longer mark early break + IVs as completely unused rather than used_only_live. They no longer + contribute to the vector loop and so should not be analyzed. + (can_vectorize_live_stmts): Remove vector early vreak IV code. + * tree-vectorizer.h (LOOP_VINFO_EARLY_BRK_NITERS_VAR): New. + (class loop_vec_info): Add early_break_niters_var. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * Makefile.in (OPT_URLS_HTML_DEPS): Add ga68/Option-Index.html. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * doc/install.texi (Configuration): Mention algol68 option for + --enable-languages. + (Algol 68-Specific Options): New section. + * doc/sourcebuild.texi (Top Level): Add entry for libga68. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue): + Handle "GNU Algol 68" in language_string. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * config/darwin.h: Adapt specs for libga68.a. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * dwarf2out.cc: Set DW_LANG_Algol68 an DW_LNAME_Algol68. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * common.opt: New option -static-libga68. + * common.opt.urls: Generate. + * gcc.cc: Handle OPT_static_libga68. + * regenerate-opt-urls.py (PER_LANGUAGE_OPTION_INDEXES): Add Algol68. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * Makefile.def (libga68): New module. + (configure-target-libga68): Likewise. + * Makefile.tpl (GA68): Define. + (GA68_FOR_BUILD): Likewise. + (GA68FLAGS): Likewise. + * configure.ac (--enable-libga68): New option. + (--enable-algol68-gc): Likewise. + (GA68): Subst. + (GA68FLAGS): Likewise. + Invoke ACX_PROG_GA68. + * configure: Regenerate. + * Makefile.in: Likewise. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + * common.opt.urls: Regenerated. + * config/aarch64/aarch64.opt.urls: Regenerated. + * config/alpha/alpha.opt.urls: Regenerated. + * config/arm/arm.opt.urls: Regenerated. + * config/avr/avr.opt.urls: Regenerated. + * config/bpf/bpf.opt.urls: Regenerated. + * config/c6x/c6x.opt.urls: Regenerated. + * config/cris/cris.opt.urls: Regenerated. + * config/cris/elf.opt.urls: Regenerated. + * config/csky/csky.opt.urls: Regenerated. + * config/darwin.opt.urls: Regenerated. + * config/epiphany/epiphany.opt.urls: Regenerated. + * config/frv/frv.opt.urls: Regenerated. + * config/ft32/ft32.opt.urls: Regenerated. + * config/gcn/gcn.opt.urls: Regenerated. + * config/i386/i386.opt.urls: Regenerated. + * config/ia64/ia64.opt.urls: Regenerated. + * config/loongarch/loongarch.opt.urls: Regenerated. + * config/m68k/m68k.opt.urls: Regenerated. + * config/microblaze/microblaze.opt.urls: Regenerated. + * config/mips/mips.opt.urls: Regenerated. + * config/mmix/mmix.opt.urls: Regenerated. + * config/or1k/or1k.opt.urls: Regenerated. + * config/pa/pa.opt.urls: Regenerated. + * config/pdp11/pdp11.opt.urls: Regenerated. + * config/rs6000/rs6000.opt.urls: Regenerated. + * config/s390/s390.opt.urls: Regenerated. + * config/sparc/sparc.opt.urls: Regenerated. + * config/v850/v850.opt.urls: Regenerated. + * config/vax/vax.opt.urls: Regenerated. + * config/visium/visium.opt.urls: Regenerated. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/invoke.texi (Options Summary): Switch ordering of FRV + and FT32. + (Submodel Options): Likewise in the menu and section ordering. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi: Document -mno-android. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/frv/frv.opt (mbranch-cost=): Mark as Undocumented. + (mcond-exec-insns=): Likewise. + (mcond-exec-tempss=): Likewise. + * doc/invoke.texi (Option Summary) <FRV Options>: Remove duplicate + positive/negative forms from the list. + (FRV Options): Combine documentation of positive/negative forms + where they were listed separately. Add @opindex entries for + negative forms. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/ft32/ft32.opt (mlra): Mark obsolete option as Undocumented. + * doc/invoke.texi (Option Summary) <FT32 Options>: Remove -mlra. + (FT32 Options): Likewise. Add @opindex entries for negative + option forms. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (FR30 Options): Add @opindex for -mno-small-model. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <eBPF Options>: Fix formatting + issues. Remove redundant entry for -mno-co-re. + (eBPF Options): Add missing @opindex entries. Combine documentation + for -mco-re and -mno-co-re. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/alpha/alpha.opt (mgas): Mark as Undocumented. + * doc/invoke.texi (Option Summary) <DEC Alpha Options>: Add + -mtls-kernel, -mtls-size=, -mlong-double-128, and -mlong-double-64. + (DEC Alpha Options): Likewise. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/darwin.opt (findirect-virtual-calls): Mark as Undocumented. + (fterminated-vtables): Likewise. + (multi_module): Likewise. + (multiply_defined): Likewise. + (multiply_defined_unused): Likewise. + (no_dead_strip_inits_and_terms): Likewise. + (noprefixbinding): Likewise. + (nomultidefs): Likewise. + (noprebind): Likewise. + (noseglinkedit): Likewise. + (ObjC, ObjC++): Add documentation strings. + (object): Mark as Undocumented. + (prebind): Likewise. + (prebind_all_twolevel_modules): Likewise. + (private_bundle): Likewise. + (sectobjectsymbols): Likewise. + (sectorder): Likewise. + (seg_addr_table_filename): Likewise. + (segcreate): Likewise. + (seglinkedit): Likewise. + (single_module): Likewise. + (X): Likewise. + (y): Likewise. + (Mach): Likewise. + * doc/invoke.texi (Option Summary) <Darwin Options>: Improve + alphabetization of the list. Remove obsolete/undocumented + options and add missing entries. + (Darwin Options): Add documentation for -arch, -dependency-file, + -fapple-kext, -matt-stubs, -fconstant-cfstrings, -mdynamic-no-pic, + -asm_macosx_version_min, -msymbol-stubs, -mtarget-linker, + -ObjC, -ObjC++, -Wnonportable-cfstrings. Update the list + of options passed to the linker to remove obsolete options + and add missing ones; also move the block of @opindex entries + before the list items instead of putting it in the middle. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <Cygwin and MinGW Options>: + Correct spelling of -mthreads and add missing options. + (Cygwin and MinGW Options): Add @opindex for negative forms. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <C-SKY Options>: Remove + entries for "Undocumented" options -EB, -EL, -mhard-float, + -msoft-float, and nonexistent option -mcse-cc. + (C-SKY Options): Likewise. Also remove references to "Undocumented" + option -mstm and uniformly index/document the -mno- forms for + consistency with other options in this section that already do so. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/cris/cris.opt (m32-bit, m16-bit, m8-bit): Remove + Undocumented property. + (m32bit, m8bit): Add Undocumented property. + * doc/invoke.texi (Option Summary) <CRIS Options>: Remove + obsolete -melf and -maout options from table, plus redundant + -mno-mul-bug-workaround. + (CRIS Options): Add @opindex for -mno- forms that didn't already + have one. Remove obsolete -melf documentation. Document + -mbest-lib-options, -moverride-best-lib-options, + -mtrap-using-break8, -mtrap-unaligned-atomic, and + -munaligned-atomic-may-use-library. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <C6X Options>: Add -mdbst + and -mlong-calls. + (C6X Options): Likewise. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary) <Blackfin Options>: + Remove redundant -mno- entries. + (Blackfin Options): Combine explicit -mno-* documentation + with that for the corresponding positive form of the option. + Add @opindex entries for the negative forms of options that + didn't already have one. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/arm/arm.opt (mapcs-reentrant): Mark as "Undocumented", + updatehelp string for internal documentation. + (mapcs-stack-check): Likewise update help string. + (mprint-tune-info, mneon-for-64bits): Mark as "Undocumented". + * doc/invoke.texi (Option Summary) <ARM Options>: Remove duplicate + entries for negative forms and entries for options that are + explicitly "Undocumented". Add missing entry for + -mpic-data-is-text-relative. Fix some formatting issues. + (ARM Options): Remove documentation for -mapcs-stack-check, + -mapcs-reentrant, -mflip-thumb, -mneon-for-64-bits, + -mprint-tune-info, and -mverbose-cost-dump. Add index entries + for -mno- option forms. Minor editing for clarity. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + PR target/122288 + * config/gcn/gcn.opt (m32, m64, mgomp): Mark "Undocumented" + since these options don't actually do anything useful. + (flag_bypass_init_error, stack_size_opt, gang_size_opt): Correct + opt file syntax. + (mstack-size=): Mark "Undocumented" since it's obsolete. + * doc/invoke.texi (Option Summary) <AMD GCN Options>: + Remove obsolete options, add missing entries for + -mgang-private-size=, -msram-ecc=, and -mxnack=. + (AMD GCN Options): Likewise. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/epiphany/epiphany.opt (mlong-calls): Make it do something + useful. + (may-round-for-trunc): Make this undocumented option with a weird + name an alias for -mmay-round-for-trunc. + (mfp-iarith): Fix doc string. + * doc/invoke.texi (Option Summary) <Adapteva Epiphany Options>: + Add missing options. + (Adapteva Epiphany Options): Document negative forms also when + that is not the default, or where it's unclear. Document + -may-round-for-trunc and -mfp-iarith. Fix spelling of + -mpost-inc and -mpost-modify. + +2025-11-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * config/aarch64/aarch64.opt (Wexperimental-fmv-target): Mark + as "Undocumented". + * doc/invoke.texi (Option Summary) <AArch64 Options>: Don't + list "Undocumented" aarch64 options -mverbose-cost-dump or + -Wexperimental-fmv-target, or both positive and negative forms + of other options. Add missing options. Fix whitespace problems. + (AArch64 Options): Light copy-editing. Add missing @opindex + entries to match the documented options. Undocument + -mverbose-cost-dump and -Wexperimental-fmv-target. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + * config/rs6000/rs6000.cc (complex_multiply_builtin_code): + Avoid arithmetics between enumerators from different enum types. + (complex_divide_builtin_code): Likewise. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + * config/loongarch/loongarch.cc (loongarch_unspec_address_offset): + Avoid arithmetics between enumerators from different enum types. + (loongarch_call_tls_get_addr): Likewise. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + * config/mips/mips.cc (mips_unspec_address_offset): Avoid + arithmetics between enumerators from different enum types. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + * config/riscv/riscv-v.cc (expand_const_vector_onestep): Avoid + bitwise ops between enumerators from different enum types. + (emit_vec_cvt_x_f): Likewise. + (emit_vec_cvt_x_f_rtz): Likewise. + * config/riscv/riscv.cc (riscv_unspec_address_offset): Avoid + arithmetics between enumerators from different enum types. + +2025-11-28 Sam James <sam@gentoo.org> + + * crc-verification.cc (crc_symbolic_execution::is_used_outside_the_loop): + Fix 'assignment' typo. + +2025-11-28 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/122686 + * range-op.cc (operator_bitwise_and::op1_range): Check for + undefined bitmask. + * value-range.cc (prange::intersect): Handle undefined bitmask + intersection. + (irange::get_bitmask): Ditto. + (irange::intersect_bitmask): Ditto. + * value-range.h (irange_bitmask::intersect): Return false if the + result is UNDEFINED. + +2025-11-28 Tobias Burnus <tburnus@baylibre.com> + + * config.gcc (amdgcn-*-*): Use gfx90a for 'with_arch'. + For TM_MULTILIB_CONFIG, replace specific archs by + gfx{9,9-4,10-3,11}-generic, keep gfx90{8,a}. + * config/gcn/gcn.opt (march=, mtune=): Use gfx90a. + * doc/install.texi (amdgcn): Update accordingly. + +2025-11-28 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.h + (S390_OVERLOADED_BUILTIN_VAR_OFFSET,S390_ALL_BUILTIN_MAX): Fix + enum arithmetic. + * config/s390/s390.cc (OB_DEF): Ditto. + +2025-11-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122844 + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Only + try stripping sign conversions around ops where this is valid. + +2025-11-28 Jim Lin <jim@andestech.com> + + * config/riscv/riscv.cc (riscv_output_move): Use \n\t instead + of semicolon to separate instructions in fmv.x.h emulation. + +2025-11-28 Charlie Jenkins <charlie@rivosinc.com> + + * config.gcc: Add cpu to supported configure options + * config/riscv/riscv.h (riscv_arch_help): Use --with-cpu during + compilation + * doc/install.texi: Mention in docs that --with-cpu is supported + +2025-11-28 Mark Zhuang <mark.zhuang@spacemit.com> + + * config/riscv/riscv-cores.def (RISCV_CORE): Add xsmtvdot to + spacemit-x60 + * config/riscv/riscv-ext.def: Add xsmtvdot + * config/riscv/riscv-ext.opt: Ditto + * config/riscv/t-riscv: Ditto + * doc/riscv-ext.texi: Ditto + * config/riscv/riscv-ext-spacemit.def: Define xsmtvdot + +2025-11-28 Mark Zhuang <mark.zhuang@spacemit.com> + + * config/riscv/riscv-ext.opt: Generated file. + +2025-11-28 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-45-sereis. + (RISCV_CORE): Add Andes 45 series cpu list. + * config/riscv/riscv-opts.h + (enum riscv_microarchitecture_type): Add andes_45_series. + * config/riscv/riscv.cc: Add andes_45_tune_info. + * config/riscv/riscv.md: Add andes_45. + * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. + * doc/riscv-mtune.texi: Regenerated for andes-45-series. + * config/riscv/andes-45-series.md: New file. + +2025-11-28 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-23-series. + (RISCV_CORE): Add Andes 23-series cpu list. + * config/riscv/riscv-opts.h + (enum riscv_microarchitecture_type): Add andes_23_series. + * config/riscv/riscv.cc: Add andes_23_tune_info. + * config/riscv/riscv.md: Add andes_23. + * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. + * doc/riscv-mtune.texi: Regenerated for andes-23-series. + * config/riscv/andes-23-series.md: New file. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122733 + * gimple-match-head.cc (gimple_match_range_of_expr): Return false + even when range_of_expr returns true, but the range is undefined_p. + * match.pd ((mult (plus:s@5 (mult:s@4 @0 @1) @2) @3)): Remove + vr0.undefined_p () check. + ((plus (mult:s@5 (plus:s@4 @0 @1) @2) @3)): Likewise. + ((X + M*N) / N -> X / N + M): Remove vr4.undefined_p () check. + ((X - M*N) / N -> X / N - M): Likewise. + ((y << x) == x, (y << x) != x): Use convert2? instead of + nop_convert2? and test INTEGRAL_TYPE_P on TREE_TYPE (@0) rather than + TREE_TYPE (@1). + ((y << x) {<,<=,>,>=} x): New simplification. + (((T)(A)) + CST -> (T)(A + CST)): Remove vr.undefined_p () check. + (x_5 == cstN ? cst4 : cst3): Remove r.undefined_p () check. + +2025-11-28 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122890 + * optabs.cc (emit_cmp_and_jump_insns): Check for SSA Name. + +2025-11-27 Matthieu Longo <matthieu.longo@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_define_unconditional_macros): Define + __ARM_BUILDATTR64_FV when BA support is detected in GAS. + +2025-11-27 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/aarch64.md (ctz<mode>2): Use compact syntax. + +2025-11-27 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/aarch64.md (ffs<mode>2): Use gen_ctz. + (ctz<mode>2): Model ctz as a single target instruction. + +2025-11-27 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/atomics.md (*dmb): Expand release fence into dmb ishld + and dmb ishst. + +2025-11-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-reassoc.cc (rewrite_expr_tree): Swap + oe1 and oe2 if commutative code and not in + canonical order. + +2025-11-27 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-mcus.def (AVR_MCUS): Add avr16la14, avr16la20, + avr16la28, avr16la32, avr32la14, avr32la20, avr32la28, avr32la32. + * doc/avr-mmcu.texi: Rebuild. + +2025-11-27 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122855 + PR tree-optimization/122850 + * tree-ssa-forwprop.cc (simplify_vector_constructor): Nop + convert input if necessary. + +2025-11-27 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc (gcn_init_cumulative_args): Emit a warning if the + -mxnack setting looks wrong. + * config/gcn/mkoffload.cc: Include tree.h and omp-general.h. + (process_asm): Add omp_requires parameter. + Emit HSA_XNACK code into mkoffload_setup, as required. + (main): Modify HSACO_ATTR_OFF to preserve user-set -mxnack. + Pass omp_requires to process_asm. + +2025-11-27 Jakub Jelinek <jakub@redhat.com> + + PR target/122714 + * gimple-lower-bitint.cc (bitint_large_huge::limb_access): Adjust + MEM_REFs offset for bitint_big_endian if ltype doesn't have the + same byte size as m_limb_type. + +2025-11-27 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Fix + recording of the mask type again. Adjust placing of + mask arguments for non-masked calls. + +2025-11-27 Dhruv Chawla <dhruvc@nvidia.com> + + PR tree-optimization/122733 + * match.pd ((y << x) {<,<=,>,>=} x): Remove. + ((y << x) {==,!=} x): Call constant_boolean_node instead of + build_one_cst/build_zero_cst and combine into one pattern. + +2025-11-27 Jakub Jelinek <jakub@redhat.com> + + * fold-const.h (expr_not_equal_to): Add gimple * argument defaulted + to NULL. + * fold-const.cc (expr_not_equal_to): Likewise, pass it through to + range_of_expr. + * generic-match-head.cc (gimple_match_ctx): New static inline. + * match.pd (X % -Y -> X % Y): Capture NEGATE and pass + gimple_match_ctx (@2) as new 3rd argument to expr_not_equal_to. + ((A * C) +- (B * C) -> (A+-B) * C): Pass gimple_match_ctx (@3) + as new 3rd argument to expr_not_equal_to. + (a rrotate (bitsize-b) -> a lrotate b): Likewise. + +2025-11-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119683 + * gimple-match.h (gimple_match_ctx): Move to ... + * gimple-match-head.cc (gimple_match_ctx): ... here. Make static. + (gimple_match_range_of_expr): New static inline. + * match.pd ((mult (plus:s (mult:s @0 @1) @2) @3)): Use + gimple_match_range_of_expr. + ((plus (mult:s (plus:s @0 @1) @2) @3)): Likewise. + ((t * u) / u -> t): Likewise. + ((t * u) / v -> t * (u / v)): Likewise. + ((X + M*N) / N -> X / N + M): Likewise. + ((X - M*N) / N -> X / N - M): Likewise. + ((X + C) / N -> X / N + C / N): Likewise. + (((T)(A)) + CST -> (T)(A + CST)): Likewise + (x_5 == cstN ? cst4 : cst3): Likewise. Do r.set_varying + even when gimple_match_range_of_expr failed. + +2025-11-27 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-builtins.cc (arm_init_mve_builtins): Remove + volatile qualifier. + +2025-11-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122885 + * tree-vect-loop.cc (vect_find_reusable_accumulator): Reject + mask vectors which do not use integer vector modes. + (vect_create_partial_epilog): Assert the same. + +2025-11-27 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386-options.cc (set_ix86_tune_features): Set + gather/scatter tune if OPTION_SET_P. + * config/i386/i386.opt: Refactor mgather/mscatter. + +2025-11-27 Lulu Cheng <chenglulu@loongson.cn> + + * doc/extend.texi: Remove the incorrect prompt message. + +2025-11-27 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/invoke.texi (Option Summary) <C++ Langauge Options>: + Add --compile-std-module. + +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, + LDFLAGS. + * configure: Regenerate. + +2025-11-25 Tamar Christina <tamar.christina@arm.com> + + PR target/118974 + * config/aarch64/aarch64-simd.md (xor<mode>3<vczle><vczbe>): Rename ... + (@xor<mode>3<vczle><vczbe>): .. to this. + (cbranch<mode>4): Update comments. + (<optab><mode>): New. + * config/aarch64/aarch64-sve.md (cbranch<mode>4): Update comment. + (<optab><mode>): New. + (aarch64_ptest<mode>): Rename to ... + (@aarch64_ptest<mode>): .. this. + * config/aarch64/iterators.md (UNSPEC_CMP_ALL, UNSPEC_CMP_ANY, + UNSPEC_COND_CMP_ALL, UNSPEC_COND_CMP_ANY): New. + (optabs): Add them. + (CBRANCH_CMP, COND_CBRANCH_CMP, cbranch_op): New. + * config/aarch64/predicates.md (aarch64_cbranch_compare_operation): New. + +2025-11-25 Tamar Christina <tamar.christina@arm.com> + + PR target/118974 + * tree-vect-stmts.cc (supports_vector_compare_and_branch): New. + (vectorizable_early_exit): Use it. + +2025-11-25 Tamar Christina <tamar.christina@arm.com> + + PR target/118974 + * optabs.def (vec_cbranch_any_optab, vec_cbranch_all_optab, + cond_vec_cbranch_any_optab, cond_vec_cbranch_all_optab, + cond_len_vec_cbranch_any_optab, cond_len_vec_cbranch_all_optab): New. + * doc/md.texi: Document them. + * optabs.cc (prepare_cmp_insn): Refactor to take optab to check for + instead of hardcoded cbranch and support mask and len. + (emit_cmp_and_jump_insn_1, emit_cmp_and_jump_insns): Implement them. + (emit_conditional_move, emit_conditional_add, gen_cond_trap): Update + after changing function signatures to support new optabs. + +2025-11-25 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi: Document --compile-std-module. + * gcc.cc (struct infile): Add artificial field. + (add_infile): Set it. + (driver::prepare_infiles): Check it. + +2025-11-25 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi (C++ Modules): Remove TU-local caveat. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120052 + * gimplify.cc (gimplify_call_expr): For IFN_UBSAN_BOUNDS + call with integer_onep first argument, change that argument + to 0 and add TYPE_MAX_VALUE (TYPE_DOMAIN (arr_type)) to + 3rd argument before gimplification. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120564 + * omp-expand.cc (extract_omp_for_update_vars): Use build2 instead of + fold_build2 to build argument for gimple_build_cond_empty. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + * alias.cc (get_alias_set): Fix comment typo, TYPE_CANOINCAL + -> TYPE_CANONICAL. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/122624 + * tree.cc (build_bitint_type): Use type_hash_canon_hash. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * doc/sourcebuild.texi (Add Options): Document + check_function_bodies. + +2025-11-24 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/122767 + * ira-color.cc (allocno_hard_regs_compare): Break ties + using... + * hard-reg-set.h (hard_reg_set_first_diff): ... this. New + HARD_REG_SET API entry point. + +2025-11-24 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-slp.cc (vect_bb_vectorization_profitable_p): + Multiply scalar cost by vect-scalar-cost-multiplier. + +2025-11-24 Robin Dapp <rdapp.gcc@gmail.com> + + * config/riscv/autovec.md (select_vl<mode>): Rename to... + (select_vl<V:mode><P:mode>): ...this. + * doc/md.texi: Document new behavior. + * internal-fn.cc (select_vl_direct): Make + (expand_select_vl_optab_fn): Adjust for convert optab. + (direct_select_vl_optab_supported_p): Ditto. + * internal-fn.def (SELECT_VL): Ditto. + * optabs.def (OPTAB_CD): Add select_vl. + (OPTAB_D): Remove select_vl. + * tree-vect-loop-manip.cc (vect_set_loop_controls_directly): + Adjust for convert select_vl optab. + * tree-vect-loop.cc: Ditto. + +2025-11-24 Robin Dapp <rdapp.gcc@gmail.com> + + * config/riscv/autovec.md: Use V_VLS_ZVFH for vec_set. + * config/riscv/riscv-modes.def (RVV_NF4_MODES): Add BF mdoes. + (ADJUST_PRECISION): Ditto. + (VECTOR_MODE_WITH_PREFIX): Ditto. + (VLS_MODES): Ditto. + * config/riscv/riscv-v.cc (can_be_broadcast_p): Add BF handling. + * config/riscv/riscv-vector-switch.def (VLS_ENTRY): Add BF + modes. + * config/riscv/riscv.md: Ditto. + * config/riscv/vector-iterators.md: Document modes. + * config/riscv/vector.md: Add BF modes. + +2025-11-24 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122797 + * tree-vect-slp.cc (vect_load_perm_consecutive_p): Check + permutation start at element 0 with value instead of starting + at a given element. + (vect_optimize_slp_pass::remove_redundant_permutations): + Use start value of 0. + * tree-vectorizer.h (vect_load_perm_consecutive_p): Set default + value to to UINT_MAX. + +2025-11-24 Robin Dapp <rdapp@ventanamicro.com> + + * tree-ssa-forwprop.cc (simplify_vector_constructor): + Allow nop conversions. + +2025-11-24 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa.h (REGS_OK_FOR_BASE_INDEX): New define. + * config/pa/pa.md: Update peephole2 patterns for scaled/unscaled + indexed loads and stores. + +2025-11-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122826 + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Only + use single-lane SLP for SIMD_CLONE_ARG_TYPE_UNIFORM + and SIMD_CLONE_ARG_TYPE_LINEAR_[REF_]CONSTANT_STEP. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + Richard Biener <rguenther@suse.de> + + PR tree-optimization/116835 + * tree-ssa-phiprop.cc (propagate_with_phi): Admend the + post-dom check to deal with ssa cycles. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/60183 + * tree-ssa-phiprop.cc (propagate_with_phi): Delay the decision + of always rejecting proping into the loop until all are done. + if there was some delay stmts and a phi was created fill them in. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/60183 + * tree-ssa-phiprop.cc (propagate_with_phi): Allow + known non-trapping loads to happen back into the + loop. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow + for mismatched clobbers. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122633 + * tree-ssa-forwprop.cc (do_simple_agr_dse): Remove + lhs of dead store for a call (or the whole call stmt). + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * match.pd (`(ptr_diff (ptr_plus @0 @2) (ptr_plus @1 @2))`): Move pattern + earlier to the other `(ptr_diff (ptr_plus) (ptr_plus))` pattern. + +2025-11-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Move + all SIMD clone validity checks to SIMD clone selection. + Remove late constant/external def vector type setting and + verification. + +2025-11-24 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122782 + * ext-dce.cc (ext_dct_process_uses): Guard against undefined shifts + by properly checking modes on the input object. + +2025-11-24 Yury Khrustalev <yury.khrustalev@arm.com> + + PR debug/121964 + * dwarf2out.cc (gen_array_type_die): Add DW_AT_bit_stride attribute + for array types based on element type bit precision for integer and + boolean element types. + +2025-11-24 Yury Khrustalev <yury.khrustalev@arm.com> + + * machmode.def (VECTOR_BOOL_MODE): Fix comment. + +2025-11-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/33994 + * fold-const.h (int_const_convert): New prototype. + * fold-const.cc (fold_convert_const_int_from_int): Rename to... + (int_const_convert): ...this, remove static keyword and add third + parameter OVERFLOWABLE. + (fold_convert_const): Call int_const_convert if ARG1 is an integer + constant. + +2025-11-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + + * config.gcc (aarch64-*-mingw*): Set native_system_header_dir. + +2025-11-23 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa64-linux.h (GLIBC_DYNAMIC_LINKER): Define. + +2025-11-23 John David Anglin <danglin@gcc.gnu.org> + + PR target/113932 + PR target/113933 + * config/pa/pa.opt (mlra): Default to LRA instead of reload. + +2025-11-23 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa.cc (pa_print_operand): Use REG_POINTER + flag to select base and index registers on targets with + non-equivalent space registers. + (pa_legitimate_address_p): Don't allow scaled and unscaled + indexed addresses until reload is complete. Allow any + register order in unscaled addresses as long as the + REG_POINTER flag is correctly set/unset in the base/index + registers. + * config/pa/predicates.md (mem_operand): Remove code to + delay creating move insns with unscaled indexed addresses + until CSE is not expected. + (move_src_operand): Likewise. + +2025-11-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * match.pd (1/x): Use fold_before_rtl_expansion_p. + (`(m1 CMP m2) * d`): Likewise. + +2025-11-23 Pan Li <pan2.li@intel.com> + + * match.pd: Remove unnecessary outer convert and add + c for the outer bit_ior. + +2025-11-23 Pan Li <pan2.li@intel.com> + + * match.pd: Add simplfy to fold outer convert of bit_op + to inner captures. + +2025-11-23 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * ipa-split.cc (pass_split_functions::gate): Do not run when + flag_auto_profile. + (pass_feedback_split_functions::gate): Run when flag_auto_profile. + +2025-11-23 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * tree-ssa-loop-im.cc (is_self_write): New. + (ref_indep_loop_p): Allow hoisting when aliasing references + form a self write pattern. + +2025-11-22 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122701 + * ext-dce.cc (ext_dce_try_optimize_rshift): Emit a fresh reg->reg + copy rather than modifying the existing right shift. + +2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> + + * omp-general.cc (omp_context_selector_matches): Add an optional + bool argument for the code elision case. + * omp-general.h (omp_context_selector_matches): Likewise. + +2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> + + * omp-general.cc (omp_mangle_variant_name): New. + (omp_check_for_duplicate_variant): New. + (omp_copy_trait_set): New. + (omp_trait_selectors_equivalent): New. + (omp_combine_trait_sets): New. + (omp_merge_context_selectors): New. + * omp-general.h (omp_mangle_variant_name): Declare. + (omp_check_for_duplicate_variant): Declare. + (omp_merge_context_selectors): Declare. + +2025-11-22 zhaozhou <zhaozhou@loongson.cn> + + * config/loongarch/loongarch.cc: Extract plus operation. + +2025-11-22 Deng Jianbo <dengjianbo@loongson.cn> + + * config/loongarch/loongarch.md + (*bstrins_w_for_ior_ashift_and_extend): New template. + (*bstrins_d_for_ior_ashift_and): New template. + * config/loongarch/predicates.md (const_uimm63_operand): New + predicate. + +2025-11-22 zhaozhou <zhaozhou@loongson.cn> + + * config/loongarch/lsx.md (lsx_vshuf4i_mem_w_0): Add template. + (lsx_vldrepl_merge_w_0): Ditto. + +2025-11-22 Kees Cook <kees@kernel.org> + + * config/aarch64/aarch64-protos.h (aarch64_indirect_branch_asm): + Declare. + * config/aarch64/aarch64.cc (aarch64_indirect_branch_asm): New + function to generate indirect branch with SLS barrier. + * config/aarch64/aarch64.md (*sibcall_insn): Use + aarch64_indirect_branch_asm. + (*sibcall_value_insn): Likewise. + +2025-11-21 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118358 + * lra-constraints.cc (curr_insn_transform): Move insn reloading + constant into a register right before insn using it. + +2025-11-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122762 + PR tree-optimization/122736 + PR tree-optimization/122790 + * cgraph.h (cgraph_simd_clone_arg::linear_step): Document + use for SIMD_CLONE_ARG_TYPE_MASK. + * omp-simd-clone.cc (simd_clone_adjust_argument_types): + Record the number of mask arguments in linear_step if + mask_mode is not VOIDmode. + * tree-vect-stmts.cc (vectorizable_simd_clone_call): + Remove num_mask_args computation, use a proper ncopies + to query/register loop masks, use linear_step for the + number of mask arguments when determining the number of + mask elements in a mask argument. + +2025-11-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122778 + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Honor + a loop mask when passing the conditional mask with AVX512 + style masking. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR target/122598 + * config/i386/predicates.md (const_vec_dup_operand): Remove. + * config/i386/sse.md (cond<<insn><mode> with VI1_AVX512VL iterator): + Remove. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * doc/invoke.texi (Optimize Options) <-fmalloc-dce>: Remove + trailing space. + (AArch64 Options) <-march>: Fix pasto. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/122773 + * gimplify.cc (collect_fallthrough_labels): Check whether + gimple_goto_dest is a LABEL_DECL before testing VACUOUS_INIT_LABEL_P. + (expand_FALLTHROUGH_r): Likewise. + +2025-11-21 Loeka Rogge <loeka@synopsys.com> + Keith Packard <keithp@keithp.com> + + PR target/120375 + * config/arc/arc.md (*<insn>si3_nobs): merged with <insn>si3_loop. + (<insn>si3_loop): splits to relevant pattern or emits loop assembly. + (<insn>si3_cnt1_clobber): Removes clobber for shift or rotate by + const1. + +2025-11-21 Claudiu Zissulescu <claziss@gmail.com> + Michiel Derhaeg <michiel@synopsys.com> + + * config/arc/arc.md: Modify define_insn_and_split "*extvsi_n_0" + +2025-11-21 Josef Melcr <josef.melcr@suse.com> + + * attr-callback.cc (callback_edge_callee_has_attr): New + function. + * attr-callback.h (callback_edge_callee_has_attr): New function + decl. + * ipa-prop.cc (ipa_compute_jump_functions_for_bb): Don't skip + callback carriers when calculating jump functions. + +2025-11-21 Josef Melcr <josef.melcr@suse.com> + + PR ipa/122768 + * attr-callback.cc (callback_edge_useful_p): Rewrite the + heuristic, now consider clones as well as icf bodies. + +2025-11-21 Deng Jianbo <dengjianbo@loongson.cn> + + * config/loongarch/constraints.md: Update constraint YI to support + more numbers. + * config/loongarch/loongarch-protos.h + (loongarch_const_vector_vrepli): Rename. + (loongarch_const_vector_vldi): Ditto. + * config/loongarch/loongarch.cc (VLDI_NEG_MASK): New macro. + (loongarch_parse_vldi_const): New function to check if numbers can + be generated by {x}vldi instruction. + (loongarch_const_vector_vrepli): Rename. + (loongarch_const_vector_vldi): Use above function. + (loongarch_const_insns): Call renamed function. + (loongarch_split_vector_move_p): Ditto. + (loongarch_output_move): Ditto. + +2025-11-21 zhaozhou <zhaozhou@loongson.cn> + + * config/loongarch/lsx.md: Fix predicate. + +2025-11-20 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121345 + * gimple-range-phi.cc (phi_group::calculate_using_modifier): Restore + performance loss by being more selective when iterating. + +2025-11-20 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-opt-popretz.cc: New file. + * config/riscv/riscv-passes.def: Insert pass_combine_popretz before + pass_shorten_branches. + * config/riscv/riscv-protos.h (make_pass_combine_popretz): New + declaration. + * config/riscv/t-riscv: Add riscv-opt-popretz.o build rule. + * config.gcc (riscv*): Add riscv-opt-popretz.o to extra_objs. + +2025-11-20 Pan Li <pan2.li@intel.com> + + PR target/122692 + * config/riscv/riscv.cc (riscv_expand_ustrunc): Leverage + riscv_extend_to_xmode_reg to take care of src rtx. + +2025-11-20 Tamar Christina <tamar.christina@arm.com> + + * target.def (instruction_selection): New. + * doc/tm.texi.in: Document it. + * doc/tm.texi: Regenerate + * gimple-isel.cc (pass_gimple_isel::execute): Use it. + * targhooks.cc (default_instruction_selection): New. + * targhooks.h (default_instruction_selection): New. + +2025-11-20 Josef Melcr <josef.melcr@suse.com> + + PR ipa/122358 + * cgraph.cc (cgraph_add_edge_to_call_site_hash): Add an early + return when the hashed edge is a callback-carrying edge. + +2025-11-20 Arsen Arsenović <aarsenovic@baylibre.com> + + * doc/rtl.texi (Regs and Memory): Use @table instead of @itemize + for lists with named items. + +2025-11-20 Xinhui Yang <cyan@cyano.uk> + + PR bootstrap/105664 + * Makefile.in (install-driver): detect name collision when + installing the driver program. + +2025-11-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/i386/sol2.h: Replace USE_GAS by HAVE_GNU_AS. + Replace USE_GLD by HAVE_GNU_LD. + * config/sol2.h: Likewise. + * config/sparc/sol2.h: Likewise. + * config/i386/i386.cc (i386_solaris_elf_named_section) + [TARGET_SOLARIS]: Replace USE_GAS by HAVE_GNU_AS. + * config/ia64/hpux.h: Likewise. + * config.gcc: Remove usegas.h, usegld.h. + * config/usegas.h: Remove. + * config/usegld.h: Remove + +2025-11-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/sol2.h (LINK_ARCH32_SPEC_BASE): Don't provide -YP + defaults. Rename to ... + (LINK_ARCH_SPEC_BASE): ... this. + (LINK_ARCH32_SPEC): Remove. + (LINK_ARCH64_SPEC_BASE): Remove. + (LINK_ARCH64_SPEC): Rename to ... + (LINK_ARCH_SPEC_1): ... this. + [!USE_GLD]: Simplify map.below4G use. + (LINK_ARCH_ERROR_SPEC): New macro. + (LINK_ARCH32_SPEC): Remove. + (LINK_ARCH_DEFAULT_SPEC): Remove. + (LINK_ARCH_SPEC): Simplify using LINK_ARCH_ERROR_SPEC, + LINK_ARCH_SPEC_1. + (SUBTARGET_EXTRA_SPECS): Remove link_arch32, link_arch64 + link_arch_default. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lsx.md (vec_perm<mode>): Expand directly with + RTL template. + * config/loongarch/loongarch-protos.h + (loongarch_expand_vec_perm): Delete. + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm): + Delete. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (lasx_xvpermi_d): Add "@". + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): + Use gen_lasx_xvpermi_d instead of + gen_lasx_xvpermi_d_{v32qi,v16hi} to deduplicate the logic. Do + structrual programming instead of goto and label. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): + Clamp the selector using the twice of actual number of elements. + Compare the clamped selector with the element number to get the + blending mask. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (lasx_xvshuf_b): Remove. + (lasx_xvshuf_<lasxfmt_f): Remove. + (unspec): Remove UNSPEC_LASX_XVSHUF and UNSPEC_LASX_XVSHUF_B. + * config/loongarch/lsx.md (lsx_vshuf_b): Remove. + (lsx_vshuf_<lasxfmt_f): Remove. + (unspec): Remove UNSPEC_LSX_VSHUF and UNSPEC_LSX_VSHUF_B. + * config/loongarch/simd.md (unspec): Add UNSPEC_SIMD_VSHUF. + (@simd_vshuf): New define_insn. + (<simd_isa>_<x>vshuf_<simdfmt><_f>): New define_expand. + * config/loongarch/loongarch.cc + (loongarch_try_expand_lsx_vshuf_const): Call gen_simd_vshuf + instead of gen_lasx_xvshuf and gen_lasx_xvshuf_b. + (loongarch_expand_vec_perm_const): Likewise. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (lasx_xvperm_<lasxfmt_f_wd>): Add + "@" for gen_lasx_xvperm helper. + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): + Call gen_lasx_xvperm to unify V8SF and V8SI handling. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): + Use lasx_xvpackev_h (mask * 2, mask * 2 + 1) to "expand" the + V4DI selector to V8SI. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + PR target/122695 + * config/loongarch/loongarch.cc (loongarch_expand_vec_perm_1): + Simplify and fix the logic preventing the xvshuf.* unpredictable + behavior. + +2025-11-19 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/122756 + * gimple-range-fold.cc (range_of_ssa_name_with_loop_info): Do + not invoke SCEV if already in a SCEV call. + +2025-11-19 Martin Liska <martin.liska@hey.com> + + * common.opt.urls: Include -fuse-ld=wild + +2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122754 + * gimple-fold.cc (get_range_strlen_tree): Use POINTER_TYPE_P instead + of direct comparing to POINTER_TYPE. + * gimple-ssa-sprintf.cc (format_integer): Likewise. + * gimple-ssa-warn-access.cc (maybe_warn_nonstring_arg): Likewise. + * gimple-ssa-warn-restrict.cc (pass_wrestrict::check_call): Likewise. + * tree-ssa-strlen.cc (maybe_set_strlen_range): Likewise. + (is_strlen_related_p): Likewise. + (strlen_pass::handle_assign): Likewise. + +2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-dce.cc (simple_dce_from_worklist): Use FOR_EACH_IMM_USE_FAST instead of + FOR_EACH_IMM_USE_STMT. + +2025-11-19 Alfie Richards <alfie.richards@arm.com> + + PR target/122763 + * config/aarch64/aarch64.cc (aarch64_layout_arg): Return NULL_RTX for + arguments of size 0. + (aarch64_function_arg_advance): Remove assert. + +2025-11-19 Alfie Richards <alfie.richards@arm.com> + + * doc/extend.texi (preserve_none): Minor grammar fix. + +2025-11-19 Martin Liska <martin.liska@hey.com> + + * collect2.cc (main): Add wild linker to -fuse-ld. + * common.opt: Likewise. + * configure: Regenerate. + * configure.ac: Add detection for wild linker. + * doc/invoke.texi: Document -fuse-ld=wild. + * gcc.cc (driver_handle_option): Support -fuse-ld=wild. + * opts.cc (common_handle_option): Likewise. + +2025-11-19 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-sve.md (vec_extract<mode><v128>, + vec_extract<mode><v64>): New. + * config/aarch64/iterators.md (V64, v64): New. + * config/aarch64/predicates.md (const0_to_1_operand): New. + +2025-11-19 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-string.cc (riscv_expand_block_move_scalar): + Fix signed vs unsigned warning. + +2025-11-19 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_load): Make dr_chain + an auto_vec, move down to where we use it to avoid creating + it twice. + +2025-11-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122722 + * tree-vect-slp.cc (vect_analyze_slp_reductions): New + function, split out from vect_analyze_slp. Try SLP + sub-groups. + (vect_analyze_slp_reduction_group): New helper. + +2025-11-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122747 + * tree-vect-stmts.cc (vectorizable_call): Handle reduction + operations that are already conditional. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + * tree-ssanames.cc (get_known_nonzero_bits): Fix a pasto in + function comment, this function returns 0 if unknown rather + than -1. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122184 + * tree-ssa-live.cc (remove_unused_locals): Drop .DEFERRED_INIT + calls with MEM_REF lhs based on uninitialized SSA_NAME. + +2025-11-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * genmultilib: Check $enable_multilib to define DISABLE_MULTILIB. + +2025-11-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/sol2.h: Check USE_GLD instead of USE_GNU_LD. + +2025-11-19 Avinash Jayakar <avinashd@linux.ibm.com> + + PR target/119130 + * config/rs6000/altivec.md (convert_4f32_8f16): Use same operand + order for both endian format. + +2025-11-19 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/i386-common.cc: Adjust to P_PROC_AVX10_1. + * config/i386/driver-i386.cc (host_detect_local_cpu): + Move Nova Lake to under AVX512 part. + * config/i386/i386.h (PTA_NOVALAKE): Add AVX10.1, AVX10.2, + APX_F and MOVRS. + * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set to 8. + * config/i386/x86-tune.def (X86_TUNE_AVX256_OPTIMAL): Add Nova + Lake. + * doc/invoke.texi: Adjust documentation. + +2025-11-18 Edwin Lu <ewlu@rivosinc.com> + + * config/riscv/riscv-string.cc (riscv_expand_block_move_scalar): + Add length check. + (expand_block_move): Ditto. + (expand_vec_setmem): Ditto. + * config/riscv/riscv.opt: Add param flags. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm_mve.h (__ARM_mve_typeid): Delete. + (__ARM_mve_coerce): Delete. + (__ARM_mve_coerce_i_scalar): Delete. + (__ARM_mve_coerce_s8_ptr): Delete. + (__ARM_mve_coerce_u8_ptr): Delete. + (__ARM_mve_coerce_s16_ptr): Delete. + (__ARM_mve_coerce_u16_ptr): Delete. + (__ARM_mve_coerce_s32_ptr): Delete. + (__ARM_mve_coerce_u32_ptr): Delete. + (__ARM_mve_coerce_s64_ptr): Delete. + (__ARM_mve_coerce_u64_ptr): Delete. + (__ARM_mve_coerce_f_scalar): Delete. + (__ARM_mve_coerce_f16_ptr): Delete. + (__ARM_mve_coerce_f32_ptr): Delete. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-shapes.cc (build_one): Add + which_overload parameter. + (inherent): Derive from overloaded_base<0>. Add support for + overloaded version. + * config/arm/arm-mve-builtins-shapes.h (inherent): Update comment. + * config/arm/arm-mve-builtins.cc (add_unique_function): Add + support for new which_overload parameter. + (pop_and_resolve_to): New. + * config/arm/arm-mve-builtins.h (NONOVERLOADED_FORM) + (OVERLOADED_FORM): New. + (add_unique_function): Update prototype. + (pop_and_resolve_to): New prototype. + * config/arm/arm_mve.h (vuninitializedq): Delete. + (vuninitializedq_u8): Delete. + (vuninitializedq_u16): Delete. + (vuninitializedq_u32): Delete. + (vuninitializedq_u64): Delete. + (vuninitializedq_s8): Delete. + (vuninitializedq_s16): Delete. + (vuninitializedq_s32): Delete. + (vuninitializedq_s64): Delete. + (vuninitializedq_f16): Delete. + (vuninitializedq_f32): Delete. + (__arm_vuninitializedq): Delete. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (class + mve_function_vset_vget_lane): New. + (vgetq_lane, vsetq_lane): New. + * config/arm/arm-mve-builtins-base.def (vgetq_lane, vsetq_lane): + New. + * config/arm/arm-mve-builtins-base.h (vgetq_lane, vsetq_lane): + New. + * config/arm/arm-mve-builtins-shapes.cc (struct getq_lane) + (setq_lane): New. + * config/arm/arm-mve-builtins-shapes.h (getq_lane, setq_lane): + New. + * config/arm/arm_mve.h (vsetq_lane): Delete. + (vgetq_lane): Delete. + (vsetq_lane_f16): Delete. + (vsetq_lane_f32): Delete. + (vsetq_lane_s16): Delete. + (vsetq_lane_s32): Delete. + (vsetq_lane_s8): Delete. + (vsetq_lane_s64): Delete. + (vsetq_lane_u8): Delete. + (vsetq_lane_u16): Delete. + (vsetq_lane_u32): Delete. + (vsetq_lane_u64): Delete. + (vgetq_lane_f16): Delete. + (vgetq_lane_f32): Delete. + (vgetq_lane_s16): Delete. + (vgetq_lane_s32): Delete. + (vgetq_lane_s8): Delete. + (vgetq_lane_s64): Delete. + (vgetq_lane_u8): Delete. + (vgetq_lane_u16): Delete. + (vgetq_lane_u32): Delete. + (vgetq_lane_u64): Delete. + (__ARM_NUM_LANES): Delete. + (__ARM_LANEQ): Delete. + (__ARM_CHECK_LANEQ): Delete. + (__arm_vsetq_lane_s16): Delete. + (__arm_vsetq_lane_s32): Delete. + (__arm_vsetq_lane_s8): Delete. + (__arm_vsetq_lane_s64): Delete. + (__arm_vsetq_lane_u8): Delete. + (__arm_vsetq_lane_u16): Delete. + (__arm_vsetq_lane_u32): Delete. + (__arm_vsetq_lane_u64): Delete. + (__arm_vgetq_lane_s16): Delete. + (__arm_vgetq_lane_s32): Delete. + (__arm_vgetq_lane_s8): Delete. + (__arm_vgetq_lane_s64): Delete. + (__arm_vgetq_lane_u8): Delete. + (__arm_vgetq_lane_u16): Delete. + (__arm_vgetq_lane_u32): Delete. + (__arm_vgetq_lane_u64): Delete. + (__arm_vsetq_lane_f16): Delete. + (__arm_vsetq_lane_f32): Delete. + (__arm_vgetq_lane_f16): Delete. + (__arm_vgetq_lane_f32): Delete. + (__arm_vsetq_lane): Delete. + (__arm_vgetq_lane): Delete. + * config/arm/mve.md (mve_vec_extract<mode><V_elem_l>): Add '@' + prefix. + (mve_vec_set<mode>_internal): Likewise. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + * doc/extend.texi (Half-precision Floating-point): __fp16 is now + always available on arm. Move x86 paragraph closer to the rest of + the x86 information, and make it use present tense. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/117814 + * config/arm/arm-builtins.cc (arm_init_fp16_builtins): Always + register __fp16 type. + * config/arm/arm-mve-builtins.cc (register_builtin_tuple_types): + Remove special handling when TARGET_HAVE_MVE_FLOAT is false. + (register_vector_type): Likewise. + (register_builtin_tuple_types): Likewise. + * config/arm/arm-opts.h (arm_fp16_format_type): Add + ARM_FP16_FORMAT_DEFAULT. + * config/arm/arm.cc (arm_vector_mode_supported_p): Accept + floating-point vector modes even if TARGET_HAVE_MVE_FLOAT is + false. + (arm_option_reconfigure_globals): Apply ARM_FP16_FORMAT_NONE if + requested. + * config/arm/arm.opt (mfp16-format): Default to + ARM_FP16_FORMAT_DEFAULT. + * config/arm/arm_mve_types.h (float16_t, float32_t): Define + unconditionally. + * doc/sourcebuild.texi (ARM-specific attributes): Document + arm_v8_1m_mve_nofp_ok. + +2025-11-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122736 + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Compute + num_mask_args for all mask modes. Pass the mask vector + type to vect_record_loop_mask and adjust ncopies according + to the number of mask arguments. + +2025-11-18 Austin Law <austinkylelaw@gmail.com> + + * config/riscv/riscv-cores.def: Add RISCV_TUNE and RISCV_CORE entries + for the spacemit-x60 design. + * config/riscv/riscv-opts.h (riscv_microarchitecture_type): Add entry + for spacemit-x60 design. + * config/riscv/riscv.cc (spacemit_x60_tune_info): New tune structure + for the spacemit-x60 design. + * config/riscv/riscv.md (tune): Add spacemit_x60. + Include spacemit-x60.md. + * config/riscv/spacemit-x60.md: New file + * doc/riscv-mtune.texi: Regenerate. + * doc/riscv-mcpu.texi: Regenerate. + +2025-11-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122723 + * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): + Handle incoming .COND_* operation. + (vect_transform_reduction): Likewise. Handle .COND_* + operation when not using COND_EXPR masking in a masked loop. + +2025-11-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122723 + * tree-vect-stmts.cc (supportable_widening_operation): + Correct optab to query in the multi-step case when it is + supposed to hit the sbool case. + +2025-11-18 liuhongt <hongtao.liu@intel.com> + + PR target/103750 + * config/i386/sse.md (*<avx512>_eq<mode>3_and15): New + define_insn. + (*avx512vl_eqv2di_and3): Ditto. + * config/i386/i386.md (*ior<mode>_ccz_1): Fix the typo in the + comments above. + +2025-11-17 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122626 + * tree-logical-location.cc + (tree_logical_location_manager::get_parent): Return null when + TYPE_CONTEXT is a TRANSLATION_UNIT_DECL so that we don't fail + the assertion in assert_valid_tree. + +2025-11-17 Evgeny Karpov <evgeny@kmaps.co> + + PR diagnostics/122666 + * config/i386/x-mingw32 (LIBS): Add -lws2_32 + * diagnostics/sarif-sink.cc: Move sockets includes to before + config.h and support __MINGW32__. + +2025-11-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/97894 + * attr-fnspec.h (attr_fnspec): arg_idx, known_p, arg_specified_p, + arg_direct_p, arg_used_p, arg_readonly_p, + arg_maybe_read_p, arg_maybe_written_p, + arg_max_access_size_given_by_arg_p, + arg_access_size_given_by_type_p, + arg_copied_to_arg_p, arg_noescape_p, returns_arg, + returns_noalias_p, global_memory_read_p, + global_memory_written_p, errno_maybe_written_p, arg_eaf_flags, + and get_str as const methods. + +2025-11-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (maybe_remove_forwarder_block): Move a few + checks earlier. + +2025-11-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (tree_forwarder_block_p): Merge this and ... + (remove_forwarder_block): This into ... + (maybe_remove_forwarder_block): Here. + (cleanup_tree_cfg_bb): Call only maybe_remove_forwarder_block. + (pass_merge_phi::execute): Likewise. + +2025-11-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (pass_merge_phi::execute): Add stats for the removed + blocks. + +2025-11-17 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122575 + * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): + Use correct mode for simplified IOR expression inside equality + conditional. + +2025-11-17 Xi Ruoyao <xry111@xry111.site> + + * simplify-rtx.cc (simplify_const_binary_operation): Simplify + VEC_CONCAT two constant vectors. + +2025-11-17 Richard Biener <rguenther@suse.de> + + * tree-ssa-loop-im.cc (move_computations_worker): Avoid newline + between 'Moving statement' and actual statement dump in dumpfile. + +2025-11-17 Richard Biener <rguenther@suse.de> + + * tree-ssa-loop-im.cc (fill_always_executed_in): Skip + blocks not in loops when looking for possibly not returning + calls. + +2025-11-17 Victor Do Nascimento <vicdon01@ip-10-248-139-187.eu-west-1.compute.internal> + + * cfgloop.cc (loop_exits_to_bb_p): Change return type. + (loop_exits_from_bb_p): Likewise. + * cfgloop.h: (loop_exits_to_bb_p): Likewise. + (loop_exits_from_bb_p): Likewise. + +2025-11-17 Alfie Richards <alfie.richards@arm.com> + + * doc/extend.texi: (ARM C Language Extensions (ACLE)) Update ACLE URL + and description. + +2025-11-17 Artemiy Volkov <artemiy.volkov@arm.com> + + * tree-ssa-forwprop.cc (optimize_vector_load): Inhibit + optimization when all uses are through subvectors without + extension. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * tree-core.h (enum built_in_function): Avoid arithmetics or + bitwise operations between enumerators from different enums. + * lto-streamer.h (lto_tag_is_gimple_code_p): Likewise. + * gimple.h (gimple_omp_atomic_set_memory_order): Likewise. + * common/config/i386/i386-cpuinfo.h (M_CPU_SUBTYPE_START, + M_CPU_TYPE): Likewise. + * tree-complex.cc (expand_complex_libcall): Likewise. + * ipa-modref-tree.h (modref_access_node::operator ==): Change + argument type from modref_access_node & to + const modref_access_node &. + * ipa-modref-tree.cc (modref_access_node::operator ==): Likewise. + +2025-11-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122573 + * config/i386/i386.cc (ix86_vector_costs::finish_cost): Avoid + using masked epilogues when an SSE epilogue would have a VF of one. + +2025-11-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure.ac (gcc_cv_ld_compress_debug) <*-*-solaris2*>: Check + for zstd compression support. + * configure: Regenerate. + * doc/invoke.texi (Debugging Options, gz): Document zstd. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121345 + * gimple-range-phi.cc (phi_group::phi_group): Add modifier name. + (phi_group::is_modifier_p): Set modifier stmt operand name. + (phi_group::calculate_using_modifier): Bound the iteration range + by known global range. + (phi_analyzer::process_phi): Allow single PHIS if they meet certain + criteria. + * gimple-range-phi.h (m_modifier_name): New member. + (is_modifier_p): Adjust prototype. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + * gimple-range-fold.cc (fold_using_range::range_of_phi): Remove + the PHI analysis query. + * gimple-range-phi.cc (phi_analysis_object): Delete. + (phi_analysis_initialize): Delete. + (phi_analysis_finalize): Delete. + (phi_analysis_available_p): Delete. + (phi_analysis): Invoke a phi analyzer. + (phi_analyzer::phi_analyzer): Preprocess all phi nodes and set + global values for them in a query. + (phi_analyzer::process_phi): Use query, and export any inital + values found to the query. + * gimple-range-phi.h (m_global): Delete. + (phi_analysis_initialize): Delete. + (phi_analysis_finalize): Delete. + (phi_analysis_available_p): Delete. + (phi_analysis): Change prototype. + * tree-vrp.cc (execute_ranger_vrp): Call phi_analysis. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + * gimple-range-cache.cc (ranger_cache::update_consumers): New. + * gimple-range-cache.h (update_consumers): New prototype. + * gimple-range-fold.cc (fur_depend::fur_depend): Add cache ptr. + (fur_depend::register_relation): call update_consumers. + * gimple-range-fold.h (fur_depend): Add a cache pointer. + * gimple-range.cc (gimple_ranger::fold_range_internal): Add cache ptr. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + * gimple-range.cc (gimple_ranger::update_range_info): New. + * gimple-range.h (update_range_info): New prototype. + * tree-ssanames.cc (set_range_info): Update the range info for + the current range query. + * value-query.h (update_range_info): New prototype. + * value-query.cc (update_range_info): New default stub. + +2025-11-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (tree_forwarder_block_p): Restore check on + LOOPS_HAVE_PREHEADERS. + +2025-11-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/sol2.h (MD_EXEC_PREFIX): Remove. + +2025-11-16 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): + Initialize can_use_partial_vectors_p to true. + (vect_determine_partial_vectors_and_peeling): Add masked_p + parameter and honor it. + (vect_analyze_loop_2): Pass through masked_p. + (vect_analyze_loop_1): Pass down masked_p. + (vect_analyze_loop): Simplify check on possible masking of + the epilog when there's no .WHILE_ULT. + +2025-11-16 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_determine_partial_vectors_and_peeling): + Remove resetting of LOOP_VINFO_USING_SELECT_VL_P. + (vect_analyze_loop_2): Decide on partial vectors before + deciding on decrementing IV or .SELECT_VL usage. + +2025-11-16 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_determine_partial_vectors_and_peeling): + Remove. + (vect_need_peeling_or_partial_vectors_p): Declare. + * tree-vect-loop.cc (vect_determine_partial_vectors_and_peeling): + Make static. + (vect_need_peeling_or_partial_vectors_p): Export. + * tree-vect-loop-manip.cc (vect_do_peeling): Do not call + vect_determine_partial_vectors_and_peeling but instead + re-compute LOOP_VINFO_PEELING_FOR_NITER using + vect_need_peeling_or_partial_vectors_p. + +2025-11-16 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_loop_vec_info::epil_using_partial_vectors_p): + Remove. + (LOOP_VINFO_EPIL_USING_PARTIAL_VECTORS_P): Likewise. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): + Do not initialize epil_using_partial_vectors_p. + (vect_determine_partial_vectors_and_peeling): Do not set it. + +2025-11-16 Lewis Hyatt <lhyatt@gmail.com> + + * diagnostics/context.cc (num_digits): Change argument type from + `int' to `uint64_t'. + (test_num_digits): Add test for 64-bit argument. + * diagnostic.h (num_digits): Adjust prototype. + * input.cc (write_digit): Accept argument in range 0-9 instead of + an arbitrary int. + (write_digit_row): Adjust to change in write_digit(). + +2025-11-15 Jason Xu <bravejason@outlook.com> + + * config.gcc (aarch64-*-mingw*): Set use_gcc_stdint to wrap. + +2025-11-15 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (risc_legitimize_move): Use convert_modes + rather than gen_extend_insn for most cases. + * config/riscv/riscv.md (addv<mode>4): Likewise. + (uaddv<mode>4, subv<mode>4, usubv<mode>4): Likewise. + (mulv<mode>4, umulv<mode>4): Likewise. + * config/riscv/sync.md (atomic_compare_and_swap<mode>): Likewise. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (mov<GPF:mode><GPI:mode>cc): Delete. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md(mov<ALLI_GPF:mode>cc): Use new predicate. + (mov<GPF:mode><GPI:mode>cc): Likewise. + (<neg_not_op><mode>cc): Likewise. + * config/aarch64/predicates.md (aarch64_comparison_operator_cc): + New predicate. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (mov<ALLI_GPF:mode>): Delete + redundant check. + (mov<GPF:mode><GPI:mode>cc): Likewise. + (<neg_not_op><mode>cc): Likewise. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (mov<ALLI>cc): Merge with ... + (mov<ALLI>cc): ... this. + * config/aarch64/iterators.md(ALLI_GPF): New mode iterator. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md(mov<GPF>cc): Accept MODE_CC + conditions directly; reject QI/HImode conditions. + +2025-11-14 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv.cc (andes_25_tune_info): Add prefer-agnostic. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): + Add ss_SQRSHR, ss_SQSHL, ss_SRSHR, ss_UQRSHL, ss_UQSHL, and + ss_URSHR. + (mve_function_scalar_shift): Add support for ss_SQRSHR, ss_SQSHL, + ss_SRSHR, ss_UQRSHL, ss_UQSHL, and ss_URSHR. + (sqrshr, sqshl, srshr, uqrshl, uqshl, urshr): New. + * config/arm/arm-mve-builtins-base.def (sqrshr, sqshl, srshr) + (uqrshl, uqshl, urshr): New. + * config/arm/arm-mve-builtins-base.h (sqrshr, sqshl, srshr) + (uqrshl, uqshl, urshr): New. + * config/arm/arm-mve-builtins-shapes.cc (scalar_s32_shift): New. + (scalar_s32_shift_imm): New. + (scalar_u32_shift): New. + (scalar_u32_shift_imm): New. + * config/arm/arm-mve-builtins-shapes.h (scalar_s32_shift): New. + (scalar_s32_shift_imm): New. + (scalar_u32_shift): New. + (scalar_u32_shift_imm): New. + * config/arm/arm_mve.h (sqrshr): Delete. + (sqshl): Delete. + (srshr): Delete. + (uqrshl): Delete. + (uqshl): Delete. + (urshr): Delete. + (__arm_uqrshl): Delete. + (__arm_sqrshr): Delete. + (__arm_uqshl): Delete. + (__arm_urshr): Delete. + (__arm_sqshl): Delete. + (__arm_srshr): Delete. + * config/arm/mve.md (mve_sqshl_si, mve_srshr_si): Fix operand 1 + mode. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): + Add ss_SQSHLL, ss_SRSHRL, ss_UQSHLL, ss_URSHRL. + (mve_function_scalar_shift): Add support for ss_SQSHLL, ss_SRSHRL, + ss_UQSHLL, ss_URSHRL. + * config/arm/arm-mve-builtins-base.def (sqshll, srshrl, uqshll) + (urshrl): New. + * config/arm/arm-mve-builtins-base.h (sqshll, srshrl, uqshll) + (urshrl): New. + * config/arm/arm-mve-builtins-shapes.cc (scalar_s64_shift_imm) + (scalar_u64_shift_imm): New. + * config/arm/arm-mve-builtins-shapes.h (scalar_s64_shift_imm) + (scalar_u64_shift_imm): New. + * config/arm/arm_mve.h (sqshll): Delete. + (srshrl): Delete. + (uqshll): Delete. + (urshrl): Delete. + (__arm_uqshll): Delete. + (__arm_urshrl): Delete. + (__arm_srshrl): Delete. + (__arm_sqshll): Delete. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): + Add ss_SQRSHRL, ss_SQRSHRL_SAT48. + (mve_function_scalar_shift): Add support for ss_SQRSHRL, + ss_SQRSHRL_SAT48. + (sqrshrl, sqrshrl_sat48): New. + * config/arm/arm-mve-builtins-base.def (sqrshrl, sqrshrl_sat48): New. + * config/arm/arm-mve-builtins-base.h (sqrshrl, sqrshrl_sat48): New. + * config/arm/arm_mve.h (sqrshrl): Delete. + (sqrshrl_sat48): Delete. + (__arm_sqrshrl): Delete. + (__arm_sqrshrl_sat48): Delete. + * config/arm/mve.md (mve_sqrshrl_sat<supf>_di): Add '@' prefix. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): + Add ss_UQRSHLL, ss_UQRSHLL_SAT48. + (mve_function_scalar_shift): Add support for ss_UQRSHLL, + ss_UQRSHLL_SAT48. + * config/arm/arm-mve-builtins-base.def (uqrshll, uqrshll_sat48): + New. + * config/arm/arm-mve-builtins-base.h (uqrshll, uqrshll_sat48): + New. + * config/arm/arm_mve.h (uqrshll): Delete. + (uqrshll_sat48): Delete. + (__arm_uqrshll): Delete. + (__arm_uqrshll_sat48): Delete. + * config/arm/mve.md (mve_uqrshll_sat<supf>_di): Add '@' prefix. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm-mve-builtins-base.cc (class mve_function_vpnot): New. + (vpnot): New. + * config/arm/arm-mve-builtins-base.def (vpnot): New. + * config/arm/arm-mve-builtins-base.h (vpnot): New. + * config/arm/arm-mve-builtins-shapes.cc (struct vpnot): New. + * config/arm/arm-mve-builtins-shapes.h (vpnot): New. + * config/arm/arm_mve.h (vpnot): Delete. + (__arm_vpnot): Delete. + +2025-11-14 Filip Kastl <fkastl@suse.cz> + + * doc/invoke.texi: Remove mention of switch-lower-slow-alg-max-cases. + * params.opt: Remove switch-lower-slow-alg-max-cases. + +2025-11-14 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md (*sub<mode>_3): + Remove 'i' from operand 0 constraint. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR ipa/122663 + * ipa-param-manipulation.cc (purge_all_uses): Collect + stmts to remove and process that list in reverse. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122573 + * tree-vect-slp.cc (vect_build_slp_tree_1): Support + groups of invariant loads. + (vect_build_slp_tree_2): Likewise. + (vect_transform_slp_perm_load_1): Likewise. + * tree-vect-stmts.cc (vectorizable_load): Handle non-splat + SLP for invaraint loads. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122680 + * tree-vect-stmts.cc (vectorizable_conversion): Avoid range + queries during transform. + +2025-11-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR target/121458 + PR target/121457 + * configure.ac: Fix typos. + <*-*-solaris2*>: Require GNU ld 2.30. + (comdat_group) <*-*-solaris2.1[1-9]*>: Always set to yes. + (ld_ix86_gld_32_opt): Only use -melf_i386_sol2 for Solaris target. + (ld_ix86_gld_64_opt): Likewise with -melf_x86_64_sol. + (gcc_cv_ld_eh_frame_hdr) <*-*-solaris2*>: Likewise. + (gcc_cv_ld_pie) <*-*-solaris2*>: Remove special cases. + (gcc_cv_ld_compress_debug) <*-*-solaris2*>: Remove guard. + (gcc_cv_ld_as_needed): Simplify guard. + (gcc_cv_ld_sol2_emulation): Remove. + (gcc_cv_solaris_crts): Remove. + * configure: Regenerate. + * config.in: Regenerate. + * config/sol2.h (STARTFILE_CRTBEGIN_SPEC): Remove !HAVE_LD_PIE + support. + (ENDFILE_CRTEND_SPEC): Likewise. + (LD_PIE_SPEC): Likewise. + [USE_GLD] (LINK_EH_SPEC): Set unconditionally. + * config/i386/sol2.h [USE_GLD]: Remove !HAVE_LD_SOL2_EMULATION + support. + * config/sparc/sol2.h: Likewise. + * doc/install.texi (Specific, *-*-solaris2*): Update bundled gcc + versions. + Raise required binutils version. + Remove binutils 2.44 caveat. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122216 + * config/arm/arm-mve-builtins-base.cc (enum which_scalar_shift): New. + (mve_function_scalar_shift): New. + (asrl, lsll): New. + * config/arm/arm-mve-builtins-base.def (asrl, lsll): New. + * config/arm/arm-mve-builtins-base.h (asrl, lsll): New. + * config/arm/arm_mve.h (asrl): Delete. + (lsll): Delete. + (__arm_asrl): Delete. + (__arm_lsll): Delete. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122216 + * config/arm/arm-mve-builtins-shapes.cc (scalar_s64_shift): New. + (scalar_u64_shift): New. + * config/arm/arm-mve-builtins-shapes.h: Likewise. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122216 + * config/arm/arm.md (ashldi3, ashrdi3): Force shift amount into + QImode. + * config/arm/constraints.md: Fix comment, Pg is valid in Thumb-2 + state only. + * config/arm/mve.md (mve_asrl): Handle various shift amount ranges. + (mve_asrl_imm, mve_asrl_internal): New patterns. + (mve_lsll): Handle various shift amount ranges. + (mve_lsll_imm, mve_lsll_internal): New patterns. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122216 + * config/arm/thumb2.md (thumb2_asrl, thumb2_lsll, thumb2_lsrl): + Move to ... + * config/arm/mve.md (mve_asrl, mve_lsll, mve_lsrl): ... here. Use + match_operand instead of match_dup. + * config/arm/arm.md (ashldi3, ashrdi3, lshrdi3): Remove useless + copy. Update for new prototype. + +2025-11-14 Xi Ruoyao <xry111@xry111.site> + + * configure: Regenerate. + +2025-11-14 zhaozhou <zhaozhou@loongson.cn> + + * config/loongarch/lasx.md (lasx_xvbsrl_d_f): New template. + * config/loongarch/loongarch.cc (emit_reduc_half): Replace insn. + +2025-11-14 zhaozhou <zhaozhou@loongson.cn> + + * config/loongarch/predicates.md: Update ops. + +2025-11-14 zhaozhou <zhaozhou@loongson.cn> + + * config.gcc: Add target_gtfiles. + * config/loongarch/loongarch-builtins.cc: Add header file. + +2025-11-13 Alexandre Oliva <oliva@adacore.com> + Olivier Hainque <hainque@adacore.com> + + * config/vxworks/base/b_NULL.h: New. + * config.gcc (extra_headers) <*-*-vxworks*>: Add it. + * Makefile.in (stmp-int-hdrs): Support /././ markers in USER_H + to mark the beginning of the install name. Document. + * doc/sourcebuild.texi (Headers): Document /././ marker. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (tree_forwarder_block_p): Remove must argument. + (remove_forwarder_block): Add can_split + argument. Handle the splitting case (iff phis in bb). + (cleanup_tree_cfg_bb): Update argument to tree_forwarder_block_p. + (remove_forwarder_block_with_phi): Remove. + (pass_merge_phi::execute): Update argument to tree_forwarder_block_p + and call remove_forwarder_block instead of remove_forwarder_block_with_phi. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122493 + * tree-cfgcleanup.cc (tree_forwarder_block_p): Change bool argument + to a must have phi and allow phis if it is false. + (remove_forwarder_block): Add support for merging of forwarder blocks + with phis. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfg.cc (copy_phi_arg_into_existing_phi): Use the original location + if the mapped location is unknown. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfg.cc (copy_phi_arg_into_existing_phi): New use_map argument. + * tree-cfg.h (copy_phi_arg_into_existing_phi): Update declaration. + * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Use + copy_phi_arg_into_existing_phi instead of inlining it. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (remove_forwarder_block): Move + variable declaration ei into for loop. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Use + edge iterator instead of while loop. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (remove_forwarder_block): Remove check + on the available dominator information. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (tree_forwarder_block_p): Reject bb which has a single + predecessor which has a single successor. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (pass_merge_phi::execute): Move + check for abnormal or no phis to remove_forwarder_block_with_phi + and the check on dominated to tree_forwarder_block_p. + (remove_forwarder_block_with_phi): here. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (remove_forwarder_block_with_phi): Remove check on non-local label. + (remove_forwarder_block): Remove check on non-label/eh landing pad. + (tree_forwarder_block_p): Add check on lable for an eh landing pad. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (remove_forwarder_block): Remove check for infinite loop. + (remove_forwarder_block_with_phi): Likewise. Also remove check for loop header. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-cfgcleanup.cc (pass_merge_phi::execute): Remove worklist. + +2025-11-13 Jeff Law <jlaw@ventanamicro.com> + + * ext-dce.cc (ext_dce_try_optimize_rshift): New function to optimize a + shift pair implementing a zero/sign extension. + (ext_dce_try_optimize_extension): Renamed from + ext_dce_try_optimize_insn. + (ext_dce_process_uses): Handle shift pairs implementing extensions. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122637 + * tree-scalar-evolution.cc (final_value_replacement_loop): Fix order + of gimplification and constant prop. + +2025-11-13 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122627 + * lra-constraints.cc (update_equiv): Remove patch from last week + related to pr122321. + (lra_constraints): Expand the equivalence array after eliminations + are complete. + +2025-11-13 Xi Ruoyao <xry111@xry111.site> + + * configure.ac (HAVE_AS_16B_ATOMIC): Define if the assembler + supports LSX and sc.q. + * configure: Regenerate. + * config.in: Regenerate. + * config/loongarch/loongarch-opts.h (HAVE_AS_16B_ATOMIC): + Defined to 0 if undefined yet. + * config/loongarch/linux.h (HAVE_IFUNC_FOR_LIBATOMIC_16B): + Define as HAVE_AS_16B_ATOMIC && OPTION_GLIBC. + * config/loongarch/loongarch-protos.h + (loongarch_16b_atomic_lock_free_p): New prototype. + * config/loongarch/loongarch.cc + (loongarch_16b_atomic_lock_free_p): Implement. + * config/loongarch/sync.md (atomic_storeti_lsx): Require + loongarch_16b_atomic_lock_free_p. + (atomic_storeti): Likewise. + (atomic_exchangeti_scq): Likewise. + (atomic_exchangeti): Likewise. + (atomic_compare_and_swapti): Likewise. + (atomic_fetch_<amop_ti_fetch>ti_scq): Likewise. + (atomic_fetch_<amop_ti_fetch>ti): Likewise. + (ALL_SC): Likewise for TImode. + (atomic_storeti_scq): Remove. + +2025-11-13 Richard Biener <rguenther@suse.de> + + * config/i386/i386-features.cc (pass_x86_cse::x86_cse): Delete + loads. + +2025-11-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR other/122638 + * doc/install.texi (Configuration, --enable-x86-64-mfentry): Fix + typo. + +2025-11-13 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386.md (*ior<mode>_ccz_1): New define_insn. + +2025-11-13 Alice Carlotti <alice.carlotti@arm.com> + + * config/aarch64/driver-aarch64.cc + (host_detect_local_cpu): Extend feature string syntax. + +2025-11-13 Richard Biener <rguenther@suse.de> + + * tree-ssa-dce.cc (simple_dce_from_worklist): For calls + with side-effects remove their LHS. + +2025-11-13 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * config/aarch64/aarch64-simd.md (*eor3q<mode>4): New insn to be used by + combine after reload to optimize any grouping of eor's that are using FP + registers for scalar modes. + +2025-11-13 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv-target-attr.cc (riscv_process_target_str): Clean + the final byte of str_to_check. + +2025-11-12 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/115970 + * diagnostics/sarif-sink.cc (maybe_open_sarif_sink_for_socket): + Add "%m" to error messages, so that we print the string form of + errno. + +2025-11-12 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/sarif-sink.cc (class unique_fd): New. + (sarif_socket_sink::sarif_socket_sink): Convert "fd" arg and m_fd + from int to unique_fd. + (~sarif_socket_sink): Drop. + (sarif_socket_sink::dump_kind): Update for m_fd becoming a + unique_fd. + (sarif_socket_sink::m_fd): Convert from "int" to "unique_fd". + (maybe_open_sarif_sink_for_socket): Likewise for "sfd". + +2025-11-12 Philipp Tomsich <philipp.tomsich@vrull.eu> + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add ampere1c. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi: Document the above. + +2025-11-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/i386/i386.opt.urls: Regenerate. + * config/s390/s390.opt.urls: Ditto. + * doc/invoke.texi: Add documentation for + -mstack-protector-guard= and -mstack-protector-guard-record. + +2025-11-12 Arsen Arsenović <arsen@aarsen.me> + + * doc/invoke.texi (Diagnostic Message Formatting Options): Add + index entries for SARIF and HTML output formats. + +2025-11-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122653 + * tree-scalar-evolution.cc (interpret_rhs_expr): Handle + POINTER_DIFF_EXPR. + +2025-11-12 Christophe Lyon <christophe.lyon@linaro.org> + Richard Earnshaw <rearnsha@arm.com> + + PR target/122175 + * config/arm/iterators.md (asm_const_size): New mode attr. + * config/arm/mve.md (@mve_<mve_insn>q_n_<supf><mode>): Use it. + +2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> + + PR target/122539 + * config/arm/arm.cc (comp_not_to_clear_mask_str_un): Skip partial + register clearing logic for FP_REGS. + (compute_not_to_clear_mask): Likewise. + +2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> + + PR target/122539 + * config/arm/arm.cc (comp_not_to_clear_mask_str_un): Update + not_to_clear_reg_mask for union members. + +2025-11-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-opts.h (enum stack_protector_guard): Define + SP_TLS and SP_GLOBAL. + * config/s390/s390.h (TARGET_SP_GLOBAL_GUARD): Define predicate. + (TARGET_SP_TLS_GUARD): Define predicate. + * config/s390/s390.md (stack_protect_global_guard_addr<mode>): + New insn. + (stack_protect_set): Also deal with a global guard. + (stack_protect_test): Also deal with a global guard. + * config/s390/s390.opt (-mstack-protector-guard={global,tls}): + New option. + (-mstack-protector-guard-record) New option. + +2025-11-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122647 + * tree-vect-stmts.cc (vectorizable_conversion): Fix guard on + bool to non-bool conversion. + * tree-vect-patterns.cc (vect_recog_bool_pattern): Also handle + FLOAT_EXPR from bool. + +2025-11-12 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/andes-25-series.md: New file. + * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-25-series. + (RISCV_CORE): Add Andes 25-series cpu list. + * config/riscv/riscv-opts.h + (enum riscv_microarchitecture_type): Add andes_25_series_. + * config/riscv/riscv.cc: Add andes_25_tune_info. + * config/riscv/riscv.md: Add andes_25. + * doc/riscv-mcpu.texi: Regenerated for Andes cpu list. + * doc/riscv-mtune.texi: Regenerated for andes-25-series. + +2025-11-11 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/mkoffload.cc (process_asm): Replace "configure_stack_size" + constructor with a new regular function, "mkoffload_setup". + (process_obj): Call mkoffload_setup from the "init" constructor. + +2025-11-11 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/115970 + * diagnostics/sarif-sink.cc: Include <sys/un.h> and <sys/socket.h>. + (sarif_builder::end_group): Update comment. + (sarif_sink::on_end_group): Drop "final". + (class sarif_socket_sink): New subclass. + (maybe_open_sarif_sink_for_socket): New function. + * diagnostics/sarif-sink.h: (maybe_open_sarif_sink_for_socket): + New decl. + * doc/invoke.texi (EXPERIMENTAL_SARIF_SOCKET): Document new + environment variable. + * toplev.cc: Define INCLUDE_VECTOR. Add include of + "diagnostics/sarif-sink.h". + (toplev::main): Call + diagnostics::maybe_open_sarif_sink_for_socket. + +2025-11-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122587 + * tree-vectorizer.cc (pass_vectorize::execute): Enable + ranger around analysis and code generation. + +2025-11-11 Richard Biener <rguenther@suse.de> + + * tree-ssa-loop-niter.cc (simplify_using_initial_conditions): + Use the active ranger to simplify boolean expressions. + +2025-11-11 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/crypto.md (packf splitters): Variant with + operands reversed. Add variants with the ashift/sign extend + exchanged as well. + +2025-11-11 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_extend_to_xmode_reg): Simplify + by using convert_modes + force_reg. + +2025-11-11 Richard Biener <rguenther@suse.de> + + * gimple-range.cc (gimple_ranger::range_on_edge): Pass + the edge as 'edge' to get_tree_range. + (dom_ranger::range_on_edge): Likewise. + +2025-11-11 Andrew MacLeod <amacleod@redhat.com> + + * value-query.cc (range_query::invoke_range_of_expr): New + edge argument. If set invoke range_on_edge. + (range_query::get_tree_range): Likewise and adjust. + * value-query.h (range_query::invoke_range_of_expr): New + edge argument. + (range_query::get_tree_range): Likewise. + +2025-11-11 Dhruv Chawla <dhruvc@nvidia.com> + + * match.pd: New patterns. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * doc/extend.texi: Add description for LoongArch function + attributes. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_can_inline_p): + Do not inline when callee is versioned but caller is not. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_option_same_function_versions): Compare the target + attributes in two functions to determine which function’s + features get higher priority. + (TARGET_OPTION_SAME_FUNCTION_VERSIONS): Define. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-protos.h + (loongarch_parse_fmv_features): Modify the type of parameter. + (loongarch_compare_version_priority): Function declaration. + * config/loongarch/loongarch-target-attr.cc + (enum features_prio): Define LA_PRIO_MAX to indicate the + highest priority of supported attributes. + (loongarch_parse_fmv_features): Added handling of setting + priority in attribute string. + (loongarch_compare_version_priority): Likewise. + * config/loongarch/loongarch.cc + (loongarch_process_target_version_attr): Likewise. + (get_feature_mask_for_version): Likewise. + (loongarch_compare_version_priority): Delete. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_compare_version_priority): Returns true if DECL1 + and DECL2 are versions of the same function. + (TARGET_COMPARE_VERSION_PRIORITY): Define. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/genopts/gen-evolution.awk: + * config/loongarch/loongarch-evol-attr.def: Regenerate. + * config/loongarch/loongarch-protos.h + (loongarch_parse_fmv_features): Function declaration. + (get_feature_mask_for_version): Likewise. + * config/loongarch/loongarch-target-attr.cc + (enum features_prio): Defining the priority of features. + (struct loongarch_attribute_info): Add members about + features. + (LARCH_ATTR_MASK): Likewise. + (LARCH_ATTR_ENUM): Likewise. + (LARCH_ATTR_BOOL): Likewise. + (loongarch_parse_fmv_features): Parse a function + multiversioning feature string STR. + * config/loongarch/loongarch.cc + (get_suffixed_assembler_name): Return an identifier for the + base assembler name of a versioned function. + (get_feature_mask_for_version): Get the mask and priority of + features. + (add_condition_to_bb): Insert judgment statements for different + features functions. + (dispatch_function_versions): Generates the dispatch function for + multi-versioned functions. + (make_resolver_func): Make the resolver function decl to dispatch + the versions of a multi-versioned function. + (loongarch_generate_version_dispatcher_body): Generate the + dispatcher logic to invoke the right function version at run-time + for a given set of function versions. + (TARGET_GENERATE_VERSION_DISPATCHER_BODY): Define. + * common/config/loongarch/cpu-features.h: New file. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc (INCLUDE_STRING): Include. + (loongarch_mangle_decl_assembler_name): New function. + (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Define. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_get_function_versions_dispatcher): New function. + (TARGET_GET_FUNCTION_VERSIONS_DISPATCHER): Define. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_process_target_version_attr): New function. + (loongarch_option_valid_version_attribute_p): New function. + (TARGET_OPTION_VALID_VERSION_ATTRIBUTE_P): Define. + * config/loongarch/loongarch.h + (TARGET_HAS_FMV_TARGET_ATTRIBUTE): Define it to 0. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/genopts/gen-evolution.awk: Output the + info needed for handling evolution features when parsing + the target pragma and attribute. + * config/loongarch/genopts/genstr.sh: Add support for + generating *.def files. + * config/loongarch/loongarch-target-attr.cc + (struct loongarch_attribute_info): Add structure member + record option mask. + (LARCH_ATTR_MASK): New macro. + (LARCH_ATTR_ENUM): Likewise. + (LARCH_ATTR_BOOL): Likewise. + (loongarch_handle_option): Support for new options. + (loongarch_process_one_target_attr): Added support for + the la64v1.1 extended instruction set. + * config/loongarch/t-loongarch: Generate loongarch-evol-attr.def. + * doc/extend.texi: Add new attribute description information. + * config/loongarch/loongarch-evol-attr.def: Generate. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-target-attr.cc + (loongarch_process_one_target_attr): Fix ICE. + +2025-11-11 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122629 + * tree-if-conv.cc (factor_out_operators): Reject + BIT_FIELD_REF and BIT_INSERT_EXPR if operand other + than 0 is different. + +2025-11-11 Jakub Jelinek <jakub@redhat.com> + + PR lto/122620 + * gimplify-me.cc (gimple_regimplify_operands): Don't try to regimplify + TREE_CLOBBER on rhs of gimple_clobber_p if it has gimple_reg_type. + +2025-11-11 Hu, Lin1 <lin1.hu@intel.com> + + PR target/122446 + * config/i386/amxavx512intrin.h (_tile_cvtrowps2bf16hi_internal): + Input register name by inline asm %c[...], and remove %% before tmm + from intel side. + (_tile_cvtrowps2bf16li_internal): Ditto. + * config/i386/amxbf16intrin.h (_tile_dpbf16ps_internal): Ditto + * config/i386/amxcomplexintrin.h (_tile_cmmimfp16ps_internal): Ditto + (_tile_cmmrlfp16ps_internal): Ditto + (_tile_cmmimfp16ps): Ditto + (_tile_cmmrlfp16ps): Ditto + * config/i386/amxfp16intrin.h (_tile_dpfp16ps_internal): Ditto + (_tile_dpfp16ps): Ditto + * config/i386/amxfp8intrin.h (_tile_dpbf8ps_internal): Ditto + (_tile_dpbhf8ps_internal): Ditto + (_tile_dphbf8ps_internal): Ditto + (_tile_dphf8ps_internal): Ditto + (_tile_dpbf8ps): Ditto + (_tile_dpbhf8ps): Ditto + (_tile_dphbf8ps): Ditto + (_tile_dphf8ps): Ditto + * config/i386/amxint8intrin.h (_tile_int8_dp_internal): Ditto + * config/i386/amxmovrsintrin.h (_tile_loaddrs_internal): Ditto + (_tile_loaddrst1_internal): Ditto + (_tile_loaddrs): Ditto + (_tile_loaddrst1): Ditto + * config/i386/amxtf32intrin.h (_tile_mmultf32ps_internal): Ditto + * config/i386/amxtileintrin.h (_tile_loadd): Ditto + (_tile_loadd_internal): Ditto + (_tile_stream_loadd): Ditto + (_tile_stream_loadd_internal): Ditto + (_tile_stored): Ditto + (_tile_stored_internal): Ditto + (_tile_zero): Ditto + (_tile_zero_internal): Ditto + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt.urls: Regenerated. + * config/dragonfly.opt.urls: Regenerated. + * config/freebsd.opt.urls: Regenerated. + * config/gcn/gcn.opt.urls: Regenerated. + * config/gnu-user.opt.urls: Regenerated. + +2025-11-10 Sam James <sam@gentoo.org> + + * acinclude.m4: Quote "$gcc_cv_nm" and friends. + * configure.ac: Ditto. + * configure: Regenerate. + +2025-11-10 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/122605 + * builtins.cc (expand_ifn_atomic_bit_test_and): Split out the call to + build_call_nary into two different statements. + (expand_ifn_atomic_op_fetch_cmp_0): Likewise. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt: Clean up comments/documentation for -fident. + * doc/invoke.texi: Move -Qy/-Qn documentation from System V options + and combine with -fident/-fno-ident entry. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt: Add comments/documentation for -N, -Q, -S, -T, + -Tbss, -Tdata, -Ttext, -Z, -n, -Q, -s, -t, -z. + * doc/invoke.texi: Add documentation for -Tbss, -Tdata, -Ttext, + -N, -n, -t, -Z. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + PR rtl-optimization/120064 + * doc/invoke.texi: Document -fconcepts-diagnostics-depth, + -Wdeprecated-copy-dtor, -Wformat-diag, -Wcannot-profile, + -fvar-tracking-uninit, -gno-pubnames, -finline-atomics, + -fext-dce, -fipa-icf-functions, -fipa-icf-variables, + -fprofile, -fdump-internal-locations, and -Wopenacc-dims. + Minor copy-editing and rearrangement of items in the option + summary lists. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/cppdiropts.texi: Document --include-directory, + --include-directory-after, --include-barrier, --include-prefix, + --include-with-prefix, --include-with-prefix-after, + --include-with-prefix-before, --no-standard-includes. + --embed-directory. + * doc/cppopts.texi: Document --define-macro, --undefine-macro, + --include, --imacros, --dependencies, --user-dependencies, + --print-missing-file-dependencies, --write-dependencies, + --write-user-dependencies, --comments, --comments-in-macros, + --no-line-commands, --traditional, --traditional-cpp, + --trigraphs, --trace-includes, --dump. + * doc/invoke.texi: Add missing long options to Option Summary. + Document --language, --compile, --assemble, --preprocess, + --output, --dumpbase, --dumpbase-ext, --dumpdir, + --verbose, --pass-exit-codes, --pipe, --specs, --ansi, + --no-warnings, --pedantic, --pedantic-errors, --all-warnings, + --extra-warnings, --debug, --optimize, --profile, -coverage, + --no-integrated-cpp, --for-assembler, --no-standard-libraries, + --entries, --pie, --static-pie, --static, --shared, --symbolic, + --for-linker, --force-link, --library-directory, --prefix, + --no-canonical-prefixes, --dump, --save-temps, --print-file-name, + --print-multi-directory, --print-multi-lib, + --print-multi-os-directory, --print-multiarch, + --print-prog-name, --print-libgcc-file-name, --print-search-dirs, + --print-sysroot, --print-sysroot-headers-suffix. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/cppopts.texi (-A): Restrict option documentation to the CPP + manual. Also document the --assert form. + * doc/invoke.texi (Option Summary): Don't list the -A option. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (Option Summary): Add missing entries, + also correct alphabetization and formatting of the C++ options. + (C++ Language Options): Fix some formatting issues. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt (fhelp, fhelp=, ftarget-help, fversion): Mark as + "Undocumented". + (fbounds-check): Update comments. + (flag-graphite, fsel-sched-reschedule-pipelined): Mark as + "Undocumented". + (fstack-limit): Add comment. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt (fhelp): Add RejectNegative. + (fhelp=): Likewise. + (ftarget-help): Likewise. + (fversion): Likewise. + (Wno-frame-larger-than): Likewise. + (Wno-larger-than): Likewise. + (Wno-stack-usage): Likewise. + (fdiagnostics-minimum-margin-width=): Likewise. + (flto-incremental=): Likewise. + (foffload=): Likewise. + (foffload-options=): Likewise. + (foffload-abi-host-opts=): Likewise. + (fpatchable-function-entry=): Likewise. + (gno-pubnames): Likewise. + (gpubnames): Likewise. + (ggnu-pubnames): Likewise. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * common.opt (ftree-lrs): Mark as "Ignore". + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/cppopts.texi (fcanonical-system-headers): Add @opindex. + * doc/invoke.texi (fdump-ada-spec-slim): Add @opindex. + (fcontract-semantic): Likewise. + (fdiagnostics-plain-output): Likewise. + (Wc11-c2x-compat): Likewise. + (Wvla-parameter): Likewise. + (fanalyzer-verbose-edges): Likewise. + (fanalyzer-verbose-state-changes): Likewise. + (fanalyzer-verbosity): Likewise. + (flimit-function-alignment): Likewise. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * doc/invoke.texi (fdump-analyzer-exploded-nodes): Correct + spelling of option in @opindex. + (fdump-analyzer-exploded-nodes-2): Likewise. + (fdump-analyzer-exploded-nodes-3): Likewise. + (fdump-analyzer-feasibility): Likewise. + (fdump-analyzer-infinite-loop): Likewise. + (fstack-reuse): Likewise. + +2025-11-10 Dimitar Dimitrov <dimitar@dinux.eu> + + * config/pru/pru.h (REG_CLASS_CONTENTS): Use unsigned integer + constants. + +2025-11-10 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/122415 + * config/pru/pru-protos.h (pru_fixup_jump_address_operand): + Declare. + * config/pru/pru.cc (pru_fixup_jump_address_operand): New + function. + (pru_addr_space_legitimize_address): New function. + (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Declare. + * config/pru/pru.md (call): Fixup the address operand. + (call_value): Ditto. + (sibcall): Ditto. + (sibcall_value): Ditto. + +2025-11-10 Tejas Belagod <tejas.belagod@arm.com> + + * config/aarch64/aarch64-sve-builtins.cc (register_builtin_types): Make + SVE vector boolean type equivalent to GNU vectors. + * config/aarch64/aarch64-sve.md (extend<vpred><mode>2, + zero_extend<vpred><mode>2, trunc<mode><vpred>2, vec_cmp<mode><mode>): + New patterns to support additional operations on predicate modes. + * config/aarch64/aarch64.cc (aarch64_valid_vector_boolean_op): New. + (aarch64_invalid_unary_op): Consider vector bool types. + (aarch64_invalid_binary_op): Likewise. + (aarch64_convert_to_type): Define target hook and handle standard to + non-standard bool conversion. + +2025-11-10 Richard Earnshaw <rearnsha@arm.com> + + PR target/118460 + * config/arm/arm.md (movhfcc): Use expandable_comparison_operator. + (movsfcc, movdfcc): Likewise. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/121985 + * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Only + set niter_vector's range if step == 1. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + * optabs-query.cc (qimode_for_vec_perm): Check if QImode's + precision divides the inner mode's precision. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Bail if + offset_vectype is NULL. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-slp.cc (vect_load_perm_consecutive_p): New function. + (vect_lower_load_permutations): Use. + (vect_optimize_slp_pass::remove_redundant_permutations): Use. + * tree-vect-stmts.cc (has_consecutive_load_permutation): New + function that uses vect_load_perm_consecutive_p. + (get_load_store_type): Use. + (vectorizable_load): Reduce group size. + * tree-vectorizer.h (struct vect_load_store_data): Add + subchain_p. + (vect_load_perm_consecutive_p): Declare. + +2025-11-08 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/122126 + * gimple-isel.cc (gimple_expand_vec_set_extract_expr): Add bound check. + +2025-11-08 Lulu Cheng <chenglulu@loongson.cn> + + PR target/122097 + * config/loongarch/loongarch.cc + (loongarch_const_vector_same_bytes_p): Add processing for + floating-point vector data. + +2025-11-08 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/122065 + * tree-vect-generic.cc (target_supports_mult_synth_alg): Add helper to + check mult synth. + (expand_vector_mult): Optimize mult when const is uniform but not + power of 2. + +2025-11-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122599 + * tree-scalar-evolution.cc (final_value_replacement_loop): Move + the removal of the phi until after the gimplification of the final + value expression. + +2025-11-07 David Malcolm <dmalcolm@redhat.com> + + * gdbhooks.py (class AnaSupernodePrinter): New. + (class AnaExplodedNodePrinter): New. + (build_pretty_printer): Register the above. + +2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree.cc (build_call_nary): Remove decl. + Add template definition that uses std::initializer_list<tree> + and call build_call. + (build_call): New declaration. + * tree.h (build_call_nary): Remove. + (build_call): New function. + +2025-11-07 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/autovec.md: Use const_1_operand for scale and + extend predicates. + * config/riscv/riscv-v.cc (expand_gather_scatter): Remove scale + and extension handling. + +2025-11-07 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-stmts.cc (vect_use_strided_gather_scatters_p): + Do not convert offset type. + +2025-11-07 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-data-refs.cc (struct gather_scatter_config): + Add scale. + (vect_gather_scatter_get_configs): Try various scales. + (vect_gather_scatter_fn_p): Add scale handling. + (vect_check_gather_scatter): Add scale parameter. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Ditto. + (vect_truncate_gather_scatter_offset): Ditto. + (vect_use_grouped_gather): Ditto. + (get_load_store_type): Ditto. + (vectorizable_store): Scale offset if necessary. + (vectorizable_load): Ditto. + * tree-vectorizer.h (struct vect_load_store_data): Add + supported_scale. + (vect_gather_scatter_fn_p): Add argument. + +2025-11-07 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-data-refs.cc (struct gather_scatter_config): New + struct to hold gather/scatter configurations. + (vect_gather_scatter_which_ifn): New function to determine which + IFN to use. + (vect_gather_scatter_get_configs): New function to enumerate all + target-supported configs. + (vect_gather_scatter_fn_p): Rework to use + vect_gather_scatter_get_configs and try sign-swapped offset. + (vect_check_gather_scatter): Use new supported offset vectype + argument. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Ditto. + (vect_truncate_gather_scatter_offset): Ditto. + (vect_use_grouped_gather): Ditto. + (get_load_store_type): Ditto. + (vectorizable_store): Convert to sign-swapped offset type if + needed. + (vectorizable_load): Ditto. + * tree-vectorizer.h (struct vect_load_store_data): Add + supported_offset_vectype. + (vect_gather_scatter_fn_p): Add argument. + +2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122588 + * tree-ssa-forwprop.cc (optimize_unreachable): Don't touch + if the condition was already true or false. + +2025-11-07 David Faust <david.faust@oracle.com> + + PR target/122140 + * config/bpf/bpf.cc (bpf_expand_cpymem): Fix off-by-one offset + in backwards loop. Improve src and dest addrs used for the + branch condition. + (emit_move_loop): Improve emitted set insns and remove the + explict temporary register. + +2025-11-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122577 + * tree-vect-stmts.cc (vectorizable_conversion): Allow conversions + from non-mode-precision types. + +2025-11-07 Pan Li <pan2.li@intel.com> + + * match.pd: Leverage usmul_widen_mult by bit_ior based + unsigned SAT_MUL pattern. + +2025-11-07 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*vwsll_sign_extend_<mode>): Add + pattern to combine vsext.vf2 and vslli.vi to vwsll.vi. + +2025-11-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122589 + PR middle-end/122594 + * gimple-iterator.cc (gsi_replace_with_seq): Instead of + removing the last stmt from the sequence with gsi_remove, + split it using gsi_split_seq_before. + (gsi_split_seq_before): Fix bogus documentation. + +2025-11-07 Alfie Richards <alfie.richards@arm.com> + + PR target/118328 + * config/aarch64/aarch64.cc (handle_aarch64_vector_pcs_attribute): + Add handling for ARM_PCS_PRESERVE_NONE. + (aarch64_pcs_exclusions): New definition. + (aarch64_gnu_attributes): Add entry for preserve_none and add + aarch64_pcs_exclusions to aarch64_vector_pcs entry. + (aarch64_preserve_none_abi): New function. + (aarch64_fntype_abi): Add handling for preserve_none. + (aarch64_reg_save_mode): Add handling for ARM_PCS_PRESERVE_NONE. + (aarch64_hard_regno_call_part_clobbered): Add handling for + ARM_PCS_PRESERVE_NONE. + (num_pcs_arg_regs): New helper function. + (get_pcs_arg_reg): New helper function. + (aarch64_function_ok_for_sibcall): Add handling for ARM_PCS_PRESERVE_NONE. + (aarch64_layout_arg): Add preserve_none argument lauout.. + (function_arg_preserve_none_regno_p): New helper function. + (aarch64_function_arg): Update to handle preserve_none. + (function_arg_preserve_none_regno_p): Update logic for preserve_none. + (aarch64_expand_builtin_va_start): Add preserve_none layout. + (aarch64_setup_incoming_varargs): Add preserve_none layout. + (aarch64_is_variant_pcs): Update for case of ARM_PCS_PRESERVE_NONE. + (aarch64_comp_type_attributes): Add preserve_none. + * config/aarch64/aarch64.h (NUM_PRESERVE_NONE_ARG_REGS): New macro. + (PRESERVE_NONE_REGISTERS): New macro. + (enum arm_pcs): Add ARM_PCS_PRESERVE_NONE. + * doc/extend.texi (preserve_none): Add docs for new attribute. + +2025-11-07 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*widen_mul_plus_vx_<mode>): Add + new pattern to combine the vwmaccu.vx. + * config/riscv/vector.md (*pred_widen_mul_plus_u_vx<mode>_undef): + Add undef define_insn for vmwaccu.vx emiting. + (@pred_widen_mul_plus_u_vx<mode>): Ditto. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_sign_extend_if_subreg_prom_p): Determine if the + current operand is SUBREG and if the source of SUBREG is + the sign-extended value. + (loongarch_expand_conditional_move): Optimize. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_canonicalize_int_order_test): Support GT GTU LT + and LTU. + (loongarch_extend_comparands): Expand the scope of op1 from + 0 to all immediate values. + * config/loongarch/loongarch.md + (*sge<u>_<X:mode><GPR:mode>): New template. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_legitimize_move): Optimize. + +2025-11-06 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/invoke.texi (AArch64 Options): Clean up description of + -mbranch-protection= argument. + (ARM Options): Likewise. + +2025-11-06 Alejandro Colomar <alx@kernel.org> + + * doc/extend.texi: Move _Countof under 'Syntax Extensions'. + +2025-11-06 Georg-Johann Lay <avr@gjlay.de> + + PR target/122516 + * config/avr/elf.h (SUPPORTS_SHF_GNU_RETAIN): Define if + HAVE_GAS_SHF_GNU_RETAIN. + +2025-11-06 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): Ignore + assignments of (const_int 0) to a register. They will get propagated + away. + +2025-11-06 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_output_addr_vec): Output + a valid opcode prior to the first gs() label provided: + - The code is compiled for an arch that has AVR-SD mcus, and + - the function has a "section" attribute, and + - the function has a gs() label addresses switch/case table. + +2025-11-06 Your Name <jlaw@ventanamicro.com> + + PR rtl-optimization/121136 + * config/riscv/riscv.md: Add define_insn to test the + upper bits of a register against zero using sltiu when + the bits are extracted via zero_extract or logial right shift. + Add 3->2 define_splits for gtu/leu cases testing upper bits + against zero. + +2025-11-06 Richard Biener <rguenther@suse.de> + + * tree-core.h (tree_ssa_name::active_iterated_stmt): Mark + GTY((skip(""))). + +2025-11-06 Richard Biener <rguenther@suse.de> + + * ssa-iterators.h (imm_use_iterator::name): Add. + (delink_imm_use): When in a FOR_EACH_IMM_USE_STMT iteration + enforce we only remove uses from the current stmt. + (end_imm_use_stmt_traverse): Reset current stmt. + (first_imm_use_stmt): Assert no FOR_EACH_IMM_USE_STMT on + var is in progress. Set the current stmt. + (next_imm_use_stmt): Set the current stmt. + (auto_end_imm_use_fast_traverse): New, lower iteration + depth upon destruction. + (first_readonly_imm_use): Bump the iteration depth. + * tree-core.h (tree_ssa_name::active_iterated_stmt, + tree_ssa_name::fast_iteration_depth): New members when + ENABLE_GIMPLE_CHECKING. + * tree-ssanames.cc (make_ssa_name_fn): Initialize + immediate use verifier bookkeeping members. + +2025-11-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122502 + * ssa-iterators.h (imm_use_iterator::iter_node): Remove. + (imm_use_iterator::next_stmt_use): New. + (next_readonly_imm_use): Adjust checking code. + (end_imm_use_stmt_traverse): Simplify. + (link_use_stmts_after): Likewise. Return the last use + with the same stmt. + (first_imm_use_stmt): Simplify. Set next_stmt_use. + (next_imm_use_stmt): Likewise. + (end_imm_use_on_stmt_p): Adjust. + +2025-11-06 Richard Biener <rguenther@suse.de> + + * doc/tree-ssa.texi: Update immediate use iterator + documentation. + * ssa-iterators.h: Likewise. + +2025-11-06 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/113632 + * range-op-mixed.h (operator_bitwise_xor): Relocate and adjust. + (operator_bitwise_xor::m_and, m_or, m_not): New. + * range-op.cc (operator_bitwise_xor::fold_range): New. + +2025-11-06 Xi Ruoyao <xry111@xry111.site> + + * config.gcc: Support --with-cmodel={medium,normal} and make + medium the default for LoongArch, define TARGET_DEFAULT_CMODEL + as the selected value. + * config/loongarch/loongarch-opts.cc: Use TARGET_DEFAULT_CMODEL + instead of hard coding CMODEL_NORMAL. + * doc/install.texi: Document that --with-cmodel= is supported + for LoongArch. + * doc/invoke.texi: Update the document about default code model + on LoongArch. + +2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121574 + * doc/invoke.texi: Document '-Wexpose-global-module-tu-local'. + +2025-11-05 Artemiy Volkov <artemiy.volkov@arm.com> + + * tree-ssa-forwprop.cc (simplify_vector_constructor): Support + vector constructor elements. + * tree-vect-generic.cc (ssa_uniform_vector_p): Make non-static and + move ... + * tree.cc (ssa_uniform_vector_p): ... here. + * tree.h (ssa_uniform_vector_p): Declare it. + +2025-11-05 Richard Biener <rguenther@suse.de> + + * tree-ssa-forwprop.cc (forward_propagate_addr_expr): + Use gather_imm_use_stmts instead of FOR_EACH_IMM_USE_STMT. + +2025-11-05 Richard Biener <rguenther@suse.de> + + * gimple.h (gimple::pad): Rename to ... + (gimple::ilf): ... this. + * ssa-iterators.h (gather_imm_use_stmts): Declare. + * tree-ssa-operands.cc (gather_imm_use_stmts): New function. + +2025-11-05 Richard Biener <rguenther@suse.de> + + * gimple-ssa-isolate-paths.cc (check_loadstore): Set + the volatile flag on the stmt manually. + (find_implicit_erroneous_behavior): Move code transform + outside of FOR_EACH_IMM_USE_STMT iteration. + +2025-11-05 Richard Biener <rguenther@suse.de> + + * tree-ssa-loop-niter.cc (dump_affine_iv): Use file, not + dump_file when printing. + (debug): New overload for affine_iv. + +2025-11-05 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.md (cntmap): Change to uppercase. + (popcount<GPR:mode>2): Modify to a post reload split. + +2025-11-04 Uros Bizjak <ubizjak@gmail.com> + + PR target/122390 + * config/i386/i386.md (*add<mode>3_carry_2): New insn pattern. + (*add<mode>3_carry_0_cc): Ditto. + (*add<mode>3_carry_0r_cc): Ditto. + (*sub<mode>3_carry_2): Ditto. + (*sub<mode>3_carry_0_cc): Ditto. + (*sub<mode>3_carry_0r_cc): Ditt. + +2025-11-04 Kees Cook <kees@kernel.org> + + * config/arc/builtins.def: Add ATTRS parameter to DEF_BUILTIN + macro calls. Mark mathematical builtins (FFS, FLS, NORM, NORMW, + SWAP) with attr_const, leave others as NULL_TREE. + * config/arc/arc.cc: Add support for builtin function attributes. + Create attr_const using tree_cons. Update DEF_BUILTIN macro to + pass ATTRS parameter to add_builtin_function. + +2025-11-04 Pan Li <pan2.li@intel.com> + + * match.pd: Add usmul_widen_mult helper and referenced by + min based unsigned SAT_MUL pattern. + +2025-11-04 Siddhesh Poyarekar <siddhesh@gotplt.org> + + PR lto/122515 + * lto-wrapper.cc (debug_objcopy): Set type of INOFF to int64_t. + (run_gcc): Set type of FILE_OFFSET to int64_t. + +2025-11-04 Kishan Parmar <kishan@linux.ibm.com> + + PR rtl-optimization/93738 + * simplify-rtx.cc (simplify_binary_operation_1): Canonicalize + SUBREG(LSHIFTRT) into LSHIFTRT(SUBREG) when valid. + +2025-11-04 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122544 + * diagnostics/paths.cc (event::meaning::maybe_get_verb_str): + Handle the new verbs. + * diagnostics/paths.h (event::meaning::verb): Add new values + for special control flow operations. + (event::meaning::meaning): Add ctor taking just a verb. + +2025-11-03 Uros Bizjak <ubizjak@gmail.com> + + PR target/122534 + * config/i386/i386.md (@test<mode>_ccno_1): + Use <general_szext_operand> as operand 1 predicate. + (testqi_ccz_1): Use general_operand as operand 1 predicate. + (*testdi_1): Use x86_64_szext_general_operand as operand 1 predicate. + (*testqi_1_maybe_si): Use general_operand as operand 1 predicate. + Add (n,*a) alternative to allow UV pairing for pentium processor. + (*test<mode>_1): Use <general_operand> as operand 1 predicate. + +2025-11-03 Sam James <sam@gentoo.org> + + * configure: Regenerate. + +2025-11-03 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122536 + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Fix + guard against variable bit extracts in recent change. + +2025-11-03 Thomas Schwinge <tschwinge@baylibre.com> + + PR ipa/122512 + * symtab.cc: Fix 'static_assert'. + +2025-11-03 Loeka Rogge <loeka@synopsys.com> + + * config/arc/simdext.md(movv2hi_insn): Change order for movv2hi + for big-endian. + +2025-11-03 Tobias Burnus <tburnus@baylibre.com> + + PR libgomp/122281 + PR middle-end/105001 + * gimple.cc (gimple_copy): Add missing unshare_expr for + GIMPLE_OMP_ATOMIC_LOAD and GIMPLE_OMP_ATOMIC_STORE. + +2025-11-03 Alfie Richards <alfie.richards@arm.com> + + PR c/122202 + * doc/extend.texi (target function attribute): Update to describe FMV + behaviour. + (target_version function attribute): New section. + (target_clones attribute): Update to descrbe new behaviour with + target_version. + (Function Multiversioning): Update to discuss both target_version and + target based FMV. + +2025-11-03 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.cc (riscv_flatten_aggregate_field): Skip + empty unions and zero-length arrays when flattening aggregate + fields for ABI classification. + (riscv_pass_aggregate_in_fpr_pair_p): Refactor to use separate + field parsing and emit ABI change warning for affected types. + (riscv_pass_aggregate_in_fpr_and_gpr_p): Likewise. + +2025-11-03 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-option-extensions.def (dit): New fmv feature. + (dpb): New fmv feature. + (dpb2): New fmv feature. + (memtag): Change to also define an FMV feature. + (ssbs): Change to also define an FMV feature. + (bti): New fmv feature. + * config/aarch64/aarch64.cc (FEAT_SSBS): Add macro. + (FEAT_MEMTAG): Ditto. + +2025-11-03 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (int_iterator ANY_ROUND): + Specify "flag_unsafe_math_optimizations" in the condition of the + UNSPEC_ROUND element. + (int_attr c_round): Remove. + (l<m_round>sfsi2, *l<m_round>sfsi2_2x, *l<m_round>sfsi2_scaled): + Remove " && <c_round>" from the conditions. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_modes_tieable_p): + Make MODE_FLOAT and MODE_INT tieable. + * config/loongarch/loongarch.md: Adjust constraints. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.md + (and_load_zero_extend<mode>): New combiner. + * config/loongarch/predicates.md + (mask_operand): New predicate. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md (lasx_xvpermi_q_<LASX:mode>): + Add new splitter for optimization. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch-protos.h + (loongarch_use_bstrins_bstrpick_for_and): New proto. + * config/loongarch/loongarch.cc + (loongarch_use_bstrins_bstrpick_for_and): Decide whether + to optimize. + (loongarch_rtx_costs): Adjust the cost of AND operation. + * config/loongarch/loongarch.md + (bstrins_bstrpick_for_and_imm<mode>): New insn_and_split. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_can_change_mode_class): Support for conversion + between scalar INT and scalar FP. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_rtx_costs): + Correct the cost of mulh.{w[u]|d[u]}. + +2025-11-03 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122475 + * tree-vect-loop.cc (vectorizable_reduction): Check for neutral_op. + +2025-11-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/90262 + * config/i386/i386-expand.cc (ix86_expand_unroll_movmem): New. + (ix86_expand_n_move_movmem): Likewise. + (ix86_expand_load_movmem): Likewise. + (ix86_expand_store_movmem): Likewise. + (ix86_expand_n_overlapping_move_movmem): Likewise. + (ix86_expand_less_move_movmem): Likewise. + (ix86_expand_movmem): Likewise. + * config/i386/i386-protos.h (ix86_expand_movmem): Likewise. + * config/i386/i386.md (movmem<mode>): Likewise. + +2025-11-03 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/52345 + * simplify-rtx.cc (simplify_relational_operation_1): Optimize boolean + IOR equality tests. + +2025-11-03 chenxiaolong <chenxiaolong@loongson.cn> + + * config/loongarch/lasx.md (vec_cast<mode>): New template + implemention. + (vec_insert_lo_<mode>): Dito. + (vec_insert_hi_<mode>): Dito. + * config/loongarch/lasxintrin.h (defined): Test for adding + the builtin function. + (__lasx_cast_128_s): Dito. + (__lasx_cast_128_d): Dito. + (__lasx_cast_128): Dito. + (__lasx_concat_128_s): Dito. + (__lasx_concat_128_d): Dito. + (__lasx_concat_128): Dito. + (__lasx_extract_128_lo_s): Dito. + (__lasx_extract_128_hi_s): Dito. + (__lasx_extract_128_lo_d): Dito. + (__lasx_extract_128_hi_d): Dito. + (__lasx_extract_128_lo): Dito. + (__lasx_extract_128_hi): Dito. + (__lasx_insert_128_lo_s): Dito. + (__lasx_insert_128_hi_s): Dito. + (__lasx_insert_128_lo_d): Dito. + (__lasx_insert_128_hi_d): Dito. + (__lasx_insert_128_lo): Dito. + (__lasx_insert_128_hi): Dito. + * config/loongarch/loongarch-builtins.cc + (CODE_FOR_lasx_extract_128_lo_s): Add builtins and register + icode. + (CODE_FOR_lasx_extract_128_hi_s): Dito. + (CODE_FOR_lasx_extract_128_lo_d): Dito. + (CODE_FOR_lasx_extract_128_hi_d): Dito. + (CODE_FOR_lasx_extract_128_lo): Dito. + (CODE_FOR_lasx_extract_128_hi): Dito. + (CODE_FOR_lasx_insert_128_lo_s): Dito. + (CODE_FOR_lasx_insert_128_hi_s): Dito. + (CODE_FOR_lasx_insert_128_lo_d): Dito. + (CODE_FOR_lasx_insert_128_hi_d): Dito. + (CODE_FOR_lasx_insert_128_lo): Dito. + (CODE_FOR_lasx_insert_128_hi): Dito. + (CODE_FOR_lasx_concat_128_s): Dito. + (CODE_FOR_lasx_concat_128_d): Dito. + (CODE_FOR_lasx_concat_128): Dito. + (CODE_FOR_lasx_cast_128_s): Dito. + (CODE_FOR_lasx_cast_128_d): Dito. + (CODE_FOR_lasx_cast_128): Dito. + (loongarch_expand_builtin_direct): For the newly added + insertion or extraction, construct the parallel parameter + corresponding to the operand. + * config/loongarch/loongarch-c.cc + (loongarch_update_cpp_builtins): Define + __loongarch_asx_sx_conv. + * config/loongarch/loongarch-ftypes.def: Declare the type + of the builtin function. + * doc/extend.texi: Add document description. + +2025-11-03 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_move_integer): + No new virtual register is allocated during immediate load. + +2025-11-03 Lulu Cheng <chenglulu@loongson.cn> + + PR target/122477 + * config/loongarch/loongarch.cc + (loongarch_split_reduction): Added handling of scalar mode. + +2025-11-02 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/bitmanip.md (rotrsi3): Use the sign extended form + for 32 bit rotates on TARGET_64BIT, even for constant counts. + * config/riscv/thead.md (th_srrisi3_extended): New pattern. + (th_srri<mode>3): Adjust formatting. + +2025-11-02 Uros Bizjak <ubizjak@gmail.com> + + PR target/122518 + * config/i386/i386.cc (ix86_canonicalize_comparison): Convert + (compare (minus (a b)) a) to (compare (a b)) to + match *sub<mode>_3 pattern. + +2025-11-02 Georg-Johann Lay <avr@gjlay.de> + + PR target/122527 + * config/avr/avr.cc (avr_load_libgcc_p): Return false if + the address-space is not ADDR_SPACE_FLASH. + (avr_out_lpm_no_lpmx [addr=REG]): Handle sizes of 3 and 4 bytes. + +2025-11-02 Georg-Johann Lay <avr@gjlay.de> + + PR tree-optimization/118012 + PR tree-optimization/122505 + * config/avr/avr.md (mulpsi3): Also allow the insn condition + in the case where avropt_pr118012 && !AVR_TINY. + (*mulpsi3): Handle split for the !AVR_HAVE_MUL case. + (*mulpsi3-nomul.libgcc_split, *mulpsi3-nomul.libgcc): New insns. + +2025-11-02 Richard Biener <rguenther@suse.de> + + * doc/tree-ssa.texi: Remove outdated info on FOR_EACH_IMM_USE_STMT + iteration, clarify SSA operand parts. + * ssa-iterators.h: Update toplevel comment. + +2025-11-02 Sam James <sam@gentoo.org> + + * .simplify-rtx.cc.swo: Removed. + +2025-11-01 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/67731 + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): + Handle IOR of single bit bitfields from the same object. + +2025-11-01 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-protos.h (has_vtype_op): Add prototype. + (mask_agnostic_p, get_avl, vsetvl_insn_p): Likewise. + * config/riscv/riscv-vsetvl.cc (has_vtype_op): No longer static. + (vsetvl_insn_p, get_avl_mask_agnostic_p): Likewise. + * config/riscv/riscv.cc (struct last_vcofnig): New structure. + (clear_vconfig): New function. + (compatible_with_last_vconfig, riscv_sched_init): Likewise. + (riscv_sched_reorder): Likewise. + (TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Define. + * config/riscv/vector.md ("*mov<mode>"): Set has_vtype_op, has_vl_op + attributes. + * .simplify-rtx.cc.swo: New file. + +2025-11-01 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122321 + * lra-constraints.cc (update_equiv): Make sure REGNO is in + ira_reg_equiv before trying to update ira_reg_equiv. + +2025-11-01 Martin Uecker <uecker@tugraz.at> + + * doc/extend.texi: Document new extension. + +2025-11-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (negsf2): + Add another insn pattern that is valid when TARGET_DENSITY is + enabled and both the source and destination are address registers. + +2025-11-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md + (c_enum "unspec", int_iterator ANY_ROUND): Add UNSPEC_ROUND. + (int_attr m_round): Add a pair of UNSPEC_ROUND and "round". + (int_attr c_round): New integer iterator attribute, that expands + to "flag_unsafe_math_optimizations" in the case of UNSPEC_ROUND, + and to "1" otherwise. + (l<m_round>sfsi2, *l<m_round>sfsi2_2x, *l<m_round>sfsi2_scaled): + Append " && <c_round>" to the conditions. + +2025-11-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (*fix<s_fix>_truncsfsi2_scaled, + *float<s_float>sisf2_scaled, *l<m_round>sfsi2_scaled): + Remove 'F'-constraint. + +2025-11-01 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR ipa/122512 + * cgraph.h (enum toplevel_type): Add TOPLEVEL_MAX. Add comment + about keeping toplevel_type_names in sync. + * symtab.cc (symtab_type_names): Rename to ... + (toplevel_type_names): Add new types and add an assert about + the size. + (symtab_node::get_symtab_type_string): Use toplevel_type_names + instead of symtab_type_names. + (symtab_node::dump_base): Likewise. + +2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122437 + * fold-const.h (div_if_zero_remainder): Remove. + +2025-10-31 Tamar Christina <tamar.christina@arm.com> + + PR target/121853 + * config/aarch64/aarch64-simd.md (extendbfsf2): New. + +2025-10-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122502 + * tree-scalar-evolution.cc (final_value_replacement_loop): + Avoid folding from within FOR_EACH_IMM_USE_STMT due to active + ranger. + +2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122437 + * fold-const.cc (div_if_zero_remainder): Remove. + +2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122497 + * tree-scalar-evolution.cc (final_value_replacement_loop): Call replace_uses_by + only after the replacement statement was created. + +2025-10-31 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/lasx.md: Support. + * config/loongarch/loongarch.cc + (loongarch_expand_vec_widen_hilo): Remove unused code. + * config/loongarch/lsx.md: Support. + +2025-10-31 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/lasx.md (ILASX_HB): Move to ... + * config/loongarch/lsx.md (ILSX_HB): Move to ... + * config/loongarch/simd.md (ILSX_HB): ... here. + (ILASX_HB): ... here. + (IVEC_HB): New iterator. + (WVEC_QUARTER): New attr. + (wvec_quarter): Likewise. + (simdfmt_qw): Likewise. + (<su>dot_prod<wvec_quarter><mode>): New template. + +2025-10-31 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/lasx.md (hi_lo): Move to ... + * config/loongarch/simd.md (hi_lo): ... here. + * config/loongarch/loongarch.cc + (loongarch_expand_vec_widen_hilo): Add 128-bit data processing. + * config/loongarch/lsx.md + (vec_widen_<su><optab>_<hi_lo>_<mode>): New define_expand. + (vec_widen_<su>mult_<hi_lo>_<mode>): Likewise. + +2025-10-31 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/lasx.md (vec_widen_<su>add_hi_<mode>): + Move. + (vec_widen_<su>add_lo_<mode>): Move. + (vec_widen_<su>sub_hi_<mode>): Move. + (vec_widen_<su>sub_lo_<mode>): Move. + (vec_widen_<su>mult_hi_<mode>): Move. + (vec_widen_<su>mult_lo_<mode>): Move. + (hi_lo): New define_int_attr. + (vec_widen_<su><optab>_<hi_lo>_<mode>): New define_expand. + (vec_widen_<su>mult_<hi_lo>_<mode>): Likewise. + * config/loongarch/loongarch-protos.h + (loongarch_expand_vec_widen_hilo): Modify the function + parameter list. + * config/loongarch/loongarch.cc + (loongarch_expand_vec_widen_hilo): Optimized. + +2025-10-30 David Faust <david.faust@oracle.com> + + PR debug/122248 + * dwarf2out.cc (gen_btf_tag_dies): Always replace an existing + AT_GNU_annotation on the target die. + +2025-10-30 David Faust <david.faust@oracle.com> + + * btfout.cc (btf_add_used_type_1): Do not consider creating + fixups at typedefs. + +2025-10-30 Michal Jires <mjires@suse.cz> + + * lto-cgraph.cc (output_symtab): Remove asm_nodes_out. + * lto-streamer-out.cc (lto_output_toplevel_asms): Use + partitioning. + (create_order_remap): Remove asm_nodes_out. + (lto_output): In LGEN add asm_nodes into partition. + * lto-streamer.h (lto_output_toplevel_asms): Add encoder. + +2025-10-30 Michal Jires <mjires@suse.cz> + + * lto-cgraph.cc (compute_ltrans_boundary): Add asm_node. + +2025-10-30 Michal Jires <mjires@suse.cz> + + * ipa-icf.cc (sem_item_optimizer::write_summary): Use + toplevel_node. + (sem_item_optimizer::read_section): Likewise. + * ipa-modref.cc (modref_write): Likewise. + * ipa-prop.cc (ipa_write_return_summaries): Likewise. + (ipcp_write_transformation_summaries): Likewise. + * ipa-reference.cc (ipa_reference_write_optimization_summary): + Likewise. + * lto-cgraph.cc (lto_symtab_encoder_new): Likewise. + (lto_symtab_encoder_encode): Likewise. + (lto_symtab_encoder_delete_node): Likewise. + (lto_symtab_encoder_in_partition_p): Likewise. + (lto_set_symtab_encoder_in_partition): Likewise. + (output_refs): Likewise. + (compute_ltrans_boundary): Likewise. + (output_symtab): Likewise. + (output_cgraph_opt_summary): Likewise. + * lto-streamer-out.cc (lto_output): Likewise. + (produce_symtab): Likewise. + (produce_symtab_extension): Likewise. + * lto-streamer.h (struct lto_encoder_entry): Likewise. + (struct lto_symtab_encoder_d): Likewise. + (lto_symtab_encoder_encode): Likewise. + (lto_symtab_encoder_delete_node): Likewise. + (lto_symtab_encoder_in_partition_p): Likewise. + (lto_symtab_encoder_lookup): Likewise. + (lsei_next): Likewise. + (lsei_varpool_node): Likewise. + +2025-10-30 Michal Jires <mjires@suse.cz> + + * cgraph.h (enum symtab_type): Replace with toplevel_type. + (enum toplevel_type): New. + (struct toplevel_node): New. + (struct asm_node): Inherits from toplevel_node. + (test): New. + (symbol_table::finalize_toplevel_asm): Use constructor. + * coretypes.h (struct toplevel_node): New. + (struct asm_node): New. + * lto-streamer-in.cc (lto_input_toplevel_asms): Add + lto_file_data. + +2025-10-30 Michal Jires <mjires@suse.cz> + + * cgraph.cc (cgraph_node::release_body): Keep lto_file_data. + (cgraph_node::remove): likewise. + * lto-section-in.cc (lto_free_function_in_decl_state_for_node): + likewise. + * varpool.cc (varpool_node::remove): likewise. + +2025-10-30 Qing Zhao <qing.zhao@oracle.com> + + * doc/extend.texi: Clarification when the counted_by attribute is applied + on a void pointer. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/116075 + * fold-const-call.cc (fold_const_vec_shl_insert): New function. + (fold_const_call): Call fold_const_vec_shl_insert for CFN_VEC_SHL_INSERT. + * match.pd (`VEC_SHL_INSERT (dup (A), A)`): New pattern. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122247 + * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow phi node for the usage + if the usage of the phi result is just the "same" as the original clobber. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122247 + * tree-ssa-forwprop.cc (do_simple_agr_dse): Allow + use to be a clobber of the same kind to the same lhs. + +2025-10-30 Robin Dapp <rdapp@ventanamicro.com> + + * tree-ssa-loop-niter.cc (shifted_range_nonzero_p): New + function. + (number_of_iterations_cltz): Call new function. + * tree-ssa-loop.cc (pass_scev_cprop::execute): Enable ranger. + +2025-10-30 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/122445 + * config/riscv/riscv-avlprop.cc (pass_avlprop::get_vlmax_ta_preferred_avl): + Scale AVL of subreg uses. + +2025-10-30 Artemiy Volkov <artemiy.volkov@arm.com> + + PR tree-optimization/122478 + * match.pd: Fix the view_convert (BIT_FIELD_REF) pattern. + +2025-10-30 Richard Biener <rguenther@suse.de> + + * config/i386/i386-options.cc (ix86_option_override_internal): + Fix check during opts->x_ix86_move_max initialization. + +2025-10-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR rtl-optimization/121198 + * lra-constraints.cc (process_alt_operands): Compute least upper + bound of all register classes over all required registers in + order to determine register class for a hard register constraint. + +2025-10-30 Richard Biener <rguenther@suse.de> + Eric Botcazou <ebotcazou@adacore.com> + + * tree-vect-slp.cc (vect_get_operand_map): Handle commutative + operands when swapping is requested. + (vect_build_slp_tree_1): Allow STMT_VINFO_REDUC_IDX differences + when operand swapping makes them match and request swapping. + (vect_build_slp_instance): Indicate we have successfully + discovered a SLP reduction group. + +2025-10-30 Uros Bizjak <ubizjak@gmail.com> + + PR target/116815 + * config/i386/i386.md (ovf_add_cmp): New code attribute. + (udf_sub_cmp): Ditto. + (ovf_comm): New int iterator. + (*plus_within_<code><mode>3_<ovf_comm>): New insn and split pattern. + (*minus_within_<code><mode>3): Ditto. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gimple-fold.cc (gimple_fold_builtin_assume_aligned): Remove. + (gimple_fold_builtin): Don't fold __builtin_assume_aligned + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + Revert: + 2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/107389 + PR tree-optimization/122086 + * tree-ssa-forwprop.cc (forwprop_may_propagate_copy): New function. + (pass_forwprop::execute): Use forwprop_may_propagate_copy + instead of may_propagate_copy. + +2025-10-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * tree-vect-slp.cc (vect_optimize_slp_pass::is_compatible_layout): + New overload for checking a whole partition. + (vect_optimize_slp_pass::legitimize): New function trying + a single layout for all partitions for now. + (vect_optimize_slp_pass::run): Try legitimizing to a single + layout before propagating. + (vect_slp_analyze_operations): For dumping deal with + SLP_TREE_SCALAR_STMTS being empty or element zero being NULL. + +2025-10-30 liuhongt <hongtao.liu@intel.com> + + PR target/122457 + * config/i386/sse.md (VI2_AVX10_2): New mode iterator. + (usdot_prod<sseunpackmodelower><mode>): Use VI2_AVX10_2 + instead of VI2_AVX512F. + (udot_prod<sseunpackmodelower><mode>): Ditto. + +2025-10-30 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md (fnma<mode>4): Remove. + * config/loongarch/lsx.md (fnma<mode>4): Remove. + * config/loongarch/simd.md (fnma<mode>4): Simplify and correct. + +2025-10-30 Jinyang He <hejinyang@loongson.cn> + Peng Fan <fanpeng@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_expand_conditional_move): Only allow valid binary + op when optimize conditional move. + +2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + PR target/116662 + * config/riscv/riscv.cc (riscv_option_override): Override + default value for destructive interference size. + +2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + PR target/116662 + * config/riscv/riscv.cc (riscv_option_override): Apply correct version + of the patch. + +2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + PR target/116662 + * config/riscv/riscv.cc (riscv_option_override): Apply correct version + of the patch. + +2025-10-29 Jeff Law <jlaw@ventanamicro.com> + + PR target/116662 + * config/riscv/riscv.cc (riscv_option_override): Override + default value for destructive interference size. + +2025-10-29 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/91191 + * gimple-range-op.cc (gimple_range_op_handler): Descend one + operand lower for a VIEW_CONVERT_EXPR. + * range-op-mixed.h (class operator_view): New. + * range-op.cc (range_op_table): Add VIEW_CONVERT_EXPR case. + (operator_view::fold_range): New. + (operator_view::op1_range): New. + (operator_view::update_bitmask): New. + +2025-10-29 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_analyze_slp): Mark stmts in BB roots + as released after vect_build_slp_instance. + (vect_build_slp_instance): Release scalar_stmts when exiting + early. + +2025-10-29 Lulu Cheng <chenglulu@loongson.cn> + + PR target/122097 + * config/loongarch/loongarch.cc + (loongarch_const_vector_bitimm_set_p): Add support for vector float. + (loongarch_const_vector_bitimm_clr_p): Likewise. + (loongarch_print_operand): Likewise. + * config/loongarch/simd.md (and<mode>3): Likewise. + +2025-10-29 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/lasx.md (xor<mode>3): Delete. + (ior<mode>3): Delete. + (and<mode>3): Delete. + * config/loongarch/lsx.md (xor<mode>3): Delete. + (ior<mode>3): Delete. + (and<mode>3): Delete. + * config/loongarch/simd.md (xor<mode>3): Define. + (ior<mode>3): Likewise. + (and<mode>3): Likewise. + +2025-10-29 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/genopts/loongarch.opt.in (-mbreak-code=): + New. + * config/loongarch/loongarch.opt: Regenerate. + * config/loongarch/loongarch.md (trap): Separate to a + define_insn and a define_expand which takes la_break_code. + * doc/invoke.texi (-mbreak-code=): Document. + * config/loongarch/loongarch.opt.urls: Regenerate. + +2025-10-28 Richard Biener <rguenther@suse.de> + + * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer): + Avoid explicit LOOP_VINFO_IV_EXIT reference. + +2025-10-28 Artemiy Volkov <artemiy.volkov@arm.com> + + * match.pd: Add pattern to simplify view_convert (BIT_FIELD_REF). + +2025-10-28 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.cc (riscv_get_vls_cc_attr): Fix error message + parameter order and add check_only condition. Improve diagnostic + message formatting with proper quoting. + (riscv_handle_rvv_vls_cc_attribute): Anonymize unused node parameter. + +2025-10-28 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/122065 + * tree-vect-generic.cc (add_rshift): Update name and add code parameter. + (add_shift): Update name. + (expand_vector_mult): New lowering for MULT_EXPR. + (expand_vector_divmod): Use updated function name. + (expand_vector_operation): Use updated function name. + +2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * expr.cc (expr_has_boolean_range): New function. + (expand_expr_real_2): Use expr_has_boolean_range instead of + gimple_zero_one_valued_p. + * tree-ssanames.cc (ssa_name_has_boolean_range): Update to take + a gimple STMT. + * tree-ssanames.h (ssa_name_has_boolean_range): Update for the new + argument and default to nullptr. + +2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/105749 + PR tree-optimization/80635 + * match.pd (`VCE<bool>(zero_one_valued_p) ==\!= 0`): New pattern. + +2025-10-27 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122408 + * tree-vect-slp-patterns.cc (vect_validate_multiplication): Cleanup and + document interface. + (complex_mul_pattern::matches, complex_fms_pattern::matches): Update to + new interface. + +2025-10-27 Andrew Stubbs <ams@baylibre.com> + + PR tree-optimization/104116 + * config/gcn/gcn-valu.md (abs<mode>2): New define_expand for + integer vector modes. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR middle-end/122325 + * common.opt (flag_default_complex_method): Remove. + * opts.cc (init_options_struct): Default to fortran rules + for complex evaluations. + (finish_options): Remove (re-)instantiating of the frontend + default of the complex evaluation method. + +2025-10-27 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-protos.h (riscv_init_cumulative_args): Add + bool parameter. + * config/riscv/riscv.h (enum riscv_cc): Add RISCV_CC_VLS_V_32, + RISCV_CC_VLS_V_64, RISCV_CC_VLS_V_128, RISCV_CC_VLS_V_256, + RISCV_CC_VLS_V_512, RISCV_CC_VLS_V_1024, RISCV_CC_VLS_V_2048, + RISCV_CC_VLS_V_4096, RISCV_CC_VLS_V_8192, RISCV_CC_VLS_V_16384. + (CUMULATIVE_ARGS): Add abi_vlen field. + * config/riscv/riscv.cc (riscv_handle_rvv_vls_cc_attribute): New + function. + (riscv_gnu_attributes): Add vls_cc attribute entry. + (riscv_attributes): Add riscv_vls_cc attribute entry. + (riscv_flatten_aggregate_field): Add vls_p and abi_vlen parameters + to handle VLS vector types. + (riscv_flatten_aggregate_argument): Update call to + riscv_flatten_aggregate_field. + (riscv_get_vector_arg): Add vls_p parameter for VLS handling. + (riscv_vls_cc_p): New function. + (riscv_get_cc_abi_vlen): New function. + (riscv_valid_abi_vlen_vls_cc_p): New function. + (riscv_get_riscv_cc_by_abi_vlen): New function. + (riscv_get_vls_container_type): New function. + (riscv_pass_vls_in_vr): New function. + (riscv_pass_aggregate_in_vr): New function. + (riscv_get_arg_info): Add VLS calling convention handling. + (riscv_function_arg_advance): Update for VLS calling convention. + (riscv_return_in_memory): Add fntype parameter and initialize + cumulative args properly. + (riscv_v_abi): Add abi parameter. + (riscv_get_vls_cc_attr): New function. + (riscv_vls_cc_function_abi): New function. + (riscv_fntype_abi): Add VLS calling convention detection. + (riscv_asm_output_variant_cc): Update for VLS calling convention. + +2025-10-27 Jeff Law <jlaw@ventanamicro.com> + + PR target/64345 + PR tree-optimization/80770 + * config/riscv/bitmanip.md (<optab>_not_const<mode>): Turn into a + peephole2 to avoid matching prior to combine. + * ifcvt.cc (noce_try_sign_bit_splat): When costs are equal steer + towards an AND based sequence. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122419 + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Only + skip noop conversions. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122435 + * tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): + Also match noop conversions when detecting redundant stores. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_rtx_costs): + Ignore the cost impact of SIGN_EXTEND/ZERO_EXTEND. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.md (both_non_zero): New combiner. + (both_non_zero_subreg): Ditto. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.md + (sign_extend_ashift<GPR:mode><SHORT:mode>): New combiner. + +2025-10-27 Kito Cheng <kito.cheng@sifive.com> + + * function-abi.h (NUM_ABI_IDS): Increase from 8 to 12. + +2025-10-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (one_cmplsi2): + Rearrange back as an expand pattern. + +2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/107389 + PR tree-optimization/122086 + * tree-ssa-forwprop.cc (forwprop_may_propagate_copy): New function. + (pass_forwprop::execute): Use forwprop_may_propagate_copy + instead of may_propagate_copy. + +2025-10-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/122270 + * config/riscv/riscv-vector-builtins-bases.cc (vset::fold): Use the + unshare_expr for the statement that will be added seperately rather + the one which will be used for the replacement. + +2025-10-26 James K. Lowden <jklowden@cobolworx.com> + + * doc/install.texi: Add libxml2 dependency for COBOL + library. Clarify 128-bit numeric dependency. + +2025-10-26 Gerald Pfeifer <gerald@pfeifer.com> + + * poly-int.h: Change struct poly_int to class poly_int. + +2025-10-26 LIU Hao <lh_mouse@126.com> + + PR target/119079 + * config/i386/i386.md: Use `movsxd` to perform SI-to-DI extension in Intel + syntax. + +2025-10-26 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv.cc (riscv_legitimize_move): Append extend. + +2025-10-26 Osama Abdelkader <osama.abdelkader@gmail.com> + + * wide-int.h: Fix typo "accomodate" to "accommodate" in comment. + * value-range-storage.h: Likewise. + * tree-vectorizer.h (dr_set_safe_speculative_read_required): + Fix duplicate "the the" to "the" in comment. + +2025-10-25 Sam James <sam@gentoo.org> + + * doc/extend.texi (nocf_check): Fix syntax errors in example. + +2025-10-25 Jiahao Xu <xujiahao@loongson.cn> + + * config/loongarch/lasx.md (vec_extract<mode><lasxhalf>): New define_expand. + (vec_extract_lo_<mode>): New define_insn_and_split. + (vec_extract_hi_<mode>): New define_insn. + * config/loongarch/loongarch-protos.h (loongarch_check_vect_par_cnst_half) + New function prototype. + * config/loongarch/loongarch.cc (loongarch_split_reduction): + Implement TARGET_VECTORIZE_SPLIT_REDUCTION. + (loongarch_check_vect_par_cnst_half): New function. + * config/loongarch/predicates.md + (vect_par_cnst_low_half): New predicate. + (vect_par_cnst_high_half): New predicate. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/114025 + * gimple-range-fold.cc (fold_using_range::condexpr_adjust): Handle + the same ssa_name in the condition and the COND_EXPR better. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + * range-op.cc (operator_bitwise_and::wi_fold): Split signed + operations crossing zero into 2 operations. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/118254 + PR tree-optimization/114331 + * range-op.cc (operator_cast::fold_range): When VARYING is + reached, update the bitmask if we reach VARYING. + (operator_cast::op1_range): For truncating casts, create a + bitmask bit in LHS. + +2025-10-24 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (call_internal, call_value_internal, + sibcall_internal, sibcall_value_internal): Remove 'n'-constraint. + +2025-10-24 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (*addsubx, *subsi3_from_const, + *xtensa_clamps, *andsi3_const_pow2_minus_one, + *andsi3_const_negative_pow2, *andsi3_const_shifted_mask, + *splice_bits, extvsi_internal, extzvsi_internal, + *extzvsi-1bit_ashlsi3, *extzvsi-1bit_addsubx, insvsi, *lsiu, *ssiu, + *lsip, *ssip, *shift_per_byte_omit_AND_0, *shift_per_byte_omit_AND_1, + *shlrd_const, *shlrd_per_byte_omit_AND, *masktrue_const_bitcmpl, + *masktrue_const_pow2_minus_one, *masktrue_const_negative_pow2, + *masktrue_const_shifted_mask, call_internal, call_value_internal, + sibcall_internal, sibcall_value_internal, entry, + *eqne_zero_masked_bits, *eqne_in_range): Remove 'i'-constraint. + +2025-10-24 Josef Melcr <jmelcr02@gmail.com> + + PR middle-end/122392 + * attr-callback.cc (callback_build_attr): Remove erroneous + annotation. + +2025-10-24 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): SLP-ify reduction + operation processing a bit more. + +2025-10-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122406 + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Create + the SLP nodes for the conversions around the reduction + operation if required. + +2025-10-24 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/121452 + * omp-low.cc (check_omp_nesting_restrictions): Accept an + OMP_STRUCTURED_BLOCK in a collapsed simd region and in an ordered loop. + +2025-10-24 Pengfei Li <Pengfei.Li2@arm.com> + + * match.pd: Fold VEC_PERM_EXPR chains implementing vector + concat-and-extract. + +2025-10-24 Olivier Hainque <hainque@adacore.com> + + * config/rs6000/vxworks.h (SET_CMODEL): Undefine before + (re)defining. + +2025-10-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * match.pd (`(type1)x CMP CST1 ? (type2)x : CST2`): Better handling + of `((signed)x) < 0`. + +2025-10-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/101024 + * tree-ssa-phiopt.cc (match_simplify_replacement): Special + case fp `a CMP b ? a : b` when not creating a min/max. + (strip_bit_not): Remove. + (invert_minmax_code): Remove. + (minmax_replacement): Remove. + (pass_phiopt::execute): Update pass comment. + Don't call minmax_replacement. + +2025-10-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/101024 + * fold-const.cc (minmax_from_comparison): New version that takes widest_int + instead of tree. + (minmax_from_comparison): Call minmax_from_comparison for integer cst case. + * fold-const.h (minmax_from_comparison): New declaration. + * match.pd (`((signed)a </>= 0) ? min/max (a, c) : b`): New pattern. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Add + __HAVE_FUNCTION_MULTI_VERSIONING macro. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc (dispatch_function_versions): Remove + unnecessary sorting and data structure. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + PR target/122190 + * config/aarch64/aarch64.cc (compare_feature_masks): Fix version rules. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc (aarch64_generate_version_dispatcher_body): + Dump function versions and the ordering. + +2025-10-23 zhaozhou <zhaozhou@loongson.cn> + + * match.pd: Add new pattern for round. + +2025-10-23 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_loop_vec_info::slp_unrolling_factor): Remove. + (LOOP_VINFO_SLP_UNROLLING_FACTOR): Likewise. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Adjust. + (vect_analyze_loop_2): Likewise. + * tree-vect-slp.cc (vect_make_slp_decision): Set + LOOP_VINFO_VECT_FACTOR directly. + +2025-10-23 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_2): Move vect_optimize_slp + after applying suggested_unroll_factor. + +2025-10-23 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_2): Deal with NULL + element in SLP_TREE_SCALAR_STMTS. + +2025-10-23 liuhongt <hongtao.liu@intel.com> + + PR target/101639 + * config/i386/sse.md + (VI_AVX): New mode iterator. + (VI_AVX_CMP): Ditto. + (ssebytemode): Add V16HI, V32QI, V16QI. + (reduc_sbool_and_scal_<mode>): New expander. + (reduc_sbool_ior_scal_<mode>): Ditto. + (reduc_sbool_xor_scal_<mode>): Ditto. + (*eq<mode>3_2_negate): New pre_reload splitter. + (*ptest<mode>_ccz): Ditto. + +2025-10-23 liuhongt <hongtao.liu@intel.com> + + PR target/101639 + * config/i386/sse.md + (reduc_sbool_and_scal_<mode>): New expander. + (reduc_sbool_ior_scal_<mode>): Ditto. + (reduc_sbool_xor_scal_<mode>): Ditto. + +2025-10-22 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use + HOST_WIDE_INT_0U and HOST_WIDE_INT_M1U to initialize unsigned + HOST_WIDE_INT. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-simd.md (reduc_sbool_and_scal_<mode>, + reduc_sbool_ior_scal_<mode>, reduc_sbool_xor_scal_<mode>): Use SVE if + available. + * config/aarch64/aarch64-sve.md (*cmp<cmp_op><mode>_ptest): Rename ... + (@aarch64_pred_cmp<cmp_op><mode>_ptest): ... To this. + (reduc_sbool_xor_scal_<mode>): Rename ... + (@reduc_sbool_xor_scal_<mode>): ... To this. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-simd.md (reduc_sbool_and_scal_<mode>, + reduc_sbool_ior_scal_<mode>, reduc_sbool_xor_scal_<mode>): New. + * config/aarch64/iterators.md (VALLI): New. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-sve.md (reduc_sbool_and_scal_<mode>, + reduc_sbool_ior_scal_<mode>, reduc_sbool_xor_scal_<mode>): New. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * tree-vect-loop.cc (vectorizable_reduction): Don't always require + IFN_VEC_SHL_INSERT when using reduc sbool optabs. + +2025-10-22 Srinath Parvathaneni <srinath.parvathaneni@arm.com> + + * config/aarch64/aarch64.opt.urls: Regenerate. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122364 + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Re-try + linearization on a conversion source. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122370 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Also update compute_vectype when demoting masks to an + integer vector. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122371 + * tree-vect-loop.cc (vectorize_fold_left_reduction): Get + to the scalar def to replace via the scalar PHI backedge def. + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Do not + re-associate to for a reduction chain if a fold-left + reduction is required. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122365 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Convert all inputs. Use the proper vector element sizes + for the elementwise reduction. + +2025-10-22 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/cpuinfo.h + (get_intel_cpu): Handle Nova Lake. + * common/config/i386/i386-common.cc (processor_name): + Add Nova Lake. + (processor_alias_table): Ditto. + * common/config/i386/i386-cpuinfo.h (enum processor_types): + Add INTEL_COREI7_NOVALAKE. + * config.gcc: Add -march=novalake. + * config/i386/driver-i386.cc (host_detect_local_cpu): Handle + novalake. + * config/i386/i386-c.cc (ix86_target_macros_internal): Ditto. + * config/i386/i386-options.cc (processor_cost_table): Ditto. + (m_NOVALAKE): New. + (m_CORE_HYBRID): Add novalake. + * config/i386/i386.h (enum processor_type): Ditto. + * doc/extend.texi: Ditto. + * doc/invoke.texi: Ditto. + +2025-10-22 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/driver-i386.cc (host_detect_local_cpu): Correct + the logic for unknown model number cpu guess value. + +2025-10-22 liuhongt <hongtao.liu@intel.com> + + PR target/122320 + * config/i386/sse.md (*<avx512>_cmp<mode>3_dup_op): New define_insn_and_split. + +2025-10-22 Antoni Boucher <bouanto@zoho.com> + + * config/i386/i386-jit.cc: Mark new float types as supported. + +2025-10-21 Antoni Boucher <bouanto@zoho.com> + + * config.gcc (jit_target_objs): Don't set this variable since + the object files don't exist. + +2025-10-21 Roger Sayle <roger@nextmovesoftware.com> + + * config/i386/i386-features.cc (timode_concatdi_p): New + function to recognize the various variants of *concatditi3_[1-7]. + (scalar_chain::add_insn): Like VEC_SELECT, ZERO_EXTEND and + timode_concatdi_p instructions don't require their input + operands to be converted (to TImode). + (timode_scalar_chain::compute_convert_gain): Split/clone XOR and + IOR cases from AND case, to handle timode_concatdi_p costs. + <case PLUS>: Handle timode_concatdi_p conversion costs. + <case ZERO_EXTEND>: Provide costs of DImode to TImode extension. + (timode_convert_concatdi): Helper function to transform + a *concatditi3 instruction into a vec_concatv2di instruction. + (timode_scalar_chain::convert_insn): Split/clone XOR and IOR + cases from ANS case, to handle timode_concatdi_p using the new + timode_convert_concatdi helper function. + <case ZERO_EXTEND>: Convert zero_extendditi2 to *vec_concatv2di_0. + <case PLUS>: Handle timode_concatdi_p using the new + timode_convert_concatdi helper function. + (timode_scalar_to_vector_candidate_p): Support timode_concatdi_p + instructions in IOR, XOR and PLUS cases. + <case ZERO_EXTEND>: Consider zero extension of a register from + DImode to TImode to be a candidate. + +2025-10-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): When + there's no natural reduction chain see if vect_slp_linearize_chain + can recover one and built the SLP instance manually in that + case. + (vect_schedule_slp): Deal with NULL lanes when looking for + stores to remove. + * tree-vect-loop.cc (vect_transform_cycle_phi): Dump when we + are successfully transforming a reduction chain. + +2025-10-21 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_create_partial_epilog): Pun back + to the requested type if necessary. + +2025-10-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/95699 + PR tree-optimization/101024 + PR tree-optimization/110068 + * match.pd (`(type1)x CMP CST1 ? (type2)x : CST2`): Treat + `(signed)x </>= 0` as `x >=/< SIGNED_TYPE_MIN` + +2025-10-21 Olivier Hainque <hainque@adacore.com> + + * config/rs6000/vxworks.h (ASM_PREFERRED_EH_DATA_FORMAT): + Redefine. + +2025-10-21 Olivier Hainque <hainque@adacore.com> + + * config/vxworks.h (VXWORKS_ADDITIONAL_CPP_SPEC): + Remove guard on -fself-tests and replace %:getenv(VSB_DIR) by + sysroot references. + +2025-10-20 Josef Melcr <jmelcr02@gmail.com> + + * ipa-fnsummary.cc (redirect_to_unreachable): Purge callback + edges when redirecting the carrying edge. + (analyze_function_body): Fix typo. + +2025-10-20 Svante Signell <svante.signell@gmail.com> + + PR go/104290 + * config/gnu.h (OPTION_GLIBC_P, OPTION_GLIBC): Define. + +2025-10-20 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/constraints.md (R, U): + Change define_memory_constraint to define_special_memory_constraint. + * config/xtensa/xtensa.md + (movsi_internal, movhi_internal, movqi_internal): + Rearrange their alternatives in the order of constant assignment, register- + register move, load, store and special. And also consolidate overlapping + alternatives. + (movsf_internal): Rearrange the alternatives as above, and remove the '^' + alternative character which is no longer needed. + +2025-10-20 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc + (constantsynth_method_const16): New. + (constantsynth_methods): Append constantsynth_method_const16(). + (constantsynth_info): Add cost calculation for full-word constant + assignment when TARGET_CONST16 is enabled. + (constantsynth_pass1): Change it so that it works regardless of + TARGET_CONST16. + * config/xtensa/xtensa.md (*xtensa_const16): New. + +2025-10-20 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (do_largeconst): + Change split_DI_SF_DF_const() to be called unconditionally. + +2025-10-20 Olivier Hainque <hainque@adacore.com> + + * config.gcc (powerpc*-wrs-vxworks7r*): Add linux-protos.h + to tm_p_file. + +2025-10-20 Olivier Hainque <hainque@adacore.com> + + * config/vxworks.h (VXWORKS_OS_CPP_BUILTINS): Only + builtin_define TOOL and TOOL_FAMILY for !TARGET_VXWORKS7. + Augment comment on VXWORKS_PERSONALITY. + * config/vxworks/vxworks-predef.h: Infer TOOL and TOOL_FAMILY + from the VSB autoconf.h when we have one, determined by the presence + of a _VSB_CONFIG_FILE definition. + +2025-10-20 Srinath Parvathaneni <srinath.parvathaneni@arm.com> + + * config/aarch64/aarch64-elf.h (ASM_SPEC): Update the macro. + * config/aarch64/aarch64.cc (aarch64_valid_sysreg_name_p): + Add feature check condition. + (aarch64_retrieve_sysreg): Likewise. + * config/aarch64/aarch64.opt (menable-sysreg-checking): + Define new flag. + * doc/invoke.texi (menable-sysreg-checking): Document new flag. + +2025-10-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121631 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + When the reduction operation invokes UB on signed overflow + make sure to perform operations with it on an unsigned type. + +2025-10-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/101639 + PR tree-optimization/103495 + * tree-vectorizer.h (vect_reduc_info_s): Add reduc_type_for_mask. + (VECT_REDUC_INFO_VECTYPE_FOR_MASK): New. + * tree-vect-patterns.cc (vect_determine_mask_precision): + Return whether the mask precision changed. + (vect_determine_precisions): Iterate mask precision computation + for loop vectorization. + * tree-vect-loop.cc (get_initial_defs_for_reduction): Properly + convert non-mask initial values to a mask initial def for + the reduction. + (sbool_reduction_fn_for_fn): New function. + (vect_create_epilog_for_reduction): For a mask input convert + it to the vector type analysis decided to use. Use a regular + conversion for the final convert to the scalar code type. + (vectorizable_reduction): Support mask reductions. Verify + we can compute a data vector from the mask result or a direct + maks reduction is provided by the target. + +2025-10-20 Richard Biener <rguenther@suse.de> + + * doc/md.texi (reduc_sbool_{and,ior,xor}_scal_<mode>): Document. + * optabs.def (reduc_sbool_and_scal_optab, + reduc_sbool_ior_scal_optab, reduc_sbool_xor_scal_optab): New. + * internal-fn.def (REDUC_SBOOL_AND, REDUC_SBOOL_IOR, + REDUC_SBOO_XOR): Likewise. + * internal-fn.cc (reduc_sbool_direct): New initializer. + (expand_reduc_sbool_optab_fn): New expander. + (direct_reduc_sbool_optab_supported_p): New. + +2025-10-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/99930 + PR target/122323 + * config/i386/i386-expand.cc (ix86_expand_copysign): Swap + operands[1] with operands[2]. Optimize copysign (x, const_double) + instead of copysign (const_double, x). + * config/i386/i386.md (copysign<mode>3): Swap constraints for + operands[1] and operands[2]. + +2025-10-19 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_nonzero_bits_lsr_operands_p): Also + handle PLUS. + * config/avr/avr.md (pixaop): New code iterator for PLUS, + IOR, XOR, AND. + (nzb=1 insns): Use pixaop instead of bitop code iterator. + Handle PLUS in outputs. + +2025-10-18 Mark Wielaard <mark@klomp.org> + + * common.opt.urls: Regenerate. + +2025-10-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119060 + * builtins.cc (expand_builtin): Handle BUILT_IN_OBSERVABLE_CHKPT. + * builtins.def (BUILT_IN_OBSERVABLE_CHKPT): New. + * tree.cc (build_common_builtin_nodes): Build observable + checkpoint builtin. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/aarch64/aarch64-sve2.md + (widen_ssum<mode><Vnarrow>3): Update. + (widen_usum<mode><Vnarrow>3): Update. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/aarch64/aarch64-sve2.md: (widen_ssum<mode><Vnarrow>3): New. + (widen_usum<mode><Vnarrow>3): New. + * config/aarch64/iterators.md (Vnarrow): New, to match VNARROW. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/aarch64/aarch64-sve.md (widen_<sur>sum<mode><vsi2qi>3): New. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/rs6000/altivec.md (widen_usum<mode>3): Rename ... + (widen_usumv4si<mode>3): ... to this. + (widen_ssumv16qi3): Rename ... + (widen_ssumv4siv16qi3): ... to this. + (widen_ssumv8hi3): Rename ... + (widen_ssumv4siv8hi3): ... to this. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/ia64/vect.md (widen_usumv8qi3): Renamed ... + (widen_usumv4hiv8qi3): ... into this. + (widen_usumv4hi3): Renamed ... + (widen_usumv2siv4hi3): ... into this. + (widen_ssumv8qi3): Renamed ... + (widen_ssumv4hiv8qi3): ... into this. + (widen_ssumv4hi3): Renamed ... + (widen_ssumv2siv4hi3): ... into this. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/arm/iterators.md (v_double_width): New, matching + V_double_width. + * config/arm/neon.md (widen_ssum<mode>3): Renamed ... + (widen_ssum<v_double_width><mode>3, widen_ssum<V_widen_l><mode>3): ... + into these. + (widen_usum<mode>3): Renamed ... + (widen_usum<v_double_width><mode>3, widen_usum<V_widen_l><mode>3): ... + into these. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/aarch64/aarch64-simd.md (widen_ssum<mode><vsi2qi>3): New. + (widen_usum<mode><vsi2qi>3): New. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * config/aarch64/aarch64-simd.md (widen_ssum<mode>3): Change into.. + (widen_ssum<Vdblw><mode>3, widen_ssum<Vwide><mode>3): ... these. + (widen_usum<mode>3): Change into ... + (widen_usum<Vdblw><mode>3, widen_usum<Vwide><mode>3): ... these. + * config/aarch64/iterators.md (Vdblw): New. + (Vwide): Extend to match VWIDE. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * doc/md.texi (widen_ssum@var{n}@var{m}3, widen_usum@var{n}@var{m}3): + Update docs. + * optabs.cc (expand_widen_pattern_expr): Add WIDEN_SUM_EXPR as widening. + * optabs.def (ssum_widen_optab, usum_widen_optab): Convert from direct + to a conversion optab. + * tree-vect-patterns.cc (vect_recog_widen_sum_pattern): Change + vect_supportable_direct_optab_p into vect_supportable_conv_optab_p. + +2025-10-18 Linsen Zhou <i@lin.moe> + + PR tree-optimization/122012 + * tree-object-size.cc (check_for_plus_in_loops): Skip check + for the variable offset + +2025-10-17 David Faust <david.faust@oracle.com> + + PR target/122139 + * config/bpf/bpf.cc (bpf_expand_setmem): Duplicate byte value + across to new mode when using larger modes for store. + +2025-10-17 Tamar Christina <tamar.christina@arm.com> + Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121604 + * config/aarch64/aarch64-sve-builtins-shapes.cc (apply_predication): + Store gp_index. + (struct pmov_to_vector_lane_def): Mark instruction as has no GP. + * config/aarch64/aarch64-sve-builtins.h (function_instance::gp_value, + function_instance::inactive_values, function_instance::gp_index, + function_shape::has_gp_argument_p): New. + * config/aarch64/aarch64-sve-builtins.cc (gimple_folder::fold_pfalse): + Simplify code and use GP helpers. + +2025-10-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122308 + * gimple-loop-jam.cc (tree_loop_unroll_and_jam): Do LIM + after applying unroll-and-jam. + +2025-10-17 Josef Melcr <jmelcr02@gmail.com> + + * Makefile.in: Add attr-callback.o to OBJS. + * builtin-attrs.def (ATTR_CALLBACK): Callback attr identifier. + (DEF_CALLBACK_ATTRIBUTE): Macro for callback attr creation. + (GOMP): Attr for libgomp functions. + (ATTR_CALLBACK_GOMP_LIST): ATTR_NOTHROW_LIST with GOMP callback + attr added. + * cgraph.cc (cgraph_add_edge_to_call_site_hash): Always hash the + callback-carrying edge. + (cgraph_node::get_edge): Always return the callback-carrying + edge. + (cgraph_edge::set_call_stmt): Add cascade for callback edges. + (symbol_table::create_edge): Allow callback edges to share call + stmts, initialize new flags. + (cgraph_edge::make_callback): New method, derives a new callback + edge. + (cgraph_edge::get_callback_carrying_edge): New method. + (cgraph_edge::first_callback_edge): Likewise. + (cgraph_edge::next_callback_edge): Likewise. + (cgraph_edge::purge_callback_edges): Likewise. + (cgraph_edge::redirect_callee): When redirecting a callback + edge, redirect its ref as well. + (cgraph_edge::redirect_call_stmt_to_callee): Add callback edge + redirection logic, set update_derived_edges to true hwne + redirecting the carrying edge. + (cgraph_node::remove_callers): Add cascade for callback edges. + (cgraph_edge::dump_edge_flags): Print callback flags. + (cgraph_node::verify_node): Add sanity checks for callback + edges. + * cgraph.h: Add new 1 bit flags and 16 bit callback_id to + cgraph_edge class. + * cgraphclones.cc (cgraph_edge::clone): Copy over callback data. + * cif-code.def (CALLBACK_EDGE): Add CIF_CALLBACK_EDGE code. + * ipa-cp.cc (purge_useless_callback_edges): New function, + deletes callback edges when necessary. + (ipcp_decision_stage): Call purge_useless_callback_edges. + * ipa-fnsummary.cc (ipa_call_summary_t::duplicate): Add + an exception for callback edges. + (analyze_function_body): Copy over summary from carrying to + callback edge. + * ipa-inline-analysis.cc (do_estimate_growth_1): Skip callback + edges when estimating growth. + * ipa-inline-transform.cc (inline_transform): Add redirection + cascade for callback edges. + * ipa-param-manipulation.cc + (drop_decl_attribute_if_params_changed_p): New function. + (ipa_param_adjustments::build_new_function_type): Add + args_modified out param. + (ipa_param_adjustments::adjust_decl): Drop callback attrs when + modifying args. + * ipa-param-manipulation.h: Adjust decl of + build_new_function_type. + * ipa-prop.cc (ipa_duplicate_jump_function): Add decl. + (init_callback_edge_summary): New function. + (ipa_compute_jump_functions_for_edge): Add callback edge + creation logic. + * lto-cgraph.cc (lto_output_edge): Stream out callback data. + (input_edge): Input callback data. + * omp-builtins.def (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC): Use new + attr list. + (BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED): Likewise. + (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_DYNAMIC): Likewise. + (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME): Likewise. + (BUILT_IN_GOMP_PARALLEL): Likewise. + (BUILT_IN_GOMP_PARALLEL_SECTIONS): Likewise. + (BUILT_IN_GOMP_TEAMS_REG): Likewise. + * tree-core.h (ECF_CB_1_2): New constant for callback(1,2). + * tree-inline.cc (copy_bb): Copy callback edges when copying the + carrying edge. + (redirect_all_calls): Redirect callback edges. + * tree.cc (set_call_expr_flags): Create callback attr according + to the ECF_CB flag. + * attr-callback.cc: New file. + * attr-callback.h: New file. + +2025-10-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122301 + * tree-vect-patterns.cc (vect_recog_over_widening_pattern): + Fix reduction guard. + (vect_mark_pattern_stmts): Fix reduction def check. + +2025-10-17 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/104116 + * tree-vect-patterns.cc (add_code_for_floorceilround_divmod): patt recog + for {FLOOR,ROUND,CEIL}_{DIV,MOD}_EXPR. + (vect_recog_divmod_pattern): Call add_code_for_floorceilround_divmod + after computing div/mod for each control path. + +2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122296 + * match.pd (`(a != b) | ((a|b) != 0)`): Reuse both + the ior and zero instead of recreating them. + (`(a == b) & ((a|b) == 0)`): Likewise + +2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122296 + * match.pd (`(a == b) | ((a|b) != 0)`): Fix true value. + +2025-10-17 Hu, Lin1 <lin1.hu@intel.com> + + PR target/122119 + * config/i386/amxmovrsintrin.h + (_tile_loaddrs_internal): Use __PTRDIFF_TYPE__ instead of long. + (_tile_loaddrst1_internal): Ditto. + +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 + * config/riscv/riscv.cc (synthesize_add): Exchange constant terms when + generating addi pairs. + (synthesize_addsi): Similarly. + * config/riscv/riscv.md (addptr<mode>3): New define_expand. + (*add<mode>3_const_sum_of_two_s12): Remove pattern. + +2025-10-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/120674 + * config/riscv/riscv.cc (riscv_dwarf_poly_indeterminite_value): Do not + set FACTOR to zero, for that case use one instead. + +2025-10-13 Pan Li <pan2.li@intel.com> + + * match.pd: Add simplifed pattern for widen_mul based unsigned + SAT_MUL. + +2025-10-13 Jan Hubicka <hubicka@ucw.cz> + + * ipa-inline.cc (max_count): Remove. + (has_nonzero_ipa_profile): New. + (inline_small_functions): Update. + (dump_inline_stats): Update. + +2025-10-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/118019 + * internal-fn.cc (get_supported_else_vals): Exit at invalid + index. + (internal_strided_fn_supported_p): New funtion. + * internal-fn.h (internal_strided_fn_supported_p): Declare. + * tree-vect-stmts.cc (vector_vector_composition_type): + Add vector_only argument. + (vect_use_grouped_gather): New function. + (vect_get_store_rhs): Adjust docs of + vector_vector_composition_type. + (get_load_store_type): Try grouped gather. + (vectorizable_store): Use punned vectype. + (vectorizable_load): Ditto. + * tree-vectorizer.h (struct vect_load_store_data): Add punned + vectype. + +2025-10-13 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/122213 + * match.pd: Canonicalize unsigned pow2 div only for trunk, floor and + exact div. + +2025-10-13 Richard Biener <rguenther@suse.de> + + * tree-vect-patterns.cc (integer_type_for_mask): Add optional + output dt argument. + (vect_recog_bool_pattern): Make sure to not apply the bitwise + binary pattern to an external operand. + +2025-10-11 Bohan Lei <garthlei@linux.alibaba.com> + + PR target/119587 + * config/riscv/thead.md (*th_memidx_operand): New splitter. + +2025-10-11 Georg-Johann Lay <avr@gjlay.de> + + * coretypes.h (enum artificial_rodata): New enum type. + * doc/tm.texi: Rebuild. + * doc/tm.texi.in (TARGET_ADDR_SPACE_FOR_ARTIFICIAL_RODATA): + New hook. + * target.def (addr_sapce.for_artificial_rodata): New DEFHOOK. + * targhooks.cc (default_addr_space_convert): New function. + * targhooks.h (default_addr_space_convert): New prototype. + * tree-switch-conversion.cc (build_one_array) <value_type>: + Set type_quals address-space according to + targetm.addr_space.for_artificial_rodata(). + * config/avr/avr.cc (avr_rodata_in_flash_p): Move up. + (TARGET_ADDR_SPACE_FOR_ARTIFICIAL_RODATA): Define to... + (avr_addr_space_for_artificial_rodata): ...this new function. + * common/config/avr/avr-common.cc (avr_option_optimization_table): + Adjust -ftree-switch-conversion comment. + +2025-10-11 Austin Law <austinklaw@gmail.com> + + * config/riscv/sync.md (lrsc_atomic_fetch_<atomic_optab><mode>): + Adjust operand predicate/constraint to allow simm12 operands + where valid. Adjust output template accordingly. + (subword_atomic_fech_strong_<atomic_optab>): Likewise. + (subword_atomic_fetch_strong_nand): Likewise. + (subword_atomic_exchange_strong): Likewise. + (subword_atomic_cas_strong): Likewise. + +2025-10-10 David Faust <david.faust@oracle.com> + + PR target/122141 + * config/bpf/bpf.cc (bpf_expand_cbranch): Use swap_condition + rather than reverse_condition when reversing jump condition to + work around missing instructions in very old BPF ISAs. + +2025-10-10 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (do_simple_agr_dse): New function. + (pass_forwprop::execute): Call do_simple_agr_dse for clobbers. + +2025-10-10 Umesh Kalvakuntla <Umesh.Kalvakuntla@amd.com> + + * common/config/i386/cpuinfo.h (get_amd_cpu): Fix znver5 family + model numbers. + (get_available_features): Set FEATURE_PREFETCHI for bit_AMD_PREFETCHI. + * config/i386/cpuid.h (bit_AMD_PREFETCHI): New Macro. + +2025-10-10 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*widen_wsubu_wx_<mode>): Add new + pattern to match vwsubu.wx. + +2025-10-10 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/vector.md (fmax<mode>3): Restrict to no trapping + math. + (fmin<mode>3): Ditto. + +2025-10-10 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/rs6000.md (mode_iterator CCANY): Add CCFP and CCEQ. + +2025-10-10 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122223 + * config/arm/mve.md (@mve_vbicq_f<mode>): Fix operands order. + +2025-10-10 Andrew Stubbs <ams@baylibre.com> + + * tree-vect-stmts.cc: Fix VEC_STMT parameter comments throughout. + +2025-10-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Improve Apple + M3 and add Apple M4 cores. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi: Add apple-m4 core to the ones listed + for arch and tune selections. + +2025-10-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122111 + * tree-ssa-math-opts.cc (build_and_insert_cast): Remove + conversion simplification, instead use gimple_convert. + +2025-10-10 Robin Dapp <rdapp@ventanamicro.com> + + * config/arm/arm.cc (arm_builtin_support_vector_misalignment): + Remove use of type. + +2025-10-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122225 + * tree-cfg.cc (verify_gimple_return): Look at DECL_RESULT + for DECL_BY_REFERENCE. + +2025-10-10 YunQiang Su <yunqiang@isrc.iscas.ac.cn> + + Revert: + 2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> + + * config/mips/mips.cc(mips_option_override):Add conditions + for use of the -mmips16e2 and -mips16 option. + +2025-10-09 David Faust <david.faust@oracle.com> + + * doc/extend.texi (Common Function Attributes) + (Common Variable Attributes): Document btf_decl_tag attribute. + (Common Type Attributes): Document btf_type_tag attribute. + +2025-10-09 David Faust <david.faust@oracle.com> + + * btfout.cc (get_btf_kind): Handle DECL_TAG and TYPE_TAG kinds. + (btf_calc_num_vbytes): Likewise. + (btf_asm_type): Likewise. + (output_asm_btf_vlen_bytes): Likewise. + (output_btf_tags): New. + (btf_output): Call it here. + (btf_add_used_type): Replace with simple wrapper around... + (btf_add_used_type_1): ...the implementation. Handle + BTF_KIND_DECL_TAG and BTF_KIND_TYPE_TAG. + (btf_add_vars): Update btf_add_used_type call. + (btf_assign_tag_ids): New. + (btf_mark_type_used): Update btf_add_used_type call. + (btf_collect_pruned_types): Likewise. Handle type and decl tags. + (btf_finish): Call btf_assign_tag_ids. + +2025-10-09 David Faust <david.faust@oracle.com> + + * ctfc.cc (ctf_dtu_d_union_selector): Handle CTF_K_DECL_TAG and + CTF_K_TYPE_TAG. + (ctf_add_type_tag, ctf_add_decl_tag): New. + (ctf_add_variable): Return the new ctf_dvdef_ref rather than zero. + (new_ctf_container): Initialize new members. + (ctfc_delete_container): Deallocate new members. + * ctfc.h (ctf_dvdef, ctf_dvdef_t, ctf_dvdef_ref): Move forward + declarations earlier in file. + (ctf_decl_tag_t): New typedef. + (ctf_dtdef): Add ctf_decl_tag_t member to dtd_u union. + (ctf_dtu_d_union_enum): Add new CTF_DTU_D_TAG enumerator. + (ctf_container): Add ctfc_tags vector and ctfc_type_tags_map hash_map + members. + (ctf_add_type_tag, ctf_add_decl_tag): New function protos. + (ctf_add_variable): Change prototype return type to ctf_dvdef_ref. + * dwarf2ctf.cc (gen_ctf_type_tags, gen_ctf_decl_tags) + (gen_ctf_decl_tags_for_var): New static functions. + (gen_ctf_pointer_type): Handle type tags. + (gen_ctf_sou_type): Handle decl tags. + (gen_ctf_function_type): Likewise. + (gen_ctf_variable): Likewise. + (gen_ctf_function): Likewise. + (gen_ctf_type): Handle TAG_GNU_annotation DIEs. + +2025-10-09 David Faust <david.faust@oracle.com> + + * dwarf2out.cc (struct annotation_node, struct annotation_node_hasher) + (btf_tag_htab): New ancillary structures and hash table. + (annotation_node_hasher::hash, annotation_node_hasher::equal): New. + (hash_btf_tag, gen_btf_tag_dies, maybe_gen_btf_type_tag_dies) + (maybe_gen_btf_decl_tag_dies): New functions. + (modified_type_die): Add new argument to pass type attributes. + Handle btf_type_tag, and update recursive calls. + (base_type_for_mode): Add new arg for modified_type_die call. + (add_type_attribute): Likewise. + (gen_array_type_die): Call maybe_gen_btf_type_tag_dies for the type. + (gen_formal_parameter_die): Call maybe_gen_btf_decl_tag_dies for the + parameter. + (override_type_for_decl_p): Add new arg for modified_type_die call. + (force_type_die): Likewise. + (gen_tagged_type_die): Call maybe_gen_btf_type_tag_dies for the type. + (gen_decl_die): Call maybe_gen_btf_decl_tag_dies for the decl. + (dwarf2out_finish): Empty btf_tag_htab. + (dwarf2out_cc_finalize): Delete btf_tag_htab hash table. + +2025-10-09 Jakub Jelinek <jakub@redhat.com> + + * ginclude/stdarg.h (va_start): Use __builtin_c23_va_start + also for C++26. + (__STDC_VERSION_STDARG_H__): Also define for C++26. + +2025-10-09 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-global-context.cc: Define INCLUDE_VECTOR. + * diagnostics/buffering.cc: Likewise. + * diagnostics/context.cc (context::finish): Call + finalize_extensions on each sink. + (sink::dump): Dump any extensions. + (sink::finalize_extensions): New. + * diagnostics/macro-unwinding.cc: Define INCLUDE_VECTOR. + * diagnostics/selftest-context.cc: Likewise. + * diagnostics/sink.h (class sink::extension): New. + (sink::add_extension): New. + (sink::finalize_extensions): New decl. + (sink::m_extensions): New member. + * gcc.cc: Define INCLUDE_VECTOR. + * langhooks.cc: Likewise. + * opts.cc: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + * tree-diagnostic.cc: Likewise. + +2025-10-09 Filip Kastl <fkastl@suse.cz> + + * Makefile.in: Add gimple-ssa-pta-constraints.cc. + * tree-ssa-structalias.cc (determine_global_memory_access): + External linkage, move to namespace pointer_analysis. + (fndecl_maybe_in_other_partition): External linkage, move to + namespace pointer_analysis. + (new_var_info): External linkage, move to namespace + pointer_analysis. + (create_variable_info_for): Move to + gimple-ssa-pta-constraints.cc. + (lookup_vi_for_tree): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (type_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. + (make_param_constraints): Move to gimple-ssa-pta-constraints.cc. + (get_call_vi): Move to gimple-ssa-pta-constraints.cc. + (lookup_call_use_vi): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (lookup_call_clobber_vi): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (get_call_use_vi): Move to gimple-ssa-pta-constraints.cc. + (get_call_clobber_vi): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_1): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_rhs): Move to gimple-ssa-pta-constraints.cc. + (do_deref): Move to gimple-ssa-pta-constraints.cc. + (constraint_pool): Move to gimple-ssa-pta-constraints.cc. + (new_constraint): Move to gimple-ssa-pta-constraints.cc. + (insert_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. + (alias_get_name): Move to gimple-ssa-pta-constraints.cc. + (get_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. + (new_scalar_tmp_constraint_exp): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_ssa_var): Move to + gimple-ssa-pta-constraints.cc. + (process_constraint): Move to gimple-ssa-pta-constraints.cc. + (bitpos_of_field): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_ptr_offset): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_component_ref): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_address_of): Move to + gimple-ssa-pta-constraints.cc. + (process_all_all_constraints): Move to + gimple-ssa-pta-constraints.cc. + (do_structure_copy): Move to gimple-ssa-pta-constraints.cc. + (make_constraints_to): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_to): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_from): Move to gimple-ssa-pta-constraints.cc. + (make_copy_constraint): Move to gimple-ssa-pta-constraints.cc. + (make_escape_constraint): Move to gimple-ssa-pta-constraints.cc. + (make_indirect_escape_constraint): Move to + gimple-ssa-pta-constraints.cc. + (make_transitive_closure_constraints): Move to + gimple-ssa-pta-constraints.cc. + (make_any_offset_constraints): Move to + gimple-ssa-pta-constraints.cc. + (struct obstack fake_var_decl_obstack): Move to + gimple-ssa-pta-constraints.cc. + (build_fake_var_decl): Move to gimple-ssa-pta-constraints.cc. + (make_heapvar): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_from_restrict): Move to + gimple-ssa-pta-constraints.cc. + (make_constraint_from_global_restrict): Move to + gimple-ssa-pta-constraints.cc. + (get_function_part_constraint): Move to + gimple-ssa-pta-constraints.cc. + (handle_call_arg): Move to gimple-ssa-pta-constraints.cc. + (handle_rhs_call): Move to gimple-ssa-pta-constraints.cc. + (handle_lhs_call): Move to gimple-ssa-pta-constraints.cc. + (get_fi_for_callee): Move to gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_call_arg): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_builtin_call): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_call): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases): Move to gimple-ssa-pta-constraints.cc. + (process_ipa_clobber): Move to gimple-ssa-pta-constraints.cc. + (find_func_clobbers): Move to gimple-ssa-pta-constraints.cc. + (struct fieldoff): Move to gimple-ssa-pta-constraints.cc. + (fieldoff_compare): Move to gimple-ssa-pta-constraints.cc. + (sort_fieldstack): Move to gimple-ssa-pta-constraints.cc. + (var_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. + (type_must_have_pointers): Move to + gimple-ssa-pta-constraints.cc. + (field_must_have_pointers): Move to + gimple-ssa-pta-constraints.cc. + (push_fields_onto_fieldstack): Move to + gimple-ssa-pta-constraints.cc. + (count_num_arguments): Move to gimple-ssa-pta-constraints.cc. + (create_function_info_for): Move to + gimple-ssa-pta-constraints.cc. + (check_for_overlaps): Move to gimple-ssa-pta-constraints.cc. + (create_variable_info_for_1): Move to + gimple-ssa-pta-constraints.cc. + (intra_create_variable_infos): Move to + gimple-ssa-pta-constraints.cc. + (init_base_vars): Move to gimple-ssa-pta-constraints.cc. + (init_constraint_builder): Move to + gimple-ssa-pta-constraints.cc. + (delete_constraint_builder): Move to + gimple-ssa-pta-constraints.cc. + (intra_build_constraints): Move to + gimple-ssa-pta-constraints.cc. + (delete_points_to_sets): Move to gimple-ssa-pta-constraints.cc. + (associate_varinfo_to_alias): Move to + gimple-ssa-pta-constraints.cc + (refered_from_nonlocal_fn): Move to + gimple-ssa-pta-constraints.cc + (refered_from_nonlocal_var): Move to + gimple-ssa-pta-constraints.cc + (ipa_create_function_infos): Move to + gimple-ssa-pta-constraints.cc + (ipa_create_global_variable_infos): Move to + gimple-ssa-pta-constraints.cc + (ipa_build_constraints): Move to gimple-ssa-pta-constraints.cc + * tree-ssa-structalias.h (struct constraint_stats): + (determine_global_memory_access): External linkage, move to + namespace pointer_analysis. + (fndecl_maybe_in_other_partition): External linkage, move to + namespace pointer_analysis. + (new_var_info): External linkage, move to namespace + pointer_analysis. + * gimple-ssa-pta-constraints.cc: New file. + * gimple-ssa-pta-constraints.h: New file. + +2025-10-09 Filip Kastl <fkastl@suse.cz> + + * tree-ssa-structalias.cc (init_constraint_builder): New + function. + (delete_constraint_builder): New function. + (compute_points_to_sets): Put constraint building into + intra_build_constraints and call it. + (intra_build_constraints): New function. + (delete_points_to_sets): Put cleanup of constraint builder + global vars into delete_constraint_builder and call it. + (ipa_pta_execute): Put constraint building into + ipa_build_constraints and call it. + (ipa_create_function_infos): New function. + (ipa_create_global_variable_infos): New function. + (ipa_build_constraints): New function. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa-protos.h (xtensa_constantsynth): Remove. + * config/xtensa/xtensa.cc + (#include): Remove "context.h" and "pass_manager.h". + (machine_function): Remove "litpool_usage" member. + (xtensa_constantsynth_2insn, xtensa_constantsynth_rtx_SLLI, + xtensa_constantsynth_rtx_ADDSUBX, xtensa_constantsynth): Remove. + (constantsynth_method_lshr_m1, split_hwi_to_MOVI_ADDMI, + constantsynth_method_16bits, constantsynth_method_32bits, + constantsynth_method_square): New worker function related to + constant synthesis methods. + (constantsynth_method_info, constantsynth_methods): + New structure representing the list of all constant synthesis + methods. + (constantsynth_info): New structure that stores internal + information for "constantsynth". + (constantsynth_pass1, verify_synth_seq, constantsynth_pass2): + New functions that are the core of "constantsynth". + (do_largeconst): Add a call to constantsynth_pass1() to the insn + enumeration loop, and add a call to constantsynth_pass2() to the + end of this function. + * config/xtensa/xtensa.md (SHI): Remove. + (The two auxiliary define_splits for mov[sh]i_internal): Remove. + (The two auxiliary define_splits for movsf_internal): Remove. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa-protos.h + (xtensa_split_DI_reg_imm): Remove. + * config/xtensa/xtensa.cc (xtensa_split_DI_reg_imm): Remove. + (split_DI_SF_DF_const): New worker function. + (do_largeconst): Add a call to split_DI_SF_DF_const() to the insn + enumeration loop. + * config/xtensa/xtensa.md (movdi): Remove split code when the + source is constant. + (movdi_internal): Add a new constraint pair (a, Y) to the second + of the existing constraint alternatives. + (The auxiliary define_split for movdi_internal): Remove. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xt_full_rtx_costs): + New struct, derived from full_rtx_costs. + (FPreg_neg_scaled_simm12b_1, FPreg_neg_scaled_simm12b): + New worker functions. + (do_largeconst): Add a call to FPreg_neg_scaled_simm12b() to the + insn enumeration loop. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/constraints.md (Y): + Change to reference xtensa_postreload_completed_p() instead of + xtensa_split1_finished_p(). + * config/xtensa/predicates.md (move_operand): Ditto. + * config/xtensa/t-xtensa (PASSES_EXTRA): + Add xtensa-passes.def as target-specific pass description. + * config/xtensa/xtensa-passes.def: + New definition file that inserts pass_xtensa_largeconst after + pass_postreload_cse. + * config/xtensa/xtensa-protos.h (xtensa_split1_finished_p): Remove. + (xtensa_postreload_completed_p, make_pass_xtensa_largeconst): + New function prototypes. + * config/xtensa/xtensa.cc (machine_function): + Add a new member "postreload_completed". + (xtensa_emit_move_sequence): + Change to reference xtensa_postreload_completed_p() instead of + can_create_pseudo_p(). + (xtensa_split1_finished_p): Remove. + (xtensa_postreload_completed_p): New function. + (xtensa_legitimate_constant_p): Change to also consider + xtensa_postreload_completed_p(). + (litpool_set_src_1, litpool_set_src, do_largeconst, + rest_of_handle_largeconst): + New sub-functions for pass_xtensa_largeconst. + (pass_data_xtensa_largeconst, pass_xtensa_largeconst): + New target-specific pass definition. + (make_pass_xtensa_largeconst): + New function called by the pass manager. + * config/xtensa/xtensa.md + (The auxiliary define_split for movdi_internal): + Change to reference xtensa_postreload_completed_p() instead of + xtensa_split1_finished_p(). + (The first of three auxiliary define_splits for mov[sh]i_internal): + Remove. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc + (TARGET_MD_ASM_ADJUST): New macro definition. + (xtensa_md_asm_adjust): New function prototype and definition, that + prepends all 'g'-constraints in the "constraints" vector with 'n', + if neither TARGET_CONST16 nor TARGET_AUTO_LITPOOLS is enabled. + +2025-10-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122212 + * tree-ssa-forwprop.cc (simplify_count_zeroes): Apply + bias for CLZ after dealing with the zero special value. + +2025-10-09 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-protos.h (vls_mode_valid_p): New argument + allow_up_to_lmul_8. + * config/riscv/riscv-v.cc (autovectorize_vector_modes): Set + allow_up_to_lmul_8 to false. + (vls_mode_valid_p): Add new argument allow_up_to_lmul_8, and use + it to determine whether to allow LMUL 8. + +2025-10-09 Prathamesh Kulkarni <prathameshk@nvidia.com> + Matthew Malcolmson <mmalcolmson@nvidia.com> + + PR driver/81358 + * common.opt: New option -flink-libatomic. + * gcc.cc (LINK_LIBATOMIC_SPEC): New macro. + * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Use LINK_LIBATOMIC_SPEC. + * config/arm/uclinux-elf.h: Likewise. + * config/arm/unknown-elf.h: Likewise. + * config/avr/avrlibc.h: Likewise. + * config/bfin/linux.h: Likewise. + * config/darwin.h: Likewise. + * config/gnu-user.h: Likewise. + * config/lm32/uclinux-elf.h: Likewise. + * config/rs6000/linux64.h: Likewise. + * config/rs6000/rtems.h: Likewise. + * config/sparc/sparc.h: Likewise. + * doc/invoke.texi: Document -flink-libatomic. + * configure.ac: Define TARGET_PROVIDES_LIBATOMIC. + * configure: Regenerate. + * config.in: Regenerate. + * common.opt.urls: Regenerate. + +2025-10-09 Robin Dapp <rdapp@ventanamicro.com> + + * config/aarch64/aarch64.cc (aarch64_builtin_support_vector_misalignment): + Remove type. + * config/arm/arm.cc (arm_builtin_support_vector_misalignment): + Ditto. + * config/epiphany/epiphany.cc (epiphany_support_vector_misalignment): + Ditto. + * config/gcn/gcn.cc (gcn_vectorize_support_vector_misalignment): + Ditto. + * config/loongarch/loongarch.cc (loongarch_builtin_support_vector_misalignment): + Ditto. + * config/riscv/riscv.cc (riscv_support_vector_misalignment): + Ditto. + * config/rs6000/rs6000.cc (rs6000_builtin_support_vector_misalignment): + Ditto. + * config/s390/s390.cc (s390_support_vector_misalignment): + Ditto. + * doc/tm.texi: Adjust vector misalignment docs. + * target.def: Ditto. + * targhooks.cc (default_builtin_support_vector_misalignment): + Remove type. + * targhooks.h (default_builtin_support_vector_misalignment): + Ditto. + * tree-vect-data-refs.cc (vect_can_force_dr_alignment_p): + Set misalignment for gather/scatter and remove type. + (vect_supportable_dr_alignment): Ditto. + +2025-10-09 Sam James <sam@gentoo.org> + + PR c++/117219 + * doc/invoke.texi (-fstrict-aliasing): Explain that type-punning + through a union in C++ is supported as a GNU extension. + +2025-10-09 Sam James <sam@gentoo.org> + + * doc/invoke.texi: Add missing full stop. + +2025-10-09 Sam James <sam@gentoo.org> + + PR tree-optimization/18501 + * doc/invoke.texi (-Wmaybe-uninitialized): Mention interaction with + CCP. + +2025-10-08 Antoni Boucher <bouanto@zoho.com> + + * configure: Regenerate. + +2025-10-08 Trevor Gross <tmgross@umich.edu> + + PR target/115054 + * config/i386/i386.cc (function_arg_ms_64, + function_value_ms_64): Pass and return _Float16 in vector + registers on Windows. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/110223 + PR tree-optimization/122128 + * tree-vect-patterns.cc (vect_recog_bool_pattern): Add + compensation for mixed mask/data bitwise operations. + +2025-10-08 Richard Biener <rguenther@suse.de> + + * tree-vect-patterns.cc (integer_type_for_mask): Only + reject vect_external_defs. + +2025-10-08 Richard Biener <rguenther@suse.de> + + * doc/tm.texi.in (JIT Language and ABI): Add menu item. + * doc/tm.texi: Re-generate. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/110223 + * tree-vect-patterns.cc (vect_recog_bool_pattern): Fix + mistakes in the store-from-mask bool pattern. Add + required mask conversions. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/105490 + * tree-vect-patterns.cc (build_mask_conversion): Move earlier. + (vect_convert_mask_for_vectype): Likewise. + (vect_recog_bool_pattern): Remove redundant truth type + construction. Add missing possibly required mask conversion. + +2025-10-08 Antoni Boucher <bouanto@zoho.com> + + PR jit/112466 + * Makefile.in (tm_jit_file_list, tm_jit_include_list, TM_JIT_H, + JIT_TARGET_DEF, JIT_TARGET_H, JIT_TARGET_OBJS): New variables. + (tm_jit.h, cs-tm_jit.h, jit/jit-target-hooks-def.h, + s-jit-target-hooks-def-h, default-jit.o): New rules. + (s-tm-texi): Also check timestamp on jit-target.def. + (generated_files): Add TM_JIT_H and jit/jit-target-hooks-def.h. + (build/genhooks.o): Also depend on JIT_TARGET_DEF. + * config.gcc (tm_jit_file, jit_target_objs, target_has_targetjitm): + New variables. + * config/i386/t-i386 (i386-jit.o): New rule. + * configure: Regenerate. + * configure.ac (tm_jit_file_list, tm_jit_include_list, + jit_target_objs): Add substitutes. + * doc/tm.texi: Regenerate. + * doc/tm.texi.in (targetjitm): Document. + (target_has_targetjitm): Document. + * genhooks.cc: Include jit/jit-target.def. + * config/default-jit.cc: New file. + * config/i386/i386-jit.cc: New file. + * config/i386/i386-jit.h: New file. + +2025-10-07 Alfie Richards <alfie.richards@arm.com> + + * doc/tm.texi: Regenerate. + * doc/tm.texi.in: Add documentation for TARGET_HAS_FMV_TARGET_ATTRIBUTE. + +2025-10-07 Georg-Johann Lay <avr@gjlay.de> + + PR target/122187 + * config/avr/avr.cc (avr_out_extr, avr_out_extr_not): + Make a local copy of the passed rtx[] operands. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * config/i386/i386-features.cc + (general_scalar_chain::vector_const_cost): Fix spelling in + comment. + * ipa-prop.h (enum jump_func_type): Likewise. + * tree-vectorizer.cc (try_vectorize_loop_1): Likewise. + +2025-10-07 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/121845 + * config/riscv/riscv-v.cc (shuffle_series_patterns): + Modulo indices for VLA and punt when wrapping for VLS. + +2025-10-07 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + PR target/122124 + * config/riscv/riscv-v.cc (shuffle_slide_patterns): Check if + the second pivot is in OP1 and improve comments. + +2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121921 + * match.pd (`-(a ptrdiff b)`): Extend for a nop_convert + between the neg and ptrdiff. + +2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122083 + * tree-ssa-phiopt.cc (single_trailing_store_in_bb): Rename to ... + (trailing_store_in_bb): This and take new argument to check for + only store. + (cond_if_else_store_replacement_limited): Update to use + trailing_store_in_bb. + (cond_if_else_store_replacement): Loop until + cond_if_else_store_replacement_limited returns false. + (pass_phiopt::execute): Instead of calling cond_if_else_store_replacement_limited + once, also loop on it. + +2025-10-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122155 + * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Don't + create a phi if the 2 rhs are the same. + +2025-10-06 Jan Hubicka <hubicka@ucw.cz> + + PR middle-end/122122 + * tree-cfgcleanup.cc (tree_forwarder_block_p): Cleanup. + * tree-ssa-dce.cc (propagate_counts): New function. + (eliminate_unnecessary_stmts): Use it. + +2025-10-06 Jan Hubicka <hubicka@ucw.cz> + + * params.opt (-param=auto-profile-bbs=): Add missing full stop after + description. + +2025-10-06 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121206 + * value-range.cc (irange::intersect_bitmask): Always call + set_range_from_bitmask if the bitmask changes. + +2025-10-06 Sam James <sam@gentoo.org> + + PR rtl-optimization/111619 + * doc/install.texi (Building a native compiler): Discuss STAGE1_CFLAGS. + +2025-10-06 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121599 + * config/aarch64/aarch64-sve-builtins.cc + (function_expander::use_cond_insn): Use add_fixed_operand if + fallback_arg == CONST0_RTX (mode). + +2025-10-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122131 + * tree-vect-data-refs.cc (vect_supportable_dr_alignment): Do + not use re-align loads for gathers. + +2025-10-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122158 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): Handle + bit-precision result. + +2025-10-06 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/122133 + * stmt.cc (resolve_asm_operand_names): Handle % and 2 letters followed + by open square. + +2025-10-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122142 + * generic-match-head.cc: Include gimple-iterator.h + and gimple-fold.h. + * gimple-fold.cc (gimple_fold_builtin_constant_p): Use + fold_before_rtl_expansion_p. + (gimple_fold_builtin_assume_aligned): Likewise. + (gimple_fold_builtin_stdarg): Likewise. + (gimple_fold_call): Likewise. + * gimple-fold.h: Include "tree-pass.h". + (fold_before_rtl_expansion_p): New function. + * match.pd: Use fold_before_rtl_expansion_p + instead of `cfun->curr_properties & PROP_last_full_fold`. + * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Likewise. + (optimize_stack_restore): Likewise. + +2025-10-05 H.J. Lu <hjl.tools@gmail.com> + + PR target/122150 + * config/i386/i386-expand.cc (setmem_epilogue_gen_val): Duplicate + OP if its size is smaller than MODE size. + +2025-10-05 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa.h (FUNCTION_BOUNDARY): Set to 32. + +2025-10-05 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*widen_waddu_wx_<mode>): Add new + pattern to match vwaddu.wx. + +2025-10-05 Pan Li <pan2.li@intel.com> + + * match.pd: Refactor the form 1 of SAT_MUL by keyword for. + +2025-10-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122143 + * tree-ssa-forwprop.cc (pass_forwprop::execute): Restrict setting + TODO_update_address_taken only when the statement was a call before fold_stmt. + +2025-10-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122153 + * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Handle + stores of empty constructors too. + +2025-10-04 Matteo Nicoli <matteo.nicoli001@gmail.com> + + PR tree-optimization/117760 + * match.pd: Add simplifications that exploit implied values after + logical tests. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122104 + * tree-ssa-math-opts.cc (maybe_optimize_guarding_check): Call + reset_flow_sensitive_info_in_bb on bb when optimizing out the + guarding condition. + +2025-10-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + PR target/122114 + * config/riscv/riscv.cc + (riscv_allocate_and_probe_stack_space): Change initial_cfa_offset + type. + +2025-10-04 Jeff Law <jlaw@ventanamicro.com> + + PR target/122147 + * config/riscv/predicates.md (move_operand): Only allow a REG as the + operand of a SUBREG. + +2025-10-04 Zhongyao Chen <chenzhongyao.hit@gmail.com> + + PR target/118945 + * config/riscv/riscv.cc (riscv_prefer_agnostic_p): New function. + (riscv_tune_param): Add prefer_agnostic member. + (various tune info structures): Initialize prefer_agnostic. + * config/riscv/riscv-protos.h (riscv_prefer_agnostic_p): Add + prototype. + * config/riscv/riscv-v.cc (get_prefer_tail_policy, + get_prefer_mask_policy): Use riscv_prefer_agnostic_p. + * config/riscv/riscv-vsetvl.cc (vsetvl_info::get_demand_flags): + demand policy for agnostic when prefer_agnostic is true. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/114457 + * flag-types.h (enum auto_init_type): Add AUTO_INIT_CXX26. + * tree.h (VACUOUS_INIT_LABEL_P): Define. + * gimplify.cc (is_var_need_auto_init): Renamed to ... + (var_needs_auto_init_p): ... this. Don't return true for + vars with "indeterminate" attribute. Formatting fixes. + (gimplify_decl_expr): Use var_needs_auto_init_p instead of + is_var_need_auto_init. + (emit_warn_switch_unreachable): Remove the flag_auto_var_init + special cases. + (warn_switch_unreachable_and_auto_init_r): Handle them here + by doing just returning NULL. + (last_stmt_in_scope): Don't skip just debug stmts to find + the last stmt in seq, skip for + flag_auto_var_init > AUTO_INIT_UNINITIALIZED also IFN_DEFERRED_INIT + calls. + (collect_fallthrough_labels): For + flag_auto_var_init > AUTO_INIT_UNINITIALIZED ignore + IFN_DEFERRED_INIT calls and GIMPLE_GOTOs to + VACUOUS_INIT_LABEL_P. + (should_warn_for_implicit_fallthrough): For + flag_auto_var_init > AUTO_INIT_UNINITIALIZED also skip over + IFN_DEFERRED_INIT calls. + (expand_FALLTHROUGH_r): Likewise, and handle GIMPLE_GOTOs + to VACUOUS_INIT_LABEL_P. + (gimplify_init_constructor): Use var_needs_auto_init_p instead + of is_var_need_auto_init and for flag_auto_var_init + AUTO_INIT_CXX26 don't call gimple_add_padding_init_for_auto_var. + (gimplify_target_expr): If var_needs_auto_init_p and init has + void type, call gimple_add_init_for_auto_var and for + AUTO_INIT_PATTERN also gimple_add_padding_init_for_auto_var. + * tree-ssa-uninit.cc (maybe_warn_operand): Handle loads from *this + at the start of the function with "clobber *this" attribute on the + PARM_DECL. + * ipa-split.cc (split_function): Remove "clobber *this" attribute + from the first PARM_DECL (if any). + * doc/invoke.texi (ftrivial-auto-var-init=): Adjust documentation. + +2025-10-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117658 + * doc/invoke.texi: Document '-Wno-external-tu-local'. + +2025-10-03 David Malcolm <dmalcolm@redhat.com> + + Revert: + 2025-10-03 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-03 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/121937 + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Make + sure we've got a scalar_int_mode before calling neg_poly_int_rtx. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * passes.def: Remove both pass_fold_builtin. + Swap out pass_copy_prop for pass_forwprop with + full_walk = false and last=true. + * tree-pass.h (make_pass_fold_builtins): Remove. + * tree-ssa-ccp.cc (class pass_fold_builtins): Delete. + (pass_fold_builtins::execute): Delete. + (make_pass_fold_builtins): Remove. + * doc/passes.texi (Folding built-in functions): Remove. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * gimple-isel.cc (gimple_nop_atomic_bit_test_and_p): New decl. + (gimple_nop_convert): Likewise. + (convert_atomic_bit_not): Moved from tree-ssa-ccp.cc. + (optimize_atomic_bit_test_and): Likewise. + (optimize_atomic_op_fetch_cmp_0): Likewise. + (gimple_isel_builtin_call): New function. + (CASE_ATOMIC): Moved from tree-ssa-ccp.cc. + (CASE_ATOMIC_CMP0): Likewise. + (CASE_ATOMIC_BIT_TEST_AND): Likewise. + (pass_gimple_isel::execute): For calls just call gimple_isel_builtin_call. + * tree-ssa-ccp.cc (convert_atomic_bit_not): Move to gimple-isel.cc. + (gimple_nop_atomic_bit_test_and_p): Likewise. + (gimple_nop_convert): Likewise. + (optimize_atomic_bit_test_and): Likewise. + (optimize_atomic_op_fetch_cmp_0): Likewise. + (pass_fold_builtins::execute): Just call fold_stmt for internal + or normal bultin calls. + (CASE_ATOMIC): Move to gimple-isel.cc. + (CASE_ATOMIC_CMP0): Likewise. + (CASE_ATOMIC_BIT_TEST_AND): Likewise. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-ccp.cc (CASE_ATOMIC): New defined. + (CASE_ATOMIC_CMP0): New define. + (CASE_ATOMIC_BIT_TEST_AND): New defined. + (pass_fold_builtins::execute): Use CASE_ATOMIC, CASE_ATOMIC_CMP0, + and CASE_ATOMIC_BIT_TEST_AND. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * gimple-fold.cc (gimple_fold_builtin_stdarg): New function, + moved from tree-ssa-ccp.cc (optimize_stdarg_builtin). + (gimple_fold_builtin): Call gimple_fold_builtin_stdarg for + va_start, va_copy and va_end. + * tree-ssa-ccp.cc (optimize_stdarg_builtin): Remove. + (pass_fold_builtins::execute): Remove handling of + va_start, va_copy and va_end. + * tree-ssa-forwprop.cc (pass_forwprop::execute): Update + todos if fold_stmt return true if last forwprop to include + TODO_update_address_taken. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * tree-ssa-ccp.cc (optimize_unreachable): Move to tree-ssa-forwprop.cc + (pass_fold_builtins::execute): Remove handling of __builtin_unreachable. + * tree-ssa-forwprop.cc (optimize_unreachable): New function from + tree-ssa-ccp.cc. Change argument to bb. Remove check on first statement + being the __builtin_unreachable since it is handled already. + (pass_forwprop::execute): Handle first statement as being __builtin_unreachable + by calling optimize_unreachable. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * tree-ssa-ccp.cc (optimize_stack_restore): Move to tree-ssa-forwprop.cc. + (pass_fold_builtins::execute): Don't call optimize_stack_restore. + * tree-ssa-forwprop.cc (optimize_stack_restore): New function from + tree-ssa-ccp.cc. Return bool instead of value, use replace_call_with_value + istead of returning integer_zero_node. + (simplify_builtin_call): Call optimize_stack_restore. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122033 + * tree-ssa-ccp.cc (optimize_stack_restore): Rewrite the call check. + Update comment in the front to new rules on calls. + * tree.h (fndecl_builtin_alloc_p): New function. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * gimple-fold.cc (gimple_fold_call): Remove ASSUME internal function + calls when PROP_last_full_fold is set. + * tree-ssa-ccp.cc (pass_fold_builtins::execute): Handling folding + of all internal functions. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-ccp.cc (optimize_stdarg_builtin): Mannually create the + gimple statements instead of depending on the gimplifier. + (pass_fold_builtins::execute): Handle updated call to optimize_stdarg_builtin. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-ccp.cc (optimize_memcmp_eq): Remove. + (pass_fold_builtins::execute): Remove handling of memcmp. + * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Add folding + of memcmp to memcmp_eq for PROP_last_full_fold. + +2025-10-02 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-02 Aurelien Jarno <aurelien@aurel32.net> + + PR target/121652 + * config/riscv/riscv.md (round_pattern): special case NaN input + instead of saving/restoring fflags. + +2025-10-02 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc: (scheme_handler::parse_bool_value): + Convert to... + (key_handler::parse_bool_value): ...this. + (scheme_handler::parse_enum_value): Convert to... + (key_handler::parse_enum_value): ...this. + (struct text_scheme_handler::decoded_args): Eliminate, moving + fields into class text_scheme_handler. + (text_scheme_handler::text_scheme_handler): Initialize the new + fields. + Add a "dc" param and use it to initialize m_show_color. + (struct sarif_scheme_handler::decoded_args): Eliminate, moving + fields into class sarif_scheme_handler. + (sarif_scheme_handler::sarif_scheme_handler): Initialize the new + fields. + (struct html_scheme_handler::decoded_args): Eliminate, moving + fields into class html_scheme_handler. + (html_scheme_handler::html_scheme_handler): Initialize the new + fields. + (context::report_unknown_key): Get keys from scheme rather than + passing them in. Support client keys. + (context::parse_and_make_sink): Pass dc to output_factory ctor. + (output_factory::output_factory): Pass dc to text_scheme_handler. + (output_factory::get_scheme_handler): Make return non-const. + (output_factory::make_sink): Move key-handling here, rather than + in individual sinks. + (context::handle_kv): New. + (text_scheme_handler::make_sink): Eliminate key decoding. + (text_scheme_handler::decode_kv): Convert to... + (text_scheme_handler::maybe_handle_kv): ...this... + (text_scheme_handler::get_keys): ...and this. + (sarif_scheme_handler::make_sink): Eliminate key decoding. + (sarif_scheme_handler::decode_kv): Convert to... + (sarif_scheme_handler::maybe_handle_kv): ...this... + (sarif_scheme_handler::get_keys): ...and this. + (html_scheme_handler::make_sink): Eliminate key decoding. + (html_scheme_handler::decode_kv): Convert to... + (html_scheme_handler::maybe_handle_kv): ...this... + (html_scheme_handler::get_keys): ...and this. + (struct selftest::parser_test): Add "client_keys" arg, and update + for new param ordering. + (selftest::parser_test::parse_and_make_sink): New. + (selftest::test_output_arg_parsing): Move auto-fixes to caller. + (class selftest::test_key_handler): New. + (selftest::test_client_arg_parsing): New test. + (selftest::output_spec_cc_tests): Call it. + * diagnostics/output-spec.h (class key_handler): New. + (class scheme_handler): Move here from output-spec.cc. + (context::report_unknown_key): Simplify params. + (context::handle_kv): Update params. + (context::context): Add "client_keys" param. + (context::m_client_keys): New field. + (struct dc_spec_context): Update order of params. Add + "client_keys" param. + * libgdiagnostics.cc (spec_context::spec_context): Pass nullptr + for client keys. + * opts-diagnostic.cc (opt_spec_context::opt_spec_context): + Likewise. Update for new param ordering. + +2025-10-02 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Do not allow + mask reductions. + +2025-10-02 Jan Hubicka <jh@suse.cz> + H.J. Lu <hjl.tools@gmail.com> + + * cfghooks.cc (merge_blocks): Fix typo in the previous change. + +2025-10-02 Jeff Law <jlaw@ventanamicro.com> + + PR target/122051 + * config/riscv/predicates.md (pmode_reg_or_uimm5_operand): Implement + directly rather than using vector_length_operand. + +2025-10-02 H.J. Lu <hjl.tools@gmail.com> + + * aclocal.m4: Regenerated. + * configure: Likewise. + +2025-10-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122079 + * tree-ssa-pre.cc (compute_antic_aux): Re-instantiate + ANTIC_IN value pruning by the old solution. + +2025-10-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122079 + * tree-ssa-pre.cc (prune_clobbered_mems): Do not prune + values when the maximum expression set is involved. + +2025-10-01 Jeff Law <jlaw@ventanamicro.com> + + PR target/122106 + * config/riscv/bitmanip.md (crc expanders): Add predicate for + polynomial argument. Drop unnecessary constraints. + +2025-10-01 Andreas Schwab <schwab@linux-m68k.org> + + PR target/122066 + * config/m68k/m68k.md (adddi3, subdi3): Strip POST_INC and PRE_DEC + when generating high part of the destination operand. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_calculate_branch_prob): Improve dump file. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (determine_scale): Break out from ... + (afdo_adjust_guessed_profile): ... here. + (scale_bb_profile): New function. + (afdo_annotate_cfg): Use it. + * params.opt (auto-profile-bbs): New parmaeter. + * doc/invoke.texi (auto-profile-bbs): Document. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_unscaled_edge_count): New function based on + part of ... + (afdo_set_bb_count): ... this function; use it here. + (afdo_calculate_branch_prob): Try to determine edge counts using + phi args and goto locuses. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * Makefile.in (ALL_FDAS): New variable. + (ALL_HOST_BACKEND_OBJ): Use all.fda instead of cc1plus.fda + (all.fda): New target + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * cfghooks.cc (merge_blocks): Choose more reliable or higher BB + count. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * predict.cc (unlikely_executed_stmt_p): Remove redundant check. + (rebuild_frequencies): Also recompute unlikely bbs when profile is + present or consistent. + +2025-10-01 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120560 + * vr-values.cc (range_from_loop_direction): Use wi::ge_p rather + than wi::gt_p. + +2025-10-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122110 + * tree-vect-loop.cc (vectorizable_reduction): Relax restriction + to mode-precision operations. + +2025-09-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc (text_scheme_handler::make_sink): Use + the value of the "color" to determine if the sink's printer is + colorized. + +2025-09-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc: Add comments. Introduce a + "struct decoded_args" within each scheme_handler subclass, + and split out per-scheme key-value parsing from each make_sink + implementation into new per-scheme decode_kv member functions. + +2025-09-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc: Move class scheme_handler out from + inside class output_factory. + +2025-09-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc: Rename "parsed_arg" to + "scheme_and_kvs" throughout. Rename "unparsed_arg" to + "unparsed_spec" throughout, and make a member of + output_spec::context rather than passing it around. + * diagnostics/output-spec.h: Likewise. + * libgdiagnostics.cc: Likewise. + * opts-diagnostic.cc: Likewise. + +2025-09-30 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc (aarch64_functions_b_resolvable_from_a): New + function. + (TARGET_OPTION_FUNCTIONS_B_RESOLVABLE_FROM_A): New define. + * doc/tm.texi: Regenerate. + * doc/tm.texi.in: Add documentation for + TARGET_OPTION_FUNCTIONS_B_RESOLVABLE_FROM_A. + * multiple_target.cc (redirect_to_specific_clone): Add new optimisation + logic. + (ipa_target_clone): Remove check for TARGET_HAS_FMV_TARGET_ATTRIBUTE. + * target.def: Document new hook.. + * attribs.cc: (functions_b_resolvable_from_a) New function. + * attribs.h: (functions_b_resolvable_from_a) New function. + +2025-09-30 Jakub Jelinek <jakub@redhat.com> + + * auto-profile.h (maybe_hot_afdo_count_p): Fix comment typos, + possiby -> possibly and ture -> true. + * gimplify.cc (build_asan_poison_call_expr): Change "of a for" + to "memory of the" in a comment. + * ipa-devirt.cc (add_type_duplicate): Fix comment typo, + mangles -> mangled. + * auto-profile.cc: Fix comment typo, -fauto-profile-inlinig + -> -fauto-profile-inlining. + (maybe_hot_afdo_count_p): Fix comment typos, possiby -> possibly + and ture -> true. + (function_instance::removed_icall_target): Fix comment typo, + Reutrn -> Return. + (function_instance::in_worklist_): Fix comment typo, Ture -> True. + (function_instance::offline): Fix comment typo, tolevel -> toplevel. + (function_instance::match): Fix comment typo, craeate_gcov -> + create_gcov. + (autofdo_source_profile::offline_external_functions): Fix comment + typos, tolevel -> toplevel and porfile -> profile. + (autofdo_source_profile::get_function_instance_by_inline_stack): Fix + comment typo, chekcing -> checking. + (struct scale): Fix comment typo, scalle -> scale. + * gimple.h (currently_expanding_gimple_stmt): Fix comment typo, + comminucating -> communicating. + * tree.h (canonical_type_used_p): Fix comment typo, ture -> true. + * tree-ssa-alias.cc (types_equal_for_same_type_for_tbaa_p): Likewise. + * ipa-profile.cc (contains_hot_call_p): Likewise. + * cfgexpand.cc (add_scope_conflicts_2): Fix comment typos, + Querry -> Query, referendd -> referenced and Querrying -> Querying. + * ipa-param-manipulation.cc (currently_expanding_gimple_stmt): Fix + comment typo, comminucating -> communicating. + * ipa-prop.cc (ipa_cst_ref_desc::refcount): Fix comment typo, + if -> is. + * tree-if-conv.cc (version_loop_for_if_conversion): Fix comment typos, + porfile -> profile and confistency -> consistency. + * fold-const.cc: Change size_int_wide in comment to size_int as + size_int_wide doesn't exit for 21 years. + +2025-09-30 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (function_instance::match): Sanity check + that gimple PHI has no location. + * tree-cfg.cc (assign_discriminators): Also remap locations + of gimple PHI arguments. + +2025-09-30 Jan Hubicka <hubicka@ucw.cz> + + * basic-block.h (GCOV_COMPUTE_SCALE): Remove. + * ipa-profile.cc (ipa_profile_generate_summary): Use + profile-count scaling. + * sched-rgn.cc (compute_trg_info): Likewise. + +2025-09-30 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (stmt_loc_used_by_debug_info): New function. + (autofdo_source_profile::get_count_info): Use it. + (afdo_set_bb_count): Likewise. + (afdo_vpt_for_early_inline): Likewise. + +2025-09-30 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gimple-lower-bitint.cc (bitint_precision_kind): Fix inconsistency in + results between first and consecutive calls to this function. + +2025-09-28 liuhongt <hongtao.liu@intel.com> + + PR target/121970 + * config/i386/i386-options.cc (ix86_target_string): Remove + store_max. + (ix86_debug_options): Ditto. + (ix86_function_specific_print): Ditto. + (ix86_valid_target_attribute_tree): Ditto. + (ix86_option_override_internal): Ditto. + * config/i386/i386-expand.cc (ix86_expand_builtin): Ditto. + * config/i386/i386-options.h (ix86_target_string): Ditto. + * config/i386/i386.h (MOVE_MAX): Ditto. + (STORE_MAX_PIECES): Set by move_max. + * config/i386/i386.opt: Deprecate mmove-max=. + * config/i386/x86-tune.def (X86_TUNE_AVX256_STORE_BY_PIECES): + Removed. + (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. + +2025-09-28 Peter Damianov <peter0x44@disroot.org> + + * pretty-print.cc (decode_utf8_char): Move forward declaration. + (mingw_utf8_str_to_utf16_str): New function to convert UTF-8 to UTF-16. + (is_console_handle): New function to detect Windows console handles. + (write_all): Add UTF-8 to UTF-16 conversion for console output, + falling back to WriteFile for ASCII strings and regular files. + +2025-09-27 ChengLulu <chenglulu@loongson.cn> + + PR target/99217 + * config/mips/mips.cc (mips_start_function_definition): + Implements the functionality of '-fpatchable-function-entry='. + (mips_print_patchable_function_entry): Define empty function. + (TARGET_ASM_PRINT_PATCHABLE_FUNCTION_ENTRY): Define macro. + +2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> + + * config/mips/mips.cc(mips_option_override):Add conditions + for use of the -mmips16e2 and -mips16 option. + +2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> + + * config/mips/mips.md (fms<mode>4): Generates MSUBF.fmt + instructions. + (*fms<mode>4_msubf): Same as above. + (fnma<mode>4): Same as above. + (*fnma<mode>4_msubf): Same as above. + +2025-09-26 Alejandro Colomar <alx@kernel.org> + + * doc/extend.texi: Clarify documentation about lists of + parameter forward declarations, and mention that more than one + of them are unnecessary. + * doc/invoke.texi: Document the new + -Wmultiple-parameter-fwd-decl-lists. + +2025-09-26 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_propagate_edge): Fix handling of precize 0 + counts. + +2025-09-26 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc + (gcn_vectorize_support_vector_misalignment): Allow any alignment, as + long as it's not packed. + +2025-09-26 Jan Hubicka <hubicka@ucw.cz> + + * profile-count.h (profile_probability::operator/): Do not cap + twice. + (profile_probability::operator/=): Likewise. + (profile_probability::apply_scale): Do not watch for overflow. + (profile_count::probability_in): Watch overflow. + +2025-09-26 Lulu Cheng <chenglulu@loongson.cn> + + PR target/121875 + * config/loongarch/loongarch.cc + (loongarch_can_inline_p): New function. + (TARGET_CAN_INLINE_P): Define. + +2025-09-25 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/invoke.texi (Warning Options): Use "bitwise" over + "bit-wise". + * doc/extend.texi (Vector Extensions): Use "elementwise" + over "element-wise". + * doc/md.texi (Standard Names): Ditto. + +2025-09-25 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/extend.texi (Vector Extensions): Fix grammar. + +2025-09-25 Xi Ruoyao <xry111@xry111.site> + + * doc/invoke.texi (-ffp-int-builtin-inexact): Reword to match + the default value with the default C standard. + +2025-09-24 Dusan Stojkovic <Dusan.Stojkovic@rt-rk.com> + + PR target/121778 + * config/riscv/riscv.md: Add define_split pattern. + +2025-09-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * gimple-fold.cc (gimple_fold_builtin_assume_aligned): New function. + (gimple_fold_builtin): Call gimple_fold_builtin_assume_aligned + for BUILT_IN_ASSUME_ALIGNED. + * tree-ssa-ccp.cc (pass_fold_builtins::execute): Remove handling + of BUILT_IN_ASSUME_ALIGNED. + +2025-09-24 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64.md: Include neoversev2.md. + * config/aarch64/tuning_models/neoversev2.h: Enable dispatch + scheduling and add dispatch constraints. + * config/aarch64/neoversev2.md: New file and new instruction attribute + neoversev2_dispatch. + +2025-09-24 Jennifer Schmitz <jschmitz@nvidia.com> + + * config.gcc: Add aarch64-sched-dispatch.o to extra_objs. + * config/aarch64/aarch64-protos.h (struct tune_params): New + field for dispatch scheduling. + (struct dispatch_constraint_info): New struct for dispatch scheduling. + * config/aarch64/aarch64-tuning-flags.def + (AARCH64_EXTRA_TUNING_OPTION): New flag to enable dispatch scheduling. + * config/aarch64/aarch64.cc (TARGET_SCHED_DISPATCH): Implement + target hook. + (TARGET_SCHED_DISPATCH_DO): Likewise. + (aarch64_override_options_internal): Add check for definition of + dispatch constraints if dispatch-scheduling tune flag is set. + * config/aarch64/t-aarch64: Add aarch64-sched-dispatch.o. + * config/aarch64/tuning_models/a64fx.h: Initialize fields for + dispatch scheduling in tune_params. + * config/aarch64/tuning_models/ampere1.h: Likewise. + * config/aarch64/tuning_models/ampere1a.h: Likewise. + * config/aarch64/tuning_models/ampere1b.h: Likewise. + * config/aarch64/tuning_models/cortexa35.h: Likewise. + * config/aarch64/tuning_models/cortexa53.h: Likewise. + * config/aarch64/tuning_models/cortexa57.h: Likewise. + * config/aarch64/tuning_models/cortexa72.h: Likewise. + * config/aarch64/tuning_models/cortexa73.h: Likewise. + * config/aarch64/tuning_models/cortexx925.h: Likewise. + * config/aarch64/tuning_models/emag.h: Likewise. + * config/aarch64/tuning_models/exynosm1.h: Likewise. + * config/aarch64/tuning_models/fujitsu_monaka.h: Likewise. + * config/aarch64/tuning_models/generic.h: Likewise. + * config/aarch64/tuning_models/generic_armv8_a.h: Likewise. + * config/aarch64/tuning_models/generic_armv9_a.h: Likewise. + * config/aarch64/tuning_models/neoverse512tvb.h: Likewise. + * config/aarch64/tuning_models/neoversen1.h: Likewise. + * config/aarch64/tuning_models/neoversen2.h: Likewise. + * config/aarch64/tuning_models/neoversen3.h: Likewise. + * config/aarch64/tuning_models/neoversev1.h: Likewise. + * config/aarch64/tuning_models/neoversev2.h: Likewise. + * config/aarch64/tuning_models/neoversev3.h: Likewise. + * config/aarch64/tuning_models/neoversev3ae.h: Likewise. + * config/aarch64/tuning_models/olympus.h: Likewise. + * config/aarch64/tuning_models/qdf24xx.h: Likewise. + * config/aarch64/tuning_models/saphira.h: Likewise. + * config/aarch64/tuning_models/thunderx.h: Likewise. + * config/aarch64/tuning_models/thunderx2t99.h: Likewise. + * config/aarch64/tuning_models/thunderx3t110.h: Likewise. + * config/aarch64/tuning_models/thunderxt88.h: Likewise. + * config/aarch64/tuning_models/tsv110.h: Likewise. + * config/aarch64/tuning_models/xgene1.h: Likewise. + * config/aarch64/aarch64-sched-dispatch.cc: New file for + dispatch scheduling for aarch64. + * config/aarch64/aarch64-sched-dispatch.h: New header file. + +2025-09-24 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64-sve.md: Annotate instructions with + attribute sve_type. + * config/aarch64/aarch64-sve2.md: Likewise. + * config/aarch64/aarch64.md (sve_type): New attribute sve_type. + * config/aarch64/iterators.md (sve_type_unspec): New int attribute. + (sve_type_int): New code attribute. + (sve_type_fp): New int attribute. + +2025-09-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116816 + * tree-vect-stmts.cc (get_load_store_type): Allow multi-lane + single-element interleaving to fall back to VMAT_ELEMENTWISE. + Fall back to VMAT_ELEMENTWISE when we cannot handle a load + permutation. + (vectorizable_load): Do not check a load permutation + for VMAT_ELEMENTWISE. Handle grouped loads with + VMAT_ELEMENTWISE and directly apply a load permutation. + +2025-09-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_load_store_type): Explicitly fail + when we end up with VMAT_ELEMENTWISE for BB vectorization. + +2025-09-24 Xi Ruoyao <xry111@xry111.site> + + PR tree-optimization/122040 + * doc/invoke.texi (-fisolate-erroneous-paths-dereference): + Mention it also turns division by zero into a trap in addition + to null dereference. + +2025-09-24 Xi Ruoyao <xry111@xry111.site> + + PR middle-end/66462 + * config/loongarch/loongarch.md (FCLASS_MASK): Add 3. + (fclass_optab): Assign isnan for 3. + (<FCLASS_MASK:fclass_optab><ANYF:mode>2): If FCLASS_MASK is 3, + only enable when -fsignaling-nans. + +2025-09-24 Pan Li <pan2.li@intel.com> + + * match.pd: Add pattern of mult and reuse the widen-mul + by for keyword. + +2025-09-23 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/121986 + * diagnostics/sarif-sink.cc: Include "intl.h". + (sarif_builder::make_message_describing_fix_it_hint): New. + (sarif_builder::make_fix_object): Attempt to auto-generate a + description for fix-it hints. + +2025-09-23 Richard Earnshaw <rearnsha@arm.com> + + PR target/121810 + * config/arm/mve.md (mve_mov<mode>): Move the Ui constraint + and pool_range attributes to the final alternative. Fix + the forward range value and correctly name the negative + range. + +2025-09-23 Pan Li <pan2.li@intel.com> + + PR middle-end/122031 + * tree-ssa-math-opts.cc (build_and_insert_cast): Fix the typo + of self assignment. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc (aarch64_process_target_version_attr): + Remove warning. + * config/aarch64/aarch64.opt: Mark -Wno-experimental-fmv-target + deprecated. + * doc/invoke.texi: Ditto. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * attribs.cc (is_function_default_version): Update to handle + target_clones. + * cgraph.h (FOR_EACH_FUNCTION_REMOVABLE): New macro. + * multiple_target.cc (expand_target_clones): Update logic to delete + empty target_clones and modify diagnostic. + (ipa_target_clone): Update to use FOR_EACH_FUNCTION_REMOVABLE. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * attribs.h (common_function_versions): Removed. + * attribs.cc (common_function_versions): Removed. + * config/aarch64/aarch64.cc (aarch64_common_function_versions): Removed. + (aarch64_same_function_versions): New function to check if two version + strings imply the same version. + (TARGET_OPTION_FUNCTION_VERSIONS): Removed. + (TARGET_OPTION_SAME_FUNCTION_VERSIONS): New macro. + * config/i386/i386.cc (TARGET_OPTION_FUNCTION_VERSIONS): Removed. + * config/rs6000/rs6000.cc (TARGET_OPTION_FUNCTION_VERSIONS): Removed. + * config/riscv/riscv.cc (riscv_same_function_versions): New function + to check if two version strings imply the same version. + (riscv_common_function_versions): Removed. + (TARGET_OPTION_FUNCTION_VERSIONS): Removed. + (TARGET_OPTION_SAME_FUNCTION_VERSIONS): New macro. + * doc/tm.texi: Regenerated. + * target.def: Remove common_version hook and add same_function_version + hook. + * doc/tm.texi.in: Ditto. + * tree.cc (distinct_version_decls): New function. + (mergeable_version_decls): Ditto. + * tree.h (distinct_version_decls): New function. + (mergeable_version_decls): Ditto. + * hooks.h (hook_stringslice_stringslice_unreachable): New function. + * hooks.cc (hook_stringslice_stringslice_unreachable): New function. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + PR target/118313 + * cgraph.cc (delete_function_version): Made public static member of + cgraph_node. + * cgraph.h (delete_function_version): Ditto. + * cgraphunit.cc (analyze_functions): Add logic for target version + dependencies. + * ipa.cc (symbol_table::remove_unreachable_nodes): Ditto. + * multiple_target.cc (create_dispatcher_calls): Change to support + target version semantics. + (ipa_target_clone): Change to dispatch all function sets in + target_version semantics, and to have early and late pass. + (expand_target_clones): Add logic for cases of target_clones with no + defaults. + (is_simple_target_clones_case): New function. + (class pass_target_clone): New parameter for early or late pass. + * config/aarch64/aarch64.cc: (aarch64_get_function_versions_dispatcher): + Refactor with the assumption that the DECL node will be default. + * config/riscv/riscv.cc: (riscv_get_function_versions_dispatcher): + Refactor with the assumption that the DECL node will be default. + * passes.def: Split target_clones pass into early and late version. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + PR target/118339 + * target.def: Add check_target_clone_version hook. + * tree.cc (get_clone_attr_versions): Add filter argument. + (get_clone_versions): Add filter argument. + * tree.h (get_clone_attr_versions): Add filter. + (get_clone_versions): Add filter argument. + * config/aarch64/aarch64.cc (aarch64_check_target_clone_version): + New function + (TARGET_CHECK_TARGET_CLONE_VERSION): New define. + * config/riscv/riscv.cc (riscv_check_target_clone_version): + New function. + (TARGET_CHECK_TARGET_CLONE_VERSION): New define. + * doc/tm.texi: Regenerated. + * doc/tm.texi.in: Add documentation for new hook. + * hooks.h (hook_stringslice_locationtptr_true): New function. + * hooks.cc (hook_stringslice_locationtptr_true): New function. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * config/riscv/riscv-protos.h (riscv_process_target_version_str): New function.. + * config/riscv/riscv-target-attr.cc (riscv_process_target_attr): Refactor to take + string_slice. + (riscv_process_target_version_str): New function. + * config/riscv/riscv.cc (parse_features_for_version): Refactor to take + string_slice. + (riscv_compare_version_priority): Ditto. + (dispatch_function_versions): Change to pass location. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * attribs.cc (make_dispatcher_decl): Move duplicated cgraph logic into + this function and change to use targetm.mangle_decl_assembler_name for + mangling. + * cgraph.cc (cgraph_node::insert_new_function_version): Record + assembler_name. + * cgraph.h (struct cgraph_function_version_info): Add assembler_name. + (struct cgraph_node): Add dispatcher_resolver_function and + is_target_clone. + * config/aarch64/aarch64.cc (aarch64_parse_fmv_features): Change to + support string_slice. + (aarch64_process_target_version_attr): Ditto. + (get_feature_mask_for_version): Ditto. + (aarch64_mangle_decl_assembler_name): Add logic for mangling dispatched + symbol and resolver. + (get_suffixed_assembler_name): Removed. + (make_resolver_func): Refactor to use + aarch64_mangle_decl_assembler_name for mangling. + (aarch64_generate_version_dispatcher_body): Remove remangling. + (aarch64_get_function_versions_dispatcher): Refactor to remove + duplicated cgraph logic. + * config/i386/i386-features.cc + (ix86_mangle_function_version_assembler_name): Refactor to use + clone_identifier and to mangle default. + (ix86_mangle_decl_assembler_name): Add logic for mangling dispatched + symbol and resolver. + (ix86_get_function_versions_dispatcher): Remove duplicated cgraph + logic. + (make_resolver_func): Refactor to use ix86_mangle_decl_assembler_name + for mangling. + * config/riscv/riscv.cc (riscv_mangle_decl_assembler_name): Add logic + for FMV mangling. + (get_suffixed_assembler_name): Removed. + (make_resolver_func): Refactor to use riscv_mangle_decl_assembler_name + for mangling. + (riscv_generate_version_dispatcher_body): Remove unnecessary remangling. + (riscv_get_function_versions_dispatcher): Remove duplicated cgraph + logic. + * config/rs6000/rs6000.cc (rs6000_mangle_decl_assembler_name): New + function. + (rs6000_get_function_versions_dispatcher): Remove duplicated cgraph + logic. + (make_resolver_func): Refactor to use rs6000_mangle_decl_assembler_name + for mangling. + (rs6000_mangle_function_version_assembler_name): New function. + * multiple_target.cc (create_dispatcher_calls): Remove mangling code. + (get_attr_str): Removed. + (separate_attrs): Ditto. + (is_valid_asm_symbol): Removed. + (create_new_asm_name): Ditto. + (expand_target_clones): Refactor to use + targetm.mangle_decl_assembler_name for mangling and be more general. + * tree.cc (get_target_clone_attr_len): Removed. + * tree.h (get_target_clone_attr_len): Removed. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * cgraph.h (clone_identifier): New function. + * cgraphclones.cc (clone_identifier): New function. + (clone_function_name): Refactored to use clone_identifier. + (is_valid_asm_symbol): New helper function. + +2025-09-23 liuhongt <hongtao.liu@intel.com> + + PR target/121994 + * config/i386/x86-tune-costs.h (znver2_cost): Set + vect_unroll_limit to 1. + (znver1_cost): Ditto. + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Adjust count number for {AVX256,AVX512}_SPLIT_REGS. + +2025-09-22 Peter Bergner <bergner@tenstorrent.com> + + PR target/121982 + * config/riscv/tt-ascalon-d8.md (tt_ascalon_d8_vec_idiv_byte): New + define_insn_reservation. + +2025-09-22 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * builtins.cc (fold_builtin_constant_p): Make non-static. + * builtins.h (fold_builtin_constant_p): New declaration. + * gimple-fold.cc (gimple_fold_builtin_constant_p): New function. + (gimple_fold_builtin): Call gimple_fold_builtin_constant_p + for BUILT_IN_CONSTANT_P. + * tree-ssa-ccp.cc (pass_fold_builtins::execute): Set PROP_last_full_fold + on curr_properties. Remove handling of BUILT_IN_CONSTANT_P. + +2025-09-22 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/libgdiagnostics/index.rst: Drop broken reference to + `modindex`. + +2025-09-22 Pan Li <pan2.li@intel.com> + + PR middle-end/122021 + * tree-ssa-math-opts.cc (build_and_insert_cast): Add sign-extend + check before prop. + +2025-09-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122016 + * tree-ssa-sccvn.cc (vn_nary_simplify): Do not use the + simplified expression when it references abnormals. + +2025-09-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122023 + * tree-vect-patterns.cc (vect_recog_rotate_pattern): Disable + for rotates. + +2025-09-22 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/116205 + * config/pru/pru-passes.cc (class pass_pru_tiabi_check): Make + this an IPA pass. + (chkp_type_has_function_pointer): Remove. + (check_type_tiabi_compatibility): New function. + (chk_function_decl): Rename. + (check_function_decl): Simplify. + (check_op_callback): Rework to use + check_type_tiabi_compatibility. + (pass_pru_tiabi_check::execute): Rework to scan all symbols and + gimple contents of all defined functions. + * config/pru/pru-passes.def (INSERT_PASS_AFTER): Move after + pass_ipa_auto_profile_offline. + * config/pru/pru-protos.h (make_pru_tiabi_check): New + declaration to mark as IPA pass. + (make_pru_minrt_check): Specify it is making a gimple pass. + * doc/invoke.texi: Document that bit-fields are now rejected for + TI ABI. + +2025-09-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-ccp.cc (optimize_unreachable): Don't check for forced labels. + +2025-09-21 Jan Hubicka <jh@suse.cz> + + * cgraphclones.cc (cgraph_node::create_version_clone): Recompute + calls_comdat_local + +2025-09-21 Jan Hubicka <jh@suse.cz> + + * cgraph.cc (cgraph_edge::maybe_hot_p): For AFDO profiles force + count to be non-zero. + +2025-09-21 Jan Hubicka <jh@suse.cz> + + * auto-profile.cc (autofdo_source_profile::read): Scale profile up to + profile_count::n_bits - 10. + +2025-09-21 Jan Hubicka <jh@suse.cz> + + * ipa-inline-transform.cc (clone_inlined_nodes): Add KEEP_OFFLINE_COPY + parameter. + (inline_call): Sanity check profile and if it is clearly broken do + not subtract profile from original function. + * ipa-inline.cc (recursive_inlining): Update. + * ipa-inline.h (clone_inlined_nodes): Update. + +2025-09-20 Jan Hubicka <jh@suse.cz> + + * doc/invoke.texi (--param max-devirt-targets) Document. + * ipa-devirt.cc (ipa_devirt): Implement muti-target + devirtualization. + * params.opt (max-devirt-targets): New parameter. + +2025-09-19 Alexandre Oliva <oliva@adacore.com> + + * ira.cc (setup_reg_equiv): Retain function invariant + equivalences. + +2025-09-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Take gimple* + instead of iterator. + (optimize_agr_copyprop): Likewise. + (simplify_builtin_call): Update call to optimize_aggr_zeroprop. + (pass_forwprop::execute): Update calls to optimize_aggr_zeroprop + and optimize_agr_copyprop. + +2025-09-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop_1): Change return type + to void. + (optimize_aggr_zeroprop): Likewise. + (optimize_agr_copyprop_1): Likewise. + (optimize_agr_copyprop_arg): Likewise. + (optimize_agr_copyprop): Likewise. + (simplify_builtin_call): Handle update of the return type + of optimize_aggr_zeroprop. + (pass_forwprop::execute): Likewise and optimize_agr_copyprop. + +2025-09-19 Michael Eager <eager@eagercon.com> + + PR target/118280 + * config/microblaze/iterators.md: New. + * config/microblaze/microblaze-protos.h: Add + microblaze_subword_address. + * config/microblaze/microblaze.cc: Ditto. + * config/microblaze/microblaze.md: constants: Add UNSPECV_CAS_BOOL, + UNSPECV_CAS_MEM, UNSPECV_CAS_VAL, UNSPECV_ATOMIC_FETCH_OP + type: add atomic + * config/microblaze/sync.md: Add atomic_fetch_<atomic_optab>si + atomic_test_and_set + +2025-09-19 Jan Hubicka <jh@suse.cz> + + * ipa-fnsummary.cc (estimate_edge_devirt_benefit): Handle speculative + edges correctly. + (estimate_edge_size_and_time): Even when not collecting hints, + devirtualization affects function size. + (estimate_calls_size_and_time): Do not use tables when devirtualization + is possible. + +2025-09-19 Jan Hubicka <jh@suse.cz> + + * cgraph.cc (cgraph_edge::make_direct): Do not ICE when there are + multiple speculations to comptaible targets + (cgraph_edge::combined_sreal_frequency): New member function. + * cgraph.h (cgraph_edge::combined_sreal_frequency): Declare. + * ipa-cp.cc (devirtualization_time_bonus): Return sreal; consider + profile. + (estimate_local_effects): Likewise. + +2025-09-19 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121856 + * doc/gm2.texi (Compiler options): New item -fwideset. + +2025-09-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/121983 + * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Make sure + object is a REG before asking for its REGNO. Fix a trivial + whitespace nit. + +2025-09-19 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + * config/riscv/riscv-v.cc + (shuffle_slide_patterns): Cover more permutations. + +2025-09-19 Jim Lin <jim@andestech.com> + + * config/riscv/riscv.cc (riscv_compute_frame_info): Remove the + dedicated calculation for RVE. + +2025-09-19 Jeff Law <jlaw@ventanamicro.com> + + * config.gcc (riscv*); Add riscv-bclr-lowest-set-bit.o to extra_objs. + * config/riscv/riscv-bclr-lowest-set-bit.cc: New file. + * config/riscv/riscv-passes.def: Add new pass after combine. + * config/riscv/riscv-protos.h (make_pass_bclr_lowest_set_bit): Add + prototype. + * config/riscv/t-riscv: Add rules to build riscv-bclr-lowest-set-bit.o. + +2025-09-19 Richard Biener <rguenther@suse.de> + + * tree-ssa-pre.cc (compute_antic_aux): Remove dead code. + +2025-09-19 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_stmt_vec_info::store_count): Remove. + (DR_GROUP_STORE_COUNT): Likewise. + * tree-vect-stmts.cc (vect_transform_stmt): Remove non-SLP + path. + +2025-09-19 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_get_num_copies): Remove unused + overload. Remove defaulted vectype argument and always + use the vector type of the SLP node. + * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): + Adjust. + (vectorizable_lane_reducing): Likewise. + (vect_transform_reduction): Likewise. + (vectorizable_nonlinear_induction): Likewise. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Likewise. + +2025-09-19 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_slp_tree::vec_stmts_size): Remove. + (SLP_TREE_NUMBER_OF_VEC_STMTS): Likewise. + * tree-vect-loop.cc (vectorizable_reduction): Adjust. + (vect_transform_cycle_phi): Likewise. + (vect_transform_lc_phi): Likewise. + (vectorizable_recurr): Likewise. + (vectorizable_induction): Likewise. + (vectorizable_live_operation): Likewise. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Do not set + SLP_TREE_NUMBER_OF_VEC_STMTS. + (vect_slp_analyze_node_operations_1): Likewise. + (vect_slp_analyze_node_operations): Likewise. + (vect_prologue_cost_for_slp): Adjust. + (vect_create_constant_vectors): Likewise. + (vect_get_slp_vect_def): Likewise. + (vect_transform_slp_perm_load_1): Likewise. + (vectorizable_slp_permutation_1): Likewise. + (vect_schedule_slp_node): Likewise. + (vectorize_slp_instance_root_stmt): Likewise. + * tree-vect-stmts.cc (vect_model_simple_cost): Likewise. + (vectorizable_bswap): Likewise. + (vectorizable_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_store): Likewise. + (vectorizable_load): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_early_exit): Likewise. + +2025-09-18 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/client-data-hooks.h (client_data_hooks::dump): New. + * diagnostics/context.cc (context::dump): Dump + m_client_data_hooks. + (client_data_hooks::dump): New. + * diagnostics/logical-locations.h + (logical_locations::manager::dump): New. + * diagnostics/selftest-logical-locations.cc: Include + "diagnostics/dumping.h". + (test_manager::dump): New. + * diagnostics/selftest-logical-locations.h (test_manager::dump): + New decl. + * libgdiagnostics.cc: Include "diagnostics/dumping.h". + (impl_logical_location_manager::dump): New. + * tree-logical-location.cc: Include "diagnostics/dumping.h". + (tree_logical_location_manager::dump): New. + * tree-logical-location.h (tree_logical_location_manager::dump): + New decl. + +2025-09-18 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/paths-output.cc: Update for conversion of + location_aspect to enum class. + * diagnostics/source-printing.cc: Likewise. + * input.cc: Likewise. + * input.h: Likewise. + +2025-09-18 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/buffering.cc: Drop include of "diagnostic.h". + * diagnostics/buffering.h: Likewise. + * diagnostics/context.h (diagnostics::metadata): Add forward decl. + * diagnostics/html-sink.cc: Drop include of "diagnostic.h". + * diagnostics/lazy-paths.cc: Likewise. + * diagnostics/macro-unwinding.cc: Likewise. + * diagnostics/macro-unwinding.h (diagnostics:diagnostic_info): Add + forward decl. + * diagnostics/option-classifier.h: Include + "diagnostics/option-id.h" and "diagnostics/kinds.h". + (diagnostics:diagnostic_info): Add forward decl. + * diagnostics/output-spec.cc: Drop include of "diagnostic.h". + * diagnostics/paths-output.cc: Likewise. + * diagnostics/paths.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/selftest-context.cc: Likewise. + * diagnostics/selftest-paths.cc: Likewise. + * diagnostics/source-printing-options.h: Include + "rich-location.h". + * diagnostics/text-sink.cc: Drop include of "diagnostic.h". + +2025-09-18 Qing Zhao <qing.zhao@oracle.com> + + PR tree-optimization/121894 + * tree-sra.cc (scan_function): Set grp_assignment_write to 1 when + specially handle call to .DEFERRED_INIT. + +2025-09-18 Zhongyao Chen <chenzhongyao.hit@gmail.com> + + PR target/121910 + * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): + Return RVV_M8 when estimated lmul is too large. + +2025-09-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/121977 + * omp-low.cc (lower_omp_regimplify_operands_p): If maybe_lookup_decl + returns NULL, use maybe_lookup_decl_in_outer_ctx as fallback. + +2025-09-18 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64-sme.md (@aarch64_sme_write_zt<SVE_FULL:mode>): New insn. + (aarch64_sme_lut_zt): Likewise. + * config/aarch64/aarch64-sve-builtins-shapes.cc (parse_type): New type format "%T". + (struct luti_lane_zt_base): New function shape. + (SHAPE): Likewise. + (struct write_zt_def): Likewise. + (struct write_lane_zt_def): Likewise. + * config/aarch64/aarch64-sve-builtins-shapes.h: New function shape. + * config/aarch64/aarch64-sve-builtins-sme.cc (class svluti_zt_impl): New function expander. + (class svwrite_zt_impl): Likewise. + (class svwrite_lane_zt_impl): Likewise. + (FUNCTION): Likewise + * config/aarch64/aarch64-sve-builtins-sme.def (svwrite_zt): New function shape. + (svwrite_lane_zt): Likewise. + (svluti4_zt): Likewise. + * config/aarch64/aarch64-sve-builtins-sme.h: New function base. + * config/aarch64/aarch64-sve-builtins.h: Mention the arrays of function_group_info by name. + +2025-09-18 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Conditonally define + `__ARM_FEATURE_SME_LUTv2" macro. + * config/aarch64/aarch64-option-extensions.def (AARCH64_OPT_EXTENSION("sme-lutv2")): New + optional architecture extension. + * config/aarch64/aarch64.h (TARGET_SME_LUTv2): New macro. + * doc/invoke.texi: Document `+sme-lutv2` flag. + +2025-09-18 Pan Li <pan2.li@intel.com> + + * match.pd: Add pattern for SAT_MUL form 5. + * tree-ssa-math-opts.cc (math_opts_dom_walker::after_dom_children): + Try match pattern for IOR. + +2025-09-18 Jan Hubicka <hubicka@ucw.cz> + + * ipa-cp.cc (update_counts_for_self_gen_clones): Do not update + call frequency for local profiles. + +2025-09-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/87615 + * tree-ssa-sccvn.cc (vn_nary_op_insert_into): When inserting + a new predicate or location into an existing predicate list + make sure to not exceed 8 locations. Avoid copying things + when we later eventually throw them away. + (vn_nary_op_insert_pieces_predicated): Avoid expensive check + when not checking. + (dominated_by_p_w_unex): Apply the limit on a single successors + predecessor count consistently. + +2025-09-18 Tobias Burnus <tburnus@baylibre.com> + Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/121922 + * omp-general.cc (omp_dynamic_cond): Use 'unshare_expr' for + the user condition. + +2025-09-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121720 + * tree-ssa-pre.cc (bitmap_set_subtract_expressions): Add + flag to tell whether we should copy instead of prune the + value set. + (compute_antic_aux): Remove intersection of ANTIC_IN with + the old solution. When subtracting TMP_GEN from + ANTIC_OUT do not prune the value set when MAX was involved + in the ANTIC_OUT computation. + +2025-09-18 hongtao.liu <hongtao.liu@intel.com> + + * config/i386/x86-tune.def (X86_TUNE_AVX512_MOVE_BY_PIECES): + Remove SPR/GNR/DMR. + (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. + +2025-09-17 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.cc (set_defaults): Initialize + m_debug_physical_locations. + +2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121962 + * tree-ssa-forwprop.cc (same_for_assignment): New function. + (optimize_agr_copyprop_1): Use same_for_assignment to check for + nop copies. + (optimize_agr_copyprop): Likewise. + +2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (new_src_based_on_copy): An early out + if both are decls. + +2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Split out + the case where `operand_equal_p (dest, src2)` is false into ... + (new_src_based_on_copy): This. New function. + (optimize_agr_copyprop_arg): Use new_src_based_on_copy + instead of operand_equal_p to find the new src. + +2025-09-17 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR tree-optimization/58727 + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): + In (A & C1) | C2, if (C1|C2) results in a constant with a single bit + clear, then adjust C1 appropriately. + +2025-09-17 Eric Botcazou <ebotcazou@adacore.com> + + * tree-inline.cc (maybe_copy_this_notrap): New function. Also copy + the TREE_THIS_NOTRAP flag for parameters when the argument is a full + object and the parameter's type is self-referential. + (remap_gimple_op_r): Call maybe_copy_this_notrap. + (copy_tree_body_r): Likewise. + +2025-09-17 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*widen_first_<any_extend:su>_vx_<mode>): + Add helper bridge pattern for vwaddu.vx combine. + (*widen_<any_widen_binop:optab>_<any_extend:su>_vx_<mode>): Add + new pattern to match vwaddu.vx combine. + * config/riscv/iterators.md: Add code attr to get extend CODE. + * config/riscv/vector-iterators.md: Add Dmode iterator for + widen. + +2025-09-16 Jakub Jelinek <jakub@redhat.com> + + * doc/invoke.texi (Wimplicit-fallthrough=): Document that also C23 + provides a standard way to suppress the warning with [[fallthrough]];. + +2025-09-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (#include): + Add "addresses.h". + * config/xtensa/xtensa.h (REGNO_OK_FOR_BASE_P): + Simplify to just a call to GP_REG_P(). + (BASE_REG_P): Replace REGNO_OK_FOR_BASE_P() with the equivalent + call to regno_ok_for_base_p(). + +2025-09-16 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * config/aarch64/aarch64.md (isnan<mode>2): Add new expander. + +2025-09-16 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_load_store_type): Get in a flag + whether a SLP_TREE_LOAD_PERMUTATION on the node can be + code generated and use it. Fix the condition on using + strided gather/scatter to avoid dropping a meaningful + permutation. + (vectorizable_store): Adjust. + (vectorizable_load): Analyze the permutation early and + pass the result down to get_load_store_type. Fix the + condition on when we are allowed to elide a load permutation. + +2025-09-16 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121602 + * config/aarch64/aarch64-sve-builtins.cc + (gimple_folder::fold_active_lanes_to): Add force_vector + statement. + +2025-09-16 Jiawei <jiawei@iscas.ac.cn> + + * config.gcc: Accept RISC-V profiles in `--with-arch`. + * config/riscv/arch-canonicalize: Add profile detection and + skip canonicalization for profiles. + +2025-09-16 Jiawei <jiawei@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc (struct riscv_profiles): Add comments. + (RISCV_PROFILE): Removed. + * config/riscv/riscv-profiles.def: New file. + +2025-09-16 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * config/riscv/riscv-ext.def: Imply zicsr. + +2025-09-16 liuhongt <hongtao.liu@intel.com> + + * config/i386/predicates.md (avx_vbroadcast128_operand): New + predicate. + * config/i386/sse.md (*avx_vbroadcastf128_<mode>_perm): New + pre_reload splitter. + +2025-09-15 Alexandre Oliva <oliva@adacore.com> + + * config/rs6000/vxworks.h (TARGET_CMODEL, SET_CMODEL): Define. + +2025-09-15 Alexandre Oliva <oliva@adacore.com> + + * configure.ac: Adjust base register in linker test for large + TOC support. + * configure: Rebuild. + +2025-09-15 Pan Li <pan2.li@intel.com> + + * match.pd: Remove unnecessary cast of unsigned + SAT_MUL for widen-mul. + +2025-09-15 Pan Li <pan2.li@intel.com> + + * tree-ssa-math-opts.cc (build_and_insert_cast): Refine + the cast insert by check the rhs of val. + +2025-09-15 David Faust <david.faust@oracle.com> + + PR debug/121411 + PR debug/121903 + * ctfc.h (ctf_add_sou): Change size arg from size_t to uHWI. + * ctfc.cc (ctf_add_sou): Likewise. + +2025-09-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121751 + PR tree-optimization/121418 + PR tree-optimization/121417 + * tree-ssa-forwprop.cc (split_core_and_offset_size): New function. + (optimize_agr_copyprop_1): Allow for the same + address but different type accesses via a VCE. + +2025-09-15 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/121772 + * match.pd: Add type check to reduc(ctor) pattern. + +2025-09-15 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-mcus.def: Add avr32eb14, avr32eb20, + avr32eb28, avr32eb32. + * doc/avr-mmcu.texi: Rebuild. + +2025-09-15 H.J. Lu <hjl.tools@gmail.com> + + PR target/121934 + * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): If a + single instruction can store or move the whole block of memory, + use vector instruction and don't align destination. + +2025-09-15 Xi Ruoyao <xry111@xry111.site> + + PR target/121906 + * config/loongarch/loongarch.md (*bstrins_<mode>_for_ior_mask): + Always create a new pseudo for the input register of the bstrins + instruction. + +2025-09-15 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121904 + * tree.cc (get_range_pos_neg): Return 3 if arg doesn't have + scalar integral type. + * expr.cc (expand_expr_real_2) <CASE_CONVERT>: Only choose between + sign and zero extension based on costs for scalar integral inner + types. + +2025-09-15 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR middle-end/121391 + * gimplify.cc (gimplify_asm_expr): In case an asm operand is an + error node, bail out early. + +2025-09-14 Richard Biener <rguenther@suse.de> + + PR lto/121935 + * ipa-free-lang-data.cc (find_decls_types_r): Visit DECL_ARGUMENTS + chain manually. + +2025-09-14 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (stmt_vec_info_type::permute_info_type): Add. + (vectorizable_slp_permutation): Declare. + * tree-vect-slp.cc (vectorizable_slp_permutation): Export. + (vect_slp_analyze_node_operations_1): Set permute_info_type + on permute nodes successfully analyzed. + (vect_schedule_slp_node): Dispatch to vect_transform_stmt + for all nodes. + * tree-vect-stmts.cc (vect_transform_stmt): Remove redundant + dump, handle permute_info_type. + +2025-09-14 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_load_store_type): Use VMAT_STRIDED_SLP + for negative stride accesses when VMAT_CONTIGUOUS_REVERSE + isn't applicable. + +2025-09-14 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_load_store_data::n_perms): New. + * tree-vect-stmts.cc (vectorizable_load): Analyze + SLP_TREE_LOAD_PERMUTATION only once and remember n_perms. + Verify the transform-time n_perms against the value stored + during analysis. + +2025-09-13 Gerald Pfeifer <gerald@pfeifer.com> + + * target.def (dtors_from_cxa_atexit): Properly mark up + __cxa_atexit as code. + * doc/tm.texi: Regenerate. + +2025-09-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR rtl-optimization/121205 + * lra-constraints.cc (curr_insn_transform): Stop processing on + error. + +2025-09-13 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/invoke.texi (Optimize Options): Editorial changes around + -fprofile-partial-training. + +2025-09-12 Jeff Law <jlaw@ventanamicro.com> + + * lra-constraints.cc (get_equiv): Bounds check before accessing + data in ira_reg_equiv. + +2025-09-12 Edwin Lu <ewlu@rivosinc.com> + + * match.pd: New NARROW_CLIP variant for SAT_TRUNC. + * tree-vect-patterns.cc (gimple_unsigned_integer_narrow_clip): + Add new decl for NARROW_CLIP. + (vect_recog_sat_trunc_pattern): Add NARROW_CLIP check. + +2025-09-12 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/120063 + * diagnostics/context.cc (context::execution_failed_p): Also treat + any kind::fatal errors as leading to failed execution. + * diagnostics/sarif-sink.cc (maybe_get_sarif_level): Handle + kind::fatal as SARIF level "error". + +2025-09-12 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/121876 + * diagnostics/buffering.cc (context::set_diagnostic_buffer): Add + early reject of the no-op case. + +2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121865 + * ipa-free-lang-data.cc (find_decls_types_r): Don't walk into + DECL_CHAIN for any DECL. + +2025-09-12 Eric Botcazou <ebotcazou@adacore.com> + + * ipa-pure-const.cc (check_stmt): Minor formatting tweaks. + (pass_data_nothrow): Fix pasto in description. + +2025-09-12 Tamar Christina <tamar.christina@arm.com> + + * internal-fn.def (VEC_TRUNC_ADD_HIGH): New. + * doc/generic.texi: Document it. + * optabs.def (vec_trunc_add_high): New. + * doc/md.texi: Document it. + * tree-vect-stmts.cc (vectorizable_early_exit): Use addhn if supported. + +2025-09-12 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-simd.md (vec_addh_narrow<mode>): New. + +2025-09-12 Tamar Christina <tamar.christina@arm.com> + + * tree-vect-loop.cc (vect_analyze_loop_1): If the unroll pragma was set + mark it as handled. + * doc/extend.texi (pragma GCC unroll): Update documentation. + +2025-09-11 Trevor Gross <tmgross@umich.edu> + + * doc/libgcc.texi (Comparison functions): Document functions as + returning CMPtype. + +2025-09-11 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * config/aarch64/aarch64.md (isfinite<mode>2): Add new expander. + +2025-09-11 Matteo Nicoli <matteo.nicoli001@gmail.com> + + PR tree-optimization/121595 + * match.pd (fabs(a + 0.0) -> fabs (a)): Optimization pattern limited to + the -fno-trapping-math case. + +2025-09-11 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_compare_and_swapti_scq): + Require LSX. Change the operands for the output, the memory, + and the expected value to LSX vector modes. Add a FCCmode + output to indicate if CAS has written the desired value into + memory. Use LSX to atomically load both words of the 16B value + in memory. + (atomic_compare_and_swapti): Pun the modes to satisify + the new atomic_compare_and_swapti_scq implementation. Read the + bool return value from the FCC instead of performing a + comparision. + +2025-09-11 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_print_operand): Call + reg_or_0_operand for checking the sanity of %t. + +2025-09-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121703 + * tree-vect-stmts.cc (vectorizable_store): Value-initialize ls. + (vectorizable_load): Likewise. + +2025-09-11 Tsukasa OI <research_trasio@irq.a4lg.com> + + * config/riscv/riscv.cc (riscv_function_ok_for_sibcall): + Suppress cross calling convention sibcall optimization from + the vector calling convention variant. + +2025-09-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * cfgloopmanip.cc (create_preheader): Ensure we can insert + at the end of a preheader. + +2025-09-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121870 + * tree-ssa-propagate.cc + (substitute_and_fold_engine::substitute_and_fold): Skip + removed stmts from noreturn fixup. + +2025-09-11 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/bitmanip.md (*<bitmanip_minmax_cmp_insn>_cmp_<mode>3): + New min/max ifcvt pattern. + * config/riscv/iterators.md (minu): New iterator. + * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): + Remove riscv-specific adjustment. + +2025-09-11 Robin Dapp <rdapp@ventanamicro.com> + + * ifcvt.cc (noce_convert_multiple_sets_1): Add use_cond_earliest + param. + (noce_convert_multiple_sets): Set use_cond_earliest. + (noce_process_if_block): Just use original cost. + (noce_find_if_block): Use insn_cost (jump_insn). + +2025-09-11 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-selftests.cc (riscv_run_selftests): Call + run_vectorize_related_mode_selftests. + (test_vectorize_related_mode): New function to test + vectorize_related_mode behavior. + (run_vectorize_related_mode_selftests): New function to run all + vectorize_related_mode tests. + (run_vectorize_related_mode_vla_selftests): New function to test + VLA modes. + (run_vectorize_related_mode_vls_rv64gcv_selftests): New function to + test VLS modes on rv64gcv. + (run_vectorize_related_mode_vls_rv32gc_zve32x_zvl256b_selftests): + New function to test VLS modes on rv32gc_zve32x_zvl256b. + (run_vectorize_related_mode_vls_selftests): New function to run all + VLS mode tests. + * config/riscv/riscv-v.cc (can_find_related_mode_p): Fix VLS type + handling by converting TARGET_MIN_VLEN from bits to bytes. + +2025-09-10 Georg-Johann Lay <avr@gjlay.de> + + PR target/81540 + PR target/49857 + * common/config/avr/avr-common.cc: Disable -ftree-switch-conversion. + +2025-09-10 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): + Change "Xtrnase" in the comment to "Xtensa". + +2025-09-10 Peter Bergner <bergner@tenstorrent.com> + + PR target/121878 + * config/riscv/tt-ascalon-d8.md (tt_ascalon_d8_vec_idiv_half): Test the + Selected Element Width (SEW) rather than the mode. + (tt_ascalon_d8_vec_idiv_single): Likewise. + (tt_ascalon_d8_vec_idiv_double): Likewise. + (tt_ascalon_d8_vec_float_divsqrt_half): Likewise. + (tt_ascalon_d8_vec_float_divsqrt_single): Likewise. + (tt_ascalon_d8_vec_float_divsqrt_double): Likewise. + +2025-09-10 Juergen Christ <jchrist@linux.ibm.com> + + * tree-vect-loop.cc (vectorizable_live_operation_1): Fix + load/store bias handling. + +2025-09-10 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfwsub_wf_<mode>): New pattern to + combine float_extend + vec_duplicate + vfsub.vv into vfwsub.wf. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121828 + * gimple-lower-bitint.cc (gimple_lower_bitint): For REALPART_EXPR + consumed by store in the same bb and with REALPART_EXPR from + optimizable_arith_overflow, don't add REALPART_EXPR lhs to + the m_names bitmap only if the cast from IMAGPART_EXPR doesn't + appear in between the REALPART_EXPR and the store. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121831 + * expr.cc (raw_data_cst_read_str): New function. + (store_constructor) <case ARRAY_TYPE>: Handle RAW_DATA_CST. + +2025-09-10 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.h (CLZ_DEFINED_VALUE_AT_ZERO): Adjust and + return 2. + (CTZ_DEFINED_VALUE_AT_ZERO): Return 2. + * config/s390/s390.md (clzsi2): Implement. + (ctzsi2): Implement. + +2025-09-10 Maximilian Immanuel Brandtner <maxbr@linux.ibm.com> + + * config/s390/vector.md (*vec_extract<mode>_plus_zero_extend): + Fix define insn. + +2025-09-09 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-devices.def: Correct the Max ISA VGPRs counts for + GFX10 and GFX11 devices. + * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Remove the wave64 + VGPR count fudge. + +2025-09-09 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc (gcn_expand_builtin_1): Enable the "mode" parameter + and ensure that "target" is a register for most of the builtins. + +2025-09-09 David Faust <david.faust@oracle.com> + + PR debug/121411 + * dwarf2ctf.cc (ctf_get_AT_data_member_location) Use AT_unsigned + when fetching AT_bit_offset and AT_data_member_location. Simplify. + (ctf_die_bitsize): Return unsigned HOST_WIDE_INT instead of + uint32_t. + (gen_ctf_base_type, gen_ctf_sou_type, gen_ctf_enumeration_type): + Adapt accordingly. + +2025-09-09 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfwsub_vf_<mode>): New pattern to + combine float_extend + vec_duplicate + vfwsub.vv into vfwsub.vf. + +2025-09-09 Jakub Jelinek <jakub@redhat.com> + + PR c++/121678 + * tree.cc (staticp): Handle REALPART_EXPR and IMAGPART_EXPR. + +2025-09-09 Jonathan Wakely <jwakely@redhat.com> + + * doc/invoke.texi (Warning Options): Note that an option + enabled by -Wextra is for C and ObjC only. + +2025-09-09 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfwadd_wf_<mode>): New pattern to + combine float_extend + vec_duplicate + vfadd.vv into vfwadd.wf. + * config/riscv/vector.md + (@pred_single_widen_<plus_minus:optab><mode>_scalar): Swap and reorder + operands to match the RTL emitted by expand. + +2025-09-09 Kyrylo Tkachov <ktkachov@nvidia.com> + + Revert: + 2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (*bcaxqdi4): New + define_insn_and_split. + +2025-09-09 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * tree-vect-loop-manip.cc (vect_remove_forwarder): New + function. + (slpeel_tree_duplicate_loop_to_edge_cfg): Use it. + +2025-09-09 H.J. Lu <hjl.tools@gmail.com> + + PR target/121861 + * config/i386/i386.cc (ix86_optab_supported_p): Drop + !flag_trapping_math check for floor_optab, ceil_optab and + btrunc_optab. + +2025-09-09 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386-expand.cc (expand_vec_perm_vpermil): Extend + to handle V8SImode. + * config/i386/i386.cc (avx_vpermilp_parallel): Extend to + handle vector integer modes with same vector size and same + component size. + * config/i386/sse.md + (<sse2_avx_avx512f>_vpermilp<mode><mask_name>): Ditto. + (V48_AVX): New mode iterator. + (ssefltmodesuffix): Extend for V16SI/V8DI/V16SF/V8DF. + +2025-09-09 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Check permutation index for vec_perm, don't count it if we + know it's not a cross-lane permutation. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/107997 + PR tree-optimization/121844 + * tree-ssa-loop-ivopts.cc (allow_ip_end_pos_p): Do not allow + IP_END for latches ending with a control stmt. + (create_new_iv): Do not split the latch edge, instead assert + that's not necessary. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfwadd_vf_<mode>): New pattern to + combine float_extend + vec_duplicate + vfwadd.vv into vfwadd.vf. + +2025-09-08 Anton Blanchard <antonb@tenstorrent.com> + + * config/riscv/riscv.cc (tt_ascalon_d8_tune_info): Increase branch_cost + from 3 to 4. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121830 + * tree-vect-loop.cc (vect_analyze_scalar_cycles_1): Only + set STMT_VINFO_REDUC_DEF on reductions. + * tree-vect-slp.cc (vect_build_slp_tree_2): Identify reduction + PHIs by a set STMT_VINFO_REDUC_DEF instead of their def type. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * tree-vect-loop-manip.cc (vect_remove_forwarder): New + function. + (slpeel_tree_duplicate_loop_to_edge_cfg): Use it. + +2025-09-08 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/114892 + * doc/invoke.texi (Developer Options): Document -folding option + for -fdump-tree-*. + +2025-09-08 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * ipa-cp.cc (gather_count_of_non_rec_edges): Check count + initialization before adding to total. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfrsub_vf_<mode>): New pattern to + combine vec_duplicate + vfsub.vv into vfrsub.vf. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfsub_vf_<mode>): New pattern to + combine vec_duplicate + vfsub.vv into vfsub.vf. + * config/riscv/vector.md (@pred_<optab><mode>_scalar): Allow VLS modes. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfadd_vf_<mode>): New pattern to + combine vec_duplicate + vfadd.vv into vfadd.vf. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfwmul_vf_<mode>): New pattern to + combine float_extend + vec_duplicate + vfmul.vv into vfmul.vf. + * config/riscv/vector.md (*@pred_dual_widen_<optab><mode>_scalar): + Swap operands to match the RTL emitted by expand, i.e. first + float_extend then vec_duplicate. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfmin_vf_ieee_<mode>): Rename into... + (*v<ieee_fmaxmin_op>_vf_<mode>): New pattern to combine vec_duplicate + + vf{max,min}.vv (unspec) into vf{max,min}.vf. + +2025-09-08 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/extend.texi (SH Function Attributes): Remove reference to + GNU Binutils 2.7 requirement. + (H8/300 Variable Attributes): Ditto. + +2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87900 + * tree-ssa-strlen.cc (strlen_pass::handle_assign): Add RHS argument. + For empty constructor RHS, see if can combine with a previous malloc into + a calloc. + (strlen_pass::check_and_optimize_call): Update call to handle_assign; + passing NULL_TREE for RHS. + (strlen_pass::check_and_optimize_stmt): Update call to handle_assign. + +2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/83022 + * tree-ssa-strlen.cc (last_stmt_ptr_check): New function. + (allow_memset_malloc_to_calloc): New function. + (strlen_pass::handle_builtin_memset): Check to see if it is a good + idea to do the malloc+memset->calloc optimization. + (printf_strlen_execute): Free post dom info. + +2025-09-08 Sam James <sam@gentoo.org> + + * common.opt.urls: Regenerate. + +2025-09-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121841 + * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Allow + two different decls as bases as non-overlapping bases. + +2025-09-07 Jeff Law <jlaw@ventanamicro.com> + + * dep-fusion.cc: Mark clone, gate and execute methods as final. + +2025-09-07 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/andes-vector-builtins-bases.cc (nds_vd4dot): New class. + (class nds_vd4dotsu): New class. + * config/riscv/andes-vector-builtins-bases.h: New def. + * config/riscv/andes-vector-builtins-functions.def (nds_vd4dots): Ditto. + (nds_vd4dotsu): Ditto. + (nds_vd4dotu): Ditto. + * config/riscv/andes-vector.md + (@pred_nds_vd4dot<su><mode>): New pattern. + (@pred_nds_vd4dotsu<mode>): New pattern. + * config/riscv/genrvv-type-indexer.cc (main): Modify sew of QUAD_FIX, + QUAD_FIX_SIGNED and QUAD_FIX_UNSIGNED. + * config/riscv/riscv-vector-builtins.cc + (qexti_vvvv_ops): New operand information. + (qexti_su_vvvv_ops): New operand information. + (qextu_vvvv_ops): New operand information. + * config/riscv/riscv-vector-builtins.h (XANDESVDOT_EXT): New def. + (required_ext_to_isa_name): Add case XANDESVDOT_EXT. + (required_extensions_specified): Ditto. + (struct function_group_info): Ditto. + * config/riscv/vector-iterators.md (NDS_QUAD_FIX): New iterator. + +2025-09-07 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-opts.h (riscv_microarchitecture_type): Fix ordering. + +2025-09-07 Kuan-Lin Chen <rufus@andestech.com> + + * common/config/riscv/riscv-common.cc: + Turn on VECTOR_ELEN_FP_16 for XAndesvpackfph. + * config/riscv/andes-vector-builtins-bases.cc (nds_vfpmad): New class. + * config/riscv/andes-vector-builtins-bases.h: New def. + * config/riscv/andes-vector-builtins-functions.def (nds_vfpmadt): Ditto. + (nds_vfpmadb): Ditto. + (nds_vfpmadt_frm): Ditto. + (nds_vfpmadb_frm): Ditto. + * config/riscv/andes-vector.md (@pred_nds_vfpmad<nds_tb><mode>): + New pattern. + * config/riscv/riscv-vector-builtins-types.def + (DEF_RVV_F16_OPS): New def. + * config/riscv/riscv-vector-builtins.cc (f16_ops): Ditto + * config/riscv/riscv-vector-builtins.def (float32_type_node): Ditto. + * config/riscv/riscv-vector-builtins.h (XANDESVPACKFPH_EXT): Ditto. + (required_ext_to_isa_name): Add case XANDESVPACKFPH_EXT. + (required_extensions_specified): Ditto. + * config/riscv/vector-iterators.md (VHF): New iterator. + +2025-09-07 Georg-Johann Lay <avr@gjlay.de> + + PR target/121794 + * config/avr/avr.md (cmpqi3): Use cpi R,0 if possible. + +2025-09-07 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*vnmsac_vx_<mode>): Rename from. + (*mul_minus_vx_<mode>): Rename to and add nmsub support. + * config/riscv/vector.md (@pred_vnmsac_vx_<mode>): Rename from. + (@pred_mul_minus_vx_<mode>): Rename to and add nmsub support. + (*pred_nmsac_<mode>_scalar_undef): Rename from. + (*pred_mul_minus_vx<mode>_undef): Rename to and add nmsub support. + +2025-09-06 Sam James <sam@gentoo.org> + + * doc/generic.texi (TYPE_CANONICAL): Don't mention long-removed + --param verify-canonical-types. + +2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/121835 + * dep-fusion.cc (pass_dep_fusion::execute): Return early if + macro_fusion_pair_p is null. + +2025-09-06 Artemiy Volkov <artemiyv@acm.org> + + * Makefile.in (OBJS): Add dep-fusion.o. + * common.opt (fdep-fusion): Add option. + * dep-fusion.cc: New pass. + * doc/invoke.texi: Document it. + * opts.cc (default_options_table): Enable it at -O2+ and -Os. + * passes.def: Insert two instances of dep_fusion. + * tree-pass.h (make_pass_dep_fusion): Declare new function. + +2025-09-06 Sam James <sam@gentoo.org> + + * doc/invoke.texi (x86 Options): Fix '-momit-leaf-frame-pointer' typo. + +2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (simplify_builtin_call): Factor out + the memcpy followed by a memset optimization to ... + (simplify_builtin_memcpy_memset): Here. New function. + +2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (simplify_builtin_call): Factor out the memchr + optimization to ... + (simplify_builtin_memchr): Here. New function. + +2025-09-06 Simon Martin <simon@nasilyan.com> + + * ipa-inline-transform.cc: Define INCLUDE_ALGORITHM. + +2025-09-06 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Prerequisites): Properly capitalize + GNU Binutils. + (Configuration): Ditto. + (Building): Ditto. + (Specific): Ditto. + +2025-09-06 Sam James <sam@gentoo.org> + + * doc/invoke.texi: Say 'whole-program' consistently where + appropriate. + +2025-09-06 Sam James <sam@gentoo.org> + + * doc/invoke.texi: Capitalize 'GNU Binutils' consistently. + +2025-09-06 Sam James <sam@gentoo.org> + + PR ipa/116410 + * doc/invoke.texi (Link Options): Update -flinker-output= text + to reflect GNU Binutils changes. Fix grammar. + +2025-09-06 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/andes-vector-builtins-bases.cc + (nds_nibbleload): New class. + * config/riscv/andes-vector-builtins-bases.h (nds_vln8): New def. + (nds_vlnu8): Ditto. + * config/riscv/andes-vector-builtins-functions.def (nds_vln8): Ditto. + (nds_vlnu8): Ditto. + * config/riscv/andes-vector.md (@pred_intload_mov<su><mode>): New pattern. + * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_Q_OPS): New def. + (DEF_RVV_QU_OPS): Ditto. + * config/riscv/riscv-vector-builtins.cc + (q_v_void_const_ptr_ops): New operand information. + (qu_v_void_const_ptr_ops): Ditto. + * config/riscv/riscv-vector-builtins.def (void_const_ptr): New def. + * config/riscv/riscv-vector-builtins.h (enum required_ext): Ditto. + (required_ext_to_isa_name): Add case XANDESVSINTLOAD_EXT. + (required_extensions_specified): Ditto. + * config/riscv/vector-iterators.md (NDS_QVI): New iterator. + +2025-09-06 Kuan-Lin Chen <rufus@andestech.com> + + * common/config/riscv/riscv-common.cc: + Turn on VECTOR_ELEN_BF_16 for XAndesvbfhcvt. + * config.gcc: Add extra_objs andes-vector-builtins-bases.o + and extra_headers andes_vector.h. + * config/riscv/riscv-vector-builtins-shapes.cc + (BASE_NAME_MAX_LEN): Increase size to 20. + * config/riscv/riscv-vector-builtins.cc + (f32_to_bf16_nf_w_ops): New operand information. + (f32_to_bf16_nf_w_ops): New operand information. + (DEF_RVV_FUNCTION): New def. + * config/riscv/riscv-vector-builtins.def (bf16): Ditto. + * config/riscv/riscv-vector-builtins.h (enum required_ext): Ditto. + (required_ext_to_isa_name): Add case XANDESVBFHCVT_EXT. + (required_extensions_specified): Ditto. + * config/riscv/t-riscv: Add andes-vector-builtins-functions.def, + andes-vector-builtins-bases.h and andes-vector-builtins-bases.o. + * config/riscv/vector-iterators.md (NDS_VWEXTBF): New iterator. + (NDS_V_DOUBLE_TRUNC_BF): New attr. + * config/riscv/andes-vector-builtins-bases.cc: New file. + * config/riscv/andes-vector-builtins-bases.h: New file. + * config/riscv/andes-vector-builtins-functions.def: New file. + * config/riscv/andes_vector.h: New file. + * config/riscv/andes-vector.md: New file. + * config/riscv/vector.md: Include andes_vector.md. + +2025-09-06 Anton Blanchard <antonb@tenstorrent.com> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Update. + * config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): + Add tt_ascalon_d8. + * config/riscv/riscv.md: Update tune attribute and include + tt-ascalon-d8.md. + * config/riscv/tt-ascalon-d8.md: New file. + +2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/108466 + * tree-ssa-phiopt.cc (factor_out_conditional_operation): Give better + locations to the new phi args and the new statement. + +2025-09-05 Andre Vehreschild <vehre@gcc.gnu.org> + + PR middle-end/121806 + * gcc.cc (for_each_path): Initialize return value. + +2025-09-05 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121510 + * config/riscv/riscv.cc (riscv_legitimize_move): Check if we can + vec_extract. + +2025-09-05 Richard Sandiford <rdsandiford@googlemail.com> + + PR rtl-optimization/121757 + * rtl-ssa/accesses.h (clobber_group::lookup_clobber): New member + function. + * rtl-ssa/accesses.cc (clobber_group::lookup_clobber): Likewise. + (clobber_group::prev_clobber, clobber_group::next_clobber) + (function_info::add_clobber): Use it. + +2025-09-05 Georg-Johann Lay <avr@gjlay.de> + + PR target/121794 + * config/avr/avr.cc (avr_out_compare): Only use zero_reg + when there is no other sequence of the same length. + (avr_out_plus_ext): Same. + (avr_out_plus_1): Same. + +2025-09-05 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vectorizable_bb_reduc_epilogue): Do not + cost zero remaining scalar stmts. + (vectorizable_slp_permutation): Do not cost zero actual + permutations. + * tree-vect-stmts.cc (vectorizable_load): Likewise. + +2025-09-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121802 + * tree-vectorizer.h (vect_setup_realignment): Add vectype + argument. + * tree-vect-data-refs.cc (vect_setup_realignment): Replace + local vectype with argument. + * tree-vect-stmts.cc (vectorizable_load): Adjust. + +2025-09-05 Jakub Jelinek <jakub@redhat.com> + + * J: Remove. + +2025-09-05 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/iterators.md (sve_di_suf): New mode attribute. + * config/aarch64/aarch64-sve.md (<optab><mode>3 SVE_INT_BINARY_MULTI): + Rename to... + (<optab><mode>3<sve_di_suf>): ... This. Use SVE_I_SIMD_DI mode + iterator. + * config/aarch64/aarch64-simd.md (<su><maxmin>v2di3): Use the above + for TARGET_SVE. + +2025-09-04 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*vmacc_vx_<mode>): Rename to + handle both the macc and madd. + (*mul_plus_vx_<mode>): Add madd pattern. + * config/riscv/vector.md (@pred_mul_plus_vx_<mode>): Rename to + handle both the macc and madd. + (*pred_macc_<mode>_scalar_undef): Remove. + (*pred_nmsac_<mode>_scalar_undef): Remove. + (*pred_mul_plus_vx<mode>_undef): Add new pattern to handle + both the vmacc and vmadd. + (@pred_mul_plus_vx<mode>): Ditto. + +2025-09-04 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_annotate_cfg): Apply zero_bbs after early + exit for missing profile; fix formating + +2025-09-04 Jan Hubicka <hubicka@ucw.cz> + + * ipa-inline-transform.cc (inline_call): If function with + AFDO profile is inlined into function with + GUESSED_GLOBAL0_AFDO or GUESSED_GLOBAL0_ADJUSTED, scale + caller to AFDO profile. + * profile-count.h (profile_count::apply_scale): If num is AFDO + and den is not GUESSED, make result AFDO rather then GUESSED. + +2025-09-04 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * builtins.cc (interclass_mathfn_icode): Add support for isnan + optab. + (expand_builtin): Add BUILT_IN_ISNAN to expand isnan optab. + (fold_builtin_interclass_mathfn): Expand BUILT_IN_ISNAN only after + checking for a valid optab. + (fold_builtin_classify): Move generic BUILT_IN_ISNAN expansion + to fold_builtin_interclass_mathfn. + (fold_builtin_1): For BUILT_IN_ISNAN first try fold_builtin_classify, + then fold_builtin_interclass_mathfn. + * optabs.def: Add isnan optab. + * doc/md.texi: Document isnan. + +2025-09-04 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Remove unnecessary code around double reductions. + +2025-09-04 Richard Earnshaw <rearnsha@arm.com> + + PR target/121775 + * config/arm/neon.md (vec_set<mode>_internal, all variants): + validate the immediate operand that indicates the lane to + modify. + +2025-09-04 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Eliminate + nested_cycle in favor of double_reduc and set that where + it makes most sense. Remove never taken paths and always + true conditions. + +2025-09-04 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121742 + PR target/121780 + PR target/121781 + * config/riscv/riscv-v.cc (expand_vec_perm): Swap target and + tmp_target. + +2025-09-04 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-loop-manip.cc (vect_gen_prolog_loop_niters): + Change prolog bound to poly_int64. + (vect_gen_scalar_loop_niters): Ditto. + (vect_do_peeling): Use poly estimate for frequency scaling. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121768 + * tree-vect-loop.cc (vect_inner_phi_in_double_reduction_p): Remove. + (vect_analyze_scalar_cycles_1): Analyze inner loops of + double reductions immediately and only mark fully recognized + double reductions. Skip already analyzed inner loops. + (vect_is_simple_reduction): Change double_reduc from a flag + to an output of the inner loop PHI and to whether we are + processing an inner loop of a double reduction. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121685 + * tree-eh.cc (ref_outside_object_p): Split out from ... + (tree_could_trap_p): ... here. Assume the this pointer + of a method refers to an object of at least size of its + base type. + +2025-09-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/107051 + * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): Allow for + memory sharing the same base if they known not to overlap over + the size. + +2025-09-04 Kito Cheng <kito.cheng@sifive.com> + + PR target/110812 + * config/riscv/riscv-c.cc (pragma_intrinsic_flags): Remove struct. + (riscv_pragma_intrinsic_flags_pollute): Remove function. + (riscv_pragma_intrinsic_flags_restore): Remove function. + (riscv_pragma_intrinsic): Simplify to only call handle_pragma_vector. + * config/riscv/riscv-vector-builtins.cc (pragma_intrinsic_flags): + Move struct definition here from riscv-c.cc. + (riscv_pragma_intrinsic_flags_pollute): Move and adapt from + riscv-c.cc, add zvfbfmin, zvfhmin and vector_elen_bf_16 support. + (riscv_pragma_intrinsic_flags_restore): Move from riscv-c.cc. + (rvv_switcher::rvv_switcher): Add pollute_flags parameter to + control flag manipulation. + (rvv_switcher::~rvv_switcher): Restore flags conditionally. + (register_builtin_types): Use rvv_switcher without polluting flags. + (get_required_extensions): Remove function. + (check_required_extensions): Simplify to only check type validity. + (function_instance::function_returns_void_p): Move implementation + from header. + (function_builder::add_function): Register placeholder for LTO. + (init_builtins): Simplify and handle LTO case. + (reinit_builtins): Remove function. + (handle_pragma_vector): Remove extension checking. + * config/riscv/riscv-vector-builtins.h + (function_instance::function_returns_void_p): Add declaration. + (function_call_info::function_returns_void_p): Remove inline + implementation. + +2025-09-04 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_ext_is_subset): Fix + inverted logic in extension subset check. + +2025-09-04 Jakub Jelinek <jakub@redhat.com> + + PR target/117599 + * gimple-lower-bitint.cc (bitint_large_huge::limb_access): Move + build_qualified_type calls into the if/else if/else bodies, for + the last one set ltype to m_limb_type first, drop limb_type_a + and use ltype instead. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/61247 + * tree-scalar-evolution.cc (simplify_peeled_chrec): + Handle the case of a converted peeled chrec. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121740 + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Allow skipping + may-defs from CTORs. Do not skip may-defs with storage-order + issues or (partial) must-defs. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/andes.def: Add nds_fcvt_s_bf16 and nds_fcvt_bf16_s. + * config/riscv/riscv.md (truncsfbf2): Add TARGET_XANDESBFHCVT support. + (extendbfsf2): Ditto. + * config/riscv/riscv-builtins.cc: New AVAIL andesbfhcvt. + Add new define RISCV_ATYPE_BF and RISCV_ATYPE_SF. + * config/riscv/riscv-ftypes.def: New DEF_RISCV_FTYPE. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/constraints.md (Ou07): New constraint. + (ads_Bext): New constraint. + * config/riscv/iterators.md (ANYLE32): New iterator. + (sizen): New iterator. + (sh_limit): New iterator. + (sh_bit): New iterator. + (cs): New iterator. + * config/riscv/predicates.md (ads_branch_bbcs_operand): New predicate. + (ads_branch_bimm_operand): New predicate. + (ads_imm_extract_operand): New predicate. + (ads_extract_size_imm_si): New predicate. + (ads_extract_size_imm_di): New predicate. + (const_int5_operand): New predicate. + * config/riscv/riscv-builtins.cc: + Add new AVAIL andesperf32 and andesperf64. + Add new define RISCV_ATYPE_DI. + * config/riscv/riscv-ftypes.def: New DEF_RISCV_FTYPE. + * config/riscv/riscv.cc + (riscv_extend_cost): Cost for pattern 'bfo'. + (riscv_rtx_costs): Cost for XAndesperf extension. + * config/riscv/riscv.md: Add support for XAndesperf to patterns + zero_extendsidi2_internal, zero_extendhi2, extendsidi2_internal, + extend<SHORT:mode><SUPERQI:mode>2, <any_extract:optab><GPR:mode>3 + and branch_on_bit. + * config/riscv/vector-iterators.md + (sz): Add sign_extract and zero_extract. + * config/riscv/andes.def: New file for vender Andes. + * config/riscv/andes.md: New file for vender Andes. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * config/riscv/riscv-ext.def: Include riscv-ext-andes.def. + * config/riscv/riscv-ext.opt (riscv_xandes_subext): New variable. + (XANDESPERF) : New mask. + (XANDESBFHCVT): Ditto. + (XANDESVBFHCVT): Ditto. + (XANDESVSINTLOAD): Ditto. + (XANDESVPACKFPH): Ditto. + (XANDESVDOT): Ditto. + * config/riscv/t-riscv: Add riscv-ext-andes.def. + * doc/riscv-ext.texi: Regenerated. + * config/riscv/riscv-ext-andes.def: New file. + +2025-09-03 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfmax_vf_<mode>): Rename into... + (*vf<optab>_vf_<mode>): New pattern to combine vec_duplicate + + vf{min,max}.vv into vf{max,min}.vf. + * J: New file. + +2025-09-03 Austin Law <austinklaw@gmail.com> + + PR target/121213 + * config/riscv/sync.md (amo_atomic_exchange_extended<mode>): + Separate insn with sign extension for 64 bit targets. + +2025-09-03 Jan Hubicka <hubicka@ucw.cz> + + * ipa-profile.cc (ipa_profile): Dump profile_info. + +2025-09-03 Jan Hubicka <hubicka@ucw.cz> + + * opts.cc (enable_fdo_optimizations): Do not auto-enabele loop + optimizations with AutoFDO. + +2025-09-03 Jan Hubicka <hubicka@ucw.cz> + + * params.opt (-param=lto-partitions=): INcrease default value from 128 to 512. + +2025-09-03 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR target/121749 + * config/aarch64/aarch64-simd.md (aarch64_<shrn_op>shrn_n<mode>): + Use aarch64_simd_shift_imm_offset_<vn_mode> instead of + aarch64_simd_shift_imm_offset_<ve_mode> predicate. + (aarch64_<shrn_op>shrn_n<mode> VQN define_expand): Likewise. + (*aarch64_<shrn_op>rshrn_n<mode>_insn): Likewise. + (aarch64_<shrn_op>rshrn_n<mode>): Likewise. + (aarch64_<shrn_op>rshrn_n<mode> VQN define_expand): Likewise. + (aarch64_sqshrun_n<mode>_insn): Likewise. + (aarch64_sqshrun_n<mode>): Likewise. + (aarch64_sqshrun_n<mode> VQN define_expand): Likewise. + (aarch64_sqrshrun_n<mode>_insn): Likewise. + (aarch64_sqrshrun_n<mode>): Likewise. + (aarch64_sqrshrun_n<mode>): Likewise. + * config/aarch64/iterators.md (vn_mode): Handle DI, SI, HI modes. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121756 + * tree-ssa-sink.cc (select_best_block): Avoid irreducible + regions in otherwise same loop depth. + (statement_sink_location): When sinking a VDEF, never place + that into an irreducible region. + +2025-09-03 Richard Biener <rguenther@suse.de> + + * tree-vect-patterns.cc (vect_recog_cond_expr_convert_pattern): + Do not set any vector types. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121767 + * tree-vect-patterns.cc (vect_recog_mod_var_pattern): Disable + for reductions. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121758 + * tree-vect-patterns.cc (vect_mark_pattern_stmts): Try + harder to find a reduction continuation. + +2025-09-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121355 + * fold-const.cc (split_address_to_core_and_offset): Handle an MEM_REF after the call + to get_inner_reference. + +2025-09-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-ccp.cc (optimize_memcmp_eq): New function. + (pass_fold_builtins::execute): Call optimize_memcmp_eq + for memcmp. + * tree-ssa-strlen.cc (strlen_pass::handle_builtin_memcmp): Remove. + (strlen_pass::check_and_optimize_call): Don't call handle_builtin_memcmp. + +2025-09-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-strlen.cc (strlen_pass::handle_builtin_memcmp): Create + unaligned types if the alignment of the pointers is less + than the alignment of the new type. + +2025-09-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (simplify_builtin_memcmp): Create + unaligned types if the alignment of the pointers is less + than the alignment of the new type. + +2025-09-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121753 + * tree-vect-patterns.cc (vect_synth_mult_by_constant): Properly + bail when synth_shift_p and an alg_shift use. Handle other + problematic cases. + +2025-09-02 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-v.cc (is_vlmax_len_p): Properly handle VLS + modes. + (imm_avl_p): Fix VLS length check. + (expand_strided_load): Use is_vlmax_len_p. + (expand_strided_store): Ditto. + * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): + Use GET_MODE_NUNITS / NF as avl. + +2025-09-02 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121742 + * config/riscv/riscv-v.cc (expand_vec_perm): Use temporary if + op1 and target overlap. + +2025-09-02 Andrew Stubbs <ams@baylibre.com> + + * doc/options.texi: Document NoOffload. + +2025-09-02 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_transform_stmt): Clear + STMT_VINFO_VECTYPE for all stmts. + (vect_analyze_stmt): Likewise. But restore at the end again. + +2025-09-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121754 + * tree-vectorizer.h (vect_reduc_type): Simplify to not ICE + on nested cycles. + +2025-09-02 Richard Biener <rguenther@suse.de> + + * tree-vect-data-refs.cc (bump_vector_ptr): Remove the + STMT_VINFO_VECTYPE use, bump is always specified. + +2025-09-02 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_check_gather_scatter): Add + vectype parameter. + * tree-vect-data-refs.cc (vect_check_gather_scatter): Get + vectype as parameter. + (vect_analyze_data_refs): Adjust. + * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Likewise. + * tree-vect-slp.cc (vect_get_and_check_slp_defs): Get vectype + as parameter, pass down. + (vect_build_slp_tree_2): Adjust. + * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): Likewise. + (vect_use_strided_gather_scatters_p): Likewise. + +2025-09-02 Jonathan Wakely <jwakely@redhat.com> + + * doc/extend.texi (Common Variable Attributes): Put counted_by + in alphabetical order. + +2025-09-02 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121663 + * tree-cfg.cc (assign_discriminator): Change map argument type + from hash_map with int_hash <int64_t, -1, -2> to one with + int_hash <unsigned, -1U, -2U>. Cast LOCATION_LINE to unsigned. + Return early for (unsigned) LOCATION_LINE above -3U. + (assign_discriminators): Change map type from hash_map with + int_hash <int64_t, -1, -2> to one with int_hash <unsigned, -1U, -2U>. + +2025-09-02 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/gen-riscv-ext-opt.cc (version_t): Remove unused + struct. + (print_ext_doc_entry): Remove unused function. + +2025-09-01 Jonathan Grant <jg@jguk.org> + + * doc/install.texi (Configuration): Fix spelling of "support" + and "floating-point arithmetic". + +2025-09-01 Mark Harmstone <mark@harmstone.com> + + * dwarf2codeview.cc (get_type_num_array_type): Don't try to + encode non-C-style arrays. + +2025-09-01 Jakub Jelinek <jakub@redhat.com> + + * builtins.def: Implement C2Y N3577 - Rename s/uimaxabs/umaxabs/. + (BUILT_IN_UIMAXABS): Rename to ... + (BUILT_IN_UMAXABS): ... this. Change second argument to "umaxabs". + * builtins.cc (fold_builtin_1): Use BUILT_IN_UMAXABS rather than + BUILT_IN_UIMAXABS. + +2025-09-01 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/invoke.texi (Optimize Options): Update the perfwiki web + address. + +2025-09-01 Iain Sandoe <iain@sandoe.co.uk> + + * diagnostics/logging.h (log_param_location_t): Cast + location_t value to fmt_size_t. + +2025-09-01 Iain Sandoe <iain@sandoe.co.uk> + + * configure: Regenerate. + * configure.ac: Do not claim cfi instruction support even + if the assembler has it. + +2025-09-01 Yoshinori Sato <yoshinori.sato@nifty.com> + + PR target/89828 + * config/rx/rx.cc (add_pop_cfi_notes): Release the frame pointer if it is + used. + (rx_expand_prologue): Redesigned stack pointer and frame pointer update + process. + +2025-09-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121744 + * tree-vect-patterns.cc (vect_recog_vector_vector_shift_pattern): + Allow constant left operand. + +2025-09-01 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Use SLP_TREE_REDUC_IDX for following the SLP graph and + for identifying whether we use the 'else' in a COND. + (vectorizable_lane_reducing): Simplify check of whether + we are in a reduction. + (vectorizable_reduction): Add sanity checking around + SLP_TREE_REDUC_IDX and use it where it looks appropriate. + (vect_transform_reduction): Use SLP_TREE_REDUC_IDX. + * tree-vect-stmts.cc (vectorizable_call): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_condition): Likewise. + +2025-09-01 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_live_operation): Check + vect_is_reduction on the SLP node rather than + STMT_VINFO_REDUC_DEF on the stmt. + (vectorizable_reduction): Do not set STMT_VINFO_REDUC_DEF + on live stmts. + +2025-09-01 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_reduc_info): New. + (create_info_for_reduction): Likewise. + (VECT_REDUC_INFO_TYPE): Likewise. + (VECT_REDUC_INFO_CODE): Likewise. + (VECT_REDUC_INFO_FN): Likewise. + (VECT_REDUC_INFO_SCALAR_RESULTS): Likewise. + (VECT_REDUC_INFO_INITIAL_VALUES): Likewise. + (VECT_REDUC_INFO_REUSED_ACCUMULATOR): Likewise. + (VECT_REDUC_INFO_INDUC_COND_INITIAL_VAL): Likewise. + (VECT_REDUC_INFO_EPILOGUE_ADJUSTMENT): Likewise. + (VECT_REDUC_INFO_FORCE_SINGLE_CYCLE): Likewise. + (VECT_REDUC_INFO_RESULT_POS): Likewise. + (VECT_REDUC_INFO_VECTYPE): Likewise. + (STMT_VINFO_VEC_INDUC_COND_INITIAL_VAL): Remove. + (STMT_VINFO_REDUC_EPILOGUE_ADJUSTMENT): Likewise. + (STMT_VINFO_FORCE_SINGLE_CYCLE): Likewise. + (STMT_VINFO_REDUC_FN): Likewise. + (STMT_VINFO_REDUC_VECTYPE): Likewise. + (vect_reusable_accumulator::reduc_info): Adjust. + (vect_reduc_type): Adjust. + (_slp_tree::cycle_info): New member. + (SLP_TREE_REDUC_IDX): Likewise. + (vect_reduc_info_s): Move/copy data from ... + (_stmt_vec_info): ... here. + (_loop_vec_info::redcu_infos): New member. + (info_for_reduction): Adjust to take SLP node. + (vect_reduc_type): Adjust. + (vect_is_reduction): Add overload for SLP node. + * tree-vectorizer.cc (vec_info::new_stmt_vec_info): + Do not initialize removed members. + (vec_info::free_stmt_vec_info): Do not release them. + * tree-vect-stmts.cc (vectorizable_condition): Adjust. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize + cycle info. + (vect_build_slp_tree_2): Compute SLP reduc_idx and store + it. Create, populate and propagate reduction info. + (vect_print_slp_tree): Print cycle info. + (vect_analyze_slp_reduc_chain): Set cycle info on the + manual added conversion node. + (vect_optimize_slp_pass::start_choosing_layouts): Adjust. + * tree-vect-loop.cc (_loop_vec_info::~_loop_vec_info): + Release reduction infos. + (info_for_reduction): Get the reduction info from + the vector in the loop_vinfo. + (vect_create_epilog_for_reduction): Adjust. + (vectorizable_reduction): Likewise. + (vect_transform_reduction): Likewise. + (vect_transform_cycle_phi): Likewise, deal with nested + cycles not part of a double reduction have no reduction info. + * config/aarch64/aarch64.cc (aarch64_force_single_cycle): + Use VECT_REDUC_INFO_FORCE_SINGLE_CYCLE, get SLP node and use + that. + (aarch64_vector_costs::count_ops): Adjust. + +2025-09-01 Tobias Burnus <tburnus@baylibre.com> + + PR target/121392 + * doc/install.texi (amdgcn): Mention Newlib commit + that fixes another SIMD issue. + +2025-09-01 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_is_simple_iv_evolution): Get + stmt_info and store into STMT_VINFO_LOOP_PHI_EVOLUTION_BASE_UNCHANGED + and STMT_VINFO_LOOP_PHI_EVOLUTION_PART here. Drop unused + output parameters. + (vect_is_nonlinear_iv_evolution): Likewise. + (vect_analyze_scalar_cycles_1): Remove redundant setting + of STMT_VINFO_LOOP_PHI_EVOLUTION_BASE_UNCHANGED and + STMT_VINFO_LOOP_PHI_EVOLUTION_PART. + +2025-09-01 Cui, Lili <lili.cui@intel.com> + + PR rtl-optimization/117838 + * ira-color.cc (improve_allocation): Remove soft conflict related code. + +2025-09-01 liuhongt <hongtao.liu@intel.com> + + PR target/121699 + * config/i386/predicates.md (const_vec_dup_operand): New + predicate. + * config/i386/sse.md (cond_<insn><mode>): Fix predicate of + operands[3], and fix wrong operands passed to + ix86_vgf2p8affine_shift_matrix and + gen_vgf2p8affineqb_<mode>_mask. + +2025-08-31 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/predicates.md (alt_ubranch_operator): + New predicate. + * config/xtensa/xtensa.md (*eqne_in_range): + New insn_and_split pattern. + +2025-08-31 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/riscv-protos.h (synthesize_add_extended): Prototype. + * config/riscv/riscv.cc (synthesize_add_extended): New function. + * config/riscv/riscv.md (addsi3): For RV64, try synthesize_add_extended. + +2025-08-31 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/install.texi (Binaries): Drop MinGW. + +2025-08-30 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121698 + * tree-ssa-phiopt.cc (spaceship_replacement): Adjust + to handle spaceship unordered value -128 rather than 2 and + stmts from the new std::partial_order::_M_reverse() instead + of (_M_value & ~1) == _M_value etc. + * doc/md.texi (spaceship@var{m}4): Use -128 instead of 2. + * tree-ssa-math-opts.cc (optimize_spaceship): Adjust comments + that libstdc++ unordered value is -128 rather than 2 and use + that as the default unordered value. + * config/i386/i386-expand.cc (ix86_expand_fp_spaceship): Use + GEN_INT (-128) instead of const2_rtx and adjust comment accordingly. + * config/aarch64/aarch64.cc (aarch64_expand_fp_spaceship): Likewise. + * config/s390/s390.cc (s390_expand_fp_spaceship): Likewise. + +2025-08-30 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/extend.texi (Vector Extensions): Improve markup for list + of operators. + +2025-08-30 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/standards.texi (Standards): Update "Object-Oriented + Programming and the Objective-C Language" reference. + +2025-08-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/121725 + * config/i386/i386-features.cc + (pass_x86_cse::candidate_gnu2_tls_p): Use the UNSPEC_DTPOFF + operand to check source operand in TLS64_COMBINE pattern. + +2025-08-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/116651 + PR tree-optimization/93265 + PR tree-optimization/103647 + PR tree-optimization/52171 + * tree-ssa-forwprop.cc (simplify_builtin_memcmp): New function. + (simplify_builtin_call): Call simplify_builtin_memcmp for memcmp + memcmp_eq builtins. + +2025-08-29 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121709 + * doc/gm2.texi (Module Search Path): Reflect the new + search order. + +2025-08-29 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostics/logging.o. + * diagnostic-global-context.cc: Include "diagnostics/logging.h". + (log_function_params, auto_inc_log_depth): New "using" decls. + (verbatim): Add logging. + (emit_diagnostic): Likewise. + (emit_diagnostic_valist): Likewise. + (emit_diagnostic_valist_meta): Likewise. + (inform): Likewise. + (inform_n): Likewise. + (warning): Likewise. + (warning_at): Likewise. + (warning_meta): Likewise. + (warning_n): Likewise. + (pedwarn): Likewise. + (permerror): Likewise. + (permerror_opt): Likewise. + * diagnostics/context.cc: Include "diagnostics/logging.h". + (context::initialize): Initialize m_logger. Add logging. + (context::finish): Add logging. Clean up m_logger. + (context::dump): Add indent param. + (context::set_sink): Add logging. + (context::add_sink): Add logging. + (diagnostic_kind_debug_text): New. + (get_debug_string_for_kind): New. + (context::report_diagnostic): Add logging. + (context::diagnostic_impl): Likewise. + (context::diagnostic_n_impl): Likewise. + (context::end_group): Likewise. + * diagnostics/context.h: Include "diagnostics/logging.h". + (context::dump): Add indent param. + (context::get_logger): New accessor. + (context::classify_diagnostics): Add logging. + (context::push_diagnostics): Likewise. + (context::pop_diagnostics): Likewise. + (context::m_logger): New field. + * diagnostics/html-sink.cc: Include "diagnostics/logging.h". + (html_builder::flush_to_file): Add logging. + (html_sink::on_report_diagnostic): Likewise. + * diagnostics/kinds.h (get_debug_string_for_kind): New decl. + * diagnostics/logging.cc: New file. + * diagnostics/logging.h: New file. + * diagnostics/output-file.h: Include "label-text.h". + * diagnostics/sarif-sink.cc: Include "diagnostics/logging.h". + (sarif_builder::flush_to_object): Add logging. + (sarif_builder::flush_to_file): Likewise. + (sarif_sink::on_report_diagnostic): Likewise. + * diagnostics/sink.h (sink::get_logger): New. + * diagnostics/text-sink.cc: Include "diagnostics/logging.h". + (text_sink::on_report_diagnostic): Add logging. + * doc/invoke.texi (Environment Variables): Document + GCC_DIAGNOSTICS_LOG. + * opts-diagnostic.cc: Include "diagnostics/logging.h". + (handle_OPT_fdiagnostics_add_output_): Add loggging. + (handle_OPT_fdiagnostics_set_output_): Likewise. + +2025-08-29 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa-protos.h (xtensa_bswapsi2_output): + New function prototype. + * config/xtensa/xtensa.cc + (xtensa_bswapsi2_output_1, xtensa_bswapsi2_output): + New functions. + * config/xtensa/xtensa.md (bswapsi2_internal): + Rewrite in compact syntax and use xtensa_bswapsi2_output() as asm + output. + +2025-08-29 Jeff Law <jlaw@ventanamicro.com> + + PR target/121548 + * config/riscv/riscv-avlprop.cc (get_insn_vtype_mode): Assert + MODE_IDX is smaller than the number of operands. + (simplify_replace_vlmax_avl): Similarly. + (pass_avlprop::get_vlmax_ta_preferred_avl): Similarly. + * config/riscv/vector.md: Override merge_op_idx computation + for simple moves, just like is done for avl_type_idx and mode_idx. + +2025-08-29 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md + (*vfmin_vf_ieee_<mode>): Add new patterns to combine vec_duplicate + + vfmin.vv (unspec) into vfmin.vf. + (*vfmul_vf_<mode>, *vfrdiv_vf_<mode>, *vfmin_vf_<mode>): Fix attribute + types. + * config/riscv/vector.md (@pred_<ieee_fmaxmin_op><mode>_scalar): Allow + VLS modes. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121096 + * config/i386/i386-expand.cc (expand_cpymem_epilogue): Set and + clear by_pieces_in_use when using by_pieces op. + (expand_setmem_epilogue): Likewise. + * config/i386/i386.cc (ix86_use_by_pieces_infrastructure_p): New. + (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): Likewise. + * config/i386/i386.h (machine_function): Add by_pieces_in_use. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121108 + * config/i386/i386-expand.cc (setmem_epilogue_gen_val): Don't + assert op_mode == word_mode and handle any integer modes. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121694 + * config/i386/i386-features.cc (redundant_pattern): Add + tlsdesc_val. + (pass_x86_cse): Likewise. + (pass_x86_cse::tls_set_insn_from_symbol): New member function. + (pass_x86_cse::candidate_gnu2_tls_p): Set tlsdesc_val. For + TLS64_COMBINE, match both UNSPEC_TLSDESC and UNSPEC_DTPOFF + symbols. For TLS64_CALL, match the UNSPEC_TLSDESC sumbol. + (pass_x86_cse::x86_cse): Initialize the tlsdesc_val field in + load. Pass the tlsdesc_val field to ix86_place_single_tls_call + for X86_CSE_TLSDESC. + +2025-08-29 Tobias Burnus <tburnus@baylibre.com> + + * doc/invoke.texi (AMD GCN Options: -march): Remove '(experimental)' + from gfx-{9,10-3,11}-generic. + +2025-08-29 Tobias Burnus <tburnus@baylibre.com> + + * doc/install.texi (amdgcn): Clarify which binaries must be the + LLVM version and which must be installed. Update version data for + ROCm for generic architectures. + +2025-08-29 liuhongt <hongtao.liu@intel.com> + + * doc/invoke.texi: Document -param=ix86-vect-unroll-limit. + +2025-08-29 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*vnmsac_vx_<mode>): Add new + pattern to combine to vx. + * config/riscv/vector.md (@pred_vnmsac_vx_<mode>): Add new + pattern to generate rtl. + (*pred_nmsac_<mode>_scalar_undef): Ditto. + +2025-08-28 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/115201 + * passes.def: Move cleanup_eh before first tail_recursion. + +2025-08-28 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfmin_vf_<mode>): Add new pattern to + combine vec_duplicate + vfmin.vv into vfmin.vf. + * config/riscv/vector.md (@pred_<optab><mode>_scalar): Allow VLS modes. + +2025-08-28 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_form): Dump + niter assumption used for versioning. + +2025-08-28 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * config/aarch64/aarch64.md (isinf<mode>2): Add new expander. + * config/aarch64/iterators.md (mantissa_bits): Add new mode_attr. + +2025-08-28 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorize_fold_left_reduction): Do not get + reduc_var as argument, instead compute it here. + (vect_transform_reduction): Adjust. + +2025-08-28 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121629 + * doc/gm2.texi (Module Search Path): New section. + (Compiler options): New option -fm2-pathname-root=. + New option -fm2-pathname-rootI. + +2025-08-28 Tobias Burnus <tburnus@baylibre.com> + + PR debug/119367 + * acinclude.m4 (gcc_GAS_FLAGS): For gcn, use "--filetype=obj + -triple=amdgcn--amdhsa", if supported. + * configure: Regenerate. + * doc/install.texi (amdgcn-*-*): Also add llvm-objdump to the list of + to-be-copied files. + +2025-08-28 Richard Biener <rguenther@suse.de> + Jakub Jelinek <jakub@redhat.com> + + * tree-vect-patterns.cc (vect_synth_mult_by_constant): Avoid + in cases that introduce multiple uses of reduction operands. + +2025-08-28 Richard Biener <rguenther@suse.de> + + * tree-vect-patterns.cc (vect_recog_divmod_pattern): Avoid + for stmts participating in a reduction. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + + PR debug/119367 + * configure.ac (gcc_cv_as_leb128): Add fallback using readelf. + Grammar fix in comment. + * configure: Regenerate. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + + PR debug/119367 + * dwarf2out.cc (output_one_line_info_table) <case LI_adv_address>: If + HAVE_AS_LEB128, use DW_LNS_advance_pc with dw2_asm_output_delta_uleb128 + instead of DW_LNS_fixed_advance_pc with dw2_asm_output_delta. + +2025-08-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121695 + * tree-if-conv.cc (factor_out_operators): Fix typo + in assignment of the phi. + +2025-08-27 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_transform_cycle_phi): Remove + unused reduc_stmt_info. + +2025-08-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121686 + * tree-vect-slp.cc (vect_analyze_slp): Consider all only-live + non-reduction defs for discovery. + +2025-08-27 H.J. Lu <hjl.tools@gmail.com> + + PR target/121668 + * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the + TLS call after debug marker. + +2025-08-27 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-cores.def (xt-c908v): Drop xtheadvdot. + (xt-c910v2): Remove extraenous whitespace. + (xt-c920v2): Drop xtheadvdot and remove extraeonous whitespace. + +2025-08-26 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386.cc (ix86_vector_costs::ix86_vector_costs): + Addd new memeber m_num_reduc, m_prefer_unroll. + (ix86_vector_costs::add_stmt_cost): Set m_prefer_unroll and + m_num_reduc + (ix86_vector_costs::finish_cost): Determine + m_suggested_unroll_vector with consideration of + reduc_lat_mult_thr, m_num_reduction and + ix86_vect_unroll_limit. + * config/i386/i386.h (enum ix86_reduc_unroll_factor): New + enum. + (processor_costs): Add reduc_lat_mult_thr and + vect_unroll_limit. + * config/i386/x86-tune-costs.h: Initialize + reduc_lat_mult_thr and vect_unroll_limit. + * config/i386/i386.opt: Add -param=ix86-vect-unroll-limit. + +2025-08-26 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfrdiv_vf_<mode>): Add new pattern to + combine vec_duplicate + vfdiv.vv into vfrdiv.vf. + * config/riscv/vector.md (@pred_<optab><mode>_reverse_scalar): Allow VLS + modes. + +2025-08-26 Tamar Christina <tamar.christina@arm.com> + + PR target/121290 + * config/aarch64/aarch64.cc + (class aarch64_vector_costs ): Add m_loop_fully_scalar_dup. + (aarch64_vector_costs::add_stmt_cost): Detect invariant inner loops. + (adjust_body_cost): Adjust final costing if m_loop_fully_scalar_dup. + +2025-08-26 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/autovec-opt.md (*vfmul_vf_<mode>): Add new pattern to + combine vec_duplicate + vfmul.vv into vfmul.vf. + * config/riscv/vector.md (@pred_<optab><mode>_scalar): Allow VLS modes. + +2025-08-26 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_arg_partial_bytes): Remove name + from unused parameter. + +2025-08-26 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_reduc_type): Get SLP node as argument. + * config/aarch64/aarch64.cc (aarch64_sve_in_loop_reduction_latency): + Take SLO node as argument and adjust. + (aarch64_in_loop_reduction_latency): Likewise. + (aarch64_detect_vector_stmt_subtype): Adjust. + (aarch64_vector_costs::count_ops): Likewise. Treat reductions + during scalar costing as single-cycle. + +2025-08-26 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121659 + * tree-vect-slp.cc (vect_build_slp_tree_1): Do not allow + matching up comparison operators by swapping if that would + disturb STMT_VINFO_REDUC_IDX. Make sure to only + actually mark operands for swapping when there was a + mismatch and we're not processing the first stmt. + +2025-08-26 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_store): Access lanes_ifn + only when VMAT_LOAD_STORE_LANES. + (vectorizable_load): Likewise. + +2025-08-26 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (stmt_vec_info_::reduc_vectype_in): Remove. + (STMT_VINFO_REDUC_VECTYPE_IN): Likewise. + * tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): Get + at the input vectype via the SLP node child. + (vectorizable_lane_reducing): Likewise. + (vect_transform_reduction): Likewise. + (vectorizable_reduction): Do not set STMT_VINFO_REDUC_VECTYPE_IN. + +2025-08-26 Jakub Jelinek <jakub@redhat.com> + + PR target/121658 + * config/i386/sse.md (<insn><mode>3 any_shift): Use const0_rtx + instead of GEN_INT (0). + (cond_<insn><mode> any_shift): Likewise. Formatting fix. + (<insn><mode>3 any_rotate): Use register_operand predicate instead of + general_operand for match_operand 1. Use const0_rtx instead of + GEN_INT (0). + (<insn>v16qi3 any_rotate): Use force_reg on operands[1]. Formatting + fix. + * config/i386/i386.cc (ix86_shift_rotate_cost): Comment formatting + fixes. + +2025-08-26 Pan Li <pan2.li@intel.com> + + * config/riscv/vector.md (@pred_mul_plus_vx_<mode>): Add new pattern to + generate vmacc rtl. + (*pred_macc_<mode>_scalar_undef): Ditto. + * config/riscv/autovec-opt.md (*vmacc_vx_<mode>): Add new + pattern to match the vmacc vx combine. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121453 + * omp-expand.cc (expand_omp_for_init_counts): Clear fd->loop.n2 + before first zero count check if zero_iter1_bb is non-NULL upon + entry and fd->loop.n2 has not been written yet. + +2025-08-25 David Faust <david.faust@oracle.com> + + PR debug/121411 + * dwarf2ctf.cc (gen_ctf_subrange_type): Use unsigned HWI for + array_num_elements. Fallback to CTF_K_UNKNOWN if the array + type has too many elements for CTF to represent. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (simplify_permutation): Boolify. + (pass_forwprop::execute): No longer handle 2 as the return + from simplify_permutation. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (forward_propagate_into_comparison): Boolify. + (pass_forwprop::execute): Don't handle return of 2 from + forward_propagate_into_comparison. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (remove_prop_source_from_use): Remove + return type. + (forward_propagate_into_comparison): Update dealing with + no return type of remove_prop_source_from_use. + (forward_propagate_into_gimple_cond): Likewise. + (simplify_permutation): Likewise. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-forwprop.cc (simplify_gimple_switch): Add simple_dce_worklist + argument. Mark the old index when doing the replacement. + (pass_forwprop::execute): Update call to simplify_gimple_switch. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121279 + * gimple-fold.cc (gimple_needing_rewrite_undefined): Return + true for non mode precision boolean loads. + (rewrite_to_defined_unconditional): Handle non mode precision loads. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * tree-ssa-loop-im.cc (execute_sm): Call + get_or_create_ssa_default_def for the new uninitialized + decl. + +2025-08-25 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (addsi3, <u>mulhisi3, andsi3, + zero_extend<mode>si2, extendhisi2_internal, movsi_internal, + movhi_internal, movqi_internal, movsf_internal, ashlsi3_internal, + ashrsi3, lshrsi3, rotlsi3, rotrsi3): + Rewrite in compact syntax. + +2025-08-25 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md + (The auxiliary define_split for *masktrue_const_bitcmpl): + Use a more concise function call, i.e., + (1 << GET_MODE_BITSIZE (mode)) - 1 is equivalent to + GET_MODE_MASK (mode). + +2025-08-25 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (mode_bits): + New mode attribute. + (zero_extend<mode>si2): Use the appropriate mode iterator and + attribute to unify "zero_extend[hq]isi2" to this description. + +2025-08-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121638 + * tree-vect-stmts.cc (process_use): Do not make induction + PHI backedge values relevant. + +2025-08-25 Indu Bhagat <indu.bhagat@oracle.com> + Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + + * asan.h (HWASAN_TAG_SIZE): Use targetm.memtag.tag_bitsize. + * config/i386/i386.cc (ix86_memtag_tag_size): Rename to + ix86_memtag_tag_bitsize. + (TARGET_MEMTAG_TAG_SIZE): Renamed to TARGET_MEMTAG_TAG_BITSIZE. + * doc/tm.texi (TARGET_MEMTAG_TAG_SIZE): Likewise. + * doc/tm.texi.in (TARGET_MEMTAG_TAG_SIZE): Likewise. + * target.def (tag_size): Rename to tag_bitsize. + * targhooks.cc (default_memtag_tag_size): Rename to + default_memtag_tag_bitsize. + * targhooks.h (default_memtag_tag_size): Likewise. + +2025-08-25 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-protos.h (riscv_init_cumulative_args): Change + fntype parameter from tree to const_tree. + * config/riscv/riscv.cc (riscv_init_cumulative_args): Likewise. + (riscv_function_value): Replace with new implementation that + conforms to TARGET_FUNCTION_VALUE hook signature. + (riscv_libcall_value): New function implementing TARGET_LIBCALL_VALUE. + (TARGET_FUNCTION_VALUE): Define. + (TARGET_LIBCALL_VALUE): Define. + * config/riscv/riscv.h (FUNCTION_VALUE): Remove. + (LIBCALL_VALUE): Remove. + +2025-08-25 Andi Kleen <ak@gcc.gnu.org> + + * config/i386/i386-expand.cc (ix86_vgf2p8affine_shift_matrix): + New function to lookup shift/rotate matrixes for gf2p8affine. + * config/i386/i386-protos.h (ix86_vgf2p8affine_shift_matrix): + Declare new function. + * config/i386/i386.cc (ix86_shift_rotate_cost): Add cost model + for shift/rotate implemented using gf2p8affine. + * config/i386/sse.md (VI1_AVX512_3264): New mode iterator. + (<insn><mode>3): Add GFNI case for shift patterns. + (cond_<insn><mode>3): New pattern. + (<insn><mode>3<mask_name>): Dito. + (<insn>v16qi): New rotate pattern to handle XOP V16QI case + and GFNI. + (rotl<mode>3, rotr<mode>3): Exclude V16QI case. + +2025-08-25 Xi Ruoyao <xry111@xry111.site> + + PR target/121634 + * config/loongarch/simd.md (simd_maddw_evod_<mode>_<su>): Use + WVEC_HALF instead of WVEC for the mode of the sign_extend for + the rhs of multiplication. + +2025-08-25 Jeff Law <jlaw@ventanamicro.com> + + * ifcvt.cc (noce_try_sign_bit_splat): Fix right shift computation. + +2025-08-23 Sam James <sam@gentoo.org> + + PR target/120933 + * config.gcc (supported_defaults): Add tls for i386, x86_64. + * config/i386/i386.h (OPTION_DEFAULT_SPECS): Add tls. + * doc/install.texi: Document --with-tls= for i386, x86_64. + +2025-08-23 John Ericson <git@JohnEricson.me> + + * gcc.cc (for_each_path): templated, to make passing lambdas + possible/easy/safe, and to have a polymorphic return type. + (struct add_to_obstack_info): Deleted, lambda captures replace + it. + (add_to_obstack): Moved to lambda in build_search_list. + (build_search_list): Has above lambda now. + (struct file_at_path_info): Deleted, lambda captures replace + it. + (file_at_path): Moved to lambda in find_a_file. + (find_a_file): Has above lambda now. + (struct spec_path_info): Reamed to just struct spec_path. + (struct spec_path): New name. + (spec_path): Rnamed to spec_path::operator() + (spec_path::operator()): New name + (do_spec_1): Updated for_each_path call sites. + +2025-08-22 Kishan Parmar <kishan@linux.ibm.com> + + PR target/118890 + * config/rs6000/rs6000.cc (can_be_rotated_to_negative_lis): Add bounds + checks for shift counts to prevent undefined behavior. + (rs6000_emit_set_long_const): Likewise. + +2025-08-22 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120553 + * ifcvt.cc (noce_try_sign_bit_splat): New function. + (noce_process_if_block): Use it. + +2025-08-22 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_live_operation): Pass + the representative of the PHIs node to + vect_create_epilog_for_reduction. + +2025-08-22 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_lane_reducing): Get + reduction info properly. Adjust checks according to + comments. + (vectorizable_reduction): Do not set STMT_VINFO_REDUC_VECTYPE_IN + on the reduc info. + (vect_transform_reduction): Query STMT_VINFO_REDUC_VECTYPE_IN + on the actual reduction stmt, not the info. + +2025-08-22 Pan Li <pan2.li@intel.com> + + * match.pd: Add form 3 for unsigned SAT_MUL. + +2025-08-22 H.J. Lu <hjl.tools@gmail.com> + + PR target/121635 + * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the + TLS call after NOTE_INSN_FUNCTION_BEG. + +2025-08-22 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (get_initial_defs_for_reduction): Adjust + comment. + (vect_create_epilog_for_reduction): Get at the reduction + kind via the instance, re-use the slp_reduc flag instead + of checking REDUC_GROUP_FIRST_ELEMENT again. + Remove unreachable code. + (vectorizable_reduction): Compute a reduc_chain flag from + the SLP instance kind, avoid REDUC_GROUP_FIRST_ELEMENT + checks. + (vect_transform_cycle_phi): Likewise. + (vectorizable_live_operation): Check the SLP instance + kind instead of REDUC_GROUP_FIRST_ELEMENT. + +2025-08-22 Richard Biener <rguenther@suse.de> + + * tree-parloops.cc (parloops_is_simple_reduction): Pass + in double reduction inner loop LC phis and query that. + (parloops_force_simple_reduction): Similar, but set it. + Check for valid reduction types here. + (valid_reduction_p): Remove. + (gather_scalar_reductions): Adjust, fixup double + reduction inner loop processing. + +2025-08-22 Sebastian Huber <sebastian.huber@embedded-brains.de> + + * config/riscv/t-rtems: Add -mstrict-align multilibs for + targets without support for misaligned access in hardware. + +2025-08-21 Dimitar Dimitrov <dimitar@dinux.eu> + + * config/pru/pru.cc (pru_init_libfuncs): Set softmpy libgcc + functions for optab multiplication entries if TARGET_OPT_MUL + option is not set. + +2025-08-21 Dimitar Dimitrov <dimitar@dinux.eu> + + * config.gcc: Include pru/t-multilib. + * config/pru/pru.h (MULTILIB_DEFAULTS): Define. + * config/pru/t-multilib: New file. + +2025-08-21 Dimitar Dimitrov <dimitar@dinux.eu> + + * common/config/pru/pru-common.cc (TARGET_DEFAULT_TARGET_FLAGS): + Keep multiplication, FILL and ZERO instructions enabled by + default. + * config/pru/pru.md (prumov<mode>): Gate code generation on + TARGET_OPT_FILLZERO. + (mov<mode>): Ditto. + (zero_extendqidi2): Ditto. + (zero_extendhidi2): Ditto. + (zero_extendsidi2): Ditto. + (@pru_ior_fillbytes<mode>): Ditto. + (@pru_and_zerobytes<mode>): Ditto. + (@<code>di3): Ditto. + (mulsi3): Gate code generation on TARGET_OPT_MUL. + * config/pru/pru.opt: Add mmul and mfillzero options. + * config/pru/pru.opt.urls: Regenerate. + * config/rl78/rl78.opt.urls: Regenerate. + * doc/invoke.texi: Document new options. + +2025-08-21 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/121619 + * rtl-ssa/functions.h (function_info::commit_make_use_available): + Declare. + * rtl-ssa/blocks.cc (function_info::commit_make_use_available): + New function. + * rtl-ssa/changes.cc (function_info::apply_changes_to_insn): Use it. + +2025-08-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/111494 + * gimple-fold.h (arith_code_with_undefined_signed_overflow): Declare. + * gimple-fold.cc (arith_code_with_undefined_signed_overflow): Export. + * tree-vect-stmts.cc (vectorizable_operation): Use unsigned + arithmetic for operations participating in a reduction. + +2025-08-21 H.J. Lu <hjl.tools@gmail.com> + + PR target/121607 + * config/i386/i386-features.cc (ix86_emit_tls_call): Emit the + TLS call after NOTE_INSN_BASIC_BLOCK in a basic block with only + a label. + +2025-08-21 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (*btrue_INT_MIN): + Change the branch insn condition to test for a negative number + rather than testing for the MSB. + +2025-08-21 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vectorizable_phi): Take bb_vec_info. + (vectorizable_early_exit): Take loop_vec_info. + * tree-vect-loop.cc (vectorizable_phi): Adjust. + * tree-vect-slp.cc (vect_slp_analyze_operations): Likewise. + (vectorize_slp_instance_root_stmt): Likewise. + * tree-vect-stmts.cc (vectorizable_early_exit): Likewise. + (vect_transform_stmt): Likewise. + (vect_analyze_stmt): Merge the sequences of vectorizable_* + where common. + +2025-08-20 Qing Zhao <qing.zhao@oracle.com> + + * common.opt.urls: Regenerate. + +2025-08-20 Qing Zhao <qing.zhao@oracle.com> + + PR tree-optimization/109071 + PR tree-optimization/85788 + PR tree-optimization/88771 + PR tree-optimization/106762 + PR tree-optimization/108770 + PR tree-optimization/115274 + PR tree-optimization/117179 + * Makefile.in (OBJS): Add diagnostic-context-rich-location.o. + * common.opt (fdiagnostics-show-context): New option. + (fdiagnostics-show-context=): New option. + * diagnostic-context-rich-location.cc: New file. + * diagnostic-context-rich-location.h: New file. + * doc/invoke.texi (fdiagnostics-details): Add + documentation for the new options. + * gimple-array-bounds.cc (check_out_of_bounds_and_warn): Add + one new parameter. Use rich location with details for warning_at. + (array_bounds_checker::check_array_ref): Use rich location with + ditails for warning_at. + (array_bounds_checker::check_mem_ref): Add one new parameter. + Use rich location with details for warning_at. + (array_bounds_checker::check_addr_expr): Use rich location with + move_history_diagnostic_path for warning_at. + (array_bounds_checker::check_array_bounds): Call check_mem_ref with + one more parameter. + * gimple-array-bounds.h: Update prototype for check_mem_ref. + * gimple-ssa-warn-access.cc (warn_string_no_nul): Use rich location + with details for warning_at. + (maybe_warn_nonstring_arg): Likewise. + (maybe_warn_for_bound): Likewise. + (warn_for_access): Likewise. + (check_access): Likewise. + (pass_waccess::check_strncat): Likewise. + (pass_waccess::maybe_check_access_sizes): Likewise. + * gimple-ssa-warn-restrict.cc (pass_wrestrict::execute): Calculate + dominance info for diagnostics show context. + (maybe_diag_overlap): Use rich location with details for warning_at. + (maybe_diag_access_bounds): Use rich location with details for + warning_at. + +2025-08-20 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121568 + * ipa-prop.h (build_ref_for_offset): Remove. + * tree-sra.cc (build_ref_for_offset): Make static. + +2025-08-20 Richard Sandiford <richard.sandiford@arm.com> + + * config.gcc (aarch64*-*-*): Remove aarch64-cc-fusion.o from + extra_objs. + * config/aarch64/aarch64-passes.def (pass_cc_fusion): Delete. + * config/aarch64/aarch64-protos.h (make_pass_cc_fusion): Delete. + * config/aarch64/t-aarch64 (aarch64-cc-fusion.o): Delete. + * config/aarch64/aarch64-cc-fusion.cc: Delete. + * late-combine.cc (late_combine::optimizable_set): Take a set_info * + rather than an insn_info * and move destination tests from... + (late_combine::combine_into_uses): ...here. Take a set_info * rather + an insn_info *. Take the rtx set. + (late_combine::parallelize_insns, late_combine::combine_cc_setter) + (late_combine::combine_insn): New member functions. + (late_combine::m_parallel): New member variable. + * rtlanal.cc (pattern_cost): Handle sets of CC registers in the + same way as comparisons. + +2025-08-20 Richard Sandiford <richard.sandiford@arm.com> + + * rtl-ssa/blocks.cc (function_info::create_degenerate_phi): Fix + inverted test of bitmap_set_bit. Call add_live_out_use even + if the register was previously live-out from the predecessor block. + Instead... + (function_info::add_live_out_use): ...check here whether a live-out + use already exists. + +2025-08-20 Richard Sandiford <richard.sandiford@arm.com> + + * rtl-ssa/accesses.h (use_lookup): New class. + * rtl-ssa/functions.h (function_info::find_def): Expand comment. + (function_info::find_use): Declare. + * rtl-ssa/member-fns.inl (use_lookup::prev_use, use_lookup::next_use) + (use_lookup::matching_use, use_lookup::matching_or_prev_use) + (use_lookup::matching_or_next_use): New member functions. + * rtl-ssa/accesses.cc (function_info::find_use): Likewise. + +2025-08-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/114480 + * cfganal.cc (compute_idf): Split processing of the initial + workset from the main iteration. Use a vector for the + workset of the main iteration. + +2025-08-20 Georg-Johann Lay <avr@gjlay.de> + + PR target/121608 + * config/avr/specs.h (LINK_RELAX_SPEC): Wrap in %{!r...}. + +2025-08-20 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): New, + copied from vect_analyze_slp_instance and only handle + slp_inst_kind_reduc_chain. Inline vect_build_slp_instance. + (vect_analyze_slp_instance): Only handle slp_inst_kind_store. + Inline vect_build_slp_instance. + (vect_build_slp_instance): Remove now unused stmt_info parameter, + remove special code for store groups and reduction chains. + (vect_analyze_slp): Call vect_analyze_slp_reduc_chain + for reduction chain SLP build and adjust. + +2025-08-20 Richard Biener <rguenther@suse.de> + + * tree-vect-data-refs.cc (vect_check_gather_scatter): + Remove restriction on epilogue of epilogue vectorization. + +2025-08-20 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (update_epilogue_loop_vinfo): Remove + fixing up pattern stmt operands and gather/scatter DR_REFs. + (find_in_mapping): Remove. + +2025-08-20 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_load_store_data): New. + (_slp_tree::memory_access_type): Remove. + (SLP_TREE_MEMORY_ACCESS_TYPE): Turn into inline function. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Do not + initialize SLP_TREE_MEMORY_ACCESS_TYPE. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Remove gather_scatter_info pointer argument, instead get + info from the SLP node. + (vect_build_one_gather_load_call): Get SLP node and builtin + decl as argument and remove uses of gather_scatter_info. + (vect_build_one_scatter_store_call): Likewise. + (vect_get_gather_scatter_ops): Remove uses of gather_scatter_info. + (vect_get_strided_load_store_ops): Get SLP node and remove + uses of gather_scatter_info. + (get_load_store_type): Take pointer to vect_load_store_data + instead of individual pointers. + (vectorizable_store): Adjust. Re-use get_load_store_type + result from analysis time. + (vectorizable_load): Likewise. + +2025-08-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/121572 + * config/i386/i386-features.cc (replace_tls_call): Add a bitmap + argument and put the updated TLS instruction in the bitmap. + (ix86_get_dominator_for_reg): New. + (ix86_check_flags_reg): Likewise. + (ix86_emit_tls_call): Likewise. + (ix86_place_single_tls_call): Add 2 bitmap arguments for updated + GNU and GNU2 TLS instructions. Call ix86_emit_tls_call to emit + TLS instruction. Correct debug dump for before instruction. + +2025-08-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/120024 + * calls.cc (expand_call): Remove start_sequence/end_sequence + for ECF_MALLOC. + Check valreg before deferencing it when it comes to malloc like + functions. Use the return value of emit_move_insn instead of + calling get_last_insn. + +2025-08-19 Richard Biener <rguenther@suse.de> + + * tree-parloops.cc (parloops_is_slp_reduction): Remove. + (parloops_is_simple_reduction): Do not call it. + +2025-08-19 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Pass the + appropriate SLP node for costing of single-def-use-cycle + operations. + (vectorizable_live_operation): Pass the SLP node to the + costing hook. + * tree-vect-stmts.cc (vectorizable_bswap): Likewise. + (vectorizable_store): Likewise. + +2025-08-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121592 + * tree-vect-slp.cc (vect_analyze_slp): When SLP reduction chain + discovery fails, fail overall when the tail of the chain + isn't also the entry for the non-SLP reduction. + +2025-08-19 Richard Biener <rguenther@suse.de> + + * config.gcc (riscv*-*-*): Look for python3, then fall back + to python. Never use python2. + +2025-08-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121527 + * tree-sra.cc (build_access_from_expr_1): Do not strip an + outer VIEW_CONVERT_EXPR as it's relevant for the size of + the access. + (get_access_for_expr): Likewise. + +2025-08-19 Tamar Christina <tamar.christina@arm.com> + + PR target/121536 + * config/aarch64/aarch64.cc (aarch64_bool_compound_p): Use + SLP_TREE_VECTYPE instead of STMT_VINFO_VECTYPE. + (aarch64_adjust_stmt_cost, aarch64_vector_costs::count_ops): Pass SLP + node to aarch64_bool_compound_p. + +2025-08-19 Tamar Christina <tamar.christina@arm.com> + + PR target/121536 + * tree-vect-loop.cc (vectorizable_phi, vectorizable_recurr, + vectorizable_nonlinear_induction, vectorizable_induction): Pass slp_node + instead of stmt_info to record_stmt_cost. + +2025-08-19 Tamar Christina <tamar.christina@arm.com> + + PR target/121536 + * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): Set + vectype from type of lhs of gimple stmt. + +2025-08-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/121581 + * doc/extend.texi (__builtin_object_size): Fix example. + +2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> + + * flag-types.h (sanitize_code_type): Define. + * asan.h (sanitize_flags_p): Use 'sanitize_code_type' instead of + 'unsigned int'. + * common.opt: Likewise. + * dwarf2asm.cc (dw2_output_indirect_constant_1): Likewise. + * opts.cc (find_sanitizer_argument): Likewise. + (report_conflicting_sanitizer_options): Likewise. + (parse_sanitizer_options): Likewise. + (parse_no_sanitize_attribute): Likewise. + * opts.h (parse_sanitizer_options): Likewise. + (parse_no_sanitize_attribute): Likewise. + * tree-cfg.cc (print_no_sanitize_attr_value): Likewise. + * tree.cc (tree_fits_sanitize_code_type_p): Define. + (tree_to_sanitize_code_type): Likewise. + * tree.h (tree_fits_sanitize_code_type_p): Declare. + (tree_to_sanitize_code_type): Likewise. + +2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> + + * config/aarch64/aarch64.md (MEMTAG_TAG_MASK): New define + constant. + (MEMTAG_ADDR_MASK): Likewise. + (irg, subp, ldg): Use new constants. + +2025-08-18 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/97497 + * function-abi.h (predefined_function_abi::only_partial_reg_clobbers) + (function_abi::only_partial_reg_clobbers): New member functions. + * gcse-common.cc: Include regs.h and function-abi.h. + (compute_transp): Check for partially call-clobbered registers + and treat them as not being transparent in blocks with calls. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (UNSPEC_TI_FETCH_ADD): New unspec. + (UNSPEC_TI_FETCH_SUB): Likewise. + (UNSPEC_TI_FETCH_AND): Likewise. + (UNSPEC_TI_FETCH_XOR): Likewise. + (UNSPEC_TI_FETCH_OR): Likewise. + (UNSPEC_TI_FETCH_NAND_MASK_INVERTED): Likewise. + (ALL_SC): New define_mode_iterator. + (_scq): New define_mode_attr. + (atomic_fetch_nand<mode>): Accept ALL_SC instead of only GPR. + (UNSPEC_TI_FETCH_DIRECT): New define_int_iterator. + (UNSPEC_TI_FETCH): New define_int_iterator. + (amop_ti_fetch): New define_int_attr. + (size_ti_fetch): New define_int_attr. + (atomic_fetch_<amop_ti_fetch>ti_scq): New define_insn. + (atomic_fetch_<amop_ti_fetch>ti): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_exchangeti_scq): New + define_insn. + (atomic_exchangeti): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_compare_and_swapti_scq): New + define_insn. + (atomic_compare_and_swapti): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_print_operand_reloc): + Accept "%t" for printing the number of the 64-bit machine + register holding the upper half of a TImode. + * config/loongarch/sync.md (atomic_storeti_scq): New + define_insn. + (atomic_storeti): expand to atomic_storeti_scq if !ISA_HAS_LSX. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/genopts/isa-evolution.in (scq): New evolution + feature. + * config/loongarch/loongarch-evolution.cc: Regenerate. + * config/loongarch/loongarch-evolution.h: Regenerate. + * config/loongarch/loongarch-str.h: Regenerate. + * config/loongarch/loongarch.opt: Regenerate. + * config/loongarch/loongarch.opt.urls: Regenerate. + * config/loongarch/loongarch-def.cc: Make -mscq the default for + -march=la664 and -march=la64v1.1. + * doc/invoke.texi (LoongArch Options): Document -m[no-]scq. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_storeti_lsx): New + define_insn. + (atomic_storeti): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_loadti_lsx): New define_insn. + (atomic_loadti): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md + (atomic_fetch_nand_mask_inverted<GPR:mode>): New define_insn. + (atomic_fetch_nand<GPR:mode>): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_fetch_sub<SHORT:mode>): + Disable if ISA_HAS_LAM_BH. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (UNSPEC_COMPARE_AND_SWAP_AND): + Remove. + (UNSPEC_COMPARE_AND_SWAP_XOR): Remove. + (UNSPEC_COMPARE_AND_SWAP_OR): Remove. + (atomic_test_and_set): Rename to ... + (atomic_fetch_<any_bitwise:amop><SHORT:mode>): ... this, and + adapt the expansion to use it for any bitwise operations and any + val, instead of just ior 1. + (atomic_test_and_set): New define_expand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_test_and_set): Remove + unneeded andi instruction from the expansion. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_print_operand_reloc): + Make "%T" output a comment marker if the operand is a memory + order for which the barrier won't be generated; remove "%t". + * config/loongarch/sync.md (atomic_cas_value_strong<mode>): Add + %T before "b 3f". + (atomic_cas_value_cmp_and_7_<mode>): Likewise. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (UNSPEC_COMPARE_AND_SWAP_AMCAS): New + UNSPEC code. + (atomic_cas_value_strong<mode>): NFC, update the comment to note + we only need to consider failure memory order. + (atomic_cas_value_strong<mode>_amcas): Use + UNSPEC_COMPARE_AND_SWAP_AMCAS instead of + UNSPEC_COMPARE_AND_SWAP. + (atomic_compare_and_swap<mode:GPR>): Pass failure memorder to + gen_atomic_cas_value_strong<mode>. + (atomic_compare_and_swap<mode:SHORT>): Pass failure memorder to + gen_atomic_cas_value_cmp_and_7_si. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_test_and_set): Use bstrins + for masking the address if possible. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_load<mode>): Remove "+" for + the memory operand. + (atomic_store<mode>): Use "=" instead of "+" for the memory + operand. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md: Use <size> instead of <amo>. + (amo): Remove. + +2025-08-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/sync.md (atomic_optab): Remove. + (atomic_<atomic_optab><mode>): Change atomic_optab to amop. + (atomic_fetch_<atomic_optab><mode>): Likewise. + +2025-08-17 Austin Law <austinklaw@gmail.com> + + PR target/121213 + * config/riscv/sync.md (amo_atomic_exchange<mode>): Allow + (const_int 0) as input operand. Do not tie input to output. + No longer earlyclobber the output. + +2025-08-17 Artemiy Volkov <artemiyv@acm.org> + + * regrename.cc (scan_rtx_reg): Handle fused insn pairs. + +2025-08-17 Jan Dubiec <jdx@o2.pl> + + PR target/109324 + * config/h8300/addsub.md: Explicitly specify mode for plus operation. + * config/h8300/jumpcall.md: Explicitly specify modes for eq and + match_operand operations. + * config/h8300/testcompare.md: Explicitly specify modes for eq, ltu + and compare operations. + +2025-08-17 Artemiy Volkov <artemiyv@acm.org> + + * ira-conflicts.cc (add_insn_allocno_copies): Handle fused insn pairs. + * rtl.h (single_output_fused_pair_p): Declare new function. + * rtlanal.cc (single_output_fused_pair_p): Define it. + +2025-08-17 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/121538 + * config/riscv/arch-canonicalize (parse_dep_exts): + Match condition block up to closing brace. + (test_parse_long_condition_block): New test. + +2025-08-17 H.J. Lu <hjl.tools@gmail.com> + + PR target/121541 + * config/i386/i386-options.cc + (ix86_valid_target_attribute_inner_p): Add target("80387") + attribute. Set the mask bit in opts_set->x_target_flags if the + mask bit in opts->x_target_flags is updated. + * doc/extend.texi: Document target("80387") function attribute. + +2025-08-17 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md: Add supported insn + of vx combine. + +2025-08-17 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md: Add missed DONE + for vx combine pattern. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + * doc/extend.texi (Type Traits): Document + __builtin_structured_binding_size. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121552 + * doc/invoke.texi (-Wno-non-c-typedef-for-linkage): Document. + +2025-08-15 Robert Dubner <rdubner@symas.com> + + * real.cc (real_to_decimal_for_mode): Set str[0] to known value. + +2025-08-15 Vineet Gupta <vineetg@rivosinc.com> + + PR target/121534 + * config/riscv/riscv.md (round_pattern): save/restore fflags. + +2025-08-15 Qing Zhao <qing.zhao@oracle.com> + + * doc/extend.texi: Extend counted_by attribute to pointer fields in + structures. Add one more requirement to pointers with counted_by + attribute. + +2025-08-15 Umesh Kalappa <ukalappa.mips@gmail.com> + + * config/riscv/riscv-ext-mips.def (DEFINE_RISCV_EXT): + Added mips prefetch extension. + * config/riscv/riscv-ext.opt: Generated file. + * config/riscv/riscv.md (prefetch): + Added mips prefetch address operand constraint. + * config/riscv/constraints.md: Added mips specific constraint. + * config/riscv/predicates.md (prefetch_operand): + Updated for mips nine bits offset. + * config/riscv/riscv.cc (riscv_prefetch_offset_address_p): + Legitimate address with offset for prefetch check. + * config/riscv/riscv-protos.h: Likewise. + * config/riscv/riscv.h: + Macros to support for mips cached type. + * doc/riscv-ext.texi: Updated for mips prefetch. + +2025-08-15 Richard Sandiford <richard.sandiford@arm.com> + + * config/riscv/riscv-protos.h + (riscv_process_target_version_attr): Change location_t argument + to location_t *. + * config/riscv/riscv-subset.h + (riscv_subset_list::riscv_subset_list): Change location_t argument + to location_t *. + (riscv_subset_list::parse): Likwise. + (riscv_subset_list::set_loc): Likewise. + (riscv_minimal_hwprobe_feature_bits): Likewise. + (riscv_subset_list::m_loc): Change type to location_t. + * common/config/riscv/riscv-common.cc + (riscv_subset_list::riscv_subset_list): Change location_t argument + to location_t *. + (riscv_subset_list::add): Suppress diagnostics when m_loc is null. + (riscv_subset_list::parsing_subset_version): Likewise. + (riscv_subset_list::parse_profiles): Likewise. + (riscv_subset_list::parse_base_ext): Likewise. + (riscv_subset_list::parse_single_std_ext): Likewise. + (riscv_subset_list::check_conflict_ext): Likewise. + (riscv_subset_list::parse_single_multiletter_ext): Likewise. + (riscv_subset_list::parse): Change location_t argument to location_t *. + (riscv_subset_list::set_loc): Likewise. + (riscv_minimal_hwprobe_feature_bits): Likewise. + (riscv_parse_arch_string): Update call accordingly. + * config/riscv/riscv-target-attr.cc + (riscv_target_attr_parser::m_loc): Change type to location_t *. + (riscv_target_attr_parser::riscv_target_attr_parser): Change + location_t argument to location_t *. + (riscv_process_one_target_attr): Likewise. + (riscv_process_target_attr): Likewise. + (riscv_process_target_version_attr): Likewise. + (riscv_target_attr_parser::parse_arch): Suppress diagnostics when + m_loc is null. + (riscv_target_attr_parser::handle_arch): Likewise. + (riscv_target_attr_parser::handle_cpu): Likewise. + (riscv_target_attr_parser::handle_tune): Likewise. + (riscv_target_attr_parser::handle_priority): Likewise. + (riscv_option_valid_attribute_p): Update call accordingly. + (riscv_option_valid_version_attribute_p): Likewise. + * config/riscv/riscv.cc (parse_features_for_version): Add a + location_t * argument. + (dispatch_function_versions): Update call accordingly. + (riscv_compare_version_priority): Likewise, suppressing diagnostics. + +2025-08-15 Kito Cheng <kito.cheng@sifive.com> + + * tree-nrv.cc (pass_return_slot::execute): Use + gimple_call_fntype instead of gimple_call_fndecl. + +2025-08-15 Lulu Cheng <chenglulu@loongson.cn> + + PR target/121542 + * config/loongarch/loongarch.cc + (loongarch_vector_costs::add_stmt_cost): When using vectype, + first determine whether it is NULL. + +2025-08-14 Jeff Law <jlaw@ventanamicro.com> + + PR target/119275 + * config/riscv/riscv.cc (riscv_legitimize_move): Avoid calling + gen_lowpart for cases where it'll fail. Just use standard expander + paths for those cases. + +2025-08-14 Mikael Pettersson <mikpelinux@gmail.com> + + PR target/121336 + * config/cris/cris.h: Do not abbreviate --emulation. + +2025-08-14 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121501 + * config/rs6000/rs6000.md (cmprb, setb_signed, setb_unsigned) + (cmprb2, cmpeqb): Add missing modes to nested if_then_elses. + +2025-08-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121474 + * passes.def: Update forwprop1/2 to have full_walk to be true. + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Add new argument + full_walk. Take into account the full_walk and clobbers at the end + of the limit can be done always. + (simplify_builtin_call): Add new argument, full_walk. + Update call to optimize_aggr_zeroprop. + (pass_forwprop): Add m_full_walk field. + (pass_forwprop::set_pass_param): Update for m_full_walk. + (pass_forwprop::execute): Update call to simplify_builtin_call + and optimize_aggr_zeroprop. + +2025-08-14 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_agr_copyprop_1): New function split out of ... + (optimize_agr_copyprop): Here. Also try calling optimize_agr_copyprop_arg. + (optimize_agr_copyprop_arg): New function. + +2025-08-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.md: Merge movdi<mode>_zero_extend_A and + movsi<mode>_zero_extend_A into zero_extendsidi2 and + zero_extendhi<mode>2_z10 and + zero_extend<HQI:mode><GPR:mode>2_extimm. + * config/s390/vector.md (*movdi<mode>_zero_extend_A): Remove. + (*movsi<mode>_zero_extend_A): Remove. + (*movdi<mode>_zero_extend_B): Move to vec_extract patterns and + rename to *vec_extract<mode>_zero_extend. + (*movsi<mode>_zero_extend_B): Ditto. + +2025-08-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/121540 + * config/i386/i386-options.cc (ix86_set_current_function): + Properly check if MMX and 80387 are enabled. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121531 + * config/riscv/sifive-p400.md (sifive_p400_unknown): New reservation. + * config/riscv/sifive-p600.md (sifive_p600_unkonwn): Likewise. + +2025-08-13 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/output-spec.cc (sarif_scheme_handler::make_sink): + Populate sarif_generation_options instance directly, rather than + through local variables. + (sarif_scheme_handler::make_sarif_gen_opts): Drop. + (html_scheme_handler::make_sink): Populate html_generation_options + instance directly, rather than through local variables. + +2025-08-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * config.gcc: Mark epiphany*-*-* and rl78*-*-* as + obsolete targets. + +2025-08-13 H.J. Lu <hjl.tools@gmail.com> + + PR target/81501 + * config/i386/i386-features.cc (x86_cse_kind): Add X86_CSE_TLS_GD, + X86_CSE_TLS_LD_BASE and X86_CSE_TLSDESC. + (redundant_load): Renamed to ... + (redundant_pattern): This. + (ix86_place_single_vector_set): Replace redundant_load with + redundant_pattern. + (replace_tls_call): New. + (ix86_place_single_tls_call): Likewise. + (pass_remove_redundant_vector_load): Renamed to ... + (pass_x86_cse): This. Add val, def_insn, mode, scalar_mode, kind, + x86_cse, candidate_gnu_tls_p, candidate_gnu2_tls_p and + candidate_vector_p. + (pass_x86_cse::candidate_gnu_tls_p): New. + (pass_x86_cse::candidate_gnu2_tls_p): Likewise. + (pass_x86_cse::candidate_vector_p): Likewise. + (remove_redundant_vector_load): Renamed to ... + (pass_x86_cse::x86_cse): This. Extend to remove redundant TLS + calls. + (make_pass_remove_redundant_vector_load): Renamed to ... + (make_pass_x86_cse): This. + * config/i386/i386-passes.def: Replace + pass_remove_redundant_vector_load with pass_x86_cse. + * config/i386/i386-protos.h (ix86_tls_get_addr): New. + (make_pass_remove_redundant_vector_load): Renamed to ... + (make_pass_x86_cse): This. + * config/i386/i386.cc (ix86_tls_get_addr): Remove static. + * config/i386/i386.h (machine_function): Add + tls_descriptor_call_multiple_p. + * config/i386/i386.md (tls64): New attribute. + (@tls_global_dynamic_64_<mode>): Set tls_descriptor_call_multiple_p. + (@tls_local_dynamic_base_64_<mode>): Likewise. + (@tls_dynamic_gnu2_64_<mode>): Likewise. + (*tls_global_dynamic_64_<mode>): Set tls64 attribute to gd. + (*tls_local_dynamic_base_64_<mode>): Set tls64 attribute to ld_base. + (*tls_dynamic_gnu2_lea_64_<mode>): Set tls64 attribute to lea. + (*tls_dynamic_gnu2_call_64_<mode>): Set tls64 attribute to call. + (*tls_dynamic_gnu2_combine_64_<mode>): Set tls64 attribute to + combine. + +2025-08-13 Iain Sandoe <iain@sandoe.co.uk> + + * config.in: Regenerate. + * config/darwin.h (DARWIN_LD_NO_DEDUPLICATE): New. + (LINK_SPEC): Handle -no_deduplicate. + * configure: Regenerate. + * configure.ac: Detect linker support for -no_deduplicate. + +2025-08-13 Iain Sandoe <iain@sandoe.co.uk> + + * config/darwin-sections.def (asan_string_section, + asan_globals_section, asan_liveness_section): New. + * config/darwin.cc (objc_method_decl): Use asan sections + when asan is enabled. + (darwin_encode_section_info): Alter string constant + linker visibility depending on asan. + (machopic_select_section): Use the asan sections when + asan is enabled. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121160 + * config/riscv/riscv.cc (canonicalize_comparands); Tighten check for + forcing value into a GPR. + +2025-08-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121474 + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Move the check + for limit before the alias check. + +2025-08-13 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (SLP_TREE_PERMUTE_P): New. + * tree-vect-slp-patterns.cc (linear_loads_p): Adjust. + (vect_detect_pair_op): Likewise. + (addsub_pattern::recognize): Likewise. + * tree-vect-slp.cc (vect_print_slp_tree): Likewise. + (vect_gather_slp_loads): Likewise. + (vect_is_slp_load_node): Likewise. + (optimize_load_redistribution_1): Likewise. + (vect_optimize_slp_pass::is_cfg_latch_edge): Likewise. + (vect_optimize_slp_pass::internal_node_cost): Likewise. + (vect_optimize_slp_pass::start_choosing_layouts): Likewise. + (vect_optimize_slp_pass::backward_cost): Likewise. + (vect_optimize_slp_pass::forward_pass): Likewise. + (vect_optimize_slp_pass::get_result_with_layout): Likewise. + (vect_optimize_slp_pass::materialize): Likewise. + (vect_optimize_slp_pass::dump): Likewise. + (vect_optimize_slp_pass::decide_masked_load_lanes): Likewise. + (vect_update_slp_vf_for_node): Likewise. + (vect_slp_analyze_node_operations_1): Likewise. + (vect_schedule_slp_node): Likewise. + (vect_schedule_scc): Likewise. + * tree-vect-stmts.cc (vect_analyze_stmt): Likewise. + (vect_transform_stmt): Likewise. + (vect_is_simple_use): Likewise. + +2025-08-13 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_analyze_stmt): Use + SLP_TREE_DEF_TYPE instead of STMT_VINFO_DEF_TYPE. + +2025-08-13 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_memory_access_type): Replace + VMAT_GATHER_SCATTER with three separate access types, + VMAT_GATHER_SCATTER_LEGACY, VMAT_GATHER_SCATTER_IFN and + VMAT_GATHER_SCATTER_EMULATED. + (mat_gather_scatter_p): New predicate. + (GATHER_SCATTER_LEGACY_P): Remove. + (GATHER_SCATTER_IFN_P): Likewise. + (GATHER_SCATTER_EMULATED_P): Likewise. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Adjust. + (get_load_store_type): Likewise. + (vect_get_loop_variant_data_ptr_increment): Likewise. + (vectorizable_store): Likewise. + (vectorizable_load): Likewise. + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Likewise. + * config/riscv/riscv-vector-costs.cc + (costs::need_additional_vector_vars_p): Likewise. + * config/aarch64/aarch64.cc (aarch64_detect_vector_stmt_subtype): + Likewise. + (aarch64_vector_costs::count_ops): Likewise. + (aarch64_vector_costs::add_stmt_cost): Likewise. + +2025-08-13 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_supportable_dr_alignment): Pass + a bool instead of a pointer to gather_scatter_info. + * tree-vect-data-refs.cc (vect_supportable_dr_alignment): + Likewise. + * tree-vect-stmts.cc (get_load_store_type): Adjust. + +2025-08-13 Lulu Cheng <chenglulu@loongson.cn> + + PR target/120476 + * config/loongarch/loongarch.cc + (loongarch_compute_pressure_classes): New function. + (TARGET_COMPUTE_PRESSURE_CLASSES): Define. + +2025-08-13 Yang Yujie <yangyujie@loongson.cn> + + PR target/117599 + * config/loongarch/loongarch.h: Define a PROMOTE_MODE case for + small _BitInts. + * config/loongarch/loongarch.cc (loongarch_promote_function_mode): + Same. + (loongarch_bitint_type_info): New function. + (TARGET_C_BITINT_TYPE_INFO): Declare. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121113 + * config/riscv/sifive-p400.md: Handle HFmode for fdiv/fsqrt. + * config/riscv/sifive-p600.md: Likewise. + * config/riscv/xiangshan.md: Likewise. + +2025-08-13 H.J. Lu <hjl.tools@gmail.com> + Liu, Hongtao <hongtao.liu@intel.com> + + PR target/121497 + * config/i386/i386-features.cc (ix86_broadcast_inner): Convert + integer constant to mode of move + +2025-08-12 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*merge_vx_<mode>): Add new + pattern to combine the vmerge.vxm. + +2025-08-12 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/121334 + * config/riscv/riscv-v.cc (expand_slide1up): New function. + (expand_vector_init_trailing_same_elem): Use new function. + (expand_const_vector_onestep): New function. + (expand_const_vector): Uew expand_slide1up. + (expand_vector_init_merge_repeating_sequence): Ditto. + (shuffle_off_by_one_patterns): Ditto. + +2025-08-12 mengqinggang <mengqinggang@loongson.cn> + + * config/loongarch/loongarch-def.h (ABI_BASE_LP64D): New macro. + (ABI_BASE_LP64F): New macro. + (ABI_BASE_LP64S): New macro. + (N_ABI_BASE_TYPES): New macro. + +2025-08-12 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_2): Change + slp_done_for_suggested_uf to a boolean + single_lane_slp_done_for_suggested_uf. Change slp + to force_single_lane boolean. + (vect_analyze_loop_1): Adjust similarly. + +2025-08-12 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/121253 + * fwprop.cc (forward_propagate_into): Don't propagate asm defs. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121509 + * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): + Fail early when we detect a relevant but not handled PHI. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121514 + * tree-ssa-sccvn.cc (visit_nary_op): Only call + vn_nary_op_insert_stmt for SSA name result. + +2025-08-12 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121494 + * tree-ssa-forwprop.cc (optimize_agr_copyprop): Mark the bb of the use + stmt if needed for eh cleanup. + +2025-08-12 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_analyze_stmt): Only set + STMT_VINFO_VECTYPE for dataref SLP representatives. + Clear it for others and do not restore the original value. + (vect_transform_stmt): Likewise. + +2025-08-12 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (get_initial_defs_for_reduction): + Get vector type as argument. + (vect_find_reusable_accumulator): Likewise. + (vect_transform_cycle_phi): Adjust. + +2025-08-12 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Replace + STMT_VINFO_VECTYPE use with SLP_TREE_VECTYPE. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121493 + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Opportunistically + strip components with known offset. + +2025-08-12 Richard Biener <rguenther@suse.de> + + * tree-ssa-sccvn.cc (vn_reference_lookup_3): When we fail to + match up the two base MEM_REFs, fail. + +2025-08-12 Shreya Munnangi <smunnangi1@ventanamicro.com> + Jeff Law <jlaw@ventanamicro.com> + Philipp Tomsich <philipp.tomsich@vrull.eu> + + * config/riscv/riscv-protos.h (synthesize_add): Add prototype. + * config/riscv/riscv.cc (synthesize_add): New function. + * config/riscv/riscv.md (addsi3): Allow any constant as operands[2] + in the expander. Force the constant into a register as needed for + TARGET_64BIT. Use synthesize_add for !TARGET_64BIT. + (*adddi3): Renamed from adddi3. + (adddi3): New expander. Use synthesize_add. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.md (mov<ALLI>cc): Accept MODE_CC + conditions directly; reject QI/HImode conditions. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + PR target/121388 + * config/aarch64/aarch64.cc (aarch64_cb_rhs): Restrict the + range of LT/GE and GT/LE to their intersections. + * config/aarch64/aarch64.md (*aarch64_cb<INT_CMP><GPI>): Unexport. + Use cmpbr_imm_predicate instead of aarch64_cb_rhs. + * config/aarch64/constraints.md (Uc1): Accept 0..62. + (Uc2): Remove. + * config/aarch64/iterators.md (cmpbr_imm_predicate): New. + (cmpbr_imm_constraint): Update to match aarch64_cb_rhs. + * config/aarch64/predicates.md (aarch64_cb_reg_i63_operand): New. + (aarch64_cb_reg_i62_operand): New. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): + Use aarch64_cb_rhs to match CB insns. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + PR target/121385 + * config/aarch64/aarch64.md (*aarch64_tbz<LTGE><ALLI>1): Remove + cc clobber and expansion via TST+Bcond. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.h (TARGET_CMPBR): False when + aarch64_track_speculation is true. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.cc (aarch64_gen_compare_split_imm24): New. + * config/aarch64/aarch64-protos.h: Update. + * config/aarch64/aarch64.md (*aarch64_bcond_wide_imm<GPI>): Use it. + Add match_scratch and cc clobbers. Use match_operator instead of + iterator expansion. + (*compare_cstore<GPI>_insn): Likewise. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/predicates.md (aarch64_split_imm24): Rename from + aarch64_imm24; exclude aarch64_move_imm and aarch64_uimm12_shift. + * config/aarch64/aarch64.md (*aarch64_bcond_wide_imm<GPI>): + Update for aarch64_split_imm24. + (*compare_cstore<GPI>_insn): Likewise. + * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): Likewise. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.md (tbranch_<EQL><SHORT>3): Remove. + (save_stack_nonlocal): Use aarch64_gen_compare_zero_and_branch. + (restore_stack_nonlocal): Likewise. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.cc + (aarch64_gen_compare_zero_and_branch): Export. + * config/aarch64/aarch64-protos.h + (aarch64_gen_compare_zero_and_branch): Declare it. + * config/aarch64/aarch64-sme.md (aarch64_restore_za): Use it. + * config/aarch64/aarch64.md (*aarch64_cbz<EQL><GPI>): Unexport. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.cc (aarch64_if_the_else_costs): Reorg to + include the cost of inner within TBZ sign-bit test, only match + CBZ/CBNZ with valid modes, and both for the aarch64_imm24 test. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.cc (aarch64_if_then_else_costs): Remove + else after return and re-indent. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * config/aarch64/aarch64.md (BRANCH_LEN_N_1KiB): Rename + from BRANCH_LEN_N_1Kib. + +2025-08-11 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Recognize stores + of integer_zerop as memset of 0. + +2025-08-11 Jeff Law <jlaw@ventanamicro.com> + + * doc/sourcebuild.texi: Add riscv_b_ok and riscv_v_ok target selectors. + +2025-08-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121488 + * tree-ssa-sccvn.cc (visit_nary_op): If the BIT_FIELD_REF + result is of wrong type, try a VIEW_CONVERT_EXPR around it. + +2025-08-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121362 + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Swap index + guards on component stripping loops. + +2025-08-11 Pan Li <pan2.li@intel.com> + + * tree-ssa-math-opts.cc (match_saturation_mul): Add new func + to emit IFN_SAT_MUL if matched. + (math_opts_dom_walker::after_dom_children): Try to match + the phi node for SAT_MUL. + +2025-08-11 Pan Li <pan2.li@intel.com> + + * match.pd: Add form 2 for unsigned SAT_MUL. + +2025-08-11 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Remove. + (riscv_rtx_costs): Refactor to serach vec_duplicate on the + sub rtx. + +2025-08-11 Andre Vieira <andre.simoesdiasvieira@arm.com> + + PR target/121464 + * config/arm/arm.md (arm_<mrrc>, arm_<mcrr>): Fix operand check. + +2025-08-11 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/121306 + * simplify-rtx.cc (simplify_context::simplify_subreg): Distribute + non-narrowing integer-to-integer subregs through logic ops, + in a similar way to the existing word_mode handling. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + * tree-cfg.cc (find_case_label_for_value): Fix comment typo, + singe-valued -> single-valued. + * config/arc/arc.md: Fix comment typos, unsinged -> unsigned. + +2025-08-10 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips.h (FRAME_GROWS_DOWNWARD) Allow the frame to + grow downwards for mips16 when -mgrow-frame-downwards is set. + * config/mips/mips.opt: Add -mgrow-frame-downwards option. + +2025-08-10 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/121438 + PR middle-end/121444 + * output.h (MAX_ALIGN_MERGABLE): Rename to ... + (MAX_MERGEABLE_BITSIZE): This. + * tree-switch-conversion.cc (switch_conversion::build_one_array): Don't + increase the alignment. + * varasm.cc (mergeable_string_section): Use MAX_MERGEABLE_BITSIZE + instead of MAX_ALIGN_MERGABLE. Also replace `/ 8` with `/ BITS_PER_UNIT`. + (mergeable_constant_section): Select the mergeable section based on + the bitsize rather than the alignment. Make sure the align is less + than the entity size. + +2025-08-10 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/121394 + * varasm.cc (assemble_variable_contents): Pad out + mergeable sections if needed. + (output_constant_pool_1): Change the padding to be explicit + zeroing for mergeable sections. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + * configure: Regenerated. + +2025-08-09 Iain Sandoe <iain@sandoe.co.uk> + + * config/darwin.cc (darwin_encode_section_info): Do not + make anchored symbols linker-visible. + (darwin_use_anchors_for_symbol_p): Disallow anchoring on + symbols that must be linker-visible (or external), even + if the definitions are in this TU. + +2025-08-09 Iain Sandoe <iain@sandoe.co.uk> + + * config/darwin.h (ASM_GENERATE_INTERNAL_LABEL): New + entry for LANCHOR. + +2025-08-09 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.cc (context::dump): Bulletproof against + m_reference_printer being null. + * diagnostics/dumping.cc (emit_field<const char *>): Replace + with... + (emit_string_field): ...this. + (emit_field<char *>): Eliminate. + (emit_field<bool>): Replace with... + (emit_bool_field): ...this. + (emit_field<size_t>): Replace with... + (emit_size_t_field): ...this, and use HOST_SIZE_T_PRINT_DEC rather + than %zi in fprintf call. + (emit_field<int>): Replace with... + (emit_int_field): ...this. + (emit_field<unsigned>): Replace with... + (emit_unsigned_field): ...this. + * diagnostics/dumping.h (emit_field): Replace this template decl + with... + (emit_string_field): ...this, + (emit_bool_field): ...this, + (emit_size_t_field): ...this, + (emit_int_field): ...this, + (emit_unsigned_field): ... and this. + (DIAGNOSTICS_DUMPING_EMIT_FIELD): Rename to... + (DIAGNOSTICS_DUMPING_EMIT_BOOL_FIELD): ...this and update for + above change. + * diagnostics/file-cache.cc (file_cache_slot::dump): Replace + emit_field calls with calls that explicitly state the type. Fix + type of dump of m_missing_trailing_newline to use bool. + (file_cache_slot::dump): Use HOST_SIZE_T_PRINT_DEC rather than + %zi in fprintf call. + * diagnostics/html-sink.cc (html_generation_options::dump): Update + for macro renaming. + * diagnostics/sarif-sink.cc + (sarif_serialization_format_json::dump): Likewise. + (sarif_generation_options::dump): Likewise, and for function + renaming. + * diagnostics/text-sink.cc (text_sink::dump): Update for macro + renaming. + * libgdiagnostics.cc (diagnostic_manager_debug_dump_file): Use + HOST_SIZE_T_PRINT_DEC rather than %zi in fprintf call. + * pretty-print.cc: Include "diagnostics/dumping.h". + (pp_formatted_chunks::dump): Use it. + (get_url_format_as_string): New. + (pretty_printer::dump): Use diagnostics::dumping. Bulletproof + against m_buffer being null. + +2025-08-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/constraints.md (T): + Change define_memory_constraint to define_special_memory_constraint. + +2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120599 + * tree-ssa-forwprop.cc (optimize_agr_copyprop): Don't try to copy + from statements that throw. + +2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118946 + PR tree-optimization/121422 + * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Remove. + (optimize_aggr_zeroprop_1): New function. + (optimize_aggr_zeroprop): New function. + (simplify_builtin_call): Don't call optimize_memcpy_to_memset + for memcpy but call optimize_aggr_zeroprop for memset. + (pass_forwprop::execute): Don't call optimize_memcpy_to_memset + for aggregate copies but rather call optimize_aggr_zeroprop + for aggregate stores. + +2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_agr_copyprop): Change into a + forward looking (looking at vdef's uses) instead of a back + looking (vuse's def). + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116253 + * common.opt (fdiagnostics-show-nesting): New option. + (fdiagnostics-show-nesting-locations): New option. + (fdiagnostics-show-nesting-levels): New option. + * common.opt.urls: Regenerate. + * diagnostics/context.cc (context::set_show_nesting): New. + (context::set_show_nesting_locations): New. + (context::set_show_nesting_levels): New. + * diagnostics/context.h (context::set_show_nesting): New decl. + (context::set_show_nesting_locations): New decl. + (context::set_show_nesting_levels): New decl. + * diagnostics/html-sink.cc: Tweak comment. + * diagnostics/output-spec.cc (text_scheme_handler::make_sink): + Rename "experimental-nesting" to "show-nesting" and enable by + default. Rename "experimental-nesting-show-locations" to + "show-nesting-locations". Rename + "experimental-nesting-show-levels" to "show-nesting-levels". + * diagnostics/sink.h (sink::dyn_cast_text_sink): New. + * diagnostics/text-sink.h (text_sink::dyn_cast_text_sink): New. + * doc/invoke.texi: Add -fdiagnostics-show-nesting, + -fdiagnostics-show-nesting-locations, and + -fdiagnostics-show-nesting-levels. Update for changes to + output-spec.cc above. + * lto-wrapper.cc (merge_and_complain): Ignore + OPT_fdiagnostics_show_nesting, + OPT_fdiagnostics_show_nesting_locations, and + OPT_fdiagnostics_show_nesting_levels. + (append_compiler_options): Likewise. + (append_diag_options): Likewise. + * opts-common.cc (decode_cmdline_options_to_array): Add + "-fno-diagnostics-show-nesting" to -fdiagnostics-plain-output. + * opts.cc (common_handle_option): Handle the new options. + (gen_command_line_string): Ignore the new options. + * toplev.cc (general_init): Call set_show_nesting, + set_show_nesting_locations, and set_show_nesting_levels on + global_dc. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostics/dumping.o. + * diagnostics/buffering.cc: Include "diagnostics/dumping.h". + (buffer::dump): Reimplement using diagnostics::dumping. + * diagnostics/context.cc: Include "diagnostics/dumping.h". + (context::dump): Reimplement using diagnostics::dumping. + Use sink::dump_kind when listing the sinks. + (sink::dump): Reimplement using diagnostics::dumping. + (counters::dump): Likewise. + * diagnostics/dumping.cc: New file. + * diagnostics/dumping.h: New file. + * diagnostics/file-cache.cc: Include "diagnostics/dumping.h". + (file_cache::dump): Reimplement using diagnostics::dumping. + (file_cache_slot::dump): Likewise. + * diagnostics/html-sink.cc: Include "diagnostics/dumping.h". + (html_generation_options::dump): New. + (html_sink_buffer::dump): Reimplement using diagnostics::dumping. + (html_builder::dump): New. + (html_sink::dump): Reimplement using diagnostics::dumping. + Add dump of the html_builder. + (html_file_sink::dump): Replace with... + (html_file_sink::dump_kind): ...this. + (html_buffered_sink::dump_kind): New. + * diagnostics/html-sink.h (html_generation_options::dump): New + decl. + * diagnostics/sarif-sink.cc: Include "diagnostics/dumping.h". + (sarif_serialization_format_json::dump): New. + (sarif_builder::dump): New. + (sarif_sink_buffer::dump): Reimplement using diagnostics::dumping. + (sarif_sink::dump): Likewise. Add dump of the sarif_builder. + (sarif_stream_sink::dump_kind): New. + (sarif_file_sink::dump): Replace with... + (sarif_file_sink::dump_kind): ...this. + (get_dump_string_for_sarif_version): New. + (sarif_generation_options::dump): New. + (class buffered_sink): Rename to... + (class sarif_buffered_sink): ...this. + (sarif_buffered_sink::dump_kind): New. + * diagnostics/sarif-sink.h (sarif_serialization_format::dump): + New. + (sarif_serialization_format_json::dump): New decl. + (sarif_generation_options::dump): New decl. + * diagnostics/sink.h (sink::dump_kind): New. + * diagnostics/text-sink.cc: Include "diagnostics/dumping.h". + (text_sink_buffer::dump): Reimplement using diagnostics::dumping. + (text_sink::dump): Likewise. Emit fields m_show_nesting, + m_show_locations_in_nesting, and m_show_nesting_levels. + * diagnostics/text-sink.h (text_sink::dump_kind): New. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (diagnostics::get_cwe_url): Move decl to + diagnostics/metadata.h. + (diagnostics::maybe_line_and_column): Move into + diagnostics::text_sink. + * diagnostics/context.cc: Update for maybe_line_and_column + becoming a static member of text_sink. + * diagnostics/metadata.h (diagnostics::get_cwe_url): Move decl + here from diagnostic.h. + * diagnostics/text-sink.cc (maybe_line_and_column): Convert to... + (text_sink::maybe_line_and_column): ...this. + * diagnostics/text-sink.h (text_sink::maybe_line_and_column): Move + here from diagnostic.h. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.cc (context::get_any_inlining_info): Convert + "context" arg of m_set_locations_cb from ptr to const &. + (context::report_diagnostic): Convert "context" arg of + m_adjust_diagnostic_info from ptr to const &. + * diagnostics/context.h (context::set_locations_callback_t): + Likewise. + (context::set_adjust_diagnostic_info_callback): Likewise. + (context::m_adjust_diagnostic_info): Likewise. + * tree-diagnostic.cc (set_inlining_locations): Likewise. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/column-options.h: New file, adding struct + diagnostics::column_options, taken from fields in + diagnostics::context and diagnostics::column_policy. + * diagnostics/context.cc (context::initialize): Update for moving + fields of diagnostics::context into diagnostics::column_options. + (column_policy::column_policy): Likewise. + (column_policy::converted_column): Move implementation to... + (column_options::convert_column): ...this new function. + (context::report_diagnostic): Update for moving fields of + diagnostics::context into diagnostics::column_options. + (assert_location_text): Likewise. + * diagnostics/context.h: Include "diagnostics/column-options.h". + (class column_policy): Replace fields m_column_unit, + m_column_origin, and m_tabstop with m_column_options. + (context::get_column_options): New accessors. + (context::m_column_unit): Move to struct column_options and + replace with m_column_options. + (context::m_column_origin): Likewise. + (context::m_tabstop): Likewise. + * diagnostics/sarif-sink.cc (sarif_builder::sarif_builder): Update + for moving fields of diagnostics::context into + diagnostics::column_options. + * diagnostics/source-printing.cc: Likewise. + * opts.cc (common_handle_option): Likewise. + +2025-08-08 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/120977 + * config/arm/arm.md (call): Move unspec parameter to parallel. + (nonsecure_call_internal): Likewise. + (call_value): Likewise. + (nonsecure_call_value_internal): Likewise. + * config/arm/thumb1.md (nonsecure_call_reg_thumb1_v5): Likewise. + (nonsecure_call_value_reg_thumb1_v5): Likewise. + * config/arm/thumb2.md (nonsecure_call_reg_thumb2_fpcxt): + Likewise. + (nonsecure_call_reg_thumb2): Likewise. + (nonsecure_call_value_reg_thumb2_fpcxt): Likewise. + (nonsecure_call_value_reg_thumb2): Likewise. + * config/arm/arm.cc (cmse_nonsecure_call_inline_register_clear): + Likewise. + +2025-08-08 Pengfei Li <Pengfei.Li2@arm.com> + + PR target/121449 + * config/aarch64/aarch64-sve.md + (mask_gather_load<mode><v_int_container>): Use vg<Vesize> + constraints for alternatives with immediate offset. + (mask_scatter_store<mode><v_int_container>): Likewise. + +2025-08-08 Richard Biener <rguenther@suse.de> + + * doc/tm.texi.in: Add Vectorization and OpenMP and OpenACC + sub-sections to the list of target macros and functions. + * doc/tm.texi: Re-generate. + +2025-08-08 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_determine_vectype_for_stmt_1): Remove. + (vect_determine_vectype_for_stmt): Likewise. + (vect_set_stmts_vectype): Likewise. + (vect_analyze_loop_2): Do not call vect_set_stmts_vectype. + * tree-vect-stmts.cc (vect_mark_stmts_to_be_vectorized): Detect + irregular stmts early here. + +2025-08-08 Alex Coplan <alex.coplan@arm.com> + + PR target/120986 + * config/aarch64/aarch64-sve-builtins.cc + (function_expander::expand): Relax fpm_t assert to allow + modeless const_ints. + +2025-08-08 Alex Coplan <alex.coplan@arm.com> + + PR target/120986 + * config/aarch64/aarch64-sve2.md (@aarch64_sve_dot<mode>): + Switch mode iterator from SVE_FULL_HSF to new iterator; + remove insn predicate as this is now taken care of by conditions + in the mode iterator. + (@aarch64_sve_dot_lane<mode>): Likewise. + * config/aarch64/iterators.md (SVE_FULL_HSF_FP8_FDOT): New. + +2025-08-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121454 + * tree-ssa-sccvn.cc (visit_nary_op): Avoid unexpected + BIT_FIELD_REFs. + +2025-08-08 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121389 + * tree-tailcall.cc (find_tail_calls): For finally_tmp.N + handle not just GIMPLE_CONDs with EQ_EXPR/NE_EXPR and only + values 0 and 1, but arbitrary non-negative values, arbitrary + comparisons in conditions and also GIMPLE_SWITCH next to + GIMPLE_CONDs. + +2025-08-08 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): Get + the SLP node rather than the stmt_info. + (vectorizable_lane_reducing): Adjust, pass SLP node to costing. + (vect_transform_reduction): Adjust. + +2025-08-08 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_model_promotion_demotion_cost): Pass + in SLP node and drop unused dr argument. Use SLP node for + costing, drop costing of constant/external operands. + (vectorizable_conversion): Adjust. + +2025-08-08 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_store): Apply SLP_TREE_VECTYPE + to slp_node rather than stmt_info. + +2025-08-07 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121414 + * config/aarch64/aarch64.cc (aarch64_is_variant_pcs): New function, + split out from... + (aarch64_asm_output_variant_pcs): ...here. Handle various types + of SME function type. + +2025-08-07 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120718 + * simplify-rtx.cc (simplify_context::simplify_gen_subreg): + Remove MODE_COMPOSITE_P condition. + +2025-08-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121405 + * tree-ssa-sccvn.cc (visit_nary_op): Handle BIT_FIELD_REF + with reference def by looking up a combination of both. + +2025-08-07 Pengfei Li <Pengfei.Li2@arm.com> + + * tree-vect-data-refs.cc (vect_compute_data_ref_alignment): + Allow DR target alignment to be a poly_int. + (vect_enhance_data_refs_alignment): Support peeling and + versioning for VLA modes. + * tree-vect-loop-manip.cc (get_misalign_in_elems): Remove + power-of-two rounding in peeling. + (vect_create_cond_for_align_checks): Update alignment check + logic for poly_int mask. + (vect_create_cond_for_vla_spec_read): New runtime checks. + (vect_loop_versioning): Support new runtime checks. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Add a new + loop_vinfo field. + (vectorizable_induction): Fix wrong IV offset issue. + * tree-vect-stmts.cc (get_load_store_type): Refactor + vectorizable checks for speculative loads. + * tree-vectorizer.h (LOOP_VINFO_MAX_SPEC_READ_AMOUNT): New + macro for new runtime checks. + (LOOP_REQUIRES_VERSIONING_FOR_SPEC_READ): Likewise + (LOOP_REQUIRES_VERSIONING): Update macro for new runtime checks. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * doc/invoke.texi (Wkeyword-macro): Document. + +2025-08-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.cc (print_operand): Allow arbitrary wide_int + constants for _BitInt. + (s390_bitint_type_info): Implement target hook + TARGET_C_BITINT_TYPE_INFO. + +2025-08-06 Uros Bizjak <ubizjak@gmail.com> + + PR target/96226 + * config/i386/predicates.md (and_operator): New operator. + * config/i386/i386.md (splitter after *<rotate_insn><mode>3_mask): + Use and_operator to match AND RTX and use its mode + in the split pattern. + +2025-08-06 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Prerequisites): Replace bzip2 by xz. + +2025-08-06 Yangyu Chen <cyy@cyyself.name> + + * config/i386/i386.h (PTA_BDVER1): + Add missing PTA_POPCNT and PTA_LZCNT with PTA_ABM. + (PTA_ZNVER1): Ditto. + (PTA_BTVER1): Ditto. + (PTA_LUJIAZUI): Ditto. + (PTA_YONGFENG): Do not include extra PTA_LZCNT. + +2025-08-06 Sam James <sam@gentoo.org> + + PR libstdc++/29286 + * Makefile.in (ALIASING_FLAGS): Drop. + * configure: Regenerate. + * configure.ac: Drop -fno-strict-aliasing workaround for < GCC 4.3. + +2025-08-06 Richard Biener <rguenther@suse.de> + + * tree-vect-data-refs.cc (vect_supportable_dr_alignment): + Prune dead code. + +2025-08-06 Patrick Palka <ppalka@redhat.com> + + PR c++/121231 + PR c++/119688 + PR c++/94511 + * common.opt: Document additional ABI version 21 change. + * doc/invoke.texi: Likewise. + +2025-08-06 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_slp_tree::gs_scale): New. + (_slp_tree::gs_base): Likewise. + (SLP_TREE_GS_SCALE): Likewise. + (SLP_TREE_GS_BASE): Likewise. + (vect_describe_gather_scatter_call): Declare. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize + new members. + (vect_build_slp_tree_2): Record gather/scatter base and scale. + (vect_get_and_check_slp_defs): For gather/scatter IFNs + describe the call to first_gs_info. + * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Add + mode of operation with fixed offset vector type. + (vect_describe_gather_scatter_call): Export. + * tree-vect-stmts.cc (get_load_store_type): Do not call + vect_check_gather_scatter to fill gs_info, instead populate + from the SLP tree. Check which of, IFN, decl or fallback + is supported and record that decision. + +2025-08-06 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_store): Build proper + alias + align pointer value for gather/scatter and SLP + and use it. + (vectorizable_load): Likewise. + +2025-08-06 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Remove redundant gather/scatter target support check, instead + check the recorded ifns. Also allow legacy gather/scatter + with loop masking. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121413 + * gimple-lower-bitint.cc (gimple_lower_bitint): Fix up last + commit, cast limb_prec to unsigned before comparison. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * match.pd: Preserve conversion to _BitInt before a VCE + if the _BitInt is extended. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * gimple-lower-bitint.cc (bitint_large_huge::lower_mergeable_stmt): + Zero-extend the partial limb of any unsigned _BitInt LHS assigned + with a widening sign-extension. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * gimple-lower-bitint.cc (bitint_large_huge::limb_access): + Add a parameter abi_load_p. If set, load a limb directly + in its actual precision without casting from m_limb_type. + (struct bitint_large_huge): Same. + (bitint_large_huge::handle_load): Use. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121413 + * gimple-lower-bitint.cc (abi_limb_prec): New variable + (bitint_precision_kind): Initialize it. + (gimple_lower_bitint): Clear it at the start. For + min_prec > limb_prec descreased precision vars for + INTEGER_CST PHI arguments ensure min_prec is either + prec or multiple of abi_limb_prec. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121127 + * gimple-lower-bitint.cc (bitint_large_huge::handle_operand_addr): For + uninitialized SSA_NAME, set *prec_stored to 0 rather than *prec. + Handle that case in narrowing casts. If prec_stored is non-NULL, + set *prec_stored to prec_stored_val. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR bootstrap/121386 + * Makefile.in (gengtype-lex.cc): Append #define FLEX_SCANNER, + #include "system.h" and #undef FLEX_SCANNER to the prepended lines. + * gengtype-lex.l: Remove inclusion of config.h or bconfig.h, system.h + and definition of malloc/realloc from %{} section. + +2025-08-06 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/arch-canonicalize: Read extension data from + riscv-ext*.def and adding unittest. + +2025-08-06 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_expand_arch): + Ignore `unset`. + * config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Handle + `-march=unset`. + (ARCH_UNSET_CLEANUP_SPECS): New. + (DRIVER_SELF_SPECS): Handle -march=unset. + * doc/invoke.texi (RISC-V Options): Update documentation for + `-march=unset`. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + + * gimplify.cc (remove_unused_omp_iterator_vars): Display unused + variable warning for 'to' and 'from' clauses. + (gimplify_scan_omp_clauses): Add argument for iterator loop sequence. + Gimplify the clause decl and size into the iterator loop if iterators + are used. + (gimplify_omp_workshare): Add argument for iterator loops sequence + in call to gimplify_scan_omp_clauses. + (gimplify_omp_target_update): Call remove_unused_omp_iterator_vars and + build_omp_iterators_loops. Add loop sequence as argument when calling + gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses and building + the Gimple statement. + * tree-pretty-print.cc (dump_omp_clause): Call dump_omp_iterators + for to/from clauses with iterators. + * tree.cc (omp_clause_num_ops): Add extra operand for OMP_CLAUSE_FROM + and OMP_CLAUSE_TO. + * tree.h (OMP_CLAUSE_HAS_ITERATORS): Add check for OMP_CLAUSE_TO and + OMP_CLAUSE_FROM. + (OMP_CLAUSE_ITERATORS): Likewise. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * gimple-pretty-print.cc (dump_gimple_omp_target): Print expanded + iterator loops. + * gimple.cc (gimple_build_omp_target): Add argument for iterator + loops sequence. Initialize iterator loops field. + * gimple.def (GIMPLE_OMP_TARGET): Set GSS symbol to GSS_OMP_TARGET. + * gimple.h (gomp_target): Set GSS symbol to GSS_OMP_TARGET. Add extra + field for iterator loops. + (gimple_build_omp_target): Add argument for iterator loops sequence. + (gimple_omp_target_iterator_loops): New. + (gimple_omp_target_iterator_loops_ptr): New. + (gimple_omp_target_set_iterator_loops): New. + * gimplify.cc (find_var_decl): New. + (copy_omp_iterator): New. + (remap_omp_iterator_var_1): New. + (remap_omp_iterator_var): New. + (remove_unused_omp_iterator_vars): New. + (struct iterator_loop_info_t): New type. + (iterator_loop_info_map_t): New type. + (build_omp_iterators_loops): New. + (enter_omp_iterator_loop_context_1): New. + (enter_omp_iterator_loop_context): New. + (enter_omp_iterator_loop_context): New. + (exit_omp_iterator_loop_context): New. + (gimplify_adjust_omp_clauses): Add argument for iterator loop + sequence. Gimplify the clause decl and size into the iterator + loop if iterators are used. + (gimplify_omp_workshare): Call remove_unused_omp_iterator_vars and + build_omp_iterators_loops for OpenMP target expressions. Add + loop sequence as argument when calling gimplify_adjust_omp_clauses + and building the Gimple statement. + * gimplify.h (enter_omp_iterator_loop_context): New prototype. + (exit_omp_iterator_loop_context): New prototype. + * gsstruct.def (GSS_OMP_TARGET): New. + * omp-low.cc (lower_omp_map_iterator_expr): New. + (lower_omp_map_iterator_size): New. + (finish_omp_map_iterators): New. + (lower_omp_target): Add sorry if iterators used with deep mapping. + Call lower_omp_map_iterator_expr before assigning to sender ref. + Call lower_omp_map_iterator_size before setting the size. Insert + iterator loop sequence before the statements for the target clause. + * tree-nested.cc (convert_nonlocal_reference_stmt): Walk the iterator + loop sequence of OpenMP target statements. + (convert_local_reference_stmt): Likewise. + (convert_tramp_reference_stmt): Likewise. + * tree-pretty-print.cc (dump_omp_iterators): Dump extra iterator + information if present. + (dump_omp_clause): Call dump_omp_iterators for iterators in map + clauses. + * tree.cc (omp_clause_num_ops): Add operand for OMP_CLAUSE_MAP. + (walk_tree_1): Do not walk last operand of OMP_CLAUSE_MAP. + * tree.h (OMP_CLAUSE_HAS_ITERATORS): New. + (OMP_CLAUSE_ITERATORS): New. + +2025-08-05 H.J. Lu <hjl.tools@gmail.com> + + PR target/121410 + * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use + STORE_MAX_PIECES to get the widest vector mode in vector loop + for memset. + +2025-08-05 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_rtx_costs_1) [SIGN_EXTEND]: Adjust cost. + * config/avr/avr.md (*sext.ashift<QIPSI:mode><HISI:mode>2): New + insn and a cc split. + +2025-08-05 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121306 + * config/i386/predicates.md (extract_operator): Replace with... + (extract_high_operator): ...this new predicate. + * config/i386/i386.md (*cmpqi_ext<mode>_1, *cmpqi_ext<mode>_2) + (*cmpqi_ext<mode>_3, *cmpqi_ext<mode>_4, *movstrictqi_ext<mode>_1) + (*extzv<mode>, *insvqi_2, *extendqi<SWI24:mode>_ext_1) + (*addqi_ext<mode>_1_slp, *addqi_ext<mode>_1_slp, *addqi_ext<mode>_0) + (*addqi_ext2<mode>_0, *addqi_ext<mode>_1, *<insn>qi_ext<mode>_2) + (*subqi_ext<mode>_1_slp, *subqi_ext<mode>_2_slp, *subqi_ext<mode>_0) + (*subqi_ext2<mode>_0, *subqi_ext<mode>_1, *testqi_ext<mode>_1) + (*testqi_ext<mode>_2, *<code>qi_ext<mode>_1_slp) + (*<code>qi_ext<mode>_2_slp. *<code>qi_ext<mode>_0) + (*<code>qi_ext2<mode>_0, *<code>qi_ext<mode>_1) + (*<code>qi_ext<mode>_1_cc, *<code>qi_ext<mode>_1_cc) + (*<code>qi_ext<mode>_2, *<code>qi_ext<mode>_3, *negqi_ext<mode>_1) + (*one_cmplqi_ext<mode>_1, *ashlqi_ext<mode>_1, *<insn>qi_ext<mode>_1) + (define_peephole2): Replace uses of extract_operator with + extract_high_operator, matching only the first operand. + Use zero_extract rather than match_op_dup when splitting. + +2025-08-05 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_relevant::hybrid): Remove. + * tree-vect-loop.cc (vect_analyze_loop_2): Do not call + vect_detect_hybrid_slp. + * tree-vect-slp.cc (maybe_push_to_hybrid_worklist): Remove. + (vect_detect_hybrid_slp): Likewise. + +2025-08-05 Georg-Johann Lay <avr@gjlay.de> + + PR target/121359 + * config/avr/avr.h: Remove -mlra and remains of reload. + * config/avr/avr.cc: Same. + * config/avr/avr.md: Same. + * config/avr/avr-log.cc: Same. + * config/avr/avr-protos.h: Same. + * config/avr/avr.opt: Same. + * config/avr/avr.opt.urls: Same. + +2025-08-05 H.J. Lu <hjl.tools@gmail.com> + + PR target/121306 + * config/i386/i386.md (*one_cmplqi_ext<mode>_1): Updated to + support the new pattern. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121395 + * tree-vectorizer.h (_loop_vec_info::alternate_defs): New member. + (LOOP_VINFO_ALTERNATE_DEFS): New. + * tree-vect-stmts.cc (vect_stmt_relevant_p): Populate it. + (vectorizable_simd_clone_call): Do not register a SLP def + when there is none. + * tree-vect-slp.cc (vect_build_slp_tree_1): Allow a NULL + vectype when there's no LHS. Allow all calls w/o LHS. + (vect_analyze_slp): Process LOOP_VINFO_ALTERNATE_DEFS as + SLP graph entries. + (vect_make_slp_decision): Handle a NULL SLP_TREE_VECTYPE. + (vect_slp_analyze_node_operations_1): Likewise. + (vect_schedule_slp_node): Likewise. + +2025-08-05 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (enum slp_vect_type): Rename loop_vect + to not_vect, clarify docs. + (HYBRID_SLP_STMT): Remove. + * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Adjust. + * tree-vect-loop.cc (vect_analyze_loop_2): Likewise. + +2025-08-05 Richard Biener <rguenther@suse.de> + + * tree-vect-data-refs.cc (vect_get_data_access_cost): Use + ncopies == 1. + * tree-vect-slp.cc (vect_remove_slp_scalar_calls): Remove + hybrid/loop SLP skip. + * tree-vect-stmts.cc (vectorizable_store): Remove pure SLP assert. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121382 + * tree-ssa-loop-ivopts.cc (create_new_iv): Rewrite the IV + step to defined form. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121370 + * tree-scalar-evolution.cc (scev_dfs::add_to_evolution_1): + Avoid UB integer overflow in accumulating CHREC_RIGHT. + +2025-08-05 Yang Yujie <yangyujie@loongson.cn> + + * expr.cc (expand_expr_real_1): Do not call + reduce_to_bit_field_precision if the target assumes the _BitInt + results to be already extended. + (EXTEND_BITINT): Same. + * expr.h (bitint_extended): Declare the cache variable. + * function.cc (prepare_function_start): Initialize it. + +2025-08-05 Yang Yujie <yangyujie@loongson.cn> + + * explow.cc (promote_function_mode): Add a case for + small/medium _BitInts. + (promote_mode): Same. + +2025-08-05 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Configuration): Mark up atexit as code. + +2025-08-05 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv.cc (riscv_expand_xmode_usmul): Take + umulhu for high bits mul result. + +2025-08-04 Hans-Peter Nilsson <hp@bitrange.com> + + * defaults.h (MAX_FIXED_MODE_SIZE): Default to 2 * BITS_PER_WORD + for larger-than-32-bitters. + * doc/tm.texi.in (MAX_FIXED_MODE_SIZE): Adjust accordingly. Tweak + wording. + * doc/tm.texi: Regenerate. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * dump-context.h: Convert "enum optinfo_item_kind" into + "enum class kind" within class optinfo_item. + * dumpfile.cc: Likewise. Use "auto" in a few places. + Convert "enum optinfo_kind" to "enum class kind" within + class optinfo. + * opt-problem.cc: Likewise. + * optinfo-emit-json.cc: Likewise. + * optinfo.cc: Likewise. + * optinfo.h: Likewise. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116253 + * diagnostics/context.cc (context::set_nesting_level): New. + * diagnostics/context.h (context::set_nesting_level): New decl. + * doc/libgdiagnostics/topics/compatibility.rst + (LIBGDIAGNOSTICS_ABI_5): New. + * doc/libgdiagnostics/topics/physical-locations.rst + (diagnostic_manager_set_debug_physical_locations): New. + * libgdiagnostics++.h (manager::set_debug_physical_locations): + New. + * libgdiagnostics-private.h + (private_diagnostic_set_nesting_level): New decl. + * libgdiagnostics.cc (diagnostic_manager::diagnostic_manager): + Initialize m_debug_physical_locations. + (diagnostic_manager::new_location_from_file_and_line): Add debug + printing. + (diagnostic_manager::new_location_from_file_line_column): + Likewise. + (diagnostic_manager::new_location_from_range): Likewise. + (diagnostic_manager::set_debug_physical_locations): New. + (diagnostic_manager::ensure_linemap_for_file_and_line): Avoid + redundant calls to linemap_add. + (diagnostic_manager::new_location): Add debug printing. + (diagnostic_manager::m_debug_physical_locations): New field. + (diagnostic::diagnostic): Initialize m_nesting_level. + (diagnostic::get_nesting_level): New accessor. + (diagnostic::set_nesting_level): New. + (diagnostic::m_nesting_level): New field. + (diagnostic_manager::emit_va): Set and reset the nesting level + of the context from that of the diagnostic. + (diagnostic_manager_set_debug_physical_locations): New. + (private_diagnostic_set_nesting_level): New. + * libgdiagnostics.h + (diagnostic_manager_set_debug_physical_locations): New decl. + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_5): New. + * libsarifreplay.cc (sarif_replayer::handle_result_obj): Support + the "nestingLevel" property. + * libsarifreplay.h (replay_options::m_debug_physical_locations): + New field. + * sarif-replay.cc: Add -fdebug-physical-locations. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116792 + * diagnostics/html-sink.cc + (html_builder::make_element_for_diagnostic): Don't add the + metadata element if it's empty. + (html_builder::make_element_for_metadata): Return null rather than + an empty element. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.h: Move struct counters to its own header + and include it. + * diagnostics/counters.h: New file, from the above. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.h: Split struct source_printing_options out + into "diagnostics/source-printing-options.h" and include it. + * diagnostics/source-printing-options.h: New file, from the above. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.cc: Update for renaming of option_manager to + option_id_manager and of context::m_option_mgr to + context::m_option_id_mgr. + * diagnostics/context.h: Likewise, moving class declaration to a + new diagnostics/option-id-manager.h. + * diagnostics/lazy-paths.cc: Likewise. + * diagnostics/option-id-manager.h: New file, from material in + diagnostics/context.h. + * lto-wrapper.cc: Update for renaming of option_manager to + option_id_manager. + * opts-common.cc: Likewise. + * opts-diagnostic.h: Likewise. + * opts.cc: Likewise. + * toplev.cc: Likewise. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/buffering.h: Update comment to refer to output sinks + rather than output formats. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + * gimple-warn-recursion.cc (pass_warn_recursion::execute): Add + missing auto_diagnostic_group. + +2025-08-04 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/121303 + * avoid-store-forwarding.cc (is_store_forwarding): Add check + for `off_val` in `is_store_forwarding`. + +2025-08-04 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_analyze_slp): When analyzing a loop + and slp instance discovery fails, immediately fail the whole + process. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve-builtins.cc + (function_expander::expand): Assert that the return value + has an appropriate mode. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-protos.h + (aarch64_convert_sve_data_to_pred): Remove the mode argument. + * config/aarch64/aarch64.cc + (aarch64_sve_emit_int_cmp): Allow PRED_MODE to be VNx16BI or + the natural predicate mode for the data mode. + (aarch64_convert_sve_data_to_pred): Remove the mode argument + and instead always create a VNx16BI result. + (aarch64_expand_sve_const_pred): Update call accordingly. + * config/aarch64/aarch64-sve-builtins-base.cc + (svdupq_impl::expand): Likewise, ensuring that the result + has mode VNx16BI. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-protos.h + (aarch64_emit_sve_pred_vec_duplicate): Declare. + * config/aarch64/aarch64.cc + (aarch64_emit_sve_pred_vec_duplicate): New function. + * config/aarch64/aarch64-sve.md (vec_duplicate<PRED_ALL:mode>): Use it. + * config/aarch64/aarch64-sve-builtins-base.cc + (svdup_impl::expand): Handle boolean values specially. Check for + constants and fall back on aarch64_emit_sve_pred_vec_duplicate + for the variable case, ensuring that the result has mode VNx16BI. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/iterators.md (PNEXT_ONLY): New int iterator. + * config/aarch64/aarch64-sve.md + (@aarch64_sve_<sve_pred_op><mode>): Restrict SVE_PITER pattern + to VNx16BI_ONLY. + (@aarch64_sve_<sve_pred_op><mode>): New PNEXT_ONLY pattern for + PRED_HSD. + (*aarch64_sve_<sve_pred_op><mode>): Likewise. + (*aarch64_sve_<sve_pred_op><mode>_cc): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve2.md (@aarch64_pred_<sve_int_op><mode>): + Split SVE2_MATCH pattern into a VNx16QI_ONLY define_ins and a + VNx8HI_ONLY define_expand. Use a VNx16BI destination for the latter. + (*aarch64_pred_<sve_int_op><mode>): New SVE2_MATCH pattern for + VNx8HI_ONLY. + (*aarch64_pred_<sve_int_op><mode>_cc): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_fac<cmp_op><mode>): + Replace with... + (@aarch64_pred_fac<cmp_op><mode>_acle): ...this new expander. + (*aarch64_pred_fac<cmp_op><mode>_strict_acle): New pattern. + * config/aarch64/aarch64-sve-builtins-base.cc + (svac_impl::expand): Update accordingly. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_fcm<cmp_op><mode>_acle) + (*aarch64_pred_fcm<cmp_op><mode>_acle, @aarch64_pred_fcmuo<mode>_acle) + (*aarch64_pred_fcmuo<mode>_acle): New patterns. + * config/aarch64/aarch64-sve-builtins-base.cc + (svcmp_impl::expand, svcmpuo_impl::expand): Use them. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_wide): + Split into VNx16QI_ONLY and SVE_FULL_HSI patterns. Use VNx16BI + results for both. + (*aarch64_pred_cmp<cmp_op><mode>_wide): New pattern. + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Turn into a + define_insn_and_rewrite and rewrite the governing predicate + of the comparison so that it is identical to the PTEST's. + (*aarch64_pred_cmp<cmp_op><mode>_wide_ptest): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_wide) + (*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Use <VPRED> instead of + VNx16BI for the governing predicate. + (*aarch64_pred_cmp<cmp_op><mode>_wide_ptest): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_acle) + (*aarch64_pred_cmp<cmp_op><mode>_acle, *cmp<cmp_op><mode>_acle_cc) + (*cmp<cmp_op><mode>_acle_and): New patterns that yield VNx16BI + results for all element types. + * config/aarch64/aarch64-sve-builtins-base.cc + (svcmp_impl::expand): Use them. + (svcmp_wide_impl::expand): Likewise when implementing an svcmp_wide + against an in-range constant. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_sve_punpk<perm_hilo>_acle) + (*aarch64_sve_punpk<perm_hilo>_acle): New patterns. + * config/aarch64/aarch64-sve-builtins-base.cc + (svunpk_impl::expand): Use them for boolean svunpk*. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121294 + * config/aarch64/aarch64.md (UNSPEC_REV_PRED): New unspec. + * config/aarch64/aarch64-sve.md (@aarch64_sve_rev<mode>_acle) + (*aarch64_sve_rev<mode>_acle): New patterns. + * config/aarch64/aarch64-sve-builtins-base.cc + (svrev_impl::expand): Use the new patterns for boolean svrev. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121294 + * config/aarch64/iterators.md (UNSPEC_TRN1_CONV): Delete. + (UNSPEC_PERMUTE_PRED): New unspec. + * config/aarch64/aarch64-sve.md (@aarch64_sve_trn1_conv<mode>): + Replace with... + (@aarch64_sve_<perm_insn><mode>_acle) + (*aarch64_sve_<perm_insn><mode>_acle): ...these new patterns. + * config/aarch64/aarch64.cc (aarch64_expand_sve_const_pred_trn): + Update accordingly. + * config/aarch64/aarch64-sve-builtins-functions.h + (binary_permute::expand): Use the new _acle patterns for + predicate operations. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/121118 + * config/aarch64/iterators.md (VNx16BI_ONLY): New mode iterator. + * config/aarch64/predicates.md (aarch64_ptrue_all_operand): New + predicate. + * config/aarch64/aarch64-sve.md + (@aarch64_sve_while_<while_optab_cmp><GPI:mode><VNx16BI_ONLY:mode>_acle) + (@aarch64_sve_while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle) + (*aarch64_sve_while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle) + (*while_<while_optab_cmp><GPI:mode><PRED_HSD:mode>_acle_cc): New + patterns. + * config/aarch64/aarch64-sve-builtins-functions.h + (while_comparison::expand): Use the new _acle patterns that + always return a VNx16BI. + * config/aarch64/aarch64-sve-builtins-sve2.cc + (svwhilerw_svwhilewr_impl::expand): Likewise. + * config/aarch64/aarch64.cc + (aarch64_sve_move_pred_via_while): Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121293 + * config/aarch64/aarch64-sve-builtins-base.cc (svdupq_lane::expand): + Use aarch64_sve_reinterpret instead of subregs. Explicitly + reinterpret the result back to the required mode, rather than + leaving the caller to take a subreg. + +2025-08-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121362 + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Generalize + aggregate copy handling. + +2025-08-04 Filip Kastl <fkastl@suse.cz> + + * doc/invoke.texi: Add remark about -options being documented + under -fdump-tree. Remove remark about -graph working only for + RTL. + +2025-08-04 H.J. Lu <hjl.tools@gmail.com> + + PR target/120941 + * config/i386/i386-features.cc (x86_cse_kind): Moved before + ix86_place_single_vector_set. + (redundant_load): Likewise. + (ix86_place_single_vector_set): Replace the last argument to the + pointer to redundant_load. For X86_CSE_VEC_DUP, don't place the + vector set outside of the loop to avoid extra spills. + (remove_redundant_vector_load): Pass load to + ix86_place_single_vector_set. + +2025-08-03 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.md (define_insn_and_split) [reload_completed]: + For splits that just append a (clobber (reg:CC REG_CC)) to + the pattern, use avr_add_ccclobber (curr_insn) instead of + repeating the original pattern. + * config/avr/avr-dimode.md: Same. + * config/avr/avr-fixed.md: Same. + +2025-08-03 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_add_ccclobber): New function. + * config/avr/avr-protos.h (avr_add_ccclobber): New proto. + (DONE_ADD_CCC): New define. + +2025-08-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/90242 + * tree-ssa-sccvn.cc (vn_reference_compute_hash): Use + poly_offset_int for offset accumulation. For hashing + truncate to 64 bits and also hash 64 bits. + (vn_reference_eq): Likewise. + +2025-08-02 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Specific) <windows>: Drop note on 16-bit + Windows support. Streamline note on 32-bit support. + +2025-08-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121350 + * tree-vect-stmts.cc (vectorizable_store): Pass down SLP + node when costing scalar stores in vect_body. + +2025-08-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121349 + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Get full SLP mask, reduce to uniform scalar_mask for further + processing if possible. + (vect_check_scalar_mask): Remove scalar mask output, remove + code conditional on slp_mask. + (vectorizable_call): Adjust. + (check_scan_store): Get and check SLP mask. + (vectorizable_store): Eliminate scalar mask variable. + (vectorizable_load): Likewise. + +2025-08-01 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/install.texi (Prerequisites): mdocml.bsd.lv is now + mandoc.bsd.lv. + +2025-08-01 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_group_load_store_type): Remove, + inline into ... + (get_load_store_type): ... this. Remove ncopies parameter. + (vectorizable_load): Adjust. + (vectorizable_store): Likewise. + +2025-08-01 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_group_load_store_type): Remove + checks performed at SLP build time. + (vect_check_store_rhs): Remove scalar RHS output. + (vectorizable_store): Remove uses of scalar RHS. + +2025-08-01 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (VMAT_UNINITIALIZED): New + vect_memory_access_type. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Use it. + +2025-08-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121338 + * tree-ssa-loop-ivopts.cc (avg_loop_niter): Return an + unsigned. + (adjust_setup_cost): When niters is so large the division + result is one or zero avoid it. + (create_new_ivs): Adjust. + +2025-08-01 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_simd_clone_data): New. + (_slp_tree::simd_clone_info): Remove. + (SLP_TREE_SIMD_CLONE_INFO): Likewise. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Adjust. + (_slp_tree::~_slp_tree): Likewise. + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Use + tyupe specific data to store SLP_TREE_SIMD_CLONE_INFO. + +2025-08-01 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (_slp_tree::_slp_tree): Adjust. + (_slp_tree::~_slp_tree): Likewise. + * tree-vectorizer.h (vect_data): New base class. + (_slp_tree::u): Remove. + (_slp_tree::data): Add pointer to vect_data. + (_slp_tree::get_data): New helper template. + +2025-08-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121322 + * gimple-ssa-store-merging.cc (find_bswap_or_nop): Return NULL if + count is 0. + +2025-07-31 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.opt.urls (-mfuse-move2): Add url. + +2025-07-31 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_output_addr_vec) <labl>: Asm out its .type. + +2025-07-31 Georg-Johann Lay <avr@gjlay.de> + + PR rtl-optimization/121340 + * config/avr/avr.opt (-mfuse-move2): New option. + * config/avr/avr-passes.def (avr_pass_2moves): Insert after combine. + * config/avr/avr-passes.cc (make_avr_pass_2moves): New function. + (pass_data avr_pass_data_2moves): New static variable. + (avr_pass_2moves): New rtl_opt_pass. + * config/avr/avr-protos.h (make_avr_pass_2moves): New proto. + * common/config/avr/avr-common.cc + (default_options avr_option_optimization_table) <-mfuse-move2>: + Set for -O1 and higher. + * doc/invoke.texi (AVR Options) <-mfuse-move2>: Document. + +2025-07-31 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/120805 + * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Skip setting + bounds on epilogues. + +2025-07-31 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * common/config/aarch64/cpuinfo.h: Remove unused features, add FEAT_CSSC + and FEAT_MOPS. + * config/aarch64/aarch64-option-extensions.def: Remove FMV support + for RPRES, use PULL rather than AES, add FMV support for CSSC and MOPS. + +2025-07-31 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/tuning_models/generic_armv9_a.h + (generic_armv9_a_addrcost_table): Use zero cost for himode. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_group_load_store_type): Properly + compare the scalar type of the gather/scatter offset to + the offset vector component type. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * gimple-fold.h (fold_stmt_inplace): Add valueization hook + argument, defaulted to no_follow_ssa_edges. + * gimple-fold.cc (fold_stmt_inplace): Adjust. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * config/i386/i386-options.cc (ix86_handle_cconv_attribute): + Fix typo. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * config/i386/i386-options.cc (ix86_handle_cconv_attribute): + Handle simultaneous use of regparm and thiscall attributes in + case when regparm is set before thiscall. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * config/i386/i386-options.cc (ix86_handle_cconv_attribute): + Fix comments which state that combination of stdcall and fastcall + attributes is valid but redundant. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * config/i386/i386-options.cc (ix86_handle_cconv_attribute): + Move 64-bit mode check before regparm handling. + +2025-07-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121320 + * tree-ssa-sccvn.cc (ao_ref_init_from_vn_reference): Convert + op->off to poly_offset_int before multiplying by + BITS_PER_UNIT. + +2025-07-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121323 + * tree-ssa-alias.cc (ao_ref_init_from_ptr_and_range): Check + the pointer offset fits in a HWI when represented in bits. + +2025-07-31 Yury Khrustalev <yury.khrustalev@arm.com> + + * config/aarch64/aarch64.cc (build_ifunc_arg_type): + Add new fields _hwcap3 and _hwcap4. + +2025-07-31 Kishan Parmar <kishan@linux.ibm.com> + + PR target/118890 + * config/rs6000/rs6000.cc (can_be_rotated_to_negative_lis): Avoid left + shift of negative value and guard shift count. + (can_be_built_by_li_and_rldic): Likewise. + (rs6000_emit_set_long_const): Likewise. + * config/rs6000/rs6000.md (splitter for plus into two 16-bit parts): Fix + UB from overflow in addition. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * config/aarch64/aarch64.cc (aarch64_detect_vector_stmt_subtype): + Check for node before dereferencing. + (aarch64_vector_costs::add_stmt_cost): Likewise. + +2025-07-31 Spencer Abson <spencer.abson@arm.com> + + PR target/121028 + * config/aarch64/aarch64-sme.md (aarch64_smstart_sm): Use the .inst + directive if !TARGET_SME. + (aarch64_smstop_sm): Likewise. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_stmt_vec_info::memory_access_type): Remove. + (STMT_VINFO_MEMORY_ACCESS_TYPE): Likewise. + (vect_mem_access_type): Likewise. + * tree-vect-stmts.cc (vectorizable_store): Do not set + STMT_VINFO_MEMORY_ACCESS_TYPE. Fix SLP_TREE_MEMORY_ACCESS_TYPE + usage. + * tree-vect-loop.cc (update_epilogue_loop_vinfo): Remove + checking of memory access type. + * config/riscv/riscv-vector-costs.cc (costs::compute_local_live_ranges): + Use SLP_TREE_MEMORY_ACCESS_TYPE. + (costs::need_additional_vector_vars_p): Likewise. + (segment_loadstore_group_size): Get SLP node as argument, + use SLP_TREE_MEMORY_ACCESS_TYPE. + (costs::adjust_stmt_cost): Pass down SLP node. + * config/aarch64/aarch64.cc (aarch64_ld234_st234_vectors): Use + SLP_TREE_MEMORY_ACCESS_TYPE instead of vect_mem_access_type. + (aarch64_detect_vector_stmt_subtype): Likewise. + (aarch64_vector_costs::count_ops): Likewise. + (aarch64_vector_costs::add_stmt_cost): Likewise. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_transform_loop): Do not verify DRs + have not been modified for epilogue loops. + (update_epilogue_loop_vinfo): Do not copy modified DRs to + the originals. + +2025-07-31 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121264 + * machmode.h (get_best_mode): Change type of first 2 arguments + from int to HOST_WIDE_INT. + * stor-layout.cc (get_best_mode): Likewise. + +2025-07-31 Jakub Jelinek <jakub@redhat.com> + + * gimple-ssa-store-merging.cc (find_bswap_or_nop): Fix comment typos, + hanlde -> handle. + * config/i386/i386.cc (ix86_gimple_fold_builtin, ix86_rtx_costs): + Likewise. + * config/i386/i386-features.cc (remove_partial_avx_dependency): + Likewise. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (check_scan_store): Remove redundant + slp_node check. Disallow epilogue vectorization. + +2025-07-31 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vector_costs::costing_for_scalar): New + accessor. + (add_stmt_cost): For scalar costing force vectype to NULL. + Verify we do not pass in a SLP node. + +2025-07-31 Kito Cheng <kito.cheng@sifive.com> + + PR target/121312 + * config/riscv/arch-canonicalize: Add H extension to the + canonical order. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/121308 + * simplify-rtx.cc (simplify_context::simplify_subreg): Handle + subreg of `not` with word_mode to make it symmetric with the + other bitwise operators. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + PR tree-optimization/121295 + * tree-if-conv.cc (factor_out_operators): Change the phi node + to the new result and args. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + Revert: + 2025-07-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + * tree-if-conv.cc (is_cond_scalar_reduction): Instead of phi argument, + pass bb and res of the phi. + (factor_out_operators): Add iterator for the phi. Remove the phi + if this is the first time. Return if we had removed the phi. + (predicate_scalar_phi): Add the phi iterator argument. + Update call to is_cond_scalar_reduction. + Update call to factor_out_operators and set the return value to true + when factor_out_operators returns true. + (predicate_all_scalar_phis): Don't remove the phi if predicate_scalar_phi + already removed it. + +2025-07-30 Jan Hubicka <jh@suse.cz> + + * auto-profile.cc (string_table::read): Check gcov_is_error. + (read_profile): Likewise. + * gcov-io.cc (gcov_is_error): Export for gcc linkage. + * gcov-io.h (gcov_is_error): Declare. + +2025-07-30 Richard Biener <rguenther@suse.de> + + * config/i386/i386.cc (ix86_default_vector_cost): Split + out from ... + (ix86_builtin_vectorization_cost): ... this and use + mode instead of vectype as argument. + (ix86_vector_costs::add_stmt_cost): Call + ix86_default_vector_cost instead of ix86_builtin_vectorization_cost. + +2025-07-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/117015 + * config/s390/s390-protos.h (s390_expand_int_spaceship): New + function. + (s390_expand_fp_spaceship): New function. + * config/s390/s390.cc (s390_expand_int_spaceship): New function. + (s390_expand_fp_spaceship): New function. + * config/s390/s390.md (spaceship<mode>4): New expander. + +2025-07-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * cprop.cc (bypass_block): Extract single set. + (bypass_conditional_jumps): Ditto. + +2025-07-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/120427 + * config/i386/i386.md (peephole2): Transform "movq $-1,reg" to + "pushq $-1; popq reg" for -Oz if reg is a legacy integer register. + +2025-07-30 Jan Hubicka <jh@suse.cz> + + * auto-profile.cc (function_instance::match): Disable warning + about bogus locations since dwarf does not represent enough + info to output them correctly in all cases. + (add_scale): Use nonzero_p instead of orig.force_nonzero () == orig. + (afdo_adjust_guessed_profile): Add missing newline in dump + file. + +2025-07-30 Jan Hubicka <jh@suse.cz> + + * symtab.cc (symbol_table::change_decl_assembler_name): Recompute DECL_RTL + in case it is already computed. + +2025-07-30 Jan Hubicka <jh@suse.cz> + + * predict.cc (unlikely_executed_edge_p): Ignore EDGE_EH if profile + is reliable. + (unlikely_executed_stmt_p): special case builtin_trap/unreachable and + ignore other heuristics for reliable profiles. + (tree_estimate_probability): Disable unlikely bb detection when + doing dry run + +2025-07-30 Andrew Stubbs <ams@baylibre.com> + Julian Brown <julian@codesourcery.com> + + * doc/tm.texi.in (TARGET_VECTORIZE_PREFER_GATHER_SCATTER): Add + documentation hook. + * doc/tm.texi: Regenerate. + * target.def (prefer_gather_scatter): Add target hook under vectorizer. + * hooks.cc (hook_bool_mode_int_unsigned_false): New function. + * hooks.h (hook_bool_mode_int_unsigned_false): New prototype. + * tree-vect-stmts.cc (vect_use_strided_gather_scatters_p): Add + parameters group_size and single_element_p, and rework to use + targetm.vectorize.prefer_gather_scatter. + (get_group_load_store_type): Move some of the condition into + vect_use_strided_gather_scatters_p. + * config/gcn/gcn.cc (gcn_prefer_gather_scatter): New function. + (TARGET_VECTORIZE_PREFER_GATHER_SCATTER): Define hook. + +2025-07-30 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc (gcn_option_override): Add note to set default for + param_vect_partial_vector_usage to "1". + * optc-save-gen.awk: Don't pass through options marked "NoOffload". + * params.opt (-param=vect-epilogues-nomask): Add NoOffload. + (-param=vect-partial-vector-usage): Likewise. + (-param=vect-inner-loop-cost-factor): Likewise. + +2025-07-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121130 + * tree-vect-stmts.cc (vectorizable_call): Bail out for + .MASK_CALL. + +2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> + + PR tree-optimization/121020 + * tree-vect-loop-manip.cc (vect_do_peeling): Update the + condition of omitting the skip-vector check. + * tree-vectorizer.h (LOOP_VINFO_USE_VERSIONING_WITHOUT_PEELING): + Add a helper macro. + +2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> + + PR tree-optimization/121190 + * tree-vect-data-refs.cc (vect_enhance_data_refs_alignment): + Increase alignment requirement for speculative loads. + +2025-07-30 Alfie Richards <alfie.richards@arm.com> + + PR target/121300 + * config/aarch64/aarch64-sve-builtins-sme.def (svamin/svamax): Fix + arch gating. + +2025-07-30 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_group_load_store_type): + Process STMT_VINFO_GATHER_SCATTER before reading + memory_access_type. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (@cond_<optab><mode>): Extend + to support partial FP modes. + (*cond_<optab><mode>_2_strict): Extend from SVE_FULL_F to SVE_F, + use aarch64_predicate_operand. + (*cond_<optab><mode>_4_strict): Extend from SVE_FULL_F_B16B16 to + SVE_F_B16B16, use aarch64_predicate_operand. + (*cond_<optab><mode>_any_strict): Likewise. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (*cond_<optab><mode>_2_relaxed): + Extend from SVE_FULL_F to SVE_F. + (*cond_<optab><mode>_4_relaxed): Extend from SVE_FULL_F_B16B16 + to SVE_F_B16B16. + (*cond_<optab><mode>_any_relaxed): Likewise. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (<optab><mode>4): Extend from + SVE_FULL_F_B16B16 to SVE_F_B16B16. Use aarch64_sve_fp_pred instead + of aarch64_ptrue_reg. + (@aarch64_pred_<optab><mode>): Extend from SVE_FULL_F_B16B16 to + SVE_F_B16B16. Use aarch64_predicate_operand. + +2025-07-30 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386-modes.def: Remove VECTOR_MODES(FLOAT, 256) + and VECTOR_MODE (INT, SI, 64). + * config/i386/i386.cc (ix86_hard_regno_nregs): Remove related + code for V64SF/V64SImode. + +2025-07-30 liuhongt <hongtao.liu@intel.com> + + PR target/121274 + * config/i386/sse.md (*vec_concatv2di_0): Add a splitter + before it. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/121302 + * simplify-rtx.cc (simplify_context::simplify_subreg): Use + byte instead of 0 when calling simplify_subreg. + +2025-07-29 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-protos.h (aarch64_sve_emit_masked_fp_pred): + Declare. + * config/aarch64/aarch64-sve.md (and<mode>3): Change this to... + (@and<mode>3): ...this, so that we can use gen_and3. + (@cond_<optab><mode>): Extend from SVE_FULL_F_B16B16 to SVE_F_B16B16, + use aarch64_predicate_operand. + (*cond_<optab><mode>_2_strict): Likewise. + (*cond_<optab><mode>_3_strict): Likewise. + (*cond_<optab><mode>_any_strict): Likwise. + (*cond_<optab><mode>_2_const_strict): Extend from SVE_FULL_F to SVE_F, + use aarch64_predicate_operand. + (*cond_<optab><mode>_any_const_strict): Likewise. + (*cond_sub<mode>_3_const_strict): Likwise. + (*cond_sub<mode>_const_strict): Likewise. + (*vcond_mask_<mode><vpred>): Use aarch64_predicate_operand, and update + the comment here. + * config/aarch64/aarch64.cc (aarch64_sve_emit_masked_fp_pred): New + function. Helper to mask the predicate in conditional expanders. + +2025-07-29 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * Makefile.in: Add riscv-mcpu.texi and riscv-mtune.texi to the list + of files to be processed by the Texinfo generator. + * config/riscv/t-riscv: Add rule for generating riscv-mcpu.texi + and riscv-mtune.texi. + * doc/invoke.texi: Replace hand‑written extension table with + `@include riscv-mcpu.texi` and `@include riscv-mtune.texi` to + pull in auto‑generated entries. + * config/riscv/gen-riscv-mcpu-texi.cc: New file. + * config/riscv/gen-riscv-mtune-texi.cc: New file. + * doc/riscv-mcpu.texi: New file. + * doc/riscv-mtune.texi: New file. + +2025-07-29 Richard Sandiford <richard.sandiford@arm.com> + + * simplify-rtx.cc (simplify_context::simplify_subreg): Distribute + lowpart subregs through AND/IOR/XOR, if doing so eliminates one + of the terms. + (test_scalar_int_ext_ops): Add some tests of the above for integers. + * config/aarch64/aarch64.cc (aarch64_test_sve_folding): Likewise + add tests for predicate modes. + +2025-07-29 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve-builtins.cc + (function_expander::get_reg_target): Check whether the target + is a valid register_operand. + +2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/120660 + * avoid-store-forwarding.cc (process_store_forwarding): + Fix instruction generation when haveing multiple stores with + base offset. + +2025-07-29 Christoph Müllner <christoph.muellner@vrull.eu> + + * common/config/riscv/riscv-common.cc (riscv_ext_is_subset): + Remove use of structured binding to fix compiler warning. + +2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119795 + * avoid-store-forwarding.cc + (store_forwarding_analyzer::avoid_store_forwarding): Skip + transformations for stores that operate on the same address + range as deleted ones. + +2025-07-29 Pan Li <pan2.li@intel.com> + + * match.pd: Add mul based unsigned SAT_MUL. + +2025-07-29 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * tree-ssa-reassoc.cc (reassociate_bb): Do not disturb + the sorted operand order in the early pass. + * tree-vect-slp.cc (vect_analyze_slp): Dump when a detected + reduction chain fails SLP discovery. + +2025-07-29 Alfie Richards <alfie.richards@arm.com> + + PR middle-end/121261 + * vec.h: Add null ptr check. + +2025-07-29 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121159 + * calls.cc (can_implement_as_sibling_call_p): Don't reject declared + noreturn functions in musttail calls. + +2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> + + * output.h (MAX_ALIGN_MERGABLE): New define. + * tree-switch-conversion.cc (switch_conversion::build_one_array): + Use MAX_ALIGN_MERGABLE instead of 256. + * varasm.cc (mergeable_string_section): Likewise + (mergeable_constant_section): Likewise + +2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120523 + * output.h (mergeable_constant_section): New declaration taking + unsigned HOST_WIDE_INT for the size. + * tree-switch-conversion.cc (switch_conversion::build_one_array): + Increase the alignment of CSWTCH for sizes less than 32bytes. + * varasm.cc (mergeable_constant_section): Split out twice. + One that takes the size in unsigned HOST_WIDE_INT and the + other size in a tree. + (default_elf_select_section): Pass DECL_SIZE instead of + DECL_MODE to mergeable_constant_section. + +2025-07-29 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_load): Un-factor VMAT + specific code to their handling blocks. + +2025-07-29 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (gather_scatter_info::offset_dt): Remove. + * tree-vect-data-refs.cc (vect_describe_gather_scatter_call): + Do not set it. + (vect_check_gather_scatter): Likewise. + * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): + Likewise. + (get_group_load_store_type): Use the vector type of the offset + SLP child. Do not re-check vect_is_simple_use validated by + SLP build. + +2025-07-28 Georg-Johann Lay <avr@gjlay.de> + + PR target/121277 + * config/avr/avr.cc (avr_addr_space_convert): When converting + from generic AS to __flashx, don't set bit 23. + (avr_convert_to_type): Don't -Waddr-space-convert when NULL + is converted to __flashx or to __flash. + +2025-07-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + * tree-if-conv.cc (is_cond_scalar_reduction): Instead of phi argument, + pass bb and res of the phi. + (factor_out_operators): Add iterator for the phi. Remove the phi + if this is the first time. Return if we had removed the phi. + (predicate_scalar_phi): Add the phi iterator argument. + Update call to is_cond_scalar_reduction. + Update call to factor_out_operators and set the return value to true + when factor_out_operators returns true. + (predicate_all_scalar_phis): Don't remove the phi if predicate_scalar_phi + already removed it. + +2025-07-28 H.J. Lu <hjl.tools@gmail.com> + + PR target/121208 + * config/i386/i386.cc (ix86_tls_get_addr): Issue an error for + -mtls-dialect=gnu with no_caller_saved_registers attribute and + suggest -mtls-dialect=gnu2. + +2025-07-28 Mikael Pettersson <mikpelinux@gmail.com> + + PR other/121260 + * diagnostics/changes.cc: Correct nesting of namespaces + and #if CHECKING_P blocks. + * diagnostics/context.cc: Likewise. + * diagnostics/html-sink.cc: Likewise. + * diagnostics/output-spec.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + +2025-07-28 Tobias Burnus <tburnus@baylibre.com> + + * config/nvptx/nvptx.opt (march-map=): Add sm_100{,f,a}, + sm_101{,f,a}, sm_103{,a,f}, sm_120{,a,f} and sm_121{,f,a}. + +2025-07-28 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn.md (atomic_load, atomic_store, atomic_exchange): + Fix CDNA3 L2 cache write-back before atomic instructions. + +2025-07-28 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Make *gs_info const. + (vect_build_one_gather_load_call): Likewise. + (vect_build_one_scatter_store_call): Likewise. + (vect_get_gather_scatter_ops): Likewise. + (vect_get_strided_load_store_ops): Likewise. + +2025-07-28 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn.md (define_attr "vcmp"): Add with values + vcmp/vcmpx/no. + (*movbi, cstoredi4.., cstore<mode>4): Set it. + * config/gcn/gcn-valu.md (vec_cmp<mode>...): Likewise. + * config/gcn/gcn.cc (gcn_cmpx_insn_p): Remove. + (gcn_md_reorg): Add two new conditions for MI300. + +2025-07-28 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-opts.h (enum hsaco_attr_type): Add comment + about 'sc0'. + * config/gcn/gcn.cc (gcn_md_reorg): Use gen_nops instead of gen_nop. + (print_operand_address): Document 'R' and 'V' in the + pre-function comment as well. + * config/gcn/gcn.md (nops): Add. + +2025-07-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121256 + * tree-vect-loop.cc (vectorizable_recurr): Build a correct + initialization vector for SLP_TREE_LANES > 1. + +2025-07-28 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_slp_tree::type): Add. + (_slp_tree::u): Likewise. + (_stmt_vec_info::type): Remove. + (STMT_VINFO_TYPE): Likewise. + (SLP_TREE_TYPE): New. + * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Do not + initialize type. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize type. + (vect_slp_analyze_node_operations): Adjust. + (vect_schedule_slp_node): Likewise. + * tree-vect-patterns.cc (vect_init_pattern_stmt): Do not + copy STMT_VINFO_TYPE. + * tree-vect-loop.cc: Set SLP_TREE_TYPE instead of + STMT_VINFO_TYPE everywhere. + (vect_create_loop_vinfo): Do not set STMT_VINFO_TYPE on + loop conditions. + * tree-vect-stmts.cc: Set SLP_TREE_TYPE instead of + STMT_VINFO_TYPE everywhere. + (vect_analyze_stmt): Adjust. + (vect_transform_stmt): Likewise. + * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): + Access SLP_TREE_TYPE instead of STMT_VINFO_TYPE. + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): + Remove non-SLP element-wise load/store matching. + * config/rs6000/rs6000.cc + (rs6000_cost_data::update_target_cost_per_stmt): Pass in + the SLP node. Use that to get at the memory access + kind and type. + (rs6000_cost_data::add_stmt_cost): Pass down SLP node. + * config/riscv/riscv-vector-costs.cc (variable_vectorized_p): + Use SLP_TREE_TYPE. + (costs::need_additional_vector_vars_p): Likewise. + (costs::update_local_live_ranges): Likewise. + +2025-07-28 Jennifer Schmitz <jschmitz@nvidia.com> + Dhruv Chawla <dhruvc@nvidia.com> + + * config/aarch64/aarch64-cores.def (olympus): Use olympus tuning + model. + * config/aarch64/aarch64.cc: Include olympus.h. + * config/aarch64/tuning_models/olympus.h: New file. + +2025-07-28 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch.h + (CASE_VECTOR_SHORTEN_MODE): Delete. + +2025-07-28 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_is_insn_L32R_p): + Re-rewrite to more accurately capture insns that could be L32R machine + instructions wherever possible, and add comments that help understand + the intent of the process. + +2025-07-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vxrm_vec_vec_dup): + Add new case UNSPEC_VAADD. + (expand_vx_binary_vxrm_vec_dup_vec): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new case UNSPEC_VAADD to + iterator. + +2025-07-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR middle-end/120855 + * cgraphunit.cc (symbol_table::compile): Assert a transparent + alias is not an internal identifier. + * symtab.cc (symbol_table::change_decl_assembler_name): + Likewise. + * varasm.cc (assemble_name_resolve): Check for + IDENTIFIER_TRANSPARENT_ALIAS instead of just TREE_CHAIN. + +2025-07-26 Thomas Schwinge <tschwinge@baylibre.com> + + * diagnostics/context.cc (context::diagnostic_impl) + (context::diagnostic_n_impl): In presence of formal parameter + 'kind', explicitly state 'diagnostics::' scope for 'kind' enum. + +2025-07-26 Thomas Schwinge <tschwinge@baylibre.com> + + * diagnostics/option-classifier.cc + (update_effective_level_from_pragmas): In presence of local + variable 'kind', explicitly state 'diagnostics::' scope for 'kind' + enum. + +2025-07-26 Christoph Müllner <christoph.muellner@vrull.eu> + + * config/riscv/riscv-ext.def: Add allocated group IDs and + group bit positions. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/context.cc: Eliminate digraphs::lazy_digraph in + favor of lazily_created template. + * diagnostics/context.h: Likewise. + * diagnostics/digraphs.cc: Likewise, also digraphs::lazy_digraphs. + * diagnostics/digraphs.h: Likewise. + * diagnostics/html-sink.cc: Likewise. + * diagnostics/metadata.h: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/sink.h: Likewise. + * diagnostics/text-sink.h: Likewise. + * lazily-created.h: New file. + * libgdiagnostics.cc: Eliminate digraphs::lazy_digraph in + favor of lazily_created template. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h: Use TextOrHtml rather than Sink for template + params. + * diagnostics/context.h: Likewise. + * diagnostics/selftest-context.cc: Use "html_or_text" rather than + "sink". + * diagnostics/source-printing.cc: Use TextOrHtml rather than Sink + for template params. Use "text_out" and "html_out" rather than + "sink". + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (diagnostic_set_caret_max_width): Drop forward + decl. + (diagnostic_same_line): Make + diagnostics::context::m_source_printing private. + * diagnostics/context.cc (diagnostic_set_caret_max_width): Convert + to... + (diagnostics::context::set_caret_max_width): ...this. + * diagnostics/context.h + (diagnostics::context::get_source_printing_options): New + accessors. + (diagnostics::context::m_source_printing): Make private. + * diagnostics/html-sink.cc: Make + diagnostics::context::m_source_printing private. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/selftest-context.cc: Likewise. + * diagnostics/selftest-context.h + (diagnostics::selftest::test_context::colorize_source): New. + (diagnostics::selftest::test_context::show_labels): New. + (diagnostics::selftest::test_context::show_line_numbers): New. + (diagnostics::selftest::test_context::show_ruler): New. + (diagnostics::selftest::test_context::show_event_links): New. + (diagnostics::selftest::test_context::set_caret_char): New. + * diagnostics/source-printing.cc: Make + diagnostics::context::m_source_printing private. + * diagnostics/text-sink.h: Likewise. + * libgdiagnostics.cc: Likewise. + * opts.cc: Likewise. + * toplev.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h: Eliminate "diagnostic_info" typedef. + * diagnostics/context.cc: Update usage of "diagnostic_info" to + explicitly refer to "diagnostics::diagnostic_info". + * langhooks.cc: Likewise. + * libgdiagnostics.cc: Likewise. + * rtl-error.cc: Likewise. + * substring-locations.cc: Likewise. + * toplev.cc: Likewise. + * tree-diagnostic.cc: Likewise. + * tree-diagnostic.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (enum diagnostics_column_unit): Move to + diagnostics/context-options.h. + (enum diagnostics_escape_format): Likewise. + (enum diagnostics_output_format): Likewise. + (enum diagnostic_path_format): Likewise. + (enum diagnostics_extra_output_kind): Likewise. + (enum diagnostic_text_art_charset): Likewise. + * diagnostics/context-options.h: New file, based on the above + material. + * diagnostics/context.h: Include it. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostics/file-cache.o. + * diagnostics/changes.cc: Update for file_cache and char_span + moving from input.h to diagnostics/file-cache.h and into the + "diagnostics::" namespace. + * diagnostics/context.cc: Likewise. + * diagnostics/diagnostics-selftests.cc: Likewise. + * diagnostics/diagnostics-selftests.h: Likewise. + * diagnostics/file-cache.cc: New file, based on the file_cache + and file_cache_slot material in input.cc. + * diagnostics/file-cache.h: Likewise for input.h. + * diagnostics/selftest-source-printing.h: Update for file_cache + and char_span moving from input.h to diagnostics/file-cache.h and + into the "diagnostics::" namespace. + * diagnostics/source-printing.cc: Likewise. + * final.cc: Likewise. + * gcc-rich-location.cc: Likewise. + * input.cc (default_charset_callback): Move to + diagnostics/file-cache.cc. + (file_cache::initialize_input_context): Likewise. + (class file_cache_slot): Likewise. + (file_cache::tune): Likewise. + (file_cache::lookup_file): Likewise. + (file_cache::forcibly_evict_file): Likewise. + (file_cache::missing_trailing_newline_p): Likewise. + (file_cache::add_buffered_content): Likewise. + (file_cache::evicted_cache_tab_entry): Likewise. + (file_cache::add_file): Likewise. + (file_cache::file_cache): Likewise. + (file_cache::dump): Likewise. + (file_cache::dump): Likewise. + (file_cache::lookup_or_add_file): Likewise. + (find_end_of_line): Likewise. + (file_cache::get_source_line): Likewise. + (check_line): Likewise. + (test_replacement): Likewise. + (test_reading_source_line): Likewise. + (test_reading_source_buffer): Likewise. + * input.h (class char_span): Move to diagnostics/file-cache.h and + into the "diagnostics::" namespace. + (class file_cache_slot): Likewise. + (class file_cache): Likewise. + * libgdiagnostics.cc: Update for file_cache and char_span moving + from input.h to diagnostics/file-cache.h and into the + "diagnostics::" namespace. + * selftest.cc: Likewise. + * selftest.h: Likewise. + * substring-locations.h: Likewise. + * toplev.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostics/selftest-paths.cc: Don't include "demangle.h" + and "backtrace.h". + * diagnostics/source-printing.cc: Likewise. + * diagnostics/state-graphs.cc: Don't include "graphviz.h", + "xml.h", "xml-printer.h", or "intl.h". + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h: Move include of "unique-argv.h" + and various forward decls into... + * diagnostics/context.h: ...here. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (num_digits): Move to... + (diagnostics::num_digits): ...here. + (get_cwe_url): Move to... + (diagnostics::get_cwe_url): ...here. + (maybe_line_and_column): Move to... + (diagnostics::maybe_line_and_column): ...here. + * diagnostic.cc: Move to... + * diagnostics/context.cc: ...here. + * diagnostics/diagnostics-selftests.cc + (run_diagnostics_selftests): Add comment about context_cc_tests. + * diagnostics/diagnostics-selftests.h: Add context_cc_tests decl. + * diagnostics/sarif-sink.cc: Update for file rename. + * diagnostics/source-printing.cc: Update for num_digits moving to + diagnostics::num_digits. + * errors.cc: Update for file rename. + * input.cc: Update for num_digits moving to + diagnostics::num_digits. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace diagnostic.o with + diagnostics/context.o. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in: Replace diagnostic.def with diagnostics/kinds.def. + * config/aarch64/aarch64.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + * config/i386/i386-options.cc: Likewise. + * config/s390/s390.cc: Likewise. + * diagnostic-core.h: Replace typedef diagnostic_t with + enum class diagnostics::kind in diagnostics/kinds.h and include + it. + * diagnostic-global-context.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostics/buffering.cc: Likewise. + * diagnostics/buffering.h: Likewise. + * diagnostics/context.h: Likewise. + * diagnostics/diagnostic-info.h: Likewise. + * diagnostics/html-sink.cc: Likewise. + * diagnostic.def: Move to... + * diagnostics/kinds.def: ...here and update for diagnostic_t + becoming enum class diagnostics::kind. + * diagnostics/kinds.h: New file, based on material in + diagnostic-core.h. + * diagnostics/lazy-paths.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + * diagnostics/option-classifier.cc: Likewise. + * diagnostics/option-classifier.h: Likewise. + * diagnostics/output-spec.h: Likewise. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/selftest-context.cc: Likewise. + * diagnostics/selftest-context.h: Likewise. + * diagnostics/sink.h: Likewise. + * diagnostics/source-printing.cc: Likewise. + * diagnostics/text-sink.cc: Likewise. + * diagnostics/text-sink.h: Likewise. + * gcc.cc: Likewise. + * libgdiagnostics.cc: Likewise. + * lto-wrapper.cc: Likewise. + * opts-common.cc: Likewise. + * opts-diagnostic.h: Likewise. + * opts.cc: Likewise. + * rtl-error.cc: Likewise. + * substring-locations.cc: Likewise. + * toplev.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-core.h: Include "diagnostics/option-id.h". + (struct diagnostic_option_id): Move there, renaming to + diagnostics::option_id. + * diagnostic-global-context.cc: Update for renaming of + diagnostic_option_id to diagnostics::option_id. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostics/context.h: Likewise. + * diagnostics/diagnostic-info.h: Likewise. + * diagnostics/lazy-paths.cc: Likewise. + * diagnostics/option-classifier.cc: Likewise. + * diagnostics/option-classifier.h: Likewise. + * diagnostics/option-id.h: New file, taken from material in + diagnostic-core.h. + * diagnostics/selftest-context.cc: Update for renaming of + diagnostic_option_id to diagnostics::option_id. + * diagnostics/selftest-context.h: Likewise. + * ipa-pure-const.cc: Likewise. + * lto-wrapper.cc: Likewise. + * opts-common.cc: Likewise. + * opts-diagnostic.h: Likewise. + * opts.cc: Likewise. + * substring-locations.cc: Likewise. + * substring-locations.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace diagnostic-spec.o with + gcc-diagnostic-spec.o. + (GTFILES): Replace diagnostic-spec.h with gcc-diagnostic-spec.h. + * diagnostic-spec.cc: Move to... + * gcc-diagnostic-spec.cc: ...here. + * diagnostic-spec.h: Move to... + * gcc-diagnostic-spec.h: ...here. + * gengtype.cc (open_base_files): Replace diagnostic-spec.h with + gcc-diagnostic-spec.h. + * warning-control.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace diagnostics/changes.o with + diagnostics/edit-context.o. + * diagnostic.cc: Update for move of diagnostics/edit-context.h to + diagnostics/changes.h. + (diagnostics::context::initialize): Update for renaming of + m_edit_context_ptr to m_fixits_change_set. + (diagnostics::context::finish): Likewise. + (diagnostics::context::create_edit_context): Rename to... + (diagnostics::context::initialize_fixits_change_set): ...this and + update for other renamings. + (diagnostics::context::report_diagnostic): Update for renaming of + m_edit_context_ptr to m_fixits_change_set. + * diagnostic.h (diagnostics::edit_context): Drop forward decl + * diagnostics/edit-context.cc: Move to... + * diagnostics/changes.cc: ...here. Update for move of + diagnostics/edit-context.h to diagnostics/changes.h. + Rename diagnostics::edit_context to + diagnostics::changes::change_set. Rename diagnostics::edited_file + to diagnostics::changes::changed_file. Rename + diagnostics::edited_line to diagnostics::changes::changed_line. + * diagnostics/edit-context.h: Move to... + * diagnostics/changes.h: ...here, renaming as above. + * diagnostics/context.h (diagnostics::changes::change_set): New + forward decl. + (diagnostics::context::create_edit_context): Rename to... + (diagnostics::context::initialize_fixits_change_set): ...this. + (diagnostics::context::get_edit_context): Rename to... + (diagnostics::context::get_fixits_change_set): ...this. + (diagnostics::context::m_edit_context_ptr): Rename to... + (diagnostics::context::m_fixits_change_set): ..this and update + type. + * diagnostics/diagnostics-selftests.cc: Update for renaming. + * diagnostics/diagnostics-selftests.h: Likewise. + * diagnostics/html-sink.cc: Update for above changes. + * libgdiagnostics.cc: Likewise. + * toplev.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Move diagnostics/lazy-paths.o to... + (OBJS-libcommon): ...here. Add + diagnostics/diagnostics-selftests.o. + * diagnostic.cc: Update for move of + selftest::test_diagnostic_context to + diagnostics::selftest::test_context. + * diagnostics/color.cc: Move selftests from selftest:: to + diagnostics::selftest::. + * diagnostics/diagnostics-selftests.cc: New file. + * diagnostics/diagnostics-selftests.h: New file. + * diagnostics/digraphs.cc: Move selftests from selftest:: to + diagnostics::selftest::. + * diagnostics/edit-context.cc: Likewise. + * diagnostics/html-sink.cc: Likewise. + * diagnostics/lazy-paths.cc: Likewise. Eliminate use of "tree" + by porting selftests from simple-diagnostic-path.h to + diagnostics/selftest-paths.h. + * diagnostics/output-spec.cc: Move selftests from selftest:: to + diagnostics::selftest::. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/selftest-context.cc: Move + selftest::test_diagnostic_context to + diagnostics::selftest::test_context. + * diagnostics/selftest-context.h: Likewise. + * diagnostics/selftest-logical-locations.cc: Move selftests from + selftest:: to diagnostics::logical_locations::selftest::. + * diagnostics/selftest-logical-locations.h: Move + selftest::logical_location_manager to + diagnostics::logical_locations::selftest::logical_location_manager. + * diagnostics/selftest-paths.cc: Move + selftest::test_diagnostic_path to + diagnostics::paths::selftest::test_path. Move + selftest::test_diagnostic_event to + diagnostics::paths::selftest::test_event. + * diagnostics/selftest-paths.h: Likewise, and move + selftest::test_diagnostic_thread to + diagnostics::paths::selftest::test_thread. + * diagnostics/selftest-source-printing.h: Move + selftest::diagnostic_show_locus_fixture to + diagnostics::selftest::source_printing_fixture. + * diagnostics/source-printing.cc: Move selftests from selftest:: + to diagnostics::selftest:: and update for renames. + * diagnostics/state-graphs.cc: Likewise. + * selftest-run-tests.cc: Include + "diagnostics/diagnostics-selftests.h". + (selftest::run_tests): Replace invocation of the various diagnostics + selftests with a call to + diagnostics::selftest::run_diagnostics_selftests. + * selftest.h: Move decls of the various per-file diagnostics + invocation functions to diagnostics/diagnostics-selftests.h, + renaming due to diagostics prefix being implied by namespace. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * common.opt: Update for move of diagnostic-url.h to + diagnostics/url.h. + * diagnostic.cc: Likewise. + * diagnostics/color.cc: Likewise. + * diagnostics/text-sink.cc: Likewise. + * diagnostic-url.h: Move to... + * diagnostics/url.h: ...here. + * libgdiagnostics.cc: Update for move of diagnostic-url.h to + diagnostics/url.h. + * pretty-print.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace diagnostic-color.o with + diagnostics/color.o. + (PLUGIN_HEADERS): Remove diagnostic-color.h in favor of glob. + * common.opt: Update for move of diagnostic-color.h to + diagnostics/color.h. + * diagnostic.cc: Likewise. + * diagnostic-color.cc: Move to... + * diagnostics/color.cc: ...here. + * diagnostic-color.h: Move to... + * diagnostics/color.h: ...here. + * diagnostics/edit-context.cc: Update for move of + diagnostic-color.h to diagnostics/color.h. + * diagnostics/output-spec.cc: Likewise. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/source-printing.cc: Likewise. + * diagnostics/text-sink.cc: Likewise. + * libgdiagnostics.cc: Likewise. + * opts.cc: Likewise. + * pretty-print-markup.h: Likewise. + * pretty-print.cc: Likewise. + * selftest-run-tests.cc: Likewise. + * selftest.h: Likewise. + * text-art/style.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace selftest-diagnostic.o with + diagnostics/selftest-context.o. + * diagnostic.cc: Update for move of selftest-diagnostic.h to + diagnostics/selftest-context.h. + * diagnostics/html-sink.cc: Likewise. + * diagnostics/lazy-paths.cc: Likewise. + * diagnostics/output-spec.cc: Likewise. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * selftest-diagnostic.cc: Move to... + * diagnostics/selftest-context.cc: ...here and update for move of + header file. + * selftest-diagnostic.h: Move to... + * diagnostics/selftest-context.h: ...here. + * diagnostics/source-printing.cc: Update for move of + selftest-diagnostic.h to diagnostics/selftest-context.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostics/buffering.o. + * diagnostic.cc (diagnostics::context::set_diagnostic_buffer): Move to + diagnostics/buffering.cc. + (diagnostics::context::clear_diagnostic_buffer): Likewise. + (diagnostics::context::flush_diagnostic_buffer): Likewise. + (diagnostics::buffer::buffer): Likewise. + (diagnostics::buffer::~buffer): Likewise. + (diagnostics::buffer::dump): Likewise. + (diagnostics::buffer::empty_p): Likewise. + (diagnostics::buffer::move_to): Likewise. + (diagnostics::buffer::ensure_per_sink_buffers): Likewise. + * diagnostics/buffering.cc: New file, from material in diagnostic.cc. + * diagnostics/buffering.h: Fix comment. + * diagnostics/text-sink.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add + diagnostics/option-classifier.o. + * diagnostic.cc (diagnostics::option_classifier::init): Move to + diagnostics/option-classifier.cc. + (diagnostics::option_classifier::fini): Likewise. + (diagnostics::option_classifier::pch_save): Likewise. + (diagnostics::option_classifier::pch_restore): Likewise. + (diagnostics::option_classifier::push): Likewise. + (diagnostics::option_classifier::pop): Likewise. + (diagnostics::option_classifier::classify_diagnostic): Likewise. + (diagnostics::option_classifier::update_effective_level_from_pragmas): + Likewise. + * diagnostics/context.h: Include + "diagnostics/option-classifier.h". + (class option_classifier): Move to + diagnostics/option-classifier.h. + * diagnostics/option-classifier.cc: New file, based on material + from diagnostic.cc. + * diagnostics/option-classifier.h: New file, based on material + from diagnostics/context.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * coretypes.h: Update for diagnostic_context becoming + diagnostics::context. + * diagnostic-global-context.cc: Likewise. + * diagnostic.cc: Likewise. Also for diagnostic_option_classifier + becoming diagnostics::option_classifier. + * diagnostic.h (diagnostic_text_starter_fn): Rename to... + (diagnostics::text_starter_fn): ...this, and move to + diagnostics/context.h. + (get_printer): Rename to... + (diagnostics::get_printer): ...this, and move to + diagnostics/context.h. + (class diagnostic_option_manager): Rename to... + (class diagnostics::option_manager): ...this, and move to + diagnostics/context.h. + (class diagnostic_option_classifier): Rename to... + (class diagnostics::option_classifier): ...this, and move to + diagnostics/context.h. + (struct diagnostic_source_printing_options): Rename to... + (struct diagnostics::source_printing_options): ...this, and move + to diagnostics/context.h. + (class diagnostic_column_policy): Rename to... + (class diagnostics::column_policy): ...this, and move to + diagnostics/context.h. + (class diagnostic_location_print_policy): Rename to... + (class diagnostics::location_print_policy): ...this, and move to + diagnostics/context.h. + (class html_label_writer): Rename to... + (class diagnostics::html_label_writer): ...this, and move to + diagnostics/context.h. + (class diagnostic_source_print_policy): Rename to... + (class diagnostics::source_print_policy): ...this, and move to + diagnostics/context.h. + (struct diagnostic_counters): Rename to... + (struct diagnostics::counters): ...this, and move to + diagnostics/context.h. + (class diagnostic_context): Rename to... + (class diagnostics::context): ...this, and move to + diagnostics/context.h. + (diagnostic_text_starter): Rename to... + (diagnostics::text_starter): ...this, and move to + diagnostics/context.h. + (diagnostic_start_span): Rename to... + (diagnostics::start_span): ...this, and move to + diagnostics/context.h. + (diagnostic_text_finalizer): Rename to... + (diagnostics::text_finalizer): ...this, and move to + diagnostics/context.h. + Include "diagnostics/context.h". + * diagnostics/buffering.h: Update for diagnostic_context becoming + diagnostics::context; similarly for diagnostic_counters. + * diagnostics/client-data-hooks.h: Likewise. + * diagnostics/context.h: New file, taken from material in + diagnostic.h. + * diagnostics/html-sink.cc: : Update for diagnostic_context + becoming diagnostics::context. + * diagnostics/html-sink.h: Likewise. + * diagnostics/lazy-paths.cc: Likewise for + diagnostic_option_manager. + * diagnostics/output-file.h: Likewise for diagnostic_context. + * diagnostics/output-spec.cc: Likewise. + * diagnostics/output-spec.h: Likewise. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/sarif-sink.h: Likewise. + * diagnostics/sink.h: Likewise. + * diagnostics/source-printing.cc: Likewise. + * diagnostics/text-sink.cc: Likewise. + * diagnostics/text-sink.h: Likewise. + * gcc-rich-location.h: Likewise. + * gcc.cc: Likewise. + * gdbinit.in: Likewise. + * langhooks-def.h: Likewise. + * langhooks.cc: Likewise. + * langhooks.h: Likewise. + * libgdiagnostics.cc: Likewise. + * optc-gen.awk: Likewise. + * opth-gen.awk: Likewise. + * opts-common.cc: Likewise. + * opts-diagnostic.cc: Likewise. + * opts-diagnostic.h: Likewise. + * opts-global.cc: Likewise. + * opts.cc: Likewise. + * opts.h: Likewise. + * selftest-diagnostic.cc: Likewise. + * selftest-diagnostic.h: Likewise. + * toplev.cc: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + * tree-diagnostic.cc: Likewise. + * tree-diagnostic.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (struct diagnostic_info): Move to + diagnostics/diagnostic-info.h as diagnostics::diagnostic_info. + Add typedef bringing it back into root namespace, for now. + * diagnostics/diagnostic-info.h: New file, based on the above. + * langhooks-def.h: Update for diagnostic_info moving into + namespace diagnostics. + * langhooks.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.cc: Update to add "m_" prefix to fields of + diagnostic_info throughout. + * diagnostic.h: Likewise. + * diagnostics/html-sink.cc: Likewise. + * diagnostics/sarif-sink.cc: Likewise. + * diagnostics/text-sink.cc: Likewise. + * libgdiagnostics.cc: Likewise. + * substring-locations.cc: Likewise. + * tree-diagnostic.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Replace diagnostic-macro-unwinding.o with + diagnostics/macro-unwinding.o. + * diagnostic-macro-unwinding.cc: Move to... + * diagnostics/macro-unwinding.cc: ...here, moving content into + namespace diagnostics. + * diagnostic-macro-unwinding.h: Move to... + * diagnostics/macro-unwinding.h: ...here, moving content into + namespace diagnostics. + * diagnostics/paths-output.cc: Update for move of + "diagnostic-macro-unwinding.h" to "diagnostics/macro-unwinding.h". + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Replace diagnostic-show-locus.o with + diagnostics/source-printing.o. + * diagnostic.h (class diagnostic_source_effect_info): Replace + with... + (class diagnotics::source_effect_info): ...this. + * diagnostics/paths-output.cc: Likewise. Update for move of + "diagnostic-label-effects.h" to + "diagnostics/source-printing-effects.h". + * diagnostics/sarif-sink.cc: Update for move of + "selftest-diagnostic-show-locus.h" to + "diagnostics/selftest-source-printing.h". + * selftest-diagnostic-show-locus.h: Move to... + * diagnostics/selftest-source-printing.h: ...here. + * diagnostic-label-effects.h: Move to... + * diagnostics/source-printing-effects.h: ...here, updating + for above changes. + * diagnostic-show-locus.cc: Move to... + * diagnostics/source-printing.cc: ...here. + * gcc-rich-location.h: Likewise. + * selftest-run-tests.cc: Likewise. + * selftest.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Replace diagnostic-format-html.o with + diagnostics/html-sink.o, diagnostic-format-sarif.o with + diagnostics/sarif-sink.o, and diagnostic-format-text.o with + diagnostics/text-sink.o. + * coretypes.h (class diagnostic_text_output_format): Replace + with... + (class diagnostics::text_sink): ...this. + * diagnostic-global-context.cc: Update for move of diagnostics + output formats into namespace "diagnostics", as "sinks". + * diagnostic-macro-unwinding.cc: Likewise. + * diagnostic-macro-unwinding.h: Likewise. + * diagnostic-show-locus.cc: Likewise. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostic-buffer.h: Rename to... + * diagnostics/buffering.h: ...this, updating for above changes. + * diagnostics/client-data-hooks.h: Likewise. + * diagnostics/digraphs.cc: Likewise. + * diagnostic-format-html.cc: Rename to... + * diagnostics/html-sink.cc: ...this, updating for above changes. + * diagnostic-format-html.h: Rename to... + * diagnostics/html-sink.h: ...this, updating for above changes. + * diagnostics/lazy-paths.cc: Likewise. + * diagnostics/metadata.h: Likewise. + * diagnostics/output-spec.cc: Likewise. + * diagnostics/output-spec.h: Likewise. + * diagnostics/paths-output.cc: Likewise. + * diagnostics/paths.h: Likewise. + * diagnostic-format-sarif.cc: Rename to... + * diagnostics/sarif-sink.cc: ...this, updating for above changes. + * diagnostic-format-sarif.h: Rename to... + * diagnostics/sarif-sink.h: ...this, updating for above changes. + * diagnostic-format.h: Rename to... + * diagnostics/sink.h: ...this, updating for above changes. + * diagnostics/state-graphs-to-dot.cc: Likewise. + * diagnostic-format-text.cc: Rename to... + * diagnostics/text-sink.cc: ...this, updating for above changes. + * diagnostic-format-text.h: Rename to... + * diagnostics/text-sink.h: ...this, updating for above changes. + * gcc.cc: Likewise. + * langhooks-def.h: Likewise. + * langhooks.cc: Likewise. + * langhooks.h: Likewise. + * libgdiagnostics.cc: Likewise. + * opts-diagnostic.cc: Likewise. + * opts.cc: Likewise. + * selftest-diagnostic.cc: Likewise. + * selftest-run-tests.cc: Likewise. + * selftest.h: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + * tree-diagnostic.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Replace lazy-diagnostic-path.o with + diagnostics/lazy-paths.o. + (OBJS-libcommon): Replace diagnostic-path.o with + diagnostics/paths.o, diagnostic-path-output.o with + diagnostics/paths-output.o, and selftest-diagnostic-path.o with + diagnostics/selftest-paths.o. + (EXTRA_BACKEND_OBJS): Replace lazy-diagnostic-path.o with + diagnostics/lazy-paths.o. + * diagnostic-format-html.cc: Update #include for + "diagnostic-path.h" moving to "diagnostics/paths.h", + diagnostic_thread_id_t to diagnostics::paths::thread_id_t, + diagnostic_event_id_t to diagnostics::paths::event_id_t, + diagnostic_path to diagnostics::paths::path, and + diagnostic_thread to diagnostics::paths::thread, and + diagnostic_event to diagnostics::paths::event. + * diagnostic-format-html.h: Likewise. + * diagnostic-format-sarif.cc: Likewise. Update PROPERTY_PREFIX + for threadFlowLocations from "gcc/diagnostic_event/" to + "gcc/diagnostics/paths/event/". + * diagnostic-format-text.cc: Likewise. + * diagnostic-format-text.h: Likewise. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostic-event-id.h: Move to... + * diagnostics/event-id.h: ...here, updating header guard. + (diagnostics:paths:event_id_t): New typedef. + (diagnostic_thread_id_t): Replace with... + (diagnostics:paths:thread_id_t): New typedef. + * lazy-diagnostic-path.cc: Move to... + * diagnostics/lazy-paths.cc: ...here. Update for above changes, + lazy_diagnostic_path becomes diagnostics::paths::lazy_path. + (lazy_diagnostic_path_cc_tests): Rename to... + (diagnostics_lazy_paths_cc_tests): ...this. + * lazy-diagnostic-path.h: Move to... + * diagnostics/lazy-paths.h: ...here, updating header guard. + Update for above changes. + * diagnostic-path-output.cc: Move to... + * diagnostics/paths-output.cc: ...here. Update for above changes. + (diagnostic_path_output_cc_tests): Rename to... + (diagnostics_paths_output_cc_tests): ...this. + * diagnostic-path.cc: Move to... + * diagnostics/paths.cc: ...here. Update for above changes. + * diagnostic-path.h: Move to... + * diagnostics/paths.h: ...here, updating header guard. + Update #include for moving "diagnostic-event-id.h" to + "diagnostics/event-id.h". + (class diagnostic_event): Convert to... + (class diagnostics::paths::event): ...this. + (class diagnostic_thread): Convert to... + (class diagnostics::paths::thread): ...this. + (class diagnostic_path): Convert to... + (class diagnostics::paths::path): ...this. + * diagnostic-show-locus.cc: Update for above changes. + * doc/analyzer.texi: Likewise. + * selftest-diagnostic-path.cc: Move to... + * diagnostics/selftest-paths.cc: ...here. Update for + above changes, and for "selftest-diagnostic-path.h" moving to + "diagnostics/selftest-paths.h". + * selftest-diagnostic-path.h: Move to... + * diagnostics/selftest-paths.h: ...here, updating header guard. + Update for above changes. + * libgdiagnostics.cc: Update for above changes. + * libsarifreplay.cc: Update property prefix for + threadFlowLocations from "gcc/diagnostic_event/" to + "gcc/diagnostics/paths/event/". + * pretty-print-format-impl.h: Update for above changes. + * pretty-print.cc: Likewise. + * selftest-run-tests.cc (selftest::run_tests): Update for + renaming of lazy_diagnostic_path_cc_tests to + diagnostics_lazy_paths_cc_tests, and of + diagnostic_path_output_cc_tests to + diagnostics_paths_output_cc_tests. + * selftest.h (lazy_diagnostic_path_cc_tests): Replace decl with... + (diagnostics_lazy_paths_cc_tests): ...this. + (diagnostic_path_output_cc_tests): Replace decl with... + (diagnostics_paths_output_cc_tests): ...this. + * simple-diagnostic-path.cc: Clarify that this relates to "tree" + and thus shouldn't be in "diagnostics". Update for above changes. + * simple-diagnostic-path.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace diagnostic-output-spec.o + with diagnostics/output-spec.o. + * diagnostic-output-spec.cc: Move to... + * diagnostics/output-spec.cc: ...here. Update #include for + move of diagnostic-output-spec.h to diagnostics/output-spec.h. + (namespace::diagnostics_output_spec): Replace with... + (namespace diagnostics::output_spec): ...this, removing redundant + prefixes. + (diagnostics_output_spec::gcc_spec_context): Replace with... + (diagnostics::output_spec::dc_spec_context): ...this. + (diagnostic_output_spec_cc_tests): Rename to... + (diagnostics_output_spec_cc_tests): ...this. + * diagnostic-output-spec.h: Move to... + * diagnostics/output-spec.h: ...here and update inclusion guard. + (namespace::diagnostics_output_spec): Replace with... + (namespace diagnostics::output_spec): ...this, removing redundant + prefixes. + (diagnostics_output_spec::gcc_spec_context): Replace with... + (diagnostics::output_spec::dc_spec_context): ...this. + * libgdiagnostics.cc: Update #include for move of + diagnostic-output-spec.h to diagnostics/output-spec.h. + * opts-diagnostic.cc: Likewise. Update for namespace and name + changes. + * selftest-run-tests.cc (selftest::run_tests): Update for renaming + of diagnostic_output_spec_cc_tests to + diagnostics_output_spec_cc_tests. + * selftest.h (diagnostic_output_spec_cc_tests): Rename decl to... + (diagnostics_output_spec_cc_tests): ...this. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc: Update #include for move of + diagnostic-output-file.h to diagnostics/output-file.h. Update for + move of diagnostic_output_file to diagnostics::output_file. + * diagnostic-format-html.h: Likewise. + * diagnostic-format-sarif.cc: Likewise. + * diagnostic-format-sarif.h: Likewise. + * diagnostic-output-spec.cc: Likewise. + * diagnostic-output-spec.h (along): Likewise. + * diagnostic-output-file.h: Move to... + * diagnostics/output-file.h: ...here, updating header guard. + (class diagnostic_output_file): Move to... + (class diagnostics::output_file): ...here. + * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for + move of diagnostic_output_file to diagnostics::output_file. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc: Update #include for move of + diagnostic-client-data-hooks.h to diagnostics/client-data-hooks.h. + * diagnostic-format-sarif.cc: Likewise. Update for move of + diagnostic_client_plugin_info to diagnostics::client_plugin_info. + * diagnostic-format-text.cc: Likewise. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostic-client-data-hooks.h: Move to... + * diagnostics/client-data-hooks.h: ...here, updating header guard. + (class diagnostic_client_data_hooks): Move to... + (class diagnostics::client_data_hooks): ...here. Remove redundant + "diagnostics::" prefixes. + (class diagnostic_client_plugin_info): Move to... + (class diagnostics::client_plugin_info): ...here. + * libgdiagnostics.cc: : Update #include for move of + diagnostic-client-data-hooks.h to diagnostics/client-data-hooks.h. + Update for move of diagnostic_client_data_hooks to + diagnostics::client_data_hooks, and for move of + diagnostic_client_version_info to diagnostics::client_version_info. + * tree-diagnostic-client-data-hooks.cc: Likewise. + * tree-diagnostic.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace edit-context.o with + diagnostics/edit-context.o. + * diagnostic-format-html.cc: Update #include for move + of edit-context.h to diagnostics subdir. + * diagnostic.cc: Likewise. Update for move of edit_context to + diagnostics::edit_context. + * diagnostic.h: Likewise. + * edit-context.cc: Move to... + * diagnostics/edit-context.cc: ...here. Update #include for move + of edit-context.h to diagnostics subdir. Move all code + within namespace diagnostics. + * edit-context.h: Move to... + * diagnostics/edit-context.h: ...here, updating header guard. + Move all code within namespace diagnostics. + * libgdiagnostics.cc: Update #include for move of edit-context.h + to diagnostics subdir. Update for move of edit_context + to diagnostics::edit_context. + * toplev.cc: Update #include for move of edit-context.h + to diagnostics subdir. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc: Update for move of diagnostic_diagram + to diagnostics::diagram. + * diagnostic-format-sarif.cc: Update #include for move of + "diagnostic-diagram.h" to "diagnostics/diagram.h". Update for move + of diagnostic_diagram to diagnostics::diagram. + * diagnostic-format-text.cc: Likewise. + * diagnostic-format-text.h: Update for move of diagnostic_diagram + to diagnostics::diagram. + * diagnostic-format.h: Likewise. + * diagnostic.cc: Update #include for move of + "diagnostic-diagram.h" to "diagnostics/diagram.h". Update for move + of diagnostic_diagram to diagnostics::diagram. + * diagnostic.h: Update for move of diagnostic_diagram to + diagnostics::diagram. + * diagnostic-diagram.h: Move to... + * diagnostics/diagram.h: ...here. + (class diagnostic_diagram): Convert to... + (class diagnostics::diagram): ...this. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-core.h: Update for move of diagnostic_metadata to + diagnostics::metadata. + * diagnostic-format-html.cc: Likewise; also, update #include for + move of "diagnostic-metadata.h" to "diagnostics/metadata.h". + * diagnostic-format-sarif.cc: Likewise. + * diagnostic-format-text.cc: Likewise. + * diagnostic-global-context.cc: Likewise. + * diagnostic.cc: Likewise. + * diagnostic.h: Likewise. + * diagnostic-metadata.h: Move to... + * diagnostics/metadata.h: ...here, updating header guard. + (class diagnostic_metadata): Move to... + (class diagnostics::metadata): ...here. Drop redundant + "diagnostics::" qualifiers. + * libgdiagnostics.cc: : Update #include for move of + "diagnostic-metadata.h" to "diagnostics/metadata.h", and update + for move of diagnostic_metadata to diagnostics::metadata. + * selftest-diagnostic.cc: Update for move of diagnostic_metadata + to diagnostics::metadata. + * selftest-diagnostic.h: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Replace + selftest-logical-location.o with + diagnostics/selftest-logical-locations.o. + * diagnostic-client-data-hooks.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, and of logical_location + to diagnostics::logical_locations::key. + * diagnostic-format-html.cc: Add "using namespace diagnostics;", + and drop now-redundant "diagnostics::" prefixes. + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, of logical_location to + diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + * diagnostic-format-sarif.cc: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". Add + "using namespace diagnostics;", and drop now-redundant + "diagnostics::" prefixes. + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, of logical_location to + diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + * diagnostic-format-sarif.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location to + diagnostics::logical_locations::key. + * diagnostic-path-output.cc: Add "using namespace diagnostics;". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, and + of logical_location to diagnostics::logical_locations::key, + * diagnostic-path.cc: Add "using namespace diagnostics;". + Update for conversion of logical_location to + diagnostics::logical_locations::key. + * diagnostic-path.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, and of logical_location + to diagnostics::logical_locations::key, + * diagnostic.cc: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + * diagnostic.h: Reorganize forward decls. + (class logical_location_manager): Replace this forward decl + with... + (class diagnostics::logical_locations::manager): ...this. + (diagnostic_context::get_logical_location_manager): Update + return type. + * diagnostics/digraphs.h: : Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location to + diagnostics::logical_locations::key. + * logical-location.h: Move to... + * diagnostics/logical-locations.h: ...here. + (enum class logical_location_kind): Convert to... + (enum class diagnostics::logical_locations::kind): ... this. + (class logical_location_manager::key): Convert to... + (class diagnostics::logical_locations::key): ... this. + (class logical_location_manager): Convert to... + (class diagnostics::logical_locations::manager): ... this. + (logical_location): Drop this typedef in favor of + diagnostics::logical_locations::key. + * selftest-logical-location.cc: Move to... + * diagnostics/selftest-logical-locations.cc: ...here. + Update #include for move of "selftest-logical-location.h" to + "diagnostics/selftest-logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, of logical_location to + diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + (selftest_logical_location_cc_tests): Rename to... + (diagnostics_selftest_logical_locations_cc_tests): ...this. + * selftest-logical-location.h: Move to... + * diagnostics/selftest-logical-locations.h: ...here, updating + include guard. + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, of logical_location to + diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + * diagnostics/state-graphs-to-dot.cc: Add + "using namespace diagnostics;" and drop now-redundant + "diagnostics::" prefixes. + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager. + * diagnostics/state-graphs.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, + of logical_location to diagnostics::logical_locations::key. + * libgdiagnostics.cc: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, and of logical_location + to diagnostics::logical_locations::key. + * selftest-diagnostic-path.cc: Update for conversion of + logical_location to diagnostics::logical_locations::key. + * selftest-diagnostic-path.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location to + diagnostics::logical_locations::key. + * selftest-run-tests.cc (selftest::run_tests): Update for + renaming of selftest_logical_location_cc_tests to + diagnostics_selftest_logical_locations_cc_tests. + * selftest.h: Likewise. + * simple-diagnostic-path.h: Update for conversion of + logical_location to diagnostics::logical_locations::key. + * tree-diagnostic-client-data-hooks.cc: Update for conversion of + logical_location_manager to + diagnostics::logical_locations::manager, and of logical_location + to diagnostics::logical_locations::key. + * tree-logical-location.cc: Update for conversions. + Update for conversion of logical_location to + diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + * tree-logical-location.h: Update #include for move of + "logical-location.h" to "diagnostics/logical-locations.h". + Update for conversion of logical_location_manager to + diagnostics::logical_locations::manager, of logical_location + to diagnostics::logical_locations::key, and of + enum logical_location_kind to + enum diagnostics::logical_locations::kind. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Rename diagnostic-digraphs.o to + diagnostics/digraphs.o. Rename diagnostic-state-graphs.o to + diagnostics/state-graphs.o. Rename diagnostic-state-to-dot.o to + diagnostics/state-graphs-to-dot.o. + (PLUGIN_HEADERS): Add $(srcdir)/diagnostics/*.h. + (install-plugin:): Likewise. + * configure: Regenerate. + * configure.ac (gccdepdir): Add "diagnostics" to directories. + * diagnostic-format-html.cc: Update #includes for move of + "diagnostic-digraphs.h" to "diagnostics/digraphs.h" and of + move of "diagnostic-state-graphs.h" to + "diagnostics/state-graphs.h". + * diagnostic-format-sarif.cc: Likewise. + * diagnostic-path.cc: Likewise for state-graphs.h + * diagnostic-digraphs.cc: Move... + * diagnostics/digraphs.cc: ...to here. Update #include + for renaming of digraphs.h. + (selftest::diagnostic_digraphs_cc_tests): Rename to... + (selftest::diagnostics_digraphs_cc_tests): ...this. + * diagnostic-digraphs.h: Move... + * diagnostics/digraphs.h: ...to here, updating header guard. + * diagnostic-state-to-dot.cc: Move... + * diagnostics/state-graphs-to-dot.cc: ...to here. Update #include + of state-graphs.h. + * diagnostic-state-graphs.cc: Move... + * diagnostics/state-graphs.cc: ...to here. Update #include + of state-graphs.h. + (selftest::diagnostic_state_graphs_cc_tests): Rename... + (selftest::diagnostics_state_graphs_cc_tests): ...to this. + * diagnostic-state-graphs.h: Move... + * diagnostics/state-graphs.h: ...to here, updating header guard. + * libgdiagnostics.cc: Update #includes for move of + "diagnostic-digraphs.h" to "diagnostics/digraphs.h" and of + move of "diagnostic-state-graphs.h" to + "diagnostics/state-graphs.h". + * selftest-run-tests.cc (selftest::run_tests): Update for + function renamings that reflect file renamings. + * selftest.h (selftest::diagnostic_digraphs_cc_tests): Rename + to... + (selftest::diagnostics_digraphs_cc_tests): ...this. + (selftest::diagnostic_state_graphs_cc_tests): Rename... + (selftest::diagnostics_state_graphs_cc_tests): ...to this. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_get_vec_defs): Remove overload + with operand vector type. Remove stmt_vec_info and + ncopies argument. + * tree-vect-stmts.cc (vect_get_vec_defs): Likewise. + (vectorizable_conversion): Adjust by not passing in + vector types, stmt_vec_info and ncopies. + (vectorizable_bswap): Likewise. + (vectorizable_assignment): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_scan_store): Likewise. + (vectorizable_store): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_comparison_1): Likewise. + * tree-vect-loop.cc (vect_transform_reduction): Likewise. + (vect_transform_lc_phi): Likewise. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_is_simple_use): Remove stmt-info + with vectype output overload and remove stmt-info argument + from SLP based API. + * tree-vect-loop.cc (vectorizable_lane_reducing): Remove + unused def_stmt_info output argument to vect_is_simple_use. + Adjust. + * tree-vect-stmts.cc (get_group_load_store_type): Get + the gather/scatter offset vector type from the SLP child. + (vect_check_scalar_mask): Remove stmt_info argument. Adjust. + (vect_check_store_rhs): Likewise. + (vectorizable_call): Likewise. + (vectorizable_simd_clone_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_assignment): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_load): Likewise. + (vect_is_simple_cond): Remove stmt_info argument. Adjust. + (vectorizable_condition): Likewise. + (vectorizable_comparison_1): Likewise. + (vectorizable_store): Likewise. + (vect_is_simple_use): Remove overload and non-SLP path. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_model_simple_cost): Removed code + when no SLP node is passed, remove then unused dt and ndts + parameters and fix the number of vector stmts calculation. + (vectorizable_call): Adjust. + (vectorizable_simd_clone_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_assignment): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_comparison_1): Likewise. + +2025-07-25 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-vector-costs.cc (get_live_range): + Move compute_local_program_points to cost class. + (variable_vectorized_p): Add slp node parameter. + (need_additional_vector_vars_p): Move from here... + (costs::need_additional_vector_vars_p): ... to here and add slp + parameter. + (compute_estimated_lmul): Move update_local_live_ranges to cost + class. + (has_unexpected_spills_p): Move from here... + (costs::has_unexpected_spills_p): ... to here. + (costs::record_lmul_spills): New function. + (costs::add_stmt_cost): Add stmt_info, slp mapping. + (costs::finish_cost): Analyze loop. + * config/riscv/riscv-vector-costs.h: Move declarations to class. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_2): Get vectype + from the SLP node. + (vectorize_fold_left_reduction): Likewise. + (vect_transform_reduction): Likewise. + (vect_transform_cycle_phi): Likewise. + (vect_transform_lc_phi): Likewise. + * tree-vect-slp.cc (vect_analyze_slp): Likewise. + * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): + Pass in vectype and use that. + (vect_use_strided_gather_scatters_p): Likewise. + (get_group_load_store_type): Adjust. + (vect_check_scalar_mask): We always have a SLP node. + Use vectype from the SLP node. + (vect_check_store_rhs): Likewise. + (vect_build_one_gather_load_call): Pass in the vector type + and use that. + (vect_get_strided_load_store_ops): Likewise. + (vectorizable_store): Adjust. + (vectorizable_load): Use the vector type from the SLP node + and adjust. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * target.h (stmt_vectype): Remove. + * tree-vect-stmts.cc (stmt_vectype): Likewise. + +2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + * config/riscv/riscv.cc (enum riscv_privilege_levels): Remove USER_MODE. + (riscv_handle_type_attribute): Remove "user" interrupts. + (riscv_expand_epilogue): Likewise. + (riscv_get_interrupt_type): Likewise. + * config/riscv/riscv.md (riscv_uret): Remove URET pattern. + * doc/extend.texi: Remove documentation of user interrupts. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_stmt_vec_info::vec_stmts): Remove. + (STMT_VINFO_VEC_STMTS): Likewise. + * tree-vectorizer.cc (vec_info::new_stmt_vec_info): Do not + initialize it. + (vec_info::free_stmt_vec_info): Nor free it. + * tree-vect-data-refs.cc (vect_vfa_access_size): Remove + check on STMT_VINFO_VEC_STMTS. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_transform_grouped_load): Remove. + (vect_record_grouped_load_vectors): Likewise. + * tree-vect-data-refs.cc (vect_permute_load_chain): Likewise. + (vect_shift_permute_load_chain): Likewise. + (vect_transform_grouped_load): Likewise. + (vect_record_grouped_load_vectors): Likewise. + * tree-vect-stmts.cc (vectorizable_load): Remove comments + about load interleaving. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_permute_store_chain): Remove. + * tree-vect-data-refs.cc (vect_permute_store_chain): Likewise. + * tree-vect-stmts.cc (vectorizable_store): Remove comment + about store interleaving. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_get_vec_defs_for_operand): Remove. + * tree-vect-stmts.cc (vect_get_vec_defs_for_operand): Likewise. + (vect_get_vec_defs): Remove non-SLP path. + (check_load_store_for_partial_vectors): We always have an + SLP node. + (vect_check_store_rhs): Likewise. + (vect_get_gather_scatter_ops): Likewise. + (vect_create_vectorized_demotion_stmts): Likewise. + (vectorizable_store): Adjust. + (vectorizable_load): Likewise. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (VMAT_CONTIGUOUS_PERMUTE): Remove. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Remove checks on VMAT_CONTIGUOUS_PERMUTE. + (vectorizable_load): Likewise. + (vectorizable_store): Likewise. Prune dead code. + +2025-07-25 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_store): Remove trivially + dead code. + +2025-07-25 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-opts.h (TARGET_NO_MANUAL_NOPS, + TARGET_CDNA3_NOPS): Define. + * config/gcn/gcn.md (define_attr "laneselect): Change 'yes' to + 'read' and 'write'. + (define_attr "flatmemaccess"): Add with values store, storex34, + load, atomic, atomicwait, cmpswapx2, and no. Replacing ... + (define_attr "delayeduse"): Remove. + (define_attr "transop"): Add with values yes and no. + (various insns): Update 'laneselect', add flatmemaccess and transop, + remove delayeduse; fixing an issue for s_load_dwordx4 vs. + flat_store_dwordx4 related to delayeduse (now: flatmemaccess). + * config/gcn/gcn-valu.md: Update laneselect attribute and add + flatmemaccess. + * config/gcn/gcn.cc (gcn_cmpx_insn_p): New. + (gcn_md_reorg): Update for MI300 to add additional s_nop. + Skip s_nop-insertion part for RDNA{2,3}; add "VALU writes EXEC + followed by VALU DPP" unconditionally for CDNA2/CDNA3/GCN5. + +2025-07-25 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR middle-end/121214 + * genpreds.cc (constraint_max_namelen): Delete. + (write_tm_preds_h): Always write insn_constraint_len() and + define CONSTRAINT_LEN to it, i.e., remove guard + constraint_max_namelen>1. Remove outer guard + constraint_max_namelen>0 and re-indent. + (write_insn_preds_c): Remove guard + constraint_max_namelen>0 and re-indent. + +2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + * config/riscv/riscv.cc (enum riscv_privilege_levels): Add + RNMI_MODE. + (riscv_handle_type_attribute): Handle 'rnmi' interrupt attribute. + (riscv_expand_epilogue): Generate nmret for RNMI handlers. + (riscv_get_interrupt_type): Handle 'rnmi' interrupt attribute. + * config/riscv/riscv.md (riscv_rnmi): Add nmret INSN. + * doc/extend.texi: Add documentation for 'rnmi' interrupt attribute. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vectorizable_induction): Remove + gimple **vec_stmt argument. + (vectorizable_phi): Likewise. + (vectorizable_recurr): Likewise. + (vectorizable_early_exit): Likewise. + * tree-vect-loop.cc (vectorizable_phi): Likewise and adjust. + (vectorizable_recurr): Likewise. + (vectorizable_nonlinear_induction): Likewise. + (vectorizable_induction): Likewise. + * tree-vect-stmts.cc (vectorizable_bswap): Likewise. + (vectorizable_call): Likewise. + (vectorizable_simd_clone_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_assignment): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_store): Likewise. + (vectorizable_load): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_comparison_1): Likewise. + (vectorizable_comparison): Likewise. + (vectorizable_early_exit): Likewise. + (vect_analyze_stmt): Adjust. + (vect_transform_stmt): Likewise. + * tree-vect-slp.cc (vect_slp_analyze_operations): Adjust. + (vectorize_slp_instance_root_stmt): Likewise. + +2025-07-24 Andrew Pinski <quic_apinski@quicinc.com> + + * doc/cpp.texi (#ifdef): Correct typo. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_early_exit): Remove non-SLP + path. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (_stmt_vec_info::simd_clone_info): Remove. + (STMT_VINFO_SIMD_CLONE_INFO): Likewise. + * tree-vectorizer.cc (vec_info::free_stmt_vec_info): Do not + release it. + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Remove + non-SLP path. + +2025-07-24 Robin Dapp <rdapp@ventanamicro.com> + + * internal-fn.cc (internal_fn_len_index): Adjust indices for new + alias_ptr param. + (internal_fn_else_index): Ditto. + (internal_fn_mask_index): Ditto. + (internal_fn_stored_value_index): Ditto. + (internal_fn_alias_ptr_index): Ditto. + (internal_fn_offset_index): Ditto. + (internal_fn_scale_index): Ditto. + (internal_gather_scatter_fn_supported_p): Ditto. + * internal-fn.h (internal_fn_alias_ptr_index): Ditto. + * optabs-query.cc (supports_vec_gather_load_p): Ditto. + * tree-vect-data-refs.cc (vect_check_gather_scatter): Add alias + pointer. + * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Add + alias pointer. + * tree-vect-slp.cc (vect_get_operand_map): Adjust for alias + pointer. + * tree-vect-stmts.cc (vect_truncate_gather_scatter_offset): Add + alias pointer and misalignment handling. + (get_load_store_type): Move from here... + (get_group_load_store_type): ...To here. + (vectorizable_store): Add alias pointer. + (vectorizable_load): Ditto. + * tree-vectorizer.h (struct gather_scatter_info): Ditto. + +2025-07-24 Robin Dapp <rdapp@ventanamicro.com> + + * config/aarch64/aarch64.cc (aarch64_builtin_support_vector_misalignment): + Return true for gather/scatter. + * config/arm/arm.cc (arm_builtin_support_vector_misalignment): + Ditto. + * config/epiphany/epiphany.cc (epiphany_support_vector_misalignment): + Ditto. + * config/gcn/gcn.cc (gcn_vectorize_support_vector_misalignment): + Ditto. + * config/loongarch/loongarch.cc (loongarch_builtin_support_vector_misalignment): + Ditto. + * config/riscv/riscv.cc (riscv_support_vector_misalignment): + Add gather/scatter argument. + * config/rs6000/rs6000.cc (rs6000_builtin_support_vector_misalignment): + Return true for gather/scatter. + * config/s390/s390.cc (s390_support_vector_misalignment): + Ditto. + * doc/tm.texi: Add argument. + * target.def: Ditto. + * targhooks.cc (default_builtin_support_vector_misalignment): + Ditto. + * targhooks.h (default_builtin_support_vector_misalignment): + Ditto. + * tree-vect-data-refs.cc (vect_supportable_dr_alignment): + Ditto. + +2025-07-24 Robin Dapp <rdapp@ventanamicro.com> + + * tree-vect-slp.cc (GATHER_SCATTER_OFFSET): New define. + (vect_get_and_check_slp_defs): Use. + * tree-vectorizer.h (GATHER_SCATTER_LEGACY_P): New define. + (GATHER_SCATTER_IFN_P): Ditto. + (GATHER_SCATTER_EMULATED_P): Ditto. + * tree-vect-stmts.cc (vectorizable_store): Use. + (vectorizable_load): Use. + +2025-07-24 Robin Dapp <rdapp@ventanamicro.com> + + * internal-fn.cc (expand_scatter_store_optab_fn): Use new + function. + (expand_gather_load_optab_fn): Ditto. + (internal_fn_offset_index): Ditto. + (internal_fn_scale_index): Ditto. + * internal-fn.h (internal_fn_offset_index): New function. + (internal_fn_scale_index): Ditto. + * tree-vect-data-refs.cc (vect_describe_gather_scatter_call): + Use new function. + +2025-07-24 Alfie Richards <alfie.richards@arm.com> + + * tree-vect-data-refs.cc (vect_create_data_ref_ptr): Remove unnecessary + casts to aggr_ptr_type. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_comparison_1): Remove + non-SLP path. + (vectorizable_comparison): Likewise. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_condition): Remove + non-SLP paths. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_scan_store): Remove + non-SLP path and unused parameters. + (vectorizable_store): Adjust. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_shift): Remove non-SLP paths. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_assignment): Remove + non-SLP paths. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_call): Remove non-SLP path. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_bswap): Remove non-SLP path. + +2025-07-24 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_recurr): Remove non-SLP path. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (*cond_<optab><mode>_2_relaxed): + Extend from SVE_FULL_F_B16B16 to SVE_F_B16B16. + (*cond_<optab><mode>_3_relaxed): Likewise. + (*cond_<optab><mode>_any_relaxed): Likwise. + (*cond_<optab><mode>_any_const_relaxed): Extend from SVE_FULL_F + to SVE_F. + (*cond_add<mode>_2_const_relaxed): Likewise. + (*cond_add<mode>_any_const_relaxed): Likewise. + (*cond_sub<mode>_3_const_relaxed): Likewise. + (*cond_sub<mode>_const_relaxed): Likewise. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md: (@aarch64_sve_<optab><mode>): + Extend from SVE_FULL_F to SVE_F, use aarch64_predicate_operand. + (@aarch64_frecpe<mode>): Extend from SVE_FULL_F to SVE_F. + (@aarch64_frecps<mode>): Likewise. + (div<mode>3): Likewise, use aarch64_sve_fp_pred. + * config/aarch64/iterators.md: Add warnings above SVE_FP_UNARY + and SVE_FP_BINARY. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (<optab><mode>3): Extend from + SVE_FULL_F to SVE_F, use aarch64_sve_fp_pred. + (*post_ra_<sve_fp_op><mode>3): Extend from SVE_FULL_F to SVE_F. + (@aarch64_pred_<optab><mode>): Extend from SVE_FULL_F to SVE_F, + use aarch64_predicate_operand (ADD/SUB/MUL/MAX/MIN). + (split for using unpredicated insns): Move SVE_RELAXED_GP into + the pattern, rather than testing for it in the condition. + * config/aarch64/aarch64-sve2.md (@aarch64_pred_<optab><mode>): + Extend from VNx8BF_ONLY to SVE_BF. + +2025-07-24 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*uavg_floor_vx_<mode>): Rename + from... + (*<sat_op_v_vdup>_vx_<mode>): Rename to... + (*<sat_op_vdup_v>_vx_<mode>): Rename to... + * config/riscv/riscv-protos.h (enum insn_flags): Add vxrm + RNE, ROD type. + (enum insn_type): Add RNE_P, ROD_P type. + (expand_vx_binary_vxrm_vec_vec_dup): Add new func decl. + (expand_vx_binary_vxrm_vec_dup_vec): Ditto. + * config/riscv/riscv-v.cc (get_insn_type_by_vxrm_val): Add + helper to get insn type by vxrm value. + (expand_vx_binary_vxrm_vec_vec_dup): Add new func impl + to expand vec + vec_dup pattern. + (expand_vx_binary_vxrm_vec_dup_vec): Ditto but for + vec_dup + vec pattern. + * config/riscv/vector-iterators.md: Add helper iterator + for sat vx combine. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (*cond_<optab><mode>_2_relaxed): + Extend from SVE_FULL_F to SVE_F. + (*cond_<optab><mode>_any_relaxed): Likewise. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (<optab><mode>2): Replace use of + aarch64_ptrue_reg with aarch64_sve_fp_pred. + (@aarch64_pred_<optab><mode>): Extend from SVE_FULL_F to SVE_F, + and use aarch64_predicate_operand. + * config/aarch64/iterators.md: Split FABS/FNEG out of + SVE_COND_FP_UNARY (into new SVE_COND_FP_UNARY_BITWISE). + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md + (*cond_<optab>_nontrunc<SVE_PARTIAL_F:mode><SVE_HSDI:mode>_relaxed): + New FCVT/SEL combiner pattern. + (*cond_<optab>_trunc<VNx2DF_ONLY:mode><VNx2SI_ONLY:mode>_relaxed): + New FCVTZ{S,U}/SEL combiner pattern. + (*cond_<optab>_nonextend<SVE_HSDI:mode><SVE_PARTIAL_F:mode>_relaxed): + New {S,U}CVTF/SEL combiner pattern. + (*cond_<optab>_trunc<SVE_SDF:mode><SVE_PARTIAL_HSF:mode>): + New FCVT/SEL combiner pattern. + (*cond_<optab>_nontrunc<SVE_PARTIAL_HSF:mode><SVE_SDF:mode>_relaxed): + New FCVTZ{S,U}/SEL combiner pattern. + * config/aarch64/iterators.md: New mode iterator for VNx2SI. + +2025-07-23 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121073 + * config/riscv/autovec-opt.md: Use new helpers. + * config/riscv/autovec.md: Ditto. + * config/riscv/predicates.md (strided_broadcast_mask_operand): + New predicate. + (strided_broadcast_operand): Ditto. + (any_broadcast_operand): Ditto. + * config/riscv/riscv-protos.h (expand_broadcast): Declare. + (expand_set_first): Ditto. + (expand_set_first_tu): Ditto. + (strided_broadcast_p): Ditto. + * config/riscv/riscv-string.cc (expand_vec_setmem): Use new + helpers. + * config/riscv/riscv-v.cc (expand_broadcast): New functionk. + (expand_set_first): Ditto. + (expand_set_first_tu): Ditto. + (expand_const_vec_duplicate): Use new helpers. + (expand_const_vector_duplicate_repeating): Ditto. + (expand_const_vector_duplicate_default): Ditto. + (sew64_scalar_helper): Ditto. + (expand_vector_init_merge_repeating_sequence): Ditto. + (expand_reduction): Ditto. + (strided_broadcast_p): New function. + (whole_reg_to_reg_move_p): Use new helpers. + * config/riscv/riscv-vector-builtins-bases.cc: Use either + broadcast or strided broadcast. + * config/riscv/riscv-vector-builtins.cc (function_expander::use_ternop_insn): + Ditto. + (function_expander::use_widen_ternop_insn): Ditto. + (function_expander::use_scalar_broadcast_insn): Ditto. + * config/riscv/riscv-vector-builtins.h: Declare scalar + broadcast. + * config/riscv/vector.md (*pred_broadcast<mode>): Split into + regular and strided broadcast. + (*pred_broadcast<mode>_zvfh): Split. + (pred_broadcast<mode>_zvfh): Ditto. + (*pred_broadcast<mode>_zvfhmin): Ditto. + (@pred_strided_broadcast<mode>): Ditto. + (*pred_strided_broadcast<mode>): Ditto. + (*pred_strided_broadcast<mode>_zvfhmin): Ditto. + +2025-07-23 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/120119 + * config/aarch64/cortex-a57-fma-steering.cc (func_fma_steering::analyze): + Skip if renaming fails. + +2025-07-23 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121220 + * tree-ssa-sink.cc (statement_sink_location): For stores + handle sinking to paths ending in a store. Skip loads + that do not use the store. + +2025-07-23 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/119085 + * tree-sra.cc (sort_and_splice_var_accesses): Prevent total + scalarization if two incompatible aggregates access the same place. + +2025-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config.gcc <sparc*-*-solaris2*> (with_cpu): Default to ultrasparc3. + +2025-07-23 Richard Biener <rguenther@suse.de> + + * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): + Check vectype is non-NULL before accessing it. + +2025-07-23 Richard Biener <rguenther@suse.de> + + PR middle-end/121216 + * expr.cc (constant_byte_string): Check the string type + size fits an uhwi before converting to uhwi. + +2025-07-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/109267 + * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): If the first + non debug statement in the first (and only) basic block is a call + to __builtin_unreachable change it to a call to __builtin_trap or an + infinite loop. + +2025-07-22 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_is_insn_L32R_p): + Rewrite to capture insns that could be L32R machine instructions + wherever possible. + (xtensa_rtx_costs): Fix to consider that moves larger than a + natural word can take multiple L32R machine instructions. + (constantpool_address_p): Cosmetics. + * config/xtensa/xtensa.md (movdi_internal, movdf_internal): + Add missing insn attributes. + +2025-07-22 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md + (movsi_internal, movhi_internal, movsf_internal): + Change the value of the "type" attribute from "move" to "load" + when the source operand constraint is "Y". + +2025-07-22 Karl Meakin <karl.meakin@arm.com> + + * tree-vect-data-refs.cc (vect_check_gather_scatter): Swap + `base` and `off` in more scenarios. Also assert at the end of + the function that `base` and `off` are loop-invariant and not + loop-invariant respectively. + +2025-07-22 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/generic-vector-ooo.md: Restrict insn reservations to + generic_ooo and generic tuning models. + +2025-07-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121202 + * tree-vect-slp.cc (vect_schedule_slp_node): Do not take + an out-of-region stmt as "last". + +2025-07-22 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * genpreds.cc (write_insn_constraint_len): Replace rawmemchr by + a loop. + +2025-07-21 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/mips-p8700.md: Add support for "ghost" insn types. + * config/riscv/xiangshan.md: Add support for "sf_vc" and "sf_vc_se" + insn types. + +2025-07-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/110949 + PR tree-optimization/95906 + * match.pd (cmp - 1): New pattern. + +2025-07-21 Andreas Schwab <schwab@suse.de> + + PR target/121121 + * config/riscv/riscv.cc (riscv_allocate_and_probe_stack_space): + Use temp2 instead of temp1 for the CFA note. + +2025-07-21 Pan Li <pan2.li@intel.com> + + * config/riscv/vector.md: Allow VLS DImode for sat_op vx pattern. + +2025-07-21 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*uavg_floor_vx_<mode>): Add + pattern for vaaddu.vx combine. + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add UNSPEC + handling for UNSPEC_VAADDU. + (riscv_rtx_costs): Ditto. + +2025-07-21 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (aarch64_simd_vec_set_zero<mode>): + Enable only when optimizing for size. + +2025-07-21 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64.cc (aarch64_rtx_costs): Add extra_cost values + only when speed is true for CONST_VECTOR, VEC_DUPLICATE, VEC_SELECT + cases. + * config/aarch64/aarch64-cost-tables.h (qdf24xx_extra_costs, + thunderx_extra_costs, thunderx2t99_extra_costs, + thunderx3t110_extra_costs, tsv110_extra_costs, a64fx_extra_costs, + ampere1_extra_costs, ampere1a_extra_costs, ampere1b_extra_costs): + Reduce cost of movi, dup, extract fields by COSTS_N_INSNS (1). + * config/arm/aarch-cost-tables.h (generic_extra_costs, + cortexa53_extra_costs, cortexa57_extra_costs, cortexa76_extra_costs, + exynosm1_extra_costs, xgene1_extra_costs): Likewise. + +2025-07-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121194 + * tree-vect-loop.cc (vectorizable_lc_phi): Verify + vector types are compatible. + +2025-07-21 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-valu.md (gather_load<mode><vndi>): New. + (scatter_store<mode><vndi>): New. + (mask_gather_load<mode><vndi>): New. + (mask_scatter_store<mode><vndi>): New. + * config/gcn/gcn.cc (gcn_expand_scaled_offsets): Support DImode. + +2025-07-21 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn.cc (GEN_VNM_NOEXEC): Use USE_QHF. + (GEN_VNM): Likewise, and call for new ashl and mul variants. + +2025-07-21 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-valu.md (add<mode>3_dup): New. + (add<mode>3_dup_exec): New. + (<su>mul<mode>3_highpart_dup<exec>): New. + (mul<mode>3_dup): Move the vec_duplicate to operand 1. + (mul<mode>3_dup_exec): New. + (vec_series<mode>): Adjust call to gen_mul<mode>3_dup. + * config/gcn/gcn.cc (gcn_expand_vector_init): Likewise. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * genoutput.cc (main): Emit function + verify_reg_names_in_constraints() for run-time validation. + (mdep_constraint_len): Deal with hard register constraints. + * output.h (verify_reg_names_in_constraints): New function + declaration. + * toplev.cc (backend_init): If checking is enabled, call into + verify_reg_names_in_constraints(). + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * cfgexpand.cc (n_occurrences): Move this ... + (check_operand_nalternatives): and this ... + (expand_asm_stmt): and the call to gimplify.cc. + * config/s390/s390.cc (s390_md_asm_adjust): Pass null pointer to + parse_{input,output}_constraint(). + * gimple-walk.cc (walk_gimple_asm): Pass null pointer to + parse_{input,output}_constraint(). + (walk_stmt_load_store_addr_ops): Ditto. + * gimplify-me.cc (gimple_regimplify_operands): Ditto. + * gimplify.cc (num_occurrences): Moved from cfgexpand.cc. + (num_alternatives): Ditto. + (gimplify_asm_expr): Deal with hard register constraints. + * stmt.cc (eliminable_regno_p): New helper. + (hardreg_ok_p): Perform a similar check as done in + make_decl_rtl(). + (parse_output_constraint): Add parameter for gimplify_reg_info + and validate hard register constrained operands. + (parse_input_constraint): Ditto. + * stmt.h (class gimplify_reg_info): Forward declaration. + (parse_output_constraint): Add parameter. + (parse_input_constraint): Ditto. + * tree-ssa-operands.cc + (operands_scanner::get_asm_stmt_operands): Pass null pointer + to parse_{input,output}_constraint(). + * tree-ssa-structalias.cc (find_func_aliases): Pass null pointer + to parse_{input,output}_constraint(). + * varasm.cc (assemble_asm): Pass null pointer to + parse_{input,output}_constraint(). + * gimplify_reg_info.h: New file. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/cris/cris.cc (cris_md_asm_adjust): Deal with hard + register constraint. + * config/i386/i386.cc (map_egpr_constraints): Ditto. + * config/s390/s390.cc (f_constraint_p): Ditto. + * doc/extend.texi: Document hard register constraints. + * doc/md.texi: Ditto. + * function.cc (match_asm_constraints_2): Have a unique pseudo + for each operand with a hard register constraint. + (pass_match_asm_constraints::execute): Calling into new helper + match_asm_constraints_2(). + * genoutput.cc (mdep_constraint_len): Return the length of a + hard register constraint. + * genpreds.cc (write_insn_constraint_len): Support hard register + constraints for insn_constraint_len(). + * ira.cc (valid_replacement_for_asm_input_p_1): New helper. + (valid_replacement_for_asm_input_p): New helper. + (decrease_live_ranges_number): Similar to + match_asm_constraints_2() ensure that each operand has a unique + pseudo if constrained by a hard register. + * lra-constraints.cc (process_alt_operands): Install hard + register filter according to constraint. + * recog.cc (asm_operand_ok): Accept register type for hard + register constrained asm operands. + (constrain_operands): Validate hard register constraints. + * stmt.cc (decode_hard_reg_constraint): Parse a hard register + constraint into the corresponding register number or bail out. + (parse_output_constraint): Parse hard register constraint and + set *ALLOWS_REG. + (parse_input_constraint): Ditto. + * stmt.h (decode_hard_reg_constraint): Declaration of new + function. + +2025-07-21 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_analyze_data_refs): Remove min_vf + output. + * tree-vect-data-refs.cc (vect_analyze_data_refs): Likewise. + * tree-vect-loop.cc (vect_analyze_loop_2): Remove early + out based on bogus min_vf. + * tree-vect-slp.cc (vect_slp_analyze_bb_1): Adjust. + +2025-07-20 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md: Add (const_int 1) as the op2 of + ashiftrt. + +2025-07-19 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/121124 + * config/pru/pru-pragma.cc (pru_pragma_ctable_entry): Handle the + ctable base address as signed 32-bit value, and sign-extend to + HOST_WIDE_INT. + * config/pru/pru-protos.h (struct pru_ctable_entry): Store the + ctable base address as signed. + (pru_get_ctable_exact_base_index): Pass base address as signed. + (pru_get_ctable_base_index): Ditto. + (pru_get_ctable_base_offset): Ditto. + * config/pru/pru.cc (pru_get_ctable_exact_base_index): Ditto. + (pru_get_ctable_base_index): Ditto. + (pru_get_ctable_base_offset): Ditto. + (pru_print_operand_address): Ditto. + +2025-07-19 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*vfwnmacc_vf_<mode>): New pattern. + (*vfwnmsac_vf_<mode>): New pattern. + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add support for a + vec_duplicate in a neg. + +2025-07-19 Artemiy Volkov <artemiyv@acm.org> + + * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Protect + from a NULL PREV_SET or CURR_SET. + +2025-07-19 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-passes.cc (avr_optimize_casesi): Fuse + get_insns() with end_sequence(). + +2025-07-18 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md (avg<mode>3_ceil): Add new pattern + of avg3_ceil for RVV DImode + +2025-07-18 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/117423 + * tree-sra.cc (analyze_access_subtree): Fix computation of grp_covered + flag. + +2025-07-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121126 + * tree-vect-stmts.cc (vect_analyze_stmt): Analyze the + live lane extract for LC PHIs that are vect_internal_def. + +2025-07-18 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_live_operation_1): + Remove stmt_info and ncopies parameters. Remove !slp_node + paths. + (vectorizable_live_operation): Remove !slp_node paths. + +2025-07-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120924 + * params.opt (uninit-max-chain-len): Up from 8 to 12. + +2025-07-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121048 + * tree-vect-loop.cc (vect_determine_vectype_for_stmt_1): + Remove rejecting vector(1) vector types. + (vect_set_stmts_vectype): Likewise. + * tree-vect-slp.cc (vect_make_slp_decision): Only + count instances with non-vector(1) root towards whether + we have any interesting instances to vectorize. + +2025-07-18 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121131 + * gimple-fold.cc (fold_nonarray_ctor_reference): Use + TREE_INT_CST_LOW (TYPE_SIZE ()) instead of + GET_MODE_BITSIZE (SCALAR_INT_TYPE_MODE ()) for BLKmode BITINT_TYPEs. + Don't compute encoding_size at all for little endian targets. + +2025-07-17 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/121095 + * gcse.cc (execute_hardreg_pre): Skip if the hardreg which is never live. + +2025-07-17 Filip Kastl <fkastl@suse.cz> + + * tree-ssa-structalias.cc (lookup_vi_for_tree): Fix GNU style. + (process_constraint): Fix GNU style. + (get_constraint_for_component_ref): Fix GNU style. + (get_constraint_for_1): Fix GNU style. + (get_function_part_constraint): Fix GNU style. + (handle_lhs_call): Fix GNU style. + (find_func_aliases_for_builtin_call): Fix GNU style. + (find_func_aliases): Fix GNU style. + (find_func_clobbers): Fix GNU style. + (struct shared_bitmap_hasher): Fix GNU style. + (shared_bitmap_hasher::hash): Fix GNU style. + (pt_solution_includes_global): Fix GNU style. + (init_base_vars): Fix GNU style. + (visit_loadstore): Fix GNU style. + (compute_dependence_clique): Fix GNU style. + (struct pt_solution): Fix GNU style. + (ipa_pta_execute): Fix GNU style. + +2025-07-17 Filip Kastl <fkastl@suse.cz> + + * pta-andersen.cc (struct constraint_graph): Fix GNU style. + (constraint_equal): Fix GNU style. + (set_union_with_increment): Fix GNU style. + (insert_into_complex): Fix GNU style. + (merge_node_constraints): Fix GNU style. + (unify_nodes): Fix GNU style. + (do_ds_constraint): Fix GNU style. + (scc_info::scc_info): Fix GNU style. + (find_indirect_cycles): Fix GNU style. + (equiv_class_lookup_or_add): Fix GNU style. + (label_visit): Fix GNU style. + (dump_pred_graph): Fix GNU style. + (perform_var_substitution): Fix GNU style. + (eliminate_indirect_cycles): Fix GNU style. + (solve_graph): Fix GNU style. + (solve_constraints): Fix GNU style. + * tree-ssa-structalias.cc (first_vi_for_offset): Fix GNU style. + (debug_constraint): Fix GNU style. + * tree-ssa-structalias.h (struct constraint_expr): Fix GNU + style. + (struct variable_info): Fix GNU style. + +2025-07-17 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386-expand.cc (ix86_expand_ternlog): Don't change + mode for XOR. + +2025-07-17 Filip Kastl <fkastl@suse.cz> + + * Makefile.in: Add pta-andersen.o. + * tree-ssa-structalias.cc (create_variable_info_for): Just move + around. + (unify_nodes): Move to pta-andersen.cc. + (struct constraint): Move to tree-ssa-structalias.h. + (EXECUTE_IF_IN_NONNULL_BITMAP): Move to pta-andersen.cc. + (struct variable_info): Move to tree-ssa-structalias.h. + (struct constraint_stats): Move to tree-ssa-structalias.h. + (first_vi_for_offset): External linkage, move to namespace + pointer_analysis. + (first_or_preceding_vi_for_offset): External linkage, move to namespace + pointer_analysis. + (dump_constraint): External linkage, move to namespace + pointer_analysis. + (debug_constraint): External linkage, move to namespace + pointer_analysis. + (dump_constraints): External linkage, move to namespace + pointer_analysis. + (debug_constraints): External linkage, move to namespace + pointer_analysis. + (lookup_vi_for_tree): Move around inside tree-ssa-structalias.cc. + (type_can_have_subvars): Move around inside tree-ssa-structalias.cc. + (make_param_constraints): Move around inside tree-ssa-structalias.cc. + (dump_solution_for_var): External linkage, move to namespace + pointer_analysis. find (...) -> var_rep[...]. + (get_varinfo): Move to tree-ssa-structalias.h. + (debug_solution_for_var): External linkage, move to namespace + pointer_analysis. + (vi_next): Move to tree-ssa-structalias.h. + (dump_sa_stats): External linkage, move to namespace pointer_analysis. + (new_var_info): Just move around. + (dump_sa_points_to_info): External linkage, move to namespace + pointer_analysis. + (debug_sa_points_to_info): External linkage, move to namespace + pointer_analysis. + (get_call_vi): Just move around. + (dump_varinfo): External linkage, move to namespace pointer_analysis. + (lookup_call_use_vi): Just move around. + (lookup_call_clobber_vi): Just move around. + (get_call_use_vi): Just move around. + (get_call_clobber_vi): Just move around. + (enum constraint_expr_type): Move to tree-ssa-structalias.h. + (struct constraint_expr): Move to tree-ssa-structalias.h. + (UNKNOWN_OFFSET): Move to tree-ssa-structalias.h. + (get_constraint_for_1): Just move around. + (get_constraint_for): Just move around. + (get_constraint_for_rhs): Just move around. + (do_deref): Just move around. + (constraint_pool): Just move around. + (struct constraint_graph): Move to pta-andersen.h. + (FIRST_REF_NODE): Move to pta-andersen.cc. + (LAST_REF_NODE): Move to pta-andersen.cc. + (find): Move to pta-andersen.cc. + (unite): Move to pta-andersen.cc. + (new_constraint): Just move around. + (debug_constraint_graph): External linkage, move to namespace + pointer_analysis. + (debug_varinfo): External linkage, move to namespace pointer_analysis. + (debug_varmap): External linkage, move to namespace pointer_analysis. + (dump_constraint_graph): External linkage, move to namespace + pointer_analysis. + (constraint_expr_equal): Move to pta-andersen.cc. + (constraint_expr_less): Move to pta-andersen.cc. + (constraint_less): Move to pta-andersen.cc. + (constraint_equal): Move to pta-andersen.cc. + (constraint_vec_find): Move to pta-andersen.cc. + (constraint_set_union): Move to pta-andersen.cc. + (solution_set_expand): Move to pta-andersen.cc. + (set_union_with_increment): Move to pta-andersen.cc. + (insert_into_complex): Move to pta-andersen.cc. + (merge_node_constraints): Move to pta-andersen.cc. + (clear_edges_for_node): Move to pta-andersen.cc. + (merge_graph_nodes): Move to pta-andersen.cc. + (add_implicit_graph_edge): Move to pta-andersen.cc. + (add_pred_graph_edge): Move to pta-andersen.cc. + (add_graph_edge): Move to pta-andersen.cc. + (init_graph): Move to pta-andersen.cc. Initialize + predbitmap_obstack here. + (build_pred_graph): Move to pta-andersen.cc. + (build_succ_graph): Move to pta-andersen.cc. + (class scc_info): Move to pta-andersen.cc. + (scc_visit): Move to pta-andersen.cc. + (solve_add_graph_edge): Move to pta-andersen.cc. + (do_sd_constraint): Move to pta-andersen.cc. + (do_ds_constraint): Move to pta-andersen.cc. + (do_complex_constraint): Move to pta-andersen.cc. + (scc_info::scc_info): Move to pta-andersen.cc. + (scc_info::~scc_info): Move to pta-andersen.cc. + (find_indirect_cycles): Move to pta-andersen.cc. + (topo_visit): Move to pta-andersen.cc. + (compute_topo_order): Move to pta-andersen.cc. + (struct equiv_class_hasher): Move to pta-andersen.cc. + (equiv_class_hasher::hash): Move to pta-andersen.cc. + (equiv_class_hasher::equal): Move to pta-andersen.cc. + (equiv_class_lookup_or_add): Move to pta-andersen.cc. + (condense_visit): Move to pta-andersen.cc. + (label_visit): Move to pta-andersen.cc. + (dump_pred_graph): External linkage, move to namespace + pointer_analysis. + (dump_varmap): External linkage, move to namespace pointer_analysis. + (perform_var_substitution): Move to pta-andersen.cc. + (free_var_substitution_info): Move to pta-andersen.cc. + (find_equivalent_node): Move to pta-andersen.cc. + (unite_pointer_equivalences): Move to pta-andersen.cc. + (move_complex_constraints): Move to pta-andersen.cc. + (rewrite_constraints): Move to pta-andersen.cc. + (eliminate_indirect_cycles): Move to pta-andersen.cc. + (solve_graph): Move to pta-andersen.cc. + (set_uids_in_ptset): find (...) -> var_rep[...]. + (find_what_var_points_to): find (...) -> var_rep[...]. + (init_alias_vars): Don't initialize predbitmap_obstack here. + (remove_preds_and_fake_succs): Move to pta-andersen.cc. + (solve_constraints): Move to pta-andersen.cc. Call + delete_graph() at the end. + (delete_points_to_sets): Don't delete graph here. Delete var_rep here. + (visit_loadstore): find (...) -> var_rep[...]. + (compute_dependence_clique): find (...) -> var_rep[...]. + (ipa_pta_execute): find (...) -> var_rep[...]. + * pta-andersen.cc: New file. + * pta-andersen.h: New file. + * tree-ssa-structalias.h: New file. + +2025-07-17 Richard Sandiford <richard.sandiford@arm.com> + Yury Khrustalev <yury.khrustalev@arm.com> + + * doc/sourcebuild.texi (aarch64_sme_hw): Document. + +2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.md (signbit_tdc): Rename expander. + (signbit<mode>2): New expander. + (signbit<mode>2_z10): New expander. + +2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.cc (s390_register_move_cost): Add costing for + vlvg/vlgv. + +2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/vector.md (bhfgq): Add scalar modes. + (*movdi<mode>_zero_extend_A): New insn. + (*movsi<mode>_zero_extend_A): New insn. + (*movdi<mode>_zero_extend_B): New insn. + (*movsi<mode>_zero_extend_B): New insn. + +2025-07-17 Xi Ruoyao <xry111@xry111.site> + + PR target/121064 + * config/loongarch/lsx.md (lsx_vshuf_<lsxfmt_f>): Add '@' to + generate a mode-aware helper. Use <VIMODE> as the mode of the + operand 1 (selector). + * config/loongarch/lasx.md (lasx_xvshuf_<lasxfmt_f>): Likewise. + * config/loongarch/loongarch.cc + (loongarch_try_expand_lsx_vshuf_const): Create a new pseudo for + the selector. Use the mode-aware helper to simplify the code. + (loongarch_expand_vec_perm_const): Likewise. + +2025-07-17 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_build_slp_tree_1): Reject + single-lane vector types. + +2025-07-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121035 + * tree-ssa-pre.cc (find_or_generate_expression): Handle + values without expression. + +2025-07-16 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-state-to-dot.cc (state_diagram::m_show_tags): Drop + unused field. + +2025-07-16 Kwok Cheung Yeung <kcyeung@baylibre.com> + + * gimplify.cc (gimplify_omp_affinity): Use OMP_ITERATOR_DECL_P. + (compute_omp_iterator_count): New. + (build_omp_iterator_loop): New. + (gimplify_omp_depend): Use OMP_ITERATOR_DECL_P, + compute_omp_iterator_count and build_omp_iterator_loop. + * tree-inline.cc (copy_tree_body_r): Use OMP_ITERATOR_DECL_P. + * tree-pretty-print.cc (dump_omp_clause): Likewise. + * tree.h (OMP_ITERATOR_DECL_P): New macro. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + PR target/121062 + * config/i386/i386.cc (ix86_convert_const_vector_to_integer): + Handle E_V1SImode and E_V1DImode. + * config/i386/mmx.md (V_16_32_64): Add V1SI, V2BF and V1DI. + (mmxinsnmode): Add V1DI and V1SI. + Add V_16_32_64 splitter for constant vector loads from constant + vector pool. + (V_16_32_64:*mov<mode>_imm): Moved after V_16_32_64 splitter. + Replace lowpart_subreg with adjust_address. + +2025-07-16 H.J. Lu <hjl.tools@gmail.com> + + PR target/120881 + PR testsuite/121078 + * config/i386/i386-options.cc (ix86_option_override_internal): + Warn -pg without -mfentry only on glibc targets. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386-expand.cc (ix86_expand_move): + Use MEM_P predicate instead of open coding it. + (ix86_erase_embedded_rounding): + Use NONJUMP_INSN_P predicate instead of open coding it. + * config/i386/i386-features.cc (convertible_comparison_p): + Use REG_P predicate instead of open coding it. + * config/i386/i386.cc (ix86_rtx_costs): + Use SUBREG_P predicate instead of open coding it. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.cc (symbolic_reference_mentioned_p): + Use LABEL_REF_P predicate instead of open coding it. + (ix86_legitimate_constant_p): Ditto. + (legitimate_pic_address_disp_p): Ditto. + (ix86_legitimate_address_p): Ditto. + (legitimize_pic_address): Ditto. + (ix86_print_operand): Ditto. + (ix86_print_operand_address_as): Ditto. + (ix86_rip_relative_addr_p): Ditto. + * config/i386/i386.h (SYMBOLIC_CONST): Ditto. + * config/i386/i386.md (*anddi_1 to *andsi_1_zext splitter): Ditto. + * config/i386/predicates.md (symbolic_operand): Ditto. + (local_symbolic_operand): Ditto. + (vsib_address_operand): Ditto. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386-expand.cc (ix86_expand_move): + Use SYMBOL_REF_P predicate instead of open coding it. + (ix86_split_long_move): Ditto. + (construct_plt_address): Ditto. + (ix86_expand_call): Ditto. + (ix86_notrack_prefixed_insn_p): Ditto. + * config/i386/i386-features.cc + (rest_of_insert_endbr_and_patchable_area): Ditto. + * config/i386/i386.cc (symbolic_reference_mentioned_p): Ditto. + (ix86_force_load_from_GOT_p): Ditto. + (ix86_legitimate_constant_p): Ditto. + (legitimate_pic_operand_p): Ditto. + (legitimate_pic_address_disp_p): Ditto. + (ix86_legitimate_address_p): Ditto. + (legitimize_pic_address): Ditto. + (ix86_legitimize_address): Ditto. + (ix86_delegitimize_tls_address): Ditto. + (ix86_print_operand): Ditto. + (ix86_print_operand_address_as): Ditto. + (ix86_rip_relative_addr_p): Ditto. + (symbolic_base_address_p): Ditto. + * config/i386/i386.h (SYMBOLIC_CONST): Ditto. + * config/i386/i386.md (*anddi_1 to *andsi_1_zext splitter): Ditto. + * config/i386/predicates.md (symbolic_operand): Ditto. + (local_symbolic_operand): Ditto. + (local_func_symbolic_operand): Ditto. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386-expand.cc (ix86_expand_vector_logical_operator): + Use CONST_VECTOR_P instead of open coding it. + (ix86_expand_int_sse_cmp): Ditto. + (ix86_extract_perm_from_pool_constant): Ditto. + (ix86_split_to_parts): Ditto. + (const_vector_equal_evenodd_p): Ditto. + * config/i386/i386.cc (ix86_print_operand): Ditto. + * config/i386/predicates.md (zero_extended_scalar_load_operand): Ditto. + (float_vector_all_ones_operand): Ditto. + * config/i386/sse.md (avx512vl_vextractf128<mode>): Ditto. + +2025-07-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121049 + * internal-fn.h (widening_evenodd_fn_p): Declare. + * internal-fn.cc (widening_evenodd_fn_p): New function. + * tree-vect-stmts.cc (vectorizable_conversion): When using + an even/odd widening function disable loop masking. + +2025-07-16 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/119920 + PR tree-optimization/112324 + PR tree-optimization/110015 + * tree-if-conv.cc (find_different_opnum): New function. + (factor_out_operators): New function. + (predicate_scalar_phi): Call factor_out_operators when + there is only 2 elements of a phi. + +2025-07-16 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-if-conv.cc (fold_build_cond_expr): Return early if lhs and rhs + are the same. + +2025-07-16 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-if-conv.cc (combine_blocks): Remove predicated + dynamic array. + +2025-07-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121116 + * tree-vect-loop.cc (vectorizable_induction): Use the + step vector element type for further processing. + +2025-07-16 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-valu.md (add<mode>3_vcc_dup<exec_vcc>): Change + operand 2 to allow gcn_alu_operand. Swap the operands in the VCC + update RTL. + (add<mode>3_vcc_zext_dup): Likewise. + (add<mode>3_vcc_zext_dup_exec): Likewise. + (add<mode>3_vcc_zext_dup2): Likewise. + (add<mode>3_vcc_zext_dup2_exec): Likewise. + +2025-07-16 Spencer Abson <spencer.abson@arm.com> + + PR target/117850 + * config/aarch64/aarch64-builtins.cc (LO_HI_PAIRINGS): New, group the + lo/hi pairs from aarch64-builtin-pairs.def. + (aarch64_get_highpart_builtin): New function. + (aarch64_v128_highpart_ref): New function, helper to look for vector + highparts. + (aarch64_build_vector_cst): New function, helper to build duplicated + VECTOR_CSTs. + (aarch64_fold_lo_call_to_hi): New function. + (aarch64_general_gimple_fold_builtin): Add cases for the lo builtins + in aarch64-builtin-pairs.def. + * config/aarch64/aarch64-builtin-pairs.def: New file, declare the + parirs of lowpart-operating and highpart-operating builtins. + +2025-07-16 Alfie Richards <alfie.richards@arm.com> + + * tree.cc (get_clone_versions): New function. + (get_clone_attr_versions): New function. + (get_version): New function. + * tree.h (get_clone_versions): New function. + (get_clone_attr_versions): New function. + (get_target_version): New function. + +2025-07-16 Alfie Richards <alfie.richards@arm.com> + + * attribs.cc (make_attribute): Change arguments. + * attribs.h (make_attribute): Change arguments. + +2025-07-16 Alfie Richards <alfie.richards@arm.com> + + * pretty-print.cc (format_phase_2): Add support for string_slice. + * vec.cc (string_slice::tokenize): New static method. + (string_slice::strcmp): New static method. + (string_slice::strip): New method. + (test_string_slice_initializers): New test. + (test_string_slice_tokenize): Ditto. + (test_string_slice_strcmp): Ditto. + (test_string_slice_equality): Ditto. + (test_string_slice_inequality): Ditto. + (test_string_slice_invalid): Ditto. + (test_string_slice_strip): Ditto. + (vec_cc_tests): Add new tests. + * vec.h (class string_slice): New class. + +2025-07-16 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/121065 + * cfgexpand.cc (expand_debug_expr): Allow fixed-point modes for + RDIV_EXPR. + * optabs-tree.cc (optab_for_tree_code): Ditto. + +2025-07-16 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120297 + * config/riscv/riscv-vsetvl.def: Do not forget ratio demand of + previous vsetvl. + +2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-sve2.md (*aarch64_sve2_bsl2n_eon<mode>): + New pattern. + (*aarch64_sve2_eon_bsl2n_unpred<mode>): Likewise. + +2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-sve2.md (*aarch64_sve2_unpred_nor<mode>): + New define_insn. + (*aarch64_sve2_nand_unpred<mode>): Likewise. + +2025-07-16 Jeremy Rifkin <jeremy@rifkin.dev> + + PR c/82134 + * gimplify.cc (gimplify_modify_expr): Add suppress_warning + * tree-cfg.cc (do_warn_unused_result): Check warning_suppressed_p + +2025-07-16 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_AMX_AVX512_SET): Do not set AVX10.2. + (OPTION_MASK_ISA2_AVX10_2_UNSET): Remove AMX-AVX512 unset. + (OPTION_MASK_ISA2_AVX512F_UNSET): Unset AMX-AVX512. + (ix86_handle_option): Imply AVX512F for AMX-AVX512. + +2025-07-16 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md (avg<mode>3_floor): Add new + pattern of avg3_floor for rvv DImode. + +2025-07-15 David Malcolm <dmalcolm@redhat.com> + + * spellcheck.cc: Define INCLUDE_ALGORITHM. + (CASE_COST, BASE_COST): Convert to... + (case_cost, base_cost): ...these, in an anonymous namespace. + (get_edit_distance): Update for above. Use std::min rather than + MIN. + (get_edit_distance_cutoff): Likewise. Use std::max rather than + MAX. + (selftest::test_edit_distances): Update for BASE_COST renaming. + (selftest::get_old_cutoff): Likewise. Use std::max. + (selftest::assert_not_suggested_for): Use nullptr. + (selftest::test_find_closest_string): Likewise. + * spellcheck.h: Replace TYPE with StringLikeType in templates, + and use CamelCase. + +2025-07-15 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/120792 + * auto-obstack.h: New file, based on material taken from + pretty-print.cc. + * diagnostic-digraphs.h + (diagnostics::digraphs::digraph::set_description): New. + (diagnostics::digraphs::node::set_label): New. + * doc/libgdiagnostics/topics/compatibility.rst: Add + LIBGDIAGNOSTICS_ABI_4. + * doc/libgdiagnostics/topics/diagnostics.rst + (diagnostic_finish_via_msg_buf): Document new entrypoint. + * doc/libgdiagnostics/topics/execution-paths.rst + (diagnostic_execution_path_add_event_via_msg_buf): Document new + entrypoint. + * doc/libgdiagnostics/topics/index.rst: Add message-buffers.rst. + * doc/libgdiagnostics/topics/message-buffers.rst: New file. + * doc/libgdiagnostics/topics/message-formatting.rst: Add note + about message buffers. + * doc/libgdiagnostics/topics/physical-locations.rst + (diagnostic_add_location_with_label_via_msg_buf): Add. + * doc/libgdiagnostics/tutorial/07-execution-paths.rst: Link to + next section. + * doc/libgdiagnostics/tutorial/08-message-buffers.rst: New file. + * doc/libgdiagnostics/tutorial/index.rst: Add + 08-message-buffers.rst. + * libgdiagnostics++.h (libgdiagnostics::message_buffer): New + class. + (libgdiagnostics::execution_path::add_event_via_msg_buf): New. + (libgdiagnostics::diagnostic::add_location_with_label): New. + (libgdiagnostics::diagnostic::finish_via_msg_buf): New. + (libgdiagnostics::graph::set_description): New overload. + (libgdiagnostics::graph::add_edge): New overload. + (libgdiagnostics::node::set_label): New overload. + * libgdiagnostics-private.h + (private_diagnostic_execution_path_add_event_2): Drop decl. + (private_diagnostic_execution_path_add_event_3): New decl. + * libgdiagnostics.cc: Include "pretty-print-format-impl.h", + "pretty-print-markup.h", and "auto-obstack.h". + (class copying_token_printer): New. + (struct diagnostic_message_buffer): New. + (class pp_element_message_buffer): New. + (libgdiagnostics_path_event::libgdiagnostics_path_event): Replace + params "gmsgid" and "args" with "msg_buf". + (libgdiagnostics_path_event::print_desc): Reimplement using + pp_element_message_buffer to replay m_msg_buf into "pp". + (libgdiagnostics_path_event::m_desc_uncolored): Drop field. + (libgdiagnostics_path_event::m_desc_colored): Drop field. + (libgdiagnostics_path_event::msg_buf): New field. + (diagnostic_execution_path::add_event_va): Reimplement. + (diagnostic_execution_path::add_event_via_msg_buf): New. + (diagnostic::add_location_with_label): New overload, using + msg_buf. + (diagnostic_manager::emit): Reimplement with... + (diagnostic_manager::emit_va): ...this. + (diagnostic_manager::emit_msg_buf): New. + (FAIL_IF_NULL): Rename "p" to "ptr_arg". + (diagnostic_finish_va): Update to use diagnostic_manager::emit_va. + (diagnostic_graph::add_node_with_id): Rename "id" to "node_id". + (diagnostic_graph_add_node): Likewise. + (diagnostic_graph_add_edge): Rename "id" to "edge_id". + (diagnostic_graph_get_node_by_id): Rename "id" to "node_id". + (diagnostic_graph_get_edge_by_id): Rename "id" to "edge_id". + (private_diagnostic_execution_path_add_event_2): Delete. + (diagnostic_message_buffer_new): New public entrypoint. + (diagnostic_message_buffer_release): Likewise. + (diagnostic_message_buffer_append_str): Likewise. + (diagnostic_message_buffer_append_text): Likewise. + (diagnostic_message_buffer_append_byte): Likewise. + (diagnostic_message_buffer_append_printf): Likewise. + (diagnostic_message_buffer_append_event_id): Likewise. + (diagnostic_message_buffer_begin_url): Likewise. + (diagnostic_message_buffer_end_url): Likewise. + (diagnostic_message_buffer_begin_quote): Likewise. + (diagnostic_message_buffer_end_quote): Likewise. + (diagnostic_message_buffer_begin_color): Likewise. + (diagnostic_message_buffer_end_color): Likewise. + (diagnostic_message_buffer_dump): Likewise. + (diagnostic_finish_via_msg_buf): Likewise. + (diagnostic_add_location_with_label_via_msg_buf): Likewise. + (diagnostic_execution_path_add_event_via_msg_buf): Likewise. + (diagnostic_graph_set_description_via_msg_buf): Likewise. + (diagnostic_graph_add_edge_via_msg_buf): Likewise. + (diagnostic_node_set_label_via_msg_buf): Likewise. + (private_diagnostic_execution_path_add_event_3): New private + entrypoint. + * libgdiagnostics.h (LIBGDIAGNOSTICS_PARAM_FORMAT_STRING): New macro. + (LIBGDIAGNOSTICS_PARAM_PRINTF_FORMAT_STRING): New macro. + (diagnostic_message_buffer): New typedef. + (LIBDIAGNOSTICS_HAVE_diagnostic_message_buffer): New define. + (diagnostic_message_buffer_new): New decl. + (diagnostic_message_buffer_release): New decl. + (diagnostic_message_buffer_append_str): New decl. + (diagnostic_message_buffer_append_text): New decl. + (diagnostic_message_buffer_append_byte): New decl. + (diagnostic_message_buffer_append_printf): New decl. + (diagnostic_message_buffer_append_event_id): New decl. + (diagnostic_message_buffer_begin_url): New decl. + (diagnostic_message_buffer_end_url): New decl. + (diagnostic_message_buffer_begin_quote): New decl. + (diagnostic_message_buffer_end_quote): New decl. + (diagnostic_message_buffer_begin_color): New decl. + (diagnostic_message_buffer_end_color): New decl. + (diagnostic_message_buffer_dump): New decl. + (diagnostic_finish_via_msg_buf): New decl. + (diagnostic_add_location_with_label_via_msg_buf): New decl. + (diagnostic_execution_path_add_event_via_msg_buf): New decl. + (diagnostic_graph_set_description_via_msg_buf): New decl. + (diagnostic_graph_add_edge_via_msg_buf): New decl. + (diagnostic_node_set_label_via_msg_buf): New decl. + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_3): Drop + private_diagnostic_execution_path_add_event_2. + (LIBGDIAGNOSTICS_ABI_4): New. + * libsarifreplay.cc (class annotation): Use + libgdiagnostics::message_buffer rather than label_text. + (add_any_annotations): Likewise. + (sarif_replayer::handle_result_obj): Likewise. + (make_plain_text_within_result_message): Likewise. + (handle_thread_flow_location_object): Likewise. + (handle_location_object): Likewise. + (sarif_replayer::handle_graph_object): Likewise. + (sarif_replayer::handle_node_object): Likewise. + (sarif_replayer::handle_edge_object): Likewise. + * pretty-print-format-impl.h (pp_token_list::push_back_byte): New + decl. + * pretty-print-markup.h (pp_markup::context::begin_url): New decl. + (pp_markup::context::end_url): New decl. + (pp_markup::context::add_event_id): New decl. + * pretty-print.cc: Include "auto-obstack.h". + (pp_token_list::push_back_byte): New. + (struct auto_obstack): Move to auto-obstack.h. + (default_token_printer): Make non-static. + (pp_markup::context::begin_url): New. + (pp_markup::context::end_url): New. + (pp_markup::context::add_event_id): New. + +2025-07-15 Umesh Kalappa <ukalappa.mips@gmail.com> + + * config/riscv/riscv-cores.def (RISCV_CORE): Updated the supported march. + * config/riscv/riscv-ext-mips.def (DEFINE_RISCV_EXT): + New file added for mips conditional mov extension. + * config/riscv/riscv-ext.def: Likewise. + * config/riscv/t-riscv: Generates riscv-ext.opt + * config/riscv/riscv-ext.opt: Generated file. + * config/riscv/riscv.cc (riscv_expand_conditional_move): Updated for mips cmov + and outlined some code that handle arch cond move. + * config/riscv/riscv.md (mov<mode>cc): updated expand for MIPS CCMOV. + * config/riscv/mips-insn.md: New file for mips-p8700 ccmov insn. + * doc/riscv-ext.texi: Updated for mips cmov. + +2025-07-15 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + * avoid-store-forwarding.cc (generate_bit_insert_sequence): + Remove adjustment of bitfield insertion's starting position + when BYTES_BIG_ENDIAN != BITS_BIG_ENDIAN. + (process_store_forwarding): Update offset check in base reg + initialization to take into account the target's endianness. + +2025-07-15 Soumya AR <soumyaa@nvidia.com> + + * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNING_OPTION): + Add AVOID_LDAPUR tuning flag. + * config/aarch64/aarch64.cc (aarch64_adjust_generic_arch_tuning): + Set AVOID_LDAPUR for architectures before armv8.8-a. + (aarch64_override_options_internal): Apply generic tuning adjustments + to generic_armv8_a_tunings and generic_armv9_a_tunings. + * config/aarch64/aarch64.h (TARGET_ENABLE_LDAPUR): New macro to + control LDAPUR usage based on RCPC2 and tuning flags. + * config/aarch64/aarch64.md: Add enable_ldapur attribute. + * config/aarch64/atomics.md (aarch64_atomic_load<mode>_rcpc): Modify + to emit LDAPUR for cores with RCPC2. + (*aarch64_atomic_load<ALLX:mode>_rcpc_zext): Likewise. + (*aarch64_atomic_load<ALLX:mode>_rcpc_sext): Update constraint to Ust. + * config/aarch64/tuning_models/cortexx925.h: Add AVOID_LDAPUR flag. + * config/aarch64/tuning_models/neoversev2.h: Likewise. + * config/aarch64/tuning_models/neoversev3.h: Likewise. + * config/aarch64/tuning_models/neoversev3ae.h: Likewise. + +2025-07-15 Richard Biener <rguenther@suse.de> + Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/121059 + * tree-vect-stmts.cc (vectorizable_operation): Query + scalar_cond_masked_set with the correct number of masks. + +2025-07-15 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c/44677 + * common.opt (Wunused-but-set-parameter=, Wunused-but-set-variable=): + New options. + (Wunused-but-set-parameter, Wunused-but-set-variable): Turn into + aliases. + * common.opt.urls: Regenerate. + * diagnostic-spec.cc (nowarn_spec_t::nowarn_spec_t): Use + OPT_Wunused_but_set_variable_ instead of OPT_Wunused_but_set_variable + and OPT_Wunused_but_set_parameter_ instead of + OPT_Wunused_but_set_parameter. + * gimple-ssa-store-merging.cc (find_bswap_or_nop_1): Remove unused + but set variable tmp. + * ipa-strub.cc (pass_ipa_strub::execute): Cast named_args to + (void) if ATTR_FNSPEC_DECONST_WATERMARK is not defined. + * doc/invoke.texi (Wunused-but-set-parameter=, + Wunused-but-set-variable=): Document new options. + (Wunused-but-set-parameter, Wunused-but-set-variable): Adjust + documentation now that they are just aliases. + +2025-07-15 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-sme.md (@aarch64_sme_<faminmax_uns_op><mode>): + Change gating and comment. + +2025-07-15 Kyrylo Tkachov <ktkachov@nvidia.com> + + Revert: + 2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (*eor3qdi4): New + define_insn_and_split. + +2025-07-15 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (*fcm<cmp_op><mode>_and_combine): + Extend from SVE_FULL_F to SVE_F. + (*fcmuo<mode>_and_combine): Likewise. + (*fcm<cmp_op><mode>_bic_combine): Likewise. + (*fcm<cmp_op><mode>_nor_combine): Likewise. + (*fcmuo<mode>_bic_combine): Likewise. + (*fcmuo<mode>_nor_combine): Likewise. Move the comment here to + above fcmuo<mode>_bic_combine, since it applies to both patterns. + +2025-07-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * tree.cc: Include memmodel.h. + +2025-07-14 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-valu.md (vec_cmpu<mode>di_exec): Call gen_vec_cmp*, + not gen_vec_cmpu*. + +2025-07-14 Richard Biener <rguenther@suse.de> + + Revert: + 2025-07-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121059 + * tree-vect-stmts.cc (vectorizable_operation): Record a + loop mask for mask AND operations. + +2025-07-14 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/vector.md (reduc_plus_scal_<mode>): Implement. + (reduc_plus_scal_v2df): Implement. + (reduc_plus_scal_v4sf): Implement. + (REDUC_FMINMAX): New int iterator. + (reduc_fminmax_name): New int attribute. + (reduc_minmax): New code iterator. + (reduc_minmax_name): New code attribute. + (reduc_<reduc_fminmax_name>_scal_v2df): Implement. + (reduc_<reduc_fminmax_name>_scal_v4sf): Implement. + (reduc_<reduc_minmax_name>_scal_v2df): Implement. + (reduc_<reduc_minmax_name>_scal_v4sf): Implement. + (REDUCBIN): New code iterator. + (reduc_bin_insn): New code attribute. + (reduc_<reduc_bin_insn>_scal_v2di): Implement. + (reduc_<reduc_bin_insn>_scal_v4si): Implement. + (reduc_<reduc_bin_insn>_scal_v8hi): Implement. + (reduc_<reduc_bin_insn>_scal_v16qi): Implement. + +2025-07-14 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.cc (s390_option_override_internal): Remove override. + +2025-07-14 Andrew Stubbs <ams@baylibre.com> + + * config/gcn/gcn-valu.md (add<mode>3<exec_clobber>): Rename ... + (add<mode>3<exec>): ... to this, remove the clobber, and change the + instruction from v_add_co_u32 to v_add_u32. + (add<mode>3_dup<exec_clobber>): Rename ... + (add<mode>3_dup<exec>): ... to this, and likewise. + (sub<mode>3<exec_clobber>): Rename ... + (sub<mode>3<exec>): ... to this, and likewise + * config/gcn/gcn.md (addsi3): Remove the DI clobber, and change the + instruction from v_add_co_u32 to v_add_u32. + (addsi3_scc): Likewise. + (subsi3): Likewise, but for v_sub_co_u32. + (muldi3): Likewise. + +2025-07-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121059 + * tree-vect-stmts.cc (vectorizable_operation): Record a + loop mask for mask AND operations. + +2025-07-14 Pan Li <pan2.li@intel.com> + + * match.pd: Make sure widen mul has twice bitsize + of the inputs in SAT_MUL pattern. + +2025-07-14 Uros Bizjak <ubizjak@gmail.com> + + PR target/121015 + * config/i386/i386-features.cc (ix86_broadcast_inner): Check all + 0s/1s vectors with standard_sse_constant_p. + +2025-07-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/120881 + * config.in: Regenerated. + * configure: Likewise. + * configure.ac: Add --enable-x86-64-mfentry. + * config/i386/i386-options.cc (ix86_option_override_internal): + Enable __fentry__ in 64-bit mode if ENABLE_X86_64_MFENTRY is set + to 1. Warn -pg without -mfentry with shrink wrapping enabled. + * doc/install.texi: Document --enable-x86-64-mfentry. + +2025-07-14 François-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR target/120645 + * config/darwin-driver.cc: Account for latest macOS numbering + scheme. + +2025-07-14 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*vfwmacc_vf_<mode>): New pattern to + handle both vfwmacc and vfwmsac. + (*extend_vf_<mode>): New pattern that serves as an intermediate combine + step. + * config/riscv/vector-iterators.md (vsubel): New mode attribute. This is + just the lower-case version of VSUBEL. + * config/riscv/vector.md (@pred_widen_mul_<optab><mode>_scalar): Reorder + and swap operands to match the RTL emitted by expand, i.e. first + float_extend then vec_duplicate. + +2025-07-14 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64-sme.md (@aarch64_sme_<faminmax_uns_op><mode>): + New patterns. + * config/aarch64/aarch64-sve-builtins-sme.def (svamin): New intrinsics. + (svamax): New intrinsics. + * config/aarch64/aarch64-sve-builtins-sve2.cc (class faminmaximpl): New + class. + (svamin): New function. + (svamax): New function. + +2025-07-14 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386.h (PTA_PANTHERLAKE): Revmoe KL and WIDEKL. + (PTA_CLEARWATERFOREST): Ditto. + * doc/invoke.texi: Revise documentation. + +2025-07-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120866 + * tree.cc: Add include to tm_p.h. + +2025-07-13 Benjamin Wu <bwu25@cs.washington.edu> + + * gimple.h (GTMA_DOES_GO_IRREVOCABLE): Fix typo. + +2025-07-12 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (function_instance::~function_instance): + Move down in source. + (string_table::get_cgraph_node): New member function with + logic broken out from ... + (function_instance::get_cgraph_node): ... here. + (match_with_target): Fix formating. + (function_instance::match): Fix formating; do not use iterators + after modifying map; remove incorrect set of warned flag. + (autofdo_source_profile::offline_external_functions): Keep + seen set up to date. + (function_instance::read_function_instance): Fix formating. + +2025-07-12 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/mmx.md (mov<V_32:mode>): + Use nonimm_or_0_operand predicate for operand 1. + (*mov<V_32:mode>_internal): Ditto. + (movv2qi): Ditto. + (*movv2qi_internal): Ditto. Use ix86_hardreg_mov_ok + in insn condition. + +2025-07-12 Xi Ruoyao <xry111@xry111.site> + + PR rtl-optimization/120983 + * lra-constraints.cc (process_alt_operands): Allow reloading + user hard registers unless the insn is an asm. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc: Include "diagnostic-format-sarif.h", + Replace include of "diagnostic-state.h" with includes of + "diagnostic-digraphs.h" and "diagnostic-state-graphs.h". + (html_generation_options::html_generation_options): Update for + field renaming. + (html_builder::m_body_element): New field. + (html_builder::html_builder): Initialize m_body_element. + (html_builder::maybe_make_state_diagram): Port from XML + implementation to state graph implementation. + (html_builder::make_element_for_diagnostic): Add any + per-diagnostic graphs. + (html_builder::add_graph): New. + (html_builder::emit_global_graph): New. + (html_output_format::report_global_digraph): New. + * diagnostic-format-html.h + (html_generation_options::m_show_state_diagram_xml): Replace + with... + (html_generation_options::m_show_state_diagrams_sarif): ...this. + (html_generation_options::m_show_state_diagram_dot_src): Rename + to... + (html_generation_options::m_show_state_diagrams_dot_src): ...this. + * diagnostic-format-sarif.cc: Include "diagnostic-digraphs.h" and + "diagnostic-state-graphs.h". + (sarif_builder::m_run_graphs): New field. + (sarif_result::on_nested_diagnostic): Update call to + make_location_object to pass arg by pointer. + (sarif_builder::sarif_builder): Initialize m_run_graphs. + (sarif_builder::report_global_digraph): New. + (sarif_builder::make_result_object): Add any graphs to + the result object. + (sarif_builder::make_locations_arr): Update call to + make_location_object to pass arg by pointer. + (sarif_builder::make_location_object): Pass param "loc_mgr" by + pointer rather than by reference so that it can be null, and + handle this case. + (copy_any_property_bag): New. + (make_sarif_graph): New. + (make_sarif_node): New. + (make_sarif_edge): New. + (sarif_property_bag::set_graph): New. + (populate_thread_flow_location_object): Port from XML + implementation to state graph implementation. + (make_run_object): Store any graphs. + (sarif_output_format::report_global_digraph): New. + (sarif_generation_options::sarif_generation_options): Rename + m_xml_state to m_state_graph. + (selftest::test_make_location_object): Update for change to + make_location_object. + * diagnostic-format-sarif.h: + (sarif_generation_options::m_xml_state): Replace with... + (sarif_generation_options::m_state_graph): ...this. + (class sarif_location_manager): Add forward decl. + (diagnostics::digraphs::digraph): New forward decl. + (diagnostics::digraphs::node): New forward decl. + (diagnostics::digraphs::edge): New forward decl. + (sarif_property_bag::set_graph): New decl. + (class sarif_graph): New. + (class sarif_node): New. + (class sarif_edge): New. + (make_sarif_graph): New decl. + (make_sarif_node): New decl. + (make_sarif_edge): New decl. + * diagnostic-format-text.h + (diagnostic_text_output_format::report_global_digraph): New. + * diagnostic-format.h + (diagnostic_output_format::report_global_digraph): New vfunc. + * diagnostic-digraphs.cc: New file. + * diagnostic-digraphs.h: New file. + * diagnostic-metadata.h (diagnostics::digraphs::lazy_digraphs): + New forward decl. + (diagnostic_metadata::diagnostic_metadata): Initialize + m_lazy_digraphs. + (diagnostic_metadata::set_lazy_digraphs): New. + (diagnostic_metadata::get_lazy_digraphs): New. + (diagnostic_metadata::m_lazy_digraphs): New field. + * diagnostic-output-spec.cc (sarif_scheme_handler::make_sink): + Update for XML to state graph changes. + (sarif_scheme_handler::make_sarif_gen_opts): Likewise. + (html_scheme_handler::make_sink): Rename "show-state-diagram-xml" + to "show-state-diagrams-sarif" and use pluralization consistently. + * diagnostic-path.cc: Replace include of "xml.h" with + "diagnostic-state-graphs.h". + (diagnostic_event::maybe_make_xml_state): Replace with... + (diagnostic_event::maybe_make_diagnostic_state_graph): ...this. + * diagnostic-path.h (diagnostics::digraphs::digraph): New forward + decl. + (diagnostic_event::maybe_make_xml_state): Replace with... + (diagnostic_event::maybe_make_diagnostic_state_graph): ...this. + * diagnostic-state-graphs.cc: New file. + * diagnostic-state-graphs.h: New file. + * diagnostic-state-to-dot.cc: Port implementation from XML to + state graphs. + * diagnostic-state.h: Deleted file. + * diagnostic.cc (diagnostic_context::report_global_digraph): New. + * diagnostic.h (diagnostics::digraphs::lazy_digraph): New forward + decl. + (diagnostic_context::report_global_digraph): New decl. + * doc/analyzer.texi (Debugging the Analyzer): Update to reflect + change from XML to state graphs. + * doc/invoke.texi ("sarif" diagnostics sink): Replace "xml-state" + with "state-graphs". + ("experimental-html" diagnostics sink): Replace + "show-state-diagrams-xml" with "show-state-diagrams-sarif" + * doc/libgdiagnostics/topics/compatibility.rst + (LIBGDIAGNOSTICS_ABI_3): New. + * doc/libgdiagnostics/topics/graphs.rst: New file. + * doc/libgdiagnostics/topics/index.rst: Add graphs.rst. + * graphviz.h (node_id::operator=): New. + * json.h (json::value::dyn_cast_string): New. + (json::object::get_num_keys): New accessor. + (json::object::get_key): New accessor. + (json::string::dyn_cast_string): New. + * libgdiagnostics++.h (class libgdiagnostics::graph): New. + (class libgdiagnostics::node): New. + (class libgdiagnostics::edge): New. + (class libgdiagnostics::diagnostic::take_graph): New. + (class libgdiagnostics::manager::take_global_graph): New. + (class libgdiagnostics::graph::set_description): New. + (class libgdiagnostics::graph::get_node_by_id): New. + (class libgdiagnostics::graph::get_edge_by_id): New. + (class libgdiagnostics::graph::add_edge): New. + (class libgdiagnostics::node::set_label): New. + (class libgdiagnostics::node::set_location): New. + (class libgdiagnostics::node::set_logical_location): New. + * libgdiagnostics-private.h: New file. + * libgdiagnostics.cc: Define INCLUDE_STRING. Include + "diagnostic-digraphs.h", "diagnostic-state-graphs.h", and + "libgdiagnostics-private.h". + (struct diagnostic_graph): New. + (struct diagnostic_node): New. + (struct diagnostic_edge): New. + (libgdiagnostics_path_event::libgdiagnostics_path_event): Add + state_graph param. + (libgdiagnostics_path_event::maybe_make_diagnostic_state_graph): + New. + (libgdiagnostics_path_event::m_state_graph): New field. + (diagnostic_execution_path::add_event_va): Add state_graph param. + (class prebuilt_digraphs): New. + (diagnostic::diagnostic): Use m_graphs in m_metadata. + (diagnostic::take_graph): New. + (diagnostic::get_graphs): New accessor. + (diagnostic::m_graphs): New field. + (diagnostic_manager::take_global_graph): New. + (diagnostic_execution_path_add_event): Update for new param to + add_event_va. + (diagnostic_execution_path_add_event_va): Likewise. + (diagnostic_graph::add_node_with_id): New public entrypoint. + (diagnostic_graph::add_edge_with_label): New public entrypoint. + (diagnostic_manager_new_graph): New public entrypoint. + (diagnostic_manager_take_global_graph): New public entrypoint. + (diagnostic_take_graph): New public entrypoint. + (diagnostic_graph_release): New public entrypoint. + (diagnostic_graph_set_description): New public entrypoint. + (diagnostic_graph_add_node): New public entrypoint. + (diagnostic_graph_add_edge): New public entrypoint. + (diagnostic_graph_get_node_by_id): New public entrypoint. + (diagnostic_graph_get_edge_by_id): New public entrypoint. + (diagnostic_node_set_location): New public entrypoint. + (diagnostic_node_set_label): New public entrypoint. + (diagnostic_node_set_logical_location): New public entrypoint. + (private_diagnostic_execution_path_add_event_2): New private + entrypoint. + (private_diagnostic_graph_set_property_bag): New private + entrypoint. + (private_diagnostic_node_set_property_bag): New private + entrypoint. + (private_diagnostic_edge_set_property_bag): New private + entrypoint. + * libgdiagnostics.h (diagnostic_graph): New typedef. + (diagnostic_node): New typedef. + (diagnostic_edge): New typedef. + (diagnostic_manager_new_graph): New decl. + (diagnostic_manager_take_global_graph): New decl. + (diagnostic_take_graph): New decl. + (diagnostic_graph_release): New decl. + (diagnostic_graph_set_description): New decl. + (diagnostic_graph_add_node): New decl. + (diagnostic_graph_add_edge): New decl. + (diagnostic_graph_get_node_by_id): New decl. + (diagnostic_graph_get_edge_by_id): New decl. + (diagnostic_node_set_label): New decl. + (diagnostic_node_set_location): New decl. + (diagnostic_node_set_logical_location): New decl. + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_3): New. + * libsarifreplay.cc: Include "libgdiagnostics-private.h". + (id_map): New "using". + (sarif_replayer::report_invalid_sarif): Update for change to + report_problem params. + (sarif_replayer::report_unhandled_sarif): Likewise. + (sarif_replayer::report_note): New. + (sarif_replayer::report_problem): Pass param "ref" by + pointer rather than reference and handle it being null. + (sarif_replayer::maybe_get_property_bag): New. + (sarif_replayer::maybe_get_property_bag_value): New. + (sarif_replayer::handle_run_obj): Handle run-level "graphs" as per + §3.14.20. + (sarif_replayer::handle_result_obj): Handle result-level "graphs" + as per §3.27.19. + (handle_thread_flow_location_object): Optionally handle graphs + stored in property "gcc/diagnostic_event/state_graph" as state + graphs. + (sarif_replayer::handle_graph_object): New. + (sarif_replayer::handle_node_object): New. + (sarif_replayer::handle_edge_object): New. + (sarif_replayer::get_graph_node_by_id_property): New. + * selftest-run-tests.cc (selftest::run_tests): Call + selftest::diagnostic_graph_cc_tests and + selftest::diagnostic_state_graph_cc_tests. + * selftest.h (selftest::diagnostic_graph_cc_tests): New decl. + (selftest::diagnostic_state_graph_cc_tests): New decl. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostic-digraphs.o and + diagnostic-state-graphs.o. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * json.cc (json::object::clone): New. + (json::object::clone_as_object): New. + (json::array::clone): New. + (json::float_number::clone): New. + (json::integer_number::clone): New. + (json::string::clone): New. + (json::literal::clone): New. + (selftest::test_cloning): New test. + (selftest::json_cc_tests): Call it. + * json.h (json::value::clone): New vfunc. + (json::object::clone): New decl. + (json::object::clone_as_object): New decl. + (json::array::clone): New decl. + (json::float_number::clone): New decl. + (json::integer_number::clone): New decl. + (json::string::clone): New decl. + (json::literal::clone): New decl. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * json.cc (string::string): When constructing from pointer and + length, ensure the new buffer is null-terminated. + (selftest::test_strcmp): New. + (selftest::json_cc_tests): Likewise. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * doc/libgdiagnostics/topics/compatibility.rst + (_LIBGDIAGNOSTICS_ABI_2): Add missing anchor. + * doc/libgdiagnostics/topics/diagnostic-manager.rst + (diagnostic_manager_add_sink_from_spec): Add links to GCC's + documentation of "-fdiagnostics-add-output=". Fix parameter + markup. + (diagnostic_manager_set_analysis_target): Fix parameter markup. + Add link to SARIF spec. + * doc/libgdiagnostics/topics/logical-locations.rst: Markup fix. + * doc/libgdiagnostics/tutorial/02-physical-locations.rst: Clarify + wording of what "the source file" means, and that a range can't + have multiple files. + +2025-07-11 Vladimir N. Makarov <vmakarov@redhat.com> + + * lra-constraints.cc (process_address_1): When changing base reg + on a reg of the base class, fall back to reload of whole inner address. + (process_address): Constrain the iteration number. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/119064 + * doc/invoke.texi (Wc++26-compat): Document. + +2025-07-11 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121027 + * config/aarch64/aarch64.cc (aarch64_evpc_sve_tbl): Punt on 2-input + operations that can be handled by vec_perm. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (*eor3qdi4): New + define_insn_and_split. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (*bcaxqdi4): New + define_insn_and_split. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (eor3q<mode>4): Use VDQ_I mode + iterator. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-simd.md (bcaxq<mode>4): Use VDQ_I mode + iterator. + +2025-07-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121034 + * tree-vect-loop.cc (vectorizable_reduction): Cleanup + reduction chain following code. + +2025-07-11 Jan Hubicka <hubicka@ucw.cz> + + * opts.cc (finish_options): Enable debug_nonbind_markers_p for + auto-profile. + * tree-cfg.cc (struct locus_discrim_map): Remove. + (struct locus_discrim_hasher): Remove. + (locus_discrim_hasher::hash): Remove. + (locus_discrim_hasher::equal): Remove. + (first_non_label_nondebug_stmt): Remove. + (build_gimple_cfg): Do not allocate discriminator tables. + (next_discriminator_for_locus): Remove. + (same_line_p): Remove. + (struct discrim_entry): New structure. + (assign_discriminator): Rewrite. + (assign_discriminators): Rewrite. + +2025-07-11 Jan Hubicka <hubicka@ucw.cz> + + PR ipa/114790 + * cgraph.cc (cgraph_update_edges_for_call_stmt_node): Resolve devirtualization + if call statement was optimized out or turned to direct call. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + Martin Jambor <mjambor@suse.cz> + + PR ipa/121023 + * ipa-fnsummary.cc (compute_fn_summary): Disallow signature changes + on cfun->has_musttail functions. + +2025-07-11 Hu, Lin1 <lin1.hu@intel.com> + + PR target/91384 + * config/i386/i386.md: Add new peeophole2 for optimize *negsi_1 + followed by *cmpsi_ccno_1 with APX_F. + +2025-07-11 Richard Biener <rguenther@suse.de> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Use + the LHS of a scalar stmt to determine mode and whether it is FP. + +2025-07-10 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost): + Guard VF-based costing with !m_costing_for_scalar. + +2025-07-10 Qing Zhao <qing.zhao@oracle.com> + + * internal-fn.cc (expand_ACCESS_WITH_SIZE): Update comments. + * internal-fn.def (ACCESS_WITH_SIZE): Update comments. + * tree-object-size.cc (access_with_size_object_size): Update comments. + Adjust the arguments per the new design. + +2025-07-10 Qing Zhao <qing.zhao@oracle.com> + + PR middle-end/121000 + * internal-fn.cc (expand_ACCESS_WITH_SIZE): Update comments. + * internal-fn.def (ACCESS_WITH_SIZE): Update comments. + * tree-object-size.cc (access_with_size_object_size): Update comments. + Get the element_size from the 6th argument directly. + +2025-07-10 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve2.md (aarch64_gather_ld1q): Replace with... + (@aarch64_gather_ld1q<mode>): ...this, parameterizing based on mode. + * config/aarch64/aarch64-sve-builtins-sve2.cc + (svld1q_gather_impl::expand): Update accordingly. + (svst1q_scatter_impl::expand): Use aarch64_sve_reinterpret + instead of force_lowpart_subreg. + +2025-07-10 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc: Include output.h. + (function_instance::set_call_location): Also sanity check + that location is known. + (raw_symbol_name): Two new static functions. + (dump_inline_stack): Use it. + (string_table::get_index_by_decl): Likewise. + (function_instance::get_cgraph_node): Likewise. + (function_instance::get_function_instance_by_decl): Fix typo + in warning; use raw names; fix lineno decoding. + (match_with_target): Add containing funciton parameter; + correctly output function and call location in warning. + (function_instance::lookup_count): Fix warning locations. + (function_instance::match): Fix warning locations; avoid + crash with mismatched callee; do not warn about broken callsites + twice. + (autofdo_source_profile::offline_external_functions): Use + raw_assembler_name. + (walk_block): Use raw_assembler_name. + +2025-07-10 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121014 + * cfgexpand.cc (expand_debug_expr): Assert FLOAT_MODE_P. + * optabs-tree.cc (optab_for_tree_code): Assert FLOAT_TYPE_P. + * tree-vect-loop.cc (vect_get_loop_len): Use EXACT_DIV_EXPR. + +2025-07-10 Robin Dapp <rdapp@ventanamicro.com> + + PR target/118734 + * config/riscv/constraints.md (Wdm): Use tunable for Wdm + constraint. + * config/riscv/riscv-protos.h (emit_avltype_insn): Declare. + (can_be_broadcasted_p): Rename to... + (can_be_broadcast_p): ...this. + * config/riscv/predicates.md: Use renamed function. + (strided_load_broadcast_p): Declare. + * config/riscv/riscv-selftests.cc (run_broadcast_selftests): + Only run broadcast selftest if strided broadcasts are OK. + * config/riscv/riscv-v.cc (emit_avltype_insn): New function. + (sew64_scalar_helper): Only emit a pred_broadcast if the new + tunable says so. + (can_be_broadcasted_p): Rename to... + (can_be_broadcast_p): ...this and use new tunable. + * config/riscv/riscv.cc (struct riscv_tune_param): Add strided + broad tunable. + (strided_load_broadcast_p): Implement. + * config/riscv/vector.md: Use strided_load_broadcast_p () and + work around 64-bit broadcast on rv32 targets. + +2025-07-10 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_fusion_pairs): Add new cases. + (riscv_set_is_add): New function. + (riscv_set_is_addi, riscv_set_is_adduw, riscv_set_is_shNadd): Likewise. + (riscv_set_is_shNadduw): Likewise. + (riscv_macro_fusion_pair_p): Add new fusion cases. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_analyze_slp): Fail for non-canonical + gconds. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_build_slp_instance): Do not use + SLP_TREE_VECTYPE to determine the conversion back to the + reduction IV. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Avoid + vect_is_simple_use and record a vector type if we come + up with one. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_load_store_type): Do not use + vect_is_simple_use to fill gather/scatter offset operand + vectype and dt. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_model_reduction_cost): Get SLP + node instead of stmt_info and use that when recording costs. + +2025-07-10 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR target/120999 + * config/aarch64/aarch64-sve2.md (*aarch64_sve2_nor<mode>): + Adjust movprfx alternative. + +2025-07-10 Richard Sandiford <richard.sandiford@arm.com> + + * doc/sourcebuild.texi (aarch64_sve2_hw, aarch64_sve2p1_hw): Document. + * config/aarch64/aarch64.cc (aarch64_evpc_hvla): Extend to + BYTES_BIG_ENDIAN. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_analyze_stmt): Remove stmt-info + and need_to_vectorize arguments. + * tree-vect-slp.cc (vect_slp_analyze_node_operations_1): + Adjust. + * tree-vect-stmts.cc (can_vectorize_live_stmts): Remove + stmt_info argument and remove non-SLP path. + (vect_analyze_stmt): Remove stmt_info and need_to_vectorize + argument and prune paths no longer reachable. + (vect_transform_stmt): Adjust. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * config/i386/x86-tune.def: Change "Tunning the" to "tuning" in + comment and use semicolon instead of dot in comment. + * loop-unroll.cc (decide_unroll_stupid): Comment spelling fix, + tunning -> tuning. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * tree-vect-loop.cc (scale_profile_for_vect_loop): Comment + spelling fix: bellow -> below. + * ipa-polymorphic-call.cc (record_known_type): Likewise. + * config/i386/x86-tune.def: Likewise. + * config/riscv/vector.md (*vsetvldi_no_side_effects_si_extend): + Likewise. + * tree-scalar-evolution.cc (iv_can_overflow_p): Likewise. + * ipa-devirt.cc (add_type_duplicate): Likewise. + * tree-ssa-loop-niter.cc (maybe_lower_iteration_bound): Likewise. + * gimple-ssa-sccopy.cc: Likewise. + * cgraphunit.cc: Likewise. + * graphite.h (struct poly_dr): Likewise. + * ipa-reference.cc (ignore_edge_p): Likewise. + * tree-ssa-alias.cc (ao_compare::compare_ao_refs): Likewise. + * profile-count.h (profile_probability::probably_reliable_p): + Likewise. + * ipa-inline-transform.cc (inline_call): Likewise. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_dissolve_slp_only_groups): Remove. + (vect_analyze_loop_2): Do not call it. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_active_double_reduction_p): Remove. + (vect_analyze_loop_operations): Remove. + (vect_analyze_loop_2): Do not call it. + +2025-07-10 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_determine_vf_for_stmt_1): Rename + to ... + (vect_determine_vectype_for_stmt_1): ... this and only set + STMT_VINFO_VECTYPE. Fail for single-element vector types. + (vect_determine_vf_for_stmt): Rename to ... + (vect_determine_vectype_for_stmt): ... this and only set + STMT_VINFO_VECTYPE. Fail for single-element vector types. + (vect_determine_vectorization_factor): Rename to ... + (vect_set_stmts_vectype): ... this and only set STMT_VINFO_VECTYPE. + (vect_update_vf_for_slp): Remove. + (vect_analyze_loop_operations): Remove walk over stmts. + (vect_analyze_loop_2): Call vect_set_stmts_vectype instead of + vect_determine_vectorization_factor. Set vectorization factor + from LOOP_VINFO_SLP_UNROLLING_FACTOR. Fail if vect_detect_hybrid_slp + detects hybrid stmts or when vect_make_slp_decision finds + nothing to SLP. + * tree-vect-slp.cc (vect_detect_hybrid_slp): Move check + whether we have any hybrid stmts here from vect_update_vf_for_slp + * tree-vect-stmts.cc (vect_analyze_stmt): Remove loop over + stmts. + * tree-vectorizer.h (vect_detect_hybrid_slp): Update. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_simd_valid_imm): Account + for FLOAT_WORDS_BIG_ENDIAN when building a floating-point value. + +2025-07-09 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_adjust_guessed_profile): Add forgotten + if (dump_file) guard. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_sve_index_series_p): New + function, split out from... + (aarch64_simd_valid_imm): ...here. Account for the different + SVE and Advanced SIMD element orders on big-endian targets. + Check each vector in a structure mode. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * read-rtl-function.cc (function_reader::read_rtx_operand_r): Use + hard_regno_nregs to work out REG_NREGS for hard registers. + +2025-07-09 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add + new case SS_MINUS. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op ss_minus. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * ext-dce.cc (ext_dce_process_uses): Apply is_constant directly + to the subreg_lsb. + +2025-07-09 Jan Dubiec <jdx@o2.pl> + + PR target/109286 + * config.gcc: Include elfos.h before h8300/h8300.h. + * config/h8300/h8300.h (INIT_SECTION_ASM_OP): Override + default version from elfos.h. + (FINI_SECTION_ASM_OP): Ditto. + (ASM_DECLARE_FUNCTION_NAME): Ditto. + (ASM_GENERATE_INTERNAL_LABEL): Macro removed because it was + being overridden in elfos.h anyway. + (ASM_OUTPUT_SKIP): Ditto. + +2025-07-09 Icen Zeyada <Icen.Zeyada2@arm.com> + + PR tree-optimization/119196 + * match.pd: Allow scalar optimizations with bitwise AND/OR/XOR to apply to vectors. + +2025-07-09 Icen Zeyada <Icen.Zeyada2@arm.com> + + PR tree-optimization/119196 + * match.pd: Merge multiple vec_cond_expr in a single one for + bit_and, bit_ior and bit_xor. + +2025-07-09 Jeff Law <jlaw@ventanamicro.com> + + PR target/120642 + * config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Do not do + constant AVL propagation for xtheadvector. + +2025-07-09 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_reduction): Get the + output vector type from slp_for_stmt_info. + * tree-vect-stmts.cc (vect_analyze_stmt): Bail out earlier + for PURE_SLP_STMT when doing loop stmt analysis. + +2025-07-09 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (struct scale): New structure. + (add_scale): Also record weights. + (afdo_adjust_guessed_profile): Compute robust average + of scales and cap by max count in function. + +2025-07-09 Jan Hubicka <hubicka@ucw.cz> + + * tree-inline.cc (initialize_cfun): Use num and den for scaling. + +2025-07-09 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (get_original_name): Fix loop walking the + suffixes. + +2025-07-09 Christophe Lyon <christophe.lyon@linaro.org> + + * config/arm/arm_neon.h: Remove useless push/pop pragmas. + +2025-07-09 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/120922 + * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Support range + for partial vectors. + +2025-07-09 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/120922 + * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Don't set range + for partial vectors. + +2025-07-08 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_b4const_or_zero): + Remove. + (xtensa_b4const): Add a case where the value is 0, and rename + to xtensa_b4const_or_zero. + (xtensa_rtx_costs): Fix to also consider the result of + xtensa_b4constu(). + +2025-07-08 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.md (stack_protect_get_tpsi): New insn. + (stack_protect_get_tpdi): New insn. + (stack_protect_set): Use new insn. + (stack_protect_test): Use new insn. + +2025-07-08 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120461 + * config/riscv/riscv-v.cc (emit_vlmax_insn_lra): Do not emit + vsetivli for XTHeadVector. + +2025-07-08 Robin Dapp <rdapp@ventanamicro.com> + + PR target/113829 + * config/riscv/riscv-vector-builtins.cc (registered_function::overloaded_hash): + Skip non-type arguments. + +2025-07-08 Andreas Schwab <schwab@suse.de> + + PR target/120995 + * config/riscv/sync.md (zacas_atomic_cas_value_strong<mode>): + Allow op3 to be zero. + +2025-07-08 Richard Biener <rguenther@suse.de> + + * config/i386/x86-tune.def (X86_TUNE_AVX512_MASKED_EPILOGUES): + New tunable, default on for m_ZNVER4 and m_ZNVER5. + * config/i386/i386.cc (ix86_vector_costs::finish_cost): With + X86_TUNE_AVX512_MASKED_EPILOGUES and when the main loop + had a vectorization factor > 2 use a masked epilogue when + possible and when not obviously problematic. + +2025-07-08 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vector_costs::suggested_epilogue_mode): + Add masked output parameter and return m_masked_epilogue. + (vector_costs::m_masked_epilogue): New tristate flag. + (vector_costs::vector_costs): Initialize m_masked_epilogue. + * tree-vect-loop.cc (vect_analyze_loop_1): Pass in masked + flag to optionally initialize can_use_partial_vectors_p. + (vect_analyze_loop): For epilogues also get whether to use + a masked epilogue for this loop from the target and use + that for the first epilogue mode we try. + +2025-07-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120358 + * tree-ssa-structalias.cc (get_constraint_for_1): Adjust + pruning of sub-variables according to the imprecise + known start offset. + +2025-07-08 Alexandre Oliva <oliva@adacore.com> + + * config/vxworks-dummy.h (TARGET_VXWORKS_VAROFF): New. + (TARGET_VXWORKS_GOTTPIC): New. + * config/vxworks.h (TARGET_VXWORKS_VAROFF): Override. + (TARGET_VXWORKS_GOTTPIC): Likewise. + * config/i386/i386.cc (output_set_got): Disable VxWorks6 GOT + sequence on VxWorks7. + (legitimize_pic_address): Accept relative addressing of + labels on VxWorks7. + (ix86_delegitimize_address_1): Likewise. + (ix86_output_addr_diff_elt): Likewise. + * config/i386/i386.md (tablejump): Likewise. + (set_got, set_got_labelled): Set no-red-zone flag on VxWorks7. + * config/i386/predicates.md (gotoff_operand): Test + TARGET_VXWORKS_VAROFF. + +2025-07-08 Alexandre Oliva <oliva@adacore.com> + + * config.gcc (vxworks-dummy.h): Add to aarch64-*-* as well. + +2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + Revert: + 2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + * doc/extend.texi: Extend counted_by attribute to pointer fields in + structures. Add one more requirement to pointers with counted_by + attribute. + +2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + Revert: + 2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * tree-object-size.cc (access_with_size_object_size): Update comments + for pointers with .ACCESS_WITH_SIZE. + (collect_object_sizes_for): Propagate size info through GIMPLE_ASSIGN + for pointers with .ACCESS_WITH_SIZE. + +2025-07-07 Martin Jambor <mjambor@suse.cz> + + * value-range.h (class irange): Mark member function verify_range + with override. + (class prange): Mark member function verify_range with final override. + (class frange): Mark member function verify_range with override. + +2025-07-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120888 + * config/xtensa/xtensa.cc (xtensa_promote_function_mode): New. + (TARGET_PROMOTE_FUNCTION_MODE): Use. + (TARGET_PROMOTE_PROTOTYPES): Removed. + +2025-07-07 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.md: Update UNSPECs + * config/s390/vector.md (fmax<mode>3): New expander. + (fmin<mode>3): New expander. + * config/s390/vx-builtins.md (*fmin<mode>): New insn. + (vfmin<mode>): Redefined to use new insn. + (*fmax<mode>): New insn. + (vfmax<mode>): Redefined to use new insn. + +2025-07-07 Jason Merrill <jason@redhat.com> + + PR c++/120917 + * doc/invoke.texi: Add -Wno-abbreviated-auto-in-template-arg. + +2025-07-07 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64.md (popcountti2): Add TARGET_SVE path. + +2025-07-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120817 + * tree-ssa-dse.cc (initialize_ao_ref_for_dse): Use + ao_ref_init_from_ptr_and_range with unknown size for + .MASK_STORE and .MASK_LEN_STORE. + +2025-07-07 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-protos.h (riscv_expand_usmul): Add new func + decl. + * config/riscv/riscv.cc (riscv_expand_xmode_usmul): Add new func + to expand Xmode SAT_MUL. + (riscv_expand_non_xmode_usmul): Ditto but for non-Xmode. + (riscv_expand_usmul): Add new func to implment SAT_MUL. + * config/riscv/riscv.md (usmul<mode>3): Add new pattern to match + standard name usmul. + +2025-07-07 Pan Li <pan2.li@intel.com> + + * match.pd: Add new match pattern for unsigned SAT_MUL. + * tree-ssa-math-opts.cc (gimple_unsigned_integer_sat_mul): + new decl for pattern match func. + (match_unsigned_saturation_mul): Add new func to match unsigned + SAT_MUL. + (math_opts_dom_walker::after_dom_children): Try to match + unsigned SAT_MUL on NOP. + +2025-07-07 Pan Li <pan2.li@intel.com> + + * internal-fn.cc (commutative_binary_fn_p): Add new case + for SAT_MUL. + * internal-fn.def (SAT_MUL): Add new IFN_SAT_MUL. + * optabs.def (OPTAB_NL): Remove fixed point limitation. + +2025-07-07 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.md: Removed unused unspecs. + * config/s390/vector.md (avg<mode>3_ceil): New expander. + (uavg<mode>3_ceil): New expander. + (smul<mode>3_highpart): New expander. + (umul<mode>3_highpart): New expander. + * config/s390/vx-builtins.md (vec_umulh<mode>): Remove unspec. + (vec_smulh<mode>): Remove unspec. + +2025-07-07 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md (vec_cmp<mode><vpred>): Extend + to handle partial FP modes. + (@aarch64_pred_fcm<cmp_op><mode>): Likewise. + (@aarch64_pred_fcmuo<mode>): Likewise. + (*one_cmpl<mode>3): Rename to... + (@aarch64_pred_one_cmpl<mode>_z): ... this. + * config/aarch64/aarch64.cc (aarch64_emit_sve_fp_cond): Allow the + target and governing predicates to have different modes. + (aarch64_emit_sve_or_fp_conds): Likewise. + (aarch64_emit_sve_invert_fp_cond): Likewise. + (aarch64_expand_sve_vec_cmp_float): Likewise. + +2025-07-07 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118891 + * tree-vect-stmts.cc (supportable_widening_operation): Swap the + hi and lo internal functions on big-endian targets. + +2025-07-07 Richard Sandiford <richard.sandiford@arm.com> + + * ext-dce.cc (ext_dce_process_uses): Apply is_constant directly + to the subreg_lsb. + +2025-07-07 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_sve_set_neonq_<mode>): + Use %Z instead of lowpart_subreg. Tweak formatting. + +2025-07-07 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118891 + * config/aarch64/aarch64.cc (aarch64_expand_vector_init): Fix the + ZIP1 operand order for big-endian targets. + +2025-07-07 Jan Hubicka <hubicka@ucw.cz> + + * tree-ssa-live.cc (dump_scope_block): Print discriminators + of inlined functions. + +2025-07-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120670 + PR target/120683 + * config/i386/i386-expand.cc (expand_set_or_cpymem_via_loop): + Don't generate the loop if the loop count is 1. + (expand_cpymem_epilogue): Use move_by_pieces. + (setmem_epilogue_gen_val): New. + (expand_setmem_epilogue): Use store_by_pieces. + (expand_small_cpymem_or_setmem): Choose cpymem mode from MOVE_MAX. + For memset with vector and the size is smaller than the vector + size, first try the narrower vector, otherwise, use the scalar + value. + (promote_duplicated_reg): Duplicate the scalar value for vector. + (ix86_expand_set_or_cpymem): Always expand vector-version of + memset for vector_loop. Use misaligned prologue if alignment + isn't needed and destination isn't aligned. Always initialize + vec_promoted_val from the promoted scalar value for vector_loop. + +2025-07-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120709 + * builtins.cc (expand_builtin_crc_table_based): Error out + instead of asserting the 3rd argument is an integer constant. + * internal-fn.cc (expand_crc_optab_fn): Likewise. + * doc/extend.texi (crc): Document requirement of the poly argument + being a constant. + +2025-07-06 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-mcus.def: -mmcu= takes lower case MCU names. + * doc/avr-mmcu.texi: Rebuild. + +2025-07-06 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-mcus.def (avr32da28S, avr32da32S, avr32da48S) + (avr64da28S, avr64da32S, avr64da48S avr64da64S) + (avr128da28S, avr128da32S, avr128da48S, avr128da64S): Add devices. + * doc/avr-mmcu.texi: Rebuild. + +2025-07-06 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120951 + * tree-call-cdce.cc (use_internal_fn): For non-call exceptions + with EQ_EXPR can throw for floating point types, then create + the EQ_EXPR seperately. + +2025-07-06 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120921 + * tree-cfg.cc (verify_gimple_assign_single): Reject constant and address expression LHS. + For non-empty vector constructors, make sure the LHS is an is_gimple_reg. + +2025-07-06 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc + (autofdo_source_profile::read): Scale cutoff. + (read_autofdo_file): Initialize cutoff + * coverage.cc (read_counts_file): Initialize cutoff to 1. + * gcov-io.h (struct gcov_summary): Add cutoff field. + * ipa-inline.cc (inline_small_functions): mac_count can be non-zero + also with auto_profile. + * lto-cgraph.cc (output_profile_summary): Write cutoff + and sum_max. + (input_profile_summary): Read cutoff and sum max. + (merge_profile_summaries): Initialize and scale global cutoffs + and sum max. + * profile-count.cc: Include profile.h + (profile_count::force_nonzero): move here from ...; use cutoff. + * profile-count.h: (profile_count::force_nonzero): ... here. + +2025-07-06 Jan Hubicka <hubicka@ucw.cz> + + * profile-count.cc (profile_count::operator*): fix overflow check. + +2025-07-05 Alexandre Oliva <oliva@adacore.com> + + * config/rs6000/vxworks.h (SUBTARGET_DRIVER_SELF_SPECS): + Redefine to select word size matching TARGET_VXWORKS64. + (TARGET_VXWORKS64): Redefine in terms of TARGET_64BIT. + +2025-07-04 Vineet Gupta <vineetg@rivosinc.com> + + PR target/118241 + * config/riscv/riscv.md (prefetch): Add alternative "r". + +2025-07-04 Vineet Gupta <vineetg@rivosinc.com> + + * config/riscv/predicates.md (prefetch_operand): mack 5 bits. + +2025-07-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + * config/sh/predicates.md + (treg_set_expr_not_const01): call sh_recog_treg_set_expr_not_01 + * config/sh/sh-protos.h + (sh_recog_treg_set_expr_not_01): New function + * config/sh/sh.cc (sh_recog_treg_set_expr_not_01): Likewise + +2025-07-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR c/118948 + * fold-const.cc (tree_expr_nonnegative_warnv_p): Use + error_operand_p instead of checking for error_mark_node directly. + +2025-07-04 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case SS_PLUS. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op ss_plus. + +2025-07-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120944 + * tree-ssa-sccvn.cc (vn_reference_lookup_3): Gate optimizations + invalid when volatile is involved. + +2025-07-04 Jan Hubicka <hubicka@ucw.cz> + + * common.opt: Add period. + * common.opt.urls: Regenerate. + +2025-07-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120927 + * tree-vect-data-refs.cc (vect_compute_data_ref_alignment): + Do not force a DRs base alignment when analyzing an + epilog loop. Check whether the step preserves alignment + for all VFs possibly involved sofar. + +2025-07-04 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.md (crc_combine): Avoid nested + subreg. + +2025-07-04 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Add basic + instrumentation to all cases where fusion is detected. Fix + minor formatting goofs found in the process. + +2025-07-04 panciyan <panciyan@eswincomputing.com> + + * match.pd: Add signed scalar SAT_ADD IMM form2 matching. + +2025-07-03 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.cc (expand_perm_with_merge): Add size change cases. + (expand_perm_with_pack): New function. + (vectorize_vec_perm_const_1): Wire up new function. + +2025-07-03 Co-authored-by: Daniel Barboza <dbarboza@ventanamicro.com> + Co-authored-by: Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/118886 + * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Check + for fusion being disabled earlier. If PREV is already fused, + then it can't be fused again. Be more selective about fusing + when the destination registers do not match. Don't fuse into + loads that aren't scalar integer modes. Revamp store pair + commit support. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (aarch64_cbz<optab><mode>1): Move + above rules for CBB<cond>/CBH<cond>/CB<cond>. + (*aarch64_tbz<optab><mode>1): Likewise. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64-protos.h (aarch64_cb_rhs): New function. + * config/aarch64/aarch64.cc (aarch64_cb_rhs): Likewise. + * config/aarch64/aarch64.md (cbranch<mode>4): Rename to ... + (cbranch<GPI:mode>4): ...here, and emit CMPBR if possible. + (cbranch<SHORT:mode>4): New expand rule. + (aarch64_cb<INT_CMP:code><GPI:mode>): New insn rule. + (aarch64_cb<INT_CMP:code><SHORT:mode>): Likewise. + * config/aarch64/constraints.md (Uc0): New constraint. + (Uc1): Likewise. + (Uc2): Likewise. + * config/aarch64/iterators.md (cmpbr_suffix): New mode attr. + (INT_CMP): New code iterator. + (cmpbr_imm_constraint): New code attr. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64-option-extensions.def (cmpbr): New + option. + * config/aarch64/aarch64.h (TARGET_CMPBR): New macro. + * doc/invoke.texi (cmpbr): New option. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (far_branch): Replace 0/1 with + no/yes. + (aarch64_bcond): Handle rename. + (aarch64_cbz<optab><mode>1): Likewise. + (*aarch64_tbz<optab><mode>1): Likewise. + (@aarch64_tbz<optab><ALLI:mode><GPI:mode>): Likewise. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (BRANCH_LEN_P_1MiB): New constant. + (BRANCH_LEN_N_1MiB): Likewise. + (BRANCH_LEN_P_32KiB): Likewise. + (BRANCH_LEN_N_32KiB): Likewise. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (condjump): Rename to ... + (aarch64_bcond): ...here. + (*compare_condjump<GPI:mode>): Rename to ... + (*aarch64_bcond_wide_imm<GPI:mode>): ...here. + (aarch64_cb<optab><mode>): Rename to ... + (aarch64_cbz<optab><mode>1): ...here. + (*cb<optab><mode>1): Rename to ... + (*aarch64_tbz<optab><mode>1): ...here. + (@aarch64_tb<optab><ALLI:mode><GPI:mode>): Rename to ... + (@aarch64_tbz<optab><ALLI:mode><GPI:mode>): ...here. + (restore_stack_nonlocal): Handle rename. + (stack_protect_combined_test): Likewise. + * config/aarch64/aarch64-simd.md (cbranch<mode>4): Likewise. + * config/aarch64/aarch64-sme.md (aarch64_restore_za): Likewise. + * config/aarch64/aarch64.cc (aarch64_gen_test_and_branch): Likewise. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (cbranch<mode>4): Reformat. + (cbranchcc4): Likewise. + (condjump): Likewise. + (*compare_condjump<GPI:mode>): Likewise. + (aarch64_cb<optab><mode>1): Likewise. + (*cb<optab><mode>1): Likewise. + (tbranch_<code><mode>3): Likewise. + (@aarch64_tb<optab><ALLI:mode><GPI:mode>): Likewise. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * config/aarch64/aarch64.md (condjump): Move. + (*compare_condjump<GPI:mode>): Likewise. + (aarch64_cb<optab><mode>1): Likewise. + (*cb<optab><mode>1): Likewise. + (tbranch_<code><mode>3): Likewise. + (@aarch64_tb<optab><ALLI:mode><GPI:mode>): Likewise. + +2025-07-03 Siddhesh Poyarekar <siddhesh@gotplt.org> + + PR tree-optimization/120780 + * tree-object-size.cc (inner_at_offset, + get_wholesize_for_memref): New functions. + (addr_object_size): Call get_wholesize_for_memref. + +2025-07-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/120936 + * config/i386/i386.cc (x86_print_call_or_nop): Add a label + argument and use it to print label. + (x86_function_profiler): Emit label only when __mcount_loc + section is used. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (get_combined_location): Handle negative + offsets; output better diagnostics. + (get_relative_location_for_locus): Reutrn -1 for unknown location. + (function_instance::get_cgraph_node): New member function. + (match_with_target): New function. + (dump_stmt): New function. + (function_instance::lookup_count): New function. + (mark_expr_locations): New function. + (function_instance::match): New function. + (autofdo_source_profile::offline_external_functions): Do + not repeat renaming; manage two worklists and do matching. + (autofdo_source_profile::offline_unrealized_inlines): Simplify. + (afdo_set_bb_count): do not look for lost discriminators. + (auto_profile): Do not ICE when profile reading failed. + * common.opt (Wauto-profile): New warning flag + * doc/invoke.texi (-Wauto-profile): Document. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * ipa-fnsummary.cc (analyze_function_body): For loop + heuristics use header count instead of preheader count. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * ipa-cp.cc (update_profiling_info): Watch for division by zero. + +2025-07-03 Alex Coplan <alex.coplan@arm.com> + + * config/aarch64/aarch64-sve.md + (vec_load_lanes<mode><vsingle>): Expand else operand in + subvector mode, as per optab documentation. + (vec_mask_load_lanes<mode><vsingle>): Add missing mode for + operand 3. + * config/aarch64/predicates.md (aarch64_maskload_else_operand): + Remove const_int. + +2025-07-03 Alex Coplan <alex.coplan@arm.com> + + * doc/md.texi (Standard Names): Clarify mode of else operand for + vec_mask_load_lanesmn optab. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * ipa-cp.cc (cs_interesting_for_ipcp_p): Handle + correctly GLOBAL0 afdo counts. + (ipcp_cloning_candidate_p): Do not rule out nodes + !node->optimize_for_size_p (). + (good_cloning_opportunity_p): Handle afdo counts + as non-zero. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * ipa-cp.cc (hint_time_bonus): Return sreal and avoid + conversions to integer. + (good_cloning_opportunity_p): Avoid sreal to integer + conversions + (perform_estimation_of_a_value): Update. + +2025-07-03 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_hot_bb_threshod): New global + variable. + (maybe_hot_afdo_count_p): New function. + (autofdo_source_profile::read): Do not set up dump file; + set afdo_hot_bb_threshod. + (afdo_annotate_cfg): Handle partial training. + (afdo_callsite_hot_enough_for_early_inline): + Use maybe_hot_afdo_count_p. + (auto_profile_offline::execute): Read autofdo file. + * auto-profile.h (maybe_hot_afdo_count_p): Declare. + (afdo_hot_bb_threshold): Declare. + * coverage.cc (read_counts_file): Also set gcov_profile_info. + (coverage_init): Do not read autofdo file. + * opts.cc (enable_fdo_optimizations): Add autofdo parameter; + do not set flag_branch_probabilities and flag_profile_values + with it. + (common_handle_option): Update. + * passes.cc (finish_optimization_passes): Do not end branch + prob here. + (pass_manager::dump_profile_report): Also mark change after + autofdo pass. + * profile.cc: Include auto-profile.h + (gcov_profile_info): New global variable. + (struct afdo_fdo_record): New struture. + (compute_branch_probabilities): Record afdo profile. + (end_branch_prob): Dump afdo/fdo profile comparsion. + * profile.h (gcov_profile_info): Declarre. + * tree-profile.cc (tree_profiling): Call end_branch_prob + (pass_ipa_tree_profile::gate): Also enable with autoFDO + +2025-07-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118669 + * tree-vect-stmts.cc (vectorizable_load): Emit loads + with proper (element) alignment. + (vectorizable_store): Likewise. + +2025-07-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/120908 + * config/i386/i386.cc (legitimize_tls_address): Pass RDI to + gen_tls_local_dynamic_64. + * config/i386/i386.md (*tls_global_dynamic_64_largepic): Add + RDI clobber and use it to generate LEA. + (*tls_local_dynamic_64_<mode>): Likewise. + (*tls_local_dynamic_base_64_largepic): Likewise. + (@tls_local_dynamic_64_<mode>): Add a clobber. + +2025-07-02 H.J. Lu <hjl.tools@gmail.com> + + PR target/120908 + * config/i386/i386.cc (legitimize_tls_address): Pass RDI to + gen_tls_global_dynamic_64. + * config/i386/i386.md (*tls_global_dynamic_64_<mode>): Add RDI + clobber and use it to generate LEA. + (@tls_global_dynamic_64_<mode>): Add a clobber. + +2025-07-02 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR target/120356 + * config/riscv/riscv-v.cc + (expand_const_vector_interleaved_stepped_npatterns): + Fix ASHIFT to LSHIFTRT insn. + +2025-07-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120927 + * tree-vect-loop.cc (vect_analyze_loop): Stop querying + further epilogues after one with partial vectors. + +2025-07-02 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/driver-i386.cc (host_detect_local_cpu): Change + to AMX-FP8 for Diamond Rapids. + +2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * tree-object-size.cc (access_with_size_object_size): Update comments + for pointers with .ACCESS_WITH_SIZE. + (collect_object_sizes_for): Propagate size info through GIMPLE_ASSIGN + for pointers with .ACCESS_WITH_SIZE. + +2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * doc/extend.texi: Extend counted_by attribute to pointer fields in + structures. Add one more requirement to pointers with counted_by + attribute. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR c++/120471 + * tree.h (address_invariant_p): New function. + * tree.cc (address_invariant_p): New function. + (tree_invariant_p_1): Use it for ADDR_EXPR handling. Formatting + tweak. + +2025-07-01 Remi Machet <rmachet@nvidia.com> + + * config/aarch64/aarch64-simd.md (*shrn_to_subhn_<mode>): Add pattern + converting mvn+shrn into mvni+subhn. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * passes.def (pass_musttail): Move before pass_sanopt. + * tree-tailcall.cc (empty_eh_cleanup): Handle GIMPLE_RESX + which doesn't throw externally through recursion on single + eh edge (if any and cnt still allows that). + (find_tail_calls): Add ESUCC, IGNORED_EDGES and MUST_SEE_BBS + arguments. Handle GIMPLE_CONDs for non-simplified cleanups with + finally_tmp temporaries both on backward and forward walks, adjust + recursive call. + (tree_optimize_tail_calls_1): Adjust find_tail_calls callers. + +2025-07-01 Ezra Sitorus <ezra.sitorus@arm.com> + + * config/aarch64/aarch64-sys-regs.def: Copy from Binutils. + +2025-07-01 H.J. Lu <hjl.tools@gmail.com> + + PR debug/120902 + * print-tree.cc (debug with const tree_node *): Call debug_tree + instead of debug. + +2025-07-01 Yuao Ma <c8ef@outlook.com> + + * fold-const-call.cc (fold_const_call_ss): Constant fold for + single arg pi-based trigonometric builtins. + (fold_const_call_sss): Constant fold for double arg pi-based + trigonometric builtins. + * fold-const.cc (negate_mathfn_p): asinpi/atanpi is odd func. + (tree_call_nonnegative_warnv_p): acospi always non-neg, + asinpi/atanpi non-neg iff arg non-neg. + * tree-call-cdce.cc (can_test_argument_range): Add acospi/asinpi. + (edom_only_function): Add acospi/asinpi/cospi/sinpi. + (get_no_error_domain): Add acospi/asinpi. + +2025-06-30 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120242 + PR rtl-optimization/120627 + PR rtl-optimization/120736 + PR rtl-optimization/120813 + * ext-dce.cc (ext_dce_process_uses): Remove some cases where we + unnecessarily expanded live sets for promoted subregs. + (expand_changed_pseudos): New function. + (reset_subreg_promoted_p): Use it. + +2025-06-30 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR target/120714 + * config/riscv/riscv.cc (riscv_allocate_and_probe_stack_space): + Fix SP-addresses in REG_CFA_DEF_CFA notes for stack-clash case. + +2025-06-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-color.cc: Use nullptr rather than NULL. + * diagnostic-format-sarif.cc: Likewise. + * diagnostic-format-text.cc: Likewise. + * diagnostic-macro-unwinding.cc: Likewise. + * diagnostic-path-output.cc: Likewise. + * diagnostic-path.cc: Likewise. + * diagnostic-show-locus.cc: Likewise. + * diagnostic-spec.cc: Likewise. + * diagnostic.cc: Likewise. + * lazy-diagnostic-path.cc: Likewise. + * simple-diagnostic-path.cc: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + +2025-06-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-sarif.cc + (sarif_builder::maybe_make_kinds_array): Convert + diagnostic_event::meaning enums to enum class. + * diagnostic-path-output.cc (path_label::get_text): Likewise. + * diagnostic-path.cc + (diagnostic_event::meaning::maybe_get_verb_str): Likewise. + (diagnostic_event::meaning::maybe_get_noun_str): Likewise. + (diagnostic_event::meaning::maybe_get_property_str): Likewise. + * diagnostic-path.h (diagnostic_event::verb): Likewise. + (diagnostic_event::noun): Likewise. + (diagnostic_event::property): Likewise. + (diagnostic_event::meaning): Likewise. + +2025-06-30 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Drop diagnostic-format-json.o. + * common.opt (fdiagnostics-format=): Drop + "json|json-stderr|json-file". + (diagnostics_output_format): Drop values "json", "json-stderr", + and "json-file". + * diagnostic-format-json.cc: Delete file. + * diagnostic-format.h + (diagnostic_output_format_init_json_stderr): Delete. + (diagnostic_output_format_init_json_file): Delete. + * diagnostic.cc (diagnostic_output_format_init): Delete cases for + DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR and + DIAGNOSTICS_OUTPUT_FORMAT_JSON_FILE. + * diagnostic.h (DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR): Delete. + (DIAGNOSTICS_OUTPUT_FORMAT_JSON_FILE): Delete. + * doc/invoke.texi: Remove references to json output format. + * doc/ux.texi: Likewise. + * selftest-run-tests.cc (selftest::run_tests): Drop call to + deleted selftest::diagnostic_format_json_cc_tests. + * selftest.h (selftest::diagnostic_format_json_cc_tests): Delete. + +2025-06-30 Mark Wielaard <mark@klomp.org> + + * common.opt.urls: Regenerate. + +2025-06-30 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add + new case US_MINUS. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op us_minus. + +2025-06-30 Peter Bergner <bergner@linux.ibm.com> + + PR target/109116 + * config/rs6000/mma.md (unspec): Delete UNSPEC_MMA_EXTRACT. + (vsx_disassemble_pair): Expand into a vector register sized subreg. + (mma_disassemble_acc): Likewise. + (*vsx_disassemble_pair): Delete. + (*mma_disassemble_acc): Likewise. + +2025-06-30 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/sifive-7.md: Add primary vector pipeline model + for SiFive 7 series. + +2025-06-30 Kito Cheng <kito.cheng@sifive.com> + + PR target/120659 + * config/riscv/sifive-7.md: Add B extension, fp16 and missing + scalar instruction type for sifive-7 pipeline model. + +2025-06-30 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_build_slp_2): Handle ternary + and call operators when swapping operands. + +2025-06-30 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*vfnmsub_<mode>,*vfnmadd_<mode>): Handle + both add and acc variants. + * config/riscv/vector.md (*pred_mul_neg_<optab><mode>_scalar_undef): New + pattern. + +2025-06-30 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-cores.def (gb10): New entry. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi (AArch64 Options): Document the above. + +2025-06-30 Jakub Jelinek <jakub@redhat.com> + + PR c/120520 + PR c/117023 + * builtin-attrs.def (DEF_LIST_INT_INT_INT): Define it and + use for 1,2,3. + (ATTR_NONNULL_IF123_LIST): New DEF_ATTR_TREE_LIST. + (ATTR_NONNULL_4_IF123_LIST): Likewise. + * builtins.def (BUILT_IN_FWRITE): Use ATTR_NONNULL_4_IF123_LIST + instead of ATTR_NONNULL_LIST. + (BUILT_IN_FWRITE_UNLOCKED): Likewise. + * gimple.h (infer_nonnull_range_by_attribute): Add another optional + tree * argument defaulted to NULL. + * gimple.cc (infer_nonnull_range_by_attribute): Add OP3 argument, + handle 3 argument nonnull_if_nonzero attribute. + * builtins.cc (validate_arglist): Handle 3 argument nonnull_if_nonzero + attribute. + * tree-ssa-ccp.cc (pass_post_ipa_warn::execute): Likewise. + * ubsan.cc (instrument_nonnull_arg): Adjust + infer_nonnull_range_by_attribute caller, handle 3 argument + nonnull_if_nonzero attribute. + * gimple-range-infer.cc (gimple_infer_range::gimple_infer_range): + Handle 3 argument nonnull_if_nonzero attribute. + * doc/extend.texi (nonnull_if_nonzero): Document 3 argument version + of the attribute. + +2025-06-30 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120733 + * lra-eliminations.cc (move_plus_up): Check whether lowpart_subreg + returns null. + +2025-06-30 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (autofdo_source_profile::offline_external_functions): + Add missing newline in dump. + (afdo_propagate_edge): If annotated BB or edge has too small count + bump it up to mitigate profile imprecisions caused by vectorizer. + (afdo_propagate): Increase number of iteraitons and fix dump + +2025-06-30 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (struct decl_lineno): Turn to structure; add + location. + (dump_inline_stack): Update. + (get_inline_stack): Update. + (get_relative_location_for_locus): Fixup formating. + (function_instance::get_function_instance_by_decl): Add + LOCATION parameter; improve dumping. + (autofdo_source_profile::get_callsite_total_count): Improve dumping; + update. + (walk_block): Update. + (autofdo_source_profile::offline_unrealized_inlines): Update. + (autofdo_source_profile::get_count_info): Update. + +2025-06-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/120840 + * config/i386/i386-expand.cc (ix86_expand_call): Don't mark + hard frame pointer as clobber. + * config/i386/i386-options.cc (ix86_set_func_type): Use + TYPE_NO_CALLEE_SAVED_REGISTERS instead of + TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. + * config/i386/i386.cc (ix86_function_ok_for_sibcall): Remove the + TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP check. + (ix86_save_reg): Merge TYPE_NO_CALLEE_SAVED_REGISTERS and + TYPE_PRESERVE_NONE with TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. + * config/i386/i386.h (call_saved_registers_type): Remove + TYPE_NO_CALLEE_SAVED_REGISTERS_EXCEPT_BP. + * doc/extend.texi: Update no_callee_saved_registers documentation. + +2025-06-30 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/riscv-vsetvl.cc (bitmap_union_of_preds_with_entry): + Refactor. + +2025-06-30 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/pipeline-checker: New file. + +2025-06-28 H.J. Lu <hjl.tools@gmail.com> + + PR debug/120849 + * print-tree.cc (debug): New. + * print-tree.h (debug): Likewise. + +2025-06-28 Georg-Johann Lay <avr@gjlay.de> + + PR target/120856 + * config/avr/avr.cc (avr_hard_regno_mode_ok) [-mno-lra]: Deny + hard regs >= 4 bytes that overlap Y. + +2025-06-28 Jan Hubicka <hubicka@ucw.cz> + Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * auto-profile.cc (get_original_name): Only strip suffixes introduced + after auto-fdo annotation. + (string_table::get_index_by_decl): Simplify. + (string_table::add_name): New member function. + (string_table::read): Micro-optimize allocation. + (function_instance::get_function_instance_by_decl): Dump reasons + for failure; try to compensate lost discriminators. + (function_instance::merge): Simplify sanity check; do not check + for realized flag; fix merging of targets. + (function_instance::offline_if_in_set): Simplify. + (function_instance::dump): Sanity check that names are consistent. + (autofdo_source_profile::offline_external_functions): Also handle + stripping suffixes. + (walk_block): Move up in source. + (autofdo_source_profile::offline_unrealized_inlines): Also compute + realized functions. + (autofdo_source_profile::get_function_instance_by_name_index): Simplify. + (autofdo_source_profile::add_function_instance): Simplify. + (autofdo_source_profile::read): Do not strip suffxies; error on duplicates. + (mark_realized_functions): Remove. + (auto_profile): Do not call mark_realized_functions. + * passes.def: Move auto_profile_offline before free_lang_data. + +2025-06-27 Eric Botcazou <ebotcazou@adacore.com> + + * gimple-fold.cc (fold_const_aggregate_ref_1) <COMPONENT_REF>: + Bail out immediately if the reference has reverse storage order. + * tree-ssa-sccvn.cc (fully_constant_vn_reference_p): Likewise. + +2025-06-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/120777 + * gimple-fold.cc (gimple_get_virt_method_for_vtable): Revert + 2018-09-18 changes. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98735 + PR c++/118904 + * tree.cc (struct identifier_hash): New type. + (struct identifier_count_traits): New traits. + (internal_label_nums): New hash map. + (generate_internal_label): New function. + (prefix_for_internal_label): New function. + * tree.h (IDENTIFIER_INTERNAL_P): New macro. + (generate_internal_label): Declare. + (prefix_for_internal_label): Declare. + * ubsan.cc (ubsan_ids): Remove. + (ubsan_type_descriptor): Use generate_internal_label. + (ubsan_create_data): Likewise. + +2025-06-27 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (function_instance::set_name, + function_instance::set_realized, function_instnace::realized_p, + function_instance::set_in_worklist, + function_instance::clear_in_worklist, + function_instance::in_worklist_p): New member functions. + (function_instance::in_worklist, function_instance::realized_): + new. + (get_relative_location_for_locus): Break out from .... + (get_relative_location_for_stmt): ... here. + (function_instance::~function_instance): Sanity check that + removed function is not in worklist. + (function_instance::merge): Do not offline realized instances. + (function_instance::offline): Make private; add duplicate functions + to worklist rather then merging immediately. + (function_instance::offline_if_in_set): Cleanup. + (function_instance::remove_external_functions): Likewise. + (function_instance::offline_if_not_realized): New member function. + (autofdo_source_profile::offline_external_functions): Handle delayed + functions. + (autofdo_source_profile::offline_unrealized_inlines): New member function. + (walk_block): New function. + (mark_realized_functions): New function. + (afdo_annotate_cfg): Fix dump. + (auto_profile): Mark realized functions and offline rest; do not compute + fn summary. + +2025-06-27 Georg-Johann Lay <avr@gjlay.de> + + PR target/113934 + * config/avr/avr.opt (-mlra): Turn on per default. + +2025-06-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120808 + * tree-vect-slp-patterns.cc (vect_match_expression_p): + Take a code_helper and also match calls. + (addsub_pattern::recognize): Handle .FMA/.FMS pairs + in addition to PLUS/MINUS. + (addsub_pattern::build): Adjust. + +2025-06-27 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (vect_chooses_same_modes_p): New + overload. + * tree-vect-stmts.cc (vect_chooses_same_modes_p): Likewise. + * tree-vect-loop.cc (vect_analyze_loop): Prune epilogue + analysis further when not using partial vectors. + +2025-06-27 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop): Consider AVX512 + style masking when computing supports_partial_vectors. + +2025-06-27 Tamar Christina <tamar.christina@arm.com> + + * doc/extend.texi: Fix typo in unsed attribute docs. + +2025-06-27 H.J. Lu <hjl.tools@gmail.com> + + PR target/120830 + * config/i386/i386-features.cc (ix86_get_vector_cse_mode): Handle + vector broadcast source. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (elimination_2sp_occurred_p): Rename + from... + (elimination_fp2sp_occured_p): ... this. Adjust all uses. + (lra_eliminate_regs_1): Don't require a from-frame-pointer + elimination to set it. + (update_reg_eliminate): Likewise to test it. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (lra_eliminate_regs_1): Adjust autoinc + addresses that are MEMs. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (lra_update_fp2sp_elimination): Reorder + and regroup related statements. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (lra_update_fp2sp_elimination): + Avoid sp offsets in further fp2sp eliminations... + (update_reg_eliminate): ... and restore to_rtx before assert + checking. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (lra_update_fp2sp_elimination): + Compute complete live ranges and recompute slots' live ranges + if needed. + * lra-lives.cc (lra_reset_live_range_list): New. + (lra_complete_live_ranges): New. + * lra-spills.cc (assign_spill_hard_regs): Reject empty live + ranges. + (add_pseudo_to_slot): Likewise. + (lra_recompute_slots_live_ranges): New. + * lra-int.h (lra_reset_live_range_list): Declare. + (lra_complete_live_ranges): Declare. + (lra_recompute_slots_live_ranges): Declare. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * genoutput.cc (scan_operands): Make MATCH_SCRATCHes eliminable. + +2025-06-27 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lra-eliminations.cc (lra_update_fp2sp_elimination): + Inactivate the unused fp2sp elimination right away. + +2025-06-26 Dimitar Dimitrov <dimitar@dinux.eu> + + * config/pru/pru.md (reg move splitter): New splitter for 64-bit + register moves into two 32-bit moves. + (const_int move splitter): New splitter for 64-bit constant + integer moves into two 32-bit moves. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (diagnostic_context::set_permissive_option): New. + (diagnostic_context::set_fatal_errors): New. + (diagnostic_context::set_internal_error_callback): New. + (diagnostic_context::set_adjust_diagnostic_info_callback): New. + (diagnostic_context::inhibit_notes): New. + (diagnostic_context::m_opt_permissive): Make private. + (diagnostic_context::m_fatal_errors): Likewise. + (diagnostic_context::m_internal_error): Likewise. + (diagnostic_context::m_adjust_diagnostic_info): Likewise. + (diagnostic_context::m_inhibit_notes_p): Likewise. + (diagnostic_inhibit_notes): Delete. + * opts.cc (common_handle_option): Use + diagnostic_context::set_fatal_errors. + * toplev.cc (internal_error_function): Use + diagnostic_context::set_internal_error_callback. + (general_init): Likewise. + (process_options): Use diagnostic_context::inhibit_notes. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/120809 + * diagnostic-format-html.cc + (html_builder::maybe_make_state_diagram): Bulletproof against the + SVG generation failing. + * xml.cc (xml::printer::push_element): Assert that the ptr is + nonnull. + (xml::printer::append): Likewise. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-output-spec.cc (sarif_scheme_handler::make_sink): + Split out creation of sarif_generation_options and + sarif_serialization_format into... + (sarif_scheme_handler::make_sarif_gen_opts): ...this... + (sarif_scheme_handler::make_sarif_serialization_object): ...and + this. + +2025-06-26 Paul-Antoine Arras <parras@baylibre.com> + + PR target/120828 + * config/riscv/riscv-v.cc (prepare_ternary_operands): Handle the + vector-scalar case. + +2025-06-26 Uros Bizjak <ubizjak@gmail.com> + + PR target/120719 + * config/i386/i386.md (crc_rev<SWI124:mode>si4): New expander. + +2025-06-26 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.md: Fix build issue. + +2025-06-26 Martin Jambor <mjambor@suse.cz> + + * lto-ltrans-cache.h (class ltrans_file_cache): Remove member prefix. + * lto-ltrans-cache.cc (ltrans_file_cache::ltrans_file_cache): Do + not initialize member prefix. + +2025-06-26 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.md: Add comment and reorder include + files. + +2025-06-26 Martin Jambor <mjambor@suse.cz> + + * tree-vect-stmts.cc (supportable_indirect_convert_operation): + Remove an unused shadowed variable. + +2025-06-26 Martin Jambor <mjambor@suse.cz> + + * tree-vect-slp.cc (cond_expr_maps): Remove. + +2025-06-26 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (function_instance::merge): Add TODO. + (autofdo_source_profile::offline_external_functions): + Do not use range for on the worklist. + * timevar.def (TV_IPA_AUTOFDO_OFFLINE): New timevar. + +2025-06-26 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (name_index_set, name_index_map): New types. + (dump_afdo_loc): New function. + (dump_inline_stack): Simplify. + (function_instance::merge): Merge recursively inlined functions; + offline if necessary; collect new fnctions. + (function_instance::offline): New member function. + (function_instance::offline_if_in_set): New member function. + (function_instance::remove_external_functions): New member function. + (function_instance::dump): New member function. + (function_instance::debug): New member function. + (function_instance::dump_inline_stack): New member function. + (function_instance::find_icall_target_map): Use removed_icall_target. + (function_instance::remove_icall_target): Only mark icall target removed. + (autofdo_source_profile::offline_external_functions): New function. + (function_instance::read_function_instance): Record inlined_to pointers; + use -1 for unknown head counts. + (autofdo_source_profile::get_function_instance_by_name_index): New + function. + (autofdo_source_profile::add_function_instance): New member function. + (autofdo_source_profile::read): Do not leak memory; fix formatting. + (read_profile): Fix formatting. + (afdo_annotate_cfg): LIkewise. + (class pass_ipa_auto_profile_offline): New pass. + (make_pass_ipa_auto_profile_offline): New function. + * passes.def (pass_ipa_auto_profile_offline): Add + * tree-pass.h (make_pass_ipa_auto_profile): Declare + +2025-06-26 H.J. Lu <hjl.tools@gmail.com> + + PR target/120819 + * config/i386/i386-features.cc (ix86_broadcast_inner): Also handle + all 1s float vector constant. + +2025-06-26 H.J. Lu <hjl.tools@gmail.com> + + PR target/120816 + * config/i386/i386-features.cc (remove_redundant_vector_load): + Handle REG_EH_REGION note in DEF_INSN. + +2025-06-26 H.J. Lu <hjl.tools@gmail.com> + + PR target/119628 + * config/i386/i386-expand.cc (ix86_expand_call): Call + ix86_type_no_callee_saved_registers_p instead of looking up + no_callee_saved_registers attribute. + * config/i386/i386-options.cc (ix86_set_func_type): Look up + preserve_none attribute. Check preserve_none attribute for + interrupt attribute. Don't check no_caller_saved_registers nor + no_callee_saved_registers conflicts here. + (ix86_set_func_type): Check no_callee_saved_registers before + checking no_caller_saved_registers attribute. + (ix86_set_current_function): Allow SSE with + no_caller_saved_registers attribute. + (ix86_handle_call_saved_registers_attribute): Check preserve_none, + no_callee_saved_registers and no_caller_saved_registers conflicts. + (ix86_gnu_attributes): Add preserve_none attribute. + * config/i386/i386-protos.h (ix86_type_no_callee_saved_registers_p): + New. + * config/i386/i386.cc + (x86_64_preserve_none_int_parameter_registers): New. + (ix86_using_red_zone): Don't use red-zone when there are no + caller-saved registers with SSE. + (ix86_type_no_callee_saved_registers_p): New. + (ix86_function_ok_for_sibcall): Also check TYPE_PRESERVE_NONE + and call ix86_type_no_callee_saved_registers_p instead of looking + up no_callee_saved_registers attribute. + (ix86_comp_type_attributes): Call + ix86_type_no_callee_saved_registers_p instead of looking up + no_callee_saved_registers attribute. Return 0 if preserve_none + attribute doesn't match in 64-bit mode. + (ix86_function_arg_regno_p): For cfun with TYPE_PRESERVE_NONE, + use x86_64_preserve_none_int_parameter_registers. + (init_cumulative_args): Set preserve_none_abi. + (function_arg_64): Use x86_64_preserve_none_int_parameter_registers + with preserve_none attribute. + (setup_incoming_varargs_64): Use + x86_64_preserve_none_int_parameter_registers with preserve_none + attribute. + (ix86_save_reg): Treat TYPE_PRESERVE_NONE like + TYPE_NO_CALLEE_SAVED_REGISTERS. + (ix86_nsaved_sseregs): Allow saving XMM registers for + no_caller_saved_registers attribute. + (ix86_compute_frame_layout): Likewise. + (x86_this_parameter): Use + x86_64_preserve_none_int_parameter_registers with preserve_none + attribute. + * config/i386/i386.h (ix86_args): Add preserve_none_abi. + (call_saved_registers_type): Add TYPE_PRESERVE_NONE. + (machine_function): Change call_saved_registers to 3 bits. + * doc/extend.texi: Add preserve_none attribute. Update + no_caller_saved_registers attribute to remove -mgeneral-regs-only + restriction. + +2025-06-25 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386-features.cc (ix86_place_single_vector_set): + Add debug dump. + (replace_vector_const): Likewise. + (remove_redundant_vector_load): Likewise. + +2025-06-25 Luis Silva <luiss@synopsys.com> + + * config/arc/arc.md (<su_optab>mulvsi4): New define_expand. + (<su_optab>mulsi3_Vcmp): New define_insn. + +2025-06-25 Luis Silva <luiss@synopsys.com> + + * config/arc/arc.cc (arc_select_cc_mode): Handle multiplication + results compared against zero, selecting CC_Zmode. + * config/arc/arc.md (*mulsi3_cmp0): New define_insn. + (*mulsi3_cmp0_noout): New define_insn. + +2025-06-25 Shahab Vahedi <shahab@synopsys.com> + + * config/arc/arc.md (subsi3_v, subvsi4, subsi3_c): New patterns. + +2025-06-25 Shahab Vahedi <shahab@synopsys.com> + + * config/arc/arc-modes.def (CC_V): New mode. + * config/arc/arc-protos.h (arc_gen_unlikely_cbranch): New + function declaration. + * config/arc/arc.cc (arc_gen_unlikely_cbranch): New + function. + (get_arc_condition_code): Handle new mode. + * config/arc/arc.md (addvsi3_v, addvsi4, addsi3_c, uaddvsi4): New + patterns. + * config/arc/predicates.md (proper_comparison_operator): Handel + the new V_mode. + (equality_comparison_operator): Likewise. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * diagnostic-path-output.cc (path_label::get_effects): Mark as + final override. + * diagnostic-format-html.cc + (html_output_format::after_diagnostic): Likewise. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * gimple-range-op.cc + (gimple_range_op_handler::maybe_builtin_call): Use + CFN_BUILT_IN_ISINF instead of BUILT_IN_ISINF. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * value-relation.h (class dom_oracle): Mark member function + next_relation as override. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * tree-ssa-propagate.h (class substitute_and_fold_engine): Mark + member functions value_of_expr and range_of_expr as override. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * range-op-mixed.h (class operator_plus): Mark member function + overflow_free_p as final override. + (class operator_minus): Likewise. + (class operator_mult): Likewise. + * range-op-ptr.cc (class pointer_plus_operator): Mark member + function lhs_op1_relation as final override. + * range-op.cc (class operator_div::): Mark member functions + op2_range and update_bitmask as final override. + (class operator_logical_and): Mark member functions fold_range, + op1_range and op2_range as final override. Remove unnecessary + virtual. + (class operator_logical_or): Likewise. + (class operator_logical_not): Mark member functions fold_range and + op1_range as final override. Remove unnecessary virtual. + formatting easier. + (class operator_absu): Mark member functions wi_fold as final + override. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * gimple-ssa-sccopy.cc (class pass_sccopy): Mark member functions + gate and execute as final override. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * avoid-store-forwarding.cc (class + pass_rtl_avoid_store_forwarding): Mark member function gate as + final override. + +2025-06-25 Andrew MacLeod <amacleod@redhat.com> + + * value-relation.cc (relation_to_code): Remove. + +2025-06-25 Andrew MacLeod <amacleod@redhat.com> + + * value-range.cc (frange::verify_range): Constify. + (irange::verify_range): Constify. + * value-range.h (vrange::verify_range): New. + (irange::verify_range): Make public. + (prange::verify_range): Make public. + (prange::verify_range): Make public. + (value_range::verify_range): New. + +2025-06-25 Andrew MacLeod <amacleod@redhat.com> + + * value-range.cc (irange::get_bitmask): Return original mask if + result is unknown. + (assert_snap_result): New. + (test_irange_snap_bounds): New. + (range_tests_misc): Call test_irange_snap_bounds. + +2025-06-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/109892 + * tree-vect-loop.cc (check_reduction_path): Handle fma. + (vectorizable_reduction): Apply FOLD_LEFT_REDUCTION code + generation constraints. + +2025-06-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120808 + * tree-vectorizer.h (compatible_calls_p): Add flag to + indicate a FMA/FMS pair is allowed. + * tree-vect-slp.cc (compatible_calls_p): Likewise. + (vect_build_slp_tree_1): Allow mixed .FMA/.FMS as two-operator. + (vect_build_slp_tree_2): Handle calls in two-operator SLP build. + * tree-vect-slp-patterns.cc (compatible_complex_nodes_p): + Adjust. + +2025-06-25 Alfie Richards <alfie.richards@arm.com> + + * tree-ssa-loop-ivopts.cc (constant_multiple_of): Change + tree_to_aff_combination to tree_to_aff_combination_expand and add + parameter to take ivopts_data. + (get_computation_aff_1): Change parameters and calls to include + ivopts_data. + (get_computation_aff): Ditto. + (get_computation_at) Ditto.: + (get_debug_computation_at) Ditto.: + (get_computation_cost) Ditto.: + (rewrite_use_nonlinear_expr) Ditto.: + (rewrite_use_address) Ditto.: + (rewrite_use_compare) Ditto.: + (remove_unused_ivs) Ditto.: + +2025-06-25 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120745 + * rtl-ssa/changes.cc (process_uses_of_deleted_def): Rewrite to + handle deletions of non-degenerate phis. + +2025-06-25 H.J. Lu <hjl.tools@gmail.com> + + PR target/120815 + * common/config/i386/i386-common.cc (processor_alias_table): + Replace CPU_SLM/PTA_NEHALEM with CPU_HASWELL/PTA_HASWELL for + PROCESSOR_INTEL. + * config/i386/i386-options.cc (processor_cost_table): Replace + intel_cost with alderlake_cost. + * config/i386/x86-tune-costs.h (intel_cost): Removed. + * config/i386/x86-tune-sched.cc (ix86_issue_rate): Treat + PROCESSOR_INTEL like PROCESSOR_ALDERLAKE. + (ix86_adjust_cost): Likewise. + * doc/invoke.texi: Update -mtune=intel for Diamond Rapids and + Clearwater Forest. + +2025-06-25 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386.h (PTA_ALDERLAKE): Use PTA_GOLDMONT_PLUS + as base to remove PTA_CLDEMOTE. + (PTA_SIERRAFOREST): Add PTA_CLDEMOTE since PTA_ALDERLAKE + does not include that anymore. + * doc/invoke.texi: Update texi file. + +2025-06-25 Jiawei <jiawei@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc: New Profiles. + +2025-06-25 Jan Hubicka <hubicka@ucw.cz> + + * common.opt: (fauto-profile-inlining): New + * doc/invoke.texi (-fauto-profile-inlining): Document. + * ipa-inline.cc (inline_functions_by_afdo): Check + flag_auto_profile. + (early_inliner): Also do inline_functions_by_afdo with + !flag_early_inlining. + +2025-06-25 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc: Update toplevel comment. + (early_inline): Remove. + (auto_profile): Don't do early inlining. + +2025-06-24 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-opts.h (TARGET_GLC_NAME): Fix and extend the + description in the comment. + * config/gcn/gcn.cc (print_operand): Extend the comment about + 'G' and 'g'. + * config/gcn/gcn.md: Use 'glc' instead of %G where appropriate. + +2025-06-24 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*<optab>_vf_<mode>): Handle both add and + acc FMA variants. + * config/riscv/vector.md (*pred_mul_<optab><mode>_scalar_undef): New. + +2025-06-24 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md + (@pro_epilogue_adjust_stack_add_nocc<mode>): Add type attribute. + (pro_epilogue_adjust_stack_add_nocc peephole2 pattern): + Convert pro_epilogue_adjust_stack_add_nocc variant to + pro_epilogue_adjust_stack_add when FLAGS_REG is dead. + +2025-06-24 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_load): Remove non-SLP + paths and propagate out ncopies == 1. + +2025-06-24 Marc Poulhiès <poulhies@adacore.com> + + * diagnostic-state-to-dot.cc (get_color_for_dynalloc_state): + Rename argument dynalloc_state to dynalloc_st. + (add_title_tr): Rename argument style to styl. + (on_xml_node): Rename local variable dynalloc_state to dynalloc_st. + +2025-06-24 Yuao Ma <c8ef@outlook.com> + + * tree-call-cdce.cc (edom_only_function): Remove atan. + +2025-06-24 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/vector.md (VF): Don't restrict modes. + (VEC_SET_SINGLEFLOAT): Ditto. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64.cc (aarch64_override_options_internal): Set + value of parameter based on option. + * config/aarch64/aarch64.opt (autovec-preference): New. + * doc/invoke.texi (autovec-preference): Document it. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64.opt (max-vectorization): New. + * config/aarch64/aarch64.cc (aarch64_override_options_internal): Save + and restore option. + Implement it through vect-scalar-cost-multiplier. + (aarch64_attributes): Default to off. + * common/config/aarch64/aarch64-common.cc (aarch64_handle_option): + Initialize option. + * doc/extend.texi (max-vectorization): Document attribute. + * doc/invoke.texi (max-vectorization): Document flag. + +2025-06-24 hongtao.liu <hongtao.liu@intel.com> + + PR target/115842 + * tree-ssa-loop-ivopts.cc (determine_group_iv_cost_address): + Don't recalculate inv_expr when group-candidate cost + calucalution. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * doc/extend.texi: Document pragma unroll interaction with vectorizer. + * tree-vectorizer.h (LOOP_VINFO_USER_UNROLL): New. + (class _loop_vec_info): Add user_unroll. + * tree-vect-loop.cc (vect_analyze_loop_1): Set + suggested_unroll_factor and retry. + (_loop_vec_info::_loop_vec_info): Initialize user_unroll. + (vect_transform_loop): Clear the loop->unroll value if the pragma was + used. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * tree-vect-loop-manip.cc (vect_gen_vector_loop_niters, + vect_gen_vector_loop_niters_mult_vf): Remove uses of log_vf. + +2025-06-24 H.J. Lu <hjl.tools@gmail.com> + + PR target/92080 + * config/i386/i386-expand.cc (ix86_expand_call): Set + recursive_function to true for recursive call. + * config/i386/i386-features.cc (ix86_place_single_vector_set): + Add an argument for inner scalar, default to nullptr. Set the + source from inner scalar if not nullptr. + (ix86_get_vector_load_mode): Renamed to ... + (ix86_get_vector_cse_mode): This. Add an argument for scalar mode + and handle integer and float scalar modes. + (replace_vector_const): Add an argument for scalar mode and pass + it to ix86_get_vector_load_mode. + (x86_cse_kind): New. + (redundant_load): Likewise. + (ix86_broadcast_inner): Likewise. + (remove_redundant_vector_load): Also support const0_rtx and + constm1_rtx broadcasts. Handle vector broadcasts from constant + and variable scalars. + * config/i386/i386.h (machine_function): Add recursive_function. + +2025-06-24 H.J. Lu <hjl.tools@gmail.com> + + PR target/70308 + PR target/101366 + PR target/102294 + PR target/108585 + PR target/118276 + PR target/119596 + PR target/119703 + PR target/119704 + * config/i386/x86-tune-costs.h (generic_memcpy): Updated. + (generic_memset): Likewise. + (generic_cost): Change CLEAR_RATIO to 10. + +2025-06-24 Jan Hubicka <hubicka@ucw.cz> + + * tree-inline.cc (expand_call_inline): Preserve discriminator. + +2025-06-24 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_set_bb_count): Dump also 0 count stmts. + (afdo_annotate_cfg): Fix conditional for block having non-zero static + profile. + +2025-06-24 Lili Cui <lili.cui@intel.com> + + PR target/120741 + * config/i386/i386.cc (ix86_expand_prologue): + Remove 1 assertion. + +2025-06-24 Jeff Law <jlaw@ventanamicro.com> + + PR target/118241 + * config/riscv/predicates.md: Fix comment typo in recent change. + +2025-06-23 Sam James <sam@gentoo.org> + Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120795 + * ext-dce.cc (ext_dce_try_optimize_insn): Enable rescan in + remove_reg_equal_equiv_notes call. + +2025-06-23 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + PR testsuite/116163 + PR sarif-replay/120792 + * Makefile.in (OBJS-libcommon): Add diagnostic-output-spec.o. + * diagnostic-format-html.cc (html_builder::html_builder): Ensure + title is non-empty. + * diagnostic-output-spec.cc: New file, taken from material in + opts-diagnostic.cc. + * diagnostic-output-spec.h: New file. + * diagnostic.cc (diagnostic_context::set_main_input_filename): + New. + * diagnostic.h (diagnostic_context::set_main_input_filename): New + decl. + * doc/libgdiagnostics/topics/compatibility.rst + (LIBGDIAGNOSTICS_ABI_2): New. + * doc/libgdiagnostics/topics/diagnostic-manager.rst + (diagnostic_manager_add_sink_from_spec): New. + (diagnostic_manager_set_analysis_target): New. + * libgdiagnostics++.h (manager::add_sink_from_spec): New. + (manager::set_analysis_target): New. + * libgdiagnostics.cc: Include "diagnostic-output-spec.h". + (struct spec_context): New. + (diagnostic_manager_add_sink_from_spec): New. + (diagnostic_manager_set_analysis_target): New. + * libgdiagnostics.h + (LIBDIAGNOSTICS_HAVE_diagnostic_manager_add_sink_from_spec): New + define. + (diagnostic_manager_add_sink_from_spec): New decl. + (LIBDIAGNOSTICS_HAVE_diagnostic_manager_set_analysis_target): New + define. + (diagnostic_manager_set_analysis_target): New decl. + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_2): New. + * libsarifreplay.cc (sarif_replayer::handle_artifact_obj): Looks + for "analysisTarget" in roles and call set_analysis_target using + the artifact if found. + * opts-diagnostic.cc: Refactor, moving material to + diagnostic-output-spec.cc. + (struct opt_spec_context): New. + (handle_OPT_fdiagnostics_add_output_): Use opt_spec_context. + (handle_OPT_fdiagnostics_set_output_): Likewise. + * sarif-replay.cc: Define INCLUDE_STRING. + (struct options): Add m_extra_output_specs. + (usage_msg): Add -fdiagnostics-add-output=SCHEME. + (str_starts_with): New. + (parse_options): Add -fdiagnostics-add-output=SCHEME. + (main): Likewise. + * selftest-run-tests.cc (selftest::run_tests): Call + diagnostic_output_spec_cc_tests rather than + opts_diagnostic_cc_tests. + * selftest.h (selftest::diagnostic_output_spec_cc_tests): + Replace... + (selftest::opts_diagnostic_cc_tests): ...this. + +2025-06-23 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * Makefile.in (ANALYZER_OBJS): Add + analyzer/ana-state-to-diagnostic-state.o. + (OBJS): Move graphviz.o to... + (OBJS-libcommon): ...here. Add diagnostic-state-to-dot.o and pex.o. + * diagnostic-format-html.cc: Include "diagnostic-state.h" and + "graphviz.h". + (html_generation_options::html_generation_options): Initialize the + new flags. + (HTML_SCRIPT): Add function "get_any_state_diagram". Use it + when changing current focus id to update the visibility of the + pertinent diagram, if any. + (print_pre_source): New. + (html_builder::maybe_make_state_diagram): New. + (html_path_label_writer::html_path_label_writer): Add "path" param. + Initialize m_path and m_curr_event_id. + (html_path_label_writer::begin_label): Store current event id. + (html_path_label_writer::end_label): Attempt to make a state + diagram and add it if successful. + (html_path_label_writer::get_element_id): New. + (html_path_label_writer::m_path): New field. + (html_path_label_writer::m_curr_event_id): New field. + (html_builder::make_element_for_diagnostic): Pass path to label + writer. + * diagnostic-format-html.h + (html_generation_options::m_show_state_diagrams): New field. + (html_generation_options::m_show_state_diagram_xml): New field. + (html_generation_options::m_show_state_diagram_dot_src): New field. + * diagnostic-format-sarif.cc: Include "xml.h". + (populate_thread_flow_location_object): If requested, attempt to + generate xml state and add it to the proeprty bag as + "gcc/diagnostic_event/xml_state" in xml source form. + (sarif_generation_options::sarif_generation_options): Initialize + m_xml_state. + * diagnostic-format-sarif.h + (sarif_generation_options::m_xml_state): New field. + * diagnostic-path.cc: Define INCLUDE_MAP. Include "xml.h". + (diagnostic_event::maybe_make_xml_state): New. + * diagnostic-path.h (class xml::document): New forward decl. + (diagnostic_event::maybe_make_xml_state): New vfunc decl. + * diagnostic-state-to-dot.cc: New file. + * diagnostic-state.h: New file. + * digraph.cc: Define INCLUDE_STRING and INCLUDE_VECTOR. + * doc/analyzer.texi: Document state diagrams in html output. + (__analyzer_dump_dot): New. + (__analyzer_dump_xml): New. + * doc/invoke.texi (sarif): Add "xml-state" key. + (experimental-html): Add keys "show-state-diagrams", + "show-state-diagrams-dot-src" and "show-state-diagrams-xml". + * graphviz.cc: Define INCLUDE_MAP, INCLUDE_STRING, and + INCLUDE_VECTOR. Include "xml.h", "xml-printer.h", "pex.h" and + "selftest.h". + (graphviz_out::graphviz_out): Extract... + (dot::writer::writer): ...this. + (graphviz_out::write_indent): Convert to... + (dot::writer::write_indent): ...this. + (graphviz_out::print): Use get_pp. + (graphviz_out::println): Likewise. + (graphviz_out::begin_tr): Likewise. + (graphviz_out::end_tr): Likewise. + (graphviz_out::begin_td): Likewise. + (graphviz_out::end_td): Likewise. + (graphviz_out::begin_trtd): Likewise. + (graphviz_out::end_tdtr): Likewise. + (dot::ast_node::dump): New. + (dot::id::id): New. + (dot::id::print): New. + (dot::id::is_identifier_p): New. + (dot::kv_pair::print): New. + (dot::attr_list::print): New. + (dot::stmt_list::print): New. + (dot::stmt_list::add_edge): New. + (dot::stmt_list::add_attr): New. + (dot::graph::print): New. + (dot::stmt_with_attr_list::set_label): New. + (dot::node_stmt::print): New. + (dot::attr_stmt::print): New. + (dot::kv_stmt::print): New. + (dot::node_id::print): New. + (dot::port::print): New. + (dot::edge_stmt::print): New. + (dot::subgraph::print): New. + (dot::make_svg_document_buffer_from_graph): New. + (dot::make_svg_from_graph): New. + (selftest:test_ids): New. + (selftest:test_trivial_graph): New. + (selftest:test_layout_example): New. + (selftest:graphviz_cc_tests): New. + * graphviz.h (xml::node): New forward decl. + (class graphviz_out): Split out into... + (class dot::writer): ...this new class + (struct dot::ast_node): New. + (struct dot::id): New. + (struct dot::kv_pair): New. + (struct dot::attr_list): New. + (struct dot::stmt_list): New. + (struct dot::graph): New. + (struct dot::stmt): New. + (struct dot::stmt_with_attr_list): New. + (struct dot::node_stmt): New. + (struct dot::attr_stmt): New. + (struct dot::kv_stmt): New. + (enum class dot::compass_pt): New. + (struct dot::port): New. + (struct dot::node_id): New. + (struct dot::edge_stmt): New. + (struct dot::subgraph): New. + (dot::make_svg_from_graph): New. + * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Add + "xml-state" flag. + (html_scheme_handler::make_sink): Add flags "show-state-diagrams", + "show-state-diagram-dot-src", and "show-state-diagram-xml". + * pex.cc: New file. + * pex.h: New file. + * selftest-run-tests.cc (selftest::run_tests): Call + graphviz_cc_tests. + * selftest.h (selftest::graphviz_cc_tests): New decl. + * xml.cc (xml::node_with_children::add_comment): New. + (xml::node_with_children::find_child_element): New. + (xml::element::get_attr): New. + (xml::comment::write_as_xml): New. + (selftest::test_printer): Add coverage of find_child_element and + get_attr. + (selftest::test_comment): New. + (selftest::xml_cc_tests): Call test_comment. + * xml.h: New forward decls. + (xml::node::dyn_cast_text): Use nullptr. + (xml::node::dyn_cast_element): New vfunc. + (xml::node_with_children::add_comment): New decl. + (xml::node_with_children::find_child_element): New decl. + (xml::element::dyn_cast_element): New vfunc impl. + (xml::element::get_attr): New decl. + (struct xml::comment): New xml::node subclass. + +2025-06-23 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc (html_token_printer::print_tokens): + Handle pp_token::kind::event_id. + (selftest::test_token_printer): Add coverage of printing an event + id. + +2025-06-23 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case US_PLUS. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op us_plus. + +2025-06-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * tree-tailcall.cc (empty_eh_cleanup): Ignore .ASAN_MARK (POISON) + internal calls for the cfun->has_musttail case and diag_musttail. + (find_tail_calls): Likewise. + +2025-06-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * cfgexpand.cc: Include rtl-iter.h. + (expand_gimple_tailcall): Add ASAN_EPILOG_SEQ argument, if non-NULL + and expand_gimple_stmt emitted a tail call, emit a copy of that + insn sequence before the call sequence. + (expand_gimple_basic_block): Remove DISABLE_TAIL_CALLS argument, add + ASAN_EPILOG_SEQ argument. Disable tail call flag only on non-musttail + calls if that flag is set, pass it to expand_gimple_tailcall. + (pass_expand::execute): Pass VAR_RET_SEQ directly as last + expand_gimple_basic_block argument rather than its comparison with + NULL. + +2025-06-23 Pengfei Li <Pengfei.Li2@arm.com> + + * tree-vect-data-refs.cc (vect_peeling_supportable): Return new + enum values to indicate if combined peeling and versioning can + potentially support vectorization. + (vect_enhance_data_refs_alignment): Support combined peeling and + versioning in vectorization analysis. + * tree-vect-loop-manip.cc (vect_create_cond_for_align_checks): + Add a new type of runtime check for mutually aligned DRs. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Set + default value of allow_mutual_alignment in the initializer list. + * tree-vectorizer.h (enum peeling_support): Define type of + peeling support for function vect_peeling_supportable. + (LOOP_VINFO_ALLOW_MUTUAL_ALIGNMENT): New access macro. + +2025-06-23 Mikael Morin <morin-mikael@orange.fr> + + * match.pd (`-(-X)`, `~(~X)`, `conj(conj(X))`): Add a + NON_LVALUE_EXPR wrapper to the simplification of doubled unary + operators NEGATE_EXPR, BIT_NOT_EXPR and CONJ_EXPR. + +2025-06-23 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120729 + * gimple-predicate-analysis.h (uninit_analysis::prune_phi_opnds): + Add argument of work budget remaining. + * gimple-predicate-analysis.cc (uninit_analysis::prune_phi_opnds): + Likewise. Maintain and honor it throughout the recursion. + * params.opt (uninit-max-prune-work): New. + * doc/invoke.texi (uninit-max-prune-work): Document. + +2025-06-23 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120721 + * function.cc (instantiate_virtual_regs_in_insn): Use force_subreg + instead of simplify_gen_subreg when instantiating an rvalue SUBREG. + +2025-06-23 H.J. Lu <hjl.tools@gmail.com> + + PR target/120728 + * config/i386/i386.cc (ix86_get_ssemov): Use vmovdqu16/vmovdqu8 + only with EVEX register operands. + +2025-06-23 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386-options.cc (processor_cost_table): Add a + PROCESSOR_XXX comment to each entry. + +2025-06-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/119830 + * config/riscv/riscv.cc (riscv_build_integer_1): Make arithmetic in bclr case + clean for 32 bit hosts. + +2025-06-22 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120550 + * ext-dce.cc (ext_dce_try_optimize_insn): Drop REG_EQUAL/REG_EQUIV + notes on modified insns. + +2025-06-22 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.h (TARGET_DEPBITS): New macro. + * config/xtensa/xtensa.md (insvsi): New insn pattern. + +2025-06-22 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_zero_call_used_regs): + New prototype and function. + (TARGET_ZERO_CALL_USED_REGS): Define macro. + +2025-06-22 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (update_count_by_afdo_count): Make static; + add variant accepting profile_count. + (afdo_find_equiv_class): Use update_count_by_afdo_count. + (afdo_propagate_edge): Likewise. + (afdo_propagate): Likewise. + (afdo_calculate_branch_prob): Fix handling of all_known. + (afdo_annotate_cfg): Annotate by 0 where both afdo and static + profile agrees. + +2025-06-22 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_set_bb_count): Dump inline stacks + and reasons when lookup failed. + (afdo_set_bb_count): Record info about BBs with zero AFDO count. + (afdo_annotate_cfg): Set profile to global0_afdo if there are + no samples in profile. + +2025-06-22 Jan Hubicka <hubicka@ucw.cz> + + * ipa-profile.cc (ipa_profile): Use widest_int to avoid + possible overflows. + +2025-06-22 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (autofdo::afdo_count_scale): New. + (autofdo_source_profile::update_inlined_ind_target): Scale + counts. + (autofdo_source_profile::read): Set scale and dump + statistics. + (afdo_indirect_call): Scale. + (afdo_set_bb_count): Scale. + (afdo_find_equiv_class): Fix dumps. + (afdo_annotate_cfg): Scale. + +2025-06-22 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.cc (cgraph_node::make_profile_global0): Support + GUESSED_GLOBAL0_AFDO + * ipa-cp.cc (update_profiling_info): Use + GUESSED_GLOBAL0_AFDO. + * profile-count.cc (profile_probability::dump): Use + quality (). + (profile_probability::stream_in): Use m_adjusted_quality. + (profile_probability::stream_out): Use m_adjusted_quality. + (profile_count::combine_with_ipa_count): Use quality (). + (profile_probability::sqrt): Likewise. + * profile-count.h (enum profile_quality): Add + GUESSED_GLOBAL0_AFDO; reoder GUESSED_GLOBAL0_ADJUSTED and + GUESSED_GLOBAL0. + (profile_probability): Add min_quality; replase m_quality + by m_adjused_quality; add set_quality; update all users + of quality. + (profile_count): Set n_bits to 60; make m_quality 4 bits; + update uses of quality. + (profile_count::afdo_zero, profile_count::globa0afdo): New. + +2025-06-21 Jan Hubicka <hubicka@ucw.cz> + + * tree-inline.cc (copy_cfg_body): Fix profile of split functions. + +2025-06-21 Jeff Law <jlaw@ventanamicro.com> + + PR target/118241 + * config/riscv/predicates.md (prefetch_operand): New predicate. + * config/riscv/constraints.md (Q): New constraint. + * config/riscv/riscv.md (prefetch): Use new predicate and constraint. + (riscv_prefetchi_<mode>): Similarly. + +2025-06-21 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120746 + * value-range.cc (irange::snap): Use int type instead of uint. + +2025-06-21 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (dump_inline_stack): New function. + (get_inline_stack_in_node): New function. + (get_relative_location_for_stmt): Add FN parameter. + (has_indirect_call): Remove. + (function_instance::find_icall_target_map): Add FN parameter. + (function_instance::remove_icall_target): New function. + (function_instance::read_function_instance): Set sum_max. + (autofdo_source_profile::get_count_info): Add NODE parameter. + (autofdo_source_profile::update_inlined_ind_target): Add NODE parameter. + (autofdo_source_profile::remove_icall_target): New function. + (afdo_indirect_call): Add INDIRECT_EDGE parameter; dump reason + for failure; do not check for recursion; do not inline call. + (afdo_vpt): Add INDIRECT_EDGE parameter. + (afdo_set_bb_count): Do not take PROMOTED set. + (afdo_vpt_for_early_inline): Remove. + (afdo_annotate_cfg): Do not take PROMOTED set. + (auto_profile): Do not call afdo_vpt_for_early_inline. + (afdo_callsite_hot_enough_for_early_inline): Dump count. + (remove_afdo_speculative_target): New function. + * auto-profile.h (afdo_vpt_for_early_inline): Declare. + (remove_afdo_speculative_target): Declare. + * ipa-inline.cc (inline_functions_by_afdo): Do VPT. + (early_inliner): Redirecct edges if inlining happened. + * tree-inline.cc (expand_call_inline): Add sanity check. + +2025-06-21 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (get_inline_stack): Add fn parameter. + * ipa-inline.cc (want_early_inline_function_p): Do not care + about AFDO. + (inline_functions_by_afdo): New function. + (early_inliner): Use it. + +2025-06-21 Pan Li <pan2.li@intel.com> + + PR target/120652 + * config/riscv/autovec.md: Add immediate_operand for + select_vl operand 2. + +2025-06-20 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120701 + * value-range.cc (irange::verify_range): Verify range pairs are + sorted properly. + (irange::snap): Check for over/underflow properly. + +2025-06-20 Andrew Stubbs <ams@baylibre.com> + + PR target/120722 + * config/gcn/gcn.cc (gcn_hard_regno_mode_ok): Allow SImode in VCC_HI. + +2025-06-20 Jørgen Kvalsvik <j@lambda.is> + + PR gcov-profile/120634 + * prime-paths.cc (struct auto_vec_vec): Add constructor from + vec. + (test_split_components): Use auto_vec_vec. + (test_scc_internal_prime_paths): Ditto. + (test_scc_entry_exit_paths): Ditto. + (test_complete_prime_paths): Ditto. + (test_entry_prime_paths): Ditto. + (test_singleton_path): Ditto. + +2025-06-20 Jørgen Kvalsvik <j@lambda.is> + + PR gcov-profile/120634 + * prime-paths.cc (trie::paths): Use auto_vec. + +2025-06-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120654 + * vr-values.cc (range_fits_type_p): Check for undefined_p () + before accessing type (). + +2025-06-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/120708 + * config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Use + MOVE_MAX to get the widest vector mode in vector loop. + +2025-06-20 Stafford Horne <shorne@gmail.com> + + * config/or1k/or1k.cc (or1k_noce_conversion_profitable_p): New + function. + (or1k_is_cmov_insn): New function. + (TARGET_NOCE_CONVERSION_PROFITABLE_P): Define macro. + * config/or1k/or1k.md (cbranchsi4): Convert to insn_and_split. + (cbranch<mode>4): Convert to insn_and_split. + +2025-06-20 Stafford Horne <shorne@gmail.com> + + PR target/120587 + * config/or1k/or1k.md (zero_extendbisi2_sr_f): New expand. + (extendbisi2_sr_f): New expand. + * config/or1k/predicates.md (sr_f_reg_operand): New predicate. + +2025-06-20 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case UMIN. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op umin. + +2025-06-19 Jakub Jelinek <jakub@redhat.com> + + PR target/120689 + * function.cc (assign_parm_setup_block): Align parm to at least + word alignment even on !STRICT_ALIGNMENT targets, as long as + BITS_PER_WORD is not larger than MAX_SUPPORTED_STACK_ALIGNMENT. + +2025-06-19 H.J. Lu <hjl.tools@gmail.com> + + PR target/120427 + * config/i386/i386.md (*mov<mode>_and): Changed to + define_insn_and_split. Split it to "mov $0,mem" if not -Oz. + (*mov<mode>_or): Changed to define_insn_and_split. Split it + to "mov $-1,mem" if not -Oz. + (peephole2): Don't transform "mov $-1,reg" to "push $-1; pop reg" + for -Oz since it will be transformed to "or $-1,reg". + +2025-06-19 Georg-Johann Lay <avr@gjlay.de> + + PR other/115893 + * doc/install.texi (Prerequisites): Note that Texinfo older + than v7.1 may throw incorrect build warnings, cf. + https://lists.nongnu.org/archive/html/help-texinfo/2023-11/msg00004.html + +2025-06-19 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Add "generic" tune. + * config/riscv/riscv.cc: Add generic_tune_info. + * config/riscv/riscv.h (RISCV_TUNE_STRING_DEFAULT): Change default tune. + +2025-06-19 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120631 + * dfp.cc (decimal_real_to_integer): Use result multiplication not just + when precision > 128 and dn.exponent > 19, but when precision > 64 + and dn.exponent > 0. + +2025-06-19 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.cc (riscv_legitimize_move): Use + riscv_2x_xlen_mode_p. + (riscv_binary_cost): Ditto. + (riscv_hard_regno_mode_ok): Ditto. + +2025-06-19 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.cc (riscv_cost_model): Add cost model for + zilsd. + +2025-06-19 Lili Cui <lili.cui@intel.com> + + PR target/120697 + * config/i386/i386.cc (ix86_expand_prologue): + Remove 3 assertions and associated code. + +2025-06-18 Dimitar Dimitrov <dimitar@dinux.eu> + Richard Sandiford <richard.sandiford@arm.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR target/119966 + * emit-rtl.cc (validate_subreg): Call simplify_subreg_regno + instead of checking info.representable_p.. + * rtl.h (simplify_subreg_regno): Add new argument + allow_stack_regs. + * rtlanal.cc (simplify_subreg_regno): Do not reject + stack-related registers if allow_stack_regs is true. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + * value-range.cc (irange::intersect_bitmask): Always update the + stored mask to reflect the current calculated mask. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119039 + * value-range.cc (irange::contains_p): Call wide_int version of + contains_p for singleton ranges. + (irange::intersect): If either range is a singleton, use + contains_p. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119039 + * vr-values.cc (simplify_using_ranges::legacy_fold_cond): Remove. + (simplify_using_ranges::simplify_switch_using_ranges): Adjust. + +2025-06-18 Richard Biener <rguenther@suse.de> + + * tree-cfg.cc (dump_function_to_file): Use flags, not dump_flags. + +2025-06-18 Jan Beulich <jbeulich@suse.com> + + * doc/gcov.texi: Drop blank after @anchor. + +2025-06-18 Jan Beulich <jbeulich@suse.com> + + * doc/extend.texi: Fill first argument of @xref{}. + +2025-06-18 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120631 + * real.cc (decimal_from_integer): Add digits argument, if larger than + 256, use XALLOCAVEC allocated buffer. + (real_from_integer): Pass val_in's precision divided by 3 to + decimal_from_integer. + * dfp.cc (decimal_real_to_integer): For precision > 128 if finite + and exponent is large, decrease exponent and multiply resulting + wide_int by powers of 10^19. + +2025-06-18 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case SMIN. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op smin. + +2025-06-18 Lili Cui <lili.cui@intel.com> + Michael Matz <matz@suse.de> + + * config/i386/i386-protos.h (ix86_get_separate_components): + New function. + (ix86_components_for_bb): Likewise. + (ix86_disqualify_components): Likewise. + (ix86_emit_prologue_components): Likewise. + (ix86_emit_epilogue_components): Likewise. + (ix86_set_handled_components): Likewise. + * config/i386/i386.cc (save_regs_using_push_pop): + Split from ix86_compute_frame_layout. + (ix86_compute_frame_layout): + Use save_regs_using_push_pop. + (pro_epilogue_adjust_stack): + Use gen_pro_epilogue_adjust_stack_add_nocc. + (ix86_expand_prologue): Add some assertions and adjust + the stack frame at the beginning of the prolog for shrink + wrapping separate. + (ix86_emit_save_regs_using_mov): + Skip registers that are wrapped separately. + (ix86_emit_restore_regs_using_mov): Likewise. + (ix86_expand_epilogue): Add some assertions and set + restore_regs_via_mov to true for shrink wrapping separate. + (ix86_get_separate_components): New function. + (ix86_components_for_bb): Likewise. + (ix86_disqualify_components): Likewise. + (ix86_emit_prologue_components): Likewise. + (ix86_emit_epilogue_components): Likewise. + (ix86_set_handled_components): Likewise. + (TARGET_SHRINK_WRAP_GET_SEPARATE_COMPONENTS): Define. + (TARGET_SHRINK_WRAP_COMPONENTS_FOR_BB): Likewise. + (TARGET_SHRINK_WRAP_DISQUALIFY_COMPONENTS): Likewise. + (TARGET_SHRINK_WRAP_EMIT_PROLOGUE_COMPONENTS): Likewise. + (TARGET_SHRINK_WRAP_EMIT_EPILOGUE_COMPONENTS): Likewise. + (TARGET_SHRINK_WRAP_SET_HANDLED_COMPONENTS): Likewise. + * config/i386/i386.h (struct machine_function):Add + reg_is_wrapped_separately array for register wrapping + information. + * config/i386/i386.md + (@pro_epilogue_adjust_stack_add_nocc<mode>): New. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120661 + * value-range.cc (irange::snap): New. + (irange::snap_subranges): New. + (irange::set_range_from_bitmask): Call snap_subranges. + * value-range.h (snap, snap_subranges): New prototypes. + +2025-06-17 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_indirect_call): Compute speculative edge + probability. + (add_scale): Break out from ... + (scale_bbs): Break out from ... + (afdo_adjust_guessed_profile): ... here; use componet array instead of + current_component hash_map; handle components with only 0 profile; + be more agressive on finding scales along the boundary. + +2025-06-17 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.cc (cgraph_node::apply_scale): Special case scaling + to profile_count::zero (). + (cgraph_node::verify_node): Add extra compatibility check. + +2025-06-17 Umesh Kalappa <ukalappa.mips@gmail.com> + + * config/riscv/sync.md (lrsc_atomic_exchange<mode>): Use scratch + register for loop control rather than lr output. + +2025-06-17 Jason Merrill <jason@redhat.com> + + * diagnostic.h (diagnostic_option_classifier): Friend + diagnostic_context. + (diagnostic_context::get_classification_history): New. + +2025-06-17 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120677 + * gimple-crc-optimization.cc (crc_optimization::optimize_crc_loop): + Insert before gsi_after_labels instead of gsi_start_bb. Use + gimple_bb (output_crc) instead of output_crc->bb. Formatting fix. + +2025-06-17 Richard Sandiford <richard.sandiford@arm.com> + + PR target/113027 + * config/aarch64/aarch64-protos.h (aarch64_decompose_vec_struct_index): + Declare. + * config/aarch64/aarch64.cc (aarch64_decompose_vec_struct_index): New + function. + * config/aarch64/iterators.md (VEL, Vel): Add Advanced SIMD + structure modes. + * config/aarch64/aarch64-simd.md (vec_set<VSTRUCT_QD:mode>) + (vec_extract<VSTRUCT_QD:mode>): New patterns. + +2025-06-17 Tobias Burnus <tburnus@baylibre.com> + + * omp-offload.cc (omp_discover_declare_target_tgt_fn_r): Also + walk external functions that are declare inline (and have a + DECL_SAVED_TREE). + +2025-06-16 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-protos.h (aarch64_sve_valid_pred_p): + Declare helper for aarch64_predicate_operand. + (aarch64_sve_packed_pred): Declare helper for new expanders. + (aarch64_sve_fp_pred): Likewise. + * config/aarch64/aarch64-sve.md (<optab><mode><v_int_equiv>2): + Extend into... + (<optab><SVE_HSF:mode><SVE_HSDI:mode>2): New expander for converting + vectors of HF,SF to vectors of HI,SI,DI. + (<optab><VNx2DF_ONLY:mode><SVE_2SDI:mode>2): New expander for converting + vectors of SI,DI to vectors of DF. + (*aarch64_sve_<optab>_nontrunc<SVE_PARTIAL_F:mode><SVE_HSDI:mode>): + New pattern to match those we've added here. + (@aarch64_sve_<optab>_trunc<VNx2DF_ONLY:mode><VNx4SI_ONLY:mode>): Extend + into... + (@aarch64_sve_<optab>_trunc<VNx2DF_ONLY:mode><SVE_SI:mode>): Match both + VNx2SI<-VNx2DF and VNx4SI<-VNx4DF. + (<optab><v_int_equiv><mode>2): Extend into... + (<optab><SVE_HSDI:mode><SVE_F:mode>2): New expander for converting vectors + of HI,SI,DI to vectors of HF,SF,DF. + (*aarch64_sve_<optab>_nonextend<SVE_HSDI:mode><SVE_PARTIAL_F:mode>): New + pattern to match those we've added here. + (trunc<SVE_SDF:mode><SVE_PARTIAL_HSF:mode>2): New expander to handle + narrowing ('truncating') FP<-FP conversions. + (*aarch64_sve_<optab>_trunc<SVE_SDF:mode><SVE_PARTIAL_HSF:mode>): New + pattern to handle those we've added here. + (extend<SVE_PARTIAL_HSF:mode><SVE_SDF:mode>2): New expander to handle + widening ('extending') FP<-FP conversions. + (*aarch64_sve_<optab>_nontrunc<SVE_PARTIAL_HSF:mode><SVE_SDF:mode>): New + pattern to handle those we've added here. + * config/aarch64/aarch64.cc (aarch64_sve_packed_pred): New function. + (aarch64_sve_fp_pred): Likewise. + (aarch64_sve_valid_pred_p): Likewise. + * config/aarch64/iterators.md (SVE_PARTIAL_HSF): New mode iterator. + (SVE_HSF): Likewise. + (SVE_SDF): Likewise. + (SVE_SI): Likewise. + (SVE_2SDI) Likewise. + (self_mask): Extend to all integer/FP vector modes. + (narrower_mask): Likewise (excluding QI). + * config/aarch64/predicates.md (aarch64_predicate_operand): New special + predicate to handle narrower predicate modes. + +2025-06-16 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64-sve.md: Replace uses of SVE_FULL_F_BF + with SVE_FULL_F_B16B16. + Replace use of SVE_F with SVE_F_BF. + * config/aarch64/iterators.md (SVE_PARTIAL_F): New iterator for + partial SVE FP modes. + (SVE_FULL_F_BF): Rename to SVE_FULL_F_B16B16. + (SVE_PARTIAL_F_B16B16): New iterator (BF16 included) for partial + SVE FP modes. + (SVE_F_B16B16): New iterator for all SVE FP modes. + (SVE_BF): New iterator for all SVE BF16 modes. + (SVE_F): Redefine to exclude BF16 modes. + (SVE_F_BF): New iterator to replace the previous SVE_F. + (VPRED): Describe the VPRED mapping for partial vector modes. + (b): Cover partial FP modes. + (is_bf16): Likewise. + +2025-06-16 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi: Document -Wsfinae-incomplete. + +2025-06-16 Matthieu Longo <matthieu.longo@arm.com> + Srinath Parvathaneni <srinath.parvathaneni@arm.com> + + * config.in: Regenerate. + * config/aarch64/aarch64-elf-metadata.h + (class aeabi_subsection): New class for BAs. + * config/aarch64/aarch64-protos.h + (aarch64_pacret_enabled): New function. + * config/aarch64/aarch64.cc + (HAVE_AS_AEABI_BUILD_ATTRIBUTES): New definition. + (aarch64_file_end_indicate_exec_stack): Emit BAss. + (aarch64_pacret_enabled): New function. + (aarch64_start_file): Indent. + * configure: Regenerate. + * configure.ac: New configure check for BAs support in binutils. + +2025-06-16 Matthieu Longo <matthieu.longo@arm.com> + + * Makefile.in: Add missing declaration of BACKEND_H. + * config.gcc: Add aarch64-elf-metadata.o to extra_objs. + * config/aarch64/aarch64-elf-metadata.h: New file + * config/aarch64/aarch64-elf-metadata.cc: New file. + * config/aarch64/aarch64.cc + (GNU_PROPERTY_AARCH64_FEATURE_1_AND): Removed. + (GNU_PROPERTY_AARCH64_FEATURE_1_BTI): Likewise. + (GNU_PROPERTY_AARCH64_FEATURE_1_PAC): Likewise. + (GNU_PROPERTY_AARCH64_FEATURE_1_GCS): Likewise. + (aarch64_file_end_indicate_exec_stack): Move GNU properties code to + aarch64-elf-metadata.cc + * config/aarch64/t-aarch64: Declare target aarch64-elf-metadata.o + +2025-06-16 Matthieu Longo <matthieu.longo@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_file_end_indicate_exec_stack): Emit assembly comments. + +2025-06-16 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (edge_set): Remove unused typedef. + (is_bb_annotated): Sanity check that annotated BBs has + quality AFDO and non-anntoated non-AFDO. Exceptions are + zeros. + (set_bb_annotated): Verify that BB set annotated has + AFDO profile. + (afdo_set_bb_count): Do not return true for 0 counts. + (afdo_find_equiv_class): Fix formating; + do not combine profile of annoated and non-annotated BBs. + (afdo_propagate_edge): Fix variable names; dump info + about changes; do not change non-annoated BB profiles; + if all flow out of BB was decided on, annotate remaining + edges with 0. + (afdo_propagate): Dump info about copied BB counts + and number of iteraitons used. + (cmp): New function. + (afdo_adjust_guessed_profile): New function. + (afdo_calculate_branch_prob): Do not initialize loop + optimizer here; call afdo_adjust_guessed_profile. + (afdo_annotate_cfg): Initialize profile here; + anotate entry/exit blocks only of profile is non-0. + * profile-count.h: (profile_count::force_guessed): New. + * tree-cfg.cc (gimple_verify_flow_info): Fix typo. + +2025-06-16 Jiawei <jiawei@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc: Add b-ext and supm. + +2025-06-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/predicates.md (reload_operand): + Remove. + * config/xtensa/xtensa.md: + Remove the peephole2 pattern that was previously added. + +2025-06-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md: + Remove the peephole2 pattern that was previously added. + +2025-06-16 Jiawei <jiawei@iscas.ac.cn> + + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): Handle + more logical simplifications. + +2025-06-15 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new + case UMAX. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op umax. + +2025-06-14 Georg-Johann Lay <avr@gjlay.de> + + Backported from master: + 2025-06-14 Georg-Johann Lay <avr@gjlay.de> + + PR rtl-optimization/120423 + PR rtl-optimization/116389 + * config/avr/avr.md [-mno-lra]: Add pre-reload split to transform + (left shift of) a paradoxical subreg to a (left shift of) zero-extend. + +2025-06-13 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120629 + * cfgexpand.cc (expand_split_edge): New function. + (expand_gimple_cond, construct_init_block): Use it. + +2025-06-13 Spencer Abson <spencer.abson@arm.com> + + PR target/118150 + * config/aarch64/aarch64-sve.md (*one_cmpl<mode>3_cc): New + combiner pattern. + (*one_cmpl<mode>3_ptest): Likewise. + +2025-06-13 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120629 + * cfgexpand.cc (construct_init_block): If first_block isn't BB_RTL, + has any PHI nodes and false_edge->dest_idx before redirection is + different from make_single_succ_edge result's dest_idx, swap the + latter with the former last pred edge and their dest_idx members. + +2025-06-13 Kito Cheng <kito.cheng@sifive.com> + + * gcc.cc (driver::set_up_specs): Use gcc_exec_prefix to + read the spec file rather than standard_exec_prefix. + +2025-06-13 H.J. Lu <hjl.tools@gmail.com> + + PR target/120589 + * config/mcore/mcore.cc (mcore_mark_dllimport): Don't use + gen_rtx_MEM. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120638 + * tree-ssa-math-opts.cc (pass_cse_reciprocals::execute): Call + reset_flow_sensitive_info on arg1. + +2025-06-12 Stafford Horne <shorne@gmail.com> + + PR target/120587 + * config/or1k/or1k.cc (or1k_can_change_mode_class): Allow + changing flags mode from BI to SI to allow for paradoxical + subregs. + +2025-06-12 Uros Bizjak <ubizjak@gmail.com> + + PR target/120604 + * config/i386/i386-expand.cc (ix86_expand_int_movcc): Make sure + we can represent the difference between two 64-bit DImode + immediate values in 64-bit HOST_WIDE_INT. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120629 + * cfgexpand.cc (expand_gimple_cond): If dest bb isn't BB_RTL, + has any PHI nodes and false_edge->dest_idx before redirection is + different from make_single_succ_edge result's dest_idx, swap the + latter with the former last pred edge and their dest_idx members. + +2025-06-12 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new + case SMAX. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op smax. + +2025-06-12 Richard Sandiford <richard.sandiford@arm.com> + + PR target/120624 + * config/aarch64/aarch64.md (SME_STATE_REGNUM): Expand on comments. + * config/aarch64/aarch64-sme.md (aarch64_restore_za): Also set + SME_STATE_REGNUM + +2025-06-12 Alfie Richards <alfie.richards@arm.com> + + * cgraph.cc (cgraph_node::record_function_versions): Refactor and + rename to... + (cgraph_node::add_function_version): new function. + * cgraph.h (cgraph_node::record_function_versions): Refactor and + rename to... + (cgraph_node::add_function_version): new function. + * config/aarch64/aarch64.cc (aarch64_get_function_versions_dispatcher): + Remove reordering. + * config/i386/i386-features.cc (ix86_get_function_versions_dispatcher): + Remove reordering. + * config/riscv/riscv.cc (riscv_get_function_versions_dispatcher): + Remove reordering. + * config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher): + Remove reordering. + +2025-06-12 Alfie Richards <alfie.richards@arm.com> + + * attribs.cc (is_function_default_version): Add target_version logic. + +2025-06-12 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set 4 for SRF, + 6 for GRR, GNR, CWF, DMR, ARL, PTL. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc: Include "selftest-xml.h". + (html_builder::make_element_for_diagnostic): Move... + (class html_token_printer): ...from local to the function + to the global namespace. + (struct selftest::token_printer_test): New. + (selftest::test_token_printer): New. + (selftest::test_simple_log): Simplify using ASSERT_XML_PRINT_EQ. + (selftest::test_metadata): Likewise. + (selftest::diagnostic_format_html_cc_tests): Run the new test. + * selftest-xml.h: New file. + * xml.cc: Include "selftest-xml.h". + (selftest::assert_xml_print_eq): New. + (selftest::test_no_dtd): Simplify using ASSERT_XML_PRINT_EQ. + (selftest::test_printer): Likewise. + (selftest::test_attribute_ordering): Likewise. + +2025-06-11 Edwin Lu <ewlu@rivosinc.com> + + * config/riscv/riscv.cc (struct riscv_tune_param): Add tune + param. + (riscv_sched_can_speculate_insn): Implement. + (TARGET_SCHED_CAN_SPECULATE_INSN): Ditto. + +2025-06-11 Uros Bizjak <ubizjak@gmail.com> + + PR target/120604 + * config/i386/i386-expand.cc (ix86_expand_int_movcc): Cast operands of + signed 64-bit HOST_WIDE_INT subtractions to (unsigned HOST_WIDE_INT). + +2025-06-11 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*<optab>_vf_<mode>): Only handle vfmadd + and vfmsub. + (*vfnmsub_<mode>): New pattern. + (*vfnmadd_<mode>): New pattern. + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add cost model for + NEG and VEC_DUPLICATE. + +2025-06-11 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * gimple-range-fold.cc: Include rtl.h. + (fold_using_range::range_of_range_op): Handle bb ending with + GIMPLE_COND during RTL expansion where there is only one succ + edge instead of two. + +2025-06-11 Jakub Jelinek <jakub@redhat.com> + + * internal-fn.cc (expand_POPCOUNT): Use + expand_expr (lhs, NULL_RTX, VOIDmode, EXPAND_WRITE) instead of + expand_normal (lhs). + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc: Include "diagnostic-path.h" and + "diagnostic-client-data-hooks.h". + (html_builder::m_logical_loc_mgr): New field. + (html_builder::m_cur_nesting_levels): New field. + (html_builder::m_last_logical_location): New field. + (html_builder::m_last_location): New field. + (html_builder::m_last_expanded_location): New field. + (HTML_STYLE): Add "white-space: pre;" to .source and .annotation. + Add "gcc-quoted-text" CSS class. + (html_builder::html_builder): Initialize the new fields. If CSS + is enabled, add CDN links to PatternFly 3 stylesheets. + (html_builder::add_stylesheet): New. + (html_builder::on_report_diagnostic): Add "alert" param to + make_element_for_diagnostic, setting it by default, but unsetting + it for nested diagnostics below the top level. Use + add_at_nesting_level for nested diagnostics. + (add_nesting_level_attr): New. + (html_builder::add_at_nesting_level): New. + (get_pf_class_for_alert_div): New. + (get_pf_class_for_alert_icon): New. + (get_label_for_logical_location_kind): New. + (add_labelled_value): New. + (html_builder::make_element_for_diagnostic): Add leading comment. + Add "alert" param. Drop class="gcc-diagnostic" from <div> tag, + instead adding the class for a PatternFly 3 alert if "alert" is + true, and adding a <span> with an alert icon, both according to + the diagnostic severity. Add a severity prefix to the message for + alerts. Add any metadata/option text as suffixes to the message. + Show any logical location. Show any physical location. Don't + show the locus if the last location is unchanged within the + diagnostic_group. Wrap any execution path element in a + <div id="execution-path"> and add a label to it. Wrap any + generated patch in a <div id="suggested-fix"> and add a label + to it. + (selftest::test_simple_log): Update expected HTML. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-path-output.cc: Use xml::printer::add_text_from_pp. + * diagnostic-show-locus.cc: Likewise. + * xml-printer.h (xml::printer::add_text_from_pp): New decl. + * xml.cc (xml::node_with_children::add_text_from_pp): New. + (xml::printer::add_text_from_pp): New. + * xml.h (xml::node_with_children::add_text_from_pp): New decl. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + PR other/120610 + * diagnostic-format-html.cc (html_builder::html_builder): Update + for new param of xml::printer::pop_tag. + (html_path_label_writer::end_label): Likewise. + (html_builder::make_element_for_diagnostic::html_token_printer): + Give the instance its own xml::printer. Update for new param of + xml::printer::pop_tag. + (html_builder::make_element_for_diagnostic): Give the instance its + own xml::printer. + (html_builder::make_metadata_element): Update for new param of + xml::printer::pop_tag. + (html_builder::flush_to_file): Likewise. + * diagnostic-path-output.cc (begin_html_stack_frame): Likewise. + (begin_html_stack_frame): Likewise. + (end_html_stack_frame): Likewise. + (print_path_summary_as_html): Likewise. + * diagnostic-show-locus.cc + (struct to_text::auto_check_tag_nesting): New. + (struct to_html:: auto_check_tag_nesting): New. + (to_text::pop_html_tag): Change param to const char *. + (to_html::pop_html_tag): Likewise; rename param to + "expected_name". + (default_diagnostic_start_span_fn<to_html>): Update for new param + of xml::printer::pop_tag. + (layout_printer<to_html>::end_label): Likewise. + (layout_printer<Sink>::print_trailing_fixits): Add RAII sentinel + to check tag nesting for the HTML case. Delete stray popping + of "td" in the presence of fix-it hints. + (layout_printer<Sink>::print_line): Add RAII sentinel + to check tag nesting for the HTML case. + (diagnostic_source_print_policy::print_as_html): Likewise. + (layout_printer<Sink>::print): Likewise. + * xml-printer.h (xml::printer::printer): Add optional + "check_popped_tags" param. + (xml::printer::pop_tag): Add "expected_name" param. + (xml::printer::get_num_open_tags): New accessor. + (xml::printer::dump): New decl. + (xml::printer::m_check_popped_tags): New field. + (class xml::auto_check_tag_nesting): New. + (class xml::auto_print_element): Update for new param of pop_tag. + * xml.cc: Move pragma pop so that the pragma also covers + xml::printer's member functions, "dump" in particular. + (xml::printer::printer): Add param "check_popped_tags". + (xml::printer::pop_tag): Add param "expected_name" and use it to assert + that the popped tag is as expected. Assert that we have a tag to + pop. + (xml::printer::dump): New. + (selftest::test_printer): Update for new param of pop_tag. + (selftest::test_attribute_ordering): Likewise. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + * gimple-ssa-warn-access.cc + (pass_waccess::maybe_check_dealloc_call): Add missing + auto_diagnostic_group to nest the "returned from %qD" + note within the warning. + +2025-06-10 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.cc (cgraph_node::make_profile_local): New member function. + (cgraph_node::make_profile_global0): New member function. + (cgraph_node::apply_scale): Do not call adjust_for_ipa_scalling. + (cgraph_node::scale_profile_to): New member function. + * cgraph.h (cgraph_node::make_profile_local, + cgraph_node::make_profile_global0, cgraph_node::scale_profile_to): + Declare. + * ipa-cp.cc (lenient_count_portion_handling): Fix logic dropping count + to local. + (update_counts_for_self_gen_clones): Use scale_profile_to. + (update_profiling_info): Use make_profile_local, make_profile_global0 + and scale_profile_to. + (update_specialized_profile): Likewise. + * ipa-inline-transform.cc (clone_inlined_nodes): Call + adjust_for_ipa_scalling. + +2025-06-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * expr.cc (expand_expr_real_2) <CASE_CONVERT>: If get_range_pos_neg + at -O2 for scalar integer extension suggests the most significant + bit of op0 is not set, try both unsigned and signed conversion and + choose the cheaper one. If both are the same cost, choose one + based on TYPE_UNSIGNED (TREE_TYPE (treeop0)). + +2025-06-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * config/i386/i386.md (*bsr_rex64_2): Rename to ... + (*bsr_rex64<u>_2): ... this. Use any_extend instead of sign_extend. + (*bsr_2): Rename to ... + (*bsr<u>_2): ... this. Use any_extend instead of sign_extend. + (bsr splitters after those): Use any_extend instead of sign_extend. + +2025-06-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * cfgrtl.h (update_bb_for_insn_chain): Declare. + * cfgrtl.cc (update_bb_for_insn_chain): No longer static. + * cfgexpand.h (expand_remove_edge): Declare. + * cfgexpand.cc: Include "gimple-range.h". + (head_end_for_bb): New variable. + (label_rtx_for_bb): Drop ATTRIBUTE_UNUSED from bb argument. + Use head_end_for_bb if possible for non-BB_RTL bbs. + (expand_remove_edge): New function. + (maybe_cleanup_end_of_block): Use it instead of remove_edge. + (expand_gimple_cond): Don't clear EDGE_TRUE_VALUE and + EDGE_FALSE_VALUE just yet. Use head_end_for_bb elts instead + of BB_END and update_bb_for_insn_chain instead of update_bb_for_insn. + (expand_gimple_tailcall): Use expand_remove_edge instead of + remove_edge. Use head_end_for_bb elts instead of BB_END and + update_bb_for_insn_chain instead of update_bb_for_insn. + (expand_gimple_basic_block): Don't change bb to BB_RTL here, instead + use head_end_for_bb elts instead of BB_HEAD and BB_END. Use + update_bb_for_insn_chain instead of update_bb_for_insn. + (pass_expand::execute): Enable ranger before expand_gimple_basic_block + calls and create head_end_for_bb vector. Disable ranger after + those calls, turn still non-BB_RTL blocks into BB_RTL and set their + BB_HEAD and BB_END from head_end_for_bb elts, and clear EDGE_TRUE_VALUE + and EDGE_FALSE_VALUE flags on edges. Release head_end_for_bb + vector. + * tree-outof-ssa.cc (expand_phi_nodes): Don't clear phi nodes here. + * tree.h (get_range_pos_neg): Add gimple * argument defaulted to NULL. + * tree.cc (get_range_pos_neg): Add stmt argument. Use + get_range_query (cfun) instead of get_global_range_query () and pass + stmt as third argument to range_of_expr. + * expr.cc (expand_expr_divmod): Pass currently_expanding_gimple_stmt + to get_range_pos_neg. + (expand_expr_real_1) <case SSA_NAME>: Change internal fn handling + to avoid temporarily overwriting gimple_call_lhs of ifn, instead + temporarily overwrite SSA_NAME_VAR of its lhs. + (maybe_optimize_pow2p_mod_cmp): Pass currently_expanding_gimple_stmt + to get_range_pos_neg. + (maybe_optimize_mod_cmp): Likewise. + * internal-fn.cc (get_min_precision): Likewise. Use + get_range_query (cfun) instead of get_global_range_query () and pass + currently_expanding_gimple_stmt as third argument to range_of_expr. + Pass g to get_range_pos_neg. + (expand_addsub_overflow): Pass currently_expanding_gimple_stmt + to get_range_pos_neg. + (expand_mul_overflow): Likewise. + (expand_arith_overflow): Pass stmt to get_range_pos_neg. + * gimple-range-edge.cc: Include rtl.h. + (gimple_outgoing_range_stmt_p): Return NULL for BB_RTL bbs. + (gimple_outgoing_range::calc_switch_range): If default_edge is NULL, + assert currently_expanding_to_rtl and return before trying to + set range on that edge. + * builtins.cc (expand_builtin_strnlen): Use get_range_query (cfun) + instead of get_global_range_query () and pass + currently_expanding_gimple_stmt as third argument to range_of_expr. + (determine_block_size): Likewise. + * gimple-range.cc (gimple_ranger::range_on_exit): Set s to NULL + instead of last_nondebug_stmt for BB_RTL bbs. + * stmt.cc: Include cfgexpand.h. + (expand_case): Use expand_remove_edge instead of remove_edge. + +2025-06-10 Andrew MacLeod <amacleod@redhat.com> + + * value-range.cc (irange::set_range_from_bitmask): When the bitmask + result is a singleton, check if it is contained in the range. + +2025-06-10 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-devices.def: Add gfx942, gfx950 and gfx9-4-generic. + * config/gcn/gcn-opts.h (TARGET_CDNA3, TARGET_CDNA3_PLUS, + TARGET_GLC_NAME, TARGET_TARGET_SC_CACHE): Define. + (TARGET_ARCHITECTED_FLAT_SCRATCH): Use also for CDNA3. + * config/gcn/gcn.h (gcn_isa): Add ISA_CDNA3 to the enum. + * config/gcn/gcn.cc (print_operand): Update 'g' to use + TARGET_GLC_NAME; add 'G' to print TARGET_GLC_NAME unconditionally. + * config/gcn/gcn-valu.md (scatter, gather): Use TARGET_GLC_NAME. + * config/gcn/gcn.md: Use %G<num> instead of glc; use 'buffer_inv sc1' + for TARGET_TARGET_SC_CACHE. + * doc/invoke.texi (march): Add gfx942, gfx950 and gfx9-4-generic. + * doc/install.texi (amdgcn*-*-*): Add gfx942, gfx950 and gfx9-4-generic. + * config/gcn/gcn-tables.opt: Regenerate. + +2025-06-10 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.md (lui-constraint<X:mode>and_to_or): Do not use + the RTL template for split code. Emit it directly taking care to avoid + emitting a constant load that needed synthesis. Fix formatting. + +2025-06-10 Kito Cheng <kito.cheng@sifive.com> + + * doc/riscv-ext.texi: Regen. + +2025-06-10 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new + case UMOD. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op umod. + +2025-06-09 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-sarif.cc (maybe_get_sarif_kind): Update for + conversion of enum logical_location_kind to enum class. + * diagnostic.cc (logical_location_manager::function_p): Likewise. + * libgdiagnostics.cc (html-output/missing-semicolon.py::get_kind): + Likewise. + * logical-location.h (enum logical_location_kind): Convert to... + (enum class logical_location_kind): ...this. + * selftest-logical-location.cc + (test_logical_location_manager::item_from_funcname): Update for + conversion of enum logical_location_kind to enum class. + * tree-logical-location.cc + (tree_logical_location_manager::get_kind): Likewise. + +2025-06-09 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.cc (cgraph_node::apply_scale): New member function. + * cgraph.h (struct cgraph_node): declare. + * ipa-cp.cc (update_counts_for_self_gen_clones): + Use cgraph_node::apply_scale. + (update_profiling_info): Do not overwrite local + profile when dropping to 0 global profile. + (update_specialized_profile): Likewise. + * ipa-inline-transform.cc (update_noncloned_counts): Remove. + (can_remove_node_now_p_1): Fix formating. + (clone_inlined_nodes): Use cgraph_node::apply_scale. + * profile-count.cc (profile_count::dump): Do not ICE + when count is not compatible with entry block count. + * tree-cfg.cc (gimple_verify_flow_info): Check + compatibility of count and entry block count. + +2025-06-09 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc (html_builder::m_title_element): New + field. + (html_builder::html_builder): Initialize it. Don't add + placeholder text. + (html_builder::set_main_input_filename): New. + (html_output_format::set_main_input_filename): New. + (test_html_diagnostic_context::test_html_diagnostic_context): Call + set_main_input_filename on the new sink. + (seldtest::test_simple_log): Update expected <title> text. + * diagnostic-format-json.cc (diagnostic_output_format_init_json): + Return a reference to the new sink. + (diagnostic_output_format_init_json_stderr): Likewise. + (diagnostic_output_format_init_json_file): Likewise. + * diagnostic-format-sarif.cc (sarif_builder::sarif_builder): Drop + "main_input_filename_" param, and move adding an artifact for it + with diagnostic_artifact_role::analysis_target to... + (sarif_builder::set_main_input_filename): ...this new function. + (sarif_output_format::set_main_input_filename): New. + (sarif_output_format::sarif_output_format): Drop + "main_input_filename_" param. + (sarif_stream_output_format::sarif_stream_output_format): + Likewise. + (sarif_file_output_format::sarif_file_output_format): Likewise. + (diagnostic_output_format_init_sarif): Return a reference to *FMT. + (diagnostic_output_format_init_sarif_stderr): Return a refererence + to the new sink. Drop "main_input_filename_" param. + (diagnostic_output_format_init_sarif_file): Likewise. + (diagnostic_output_format_init_sarif_stream): Likewise. + (make_sarif_sink): Drop "main_input_filename_" param. + (selftest::test_sarif_diagnostic_context::test_sarif_diagnostic_context): + Likewise. Call set_main_input_filename on the new format. + (selftest::test_sarif_diagnostic_context::buffered_output_format::buffered_output_format): + Drop "main_input_filename_" param. + (selftest::test_make_location_object): Likewise. + * diagnostic-format-sarif.h + (diagnostic_output_format_init_sarif_stderr): Return a refererence + to the new sink. Drop "main_input_filename_" param. + (diagnostic_output_format_init_sarif_file): Likewise. + (diagnostic_output_format_init_sarif_stream): Likewise. + (make_sarif_sink): Drop "main_input_filename_" param. + * diagnostic-format.h + (diagnostic_output_format::set_main_input_filename): New vfunc. + (diagnostic_output_format_init_json_stderr): Return a refererence + to the new sink. + (diagnostic_output_format_init_json_file): Likewise. + * diagnostic.cc (diagnostic_output_format_init): Likewise. Call + set_main_input_filename on the new sink. + * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for above + changes. + * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Likewise. + (handle_OPT_fdiagnostics_add_output_): Likewise. + (handle_OPT_fdiagnostics_set_output_): Likewise. + +2025-06-09 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_noce_conversion_profitable_p): Relax + condition for adjustments due to copies from promoted SUBREGs. + +2025-06-09 Tamar Christina <tamar.christina@arm.com> + + * doc/extend.texi (outline-atomics): Document the inverse -mno flag. + +2025-06-09 Tamar Christina <tamar.christina@arm.com> + + * params.opt (vect-scalar-cost-multiplier): New. + * tree-vect-loop.cc (vect_estimate_min_profitable_iters): Use it. + * doc/invoke.texi (vect-scalar-cost-multiplier): Document it. + +2025-06-09 liuhongt <hongtao.liu@intel.com> + + PR target/103750 + * config/i386/i386.cc (ix86_rtx_costs): Adjust rtx_cost for + maskload. + * config/i386/sse.md (*<avx512>_load<mode>mask_and15): New + define_insn_and_split. + (*<avx512>_load<mode>mask_and3): Ditto. + +2025-06-09 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new + case MOD. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op mod. + +2025-06-08 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * auto-profile.cc (function_instance::merge): Fix typo. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + PR target/120203 + * config/riscv/riscv.cc (CFUN_IN_CALL): New macro. + (struct mode_switching_info): Add new field. + (riscv_frm_adjust_mode_after_call): Remove. + (riscv_frm_mode_needed): Track call_insn. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119164 + * config/riscv/riscv.cc (riscv_emit_frm_mode_set): check + STATIC_FRM_P for transition to DYN. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + * config/riscv/riscv.cc (riscv_frm_emit_after_bb_end): Delete. + (riscv_frm_mode_needed): Remove call riscv_frm_emit_after_bb_end. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + * config/riscv/riscv.cc (riscv_dynamic_frm_mode_p): Remove. + (riscv_mode_confluence): Ditto. + (TARGET_MODE_CONFLUENCE): Ditto. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + * emit-rtl.cc (next_nonnote_nondebug_insn): Update comments. + +2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-phiopt.cc (cond_if_else_store_replacement): Move + definitin of else_vdef to right before the usage. Reformat + slightly. + +2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120533 + * tree-ssa-phiopt.cc (cond_if_else_store_replacement_limited): New function. + (pass_phiopt::execute): Call cond_if_else_store_replacement_limited + for diamand case. + +2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-phiopt.cc (single_trailing_store_in_bb): Add vphi argument. + Check for single use of the vdef of the store instead of a loop + and check vdef's single use statement is the same as vphi. + (cond_if_else_store_replacement): Update call to single_trailing_store_in_bb. + +2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-phiopt.cc (cond_if_else_store_replacement): Use get_virtual_phi + instead of inlining it. + +2025-06-08 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_expand_conditional_move): Use + riscv_extend_comparands to extend sub-word comparison arguments. + +2025-06-08 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (printx, print_operand): + Add two instruction operand format codes 'U' and 'V', + whose represent scale factors of 0 to 15th positive/negative + power of two. + * config/xtensa/xtensa.md (c_enum "unspec"): + Add UNSPEC_CEIL and UNSPEC_FLOOR. + (int_iterator ANY_ROUND, int_attr m_round): + New integer iterator and its attribute. + (fix<s_fix>_truncsfsi2, *fix<s_fix>_truncsfsi2_2x, + *fix<s_fix>_truncsfsi2_scaled, float<s_float>sisf2, + *float<s_float>sisf2_scaled): + Use output templates with the operand formats added above, + instead of individual output statements. + (l<m_round>sfsi2, *l<m_round>sfsi2_2x, *l<m_round>sfsi2_scaled): + New insn patterns. + +2025-06-07 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_expand_conditional_move): Use + riscv_extend_comparands to extend sub-word comparison arguments. + +2025-06-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120572 + * doc/invoke.texi (Wmusttail-local-addr, + Wno-maybe-musttail-local-addr): Fix opindex. + * common.opt.urls: Regenerate. + +2025-06-06 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc (struct html_doctypedecl): New. + (html_builder::html_builder): Use it to populate the document's + m_doctypedecl. + * xml.cc (xml::document::write_as_xml): Replace hardcoded HTML DTD + with use of m_doctypedecl field. + (selftest::test_no_dtd): New. + (selftest::xml_cc_tests): New. + * xml.h (struct doctypedecl): New decl. + +2025-06-06 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add xml.o. + * diagnostic-format-html.cc (namespace xml): Move implementation + to xml.cc + (selftest::test_printer): Likewise. + (selftest::test_attribute_ordering): Likewise. + (selftest::diagnostic_format_html_cc_tests): Don't call the moved + tests here; they will be called from xml_cc_tests in xml.cc. + * selftest-run-tests.cc (selftest::run_tests): Call xml_cc_tests. + * selftest.h (selftest::xml_cc_tests): New decl. + * xml.cc: New file, based on material from + diagnostic-format-html.cc. + +2025-06-06 David Malcolm <dmalcolm@redhat.com> + + * selftest.h: Fix the sorting of the various *_cc_tests decls. + +2025-06-06 David Malcolm <dmalcolm@redhat.com> + + * text-art/widget.cc (selftest::test_empty_wrapper_widget): New. + (selftest::text_art_widget_cc_tests): Call it. + * text-art/widget.h (text_art::wrapper_widget::calc_req_size): + Gracefully handle m_child being null. + (text_art::wrapper_widget::update_child_alloc_rects): Likewise. + (text_art::wrapper_widget::paint_to_canvas): Likewise. + +2025-06-06 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Add vphi argument. + Manually update the vphi and new_stmt vdef/lhs. + (cond_if_else_store_replacement): Update call to cond_if_else_store_replacement_1. + +2025-06-06 Tobias Burnus <tburnus@baylibre.com> + Sandra Loosemore <sloosemore@baylibre.com> + + * gimple-fold.cc (gimple_fold_builtin_omp_get_initial_device, + gimple_fold_builtin_omp_get_num_devices): New. + (gimple_fold_builtin): Call them. + * omp-builtins.def (BUILT_IN_OMP_GET_INITIAL_DEVICE): Add + (BUILT_IN_OMP_GET_NUM_DEVICES): Make uservisible + pure. + +2025-06-06 Tobias Burnus <tburnus@baylibre.com> + + * builtins.def (DEF_GOACC_BUILTIN_COMPILER, DEF_GOMP_BUILTIN_COMPILER): + Set NONANSI_P = false to enable those also with -fno-nonansi-builtins. + +2025-06-06 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (get_group_load_store_type): Remove + non-SLP path. + (get_load_store_type): Likewise. + +2025-06-06 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new + case UDIV. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op divu. + +2025-06-06 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_store): Remove non-SLP + paths. + +2025-06-06 Richard Biener <rguenther@suse.de> + + * gimple-fold.h (create_tmp_reg_or_ssa_name): Remove. + * gimple-fold.cc (create_tmp_reg_or_ssa_name): Likewise. + (gimple_fold_builtin_memory_op): Use make_ssa_name. + (gimple_fold_builtin_strchr): Likewise. + (gimple_fold_builtin_strcat): Likewise. + (gimple_load_first_char): Likewise. + (gimple_fold_builtin_string_compare): Likewise. + (gimple_build): Likewise. + * tree-inline.cc (copy_bb): Likewise. + * config/rs6000/rs6000-builtin.cc (fold_build_vec_cmp): Likewise. + (rs6000_gimple_fold_mma_builtin): Likewise. + (rs6000_gimple_fold_builtin): Likewise. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * expr.cc (store_constructor) <ARRAY_TYPE>: Perform the arithmetics + on offsets in (unsigned) sizetype. + +2025-06-06 Jan Hubicka <hubicka@ucw.cz> + + * coverage.cc (coverage_init): Return early when in LTO + +2025-06-06 Jan Hubicka <hubicka@ucw.cz> + + * profile-count.cc (profile_count::to_sreal_scale): Special case 0 of autofdo. + (profile_count::combine_with_ipa_count): If outer function has GLOBAL0 profile + but innter counter has non-zero profile, force it to be 0. + +2025-06-06 Jiawei <jiawei@iscas.ac.cn> + Jiawei Chen <jiawei@iscas.ac.cn> + Yangyu Chen <cyy@cyyself.name> + Tang Haojin <tanghaojin@outlook.com> + + * config/riscv/riscv-cores.def (RISCV_TUNE): New cpu tune. + (RISCV_CORE): New cpu. + * doc/invoke.texi: Ditto. + +2025-06-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120032 + * tree-ssa-forwprop.cc (simplify_count_zeroes): When we cannot use + the IFN to determine the result at zero use a conditional move + to reproduce the correct result from the table-based + algorithm. + +2025-06-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120032 + * match.pd (clz_table_index): New match. + * tree-ssa-forwprop.cc (check_table_array): Rename from + check_ctz_array. Split out actual verification to a functor. + (check_table_string): Rename from check_ctz_string and likewise. + (check_table): Rename from check_ctz_table and adjust. + (gimple_clz_table_index): Declare. + (simplify_count_zeroes): Rename from simplify_count_trailing_zeroes. + Extend to cover CLZ. + (pass_forwprop::execute): Adjust. + +2025-06-06 Richard Biener <rguenther@suse.de> + + * tree-ssa-forwprop.cc (simplify_count_trailing_zeroes): + Use ranger instead of tree_expr_nonzero_p. + +2025-06-06 Richard Biener <rguenther@suse.de> + + * tree-ssa-forwprop.cc (optimize_count_trailing_zeroes): + Inline into ... + (simplify_count_trailing_zeroes): ... this function. + Split out ... + (check_ctz_table): ... a wrapper for CONSTRUCTOR vs. STRING_CST + handling. + +2025-06-05 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_expand_conditional_move): Avoid + zicond in some cases involving sign bit tests. + * config/riscv/riscv.md: Split a splat of the sign bit feeding a + masking off high bits into a pair of right shifts. + +2025-06-05 Uros Bizjak <ubizjak@gmail.com> + + PR target/120553 + * config/i386/i386.md (mov<mode>cc): Use "general_operand" + predicate for operands 2 and 3 for all modes. + +2025-06-05 Marek Polacek <polacek@redhat.com> + + * doc/invoke.texi: Update a link to c99status.html. + * doc/standards.texi: Likewise. + +2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-ccp.cc (insert_clobber_before_stack_restore): Update the virtual + op on the inserted clobber and the stack restore function. + (do_ssa_ccp): Don't add TODO_update_ssa to the todo. + +2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> + + * config/aarch64/aarch64-sve-builtins.cc: Include value-range.h and tree-ssanames.h + (gimple_folder::convert_and_fold): Use make_ssa_name + instead of create_tmp_var for the temporary. Add comment about callback argument. + +2025-06-05 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120231 + * range-op.cc (range_op_table::range_op_table): Register op_cast + also for FLOAT_EXPR and FIX_TRUNC_EXPR. + (RO_III): Adjust comment. + (range_op_handler::op1_range): Handle RO_IFI rather than RO_IFF. + Don't handle RO_FII. + (range_operator::op1_range): Remove overload with + irange &, tree, const frange &, const frange &, relation_trio + and frange &, tree, const irange &, const irange &, relation_trio + arguments. Add overload with + irange &, tree, const frange &, const irange &, relation_trio + arguments. + * range-op-mixed.h (operator_cast::op1_range): Remove overload with + irange &, tree, const frange &, const frange &, relation_trio + and frange &, tree, const irange &, const irange &, relation_trio + arguments. Add overload with + irange &, tree, const frange &, const irange &, relation_trio and + frange &, tree, const irange &, const frange &, relation_trio + arguments. + * range-op.h (range_operator::op1_cast): Remove overload with + irange &, tree, const frange &, const frange &, relation_trio + and frange &, tree, const irange &, const irange &, relation_trio + arguments. Add overload with + irange &, tree, const frange &, const irange &, relation_trio + arguments. + * range-op-float.cc (operator_cast::fold_range): Implement + float to int and int to float casts. + (operator_cast::op1_range): Remove overload with + irange &, tree, const frange &, const frange &, relation_trio + and frange &, tree, const irange &, const irange &, relation_trio + arguments. Add overload with + irange &, tree, const frange &, const irange &, relation_trio and + frange &, tree, const irange &, const frange &, relation_trio + arguments and implement reverse op of float to int and int to float + cast there. + +2025-06-05 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (afdo_calculate_branch_prob): Fix typo + in previous patch. + +2025-06-05 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc: Remove structured binding + from the code. + +2025-06-05 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120547 + * real.cc (real_from_integer): Remove maxbitlen variable, use + len instead of that. When shifting right, or in 1 if any of the + shifted away bits are non-zero. Formatting fix. + +2025-06-05 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (update_count_by_afdo_count): Fix handling + of GUESSED_LOCAL. + (afdo_calculate_branch_prob): Preserve static profile for + probabilities 0 and 1. + +2025-06-05 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md: Leverage vdup_v and v_vdup + binary op for different patterns. + * config/riscv/vector-iterators.md: Add vdup_v and v_vdup + binary op iterators. + +2025-06-05 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/zicond.md: Add new splitters to select + 1, -1 or -1, 1 based on a sign bit test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension definition. + * config/riscv/riscv-ext.opt: New extension mask. + * doc/riscv-ext.texi: Document the new extension. + +2025-06-05 Eric Botcazou <ebotcazou@adacore.com> + + * tree-vect-data-refs.cc (vect_can_force_dr_alignment_p): Return + false if the variable has no symtab node. + +2025-06-05 Spencer Abson <spencer.abson@arm.com> + + * tree-eh.cc (operation_could_trap_helper_p): Cover FIX_TRUNC + expressions explicitly. + +2025-06-05 Tobias Burnus <tburnus@baylibre.com> + + * config.gcc (--with-{arch,tune}): Use .def file to validate gcn + processor names. + * doc/install.texi (amdgcn*-*-*): Update list of devices supported + by --with-arch/--with-tune. + +2025-06-05 Hongyu Wang <hongyu.wang@intel.com> + + PR middle-end/112824 + * tree-sra.cc (sra_get_max_scalarization_size): Use MOVE_MAX + instead of UNITS_PER_WORD to define max_scalarization_size. + +2025-06-05 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/sse.md + (avx512f_movddup512<mask_name>): Change sselog1 to ssemov. + (avx_movddup256<mask_name>): Ditto. + (*vec_dupv2di): Change alternative 4's type attribute from sselog1 + to ssemov. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: Update declaration. + +2025-06-04 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * auto-profile.cc (autofdo_source_profile::read): Dump message + while merging profile. + * pass_manager.h (get_pass_auto_profile): New. + +2025-06-04 Sandra Loosemore <sloosemore@baylibre.com> + + PR c++/120518 + * omp-general.cc (omp_device_num_check): Look inside a + CLEANUP_POINT_EXPR when trying to optimize special cases. + +2025-06-04 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/mkoffload.cc (process): Use an 'auto_vec' for + 'file_idx'. + +2025-06-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/14295 + PR tree-optimization/108358 + PR tree-optimization/114169 + * tree-ssa-forwprop.cc (optimize_agr_copyprop): New function. + (pass_forwprop::execute): Call optimize_agr_copyprop for load/store statements. + +2025-06-04 Pengfei Li <Pengfei.Li2@arm.com> + + * match.pd: Add folding rule for vector average. + * tree-ssa-ccp.cc (get_default_value): Reject vector types. + (evaluate_stmt): Reject vector types. + * tree-ssanames.cc (get_nonzero_bits_1): Extend to handle + uniform vectors. + +2025-06-04 Xi Ruoyao <xry111@xry111.site> + + PR rtl-optimization/120050 + * ext-dce.cc (ext_dce_process_uses): Break early if a SUBREG in + rhs is promoted and the truncation from the inner mode to the + outer mode is not a noop when handling SETs. + +2025-06-04 Jakub Jelinek <jakub@redhat.com> + + * range-op-float.cc (range_operator::fold_range, + range_operator::op1_range, range_operator::op2_range, + range_operator::lhs_op1_relation, range_operator::lhs_op2_relation, + operator_equal::op1_range, foperator_unordered_gt::op1_range): Fix + up parameter indentation. + * range-op.cc (range_operator::fold_range, range_operator::op1_range, + range_operator::op1_op2_relation_effect, + range_operator::update_bitmask, plus_minus_ranges, + operator_bitwise_and::lhs_op1_relation): Likewise. + +2025-06-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120231 + * range-op-mixed.h (operator_cast::fold_range): Add overload + with 3 {,const} frange & operands. Change parameter names and + add final override keywords for float <-> integer cast overloads. + (operator_cast::op1_range): Likewise. + * range-op-float.cc (operator_cast::fold_range): New overload + with 3 {,const} frange & operands. + (operator_cast::op1_range): Likewise. + +2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * config/riscv/riscv-ext.def: Imply zicsr. + +2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension defs. + * config/riscv/riscv-ext.opt: Ditto. + * doc/riscv-ext.texi: Ditto. + +2025-06-04 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120447 + * emit-rtl.cc (validate_subreg): Restrict ordered_p test + between osize and regsize to cases where the inner value + occupies multiple blocks. + +2025-06-04 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Rename + the args to scalar2vr. + (riscv_rtx_costs): Leverage above func to avoid code dup. + +2025-06-04 H.J. Lu <hjl.tools@gmail.com> + + PR debug/120525 + * var-tracking.cc (prepare_call_arguments): Use MEM_EXPR only + if MEM_P is true. + +2025-06-04 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension defs. + * config/riscv/riscv-ext.opt: Ditto. + * doc/riscv-ext.texi: Ditto. + +2025-06-04 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/i386.md (define_peephole2): Define some new peephole2 for + APX NDD. + +2025-06-04 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/i386.md: Add 4 new peephole2 by swap the original + peephole2's operands' order to support new pattern. + +2025-06-04 H.J. Lu <hjl.tools@gmail.com> + + PR other/120494 + * calls.cc (expand_call): Always add REG_CALL_DECL note. + (emit_library_call_value_1): Likewise. + +2025-06-03 Richard Biener <rguenther@suse.de> + + * gimple-fold.cc (create_tmp_reg_or_ssa_name): Always + create a SSA name. + +2025-06-03 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_vec_dup): Add new + case for DIV op. + * config/riscv/riscv.cc (get_vector_binary_rtx_cost): Add new func + to get the cost of vector binary. + (riscv_rtx_costs): Add div rtx match and leverage above wrap to + get cost. + * config/riscv/vector-iterators.md: Add new op div to no_shift_vx_op. + +2025-06-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120517 + * tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): + Fix math in dataref group split. + +2025-06-03 Paul-Antoine Arras <parras@baylibre.com> + + * config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost): Replace + FR2VR with get_fr2vr_cost (). + * config/riscv/riscv.cc (riscv_register_move_cost): Likewise. + (riscv_builtin_vectorization_cost): Likewise. + +2025-06-03 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * config/riscv/autovec-opt.md (*<optab>_vf_<mode>): Add new pattern to + combine vec_duplicate + vfm{add,sub}.vv into vfm{add,sub}.vf. + * config/riscv/riscv-opts.h (FPR2VR_COST_UNPROVIDED): Define. + * config/riscv/riscv-protos.h (get_fr2vr_cost): Declare function. + * config/riscv/riscv.cc (riscv_rtx_costs): Add cost model for MULT with + VEC_DUPLICATE. + (get_fr2vr_cost): New function. + * config/riscv/riscv.opt: Add new option --param=fpr2vr-cost. + +2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120451 + * tree-switch-conversion.cc (switch_conversion::build_one_array): Mark + the newly created decl as mergable. + +2025-06-02 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + PR middle-end/118939 + * lra-spills.cc (spill_pseudos): Update insn regno info. + * lra-eliminations.cc (update_reg_eliminate): Recognize + disabling of active elimination regardless of + prev_can_eliminate. + +2025-06-02 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension defs. + * config/riscv/riscv-ext.opt: Ditto. + * doc/riscv-ext.texi: Ditto. + +2025-06-02 Stafford Horne <shorne@gmail.com> + + * config/or1k/predicates.md (call_insn_operand): Add condition + to not allow symbol_ref operands with TARGET_CMODEL_LARGE. + * config/or1k/or1k.opt: Document new -mcmodel=large + implications. + * doc/invoke.texi: Likewise. + +2025-06-02 Christophe Lyon <christophe.lyon@linaro.org> + + * doc/sourcebuild.texi (tls_link): Add documentation. + +2025-06-02 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/t-riscv: Adjust build rule for gen-riscv-ext-opt + and gen-riscv-ext-texi. + +2025-06-02 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Use + range-based-for-loop. + * config/riscv/riscv-subset.h (riscv_subset_list::iterator): + New. + (riscv_subset_list::const_iterator): New. + +2025-06-01 H.J. Lu <hjl.tools@gmail.com> + + PR other/120493 + * final.cc (call_from_call_insn): Change the argument type to + const rtx_call_insn *. + (get_call_rtx_from): New. + * rtl.h (is_a_helper <const rtx_call_insn *>::test): New. + (get_call_rtx_from): Moved to the final.cc section. + * rtlanal.cc (get_call_rtx_from): Removed. + +2025-06-01 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_vector_load): Set the vuse manually + on the new load statements. Also remove forward declaration since + the definition is before the first use. + (pass_forwprop::execute): Likewise for complex loads. + (pass_data_forwprop): Remove TODO_update_ssa. + +2025-06-01 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md: Fix line too long for sorts + of pattern. + +2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc: Remove include of reload.h. + +2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.md (movsf_internal): + Remove destination side constraint modifier '^' in the third + alternative. + +2025-06-01 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc + (xtensa_ira_change_pseudo_allocno_class): + New prototype and function. + (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Define macro. + (xtensa_register_move_cost): + Change between integer and FP register move cost to a value + based on actual behavior, i.e. 2, the default and the same as + the move cost between integer registers. + +2025-05-31 Andrew Pinski <quic_apinski@quicinc.com> + + * function.h (struct function): Remove last_verified. + * gimple-harden-conditionals.cc (pass_data_harden_compares): Remove + TODO_verify_il. + (pass_data_harden_conditional_branches): Likewise. + * gimple-harden-control-flow.cc (pass_harden_control_flow_redundancy::execute): + Don't return TODO_verify_il. + * ipa-strub.cc (pass_data_ipa_strub): Remove TODO_verify_il. + * passes.cc (TODO_verify_il): Define. + (execute_function_todo): Don't use or set last_verified. + (clear_last_verified): Remove. + (execute_one_ipa_transform_pass): Update comment before execute_todo. + Assert that none of the todos have TODO_verify_il set on it. + (execute_one_pass): Don't call clear_last_verified on all functions. + Assert that none of the todos have TODO_verify_il set on it. + * tree-inline.cc (initialize_cfun): Don't copy last_verified. + * tree-pass.h (TODO_verify_all): Remove. + * tree-vrp.cc (pass_data_early_vrp): Remove TODO_verify_all. + (pass_data_fast_vrp): Likewise. + +2025-05-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120357 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): Create + the conditional reduction induction IV increment before the + main IV exit. + +2025-05-31 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120389 + * doc/gm2.texi (-fm2-strict-type-reason): Document new flag. + +2025-05-30 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc (HTML_STYLE): Add ".highlight-a" and + ".highlight-b". + (html_builder::make_element_for_diagnostic): Handle begin_color + and end_color. + * diagnostic-show-locus.cc (to_html::to_html): Add "richloc" + param and use it to initialize m_richloc. + (to_html::colorize_text_for_range_idx): Drop. + (to_html::get_location_range_by_idx): New. + (to_html::get_highlight_color_for_range_idx): New. + (to_html::m_richloc): New field. + (print_html_span_start): Update for new param of to_html ctor. + (line_printer::m_was_in_range_p): New field. + (line_printer::m_last_range_idx): New field. + (layout_printer<Sink>::print_source_line): Use set_in_range + and set_outside_range rather than colorization calls. + (layout_printer<Sink>::set_in_range): New. + (layout_printer<Sink>::set_outside_range): New. + (layout_printer<Sink>::print_annotation_line): Use set_in_range + and set_outside_range rather than colorization calls. + (layout_printer<to_text>::begin_label): Convert param from label + to state_idx. Add "is_label_text" param and use it to guard logic + for turning off colorization within paths. + (layout_printer<to_html>::begin_label): Likewise. Push <span> + for any highlight color. + (layout_printer<to_text>::end_label): Likewise. + (layout_printer<to_text>::end_label): Likewise, popping the + <span>. + (layout_printer<Sink>::print_any_labels): Convert begin/end_label + calls to pass in state_idx rather than label. Use begin/end_label + rather than colorization calls. + (layout_printer<Sink>::layout_printer): Likewise. + (layout_printer<Sink>::layout_printer): Initialize new fields. + (diagnostic_source_print_policy::print_as_html): Update for new + param of to_html ctor. + +2025-05-30 Andrew Pinski <quic_apinski@quicinc.com> + + * passes.cc (execute_all_ipa_transforms): Fix typo in + commenet. + +2025-05-30 Joseph Myers <josmyers@redhat.com> + + * doc/standards.texi (C Language): Document library facilities + provided in terms of headers not declaring functions with external + linkage, not in terms of headers required of freestanding + implementations. + * doc/sourcebuild.texi (Subdirectories, Headers): Likewise. + * doc/trouble.texi (Standard Libraries): Likewise. + +2025-05-30 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md (avg<v_double_trunc>3_ceil): Add insn + expand to leverage vaadd with rnu directly. + +2025-05-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120341 + * tree-ssa-loop-im.cc (can_sm_ref_p): STRING_CSTs are readonly. + * tree-ssa-phiopt.cc (cond_store_replacement): Likewise. + +2025-05-30 Thomas Schwinge <tschwinge@baylibre.com> + Richard Biener <rguenther@suse.de> + + PR middle-end/119835 + * tree-nrv.cc (pass_nrv::execute): Defuse 'RESULT_DECL' check. + +2025-05-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-show-locus.cc (colorizer::m_current_named_color): New + field. + (colorizer::set_named_color): Use it to consolidate repeated calls + to the same color. + +2025-05-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120457 + * tree-vect-slp.cc (vect_lower_load_permutations): Implement + the same heuristics as load vectorization for single-element + interleaving that spans multiple vectors. + +2025-05-30 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120347 + * rtlanal.cc (rtx_properties::try_to_add_src): Don't drop the + IN_MEM_LOAD and IN_MEM_STORE flags for autoinc registers. + * rtl-ssa/changes.cc (recog_level2): Check whether an + RTX_AUTOINCed register also appears outside of an address. + +2025-05-30 Julian Brown <julian@codesourcery.com> + Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (gimplify_omp_ctx): Add IMPLICIT_MAPPERS field. + (new_omp_context): Initialise IMPLICIT_MAPPERS hash map. + (delete_omp_context): Delete IMPLICIT_MAPPERS hash map. + (instantiate_mapper_info): New structs. + (remap_mapper_decl_1, omp_mapper_copy_decl, omp_instantiate_mapper, + omp_instantiate_implicit_mappers): New functions. + (gimplify_scan_omp_clauses): Handle MAPPER_BINDING clauses. + (gimplify_adjust_omp_clauses): Instantiate implicit declared mappers. + (gimplify_omp_declare_mapper): New function. + (gimplify_expr): Call above function. + * langhooks-def.h (lhd_omp_mapper_lookup, + lhd_omp_extract_mapper_directive, lhd_omp_map_array_section): Add + prototypes. + (LANG_HOOKS_OMP_FINISH_MAPPER_CLAUSES, + LANG_HOOKS_OMP_MAPPER_LOOKUP, LANG_HOOKS_OMP_EXTRACT_MAPPER_DIRECTIVE, + LANG_HOOKS_OMP_MAP_ARRAY_SECTION): Define macros. + (LANG_HOOK_DECLS): Add above macros. + * langhooks.cc (lhd_omp_mapper_lookup, + lhd_omp_extract_mapper_directive, lhd_omp_map_array_section): New + dummy functions. + * langhooks.h (lang_hooks_for_decls): Add OMP_FINISH_MAPPER_CLAUSES, + OMP_MAPPER_LOOKUP, OMP_EXTRACT_MAPPER_DIRECTIVE, OMP_MAP_ARRAY_SECTION + hooks. + * omp-general.h (omp_name_type<T>): Add templatized struct, hash type + traits (for omp_name_type<tree> specialization). + (omp_mapper_list<T>): Add struct. + * tree-core.h (omp_clause_code): Add OMP_CLAUSE__MAPPER_BINDING_. + * tree-pretty-print.cc (dump_omp_clause): Support GOMP_MAP_UNSET, + GOMP_MAP_PUSH_MAPPER_NAME, GOMP_MAP_POP_MAPPER_NAME artificial mapping + clauses. Support OMP_CLAUSE__MAPPER_BINDING_ and OMP_DECLARE_MAPPER. + * tree.cc (omp_clause_num_ops, omp_clause_code_name): Add + OMP_CLAUSE__MAPPER_BINDING_. + * tree.def (OMP_DECLARE_MAPPER): New tree code. + * tree.h (OMP_DECLARE_MAPPER_ID, OMP_DECLARE_MAPPER_DECL, + OMP_DECLARE_MAPPER_CLAUSES): New defines. + (OMP_CLAUSE__MAPPER_BINDING__ID, OMP_CLAUSE__MAPPER_BINDING__DECL, + OMP_CLAUSE__MAPPER_BINDING__MAPPER): New defines. + +2025-05-30 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-ssa-sccopy.cc (scc_copy_prop::replace_scc_by_value): Return true + if something was done. + (scc_copy_prop::propagate): Return true if something was changed. + (pass_sccopy::execute): Return TODO_cleanup_cfg if a prop happened. + +2025-05-30 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * auto-profile.cc (function_instance::merge): New. + (autofdo_source_profile::read): Call merge. + +2025-05-29 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * config/aarch64/gcc-auto-profile: Make script executable. + +2025-05-29 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Adds + statistics when the statement changed. + +2025-05-29 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Change check + from NULL/non-ssa name to default name. + +2025-05-29 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc (HTML_STYLE): Fix PatternFly URL in + comment. + +2025-05-29 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc + (html_builder::make_element_for_diagnostic::html_token_printer): + Reimplement in terms of xml::printer. + (html_builder::make_element_for_diagnostic): Create an + xml::printer and use it with the html_token_printer. + +2025-05-29 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-html.cc (html_builder::make_metadata_element): + Gracefully handle the case where "url" is null. + +2025-05-29 David Malcolm <dmalcolm@redhat.com> + + * pretty-print.cc (pretty_printer::pretty_printer): Use "nullptr" + rather than "NULL". Remove explicit delete of + m_format_postprocessor. + * pretty-print.h (format_postprocessor::clone): Use unique_ptr. + (pretty_printer::set_format_postprocessor): New. + (pretty_printer::m_format_postprocessor): Use unique_ptr. + (pp_format_postprocessor): Update for use of unique_ptr, removing + reference from return type. + +2025-05-29 Martin Jambor <mjambor@suse.cz> + + PR ipa/120295 + * ipa-prop.cc (update_jump_functions_after_inlining): Do not + combine pass-through jump functions with type-casts changing + signedness. + +2025-05-29 Martin Jambor <mjambor@suse.cz> + + * ipa-prop.cc (ipa_dump_jump_function): Fix whitespace when + dumping IPA VRs. + +2025-05-29 Pranav Gorantla <Pranav.Gorantla@amd.com> + + * config/i386/i386-expand.cc (emit_reduc_half): Use shuffles to + generate reduc half for V4SI, similar modes. + * config/i386/i386.h (TARGET_SSE_REDUCTION_PREFER_PSHUF): New Macro. + * config/i386/x86-tune.def (X86_TUNE_SSE_REDUCTION_PREFER_PSHUF): + New tuning. + +2025-05-29 Jakub Jelinek <jakub@redhat.com> + + PR bootstrap/120464 + * ggc-page.cc (struct ggc_globals): Fix up comment formatting. + (find_free_list): Likewise. + (alloc_page): For defined(USING_MALLOC_PAGE_GROUPS) use + free_list->free_pages instead of G.free_pages. + (do_release_pages): Add n1 and n2 arguments, make them used. + Move defined(USING_MALLOC_PAGE_GROUPS) page group freeing to + release_pages and dumping of statistics as well. Formatting fixes. + (release_pages): Adjust do_release_pages caller, move here + defined(USING_MALLOC_PAGE_GROUPS) page group freeing and dumping + of statistics. + (ggc_handle_finalizers): Fix up comment formatting and typo. + +2025-05-29 Jerry Zhang Jian <jerry.zhangjian@sifive.com> + + * config/riscv/riscv-ext.def: New extensions + * config/riscv/riscv-ext.opt: Auto re-generated + * doc/riscv-ext.texi: Auto re-generated + +2025-05-29 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case for MULT op. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op mult to no_shift_vx_ops. + +2025-05-28 Jan Hubicka <hubicka@ucw.cz> + + PR target/119298 + * config/i386/x86-tune-costs.h (struct processor_costs): Set addss cost + back to 2. + +2025-05-28 Robin Dapp <rdapp.gcc@gmail.com> + + * tree-vect-stmts.cc (vectorizable_load): Remove non-SLP paths. + +2025-05-28 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120436 + * config/riscv/riscv-vector-builtins-shapes.cc (struct vset_def): + Avoid division by zero. + (struct vget_def): Ditto. + * config/riscv/riscv-vector-builtins.h (struct function_group_info): + Use required_extensions_specified instead of duplicating code. + +2025-05-28 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec.md (avg<v_double_trunc>3_floor): Add insn + expand to leverage vaadd directly. + +2025-05-28 Jan Hubicka <hubicka@ucw.cz> + + * cgraph.cc (cgraph_edge::maybe_hot_p): For auto-fdo turn 0 + to non-zero. + * ipa-cp.cc (cs_interesting_for_ipcp_p): Do not trust + auto-fdo 0. + * profile-count.cc (profile_count::adjust_for_ipa_scaling): Likewise. + (profile_count::from_gcov_type): Fix formating. + +2025-05-28 Jan Hubicka <hubicka@ucw.cz> + + * predict.cc (rebuild_frequencies): look harder for presence + of profile feedback. + +2025-05-28 Yuta Mukai <mukai.yuta@fujitsu.com> + + * config/aarch64/aarch64-cores.def (fujitsu-monaka): Update ISA + features. + +2025-05-28 Jan Hubicka <hubicka@ucw.cz> + + * predict.cc (set_even_probabilities): Set quality to guessed. + +2025-05-28 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (update_count_by_afdo_count): New function. + (afdo_set_bb_count): Add debug output; only set count if it is + non-zero. + (afdo_find_equiv_class): Add debug output. + (afdo_calculate_branch_prob): Fix formating. + (afdo_annotate_cfg): Add debug output; do not erase static + profile if autofdo profile is all 0. + +2025-05-28 Haochen Jiang <haochen.jiang@intel.com> + + * doc/extend.texi (C Extensions): Add missing menu items. + +2025-05-28 liuhongt <hongtao.liu@intel.com> + + PR tree-optimization/119181 + * tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): + Split datarefs when there's a gap bigger than + MAX_BITSIZE_MODE_ANY_MODE. + +2025-05-27 Jason Merrill <jason@redhat.com> + + PR c++/120400 + * fold-const.cc (simple_operand_p): False for vars with + DECL_VALUE_EXPR. + +2025-05-27 Alejandro Colomar <alx@kernel.org> + + PR c/117025 + * Makefile.in (USER_H): Add <stdcountof.h>. + * ginclude/stdcountof.h: New file. + +2025-05-27 Alejandro Colomar <alx@kernel.org> + Martin Uecker <uecker@tugraz.at> + + PR c/117025 + * doc/extend.texi: Document _Countof operator. + +2025-05-27 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/gcc-auto-profile: regenerate. + +2025-05-27 Jan Hubicka <hubicka@ucw.cz> + + * auto-profile.cc (function_instance::mark_annotated): Remove. + (function_instance::total_annotated_count): Remove. + (autofdo_source_profile::mark_annotated): Remove. + (afdo_set_bb_count): Do not mark annotated locations. + (afdo_annotate_cfg): Likewise. + +2025-05-27 Eric Botcazou <ebotcazou@adacore.com> + + * ipa-sra.cc (scan_expr_access): Also disqualify storage order + barriers from splitting. + * tree.h (storage_order_barrier_p): Also return false if the + operand of the VIEW_CONVERT_EXPR has reverse storage order. + +2025-05-27 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc: Define INCLUDE_STRING. + Include "xml.h", "xml-printer.h", and "json.h". + (html_generation_options::html_generation_options): New. + (namespace xml): Move decls to xml.h and convert from using + label_text to std::string. + (xml::text::write_as_xml): Reimplement indentation so it is done + by this node, rather than the parent. + (xml::node_with_children::add_text): Convert from label_text to + std::string. Consolidate runs of text into a single node. + (xml::document::write_as_xml): Reimplement indentation. + (xml::element::write_as_xml): Reimplement indentation so it is + done by this node, rather than the parent. Convert from + label_text to std::string. Update attribute-printing to new + representation to preserve insertion order. + (xml::element::set_attr): Convert from label_text to std::string. + Record insertion order. + (xml::raw::write_as_xml): New. + (xml::printer::printer): New. + (xml::printer::push_tag): New. + (xml::printer::push_tag_with_class): New. + (xml::printer::pop_tag): New. + (xml::printer::set_attr): New. + (xml::printer::add_text): New. + (xml::printer::add_raw): New. + (xml::printer::push_element): New. + (xml::printer::append): New. + (xml::printer::get_insertion_point): New. + (html_builder::add_focus_id): New. + (html_builder::m_html_gen_opts): New field. + (html_builder::m_head_element): New field. + (html_builder::m_next_diag_id): New field. + (html_builder::m_ui_focus_ids): New field. + (make_div): Convert from label_text to std::string. + (make_span): Likewise. + (HTML_STYLE): New. + (HTML_SCRIPT): New. + (html_builder::html_builder): Fix indentation. Add + "html_gen_opts" param. Initialize new fields. Reimplement + using xml::printer. Optionally add style and script tags. + (class html_path_label_writer): New. + (html_builder::make_element_for_diagnostic): Convert from + label_text to std::string. Set "id" on "gcc-diagnostic" and + "gcc-message" <div> elements; add the latter to the focus ids. + Use diagnostic_context::maybe_show_locus_as_html rather than + html_builder::make_element_for_source. Use print_path_as_html + rather than html_builder::make_element_for_path. + (html_builder::make_element_for_source): Drop. + (html_builder::make_element_for_path): Drop. + (html_builder::make_element_for_patch): Convert from label_text to + std::string. + (html_builder::make_metadata_element): Likewise. Use + xml::printer. + (html_builder::make_element_for_metadata): Convert from label_text + to std::string. + (html_builder::emit_diagram): Expand comment. + (html_builder::flush_to_file): Write out initializer for + "focus_ids" into javascript. + (html_output_format::html_output_format): Add param + "html_gen_opts" and use it to initialize m_builder. + (html_file_output_format::html_file_output_format): Likewise, to + initialize base class. + (make_html_sink): Likewise, to pass to ctor. + (selftest::test_html_diagnostic_context::test_html_diagnostic_context): + Set up html_generation_options. + (selftest::html_buffered_output_format::html_buffered_output_format): + Add html_gen_opts param. + (selftest::test_simple_log): Add id attributes to expected text + for "gcc-diagnostic" and "gcc-message" elements. Update + whitespace for indentation fixes. + (selftest::test_metadata): Update whitespace for indentation + fixes. + (selftest::test_printer): New selftest. + (selftest::test_attribute_ordering): New selftest. + (selftest::diagnostic_format_html_cc_tests): Call the new + selftests. + * diagnostic-format-html.h (struct html_generation_options): New. + (make_html_sink): Add "html_gen_opts" param. + (print_path_as_html): New decl. + * diagnostic-path-output.cc: Define INCLUDE_MAP. Add includes of + "diagnostic-format-html.h", "xml.h", and "xml-printer.h". + (path_print_policy::path_print_policy): Add ctor. + (path_print_policy::get_diagram_theme): Fix whitespace. + (struct stack_frame): New. + (begin_html_stack_frame): New function. + (end_html_stack_frame): New function. + (emit_svg_arrow): New function. + (event_range::print): Rename to... + (event_range::print_as_text): ...this. Update call to + diagnostic_start_span. + (event_range::print_as_html): New, based on the above, but ported + from pretty_printer to xml::printer. + (thread_event_printer::print_swimlane_for_event_range): Rename + to... + (thread_event_printer::print_swimlane_for_event_range_as_text): + ...this. Update for renaming of event_range::print to + event_range::print_as_text. + (thread_event_printer::print_swimlane_for_event_range_as_html): + New. + (print_path_summary_as_text): Update for "_as_text" renaming. + (print_path_summary_as_html): New. + (print_path_as_html): New. + * diagnostic-show-locus.cc: Add defines of INCLUDE_MAP and + INCLUDE_STRING. Add includes of "xml.h" and "xml-printer.h". + (struct char_display_policy): Replace "m_print_cb" with + "m_print_text_cb" and "m_print_html_cb". + (struct to_text): New. + (struct to_html): New. + (get_printer): New. + (default_diagnostic_start_span_fn<to_text>): New. + (default_diagnostic_start_span_fn<to_html>): New. + (class layout): Update "friend class layout_printer;" for + template. + (enum class margin_kind): New. + (class layout_printer): Convert into a template. + (layout_printer::m_pp): Replace field with... + (layout_printer::m_sink): ...this. + (layout_printer::m_colorizer): Drop field in favor of a pointer + in the "to_text" sink. + (default_print_decoded_ch): Convert into a template. + (escape_as_bytes_print): Likewise. + (escape_as_unicode_print): Likewise. + (make_char_policy): Update to use both text and html callbacks. + (layout_printer::print_gap_in_line_numbering): Replace with... + (layout_printer<to_text>::print_gap_in_line_numbering): ...this + (layout_printer<to_html>::print_gap_in_line_numbering): ...and + this. + (layout_printer::print_source_line): Convert to template, using + m_sink. + (layout_printer::print_leftmost_column): Likewise. + (layout_printer::start_annotation_line): Likewise. + (layout_printer<to_text>::end_line): New. + (layout_printer<to_html>::end_line): New. + (layout_printer::print_annotation_line): Convert to template, + using m_sink. + (class line_label): Add field m_original_range_idx. + (layout_printer<to_text>::begin_label): New. + (layout_printer<to_html>::begin_label): New. + (layout_printer<to_text>::end_label): New. + (layout_printer<to_html>::end_label): New. + (layout_printer::print_any_labels): Convert to template, using + m_sink. + (layout_printer::print_leading_fixits): Likewise. + (layout_printer::print_trailing_fixits): Likewise. + (layout_printer::print_newline): Drop. + (layout_printer::move_to_column): Convert to template, using + m_sink. + (layout_printer::show_ruler): Likewise. + (layout_printer::print_line): Likewise. + (layout_printer::print_any_right_to_left_edge_lines): Likewise. + (layout_printer::layout_printer): Likewise. + (diagnostic_context::maybe_show_locus_as_html): New. + (diagnostic_source_print_policy::diagnostic_source_print_policy): + Update for split of start_span_cb into text vs html variants. + (diagnostic_source_print_policy::print): Update for use of + templates; use to_text. + (diagnostic_source_print_policy::print_as_html): New. + (layout_printer::print): Convert to template, using m_sink. + (selftest::make_element_for_locus): New. + (selftest::make_raw_html_for_locus): New. + (selftest::test_layout_x_offset_display_utf8): Update for use of + templates. + (selftest::test_layout_x_offset_display_tab): Likewise. + (selftest::test_one_liner_caret_and_range): Add test coverage of + HTML output. + (selftest::test_one_liner_labels): Likewise. + * diagnostic.cc (diagnostic_context::initialize): Update for split + of start_span_cb into text vs html variants. + (default_diagnostic_start_span_fn): Move to + diagnostic-show-locus.cc, converting to template. + * diagnostic.h (class xml::printer): New forward decl. + (diagnostic_start_span_fn): Replace typedef with "using", + converting to a template. + (struct to_text): New forward decl. + (struct to_html): New forward decl. + (get_printer): New decl. + (diagnostic_location_print_policy::print_text_span_start): New + decl. + (diagnostic_location_print_policy::print_html_span_start): New + decl. + (class html_label_writer): New. + (diagnostic_source_print_policy::print_as_html): New decl. + (diagnostic_source_print_policy::get_start_span_fn): Replace + with... + (diagnostic_source_print_policy::get_text_start_span_fn): ...this + (diagnostic_source_print_policy::get_html_start_span_fn): ...and + this + (diagnostic_source_print_policy::m_start_span_cb): Replace with... + (diagnostic_source_print_policy::m_text_start_span_cb): ...this + (diagnostic_source_print_policy::m_html_start_span_cb): ...and + this. + (diagnostic_context::maybe_show_locus_as_html): New decl. + (diagnostic_context::m_text_callbacks::m_start_span): Replace + with... + (diagnostic_context::m_text_callbacks::m_text_start_span): ...this + (diagnostic_context::m_text_callbacks::m_html_start_span): ...and + this. + (diagnostic_start_span): Update for template change. + (diagnostic_show_locus_as_html): New inline function. + (default_diagnostic_start_span_fn): Convert to template. + * doc/invoke.texi (experimental-html): Add "css" and "javascript" + keys. + * opts-diagnostic.cc (html_scheme_handler::make_sink): Likewise. + * selftest-diagnostic.cc + (selftest::test_diagnostic_context::start_span_cb): Update for + template changes. + * selftest-diagnostic.h + (selftest::test_diagnostic_context::start_span_cb): Likewise. + * xml-printer.h: New file. + * xml.h: New file, based on material in diagnostic-format-html.cc, + but using std::string rather than label_text. + (xml::element::m_key_insertion_order): New field. + (struct xml::raw): New. + +2025-05-27 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostic-path-output.o. + * diagnostic-path-output.cc: New file, taken from material in + diagnostic-path.cc. + * diagnostic-path.cc: Drop includes of + "diagnostic-macro-unwinding.h", "intl.h", "gcc-rich-location.h", + "diagnostic-color.h", "diagnostic-event-id.h", + "diagnostic-label-effects.h", "pretty-print-markup.h", + "selftest.h", "selftest-diagnostic.h", + "selftest-diagnostic-path.h", "text-art/theme.h", and + "diagnostic-format-text.h". + (class path_print_policy): Move to diagnostic-path-output.cc. + (class path_label): Likewise. + (can_consolidate_events): Likewise. + (class per_thread_summary): Likewise. + (struct event_range): Likewise. + (struct path_summary): Likewise. + (per_thread_summary::interprocedural_p): Likewise. + (path_summary::path_summary): Likewise. + (write_indent): Likewise. + (base_indent): Likewise. + (per_frame_indent): Likewise. + (class thread_event_printer): Likewise. + (print_path_summary_as_text): Likewise. + (class element_event_desc): Likewise. + (diagnostic_text_output_format::print_path): Likewise. + (selftest::path_events_have_column_data_p): Likewise. + (selftest::test_empty_path): Likewise. + (selftest::test_intraprocedural_path): Likewise. + (selftest::test_interprocedural_path_1): Likewise. + (selftest::test_interprocedural_path_2): Likewise. + (selftest::test_recursion): Likewise. + (class selftest::control_flow_test): Likewise. + (selftest::test_control_flow_1): Likewise. + (selftest::test_control_flow_2): Likewise. + (selftest::test_control_flow_3): Likewise. + (selftest::assert_cfg_edge_path_streq): Likewise. + (ASSERT_CFG_EDGE_PATH_STREQ): Likewise. + (selftest::test_control_flow_4): Likewise. + (selftest::test_control_flow_5): Likewise. + (selftest::test_control_flow_6): Likewise. + (selftest::control_flow_tests): Likewise. + (selftest::diagnostic_path_cc_tests): Likewise, renaming + accordingly. + * selftest-run-tests.cc (selftest::run_tests): Update for + move of path-printing selftests. + * selftest.h (selftest::diagnostic_path_cc_tests): Replace decl + with... + (selftest::diagnostic_path_output_cc_tests): ...this. + +2025-05-27 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/vector.md(*vec_extract<mode>): Fix mnemonic. + +2025-05-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117965 + * tree-ssa-phiprop.cc (phivn_valid_p): Remove. + (propagate_with_phi): Pass in virtual PHI node from BB, + rewrite load motion validity check to require the same + virtual use along all paths. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119884 + * avoid-store-forwarding.cc (process_store_forwarding): + Use `lowpart_subreg` for the base register initialization + and remove redundant stores from the store/load sequence. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + * sbitmap.cc (bitmap_any_bit_in_range_p): + Call and return the result of `bitmap_bit_in_range_p` with the + `any_inverted` parameter set to false. + (bitmap_bit_in_range_p): New function. + (bitmap_all_bits_in_range_p): New function. + * sbitmap.h (bitmap_all_bits_in_range_p): New function. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + * sbitmap.cc (bitmap_bit_in_range_p): Renamed the function. + (bitmap_any_bit_in_range_p): New function name. + (bitmap_bit_in_range_p_checking): Renamed the function. + (bitmap_any_bit_in_range_p_checking): New function name. + (test_set_range): Updated function calls to use the new name. + (test_bit_in_range): Likewise. + * sbitmap.h (bitmap_bit_in_range_p): Renamed the function. + (bitmap_any_bit_in_range_p): New function name. + * tree-ssa-dse.cc (live_bytes_read): + Updated function call to use the new name. + +2025-05-27 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/bitmanip.md (andi+bclr splits): Simplified from + prior define_insn_and_splits. + * config/riscv/riscv.cc (synthesize_and): Add support for andi+bclr + sequences. + +2025-05-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case for XOR op. + (expand_vx_binary_vec_vec_dup): Diito. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op or to no_shift_vx_ops. + +2025-05-27 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/vector.md (VF): New mode iterator. + (VEC_SET_NONFLOAT): New mode iterator. + (VEC_SET_SINGLEFLOAT): New mode iterator. + (*vec_set<mode>): Split pattern in two. + (*vec_setv2df): Extract special handling for V2DF mode. + (*vec_extract<mode>): Split pattern in two. + +2025-05-27 Jonathan Wakely <jwakely@redhat.com> + + * doc/extend.texi (Common Variable Attributes): Fix typo in + description of nonstring. + +2025-05-27 Kito Cheng <kito.cheng@sifive.com> + + * gcc.cc (find_multilib_os_dir_by_multilib_dir): New. + (set_multilib_dir): Fix multilib_os_dir and multiarch_dir + if multilib_os_dir is not set. + +2025-05-27 xuli <xuli1@eswincomputing.com> + + * match.pd: add singned vector SAT_ADD IMM form1 matching. + +2025-05-27 xuli <xuli1@eswincomputing.com> + + * match.pd: Add signed scalar SAT_ADD IMM form1 with IMM=-1 matching. + * tree-ssa-math-opts.cc (match_unsigned_saturation_add): Adapt function name. + (match_saturation_add_with_assign): Match signed and unsigned SAT_ADD with assign. + (math_opts_dom_walker::after_dom_children): Match imm=-1 signed SAT_ADD with NOP_EXPR case. + +2025-05-26 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi: Move C++ -fdump-lang to C++ section. + Add -fdump-lang-tinst. + +2025-05-26 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * config/aarch64/gcc-auto-profile: New file. + +2025-05-26 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/rs6000.cc: Remove include of reload.h . + +2025-05-26 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * ipa-split.cc (pass_feedback_split_functions::clone): New. + * passes.def: Enable pass_feedback_split_functions for + pass_ipa_auto_profile. + +2025-05-25 Michael J. Eager <eager@eagercon.com> + + PR target/86772 + Tracking CVE-2017-5753 + * config/microblaze/microblaze.cc (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_save_value_not_needed + +2025-05-25 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_builtin_vectorization_cost): + use sse_op instead of addss to cost vinsertti128 and vinsertti64x4; + compute correct mode of vinsertti128. + (ix86_vector_costs::add_stmt_cost): For integer 256bit and 512bit + vector constructions account more integer_to_sse moves. + +2025-05-25 LIU Hao <lh_mouse@126.com> + + PR target/53929 + PR target/80881 + * config/i386/i386-protos.h (ix86_asm_output_labelref): Declare new + function for quoting user-defined symbols in Intel syntax. + * config/i386/i386.cc (ix86_asm_output_labelref): Implement it. + * config/i386/i386.h (ASM_OUTPUT_LABELREF): Use it. + * config/i386/cygming.h (ASM_OUTPUT_LABELREF): Use it. + +2025-05-24 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/riscv.cc (synthesize_and): Use a srl+andi+sll + sequence when the mask fits in a simm12 after shifting by the + number of trailing zeros. + Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + +2025-05-24 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new + case for IOR op. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op or to no_shift_vx_ops. + +2025-05-23 Andi Kleen <ak@gcc.gnu.org> + + * doc/install.texi: Document bootstrap-native. + +2025-05-23 Andi Kleen <ak@gcc.gnu.org> + + PR middle-end/114563 + PR c++/119387 + * ggc-page.cc (struct free_list): New structure. + (struct page_entry): Point to free_list. + (find_free_list): New function. + (find_free_list_order): Dito. + (alloc_page): Use specific free_list. + (release_pages): Dito. + (do_release_pages): Dito. + (init_ggc): Dito. + (ggc_print_statistics): Print overflow stat. + (ggc_pch_read): Use specific free list. + +2025-05-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * doc/implement-c.texi (C Implementation): Add missing menu items. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * common/config/riscv/riscv-common.cc (riscv_subset_list::parse_base_ext): + Adjust error message. + (riscv_handle_option): Parse as CPU string first. + (riscv_expand_arch): Ditto. + * doc/invoke.texi: Document. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-v.cc (autovectorize_vector_modes): Return + user-specified mode if available. + * config/riscv/riscv.opt: New param. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv.cc (singleton_vxrm_need): Init + saved_vxrm_mode. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): + Always use vect_vf_for_cost and TARGET_MIN_VLEN. + +2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> + Richard Sandiford <richard.sandiford@arm.com> + + * expmed.cc (expand_rotate_as_vec_perm): Avoid a no-op move if the + target already provided the result in the expected register. + * config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): + Avoid forcing subregs into fresh registers unnecessarily. + * config/aarch64/aarch64-sve.md: Add define_split for rotate. + (*v_revvnx8hi): New pattern. + +2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> + Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_adr<mode>_shift): + Match lowered form of ashift. + (*aarch64_adr<mode>_shift): Likewise. + (*aarch64_adr_shift_sxtw): Likewise. + (*aarch64_adr_shift_uxtw): Likewise. + (<ASHIFT:optab><mode>3): Check amount instead of operands[2] in + aarch64_sve_<lr>shift_operand. + (v<optab><mode>3): Generate unpredicated shifts for constant + operands. + (@aarch64_pred_<optab><mode>): Convert to a define_expand. + (*aarch64_pred_<optab><mode>): Create define_insn_and_split pattern + from @aarch64_pred_<optab><mode>. + (*post_ra_v_ashl<mode>3): Rename to ... + (aarch64_vashl<mode>3_const): ... this and remove reload requirement. + (*post_ra_v_<optab><mode>3): Rename to ... + (aarch64_v<optab><mode>3_const): ... this and remove reload + requirement. + * config/aarch64/aarch64-sve2.md + (@aarch64_sve_add_<sve_int_op><mode>): Match lowered form of + SHIFTRT. + (*aarch64_sve2_sra<mode>): Likewise. + (*bitmask_shift_plus<mode>): Match lowered form of lshiftrt. + +2025-05-22 Joseph Myers <josmyers@redhat.com> + + * doc/implement-c.texi: Document C23 implementation-defined + behavior. + (Constant expressions implementation, Types implementation): New + nodes. + +2025-05-22 Eric Botcazou <ebotcazou@adacore.com> + + * dwarf2out.cc (loc_list_from_tree_1) <COMPONENT_REF>: Add specific + handling of bit-fields for big-endian targets. + +2025-05-22 Alexandre Oliva <oliva@adacore.com> + + * config/aarch64/aarch64-vxworks.h (TARGET_OS_USES_R18): Define. + Update comments. + * config/aarch64/aarch64.cc (aarch64_conditional_register_usage): + Mark x18 as fixed on VxWorks. + (aarch64_override_options_internal): Issue sorry message on + -fsanitize=shadow-call-stack if TARGET_OS_USES_R18. + +2025-05-22 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/riscv.cc (synthesize_and): When profitable, use a three + shift sequence to clear bits at both upper and lower bits rather than + synthesizing the constant mask. + +2025-05-22 Siarhei Volkau <lis8215@gmail.com> + + PR target/70557 + * config/riscv/riscv.md (movdi_32bit): Add "J" constraint to allow storing 0 + directly to memory. + +2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/120372 + * config/aarch64/aarch64.cc (aarch64_rtx_costs <case CONST_INSN>): Handle + if outer is COMPARE and the constant can be handled by the cmp instruction. + +2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> + + * expmed.cc (canonicalize_comparison): Use rtx_cost directly + instead of gen_move_insn. Print out the choice if dump is enabled. + +2025-05-22 Jakub Jelinek <jakub@redhat.com> + + * gimple-lower-bitint.cc (bitint_extended): New variable. + (bitint_large_huge::lower_shift_stmt): For LSHIFT_EXPR with + bitint_extended if lhs has most significant partial limb extend + it afterwards. + +2025-05-22 Xi Ruoyao <xry111@xry111.site> + + * doc/md.texi: Document the 'q' constraint for LoongArch. + +2025-05-22 Jakub Jelinek <jakub@redhat.com> + + PR target/120360 + * config/i386/predicates.md (x86_64_neg_const_int_operand): New + predicate. + * config/i386/i386.md (*cmp<mode>_plus_1): New pattern. + +2025-05-22 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/riscv.cc (synthesize_and): When profitable, use two + shift combinations to clear high or low bits rather than synthsizing + the constant. + +2025-05-22 Pengxuan Zheng <quic_pzheng@quicinc.com> + + * config/aarch64/aarch64.cc (aarch64_evpc_reencode): Copy zero_op0_p and + zero_op1_p from d to newd. + +2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/120090 + * combine.cc (gen_lowpart_for_combine_no_emit): New function. + (RTL_HOOKS_GEN_LOWPART_NO_EMIT): Set to gen_lowpart_for_combine_no_emit. + +2025-05-21 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.md ((x << C1) + C2): Tighten split condition + and generate more efficient code when splitting. + +2025-05-21 Jeff Law <jlaw@ventanamicro.com> + + PR target/120368 + * config/riscv/riscv.md (shift with masked shift count): Fix + opcode when generating an SImode shift on rv64. + +2025-05-21 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new + case for rtx code AND. + (expand_vx_binary_vec_vec_dup): Ditto. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op and to no_shift_vx_ops. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * gensupport.h (needs_barrier_p): Delete. + * gensupport.cc (needs_barrier_p): Likewise. + * rtl.h (always_void_p): Return true for PC, RETURN and SIMPLE_RETURN. + (expand_opcode): New enum class. + (expand_rtx, complete_seq): Declare. + * emit-rtl.cc (rtx_expander): New class. + (expand_rtx, complete_seq): New functions. + * gengenrtl.cc (special_rtx, excluded_rtx): Add a cross-reference + comment. + * genemit.cc (FIRST_CODE): New constant. + (print_code): Delete. + (generator::file, generator::used, generator::sequence_type): Delete. + (generator::bytes): New member variable. + (generator::generator): Update accordingly. + (generator::gen_rtx_scratch): Delete. + (generator::add_uint, generator::add_opcode, generator::add_code) + (generator::add_match_operator, generator::add_exp) + (generator::add_vec, generator::gen_table): New member functions. + (generator::gen_exp): Rewrite to use a bytecode expansion. + (generator::gen_emit_seq): Likewise. + (start_gen_insn): Return the C++ expression for the operands array. + (gen_insn, gen_expand, gen_split): Update callers accordingly. + (emit_c_code): Remove use of _val. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (clobber_pat::code): Delete. + (maybe_queue_insn): Don't set clobber_pat::code. + (output_add_clobbers): Remove info argument and output the two + REG and SCRATCH cases directly. + (main): Update call accordingly. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (generator::gen_exp): Report an error for 's' operands. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (generator::gen_exp): Raise an error if we see + an 'L' operand. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (generator::used): Update comment. + (generator::gen_exp): Remove handling of null unused arrays. + (gen_insn, gen_expand): Always pass a used array. + (output_add_clobbers): Note why the used array is null here. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (generator): New structure. + (gen_rtx_scratch, gen_exp, gen_emit_seq): Turn into member + functions of generator. + (gen_insn, gen_expand, gen_split, output_add_clobbers): Update + users accordingly. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (gen_rtx_scratch, gen_exp): Use operands[%d] rather than + operand%d. + (start_gen_insn): Mark the incoming arguments as const and store + them to an operands array. + (gen_expand, gen_split): Remove copies into and out of the operands + array. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (start_gen_insn): New function, split out from... + (gen_insn, gen_expand): ...here. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (queue): New static variable. + (maybe_queue_insn): New function, split out from... + (gen_insn): ...here. + (queue_expand): New function, split out from... + (gen_expand): ...here. + (gen_split): New function, split out from... + (queue_split): ...here. + (main): Queue definitions for later processing rather than + emitting them on the fly. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * genemit.cc (gen_exp): Make the info argument a constant reference. + (gen_emit_seq, gen_insn, gen_expand, gen_split): Likewise. + (output_add_clobbers): Likewise. + (main): Update calls accordingly. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * config/sparc/sparc.md (zero_extendhisi2, zero_extendhidi2) + (extendhisi2, extendqihi2, extendqisi2, extendqidi2) + (extendhidi2): Use operands[0] and operands[1] instead of + operand0 and operand1. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + * config/stormy16/stormy16.md (negsi2): Remove unused assignment. + +2025-05-21 Richard Sandiford <richard.sandiford@arm.com> + + PR target/100837 + * config/nds32/nds32-intrinsic.md (unspec_get_pending_int): Use + a local variable instead of operands[2]. + +2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120369 + * tree-complex.cc (gimple_expand_builtin_cabs): Return early + if the LHS of cabs is null. + +2025-05-21 Co-Authored-By: Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-protos.h (synthesize_and): Prototype. + * config/riscv/riscv.cc (synthesize_and): New function. + * config/riscv/riscv.md (and<mode>3): Use it. + +2025-05-21 liuhongt <hongtao.liu@intel.com> + + PR middle-end/118994 + * match.pd ((a >> 1) + (b >> 1) + ((a | b) & 1) to + .AVG_CEIL (a, b)): New pattern. + ((a | b) - ((a ^ b) >> 1) to .AVG_CEIL (a, b)): Ditto. + +2025-05-20 Andrew Pinski <quic_apinski@quicinc.com> + + * Makefile.in (gimple-match-exports.o-warn): Remove. + * gimple-match-exports.cc (gimple_extract): Remove valueize_condition + argument. + (gimple_extract_op): Update call to gimple_extract. + (gimple_simplify): Likewise. Also remove valueize_condition lambda. + +2025-05-20 Umesh Kalappa <ukalappa.mips@gmail.com> + + * config/riscv/mips-p8700.md (mips_p8700_dummies): New + reservation. + (mips_p8700_unknown): Reservation for all the dummies. + +2025-05-20 Umesh Kalappa <ukalappa.mips@gmail.com> + + * config/riscv/mips-p8700.md: New scheduler model. + * config/riscv/riscv-cores.def (mips-p87000): New tuning model + and core architecture. + * config/riscv/riscv-opts.h (riscv_microarchitecture_type); Add + mips-p8700. + * config/riscv/riscv.cc (mips_p8700_tune_info): New uarch + tuning parameters. + * config/riscv/riscv.md (tune): Add mips_p8700. + Include mips-p8700.md + * doc/invoke.texi: Document tune/cpu options for the MIPS P8700. + Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + +2025-05-20 Jakub Jelinek <jakub@redhat.com> + + * tree-chrec.cc (convert_affine_scev): Use signed_type_for instead of + build_nonstandard_integer_type. + +2025-05-20 Jakub Jelinek <jakub@redhat.com> + + * gimple-lower-bitint.cc (bitint_big_endian): New variable. + (bitint_precision_kind): Set it. + (struct bitint_large_huge): Add unsigned argument to + finish_arith_overflow. + (bitint_large_huge::limb_access_type): Handle bitint_big_endian. + (bitint_large_huge::handle_operand): Likewise. + (bitint_large_huge::handle_cast): Likewise. + (bitint_large_huge::handle_bit_field_ref): Likewise. + (bitint_large_huge::handle_load): Likewise. + (bitint_large_huge::lower_shift_stmt): Likewise. + (bitint_large_huge::finish_arith_overflow): Likewise. + Add nelts argument. + (bitint_large_huge::lower_addsub_overflow): Handle bitint_big_endian. + Adjust finish_arith_overflow caller. + (bitint_large_huge::lower_mul_overflow): Likewise. + (bitint_large_huge::lower_bit_query): Handle bitint_big_endian. + (bitint_large_huge::lower_stmt): Likewise. + (build_bitint_stmt_ssa_conflicts): Likewise. + (gimple_lower_bitint): Likewise. + +2025-05-20 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/bitmanip.md (various splits): Avoid writing the output + more than once when trivially possible. + +2025-05-20 liuhongt <hongtao.liu@intel.com> + + PR tree-optimization/103771 + * match.pd (cond_expr_convert_p): Extend the match to handle + REAL_CST. + * tree-vect-patterns.cc + (vect_recog_cond_expr_convert_pattern): Handle REAL_CST. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md: Leverage the new add func to + expand the vx insn. + * config/riscv/riscv-protos.h (expand_vx_binary_vec_dup_vec): Add + new func decl to expand format v = vop(vec_dup(x), v). + (expand_vx_binary_vec_vec_dup): Diito but for format + v = vop(v, vec_dup(x)). + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add new + func impl to expand vx for v = vop(vec_dup(x), v). + (expand_vx_binary_vec_vec_dup): Diito but for another format + v = vop(v, vec_dup(x)). + +2025-05-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/120333 + * config/riscv/bitmanip.md: Remove bext formed from left+right + shift patterns. + +2025-05-19 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa-hpux.h (TARGET_HAVE_LIBATOMIC): Define. + (HAVE_sync_compare_and_swapqi): Likewise. + (HAVE_sync_compare_and_swaphi): Likewise. + (HAVE_sync_compare_and_swapsi): Likewise. + (HAVE_sync_compare_and_swapdi): Likewise. + +2025-05-19 Thomas Schwinge <tschwinge@baylibre.com> + + PR lto/120308 + * lto-streamer-out.cc (hash_tree): Don't handle 'TYPE_EMPTY_P' for + 'lto_stream_offload_p'. + * tree-streamer-in.cc (unpack_ts_type_common_value_fields): + Likewise. + * tree-streamer-out.cc (pack_ts_type_common_value_fields): + Likewise. + +2025-05-19 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (synthesize_ior_xor): Initialize OUTPUT and + verify it's non-null before emitting the final copy insn. + +2025-05-19 Richard Earnshaw <rearnsha@arm.com> + + PR target/120351 + * config/arm/predicates.md (mem_noofs_operand): Also check the op + is a valid memory_operand. + +2025-05-19 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * common/config/riscv/riscv-common.cc (get_riscv_ext_info): Fix argument type. + (riscv_subset_list::check_implied_ext): Type conversion. + +2025-05-19 zhusonghe <zhusonghe@eswincomputing.com> + + * config/riscv/gen-riscv-ext-texi.cc (struct version_t):rename + major/minor to major_version/minor_version. + +2025-05-19 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.cc (riscv_legitimize_move): Handle + load/store with odd-even reg pair. + (riscv_split_64bit_move_p): Don't split load/store if zilsd enabled. + (riscv_hard_regno_mode_ok): Only allow even reg can be used for + 64 bits mode for zilsd. + +2025-05-19 Jennifer Schmitz <jschmitz@nvidia.com> + + PR middle-end/120276 + * regcprop.cc (copy_value): Return in case of unordered modes. + +2025-05-19 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/constraints.md (cR): New constraint. + * doc/md.texi (Machine Constraints::RISC-V): Document the new cR + constraint. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * config.gcc: Remove 512 intrin file. + * config/i386/avx10_2-512bf16intrin.h: + Removed and combined to ... + * config/i386/avx10_2bf16intrin.h: ... this. + * config/i386/avx10_2-512convertintrin.h: + Removed and combined to ... + * config/i386/avx10_2convertintrin.h: ... this. + * config/i386/avx10_2-512mediaintrin.h: + Removed and combined to ... + * config/i386/avx10_2mediaintrin.h: ... this. + * config/i386/avx10_2-512minmaxintrin.h: + Removed and combined to ... + * config/i386/avx10_2minmaxintrin.h: ... this. + * config/i386/avx10_2-512satcvtintrin.h: + Removed and combined to ... + * config/i386/avx10_2satcvtintrin.h: ... this. + * config/i386/immintrin.h: Remove 512 intrin file. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/sse.md (VF1_VF2_AVX10_2): Removed. + (VF2_AVX10_2): Ditto. + (VI1248_AVX10_2): Ditto. + (VFH_AVX10_2): Ditto. + (VF1_AVX10_2): Ditto. + (VHF_AVX10_2): Ditto. + (VBF_AVX10_2): Ditto. + (VI8_AVX10_2): Ditto. + (VI2_AVX10_2): Ditto. + (VBF): New. + (div<mode>3): Use VBF instead of AVX10.2 ones. + (vec_cmp<mode><avx512fmaskmodelower>): Ditto. + (avx10_2_cvt2ps2phx_<mode><mask_name><round_name>): + Use VHF_AVX512VL instead of AVX10.2 ones. + (vcvt<convertfp8_pack><mode><mask_name>): Ditto. + (vcvthf82ph<mode><mask_name>): Ditto. + (VHF_AVX10_2_2): Remove not needed TARGET_AVX10_2. + (usdot_prod<sseunpackmodelower><mode>): Use VI2_AVX512F + instead of AVX10.2 ones. + (vdpphps_<mode>): Use VF1_AVX512VL instead of AVX10.2 ones. + (vdpphps_<mode>_mask): Ditto. + (vdpphps_<mode>_maskz): Ditto. + (vdpphps_<mode>_maskz_1): Ditto. + (avx10_2_scalefbf16_<mode><mask_name>): Use VBF instead of + AVX10.2 ones. + (<code><mode>3): Ditto. + (avx10_2_<code>bf16_<mode><mask_name>): Ditto. + (avx10_2_fmaddbf16_<mode>_maskz); Ditto. + (avx10_2_fmaddbf16_<mode><sd_maskz_name>): Ditto. + (avx10_2_fmaddbf16_<mode>_mask): Ditto. + (avx10_2_fmaddbf16_<mode>_mask3): Ditto. + (avx10_2_fnmaddbf16_<mode>_maskz): Ditto. + (avx10_2_fnmaddbf16_<mode><sd_maskz_name>): Ditto. + (avx10_2_fnmaddbf16_<mode>_mask): Ditto. + (avx10_2_fnmaddbf16_<mode>_mask3): Ditto. + (avx10_2_fmsubbf16_<mode>_maskz); Ditto. + (avx10_2_fmsubbf16_<mode><sd_maskz_name>): Ditto. + (avx10_2_fmsubbf16_<mode>_mask): Ditto. + (avx10_2_fmsubbf16_<mode>_mask3): Ditto. + (avx10_2_fnmsubbf16_<mode>_maskz): Ditto. + (avx10_2_fnmsubbf16_<mode><sd_maskz_name>): Ditto. + (avx10_2_fnmsubbf16_<mode>_mask): Ditto. + (avx10_2_fnmsubbf16_<mode>_mask3): Ditto. + (avx10_2_rsqrtbf16_<mode><mask_name>): Ditto. + (avx10_2_sqrtbf16_<mode><mask_name>): Ditto. + (avx10_2_rcpbf16_<mode><mask_name>): Ditto. + (avx10_2_getexpbf16_<mode><mask_name>): Ditto. + (avx10_2_<bf16immop>bf16_<mode><mask_name>): Ditto. + (avx10_2_fpclassbf16_<mode><mask_scalar_merge_name>): Ditto. + (avx10_2_cmpbf16_<mode><mask_scalar_merge_name>): Ditto. + (avx10_2_cvt<sat_cvt_trunc_prefix>bf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): + Ditto. + (avx10_2_cvtph2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_name>): + Use VHF_AVX512VL instead of AVX10.2 ones. + (avx10_2_cvttph2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_saeonly_name>): + Ditto. + (avx10_2_cvtps2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_name>): + Use VF1_AVX512VL instead of AVX10.2 ones. + (avx10_2_cvttps2i<sat_cvt_sign_prefix>bs<mode><mask_name><round_saeonly_name>): + Ditto. + (avx10_2_vcvtt<castmode>2<sat_cvt_sign_prefix>dqs<mode><mask_name><round_saeonly_name>): + Use VF instead of AVX10.2 ones. + (avx10_2_vcvttpd2<sat_cvt_sign_prefix>qqs<mode><mask_name><round_saeonly_name>): + Use VF2 instead of AVX10.2 ones. + (avx10_2_vcvttps2<sat_cvt_sign_prefix>qqs<mode><mask_name><round_saeonly_name>): + Use VI8 instead of AVX10.2 ones. + (avx10_2_minmaxbf16_<mode><mask_name>): Use VBF instead of + AVX10.2 ones. + (avx10_2_minmaxp<mode><mask_name><round_saeonly_name>): + Use VFH_AVX512VL instead of AVX10.2 ones. + (avx10_2_vmovrs<ssemodesuffix><mode><mask_name>): + Use VI1248_AVX512VLBW instead of AVX10.2 ones. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/cpuinfo.h + (get_available_features): Remove feature set for AVX10_1_256. + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_EVEX512_SET): Removed. + (OPTION_MASK_ISA2_AVX10_1_256_SET): Removed. + (OPTION_MASK_ISA_AVX10_1_SET): Imply all AVX512 features. + (OPTION_MASK_ISA2_AVX10_1_SET): Ditto. + (OPTION_MASK_ISA2_AVX2_UNSET): Remove AVX10_1_UNSET. + (OPTION_MASK_ISA2_EVEX512_UNSET): Removed. + (OPTION_MASK_ISA2_AVX10_1_UNSET): Remove AVX10_1_256. + (OPTION_MASK_ISA2_AVX512F_UNSET): Unset AVX10_1. + (ix86_handle_option): Remove special handling for AVX512/AVX10.1 + options, evex512 and avx10_1_256. Modify ISA set for AVX10 options. + * common/config/i386/i386-cpuinfo.h + (enum feature_priority): Remove P_AVX10_1_256. + (enum processor_features): Remove FEATURE_AVX10_1_256. + * common/config/i386/i386-isas.h: Remove avx10.1-256/512. + * config/i386/avx512bf16intrin.h: Rollback target push before + evex512 is introduced. + * config/i386/avx512bf16vlintrin.h: Ditto. + * config/i386/avx512bitalgintrin.h: Ditto. + * config/i386/avx512bitalgvlintrin.h: Ditto. + * config/i386/avx512bwintrin.h: Ditto. + * config/i386/avx512cdintrin.h: Ditto. + * config/i386/avx512dqintrin.h: Ditto. + * config/i386/avx512fintrin.h: Ditto. + * config/i386/avx512fp16intrin.h: Ditto. + * config/i386/avx512fp16vlintrin.h: Ditto. + * config/i386/avx512ifmaintrin.h: Ditto. + * config/i386/avx512ifmavlintrin.h: Ditto. + * config/i386/avx512vbmi2intrin.h: Ditto. + * config/i386/avx512vbmi2vlintrin.h: Ditto. + * config/i386/avx512vbmiintrin.h: Ditto. + * config/i386/avx512vbmivlintrin.h: Ditto. + * config/i386/avx512vlbwintrin.h: Ditto. + * config/i386/avx512vldqintrin.h: Ditto. + * config/i386/avx512vlintrin.h: Ditto. + * config/i386/avx512vnniintrin.h: Ditto. + * config/i386/avx512vnnivlintrin.h: Ditto. + * config/i386/avx512vp2intersectintrin.h: Ditto. + * config/i386/avx512vp2intersectvlintrin.h: Ditto. + * config/i386/avx512vpopcntdqintrin.h: Ditto. + * config/i386/avx512vpopcntdqvlintrin.h: Ditto. + * config/i386/gfniintrin.h: Ditto. + * config/i386/vaesintrin.h: Ditto. + * config/i386/vpclmulqdqintrin.h: Ditto. + * config/i386/driver-i386.cc (check_avx512_features): Removed. + (host_detect_local_cpu): Remove -march=native special handling. + * config/i386/i386-builtins.cc + (ix86_vectorize_builtin_gather): Remove TARGET_EVEX512. + * config/i386/i386-c.cc + (ix86_target_macros_internal): Remove EVEX512 and AVX10_1_256. + * config/i386/i386-expand.cc + (ix86_valid_mask_cmp_mode): Remove TARGET_EVEX512. + (ix86_expand_int_sse_cmp): Ditto. + (ix86_vector_duplicate_simode_const): Ditto. + (ix86_expand_vector_init_duplicate): Ditto. + (ix86_expand_vector_init_one_nonzero): Ditto. + (ix86_emit_swsqrtsf): Ditto. + (ix86_vectorize_vec_perm_const): Ditto. + (ix86_expand_vecop_qihi2): Ditto. + (ix86_expand_sse2_mulvxdi3): Ditto. + (ix86_gen_bcst_mem): Ditto. + * config/i386/i386-isa.def (EVEX512): Removed. + (AVX10_1_256): Ditto. + * config/i386/i386-options.cc + (isa2_opts): Remove evex512 and avx10.1-256. + (ix86_function_specific_save): Remove no_avx512_explicit and + no_avx10_1_explicit. + (ix86_function_specific_restore): Ditto. + (ix86_valid_target_attribute_inner_p): Remove evex512 and + avx10.1-256/512. + (ix86_valid_target_attribute_tree): Remove special handling + to rerun ix86_option_override_internal for AVX10.1-256. + (ix86_option_override_internal): Remove warning handling. + (ix86_simd_clone_adjust): Remove evex512. + * config/i386/i386.cc + (type_natural_mode): Remove TARGET_EVEX512. + (ix86_return_in_memory): Ditto. + (standard_sse_constant_p): Ditto. + (standard_sse_constant_opcode): Ditto. + (ix86_get_ssemov): Ditto. + (ix86_legitimate_constant_p): Ditto. + (ix86_vectorize_builtin_scatter): Ditto. + (ix86_hard_regno_mode_ok): Ditto. + (ix86_set_reg_reg_cost): Ditto. + (ix86_rtx_costs): Ditto. + (ix86_vector_mode_supported_p): Ditto. + (ix86_preferred_simd_mode): Ditto. + (ix86_autovectorize_vector_modes): Ditto. + (ix86_get_mask_mode): Ditto. + (ix86_simd_clone_compute_vecsize_and_simdlen): Ditto. + (ix86_simd_clone_usable): Ditto. + * config/i386/i386.h (BIGGEST_ALIGNMENT): Ditto. + (MOVE_MAX): Ditto. + (STORE_MAX_PIECES): Ditto. + (PTA_SKYLAKE_AVX512): Remove PTA_EVEX512. + (PTA_CANNONLAKE): Ditto. + (PTA_ZNVER4): Ditto. + (PTA_GRANITERAPIDS): Use PTA_AVX10_1. + (PTA_DIAMONDRAPIDS): Use PTA_GRANITERAPIDS. + * config/i386/i386.md: Remove TARGET_EVEX512, avx512f_512 + and avx512bw_512. + * config/i386/i386.opt: Remove ix86_no_avx512_explicit, + ix86_no_avx10_1_explicit, mevex512, mavx10.1-256/512 and + warning for mavx10.1. Modify option comment. + * config/i386/i386.opt.urls: Remove evex512 and avx10.1-256/512. + * config/i386/predicates.md: Remove TARGET_EVEX512. + * config/i386/sse.md: Ditto. + * doc/extend.texi: Remove avx10.1-256/512. Modify avx10.1 doc. + * doc/invoke.texi: Remove avx10.1-256/512 and evex512. + * doc/sourcebuild.texi: Remove avx10.1-256/512. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386-builtin.def + (BDESC): Remove OPTION_MASK_ISA2_EVEX512. + * config/i386/i386-builtins.cc + (ix86_init_mmx_sse_builtins): Ditto. + +2025-05-18 Dimitar Dimitrov <dimitar@dinux.eu> + Richard Sandiford <richard.sandiford@arm.com> + + PR target/119966 + * emit-rtl.cc (validate_subreg): Do not exit immediately for + paradoxical subregs. Filter subsequent tests which are + not valid for paradoxical subregs. + +2025-05-18 Eric Botcazou <ebotcazou@adacore.com> + + * dwarf2out.cc (loc_list_from_tree_1) <COMPONENT_REF>: Do not bail + out when the size is not a multiple of a byte. + Deal with bit-fields whose size is not a multiple of a byte when + dereferencing an address. + +2025-05-18 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-fold.cc (mark_lhs_in_seq_for_dce): Make + non-static. + * gimple-fold.h (mark_lhs_in_seq_for_dce): Declare. + * tree-ssa-phiopt.cc (match_simplify_replacement): Use + mark_lhs_in_seq_for_dce instead of manually looping. + +2025-05-17 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv-vect-permconst.cc (vector_permconst:process_bb): + Use rtvec_alloc, not gen_rtvec since we don't want/need to initialize + the vector. + +2025-05-17 Yuao Ma <c8ef@outlook.com> + + * doc/extend.texi: Mention new builtins. + +2025-05-17 Yuao Ma <c8ef@outlook.com> + + * builtins.def (TRIG_TYPE): New. + (BUILT_IN_ACOSPI): New. + (BUILT_IN_ACOSPIF): New. + (BUILT_IN_ACOSPIL): New. + (BUILT_IN_ASINPI): New. + (BUILT_IN_ASINPIF): New. + (BUILT_IN_ASINPIL): New. + (BUILT_IN_ATANPI): New. + (BUILT_IN_ATANPIF): New. + (BUILT_IN_ATANPIL): New. + (BUILT_IN_COSPI): New. + (BUILT_IN_COSPIF): New. + (BUILT_IN_COSPIL): New. + (BUILT_IN_SINPI): New. + (BUILT_IN_SINPIF): New. + (BUILT_IN_SINPIL): New. + (BUILT_IN_TANPI): New. + (BUILT_IN_TANPIF): New. + (BUILT_IN_TANPIL): New. + (TRIG2_TYPE): New. + (BUILT_IN_ATAN2PI): New. + (BUILT_IN_ATAN2PIF): New. + (BUILT_IN_ATAN2PIL): New. + +2025-05-17 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (synthesize_ior_xor): Avoid writing + operands[0] more than once, use new pseudos instead. + +2025-05-17 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/riscv.cc (riscv_gpr_save_operation_p): Remove + break and fixbug for elt index. + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + PR target/100165 + * config/aarch64/aarch64-protos.h (aarch64_output_fmov): New prototype. + (aarch64_simd_valid_and_imm_fmov): Likewise. + * config/aarch64/aarch64-simd.md (and<mode>3<vczle><vczbe>): Allow FMOV + codegen. + * config/aarch64/aarch64.cc (aarch64_simd_valid_and_imm_fmov): New. + (aarch64_output_fmov): Likewise. + * config/aarch64/constraints.md (Df): New constraint. + * config/aarch64/predicates.md (aarch64_reg_or_and_imm): Update + predicate to support FMOV codegen. + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + PR target/100165 + * config/aarch64/aarch64.cc (aarch64_evpc_and): New. + (aarch64_expand_vec_perm_const_1): Call aarch64_evpc_and. + * optabs.cc (vec_perm_and_mask): New. + * optabs.h (vec_perm_and_mask): New prototype. + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + * config/aarch64/aarch64.cc (aarch64_evpc_reencode): Zero initialize + newd. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (forward_propagate_into_comparison): Dump + when replacing statement. + +2025-05-16 Martin Jambor <mjambor@suse.cz> + Michal Jires <mjires@suse.cz> + + * cgraph.h (symtab_node): Make member function get_uid const. + * cgraphclones.cc (dump_callgraph_transformation): Dump m_uid of the + call graph nodes instead of order. + * cgraph.cc (cgraph_node::remove): Likewise. + * ipa-cp.cc (ipcp_lattice<valtype>::print): Likewise. + * ipa-sra.cc (ipa_sra_summarize_function): Likewise. + * symtab.cc (symtab_node::dump_base): Likewise. + +2025-05-16 Ville Voutilainen <ville.voutilainen@gmail.com> + + * doc/invoke.texi: Add to_underlying to -ffold-simple-inlines. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/118603 + * config/aarch64/driver-aarch64.cc (aarch64_cpu_data): Add cast to unsigned + to VARIANT of the define AARCH64_CORE. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + * config/aarch64/aarch64-protos.h (struct sve_vec_cost): Change gather_load_x32_cost + and gather_load_x64_cost fields to unsigned. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Add a limit on the alias walk. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-fold.cc (optimize_memcpy_to_memset): Move to + tree-ssa-forwprop.cc. + (gimple_fold_builtin_memory_op): Remove call to + optimize_memcpy_to_memset. + (fold_stmt_1): Likewise. + * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Move from + gimple-fold.cc. + (simplify_builtin_call): Try to optimize memcpy/memset. + (pass_forwprop::execute): Try to optimize memcpy like assignment + from a previous memset. + +2025-05-16 Richard Sandiford <richard.sandiford@arm.com> + + * config/arm/arm.cc (arm_gen_load_multiple_1): Simplify use of + end_sequence. + (arm_gen_store_multiple_1): Likewise. + * expr.cc (gen_move_insn): Likewise. + * gentarget-def.cc (main): Likewise. + +2025-05-16 Richard Sandiford <richard.sandiford@arm.com> + + * asan.cc (asan_emit_allocas_unpoison): Directly return the + result of end_sequence. + (hwasan_emit_untag_frame): Likewise. + * config/aarch64/aarch64-speculation.cc + (aarch64_speculation_clobber_sp): Likewise. + (aarch64_speculation_establish_tracker): Likewise. + * config/arm/arm.cc (arm_call_tls_get_addr): Likewise. + * config/avr/avr-passes.cc (avr_parallel_insn_from_insns): Likewise. + * config/sh/sh_treg_combine.cc + (sh_treg_combine::make_not_reg_insn): Likewise. + * tree-outof-ssa.cc (emit_partition_copy): Likewise. + +2025-05-16 Richard Sandiford <richard.sandiford@arm.com> + + * asan.cc (asan_clear_shadow): Use the return value of end_sequence, + rather than calling get_insns separately. + (asan_emit_stack_protection, asan_emit_allocas_unpoison): Likewise. + (hwasan_frame_base, hwasan_emit_untag_frame): Likewise. + * auto-inc-dec.cc (attempt_change): Likewise. + * avoid-store-forwarding.cc (process_store_forwarding): Likewise. + * bb-reorder.cc (fix_crossing_unconditional_branches): Likewise. + * builtins.cc (expand_builtin_apply_args): Likewise. + (expand_builtin_return, expand_builtin_mathfn_ternary): Likewise. + (expand_builtin_mathfn_3, expand_builtin_int_roundingfn): Likewise. + (expand_builtin_int_roundingfn_2, expand_builtin_saveregs): Likewise. + (inline_string_cmp): Likewise. + * calls.cc (expand_call): Likewise. + * cfgexpand.cc (expand_asm_stmt, pass_expand::execute): Likewise. + * cfgloopanal.cc (init_set_costs): Likewise. + * cfgrtl.cc (insert_insn_on_edge, prepend_insn_to_edge): Likewise. + (rtl_lv_add_condition_to_bb): Likewise. + * config/aarch64/aarch64-speculation.cc + (aarch64_speculation_clobber_sp): Likewise. + (aarch64_speculation_establish_tracker): Likewise. + (aarch64_do_track_speculation): Likewise. + * config/aarch64/aarch64.cc (aarch64_load_symref_appropriately) + (aarch64_expand_vector_init, aarch64_gen_ccmp_first): Likewise. + (aarch64_gen_ccmp_next, aarch64_mode_emit): Likewise. + (aarch64_md_asm_adjust): Likewise. + (aarch64_switch_pstate_sm_for_landing_pad): Likewise. + (aarch64_switch_pstate_sm_for_jump): Likewise. + (aarch64_switch_pstate_sm_for_call): Likewise. + * config/alpha/alpha.cc (alpha_legitimize_address_1): Likewise. + (alpha_emit_xfloating_libcall, alpha_gp_save_rtx): Likewise. + * config/arc/arc.cc (hwloop_optimize): Likewise. + * config/arm/aarch-common.cc (arm_md_asm_adjust): Likewise. + * config/arm/arm-builtins.cc: Likewise. + * config/arm/arm.cc (require_pic_register): Likewise. + (arm_call_tls_get_addr, arm_gen_load_multiple_1): Likewise. + (arm_gen_store_multiple_1, cmse_clear_registers): Likewise. + (cmse_nonsecure_call_inline_register_clear): Likewise. + (arm_attempt_dlstp_transform): Likewise. + * config/avr/avr-passes.cc (bbinfo_t::optimize_one_block): Likewise. + (avr_parallel_insn_from_insns): Likewise. + * config/avr/avr.cc (avr_prologue_setup_frame): Likewise. + (avr_expand_epilogue): Likewise. + * config/bfin/bfin.cc (hwloop_optimize): Likewise. + * config/c6x/c6x.cc (c6x_expand_compare): Likewise. + * config/cris/cris.cc (cris_split_movdx): Likewise. + * config/cris/cris.md: Likewise. + * config/csky/csky.cc (csky_call_tls_get_addr): Likewise. + * config/epiphany/resolve-sw-modes.cc + (pass_resolve_sw_modes::execute): Likewise. + * config/fr30/fr30.cc (fr30_move_double): Likewise. + * config/frv/frv.cc (frv_split_scc, frv_split_cond_move): Likewise. + (frv_split_minmax, frv_split_abs): Likewise. + * config/frv/frv.md: Likewise. + * config/gcn/gcn.cc (move_callee_saved_registers): Likewise. + (gcn_expand_prologue, gcn_restore_exec, gcn_md_reorg): Likewise. + * config/i386/i386-expand.cc + (ix86_expand_carry_flag_compare, ix86_expand_int_movcc): Likewise. + (ix86_vector_duplicate_value, expand_vec_perm_interleave2): Likewise. + (expand_vec_perm_vperm2f128_vblend): Likewise. + (expand_vec_perm_2perm_interleave): Likewise. + (expand_vec_perm_2perm_pblendv): Likewise. + (expand_vec_perm2_vperm2f128_vblend, ix86_gen_ccmp_first): Likewise. + (ix86_gen_ccmp_next): Likewise. + * config/i386/i386-features.cc + (scalar_chain::make_vector_copies): Likewise. + (scalar_chain::convert_reg, scalar_chain::convert_op): Likewise. + (timode_scalar_chain::convert_insn): Likewise. + * config/i386/i386.cc (ix86_init_pic_reg, ix86_va_start): Likewise. + (ix86_get_drap_rtx, legitimize_tls_address): Likewise. + (ix86_md_asm_adjust): Likewise. + * config/ia64/ia64.cc (ia64_expand_tls_address): Likewise. + (ia64_expand_compare, spill_restore_mem): Likewise. + (expand_vec_perm_interleave_2): Likewise. + * config/loongarch/loongarch.cc + (loongarch_call_tls_get_addr): Likewise. + * config/m32r/m32r.cc (gen_split_move_double): Likewise. + * config/m32r/m32r.md: Likewise. + * config/m68k/m68k.cc (m68k_call_tls_get_addr): Likewise. + (m68k_call_m68k_read_tp, m68k_sched_md_init_global): Likewise. + * config/m68k/m68k.md: Likewise. + * config/microblaze/microblaze.cc + (microblaze_call_tls_get_addr): Likewise. + * config/mips/mips.cc (mips_call_tls_get_addr): Likewise. + (mips_ls2_init_dfa_post_cycle_insn): Likewise. + (mips16_split_long_branches): Likewise. + * config/nvptx/nvptx.cc (nvptx_gen_shuffle): Likewise. + (nvptx_gen_shared_bcast, nvptx_propagate): Likewise. + (workaround_uninit_method_1, workaround_uninit_method_2): Likewise. + (workaround_uninit_method_3): Likewise. + * config/or1k/or1k.cc (or1k_init_pic_reg): Likewise. + * config/pa/pa.cc (legitimize_tls_address): Likewise. + * config/pru/pru.cc (pru_expand_fp_compare, pru_reorg_loop): Likewise. + * config/riscv/riscv-shorten-memrefs.cc + (pass_shorten_memrefs::transform): Likewise. + * config/riscv/riscv-vsetvl.cc (pre_vsetvl::emit_vsetvl): Likewise. + * config/riscv/riscv.cc (riscv_call_tls_get_addr): Likewise. + (riscv_frm_emit_after_bb_end): Likewise. + * config/rl78/rl78.cc (rl78_emit_libcall): Likewise. + * config/rs6000/rs6000.cc (rs6000_debug_legitimize_address): Likewise. + * config/s390/s390.cc (legitimize_tls_address): Likewise. + (s390_two_part_insv, s390_load_got, s390_va_start): Likewise. + * config/sh/sh_treg_combine.cc + (sh_treg_combine::make_not_reg_insn): Likewise. + * config/sparc/sparc.cc (sparc_legitimize_tls_address): Likewise. + (sparc_output_mi_thunk, sparc_init_pic_reg): Likewise. + * config/stormy16/stormy16.cc (xstormy16_split_cbranch): Likewise. + * config/xtensa/xtensa.cc (xtensa_copy_incoming_a7): Likewise. + (xtensa_expand_block_set_libcall): Likewise. + (xtensa_expand_block_set_unrolled_loop): Likewise. + (xtensa_expand_block_set_small_loop, xtensa_call_tls_desc): Likewise. + * dse.cc (emit_inc_dec_insn_before, find_shift_sequence): Likewise. + (replace_read): Likewise. + * emit-rtl.cc (reorder_insns, gen_clobber, gen_use): Likewise. + * except.cc (dw2_build_landing_pads, sjlj_mark_call_sites): Likewise. + (sjlj_emit_function_enter, sjlj_emit_function_exit): Likewise. + (sjlj_emit_dispatch_table): Likewise. + * expmed.cc (expmed_mult_highpart_optab, expand_sdiv_pow2): Likewise. + * expr.cc (convert_mode_scalar, emit_move_multi_word): Likewise. + (gen_move_insn, expand_cond_expr_using_cmove): Likewise. + (expand_expr_divmod, expand_expr_real_2): Likewise. + (maybe_optimize_pow2p_mod_cmp, maybe_optimize_mod_cmp): Likewise. + * function.cc (emit_initial_value_sets): Likewise. + (instantiate_virtual_regs_in_insn, expand_function_end): Likewise. + (get_arg_pointer_save_area, make_split_prologue_seq): Likewise. + (make_prologue_seq, gen_call_used_regs_seq): Likewise. + (thread_prologue_and_epilogue_insns): Likewise. + (match_asm_constraints_1): Likewise. + * gcse.cc (prepare_copy_insn): Likewise. + * ifcvt.cc (noce_emit_store_flag, noce_emit_move_insn): Likewise. + (noce_emit_cmove): Likewise. + * init-regs.cc (initialize_uninitialized_regs): Likewise. + * internal-fn.cc (expand_POPCOUNT): Likewise. + * ira-emit.cc (emit_move_list): Likewise. + * ira.cc (ira): Likewise. + * loop-doloop.cc (doloop_modify): Likewise. + * loop-unroll.cc (compare_and_jump_seq): Likewise. + (unroll_loop_runtime_iterations, insert_base_initialization): Likewise. + (split_iv, insert_var_expansion_initialization): Likewise. + (combine_var_copies_in_loop_exit): Likewise. + * lower-subreg.cc (resolve_simple_move,resolve_shift_zext): Likewise. + * lra-constraints.cc (match_reload, check_and_process_move): Likewise. + (process_addr_reg, insert_move_for_subreg): Likewise. + (process_address_1, curr_insn_transform): Likewise. + (inherit_reload_reg, process_invariant_for_inheritance): Likewise. + (inherit_in_ebb, remove_inheritance_pseudos): Likewise. + * lra-remat.cc (do_remat): Likewise. + * mode-switching.cc (commit_mode_sets): Likewise. + (optimize_mode_switching): Likewise. + * optabs.cc (expand_binop, expand_twoval_binop_libfunc): Likewise. + (expand_clrsb_using_clz, expand_doubleword_clz_ctz_ffs): Likewise. + (expand_doubleword_popcount, expand_ctz, expand_ffs): Likewise. + (expand_absneg_bit, expand_unop, expand_copysign_bit): Likewise. + (prepare_float_lib_cmp, expand_float, expand_fix): Likewise. + (expand_fixed_convert, gen_cond_trap): Likewise. + (expand_atomic_fetch_op): Likewise. + * ree.cc (combine_reaching_defs): Likewise. + * reg-stack.cc (compensate_edge): Likewise. + * reload1.cc (emit_input_reload_insns): Likewise. + * sel-sched-ir.cc (setup_nop_and_exit_insns): Likewise. + * shrink-wrap.cc (emit_common_heads_for_components): Likewise. + (emit_common_tails_for_components): Likewise. + (insert_prologue_epilogue_for_components): Likewise. + * tree-outof-ssa.cc (emit_partition_copy): Likewise. + (insert_value_copy_on_edge): Likewise. + * tree-ssa-loop-ivopts.cc (computation_cost): Likewise. + +2025-05-16 Richard Sandiford <richard.sandiford@arm.com> + + * rtl.h (end_sequence): Return the sequence. + * emit-rtl.cc (end_sequence): Likewise. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*<optab>_vx_<mode>): Add new + pattern to convert vec_duplicate + vsub.vv to vsub.vx. + * config/riscv/riscv.cc (riscv_rtx_costs): Add minus as plus op. + * config/riscv/vector-iterators.md: Add minus to iterator + any_int_binop_no_shift_vx. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/116546 + * range-op.cc (operator_bitwise_and::op1_range): Utilize bitmask + from the LHS to improve op1's bitmask. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/116546 + * value-range.cc (irange::intersect_bitmask): Allow unknown + bitmasks to be processed. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/116546 + * value-range.cc (irange_bitmask::irange_bitmask): Include + leading ones in the bitmask. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + * value-range.cc (irange_bitmask::irange_bitmask): Rename from + get_bitmask_from_range and tweak. + (prange::set): Use new constructor. + (prange::intersect): Use new constructor. + (irange::get_bitmask): Likewise. + * value-range.h (irange_bitmask): New constructor prototype. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120277 + * range-op-ptr.cc (operator_cast::fold_range): Check if the cast + if UNDEFINED before setting bounds. + +2025-05-15 Jeff Law <jlaw@ventanamicro.com> + + PR target/120223 + * config/riscv/riscv.cc (synthesize_ior_xor): XTHEADBS does not have + single bit manipulations. + +2025-05-15 Alexander Monakov <amonakov@ispras.ru> + + * tree-cfg.cc (verify_gimple_assign_unary): Accept only + COMPLEX_TYPE for CONJ_EXPR. + +2025-05-15 Andrew Pinski <quic_apinski@quicinc.com> + + * fold-const.cc (tree_swap_operands_p): Put ADDR_EXPR last + instead of just is_gimple_invariant_address ones. + * match.pd (`a ptr+ b !=\== ADDR`, `ADDR !=/== ssa_name`): + Move the ADDR to the last operand. Update comment. + +2025-05-15 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.cc (vect_transform_loops): When diagnosing + a vectorized loop indicate whether we vectorized an epilogue, + whether we used masked vectors and what unroll factor was + used. + +2025-05-15 Richard Biener <rguenther@suse.de> + + * config/i386/i386.cc (ix86_vector_costs::finish_cost): + Do not suggest a first epilogue mode for AVX512 sized + main loops with X86_TUNE_AVX512_TWO_EPILOGUES as that + interferes with using a masked epilogue. + +2025-05-14 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (record_stmt_cost): Remove mixed + stmt_vec_info/SLP node inline overload. + * tree-vect-stmts.cc (vectorizable_store): For costing + vector stmts only pass SLP node to record_stmt_cost. + (vectorizable_load): Likewise. + +2025-05-14 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vect_get_store_cost): Compute vectype based + on whether we got SLP node or stmt_vec_info and use the full + record_stmt_cost API. + (vect_get_load_cost): Likewise. + +2025-05-14 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc + (riscv_subset_list::riscv_subset_list): Init m_allow_adding_dup. + +2025-05-14 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/riscv-ext.def: New extension defs. + * config/riscv/riscv-ext.opt: Ditto. + * doc/riscv-ext.texi: Ditto. + +2025-05-14 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/t-riscv: Drop duplicate build rule for + riscv-ext.opt. + +2025-05-14 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-ext.opt.urls: Regenerate. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-cfgcleanup.cc (canonicalize_bool_cond): New function. + (cleanup_control_expr_graph): Call canonicalize_bool_cond for GIMPLE_COND. + * tree-cfgcleanup.h (canonicalize_bool_cond): New declaration. + * tree-ssa-forwprop.cc (forward_propagate_into_gimple_cond): + Call canonicalize_bool_cond. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple.h (gimple_cond_set_code): Add assert of the code + being a comparison. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (forward_propagate_into_gimple_cond): Assert + that gimple_cond_code is always a comparison. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-fold.cc (replace_stmt_with_simplification): Check cfun before + accessing cfun. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (pass_forwprop::execute): Move marking of to_purge bb + and marking of fixup statements to after the local optimizations. + +2025-05-14 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-forwprop.cc (pass_forwprop::execute): Use `|=` for + changed on the local folding. + +2025-05-14 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (record_stmt_cost): Add overload with + only SLP node and no vector type. + * tree-vect-stmts.cc (record_stmt_cost): Use + SLP_TREE_REPRESENTATIVE for stmt_vec_info. + (vect_model_simple_cost): Do not get stmt_vec_info argument + and adjust. + (vectorizable_call): Adjust. + (vectorizable_simd_clone_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_assignment): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_comparison_1): Likewise. + * tree-vect-slp.cc (vect_prologue_cost_for_slp): Use + full-blown record_stmt_cost. + +2025-05-14 liuhongt <hongtao.liu@intel.com> + + PR target/120215 + * config/i386/i386-features.cc + (scalar_chain::mark_dual_mode_def): Weight + cost of integer<->sse move with bb frequency when it's + optimized_for_speed_p. + (general_scalar_chain::compute_convert_gain): Ditto, and + adjust function prototype to return true/false when cost model + is profitable or not. + (timode_scalar_chain::compute_convert_gain): Ditto. + (convert_scalars_to_vector): Adjust after the upper two + function prototype are changed. + * config/i386/i386-features.h (class scalar_chain): Change + n_integer_to_sse/n_sse_to_integer to cost_sse_integer, and add + weighted_cost_sse_integer. + (class general_scalar_chain): Adjust prototype to return bool + intead of int. + (class timode_scalar_chain): Ditto. + +2025-05-14 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/111873 + * tree-sra.cc (sra_modify_expr): When processing a load which has + a type-incompatible replacement, do not store the contents of the + replacement into the original aggregate when that aggregate is + const. + +2025-05-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/vector.md: Fix tf_to_fprx2 by using vlr instead of + ldr. + +2025-05-14 liuhongt <hongtao.liu@intel.com> + + PR tree-optimization/103771 + * match.pd (cond_expr_convert_p): Extend the match to handle + scalar floating point type. + * tree-vect-patterns.cc + (vect_recog_cond_expr_convert_pattern): Handle floating point + type. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/119903 + * gimple-fold.cc (replace_stmt_with_simplification): Reject for + noncall exceptions replacing comparison with itself. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/118868 + * tree-cfg.cc (verify_gimple_assign_unary): Allow pointers + but disallow aggregate types for PAREN_EXPR. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + * cfgexpand.cc (vars_ssa_cache::operator()): Update the cache if the use is already + has a cache. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + * cfgexpand.cc (vars_ssa_cache::operator()): Reverse the order of the going + through the update list. + +2025-05-13 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vectorizable_nonlinear_induction): + Remove non-SLP path, use SLP_TREE_VECTYPE. + (vectorizable_induction): Likewise. Drop ncopies variable + which is always 1. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_extra_ext_flag_table_t): + New. + (riscv_ext_flag_table): Rename to ... + (riscv_extra_ext_flag_table): this, and drop most of definitions + that can obtained from the flags field of the riscv_ext_info_t + structures. + (apply_extra_extension_flags): Use riscv_ext_info_t. + (riscv_ext_is_subset): Ditto. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_ext_version_table): + Remove. + (standard_extensions_p): Use riscv_ext_info_t. + (get_default_version): Use riscv_ext_info_t. + (riscv_arch_help): Ditto. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc + (riscv_implied_info::riscv_implied_info_t): Remove unused + variant. + (struct riscv_implied_info_t): Remove unsued field. + (riscv_implied_info::match): Remove unused variant, and adjust + the logic. + (get_riscv_ext_info): New. + (riscv_implied_info): Remove. + (riscv_ext_info_t::apply_implied_ext): New. + (riscv_combine_info). Remove. + (riscv_subset_list::handle_implied_ext): Use riscv_ext_info_t + rather than riscv_implied_info. + (riscv_subset_list::check_implied_ext): Ditto. + (riscv_subset_list::handle_combine_ext): Use riscv_ext_info_t + rather than riscv_combine_info. + (riscv_minimal_hwprobe_feature_bits): Use riscv_ext_info_t + rather than riscv_implied_info. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_ext_info_t): New + struct. + (opt_var_ref_t): Adjust order. + (cl_opt_var_ref_t): Ditto. + (riscv_ext_flag_table_t): Adjust order, and add a new construct + that not hold the extension name. + (riscv_version_t): New struct. + (riscv_implied_info_t): Adjust order, and add a new construct that not + hold the extension name. + (apply_extra_extension_flags): New function. + (riscv_ext_infos): New. + (riscv_implied_info): Adjust. + * config/riscv/riscv-opts.h (EXT_FLAG_MACRO): New macro. + (BITMASK_NOT_YET_ALLOCATED): New macro. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * common/config/riscv/riscv-common.cc (riscv_can_inline_p): Drop + extension flags check from `target_flags`. + * config/riscv/riscv-subset.h (riscv_x_target_flags_isa_mask): + Remove. + * config/riscv/riscv.cc (riscv_x_target_flags_isa_mask): Remove. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * doc/invoke.texi: Replace hand‑written extension table with + `@include riscv-ext.texi` to pull in auto‑generated entries. + * doc/riscv-ext.texi: New generated definition file + containing formatted documentation entries for each extension. + * Makefile.in: Add riscv-ext.texi to the list of files to be + processed by the Texinfo generator. + * config/riscv/gen-riscv-ext-texi.cc: New. + * config/riscv/t-riscv: Add rule for generating riscv-ext.texi. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/gen-riscv-ext-opt.cc: New. + * config/riscv/riscv.opt: Drop manual entries for target + options, and include riscv-ext.opt. + * config/riscv/riscv-ext.opt: New. + * config/riscv/riscv-ext.opt.urls: New. + * config.gcc: Add riscv-ext.opt to the list of target options files. + * common/config/riscv/riscv-common.cc (riscv_ext_flag_table): Adjsut target + option variable entry. + (riscv_set_arch_by_subset_list): Adjust target option variable. + * config/riscv/riscv-c.cc (riscv_ext_flag_table): Adjust target + option variable entry. + * config/riscv/riscv-vector-builtins.cc (pragma_intrinsic_flags): + Adjust variable name. + (riscv_pragma_intrinsic_flags_pollute): Adjust variable name. + (riscv_pragma_intrinsic_flags_restore): Ditto. + * config/riscv/t-riscv: Add the rule for generating + riscv-ext.opt. + * config/riscv/riscv-opts.h (TARGET_MIN_VLEN): Update. + (TARGET_MIN_VLEN_OPTS): Update. + +2025-05-13 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-ext.def: New file; define extension metadata table. + * config/riscv/riscv-ext-corev.def: New. + * config/riscv/riscv-ext-sifive.def: New. + * config/riscv/riscv-ext-thead.def: New. + * config/riscv/riscv-ext-ventana.def: New. + +2025-05-13 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc: Include "diagnostic-format-text.h", + "pretty-print-urlifier.h" and "edit-context.h". + (html_builder::html_builder): Fix indentation in decl. + (html_builder::make_element_for_diagnostic): Split out metadata + code into make_element_for_metadata. Call + make_element_for_source, make_element_for_path, and + make_element_for_patch. + (html_builder::make_element_for_source): New. + (html_builder::make_element_for_path): New. + (html_builder::make_element_for_patch): New. + (html_builder::make_metadata_element): New. + (html_builder::make_element_for_metadata): New. + (html_output_format::get_builder): New. + (selftest::test_html_diagnostic_context::get_builder): New. + (selftest::test_simple_log): Update test to print a quoted string, + and verify that it uses a "gcc-quoted-text" span. + (selftest::test_metadata): New. + (selftest::diagnostic_format_html_cc_tests): Call it. + +2025-05-13 Andrew MacLeod <amacleod@redhat.com> + + * tree-ssanames.cc (set_bitmask): Use int_range_max for temps. + * value-range.cc (irange::set_range_from_bitmask): Handle all + trailing zero values. + +2025-05-12 Pan Li <pan2.li@intel.com> + + * match.pd: Add form 7 matching pattern for unsigned integer + SAT_ADD. + +2025-05-12 Andrew Pinski <quic_apinski@quicinc.com> + + * config/aarch64/aarch64.md (cmov<mode>6): Remove. + +2025-05-12 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120230 + * optabs.cc (can_compare_p): Remove support for ccp_cmov. + * optabs.def (cmov_optab): Remove. + * optabs.h (can_compare_purpose): Remove ccp_cmov. + +2025-05-12 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120231 + * range-op-float.cc (operator_cast::fold_range): New variants. + (operator_cast::op1_range): Likewise. + * range-op-mixed.h (operator_cast::fold_range): Likewise. + (operator_cast::op1_range): Likewise + * range-op.cc (range_op_handler::fold_range): Add RO_FIF dispatch. + (range_op_handler::op1_range): Add RO_IFF and RO_FII patterns. + (range_operator::fold_range): Provide new variant default. + (range_operator::op1_range): Likewise. + * range-op.h (range_operator): Add new variant methods. + +2025-05-12 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120188 + * doc/gm2.texi (Semantic checking): Add -fm2-plugin command line option. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx-sm.def: Add '61'. + * config/nvptx/nvptx-gen.h: Regenerate. + * config/nvptx/nvptx-gen.opt: Likewise. + * config/nvptx/nvptx.cc (first_ptx_version_supporting_sm): Adjust. + * config/nvptx/nvptx.opt (-march-map=sm_61, -march-map=sm_62): + Likewise. + * config.gcc: Likewise. + * doc/invoke.texi (Nvidia PTX Options): Document '-march=sm_61'. + * config/nvptx/gen-multilib-matches-tests: Extend. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx-opts.h (enum ptx_version): Add + 'PTX_VERSION_5_0'. + * config/nvptx/nvptx.cc (ptx_version_to_string) + (ptx_version_to_number): Adjust. + * config/nvptx/nvptx.h (TARGET_PTX_5_0): New. + * config/nvptx/nvptx.opt (Enum(ptx_version)): Add 'EnumValue' + '5.0' for 'PTX_VERSION_5_0'. + * doc/invoke.texi (Nvidia PTX Options): Document '-mptx=5.0'. + +2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * common/config/riscv/riscv-common.cc + (riscv_subset_list::check_conflict_ext): New extension. + * config/riscv/riscv.opt: Ditto. + +2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * common/config/riscv/riscv-common.cc + (riscv_subset_list::check_conflict_ext): New extension. + * config/riscv/riscv.opt: Ditto. + +2025-05-12 Richard Biener <rguenther@suse.de> + + * lto-streamer-out.cc (hash_tree): Hash TYPE_MODE_RAW. + When offloading hash modes as VOIDmode for aggregates + and vectors. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * doc/extend.texi: Remove the iwmmxt intrinsics. + * doc/md.texi: Remove the iwmmxt-related constraints. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/aout.h (REGISTER_NAMES): Remove iwmmxt registers. + * config/arm/arm.h (FIRST_IWMMXT_REGNUM): Delete. + (LAST_IWMMXT_REGNUM): Delete. + (FIRST_IWMMXT_GR_REGNUM): Delete. + (LAST_IWMMXT_GR_REGNUM): Delete. + (IS_IWMMXT_REGNUM): Delete. + (IS_IWMMXT_GR_REGNUM): Delete. + (FRAME_POINTER_REGNUM): Define relative to CC_REGNUM. + (ARG_POINTER_REGNUM): Define relative to FRAME_POINTER_REGNUM. + (FIRST_PSEUDO_REGISTER): Adjust. + (WREG): Delete. + (WGREG): Delete. + (REG_ALLOC_ORDER): Remove iWMMX registers. + (enum reg_class): Remove iWMMX register classes. + (REG_CLASS_NAMES): Likewise. + (REG_CLASS_CONTENTS): Remove iWMMX registers. + * config/arm/arm.md (CC_REGNUM): Adjust value. + (VFPCC_RENGUM): Likewise. + (APSRQ_REGNUM): Likewise. + (APSRGE_REGNUM): Likewise. + (VPR_REGNUM): Likewise. + (RA_AUTH_CODE): Likewise. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm-cpus.in (feature iwmmxt, feature iwmmxt2): Delete. + * config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Delete. + (arm_output_iwmmxt_tinsr): Delete. + (arm_arch_iwmmxt): Delete. + (arm_arch_iwmmxt2): Delete. + * config/arm/arm.h (TARGET_IWMMXT): Delete. + (TARGET_IWMMXT2): Delete. + (TARGET_REALLY_IWMMXT): Delete. + (TARGET_REALLY_IWMMXT2): Delete. + (VALID_IWMMXT_REG_MODE): Delete. + (ARM_HAVE_V8QI_ARITH): Remove iWMMXT. + (ARM_HAVE_V4HI_ARITH): Likewise. + (ARM_HAVE_V2SI_ARITH): Likewise. + (ARM_HAVE_V8QI_LDST): Likewise. + (ARM_HAVE_V4HI_LDST): Likewise. + (ARM_HAVE_V2SI_LDST): Likewise. + (SECONDARY_OUTPUT_RELOAD_CLASS): Remove iWMMXT cases. + (SECONDARY_INPUT_RELOAD_CLASS): Likewise. + * config/arm/arm.cc (arm_arch_iwmmxt): Delete. + (arm_arch_iwmmxt2): Delete. + (arm_option_reconfigure_globals): Don't initialize them. + (arm_register_move_cost): Remove costs for iwmmxt. + (struct minipool_node): Update comment. + (output_move_double): Likewise + (output_return_instruction): Likewise. + (arm_print_operand, cases 'U' and 'w'): Report an error if + used. + (arm_regno_class): Remove iWMMXT cases. + (arm_debugger_regno): Remove iWMMXT cases. + (arm_output_iwmmxt_shift_immediate): Delete. + (arm_output_iwmmxt_tinsr): Delete. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm-c.cc (arm_cpu_builtins): Remove predefines + for __IWWMXT__, __IWMMXT2__ and __ARM_WMMX. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/iterators.md (VMMX, VMMX2): Remove mode iterators. + (MMX_char): Remove mode iterator attribute. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.md (core_cycles): Remove iwmmxt attributes. + * config/arm/types.md (autodetect_type): Likewise. + * config/arm/marvell-f-iwmmxt.md: Removed. + * config/arm/t-arm: Remove marvell-f-iwmmxt.md + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.cc (arm_option_check_internal): Remove + IWMMXT check. + (arm_options_perform_arch_sanity_checks): Likewise. + (use_return_insn): Likewise. + (arm_init_cumulative_args): Likewise. + (arm_legitimate_index_p): Likewise. + (thumb2_legitimate_index_p): Likewise. + (arm_compute_save_core_reg_mask): Likewise. + (output_return_instruction): Likewise. + (arm_compute_frame_layout): Likewise. + (arm_save_coproc_regs): Likewise. + (arm_hard_regno_mode_ok): Likewise. + (arm_expand_epilogue_apcs_frame): Likewise. + (arm_expand_epilogue): Likewise. + (arm_vector_mode_supported_p): Likewise. + (arm_preferred_simd_mode): Likewise. + (arm_conditional_register_usage): Likewise. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config.gcc (arm, --with-abi): Remove iwmmxt abi option. + * config/arm/arm.opt (enum ARM_ABI_IWMMXT): Remove. + * config/arm/arm.h (TARGET_IWMMXT_ABI): Delete. + (enum arm_pcs): Remove ARM_PCS_AAPCS_IWMMXT. + (FUNCTION_ARG_REGNO_P): Remove IWMMXT ABI support. + (CUMULATIVE_ARGS): Remove iwmmxt_nregs. + * config/arm/arm.cc (arm_options_perform_arch_sanity_checks): + Remove IWMMXT ABI checks. + (arm_libcall_value_1): Likewise. + (arm_function_value_regno_p): Likewise. + (arm_apply_result_size): Remove adjustment for IWMMXT ABI. + (arm_function_arg): Remove IWMMXT ABI support. + (arm_arg_partial_bytes): Likewise. + (arm_function_arg_advance): Likewise. + (arm_init_cumulative_args): Don't initialize iwmmxt_nregs. + * doc/invoke.texi (arm -mabi): Remove mention of the iwmmxt + ABI option. + * config/arm/arm-opts.h (enum arm_abi_type): Remove ARM_ABI_IWMMXT. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.md(attr arch): Remove iwmmxt and iwmmxt2. + Remove checks based on TARGET_REALLY_IWMMXT2 from all split + patterns. + (arm_movdi): Likewise. + (*arm_movt): Likewise. + (arch_enabled): Remove test for iwmmxt2. + * config/arm/constraints.md (y, z): Remove register constraints. + (Uy): Remove memory constraint. + * config/arm/thumb2.md (thumb2_pop_single): Remove check for + IWMMXT. + * config/arm/vec-common.md (mov<mode>): Remove check for IWMMXT. + (mul<mode>3): Likewise. + (xor<mode>3): Likewise. + (<absneg_str><mode>2): Likewise. + (@movmisalign<mode>): Likewise. + (@mve_<mve_insn>q_<supf><mode>): Likewise. + (vashl<mode>3): Likewise. + (vashr<mode>3): Likewise. + (vlshr<mode>3): Likewise. + (uavg<mode>3_ceil): Likewise. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.md: Don't include iwmmxt.md. + * config/arm/t-arm (MD_INCLUDES): Remove iwmmxt*.md. + * config/arm/iwmmxt.md: Removed. + * config/arm/iwmmxt2.md: Removed. + * config/arm/unspecs.md: Remove comment referring to + iwmmxt2.md. + (enum unspec): Remove iWMMXt unspec values. + (enum unspecv): Likewise. + * config/arm/predicates.md (imm_or_reg_operand): Delete. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm-builtins.cc (enum arm_builtins): Delete iWMMX + builtin values. + (bdesc_2arg): Likewise. + (bdesc_1arg): Likewise. + (arm_init_iwmmxt_builtins): Delete. + (arm_init_builtins): Don't call arm_init_iwmmxt_builtins. + (safe_vector_operand): Use __builtin_unreachable instead of emitting + an iwmmxt builtin. + (arm_general_expand_builtin): Remove iWMMX builtins support. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm-cpus.in (arch iwmmxt): treat in the same + way as we would treat XScale. + (arch iwmmxt2): Likewise. + (cpu xscale): Add aliases for iwmmxt and iwmmxt2. + (cpu iwmmxt): Delete. + (cpu iwmmxt2): Delete. + * config/arm/arm-generic.md (load_ldsched_xscale): Remove references + to iwmmxt. + (load_ldsched): Likewise. + * config/arm/arm-tables.opt: Regenerated. + * config/arm/arm-tune.md: Regenerated. + * doc/sourcebuild.texi (arm_iwmmxt_ok): Delete. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.h (SECONDARY_OUTPUT_RELOAD_CLASS): Add parentheis + and re-indent. + (SECONDARY_INPUT_RELOAD_CLASS): Likewise. + +2025-05-12 H.J. Lu <hjl.tools@gmail.com> + + PR target/120228 + * config/i386/i386-features.cc (ix86_place_single_vector_set): + Remove df_insn_rescan after emit_insn_*. + (remove_partial_avx_dependency): Likewise. + (replace_vector_const): Likewise. + +2025-05-11 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_widen_mult_cost): Use sse_op to cost + SSE integer addition. + (ix86_multiplication_cost): Use COSTS_N_INSNS (...)/2 to cost sse + loads. + (ix86_shift_rotate_cost): Likewise. + (ix86_vector_costs::add_stmt_cost): Likewise. + +2025-05-11 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_register_move_cost): + Add appropriate move costs between AR_REGS and FP_REGS. + +2025-05-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120211 + * tree-vect-stmts.cc (vect_stmt_relevant_p): Only add PHIs + from the loop header to LOOP_VINFO_EARLY_BREAKS_LIVE_IVS. + +2025-05-11 Jiawei <jiawei@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc: New profile. + +2025-05-11 Jiawei <jiawei@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc (struct riscv_profiles): New struct. + (riscv_subset_list::parse_profiles): New parser. + (riscv_subset_list::parse_base_ext): Ditto. + * config/riscv/riscv-subset.h: New def. + * doc/invoke.texi: New option descriptions. + +2025-05-10 H.J. Lu <hjl.tools@gmail.com> + + PR target/92080 + PR target/117839 + * config/i386/i386-features.cc (replace_vector_const): Change + dest to src. + +2025-05-10 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386-features.cc + (general_scalar_chain::vector_const_cost): Add BB parameter; handle + size costs; use COSTS_N_INSNS to compute move costs. + (general_scalar_chain::compute_convert_gain): Use optimize_bb_for_size + instead of optimize_insn_for size; use COSTS_N_INSNS to compute move costs; + update calls of general_scalar_chain::vector_const_cost; use + ix86_cost->integer_to_sse. + (timode_immed_const_gain): Add bb parameter; use + optimize_bb_for_size_p. + (timode_scalar_chain::compute_convert_gain): Use optimize_bb_for_size_p. + * config/i386/i386-features.h (class general_scalar_chain): Update + prototype of vector_const_cost. + * config/i386/i386.h (struct processor_costs): Add integer_to_sse. + * config/i386/x86-tune-costs.h (struct processor_costs): Copy + sse_to_integer to integer_to_sse everywhere. + +2025-05-10 Filip Kastl <fkastl@suse.cz> + + PR tree-optimization/120080 + * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests): + Replace assert with return. + +2025-05-10 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * config/riscv/iterators.md (OPTAB): New iterator. + * config/riscv/predicates.md (arith_or_zbs_operand): Remove. + (reg_or_const_int_operand): New predicate. + * config/riscv/riscv-protos.h (synthesize_ior_xor): Prototype. + * config/riscv/riscv.cc (synthesize_ior_xor): New function. + * config/riscv/riscv.md (ior/xor expander): Use synthesize_ior_xor. + +2025-05-10 LIU Hao <lh_mouse@126.com> + + PR target/111107 + * config/i386/cygming.h (PREFERRED_STACK_BOUNDARY_DEFAULT): Override + definition from i386.h. + (STACK_REALIGN_DEFAULT): Undefine, as it no longer has an effect. + * config/i386/i386.cc (ix86_update_stack_boundary): Force minimum + 128-bit alignment if `force_align_arg_pointer`. + +2025-05-10 Anton Blanchard <antonb@tenstorrent.com> + + * config/riscv/bitmanip.md (crc_rev<ANYI1:mode><ANYI:mode>4): Check + TARGET_ZVBC. + * config/riscv/riscv.cc (expand_crc_using_clmul): Emit code using + vclmul if TARGET_ZVBC. + +2025-05-09 Eric Botcazou <ebotcazou@adacore.com> + + * vr-values.cc (simplify_using_ranges::simplify) <BIT_AND_EXPR>: + Do not call simplify_bit_ops_using_ranges for boolean types whose + precision is not 1. + +2025-05-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/114166 + * tree-vect-stmts.cc (vectorizable_operation): Lower also + bitwise operations on word-mode vectors. + +2025-05-09 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_operation): Remve non-SLP + path. + +2025-05-09 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple.h (gimple_cond_true_canonical_p): New function. + (gimple_cond_false_canonical_p): New function. + * gimple-fold.cc (replace_stmt_with_simplification): Return + false if replacing the operands of GIMPLE_COND with an INTEGER_CST + and already in canonical form. + +2025-05-09 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/120182 + * dse.cc (canon_address): Constant addresses have no + separate store group. + +2025-05-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * tree-vect-slp.cc (vect_slp_can_convert_to_external): + Handle cases where defs from multiple BBs are ordered + by their dominance relation. + +2025-05-09 Jørgen Kvalsvik <j@lambda.is> + + PR gcov-profile/120086 + * gcov.cc (print_prime_path_lines): Use unsigned, format with + %u. + (print_prime_path_source): Likewise. + (output_path_coverage): Format with HOST_SIZE_T_PRINT_UNSIGNED, + use unsigned for pathno. + +2025-05-09 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64-sve.md (*aarch64_sve_ptrue<mode>_ldr_str): + Add define_insn_and_split to fold predicated SVE loads/stores with + ptrue predicates to unpredicated instructions. + +2025-05-09 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * Makefile.in (OBJS-libcommon): Add diagnostic-format-html.o. + * diagnostic-format-html.cc: Move here from + testsuite/gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc. + Simplify includes. Rename "xhtml" to "html" throughout. + (write_escaped_text): Drop. + (class xhtml_stream_output_format): Drop. + (class html_file_output_format): Reimplement using + diagnostic_output_file. + (diagnostic_output_format_init_xhtml): Drop. + (diagnostic_output_format_init_xhtml_stderr): Drop. + (diagnostic_output_format_init_xhtml_file): Drop. + (diagnostic_output_format_open_html_file): New. + (make_html_sink): New. + (xhtml_format_selftests): Convert to... + (diagnostic_format_html_cc_tests): ...this. + (plugin_is_GPL_compatible): Drop. + (plugin_init): Drop. + * diagnostic-format-html.h: New file. + * doc/invoke.texi (-fdiagnostics-add-output=): Add + "experimental-html" scheme. + * opts-diagnostic.cc: Include "diagnostic-format-html.h". + (class html_scheme_handler): New. + (output_factory::output_factory): Add html_scheme_handler. + (html_scheme_handler::make_sink): New. + * selftest-run-tests.cc (selftest::run_tests): Call the new + selftests. + * selftest.h (selftest::diagnostic_format_html_cc_tests): New + decl. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-fold.cc (replace_stmt_with_simplification): Return false + if replacing `bool_var != 0` with `bool_var` in GIMPLE_COND. + +2025-05-08 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * tree-vect-loop.cc (get_initial_def_for_reduction): Remove. + (vect-create_epilog_for_reduction): Remove non-SLP path. + (vectorize_fold_left_reduction): Likewise. + (vectorizable_lane_reducing): Likewise. + (vectorizable_reduction): Likewise. + (vect_transform_reduction): Likewise. + (vect_transform_cycle_phi): Likewise. + (vectorizable_lc_phi): Remove non-SLP PATH and split into... + (vect_transform_lc_phi): ... this. + (update_epilogue_loop_vinfo): Update comment. + * tree-vect-stmts.cc (vect_analyze_stmt): Update call to + vectorizable_lc_phi. + (vect_transform_stmt): Update calls to vect_transform_reduction and + vect_transform_cycle_phi. Rename call from vectorizable_lc_phi to + vect_transform_lc_phi. + * tree-vectorizer.h (vect_transform_reduction): Update declaration. + (vect_transform_cycle_phi): Likewise. + (vectorizable_lc_phi): Likewise. + (vect_transform_lc_phi): New. + +2025-05-08 Richard Earnshaw <rearnsha@arm.com> + + * gensupport.cc (conlist::conlist): Pass a location to the constructor. + Only allow skipping of non-alpha-numeric characters when parsing a + number and only allow '=', '+' or '%'. Add some error checking when + parsing an operand number. + (parse_section_layout): Pass the location to the conlist constructor. + (parse_section): Allow an optional list of forbidden characters. + If specified, reject strings containing them. + (convert_syntax): Reject '=', '+' or '%' in an alternative. + +2025-05-08 Richard Earnshaw <rearnsha@arm.com> + + * config/aarch64/aarch64-sve.md (@aarch64_pred_<optab><mode>): Move + commutative marker to the cons specification. + (add<mode>3): Likewise. + (@aarch64_pred_<su>abd<mode>): Likewise. + (@aarch64_pred_<optab><mode>): Likewise. + (*cond_<optab><mode>_z): Likewise. + (<optab><mode>3): Likewise. + (@aarch64_pred_<optab><mode>): Likewise. + (*aarch64_pred_abd<mode>_relaxed): Likewise. + (*aarch64_pred_abd<mode>_strict): Likewise. + (@aarch64_pred_<optab><mode>): Likewise. + (@aarch64_pred_<optab><mode>): Likewise. + (@aarch64_pred_fma<mode>): Likewise. + (@aarch64_pred_fnma<mode>): Likewise. + (@aarch64_pred_<optab><mode>): Likewise. + * config/aarch64/aarch64-sve2.md (@aarch64_sve_<su>clamp<mode>): Move + commutative marker to the cons specification. + (*aarch64_sve_<su>clamp<mode>_x): Likewise. + (@aarch64_sve_fclamp<mode>): Likewise. + (*aarch64_sve_fclamp<mode>_x): Likewise. + (*aarch64_sve2_nor<mode>): Likewise. + (*aarch64_sve2_nand<mode>): Likewise. + (*aarch64_pred_faminmax_fused): Likewise. + * config/aarch64/aarch64.md (*loadwb_pre_pair_<ldst_sz>): Move the + early-clobber marker to the relevant alternative. + (*storewb_pre_pair_<ldst_sz>): Likewise. + (*add<mode>3_aarch64): Move commutative marker to the cons + specification. + (*addsi3_aarch64_uxtw): Likewise. + (*add<mode>3_poly_1): Likewise. + (add<mode>3_compare0): Likewise. + (*addsi3_compare0_uxtw): Likewise. + (*add<mode>3nr_compare0): Likewise. + (<optab><mode>3): Likewise. + (*<optab>si3_uxtw): Likewise. + (*and<mode>3_compare0): Likewise. + (*andsi3_compare0_uxtw): Likewise. + (@aarch64_and<mode>3nr_compare0): Likewise. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116352 + * tree-vect-slp.cc (vect_build_slp_tree_2): When compressing + operands from a two-operator node make sure the resulting + operation does not mix defs from different basic-blocks. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120043 + * tree-ssa-phiopt.cc (cond_store_replacement): Check + whether the store is to readonly memory. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/116938 + * tree-ssa-phiopt.cc (move_stmt): Use rewrite_to_defined_overflow + isntead of manually doing the rewrite of the VCE. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120122 + PR tree-optimization/116939 + * gimple-fold.h (gimple_with_undefined_signed_overflow): Rename to .. + (rewrite_to_defined_overflow): This. + (gimple_needing_rewrite_undefined): Rename to ... + (rewrite_to_defined_unconditional): this. + * gimple-fold.cc (gimple_with_undefined_signed_overflow): Rename to ... + (gimple_needing_rewrite_undefined): This. Return true for VCE with integral + types of smaller precision. + (rewrite_to_defined_overflow): Rename to ... + (rewrite_to_defined_unconditional): This. Handle VCE rewriting to a cast. + * tree-if-conv.cc: s/gimple_with_undefined_signed_overflow/gimple_needing_rewrite_undefined/ + s/rewrite_to_defined_overflow/rewrite_to_defined_unconditional. + * tree-scalar-evolution.cc: Likewise + * tree-ssa-ifcombine.cc: Likewise. + * tree-ssa-loop-im.cc: Likewise. + * tree-ssa-loop-split.cc: Likewise. + * tree-ssa-reassoc.cc: Likewise. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR ipa/120146 + * tree-ssa-structalias.cc (create_variable_info_for): If + the symtab cannot tell us whether all refs to a variable + are explicit assume they are not. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119589 + PR tree-optimization/119586 + PR tree-optimization/119155 + * tree-vect-stmts.cc (vectorizable_store): Verify + DR_STEP_ALIGNMENT preserves DR_TARGET_ALIGNMENT when + VF > 1 and VMAT_STRIDED_SLP. Use vector aligned accesses when + we can. + (vectorizable_load): Likewise. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120143 + * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): + Move/update the original stmts, not the pattern stmts which + lack virtual operands and are not in the IL. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120089 + * tree-vect-stmts.cc (vect_stmt_relevant_p): Mark all + PHIs live when not already so and doing early-break + vectorization. + (vect_mark_stmts_to_be_vectorized): Skip virtual PHIs. + * tree-vect-slp.cc (vect_analyze_slp): Robustify handling + of early-break forced IVs. + +2025-05-08 Pengxuan Zheng <quic_pzheng@quicinc.com> + + * config/aarch64/aarch64-protos.h (aarch64_exact_log2_inverse): New. + * config/aarch64/aarch64-simd.md (aarch64_simd_vec_set_zero<mode>): + Update pattern accordingly. + * config/aarch64/aarch64.cc (aarch64_exact_log2_inverse): New. + * simplify-rtx.cc (simplify_context::simplify_ternary_operation): + Canonicalize vec_merge. + +2025-05-07 Jeff Law <jlaw@ventanamicro.com> + + PR target/120137 + PR target/120154 + * config/riscv/riscv-vect-permconst.cc (process_bb): Verify each + canonicalized element fits into the vector element mode. + +2025-05-07 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * common/config/riscv/riscv-common.cc: New extension. + * config/riscv/riscv.opt: Ditto. + +2025-05-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/91323 + * config/arm/arm.cc (arm_select_cc_mode): Use CCFPEmode for LTGT. + +2025-05-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/110796 + PR target/118446 + * config/arm/arm.h (REVERSIBLE_CC_MODE): FP modes are only + reversible if flag_finite_math_only. + * config/arm/arm.cc (arm_select_cc_mode): Return CCFPmode for all + FP comparisons if flag_finite_math_only. + +2025-05-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/111276 + * gimple-fold.cc (arith_code_with_undefined_signed_overflow): Make static. + (gimple_with_undefined_signed_overflow): New function. + * gimple-fold.h (arith_code_with_undefined_signed_overflow): Remove. + (gimple_with_undefined_signed_overflow): Add declaration. + * tree-if-conv.cc (if_convertible_gimple_assign_stmt_p): Use + gimple_with_undefined_signed_overflow instead of manually + checking lhs and the code of the stmt. + (predicate_statements): Likewise. + * tree-ssa-ifcombine.cc (ifcombine_rewrite_to_defined_overflow): Likewise. + * tree-ssa-loop-im.cc (move_computations_worker): Likewise. + * tree-ssa-reassoc.cc (update_range_test): Likewise. Reformat. + * tree-scalar-evolution.cc (final_value_replacement_loop): Use + gimple_with_undefined_signed_overflow instead of + arith_code_with_undefined_signed_overflow. + * tree-ssa-loop-split.cc (split_loop): Likewise. + +2025-05-07 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-loop-im.cc (compute_invariantness): Hoist to the always executed point + if ignorning the cost. + +2025-05-07 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Add FLOAT_EXPR; + FIX_TRUNC_EXPR and vec_promote_demote costs. + +2025-05-07 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/117978 + * config/aarch64/aarch64-protos.h: Declare + aarch64_emit_load_store_through_mode and aarch64_sve_maskloadstore. + * config/aarch64/aarch64-sve.md + (maskload<mode><vpred>): New define_expand folding maskloads with + certain predicate patterns to ASIMD loads. + (*aarch64_maskload<mode><vpred>): Renamed from maskload<mode><vpred>. + (maskstore<mode><vpred>): New define_expand folding maskstores with + certain predicate patterns to ASIMD stores. + (*aarch64_maskstore<mode><vpred>): Renamed from maskstore<mode><vpred>. + * config/aarch64/aarch64.cc + (aarch64_emit_load_store_through_mode): New function emitting a + load/store through subregs of a given mode. + (aarch64_emit_sve_pred_move): Refactor to use + aarch64_emit_load_store_through_mode. + (aarch64_expand_maskloadstore): New function to emit ASIMD loads/stores + for maskloads/stores with SVE predicates with VL1, VL2, VL4, VL8, or + VL16 patterns. + (aarch64_partial_ptrue_length): New function returning number of leading + set bits in a predicate. + +2025-05-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-protos.h (s390_expand_cstoreti4): New + function. + * config/s390/s390.cc (s390_expand_cstoreti4): New function. + * config/s390/s390.md (CC_SUZ): New mode iterator. + (l): New mode attribute. + (cc_tolower): New mode attribute. + * config/s390/vector.md (cstoreti4): New expander. + (*vec_cmpv2di_lane0_<cc_tolower>): New insn. + (*vec_cmpti_<cc_tolower>): New insn. + +2025-05-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120036 + * config/i386/i386-features.cc (ix86_get_vector_load_mode): + Handle 8/4/2 bytes. + (remove_redundant_vector_load): If the mode size is smaller than + its natural size, first insert an extra move with a QI vector + SUBREG of the same size to avoid validate_subreg failure. + +2025-05-07 hongtao.liu <hongtao.liu@intel.com> + + PR gcov-profile/118508 + * auto-profile.cc + (autofdo_source_profile::get_callsite_total_count): Fix name + mismatch for fortran. + +2025-05-07 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.md (*branch<ANYI:mode>_shiftedarith_equals_zero): + Avoid generating unnecessary andi. Fix formatting. + +2025-05-06 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * common/config/riscv/riscv-common.cc: New extension. + +2025-05-06 Mingzhu Yan <yanmingzhu@iscas.ac.cn> + + * common/config/riscv/riscv-common.cc (riscv_ext_version_table): New + extension. + (riscv_ext_flag_table) Ditto. + * config/riscv/riscv.opt: New mask. + * doc/invoke.texi (RISC-V Options): New extension + +2025-05-06 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_rtx_costs): Cost FLOAT, UNSIGNED_FLOAT, + FIX, UNSIGNED_FIX. + * config/i386/i386.h (struct processor_costs): Add + cvtsi2ss, cvtss2si, cvtpi2ps, cvtps2pi. + * config/i386/x86-tune-costs.h (struct processor_costs): Update tables. + +2025-05-06 Martin Jambor <mjambor@suse.cz> + + PR ipa/119852 + * cgraph.h (cgraph_node::create_clone): Remove the default value of + argument suffix. Update function comment. + * cgraphclones.cc (cgraph_node::create_clone): Update function comment. + * ipa-inline-transform.cc (clone_inlined_nodes): Pass NULL to suffix + of create_clone explicitely. + * ipa-inline.cc (recursive_inlining): Likewise. + * lto-cgraph.cc (input_node): Likewise. + +2025-05-06 Martin Jambor <mjambor@suse.cz> + + * cgraph.h (cgraph_node::create_version_clone_with_body): Fix function + comment. Change the name of clone_name to suffix, in line with the + function definition. + * cgraphclones.cc (cgraph_node::create_version_clone_with_body): Fix + function comment. + +2025-05-06 Martin Jambor <mjambor@suse.cz> + + PR ipa/119852 + * cgraphclones.cc (dump_callgraph_transformation): Document the + function. Do not dump if suffix is NULL. + +2025-05-06 Martin Jambor <mjambor@suse.cz> + + * doc/invoke.texi (Developer Options): Document -fdump-ipa-clones. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * selftest-diagnostic.cc (test_diagnostic_context::report): Use + diagnostic_option_id rather than plain int. + * selftest-diagnostic.h (test_diagnostic_context::report): + Likewise. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/117988 + * json.cc (json::pointer::token::token): New ctors. + (json::pointer::token::~token): New. + (json::pointer::token::operator=): New. + (json::object::set): Set the value's m_pointer_token. + (json::array::append): Likewise. + * json.h (json::pointer::token): New struct. + (json::value::get_pointer_token): New accessor. + (json::value::m_pointer_token): New field. + * libsarifreplay.cc (get_logical_location_kind_for_json_kind): + New. + (make_logical_location_from_jv): New. + (sarif_replayer::report_problem): Set the logical location of the + diagnostic. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-sarif.cc (maybe_get_sarif_kind): Add cases for + new kinds of logical location. + * doc/libgdiagnostics/topics/logical-locations.rst: Add new kinds + of logical location for handling XML and JSON. + * libgdiagnostics.cc (impl_logical_location_manager::get_kind): + Add cases for new kinds of logical location. + (diagnostic_text_sink::text_starter): Likewise, introducing a + macro for this. + (diagnostic_manager_debug_dump_logical_location): Likewise. + * libgdiagnostics.h (enum diagnostic_logical_location_kind_t): Add + new kinds of logical location for handling XML and JSON. + * libsarifreplay.cc (handle_logical_location_object): Add entries + to "kind_values" for decoding sarif logical location kinds + relating to XML and JSON. + * logical-location.h (enum logical_location_kind): Add new kinds + of logical location for handling XML and JSON. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + PR other/116176 + * diagnostic-format-sarif.cc (class sarif_array_of_unique): New + template. + (class sarif_logical_location): Move here from + diagnostic-format-sarif.h. + (sarif_builder::m_cached_logical_locs): New. + (sarif_builder::sarif_builder): Initialize it. + (sarif_builder::set_any_logical_locs_arr): Call + make_minimal_sarif_logical_location rather than + make_sarif_logical_location_object. + (sarif_property_bag::set_logical_location): Likewise. + (make_sarif_logical_location_object): Replace with... + (sarif_builder::ensure_sarif_logical_location_for): ...this. + Capture "parentIndex" property. Consolidate into + theRuns.logicalLocations. + (sarif_builder::make_minimal_sarif_logical_location): New. + (sarif_builder::make_run_object): Add "index" properties to + m_cached_logical_locs and move it to theRuns.logicalLocations. + (selftest::test_sarif_array_of_unique_1): New. + (selftest::test_sarif_array_of_unique_2): New. + (selftest::diagnostic_format_sarif_cc_tests): Call the new + selftests. + * diagnostic-format-sarif.h (class sarif_logical_location): Move + to diagnostic-format-sarif.cc. + (make_sarif_logical_location_object): Drop decl. + * json.cc (value::compare): New. + (object::compare): New. + (selftest::fail_comparison): New. + (selftest::assert_json_equal): New. + (ASSERT_JSON_EQ): New. + (selftest::assert_json_non_equal): New. + (ASSERT_JSON_NE): New. + (selftest::test_comparisons): New. + (selftest::json_cc_tests): Call the new selftest. + * json.h (json::value::dyn_cast_object): New vfunc. + (json::object::dyn_cast_object): New vfunc impl. + (json::object::compare): New decl. + * libgdiagnostics.cc + (impl_logical_location_manager::get_parent): New. + * logical-location.h (logical_location_manager::get_parent): New + vfunc impl. + * selftest-logical-location.h + (test_logical_location_manager::get_parent): New vfunc impl. + * tree-logical-location.cc (assert_valid_tree): New. + (tree_logical_location_manager::get_short_name): Support types as + well as decls. + (tree_logical_location_manager::get_name_with_scope): Gracefully + handle non-decl nodes. + (tree_logical_location_manager::get_internal_name): Likewise. + (tree_logical_location_manager::get_kind): Don't attempt to handle + null nodes. Handle NAMESPACE_DECL and RECORD_TYPE. + (tree_logical_location_manager::get_name_for_path_output): + Gracefully handle non-decl nodes. + (tree_logical_location_manager::get_parent): New. + * tree-logical-location.h + (tree_logical_location_manager::get_parent): New vfunc impl. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-client-data-hooks.h: Include "logical-location.h". + (diagnostic_client_data_hooks::get_logical_location_manager): New. + (diagnostic_client_data_hooks::get_current_logical_location): + Convert return type from const logical_location * to + logical_location. + * diagnostic-format-json.cc: Include + "diagnostic-client-data-hooks.h". + (make_json_for_path): Update to use logical_location_manager from + the context. + * diagnostic-format-sarif.cc + (sarif_builder::get_logical_location_manager): New. + (sarif_builder::make_location_object): Update type of logical_loc + from "const logical_location *" to "logical_location". + (sarif_builder::set_any_logical_locs_arr): Likewise. + (sarif_builder::m_logical_loc_mgr): New field. + (sarif_result::on_nested_diagnostic): Use logical_location default + ctor rather than nullptr. + (sarif_builder::sarif_builder): Initialize m_logical_loc_mgr from + context's client data hooks. + (sarif_builder::make_locations_arr): Convert type of logical_loc + from from "const logical_location *" to "logical_location". + (sarif_builder::set_any_logical_locs_arr): Likewise. Pass manager + to make_sarif_logical_location_object. + (sarif_builder::make_location_object): Likewise. + (sarif_property_bag::set_logical_location): New. + (make_sarif_logical_location_object): Update for introduction of + logical_location_manager. + (populate_thread_flow_location_object): Pass builder to + ev.maybe_add_sarif_properties. + (selftest::test_make_location_object): Use logical_location + default ctor rather than nullptr. + * diagnostic-format-sarif.h (class logical_location): Replace + forward decl with include of "logical-location.h". + (class sarif_builder): New forward decl. + (sarif_property_bag::set_logical_location): New. + (make_sarif_logical_location_object): Add "mgr" param. + * diagnostic-path.cc + (diagnostic_path::get_first_event_in_a_function): Update for + change of logical_location type. + (per_thread_summary::per_thread_summary): Pass in + "logical_loc_mgr". + (per_thread_summary::m_logical_loc_mgr): New field. + (event_range::m_logical_loc): Update for change of + logical_location type. + (path_summary::get_logical_location_manager): New accessor. + (path_summary::m_logical_loc_mgr): New field. + (path_summary::get_or_create_events_for_thread_id): Pass + m_logical_loc_mgr to per_thread_summary ctor. + (path_summary::path_summary): Initialize m_logical_loc_mgr. + (thread_event_printer::print_swimlane_for_event_range): Add param + "logical_loc_mgr". Update for change in logical_loc type. + (print_path_summary_as_text): Pass manager to + thread_event_printer::print_swimlane_for_event_range. + (diagnostic_text_output_format::print_path): Update for + introduction of logical_location_manager. + * diagnostic-path.h: Include "logical-location.h". + (class sarif_builder): New forward decl. + (diagnostic_event::get_logical_location): Convert return type from + "const logical_location *" to "logical_location". + (diagnostic_event::maybe_add_sarif_properties): Add sarif_builder + param. + (diagnostic_path::get_logical_location_manager): New accessor. + (diagnostic_path::diagnostic_path): New ctor, taking manager. + (diagnostic_path::m_logical_loc_mgr): New field. + * diagnostic.cc + (diagnostic_context::get_logical_location_manager): New. + (logical_location::function_p): Convert to... + (logical_location_manager::function_p): ...this. + * diagnostic.h (class logical_location): Replace forward decl + with... + (class logical_location_manager): ...this. + (diagnostic_context::get_logical_location_manager): New decl. + * lazy-diagnostic-path.cc + (selftest::test_lazy_path::test_lazy_path): Pass m_logical_loc_mgr + to path ctor. + (selftest::test_lazy_path::make_inner_path): Likewise. + (selftest::test_lazy_path::m_logical_loc_mgr): New field. + * lazy-diagnostic-path.h + (lazy_diagnostic_path::lazy_diagnostic_path): New ctor. + * libgdiagnostics.cc (struct diagnostic_logical_location): Convert + from subclass of logical_location to a plain struct, dropping + accessors. + (class impl_logical_location_manager): New. + (impl_diagnostic_client_data_hooks::get_logical_location_manager): + New + (impl_diagnostic_client_data_hooks::m_logical_location_manager): + New field. + (diagnostic_manager::get_logical_location_manager): New. + (libgdiagnostics_path_event::get_logical_location): Reimplement. + (diagnostic_execution_path::diagnostic_execution_path): Add + logical_loc_mgr and pass to base class. + (diagnostic_execution_path::same_function_p): Update for change to + logical_location type. + (diagnostic::add_execution_path): Pass logical_loc_mgr to path + ctor. + (impl_diagnostic_client_data_hooks::get_current_logical_location): + Reimplement. + (diagnostic_text_sink::text_starter): Reimplement printing of + logical location. + (diagnostic_manager::new_execution_path): Pass mgr to path ctor. + (diagnostic_manager_debug_dump_logical_location): Update for + changes to diagnostic_logical_location. + (diagnostic_logical_location_get_kind): Likewise. + (diagnostic_logical_location_get_parent): Likewise. + (diagnostic_logical_location_get_short_name): Likewise. + (diagnostic_logical_location_get_fully_qualified_name): Likewise. + (diagnostic_logical_location_get_decorated_name): Likewise. + * logical-location.h (class logical_location_manager): New. + (class logical_location): Convert to typedef of + logical_location_manager::key. + * selftest-diagnostic-path.cc + (selftest::test_diagnostic_path::test_diagnostic_path): Pass + m_test_logical_loc_mgr to base ctor. + (selftest::test_diagnostic_path::same_function_p): Use pointer + comparison. + (selftest::test_diagnostic_path::add_event): Use + logical_location_from_funcname. + (selftest::test_diagnostic_path::add_thread_event): Likewise. + (selftest::test_diagnostic_path::logical_location_from_funcname): + New. + (selftest::test_diagnostic_event::test_diagnostic_event): Fix + indentation. Pass logical_location rather than const char *. + * selftest-diagnostic-path.h + (selftest::test_diagnostic_event::test_diagnostic_event): + Likewise. + (selftest::test_diagnostic_event::get_logical_location): Update + for change to logical_location type. + (selftest::test_diagnostic_event::get_function_name): Drop. + (selftest::test_diagnostic_event::m_logical_loc): Convert from + test_logical_location to logical_location. + (selftest::test_diagnostic_path::logical_location_from_funcname): + New. + (selftest::test_diagnostic_path::m_test_logical_loc_mgr): New + field. + * selftest-logical-location.cc: Include "selftest.h". + (selftest::test_logical_location::test_logical_location): Drop. + (selftest::test_logical_location_manager::~test_logical_location_manager): + New. + (selftest::test_logical_location::get_short_name): Replace with... + (selftest::test_logical_location_manager::get_short_name): + ...this. + (selftest::test_logical_location::get_name_with_scope): Replace + with... + (selftest::test_logical_location_manager::get_name_with_scope): + ...this. + (selftest::test_logical_location::get_internal_name): Replace + with... + (selftest::test_logical_location_manager::get_internal_name): + ...this. + (selftest::test_logical_location::get_kind): Replace with... + (selftest::test_logical_location_manager::get_kind): ...this. + (selftest::test_logical_location::get_name_for_path_output): + Replace with... + (selftest::test_logical_location_manager::get_name_for_path_output): + ...this. + (selftest::test_logical_location_manager::logical_location_from_funcname): + New. + (selftest::test_logical_location_manager::item_from_funcname): + New. + (selftest::selftest_logical_location_cc_tests): New. + * selftest-logical-location.h (class test_logical_location): + Replace with... + (class test_logical_location_manager): ...this. + * selftest-run-tests.cc (selftest::run_tests): Call + selftest_logical_location_cc_tests. + * selftest.h (selftest::selftest_logical_location_cc_tests): New + decl. + * simple-diagnostic-path.cc + (simple_diagnostic_path::simple_diagnostic_path): Add + "logical_loc_mgr" param and pass it to base ctor. + (simple_diagnostic_event::simple_diagnostic_event): Update init of + m_logical_loc. + (selftest::test_intraprocedural_path): Update for changes to + logical locations. + * simple-diagnostic-path.h: Likewise. + * tree-diagnostic-client-data-hooks.cc + (compiler_data_hooks::get_logical_location_manger): New. + (compiler_data_hooks::get_current_logical_location): Update. + (compiler_data_hooks::m_current_fndecl_logical_loc): Replace + with... + (compiler_data_hooks::m_logical_location_manager): ...this. + * tree-logical-location.cc + (compiler_logical_location::get_short_name_for_tree): Replace + with... + (tree_logical_location_manager::get_short_name): ...this. + (compiler_logical_location::get_name_with_scope_for_tree): Replace + with... + (tree_logical_location_manager::get_name_with_scope): ...this. + (compiler_logical_location::get_internal_name_for_tree): Replace + with... + (tree_logical_location_manager::get_internal_name): ...this. + (compiler_logical_location::get_kind_for_tree): Replace with... + (tree_logical_location_manager::get_kind): ...this. + (compiler_logical_location::get_name_for_tree_for_path_output): + Replace with... + (tree_logical_location_manager::get_name_for_path_output): + ...this. + (tree_logical_location::get_short_name): Drop. + (tree_logical_location::get_name_with_scope): Drop. + (tree_logical_location::get_internal_name): Drop. + (tree_logical_location::get_kind): Drop. + (tree_logical_location::get_name_for_path_output): Drop. + (current_fndecl_logical_location::get_short_name): Drop. + (current_fndecl_logical_location::get_name_with_scope): Drop. + (current_fndecl_logical_location::get_internal_name): Drop. + (current_fndecl_logical_location::get_kind): Drop. + (current_fndecl_logical_location::get_name_for_path_output): Drop. + * tree-logical-location.h (class compiler_logical_location): Drop. + (class tree_logical_location): Drop. + (class current_fndecl_logical_location): Drop. + (class tree_logical_location_manager): New. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * doc/libgdiagnostics/topics/compatibility.rst: New file, based + on gcc/jit/docs/topics/compatibility.rst. + * doc/libgdiagnostics/topics/index.rst: Add compatibility.rst. + * doc/libgdiagnostics/topics/logical-locations.rst (Accessors): + New section. + * libgdiagnostics++.h (logical_location::operator bool): New. + (logical_location::operator==): New. + (logical_location::operator!=): New. + (logical_location::get_kind): New. + (logical_location::get_parent): New. + (logical_location::get_short_name): New. + (logical_location::get_fully_qualified_name): New. + (logical_location::get_decorated_name): New. + * libgdiagnostics.cc + (diagnostic_logical_location::get_fully_qualified_name): New. + (diagnostic_logical_location_get_kind): New entrypoint. + (diagnostic_logical_location_get_parent): New entrypoint. + (diagnostic_logical_location_get_short_name): New entrypoint. + (diagnostic_logical_location_get_fully_qualified_name): New + entrypoint. + (diagnostic_logical_location_get_decorated_name): New entrypoint. + * libgdiagnostics.h + (LIBDIAGNOSTICS_HAVE_LOGICAL_LOCATION_ACCESSORS): New define. + (diagnostic_logical_location_get_kind): New entrypoint. + (diagnostic_logical_location_get_parent): New entrypoint. + (diagnostic_logical_location_get_short_name): New entrypoint. + (diagnostic_logical_location_get_fully_qualified_name): New + entrypoint. + (diagnostic_logical_location_get_decorated_name): New entrypoint. + * libgdiagnostics.map (LIBGDIAGNOSTICS_ABI_1): New. + +2025-05-06 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR middle-end/114512 + * config/riscv/bitmanip.md (bext* patterns): New patterns for + bext recognition plus splitter for extracting variable bit from + a constant. + * config/riscv/predicates.md (bitpos_mask_operand): New predicate. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * config/riscv/autovec-opt.md (*<optab>_vx_<mode>): Add new + combine to convert vec_duplicate + vadd.vv to vaddvx on GR2VR + cost. + * config/riscv/riscv.cc (riscv_rtx_costs): Take care of the cost + when vec_dup and vadd v, vec_dup(x). + * config/riscv/vector-iterators.md: Add new iterator for vx. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-protos.h (get_gr2vr_cost): Add new decl to + get the cost of gr2vr. + * config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost): + Leverage the helper function to get the cost of gr2vr. + * config/riscv/riscv.cc (riscv_register_move_cost): Ditto. + (riscv_builtin_vectorization_cost): Ditto. + (get_gr2vr_cost): Add new impl of the helper function. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-opts.h (RVV_GR2VR_COST_UNPROVIDED): Add + new macro to indicate the param is not provided. + * config/riscv/riscv.opt: Add new option --pararm=gpr2vr-cost. + +2025-05-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/1157777 + * tree-vectorizer.h (_slp_tree::avoid_stlf_fail): New member. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize it. + (vect_print_slp_tree): Dump it. + * tree-vect-data-refs.cc (vect_slp_analyze_instance_dependence): + For dataflow dependent loads of a store check whether there's + a cross-iteration data dependence that for sure prohibits + store-to-load forwarding and mark involved loads. + * tree-vect-stmts.cc (get_group_load_store_type): For avoid_stlf_fail + marked loads use VMAT_ELEMENTWISE. + +2025-05-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120074 + * gimple-fold.cc (fold_truth_andor_for_ifcombine): For + lsignbit && l_xor case, punt if ll_bitsize != lr_bitsize. Similarly + for rsignbit && r_xor case, punt if rl_bitsize != rr_bitsize. + Formatting fix. + +2025-05-06 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_tls_index): Add ifdef. + +2025-05-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120031 + * match.pd ((nop_outer_cast)-(inner_cast)var -> -(outer_cast)(var)): + Allow inner conversions that are not widenings when the outer + type is unsigned. + +2025-05-06 LIU Hao <lh_mouse@126.com> + + PR pch/14940 + * config/i386/host-mingw32.cc (mingw32_gt_pch_use_address): + Replace the loop that attempted to map the PCH only to its + original address with more adaptive operations + +2025-05-06 Julian Waters <tanksherman27@gmail.com> + Eric Botcazou <ebotcazou@adacore.com> + Uroš Bizjak <ubizjak@gmail.com> + Liu Hao <lh_mouse@126.com> + + * config/i386/i386.cc (ix86_legitimate_constant_p): Handle new UNSPEC. + (legitimate_pic_operand_p): Handle new UNSPEC. + (legitimate_pic_address_disp_p): Handle new UNSPEC. + (ix86_legitimate_address_p): Handle new UNSPEC. + (ix86_tls_index_symbol): New symbol for _tls_index. + (ix86_tls_index): Handle creation of _tls_index symbol. + (legitimize_tls_address): Create thread local access sequence. + (output_pic_addr_const): Handle new UNSPEC. + (i386_output_dwarf_dtprel): Handle new UNSPEC. + (i386_asm_output_addr_const_extra): Handle new UNSPEC. + * config/i386/i386.h (TARGET_WIN32_TLS): Define. + * config/i386/i386.md: New UNSPEC. + * config/i386/predicates.md: Handle new UNSPEC. + * config/mingw/mingw32.h (TARGET_WIN32_TLS): Define. + (TARGET_ASM_SELECT_SECTION): Define. + (DEFAULT_TLS_SEG_REG): Define. + * config/mingw/winnt.cc (mingw_pe_select_section): Select proper TLS section. + (mingw_pe_unique_section): Handle TLS section. + * config/mingw/winnt.h (mingw_pe_select_section): Declare. + * configure: Regenerate. + * configure.ac: New check for broken linker thread local support + +2025-05-05 Jeff Law <jlaw@ventanamicro.com> + + PR target/119971 + * config/riscv/bitmanip.md (rotation with masked count): Rewrite + as define_insn patterns. Fix formatting. + * config/riscv/riscv.md (shift with masked count): Similarly. + +2025-05-05 Uros Bizjak <ubizjak@gmail.com> + Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR target/120019 + * config/i386/i386.cc (ix86_print_operand): Handle 'v' operand + modifier to emit segment override prefix. + * config/i386/i386.md (*strmovdi_rex_1): Use %v operand modifier + to emit segment override prefix. + (*strmovsi_1): Ditto. + (*strmovhi_1): Ditto. + (*strmovqi_1): Ditto. + (*rep_movdi_rex64): Ditto. + (*rep_movsi): Ditto. + (*rep_movqi): Ditto. + +2025-05-05 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120048 + * ipa-cp.cc (ipcp_store_vr_results): Check for UNDEFINED. + +2025-05-05 Kyle Huey <khuey@kylehuey.com> + + * dwarf2out.cc (resolve_addr_in_expr): Propagate dtprel into the address + table when appropriate. + +2025-05-05 Simon Martin <simon@nasilyan.com> + + PR c++/118163 + PR c++/118392 + * diagnostic.cc (diagnostic_context::initialize): Initialize + m_diagnostic_groups.m_inhibiting_notes_from. + (diagnostic_context::inhibit_notes_in_group): New. + (diagnostic_context::notes_inhibited_in_group): New + (diagnostic_context::report_diagnostic): Call + inhibit_notes_in_group and notes_inhibited_in_group. + (diagnostic_context::end_group): Call inhibit_notes_in_group. + (diagnostic_context::pop_nesting_level): Ditto. + * diagnostic.h (diagnostic_context::m_diagnostic_groups): Add + member to track the depth at which a warning has been inhibited. + (diagnostic_context::notes_inhibited_in_group): Declare. + (diagnostic_context::inhibit_notes_in_group): Declare. + * doc/ux.texi: Document diagnostic_group behavior with regards + to inhibited warnings. + +2025-05-05 Jakub Jelinek <jakub@redhat.com> + + * config/i386/i386.md (truncsfbf2): Fix comment typo, + unsafte -> unsafe. + +2025-05-05 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/genrvv-type-indexer.cc: Apply clang-format to the + file. + +2025-05-04 Jeff Law <jlaw@ventanamicro.com> + + * config.gcc (riscv): Add riscv-vect-permcost.o to extra_objs. + * config/riscv/riscv-passes.def (pass_vector_permcost): Add new pass. + * config/riscv/riscv-protos.h (make_pass_vector_permconst): Declare. + * config/riscv/riscv-vect-permconst.cc: New file. + * config/riscv/t-riscv: Add build rule for riscv-vect-permcost.o + +2025-05-04 Jin Ma <jinma@linux.alibaba.com> + Dimitar Dimitrov <dimitar@dinux.eu> + + * config/riscv/riscv.cc (riscv_print_operand): Add H. + * doc/extend.texi: Document for H. + +2025-05-04 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_register_move_cost): Handle + subclasses with vector registers as well. + +2025-05-04 Jan Hubicka <hubicka@ucw.cz> + + PR target/119900 + * cgraph.cc (cgraph_edge::maybe_hot_p): Add + a variant accepting a sreal scale; use reliability of + profile. + * cgraph.h (cgraph_edge::maybe_hot_p): Declare + a varaint accepting a sreal scale. + * ipa-inline.cc (callee_speedup): New function. + (want_inline_small_function_p): add early return + and avoid duplicated lookup of summaries; use scaled + maybe_hot predicate. + +2025-05-04 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv.cc (riscv_emit_frm_mode_set): Refactor + the frm mode set by removing fsrmsi_restore_volatile. + * config/riscv/vector-iterators.md (unspecv): Remove as + unnecessary. + * config/riscv/vector.md (fsrmsi_restore_volatile): Ditto. + +2025-05-03 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (unspec_pcmp_p): New function. + (ix86_rtx_costs): Cost VEC_MERGE more realistically. + +2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/120059 + * simplify-rtx.cc (simplify_with_subreg_not): Check the result + of simplify_gen_subreg. + +2025-05-02 Jakub Jelinek <jakub@redhat.com> + Andrew MacLeod <amacleod@redhat.com> + + PR c/117023 + * gimple-range-infer.cc (gimple_infer_range::gimple_infer_range): + For nonnull_if_nonzero attribute check also arg2 range if it doesn't + include zero and in that case call add_nonzero too. + +2025-05-02 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips.cc (mips_option_override): Error out for + -mmicromips -mmsa. + +2025-05-02 Jan Hubicka <hubicka@ucw.cz> + + PR target/119900 + * config/i386/i386.cc (ix86_can_change_mode_class): Add TODO + comment. + (ix86_rtx_costs): Make VEC_SELECT equivalent to SUBREG cost 1. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/120012 + * doc/invoke.texi: Document C++20 aggregate fix. + * common.opt: Likewise. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/60336 + * config/i386/i386.cc (ix86_warn_parameter_passing_abi): + If no target, check the current TU. + +2025-05-02 Richard Biener <rguenther@suse.de> + + * config/arc/arc.cc (TARGET_LRA_P): Remove define. + * config/gcn/gcn.cc (TARGET_LRA_P): Likewise. + +2025-05-02 Filip Kastl <fkastl@suse.cz> + + PR middle-end/117091 + * tree-switch-conversion.cc (switch_decision_tree::analyze_switch_statement): + Remove warning about using different algorithms. + +2025-05-02 Filip Kastl <fkastl@suse.cz> + + * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests): + Modify the dynamic programming algorithm to take is_beneficial() + into account earlier. To do this efficiently, copy some logic + from is_beneficial() here. Add detailed comments about how the + DP algorithm works. + (bit_test_cluster::can_be_handled): Check that the cluster range + is >, not >= BITS_IN_WORD. Remove the + "vec<cluster *> &, unsigned, unsigned" overloaded variant since + we no longer need it. + (bit_test_cluster::is_beneficial): Add a comment that this + function is closely tied to m_max_case_bit_tests. Remove the + "vec<cluster *> &, unsigned, unsigned" overloaded variant since + we no longer need it. + * tree-switch-conversion.h: Remove the vec overloaded variants + of bit_test_cluster::is_beneficial and + bit_test_cluster::can_be_handled. + +2025-05-02 Filip Kastl <fkastl@suse.cz> + + PR middle-end/117091 + * tree-switch-conversion.cc (bit_test_cluster::find_bit_tests_fast): + Remove function. + (bit_test_cluster::find_bit_tests_slow): Remove function. + (bit_test_cluster::find_bit_tests): We don't need to decide + between slow and fast so just put the modified (no longer) slow + algorithm here. + +2025-05-02 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64-sve.md (vec_extract<mode><Vel>): + Prevent the emission of pfalse+lastb for VLS. + +2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118617 + * tree-vect-generic.cc (expand_vector_conversion): Have 2 elements + as internal storage for converts. + * tree-vect-stmts.cc (vectorizable_conversion): Likewise. + +2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118659 + * tree-ssanames.cc (get_known_nonzero_bits_1): Use + wi::bit_and_not instead of `a & ~b`. + +2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/118090 + * ccmp.cc (get_compare_parts): Remove the up argument. + (expand_ccmp_next): Update call to get_compare_parts. + (expand_ccmp_expr_1): Likewise. + +2025-05-02 Richard Biener <rguenther@suse.de> + + * common.opt.urls: Regenerate. + +2025-05-01 Jason Merrill <jason@redhat.com> + + * doc/invoke.texi: Add -fabi-version detail. + * common.opt: Likewise. + +2025-05-01 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-ssa-phiopt.cc (phiopt_early_allow): Only allow a sequence + with one statement for MIN/MAX and the op was MIN/MAX. + +2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> + + * config/aarch64/arm_acle.h (__sqrt, __sqrtf): New function. + +2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> + + * config/aarch64/aarch64-simd-builtins.def: Change + BUILTIN_VHSDF_DF to BUILTIN_VHSDF_HSDF. + +2025-05-01 Jason Merrill <jason@redhat.com> + + PR c++/119162 + * fold-const.cc (maybe_nonzero_address): Return 1 for non-symtab + vars if folding_cxx_constexpr. + +2025-05-01 Richard Biener <rguenther@suse.de> + + * tree-vect-stmts.cc (vectorizable_conversion): Remove non-SLP + paths. + +2025-05-01 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_remove_slp_scalar_calls): Look + at the original stmt. + +2025-05-01 Jakub Jelinek <jakub@redhat.com> + + * combine.cc (try_combine): Sets which satisfy set_noop_p can go + to i2 unless i3 is a jump and the other set is not. + +2025-04-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/120042 + * tree-vectorizer.h: Include dominance.h. + +2025-04-30 David Malcolm <dmalcolm@redhat.com> + + * prime-paths.cc (limit_checked_add): Remove redundant trailing + ';'. + (enters_through_p): Likewise. + +2025-04-30 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-sarif.cc + (sarif_serialization_format_json::write_to_file): New. + (sarif_builder::m_formatted): Replace field with... + (sarif_builder::m_serialization_format): ...this. + (sarif_builder::sarif_builder): Update for field change. + (sarif_builder::flush_to_file): Call m_serialization_format's + write_to_file vfunc. + (sarif_output_format::sarif_output_format): Replace param + "formatted" with "serialization_format". + (sarif_stream_output_format::sarif_output_format): Likewise. + (sarif_file_output_format::sarif_file_output_format): Likewise. + (diagnostic_output_format_init_sarif_stderr): Make a + sarif_serialization_format_json and pass it to + diagnostic_output_format_init_sarif. + (diagnostic_output_format_open_sarif_file): Split out into... + (diagnostic_output_file::try_to_open): ...this, adding + "serialization_kind" param. + (diagnostic_output_format_init_sarif_file): Update for new param + to diagnostic_output_format_open_sarif_file. Make a + sarif_serialization_format_json and pass it to + diagnostic_output_format_init_sarif. + (diagnostic_output_format_init_sarif_stream): Make a + sarif_serialization_format_json and pass it to + diagnostic_output_format_init_sarif. + (make_sarif_sink): Replace param "formatted" with "serialization". + (selftest::test_make_location_object): Update for changes to + sarif_builder ctor. + * diagnostic-format-sarif.h (enum class sarif_serialization): New. + (diagnostic_output_format_open_sarif_file): Add param + "serialization_kind". + (class sarif_serialization_format): New. + (class sarif_serialization_format_json): New. + (make_sarif_sink): Replace param "formatted" with + "serialization_format". + * diagnostic-output-file.h (diagnostic_output_file::try_to_open): + New decl. + * diagnostic.h (enum diagnostics_output_format): Tweak comments. + * doc/invoke.texi (-fdiagnostics-add-output): Add "serialization" + param to sarif scheme. + * libgdiagnostics.cc (sarif_sink::sarif_sink): Update for change + to make_sarif_sink. + * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Add + "serialization" param and pass it on to make_sarif_sink. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * tree-vect-slp.cc (vect_schedule_slp_node): Sanity + check dominance check on operand defs. + +2025-04-30 Richard Biener <rguenther@suse.de> + + Revert: + 2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * tree-vect-slp.cc (vect_slp_can_convert_to_external): + Handle cases where defs from multiple BBs are ordered + by their dominance relation. + +2025-04-30 Richard Biener <rguenther@suse.de> + + * tree-vectorizer.h (get_later_stmt): Robustify against + stmts in different BBs, assert when they are unordered. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * tree-vect-slp.cc (vect_slp_can_convert_to_external): + Handle cases where defs from multiple BBs are ordered + by their dominance relation. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR ipa/120006 + * tree-ssa-structalias.cc (find_func_clobbers): Handle + strdup, strndup, realloc, index, strchr, strrchr, memchr, + strstr, strpbrk builtins like find_func_aliases does. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120003 + * tree-ssa-threadbackward.cc (back_threader::find_paths_to_names): + Allow block re-use but do not enlarge the path beyond such a + re-use. + +2025-04-30 Georg-Johann Lay <avr@gjlay.de> + + Backported from master: + 2025-04-30 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.md (xload_<mode>_libgcc): Clobber R21, Z. + +2025-04-30 Kito Cheng <kito.cheng@sifive.com> + + PR target/119832 + * config/riscv/riscv.cc (riscv_dynamic_frm_mode_p): New. + (riscv_mode_confluence): New. + (TARGET_MODE_CONFLUENCE): Define to riscv_mode_confluence. + +2025-04-30 Jerry Zhang Jian <jerry.zhangjian@sifive.com> + + * common/config/riscv/riscv-common.cc: Add Zve32x depends on Zicsr + +2025-04-30 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64.cc (aarch64_emit_sve_pred_move): + Fold LD1/ST1 with ptrue to LDR/STR for 128-bit VLS. + +2025-04-30 yulong <shiyulong@iscas.ac.cn> + + * config/riscv/constraints.md (Ou01): New constraint. + (Ou02): Ditto. + * config/riscv/generic-vector-ooo.md (vec_sf_vcp): New reservation. + * config/riscv/genrvv-type-indexer.cc (main): New type. + * config/riscv/riscv-c.cc (riscv_pragma_intrinsic): Add xsfvcp strings. + * config/riscv/riscv-vector-builtins-shapes.cc (struct sf_vcix_se_def): + New function. + (struct sf_vcix_def): Ditto. + (SHAPE): Ditto. + * config/riscv/riscv-vector-builtins-shapes.h: Ditto. + * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_X2_U_OPS): New type. + (DEF_RVV_X2_WU_OPS): Ditto. + (vuint8mf8_t): Ditto. + (vuint8mf4_t): Ditto. + (vuint8mf2_t): Ditto. + (vuint8m1_t): Ditto. + (vuint8m2_t): Ditto. + (vuint8m4_t): Ditto. + (vuint16mf4_t): Ditto. + (vuint16mf2_t): Ditto. + (vuint16m1_t): Ditto. + (vuint16m2_t): Ditto. + (vuint16m4_t): Ditto. + (vuint32mf2_t): Ditto. + (vuint32m1_t): Ditto. + (vuint32m2_t): Ditto. + (vuint32m4_t): Ditto. + * config/riscv/riscv-vector-builtins.cc (DEF_RVV_X2_U_OPS): New builtins + def. + (DEF_RVV_X2_WU_OPS): Ditto. + (rvv_arg_type_info::get_scalar_float_type): Ditto. + (function_instance::modifies_global_state_p): Ditto. + * config/riscv/riscv-vector-builtins.def (v_x): New base type. + (i): Ditto. + (v_i): Ditto. + (xv): Ditto. + (iv): Ditto. + (fv): Ditto. + (vvv): Ditto. + (xvv): Ditto. + (ivv): Ditto. + (fvv): Ditto. + (vvw): Ditto. + (xvw): Ditto. + (ivw): Ditto. + (fvw): Ditto. + (v_vv): Ditto. + (v_xv): Ditto. + (v_iv): Ditto. + (v_fv): Ditto. + (v_vvv): Ditto. + (v_xvv): Ditto. + (v_ivv): Ditto. + (v_fvv): Ditto. + (v_vvw): Ditto. + (v_xvw): Ditto. + (v_ivw): Ditto. + (v_fvw): Ditto. + (x2_vector): Ditto. + (scalar_float): Ditto. + * config/riscv/riscv-vector-builtins.h (enum required_ext): New extension. + (required_ext_to_isa_name): Ditto. + (required_extensions_specified): Ditto. + (struct rvv_arg_type_info): Ditto. + (struct function_group_info): Ditto. + * config/riscv/riscv.md: New attr. + * config/riscv/sifive-vector-builtins-bases.cc (class sf_vc): New function. + (BASE): New base_name. + * config/riscv/sifive-vector-builtins-bases.h: New function_base. + * config/riscv/sifive-vector-builtins-functions.def + (REQUIRED_EXTENSIONS): New intrinsics def. + (sf_vc): Ditto. + * config/riscv/sifive-vector.md (@sf_vc_x_se<mode>): New RTL mode. + (@sf_vc_v_x_se<mode>): Ditto. + (@sf_vc_v_x<mode>): Ditto. + (@sf_vc_i_se<mode>): Ditto. + (@sf_vc_v_i_se<mode>): Ditto. + (@sf_vc_v_i<mode>): Ditto. + (@sf_vc_vv_se<mode>): Ditto. + (@sf_vc_v_vv_se<mode>): Ditto. + (@sf_vc_v_vv<mode>): Ditto. + (@sf_vc_xv_se<mode>): Ditto. + (@sf_vc_v_xv_se<mode>): Ditto. + (@sf_vc_v_xv<mode>): Ditto. + (@sf_vc_iv_se<mode>): Ditto. + (@sf_vc_v_iv_se<mode>): Ditto. + (@sf_vc_v_iv<mode>): Ditto. + (@sf_vc_fv_se<mode>): Ditto. + (@sf_vc_v_fv_se<mode>): Ditto. + (@sf_vc_v_fv<mode>): Ditto. + (@sf_vc_vvv_se<mode>): Ditto. + (@sf_vc_v_vvv_se<mode>): Ditto. + (@sf_vc_v_vvv<mode>): Ditto. + (@sf_vc_xvv_se<mode>): Ditto. + (@sf_vc_v_xvv_se<mode>): Ditto. + (@sf_vc_v_xvv<mode>): Ditto. + (@sf_vc_ivv_se<mode>): Ditto. + (@sf_vc_v_ivv_se<mode>): Ditto. + (@sf_vc_v_ivv<mode>): Ditto. + (@sf_vc_fvv_se<mode>): Ditto. + (@sf_vc_v_fvv_se<mode>): Ditto. + (@sf_vc_v_fvv<mode>): Ditto. + (@sf_vc_vvw_se<mode>): Ditto. + (@sf_vc_v_vvw_se<mode>): Ditto. + (@sf_vc_v_vvw<mode>): Ditto. + (@sf_vc_xvw_se<mode>): Ditto. + (@sf_vc_v_xvw_se<mode>): Ditto. + (@sf_vc_v_xvw<mode>): Ditto. + (@sf_vc_ivw_se<mode>): Ditto. + (@sf_vc_v_ivw_se<mode>): Ditto. + (@sf_vc_v_ivw<mode>): Ditto. + (@sf_vc_fvw_se<mode>): Ditto. + (@sf_vc_v_fvw_se<mode>): Ditto. + (@sf_vc_v_fvw<mode>): Ditto. + * config/riscv/vector-iterators.md: New iterator. + * config/riscv/vector.md: New vtype. + +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 + * doc/invoke.texi: Add -Wanalyzer-throw-of-unexpected-type. + * gimple.h (gimple_call_nothrow_p): Make arg const. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-json.cc: Drop include of "make-unique.h". + Replace uses of ::make_unique with std::make_unique. + * diagnostic-format-sarif.cc: Likewise. + * diagnostic-format-text.cc: Likewise. + * diagnostic.cc: Likewise. + * dumpfile.cc: Likewise. + * gcc-attribute-urlifier.cc: Likewise. + * gcc-urlifier.cc: Likewise. + * json-parsing.cc: Likewise. + * json.cc: Likewise. + * lazy-diagnostic-path.cc: Likewise. + * libgdiagnostics.cc: Likewise. + * libsarifreplay.cc: Likewise. + * lto-wrapper.cc: Likewise. + * make-unique.h: Delete. + * opts-diagnostic.cc: Drop include of "make-unique.h". + Replace uses of ::make_unique with std::make_unique. + * pretty-print.cc: Likewise. + * text-art/style.cc: Likewise. + * text-art/styled-string.cc: Likewise. + * text-art/table.cc: Likewise. + * text-art/tree-widget.cc: Likewise. + * text-art/widget.cc: Likewise. + * timevar.cc: Likewise. + * toplev.cc: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * pass_manager.h (class pass_manager): Add "m_" prefix to all pass + fields. + * passes.cc (pass_manager::execute_early_local_passes): Update + for added "m_" prefix. + (pass_manager::execute_pass_mode_switching): Likewise. + (pass_manager::finish_optimization_passes): Likewise. + (pass_manager::pass_manager): Likewise. + (pass_manager::dump_profile_report): Likewise. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (diagnostic_context::m_opt_permissive): Convert + from int to diagnostic_option_id. Update comment. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * diagnostic.h (diagnostic_context::set_abort_on_error): New. + (diagnostic_context::m_abort_on_error): Make private. + (diagnostic_abort_on_error): Delete. + * opts.cc (setup_core_dumping): Update for above changes. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-format-sarif.cc (sarif_builder::get_opts): New + accessor. + (sarif_builder::get_version): Update for... + (sarif_builder::m_version): Replace this field... + (sarif_builder::m_m_sarif_gen_opts): ...with this. + (sarif_builder::sarif_builder): Replace version with + sarif_gen_opts throughout. + (sarif_builder::make_top_level_object): Use get_version. + (sarif_output_format::sarif_output_format): Replace version with + sarif_gen_opts throughout. + (sarif_stream_output_format::sarif_stream_output_format): + Likewise. + (sarif_file_output_format::sarif_file_output_format): Likewise. + (diagnostic_output_format_init_sarif_stderr): Drop version param + and use default for sarif_generation_options instead. + (diagnostic_output_format_init_sarif_file): Likewise. + (diagnostic_output_format_init_sarif_stream): Likewise. + (make_sarif_sink): Replace version with sarif_gen_opts throughout. + (sarif_generation_options::sarif_generation_options): New. + (selftest::test_sarif_diagnostic_context::test_sarif_diagnostic_context): + Replace version with sarif_gen_opts throughout. + (selftest::test_make_location_object): Likewise. + (selftest::test_simple_log): Likewise. + (selftest::test_simple_log_2): Likewise. + (selftest::test_message_with_embedded_link): Likewise. + (selftest::test_message_with_braces): Likewise. + (selftest::test_buffering): Likewise. + (selftest::run_tests_per_version): Replace with... + (selftest::for_each_sarif_gen_option): ...this... + (selftest::run_line_table_case_tests_per_version): ...and this. + (selftest::diagnostic_format_sarif_cc_tests): Update to use + for_each_sarif_gen_option and + run_line_table_case_tests_per_version. + * diagnostic-format-sarif.h (enum class sarif_version): Move lower + down. + (diagnostic_output_format_init_sarif_stderr): Drop "version" + param. + (diagnostic_output_format_init_sarif_file): Likewise. + (diagnostic_output_format_init_sarif_stream): Likewise. + (struct sarif_generation_options): New. + (make_sarif_sink): Add "formatted" param. Replace version param + with sarif_gen_opts. + * diagnostic.cc (diagnostic_output_format_init): Drop hardcoded + sarif_version::v2_1_0 arguments from calls, which instead use + the default ctor for sarif_generation_options internally. + * libgdiagnostics.cc (sarif_sink::sarif_sink): Replace version + param with sarif_gen_opts, and update for changes to + make_sarif_sink. + (diagnostic_manager_add_sarif_sink): Use sarif_gen_opts rather + than version. + * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Likewise. + Pass "true" for "formatted" param. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + * value-relation.cc (value_relation::swap): New. + (value_relation::negate): Remove. + (dom_oracle::next_relation): New. + (block_relation_iterator::block_relation_iterator): New. + (block_relation_iterator::get_next_relation): New. + (dom_oracle::dump): Use iterator. + * value-relation.h (relation_oracle::next_relation): New. + (dom_oracle::next_relation): New prototype. + (class block_relation_iterator): New. + (FOR_EACH_RELATION_BB): New. + (FOR_EACH_RELATION_NAME): New. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + * range-op-ptr.cc (range_operator::lhs_op1_relation): Add + prange/prange/irange (PPI) default. + (pointer_plus_operator::lhs_op1_relation): New. + * range-op.cc (range_op_handler::lhs_op1_relation): Add RO_PPI case. + * range-op.h (range_op_handler::lhs_op1_relation): Add prototype. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + * gimple-range-fold.cc (fold_using_range::range_of_range_op): Use a + new local variable for intermediate relation results. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + * gimple-range-cache.cc (ranger_cache::apply_inferred_ranges): Pass + 'this' as the range-query to the inferred range constructor. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/95801 + * range-op.cc (operator_div::op2_range): New. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119712 + * value-range.cc (range_bitmask::adjust_range): Delete. + (irange::set_range_from_bitmask): Integrate adjust_range. + (irange::update_bitmask): Do nothing if bitmask doesnt change. + (irange:intersect_bitmask): Do not call adjust_range. Exit if there + is no second bitmask. + * value-range.h (adjust_range): Remove prototype. + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/67797 + * tree-tailcall.cc (find_tail_calls): Add support for ERF_RETURNS_ARG. + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + * tree-cfg.cc (verify_gimple_cond): Error out if the comparison + throws. + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR c/119432 + * tree-pretty-print.cc (op_symbol_code): For LROTATE_EXPR, + output __ROTATE_LEFT for gimple. + For RROTATE_EXPR output __ROTATE_RIGHT for gimple. + +2025-04-28 Richard Sandiford <richard.sandiford@arm.com> + + * rtl.h (native_decode_int): Declare. + * simplify-rtx.cc (native_decode_int): New function, split out from... + (native_decode_rtx): ...here. + +2025-04-28 H.J. Lu <hjl.tools@gmail.com> + Uros Bizjak <ubizjak@gmail.com> + + PR target/109780 + PR target/109093 + * config/i386/i386.cc (stack_access_data): New. + (ix86_update_stack_alignment): Likewise. + (ix86_find_all_reg_use_1): Likewise. + (ix86_find_all_reg_use): Likewise. + (ix86_find_max_used_stack_alignment): Also check memory accesses + from registers defined by stack or frame registers. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR ipa/119973 + * tree-ssa-structalias.cc (create_variable_info_for): + Build constraints from DECL_INITIAL directly rather than + the IPA reference list which is incomplete. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR lto/113207 + * ipa-free-lang-data.cc (fld_type_variant): Add extra checking. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119044 + * tree-predcom.cc (ref_at_iteration): Copy alias info + from the original ref. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119103 + * tree-ssa-loop-im.cc (in_loop_pipeline): Globalize. + (compute_invariantness): Override costing when we run + right before PRE and PRE is enabled. + (pass_lim::execute): Adjust. + * tree-vect-patterns.cc (vect_determine_precisions_from_users): + For variable shift amounts use range information. + +2025-04-28 Richard Biener <rguenther@suse.de> + + * genmatch.cc (::gen_transform): Add in_place parameter. + Assert it isn't set in unexpected places. + (possible_noop_convert): New. + (expr::gen_transform): Support in_place and emit code to + compute a child in-place when the operation is a conversion. + (dt_simplify::gen_1): Arrange for an outermost conversion + to be elided by generating the transform of the operand + in-place. + * match.pd (__real cepxi (x) -> cos (x)): Use single_use. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR middle-end/60779 + * common.opt (fcx-method=): New, map to flag_complex_method. + (Enum complex_method): New. + (fcx-limited-range): Alias to -fcx-method=limited-range. + (fcx-fortran-rules): Alias to -fcx-medhot=fortran. + * ipa-inline-transform.cc (inline_call): Check flag_complex_method. + * ipa-inline.cc (can_inline_edge_by_limits_p): Likewise. + * opts.cc (finish_options): Adjust. + (set_fast_math_flags): Likewise. + * doc/invoke.texi (fcx-method=): Document. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR middle-end/116083 + * stor-layout.cc (layout_type): Compute TYPE_SIZE and + TYPE_SIZE_UNIT for vector types from the component mode + sizes. + +2025-04-28 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_operations): Prune + all actual analysis and only fail when we discover a not + SLP covered stmt. + (vect_analyze_loop_2): Remove path trying without SLP. + +2025-04-28 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_loop_kill_debug_uses): Remove. + (maybe_set_vectorized_backedge_value): Likewise. + (vect_transform_loop_stmt): Likewise. Move dump printing + to vect_transform_stmt. + (vect_transform_loop): Remove loop over loop stmts transforming + them, but retain some DCE code still necessary. + * tree-vect-stmts.cc (vect_transform_stmt): Dump that + we're vectorizing a stmt. + +2025-04-28 Richard Biener <rguenther@suse.de> + + * params.opt (--param=vect-force-slp): Remove. + * doc/invoke.texi (--param=vect-force-slp): Likewise. + * tree-vect-loop.cc (vect_analyze_loop_2): Assume + param_vect_force_slp is 1. + * tree-vect-stmts.cc (vect_analyze_stmt): Likewise. + +2025-04-28 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119493 + * tree-tailcall.cc (find_tail_calls): Handle non-gimple_reg_type + arguments which aren't just passed through for tail recursions + even for non-musttail calls. + +2025-04-28 LIU Hao <lh_mouse@126.com> + + PR target/111107 + * config/i386/cygming.h (STACK_REALIGN_DEFAULT): Copy from sol2.h. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR c/48274 + PR middle-end/112877 + PR middle-end/118288 + * gimple.cc (gimple_builtin_call_types_compatible_p): Remove the + targetm.calls.promote_prototypes call. + * tree.cc (tree_builtin_call_types_compatible_p): Likewise. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * calls.cc (initialize_argument_information): Promote small integer + arguments if TARGET_PROMOTE_PROTOTYPES returns true. + +2025-04-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_const_vector): Extract + const vector stepped into separated func. + (expand_const_vector_single_step_npatterns): Add new func + to take care of single step. + (expand_const_vector_interleaved_stepped_npatterns): Add new + func to take care of interleaved step. + (expand_const_vector_stepped): Add new func to take care of + const vector stepped. + +2025-04-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_const_vector_duplicate_repeating): + Add new func to take care of vector duplicate with repeating. + (expand_const_vector_duplicate_default): Add new func to take + care of default const vector duplicate. + (expand_const_vector_duplicate): Add new func to take care + of all const vector duplicate. + (expand_const_vector): Extract const vector duplicate into + separated function. + +2025-04-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_const_vec_series): Add new + func to take care of the const vec_series. + (expand_const_vector): Extract const vec_series into separated + function. + +2025-04-27 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv-v.cc (expand_const_vector): Extract + const vec_duplicate into separated function. + (expand_const_vec_duplicate): Add new func to take care + of the const vec_duplicate. + +2025-04-27 liuhongt <hongtao.liu@intel.com> + + PR target/119549 + * common/config/i386/i386-common.cc (ix86_handle_option): + Refactor msse4 and mno-sse4. + * config/i386/i386.opt (msse4): Remove RejectNegative. + (mno-sse4): Remove the entry. + * config/i386/i386-options.cc + (ix86_valid_target_attribute_inner_p): Remove special code + which handles mno-sse4. + +2025-04-26 Jan Hubicka <hubicka@ucw.cz> + + PR target/105275 + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Fix cost of FP scalar + MAX_EXPR and MIN_EXPR + +2025-04-26 Iain Buclaw <ibuclaw@gdcproject.org> + + * config.gcc (LIST): --enable-obsolete for m32c-elf. + +2025-04-26 Andrew Pinski <quic_apinski@quicinc.com> + + * simplify-rtx.cc (simplify_context::simplify_unary_operation_1) <case ZERO_EXTEND>: + Add simplifcation for and with a constant. + +2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> + + * doc/sourcebuild.texi: Document variadic_mi_thunk effective + target check. + +2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> + + * doc/sourcebuild.texi: Document effective target + using_sjlj_exceptions. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + + * match.pd: Move `(cmp (cond @0 @1 @2) @3)` simplifcation after + the bool comparison simplifications. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple.h (gimple_cond_make_false): Fix comment. + (gimple_cond_make_true): Likewise. + (gimple_cond_true_p): Fix spello for statement in comment. + +2025-04-25 Jason Merrill <jason@redhat.com> + + * common.opt: Add ABI v21. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + + * ipa-icf.cc (sem_function::sem_function): Remove + the obstack argument version one. + (sem_variable::sem_variable): Likewise. + * ipa-icf.h (sem_function): Remove ctor for + obstack argument only one. + (sem_variable): Likewise. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + + * ipa-icf.cc (sem_function::init): Remove assignment of node from itself. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/119811 + * tree-ssa-phiopt.cc: Remove calls.h include. + +2025-04-25 Andre Vieira <andre.simoesdiasvieira@arm.com> + + PR rtl-optimization/116479 + * modulo-sched.cc (doloop_register_get): Reject conditions with + decrements that are not 1. + +2025-04-25 Jakub Jelinek <jakub@redhat.com> + + PR target/119873 + * config/s390/s390.cc (s390_call_saved_register_used): Don't return + true if default definition of PARM_DECL SSA_NAME of the same register + is passed in call saved register in the PARALLEL case either. + +2025-04-25 Andrew Pinski <quic_apinski@quicinc.com> + Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119737 + * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Properly + switch sections. + +2025-04-25 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> + + PR target/119122 + * common/config/riscv/riscv-common.cc (riscv_implied_info): Add a rule + for Zca to C implication. + +2025-04-24 Jakub Jelinek <jakub@redhat.com> + Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/119873 + * config/s390/s390.cc (s390_call_saved_register_used): Don't return + true if default definition of PARM_DECL SSA_NAME of the same register + is passed in call saved register. + (s390_function_ok_for_sibcall): Adjust comment. + +2025-04-24 Jan Hubicka <hubicka@ucw.cz> + + PR target/119919 + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Account + correctly cond_expr and min/max when one of operands is 0 or -1. + +2025-04-24 Jan Hubicka <hubicka@ucw.cz> + + PR ipa/119924 + * ipa-cp.cc (update_counts_for_self_gen_clones): Use nonzero_p. + (update_profiling_info): Likewise. + (update_specialized_profile): Likewise. + +2025-04-24 Richard Sandiford <richard.sandiford@arm.com> + + PR target/119610 + * config/aarch64/aarch64.cc (aarch64_allocate_and_probe_stack_space): + Add a bytes_below_sp parameter and use it to calculate the CFA + offsets. Attach the first SVE CFA note to the move into the + associated temporary register. + (aarch64_allocate_and_probe_stack_space): Update calls accordingly. + Start out with bytes_per_sp set to the frame size and decrement + it after each allocation. + +2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> + + * opts.cc (validate_ipa_reorder_locality_lto_partition): Check opts + instead of opts_set for x_flag_ipa_reorder_for_locality. + (finish_options): Update call site. + +2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> + + * common.opt (LTO_PARTITION_DEFAULT): Delete. + (flto-partition=): Change default back to balanced. + * flag-types.h (lto_partition_model): Remove LTO_PARTITION_DEFAULT. + * opts.cc (validate_ipa_reorder_locality_lto_partition): + Check opts_set->x_flag_lto_partition instead of LTO_PARTITION_DEFAULT. + (finish_options): Remove handling of LTO_PARTITION_DEFAULT. + +2025-04-24 Jakub Jelinek <jakub@redhat.com> + + PR debug/119711 + * dwarf2out.h (struct dw_val_node): Add u member. + (struct dw_loc_descr_node): Remove dw_loc_opc, dtprel, + frame_offset_rel and dw_loc_addr members. + (dw_loc_opc, dw_loc_dtprel, dw_loc_frame_offset_rel, dw_loc_addr): + Define. + (struct dw_attr_struct): Remove dw_attr member. + (dw_attr): Define. + * dwarf2out.cc (loc_descr_equal_p_1): Use dw_loc_dtprel instead of + dtprel. + (output_loc_operands, new_addr_loc_descr, loc_checksum, + loc_checksum_ordered): Likewise. + (resolve_args_picking_1): Use dw_loc_frame_offset_rel instead of + frame_offset_rel. + (loc_list_from_tree_1): Likewise. + (resolve_addr_in_expr): Use dw_loc_dtprel instead of dtprel. + (copy_deref_exprloc): Copy val_class, val_entry and v members + instead of whole dw_loc_oprnd1 and dw_loc_oprnd2. + (optimize_string_length): Copy val_class, val_entry and v members + instead of whole dw_attr_val. + (hash_loc_operands): Use dw_loc_dtprel instead of dtprel. + (compare_loc_operands, compare_locs): Likewise. + +2025-04-24 liuhongt <hongtao.liu@intel.com> + + PR target/103750 + * config/i386/sse.md (*<avx512>_cmp<mode>3_and15): New define_insn. + (*<avx512>_ucmp<mode>3_and15): Ditto. + (*<avx512>_cmp<mode>3_and3): Ditto. + (*avx512vl_ucmpv2di3_and3): Ditto. + (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>): + Change operands[3] predicate to <cmp_imm_predicate>. + (*<avx512>_cmp<V48H_AVX512VL:mode>3_zero_extend<SWI248x:mode>_2): + Ditto. + (*<avx512>_cmp<mode>3): Add GET_MODE_NUNITS (<MODE>mode) >= 8 + to the condition. + (*<avx512>_ucmp<mode>3): Ditto. + (V48_AVX512VL_4): New mode iterator. + (VI48_AVX512VL_4): Ditto. + (V8_AVX512VL_2): Ditto. + +2025-04-23 Jan Hubicka <hubicka@ucw.cz> + + * ipa-cp.cc (base_count): Remove. + (struct caller_statistics): Rename n_hot_calls to n_interesting_calls; + add called_without_ipa_profile. + (init_caller_stats): Update. + (cs_interesting_for_ipcp_p): New function. + (gather_caller_stats): collect n_interesting_calls and + called_without_profile. + (ipcp_cloning_candidate_p): Use n_interesting-calls rather then hot. + (good_cloning_opportunity_p): Rewrite heuristics when IPA profile is + present + (estimate_local_effects): Update. + (value_topo_info::propagate_effects): Update. + (compare_edge_profile_counts): Remove. + (ipcp_propagate_stage): Do not collect base_count. + (get_info_about_necessary_edges): Record whether function is called + without profile. + (decide_about_value): Update. + (ipa_cp_cc_finalize): Do not initialie base_count. + * profile-count.cc (profile_count::operator*): New. + (profile_count::operator*=): New. + * profile-count.h (profile_count::operator*): Declare + (profile_count::operator*=): Declare. + * params.opt: Remove ipa-cp-profile-count-base. + * doc/invoke.texi: Likewise. + +2025-04-23 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Cost truth_value + exprs. + +2025-04-23 liuhongt <hongtao.liu@intel.com> + + * config/i386/predicates.md (vector_or_0_or_1s_operand): New predicate. + (nonimm_or_0_or_1s_operand): Ditto. + * config/i386/sse.md (vcond_mask_<mode><sseintvecmodelower>): + Extend the predicate of operands1 to accept 0 or allones + operands. + (vcond_mask_<mode><sseintvecmodelower>): Ditto. + (vcond_mask_v1tiv1ti): Ditto. + (vcond_mask_<mode><sseintvecmodelower>): Ditto. + * config/i386/i386.md (mov<mode>cc): Ditto for operands[2] and + operands[3]. + * config/i386/i386-expand.cc (ix86_expand_sse_fp_minmax): + Force immediate_operand to register. + +2025-04-22 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Add special cases + for COND_EXPR; make MIN_EXPR, MAX_EXPR, ABS_EXPR and ABSU_EXPR more realistic. + +2025-04-22 Jakub Jelinek <jakub@redhat.com> + + PR target/119327 + * config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore also + OPTION_MASK_SAVE_TOC_INDIRECT differences. + +2025-04-22 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define + __ARM_FEATURE_FAMINMAX. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * tree-vect-loop.cc (vectorizable_induction): Add target support + checks for vectorized MULT_EXPR and FLOAT_EXPR where necessary for + scalable types. + Prefer target_supports_op_p over directly_supports_p for these tree + codes. + (vectorizable_nonlinear_induction): Fix a doc comment while I'm + here. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64.md: Update cbranch, cstore, fcmp + and fcmpe to use the GPF_F16 iterator for floating-point + modes. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + PR target/117013 + * config/aarch64/aarch64-protos.h (aarch64_expand_fp_spaceship): + Declare optab expander function for floating-point types. + * config/aarch64/aarch64.cc (aarch64_expand_fp_spaceship): + Define optab expansion for floating-point types (new function). + * config/aarch64/aarch64.md (spaceship<mode>4): + Add define_expands for spaceship<mode>4 on integer and + floating-point types. + +2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-cores.def (olympus): Add fp8fma, fp8dot4 + explicitly. + +2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Add xt-c908, xt-c908v, + xt-c910, xt-c910v2, xt-c920, xt-c920v2. + (RISCV_CORE): Add xt-c908, xt-c908v, xt-c910, xt-c910v2, xt-c920, + xt-c920v2. + * doc/invoke.texi: Add xt-c908, xt-c908v, xt-c910, xt-c910v2, + xt-c920, xt-c920v2. + +2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> + + * doc/invoke.texi (lto-partition-locality-frequency-cutoff, + lto-partition-locality-size-cutoff, lto-max-locality-partition): + Document. + +2025-04-22 Alexandre Oliva <oliva@adacore.com> + + PR target/118182 + * config/riscv/vector.md (@pred_broadcast<mode>): Expand to + _zero and _imm variants without vec_duplicate. + +2025-04-21 Jan Hubicka <hubicka@ucw.cz> + + PR target/119879 + * config/i386/i386.cc (fp_conversion_stmt_cost): Inline to ... + (ix86_vector_costs::add_stmt_cost): ... here; fix handling of NOP_EXPR. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips.cc (mips_option_override): Error out for + -mmicromips -mmsa. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/119507 + * except.cc (switch_to_exception_section): Don't use the cached section if + the current function is in comdat. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + * vec.h (array_slice::begin): Assert that the + slice is valid. + (array_slice::end): Likewise. + +2025-04-21 hongtao.liu <hongtao.liu@intel.com> + + * config/i386/i386-expand.cc (ix86_emit_swdivsf): Generate 2 + FMA instructions when TARGET_FMA. + +2025-04-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/119865 + * config/riscv/riscv.cc (parse_features_for_version): Do not + explicitly free the architecture string. + +2025-04-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/118410 + * config/riscv/bitmanip.md (logical with constant argument): New + splitter for cases where synthesizing ~C is cheaper than synthesizing + the original constant C. + +2025-04-19 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (vec_fp_conversion_cost): New function. + (ix86_rtx_costs): Use it for SSE/AVX FP conversoins. + (ix86_builtin_vectorization_cost): Fix indentation; + and use vec_fp_conversion_cost in vec_promote_demote. + (fp_conversion_stmt_cost): New function. + (ix86_vector_costs::add_stmt_cost): Use it to cost NOP_EXPR + and vec_promote_demote. + * config/i386/i386.h (struct processor_costs): + * config/i386/x86-tune-costs.h (struct processor_costs): + +2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/111949 + * combine.cc (find_split_point): Add a split point + for `(and (not X) Y)` if not in the outer set already. + +2025-04-19 Jiaxun Yang <jiaxun.yang@flygoat.com> + + PR target/111814 + * config/sh/sh-modes.def (RESET_FLOAT_FORMAT): Use mips format. + (FLOAT_MODE): Use mips mode. + +2025-04-19 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha.cc + (alpha_get_mem_rtx_alignment_and_offset): Recurse into + COMPONENT_REF nodes. + +2025-04-18 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/bitmanip.md (*bext<mode>_mask_pos): New pattern + for extracting a single bit at masked bit position. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87901 + * tree-ssa-dse.cc (maybe_trim_constructor_store): Add was_integer_cst argument. + Check for was_integer_cst instead of `{}` when was_integer_cst is true. + (maybe_trim_partially_dead_store): Handle INTEGER_CST stores of 0 as stores of `{}`. + Udpate call to maybe_trim_constructor_store for CONSTRUCTOR. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87901 + * tree-ssa-dse.cc (maybe_trim_constructor_store): Strip over useless type + conversions after taking the address of the MEM_REF. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118902 + * fold-const.cc (tree_swap_operands_p): Place invariants in the first operand + if not used with constants. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118947 + * gimple-fold.cc (optimize_memcpy_to_memset): Walk back until we get a + statement that may clobber the read. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/78408 + PR tree-optimization/118947 + * gimple-fold.cc (optimize_memcpy_to_memset): Handle STRING_CST case too. + +2025-04-18 Richard Braun <rbraun@sceen.net> + + * config/c6x/c6x.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove the + DW_EH_PE_indirect flag. + +2025-04-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119858 + * tree-vect-loop.cc (vectorizable_live_operation): Convert + pointer offset to sizetype. + +2025-04-18 Hakan Candar <hakancandar@protonmail.com> + + * config.gcc: Recognize riscv*-*-gnu* targets. + * config/riscv/gnu.h: New file. + +2025-04-18 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR middle-end/108016 + PR middle-end/108016 + * config/riscv/riscv.md (addv<mode>4, uaddv<mode>4, subv<mode>4, + usubv<mode>4): Tunes for unnecessary sext.w elimination. + +2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119160 + * avoid-store-forwarding.cc (process_store_forwarding): + Zero-extend the value stored in the base register, in case + of load-elimination, only when the mode of the destination + is wider. + +2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> + + * doc/cfg.texi: Update the exception handling section for the + REG_EH_REGION notes to make it clear that the note is attached + to the instruction throwing the exception. + +2025-04-17 翁愷邑 <kaiweng9487@gmail.com> + + * config/riscv/riscv-target-attr.cc + (riscv_target_attr_parser::update_settings): + Do not manually free any arch string. + +2025-04-17 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * tree.def (BOOLEAN_TYPE): Add more details. + +2025-04-17 Sam James <sam@gentoo.org> + + * doc/invoke.texi: Use "compatible types" term. Rephrase to be + more precise (and correct). + +2025-04-17 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/119351 + * tree-vect-stmts.cc (vectorizable_early_exit): Mask both operands of + the gcond for partial masking support. + +2025-04-17 Jakub Jelinek <jakub@redhat.com> + + PR target/119834 + * config/s390/s390.md (define_split after *cpymem_short): Use + (clobber (match_scratch N)) instead of (clobber (scratch)). Use + (match_dup 4) and operands[4] instead of (match_dup 3) and operands[3] + in the last of those. + (define_split after *clrmem_short): Use (clobber (match_scratch N)) + instead of (clobber (scratch)). + (define_split after *cmpmem_short): Likewise. + +2025-04-17 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.cc (TARGET_ASM_NEED_VAR_DECL_BEFORE_USE): + Don't '#define'. + +2025-04-17 Hans-Peter Nilsson <hp@axis.com> + + * combine.cc: Correct comments about combine_validate_cost. + +2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/88382 + * doc/extend.texi (Syntax Extensions): Adjust menu. + (Raw String Literals): New section. + +2025-04-16 Keith Packard <keithp@keithp.com> + + * config/rx/rx.md (cmpstrnsi): Allow constant length. For + static length 0, just store 0 into the output register. + For dynamic zero, set C/Z appropriately. + (rxcmpstrn): No longer set C/Z. + +2025-04-16 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * tree-ssa-phiopt.cc (factor_out_conditional_operation): Do not + bypass the int_fits_type_p test for boolean types whose precision + is not 1. + +2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> + + * common.opt.urls: Regenerated. + +2025-04-16 Ard Biesheuvel <ardb@kernel.org> + + PR target/119386 + * config/i386/i386-options.cc: Permit -mnop-mcount when + using -fpic with PLTs. + +2025-04-16 Ard Biesheuvel <ardb@kernel.org> + + PR target/119386 + * config/i386/i386.cc (x86_print_call_or_nop): Add @PLT suffix + where appropriate. + (x86_function_profiler): Fall through to x86_print_call_or_nop() + for PIC codegen when flag_plt is set. + +2025-04-16 Sandra Loosemore <sloosemore@baylibre.com> + + PR driver/90465 + * doc/invoke.texi (Overall Options): Add a @cindex for -Q in + connection with --help=. + (Developer Options): Point at --help= documentation for the + other use of -Q. + +2025-04-16 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/97106 + * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) + [ACCEL_COMPILER]: Make sure to emit C++ constructor, destructor + aliases. + +2025-04-16 Jan Hubicka <hubicka@ucw.cz> + + PR tree-optimization/119614 + * ipa-prop.cc (ipa_write_return_summaries): New function. + (ipa_record_return_value_range_1): Break out from .... + (ipa_record_return_value_range): ... here. + (ipa_read_return_summaries): New function. + (ipa_prop_read_section): Read return summaries. + (read_ipcp_transformation_info): Read return summaries. + (ipcp_write_transformation_summaries): Write return summaries; + do not stream stray 0. + +2025-04-16 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/119351 + * tree-vectorizer.h (LOOP_VINFO_MASK_NITERS_PFA_OFFSET, + LOOP_VINFO_NON_LINEAR_IV): New. + (class _loop_vec_info): Add mask_skip_niters_pfa_offset and + nonlinear_iv. + * tree-vect-loop.cc (_loop_vec_info::_loop_vec_info): Initialize them. + (vect_analyze_scalar_cycles_1): Record non-linear inductions. + (vectorizable_induction): If early break and PFA using masking create a + new phi which tracks where the scalar code needs to start... + (vectorizable_live_operation): ...and generate the adjustments here. + (vect_use_loop_mask_for_alignment_p): Reject non-linear inductions and + early break needing peeling. + +2025-04-16 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119808 + * gimple-lower-bitint.cc (gimple_lower_bitint): Don't set + m_single_use_names bits for SSA_NAMEs which have single use but + their SSA_NAME_DEF_STMT is a copy from another SSA_NAME which doesn't + have a single use, or single use which is such a copy etc. + +2025-04-16 Jesse Huang <jesse.huang@sifive.com> + + * config/riscv/riscv.cc (riscv_file_end): Fix .p2align value. + +2025-04-16 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv.h (JUMP_TABLES_IN_TEXT_SECTION): Check if + large code model. + +2025-04-16 Tejas Belagod <tejas.belagod@arm.com> + + * config/aarch64/aarch64-sve.md (vec_extract<vpred><Vel>): Fix operand + order to gen_vcond_mask_*. + +2025-04-16 Alice Carlotti <alice.carlotti@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_valid_sysreg_name_p): Remove feature check. + (aarch64_retrieve_sysreg): Ditto. + +2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> + + PR tree-optimization/71094 + * doc/invoke.texi (Optimize Options): Document that -fivopts is + enabled at -O1 and higher. Add blurb about -O0 causing GCC to + completely ignore most optimization options. + +2025-04-15 Iain Sandoe <iain@sandoe.co.uk> + + * configure: Regenerate. + * configure.ac: Recognise PROJECT:ld-mmmm.nn.aa as an identifier + for Darwin's static linker. + +2025-04-15 Iain Sandoe <iainsandoe@mini-05-seq.local> + + PR target/116827 + * ginclude/stddef.h: Undefine __PTRDIFF_T and __SIZE_T for module- + enabled c++ on Darwin/macOS platforms. + +2025-04-15 Kyrylo Tkachov <ktkachov@nvidia.com> + + * common.opt.urls: Regenerate. + +2025-04-15 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/x86-tune-sched.cc (ix86_issue_rate): Set + to 4 for znver5. + +2025-04-15 Jan Hubicka <hubicka@ucw.cz> + + PR target/119298 + * config/i386/x86-tune-costs.h (znver5_cost): Set ADDSS cost to 3. + +2025-04-15 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119533 + * config/riscv/riscv-vsetvl.cc (invalid_opt_bb_p): Check for + EDGE_ABNOMAL. + (pre_vsetvl::compute_lcm_local_properties): Initialize kill + bitmap. + Debug dump skipped edge. + +2025-04-15 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119547 + * config/riscv/riscv-vsetvl.cc (pre_vsetvl::earliest_fuse_vsetvl_info): + Do not perform lift if block is not transparent. + +2025-04-15 Kyrylo Tkachov <ktkachov@nvidia.com> + + * Makefile.in (OBJS): Add ipa-locality-cloning.o. + * cgraph.h (set_new_clone_decl_and_node_flags): Declare prototype. + * cgraphclones.cc (set_new_clone_decl_and_node_flags): Remove static + qualifier. + * common.opt (fipa-reorder-for-locality): New flag. + (LTO_PARTITION_DEFAULT): Declare. + (flto-partition): Change default to LTO_PARTITION_DFEAULT. + * doc/invoke.texi: Document -fipa-reorder-for-locality. + * flag-types.h (enum lto_locality_cloning_model): Declare. + (lto_partitioning_model): Add LTO_PARTITION_DEFAULT. + * lto-cgraph.cc (lto_set_symtab_encoder_in_partition): Add dumping of + node and index. + * opts.cc (validate_ipa_reorder_locality_lto_partition): Define. + (finish_options): Handle LTO_PARTITION_DEFAULT. + * params.opt (lto_locality_cloning_model): New enum. + (lto-partition-locality-cloning): New param. + (lto-partition-locality-frequency-cutoff): Likewise. + (lto-partition-locality-size-cutoff): Likewise. + (lto-max-locality-partition): Likewise. + * passes.def: Register pass_ipa_locality_cloning. + * timevar.def (TV_IPA_LC): New timevar. + * tree-pass.h (make_pass_ipa_locality_cloning): Declare. + * ipa-locality-cloning.cc: New file. + * ipa-locality-cloning.h: New file. + +2025-04-15 Martin Jambor <mjambor@suse.cz> + Jakub Jelinek <jakub@redhat.com> + + PR ipa/119803 + * ipa-cp.cc (ipcp_bits_lattice::meet_with_1): Move m_value adjustmed + according to m_mask below the adjustment of the latter according to + cap_mask. Optimize the calculation of cap_mask a bit. + (ipcp_bits_lattice::meet_with): Optimize the calculation of cap_mask a + bit. + +2025-04-15 Jakub Jelinek <jakub@redhat.com> + + * ipa-cp.cc (ipcp_print_widest_int): Print values with all ones in + bits 128+ with "0xf..f" prefix instead of "all ones folled by ". + Simplify wide_int check for -1 or all ones above least significant + 128 bits. + +2025-04-15 Jakub Jelinek <jakub@redhat.com> + + PR sanitizer/119801 + * sanitizer.def (BUILT_IN_TSAN_FUNC_EXIT): Use BT_FN_VOID rather + than BT_FN_VOID_PTR. + * tree-tailcall.cc: Include attribs.h and asan.h. + (struct tailcall): Add has_tsan_func_exit member. + (empty_eh_cleanup): Add eh_has_tsan_func_exit argument, set what + it points to to 1 if there is exactly one __tsan_func_exit call + and ignore that call otherwise. Adjust recursive call. + (find_tail_calls): Add RETRY_TSAN_FUNC_EXIT argument, pass it + to recursive calls. When seeing __tsan_func_exit call with + RETRY_TSAN_FUNC_EXIT 0, set it to -1. If RETRY_TSAN_FUNC_EXIT + is 1, initially ignore __tsan_func_exit calls. Adjust + empty_eh_cleanup caller. When looking through stmts after the call, + ignore exactly one __tsan_func_exit call but remember it in + t->has_tsan_func_exit. Diagnose if EH cleanups didn't have + __tsan_func_exit and normal path did or vice versa. + (optimize_tail_call): Emit __tsan_func_exit before the tail call + or tail recursion. + (tree_optimize_tail_calls_1): Adjust find_tail_calls callers. If + find_tail_calls changes retry_tsan_func_exit to -1, set it to 1 + and call it again with otherwise the same arguments. + +2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> + + PR ipa/113203 + * doc/extend.texi (Common Function Attributes): Explain how to + use always_inline in programs that have multiple translation + units, and that LTO inlining additionally needs optimization + enabled. + +2025-04-15 liuhongt <hongtao.liu@intel.com> + + PR target/108134 + * doc/extend.texi: Remove documents from r11-344-g0fec3f62b9bfc0. + +2025-04-15 Sandra Loosemore <sloosemore@baylibre.com> + + PR target/42683 + * doc/invoke.texi (x86 Options): Clarify that -march=pentiumpro + doesn't include MMX. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/118794 + * config/gcn/gcn.opt (-mfake-exceptions): Support. + * config/nvptx/nvptx.opt (-mfake-exceptions): Likewise. + * config/gcn/gcn.md (define_expand "exception_receiver"): Use it. + * config/nvptx/nvptx.md (define_expand "exception_receiver"): + Likewise. + * config/gcn/mkoffload.cc (main): Set it. + * config/nvptx/mkoffload.cc (main): Likewise. + * config/nvptx/nvptx.cc (nvptx_assemble_integer) + <in_section == exception_section>: Special handling for + 'SYMBOL_REF's. + * except.cc (expand_dw2_landing_pad_for_region): Don't generate + bogus code for (default) + '#define EH_RETURN_DATA_REGNO(N) INVALID_REGNUM'. + +2025-04-14 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119785 + * expmed.cc (init_expmed): Always pass QImode rather than mode to + set_src_cost passed to set_zero_cost. + +2025-04-14 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119718 + * tree-pretty-print.cc (dump_generic_node) <case CALL_EXPR>: Dump + also CALL_EXPR_MUST_TAIL_CALL flag. + * calls.cc (maybe_complain_about_tail_call): Emit error about + CALL_EXPR_MUST_TAIL_CALL only after emitting dump message, not before + it. + +2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> + + * doc/install.texi: Add requirements for building gccrs. + +2025-04-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/119784 + * config/i386/i386.cc (ix86_using_red_zone): Don't use red-zone + with 32 GPRs and no caller-saved registers. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/118097 + * ipa-cp.cc (ipa_get_jf_arith_result): Require res_operand for + anything except NOP_EXPR or ADDR_EXPR, document it and remove the code + trying to deduce it. + (ipa_value_from_jfunc): Use the stored and streamed type of arithmetic + pass-through functions. + (ipa_agg_value_from_jfunc): Use the stored and streamed type of + arithmetic pass-through functions, convert to the type used to store + the value if necessary. + (get_val_across_arith_op): New parameter op_type, pass it to + ipa_get_jf_arith_result. + (propagate_vals_across_arith_jfunc): New parameter op_type, pass it to + get_val_across_arith_op. + (propagate_vals_across_pass_through): Use the stored and streamed type + of arithmetic pass-through functions. + (propagate_aggregate_lattice): Likewise. + (push_agg_values_for_index_from_edge): Use the stored and streamed + type of arithmetic pass-through functions, convert to the type used to + store the value if necessary. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/118785 + * ipa-cp.cc (ipa_vr_intersect_with_arith_jfunc): Use the stored + and streamed type of arithmetic pass-through functions. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + * ipa-cp.cc (ipcp_print_widest_int): Also add a truncated form of + dumping of widest ints which only have zeros in the lowest 128 bits. + Update the comment. + (ipcp_bits_lattice::print): Also dump the mask using + ipcp_print_widest_int. + (ipcp_store_vr_results): Likewise. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/119318 + * ipa-cp.cc (ipcp_bits_lattice::meet_with_1): Set all mask bits + not covered by precision to one. + (ipcp_bits_lattice::meet_with): Likewise. + (propagate_bits_across_jump_function): Use the stored operation + type to perform meet with other lattices. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/118097 + PR ipa/118785 + PR ipa/119318 + * lto-streamer.h (lto_variably_modified_type_p): Declare. + * ipa-prop.h (ipa_pass_through_data): New field op_type. + (ipa_get_jf_pass_through_op_type): New function. + * ipa-prop.cc: Include lto-streamer.h. + (ipa_dump_jump_function): Dump also pass-through + operation types, if any. Dump pass-through operands only if not NULL. + (ipa_set_jf_simple_pass_through): Set op_type accordingly. + (compute_complex_assign_jump_func): Set op_type of arithmetic + pass-through jump_functions. + (analyze_agg_content_value): Update lhs when walking assighment + copies. Set op_type of aggregate arithmetic pass-through + jump_functions. + (update_jump_functions_after_inlining): Also transfer the operation + type from the source arithmentic pass-through jump function to the + destination jump function. + (ipa_write_jump_function): Stream also the op_type when necessary. + (ipa_read_jump_function): Likewise. + (ipa_agg_pass_through_jf_equivalent_p): Also compare operation types. + * lto-streamer-out.cc (lto_variably_modified_type_p): Make public. + +2025-04-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119757 + * tree-vect-slp.cc (vect_build_slp_tree_1): Record and compare + whether a stmt uses a maks. + +2025-04-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119778 + * tree-inline.cc (copy_edges_for_bb): Mark calls that are + source of abnormal edges as altering control-flow. + +2025-04-14 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119779 + * doc/gm2.texi (Interface to assembly language): Use eax + rather than rax in both examples. + +2025-04-14 Jakub Jelinek <jakub@redhat.com> + + PR driver/119727 + * configure.ac (HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE): New check. + * gcc.cc: Include sys/personality.h if + HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE is defined. + (try_generate_repro): Call + personality (personality (0xffffffffU) | ADDR_NO_RANDOMIZE) + if HOST_HAS_PERSONALITY_ADDR_NO_RANDOMIZE is defined. + * config.in: Regenerate. + * configure: Regenerate. + +2025-04-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.cc: Add z17 scheduler description. + * config/s390/s390.h: Ditto. + * config/s390/s390.md: Ditto. + * config/s390/9175.md: New file. + +2025-04-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * common/config/s390/s390-common.cc: Rename arch15 to z17. + * config.gcc: Add z17. + * config/s390/driver-native.cc: Detect z17 machine. + * config/s390/s390-builtins.def (B_VXE3): Rename arch15 to z17. + * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): Ditto. + * config/s390/s390-opts.h (enum processor_type): Ditto. + * config/s390/s390.cc: Ditto. + * config/s390/s390.h: Ditto. + * config/s390/s390.md: Ditto. + * config/s390/s390.opt: Add z17. + * doc/invoke.texi: Ditto. + +2025-04-12 Sandra Loosemore <sloosemore@baylibre.com> + + PR target/97585 + * doc/invoke.texi (x86 Options): Document list of extensions + supported by -march=x86_64, according to the declaration of + PTA_X86_64_BASELINE in config/i386/i386.h. + +2025-04-12 Jakub Jelinek <jakub@redhat.com> + + PR driver/119727 + * gcc.cc (files_equal_p): Rewritten using fopen/fgets/fclose instead + of open/fstat/read/close. At the start of lines, ignore lowercase + hexadecimal addresses followed by space. + +2025-04-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119722 + * gimple-lower-bitint.h (build_bitint_stmt_ssa_conflicts): Add + CLEAR argument. + * gimple-lower-bitint.cc (build_bitint_stmt_ssa_conflicts): Add + CLEAR argument. Call clear on gimple_assign_copy_p rhs1 if lhs + is large/huge bitint unless lhs is not in names. + * tree-ssa-coalesce.cc (build_ssa_conflict_graph): Adjust + build_bitint_stmt_ssa_conflicts caller. Move gimple_assign_copy_p + handling to after the build_bitint_stmt_ssa_conflicts call. + +2025-04-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119718 + * tree-tailcall.cc (maybe_error_musttail): Dump the GIMPLE at the + end of the Cannot tail-call line rather than on the line before it. + * calls.cc (maybe_complain_about_tail_call): Dump the GENERIC + at the end of the ;; Cannot tail-call line rather than on the + line before it. + +2025-04-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119718 + * tree-tailcall.cc (maybe_error_musttail): Only dump into dump_file + if dump_flags & TDF_DETAILS. Use "Cannot tail-call: " prefix instead + of "Cannot convert: ". + (find_tail_calls, tree_optimize_tail_calls_1): Formatting fixes + for maybe_error_musttail calls. + * calls.cc (maybe_complain_about_tail_call): Emit also a message + into dump_file when dump_flags & TDF_DETAILS for CALL_EXPR_TAILCALL + calls. + (initialize_argument_information): Formatting fix for + maybe_complain_about_tail_call calls. + (can_implement_as_sibling_call_p, expand_call): Likewise. + +2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> + + PR c++/106618 + * doc/invoke.texi (Option Summary): Remove -fargs-in-order, add + -fstrong-eval-order. + (C++ Dialect Options): Explicitly document that -fstrong-eval-order + takes an optional argument and what the choices are. Generalize + references to C++17. + +2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/105548 + * doc/invoke.texi (Optimize Options): Delete misleading sentence + about conversions. + +2025-04-11 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119707 + * gimple-lower-bitint.cc (bitint_large_huge::handle_cast): Only use + m_data[save_data_cnt] instead of m_data[save_data_cnt + 1] if + idx is odd and equal to low + 1. Remember tree_to_uhwi (idx) in + a temporary instead of calling the function multiple times. + +2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> + + PR tree-optimization/87909 + * common.opt.urls: Regenerate. + * doc/invoke.texi (Option Summary): Add -ftree-cselim. + (Optimize Options): Likewise. + +2025-04-11 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/14708 + * doc/invoke.texi (Optimize Options): List -fexcess-precision + before -ffloat-store, moving some background discussion to the + former from the latter. Recommend using -fexcess-precision=standard + instead of -ffloat-store. + +2025-04-10 Iain Sandoe <iain@sandoe.co.uk> + + * config/darwin.h (LINK_SPEC): Add support for + -static-libgcobol. + +2025-04-10 Richard Biener <rguenther@suse.de> + + PR middle-end/119706 + * gimple-expr.cc (is_gimple_mem_ref_addr): Also allow + POLY_INT_CST. + +2025-04-10 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/119399 + * tree-data-ref.cc (create_waw_or_war_checks): Use a MINUS_EXPR + on two converted pointers, rather than converting a POINTER_DIFF_EXPR + on the pointers. + +2025-04-10 Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/multilib-generator: Remove the compact code model + and check large code model for RV32. + +2025-04-09 Jakub Jelinek <jakub@redhat.com> + + * pretty-print.cc (pretty_printer::format): Use %.Ns instead of + %Ns in function comment. + +2025-04-09 Jakub Jelinek <jakub@redhat.com> + + PR target/119664 + * config/h8300/jumpcall.md (bit test and jump define_insn_and_split): + Use HSI iterator rather than QHSI. + +2025-04-09 Jakub Jelinek <jakub@redhat.com> + + * config/riscv/riscv-vector-builtins.cc (verify_type_context): + Diagnose RVV types for a given OpenMP context. + +2025-04-09 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/119689 + PR rtl-optimization/115568 + * lra-remat.cc (create_cands): Use prev_nonnote_nondebug_insn + to check whether insn2 is directly before insn. + +2025-04-09 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/116595 + * expr.cc (categorize_ctor_elements_1): Use + constant_lower_bound. + +2025-04-09 Yang Yujie <yangyujie@loongson.cn> + + * config/loongarch/genopts/gen-evolution.awk: remove + usage of "asort". + * config/loongarch/genopts/genstr.sh: replace sed with awk. + +2025-04-08 Sandra Loosemore <sloosemore@baylibre.com> + + PR c++/90468 + * doc/invoke.texi (Warning Options): Clean up text describing + -Wno-xxx. + +2025-04-08 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119672 + * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): + For POPCOUNT == 0 or != 0 optimizations use + CONST0_RTX (GET_MODE (XEXP (op0, 0))) rather than const0_rtx. + +2025-04-08 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/119662 + * gimplify.cc (modify_call_for_omp_dispatch): Fix GOMP_interop + arg passing; add location info to function calls. + +2025-04-08 Jakub Jelinek <jakub@redhat.com> + + PR target/119678 + * config/riscv/freebsd.h (LINK_SPEC): Use FBSD_LINK_PG_NOTE rather + than non-existing FBSD_LINK_PG_NOTES. + +2025-04-08 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) + [!ACCEL_COMPILER]: Don't define label 'emit_ptx_alias'. + +2025-04-08 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119594 + * cse.cc (count_reg_usage): Count even x == dest regs if they have + non-zero counts already and incr is positive. + +2025-04-08 Jakub Jelinek <jakub@redhat.com> + + PR lto/119625 + * lto-opts.cc (lto_write_options): Mask of CF_SET from + global_options.x_flag_cf_protection. + +2025-04-08 Tejas Belagod <tejas.belagod@arm.com> + Andrea Corallo <andrea.corallo@arm.com> + + * target.h (type_context_kind): Add new context kinds for target clauses. + (omp_type_context): Query if the context is of OMP kind. + * config/aarch64/aarch64-sve-builtins.cc (verify_type_context): Diagnose + SVE types for a given OpenMP context. + (omp_type_context): New. + * gimplify.cc (omp_notice_variable): Diagnose implicitly-mapped SVE + objects in OpenMP regions. + (gimplify_scan_omp_clauses): Diagnose SVE types for various target + clauses. + +2025-04-08 Tejas Belagod <tejas.belagod@arm.com> + + * tree.h (strip_pointer_types): New. + +2025-04-08 Richard Sandiford <richard.sandiford@arm.com> + Tejas Belagod <tejas.belagod@arm.com> + + PR middle-end/101018 + * poly-int.h (can_and_p): New function. + * fold-const.cc (poly_int_binop): Use it to optimize BIT_AND_EXPRs + involving POLY_INT_CSTs. + * gimplify.cc (omp_notice_variable): Use poly_int_tree_p instead + of INTEGER_CST when checking for constant-sized omp data. + (gimplify_adjust_omp_clauses_1): Likewise. + (gimplify_adjust_omp_clauses): Likewise. + * omp-low.cc (scan_sharing_clauses): Likewise. + +2025-04-08 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386.h (PTA_DIAMONDRAPIDS): Add PTA_AVX10_1_256. + +2025-04-08 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/vector.md: Disable vsext/vzext for XTheadVector. + +2025-04-07 Iain Sandoe <iain@sandoe.co.uk> + + PR target/113257 + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Apple-a12, + Apple-M1, Apple-M2, Apple-M3 with expanded names to allow for the + LITTLE.big versions. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi: Add apple-m1,2 and 3 cores to the ones listed + for arch and tune selections. + +2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.opt (-mfake-ptx-alloca): Update. + +2025-04-07 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/118924 + * tree-sra.cc (create_total_scalarization_access): Set + grp_same_access_path flag to zero. + +2025-04-07 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/118924 + * tree-ssa-alias-compare.h (types_equal_for_same_type_for_tbaa_p): + Declare. + * tree-ssa-alias.cc: Include ipa-utils.h. + (types_equal_for_same_type_for_tbaa_p): New public overloaded variant. + * tree-sra.cc: Include tree-ssa-alias-compare.h. + (create_access): Initialzie grp_same_access_path to true. + (build_accesses_from_assign): Detect tbaa hazards and clear + grp_same_access_path fields of involved accesses when they occur. + (sort_and_splice_var_accesses): Take previous values of + grp_same_access_path into account. + +2025-04-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119640 + * tree-vect-stmts.cc (vectorizable_shift): Always insert code + for one of our SLP operands before the code for the vector + shift itself. + +2025-04-07 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119614 + * tree-tailcall.cc (find_tail_calls): Remember edges which have been + walked through if !ass_var. Perform IPA-VRP workaround even when + ret_var is not TREE_CONSTANT, in that case check in a loop if it is + a PHI result and in that case look at the PHI argument from + corresponding edge in the edge vector. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/116398 + * params.opt (-param=max-combine-search-insns=): New param. + * doc/invoke.texi: Document it. + * combine.cc (insn_link::insn_count): New field. + (alloc_insn_link): Initialize it. + (distribute_links): Add a limit parameter. + (try_combine): Use the new param to limit distribute_links + when only i3 has changed. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/116398 + * combine.cc (distribute_links): Take an optional start point. + (try_combine): If only i3 has changed, only distribute i3's links, + not i2's. Start the search for the new use from i3 rather than + from the definition instruction. Likewise start the search for + the new use from i2 when distributing i2's links. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/116398 + * combine.cc (try_combine): Shortcut the split_i2i3 handling if + i2 is unchanged. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + Richard Biener <rguenther@suse.de> + + PR testsuite/116398 + * combine.cc (try_combine): Reallow 2->2 combinations. Detect when + only i3 has changed and restart from i3 in that case. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + + * simplify-rtx.cc (simplify_const_relational_operation): Generalize + the constant checks in the fold-via-minus path to match the + INTEGRAL_MODE_P condition. + +2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi (Boolean Type): Further clarify support for + _Bool in C23 and C++. + +2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/78874 + * doc/invoke.texi (Warning Options): Fix description of + -Wno-aggressive-loop-optimizations to reflect that this turns + off the warning, and the default is for it to be enabled. + +2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/81831 + * doc/invoke.texi (Option Summary): Add -Wno-psabi. + (Warning Options): Document -Wpsabi separately from -Wabi. + Note it's enabled by default, not just implied by -Wabi. + Replace the detailed example for a GCC 4.4 change for x86 + (which is unlikely to be very interesting nowadays) with + just a list of all targets that presently diagnose these + warnings. + (RS/6000 and PowerPC Options): Add cross-references for + -Wno-psabi. + +2025-04-05 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/112589 + * common.opt (-fcf-protection): Add documentation string. + * doc/invoke.texi (Option Summary): Add entry for -fcf-protection + without argument. + (Instrumentation Options): Tidy the -fcf-protection entry and + and add documention for the form without an argument. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR lto/119625 + * lto-opts.cc (lto_write_options): If neither flag_pic nor + flag_pie are set, check first for flag_pie and only later + for flag_pic rather than the other way around, use a temporary + variable. If flag_cf_protection is not set, don't append anything + if flag_cf_protection is none of CF_{NONE,FULL,BRANCH,RETURN} and + use a temporary variable. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR gcov-profile/119618 + * profile.cc (branch_prob): Only check for musttail calls if + cfun->has_musttail. Use gsi_last_nondebug_bb instead of gsi_last_bb. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119616 + * tree-tailcall.cc (suitable_for_tail_call_opt_p): Move checking + for addressable parameters from here ... + (find_tail_calls): ... here. If cfun->has_musttail, don't clear + opt_tailcalls for it, instead set a local flag and punt if we can't + tail recurse optimize it. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119613 + * cfgrtl.cc (purge_dead_edges): Remove REG_EH_REGION notes from + tail calls. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR target/115910 + * rtlanal.cc (pattern_cost): Return at least COSTS_N_INSNS (1) + rather than just COSTS_N_INTNS (1) for cost <= 0. + * config/i386/i386.cc (ix86_rtx_costs): Set *total to 1 for + TARGET_64BIT x86_64_zext_immediate_operand constants. + +2025-04-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR ipa/119599 + * tree-cfg.cc (pass_warn_function_return::execute): Turn return statements always + into __builtin_unreachable calls. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119614 + * tree-tailcall.cc (find_tail_calls): Handle also pointer types in the + IPA-VRP workaround. + +2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119573 + * config/nvptx/nvptx.cc (nvptx_encode_section_info): Don't set + 'DATA_AREA_CONST' for 'TREE_CONSTANT', or 'TREE_READONLY'. + (nvptx_asm_declare_constant_name): Use '.global' instead of + '.const'. + +2025-04-03 Peter Bergner <bergner@linux.ibm.com> + + PR target/119308 + * config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue): + Handle GCC COBOL for the tbtab lang field. + +2025-04-03 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi (Statement Attributes): Copy-edit the musttail + attribute documentation and correct the comment in the last + example. + +2025-04-03 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/x86-tune-costs.h (ix86_size_cost): Fix sizes of move + instructions + +2025-04-03 Jakub Jelinek <jakub@redhat.com> + + PR cobol/119242 + * fold-const.h (native_encode_wide_int): Declare. + * fold-const.cc (native_encode_wide_int): New function. + (native_encode_int): Use it. + +2025-04-03 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/genopts/gen-evolution.awk: Avoid using gensub + that FreeBSD awk lacks. + +2025-04-03 Hongyu Wang <hongyu.wang@intel.com> + + PR target/119539 + * config/i386/i386.md (*<insn><mode>3_mask): Emit NF variant of + rotate when APX_NF enabled, and use force_lowpart_subreg. + (*<insn><mode>3_mask_1): Likewise. + +2025-04-03 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/101440 + * doc/extend.texi (Common Function Attributes): Clean up some + confusing language in the description of the "access" attribute. + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + GUO Yixuan <culu.gyx@gmail.com> + + PR driver/58973 + * common.opt (Werror, Werror=): Use less awkward wording in + description. + (pedantic-errors): Likewise. + * doc/invoke.texi (Warning Options): Likewise for -Werror and + -Werror= here. + +2025-04-02 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119572 + * config/riscv/autovec.md: Mask broadcast value. + +2025-04-02 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/bitmanip.md: The optimization can only be applied if + the high bit of operands[3] is set to 1. + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/114957 + PR c/78008 + PR c++/60972 + * doc/extend.texi (Structure-Layout Pragmas): Add @cindex + entries and reformat the pragma descriptions to match the markup + used for other pragmas. Document what #pragma pack(0) does. + Add cross-references to similar attributes. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119491 + * tree-tailcall.cc (single_non_eh_succ_edge): New function. + (independent_of_stmt_p): Use single_non_eh_succ_edge (bb)->dest + instead of single_succ (bb). + (empty_eh_cleanup): New function. + (find_tail_calls): Diagnose throwing of exceptions which do not + propagate only if there are no EDGE_EH successor edges. If there are + and the call is musttail, use empty_eh_cleanup to find if the cleanup + is not empty. If not or the call is not musttail, use different + diagnostics. Set is_noreturn even if there are successor edges. Use + single_non_eh_succ_edge (abb) instead of single_succ_edge (abb). Punt + on internal noreturn calls. + (decrease_profile): Don't assert 0 or 1 successor edges. + (eliminate_tail_call): Use + single_non_eh_succ_edge (gsi_bb (t->call_gsi)) instead of + single_succ_edge (gsi_bb (t->call_gsi)). + (tree_optimize_tail_calls_1): Also look into basic blocks with + single succ edge which is EDGE_EH for noreturn musttail calls. + +2025-04-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119586 + * tree-vect-stmts.cc (vectorizable_load): Assume we got + alignment analysis for VMAT_STRIDED_SLP wrong. + (vectorizable_store): Likewise. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + * doc/extend.texi (musttail statement attribute): Hint how + to avoid -Wmaybe-musttail-local-addr warnings. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * common.opt (Wmusttail-local-addr, Wmaybe-musttail-local-addr): New. + * tree-tailcall.cc (suitable_for_tail_call_opt_p): Don't fail for + TREE_ADDRESSABLE PARM_DECLs for musttail calls if diag_musttail. + Emit -Wmusttail-local-addr warnings. + (maybe_error_musttail): Use gimple_location instead of directly + accessing location member. + (find_tail_calls): For musttail calls if diag_musttail, don't fail + if address of local could escape to the call, instead emit + -Wmaybe-musttail-local-addr warnings. Emit + -Wmaybe-musttail-local-addr warnings also for address taken + parameters. + * common.opt.urls: Regenerate. + * doc/extend.texi (musttail statement attribute): Clarify local + variables without non-trivial destruction are considered out of scope + before the tail call instruction. + * doc/invoke.texi (-Wno-musttail-local-addr, + -Wmaybe-musttail-local-addr): Document. + +2025-04-02 Andi Kleen <ak@gcc.gnu.org> + + PR middle-end/119482 + * bitmap.cc (bitmap_set_bit): Write back value unconditionally + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR c++/118982 + * doc/extend.texi (Common Function Attributes): For the + constructor/destructory attribute, be more explicit about the + relationship between the constructor attribute and + the C++ init_priority attribute, and add a cross-reference. + Also document that most targets support this. + (C++ Attributes): Similarly for the init_priority attribute. + +2025-04-01 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/118118 + * doc/extend.texi (Boolean Type): New section. + +2025-04-01 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/117689 + * doc/extend.texi (Incomplete Enums): Rename to.... + (Enum Extensions): This. Document support for specifying the + underlying type of an enum as an extension in all earlier C + and C++ standards. Document that a forward declaration with + underlying type is not an incomplete type, and which dialects + GCC supports that in. + +2025-04-01 Tom Tromey <tromey@adacore.com> + + * dwarf2out.cc (modified_type_die): Use mod_scope for + ranged types, base types, and array types. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119493 + * tree-tailcall.cc (find_tail_calls): Don't punt on tail recusion + if some arguments don't have is_gimple_reg_type, only punt if they + have non-POD types, or volatile, or addressable or (for now) it is + not a musttail call. Set tailr_arg_needs_copy in those cases too. + (eliminate_tail_call): Copy call arguments to params if they don't + have is_gimple_reg_type, use temporaries if the argument is used + later. + (tree_optimize_tail_calls_1): Skip !is_gimple_reg_type + tailr_arg_needs_copy parameters. Formatting fix. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119291 + * combine.cc (try_combine): For splitting of PARALLEL with + 2 independent SETs into i2 and i3 sets check reg_used_between_p + of the SET_DESTs rather than just modified_between_p. + +2025-04-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119534 + * tree-vect-stmts.cc (get_load_store_type): Reject + VECTOR_BOOLEAN_TYPE_P offset vector type for emulated gathers. + +2025-04-01 Martin Uecker <uecker@tugraz.at> + + PR c/119173 + * doc/invoke.texi (Warning Options): Move to general options. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR gcov-profile/119535 + * profile.cc (branch_prob): Ignore any edges from bbs ending with + musttail call, rather than only EDGE_FAKE edges from those to EXIT. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119493 + * tree-tailcall.cc (tree_optimize_tail_calls_1): Ignore tail recursion + candidates which need accumulators if there is at least one musttail + non-recursive call. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119537 + * gimplify.cc (find_used_user_labels): New function. + (gimplify_call_expr): Don't remove complex assume expression at -O0 + if it defines any user labels. + * gimple-low.cc: Include diagnostic-core.h. + (assume_labels): New variable. + (diagnose_assume_labels): New function. + (lower_function_body): Call it via walk_gimple_seq if assume_labels + is non-NULL, then BITMAP_FREE assume_labels. + (find_assumption_locals_r): Record in assume_labels uids of user + labels defined in assume attribute expressions. + +2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119369 + * config/gcn/gcn-protos.h (gcn_asm_weaken_decl): Declare. + * config/gcn/gcn.cc (gcn_asm_weaken_decl): New. + * config/gcn/gcn-hsa.h (ASM_WEAKEN_DECL): '#define' to this. + +2025-04-01 Richard Biener <rguenther@suse.de> + + PR target/119549 + * common/config/i386/i386-common.cc (ix86_handle_option): + Assert that both OPT_msse4 and OPT_mno_sse4 are never unset. + * config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p): + Process negated OPT_msse4 as OPT_mno_sse4. + +2025-04-01 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/119559 + * gimplify.cc (modify_call_for_omp_dispatch): Reorder checks to avoid + asserts and bogus diagnostic. + +2025-04-01 Hu, Lin1 <lin1.hu@intel.com> + Hongyu Wang <hongyu.wang@intel.com> + + PR target/119473 + * config/i386/sse.md + (vaesdec_<mode>): Set attr "isa" as "avx,vaes_avx512vl", "type" as + "sselog1", "mode" as "TI". + (vaesdeclast_<mode>): Ditto. + (vaesenc_<mode>): Ditto. + (vaesenclast_<mode>): Ditto. + +2025-04-01 Monk Chiang <monk.chiang@sifive.com> + Kito Cheng <kito.cheng@sifive.com> + + * config/riscv/riscv-v.cc: Add restrict for insert LMUL. + * config/riscv/riscv-vector-builtins-types.def: + Use RVV_REQUIRE_ELEN_64 to check LMUL number. + * config/riscv/riscv-vector-switch.def: Likewise. + * config/riscv/vector-iterators.md: Check TARGET_VECTOR_ELEN_64 + rather than "TARGET_MIN_VLEN > 32" for all iterator. + +2025-04-01 Lulu Cheng <chenglulu@loongson.cn> + + * doc/invoke.texi: Corrected the position of '-mtls-dialect=opt' + option. + +2025-03-31 Jørgen Kvalsvik <j@lambda.is> + + PR gcov-profile/119553 + * path-coverage.cc (find_paths): Return path count, don't + write to gcno, and rename to ... + (instrument_prime_paths): ... this. + * profile.cc (branch_prob): Write path counts to gcno. + +2025-03-31 Marek Polacek <polacek@redhat.com> + + PR c++/116960 + PR c++/119303 + * diagnostic.cc (diagnostic_context::report_diagnostic): Check for + non-zero m_lock later, after checking diagnostic_enabled. + +2025-03-31 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com> + + * config/aarch64/aarch64-option-extensions.def (SME): Remove SVE2 as + prerequisite and add in FCMA and F16FML. + * config/aarch64/aarch64.cc (aarch64_override_options_internal): + Diagnose use of SME without SVE2 and implicitly enable SVE2 when + enabling SME after streaming mode diagnosis. + * doc/invoke.texi (sme): Document that this can only be used with the + sve2 extension. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119532 + * tree-tailcall.cc (process_assignment): FAIL for fixed-point + typed functions. + +2025-03-31 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/119541 + * gimplify.cc (modify_call_for_omp_dispatch): Limit interop claues + processing by the number of append_args arguments. + +2025-03-31 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR middle-end/119442 + * expr.cc (store_constructor): Also allow element modes explicitly + accepted by target vec_duplicate pattern. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/sse.md (*vmov<mode>_constm1_pternlog_false_dep): + Add mode attribute. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_mov_fp_load, + znver5_sse_mov_fp_load): Also match ssemov2. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_log_evex_store, + znver5_sse_log_evex_store): New reservations. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_icvt): Use sseicvt. + (znver4_sse_icvt_store): Likewise. + (znver5_sse_icvt_store): Likewise. + (znver4_sse_icvt2): New. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_div_pd, + znver4_sse_div_pd_load, znver5_sse_div_pd_load): Handle DFmode. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_cmp_avx128, + znver5_sse_cmp_avx128): Handle TImode. + (znver4_sse_cmp_avx256, znver5_sse_cmp_avx256): Handle OImode. + (znver4_sse_cmp_avx512, znver5_sse_cmp_avx512): Handle XImode. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_test): Drop test of + prefix_extra attribute. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_log1): Rename to + znver4_sse_log1_store. + (znver5_sse_log1): Rename to znver5_sse_log1_store. + (znver4_sse_log1): New memory-less variant. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi (New/Delete Builtins): Cleanup up the text and + explicitly list the builtins being documented. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Numeric Builtins): Move Integer Overflow Builtins + section here, as a subsection. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Atomic Memory Access): New section. + (__sync Builtins): Make it a subsection of the above. + (Atomic Memory Access): Likewise. + (x86 specific memory model extensions for transactional memory): + Delete this section, incorporating the text into the discussion + of __atomic builtins. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Built-in Functions): Incorporate some text + formerly in "Other Builtins" into the introduction. Adjust + menu for new sections. + (Library Builtins): New section, split from "Other Builtins". + (Numeric Builtins): Likewise. + (Stack Allocation): Likewise. + (Constructing Calls): Move __builtin_call_with_static_chain here. + (Object Size Checking): Minor copy-editing. + (Other Builtins): Move text to new sections listed above. Delete + duplicate docs for object-size checking builtins. + * doc/invoke.texi (C dialect options): Update @xref for -fno-builtin. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (C Extensions): Move menu items for + builtin-related sections to... + (Built-in Functions): New chapter. + * doc/gcc.texi (Introduction): Add menu entry for new chapter. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Attributes): New section. + (Function Attributes): Make it a subsection of the new section. + (Variable Attributes): Likewise. + (Type Attributes): Likewise. + (Label Attributes): Likewise. + (Enumerator Attributes): Likewise. + (Attribute Syntax): Likewise. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Function Attributes): Merge text from "Target + Format Checks" into the main discussion of the format and + format_arg attributes. + (Target Format Checks): Delete section. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + PR target/117759 + * config/alpha/alpha-protos.h + (alpha_expand_unaligned_store_safe_partial): New prototype. + * config/alpha/alpha.cc (alpha_expand_movmisalign) + (alpha_expand_block_move, alpha_expand_block_clear): Handle + TARGET_SAFE_PARTIAL. + (alpha_expand_unaligned_store_safe_partial) + (alpha_expand_unaligned_store_words_safe_partial) + (alpha_expand_clear_safe_partial_nobwx): New functions. + * config/alpha/alpha.md (insvmisaligndi): Handle + TARGET_SAFE_PARTIAL. + * config/alpha/alpha.opt (msafe-partial): New option. + * config/alpha/alpha.opt.urls: Regenerate. + * doc/invoke.texi (Option Summary, DEC Alpha Options): Document + the new option. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + PR target/117759 + * config/alpha/alpha-modes.def (OI): New integer mode. + * config/alpha/alpha-protos.h (alpha_expand_mov_safe_bwa): New + prototype. + * config/alpha/alpha.cc (alpha_expand_mov_safe_bwa): New + function. + (alpha_secondary_reload): Handle TARGET_SAFE_BWA. + * config/alpha/alpha.md (aligned_store_safe_bwa) + (unaligned_store<mode>_safe_bwa, reload_out<mode>_safe_bwa) + (reload_out<mode>_unaligned_safe_bwa): New expanders. + (mov<mode>, movcqi, reload_out<mode>_aligned): Handle + TARGET_SAFE_BWA. + (reload_out<mode>): Guard against TARGET_SAFE_BWA. + * config/alpha/alpha.opt (msafe-bwa): New option. + * config/alpha/alpha.opt.urls: Regenerate. + * doc/invoke.texi (Option Summary, DEC Alpha Options): Document + the new option. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + * function.h (struct function): Add + `split_basic_blocks_after_reload' member. + * lra.cc (lra): Handle it. + * reload1.cc (reload): Likewise. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha-protos.h (alpha_emit_unlikely_jump): New + prototype. + * config/alpha/alpha.cc (emit_unlikely_jump): Rename to... + (alpha_emit_unlikely_jump): ... this. Return the insn emitted. + (alpha_split_atomic_op, alpha_split_compare_and_swap) + (alpha_split_compare_and_swap_12, alpha_split_atomic_exchange) + (alpha_split_atomic_exchange_12): Update call sites accordingly. + +2025-03-30 LIU Hao <lh_mouse@126.com> + + * config/mingw/winnt.cc (mingw_pe_file_end): Add `.p2align`. + +2025-03-29 Iain Sandoe <iain@sandoe.co.uk> + + PR cobol/119283 + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Check for host memrchr. + +2025-03-29 Lulu Cheng <chenglulu@loongson.cn> + + * doc/invoke.texi: Modify the description of '-mld-seq-sa'. + +2025-03-29 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-def.cc + (la464_align): Add settings for labels. + (la664_align): Likewise. + * config/loongarch/loongarch-opts.cc + (loongarch_target_option_override): Likewise. + * config/loongarch/loongarch-tune.h + (struct loongarch_align): Implement the function `label_`. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + * common.opt.urls: Regenerate. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + * Makefile.in (gcc.srcextra): Use sed to turn .../gcc/gengtype-lex.l + in #line directives into just gengtype-lex.l. + +2025-03-28 Andrew MacLeod <amacleod@redhat.com> + + * range-op.cc (operator_mult::op1_range): If the LHS does not + contain zero, return non-zero. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119483 + * tree-tailcall.cc (find_tail_calls): Handle noreturn musttail + calls. + (eliminate_tail_call): Likewise. + (tree_optimize_tail_calls_1): If cfun->has_musttail and + diag_musttail, handle also basic blocks with no successors + with noreturn musttail calls. + * calls.cc (can_implement_as_sibling_call_p): Allow ECF_NORETURN + calls if they are musttail calls. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119484 + * ipa-sra.cc (isra_analyze_call): Don't set m_return_ignored if + gimple_call_must_tail_p even if it doesn't have lhs. + +2025-03-28 Richard Biener <rguenther@suse.de> + + * fold-const.h (native_encode_real): Export. + * fold-const.cc (native_encode_real): Change API to take + mode and REAL_VALUE_TYPE. + (native_encode_expr): Adjust. + +2025-03-27 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.cc (ix86_redzone_clobber): Use integer, not rtx + as the third argument of plus_constant. + +2025-03-27 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_insn_both, znver5_insn_both): + New reservation for ALU ops with load and store. + +2025-03-27 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_add, znver4_sse_add_load, + znver5_sse_add_load, znver4_sse_add1, znver4_sse_add1_load, + znver5_sse_add1_load, znver4_sse_mul, znver4_sse_mul_load, + znver5_sse_mul_load, znver4_sse_cvt, znver4_sse_cvt_load, + znver5_sse_cvt_load, znver4_sse_shuf, znver5_sse_shuf, + znver4_sse_shuf_load, znver5_sse_shuf_load, + znver4_sse_cmp_avx128, znver5_sse_cmp_avx128, + znver4_sse_cmp_avx128_load, znver5_sse_cmp_avx128_load): + Also handle DFmode. + (znver4_sse_muladd_load, znver5_sse_muladd_load): Use + ssemuladd type. + +2025-03-27 Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (modify_call_for_omp_dispatch): Remove sorry. + +2025-03-27 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/neon.md (<fmaxmin><mode>3): Move pattern from here... + * config/arm/vec-common.md (<fmaxmin><mode>3): ... to here. Convert + to define_expand and disable the pattern when denormal values might + get truncated to zero. Iterate on VF to add V4HF and V8HF variants. + +2025-03-27 Hu, Lin1 <lin1.hu@intel.com> + + PR target/119425 + * config/i386/sse.md: + (vec_set<mode>_0): Set the alternative with constraint "jm"'s + attribute "addr" to "gpr16". + (<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>): + Ditto. + (avx512vl_shuf_<shuffletype>32x4_1<mask_name>): Ditto. + (avx2_pblendd<mode>): Ditto. + (aesenc): Ditto. + (aesenclast): Ditto. + (aesdec): Ditto. + (aesdeclast): Ditto. + (vaesdec_<mode>): Ditto. + (vaesdeclast_<mode>): Ditto. + (vaesenc_<mode>):: Ditto. + (vaesenclast_<mode>):: Ditto. + (aes<aesklvariant>u8): Ditto. + (*aes<aeswideklvariant>u8): Ditto. + +2025-03-27 Lulu Cheng <chenglulu@loongson.cn> + + PR target/119408 + * config/loongarch/loongarch.cc + (loongarch_c_mode_for_suffix): New. + (TARGET_C_MODE_FOR_SUFFIX): Define. + +2025-03-26 Jørgen Kvalsvik <j@lambda.is> + + * builtins.cc (expand_builtin_fork_or_exec): Call + coverage_instrumentation_p. + * ipa-inline.cc (can_early_inline_edge_p): Likewise. + * passes.cc (finish_optimization_passes): Likewise. + * profile.cc (coverage_instrumentation_p): New function. + * profile.h (coverage_instrumentation_p): New declaration. + * tree-profile.cc (tree_profiling): Call + coverage_instrumentation_p. + (pass_ipa_tree_profile::gate): Likewise. + * value-prof.h (coverage_instrumentation_p): New declaration. + +2025-03-26 Jørgen Kvalsvik <j@lambda.is> + + * Makefile.in (OBJS): Add prime-paths.o, path-coverage.o. + (GTFILES): Add prime-paths.cc, path-coverage.cc + (GCOV_OBJS): Add graphds.o, prime-paths.o, bitmap.o + * builtins.cc (expand_builtin_fork_or_exec): Check + path_coverage_flag. + * collect2.cc (main): Add -fno-path-coverage to OBSTACK. + * common.opt: Add new options -fpath-coverage, + -fpath-coverage-limit, -Wcoverage-too-many-paths + * doc/gcov.texi: Add --prime-paths, --prime-paths-lines, + --prime-paths-source documentation. + * doc/invoke.texi: Add -fpath-coverage, -fpath-coverage-limit, + -Wcoverage-too-many-paths documentation. + * gcc.cc: Link gcov on -fpath-coverage. + * gcov-counter.def (GCOV_COUNTER_PATHS): New. + * gcov-io.h (GCOV_TAG_PATHS): New. + (GCOV_TAG_PATHS_LENGTH): New. + (GCOV_TAG_PATHS_NUM): New. + * gcov.cc (class path_info): New. + (struct coverage_info): Add paths, paths_covered. + (find_prime_paths): New. + (add_path_counts): New. + (find_arc): New. + (print_usage): Add -e, --prime-paths, --prime-paths-lines, + --prime-paths-source. + (process_args): Likewise. + (json_set_prime_path_coverage): New. + (output_json_intermediate_file): Call + json_set_prime_path_coverage. + (process_all_functions): Call find_prime_paths. + (generate_results): Call add_path_counts. + (read_graph_file): Read path counters. + (read_count_file): Likewise. + (function_summary): Print path counts. + (file_summary): Likewise. + (print_source_line): New. + (print_prime_path_lines): New. + (print_inlined_separator): New. + (print_prime_path_source): New. + (output_path_coverage): New. + (output_lines): Print path coverage. + * ipa-inline.cc (can_early_inline_edge_p): Check + path_coverage_flag. + * passes.cc (finish_optimization_passes): Likewise. + * profile.cc (branch_prob): Likewise. + * selftest-run-tests.cc (selftest::run_tests): Run path coverage + tests. + * selftest.h (path_coverage_cc_tests): New declaration. + * tree-profile.cc (tree_profiling): Check path_coverage_flag. + (pass_ipa_tree_profile::gate): Likewise. + * path-coverage.cc: New file. + * prime-paths.cc: New file. + +2025-03-26 Jørgen Kvalsvik <j@lambda.is> + + * gcov.cc (generate_results): Count branches, conditions. + (function_summary): Output branch, calls, condition count. + +2025-03-26 Thomas Schwinge <thomas@codesourcery.com> + + PR driver/101544 + * gcc.cc (driver_handle_option): Forward host '-lstdc++' to + offloading compilation. + * config/gcn/mkoffload.cc (main): Adjust. + * config/nvptx/mkoffload.cc (main): Likewise. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119417 + * tree-ssa-math-opts.cc (convert_mult_to_widen): Before changing + typeN because actual_precision/from_unsignedN differs cast rhsN + to typeN if it has a different type. + (convert_plusminus_to_widen): Before changing + typeN because actual_precision/from_unsignedN differs cast mult_rhsN + to typeN if it has a different type. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + Andi Kleen <ak@gcc.gnu.org> + + PR gcov-profile/118442 + * profile.cc (branch_prob): Ignore EDGE_FAKE edges from musttail calls + to EXIT. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + PR target/119450 + * config/i386/i386.md (narrow test peephole2): Test for + offsettable_memref_p in condition. + +2025-03-26 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_sse_mov_fp, znver4_sse_mov_fp_load, + znver5_sse_mov_fp_load, znver4_sse_mov_fp_store, + znver5_sse_mov_fp_store): Also match V1SF and DF. + +2025-03-26 Richard Biener <rguenther@suse.de> + + PR target/119010 + * config/i386/zn4zn5.md (znver4_imov_double_store, + znver5_imov_double_store, znver4_imov_store, znver5_imov_store): + New reservations for integer stores. + +2025-03-26 Richard Biener <rguenther@suse.de> + + PR middle-end/118795 + * match.pd (vec_perm <vec_perm <a, b>> -> vec_perm <a, b>): + Use the appropriate check to see whether the original + outer permute was supported. + +2025-03-26 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2-512convertintrin.h (_mm512_mask_cvtx2ps_ph): Formatting fixes + (_mm512_mask_cvtx_round2ps_ph): Ditto + (_mm512_maskz_cvtx_round2ps_ph): Ditto + (_mm512_cvtbiassph_bf8): Rename to _mm512_cvts_biasph_bf8. + (_mm512_mask_cvtbiassph_bf8): Rename to _mm512_mask_cvts_biasph_bf8. + (_mm512_maskz_cvtbiassph_bf8): Rename to _mm512_maskz_cvts_biasph_bf8. + (_mm512_cvtbiassph_hf8): Rename to _mm512_cvts_biasph_hf8. + (_mm512_mask_cvtbiassph_hf8): Rename to _mm512_mask_cvts_biasph_hf8. + (_mm512_maskz_cvtbiassph_hf8): Rename to _mm512_maskz_cvts_biasph_hf8. + (_mm512_cvts2ph_bf8): Rename to _mm512_cvts_2ph_bf8. + (_mm512_mask_cvts2ph_bf8): Rename to _mm512_mask_cvts_2ph_bf8. + (_mm512_maskz_cvts2ph_bf8): Rename to _mm512_maskz_cvts_2ph_bf8. + (_mm512_cvts2ph_hf8): Rename to _mm512_cvts_2ph_hf8. + (_mm512_mask_cvts2ph_hf8): Rename to _mm512_mask_cvts_2ph_hf8. + (_mm512_maskz_cvts2ph_hf8): Rename to _mm512_maskz_cvts_2ph_hf8. + (_mm512_cvtsph_bf8): Rename to _mm512_cvts_ph_bf8. + (_mm512_mask_cvtsph_bf8): Rename to _mm512_mask_cvts_ph_bf8. + (_mm512_maskz_cvtsph_bf8): Rename to _mm512_maskz_cvts_ph_bf8. + (_mm512_cvtsph_hf8): Rename to _mm512_cvts_ph_hf8. + (_mm512_mask_cvtsph_hf8): Rename to _mm512_mask_cvts_ph_hf8. + (_mm512_maskz_cvtsph_hf8): Rename to _mm512_maskz_cvts_ph_hf8. + * config/i386/avx10_2convertintrin.h + (_mm_cvtbiassph_bf8): Rename to _mm_cvts_biasph_bf8. + (_mm_mask_cvtbiassph_bf8): Rename to _mm_mask_cvts_biasph_bf8. + (_mm_maskz_cvtbiassph_bf8): Rename to _mm_maskz_cvts_biasph_bf8. + (_mm256_cvtbiassph_bf8): Rename to _mm256_cvts_biasph_bf8. + (_mm256_mask_cvtbiassph_bf8): Rename to _mm256_mask_cvts_biasph_bf8. + (_mm256_maskz_cvtbiassph_bf8): Rename to _mm256_maskz_cvts_biasph_bf8. + (_mm_cvtbiassph_hf8): Rename to _mm_cvts_biasph_hf8. + (_mm_mask_cvtbiassph_hf8): Rename to _mm_mask_cvts_biasph_hf8. + (_mm_maskz_cvtbiassph_hf8): Rename to _mm_maskz_cvts_biasph_hf8. + (_mm256_cvtbiassph_hf8): Rename to _mm256_cvts_biasph_hf8. + (_mm256_mask_cvtbiassph_hf8): Rename to _mm256_mask_cvts_biasph_hf8. + (_mm256_maskz_cvtbiassph_hf8): Rename to _mm256_maskz_cvts_biasph_hf8. + (_mm_cvts2ph_bf8): Rename to _mm_cvts_2ph_bf8. + (_mm_mask_cvts2ph_bf8): Rename to _mm_mask_cvts_2ph_bf8. + (_mm_maskz_cvts2ph_bf8): Rename to _mm_maskz_cvts_2ph_bf8. + (_mm256_cvts2ph_bf8): Rename to _mm256_cvts_2ph_bf8. + (_mm256_mask_cvts2ph_bf8): Rename to _mm256_mask_cvts_2ph_bf8. + (_mm256_maskz_cvts2ph_bf8): Rename to _mm256_maskz_cvts_2ph_bf8. + (_mm_cvts2ph_hf8): Rename to _mm_cvts_2ph_hf8. + (_mm_mask_cvts2ph_hf8): Rename to _mm_mask_cvts_2ph_hf8. + (_mm_maskz_cvts2ph_hf8): Rename to _mm_maskz_cvts_2ph_hf8. + (_mm256_cvts2ph_hf8): Rename to _mm256_cvts_2ph_hf8. + (_mm256_mask_cvts2ph_hf8): Rename to _mm256_mask_cvts_2ph_hf8. + (_mm256_maskz_cvts2ph_hf8): Rename to _mm256_maskz_cvts_2ph_hf8. + (_mm_cvtsph_bf8): Rename to _mm_cvts_ph_bf8. + (_mm_mask_cvtsph_bf8): Rename to _mm_mask_cvts_ph_bf8. + (_mm_maskz_cvtsph_bf8): Rename to _mm_maskz_cvts_ph_bf8. + (_mm256_cvtsph_bf8): Rename to _mm256_cvts_ph_bf8. + (_mm256_mask_cvtsph_bf8): Rename to _mm256_mask_cvts_ph_bf8. + (_mm256_maskz_cvtsph_bf8): Rename to _mm256_maskz_cvts_ph_bf8. + (_mm_cvtsph_hf8): Rename to _mm_cvts_ph_hf8. + (_mm_mask_cvtsph_hf8): Rename to _mm_mask_cvts_ph_hf8. + (_mm_maskz_cvtsph_hf8): Rename to _mm_maskz_cvts_ph_hf8. + (_mm256_cvtsph_hf8): Rename to _mm256_cvts_ph_hf8. + (_mm256_mask_cvtsph_hf8): Rename to _mm256_mask_cvts_ph_hf8. + (_mm256_maskz_cvtsph_hf8): Rename to _mm256_maskz_cvts_ph_hf8. + +2025-03-25 Iain Sandoe <iain@sandoe.co.uk> + + * gcov.cc (get_gcov_intermediate_filename): Use lbasename(). + +2025-03-25 Iain Sandoe <iain@sandoe.co.uk> + + PR other/119250 + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Match the configure test in libiberty when checking + the basename decl. + +2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (modify_call_for_omp_dispatch): Adjust arguments. + Remove the "sorry" for the case where new interop objects must be + constructed, and add code to make it work instead. + (expand_variant_call_expr): Adjust arguments and call to + modify_call_for_omp_dispatch. + (gimplify_variant_call_expr): Simplify logic for calling + expand_variant_call_expr. + +2025-03-25 Jakub Jelinek <jakub@redhat.com> + + PR target/96226 + PR target/119428 + * config/i386/i386.md (splitter after *<rotate_insn><mode>3_mask, + splitter after *<rotate_insn><mode>3_mask_1): Revert 2020-12-05 + changes. + +2025-03-25 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119224 + * config/riscv/autovec.md: Disable abd splitter. + +2025-03-25 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/119325 + * doc/install.texi (gcn): Change ROCm > 6.3.2 to >6.3.3 for generic + support; mention Newlib commit that fixes a SIMD math issue. + +2025-03-25 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/118627 + * omp-general.cc (omp_parse_access_method): Change to return void. + (omp_parse_access_methods): Return void; remove 'if' around a + function call. + (omp_parse_expr): Remove 'if' around a function call. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.md (<US>mull): Add alternatives that allow Rs + to be tied to either Rdlo or Rdhi. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + PR middle-end/117811 + * optabs.cc (expand_binop_directly): Remove LAST as an argument, + instead record the last insn on entry. Only delete insns if + we need to restart and restart by calling ourself, not expand_binop. + (expand_binop): Update callers to expand_binop_directly. If it + fails to expand the operation, delete back to LAST. + +2025-03-25 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * tree-tailcall.cc (suitable_for_tail_opt_p): Add DIAG_MUSTTAIL + argument, propagate it down to maybe_error_musttail. + (suitable_for_tail_call_opt_p): Likewise. + (maybe_error_musttail): Add DIAG_MUSTTAIL argument. Don't emit error + for gimple_call_must_tail_p calls if it is false. + (find_tail_calls): Add DIAG_MUSTTAIL argument, propagate it down to + maybe_error_musttail, suitable_for_tail_opt_p, + suitable_for_tail_call_opt_p and find_tail_calls calls. + (tree_optimize_tail_calls_1): Add DIAG_MUSTTAIL argument, propagate + it down to find_tail_calls and if set, clear cfun->has_musttail flag + at the end. Rename OPT_MUSTCALL argument to OPT_MUSTTAIL. + (execute_tail_calls): Pass true to DIAG_MUSTTAIL + tree_optimize_tail_calls_1 argument. + (pass_tail_recursion::execute): Pass false to DIAG_MUSTTAIL + tree_optimize_tail_calls_1 argument. + (pass_musttail::gate): Don't test flag_optimize_sibling_calls. + (pass_musttail::execute): Pass true to DIAG_MUSTTAIL + tree_optimize_tail_calls_1 argument. + +2025-03-24 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118616 + * tree-vect-generic.cc (expand_vector_conversion): Add + an assert that converts vect is non empty if + supportable_indirect_convert_operation returns true. + +2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/101544 + * config/nvptx/nvptx.cc (nvptx_asm_output_def_from_decls) + [ACCEL_COMPILER]: Special-case certain host-setup symbol aliases. + * varasm.cc (do_assemble_alias) [ACCEL_COMPILER]: Adjust. + +2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.cc (default_ptx_version_option): Default at + least to '-mptx=6.3'. + * doc/invoke.texi (Nvidia PTX Options): Update '-mptx=[...]'. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/cpuinfo.h + (get_available_features): Change to FEATURE_AVX10_1. + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_AVX10_1_512_SET): Renamed to ... + (OPTION_MASK_ISA2_AVX10_1_SET): ... this. + (OPTION_MASK_ISA2_AVX10_2_SET): Use renamed macro. + (OPTION_MASK_ISA2_AVX10_1_UNSET): Ditto. + (ix86_handle_option): Ditto. + (processor_alias_table): Use P_PROC_AVX10_1. + * common/config/i386/i386-cpuinfo.h + (enum feature_priority): Rename from AVX10_1_512 to AVX10_1. + (enum processor_features): Ditto. + * common/config/i386/i386-isas.h: Add avx10.1. + * config/i386/driver-i386.cc + (host_detect_local_cpu): Use renamed enum. + * config/i386/i386-c.cc + (ix86_target_macros_internal): Rename to avx10.1. + * config/i386/i386-isa.def (AVX10_1_512): Rename to ... + (AVX10_1): ... this. + * config/i386/i386-options.cc (isa2_opts): Rename to avx10.1. + (ix86_valid_target_attribute_inner_p): Add avx10.1. + (ix86_option_override_internal): Rename to AVX10_1. + Revise warnings to mention behavior change for option + combination in GCC 16. + * config/i386/i386.h (PTA_DIAMONDRAPIDS): Use AVX10_1. + * config/i386/i386.opt: Add avx10.1. + Add deprecate warnings for mevex512 and mavx10.1-256/512. + * config/i386/i386.opt.urls: Add avx10.1. + * doc/extend.texi: Ditto. + * doc/sourcebuild.texi: Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/cpuinfo.h + (get_available_features): Revise the logic AVX10 version. + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_AVX10_2_256_SET): Removed. + (OPTION_MASK_ISA2_AVX10_2_512_SET): Ditto. + (OPTION_MASK_ISA2_AVX10_2_SET): New. + (OPTION_MASK_ISA2_AMX_AVX512_SET): Use AVX10.2 macro. + (OPTION_MASK_ISA2_AVX10_2_UNSET): Ditto. + (ix86_handle_option): Remove avx10.2-256 part. Adjust avx10.2. + * common/config/i386/i386-cpuinfo.h + (enum processor_features): Remove FEATURE_AVX10_2_256 and skip + the value for it. Change the name from FEATURE_AVX10_2_512 to + FEATURE_AVX10_2. + * common/config/i386/i386-isas.h: Remove avx10.2-256/512. + * config/i386/avx10_2-512bf16intrin.h: Use avx10.2 instead of + avx10.2-256/512. + * config/i386/avx10_2-512convertintrin.h: Ditto. + * config/i386/avx10_2-512mediaintrin.h: Ditto. + * config/i386/avx10_2-512minmaxintrin.h: Ditto. + * config/i386/avx10_2-512satcvtintrin.h: Ditto. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/avx10_2convertintrin.h: Ditto. + * config/i386/avx10_2mediaintrin.h: Ditto. + * config/i386/avx10_2minmaxintrin.h: Ditto. + * config/i386/avx10_2satcvtintrin.h: Ditto. + * config/i386/movrsintrin.h: Ditto. + * config/i386/sm4intrin.h: Ditto. + * config/i386/cpuid.h (bit_AVX10_256): Removed. + (bit_AVX10_512): Ditto. + * config/i386/driver-i386.cc (host_detect_local_cpu): Adjust + Diamond Rapids and -march=native condition. + * config/i386/i386-builtin.def (BDESC): Use AVX10.2 macro + instead of AVX10.2-256/512. + * config/i386/i386-c.cc (ix86_target_macros_internal): Ditto. + * config/i386/i386-expand.cc + (ix86_expand_branch): Use TARGET_AVX10_2 instead of specifying + vector size. + (ix86_prepare_fp_compare_args): Ditto. + (ix86_expand_fp_compare): Ditto. + (ix86_ssecom_setcc): Ditto. + (ix86_expand_sse_comi): Ditto. + (ix86_expand_sse_comi_round): Ditto. + (ix86_check_builtin_isa_match): Ditto. + * config/i386/i386.cc (ix86_fp_compare_code_to_integer): Ditto. + (ix86_get_mask_mode): Ditto. + * config/i386/i386.h (SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P): Ditto. + * config/i386/i386.md: Ditto. + * config/i386/mmx.md: Ditto. + * config/i386/sse.md: Ditto. + * config/i386/predicates.md: Ditto. + * config/i386/i386-isa.def (AVX10_2_256): Removed. + (AVX10_2_512): Removed. + (AVX10_2): New. + * config/i386/i386-options.cc + (isa2_opts): Remove avx10.2-256/512. + (ix86_valid_target_attribute_inner_p): Ditto. + (PTA_DIAMONDRAPIDS): Use PTA_AVX10_2. + * config/i386/i386.opt: Remove avx10.2-256/512. + * config/i386/i386.opt.urls: Ditto. + * doc/extend.texi: Ditto. + * doc/invoke.texi: Ditto. + * doc/sourcebuild.texi: Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config.gcc: Add avx10_2roundingintrin.h. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V4DF_FTYPE_V4DF_V4DF_V4DF_UQI_INT, V8SF_FTYPE_V8SF_V8SF_V8SF_UQI_INT, + V16HF_FTYPE_V16HF_V16HF_V16HF_UHI_INT, UQI_FTYPE_V4DF_V4DF_INT_UQI_INT, + UHI_FTYPE_V16HF_V16HF_INT_UHI_INT, UQI_FTYPE_V8SF_V8SF_INT_UQI_INT. + * config/i386/immintrin.h: Include avx10_2roundingintrin.h. + * config/i386/sse.md: Change subst_attr name due to renaming. + * config/i386/subst.md: + (<round_mode512bit_condition>): Add condition check for avx10.2 + rounding control 256bit intrins and renamed to ... + (<round_mode_condition>): ...this. + (round_saeonly_mode512bit_condition): Add condition check for + avx10.2 rounding control 256 bit intris and renamed to ... + (round_saeonly_mode_condition): ...this. + * config/i386/avx10_2roundingintrin.h: New file. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: Add new intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V8SF_FTYPE_V8SI_V8SF_UQI_INT, V4SF_FTYPE_V4DF_V4SF_UQI_INT, + V8HF_FTYPE_V8SI_V8HF_UQI_INT, V8HF_FTYPE_V4DF_V8HF_UQI_INT. + * config/i386/sse.md: + (avx512fp16_vcvt<floatsuffix><sseintconvert>2ph_<mode><mask_name><round_name>): + Add condition check. + (avx512fp16_vcvtpd2ph_v4df_mask_round): New expand. + (*avx512fp16_vcvt<castmode>2ph_<mode>_mask): Change name to + avx512fp16_vcvt<castmode>2ph_<mode>_mask<round_name>_1 + and extend pattern to generate 256bit insns. + (avx_cvtpd2ps256<mask_name>): Change name to + avx_cvtpd2ps256<mask_name><round_name> and extend pattern to + generate 256bit insns. + * config/i386/subst.md (round_applied): New condition. + (round_suff): New iterator. + (round_mode_condition): Add V32HI check for 512bit. + (round_saeonly_mode_condition): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: Add new intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V4DI_FTYPE_V4DF_V4DI_UQI_INT, V4SI_FTYPE_V4DF_V4SI_UQI_INT. + * config/i386/sse.md: + (avx_cvtpd2dq256<mask_name>): Change name to + avx_cvtpd2dq256<mask_name><round_name> and extend pattern to + generate 256bit insns. + (fixuns_notrunc<mode><si2dfmodelower>2<mask_name><round_name>): + Add round_mode_condition. + * config/i386/subst.md (round_pd2udqsuff): New iterator. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V8SF_FTYPE_V8HF_V8SF_UQI_INT, V8SI_FTYPE_V8HF_V8SI_UQI_INT, + V4DF_FTYPE_V8HF_V4DF_UQI_INT, V4DI_FTYPE_V8HF_V4DI_UQI_INT. + * config/i386/sse.md: + (avx512fp16_float_extend_ph<mode>2<mask_name><round_saeonly_name>): + Add condition check. + (avx512fp16_vcvtph2<sseintconvertsignprefix><sseintconvert>_<mode> + <mask_name><round_name>): + Ditto. + (avx512fp16_float_extend_ph<mode>2<mask_name>): Extend round saeonly. + (vcvtph2ps256<mask_name>): Ditto. + * config/i386/subst.md + (round_saeonly_applied): New condition. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V16HI_FTYPE_V16HF_V16HI_UHI_INT, V4DF_FTYPE_V4SF_V4DF_UQI_INT + V8HF_FTYPE_V8SF_V8HF_UQI_INT. + * config/i386/sse.md + (avx512fp16_vcvt<castmode>2ph_<mode><mask_name><round_name>): + Add round condition check. + * config/i386/subst.md (round_mode_condition): Add V16HI check for + 256bit. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V8SI_FTYPE_V8SF_V8SI_UQI_INT, V4DI_FTYPE_V4SF_V4DI_UQI_INT. + * config/i386/sse.md + (<sse2_avx_avx512f>_fix_notrunc<sf2simodelower><mode><mask_name>): + Extend to round. + (<mask_codefor><avx512>_fixuns_notrunc<sf2simodelower><mode><mask_name><round_name>): + Add round condition check. + * config/i386/subst.md (round_constraint4): New. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V4DF_FTYPE_V4DI_V4DF_UQI_INT, V4SF_FTYPE_V4DI_V4SF_UQI_INT, + V8HF_FTYPE_V4DI_V8HF_UQI_INT. + * config/i386/sse.md: + (avx512fp16_vcvt<floatsuffix>qq2ph_v4di_mask_round): New expand. + (*avx512fp16_vcvt<floatsuffix><sseintconvert>2ph_<mode>_mask): + Extend round control and add "_1" suffix. + (float<floatunssuffix><sseintvecmodelower><mode>2<mask_name><round_name>): + Add condition check. + (float<floatunssuffix><sselongvecmodelower><mode>2<mask_name><round_name>): + Ditto. + (float<floatunssuffix><mode><ssePSmode2lower>2<mask_name><round_name>): + Limit suffix output. + (unspec_fix_truncv4dfv4si2<mask_name>): Extend round control. + (unspec_fixuns_truncv4dfv4si2<mask_name>): Ditto. + * config/i386/subst.md (round_qq2pssuff): New iterator. + (round_saeonly_suff): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md (avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name>): + Extend round control for 256bit. + (unspec_avx512fp16_fix<vcvtt_uns_suffix>_trunc<mode>2<mask_name>): + Ditto. + (avx512fp16_fix<fixunssuffix>_trunc<mode>2<mask_name><round_saeonly_name>): + Add condition check. + * config/i386/subst.md + (round_saeonly_mode_condition): Add V16HI check for 256bit. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md + (unspec_fix_truncv8sfv8si2<mask_name>): Extend rounding control. + (<mask_codefor>fixuns_trunc<mode><sseintvecmodelower>2<mask_name>): + Ditto. + (<mask_codefor>floatuns<sseintvecmodelower><mode>2<mask_name><round_name>): + Add condition check. + (fix<fixunssuffix>_trunc<mode><sselongvecmodelower>2<mask_name><round_saeonly_name>): + Remove round_saeonly_name. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V16HF_FTYPE_V16HI_V16HF_UHI_INT. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V16HF_FTYPE_V16HF_V16HF_INT, V16HF_FTYPE_V16HF_V16HF_V16HF_INT, + V16HF_FTYPE_V16HF_V16HF_V16HF_UQI_INT, + V4DF_FTYPE_V4DF_V4DF_V4DI_INT_UQI_INT, + V8SF_FTYPE_V8SF_V8SF_V8SI_INT_UQI_INT. + * config/i386/sse.md: + (<avx512>_fixupimm<mode><sd_maskz_name><round_saeonly_name>): + Add condition check. + (<avx512>_fixupimm<mode>_mask<round_saeonly_name>): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md: + (<avx512>_fmadd_<mode>_mask3<round_name>): Add condition check. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md: + (<avx512>_fmaddsub_<mode>_mask<round_name>): Add condition check. + (<avx512>_fmaddsub_<mode>_mask3<round_name>): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md: + (<avx512>_fmsub_<mode>_mask<round_name>): Add condition check. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md: + (<avx512>_fnmsub_<mode>_mask3<round_name>): Add condition check. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): Handle + V8SF_FTYPE_V8SF_V8SF_UQI_INT, V4DF_FTYPE_V4DF_V4DF_UQI_INT, + V16HF_FTYPE_V16HF_V16HF_UHI_INT, V16HF_FTYPE_V16HF_INT_V16HF_UHI_INT, + V4DF_FTYPE_V4DF_INT_V4DF_UQI_INT, V8SF_FTYPE_V8SF_INT_V8SF_UQI_INT. + * config/i386/sse.md: + (<avx512>_getexp<mode><mask_name><round_saeonly_name>): + Add condition check. + (<avx512>_getmant<mode><mask_name><round_saeonly_name>): + Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin-types.def: Add new DEF_FUNCTION_TYPE. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/i386-expand.cc (ix86_expand_round_builtin): + Handle V8SF_FTYPE_V8SF_V8SF_INT_V8SF_UQI_INT, + V4DF_FTYPE_V4DF_V4DF_INT_V4DF_UQI_INT. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + * config/i386/sse.md: + (<mask_codefor>reducep<mode><mask_name><round_saeonly_name>): + Add condition check. + (<avx512>_rndscale<mode><mask_name><round_saeonly_name>): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def: Add new builtins. + * config/i386/sse.md: + (<avx512>_scalef<mode><mask_name><round_name>): Add condition check. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2024-08-19 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2roundingintrin.h: New intrins. + * config/i386/i386-builtin.def (BDESC): Add new builtins. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/avx10_2satcvtintrin.h: Remove rounding intrins. + Use non-round intrins. + * config/i386/i386-builtin.def (BDESC): Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/avx10_2convertintrin.h: Remove rounding intrins. + Use non-round builtins. + * config/i386/avx10_2minmaxintrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/i386-builtin-types.def: Remove unused type. + * config/i386/i386-expand.cc + (ix86_expand_args_builtin): Ditto. + (ix86_expand_round_builtin): Ditto. + +2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Nonlocal Gotos): Group with other built-ins + sections. + (Constructing Calls): Likewise. + (Pragmas): Move earlier in the section, before the built-ins docs. + (Thread-Local): Likewise. + (OpenMP): Likewise. + (OpenACC): Likewise. + +2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Syntax Extensions): New section. + (Statement Exprs): Make it a subsection of the above. + (Local Labels): Likewise. + (Labels as Values): Likewise. + (Nested Functions): Likewise. + (Typeof): Likewise. + (Offsetof): Likewise. + (Alignment): Likewise. + (Incomplete Enums): Likewise. + (Variadic Macros): Likewise. + (Conditionals): Likewise. + (Case Ranges): Likewise. + (Mixed Labels and Declarations): Likewise. + (C++ Comments): Likewise. + (Escaped Newlines): Likewise. + (Hex Floats): Likewise. + (Binary constants): Likewise. + (Dollar Signs): Likewise. + (Character Escapes): Likewise. + (Alternate Keywords): Likewise. + (Function Names): Likewise. + (Semantic Extensions): New section. + (Function Prototypes): Make it a subsection of the above. + (Pointer Arith): Likewise. + (Variadic Pointer Args): Likewise. + (Pointers to Arrays): Likewise. + (Const and Volatile Functions): Likewise. + +2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Aggregate Types): New section. + (Variable Length): Make it a subsection of the above. + (Zero Length): Likewise. + (Empty Structures): Likewise. + (Flexible Array Members in Unions): Likewise. + (Flexible Array Members alone in Structures): Likewise. + (Unnamed Fields): Likewise. + (Cast to Union): Likewise. + (Subscripting): Likewise. + (Initializers): Likewise. + (Compound Literals): Likewise. + (Designated Inits): Likewise. + +2025-03-23 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/42270 + * doc/extend.texi (Additional Numeric Types): New section. + (__int128): Make it a subsection of the above. + (Long Long): Likewise. + (Complex): Likewise. + (Floating Types): Likewise. + (Half-Precision): Likewise. + (Decimal Float): Likewise. + (Fixed-Point): Likewise. + +2025-03-23 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-mcus.def: Add AVR32SD20, AVR32SD28, AVR32SD32, + AVR64SD28, AVR64SD32, AVR64SD48. + * doc/avr-mmcu.texi: Rebuild. + +2025-03-23 Georg-Johann Lay <avr@gjlay.de> + + * doc/invoke.texi (AVR Optimization Options) + <-maccumulate-args>: Refer to -fdefer-pop. + <-muse-nonzero-bits>: Re-formulate what the option does. + +2025-03-22 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_option_override): Use + "avr-peep2-after-fuse-move" as dump name instead of "peephole2". + +2025-03-22 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.opt.urls: Add -muse-nonzero-bits. + +2025-03-22 Georg-Johann Lay <avr@gjlay.de> + + PR target/119421 + * config/avr/avr.opt (-muse-nonzero-bits): New option. + * config/avr/avr-protos.h (avr_nonzero_bits_lsr_operands_p): New. + (make_avr_pass_split_nzb): New. + * config/avr/avr.cc (avr_nonzero_bits_lsr_operands_p): New function. + (avr_rtx_costs_1): Return costs for the new insns. + * config/avr/avr.md (nzb): New insn attribute. + (*nzb=1.<code>...): New insns to better support some bit + operations for <code> in AND, IOR, XOR. + * config/avr/avr-passes.def (avr_pass_split_nzb): Insert pass + atfer combine. + * config/avr/avr-passes.cc (avr_pass_data_split_nzb). New pass data. + (avr_pass_split_nzb): New pass. + (make_avr_pass_split_nzb): New function. + * common/config/avr/avr-common.cc (avr_option_optimization_table): + Enable -muse-nonzero-bits for -O2 and higher. + * doc/invoke.texi (AVR Options): Document -muse-nonzero-bits. + +2025-03-22 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_attrs_section_name): New function. + (avr_insert_attributes): Add "used" attribute to functions + in .initN and .finiN. + +2025-03-22 Iain Sandoe <iain@sandoe.co.uk> + + * config/darwin.h (DL_LIBRARY): New. + +2025-03-22 Jakub Jelinek <jakub@redhat.com> + + * gimplify.cc (warn_switch_unreachable_and_auto_init_r): Add missing + space in the middle of diagnostics. + * tree-vect-stmts.cc (vectorizable_load): Add missing space in the + middle of debug dump message. + * sym-exec/sym-exec-state.cc (state::check_args_compatibility): + Likewise. + +2025-03-21 Surya Kumari Jangala <jskumari@linux.ibm.com> + Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/116028 + PR rtl-optimization/118615 + * lra-constraints.cc (first_call_insn): New variable. + (split_reg): Spill register before first_call_insn if call_save_p + and the call is in a different bb in the ebb. + (split_if_necessary): Formatting fix. + (inherit_in_ebb): Set first_call_insn when handling a CALL_INSN. + For successful split_if_necessary with before_p, only change + use_insn if it emitted any new instructions before curr_insn. + Clear first_call_insn before returning. + +2025-03-21 Paul-Antoine Arras <parras@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * builtin-types.def + (BT_FN_VOID_INT_INT_PTR_PTR_PTR_INT_PTR_INT_PTR_UINT_PTR): New. + * gimple-low.cc (lower_stmt): Handle GIMPLE_OMP_INTEROP. + * gimple-pretty-print.cc (dump_gimple_omp_interop): New function. + (pp_gimple_stmt_1): Handle GIMPLE_OMP_INTEROP. + * gimple.cc (gimple_build_omp_interop): New function. + (gimple_copy): Handle GIMPLE_OMP_INTEROP. + * gimple.def (GIMPLE_OMP_INTEROP): Define. + * gimple.h (gimple_build_omp_interop): Declare. + (gimple_omp_interop_clauses): New function. + (gimple_omp_interop_clauses_ptr): Likewise. + (gimple_omp_interop_set_clauses): Likewise. + (gimple_return_set_retval): Handle GIMPLE_OMP_INTEROP. + * gimplify.cc (gimplify_scan_omp_clauses): Handle OMP_CLAUSE_INIT, + OMP_CLAUSE_USE and OMP_CLAUSE_DESTROY. + (gimplify_omp_interop): New function. + (gimplify_expr): Replace sorry with call to gimplify_omp_interop. + * omp-builtins.def (BUILT_IN_GOMP_INTEROP): Define. + * omp-low.cc (scan_sharing_clauses): Handle OMP_CLAUSE_INIT, + OMP_CLAUSE_USE and OMP_CLAUSE_DESTROY. + (scan_omp_1_stmt): Handle GIMPLE_OMP_INTEROP. + (lower_omp_interop_action_clauses): New function. + (lower_omp_interop): Likewise. + (lower_omp_1): Handle GIMPLE_OMP_INTEROP. + +2025-03-21 Jason Merrill <jason@redhat.com> + + PR c++/114992 + * multiple_target.cc (create_dispatcher_calls): + remove_from_same_comdat_group before add_to_same_comdat_group. + +2025-03-21 Dhruv Chawla <dhruvc@nvidia.com> + + * config/aarch64/aarch64-cores.def (olympus): New entry. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/invoke.texi (AArch64 Options): Document the above. + +2025-03-21 Antoni Boucher <bouanto@zoho.com> + + * config/i386/i386-rust-and-jit.inc: New file. + * config/i386/i386-rust.cc: Move code to i386-rust-and-jit.inc. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * ipa-icf-gimple.cc (func_checker::compare_gimple_call): Return false + for gimple_call_must_tail_p mismatches. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * ipa-split.cc (split_function): Call gimple_call_set_must_tail + on the call to outlined partition if has_musttail and + !add_tsan_func_exit. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * tree-inline.cc (remap_gimple_stmt): Silently clear + gimple_call_must_tail_p on inlined call stmts if id->call_stmt + is a call without that flag set. + +2025-03-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/119235 + * config/s390/s390.cc (s390_hard_regno_mode_ok): Accept only + Pmode for registers AP/FP/RA. + +2025-03-21 Richard Biener <rguenther@suse.de> + + * cgraphunit.cc (symbol_table::finalize_compilation_unit): + Put early debug generation under TV_SYMOUT. + +2025-03-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/118914 + * combine.cc (recog_for_combine): Add old_nregs and new_nregs + argument (defaulting to 0). Update call to recog_for_combine_1. + (combine_split_insns): Add old_nregs and new_nregs arguments, + store the old and new max registers to them. + (try_combine): Update calls to combine_split_insns and + pass old_nregs and new_nregs for the i3 call to recog_for_combine. + (find_split_point): Update call to combine_split_insns; ignoring + the values there. + (recog_for_combine_1): Add old_nregs and new_nregs arguments, + if the insn was recognized (and not to no-op move), add the + REG_DEAD notes to pnotes argument. + +2025-03-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119389 + * tree-ssa-sccvn.cc (dominated_by_p_w_unex): Limit the number + of predecessors of a CFG merge we try to skip. + +2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + Revert: + 2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config.gcc: Fail in case of option --with-mode=esa. + * config/s390/s390.cc (s390_option_override_internal): Default + to z/Architecture mode. + * config/s390/s390.h (DRIVER_SELF_SPECS): Ditto. + * config/s390/s390.opt: Emit a warning for option -mesa. + * doc/invoke.texi: Document the change. + +2025-03-20 Filip Kastl <fkastl@suse.cz> + + * gimple-ssa-sccopy.cc (scc_copy_prop::propagate): Don't + increment after vec::unordered_remove(). + +2025-03-20 Richard Biener <rguenther@suse.de> + + * tree-core.h (function_decl_type): Make a scoped enum. + * tree.h (set_function_decl_type): Adjust. + (DECL_IS_OPERATOR_NEW_P): Likewise. + (DECL_SET_IS_OPERATOR_NEW): Likewise. + (DECL_IS_OPERATOR_DELETE_P): Likewise. + (DECL_SET_IS_OPERATOR_DELETE): Likewise. + (DECL_LAMBDA_FUNCTION_P): Likewise. + (DECL_SET_LAMBDA_FUNCTION): Likewise. + * lto-streamer-out.cc (hash_tree): Hash all of + FUNCTION_DECL_DECL_TYPE. + * tree-streamer-out.cc (pack_ts_function_decl_value_fields): + Adjust. + * config/aarch64/aarch64-simd-pragma-builtins.def (vcombine_mf8): + Use literal zero instead of NONE. + +2025-03-20 liuhongt <hongtao.liu@intel.com> + + PR target/117452 + * config/i386/i386.md (cbranchbf4): Use + ix86_fp_comparison_operator instead of comparison_operator. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2-512satcvtintrin.h: Add "s_" before + intrinsics' core name. + * config/i386/avx10_2satcvtintrin.h: Ditto. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2-512satcvtintrin.h: Add new intrinsics. + * config/i386/avx10_2satcvtintrin.h: Ditto. + * config/i386/i386-builtin-types.def: + Add DEF_FUNCTION_TYPE (V32HI, V32HF, V32HI, USI), + (V16SI, V16SF, V16SI, UHI), (V8DI, V8SF, V8DI, UQI), + (V8DI, V8DF, V8DI, UQI), (V8SI, V8DF, V8SI, UQI). + * config/i386/i386-builtin.def: Add new builtins. + * config/i386/i386-expand.cc: Handle V16SI_FTYPE_V16SF_V16SI_UHI, + V32HI_FTYPE_V32HF_V32HI_USI, V8DI_FTYPE_V8SF_V8DI_UQI, + V8DI_FTYPE_V8DF_V8DI_UQI, V8SI_FTYPE_V8DF_V8SI_UQI. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * config/i386/avx10_2-512satcvtintrin.h: Change *i[u]bs's type suffix + of intrin name. + * config/i386/avx10_2satcvtintrin.h: Ditto. + +2025-03-19 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/119270 + * ira-costs.cc (calculate_equiv_gains): Ignore equiv init insns + only for invariants. + +2025-03-19 David Malcolm <dmalcolm@redhat.com> + + PR c/119366 + * diagnostic-format-sarif.cc (test_message_with_embedded_link): + Convert diagnostic_context from one urlifier to a stack of + urlifiers, where each node in the stack tracks whether the + urlifier is owned or borrowed. + * diagnostic.cc (diagnostic_context::initialize): Likewise. + (diagnostic_context::finish): Likewise. + (diagnostic_context::set_urlifier): Delete. + (diagnostic_context::push_owned_urlifier): New. + (diagnostic_context::push_borrowed_urlifier): New. + (diagnostic_context::pop_urlifier): New. + (diagnostic_context::get_urlifier): Reimplement in terms of stack. + (diagnostic_context::override_urlifier): Delete. + * diagnostic.h (diagnostic_context::set_urlifier): Delete decl. + (diagnostic_context::override_urlifier): Delete decl. + (diagnostic_context::push_owned_urlifier): New decl. + (diagnostic_context::push_borrowed_urlifier): New decl. + (diagnostic_context::pop_urlifier): New decl. + (diagnostic_context::get_urlifier): Make return value const; hide + implementation. + (diagnostic_context::m_urlifier): Replace with... + (diagnostic_context::urlifier_stack_node): ... this and... + (diagnostic_context::m_urlifier_stack): ...this. + * gcc-urlifier.cc + (auto_override_urlifier::auto_override_urlifier): Reimplement. + (auto_override_urlifier::~auto_override_urlifier): Reimplement. + * gcc-urlifier.h (class auto_override_urlifier): Reimplement. + (auto_urlify_attributes::auto_urlify_attributes): Update for + pass-by-reference. + * gcc.cc (driver::global_initializations): Update for + reimplementation of urlifiers in terms of a stack. + * toplev.cc (general_init): Likewise. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + PR target/119357 + * config/i386/sse.md (pmovmskb 0xffff to ptest splitter, + *pmovsk_ptest_<mode>_avx512): Force operands[0] into a REG. + +2025-03-19 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-arches.def (...): Add SVE2p1. + * doc/invoke.texi (AArch64 Options): Document +sve2p1 in + -march=armv9.4-a. + +2025-03-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.h (ADDITIONAL_REGISTER_NAMES): Add + fa0-fa7, ft0-ft16, and fs0-fs7. + +2025-03-18 Georg-Johann Lay <avr@gjlay.de> + + PR target/119355 + * config/avr/avr-passes.cc (memento_t::apply): Only + read values[p.arg] when it is actually used. + +2025-03-18 Iain Sandoe <iain@sandoe.co.uk> + + PR cobol/119301 + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Add check for get_current_dir_name. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR c/116545 + * doc/extend.texi (musttail statement attribute): Document + that musttail GNU attribute can be used as well. + +2025-03-18 Michael Matz <matz@suse.de> + + * config/rs6000/rs6000.opt.urls: Regenerate. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + * doc/sourcebuild.texi (dg-output-file): Document. + +2025-03-18 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-ssa-sccopy.cc (scc_copy_prop::replace_scc_by_value): Dump + what is being replaced with what. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119307 + * lra.cc (lra_rtx_hash): Handle SUBREG. + +2025-03-18 Richard Biener <rguenther@suse.de> + + PR debug/101533 + * dwarf2out.cc (gen_type_die_with_usage): When we have + output the typedef already do nothing for a typedef variant. + Do not set TREE_ASM_WRITTEN on the type. + +2025-03-18 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/riscv.md (equality shifted-arith splitter): Do not + create op AND -1 as it won't be cleaned up post-reload. + +2025-03-18 Andrew Pinski <quic_apinski@quicinc.com> + + * configure: Regenerate. + * configure.ac: s/gcc_cv_ld64_macosx_version_min/gcc_cv_ld64_macos_version_min/. + +2025-03-17 Jeff Law <jlaw@ventanamicro.com> + + * config/riscv/bitmanip.md (*<or_optab>i<mode>_extrabit): Reject cases + where we only need to twiddle one bit. Fix formatting. + (*andi<mode>extrabit): Likewise. + +2025-03-17 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/119285 + * ira-costs.cc (equiv_can_be_consumed_p): Use 2 ways for + recognizing a valid insn after equiv insertion. + +2025-03-17 Michael Matz <matz@suse.de> + + PR target/112980 + * config/rs6000/rs6000.opt (msplit-patch-nops): New option. + * doc/invoke.texi (RS/6000 and PowerPC Options): Document it. + * config/rs6000/rs6000.h (machine_function.stop_patch_area_print): + New member. + * config/rs6000/rs6000.cc (rs6000_print_patchable_function_entry): + Emit split nops under control of that one. + * config/rs6000/rs6000-logue.cc (rs6000_output_function_prologue): + Add handling of split patch nops. + +2025-03-17 Michal Jires <mjires@suse.cz> + + * common.opt.urls: Regenerate. + +2025-03-17 Michal Jires <mjires@suse.cz> + + * doc/invoke.texi: (Optimize Options): + Add incremental LTO flags. + +2025-03-17 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119114 + * config/riscv/autovec.md: Apply & 0x1 mask when initializing + bitmask vector. + +2025-03-17 Ayan Shafqat <ayan.x.shafqat@gmail.com> + + * config/aarch64/arm_acle.h (__fma, __fmaf): New functions. + +2025-03-17 Richard Biener <rguenther@suse.de> + + * opts.cc (gen_producer_string): Record -D and -U + with _FORTIFY_SOURCE prefix. + +2025-03-16 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * config/riscv/riscv.md (reassociation splitters): Do not load the + adjusted addend into a register if it fits in a simm12. + +2025-03-16 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/113546 + * tree-cfg.cc (first_non_label_stmt): Rename to ... + (first_non_label_nondebug_stmt): This and use gsi_start_nondebug_after_labels_bb. + (assign_discriminators): Update call to first_non_label_nondebug_stmt. + +2025-03-16 Iain Sandoe <iain@sandoe.co.uk> + + Backported from master: + 2025-03-16 Iain Sandoe <iain@sandoe.co.uk> + + PR target/119172 + * config.in: Regenerate. + * config/darwin.h (DARWIN_PLATFORM_ID): Add the option to + use -macos_version_min where available. + * configure: Regenerate. + * configure.ac: Check for ld64 support of -macos_version_min. + +2025-03-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/116572 + * cgraph.cc (cgraph_update_edges_for_call_stmt): Do not update + edges of clones that are unexpanded thunk. Assert that the node + passed as the parameter is not an unexpanded thunk. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119287 + * match.pd (((X >> C1) & C2) * (1 << C1) to X & (C2 << C1)): Use + (convert @0) instead of @0 in the substitution. + +2025-03-14 Thomas Schwinge <thomas@codesourcery.com> + + PR target/92713 + PR target/101544 + * config/gcn/gcn.h (LIBSTDCXX): Don't set. + * config/nvptx/nvptx.h (LIBSTDCXX): Likewise. + +2025-03-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119274 + * tree-ssa-sccvn.cc (dominated_by_p_w_unex): Handle the + top block being the only executable forwarder to a CFG + merge. + +2025-03-14 Richard Sandiford <richard.sandiford@arm.com> + + * tree-vect-slp.cc (vect_build_slp_instance): Pass the new group + size (i) rather than 1 to vect_slp_prefer_store_lanes_p. + (vect_analyze_slp): Only force the use of load-lanes and + store-lanes if that is preferred for at least one load/store pair. + +2025-03-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119155 + * tree-vect-stmts.cc (vectorizable_store): Do not always + use vector element alignment for VMAT_STRIDED_SLP but + a more correct alignment towards both ends. + (vectorizable_load): Likewise. + +2025-03-14 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi (Alternate Keywords): Clean up text and remove + discussion of "restrict", which is not a GNU extension at all. + * doc/invoke.texi (C Dialect Options): Remove detailed discussion. + +2025-03-13 Jan Hubicka <hubicka@ucw.cz> + + PR ipa/119147 + * ipa-inline.cc: Include ipa-modref-tree.h and + ipa-modref.h. + (speculation_useful_p): If target is a clone, speculation is usef; + fix mixup of caller and callee; speculate also calls not considered + hot; consider modref summary also possibly useful for optimization. + * ipa-profile.cc (ipa_profile): Keep non-hot speculations. + +2025-03-13 Richard Biener <rguenther@suse.de> + + * tree.h (DECL_NOT_GIMPLE_REG_P): Update description. + +2025-03-13 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * common/config/aarch64/cpuinfo.h: Remove FEAT_PREDRES and FEAT_LS64*. + * config/aarch64/aarch64-option-extensions.def: Remove FMV support + for PREDRES. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + * match.pd: Extend pointer alignment folds so that they handle + the case where a constant is added before or after the alignment. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + * match.pd: Fold ((X >> C1) & C2) * (1 << C1) to X & (C2 << C1). + +2025-03-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119115 + * config/riscv/riscv-vsetvl.cc (reg_used): New function. + (reg_single_use_in_avl): Ditto. + (pre_vsetvl::fuse_local_vsetvl_info): Use reg_single_use_in_avl + when checking if vsetvl can be deleted. + +2025-03-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/117955 + * config/riscv/riscv-vsetvl.cc: Use LMUL/ratio from vsetvl with + larger SEW. + +2025-03-13 Matthias Klose <doko@ubuntu.com> + + * configure.ac: Add option --enable-versioned-jit. + * configure: Regenerate. + * Makefile.in: Move from jit/Make-lang.in, setting value from + configure.ac. + * doc/install.texi: Document option --enable-versioned-jit. + +2025-03-13 Xi Ruoyao <xry111@xry111.site> + + PR target/119238 + * config/loongarch/simd.md (<su>dot_prod<wvec_half><mode>): + Stop using structured binding. + +2025-03-12 Alex Coplan <alex.coplan@arm.com> + + PR rtl-optimization/116564 + * df-problems.cc (df_simulate_defs): For partial defs, mark the + register live (treat it as a RMW operation). + +2025-03-12 Richard Earnshaw <rearnsha@arm.com> + + PR target/115439 + * config/arm/predicates.md (vpr_register_operand): Allow type-punning + subregs. + +2025-03-12 Richard Sandiford <richard.sandiford@arm.com> + + PR target/116901 + * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): Allow + stmt_info to be null. + (aarch64_vector_costs::add_stmt_cost): Call count_ops even if + stmt_info is null. + +2025-03-12 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/116901 + * tree-vect-loop.cc (vectorizable_reduction): Set ncopies to + SLP_TREE_NUMBER_OF_VEC_STMTS for SLP. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + * tree.def (RAW_DATA_CST): Document meaning of NULL RAW_DATA_OWNER. + (CONSTRUCTOR): Document meaning of RAW_DATA_CST used as element + value. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119204 + PR middle-end/119219 + * builtins.cc (fold_builtin_2): Pass type as another argument + to fold_builtin_strspn and fold_builtin_strcspn. + (fold_builtin_strspn): Add type argument, use it instead of + size_type_node. + (fold_builtin_strcspn): Add type argument, use it instead of + TREE_TYPE (expr). + +2025-03-12 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2025-03-09 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/117467 + * ext-dce.cc (ext_dce_process_uses): When trivially possible advance + the iterator over the destination of a SET. + +2025-03-11 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/119131 + * config/aarch64/aarch64.cc (aarch64_valid_fp_move): Remove check + for !DECIMAL_FLOAT_MODE_P. + (aarch64_float_const_representable_p): Reject decimal floating modes. + * config/aarch64/aarch64.md (mov<mode>): Likewise. + +2025-03-11 Jonathan Wakely <jwakely@redhat.com> + + * doc/extend.texi (Common Variable Attributes): Fix grammar in + final sentence of -ftrivial-auto-var-init description. + +2025-03-11 Juergen Christ <jchrist@linux.ibm.com> + + * config/s390/s390.cc (s390_delegitimize_address): Add missing case. + +2025-03-11 Martin Jambor <mjambor@suse.cz> + + * tree-ssa-alias.cc (ao_compare::compare_ao_refs): Fix a + copy-and-paste error. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + * dwarf2out.cc (gen_compile_unit_die): Use DW_LANG_Cobol85 if + language_string is "GCC COBOL" rather than "Cobol". + +2025-03-11 Richard Biener <rguenther@suse.de> + + PR middle-end/119204 + * builtins.cc (fold_builtin_strcspn): Preserve the original + expression type. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + PR c/119183 + * tree.cc (skip_simple_arithmetic): If first operand of binary + expr is TREE_CONSTANT or TREE_READONLY with no side-effects, call + tree_invariant_p on that operand first instead of on the second. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + PR debug/119190 + * tree-complex.cc (update_complex_assignment, tree_lower_complex): + Perform simple dce on dce_worklist only if optimize. + +2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config.gcc: Fail in case of option --with-mode=esa. + * config/s390/s390.cc (s390_option_override_internal): Default + to z/Architecture mode. + * config/s390/s390.h (DRIVER_SELF_SPECS): Ditto. + * config/s390/s390.opt: Emit a warning for option -mesa. + * doc/invoke.texi: Document the change. + +2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/115835 + * config/s390/s390.cc (s390_insn_cost): Implement. + (TARGET_INSN_COST): Define. + +2025-03-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119166 + * tree-vect-stmts.cc (get_load_store_type): Guard SLP tree + access. + +2025-03-11 James K. Lowden <jklowden@symas.com> + + * doc/contrib.texi: Update for gcobol. + * doc/frontends.texi: Likewise. + * doc/install.texi: Likewise. + * doc/invoke.texi: Likewise. + * doc/sourcebuild.texi: Likewise. + * doc/standards.texi: Likewise. + +2025-03-11 James K. Lowden <jklowden@symas.com> + + * Makefile.in (installdirs): Create man3 directory. + * common.opt (static-libgcobol): New driver option. + * dwarf2out.cc (gen_compile_unit_die): Support Cobol as + source language. + +2025-03-10 Richard Sandiford <richard.sandiford@arm.com> + Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + PR target/115258 + * config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): Use + d.one_vector_p to decide whether op1 should be a copy of op0. + +2025-03-10 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/114991 + * ira-costs.cc (equiv_can_be_consumed_p): Add new argument invariant_p. + Add code for dealing with the invariant. + (calculate_equiv_gains): Don't consider init insns. Pass the new + argument to equiv_can_be_consumed_p. Don't treat invariant as + memory. + +2025-03-10 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/invoke.texi (Instrumentation Options): Fix typo introduced + in commit 313edeeeb607fe32da5633cfb6f91977add446f6. + +2025-03-10 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/115439 + * config/arm/mve.md (vec_vcmp, vec_vcmpu, vcond_mask): Use + vpr_register_operand predicate for MVE_VPRED operands. + +2025-03-10 Xi Ruoyao <xry111@xry111.site> + + PR target/119127 + * config/loongarch/loongarch.cc + (loongarch_reassoc_shift_bitwise): Sign extend mask to mode, + specially handle the case it's extended to -1. + * config/loongarch/loongarch.md + (loongarch_reassoc_shift_bitwise): Update the comment for the + special case. + +2025-03-10 Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * gimple-ssa-warn-access.cc (maybe_warn_nonstring_arg): Look through + multi-dimensional array types, stop at the innermost ARRAY_TYPE. + +2025-03-09 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/117467 + * ext-dce.cc (ext_dce_process_sets): Handle FP destinations better. + +2025-03-09 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/117467 + * ext-dce.cc (ext_dce_process_uses): When trivially possible advance + the iterator over the destination of a SET. + +2025-03-09 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118922 + * tree-ssa-phiopt.cc (value_replacement): Set empty_or_with_defined_p + to false when there is phi nodes for the middle bb. + +2025-03-09 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118457 + * gimplify.cc (modify_call_for_omp_dispatch): New, containing + code split from gimplify_call_expr and modified to emit tree + instead of gimple. Remove the error for falling through to a call + to the base function. + (expand_variant_call_expr): New, split from gimplify_variant_call_expr. + Call modify_call_for_omp_dispatch on calls to + variants in a dispatch construct context. + (gimplify_variant_call_expr): Make it call expand_variant_call_expr + to do the actual work. + (gimplify_call_expr): Remove sorry for calls involving both + dynamic/late selectors and adjust_args/append_args, and adjust + for new interface. Move adjust_args/append_args code to + modify_call_for_omp_dispatch. + (gimplify_omp_dispatch): Add some comments. + +2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi (Basic Asm): Document that AssemblerInstructions + can be an asm constexpr. + (Extended Asm): Move the notes about asm constexprs for + AssemblerTemplate and Clobbers to the corresponding subsections. + Remove the notes for OutputOperands and InputOperands and reword + misleading descriptions of the list item syntax. Note that + constraint strings can be asm constexprs. + (Asm constexprs): Use "title case" for subsection name. Be + explicit about what parts of the asm syntax this applies to and + that the parentheses are required. Correct markup and terminology. + +2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/67301 + * doc/extend.texi (Extended Asm): Clarify that the square brackets + around the asmSymbolicName of operands are a required part of + the syntax. + +2025-03-07 Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * tree.cc (get_attr_nonstring_decl): Look through all ARRAY_REFs, not + just one and handle COMPONENT_REF and MEM_REF after skipping those + rather than only when there wasn't ARRAY_REF. Formatting fix. + +2025-03-07 Kees Cook <kees@kernel.org> + Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * doc/invoke.texi (Wunterminated-string-initialization): Document + the new interaction between this warning and -Wc++-compat and that + initialization of decls with nonstring attribute aren't warned about. + +2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> + + PR sanitizer/56682 + * doc/invoke.texi (Instrumentation Options): Document that -g + is useful with -fsanitize=thread and -fsanitize=address. + Also mention -fno-omit-frame-pointer per the asan wiki. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/117477 + * config/aarch64/aarch64.cc (aarch64_count_saves): New function. + (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) + (aarch64_frame_allocation_cost): Likewise. + (TARGET_CALLEE_SAVE_COST): Define. + (TARGET_FRAME_ALLOCATION_COST): Likewise. + * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): + Replace with... + (ix86_callee_save_cost): ...this new hook. + (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST): Define. + * target.h (spill_cost_type, frame_cost_type): New enums. + * target.def (callee_save_cost, frame_allocation_cost): New hooks. + (ira_callee_saved_register_cost_scale): Delete. + * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. + * doc/tm.texi: Regenerate. + * hard-reg-set.h (hard_reg_set_popcount): New function. + * ira-color.cc (allocated_memory_p): New variable. + (allocated_callee_save_regs): Likewise. + (record_allocation): New function. + (assign_hard_reg): Use targetm.frame_allocation_cost to model + the cost of the first spill or first caller save. Use + targetm.callee_save_cost to model the cost of using new callee-saved + registers. Apply the exit rather than entry frequency to the cost + of restoring a register or deallocating the frame. Update the + new variables above. + (improve_allocation): Use record_allocation. + (color): Initialize allocated_callee_save_regs. + (ira_color): Initialize allocated_memory_p. + * targhooks.h (default_callee_save_cost): Declare. + (default_frame_allocation_cost): Likewise. + * targhooks.cc (default_callee_save_cost): New function. + (default_frame_allocation_cost): Likewise. + +2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> + + PR target/116708 + * doc/invoke.texi (x86 Options): Clarify how -msse4 and -mno-sse4 + interact with other SSE options. + +2025-03-07 Martin Jambor <mjambor@suse.cz> + + PR ipa/118318 + * ipa-cp.cc (adjust_clone_incoming_counts): Add a compatible_p check. + +2025-03-07 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm_neon.h: Try harder to detect if we have + the softfp ABI enabled. + +2025-03-07 Jakub Jelinek <jakub@redhat.com> + + PR c/112960 + PR c/117029 + * doc/extend.texi (Complex): Add I and J suffixes to the list of + complex suffixes, adjust for all of those being part of ISO C2Y, + clarify that for -fno-ext-numeric-literals none of those are + recognized as GNU extensions and for C++14 i is considered UDL + even for -fext-numeric-literals when <complex> is included. + +2025-03-07 Simon Martin <simon@nasilyan.com> + + * tree-vect-data-refs.cc: Define INCLUDE_ALGORITHM. + +2025-03-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118464 + PR tree-optimization/116855 + * doc/invoke.texi (min-pagesize): Update docs with vectorizer use. + * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): Delay + checks. + (vect_compute_data_ref_alignment): Remove alignment checks and move to + get_load_store_type, increase group access alignment. + (vect_enhance_data_refs_alignment): Add note to comment needing + investigating. + (vect_analyze_data_refs_alignment): Likewise. + (vect_supportable_dr_alignment): For group loads look at first DR. + * tree-vect-stmts.cc (get_load_store_type): + Perform safety checks for early break pfa. + * tree-vectorizer.h (dr_set_safe_speculative_read_required, + dr_safe_speculative_read_required, DR_SCALAR_KNOWN_BOUNDS): New. + (need_peeling_for_alignment): Renamed to... + (safe_speculative_read_required): .. This + (class dr_vec_info): Add scalar_access_known_in_bounds. + +2025-03-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118464 + PR tree-optimization/116855 + * config/aarch64/aarch64-sve.md (@extract_<last_op>_<mode>, + @fold_extract_<last_op>_<mode>, + @aarch64_fold_extract_vector_<last_op>_<mode>): Change SVE_FULL to + SVE_ALL. + * config/aarch64/iterators.md (vccore): Add more partial types. + +2025-03-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119145 + * tree-vectorizer.cc (try_vectorize_loop_1): Avoid BB + vectorizing an if-converted loop body when there's a .MASK_CALL + in the loop body. + +2025-03-07 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/115485 + * config/arm/arm.cc (require_pic_register): Fix typos in + comment. Handle fixed arm_pic_register. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/116125 + * tree-vect-data-refs.cc (vect_prune_runtime_alias_test_list): Make + the dr_with_seg_len alignment fields describe tha access sizes as + well as the pointer alignment. + * tree-data-ref.cc (create_intersect_range_checks): Don't compensate + for invalid alignment fields here. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + + PR target/119133 + * config/aarch64/aarch64.md + (*aarch64_bfi<GPI:mode><ALLX:mode>_<SUBDI_BITS>): Use + force_lowpart_subreg. + +2025-03-07 Richard Biener <rguenther@suse.de> + + PR middle-end/118801 + * tree-ssa-dce.cc (eliminate_unnecessary_stmts): Prune + sequences of uninterrupted DEBUG BEGIN_STMTs, keeping only + the last of a set with unique location. + +2025-03-07 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/113515 + * doc/invoke.texi (Warning Options): Improve -Wstringop-overflow + documentation. + +2025-03-07 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/avx10_2-512convertintrin.h + (_mm512_mask_cvtbf8_ph): Correct mask width. + (_mm512_maskz_cvtbf8_ph): Ditto. + * config/i386/avx10_2convertintrin.h + (_mm256_mask_cvtbf8_ph): Ditto. + (_mm256_maskz_cvtbf8_ph): Ditto. + +2025-03-06 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR rtl-optimization/119099 + * ext-dce.cc (ext_dce_rd_transfer_n): Do not allow the livein + set to shrink. + +2025-03-06 Simon Martin <simon@nasilyan.com> + + * config/i386/x86-tune-sched.cc (ix86_fuse_mov_alu_p): Fix + comment typo, paramter -> parameter. + * config/lm32/lm32.cc (lm32_std_gimplify_va_arg_expr): Likewise. + +2025-03-06 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR target/118351 + PR other/38768 + * common/config/aarch64/aarch64-common.cc: Enable early scheduling with + -O3 and higher. + * doc/invoke.texi (-fschedule-insns): Update comment. + +2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + + Revert: + 2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + + PR rtl-optimization/117477 + * config/aarch64/aarch64.cc (aarch64_count_saves): New function. + (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) + (aarch64_frame_allocation_cost): Likewise. + (TARGET_CALLEE_SAVE_COST): Define. + (TARGET_FRAME_ALLOCATION_COST): Likewise. + * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): + Replace with... + (ix86_callee_save_cost): ...this new hook. + (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST): Define. + * target.h (spill_cost_type, frame_cost_type): New enums. + * target.def (callee_save_cost, frame_allocation_cost): New hooks. + (ira_callee_saved_register_cost_scale): Delete. + * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. + * doc/tm.texi: Regenerate. + * hard-reg-set.h (hard_reg_set_popcount): New function. + * ira-color.cc (allocated_memory_p): New variable. + (allocated_callee_save_regs): Likewise. + (record_allocation): New function. + (assign_hard_reg): Use targetm.frame_allocation_cost to model + the cost of the first spill or first caller save. Use + targetm.callee_save_cost to model the cost of using new callee-saved + registers. Apply the exit rather than entry frequency to the cost + of restoring a register or deallocating the frame. Update the + new variables above. + (improve_allocation): Use record_allocation. + (color): Initialize allocated_callee_save_regs. + (ira_color): Initialize allocated_memory_p. + * targhooks.h (default_callee_save_cost): Declare. + (default_frame_allocation_cost): Likewise. + * targhooks.cc (default_callee_save_cost): New function. + (default_frame_allocation_cost): Likewise. + +2025-03-06 Richard Biener <rguenther@suse.de> + + PR lto/114501 + * ipa-free-lang-data.cc (find_decls_types_r): Explicitly + handle CONSTRUCTORs as walk_tree handling of those is + incomplete. + +2025-03-06 Alex Coplan <alex.coplan@arm.com> + + PR rtl-optimization/114492 + * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Check for singleton + move range before calling restrict_movement. + (pair_fusion::try_promote_writeback): Likewise. + +2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + + PR rtl-optimization/117477 + * config/aarch64/aarch64.cc (aarch64_count_saves): New function. + (aarch64_count_above_hard_fp_saves, aarch64_callee_save_cost) + (aarch64_frame_allocation_cost): Likewise. + (TARGET_CALLEE_SAVE_COST): Define. + (TARGET_FRAME_ALLOCATION_COST): Likewise. + * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): + Replace with... + (ix86_callee_save_cost): ...this new hook. + (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST): Define. + * target.h (spill_cost_type, frame_cost_type): New enums. + * target.def (callee_save_cost, frame_allocation_cost): New hooks. + (ira_callee_saved_register_cost_scale): Delete. + * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Delete. + (TARGET_CALLEE_SAVE_COST, TARGET_FRAME_ALLOCATION_COST): New hooks. + * doc/tm.texi: Regenerate. + * hard-reg-set.h (hard_reg_set_popcount): New function. + * ira-color.cc (allocated_memory_p): New variable. + (allocated_callee_save_regs): Likewise. + (record_allocation): New function. + (assign_hard_reg): Use targetm.frame_allocation_cost to model + the cost of the first spill or first caller save. Use + targetm.callee_save_cost to model the cost of using new callee-saved + registers. Apply the exit rather than entry frequency to the cost + of restoring a register or deallocating the frame. Update the + new variables above. + (improve_allocation): Use record_allocation. + (color): Initialize allocated_callee_save_regs. + (ira_color): Initialize allocated_memory_p. + * targhooks.h (default_callee_save_cost): Declare. + (default_frame_allocation_cost): Likewise. + * targhooks.cc (default_callee_save_cost): New function. + (default_frame_allocation_cost): Likewise. + +2025-03-06 Richard Biener <rguenther@suse.de> + + PR middle-end/119119 + * gimplify.cc (is_gimple_mem_rhs_or_call): All empty CTORs + are OK when not a register type. + +2025-03-05 Hannes Braun <hannes@hannesbraun.net> + + PR target/118942 + * config/arm/arm_neon.h (vld1q_s8_x3): Use int8_t instead of + uint16_t. + (vld1q_s16_x3): Use int16_t instead of uint16_t. + (vld1q_s8_x4): Likewise. + (vld1q_s16_x4): Likewise. + +2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR rtl-optimization/119046 + * config/aarch64/aarch64.cc (aarch64_evpc_dup): Use VOIDmode for + PARALLEL. + +2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR rtl-optimization/119046 + * rtlanal.cc (may_trap_p_1): Don't mark FP-mode PARALLELs as trapping. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118953 + * value-range.cc (irange::union_bitmask): Update m_bitmask if + get_bitmask () is unknown_p and m_bitmask is not even when the + semantic bitmask didn't change and returning false. + +2025-03-05 Richard Biener <rguenther@suse.de> + + PR middle-end/97323 + * tree.cc (gimple_canonical_types_compatible_p): Ignore + TYPE_MODE also for ARRAY_TYPE. + (verify_type): Likewise. + +2025-03-05 Xi Ruoyao <xry111@xry111.site> + + PR target/119084 + * config/loongarch/lasx.md (UNSPEC_LASX_XVLDX): Remove. + (lasx_xvldx): Remove. + * config/loongarch/lsx.md (UNSPEC_LSX_VLDX): Remove. + (lsx_vldx): Remove. + * config/loongarch/simd.md (QIVEC): New define_mode_iterator. + (<simd_isa>_<x>vldx): New define_expand. + * config/loongarch/loongarch.cc (loongarch_address_insns_1): New + static function with most logic factored out from ... + (loongarch_address_insns): ... here. Call + loongarch_address_insns_1 with reg_reg_cost = 1. + (loongarch_address_cost): Call loongarch_address_insns_1 with + reg_reg_cost = la_addr_reg_reg_cost. + +2025-03-04 Georg-Johann Lay <avr@gjlay.de> + + * doc/invoke.texi (AVR Optimization Options): New @subsubsection + for pure optimization options. + +2025-03-04 Oscar Gustafsson <oscar.gustafsson@gmail.com> + + * doc/extend.texi: Improve example for __builtin_bswap16. + +2025-03-04 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.h (TARGET_AVOID_FALSE_DEP_FOR_TZCNT): New macro. + (TARGET_AVOID_FALSE_DEP_FOR_BLS): New macro. + * config/i386/i386.md (*bmi_blsi_<mode>): Add splitter for false + dependency. + (*bmi_blsi_<mode>_ccno): Add splitter for false dependency. + (*bmi_blsi_<mode>_falsedep): New pattern. + (*bmi_blsmsk_<mode>): Add splitter for false dependency. + (*bmi_blsmsk_<mode>_falsedep): New pattern. + (*bmi_blsr_<mode>): Add splitter for false dependency. + (*bmi_blsr_<mode>_cmp): Add splitter for false dependency + (*bmi_blsr_<mode>_cmp_falsedep): New pattern. + * config/i386/x86-tune.def (X86_TUNE_AVOID_FALSE_DEP_FOR_TZCNT): New tune. + (X86_TUNE_AVOID_FALSE_DEP_FOR_BLS): New tune. + +2025-03-04 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.h (TARGET_FUSE_ALU_AND_BRANCH_MEM): New macro. + (TARGET_FUSE_ALU_AND_BRANCH_MEM_IMM): New macro. + (TARGET_FUSE_ALU_AND_BRANCH_RIP_RELATIVE): New macro. + * config/i386/x86-tune-sched.cc (ix86_fuse_mov_alu_p): Support + non-single-set. + (ix86_macro_fusion_pair_p): Allow ALU which only clobbers; + be more careful about immediates; check TARGET_FUSE_ALU_AND_BRANCH_MEM, + TARGET_FUSE_ALU_AND_BRANCH_MEM_IMM, TARGET_FUSE_ALU_AND_BRANCH_RIP_RELATIVE; + verify that we never use unsigned checks with inc/dec. + * config/i386/x86-tune.def (X86_TUNE_FUSE_ALU_AND_BRANCH): New tune. + (X86_TUNE_FUSE_ALU_AND_BRANCH_MEM): New tune. + (X86_TUNE_FUSE_ALU_AND_BRANCH_MEM_IMM): New tune. + (X86_TUNE_FUSE_ALU_AND_BRANCH_RIP_RELATIVE): New tune. + +2025-03-04 Tamar Christina <tamar.christina@arm.com> + + PR target/118892 + * config/aarch64/aarch64.md (copysign<GPF:mode>3): Use + force_lowpart_subreg instead of lowpart_subreg. + +2025-03-04 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118976 + * fold-const.cc (const_unop): Use ~ rather than - for BIT_NOT_EXPR. + * config/aarch64/aarch64.cc (aarch64_test_sve_folding): New function. + (aarch64_run_selftests): Run it. + +2025-03-04 Richard Sandiford <richard.sandiford@arm.com> + Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119002 + * simplify-rtx.cc + (simplify_context::simplify_logical_relational_operation): Handle + comparisons between CC values. If there is no evidence that the + CC values are unsigned, restrict the fold to always-true or + always-false results. + +2025-03-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119096 + * tree-vect-loop.cc (vect_transform_reduction): Use the + correct else value for .COND_fn. + +2025-03-03 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (struct aarch64_extension_info): Add field. + (aarch64_get_required_features): New. + * config/aarch64/aarch64-builtins.cc + (aarch64_simd_switcher::aarch64_simd_switcher): Rename to... + (aarch64_target_switcher::aarch64_target_switcher): ...this, + and extend to handle sve, nosimd and target pragmas. + (aarch64_simd_switcher::~aarch64_simd_switcher): Rename to... + (aarch64_target_switcher::~aarch64_target_switcher): ...this, + and extend to handle sve, nosimd and target pragmas. + (handle_arm_acle_h): Use aarch64_target_switcher. + (handle_arm_neon_h): Rename switcher and pass explicit flags. + (aarch64_general_init_builtins): Ditto. + * config/aarch64/aarch64-protos.h + (class aarch64_simd_switcher): Rename to... + (class aarch64_target_switcher): ...this, and add new members. + (aarch64_get_required_features): New prototype. + * config/aarch64/aarch64-sve-builtins.cc + (sve_switcher::sve_switcher): Delete + (sve_switcher::~sve_switcher): Delete + (sve_alignment_switcher::sve_alignment_switcher): New + (sve_alignment_switcher::~sve_alignment_switcher): New + (register_builtin_types): Use alignment switcher + (init_builtins): Rename switcher. + (handle_arm_neon_sve_bridge_h): Ditto. + (handle_arm_sme_h): Ditto. + (handle_arm_sve_h): Ditto, and use alignment switcher. + * config/aarch64/aarch64-sve-builtins.h + (class sve_switcher): Delete. + (class sme_switcher): Delete. + (class sve_alignment_switcher): New. + * config/aarch64/t-aarch64 (aarch64-builtins.o): Add $(REGS_H). + (aarch64-sve-builtins.o): Remove $(REG_H). + +2025-03-03 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/thumb1.md (split patterns for GEU and LEU): New. + +2025-03-03 Uros Bizjak <ubizjak@gmail.com> + + Revert: + 2025-03-03 Uros Bizjak <ubizjak@gmail.com> + + * combine.cc (distribute_notes): + Reverse negative logic in ternary operators. + +2025-03-03 Uros Bizjak <ubizjak@gmail.com> + + * combine.cc (distribute_notes): + Reverse negative logic in ternary operators. + +2025-03-03 Uros Bizjak <ubizjak@gmail.com> + + PR rtl-optimization/118739 + * combine.cc (distribute_notes) <case REG_UNUSED>: Correct the + logic when the register is used by I3. + +2025-03-03 Martin Jambor <mjambor@suse.cz> + + PR ipa/118785 + * ipa-cp.cc (ipa_vr_intersect_with_arith_jfunc): Handle non-conversion + unary operations separately before doing any conversions. Check + expr_type_first_operand_type_p for non-unary operations too. Fix type + of op_res. + +2025-03-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119057 + * tree-vect-loop.cc (check_reduction_path): Add argument + specifying whether we're analyzing the inner loop of a + double reduction. Do not allow extra uses outside of the + double reduction cycle in this case. + (vect_is_simple_reduction): Adjust. + +2025-03-03 Richard Biener <rguenther@suse.de> + + PR ipa/119067 + * ipa-devirt.cc (odr_types_equivalent_p): Check + TYPE_VECTOR_SUBPARTS for vectors. + +2025-03-02 Jeff Law <jlaw@ventanamicro.com> + + PR target/118934 + * config/riscv/corev.md (cv_branch): Adjust output template. + (branch): Likewise. + * config/riscv/riscv.md (branch): Likewise. + * config/riscv/riscv.cc (riscv_asm_output_opcode): Handle 'r' rather + than 'n'. + +2025-03-02 Jakub Jelinek <jakub@redhat.com> + + PR translation/118991 + * config/avr/avr.cc (avr_print_operand): Print ival into + a temporary buffer and use %s in output_operand_lossage to make + the diagnostics translatable. + +2025-03-02 Filip Kastl <fkastl@suse.cz> + + PR tree-optimization/117919 + * gimple-ssa-sccopy.cc (scc_copy_prop::propagate): Prune + statements that 'replace_uses_by ()' removed. + +2025-03-01 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Specific, *-*-freebsd*): Simplify description. + +2025-03-01 Jakub Jelinek <jakub@redhat.com> + + PR jit/117047 + * ggc-common.cc (ggc_internal_cleared_alloc_no_dtor): Pass size + rather than s as the first argument to ggc_internal_cleared_alloc. + +2025-03-01 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> + + PR target/118906 + * common/config/riscv/riscv-common.cc: fix zce to zcf + implication. + +2025-03-01 Jan Dubiec <jdx@o2.pl> + + PR target/114222 + * config/h8300/h8300.cc (h8300_init_libfuncs): For HImode override + calls to external ffs() (from newlib) with calls to __ffshi2() from + libgcc. The implementation of ffs() in newlib calls __builtin_ffs() + what causes infinite recursion and finally a stack overflow. + +2025-03-01 Jakub Jelinek <jakub@redhat.com> + + PR other/119052 + * input.cc (check_line): Don't call sscanf on non-null terminated + buffer, instead copy line.length () bytes from line.get_buffer () + to a local buffer, null terminate it and call sscanf on that. + Formatting fix. + (test_replacement): Just allocate maxline * 5 rather than maxline * 15 + bytes for the file. Formatting fix. + +2025-03-01 Jakub Jelinek <jakub@redhat.com> + + PR jit/117047 + * acinclude.m4 (gcc_CHECK_ATTRIBUTE_ALIAS): New. + * configure.ac: Add gcc_CHECK_ATTRIBUTE_ALIAS. + * ggc.h (ggc_internal_alloc): Remove ATTRIBUTE_MALLOC from + overload with finalizer pointer. Call ggc_internal_alloc_no_dtor + in inline overload without finalizer pointer. + (ggc_internal_alloc_no_dtor): Declare. + (ggc_internal_cleared_alloc): Remove ATTRIBUTE_MALLOC from + overload with finalizer pointer. Call + ggc_internal_cleared_alloc_no_dtor in inline overload without + finalizer pointer. + (ggc_internal_cleared_alloc_no_dtor): Declare. + (ggc_alloc): Call ggc_internal_alloc_no_dtor if no finalization + is needed. + (ggc_alloc_no_dtor): Call ggc_internal_alloc_no_dtor. + (ggc_cleared_alloc): Call ggc_internal_cleared_alloc_no_dtor if no + finalization is needed. + (ggc_vec_alloc): Call ggc_internal_alloc_no_dtor if no finalization + is needed. + (ggc_cleared_vec_alloc): Call ggc_internal_cleared_alloc_no_dtor if no + finalization is needed. + * ggc-page.cc (ggc_internal_alloc): If HAVE_ATTRIBUTE_ALIAS, turn + overload with finalizer into alias to ggc_internal_alloc_ and + rename it to ... + (ggc_internal_alloc_): ... this, make it extern "C". + (ggc_internal_alloc_no_dtor): New alias if HAVE_ATTRIBUTE_ALIAS, + otherwise new noinline wrapper. + * ggc-common.cc (ggc_internal_cleared_alloc): If HAVE_ATTRIBUTE_ALIAS, + turn overload with finalizer into alias to ggc_internal_alloc_ and + rename it to ... + (ggc_internal_cleared_alloc_): ... this, make it extern "C". + (ggc_internal_cleared_alloc_no_dtor): New alias if + HAVE_ATTRIBUTE_ALIAS, otherwise new noinline wrapper. + * ggc-none.cc (ggc_internal_alloc): If HAVE_ATTRIBUTE_ALIAS, turn + overload with finalizer into alias to ggc_internal_alloc_ and + rename it to ... + (ggc_internal_alloc_): ... this, make it extern "C". + (ggc_internal_alloc_no_dtor): New alias if HAVE_ATTRIBUTE_ALIAS, + otherwise new wrapper. + (ggc_internal_cleared_alloc): If HAVE_ATTRIBUTE_ALIAS, turn overload + with finalizer into alias to ggc_internal_alloc_ and rename it to ... + (ggc_internal_cleared_alloc_): ... this, make it extern "C". + (ggc_internal_cleared_alloc_no_dtor): New alias if + HAVE_ATTRIBUTE_ALIAS, otherwise new wrapper. + * genmatch.cc (ggc_internal_cleared_alloc, ggc_free): Formatting fix. + (ggc_internal_cleared_alloc_no_dtor): Define. + * config.in: Regenerate. + * configure: Regenerate. + +2025-03-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115871 + * omp-simd-clone.cc (simd_clone_adjust): For SIMD_CLONE_ARG_TYPE_MASK + and sc->mask_mode not VOIDmode, set elem_type to the characteristic + type rather than boolean_type_node. + +2025-03-01 Jan Dubiec <jdx@o2.pl> + + PR target/109189 + * config/h8300/h8300.cc (h8300_print_operand): Replace %ld format + strings with HOST_WIDE_INT_PRINT_DEC macro in order to silence + -Wformat warnings when building on Windows/MinGW64. + +2025-02-28 Martin Jambor <mjambor@suse.cz> + + PR ipa/118243 + * ipa-sra.cc (pull_accesses_from_callee): New parameters + caller_ipcp_ts and param_idx. Check that scalar pulled accesses would + not clash with a known IPA-CP aggregate constant. + (param_splitting_across_edge): Pass IPA-CP transformation summary and + caller parameter index to pull_accesses_from_callee. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR ipa/111245 + * ipa-modref.cc (modref_access_analysis::analyze_store): Do + not guard the check of whether the stmt could throw by + cfun->can_throw_non_call_exceptions. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117712 + * expr.cc (force_operand): Handle {,UNSIGNED_}FIX with + FIX operand using expand_fix on the inner FIX operand. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/87984 + * tree-ssa-dom.cc (dom_opt_dom_walker::optimize_stmt): Do + not perform redundant store elimination to hard register + variables. + * tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): + Likewise. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR middle-end/66279 + * gimplify.cc (gimplify_asm_expr): Copy TREE_PURPOSE before + rewriting it for "+" processing. + +2025-02-28 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): + Moved to ... + * config/i386/i386.cc (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): + Here. + +2025-02-27 Pan Li <pan2.li@intel.com> + + PR target/118931 + * config/riscv/riscv-v.cc (expand_const_vector): Add overflow to + smode check and clean up highest bits if overflow. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119030 + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Fix a pasto, + ll_unsignedp -> rl_unsignedp. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/118860 + * input.h (file_cache::tune): No longer static. Rename argument + from num_file_slots_ to num_file_slots. Formatting fix. + (file_cache::num_file_slots): Renamed to ... + (file_cache::m_num_file_slots): ... this. No longer static. + * input.cc (file_cache_slot::tune): Change return type from void to + size_t, return previous file_cache_slot::line_record_size value. + Formatting fixes. + (file_cache::tune): Rename argument from num_file_slots_ to + num_file_slots. Set m_num_file_slots rather than num_file_slots. + If m_num_file_slots or file_cache_slot::line_record_size changes, + delete[] m_file_slots and new it again. + (file_cache::num_file_slots): Remove definition. + (file_cache::lookup_file): Use m_num_file_slots rather than + num_file_slots. + (file_cache::evicted_cache_tab_entry): Likewise. + (file_cache::file_cache): Likewise. Initialize m_num_file_slots + to 16. + (file_cache::dump): Use m_num_file_slots rather than num_file_slots. + (file_cache_slot::get_next_line): Formatting fixes. + (file_cache_slot::read_line_num): Likewise. + (get_source_text_between): Likewise. + * toplev.cc (toplev::main): Call global_dc->get_file_cache ().tune + rather than file_cache::tune. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.h (MAX_FIXED_MODE_SIZE): '#define'. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.opt (-mfake-ptx-alloca): New. + * config/nvptx/nvptx-protos.h (nvptx_output_fake_ptx_alloca): + Declare. + * config/nvptx/nvptx.cc (nvptx_output_fake_ptx_alloca): New. + * config/nvptx/nvptx.md (define_insn "@nvptx_alloca_<mode>") + [!(TARGET_PTX_7_3 && TARGET_SM52)]: Use it for + '-mfake-ptx-alloca'. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.md (define_expand "allocate_stack") + [!TARGET_SOFT_STACK]: Move + 'sorry ("dynamic stack allocation not supported");'... + (define_insn "@nvptx_alloca_<mode>"): ... here. + +2025-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/108369 + * doc/invoke.texi: Add a note to clarify. Adjust some wording. + +2025-02-27 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/x86-tune.def + (X86_TUNE_DEST_FALSE_DEP_FOR_GLC): Add GNR, GNR-D, DMR. + (X86_TUNE_AVOID_256FMA_CHAINS): Ditto. + (X86_TUNE_AVX512_MOVE_BY_PIECES): Ditto. + (X86_TUNE_AVX512_STORE_BY_PIECES): Ditto. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + * gimple-range-phi.cc (phi_analyzer::process_phi): Fix comment typo, + dpoesn;t -> doesn't. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/116143 + * Makefile.in (EXTRA_BACKEND_OBJS): New variable. + (BACKEND): Use it before libbackend.a. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/118819 + * alias.cc (memrefs_conflict_p): Perform arithmetics on c, xsize and + ysize in poly_offset_int and return -1 if it is not representable in + poly_int64. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR c/119001 + * varasm.cc (output_constructor_regular_field): Don't fail + assertion if next is non-NULL and FIELD_DECL if + TREE_CODE (local->type) is UNION_TYPE. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR c/114870 + * ginclude/stddef.h (__STDC_VERSION_STDDEF_H__, unreachable): Don't + redefine multiple times if stddef.h is first included without __need_* + defines and later with them. Move nullptr_t and unreachable and + __STDC_VERSION_STDDEF_H__ definitions into the same + defined (__STDC_VERSION__) && __STDC_VERSION__ > 201710L #if block. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119002 + * config/arm/arm.h (REVERSE_CONDITION): Use CODE - the macro + argument - in the macro rather than code. + +2025-02-26 Vladimir N. Makarov <vmakarov@redhat.com> + + PR middle-end/119021 + * lra.cc (lra_asm_insn_error): Use lra_invalidate_insn_data + instead of lra_update_insn_regno_info. + * lra-assigns.cc (lra_split_hard_reg_for): Restore old code. + +2025-02-26 Alexandre Oliva <oliva@adacore.com> + + * doc/sourcebuild.texi: Add x86 effective target. + +2025-02-26 Alexandre Oliva <oliva@adacore.com> + + * doc/sourcebuild.texi (dg-do-if): Document. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/116143 + * simple-diagnostic-path.h (simple_diagnostic_path::num_events): Define + inline. + (simple_diagnostic_path::num_threads): Likewise. + * simple-diagnostic-path.cc (simple_diagnostic_path::num_events): + Remove out of line definition. + (simple_diagnostic_path::num_threads): Likewise. + +2025-02-25 Jason Merrill <jason@redhat.com> + + * doc/install.texi: 10.5 won't bootstrap with C++98. + +2025-02-25 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/115458 + * lra-int.h (LRA_MAX_FAILED_SPLITS): Define and check its value. + (lra_split_hard_reg_for): Change prototype. + * lra.cc (lra): Try to split hard reg range several times after a + failure. + * lra-assigns.cc (lra_split_hard_reg_for): Add an arg, a flag of + giving up. Report asm error and nullify the asm insn depending on + the arg value. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR translation/118991 + * config/pru/pru-pragma.cc (pru_pragma_ctable_entry): Use %wd + instead of %" HOST_WIDE_INT_PRINT "d to print a hwi in error. + +2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118654 + * config/i386/i386-d.cc (ix86_d_target_versions): Predefine GNU_CET. + (ix86_d_handle_target_cf_protection): New. + (ix86_d_register_target_info): Add 'CET' TargetInfo key. + +2025-02-24 Robin Dapp <rdapp@ventanamicro.com> + + PR target/114516 + * config/riscv/riscv-vector-costs.cc (compute_estimated_lmul): + Add pattern statements to program points. + +2025-02-24 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/118950 + * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Use + original LHS's type. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118915 + * tree-ssa-reassoc.cc (optimize_range_tests_to_bit_test): For + highj == NULL_TREE use TYPE_MAX_VALUE (TREE_TYPE (lowj)) rather + than TYPE_MAX_VALUE (type). + +2025-02-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118973 + * tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Calls + that alter control flow in unpredictable ways need to be + preserved. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/118993 + * gimplify.cc (gimplify_scan_omp_clauses): Fix diagnostics typo, + undfined -> undefined. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR c/117023 + * builtin-attrs.def (ATTR_NONNULL_IF_NONZERO): New DEF_ATTR_IDENT. + (ATTR_NOTHROW_NONNULL_IF12_LEAF, ATTR_NOTHROW_NONNULL_IF13_LEAF, + ATTR_NOTHROW_NONNULL_IF123_LEAF, ATTR_NOTHROW_NONNULL_IF23_LEAF, + ATTR_NOTHROW_NONNULL_1_IF23_LEAF, ATTR_PURE_NOTHROW_NONNULL_IF12_LEAF, + ATTR_PURE_NOTHROW_NONNULL_IF13_LEAF, + ATTR_PURE_NOTHROW_NONNULL_IF123_LEAF, + ATTR_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF, + ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF): New + DEF_ATTR_TREE_LIST. + * builtins.def (BUILT_IN_STRNDUP): Use + ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_IF12_LEAF instead of + ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_LEAF. + (BUILT_IN_STRNCAT, BUILT_IN_STRNCAT_CHK): Use + ATTR_NOTHROW_NONNULL_1_IF23_LEAF instead of ATTR_NOTHROW_NONNULL_LEAF. + (BUILT_IN_BCOPY, BUILT_IN_MEMCPY, BUILT_IN_MEMCPY_CHK, + BUILT_IN_MEMMOVE, BUILT_IN_MEMMOVE_CHK, BUILT_IN_STRNCPY, + BUILT_IN_STRNCPY_CHK): Use ATTR_NOTHROW_NONNULL_IF123_LEAF instead of + ATTR_NOTHROW_NONNULL_LEAF. + (BUILT_IN_MEMPCPY, BUILT_IN_MEMPCPY_CHK, BUILT_IN_STPNCPY, + BUILT_IN_STPNCPY_CHK): Use ATTR_NOTHROW_NONNULL_IF123_LEAF instead of + ATTR_RETNONNULL_NOTHROW_LEAF. + (BUILT_IN_BZERO, BUILT_IN_MEMSET, BUILT_IN_MEMSET_CHK): Use + ATTR_NOTHROW_NONNULL_IF13_LEAF instead of ATTR_NOTHROW_NONNULL_LEAF. + (BUILT_IN_BCMP, BUILT_IN_MEMCMP, BUILT_IN_STRNCASECMP, + BUILT_IN_STRNCMP): Use ATTR_PURE_NOTHROW_NONNULL_IF123_LEAF instead of + ATTR_PURE_NOTHROW_NONNULL_LEAF. + (BUILT_IN_STRNLEN): Use ATTR_PURE_NOTHROW_NONNULL_IF12_LEAF instead of + ATTR_PURE_NOTHROW_NONNULL_LEAF. + (BUILT_IN_MEMCHR): Use ATTR_PURE_NOTHROW_NONNULL_IF13_LEAF instead of + ATTR_PURE_NOTHROW_NONNULL_LEAF. + +2025-02-24 Lino Hsing-Yu Peng <linopeng@andestech.com> + + * config/riscv/riscv.cc: Set multi push regs bits. + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * config/bpf/bpf.md (define_expand "allocate_stack"): Emit + 'sorry, unimplemented: dynamic stack allocation not supported'. + * config/nvptx/nvptx.md (define_expand "allocate_stack") + [!TARGET_SOFT_STACK && !(TARGET_PTX_7_3 && TARGET_SM52)]: Likewise. + +2025-02-21 H.J. Lu <hjl.tools@gmail.com> + + * sese.cc (debug_edge): Append a newline. + +2025-02-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118954 + * tree-predcom.cc (ref_at_iteration): Make sure to not + associate the constant offset with DR_BASE_ADDRESS when + that is an offsetted pointer. + +2025-02-20 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-core.h: Add comments making clear that these + functions implicitly use global_dc. + +2025-02-20 David Malcolm <dmalcolm@redhat.com> + + * libsarifreplay.cc + (sarif_replayer::make_plain_text_within_result_message): Capture + which json::string was used. When reporting on unescaped "{" or + "}" in SARIF message strings, use that string rather than the + message object, and refer the user to §3.11.5 ("Messages with + placeholders") rather than §3.11.11 ("arguments"). Ideally we'd + place the error at the precise character, but that can't be done + without reworking json-parsing.cc's lexer::lex_string, which is + too invasive for stage 4. + (sarif_replayer::get_plain_text_from_mfms): Capture which + json::string was used. + (sarif_replayer::lookup_plain_text_within_result_message): + Likewise. + +2025-02-20 Gerald Pfeifer <gerald@pfeifer.com> + + PR target/69374 + * doc/install.texi (Specific, aarch64*-*-*): Drop note for + Binutils pre 2.24. + +2025-02-20 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-protos.h (aarch64_expand_sve_vec_cmp_float): + Remove can_invert_p argument and change return type to void. + * config/aarch64/aarch64.cc (aarch64_expand_sve_vec_cmp_float): + Likewise. + * config/aarch64/aarch64-sve.md (vec_cmp<mode><vpred>): Update call + accordingly. + +2025-02-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118521 + * tree-scalar-evolution.cc (final_value_replacement_loop): + Fold uses of the replaced PHI def. + +2025-02-20 Filip Kastl <fkastl@suse.cz> + + * doc/invoke.texi: Fix typo file-cache-files -> + file-cache-lines. + +2025-02-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/86270 + * tree-outof-ssa.cc (insert_backedge_copies): Pattern + match a single conflict in a loop condition and adjust + that avoiding the conflict if possible. + +2025-02-20 H.J. Lu <hjl.tools@gmail.com> + + Revert: + 2025-02-16 H.J. Lu <hjl.tools@gmail.com> + + PR target/109780 + PR target/109093 + * config/i386/i386.cc (ix86_update_stack_alignment): New. + (ix86_find_all_reg_use_1): Likewise. + (ix86_find_all_reg_use): Likewise. + (ix86_find_max_used_stack_alignment): Also check memory accesses + from registers defined by stack or frame registers. + +2025-02-20 H.J. Lu <hjl.tools@gmail.com> + + Revert: + 2025-02-17 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.cc (ix86_find_all_reg_use): + Scan only for SET RTX in PARALLEL. + +2025-02-19 David Malcolm <dmalcolm@redhat.com> + + PR other/118919 + * input.cc (file_cache_slot::m_file_path): Make non-const. + (file_cache_slot::evict): Free m_file_path. + (file_cache_slot::create): Store a copy of file_path if non-null. + (file_cache_slot::~file_cache_slot): Free m_file_path. + +2025-02-19 Pan Li <pan2.li@intel.com> + + PR middle-end/116351 + * tree-vect-loop.cc (vect_verify_loop_lens): Return false if the + loop_vinfo has relevant mode such as DImode. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (UNSPEC_LASX_XVSRARI): Remove. + (UNSPEC_LASX_XVSRLRI): Remove. + (lasx_xvsrari_<lsxfmt>): Remove. + (lasx_xvsrlri_<lsxfmt>): Remove. + * config/loongarch/lsx.md (UNSPEC_LSX_VSRARI): Remove. + (UNSPEC_LSX_VSRLRI): Remove. + (lsx_vsrari_<lsxfmt>): Remove. + (lsx_vsrlri_<lsxfmt>): Remove. + * config/loongarch/simd.md (simd_<optab>_imm_round_<mode>): New + define_insn. + (<simd_isa>_<x>v<insn>ri_<simdfmt>): New define_expand. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/simd.md (wvec_half): New define_mode_attr. + (<su>dot_prod<wvec_half><mode>): New define_expand. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/simd.md (even_odd): New define_int_attr. + (vec_widen_<su>mult_<even_odd>_<mode>): New define_expand. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/simd.md (LVEC): New define_mode_attr. + (simdfmt_as_i): Make it same as simdfmt for integer vector + modes. + (_f): New define_mode_attr. + * config/loongarch/lsx.md (lsx_vpickev_b): Remove. + (lsx_vpickev_h): Remove. + (lsx_vpickev_w): Remove. + (lsx_vpickev_w_f): Remove. + (lsx_vpickod_b): Remove. + (lsx_vpickod_h): Remove. + (lsx_vpickod_w): Remove. + (lsx_vpickev_w_f): Remove. + (lsx_pick_evod_<mode>): New define_insn. + (lsx_<x>vpick<ev_od>_<simdfmt_as_i><_f>): New + define_expand. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (UNSPEC_LASX_XVMADDWEV): Remove. + (UNSPEC_LASX_XVMADDWEV2): Remove. + (UNSPEC_LASX_XVMADDWEV3): Remove. + (UNSPEC_LASX_XVMADDWOD): Remove. + (UNSPEC_LASX_XVMADDWOD2): Remove. + (UNSPEC_LASX_XVMADDWOD3): Remove. + (lasx_xvmaddwev_h_b<u>): Remove. + (lasx_xvmaddwev_w_h<u>): Remove. + (lasx_xvmaddwev_d_w<u>): Remove. + (lasx_xvmaddwev_q_d): Remove. + (lasx_xvmaddwod_h_b<u>): Remove. + (lasx_xvmaddwod_w_h<u>): Remove. + (lasx_xvmaddwod_d_w<u>): Remove. + (lasx_xvmaddwod_q_d): Remove. + (lasx_xvmaddwev_q_du): Remove. + (lasx_xvmaddwod_q_du): Remove. + (lasx_xvmaddwev_h_bu_b): Remove. + (lasx_xvmaddwev_w_hu_h): Remove. + (lasx_xvmaddwev_d_wu_w): Remove. + (lasx_xvmaddwev_q_du_d): Remove. + (lasx_xvmaddwod_h_bu_b): Remove. + (lasx_xvmaddwod_w_hu_h): Remove. + (lasx_xvmaddwod_d_wu_w): Remove. + (lasx_xvmaddwod_q_du_d): Remove. + * config/loongarch/lsx.md (UNSPEC_LSX_VMADDWEV): Remove. + (UNSPEC_LSX_VMADDWEV2): Remove. + (UNSPEC_LSX_VMADDWEV3): Remove. + (UNSPEC_LSX_VMADDWOD): Remove. + (UNSPEC_LSX_VMADDWOD2): Remove. + (UNSPEC_LSX_VMADDWOD3): Remove. + (lsx_vmaddwev_h_b<u>): Remove. + (lsx_vmaddwev_w_h<u>): Remove. + (lsx_vmaddwev_d_w<u>): Remove. + (lsx_vmaddwev_q_d): Remove. + (lsx_vmaddwod_h_b<u>): Remove. + (lsx_vmaddwod_w_h<u>): Remove. + (lsx_vmaddwod_d_w<u>): Remove. + (lsx_vmaddwod_q_d): Remove. + (lsx_vmaddwev_q_du): Remove. + (lsx_vmaddwod_q_du): Remove. + (lsx_vmaddwev_h_bu_b): Remove. + (lsx_vmaddwev_w_hu_h): Remove. + (lsx_vmaddwev_d_wu_w): Remove. + (lsx_vmaddwev_q_du_d): Remove. + (lsx_vmaddwod_h_bu_b): Remove. + (lsx_vmaddwod_w_hu_h): Remove. + (lsx_vmaddwod_d_wu_w): Remove. + (lsx_vmaddwod_q_du_d): Remove. + * config/loongarch/simd.md (simd_maddw_evod_<mode>_<su>): + New define_insn. + (<simd_isa>_<x>vmaddw<ev_od>_<simdfmt_w>_<simdfmt><u>): New + define_expand. + (simd_maddw_evod_<mode>_hetero): New define_insn. + (<simd_isa>_<x>vmaddw<ev_od>_<simdfmt_w>_<simdfmt>u_<simdfmt>): + New define_expand. + (<simd_isa>_maddw<ev_od>_q_d<u>_punned): New define_expand. + (<simd_isa>_maddw<ev_od>_q_du_d_punned): New define_expand. + * config/loongarch/loongarch-builtins.cc + (CODE_FOR_lsx_vmaddwev_q_d): Define as a macro to override it + with the punned expand. + (CODE_FOR_lsx_vmaddwev_q_du): Likewise. + (CODE_FOR_lsx_vmaddwev_q_du_d): Likewise. + (CODE_FOR_lsx_vmaddwod_q_d): Likewise. + (CODE_FOR_lsx_vmaddwod_q_du): Likewise. + (CODE_FOR_lsx_vmaddwod_q_du_d): Likewise. + (CODE_FOR_lasx_xvmaddwev_q_d): Likewise. + (CODE_FOR_lasx_xvmaddwev_q_du): Likewise. + (CODE_FOR_lasx_xvmaddwev_q_du_d): Likewise. + (CODE_FOR_lasx_xvmaddwod_q_d): Likewise. + (CODE_FOR_lasx_xvmaddwod_q_du): Likewise. + (CODE_FOR_lasx_xvmaddwod_q_du_d): Likewise. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (UNSPEC_LASX_XVHADDW_Q_D): Remove. + (UNSPEC_LASX_XVHSUBW_Q_D): Remove. + (UNSPEC_LASX_XVHADDW_QU_DU): Remove. + (UNSPEC_LASX_XVHSUBW_QU_DU): Remove. + (lasx_xvh<addsub:optab>w_h<u>_b<u>): Remove. + (lasx_xvh<addsub:optab>w_w<u>_h<u>): Remove. + (lasx_xvh<addsub:optab>w_d<u>_w<u>): Remove. + (lasx_xvhaddw_q_d): Remove. + (lasx_xvhsubw_q_d): Remove. + (lasx_xvhaddw_qu_du): Remove. + (lasx_xvhsubw_qu_du): Remove. + (reduc_plus_scal_v4di): Call gen_lasx_haddw_q_d_punned instead + of gen_lasx_xvhaddw_q_d. + (reduc_plus_scal_v8si): Likewise. + * config/loongarch/lsx.md (UNSPEC_LSX_VHADDW_Q_D): Remove. + (UNSPEC_ASX_VHSUBW_Q_D): Remove. + (UNSPEC_ASX_VHADDW_QU_DU): Remove. + (UNSPEC_ASX_VHSUBW_QU_DU): Remove. + (lsx_vh<addsub:optab>w_h<u>_b<u>): Remove. + (lsx_vh<addsub:optab>w_w<u>_h<u>): Remove. + (lsx_vh<addsub:optab>w_d<u>_w<u>): Remove. + (lsx_vhaddw_q_d): Remove. + (lsx_vhsubw_q_d): Remove. + (lsx_vhaddw_qu_du): Remove. + (lsx_vhsubw_qu_du): Remove. + (reduc_plus_scal_v2di): Change the temporary register mode to + V1TI, and pun the mode calling gen_vec_extractv2didi. + (reduc_plus_scal_v4si): Change the temporary register mode to + V1TI. + * config/loongarch/simd.md (simd_h<optab>w_<mode>_<su>): New + define_insn. + (<simd_isa>_<x>vh<optab>w_<simdfmt_w><u>_<simdfmt><u>): New + define_expand. + (<simd_isa>_h<optab>w_q<u>_d<u>_punned): New define_expand. + * config/loongarch/loongarch-builtins.cc + (CODE_FOR_lsx_vhaddw_q_d): Define as a macro to override with + punned expand. + (CODE_FOR_lsx_vhaddw_qu_du): Likewise. + (CODE_FOR_lsx_vhsubw_q_d): Likewise. + (CODE_FOR_lsx_vhsubw_qu_du): Likewise. + (CODE_FOR_lasx_xvhaddw_q_d): Likewise. + (CODE_FOR_lasx_xvhaddw_qu_du): Likewise. + (CODE_FOR_lasx_xvhsubw_q_d): Likewise. + (CODE_FOR_lasx_xvhsubw_qu_du): Likewise. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lasx.md (UNSPEC_LASX_XVADDWEV): Remove. + (UNSPEC_LASX_XVADDWEV2): Remove. + (UNSPEC_LASX_XVADDWEV3): Remove. + (UNSPEC_LASX_XVSUBWEV): Remove. + (UNSPEC_LASX_XVSUBWEV2): Remove. + (UNSPEC_LASX_XVMULWEV): Remove. + (UNSPEC_LASX_XVMULWEV2): Remove. + (UNSPEC_LASX_XVMULWEV3): Remove. + (UNSPEC_LASX_XVADDWOD): Remove. + (UNSPEC_LASX_XVADDWOD2): Remove. + (UNSPEC_LASX_XVADDWOD3): Remove. + (UNSPEC_LASX_XVSUBWOD): Remove. + (UNSPEC_LASX_XVSUBWOD2): Remove. + (UNSPEC_LASX_XVMULWOD): Remove. + (UNSPEC_LASX_XVMULWOD2): Remove. + (UNSPEC_LASX_XVMULWOD3): Remove. + (lasx_xv<addsubmul:optab>wev_h_b<u>): Remove. + (lasx_xv<addsubmul:optab>wev_w_h<u>): Remove. + (lasx_xv<addsubmul:optab>wev_d_w<u>): Remove. + (lasx_xvaddwev_q_d): Remove. + (lasx_xvsubwev_q_d): Remove. + (lasx_xvmulwev_q_d): Remove. + (lasx_xv<addsubmul:optab>wod_h_b<u>): Remove. + (lasx_xv<addsubmul:optab>wod_w_h<u>): Remove. + (lasx_xv<addsubmul:optab>wod_d_w<u>): Remove. + (lasx_xvaddwod_q_d): Remove. + (lasx_xvsubwod_q_d): Remove. + (lasx_xvmulwod_q_d): Remove. + (lasx_xvaddwev_q_du): Remove. + (lasx_xvsubwev_q_du): Remove. + (lasx_xvmulwev_q_du): Remove. + (lasx_xvaddwod_q_du): Remove. + (lasx_xvsubwod_q_du): Remove. + (lasx_xvmulwod_q_du): Remove. + (lasx_xv<addmul:optab>wev_h_bu_b): Remove. + (lasx_xv<addmul:optab>wev_w_hu_h): Remove. + (lasx_xv<addmul:optab>wev_d_wu_w): Remove. + (lasx_xv<addmul:optab>wod_h_bu_b): Remove. + (lasx_xv<addmul:optab>wod_w_hu_h): Remove. + (lasx_xv<addmul:optab>wod_d_wu_w): Remove. + (lasx_xvaddwev_q_du_d): Remove. + (lasx_xvsubwev_q_du_d): Remove. + (lasx_xvmulwev_q_du_d): Remove. + (lasx_xvaddwod_q_du_d): Remove. + (lasx_xvsubwod_q_du_d): Remove. + * config/loongarch/lsx.md (UNSPEC_LSX_XVADDWEV): Remove. + (UNSPEC_LSX_VADDWEV2): Remove. + (UNSPEC_LSX_VADDWEV3): Remove. + (UNSPEC_LSX_VSUBWEV): Remove. + (UNSPEC_LSX_VSUBWEV2): Remove. + (UNSPEC_LSX_VMULWEV): Remove. + (UNSPEC_LSX_VMULWEV2): Remove. + (UNSPEC_LSX_VMULWEV3): Remove. + (UNSPEC_LSX_VADDWOD): Remove. + (UNSPEC_LSX_VADDWOD2): Remove. + (UNSPEC_LSX_VADDWOD3): Remove. + (UNSPEC_LSX_VSUBWOD): Remove. + (UNSPEC_LSX_VSUBWOD2): Remove. + (UNSPEC_LSX_VMULWOD): Remove. + (UNSPEC_LSX_VMULWOD2): Remove. + (UNSPEC_LSX_VMULWOD3): Remove. + (lsx_v<addsubmul:optab>wev_h_b<u>): Remove. + (lsx_v<addsubmul:optab>wev_w_h<u>): Remove. + (lsx_v<addsubmul:optab>wev_d_w<u>): Remove. + (lsx_vaddwev_q_d): Remove. + (lsx_vsubwev_q_d): Remove. + (lsx_vmulwev_q_d): Remove. + (lsx_v<addsubmul:optab>wod_h_b<u>): Remove. + (lsx_v<addsubmul:optab>wod_w_h<u>): Remove. + (lsx_v<addsubmul:optab>wod_d_w<u>): Remove. + (lsx_vaddwod_q_d): Remove. + (lsx_vsubwod_q_d): Remove. + (lsx_vmulwod_q_d): Remove. + (lsx_vaddwev_q_du): Remove. + (lsx_vsubwev_q_du): Remove. + (lsx_vmulwev_q_du): Remove. + (lsx_vaddwod_q_du): Remove. + (lsx_vsubwod_q_du): Remove. + (lsx_vmulwod_q_du): Remove. + (lsx_v<addmul:optab>wev_h_bu_b): Remove. + (lsx_v<addmul:optab>wev_w_hu_h): Remove. + (lsx_v<addmul:optab>wev_d_wu_w): Remove. + (lsx_v<addmul:optab>wod_h_bu_b): Remove. + (lsx_v<addmul:optab>wod_w_hu_h): Remove. + (lsx_v<addmul:optab>wod_d_wu_w): Remove. + (lsx_vaddwev_q_du_d): Remove. + (lsx_vsubwev_q_du_d): Remove. + (lsx_vmulwev_q_du_d): Remove. + (lsx_vaddwod_q_du_d): Remove. + (lsx_vsubwod_q_du_d): Remove. + (lsx_vmulwod_q_du_d): Remove. + * config/loongarch/loongarch-modes.def: Add V4TI and V1DI. + * config/loongarch/loongarch-protos.h + (loongarch_gen_stepped_int_parallel): New function prototype. + * config/loongarch/loongarch.cc (loongarch_print_operand): + Accept 'O' for printing "ev" or "od." + (loongarch_gen_stepped_int_parallel): Implement. + * config/loongarch/predicates.md + (vect_par_cnst_even_or_odd_half): New define_predicate. + * config/loongarch/simd.md (WVEC_HALF): New define_mode_attr. + (simdfmt_w): Likewise. + (zero_one): New define_int_iterator. + (ev_od): New define_int_attr. + (simd_<optab>w_evod_<mode:IVEC>_<su>): New define_insn. + (<simd_isa>_<x>v<optab>w<ev_od>_<simdfmt_w>_<simdfmt><u>): New + define_expand. + (simd_<optab>w_evod_<mode>_hetero): New define_insn. + (<simd_isa>_<x>v<optab>w<ev_od>_<simdfmt_w>_<simdfmt>u_<simdfmt>): + New define_expand. + (DIVEC): New define_mode_iterator. + (<simd_isa>_<optab>w<ev_od>_q_d<u>_punned): New define_expand. + (<simd_isa>_<optab>w<ev_od>_q_du_d_punned): Likewise. + * config/loongarch/loongarch-builtins.cc + (CODE_FOR_lsx_vaddwev_q_d): Define as a macro to override it + with the punned expand. + (CODE_FOR_lsx_vaddwev_q_du): Likewise. + (CODE_FOR_lsx_vsubwev_q_d): Likewise. + (CODE_FOR_lsx_vsubwev_q_du): Likewise. + (CODE_FOR_lsx_vmulwev_q_d): Likewise. + (CODE_FOR_lsx_vmulwev_q_du): Likewise. + (CODE_FOR_lsx_vaddwod_q_d): Likewise. + (CODE_FOR_lsx_vaddwod_q_du): Likewise. + (CODE_FOR_lsx_vsubwod_q_d): Likewise. + (CODE_FOR_lsx_vsubwod_q_du): Likewise. + (CODE_FOR_lsx_vmulwod_q_d): Likewise. + (CODE_FOR_lsx_vmulwod_q_du): Likewise. + (CODE_FOR_lsx_vaddwev_q_du_d): Likewise. + (CODE_FOR_lsx_vmulwev_q_du_d): Likewise. + (CODE_FOR_lsx_vaddwod_q_du_d): Likewise. + (CODE_FOR_lsx_vmulwod_q_du_d): Likewise. + (CODE_FOR_lasx_xvaddwev_q_d): Likewise. + (CODE_FOR_lasx_xvaddwev_q_du): Likewise. + (CODE_FOR_lasx_xvsubwev_q_d): Likewise. + (CODE_FOR_lasx_xvsubwev_q_du): Likewise. + (CODE_FOR_lasx_xvmulwev_q_d): Likewise. + (CODE_FOR_lasx_xvmulwev_q_du): Likewise. + (CODE_FOR_lasx_xvaddwod_q_d): Likewise. + (CODE_FOR_lasx_xvaddwod_q_du): Likewise. + (CODE_FOR_lasx_xvsubwod_q_d): Likewise. + (CODE_FOR_lasx_xvsubwod_q_du): Likewise. + (CODE_FOR_lasx_xvmulwod_q_d): Likewise. + (CODE_FOR_lasx_xvmulwod_q_du): Likewise. + (CODE_FOR_lasx_xvaddwev_q_du_d): Likewise. + (CODE_FOR_lasx_xvmulwev_q_du_d): Likewise. + (CODE_FOR_lasx_xvaddwod_q_du_d): Likewise. + (CODE_FOR_lasx_xvmulwod_q_du_d): Likewise. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/lsx.md (mov<LSX:mode>): Remove. + (movmisalign<LSX:mode>): Remove. + (mov<LSX:mode>_lsx): Remove. + * config/loongarch/lasx.md (mov<LASX:mode>): Remove. + (movmisalign<LASX:mode>): Remove. + (mov<LASX:mode>_lasx): Remove. + * config/loongarch/loongarch-modes.def (V1TI): Add. + (V2TI): Mention in the comment. + * config/loongarch/loongarch.md (mode): Add V1TI and V2TI. + * config/loongarch/simd.md (ALLVEC_TI): New mode iterator. + (mov<ALLVEC_TI:mode): New define_expand. + (movmisalign<ALLVEC_TI:mode>): Likewise. + (mov<ALLVEC_TI:mode>_simd): New define_insn_and_split. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch-protos.h + (loongarch_const_vector_vrepli): New function prototype. + * config/loongarch/loongarch.cc (loongarch_const_vector_vrepli): + Implement. + (loongarch_const_insns): Call loongarch_const_vector_vrepli + instead of loongarch_const_vector_same_int_p. + (loongarch_split_vector_move_p): Likewise. + (loongarch_output_move): Use loongarch_const_vector_vrepli to + pun operend[1] into a better mode if it's a const int vector, + and decide the suffix of [x]vrepli with the new mode. + * config/loongarch/constraints.md (YI): Call + loongarch_const_vector_vrepli instead of + loongarch_const_vector_same_int_p. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + PR target/115478 + * config/loongarch/loongarch.md (any_or_plus): New + define_code_iterator. + (bstrins_<mode>_for_ior_mask): Use any_or_plus instead of ior. + (bytepick_w_<bytepick_imm>): Likewise. + (bytepick_d_<bytepick_imm>): Likewise. + (bytepick_d_<bytepick_imm>_rev): Likewise. + +2025-02-19 Jeff Law <jlaw@ventanamicro.com> + + PR middle-end/113525 + * doc/invoke.texi (dump-rtl-sibling): Drop documentation for pass + removed long ago. + (dump-rtl-unshare): Likewise. + +2025-02-18 Andi Kleen <ak@gcc.gnu.org> + + * doc/invoke.texi: + +2025-02-18 David Malcolm <dmalcolm@redhat.com> + + * opts-diagnostic.cc (sarif_scheme_handler::make_sink): Put + properties in alphabetical order. + +2025-02-18 Robin Dapp <rdapp@ventanamicro.com> + + PR target/115703 + * config/riscv/riscv-vsetvl.cc: Use max_sew for calculating the + new LMUL. + +2025-02-18 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/108840 + * late-combine.cc (late_combine::check_register_pressure): + Take only allocatable registers into account when checking + the permissiveness of register classes. + +2025-02-18 Alex Coplan <alex.coplan@arm.com> + + PR rtl-optimization/118320 + * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Tweak wording in dump + message when punting on invalid use arrays. + +2025-02-18 Soumya AR <soumyaa@nvidia.com> + + * config/aarch64/tuning_models/generic_armv8_a.h: Updated prefetch + struct pointer. + +2025-02-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/98845 + * tree-ssa-tail-merge.cc (stmt_local_def): Consider a + def with no uses not local. + +2025-02-18 Pan Li <pan2.li@intel.com> + + PR target/118540 + * config/riscv/riscv-target-attr.cc (riscv_target_attr_parser::parse_arch): + Report error when cmd xlen is different with target attribute. + +2025-02-18 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386.opt.urls: Adjust the order for avx10.2 + and avx10.2-512 due to their order change in i386.opt. + +2025-02-18 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118805 + * gimple-fold.cc (fold_truth_andor_for_combine): Detect and + cope with zero-extension in signbit tests. Reject swapping + right-compare operands if rsignbit. + +2025-02-17 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.cc (ix86_find_all_reg_use): + Scan only for SET RTX in PARALLEL. + +2025-02-17 Uros Bizjak <ubizjak@gmail.com> + + PR middle-end/118288 + * builtins.cc (expand_builtin_crc_table_based): + Use gen_int_mode to emit constant integers with MSB set. + +2025-02-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118895 + * tree-ssa-sccvn.cc (vn_nary_build_or_lookup_1): Only allow + CSE if we can verify the result is available. + +2025-02-17 Georg-Johann Lay <avr@gjlay.de> + + PR target/118764 + * config/avr/gen-avr-mmcu-specs.cc (print_mcu) + [has CVT]: Mention CVT in header comment of generated specs file. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/i386.opt.urls: Regenetated. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_AVX10_1_UNSET): Adjust macro. + (OPTION_MASK_ISA2_AVX10_2_256_UNSET): Removed. + (OPTION_MASK_ISA2_AVX10_2_512_UNSET): Ditto. + (OPTION_MASK_ISA2_AVX10_2_UNSET): New. + (ix86_handle_option): Remove disable part for avx10.2-256. + Rename avx10.2-512 switch case to avx10.2 and adjust disable + part macro. + * common/config/i386/i386-isas.h: Adjust avx10.2 and + avx10.2-512. + * config/i386/driver-i386.cc + (host_detect_local_cpu): Do not append -mno-avx10.x-256 + for -march=native. + * config/i386/i386-options.cc + (ix86_valid_target_attribute_inner_p): Adjust avx10.2 and + avx10.2-512. + * config/i386/i386.opt: Reject Negative for mavx10.2-256. + Alias mavx10.2-512 to mavx10.2. Reject Negative for + mavx10.2-512. + * doc/extend.texi: Adjust documentation. + * doc/sourcebuild.texi: Ditto. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/i386-common.cc + (OPTION_MASK_ISA2_AVX2_UNSET): Change AVX10.1 unset macro. + (OPTION_MASK_ISA2_AVX10_1_256_UNSET): Removed. + (OPTION_MASK_ISA2_AVX10_1_512_UNSET): Removed. + (OPTION_MASK_ISA2_AVX10_1_UNSET): New. + (ix86_handle_option): Adjust AVX10.1 unset macro. + * common/config/i386/i386-isas.h: Remove avx10.1. + * config/i386/i386-options.cc + (ix86_valid_target_attribute_inner_p): Ditto. + (ix86_option_override_internal): Adjust warning message. + * config/i386/i386.opt: Remove mavx10.1. + * doc/extend.texi: Remove avx10.1 and adjust doc. + * doc/sourcebuild.texi: Ditto. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118815 + * config/i386/i386-options.cc (ix86_option_override_internal): + Do not check vector size conflict when AVX512 is not explicitly + set. + +2025-02-16 Jakub Jelinek <jakub@redhat.com> + + PR target/118248 + * config/riscv/riscv-string.cc (riscv_block_move_straight): Only + allocate REGS buffer if it will be needed. + +2025-02-16 Georg-Johann Lay <avr@gjlay.de> + + PR target/118764 + * config/avr/avr-c.cc (avr_cpu_cpp_builtins) + [TARGET_CVT]: Define __AVR_CVT__. + * doc/invoke.texi (AVR Built-in Macros): Document __AVR_CVT__. + +2025-02-16 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.cc (avr_result_regno_unused_p): New static function. + (avr_out_bitop): Only output result bytes that are used. + (avr_out_plus_1): Same. + +2025-02-16 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-protos.h (avr_builtin_supported_p): Remove. + * config/avr/avr.cc (avr_init_builtins): Don't initialize + non-available built-ins with NULL_TREE. + (avr_builtin_supported_p): Move to... + * config/avr/avr-c.cc: ...here. + (avr_resolve_overloaded_builtin): Run avr_builtin_supported_p. + +2025-02-16 H.J. Lu <hjl.tools@gmail.com> + + PR target/109780 + PR target/109093 + * config/i386/i386.cc (ix86_update_stack_alignment): New. + (ix86_find_all_reg_use_1): Likewise. + (ix86_find_all_reg_use): Likewise. + (ix86_find_max_used_stack_alignment): Also check memory accesses + from registers defined by stack or frame registers. + +2025-02-15 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/98028 + * vr-values.cc (check_for_binary_op_overflow): Try to use a known + relationship betwen op0/op1 to statically determine overflow state. + +2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> + + * config/riscv/autovec-opt.md + (*single_widen_first_<any_widen_binop:optab><any_extend:su><mode>): + New combine "bridge" pattern. + +2025-02-15 Keith Packard <keithp@keithp.com> + + * config/rx/rx.md (rx_cmpstrn): Correctly handle len=0 case. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * libsarifreplay.cc (sarif_replayer::handle_result_obj): Call + handle_fix_object if we see a single-element "fixes" array. + (sarif_replayer::handle_fix_object): New. + (sarif_replayer::handle_artifact_change_object): New. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * libsarifreplay.cc (should_add_rule_p): New. + (sarif_replayer::handle_result_obj): Use it to filter out rules + that don't make sense. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * libsarifreplay.cc (sarif_replayer::handle_result_obj): Treat any + relatedLocations without messages as secondary ranges within the + diagnostic. Doing so requires stashing the notes until after + the diagnostic has been finished, so that relatedLocations can be + walked in one pass. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/118881 + * doc/libgdiagnostics/topics/physical-locations.rst: Add + diagnostic_physical_location_get_file. + * libgdiagnostics++.h (physical_location::get_file): New wrapper. + (diagnostic::add_location): Likewise. + * libgdiagnostics.cc (diagnostic_manager::get_file_by_name): New. + (diagnostic_physical_location::get_file): New. + (diagnostic_physical_location_get_file): New. + * libgdiagnostics.h (diagnostic_physical_location_get_file): New. + * libgdiagnostics.map (diagnostic_physical_location_get_file): New. + * libsarifreplay.cc (class annotation): New. + (add_any_annotations): New. + (sarif_replayer::handle_result_obj): Collect vectors of + annotations in the calls to handle_location_object and apply them + to "err" and to "note" as appropriate. + (sarif_replayer::handle_thread_flow_location_object): Pass nullptr + for annotations. + (sarif_replayer::handle_location_object): Handle §3.28.6 + "annotations" property, using it to populate a new + "out_annotations" param. + +2025-02-15 Thomas Schwinge <thomas@codesourcery.com> + + * config/nvptx/nvptx.cc (nvptx_record_needed_fndecl): Tag as + 'static'. + +2025-02-15 Jin Ma <jinma@linux.alibaba.com> + + PR target/118872 + * config/riscv/riscv.cc (riscv_fntype_abi): Strengthen the logic + of the check to avoid missing the error report. + +2025-02-14 Georg-Johann Lay <avr@gjlay.de> + + PR target/118878 + * config/avr/avr.cc (avr_out_plus_1): Don't ICE on result of + paradoxical reg's register allocation. + +2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/94282 + PR target/113331 + * common/config/gcn/gcn-common.cc (gcn_except_unwind_info): 'return UI_TARGET;'. + * config/gcn/gcn.cc (gcn_asm_init_sections): New function. + (TARGET_ASM_INIT_SECTIONS): '#define'. + +2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/86660 + * common/config/nvptx/nvptx-common.cc (nvptx_except_unwind_info): + 'return UI_TARGET;'. + * config/nvptx/nvptx.cc (nvptx_assemble_integer): Handle + 'exception_section'. + (nvptx_output_section_asm_op, nvptx_asm_init_sections): New + functions. + (TARGET_ASM_INIT_SECTIONS): '#define'. + * config/nvptx/nvptx.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): + Don't '#define'. + (ASM_OUTPUT_DWARF_DELTA): '#define'. + +2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.cc (init_frag): New 'bool active' member. + (output_init_frag, nvptx_assemble_value, nvptx_assemble_integer) + (nvptx_output_skip, nvptx_assemble_decl_begin) + (nvptx_assemble_decl_end): Sanity-check its state. + +2025-02-14 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx.cc (nvptx_output_skip): Clarify case of + no or incomplete initializer. + +2025-02-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118852 + * tree-vect-slp.cc (vect_analyze_slp): For early-break + forced-live IVs make sure we create an appropriate + entry into the SLP graph. + +2025-02-14 Jakub Jelinek <jakub@redhat.com> + + PR debug/118790 + * tree.cc (struct gt_value_expr_mark_data): New type. + (gt_value_expr_mark_2): Don't call ggc_set_mark, instead check + ggc_marked_p. Treat data as gt_value_expr_mark_data * with pset + in it rather than address of the pset itself and push to be marked + VAR_DECLs into to_mark vec. + (gt_value_expr_mark_1): Change argument from hash_set<tree> * + to gt_value_expr_mark_data * and find pset in it. + (gt_value_expr_mark): Pass to traverse_noresize address of + gt_value_expr_mark_data object rather than hash_table<tree> and + for all entries in the to_mark vector after the traversal call + gt_ggc_mx. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/genopts/loongarch.opt.in: Add + option '-maddr-reg-reg-cost='. + * config/loongarch/loongarch-def.cc + (loongarch_rtx_cost_data::loongarch_rtx_cost_data): Initialize + addr_reg_reg_cost to 3. + * config/loongarch/loongarch-opts.cc + (loongarch_target_option_override): If '-maddr-reg-reg-cost=' + is not used, set it to the initial value. + * config/loongarch/loongarch-tune.h + (struct loongarch_rtx_cost_data): Add the member + addr_reg_reg_cost and its assignment function to the structure + loongarch_rtx_cost_data. + * config/loongarch/loongarch.cc (loongarch_address_insns): + Use la_addr_reg_reg_cost to set the cost of ADDRESS_REG_REG. + * config/loongarch/loongarch.opt: Regenerate. + * config/loongarch/loongarch.opt.urls: Regenerate. + * doc/invoke.texi: Add description of '-maddr-reg-reg-cost='. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118843 + * config/loongarch/loongarch-c.cc + (loongarch_update_cpp_builtins): Fix macro definition issues. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118828 + * config/loongarch/loongarch-c.cc (loongarch_pragma_target_parse): + Update the predefined macros. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-c.cc (builtin_undef): New macro. + (loongarch_cpu_cpp_builtins): Split to loongarch_update_cpp_builtins + and loongarch_define_unconditional_macros. + (loongarch_def_or_undef): New functions. + (loongarch_define_unconditional_macros): Likewise. + (loongarch_update_cpp_builtins): Likewise. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-target-attr.cc + (loongarch_pragma_target_parse): Move to ... + (loongarch_register_pragmas): Move to ... + * config/loongarch/loongarch-c.cc + (loongarch_pragma_target_parse): ... here. + (loongarch_register_pragmas): ... here. + * config/loongarch/loongarch-protos.h + (loongarch_process_target_attr): Function Declaration. + +2025-02-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/90579 + * tree-ssa-forwprop.cc (simplify_bitfield_ref): Move to + match.pd. + (pass_forwprop::execute): Adjust. + * match.pd (bit_field_ref (vec_perm ...)): New pattern + modeled after simplify_bitfield_ref. + * tree-vect-loop.cc (vect_expand_fold_left): Fold the + element extract stmt, combining it with the vector def. + +2025-02-13 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/118832 + * config/riscv/riscv-v.cc (expand_const_vector): Expand as + vlmax insn during lra. + +2025-02-13 Marek Polacek <polacek@redhat.com> + + PR driver/117739 + * doc/invoke.texi: Tweak wording for -Whardened. + * gcc.cc (driver_handle_option): If -z lazy or -z norelro was + specified, don't enable linker hardening. + (process_command): Don't check warn_hardened. + +2025-02-13 Ed Catmur <ed@catmur.uk> + Jason Merrill <jason@redhat.com> + + PR c++/70536 + * dwarf2out.cc (gen_formal_parameter_pack_die): Add name attr. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR debug/118790 + * gengtype.cc (write_roots): Remove cache variable, instead break from + the loop on match and test o for NULL. If the cache option has + non-empty string argument, call the specified function with v->name + as argument before calling gt_cleare_cache on it. + * tree.cc (gt_value_expr_mark_2, gt_value_expr_mark_1, + gt_value_expr_mark): New functions. + (value_expr_for_decl): Use GTY ((cache ("gt_value_expr_mark"))) rather + than just GTY ((cache)). + * doc/gty.texi (cache): Document optional argument of cache option. + +2025-02-13 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/114522 + * config/arm/arm-builtins.cc (arm_fold_aes_op): New function. + (arm_general_gimple_fold_builtin): New function. + * config/arm/arm-builtins.h (arm_general_gimple_fold_builtin): New + prototype. + * config/arm/arm.cc (arm_gimple_fold_builtin): Call + arm_general_gimple_fold_builtin as needed. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/118822 + PR c++/118833 + * tree-iterator.h (tsi_split_stmt_list): Declare. + * tree-iterator.cc (tsi_split_stmt_list): New function. + +2025-02-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure.ac (gcc_cv_ld_eh_frame_ciev3): Remove. + * configure, config.in: Regenerate. + * config/sol2.cc (solaris_override_options): Remove. + * config/sol2.h (SUBTARGET_OVERRIDE_OPTIONS): Remove. + * config/sol2-protos.h (solaris_override_options): Remove. + +2025-02-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * doc/install.texi (Specific, *-*-solaris2*): Updates for newer + Solaris 11.4 SRUs and binutils 2.44. + +2025-02-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/118835 + * config/s390/s390.cc (s390_valid_shift_count): Reject shift + count operands which do not trivially fit the scheme of + address operands. + +2025-02-13 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118817 + * tree-ssa-sccvn.cc (vn_nary_simplify): Do not process + CONSTRUCTOR NARY or update from CONSTRUCTOR simplified + gimple_match_op. + +2025-02-12 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/102150 + * loop-invariant.cc (find_invariant_insn): Treat inline-asm similar to + trapping instruction and only move them if always executed. + +2025-02-12 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/102150 + * ifcvt.cc (cheap_bb_rtx_cost_p): Return false if the insn + has an inline-asm in it. + +2025-02-12 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.opt.urls: Add -mcall-main. + +2025-02-12 Georg-Johann Lay <avr@gjlay.de> + + PR target/118806 + * config/avr/avr.opt (-mcall-main): New option and... + (avropt_call_main): ...variable. + * config/avr/avr.cc (avr_no_call_main_p): New variable. + (avr_insert_attributes) [-mno-call-main, main]: Add attributes + noreturn and section(".init9") to main. Set avr_no_call_main_p. + (avr_file_end) [avr_no_call_main_p]: Define symbol __call_main. + * doc/invoke.texi (AVR Options) <-mno-call-main>: Document. + <-mnodevicelib>: Extend explanation. + +2025-02-12 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/117790 + * tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg): + Set profile counts for {main,alt}_loop_exit_block. + +2025-02-12 Vineet Gupta <vineetg@rivosinc.com> + + * config/riscv/vector.md: vncvt substitute vnsrl. + vnsrl with x0 replace with immediate 0. + vneg substitute vrsub. + +2025-02-12 Jin Ma <jinma@linux.alibaba.com> + + PR target/118601 + * config/riscv/riscv-string.cc (expand_block_move): Check with new + constraint 'vl' instead of 'K'. + (expand_vec_setmem): Likewise. + (expand_vec_cmpmem): Likewise. + * config/riscv/riscv-v.cc (force_vector_length_operand): Likewise. + (expand_load_store): Likewise. + (expand_strided_load): Likewise. + (expand_strided_store): Likewise. + (expand_lanes_load_store): Likewise. + +2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/install.texi: Add missing comma after @xref to fix warning. + +2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/extend.texi: Fix a bunch of typos and other writing bugs. + * doc/invoke.texi: Likewise. + +2025-02-12 Sandra Loosemore <sloosemore@baylibre.com> + + * Makefile.in (TEXI_GCCINT_FILES): Remove interface.texi. + * doc/gccint.texi (Top): Remove menu entry for the "interface" node, + and include of interface.texi. + * doc/interface.texi: Delete. + +2025-02-12 Yangyu Chen <cyy@cyyself.name> + + * config/riscv/riscv-feature-bits.h (RISCV_VENDOR_FEATURE_BITS_LENGTH): Drop. + (struct riscv_vendor_feature_bits): Drop. + +2025-02-11 Jeff Law <jlaw@ventanamicro.com> + + PR target/115478 + * config/aarch64/iterators.md (any_or_plus): New code iterator. + * config/aarch64/aarch64.md (extr<mode>5_insn): Use any_or_plus. + (extr<mode>5_insn_alt, extrsi5_insn_uxtw): Likewise. + (extrsi5_insn_uxtw_alt, extrsi5_insn_di): Likewise. + +2025-02-11 Jason Merrill <jason@redhat.com> + + PR c++/188574 + * doc/invoke.texi: Adjust -frange-for-ext-temps documentation. + +2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-option-extensions.def + (SSVE_FP8FMA): Adjust formatting. + (FP8DOT4): Replace FP8FMA dependency with FP8. + (SSVE_FP8DOT4): Replace SSVE_FP8FMA dependency with SME2+FP8. + (FP8DOT2): Replace FP8DOT4 dependency with FP8. + (SSVE_FP8DOT2): Replace SSVE_FP8DOT4 dependency with SME2+FP8. + +2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> + + * omp-general.cc (omp_check_context_selector): Change + metadirective_p argument to a 3-way flag. Add extra check for + OMP_CTX_BEGIN_DECLARE_VARIANT. + * omp-general.h (enum omp_ctx_directive): New. + (omp_check_context_selector): Adjust declaration. + +2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> + + * omp-general.cc (omp_context_selector_props_compare): Handle + arbitrary expressions in the "user" and "device_num" selectors. + (omp_context_selector_set_compare): Detect mismatch when one + selector specifies a score and the other doesn't. + +2025-02-11 Martin Jambor <mjambor@suse.cz> + + PR lto/118125 + * ipa-fnsummary.cc (redirect_to_unreachable): Add checking assert + that the builtin_unreachable decl has attribute cold. + +2025-02-11 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/118792 + * libsarifreplay.cc (sarif_replayer::handle_region_object): Fix + off-by-one in handling of endColumn property so that the code + matches the comment and the SARIF spec (§3.30.8). + +2025-02-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118817 + * tree-ssa-pre.cc (fully_constant_expression): Fold into + the single caller. + (phi_translate_1): Refactor folded in fully_constant_expression. + * tree-ssa-sccvn.cc (vn_nary_simplify): Update the NARY with + the simplified expression. + +2025-02-11 H.J. Lu <hjl.tools@gmail.com> + + PR target/118825 + * config/i386/i386.h (ASM_OUTPUT_SYMBOL_REF): Replace x with + SYM. + +2025-02-11 YunQiang Su <syq@debian.org> + + * config.gcc: Add mips*64*-linux-muslabi64 triple support. + +2025-02-11 Jie Mei <jie.mei@oss.cipunited.com> + Xi Ruoyao <xry111@xry111.site> + + * config/mips/i6400.md (i6400_fpu_minmax): Include + fclass type. + (i6400_fpu_fadd): Include frint type. + * config/mips/mips.cc (AVAIL_NON_MIPS16): Add an entry + for __builtin_mipsr6_xxx. + (MIPSR6_BUILTIN_PURE): Same as above. + (CODE_FOR_mipsr6_min_a_s, CODE_FOR_mipsr6_min_a_d) + (CODE_FOR_mipsr6_max_a_s, CODE_FOR_mipsr6_max_a_d) + (CODE_FOR_mipsr6_class_s, CODE_FOR_mipsr6_class_d): + New code_aliasing macros. + (mips_builtins): Add mips32r6 min_a_s, min_a_d, max_a_s, + max_a_d, class_s, class_d builtins. + * config/mips/mips.h (ISA_HAS_FRINT): Define a new macro. + (ISA_HAS_FCLASS): Same as above. + * config/mips/mips.md (UNSPEC_FRINT): New unspec. + (UNSPEC_FCLASS): Same as above. + (type): Add frint and fclass. + (fmin_a_<mode>): Generates MINA.fmt instructions. + (fmax_a_<mode>): Generates MAXA.fmt instructions. + (rint<mode>2): Generates RINT.fmt instructions. + (fclass_<mode>): Generates CLASS.fmt instructions. + * config/mips/p6600.md (p6600_fpu_fadd): Include + frint type. + (p6600_fpu_fabs): Include fclass type. + +2025-02-11 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118813 + * config/i386/avx512bwintrin.h: Fix wrong __OPTIMIZE__ + wrap. + +2025-02-10 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/mkoffload.cc (enum elf_arch_code): Add + EF_AMDGPU_MACH_AMDGCN_NONE. + (elf_arch): Use enum elf_arch_code as type. + (tool_cleanup): Silence warning by removing tailing '.' from error. + (get_arch_name): Return enum elf_arch_code. + (check_for_missing_lib): New; print fatal error if the multilib + is not available but it is for the associate generic ISA. + (main): Call it. + +2025-02-10 Tobias Burnus <tburnus@baylibre.com> + + * doc/install.texi (GCN): Update section about multilibs and + required LLVM version. + +2025-02-10 Martin Jambor <mjambor@suse.cz> + + PR ipa/118097 + * ipa-cp.cc (ipa_get_jf_arith_result): Adjust comment. + (ipa_get_jf_pass_through_result): Removed. + (ipa_value_from_jfunc): Use directly ipa_get_jf_arith_result, do + not specify operation type but make sure we check and possibly + convert the result. + (get_val_across_arith_op): Remove the last parameter, always pass + NULL_TREE to ipa_get_jf_arith_result in its last argument. + (propagate_vals_across_arith_jfunc): Do not pass res_type to + get_val_across_arith_op. + (propagate_vals_across_pass_through): Add checking assert that + parm_type is not NULL. + +2025-02-10 Jakub Jelinek <jakub@redhat.com> + + PR target/118623 + * config/i386/i386.md (*bt<mode>): Represent bt as + compare:CCC of const0_rtx and zero_extract rather than + zero_extract and const0_rtx. + (*bt<SWI48:mode>_mask): Likewise. + (*jcc_bt<mode>): Likewise. Use LTU and GEU as flags test + instead of EQ and NE. + (*jcc_bt<mode>_mask): Likewise. + (*jcc_bt<SWI48:mode>_mask_1): Likewise. + (Help combine recognize bt followed by cmov splitter): Likewise. + (*bt<mode>_setcqi): Likewise. + (*bt<mode>_setncqi): Likewise. + (*bt<mode>_setnc<mode>): Likewise. + (*bt<mode>_setncqi_2): Likewise. + (*bt<mode>_setc<mode>_mask): Likewise. + +2025-02-09 Dario Gjorgjevski <dario.gjorgjevski@gmail.com> + + PR middle-end/117263 + * genautomata.cc (output_statistics): Avoid set but unnused warnings + when compiling with NDEBUG. + +2025-02-09 Jeff Law <jlaw@ventanamicro.com> + + PR target/118146 + * config/riscv/riscv.cc (riscv_legitimize_move): Handle subreg + of vector source better to avoid ICE. + +2025-02-08 Georg-Johann Lay <avr@gjlay.de> + + PR target/118764 + * doc/invoke.texi (AVR Options): Fix typos. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * config/gcn/gcn.md (exception_receiver): 'define_expand'. + * config/nvptx/nvptx.md (exception_receiver): Likewise. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * doc/sourcebuild.texi (Effective-Target Keywords): Clarify that + effective-target 'exceptions' and 'exceptions_enabled' are + orthogonal. + +2025-02-08 Jakub Jelinek <jakub@redhat.com> + + PR target/118776 + * config/i386/sse.md (<code><mode>3_mask): Use VI1248_AVX512VLBW + iterator rather than VI48_AVX512VL. + (<mask_codefor><code><mode>3<mask_name>): Rename to ... + (*avx512bw_<code><mode>3<mask_name>): ... this. Use + nonimmediate_operand rather than register_operand predicate and %v + rather than v constraint for operand 1 and adjust condition to reject + MEMs in both operand 1 and 2. + +2025-02-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/114522 + * config/aarch64/aarch64-builtins.cc (aarch64_fold_aes_op): New function. + (aarch64_general_gimple_fold_builtin): Call aarch64_fold_aes_op for crypto_aese + and crypto_aesd. + +2025-02-07 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (file_cache::m_line_recent, + m_line_recent_first, m_line_recent_last): Add. + (file_cache_slot::evict): Clear new fields. + (file_cache_slot::create): Clear new fields. + (file_cache_slot::file_cache_slot): Initialize new fields. + (file_cache_slot::~file_cache_slot): Release m_line_recent. + (file_cache_slot::get_next_line): Maintain ring buffer of lines + in m_line_recent. + (file_cache_slot::read_line_num): Use m_line_recent to look up + recent lines quickly. + +2025-02-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/118089 + * config/arm/arm.cc (arm_emit_multi_reg_pop): Restructure. + Don't emit LDR on thumb2 when POP can be used for smaller code. + Don't add a CFA adjust note when SP is popped off the stack. + +2025-02-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/118089 + * config/arm/arm.cc (arm_emit_multi_reg_pop): Add a CFA adjust + note to single-register POP instructions. + +2025-02-07 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/116244 + * ira-build.cc (create_insn_allocnos): Do not restrict the check for + subreg uses to allocno creation time. Do it for all uses. + +2025-02-07 Richard Biener <rguenther@suse.de> + + PR jit/118780 + * system.h: Check INCLUDE_DLFCN_H for including dlfcn.h instead + of ENABLE_PLUGIN. + * plugin.cc: Define INCLUDE_DLFCN_H. + +2025-02-07 Pan Li <pan2.li@intel.com> + + PR target/118103 + * config/riscv/riscv.cc (riscv_conditional_register_usage): Add + the VXRM as the global_regs. + +2025-02-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/118771 + * config/aarch64/aarch64.cc (aarch64_split_move): Assert that npieces is + greater than 0. + +2025-02-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115538 + * tree-vectorizer.h (vect_get_slp_scalar_def): Declare. + * tree-vect-slp.cc (vect_get_slp_scalar_def): New helper. + * tree-vect-generic.cc (expand_vector_conversion): Adjust. + * tree-vect-stmts.cc (vectorizable_conversion): For SLP + correctly look at ranges of the scalar defs of the SLP operand. + (supportable_indirect_convert_operation): Likewise. + +2025-02-07 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn.cc (gcn_hsa_declare_function_name): Update + 'amdhsa.version' output to match used code version. + * config/gcn/gen-gcn-device-macros.awk: Add a comment to + crosslink. + +2025-02-07 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.md + (*sel<code><GPR:mode>_using_<GPR2:mode>): Rename to ... + (*sel<code><GPR:mode>_using_<X:mode>): ... here. + (GPR2): Remove as nothing uses it now. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118514 + PR tree-optimization/118706 + * gimple-fold.cc (decode_field_reference): Refuse to consider + merging out-of-bounds BIT_FIELD_REFs. + (make_bit_field_load): Drop too-strict assert. + * tree-eh.cc (bit_field_ref_in_bounds_p): Rename to... + (access_in_bounds_of_type_p): ... this. Change interface, + export. + (tree_could_trap_p): Adjust. + * tree-eh.h (access_in_bounds_of_type_p): Declare. + +2025-02-07 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-devices.def (GCN_DEVICE): Add gfx9-generic, + gfx902, gfx904, gfx909, gfx1031, gfx1032, gfx1033, gfx1034, + gfx1035, gfx1101, gfx1102, gfx1150, gfx1151, gfx1152, and gfx1153. + Add a currently unused column linking, a specific ISA to a generic + one (if it exists). + * config/gcn/gcn-tables.opt: Regenerate + * doc/invoke.texi (AMD GCN): Add the the new gfc... and the older + gfx{10-3,11}-generic to -march= as 'experimental'. + +2025-02-07 Tobias Burnus <tburnus@baylibre.com> + + * config/gcn/gcn-devices.def (GCN_DEVICE): Change sramecc for + gfx906 to 'any'. + * config/gcn/gcn.cc (GCN_DEVICE): Add tailing ... to #define. + +2025-02-07 H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/111673 + PR rtl-optimization/115932 + PR rtl-optimization/116028 + PR rtl-optimization/117081 + PR rtl-optimization/117082 + PR rtl-optimization/118497 + * ira-color.cc (assign_hard_reg): Call the target hook for the + callee-saved register cost scale in epilogue and prologue. + * target.def (ira_callee_saved_register_cost_scale): New target + hook. + * targhooks.cc (default_ira_callee_saved_register_cost_scale): + New. + * targhooks.h (default_ira_callee_saved_register_cost_scale): + Likewise. + * config/i386/i386.cc (ix86_ira_callee_saved_register_cost_scale): + New. + (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): Likewise. + * doc/tm.texi: Regenerated. + * doc/tm.texi.in (TARGET_IRA_CALLEE_SAVED_REGISTER_COST_SCALE): + New. + +2025-02-06 Craig Blackmore <craig.blackmore@embecosm.com> + + * config/riscv/riscv.md: Move UNSPEC_SSP_SET and UNSPEC_SSP_TEST + to unspec enum. + +2025-02-06 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.opt.urls: Add mcvt. + +2025-02-06 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118756 + * tree-ssa-loop-ivopts.cc (contain_complex_addr_expr): Remove. + +2025-02-06 Georg-Johann Lay <avr@gjlay.de> + + PR target/118764 + * config/avr/avr.opt (-mcvt): New target option. + * config/avr/avr-arch.h (AVR_CVT): New enum value. + * config/avr/avr-mcus.def: Add AVR_CVT flag for devices that + support it. + * config/avr/avr.cc (avr_handle_isr_attribute) [TARGET_CVT]: Issue + an error when a vector number larger that 3 is used. + * config/avr/gen-avr-mmcu-specs.cc (McuInfo.have_cvt): New property. + (print_mcu) <*avrlibc_startfile>: Use crt<mcu>-cvt.o depending + on -mcvt (or issue an error when the device doesn't support a CVT). + * doc/invoke.texi (AVR Options): Document -mcvt. + +2025-02-06 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117506 + * loop-iv.cc (get_biv_step_1): For {ZERO,SIGN}_EXTEND + of PLUS apply {ZERO,SIGN}_EXTEND to op1. + +2025-02-06 Georg-Johann Lay <avr@gjlay.de> + + PR target/118768 + * config/avr/genmultilib.awk: Parse the AVR_MCU lines in + a more robust way w.r.t. white spaces. + +2025-02-06 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118561 + * config/loongarch/loongarch-builtins.cc + (loongarch_expand_builtin_lsx_test_branch): + NULL_RTX will not be returned when an error is detected. + (loongarch_expand_builtin): Likewise. + +2025-02-06 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/110449 + * tree-ssa-loop-manip.h (insert_iv_increment): Declare. + * tree-ssa-loop-manip.cc (insert_iv_increment): New function, + split out from... + (create_iv): ...here and generalized to gimple_seqs. + * tree-vect-loop.cc (vectorizable_induction): Use + standard_iv_increment_position and insert_iv_increment + to insert the IV increment. + +2025-02-06 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/117922 + * fold-mem-offsets.cc (pass_fold_mem_offsets::execute): + Do nothing for a highly connected CFG. + +2025-02-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118749 + * tree-vect-data-refs.cc (vector_alignment_reachable_p): Pass + in the vectorization factor, when that cannot maintain + the DRs target alignment do not claim we can reach that + by peeling. + +2025-02-05 Jeff Law <jlaw@ventanamicro.com> + + * config/bfin/bfin.md (abssi): Disable pattern. + +2025-02-05 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/115568 + * lra-remat.cc (create_cands): Check that output reload insn is + adjacent to given insn. Update a comment. + +2025-02-05 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_insn_cost): Give PARALLELs + the same cost as the costliest SET. + +2025-02-05 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117239 + * cselib.cc (cselib_init): Remove spurious closing paren in + the #ifdef STACK_ADDRESS_OFFSET specific code. + +2025-02-05 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117239 + * cselib.cc: Include predict.h. + (callmem): Change type from rtx to rtx[2]. + (cselib_preserve_only_values): Use callmem[0] rather than callmem. + (cselib_invalidate_mem): Optimize and don't try to invalidate + for the mem_rtx == callmem[1] case MEMs which clearly can't be + below the stack pointer. + (cselib_process_insn): Use callmem[0] rather than callmem. + For const/pure calls also call cselib_invalidate_mem (callmem[1]) + in !ACCUMULATE_OUTGOING_ARGS or cfun->calls_alloca functions. + (cselib_init): Initialize callmem[0] rather than callmem and also + initialize callmem[1]. + +2025-02-05 Richard Earnshaw <rearnsha@arm.com> + + PR target/118089 + * config/arm/arm.cc (thumb2_expand_return): Use LDM SP!, {PC} + when optimizing for size, or when there's no performance benefit over + LDR PC, [SP], #4. + (arm_expand_epilogue): Likewise. + +2025-02-05 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.md (*pop_multiple_with_writeback_and_return): Remove + constraints. Don't validate the first transfer register here. + +2025-02-05 Richard Earnshaw <rearnsha@arm.com> + + * config/arm/arm.cc (decompose_addr_for_ldm_stm): New function. + (ldm_stm_operation_p): Rework to clarify logic. Allow single + registers to be pushed or popped using LDM/STM. + +2025-02-05 Xi Ruoyao <xry111@xry111.site> + + PR tree-optimization/118727 + * tree-vect-patterns.cc (vect_recog_sad_pattern): Don't call + vect_look_through_possible_promotion on ABD inputs. + +2025-02-05 Sebastian Huber <sebastian.huber@embedded-brains.de> + + * config/arm/t-rtems: Add Cortex-M33 multilib. + +2025-02-04 Andi Kleen <ak@gcc.gnu.org> + + * doc/invoke.texi: Document file cache tunables. + * params.opt: Move auto tuning description to lines. + +2025-02-04 Ilya Leoshkevich <iii@linux.ibm.com> + + * config/s390/s390.cc (print_operand): Remove the no longer + necessary 31-bit and weak symbol handling. + * config/s390/s390.md (*movdi_64): Do not use @PLT with larl. + (*movsi_larl): Likewise. + (main_base_64): Likewise. + (reload_base_64): Likewise. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117113 + * gimple-loop-jam.cc (unroll_jam_possible_p): Detect when + we cannot handle virtual SSA update. + +2025-02-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/116926 + * optabs-query.cc (find_widening_optab_handler_and_mode): Fix + limit for `vec-mode -> scalar-mode` case. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/117611 + * combine.cc (simplify_shift_const_1): Bail if not + scalar int mode. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR lto/113207 + * ipa-free-lang-data.cc (free_lang_data_in_type): First drop + const/volatile qualifiers from function argument types, + then build a simplified type. + +2025-02-03 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md (*sibcall_pop_memory): + Disable for TARGET_INDIRECT_BRANCH_REGISTER + * config/i386/predicates.md (call_insn_operand): Enable when + "satisfies_constraint_Bw (op)" is true, instead of open-coding + constraint here. + (sibcall_insn_operand): Ditto with "satisfies_constraint_Bs (op)" + +2025-02-03 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_choose_vector_init_constant): + New function, split out from... + (aarch64_expand_vector_init_fallback): ...here. Use a bit- + reversed increment to find a constant index. Add support for + stepped constants. + +2025-02-03 John David Anglin <danglin@gcc.gnu.org> + + PR rtl-optimization/117248 + * config/pa/predicates.md (r25_operand): New predicate. + (r26_operand): Likewise. + * config/pa/pa.md: Use match_operand for r25 and r26 hard + register operands in mult, div, udiv, mod and umod millicode + patterns. + +2025-02-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118717 + * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): + Do not common stores referencing abnormal SSA names. + * tree-ssa-sink.cc (sink_common_stores_to_bb): Likewise. + +2025-02-03 Andi Kleen <ak@gcc.gnu.org> + + * input.cc (check_line): New. + (test_replacement): New function to test line caching. + (input_cc_tests): Call test_replacement + +2025-02-03 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (file_cache_slot::get_next_line): Implement + dynamic sizing of m_line_record based on input length. + * params.opt: (param_file_cache_lines): Set to 0 to size + dynamically. + +2025-02-03 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (total_lines_num): Remove. + (file_cache_slot::evict): Ditto. + (file_cache_slot::create): Ditto. + (file_cache_slot::set_content): Ditto. + (file_cache_slot::file_cache_slot): Ditto. + (file_cache_slot::dump): Ditto. + +2025-02-03 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (file_cache_slot::get_next_line): Use new algorithm + to maintain + (file_cache_slot::read_line_num): Use binary search for lookup. + +2025-02-03 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (file_cache::tune): New function. + * input.h (class file_cache): Make tunables non const. + * params.opt: Add new tunables. + * toplev.cc (toplev::main): Initialize input buffer context + tunables. + +2025-02-02 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/117411 + * doc/gm2.texi (Exception handling): New section. + (The ISO system module): Add description of COFF_T. + (Assembler language): Tidy up last sentance. + +2025-02-02 Lewis Hyatt <lhyatt@gmail.com> + + PR middle-end/115913 + * optc-save-gen.awk (cl_optimization_compare): Skip options with + CL_WARNING flag. + +2025-02-01 H.J. Lu <hjl.tools@gmail.com> + + PR target/118713 + * config/i386/i386-expand.cc (ix86_expand_call): Change "if + (TARGET_X32 ...)" back to "else if (TARGET_X32 ...)". + +2025-02-01 H.J. Lu <hjl.tools@gmail.com> + + PR target/118713 + * config/i386/constraints.md (Bs): Always disable if + TARGET_INDIRECT_BRANCH_REGISTER is true. + (Bw): Likewise. + * config/i386/i386-expand.cc (ix86_expand_call): Force indirect + call via register for x32 GOT slot call if + TARGET_INDIRECT_BRANCH_REGISTER is true. + * config/i386/i386-protos.h (ix86_nopic_noplt_attribute_p): New. + * config/i386/i386.cc (ix86_nopic_noplt_attribute_p): Make it + global. + * config/i386/i386.md (*call_got_x32): Disable indirect call via + memory for TARGET_INDIRECT_BRANCH_REGISTER. + (*call_value_got_x32): Likewise. + (*sibcall_value_pop_memory): Likewise. + * config/i386/predicates.md (constant_call_address_operand): + Return false if both TARGET_INDIRECT_BRANCH_REGISTER and + ix86_nopic_noplt_attribute_p are true. + +2025-02-01 David Malcolm <dmalcolm@redhat.com> + + * libsarifreplay.cc (sarif_replayer::handle_run_obj): Pass run to + handle_result_obj. + (sarif_replayer::handle_result_obj): Add run_obj param and pass it + to handle_location_object and handle_thread_flow_object. + (sarif_replayer::handle_thread_flow_object): Add run_obj param and + pass it to handle_thread_flow_location_object. + (sarif_replayer::handle_thread_flow_location_object): Add run_obj + param and pass it to handle_location_object. + (sarif_replayer::handle_location_object): Add run_obj param and + pass it to handle_logical_location_object. + (sarif_replayer::handle_logical_location_object): Add run_obj + param. If the run_obj is non-null and has "logicalLocations", + then use these "cached" logical locations if we see an "index" + property, as per §3.33.3 + +2025-02-01 Jeff Law <jlaw@ventanamicro.com> + + PR tree-optimization/114277 + * match.pd (a * (a || b) -> a): New pattern. + (a * !(a || b) -> 0): Likewise. + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR ipa/117432 + * ipa-icf-gimple.cc (func_checker::compare_asm_inputs_outputs): + Also return_false if operands have incompatible types. + (func_checker::compare_gimple_call): Check fntype1 vs. fntype2 + compatibility for all non-internal calls and assume fntype1 and + fntype2 are non-NULL for those. For calls to non-prototyped + calls or for stdarg_p functions after the last named argument (if any) + check type compatibility of call arguments. + +2025-01-31 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/116234 + * lra-constraints.cc (multiple_insn_refs_p): New function. + (curr_insn_transform): Use it. + +2025-01-31 Richard Biener <rguenther@suse.de> + + PR debug/100530 + * dwarf2out.cc (modified_type_die): Do not claim we handle + address-space qualification with dwarf_qual_info[]. + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118689 + PR modula2/115032 + * tree-ssa-loop-niter.cc (build_cltz_expr): Return NULL_TREE if fn is + NULL and use_ifn is false. + +2025-01-31 Richard Biener <rguenther@suse.de> + + * tree-vect-loop.cc (vect_analyze_loop_operations): Only + call vectorizable_lc_phi when not PURE_SLP. + (vectorizable_reduction): Do not claim having handled + the inner loop LC PHI for outer loop vectorization. + +2025-01-30 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/builtins.def (STRLEN_FLASH, STRLEN_FLASHX) + (STRLEN_MEMX): New DEF_BUILTIN's. + * config/avr/avr.cc (avr_ftype_strlen): New static function. + (avr_builtin_supported_p): New built-ins are not for AVR_TINY. + (avr_init_builtins) <strlen_flash_node, strlen_flashx_node, + strlen_memx_node>: Provide new fntypes. + (avr_fold_builtin) [AVR_BUILTIN_STRLEN_FLASH] + [AVR_BUILTIN_STRLEN_FLASHX, AVR_BUILTIN_STRLEN_MEMX]: Fold if + possible. + * doc/extend.texi (AVR Built-in Functions): Document + __builtin_avr_strlen_flash, __builtin_avr_strlen_flashx, + __builtin_avr_strlen_memx. + +2025-01-30 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/builtins.def (AVR_FIRST_C_ONLY_BUILTIN_ID): New macro. + * config/avr/avr-protos.h (avr_builtin_supported_p): New. + * config/avr/avr.cc (avr_builtin_supported_p): New function. + (avr_init_builtins): Only provide a built-in when it is supported. + * config/avr/avr-c.cc (avr_cpu_cpp_builtins): Only define the + __BUILTIN_AVR_<NAME> build-in defines when the associated built-in + function is supported. + * doc/extend.texi (AVR Built-in Functions): Add a note that + following built-ins are supported for only for GNU-C. + +2025-01-30 Jakub Jelinek <jakub@redhat.com> + Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/118696 + * config/s390/vector.md (*vec_cmpgt<mode><mode>_nocc_emu, + *vec_cmpgtu<mode><mode>_nocc_emu): Duplicate the first rather than + second V2DImode element. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR middle-end/118695 + * expr.cc (expand_expr_real_1): When expanding a MEM_REF + to a non-MEM by committing it to a stack temporary make + sure to handle misaligned accesses correctly. + +2025-01-30 Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (gimplify_call_expr): For OpenMP's append_args clause + processed by 'omp dispatch', update for internal-representation + changes; fix handling of hidden arguments, add some comments and + handle Fortran's value dummy and optional/pointer/allocatable actual + args. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR middle-end/118692 + * expr.cc (expand_expr_real_1): When expanding a MEM_REF + as BIT_FIELD_REF avoid large offsets for accesses not + overlapping the base object. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/114052 + * tree-ssa-loop-niter.cc (maybe_lower_iteration_bound): Check + for infinite subloops we might not exit. + +2025-01-30 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118320 + * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Commonize + the merge of input_uses and return early if it fails. + +2025-01-29 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118010 + PR modula2/118183 + PR modula2/116073 + * doc/gm2.texi (-fm2-file-offset-bits=): Change the default size + description to CSSIZE_T. + Add COFF_T to the list of data types exported by SYSTEM.def. + +2025-01-29 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118429 + * pair-fusion.cc (latest_hazard_before): Add an extra parameter + to say whether the instruction is a load or a store. If the + instruction is not a load or store and has memory side effects, + prevent it from being moved earlier. + (pair_fusion::find_trailing_add): Update call accordingly. + (pair_fusion_bb_info::fuse_pair): If the trailng addition had + a memory side-effect, use a tombstone to preserve it. + +2025-01-29 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr.md (*negsi2.libgcc): New insn. + +2025-01-29 Yoshinori Sato <ysato@users.sourceforge.jp> + + * config/rx/constraints.md (Q): Also check that the address + passes rx_is_restricted_memory-address. + +2025-01-29 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118505 + * gimple-ssa-split-paths.cc (poor_ifcvt_pred): Return + true for trapping statements. + +2025-01-29 Andrew Pinski <quic_apinski@quicinc.com> + + * gimple-ssa-split-paths.cc (poor_ifcvt_candidate_code): Remove CALL_EXPR handling. + +2025-01-29 Martin Jambor <mjambor@suse.cz> + Michal Jireš <mjires@suse.cz> + + PR tree-optimization/117892 + * tree-ssa-dse.cc (dse_optimize_call): Leave control-altering + noreturn calls alone. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * config/riscv/riscv.cc (riscv_expand_sstrunc): Leverage the helper + riscv_extend_to_xmode_reg with SIGN_EXTEND. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * config/riscv/riscv.cc (riscv_expand_sssub): Leverage the helper + riscv_extend_to_xmode_reg with SIGN_EXTEND. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * config/riscv/riscv.cc (riscv_expand_ssadd): Leverage the helper + riscv_extend_to_xmode_reg with SIGN_EXTEND. + +2025-01-29 Pan Li <pan2.li@intel.com> + + * config/riscv/riscv.cc (riscv_gen_zero_extend_rtx): Rename from ... + (riscv_extend_to_xmode_reg): Rename to and add rtx_code for + zero/sign extend if non-Xmode. + (riscv_expand_usadd): Leverage the renamed function with ZERO_EXTEND. + (riscv_expand_ussub): Ditto. + +2025-01-29 Richard Biener <rguenther@suse.de> + + PR middle-end/118684 + * expr.cc (expand_expr_real_1): When creating a stack local + during expansion of a handled component, when the base is + a SSA_NAME use its type alignment and avoid calling + get_object_alignment. + +2025-01-28 Richard Biener <rguenther@suse.de> + + PR middle-end/118684 + * expr.cc (expand_expr_real_1): When expanding a reference + based on a register and we end up needing a MEM make sure + that's aligned as the original reference required. + +2025-01-28 David Malcolm <dmalcolm@redhat.com> + + * input.cc (file_cache_slot::dump): Show indices within + m_line_record when dumping entries. + +2025-01-28 David Malcolm <dmalcolm@redhat.com> + + PR other/118675 + * diagnostic-format-sarif.cc: Define INCLUDE_STRING. + (escape_braces): New. + (set_string_property_escaping_braces): New. + (sarif_builder::make_message_object): Escape braces in the "text" + property. + (sarif_builder::make_message_object_for_diagram): Likewise, and + for the "markdown" property. + (sarif_builder::make_multiformat_message_string): Likewise for the + "text" property. + (xelftest::test_message_with_braces): New. + (selftest::diagnostic_format_sarif_cc_tests): Call it. + +2025-01-28 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/117270 + * tree-vect-slp.cc (vectorizable_slp_permutation_1): Make nperms + account for the number of times that each permutation will be used + during transformation. + +2025-01-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/112859 + * tree-loop-distribution.cc + (loop_distribution::pg_add_dependence_edges): Add comment. + +2025-01-28 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118663 + * lra-constraints.cc (invalid_mode_reg_p): Check empty + reg_class_contents. + +2025-01-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117424 + * tree-eh.cc (tree_could_trap_p): Verify the base is + fully contained within a decl. + +2025-01-28 Thomas Schwinge <tschwinge@baylibre.com> + + * tree-pretty-print.cc (dump_omp_clause): Clarify + 'OMP_CLAUSE_MAP_RUNTIME_IMPLICIT_P'. + +2025-01-28 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/118638 + * combine.cc (make_extraction): Only optimize (mult x 2^n) if len is + larger than 1. + +2025-01-28 Richard Sandiford <richard.sandiford@arm.com> + + * tree-vect-slp.cc (vectorizable_slp_permutation_1): Remove + extra newline from dump message. + +2025-01-28 Jeff Law <jlaw@ventanamicro.com> + + PR target/114085 + * config/h8300/constraints.md (U): No longer accept REGs. + * config/h8300/logical.md (andqi3_2): Use "rU" rather than "U". + (andqi3_2_clobber_flags, andqi3_1, <code>qi3_1): Likewise. + * config/h8300/testcompare.md (tst_extzv_1_n): Likewise. + +2025-01-27 Robin Dapp <rdapp@ventanamicro.com> + + PR target/117173 + * config/riscv/riscv-v.cc (shuffle_generic_patterns): Only + support single-source permutes by default. + * config/riscv/riscv.opt: New param "riscv-two-source-permutes". + +2025-01-27 John David Anglin <danglin@gcc.gnu.org> + + PR c++/116524 + * configure.ac: Check for munmap and msync. + * configure: Regenerate. + * config.in: Regenerate. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118653 + * tree-vect-loop.cc (vectorizable_live_operation): Also allow + out-of-loop debug uses. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/118662 + * combine.cc (try_combine): When re-materializing a load + from an extended reg by a lowpart subreg make sure we're + not dealing with vector or complex modes. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR middle-end/118643 + * expr.cc (expand_expr_real_1): Avoid falling back to BIT_FIELD_REF + expansion for negative offset. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/112859 + PR tree-optimization/115347 + * tree-loop-distribution.cc + (loop_distribution::pg_add_dependence_edges): For a zero + distance vector still make sure to not have an inner + loop with zero distance. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118637 + * match.pd: Canonicalize unsigned division by power of two to + right shift. + +2025-01-27 Soumya AR <soumyaa@nvidia.com> + + PR target/118490 + * match.pd: Added ! to verify that log/exp (CST) can be constant folded. + +2025-01-26 Ilya Leoshkevich <iii@linux.ibm.com> + + * asan.cc (asan_emit_stack_protection): Always zero the flag + unless it is cleared by the __asan_stack_free_N() libcall. + +2025-01-26 Pan Li <pan2.li@intel.com> + + PR target/118103 + * config/riscv/riscv.cc (riscv_conditional_register_usage): Add + the FRM as the global_regs. + +2025-01-25 Andi Kleen <ak@gcc.gnu.org> + + PR preprocessor/118168 + * input.cc (file_cache_slot::m_error): New field. + (file_cache_slot::create): Clear m_error. + (file_cache_slot::file_cache_slot): Clear m_error. + (file_cache_slot::read_data): Set m_error on error. + (file_cache_slot::get_next_line): Use m_error instead of ferror. + +2025-01-25 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * config/riscv/riscv.md (mvconst_internal): Reject single bit + constants. + * config/riscv/riscv.cc (riscv_gen_zero_extend_rtx): Improve + handling constants. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V9_5A): Add CPA. + * config/aarch64/aarch64-option-extensions.def (CPA): New. + * doc/invoke.texi: Document +cpa. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * doc/invoke.texi: Add +wfxt and +xs to armv9.2-a + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V9_5A): New. + * doc/invoke.texi: Document armv9.5-a option. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc: Assert that CRYPTO + bit is not set. + * config/aarch64/aarch64-feature-deps.h + (info<FEAT>.explicit_on): Unset CRYPTO bit. + (cpu_##CORE_IDENT): Ditto. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (aarch64_rewrite_selected_cpu): Refactor and inline into... + (aarch64_rewrite_mcpu): this. + * config/aarch64/aarch64-protos.h + (aarch64_rewrite_selected_cpu): Delete. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (aarch64_get_arch_string_for_assembler): New. + (aarch64_rewrite_march): New. + (aarch64_rewrite_selected_cpu): Call new function. + * config/aarch64/aarch64-elf.h (ASM_SPEC): Remove identity mapping. + * config/aarch64/aarch64-protos.h + (aarch64_get_arch_string_for_assembler): New. + * config/aarch64/aarch64.cc + (aarch64_declare_function_name): Call new function. + (aarch64_start_file): Ditto. + * config/aarch64/aarch64.h + (EXTRA_SPEC_FUNCTIONS): Use new macro name. + (MCPU_TO_MARCH_SPEC): Rename to... + (MARCH_REWRITE_SPEC): ...this, and extend the spec rule. + (aarch64_rewrite_march): New declaration. + (MCPU_TO_MARCH_SPEC_FUNCTIONS): Rename to... + (AARCH64_BASE_SPEC_FUNCTIONS): ...this, and add new function. + (ASM_CPU_SPEC): Use new macro name. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (aarch64_get_all_extension_candidates): Inline into... + (aarch64_print_hint_for_extensions): ...this. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (aarch64_get_all_extension_candidates): Move within file. + (aarch64_print_hint_candidates): Move from aarch64.cc. + (aarch64_print_hint_for_extensions): Ditto. + (aarch64_print_hint_for_arch): Ditto. + (aarch64_print_hint_for_core): Ditto. + (enum aarch_parse_opt_result): Ditto. + (aarch64_parse_arch): Ditto. + (aarch64_parse_cpu): Ditto. + (aarch64_parse_tune): Ditto. + (aarch64_validate_march): Ditto. + (aarch64_validate_mcpu): Ditto. + (aarch64_validate_mtune): Ditto. + * config/aarch64/aarch64-protos.h + (aarch64_rewrite_selected_cpu): Move within file. + (aarch64_print_hint_for_extensions): Share function prototype. + (aarch64_print_hint_for_arch): Ditto. + (aarch64_print_hint_for_core): Ditto. + (enum aarch_parse_opt_result): Ditto. + (aarch64_validate_march): Ditto. + (aarch64_validate_mcpu): Ditto. + (aarch64_validate_mtune): Ditto. + (aarch64_get_all_extension_candidates): Unshare prototype. + * config/aarch64/aarch64.cc + (aarch64_parse_arch): Move to aarch64-common.cc. + (aarch64_parse_cpu): Ditto. + (aarch64_parse_tune): Ditto. + (aarch64_print_hint_candidates): Ditto. + (aarch64_print_hint_for_core): Ditto. + (aarch64_print_hint_for_arch): Ditto. + (aarch64_print_hint_for_extensions): Ditto. + (aarch64_validate_mcpu): Ditto. + (aarch64_validate_march): Ditto. + (aarch64_validate_mtune): Ditto. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_print_hint_candidates): New helper function. + (aarch64_print_hint_for_core_or_arch): Inline into callers. + (aarch64_print_hint_for_core): Inline callee and use new helper. + (aarch64_print_hint_for_arch): Ditto. + (aarch64_print_hint_for_extensions): Use new helper. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_print_hint_for_extensions): Receive string as a char *. + (aarch64_parse_arch): Don't return a const struct processor *. + (aarch64_parse_cpu): Ditto. + (aarch64_parse_tune): Ditto. + (aarch64_validate_mtune): Ditto. + (aarch64_validate_mcpu): Ditto, and use temporary variables for + march/mcpu cross-check. + (aarch64_validate_march): Ditto. + (aarch64_override_options): Adjust for changed parameter types. + (aarch64_handle_attr_arch): Ditto. + (aarch64_handle_attr_cpu): Ditto. + (aarch64_handle_attr_tune): Ditto. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (struct aarch64_option_extension): Rename to.. + (struct aarch64_extension_info): ...this. + (all_extensions): Update type name. + (struct arch_to_arch_name): Rename to... + (struct aarch64_arch_info): ...this, and rename name field. + (all_architectures): Update type names, and move before... + (struct processor_name_to_arch): ...this. Rename to... + (struct aarch64_processor_info): ...this, rename name field and + add cpu field. + (all_cores): Update type name, and set new field. + (aarch64_parse_extension): Update names. + (aarch64_get_all_extension_candidates): Ditto. + (aarch64_rewrite_selected_cpu): Ditto. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * common/config/aarch64/aarch64-common.cc + (all_cores): Remove explicit generic entry. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-opts.h + (enum aarch64_processor): Rename to... + (enum aarch64_cpu): ...this, and rename the entries. + * config/aarch64/aarch64.cc + (aarch64_type): Rename type and initial value. + (struct processor): Rename member types. + (all_architectures): Rename enum members. + (all_cores): Ditto. + (aarch64_get_tune_cpu): Rename type and enum member. + * config/aarch64/aarch64.h (enum target_cpus): Remove. + (TARGET_CPU_DEFAULT): Rename default value. + (aarch64_tune): Rename type. + * config/aarch64/aarch64.opt: + (selected_tune): Rename type and default value. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64.cc (aarch64_override_options): Compare + returned feature masks directly. + +2025-01-24 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118497 + * ira-int.h (target_ira_int): Add x_ira_hard_regno_nrefs. + (ira_hard_regno_nrefs): New macro. + * ira.cc (setup_hard_regno_aclass): Remove unused code. Modify + the comment. + (setup_hard_regno_nrefs): New function. + (ira): Call it. + * ira-color.cc (calculate_saved_nregs): Check + ira_hard_regno_nrefs. + +2025-01-24 yxj-github-437 <2457369732@qq.com> + + * config/aarch64/aarch64.cc (aarch64_build_builtin_va_list): Mark + __builtin_va_list as TREE_PUBLIC. + * config/arm/arm.cc (arm_build_builtin_va_list): Likewise. + +2025-01-24 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/117670 + * Makefile.in (SARIF_REPLAY_INSTALL_NAME): New. + (install-libgdiagnostics): Use it,and exeext, rather than just + sarif-replay. + +2025-01-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116010 + * tree-data-ref.cc (contains_ssa_ref_p_1): New function. + (contains_ssa_ref_p): Likewise. + (dr_may_alias_p): Avoid treating unanalyzed base parts without + SSA reference conservatively. + +2025-01-24 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.h (S390_TDC_POSITIVE_ZERO): Remove. + (S390_TDC_NEGATIVE_ZERO): Remove. + (S390_TDC_POSITIVE_NORMALIZED_BFP_NUMBER): Remove. + (S390_TDC_NEGATIVE_NORMALIZED_BFP_NUMBER): Remove. + (S390_TDC_POSITIVE_DENORMALIZED_BFP_NUMBER): Remove. + (S390_TDC_NEGATIVE_DENORMALIZED_BFP_NUMBER): Remove. + (S390_TDC_POSITIVE_INFINITY): Remove. + (S390_TDC_NEGATIVE_INFINITY): Remove. + (S390_TDC_POSITIVE_QUIET_NAN): Remove. + (S390_TDC_NEGATIVE_QUIET_NAN): Remove. + (S390_TDC_POSITIVE_SIGNALING_NAN): Remove. + (S390_TDC_NEGATIVE_SIGNALING_NAN): Remove. + (S390_TDC_POSITIVE_DENORMALIZED_DFP_NUMBER): Remove. + (S390_TDC_NEGATIVE_DENORMALIZED_DFP_NUMBER): Remove. + (S390_TDC_POSITIVE_NORMALIZED_DFP_NUMBER): Remove. + (S390_TDC_NEGATIVE_NORMALIZED_DFP_NUMBER): Remove. + (S390_TDC_SIGNBIT_SET): Remove. + (S390_TDC_INFINITY): Remove. + * config/s390/s390.md (signbit<mode>2<tf_fpr>): Merge this one + (isinf<mode>2<tf_fpr>): and this one into + (<TDC_CLASS:tdc_insn><mode>2<tf_fpr>): new expander. + (isnormal<mode>2<tf_fpr>): New BFP expander. + (isnormal<mode>2): New DFP expander. + * config/s390/vector.md (signbittf2_vr): Merge this one + (isinftf2_vr): and this one into + (<tdc_insn>tf2_vr): new expander. + (signbittf2): Merge this one + (isinftf2): and this one into + (<tdc_insn>tf2): new expander. + +2025-01-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118634 + * tree-ssa-loop-ivcanon.cc (try_unroll_loop_completely): + Dump the number of estimated eliminated insns. + +2025-01-24 Saurabh Jha <saurabh.jha@arm.com> + + * config/aarch64/aarch64-sve2.md: + (*aarch64_pred_faminmax_fused): Fix to use the correct flags. + * config/aarch64/aarch64.h + (TARGET_SVE_FAMINMAX): Remove. + * config/aarch64/iterators.md: Fix iterators so that famax and + famin use correct flags. + +2025-01-24 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118572 + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Compare as + unsigned the variables whose extension bits are masked out. + +2025-01-24 Alexandre Oliva <oliva@adacore.com> + + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Document + reversep's absence of effects on range tests. Don't reject + reversep mismatches before trying compare swapping. + +2025-01-24 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118514 + * tree-eh.cc (bit_field_ref_in_bounds_p): New. + (tree_could_trap_p) <BIT_FIELD_REF>: Call it. + * gimple-fold.cc (make_bit_field_load): Check trapping status + of replacement load against original load. + +2025-01-23 John David Anglin <danglin@gcc.gnu.org> + + * config/pa/pa32-regs.h (ADDITIONAL_REGISTER_NAMES): Change + register 86 name to "%fr31L". + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118628 + * tree-vect-stmts.cc (vectorizable_store, vectorizable_load): + Initialize offvar to NULL_TREE. + +2025-01-23 Georg-Johann Lay <avr@gjlay.de> + + PR tree-optimization/118012 + PR tree-optimization/118360 + * config/avr/avr.opt (-mpr118012): New undocumented option. + * config/avr/avr-protos.h (avr_out_sextr) + (avr_emit_skip_pixop, avr_emit_skip_clear): New protos. + * config/avr/avr.cc (avr_adjust_insn_length) + [case ADJUST_LEN_SEXTR]: Handle case. + (avr_rtx_costs_1) [NEG]: Costs for NEG (ZERO_EXTEND (ZERO_EXTRACT)). + [MULT && avropt_pr118012]: Costs for MULT (x AND 1). + (avr_out_sextr, avr_emit_skip_pixop, avr_emit_skip_clear): New + functions. + * config/avr/avr.md [avropt_pr118012]: Add combine patterns with + that condition that try to work around PR118012. + (adjust_len) <sextr>: Add insn attr value. + (pixop): New code iterator. + (mulsi3) [avropt_pr118012 && !AVR_TINY]: Allow these in insn condition. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118562 + * rtl-ssa/blocks.cc (function_info::replace_phi): When converting + to a degenerate phi, make sure to remove all uses of the previous + inputs. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-tuning-flags.def + (AARCH64_EXTRA_TUNE_CHEAP_FPMR_WRITE): New tuning flag. + * config/aarch64/aarch64.h (TARGET_CHEAP_FPMR_WRITE): New macro. + * config/aarch64/aarch64.md: Split moves into FPMR into a test + and branch around. + (aarch64_write_fpmr): New pattern. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.cc (aarch64_memory_move_cost): Account + for the cost of moving in and out of GENERAL_SYSREGS. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.md (*mov<SHORT:mode>_aarch64) + (*movsi_aarch64, *movdi_aarch64): Allow the source of an MSR + to be zero. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118605 + * tree-assume.cc (assume_query::m_parm_list): Change type + from bitmap & to bitmap. + +2025-01-23 Tejas Belagod <tejas.belagod@arm.com> + + * omp-low.cc (use_pointer_for_field): Use pointer if the OMP data + structure's field type is a poly-int. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/114877 + * builtins.cc (fold_builtin_frexp): Handle rvc_nan and rvc_inf cases + like rvc_zero, return passed in arg and set *exp = 0. + +2025-01-23 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * doc/sourcebuild.texi (Effective-Target Keywords): Document + 'alarm'. + +2025-01-23 Georg-Johann Lay <avr@gjlay.de> + + PR target/117726 + * config/avr/avr.cc (avr_ld_regno_p): New function. + (ashlsi3_out) [case 25,26,27,28,29,30]: Handle and tweak. + (lshrsi3_out): Same. + (avr_rtx_costs_1) [SImode, ASHIFT, LSHIFTRT]: Adjust costs. + * config/avr/avr.md (ashlsi3, *ashlsi3, *ashlsi3_const): + Add "r,r,C4L" alternative. + (lshrsi3, *lshrsi3, *lshrsi3_const): Add "r,r,C4R" alternative. + * config/avr/constraints.md (C4R, C4L): New, + +2025-01-23 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118558 + * tree-vectorizer.h (vect_known_alignment_in_bytes): Pass + through offset to dr_misalignment. + * tree-vect-stmts.cc (get_group_load_store_type): Compute + offset applied for negative stride and use it when querying + alignment of accesses. + (vectorizable_load): Likewise. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/107741 + * common.opt: Add -fabi-version=20. + * doc/invoke.texi: Likewise. + +2025-01-23 Xi Ruoyao <xry111@xry111.site> + + PR target/118501 + * config/loongarch/loongarch.md (@xorsign<mode>3): Use + force_lowpart_subreg. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/avx10_2-512convertintrin.h: + Omit "p" for packed for FP8. + * config/i386/avx10_2convertintrin.h: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512satcvtintrin.h: Change intrin and + builtin name according to new mnemonics. + * config/i386/avx10_2satcvtintrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VCVTBF162IBS): Rename from UNSPEC_VCVTNEBF162IBS. + (UNSPEC_VCVTBF162IUBS): Rename from UNSPEC_VCVTNEBF162IUBS. + (UNSPEC_VCVTTBF162IBS): Rename from UNSPEC_VCVTTNEBF162IBS. + (UNSPEC_VCVTTBF162IUBS): Rename from UNSPEC_VCVTTNEBF162IUBS. + (UNSPEC_CVTNE_BF16_IBS_ITER): Rename to... + (UNSPEC_CVT_BF16_IBS_ITER): ...this. Adjust UNSPEC name. + (sat_cvt_sign_prefix): Adjust UNSPEC name. + (sat_cvt_trunc_prefix): Ditto. + (avx10_2_cvt<sat_cvt_trunc_prefix>nebf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): + Rename to... + (avx10_2_cvt<sat_cvt_trunc_prefix>bf162i<sat_cvt_sign_prefix>bs<mode><mask_name>): + ...this. Change instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512convertintrin.h: Change intrin and + builtin name according to new mnemonics. + * config/i386/avx10_2convertintrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VCVTPH2BF8): Rename from UNSPEC_VCVTNEPH2BF8. + (UNSPEC_VCVTPH2BF8S): Rename from UNSPEC_VCVTNEPH2BF8S. + (UNSPEC_VCVTPH2HF8): Rename from UNSPEC_VCVTNEPH2HF8. + (UNSPEC_VCVTPH2HF8S): Rename from UNSPEC_VCVTNEPH2HF8S. + (UNSPEC_CONVERTPH2FP8): Rename from UNSPEC_NECONVERTPH2FP8. + Adjust UNSPEC name. + (convertph2fp8): Rename from neconvertph2fp8. Adjust + iterator map. + (vcvt<neconvertph2fp8>v8hf): Rename to... + (vcvt<neconvertph2fp8>v8hf): ...this. + (*vcvt<neconvertph2fp8>v8hf): Rename to... + (*vcvt<neconvertph2fp8>v8hf): ...this. + (vcvt<neconvertph2fp8>v8hf_mask): Rename to... + (vcvt<neconvertph2fp8>v8hf_mask): ...this. + (*vcvt<neconvertph2fp8>v8hf_mask): Rename to... + (*vcvt<neconvertph2fp8>v8hf_mask): ...this. + (vcvt<neconvertph2fp8><mode><mask_name>): Rename to... + (vcvt<convertph2fp8><mode><mask_name>): ...this. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512convertintrin.h: Change intrin and + builtin name according to new mnemonics. + * config/i386/avx10_2convertintrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VCVT2PH2BF8): Rename from UNSPEC_VCVTNE2PH2BF8. + (UNSPEC_VCVT2PH2BF8S): Rename from UNSPEC_VCVTNE2PH2BF8S. + (UNSPEC_VCVT2PH2HF8): Rename from UNSPEC_VCVTNE2PH2HF8. + (UNSPEC_VCVT2PH2HF8S): Rename from UNSPEC_VCVTNE2PH2HF8S. + (UNSPEC_CONVERTFP8_PACK): Rename from UNSPEC_NECONVERTFP8_PACK. + Adjust UNSPEC name. + (convertfp8_pack): Rename from neconvertfp8_pack. Adjust + iterator map. + (vcvt<neconvertfp8_pack><mode><mask_name>): Rename to... + (vcvt<convertfp8_pack><mode><mask_name>): ...this. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/i386-expand.cc + (ix86_expand_fp_compare): Adjust comments. + (ix86_expand_builtin): Adjust switch case. + * config/i386/i386.md (cmpibf): Change instruction name output. + * config/i386/sse.md (UNSPEC_VCOMSBF16): Removed. + (avx10_2_comisbf16_v8bf): New. + (avx10_2_comsbf16_v8bf): Removed. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VFPCLASSBF16); Rename from UNSPEC_VFPCLASSPBF16. + (avx10_2_getexppbf16_<mode><mask_name>): Rename to... + (avx10_2_getexpbf16_<mode><mask_name>): ...this. + Change instruction name output. + (avx10_2_fpclasspbf16_<mode><mask_scalar_merge_name>): + Rename to... + (avx10_2_fpclassbf16_<mode><mask_scalar_merge_name>): ...this. + Change instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VSCALEFBF16): Rename from UNSPEC_VSCALEFPBF16. + (avx10_2_scalefpbf16_<mode><mask_name>): Rename to... + (avx10_2_scalefbf16_<mode><mask_name>): ...this. + Change instruction name output. + (avx10_2_rsqrtpbf16_<mode><mask_name>): Rename to... + (avx10_2_rsqrtbf16_<mode><mask_name>): ...this. + Change instruction name output. + (avx10_2_sqrtnepbf16_<mode><mask_name>): Rename to... + (avx10_2_sqrtbf16_<mode><mask_name>): ...this. + Change instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_VRNDSCALEBF16): Rename from UNSPEC_VRNDSCALENEPBF16. + (UNSPEC_VREDUCEBF16): Rename from UNSPEC_VREDUCENEPBF16. + (UNSPEC_VGETMANTBF16): Rename from UNSPEC_VGETMANTPBF16. + (BF16IMMOP): Adjust iterator due to UNSPEC name change. + (bf16immop): Ditto. + (avx10_2_<bf16immop>pbf16_<mode><mask_name>): Rename to... + (avx10_2_<bf16immop>bf16_<mode><mask_name>): ...this. Change + instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512minmaxintrin.h: Change intrin and + builtin name according to new mnemonics. + * config/i386/avx10_2minmaxintrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (UNSPEC_MINMAXBF16): Rename from UNSPEC_MINMAXNEPBF16. + (avx10_2_minmaxnepbf16_<mode><mask_name>): Rename to... + (avx10_2_minmaxbf16_<mode><mask_name>): ...this. Change + instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (avx10_2_<code>pbf16_<mode><mask_name>): Rename to... + (avx10_2_<code>bf16_<mode><mask_name>): ...this. + Change instruction name output. + (avx10_2_cmppbf16_<mode><mask_scalar_merge_name>): Rename to... + (avx10_2_cmpbf16_<mode><mask_scalar_merge_name>): ...this. + Change instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + names according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md + (avx10_2_fmaddnepbf16_<mode>_maskz): Rename to... + (avx10_2_fmaddbf16_<mode>_maskz): ...this. Adjust emit_insn. + (avx10_2_fmaddnepbf16_<mode><sd_maskz_name>): Rename to... + (avx10_2_fmaddbf16_<mode><sd_maskz_name>): ...this. + Change instruction name output. + (avx10_2_fmaddnepbf16_<mode>_mask): Rename to... + (avx10_2_fmaddbf16_<mode>_mask): ...this. + Change instruction name output. + (avx10_2_fmaddnepbf16_<mode>_mask3): Rename to... + (avx10_2_fmaddbf16_<mode>_mask3): ...this. + Change instruction name output. + (avx10_2_fnmaddnepbf16_<mode>_maskz): Rename to... + (avx10_2_fnmaddbf16_<mode>_maskz): ...this. Adjust emit_insn. + (avx10_2_fnmaddnepbf16_<mode><sd_maskz_name>): Rename to... + (avx10_2_fnmaddbf16_<mode><sd_maskz_name>): ...this. + Change instruction name output. + (avx10_2_fnmaddnepbf16_<mode>_mask): Rename to... + (avx10_2_fnmaddbf16_<mode>_mask): ...this. + Change instruction name output. + (avx10_2_fnmaddnepbf16_<mode>_mask3): Rename to... + (avx10_2_fnmaddbf16_<mode>_mask3): ...this. + Change instruction name output. + (avx10_2_fmsubnepbf16_<mode>_maskz): Rename to... + (avx10_2_fmsubbf16_<mode>_maskz): ...this. Adjust emit_insn. + (avx10_2_fmsubnepbf16_<mode><sd_maskz_name>): Rename to... + (avx10_2_fmsubbf16_<mode><sd_maskz_name>): ...this. + Change instruction name output. + (avx10_2_fmsubnepbf16_<mode>_mask): Rename to... + (avx10_2_fmsubbf16_<mode>_mask): ...this. + Change instruction name output. + (avx10_2_fmsubnepbf16_<mode>_mask3): Rename to... + (avx10_2_fmsubbf16_<mode>_mask3): ...this. + Change instruction name output. + (avx10_2_fnmsubnepbf16_<mode>_maskz): Rename to... + (avx10_2_fnmsubbf16_<mode>_maskz): ...this. Adjust emit_insn. + (avx10_2_fnmsubnepbf16_<mode><sd_maskz_name>): Rename to... + (avx10_2_fnmsubbf16_<mode><sd_maskz_name>): ...this. + Change instruction name output. + (avx10_2_fnmsubnepbf16_<mode>_mask): Rename to... + (avx10_2_fnmsubbf16_<mode>_mask): ...this. + Change instruction name output. + (avx10_2_fnmsubnepbf16_<mode>_mask3): Rename to... + (avx10_2_fnmsubbf16_<mode>_mask3): ...this. + Change instruction name output. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * config/i386/avx10_2-512bf16intrin.h: Change intrin and builtin + name according to new mnemonics. + * config/i386/avx10_2bf16intrin.h: Ditto. + * config/i386/i386-builtin.def (BDESC): Ditto. + * config/i386/sse.md (div<mode>3): Adjust emit_insn. + (avx10_2_<insn>nepbf16_<mode><mask_name>): Rename to... + (avx10_2_<insn>bf16_<mode><mask_name>): ...this. Change + instruction name output. + (avx10_2_rcppbf16_<mode><mask_name>): Rename to... + (avx10_2_rcpbf16_<mode><mask_name>):...this. Change + instruction name output. + +2025-01-22 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.cc: Fix arch15 machine string which must not + be empty. + +2025-01-22 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64.md (aarch64_read_sysregti): Change + the source predicate to aarch64_reg_or_zero. + +2025-01-22 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.md + (<optab>_alsl_reversesi_extended): Add '&' to the destination + register constraint and append '0' to the first source register + constraint to indicate the destination register cannot be same + as the second source register, and change the split condition to + reload_completed so that the insn will be split only after RA in + order to obtain allocated registers that satisfy the above + constraints. + +2025-01-21 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2024-10-29 yulong <shiyulong@iscas.ac.cn> + + * config.gcc: Add riscv_cmo.h. + * config/riscv/riscv_cmo.h: New file. + +2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118483 + * match.pd (`x ==/!= ~x`): Allow for an optional convert + and use itwise_inverted_equal_p/maybe_bit_not instead of + directly matching bit_not. + +2025-01-21 Robin Dapp <rdapp@ventanamicro.com> + + * config/riscv/riscv.cc (riscv_file_end): Fix format string. + (riscv_lshift_subword): Mark MODE as unused. + +2025-01-21 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-passes.cc (avr_emit_shift) [ASHIFT,HImode]: + Allow offsets 5 and 6 as 3op provided have MUL and a scratch. + * config/avr/avr.cc (avr_optimize_size_max_p): New function. + (avr_out_ashlhi3_mul): New function. + (ashlhi3_out) [case 4, 5, 6]: Better speed for -Os. + * config/avr/avr.md (isa) <mul, no_mul>: New attr values. + (*ashlhi3_const): Add alternative for offsets 5 and 6. + +2025-01-21 Jin Ma <jinma@linux.alibaba.com> + + PR target/116593 + * config/riscv/constraints.md (vl): New. + * config/riscv/thead-vector.md: Replacing rK with rvl. + * config/riscv/vector.md: Likewise. + +2025-01-21 Denis Chertykov <chertykov@gmail.com> + + * lra-spills.cc (assign_stack_slot_num_and_sort_pseudos): Use known_ge + to compare sizes. + +2025-01-21 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * config/riscv/predicates.md (consecutive_bits_operand): Properly + handle (const_int 0). + +2025-01-21 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.opt.urls: Regenerate + +2025-01-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118569 + * cfgloopmanip.cc (fix_loop_placement): When the loops + nesting parents changed, mark all blocks to be scanned + for LC PHI uses. + (fix_bb_placements): Remove code moved into fix_loop_placement. + +2025-01-21 Vladimir Miloserdov <vladimir.miloserdov@arm.com> + + * config/aarch64/aarch64-c.cc + (aarch64_update_cpp_builtins): Add new flag TARGET_LUT. + * config/aarch64/aarch64-sve-builtins-shapes.cc + (struct luti_base): Shape for lut intrinsics. + (SHAPE): Specializations for lut shapes for luti2 and luti4.. + * config/aarch64/aarch64-sve-builtins-shapes.h: Declare lut + intrinsics. + * config/aarch64/aarch64-sve-builtins-sve2.cc + (class svluti_lane_impl): Define expand for lut intrinsics. + (FUNCTION): Define expand for lut intrinsics. + * config/aarch64/aarch64-sve-builtins-sve2.def + (REQUIRED_EXTENSIONS): Declare lut intrinsics behind lut flag. + (svluti2_lane): Define intrinsic behind flag. + (svluti4_lane): Define intrinsic behind flag. + * config/aarch64/aarch64-sve-builtins-sve2.h: Declare lut + intrinsics. + * config/aarch64/aarch64-sve-builtins.cc + (TYPES_bh_data): New type for byte and halfword. + (bh_data): Type array for byte and halfword. + (h_data): Type array for halfword. + * config/aarch64/aarch64-sve2.md + (@aarch64_sve_luti<LUTI_BITS><mode>): Instruction patterns for + lut intrinsics. + * config/aarch64/iterators.md: Iterators and attributes for lut + intrinsics. + +2025-01-21 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/118273 + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Use nvectors when + doing mask registrations. + +2025-01-21 Tamar Christina <tamar.christina@arm.com> + + * config.gcc (aarch64-*-elf): Drop ILP32 from default multilibs. + +2025-01-21 Lulu Cheng <chenglulu@loongson.cn> + + * config/loongarch/loongarch-protos.h + (loongarch_reset_previous_fndecl): Add function declaration. + (loongarch_save_restore_target_globals): Likewise. + (loongarch_register_pragmas): Likewise. + * config/loongarch/loongarch-target-attr.cc + (loongarch_option_valid_attribute_p): Optimize the processing + of attributes. + (loongarch_pragma_target_parse): New functions. + (loongarch_register_pragmas): Likewise. + * config/loongarch/loongarch.cc + (loongarch_reset_previous_fndecl): New functions. + (loongarch_set_current_function): When the old_tree is the same + as the new_tree, the rules for using registers, etc., + are set according to the option values to ensure that the + pragma can be processed correctly. + * config/loongarch/loongarch.h (REGISTER_TARGET_PRAGMAS): + Define macro. + * doc/extend.texi: Supplemental Documentation. + +2025-01-21 Lulu Cheng <chenglulu@loongson.cn> + + * attr-urls.def: Regenerate. + * config.gcc: Add loongarch-target-attr.o to extra_objs. + * config/loongarch/loongarch-protos.h + (loongarch_option_valid_attribute_p): Function declaration. + (loongarch_option_override_internal): Likewise. + * config/loongarch/loongarch.cc + (loongarch_option_override_internal): Delete the modifications + to target_option_default_node and target_option_current_node. + (loongarch_set_current_function): Add annotation information. + (loongarch_option_override): add assignment operations to + target_option_default_node and target_option_current_node. + (TARGET_OPTION_VALID_ATTRIBUTE_P): Define. + * config/loongarch/t-loongarch: Add compilation of target file + loongarch-target-attr.o. + * doc/extend.texi: Add description information of LoongArch + Function Attributes. + * config/loongarch/loongarch-target-attr.cc: New file. + +2025-01-21 Alfie Richards <alfie.richards@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_process_target_version_attr): Add experimental warning. + * config/aarch64/aarch64.opt: Add command line option to disable + warning. + * doc/invoke.texi: Add documentation for -W[no-]experimental-fmv-target. + +2025-01-20 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118560 + * lra-constraints.cc (invalid_mode_reg_p): Exchange args in + hard_reg_set_subset_p call. + +2025-01-20 Jeff Law <jlaw@ventanamicro.com> + + PR target/114442 + * config/riscv/xiangshan.md: Add missing insn types to a + new dummy insn reservation. + +2025-01-20 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * config/riscv/riscv.md (reassocating constant addition): Adjust + condition to avoid creating an unrecognizable insn. + +2025-01-20 Denis Chertykov <chertykov@gmail.com> + + PR rtl-optimization/117868 + * lra-spills.cc (assign_stack_slot_num_and_sort_pseudos): Reuse slots + only without allocated memory or only with equal or smaller registers + with equal or smaller alignment. + (lra_spill): Print slot size as width. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118348 + * tree-vectorizer.cc (vec_info::move_dr): Copy + STMT_VINFO_SIMD_LANE_ACCESS_P. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + Revert: + 2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118384 + * tree-vectorizer.cc (vec_info::move_dr): Copy + STMT_VINFO_SIMD_LANE_ACCESS_P. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118384 + * tree-vectorizer.cc (vec_info::move_dr): Copy + STMT_VINFO_SIMD_LANE_ACCESS_P. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118501 + * config/aarch64/aarch64.md (@xorsign<mode>3): Use + force_lowpart_subreg. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118531 + * config/aarch64/aarch64.md (*insv_reg<mode>_<SUBDI_BITS>) + (*aarch64_bfi<GPI:mode><ALLX:mode>_<SUBDI_BITS>) + (*aarch64_bfidi<ALLX:mode>_subreg_<SUBDI_BITS>): Add missing + simd requirements. + +2025-01-20 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/thead.md (*th_cond_mov<GPR:mode><GPR2:mode>): + Change GPR2 to X. + (*th_cond_mov<GPR:mode>): Likewise. + +2025-01-20 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118077 + PR tree-optimization/117668 + * tree-inline.cc (fold_marked_statements): Purge abnormal edges + as needed. + +2025-01-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117875 + * tree-vect-slp.cc (vect_build_slp_tree_1): Handle SSA copies. + +2025-01-20 Xi Ruoyao <xry111@xry111.site> + + PR target/115921 + * config/loongarch/loongarch-protos.h + (loongarch_reassoc_shift_bitwise): New function prototype. + * config/loongarch/loongarch.cc + (loongarch_reassoc_shift_bitwise): Implement. + * config/loongarch/loongarch.md + (*alslsi3_extend_subreg): New define_insn_and_split. + (<any_bitwise:optab>_shift_reverse<X:mode>): New + define_insn_and_split. + (<any_bitwise:optab>_alsl_reversesi_extended): New + define_insn_and_split. + (zero_extend_ashift): Remove as it's just a special case of + and_shift_reversedi, and it does not make too much sense to + write "alsl.d rd,rs,r0,shamt" instead of "slli.d rd,rs,shamt". + (bstrpick_alsl_paired): Remove as it is already done by + splitting and_shift_reversedi into and + ashift first, then + late combining the ashift and a further add. + +2025-01-20 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/constraints.md (Yy): New define_constriant. + * config/loongarch/loongarch.cc (loongarch_print_operand): + For "%M", output the index of bits to be used with + bstrins/bstrpick. + * config/loongarch/predicates.md (ins_zero_bitmask_operand): + Exclude low_bitmask_operand as for low_bitmask_operand it's + always better to use bstrpick instead of bstrins. + (and_operand): New define_predicate. + * config/loongarch/loongarch.md (any_or): New + define_code_iterator. + (bitwise_operand): New define_code_attr. + (*<optab:any_or><mode:GPR>3): New define_insn. + (*and<mode:GPR>3): New define_insn. + (<optab:any_bitwise><mode:X>3): New define_expand. + (and<mode>3_extended): Remove, replaced by the 3rd alternative + of *and<mode:GPR>3. + (bstrins_<mode>_for_mask): Remove, replaced by the 4th + alternative of *and<mode:GPR>3. + (*<optab:any_bitwise>si3_internal): Remove, already covered by + the *<optab:any_or><mode:GPR>3 and *and<mode:GPR>3 templates. + +2025-01-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118552 + * cfgloopmanip.cc (fix_loop_placement): Properly mark + exit source blocks as to be scanned for LC SSA update when + the loops nesting relationship changed. + (fix_loop_placements): Adjust. + (fix_bb_placements): Likewise. + +2025-01-20 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/t-nvptx (MULTILIB_OPTIONS): Don't add 'mptx=3.1' if + neither sm_30 nor sm_35 multilib variant is built. + +2025-01-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/118509 + * tree.cc (tree_invariant_p_1): Return true for TARGET_EXPR too. + +2025-01-20 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118224 + * tree-ssa-dce.cc (is_removable_allocation_p): Multiply a1 by a2 + instead of adding it. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_load_len): Deprecate + some overloads. + (s390_vec_store_len): Deprecate some overloads. + (s390_vec_load_len_r): Add. + (s390_vec_store_len_r): Add. + * config/s390/s390-c.cc (s390_vec_load_len_r): Add. + (s390_vec_store_len_r): Add. + * config/s390/vecintrin.h (vec_load_len_r): Redefine. + (vec_store_len_r): Redefine. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def: Add 128-bit variants. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/vector.md (<vec_shifts_name><mode>3): Add 128-bit + variants. + * config/s390/vx-builtins.md: Ditto. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def: Add 128-bit variants and remove + bool variants. + * config/s390/s390-builtin-types.def: Update accordinly. + * config/s390/s390.md: Emulate min/max for GPR. + * config/s390/vector.md: Add min/max patterns and emulate in + case of no VXE3. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_abs_s128): Add. + (s390_vlpq): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/vector.md (abs<mode>2): Emulate w/o VXE3. + (*abs<mode>2): Add 128-bit variant. + (*vec_sel0<mode>): Make it a ... + (vec_sel0<mode>): named pattern. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def: Add 128-bit variants. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.cc (s390_expand_vec_compare_cc): Also + consider TI modes for vectors. + * config/s390/vector.md: Enable *vec_cmp et al. for VXE3. + * config/s390/vx-builtins.md: Ditto. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/vector.md (div<mode>3): Add. + (udiv<mode>3): Add. + (mod<mode>3): Add. + (umod<mode>3): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_cntlz): Add 128-bit + integer overloads. + (s390_vclzq): Add. + (s390_vec_cnttz): Add 128-bit integer overloads. + (s390_vctzq): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.h (CTZ_DEFINED_VALUE_AT_ZERO): Define. + * config/s390/s390.md (*clzg): New insn. + (clztidi2): Exploit new insn for target arch15. + (ctzdi2): New insn. + * config/s390/vector.md (clz<mode>2): Extend modes including + 128-bit integer. + (ctz<mode>2): Likewise. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_gen_element_masks_128): Add. + (s390_vgemb): Add. + (s390_vgemh): Add. + (s390_vgemf): Add. + (s390_vgemg): Add. + (s390_vgemq): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.md (UNSPEC_VEC_VGEM): Add. + * config/s390/vecintrin.h (vec_gen_element_masks_8): Define. + (vec_gen_element_masks_16): Define. + (vec_gen_element_masks_32): Define. + (vec_gen_element_masks_64): Define. + (vec_gen_element_masks_128): Define. + * config/s390/vx-builtins.md (vgemv16qi): Add. + (vgem<mode>): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_evaluate): Add. + (s390_veval): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.md (UNSPEC_VEC_VEVAL): Add. + * config/s390/vecintrin.h (vec_evaluate): Define. + * config/s390/vector.md + (*veval<mode>_<logic_op1:logic_op_stringify><logic_op2:logic_op_stringify>): + Add. + (veval<mode>): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_vec_blend): Add. + (s390_vblendb): Add. + (s390_vblendh): Add. + (s390_vblendf): Add. + (s390_vblendg): Add. + (s390_vblendq): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.md (UNSPEC_VEC_VBLEND): Add. + * config/s390/vecintrin.h (vec_blend): Define. + * config/s390/vx-builtins.md (vblend<mode>): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def (s390_bdepg): Add. + (s390_bextg): Add. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/s390.md (UNSPEC_BDEPG): Add. + (UNSPEC_BEXTG): Add. + (bdepg): Add. + (bextg): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390.md (*lxa<LXAMODE>_index): Add. + (*lxa<LXAMODE>_displacement_index): Add. + (*lxa<LXAMODE>_index_base): Add. + (*lxa<LXAMODE>_displacement_index_base): Add. + (*lxab_displacement_index_base): Add. + (*llxa<LXAMODE>_displacement_index): Add. + (*llxa<LXAMODE>_index_base): Add. + (*llxa<LXAMODE>_displacement_index_base): Add. + (*llxab_displacement_index_base): Add. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-builtins.def: Add new instruction variants. + * config/s390/s390-builtin-types.def: Update accordingly. + * config/s390/vecintrin.h: Add new defines. + * config/s390/vector.md: Adapt insns for new instruction + variants. + * config/s390/vx-builtins.md: Ditto. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * config/s390/s390-builtins.def (B_VXE3): Define. + (B_ARCH15): Define. + * config/s390/s390-c.cc (s390_resolve_overloaded_builtin): + Consistency checks for VXE3. + * config/s390/s390.cc (s390_expand_builtin): Consistency checks + for VXE3. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * config/s390/s390-c.cc (rid_int128): New helper function. + (s390_macro_to_expand): Deal with `vector __int128`. + (s390_cpu_cpp_builtins_internal): Bump __VEC__. + * config/s390/s390.cc (s390_handle_vectorbool_attribute): Add + 128-bit bool zvector. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * common/config/s390/s390-common.cc: Add arch15 processor flags. + * config.gcc: Add arch15 for options --with-{arch,mtune}. + * config/s390/driver-native.cc (s390_host_detect_local_cpu): + Default to arch15. + * config/s390/s390-opts.h (enum processor_type): Add + PROCESSOR_ARCH15. + * config/s390/s390.cc (processor_table,s390_issue_rate, + s390_get_sched_attrmask,s390_get_unit_mask): Add arch15. + * config/s390/s390.h (enum processor_flags): Add processor flags + for VXE3 and ARCH15. + (TARGET_CPU_VXE3): Define. + (TARGET_CPU_VXE3_P): Define. + (TARGET_CPU_ARCH15): Define. + (TARGET_CPU_ARCH15_P): Define. + (TARGET_VXE3): Define. + (TARGET_VXE3_P): Define. + (TARGET_ARCH15): Define. + (TARGET_ARCH15_P): Define. + * config/s390/s390.md: Add VXE3 and ARCH15 to cpu_facility, and + let attribute "enabled" deal with them. + * config/s390/s390.opt: Add arch15. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * config/s390/vecintrin.h: Sort definitions. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/vector.md: Stay scalar for TOINTVEC/tointvec. + +2025-01-20 Kito Cheng <kito.cheng@sifive.com> + + * config.gcc (riscv*): Install sifive_vector.h. + * config/riscv/sifive_vector.h: New. + +2025-01-20 Hongyu Wang <hongyu.wang@intel.com> + + PR target/118510 + * config/i386/i386.md (*x86_64_shld_ndd_2): Use register_operand + for operand[0] and adjust the output template to directly + generate ndd form shld pattern. + (*x86_shld_ndd_2): Likewise. + (*x86_64_shrd_ndd_2): Likewise. + (*x86_shrd_ndd_2): Likewise. + +2025-01-19 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md (*movdi_internal): Reorder ISA attribute + by ascending alternative index. + +2025-01-19 Mark Wielaard <mark@klomp.org> + + * config/sparc/sparc.opt.urls: Regenerated. + +2025-01-19 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/gm2.texi (Type compatibility): Move modula2.org link + to https. + +2025-01-19 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/extend.texi (OpenMP): Adjust link to specifications. + +2025-01-18 Jeff Law <jlaw@ventanamicro.com> + + PR target/116308 + * config/riscv/riscv.cc (riscv_lshift_subword): Use gen_lowpart + rather than simplify_gen_subreg. + +2025-01-18 Michal Jires <mjires@suse.cz> + + * cgraph.cc (symbol_table::create_empty): + Move uid to symtab_node. + (test_symbol_table_test): Change expected dump id. + * cgraph.h (struct cgraph_node): + Move uid to symtab_node. + (symbol_table::register_symbol): Likewise. + * dumpfile.cc (test_capture_of_dump_calls): + Change expected dump id. + * ipa-inline.cc (update_caller_keys): + Use summary id instead of uid. + (update_callee_keys): Likewise. + * symtab.cc (symtab_node::get_dump_name): + Use uid instead of order. + +2025-01-18 Eric Botcazou <ebotcazou@adacore.com> + + PR target/118512 + * config/sparc/sparc-c.cc (sparc_target_macros): Deal with VIS 3B. + * config/sparc/sparc.cc (dump_target_flag_bits): Likewise. + (sparc_option_override): Likewise. + (sparc_vis_init_builtins): Likewise. + * config/sparc/sparc.md (fpcmp_vis): Replace TARGET_VIS3 with + TARGET_VIS3B. + (vec_cmp): Likewise. + (fpcmpu_vis): Likewise. + (vec_cmpu): Likewise. + (vcond_mask_): Likewise. + * config/sparc/sparc.opt (VIS3B): New target mask. + * doc/invoke.texi (SPARC options): Document -mvis3b. + +2025-01-18 Jin Ma <jinma@linux.alibaba.com> + + PR target/118357 + * config/riscv/riscv-vsetvl.cc: Function change_vtype_only_p always + returns false for XTheadVector. + +2025-01-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118529 + * tree-vect-stmts.cc (vectorizable_condition): Check the + shape of the vector and condition vector type are compatible. + +2025-01-18 Georg-Johann Lay <avr@gjlay.de> + + * doc/invoke.texi (AVR Options): Fix plenk at -msplit-ldst. + +2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> + Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-builtins.cc: Expand iterators. + * config/aarch64/aarch64-simd-builtins.def: Use standard names + * config/aarch64/aarch64-simd.md: Use standard names, split insn + definitions on signedness of operator and type of operands. + * config/aarch64/arm_neon.h: Use standard builtin names. + * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to + simplify splitting of insn for unsigned scalar arithmetic. + +2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> + + * config/aarch64/aarch64-sve.md: Rename insns + +2025-01-18 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-builtins.cc: Expand iterators. + * config/aarch64/aarch64-simd-builtins.def: Use standard names + * config/aarch64/aarch64-simd.md: Use standard names, split insn + definitions on signedness of operator and type of operands. + * config/aarch64/arm_neon.h: Use standard builtin names. + * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to + simplify splitting of insn for unsigned scalar arithmetic. + +2025-01-18 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-sve.md: Rename insns + +2025-01-18 Monk Chiang <monk.chiang@sifive.com> + + * config/riscv/riscv.cc: Remove unused variable. + +2025-01-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.cc (loongarch_rtx_costs): Fix the + cost for (a + b * imm) and (a + (b << imm)) which can be + implemented with a single alsl instruction. + +2025-01-18 Xi Ruoyao <xry111@xry111.site> + + * config/loongarch/loongarch.md (alslsi3_extend): Add alsl.wu. + +2025-01-17 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/118067 + * lra-constraints.cc (invalid_mode_reg_p): New function. + (curr_insn_transform): Use it to check mode returned by target + secondary_memory_needed_mode. + +2025-01-17 Jakub Jelinek <jakub@redhat.com> + + PR target/118511 + * config/s390/s390.cc (print_operand) <case 'p'>: Use + output_operand_lossage instead of gcc_checking_assert. + (print_operand) <case 'q'>: Likewise. + (print_operand) <case 'r'>: Likewise. + +2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-sve.md: Rename insns + +2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-builtins.cc: Expand iterators. + * config/aarch64/aarch64-simd-builtins.def: Use standard names + * config/aarch64/aarch64-simd.md: Use standard names, split insn + definitions on signedness of operator and type of operands. + * config/aarch64/arm_neon.h: Use standard builtin names. + * config/aarch64/iterators.md: Add VSDQ_I_QI_HI iterator to + simplify splitting of insn for unsigned scalar arithmetic. + +2025-01-17 Carl Love <cel@linux.ibm.com> + + * config/rs6000/rs6000-builtins.def (__builtin_vsx_xvcvuxwdp): + Remove built-in definition. + +2025-01-17 Carl Love <cel@linux.ibm.com> + + * config/rs6000/rs6000-builtins.def (__builtin_vsx_vperm_8hi, + __builtin_vsx_vperm_8hi_uns): Remove built-in definitions. + +2025-01-17 Carl Love <cel@linux.ibm.com> + + * doc/extend.texi: Fix spelling mistake in description of the + vec_sel built-in. Add documentation of the 128-bit vec_perm + instance. + +2025-01-17 Georg-Johann Lay <avr@gjlay.de> + + * config/avr/avr-c.cc (DEF_BUILTIN): Add ATTRS argument to macro + definition. + * config/avr/avr.cc: Same. + (avr_init_builtins) <attr_const>: New variable that can be used + as ATTRS argument in DEF_BUILTIN. + * config/avr/builtins.def (DEF_BUILTIN): Add ATTRS parameter + to all definitions. + +2025-01-17 Georg-Johann Lay <avr@gjlay.de> + + PR target/118329 + * config/avr/avr-modes.def: Add INT_N (PSI, 24). + * config/avr/avr.cc (avr_init_builtin_int24) + <__int24>: Remove definition. + <__uint24>: Adjust definition to INT_N interface. + +2025-01-17 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118522 + * match.pd ((FTYPE) N CMP (FTYPE) M): Add convert, as in GENERIC + integral types with the same precision and sign might actually not + be compatible types. + +2025-01-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/92539 + * tree-ssa-loop-ivcanon.cc (tree_unroll_loops_completely_1): + Also try force-evaluation if ivcanon did not yet run. + (canonicalize_loop_induction_variables): + When niter was computed constant by force evaluation add a + canonical IV if we didn't unroll. + * tree-ssa-loop-niter.cc (loop_niter_by_eval): When we + don't find a proper PHI try if the exit condition scans + over a STRING_CST and simulate that. + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * config/riscv/riscv.cc + (is_zicfilp_p): New function. + (is_zicfiss_p): New function. + * config/riscv/riscv-zicfilp.cc: Update. + * config/riscv/riscv.h: Update. + * config/riscv/riscv.md: Update. + * config/riscv/riscv-c.cc: Add CFI predefine marco. + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * config/riscv/riscv.cc + (riscv_file_end): Add .note.gnu.property. + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * common/config/riscv/riscv-common.cc: Add ZICFILP ISA + string. + * config.gcc: Add riscv-zicfilp.o + * config/riscv/riscv-passes.def (INSERT_PASS_BEFORE): + Insert landing pad instructions. + * config/riscv/riscv-protos.h (make_pass_insert_landing_pad): + Declare. + * config/riscv/riscv-zicfilp.cc: New file. + * config/riscv/riscv.cc + (riscv_trampoline_init): Add landing pad instructions. + (riscv_legitimize_call_address): Likewise. + (riscv_output_mi_thunk): Likewise. + * config/riscv/riscv.h: Update. + * config/riscv/riscv.md: Add landing pad patterns. + * config/riscv/riscv.opt (TARGET_ZICFILP): Define. + * config/riscv/t-riscv: Add build rule for + riscv-zicfilp.o + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * common/config/riscv/riscv-common.cc: Add ZICFISS ISA string. + * config/riscv/predicates.md: New predicate x1x5_operand. + * config/riscv/riscv.cc + (riscv_expand_prologue): Insert shadow stack instructions. + (riscv_expand_epilogue): Likewise. + (riscv_for_each_saved_reg): Assign t0 or ra register for + sspopchk instruction. + (need_shadow_stack_push_pop_p): New function. Omit shadow + stack operation on leaf function. + * config/riscv/riscv.h + (need_shadow_stack_push_pop_p): Define. + * config/riscv/riscv.md: Add shadow stack patterns. + (save_stack_nonlocal): Add shadow stack instructions for setjump. + (restore_stack_nonlocal): Add shadow stack instructions for longjump. + * config/riscv/riscv.opt (TARGET_ZICFISS): Define. + +2025-01-16 Tamar Christina <tamar.christina@arm.com> + Richard Sandiford <richard.sandiford@arm.com> + + PR target/113257 + * config/aarch64/driver-aarch64.cc (get_cpu_from_id, DEFAULT_CPU): New. + (host_detect_local_cpu): Use it. + +2025-01-16 Tamar Christina <tamar.christina@arm.com> + + PR target/110901 + * config/aarch64/aarch64.h (MCPU_TO_MARCH_SPEC): Don't override if + march is set. + +2025-01-16 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/1180167 + * lra-constraints.cc (process_alt_operands): Use operand mode not + subreg reg mode. Add and improve debugging prints for updating + losers. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * omp-general.cc (omp_complete_construct_context): Check + "omp declare target" attribute, not "omp declare target block". + +2025-01-16 Peter Bergner <bergner@linux.ibm.com> + + * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Return + const0_rtx when there is an error. + +2025-01-16 Peter Bergner <bergner@linux.ibm.com> + + * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Use correct + array size for the loop limit. + * config/rs6000/rs6000-builtins.def: Fix field size for PMASK operand. + +2025-01-16 Liao Shihua <shihua@iscas.ac.cn> + + * config/riscv/vector.md: New attr set. + +2025-01-16 Jiawei <jiawei@iscas.ac.cn> + + * config/riscv/genrvv-type-indexer.cc (expand_floattype): New func. + (main): New type. + * config/riscv/riscv-vector-builtins-types.def (DEF_RVV_XFQF_OPS): New def. + (vint8mf8_t): Ditto. + (vint8mf4_t): Ditto. + (vint8mf2_t): Ditto. + (vint8m1_t): Ditto. + (vint8m2_t): Ditto. + * config/riscv/riscv-vector-builtins.cc (DEF_RVV_XFQF_OPS): Ditto. + (rvv_arg_type_info::get_xfqf_float_type): Ditto. + * config/riscv/riscv-vector-builtins.def (xfqf_vector): Ditto. + (xfqf_float): Ditto. + * config/riscv/riscv-vector-builtins.h + (struct rvv_arg_type_info): New function prototype. + * config/riscv/sifive-vector.md: Update iterator. + * config/riscv/vector-iterators.md: Ditto. + +2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> + + PR tree-optimization/118487 + * tree-ssa-forwprop.cc (recognise_vec_perm_simplify_seq): + Ensure that shuffle masks are VECTOR_CSTs. + +2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> + + * tree-ssa-forwprop.cc (recognise_vec_perm_simplify_seq): + Eliminate redundant calls to to_constant(). + +2025-01-16 Richard Biener <rguenther@suse.de> + Mikael Morin <mikael@gcc.gnu.org> + + PR tree-optimization/115494 + * tree-ssa-pre.cc (phi_translate_1): Always generate a + representative for translated dependent expressions. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118430 + * tree-ssa-propagate.cc (may_propagate_copy): Return false if dest + is lhs of an [[gnu::musttail]] call. + (substitute_and_fold_dom_walker::before_dom_children): Formatting fix. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118430 + * tree-tailcall.cc: Include gimple-range.h, alloc-pool.h, sreal.h, + symbol-summary.h, ipa-cp.h and ipa-prop.h. + (find_tail_calls): If ass_var is NULL and ret_var is not, check if + IPA-VRP has not found singleton return range for it. In that case, + don't punt if ret_var is the only value in that range. Adjust the + maybe_error_musttail message otherwise to diagnose different value + being returned from the caller and callee rather than using return + slot. Formatting fixes. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + * doc/extend.texi (Using Assembly Language with C): Add Asm constexprs + to @menu. + (Basic Asm): Move @node asm constexprs before Asm Labels, rename to + Asm constexprs, change wording so that it is clearer that the constant + expression actually must not return a string literal, just some specific + container and other wording tweaks. Only talk about top-level for basic + asms in this @node, move restrictions on top-level extended asms to ... + (Extended Asm): ... here. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + PR ipa/118400 + * vec.h (vec<T, va_heap, vl_ptr>::release): Call m_vec->truncate (0) + instead of clearing m_vec->m_vecpfx.m_num. + +2025-01-16 liuhongt <hongtao.liu@intel.com> + + PR target/118489 + * config/i386/sse.md (VF1_AVX512BW): Fix typo. + +2025-01-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115895 + * tree-vect-stmts.cc (get_group_load_store_type): When we + might overrun because the group size is not a multiple of the + vector size we cannot use loop masking since that does not + implement the required load shortening. + +2025-01-16 Keith Packard <keithp@keithp.com> + + * config/lm32/lm32.cc: Add several #includes. + (va_list_type): New. + (lm32_build_va_list): New function. + (lm32_builtin_va_start): Likewise. + (lm32_sd_gimplify_va_arg_expr): Likewise. + (lm32_gimplify_va_arg_expr): Likewise. + +2025-01-16 Keith Packard <keithp@keithp.com> + + * config/lm32/lm32.cc (setup_incoming_varargs): Adjust the + conditionals so that pretend_size is always computed, even + if no_rtl is set. + +2025-01-16 Keith Packard <keithp@keithp.com> + + * config/lm32/lm32.cc (lm32_setup_incoming_varargs): Skip last + named parameter when preparing to flush registers with unnamed + arguments to th stack. + +2025-01-16 Keith Packard <keithp@keithp.com> + + * config/lm32/lm32.cc (lm32_function_arg): Pass unnamed + arguments in registers too, just like named arguments. + +2025-01-16 Andi Kleen <ak@gcc.gnu.org> + + * config/i386/x86-tune-sched-core.cc: Fix incorrect comment. + +2025-01-16 Eugene Rozenfeld <erozen@microsoft.com> + + PR gcov-profile/116743 + * auto-profile.cc (afdo_annotate_cfg): Fix mismatch between the call graph node count + and the entry block count. + +2025-01-15 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/102705 + * match.pd (`(1 >> X) != 0`): Remove pattern. + (`1 >> x`): New pattern. + +2025-01-15 Sam James <sam@gentoo.org> + + * doc/extend.texi: Cleanup trailing whitespace. + +2025-01-15 Sam James <sam@gentoo.org> + + * doc/extend.texi: Add 'a' for grammar fix. + +2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/tuning_models/neoverse512tvb.h (tune_flags): Update. + +2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNE_BASE): + Add AARCH64_EXTRA_TUNE_FULLY_PIPELINED_FMA. + * config/aarch64/tuning_models/ampere1b.h: Remove redundant + AARCH64_EXTRA_TUNE_FULLY_PIPELINED_FMA. + * config/aarch64/tuning_models/neoversev2.h: Likewise. + +2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/aarch64.cc (aarch64_override_options): Add warning. + * doc/invoke.texi: Document -mabi=ilp32 as deprecated. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * config/bpf/core-builtins.cc (compute_field_expr): Change + VAR_DECL outcome in switch case. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * config/bpf/core-builtins.cc + (make_gimple_core_safe_access_index): Fix in condition. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * btfout.cc (get_btf_kind): Remove static from function definition. + * config/bpf/btfext-out.cc (bpf_code_reloc_add): Check if CO-RE type + is not a const or volatile. + * ctfc.h (btf_dtd_kind): Add prototype for function. + +2025-01-15 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/118472 + * fold-const.cc (operand_compare::operand_equal_p): Fix incorrect + replacement. + +2025-01-15 Richard Biener <rguenther@suse.de> + + * genmatch.cc (define_dump_logs): Make reverse lookup in + dbg_line_numbers easier by adding comments with start index + and cutting number of elements per line to 10. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR ipa/116068 + * cgraphunit.cc (symbol_table::process_new_functions): Call + bitmap_obstack_initialize (NULL); and bitmap_obstack_release (NULL) + around processing the functions. + +2025-01-15 Kito Cheng <kito.cheng@sifive.com> + + PR target/118182 + * config/riscv/autovec-opt.md (*widen_reduc_plus_scal_<mode>): Adjust + argument for expand_reduction. + (*widen_reduc_plus_scal_<mode>): Ditto. + (*fold_left_widen_plus_<mode>): Ditto. + (*mask_len_fold_left_widen_plus_<mode>): Ditto. + (*cond_widen_reduc_plus_scal_<mode>): Ditto. + (*cond_len_widen_reduc_plus_scal_<mode>): Ditto. + (*cond_widen_reduc_plus_scal_<mode>): Ditto. + * config/riscv/autovec.md (reduc_plus_scal_<mode>): Adjust argument for + expand_reduction. + (reduc_smax_scal_<mode>): Ditto. + (reduc_umax_scal_<mode>): Ditto. + (reduc_smin_scal_<mode>): Ditto. + (reduc_umin_scal_<mode>): Ditto. + (reduc_and_scal_<mode>): Ditto. + (reduc_ior_scal_<mode>): Ditto. + (reduc_xor_scal_<mode>): Ditto. + (reduc_plus_scal_<mode>): Ditto. + (reduc_smax_scal_<mode>): Ditto. + (reduc_smin_scal_<mode>): Ditto. + (reduc_fmax_scal_<mode>): Ditto. + (reduc_fmin_scal_<mode>): Ditto. + (fold_left_plus_<mode>): Ditto. + (mask_len_fold_left_plus_<mode>): Ditto. + * config/riscv/riscv-v.cc (expand_reduction): Add one more + argument for reduction code for vl0-safe. + * config/riscv/riscv-protos.h (expand_reduction): Ditto. + * config/riscv/vector-iterators.md (unspec): Add _VL0_SAFE variant of + reduction. + (ANY_REDUC_VL0_SAFE): New. + (ANY_WREDUC_VL0_SAFE): Ditto. + (ANY_FREDUC_VL0_SAFE): Ditto. + (ANY_FREDUC_SUM_VL0_SAFE): Ditto. + (ANY_FWREDUC_SUM_VL0_SAFE): Ditto. + (reduc_op): Add _VL0_SAFE variant of reduction. + (order) Ditto. + * config/riscv/vector.md (@pred_<reduc_op><mode>): New. + +2025-01-15 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115777 + * tree-vect-slp.cc (vect_bb_slp_scalar_cost): Do not + cost a scalar stmt that needs to be preserved. + +2025-01-15 Michal Jires <mjires@suse.cz> + + PR lto/118238 + * lto-wrapper.cc (run_gcc): Remove link() copying. + +2025-01-15 Anton Blanchard <antonb@tenstorrent.com> + Jeff Law <jlaw@ventanamicro.com> + + PR target/118170 + * config/riscv/generic-ooo.md (generic_ooo_float_div_half): New + reservation. + +2025-01-15 Richard Sandiford <richard.sandiford@arm.com> + Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/109592 + * simplify-rtx.cc (simplify_context::simplify_binary_operation_1): + Simplify nested shifts with subregs. + +2025-01-14 anetczuk <anetczuk@o2.pl> + + * tree-dump.cc (dequeue_and_dump): Handle OBJ_TYPE_REF. + +2025-01-14 Alexandre Oliva <oliva@adacore.com> + + * gimple-fold.cc (decode_field_reference): Rebustify to set + out parms only when returning non-NULL. + (fold_truth_andor_for_ifcombine): Bail if + decode_field_reference returns NULL. Add complementary assert + on r_const's not being set when l_const isn't. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + + * cgraph.cc (symbol_table::create_edge): Don't set + calls_declare_variant_alt in the caller. + * cgraph.h (struct cgraph_node): Remove declare_variant_alt + and calls_declare_variant_alt flags. + * cgraphclones.cc (cgraph_node::create_clone): Don't copy + calls_declare_variant_alt bit. + * gimplify.cc: Remove previously #ifdef-ed out code. + * ipa-free-lang-data.cc (free_lang_data_in_decl): Adjust code + referencing declare_variant_alt bit. + * ipa.cc (symbol_table::remove_unreachable_nodes): Likewise. + * lto-cgraph.cc (lto_output_node): Remove references to deleted + bits. + (output_refs): Adjust code referencing declare_variant_alt bit. + (input_overwrite_node): Remove references to deleted bits. + (input_refs): Adjust code referencing declare_variant_alt bit. + * lto-streamer-out.cc (lto_output): Likewise. + * lto-streamer.h (omp_lto_output_declare_variant_alt): Delete. + (omp_lto_input_declare_variant_alt): Delete. + * omp-expand.cc (expand_omp_target): Use has_omp_variant_constructs + bit to trigger pass_omp_device_lower instead of + calls_declare_variant_alt. + * omp-general.cc (struct omp_declare_variant_entry): Delete. + (struct omp_declare_variant_base_entry): Delete. + (struct omp_declare_variant_hasher): Delete. + (omp_declare_variant_hasher::hash): Delete. + (omp_declare_variant_hasher::equal): Delete. + (omp_declare_variants): Delete. + (omp_declare_variant_alt_hasher): Delete. + (omp_declare_variant_alt_hasher::hash): Delete. + (omp_declare_variant_alt_hasher::equal): Delete. + (omp_declare_variant_alt): Delete. + (omp_lto_output_declare_variant_alt): Delete. + (omp_lto_input_declare_variant_alt): Delete. + (includes): Delete unnecessary include of gt-omp-general.h. + * omp-offload.cc (execute_omp_device_lower): Remove references + to deleted bit. + (pass_omp_device_lower::gate): Likewise. + * omp-simd-clone.cc (simd_clone_create): Likewise. + * passes.cc (ipa_write_summaries): Likeise. + * symtab.cc (symtab_node::get_partitioning_class): Likewise. + * tree-inline.cc (expand_call_inline): Likewise. + (tree_function_versioning): Likewise. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Marcel Vollweiler <marcel@codesourcery.com> + + PR middle-end/114596 + PR middle-end/112779 + PR middle-end/113904 + * Makefile.in (GTFILES): Move omp-general.h earlier; required + because of moving score_wide_int declaration to that file. + * cgraph.h (struct cgraph_node): Add has_omp_variant_constructs flag. + * cgraphclones.cc (cgraph_node::create_clone): Propagate + has_omp_variant_constructs flag. + * gimplify.cc (omp_resolved_variant_calls): New. + (expand_late_variant_directive): New. + (find_supercontext): New. + (gimplify_variant_call_expr): New. + (gimplify_call_expr): Adjust parameters to make fallback available. + Update processing for "declare variant" substitution. + (is_gimple_stmt): Add OMP_METADIRECTIVE. + (omp_construct_selector_matches): Ifdef out unused function. + (omp_get_construct_context): New. + (gimplify_omp_dispatch): Replace call to deleted function + omp_resolve_declare_variant with equivalent logic. + (expand_omp_metadirective): New. + (expand_late_variant_directive): New. + (gimplify_omp_metadirective): New. + (gimplify_expr): Adjust arguments to gimplify_call_expr. Add + cases for OMP_METADIRECTIVE, OMP_NEXT_VARIANT, and + OMP_TARGET_DEVICE_MATCHES. + (gimplify_function_tree): Initialize/clean up + omp_resolved_variant_calls. + * gimplify.h (omp_construct_selector_matches): Delete declaration. + (omp_get_construct_context): Declare. + * lto-cgraph.cc (lto_output_node): Write has_omp_variant_constructs. + (input_overwrite_node): Read has_omp_variant_constructs. + * omp-builtins.def (BUILT_IN_OMP_GET_NUM_DEVICES): New. + * omp-expand.cc (expand_omp_taskreg): Propagate + has_omp_variant_constructs. + (expand_omp_target): Likewise. + * omp-general.cc (omp_maybe_offloaded): Add construct_context + parameter; use it instead of querying gimplifier state. Add + comments. + (omp_context_name_list_prop): Do not test lang_GNU_Fortran in + offload compiler, just use the string as-is. + (expr_uses_parm_decl): New. + (omp_check_context_selector): Add metadirective_p parameter. + Remove sorry for target_device selector. Add additional checks + specific to metadirective or declare variant. + (make_omp_metadirective_variant): New. + (omp_construct_traits_match): New. + (omp_context_selector_matches): Temporarily ifdef out the previous + code, and add a new implementation based on the old one with + different parameters, some unnecessary loops removed, and code + re-indented. + (omp_target_device_matches_on_host): New. + (resolve_omp_target_device_matches): New. + (omp_construct_simd_compare): Support matching of "simdlen" and + "aligned" clauses. + (omp_context_selector_set_compare): Make static. Adjust call to + omp_construct_simd_compare. + (score_wide_int): Move declaration to omp-general.h. + (omp_selector_is_dynamic): New. + (omp_device_num_check): New. + (omp_dynamic_cond): New. + (omp_context_compute_score): Ifdef out the old version and + re-implement with different parameters. + (omp_complete_construct_context): New. + (omp_resolve_late_declare_variant): Ifdef out. + (omp_declare_variant_remove_hook): Likewise. + (omp_resolve_declare_variant): Likewise. + (sort_variant): New. + (omp_get_dynamic_candidates): New. + (omp_declare_variant_candidates): New. + (omp_metadirective_candidates): New. + (omp_early_resolve_metadirective): New. + (omp_resolve_variant_construct): New. + * omp-general.h (score_wide_int): Moved here from omp-general.cc. + (struct omp_variant): New. + (make_omp_metadirective_variant): Declare. + (omp_construct_traits_to_codes): Delete declaration. + (omp_check_context_selector): Adjust parameters. + (omp_context_selector_matches): Likewise. + (omp_context_selector_set_compare): Delete declaration. + (omp_resolve_declare_variant): Likewise. + (omp_declare_variant_candidates): Declare. + (omp_metadirective_candidates): Declare. + (omp_get_dynamic_candidates): Declare. + (omp_early_resolve_metadirective): Declare. + (omp_resolve_variant_construct): Declare. + (omp_dynamic_cond): Declare. + * omp-offload.cc (resolve_omp_variant_cookies): New. + (execute_omp_device_lower): Call the above function to resolve + variant directives. Remove call to omp_resolve_declare_variant. + (pass_omp_device_lower::gate): Check has_omp_variant_construct bit. + * omp-simd-clone.cc (simd_clone_create): Propagate + has_omp_variant_constructs bit. + * tree-inline.cc (expand_call_inline): Likewise. + (tree_function_versioning): Likewise. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + + * doc/generic.texi (OpenMP): Document OMP_METADIRECTIVE, + OMP_NEXT_VARIANT, and OMP_TARGET_DEVICE_MATCHES. + * fold-const.cc (operand_compare::hash_operand): Ignore + the new nodes. + * gimple-expr.cc (is_gimple_val): Allow OMP_NEXT_VARIANT + and OMP_TARGET_DEVICE_MATCHES. + * gimple.cc (get_gimple_rhs_num_ops): OMP_NEXT_VARIANT and + OMP_TARGET_DEVICE_MATCHES are both GIMPLE_SINGLE_RHS. + * tree-cfg.cc (tree_node_can_be_shared): Allow sharing of + OMP_NEXT_VARIANT. + * tree-inline.cc (remap_gimple_op_r): Ignore subtrees of + OMP_NEXT_VARIANT. + * tree-pretty-print.cc (dump_generic_node): Handle OMP_METADIRECTIVE, + OMP_NEXT_VARIANT, and OMP_TARGET_DEVICE_MATCHES. + * tree-ssa-operands.cc (operands_scanner::get_expr_operands): + Ignore operands of OMP_NEXT_VARIANT and OMP_TARGET_DEVICE_MATCHES. + * tree.def (OMP_METADIRECTIVE): New. + (OMP_NEXT_VARIANT): New. + (OMP_TARGET_DEVICE_MATCHES): New. + * tree.h (OMP_METADIRECTIVE_VARIANTS): New. + (OMP_METADIRECTIVE_VARIANT_SELECTOR): New. + (OMP_METADIRECTIVE_VARIANT_DIRECTIVE): New. + (OMP_METADIRECTIVE_VARIANT_BODY): New. + (OMP_NEXT_VARIANT_INDEX): New. + (OMP_NEXT_VARIANT_STATE): New. + (OMP_TARGET_DEVICE_MATCHES_SELECTOR): New. + (OMP_TARGET_DEVICE_MATCHES_PROPERTIES): New. + +2025-01-14 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118456 + * gimple-fold.cc (decode_field_reference): Punt if shifting + after changing signedness. + (fold_truth_andor_for_ifcombine): Check extension bits in + constants before clipping. + +2025-01-14 Robin Dapp <rdapp@ventanamicro.com> + + PR target/118154 + * config/riscv/riscv-vsetvl.cc (MAX_LMUL): New define. + (pre_vsetvl::earliest_fuse_vsetvl_info): Use. + (pre_vsetvl::pre_global_vsetvl_info): New predicate with equal + ratio. + * config/riscv/riscv-vsetvl.def: Use. + +2025-01-14 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/118140 + * gimple-match-exports.cc (maybe_resimplify_conditional_op): Add + COND_EXPR when we simplified to a scalar gimple value but still + have an else value. + +2025-01-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118405 + * tree-vect-stmts.cc (vectorizable_load): When we fall back + to scalar loads make sure we properly convert to vector(1) T + when there was only a single vector element. + +2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> + + * config/riscv/riscv-v.cc (expand_const_vector): Shift in Xmode. + +2025-01-14 Jiufu Guo <guojiufu@linux.ibm.com> + + PR target/116030 + * config/rs6000/vsx.md (vsx_stxvd2x4_le_const_<mode>): Add clobber + and guard with !altivec_indexed_or_indirect_operand. + +2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/117682 + * config/riscv/riscv-v.cc (expand_const_vector): Fall back to + merging if either step is negative. + +2025-01-13 Xi Ruoyao <xry111@xry111.site> + + PR target/115921 + * config/riscv/riscv.md (<optab>_shift_reverse): Remove + check for TARGET_ZBA. + +2025-01-13 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118418 + * simplify-rtx.cc (simplify_context::simplify_relational_operation_1): + Take STORE_FLAG_VALUE into account when handling signed comparisons + of comparison results. + +2025-01-13 Xi Ruoyao <xry111@xry111.site> + + PR target/115921 + * config/riscv/riscv.md (<optab>_shift_reverse): Only check + popcount_hwi if !TARGET_ZBS. + +2025-01-13 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/riscv-vsetvl.cc (demand_system::use_max_sew): Also + set the ratio for PREV. + +2025-01-13 Vineet Gupta <vineetg@rivosinc.com> + + * config/riscv/riscv.cc (riscv_register_move_cost): Remove buggy + check. + +2025-01-13 Jin Ma <jinma@linux.alibaba.com> + + * config/riscv/riscv.cc (riscv_build_integer_1): Change + 1UL/1ULL to HOST_WIDE_INT_1U. + +2025-01-13 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/107455 + * postreload.cc (reload_cse_regs_1): Take advantage of conditional + equivalences. + +2025-01-13 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118409 + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Apply the + signbit mask to the right-hand XOR operand too. + +2025-01-13 Jakub Jelinek <jakub@redhat.com> + + PR target/115910 + * expr.cc (expand_expr_divmod): Prefix the TDF_DETAILS note with + ";; " and add a space before (needed tie breaker). Formatting fixes. + +2025-01-13 Richard Biener <rguenther@suse.de> + Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + PR tree-optimization/117119 + * tree-data-ref.cc (initialize_matrix_A): Check whether + an INTEGER_CST fits in HWI, otherwise return chrec_dont_know. + +2025-01-13 Michal Jires <mjires@suse.cz> + + PR lto/118181 + * lto-ltrans-cache.cc (ltrans_file_cache::create_item): + Pass checksum by reference. + * lto-ltrans-cache.h: Likewise. + +2025-01-13 Michal Jires <mjires@suse.cz> + + * lockfile.cc (LOCKFILE_USE_FCNTL): New. + (lockfile::lock_write): Use LOCKFILE_USE_FCNTL. + (lockfile::try_lock_write): Use LOCKFILE_USE_FCNTL. + (lockfile::lock_read): Use LOCKFILE_USE_FCNTL. + (lockfile::unlock): Use LOCKFILE_USE_FCNTL. + (lockfile::lockfile_supported): Use LOCKFILE_USE_FCNTL. + +2025-01-13 liuhongt <hongtao.liu@intel.com> + + * config/i386/i386-expand.cc (ix86_expand_vecop_qihi2): + Refactor to avoid redundant TARGET_AVX512BW in many places. + +2025-01-13 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/117997 + PR middle-end/118415 + * expr.cc (assemble_crc_table): Make static, remove id argument, + use output_constant_def. Emit note if -fdump-rtl-expand-details + about which table has been emitted. + (generate_crc_table): Make static, adjust assemble_crc_table + caller, call it always. + (calculate_table_based_CRC): Make static. + * internal-fn.cc (expand_crc_optab_fn): Emit note if + -fdump-rtl-expand-details about using optab for crc. Formatting fix. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha.cc (alpha_expand_block_move): Use a HImode + subreg of a DImode register to hold data from an aligned HImode + load. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha.cc (alpha_expand_block_move): Merge loaded + data from pairs of SImode registers into single DImode registers + if to be used with unaligned stores. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha.cc (alpha_option_override): Ignore CPU + flags corresponding to features the enabling or disabling of + which has been requested with an individual feature option. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + PR middle-end/64242 + * config/alpha/alpha.md (`builtin_longjmp'): Restore frame + pointer last. Add frame clobber and schedule blockage. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * config/alpha/alpha.md (builtin_longjmp): Add memory clobbers. + +2025-01-12 Richard Biener <rguenther@suse.de> + + * tree-vect-slp.cc (vect_analyze_slp): Release saved_stmts + vector. + (vect_build_slp_tree_2): Release new_oprnds_info when not + used. + (vect_analyze_slp): Release root_stmts when gcond SLP + build fails. + +2025-01-12 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/118411 + * final.cc (get_attr_length_1): Handle asm for CALL_INSN + and JUMP_INSNs. + +2025-01-11 mengqinggang <mengqinggang@loongson.cn> + + * config/loongarch/lasx.md: Use new loongarch_output_move. + * config/loongarch/loongarch-protos.h (loongarch_output_move): + Change parameters from (rtx, rtx) to (rtx *). + * config/loongarch/loongarch.cc (loongarch_output_move): + Generate final immediate for lu12i.w and lu52i.d. + * config/loongarch/loongarch.md: + Generate final immediate for lu32i.d and lu52i.d. + * config/loongarch/lsx.md: Use new loongarch_output_move. + +2025-01-11 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/88575 + * vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Query + relation between op0 and op1 and utilize it. + (simplify_using_ranges::simplify): Do not eliminate float checks. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost): + Don't skip over gconds. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * tree-vect-loop-manip.cc (vect_do_peeling): Adjust skip_vector + condition to only omit the edge if we're versioning for + alignment. + +2025-01-10 Tamar Christina <Tamar.Christina@arm.com> + Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * tree-vect-loop-manip.cc (vect_do_peeling): Update immediate + dominators of nodes that were dominated by the prolog skip block + after inserting vector skip edge. Initialize prolog variable to + NULL to avoid bogus -Wmaybe-uninitialized during bootstrap. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * tree-vect-loop-manip.cc (vect_do_peeling): Avoid emitting an + epilogue guard for inverted early-exit loops. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * tree-vect-data-refs.cc (vect_analyze_early_break_dependences): + Set need_peeling_for_alignment flag on read DRs instead of + failing vectorization. Punt on gathers. + (dr_misalignment): Handle non-constant target alignments. + (vect_compute_data_ref_alignment): If need_peeling_for_alignment + flag is set on the DR, then override the target alignment chosen + by the preferred_vector_alignment hook to choose a safe + alignment. + (vect_supportable_dr_alignment): Override + support_vector_misalignment hook if need_peeling_for_alignment + is set on the DR: in this case we must return + dr_unaligned_unsupported in order to force peeling. + * tree-vect-loop-manip.cc (vect_do_peeling): Allow prolog + peeling by a compile-time non-constant amount. + * tree-vectorizer.h (dr_vec_info): Add new flag + need_peeling_for_alignment. + +2025-01-10 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Fix cortex-x4 parts + num. + +2025-01-10 Richard Biener <rguenther@suse.de> + + * df-core.cc (rest_of_handle_df_finish): Release dflow for + problems without free function (like LR). + * gimple-crc-optimization.cc (crc_optimization::loop_may_calculate_crc): + Release loop_bbs on all exits. + * tree-vectorizer.h (supportable_indirect_convert_operation): Change. + * tree-vect-generic.cc (expand_vector_conversion): Adjust. + * tree-vect-stmts.cc (vectorizable_conversion): Use auto_vec for + converts. + (supportable_indirect_convert_operation): Get a reference to + the output vector of converts. + +2025-01-10 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/118332 + * config/arm/arm-mve-builtins.cc (wrap_type_in_struct): Delete. + (register_type_decl): Delete. + (register_builtin_tuple_types): Use + lang_hooks.types.simulate_record_decl. + +2025-01-10 Richard Biener <rguenther@suse.de> + + * gcse.cc (pass_hardreg_pre::gate): Wrap possibly unused + fun argument. + +2025-01-10 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/117467 + PR rtl-optimization/117934 + * ext-dce.cc (ext_dce_execute): Do nothing if a memory + allocation estimate exceeds what is allowed by + --param max-gcse-memory. + +2025-01-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * config/s390/s390-protos.h (s390_emit_compare): Add mode + parameter for the resulting RTX. + * config/s390/s390.cc (s390_emit_compare): Dito. + (s390_emit_compare_and_swap): Change. + (s390_expand_vec_strlen): Change. + (s390_expand_cs_hqi): Change. + (s390_expand_split_stack_prologue): Change. + * config/s390/s390.md (*add<mode>3_carry1_cc): Renamed to ... + (add<mode>3_carry1_cc): this and in order to use the + corresponding gen function, encode CC mode into pattern. + (*sub<mode>3_borrow_cc): Renamed to ... + (sub<mode>3_borrow_cc): this and in order to use the + corresponding gen function, encode CC mode into pattern. + (*add<mode>3_alc_carry1_cc): Renamed to ... + (add<mode>3_alc_carry1_cc): this and in order to use the + corresponding gen function, encode CC mode into pattern. + (sub<mode>3_slb_borrow1_cc): New. + (uaddc<mode>5): New. + (usubc<mode>5): New. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * doc/passes.texi: Document hardreg PRE pass. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64.h (HARDREG_PRE_REGNOS): New macro. + * gcse.cc (doing_hardreg_pre_p): New global variable. + (do_load_motion): New boolean check. + (current_hardreg_regno): New global variable. + (compute_local_properties): Unset transp for hardreg clobbers. + (prune_hardreg_uses): New function. + (want_to_gcse_p): Use different checks for hardreg PRE. + (oprs_unchanged_p): Disable load motion for hardreg PRE pass. + (hash_scan_set): For hardreg PRE, skip non-hardreg sets and + check for hardreg clobbers. + (record_last_mem_set_info): Skip for hardreg PRE. + (compute_pre_data): Prune hardreg uses from transp bitmap. + (pre_expr_reaches_here_p_work): Add sentence to comment. + (insert_insn_start_basic_block): New functions. + (pre_edge_insert): Don't add hardreg sets to predecessor block. + (pre_delete): Use hardreg for the reaching reg. + (reset_hardreg_debug_uses): New function. + (pre_gcse): For hardreg PRE, reset debug uses and don't insert + copies. + (one_pre_gcse_pass): Disable load motion for hardreg PRE. + (execute_hardreg_pre): New. + (class pass_hardreg_pre): New. + (pass_hardreg_pre::gate): New. + (make_pass_hardreg_pre): New. + * passes.def (pass_hardreg_pre): New pass. + * tree-pass.h (make_pass_hardreg_pre): New. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * multiple_target.cc + (redirect_to_specific_clone): Assert that "target" attribute is + used for FMV before checking it. + (ipa_target_clone): Skip redirect_to_specific_clone on some + targets. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * doc/invoke.texi: Add new AArch64 flags. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_7A): Add XS. + * config/aarch64/aarch64-option-extensions.def (XS): New flag. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_7A): Add WFXT. + * config/aarch64/aarch64-option-extensions.def (WFXT): New flag. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_4A): Add RCPC2. + * config/aarch64/aarch64-option-extensions.def + (RCPC2): New flag. + (RCPC3): Add RCPC2 dependency. + * config/aarch64/aarch64.h (TARGET_RCPC2): Use new flag. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_5A): Add FLAGM2. + * config/aarch64/aarch64-option-extensions.def (FLAGM2): New flag. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_5A): Add FRINTTS + * config/aarch64/aarch64-option-extensions.def (FRINTTS): New flag. + * config/aarch64/aarch64.h (TARGET_FRINT): Use new flag. + * config/aarch64/arm_acle.h: Use new flag for frintts intrinsics. + * config/aarch64/arm_neon.h: Ditto. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_3A): Add JSCVT. + * config/aarch64/aarch64-option-extensions.def (JSCVT): New flag. + * config/aarch64/aarch64.h (TARGET_JSCVT): Use new flag. + * config/aarch64/arm_acle.h: Use new flag for jscvt intrinsics. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64-arches.def (V8_3A): Add FCMA. + * config/aarch64/aarch64-option-extensions.def (FCMA): New flag. + (SVE): Add FCMA dependency. + * config/aarch64/aarch64.h (TARGET_COMPLEX): Use new flag. + * config/aarch64/arm_neon.h: Use new flag for fcma intrinsics. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * config/aarch64/aarch64.cc + (aarch64_expand_epilogue): Use TARGET_PAUTH. + * config/aarch64/aarch64.md: Update comment. + +2025-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/117186 + * rtl.h (simplify_context::simplify_logical_relational_operation): Add + an invert0_p parameter. + * simplify-rtx.cc (unsigned_comparison_to_mask): New function. + (mask_to_unsigned_comparison): Likewise. + (comparison_code_valid_for_mode): Delete. + (simplify_context::simplify_logical_relational_operation): Add + an invert0_p parameter. Handle AND and XOR. Handle unsigned + comparisons. Handle always-false results. Ignore the low bit + of the mask if the operands are always ordered and remove the + then-redundant check of comparison_code_valid_for_mode. Check + for side-effects in the operands before simplifying them away. + (simplify_context::simplify_binary_operation_1): Remove + simplification of (compare (gt ...) (lt ...)) and instead... + (simplify_context::simplify_relational_operation_1): ...handle + comparisons of comparisons here. + (test_comparisons): New function. + (test_scalar_ops): Call it. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + * gimple-fold.cc (decode_field_reference): Drop misuses of + uniform_integer_cst_p. + (fold_truth_andor_for_ifcombine): Likewise. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118344 + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Fix typo in + rr_and_mask's type adjustment test. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + * gimple-fold.cc (decode_field_reference): Add xor_pand_mask. + Propagate pand_mask to the right-hand xor operand. Don't + require the right-hand xor operand to be a constant. + (fold_truth_andor_for_ifcombine): Pass right-hand mask when + appropriate. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118206 + * gimple-fold.cc (decode_field_reference): Account for upper + bits dropped by narrowing conversions whether before or after + a right shift. + (fold_truth_andor_for_ifcombine): Fold masks, compares, and + combined results. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + * gimple-fold.cc (fold_truth_andor_for_ifcombine): Limit + boundary choice by word size as well. Try aligned double-word + loads as a last resort. + +2025-01-10 Martin Jambor <mjambor@suse.cz> + + PR ipa/118138 + * ipa-cp.cc (ipacp_value_safe_for_type): Return the appropriate + type instead of a bool, accept NULL_TREE VALUEs. + (propagate_vals_across_arith_jfunc): Use the new returned value of + ipacp_value_safe_for_type. + (propagate_vals_across_ancestor): Likewise. + (propagate_scalar_across_jump_function): Likewise. + +2025-01-10 chenxiaolong <chenxiaolong@loongson.cn> + Deng Jianbo <dengjianbo@loongson.cn>. + + * config/loongarch/loongarch.cc + (loongarch_builtin_vectorization_cost): Modify the + construction cost of the vec_construct vector. + +2025-01-09 Tamar Christina <tamar.christina@arm.com> + + PR target/118188 + * config/aarch64/aarch64.cc (aarch64_vector_costs::count_ops): Adjust + throughput of emulated gather and scatters. + +2025-01-09 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118017 + * lra-constraints.cc (inherit_reload_reg): Check reg class on uniformity. + +2025-01-09 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/118362 + * config/s390/s390.cc (s390_constant_via_vgbm_p): Allow at most + 16-byte vectors. + +2025-01-09 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/118131 + * config/arm/arm.h (VALID_MVE_STRUCT_MODE): Accept TI, OI and XI + modes again. + +2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * config/nvptx/nvptx.cc (nvptx_get_drap_rtx): Handle + '!TARGET_SOFT_STACK'. + * config/nvptx/nvptx.md (define_c_enum "unspec"): Add + 'UNSPEC_STACKSAVE', 'UNSPEC_STACKRESTORE'. + (define_expand "allocate_stack", define_expand "save_stack_block") + (define_expand "save_stack_block"): Handle '!TARGET_SOFT_STACK', + PTX 'alloca'. + (define_insn "@nvptx_alloca_<mode>") + (define_insn "@nvptx_stacksave_<mode>") + (define_insn "@nvptx_stackrestore_<mode>"): New. + * doc/invoke.texi (Nvidia PTX Options): Update '-msoft-stack', + '-mno-soft-stack'. + * doc/sourcebuild.texi (nvptx-specific attributes): Document + 'nvptx_runtime_alloca_ptx'. + (Add Options): Document 'nvptx_alloca_ptx'. + +2025-01-09 Richard Biener <rguenther@suse.de> + + * cfgloopmanip.cc (duplicate_loop_body_to_header_edge): When + copying to the header edge first redirect the entry to the + new loop and then the exit to the old to avoid PHI node + re-allocation. + +2025-01-09 H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/118266 + * ree.cc (add_removable_extension): Skip extension on fixed + register. + +2025-01-09 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/117927 + * tree-pass.h (PROP_last_full_fold): Define. + * passes.def: Add last= parameters to pass_forwprop. + * tree-ssa-forwprop.cc (pass_forwprop): Add last_p non-static + data member and initialize it in the ctor. + (pass_forwprop::set_pass_param): New method. + (pass_forwprop::execute): Set PROP_last_full_fold in curr_properties + at the start if last_p. + * match.pd (a rrotate (32-b) -> a lrotate b): Only optimize either + if @2 is known not to be equal to prec or if during/after last + forwprop the subtraction has single use and prec is power of two; in + that case transform it into orotate by masked count. + +2025-01-09 Haochen Jiang <haochen.jiang@intel.com> + + * common/config/i386/cpuinfo.h (get_intel_cpu): Remove 0x00. + +2025-01-09 xuli <xuli1@eswincomputing.com> + + * config/riscv/riscv-vector-builtins.cc (function_builder::add_unique_function): + Only register overloaded intrinsic for g++. + Only insert non_overloaded_function_table for gcc. + (function_builder::add_overloaded_function): Only register overloaded intrinsic for gcc. + (handle_pragma_vector): Only initialize non_overloaded_function_table for gcc. + +2025-01-09 Tobias Burnus <tburnus@baylibre.com> + + * builtin-types.def (BT_FN_PTRMODE_PTR_INT_PTR): Add. + * gimplify.cc (gimplify_call_expr): Add error for multiple + list items to the OpenMP interop clause if no device clause; + continue instead of restarting after append_args handling. + (gimplify_omp_dispatch): Extract device number from the + single interop-clause list item. + * omp-builtins.def (BUILT_IN_OMP_GET_INTEROP_INT): Add. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * config/nvptx/nvptx.cc (default_ptx_version_option): For + '-march=sm_52' and higher, default at least to '-mptx=7.3'. + * doc/invoke.texi (Nvidia PTX Options): Update '-mptx=[...]'. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + * config/nvptx/nvptx-opts.h (enum ptx_version): Add + 'PTX_VERSION_7_3'. + * config/nvptx/nvptx.cc (ptx_version_to_string) + (ptx_version_to_number): Adjust. + * config/nvptx/nvptx.h (TARGET_PTX_7_3): New. + * config/nvptx/nvptx.opt (Enum(ptx_version)): Add 'EnumValue' + '7.3' for 'PTX_VERSION_7_3'. + * doc/invoke.texi (Nvidia PTX Options): Document '-mptx=7.3'. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + * doc/sourcebuild.texi (Effective-Target Keywords): Document + 'nvptx_softstack'. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * config/nvptx/nvptx.h (STACK_SAVEAREA_MODE): '#define'. + * config/nvptx/nvptx.md [!TARGET_SOFT_STACK] + (save_stack_function): 'define_expand'. + (restore_stack_function): Handle '!TARGET_SOFT_STACK'. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * config/nvptx/nvptx.md [!TARGET_SOFT_STACK] (save_stack_block): + 'define_expand'. + +2025-01-08 Thiago Jung Bauermann <thiago.bauermann@linaro.org> + + * configure.ac: Fix check for HAVE_GAS_SHF_MERGE on Arm targets. + * configure: Regenerate. + +2025-01-08 Richard Sandiford <richard.sandiford@arm.com> + + PR target/107102 + * config/aarch64/aarch64.cc (aarch64_function_ok_for_sibcall): Only + reject calls with different PCSes if the callee clobbers register + state that the caller must preserve. + +2025-01-08 Tobias Burnus <tburnus@baylibre.com> + + * gimplify.cc (gimplify_call_expr): Disable variant function's + append_args in 'omp dispatch' when invoking the variant directly + and not through the base function. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + * doc/invoke.texi (Nvidia PTX Options): Update '-march-map=sm_50'. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117979 + * tree-ssa-dce.cc (make_forwarders_with_degenerate_phis): + Properly update the irreducible region state. + +2025-01-08 Jakub Jelinek <jakub@redhat.com> + + * dwarf2out.cc (break_out_comdat_types): Copy over + DW_AT_language_{name,version} if present. + (output_skeleton_debug_sections): Remove also + DW_AT_language_{name,version}. + (gen_compile_unit_die): For C17, C23, C2Y, C++17, C++20, C++23 + and C++26 emit for -gdwarf-5 -gno-strict-dwarf also + DW_AT_language_{name,version} attributes. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR middle-end/118325 + * tree-nested.cc (convert_nl_goto_reference): Assign proper + context to generated artificial label. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118269 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Use the correct stmt for the REDUC_GROUP_FIRST_ELEMENT lookup. + +2025-01-08 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/118332 + * config/arm/arm-mve-builtins.cc (wrap_type_in_struct): Use 'val' + instead of '__val'. + +2025-01-08 Haochen Jiang <haochen.jiang@intel.com> + + * config/i386/amxavx512intrin.h + (_tile_cvtrowps2pbf16h_internal): Rename to... + (_tile_cvtrowps2bf16h_internal): ...this. + (_tile_cvtrowps2pbf16hi_internal): Rename to... + (_tile_cvtrowps2bf16hi_internal): ...this. + (_tile_cvtrowps2pbf16l_internal): Rename to... + (_tile_cvtrowps2bf16l_internal): ...this. + (_tile_cvtrowps2pbf16li_internal): Rename to... + (_tile_cvtrowps2bf16li_internal): ...this. + (_tile_cvtrowps2pbf16h): Rename to... + (_tile_cvtrowps2bf16h): ...this. + (_tile_cvtrowps2pbf16hi): Rename to... + (_tile_cvtrowps2bf16hi): ...this. + (_tile_cvtrowps2pbf16l): Rename to... + (_tile_cvtrowps2bf16l): ...this. + (_tile_cvtrowps2pbf16li): Rename to... + (_tile_cvtrowps2bf16li): ...this. + +2025-01-08 Hongyu Wang <hongyu.wang@intel.com> + + * config/i386/i386.cc (ix86_noce_max_ifcvt_seq_cost): Adjust + cost with ix86_tune_cost->br_mispredict_scale. + * config/i386/i386.h (processor_costs): Add br_mispredict_scale. + * config/i386/x86-tune-costs.h: Add new br_mispredict_scale to + all processor_costs, in which icelake_cost/alderlake_cost + with value COSTS_N_INSNS (2) + 3 and other processor with value + COSTS_N_INSNS (2). + +2025-01-07 Pan Li <pan2.li@intel.com> + + * match.pd: Update comments for sat_* pattern. + +2025-01-07 Pan Li <pan2.li@intel.com> + + * match.pd: Extract saturated value match for signed SAT_*. + +2025-01-07 Pan Li <pan2.li@intel.com> + + * match.pd: Refactor sorts of signed SAT_TRUNC match patterns + +2025-01-07 Pan Li <pan2.li@intel.com> + + * match.pd: Refactor sorts of signed SAT_SUB match patterns. + +2025-01-07 Vineet Gupta <vineetg@rivosinc.com> + Pan Li <pan2.li@intel.com> + + PR target/117722 + * config/riscv/autovec.md: Add uabd expander. + +2025-01-07 Tsung Chun Lin <tclin914@gmail.com> + + * expr.cc (widest_fixed_size_mode_for_size): Prefer scalar modes + over vector modes in more cases. + +2025-01-07 Andreas Schwab <schwab@suse.de> + + PR target/118137 + * config/riscv/sync.md ("lrsc_atomic_exchange<mode>"): Apply mask + to shifted value. + +2025-01-07 Jeff Law <jlaw@ventanamicro.com> + + * config/ft32/ft32.md (casesi expander): Force operands[2] into + a register if it's not a suitable rimm operand. + +2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * common/config/aarch64/aarch64-common.cc: Switch off fschedule_insns. + +2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * config/aarch64/aarch64.md (movhf_aarch64): Use aarch64_valid_fp_move. + (movsf_aarch64): Likewise. + (movdf_aarch64): Likewise. + * config/aarch64/aarch64.cc (aarch64_valid_fp_move): New function. + * config/aarch64/aarch64-protos.h (aarch64_valid_fp_move): Likewise. + +2025-01-07 Paul-Antoine Arras <parras@baylibre.com> + + * gimplify.cc (gimplify_call_expr): Create variable + variant_substituted_p to control whether adjust_args applies. + +2025-01-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/114932 + * tree-ssa-loop-ivopts.cc (alloc_iv): Perform affine unsigned fold. + +2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/105769 + * cfgexpand.cc (vars_ssa_cache::operator()): For constructors + walk over the elements. + +2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/117426 + PR middle-end/111422 + * cfgexpand.cc (struct vars_ssa_cache): New class. + (vars_ssa_cache::vars_ssa_cache): New constructor. + (vars_ssa_cache::~vars_ssa_cache): New deconstructor. + (vars_ssa_cache::create): New method. + (vars_ssa_cache::exists): New method. + (vars_ssa_cache::add_one): New method. + (vars_ssa_cache::update): New method. + (vars_ssa_cache::dump): New method. + (add_scope_conflicts_2): Factor mostly out to + vars_ssa_cache::operator(). New cache argument. + Walk the bitmap cache for the stack variables addresses. + (vars_ssa_cache::operator()): New method factored out from + add_scope_conflicts_2. Rewrite to be a full walk of all operands + and use a worklist. + (add_scope_conflicts_1): Add cache new argument for the addr cache. + Just call add_scope_conflicts_2 for the phi result instead of calling + for the uses and don't call walk_stmt_load_store_addr_ops for phis. + Update call to add_scope_conflicts_2 to add cache argument. + (add_scope_conflicts): Add cache argument and update calls to + add_scope_conflicts_1. + +2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> + + * cfgexpand.cc (INVALID_STACK_INDEX): New defined. + (decl_stack_index): New function. + (visit_op): Use decl_stack_index. + (visit_conflict): Likewise. + (add_scope_conflicts_1): Likewise. + +2025-01-07 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/118298 + * loop-unroll.cc (decide_unroll_constant_iterations): Honor + loop->unroll even if the loop is too big for heuristics. + +2025-01-07 Deng Jianbo <dengjianbo@loongson.cn> + + * config/loongarch/loongarch.cc (loongarch_output_move): + Optimize instructions for initializing fp regsiter to zero. + +2025-01-07 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118010 + * doc/gm2.texi (Compiler options): New option + -fm2-file-offset-bits=. + +2025-01-07 Jennifer Schmitz <jschmitz@nvidia.com> + + * tree-vect-stmts.cc (vectorizable_store): Extend the use of + n_adjacent_stores to also cover vec_to_scalar operations. + * config/aarch64/aarch64-tuning-flags.def: Remove + use_new_vector_costs as tuning option. + * config/aarch64/aarch64.cc (aarch64_use_new_vector_costs_p): + Remove. + (aarch64_vector_costs::add_stmt_cost): Remove use of + aarch64_use_new_vector_costs_p. + (aarch64_vector_costs::finish_cost): Remove use of + aarch64_use_new_vector_costs_p. + * config/aarch64/tuning_models/cortexx925.h: Remove + AARCH64_EXTRA_TUNE_USE_NEW_VECTOR_COSTS. + * config/aarch64/tuning_models/fujitsu_monaka.h: Likewise. + * config/aarch64/tuning_models/generic_armv8_a.h: Likewise. + * config/aarch64/tuning_models/generic_armv9_a.h: Likewise. + * config/aarch64/tuning_models/neoverse512tvb.h: Likewise. + * config/aarch64/tuning_models/neoversen2.h: Likewise. + * config/aarch64/tuning_models/neoversen3.h: Likewise. + * config/aarch64/tuning_models/neoversev1.h: Likewise. + * config/aarch64/tuning_models/neoversev2.h: Likewise. + * config/aarch64/tuning_models/neoversev3.h: Likewise. + * config/aarch64/tuning_models/neoversev3ae.h: Likewise. + +2025-01-06 Alexandre Oliva <oliva@adacore.com> + + PR middle-end/118006 + * cfgexpand.cc (expand_gimple_basic_block): Do not emit + pending stack adjustments after a barrier. + +2025-01-06 Akram Ahmad <Akram.Ahmad@arm.com> + + * config/aarch64/aarch64-simd.md: (*aarch64_trunc_concat) + new insn definition. + +2025-01-06 Fangrui Song <maskray@gcc.gnu.org> + + PR gcov-profile/96092 + * coverage.cc (coverage_init): Remap getpwd(). + +2025-01-06 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64-sve-builtins-base.cc + (svmul_impl::fold): Wrap code for folding to svneg in lambda + function and pass to gimple_folder::convert_and_fold to enable + the transform for unsigned types. + * config/aarch64/aarch64-sve-builtins.cc + (gimple_folder::convert_and_fold): New function that converts + operands to target type before calling callback function, adding the + necessary conversion statements. + (gimple_folder::redirect_call): Set fntype of redirected call. + (get_vector_type): Move from here to aarch64-sve-builtins.h. + * config/aarch64/aarch64-sve-builtins.h + (gimple_folder::convert_and_fold): Declare function. + (get_vector_type): Move here as inline function. + +2025-01-06 Martin Jambor <mjambor@suse.cz> + + * ipa-cp.cc (ipcp_print_widest_int): New function. + (ipcp_store_vr_results): Use it. + (ipcp_bits_lattice::print): Likewise. Fix formatting. + +2025-01-06 Mark Wielaard <mark@klomp.org> + + PR tree-optimization/118032 + * tree-switch-conversion.cc (jump_table_cluster::find_jump_tables): + Remove param_switch_lower_slow_alg_max_cases check. + +2025-01-06 Tamar Christina <tamar.christina@arm.com> + + PR target/96342 + PR target/118272 + * config/aarch64/aarch64-sve.md (vec_init<mode><Vquad>, + vec_initvnx16qivnx2qi): New. + * config/aarch64/aarch64.cc (aarch64_sve_expand_vector_init_subvector): + Rewrite to support any arbitrary combinations. + * config/aarch64/iterators.md (SVE_NO2E): Update to use SVE_NO4E + (SVE_NO2E, Vquad): New. + +2025-01-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118224 + * tree-ssa-dce.cc (is_removable_allocation_p): Don't return true + for allocations with constant size argument larger than PTRDIFF_MAX + or for calloc with one of the arguments constant larger than + PTRDIFF_MAX or their product known constant above PTRDIFF_MAX. + Fix comment typos, furhter -> further and then -> than. + * lto-section-in.cc (lto_free_function_in_decl_state_for_node): + Fix comment typo, furhter -> further. + +2025-01-04 Hans-Peter Nilsson <hp@axis.com> + + * config/mmix/mmix.cc (mmix_asm_output_labelref): Replace '.' + with '::'. + * config/mmix/mmix.h (ASM_PN_FORMAT): Define to actual default. + +2025-01-03 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/117938 + * rtlanal.cc (rtx_properties::try_to_add_dest): Treat writes + to the stack pointer as also writing to memory. + +2025-01-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/118275 + * varasm.cc (array_size_for_constructor): Use build_int_cst + with TREE_TYPE (index) as first argument, instead of bitsize_int. + +2025-01-03 Jakub Jelinek <jakub@redhat.com> + + * tree-ssa-forwprop.cc (check_ctz_array): Use tree_fits_shwi_p instead + of just TREE_CODE tests for INTEGER_CST. + +2025-01-03 Jose E. Marchesi <jose.marchesi@oracle.com> + + * config.gcc: install a wrapping stdint.h in bpf targets. + +2025-01-02 Paul-Antoine Arras <parras@baylibre.com> + + * gimplify.cc (gimplify_call_expr): Fix handling of need_device_ptr for + type(c_ptr). Fix handling of nested function calls in a dispatch region. + (find_ifn_gomp_dispatch): Return the IFN without stripping it. + (gimplify_omp_dispatch): Keep IFN_GOMP_DISPATCH until + gimplify_call_expr. + +2025-01-02 Tobias Burnus <tburnus@baylibre.com> + + * doc/install.texi (amdgcn-x-amdhsa): Refer to Newlib 4.5.0 for + the I/O locking fixes. + +2025-01-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118171 + * tree-ssa-pre.cc (create_component_ref_by_pieces_1): Do not + fold any component ref parts. + +2025-01-02 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118184 + * config/aarch64/aarch64-early-ra.cc (allocno_assignment_is_rmw): + New function. + (early_ra::record_insn_defs): Mark the live range information as + untrustworthy if an assignment would change part of an allocno + but preserve the rest. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * tree-ssa-forwprop.cc (check_ctz_array): Handle also RAW_DATA_CST + in the CONSTRUCTOR_ELTS. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * doc/libgdiagnostics/conf.py: Use u'' instead of '' in + project and copyright initialization. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * gcc.cc (process_command): Update copyright notice dates. + * gcov-dump.cc (print_version): Ditto. + * gcov.cc (print_version): Ditto. + * gcov-tool.cc (print_version): Ditto. + * gengtype.cc (create_file): Ditto. + * doc/cpp.texi: Bump @copying's copyright year. + * doc/cppinternals.texi: Ditto. + * doc/gcc.texi: Ditto. + * doc/gccint.texi: Ditto. + * doc/gcov.texi: Ditto. + * doc/install.texi: Ditto. + * doc/invoke.texi: Ditto. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.cc + (loongarch_expand_conditional_move): Add some optimization + implementations based on noce_try_cmove_arith. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md (lasx_xvabsd_s_<lasxfmt>): Remove. + (<su>abd<mode>3): New insn pattern. + (lasx_xvabsd_u_<lasxfmt_u>): Remove. + * config/loongarch/loongarch-builtins.cc (CODE_FOR_lsx_vabsd_b): + Rename. + (CODE_FOR_lsx_vabsd_h): Ditto. + (CODE_FOR_lsx_vabsd_w): Ditto. + (CODE_FOR_lsx_vabsd_d): Ditto. + (CODE_FOR_lsx_vabsd_bu): Ditto. + (CODE_FOR_lsx_vabsd_hu): Ditto. + (CODE_FOR_lsx_vabsd_wu): Ditto. + (CODE_FOR_lsx_vabsd_du): Ditto. + (CODE_FOR_lasx_xvabsd_b): Ditto. + (CODE_FOR_lasx_xvabsd_h): Ditto. + (CODE_FOR_lasx_xvabsd_w): Ditto. + (CODE_FOR_lasx_xvabsd_d): Ditto. + (CODE_FOR_lasx_xvabsd_bu): Ditto. + (CODE_FOR_lasx_xvabsd_hu): Ditto. + (CODE_FOR_lasx_xvabsd_wu): Ditto. + (CODE_FOR_lasx_xvabsd_du): Ditto. + * config/loongarch/loongarch.md (u): Add smax/umax. + * config/loongarch/lsx.md (SU_MAX): New iterator. + (su_min): New attr. + (lsx_vabsd_s_<lsxfmt>): Remove. + (<su>abd<mode>3): New insn pattern. + (lsx_vabsd_u_<lsxfmt_u>): Remove. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md (vec_unpacks_lo_<mode>): Redefine. + (vec_unpacku_lo_<mode>): Ditto. + (lasx_vext2xv_h<u>_b<u>): Replaced by vec_unpack<su>_lo_v32qi. + (vec_unpack<su>_lo_v32qi): New insn. + (lasx_vext2xv_w<u>_h<u>): Replaced by vec_unpack<su>_lo_v16hi. + (vec_unpack<su>_lo_v16qi_internal): New insn, for 128 bits. + (vec_unpack<su>_lo_v16hi): New insn. + (lasx_vext2xv_d<u>_w<u>): Replaced by vec_unpack<su>_lo_v8si. + (vec_unpack<su>_lo_v8hi_internal): New insn, for 128 bits. + (vec_unpack<su>_lo_v8si): New insn. + (vec_unpack<su>_lo_v4si_internal): New insn, for 128 bits. + (vec_packs_float_v4di): New expander. + (vec_pack_sfix_trunc_v4df): Ditto. + (vec_unpacks_float_hi_v8si): Ditto. + (vec_unpacks_float_lo_v8si): Ditto. + (vec_unpack_sfix_trunc_hi_v8sf): Ditto. + (vec_unpack_sfix_trunc_lo_v8sf): Ditto. + * config/loongarch/loongarch-builtins.cc + (CODE_FOR_lsx_vftintrz_w_d): Rename. + (CODE_FOR_lsx_vftintrzh_l_s): Ditto. + (CODE_FOR_lsx_vftintrzl_l_s): Ditto. + (CODE_FOR_lsx_vffint_s_l): Ditto. + (CODE_FOR_lsx_vffinth_d_w): Ditto. + (CODE_FOR_lsx_vffintl_d_w): Ditto. + (CODE_FOR_lsx_vexth_h_b): Ditto. + (CODE_FOR_lsx_vexth_w_h): Ditto. + (CODE_FOR_lsx_vexth_d_w): Ditto. + (CODE_FOR_lsx_vexth_hu_bu): Ditto. + (CODE_FOR_lsx_vexth_wu_hu): Ditto. + (CODE_FOR_lsx_vexth_du_wu): Ditto. + (CODE_FOR_lsx_vfcvth_d_s): Ditto. + (CODE_FOR_lsx_vfcvtl_d_s): Ditto. + (CODE_FOR_lasx_vext2xv_h_b): Ditto. + (CODE_FOR_lasx_vext2xv_w_h): Ditto. + (CODE_FOR_lasx_vext2xv_d_w): Ditto. + (CODE_FOR_lasx_vext2xv_hu_bu): Ditto. + (CODE_FOR_lasx_vext2xv_wu_hu): Ditto. + (CODE_FOR_lasx_vext2xv_du_wu): Ditto. + (loongarch_expand_builtin_insn): Swap source operands in + CODE_FOR_lsx_vftintrz_w_d and CODE_FOR_lsx_vffint_s_l. + * config/loongarch/loongarch-protos.h + (loongarch_expand_vec_unpack): Remove useless parameter high_p. + * config/loongarch/loongarch.cc (loongarch_expand_vec_unpack): + Rewrite. + * config/loongarch/lsx.md (vec_unpacks_hi_v4sf): Redefine. + (vec_unpacks_lo_v4sf): Ditto. + (vec_unpacks_hi_<mode>): Ditto. + (vec_unpacku_hi_<mode>): Ditto. + (lsx_vfcvth_d_s): Replaced by vec_unpacks_hi_v4sf. + (lsx_vfcvtl_d_s): Replaced by vec_unpacks_lo_v4sf. + (lsx_vffint_s_l): Replaced by vec_packs_float_v2di. + (vec_packs_float_v2di): New insn. + (lsx_vftintrz_w_d): Replaced by vec_pack_sfix_trunc_v2df. + (vec_pack_sfix_trunc_v2df): New insn. + (lsx_vffinth_d_w): Replaced by vec_unpacks_float_hi_v4si. + (vec_unpacks_float_hi_v4si): New insn. + (lsx_vffintl_d_w): Replaced by vec_unpacks_float_lo_v4si. + (vec_unpacks_float_lo_v4si): New insn. + (lsx_vftintrzh_l_s): Replaced by vec_unpack_sfix_trunc_hi_v4sf. + (vec_unpack_sfix_trunc_hi_v4sf): New insn. + (lsx_vftintrzl_l_s): Replaced by vec_unpack_sfix_trunc_lo_v4sf. + (vec_unpack_sfix_trunc_lo_v4sf): New insn. + (lsx_vexth_h<u>_b<u>): Replaced by vec_unpack<su>_hi_v16qi. + (vec_unpack<su>_hi_v16qi): New insn. + (lsx_vexth_w<u>_h<u>): Replaced by vec_unpack<su>_hi_v8hi. + (vec_unpack<su>_hi_v8hi): New insn. + (lsx_vexth_d<u>_w<u>): Replaced by vec_unpack<su>_hi_v4si. + (vec_unpack<su>_hi_v4si): New insn. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/loongarch.md + (bytepick_d_<bytepick_imm>_rev): New combiner. + (bstrpick_alsl_paired): Reorder input operands. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md: Remove useless vec_select. + * config/loongarch/predicates.md: Correct error predicate. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md: Fix selector index. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * config/loongarch/lasx.md: Remove useless code. + * config/loongarch/lsx.md: Ditto. + +2025-01-01 Sam James <sam@gentoo.org> + + * doc/cpp.texi (Common Predefined Macros): Fix syntax. + +2025-01-01 Richard Biener <rguenther@suse.de> + + PR middle-end/118174 + * tree-outof-ssa.cc (ssa_is_replaceable_p): Exclude tailcalls. + +2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> + + * doc/invoke.texi (Option Summary): Put "M32C Options" and + "Cygwin and MinGW Options" in alphabetical order. Add + cross-references. + (Cygwin and MinGW Options): Likewise move the section to its + correct alphabetical location. + * config/lynx.opt.urls: Regenerated. + * config/mingw/cygming.opt.urls: Regenerated. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index fd61bc997a3..923c914865e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,7814 +1,5 @@ -2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gcc-interface/Make-lang.in (GNATBIND_FLAGS): Delete. - (GNAT_ADA_OBJS): Move g-byorma.o, g-htable.o, g-spchge.o, - g-speche.o and g-u3spch.o to STAGE1 list. - (GNATBIND_OBJS): Move g-byorma.o, g-hesora.o and g-htable.o - to STAGE1 list. - (ada/b_gnat1.adb): Do not pass GNATBIND_FLAGS to gnatbind. - (ada/b_gnatb.adb): Likewise. - (ADA_GENERATED_FILES): Add g-byorma.ad[sb], g-hesora.ad[sb], - g-htable.ad[sb], g-spchge.ad[sb], g-speche.ad[sb], g-u3spch.ad[sb] - and alphabetize. - * libgnat/g-byorma.ads: Add note to head comment. - * libgnat/g-hesora.ads: Likewise. - * libgnat/g-htable.ads: Likewise. - * libgnat/g-spchge.ads: Likewise. - * libgnat/g-speche.ads: Likewise. - * libgnat/g-u3spch.ads: Likewise. - -2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/15605 - * sem_ch8.adb (Analyze_Subprogram_Renaming): Give an error if the - name is also that of a formal parameter of the specification. - -2025-12-27 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/123306 - * sem_ch12.adb (Analyze_One_Association): Immediately freeze the - root type of mutably tagged types used as actual type parameters. - -2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/123088 - * sem_aggr.adb (Resolve_Record_Aggregate): Add more robust guard. - -2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/123302 - * sem_ch12.adb (Save_Global_Reference.Save_References_In_Aggregate): - Recurse on the scope of the type to find one that is visible, in the - case of an actual in a subprogram call with a local type. - -2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/123289 - * sem_ch13.adb (Resolve_Aspect_Aggregate.Resolve_Operation): Give - an error if the operation's name denotes more than one subprogram. - -2025-12-22 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123060 - * gcc-interface/utils.cc (update_pointer_to): Streamline. - -2025-12-22 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123060 - * gcc-interface/utils.cc (update_pointer_to): Preserve the alias - sets present on the old pointer and old reference, if any. - -2025-12-22 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123185 - * sem_ch4.adb (Analyze_Overloaded_Selected_Component): Go to the - root when the prefix has a class-wide type. - * sem_res.adb (Resolve_Selected_Component): Likewise. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * sem_attr.adb (Set_Bounds): Fix comment typo, transfered - -> transferred. - * sem_ch6.adb (Analyze_Expression_Function): Likewise. - * sysdep.c (__gnat_get_task_options): Fix comment typo, explicitely - -> explicitly. - -2025-12-15 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123138 - * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Override a - universal numeric type only if the prefix is not an aggregate. - -2025-12-15 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123060 - * gcc-interface/utils.cc (update_pointer_to): Synthesize a new - TYPE_CANONICAL for the old pointer type in the case where there - is no new pointer type. Likewise for references. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123096 - * exp_put_image.adb (Build_Record_Put_Image_Procedure): Call - Incomplete_Or_Partial_View with Partial_Only set to True. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123062 - * sem_ch12.adb (Analyze_Subprogram_Instantiation): Also propagate - the Convention and Is_Exported flag onto the anonymous actual. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123088 - * sem_aggr.adb (Resolve_Record_Aggregate): Add missing guard. - -2025-12-08 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/123037 - * rtinit.c [__MINGW32__]: Include <stdlib.h> and not <windows.h>. - * rtfinal.c [__MINGW32__]: Do not include <windows.h>. - -2025-12-07 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/115349 - * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Use the base - type as Accum_Type if the reducer is an operator from Standard and - the type is numeric. Use the type of the first operand for other - operators. Streamline the error message given for limited types. - -2025-12-06 Denis Mazzucato <mazzucato@adacore.com> - - * sem_attr.adb (Resolve_Attribute): Check if the reducer is a - procedure before giving the warning. - -2025-12-05 Javier Miranda <miranda@adacore.com> - - * einfo.ads (Has_Unsigned_Base_Range_Aspect): Update documentation. - (Has_Modular_Operations): New synthesized predicate. - (Has_Overflow_Operations): New synthesized predicate. - * einfo-utils.ads (Has_Modular_Operations): New function. - (Has_Overflow_Operations): New function. - * einfo-utils.adb (Is_Modular_Integer_Type): Undo previous patch. - (Is_Signed_Integer_Type): Undo previous patch. - (Has_Modular_Operations): New function. - (Has_Overflow_Operations): New function. - * checks.adb (Determine_Range): Replace selected occurrences of calls to - Is_Modular_Integer_Type by calls to Has_Modular_Operations, and calls to - Is_Signed_Integer_Type by calls to Has Overflow_Operations. - (Enable_Range_Check): Ditto. - (Insert_Valid_Check): Ditto. - * exp_aggr.adb (Others_Check): Ditto. - * exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Pred, - Attribute_Succ]): Ditto. - * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): Ditto. - (Size_In_Storage_Elements): Ditto. - (Expand_N_Op_Abs): Ditto. - (Expand_N_Op_Expon): Ditto. - (Expand_N_Op_Minus): Ditto. - (Expand_N_Op_Multiply): Ditto. - (Expand_N_Op_Subtract): Ditto. - * freeze.adb (Freeze_Entity): Ditto. - * sem_aggr.adb (Report_Null_Array_Constraint_Error): Ditto plus - report specific error for index with unsigned_base_range aspect. - * sem_attr.adb (Check_Modular_Integer_Type): Ditto. - (Analyze_Attribute [Attribute_Pred, Attribute_Succ, Attribute_ - Range_Length, Attribute_Small, Attribute_Reduce]): Ditto. - * sem_ch12.adb (Instantiate_Type): Ditto. - (Validate_Formal_Type_Default): Ditto. - * sem_ch13.adb (Valid_Empty): Ditto. - * sem_ch2.adb (Analyze_Integer_Literal): Ditto. - * sem_ch3.adb (Unsigned_Base_Range_Type_Declaration): Set attribute - Has_Unsigned_Base_Range_Aspect on the implicit base, and set Etype - of its first subtype E_Modular_Integer_Subtype. - * sem_ch4.adb (Analyze_Call): Ditto. - * sem_eval.adb (Check_Non_Static_Context_For_Overflow): Ditto. - (Eval_Arithmetic_Op): Ditto. - (Eval_Integer_Literal): Ditto. - (Eval_Logical_Op): Ditto. - (Eval_Op_Expon): Ditto. - (Eval_Op_Not): Ditto. - (Eval_Unary_Op): Ditto. - (Fold_Shift): Ditto. - (Test_Expression_Is_Foldable): Ditto. - * sem_intr.adb (Check_Shift): Ditto. - * sem_prag.adb (Analyze_Pragma [Pragma_Unsigned_Base_Range]): Add - assertion. - * sem_res.adb (Resolve_Logical_Op): Ditto. - (Resolve_Unary_Op): Ditto. - (Set_String_Literal_Subtype): Ditto. - * sem_type.adb (Covers): Ditto. - (Specific_Type): Ditto. - (Valid_Boolean_Arg): Ditto. - * sem_util.adb (Wrong_Type): Ditto - * style.adb (Check_Boolean_Operator): Ditto. - -2025-12-05 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_rm/representation_clauses_and_pragmas.rst: Improve table. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-12-05 Viljar Indus <indus@adacore.com> - - * sem_util.adb (Get_Cursor_Type): use the - specific type for classwide container checks. - -2025-12-05 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch12.adb (Remove_Parent): Only set the Is_Transient component - of the local scope stack entry. - -2025-12-05 Marc Poulhiès <poulhies@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst - (-gnato??): Remove redundant/confusing doc on floating-point - overflow. - * gnat_ugn.texi: Regenerate. - -2025-12-05 Tonu Naks <naks@adacore.com> - - * adaint.c: use the _tsopen macro when opening RO file - -2025-12-05 Denis Mazzucato <mazzucato@adacore.com> - - * sem_attr.adb - (Analyze_Attribute): Set the type of the attribute expression only when - not ambiguous (it will later be resolved correctly). Emit an error in - case the type is limited. - (Resolve_Attribute): Emit an error if the reducer has no entity. - (Get_Value_Subtype): Try to resolve the Value_Subtype of the aggregate - expression, and if it succeeds, set the candidate reducer subprogram. - (Is_Reducer_Subprogram): Check whether the selected candidate has a - proper reducer profile. - (Make_Array_Type): Return simple array type to resolve the array - aggregate against it. - (Resolve_Attribute): Reimplement the resolution of Reduce attribute, - including its prefix. - * sem_res.adb (Resolve_Declare_Expression): Save and restore variables - that may be hidden by the local declaration. Only setting the new - entities is problematic when dealing with copied trees where the ref is - lost (eg. when resolving array aggregates). - * exp_attr.adb (Expand_N_Attribute_Reference): Remove tricks to resolve - the reducer in case of faulty resolution as not needed anymore. - -2025-12-05 Iain Sandoe <iain@sandoe.co.uk> - - PR ada/115305 - * Makefile.rtl: Use s-oslock__darwin instead of the Posix version. - * libgnat/s-oslock__darwin.ads: New file. - -2025-12-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122960 - * gcc-interface/Makefile.in (powerpc64-suse-linux): Remove kludge. - -2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc-interface/lang.opt.urls: Regenerate. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.adb (Expand_Actuals): Do not create activation chain and - master for build-in-place calls here but... - (Make_Build_In_Place_Call_In_Allocator): Use Unqual_Conv. - (Make_Build_In_Place_Call_In_Anonymous_Context): ...here instead. - Call Make_Build_In_Place_Call_In_Object_Declaration directly. - (Make_Build_In_Place_Iface_Call_In_Anonymous_Context): ...and here - instead. Add missing rewriting of the call. - -2025-11-27 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_ugn/about_this_guide.rst: Minor fixes - * gnat_ugn.texi: Regenerate. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122574 - * doc/gnat_ugn/building_executable_programs_with_gnat.rst (-gnatwp): - Replace reference to -gnatN with -gnatn and adjust accordingly. - * inline.adb: Remove clauses for Exp_Tss. - (Has_Initialized_Type): Delete. - (Add_Inlined_Subprogram): Test that the Is_Inlined flag is still set - on the subprogram. - * usage.adb (Usage): Adjust description of -gnatwp. - * gnat_ugn.texi: Regenerate. - -2025-11-27 Denis Mazzucato <mazzucato@adacore.com> - - * sem_ch5.adb: Skip check for assignment that doesn't come from source. - -2025-11-27 Ronan Desplanques <desplanques@adacore.com> - - * exp_aggr.adb (Gen_Loop): Only preanalyze expressions we know won't - evaluated. - -2025-11-27 Tom Tromey <tromey@adacore.com> - - * repinfo.adb (Visit): New procedure. - (List_GCC_Expression): Rewrite. - * repinfo.ads (Visit): New generic procedure. - -2025-11-27 Ghjuvan Lacambre <lacambre@adacore.com> - - * sem_ch13.adb (Analyze_Code_Statement): Do not emit error - message when only checking relaxed semantics. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch7.adb (Build_Finalizer_Call): Delete. - (Build_Finalizer): Always insert the finalizer at the end of the - statement list in the non-package case. - (Expand_Cleanup_Actions): Attach the finalizer manually, if any. - * exp_smem.adb (Add_Shared_Var_Lock_Procs): Insert all the actions - directly in the transient scope. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statement): Merge the - eslif condition with the if condition for cleanup actions. - * sem_ch6.adb (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Get - rid of if statement whose condition is always true. - * sinfo.ads (Finally_Statements): Document their purpose. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * gen_il-gen-gen_nodes.adb (N_Extended_Return_Statement): Add - Activation_Chain_Entity semantic field. - * exp_ch3.adb (Build_Master): Use Build_Master_{Entity,Renaming} in - all cases. - (Expand_N_Object_Declaration): Small tweak. - * exp_ch6.adb (Make_Build_In_Place_Iface_Call_In_Allocator): Use - Build_Master_{Entity,Renaming} to build the master. - * exp_ch7.adb (Expand_N_Package_Declaration): Do not guard the call - to Build_Task_Activation_Call for the sake of consistency. - * exp_ch9.ads (Build_Class_Wide_Master): Delete. - (Find_Master_Scope): Likewise. - (Build_Protected_Subprogram_Call_Cleanup): Move to... - (First_Protected_Operation): Move to... - (Mark_Construct_As_Task_Master): New procedure. - * exp_ch9.adb (Build_Protected_Subprogram_Call_Cleanup): ...here. - (First_Protected_Operation): ...here. - (Build_Activation_Chain_Entity): Streamline handling of extended - return statements. - (Build_Class_Wide_Master): Delete. - (Build_Master_Entity): Streamline handling of extended return - statements and call Mark_Construct_As_Task_Master on the context. - (Build_Task_Activation_Call): Assert that the owner is not an - extended return statement. - (Find_Master_Scope): Delete. - (Mark_Construct_As_Task_Master): New procedure. - * sem_ch3.adb (Access_Definition): Use Build_Master_{Entity,Renaming} - in all cases to build a master. - * sem_ch6.adb (Check_Anonymous_Return): Rename to... - (Check_Anonymous_Access_Return_With_Tasks): ...this. At the end, - call Mark_Construct_As_Task_Master on the parent node. - (Analyze_Subprogram_Body_Helper): Adjust to above renaming. - (Create_Extra_Formals): Do not set Has_Master_Entity here. - * sinfo.ads (Activation_Chain_Entity): Adjust description. - -2025-11-27 Bob Duff <duff@adacore.com> - - * sem_ch13.adb (Aspect_Annotate): Avoid disturbing the tree of the - aspect. - * vast.adb: Enable Check_Parent_Present. - * exp_ch6.adb (Validate_Subprogram_Calls): Minor reformatting. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Expand_N_Case_Expression): When not optimizing for a - specific context, call Make_Build_In_Place_Call_In_Anonymous_Context - on expressions of alternatives when they are calls to BIP functions. - (Expand_N_If_Expression): Likewise for the Then & Else expressions. - -2025-11-27 Bob Duff <duff@adacore.com> - - * frontend.adb: Move call to VAST from here... - * gnat1drv.adb: ...to here. - * vast.ads (VAST_If_Enabled): Rename main entry point of VAST from - VAST to VAST_If_Enabled. - * vast.adb: Miscellaneous improvements. Mostly debugging - improvements. Also enable Check_Error_Nodes. Also add checks: - Check_FE_Only, Check_Scope_Present, Check_Scope_Correct. - * debug.ads: Minor comment tweaks. The comment, "In the checks off - version of debug, the call to Set_Debug_Flag is always a null - operation." appears to be false, so is removed. - * debug.adb: Minor: Remove some code duplication. - * sinfo-utils.adb (nnd): Add comment warning about C vs. Ada - confusion. - -2025-11-27 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.ads (Needs_BIP_Task_Actuals): Adjust description. - * exp_ch6.adb (Expand_N_Extended_Return_Statement): Move activation - chain for every build-in-place function with task formal parameters - when the type of the return object might have tasks. - -2025-11-27 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-dwalin.ads (Display_Mode_Type): New enumerated type. - (Symbolic_Traceback): Use new type in profile. - * libgnat/s-dwalin.adb (Symbolic_Traceback): Use new type in profile - and adapt body. - * libgnat/s-trasym__dwarf.adb (Multi_Module_Symbolic_Traceback): Fix - wrong call in body of one overload. Use new type in profile. Adapt - body. - (Symbolic_Traceback, Symbolic_Traceback_No_Lock, - Module_Symbolic_Traceback): Use new type in profile and adapt body. - (Calling_Entity): Adapt body. - -2025-11-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/81106 - * gnatchop.adb (Gnatchop): If present in the source file, output - the BOM at the start of every compilation unit. - -2025-11-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/33994 - * gcc-interface/utils.cc (convert) <INTEGER_TYPE>: Call - int_const_convert if the expression is an integer constant. - -2025-11-21 Bob Duff <duff@adacore.com> - - * exp_ch5.adb (Expand_Formal_Container_Loop): - Preanalyze block with empty statements; then set - the statements later before doing Analyze of the - block. - -2025-11-21 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Expand_Array_Aggregate): Remove obsolete call to - Establish_Transient_Scope for an allocator in a loop. - * exp_ch7.adb (Establish_Transient_Scope): Adjust description. - -2025-11-21 Piotr Trojanek <trojanek@adacore.com> - - * lib-xref.adb (Output_References): Put local array object on the heap. - -2025-11-21 Viljar Indus <indus@adacore.com> - - * erroutc.adb (Is_Redundant_Error_Message): Avoid non-serious errors - masking fatal errors. - -2025-11-21 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.ads (BIP_Formal_Kind): Update description of some values. - -2025-11-21 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Expand_N_Op_Eq): Use No instead of not Present. - (Optimize_Length_Comparison): Initialize Is_Zero and Comp variables. - (Safe_In_Place_Array_Op): Do not use local variable to pass data to - nested function Is_Safe_Operand. - -2025-11-21 Javier Miranda <miranda@adacore.com> - - * sem_ch6.adb (Create_Extra_Formals): Do not add extra formals to - anonymous access to subprogram types defined in the profile of - subprograms that have foreign convention. - -2025-11-21 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch3.adb (Expand_N_Object_Declaration): Delete ancient comment. - * exp_ch6.adb (Expand_Call_Helper): Do not establish a transient - scope for build-in-place functions in anonymous contexts here... - (Make_Build_In_Place_Call_In_Anonymous_Context): ...but here instead. - * sem_attr.adb (Resolve_Attribute) <Attribute_Range>: Remove obsolete - code dealing with transient scopes. - * sem_res.adb (Resolve_Actuals): Likewise. - (Resolve_Call): Adjust comment on the strategy for transient scopes. - -2025-11-21 Bob Duff <duff@adacore.com> - - * exp_ch5.adb (Expand_Formal_Container_Loop): - Analyze Init_Decl in the correct scope. Remove patch-up - code that was needed because we were using the wrong scope. - * exp_ch7.adb (Process_Object_Declaration): - Remove code to unique-ify the name of Master_Node_Id; - no longer needed because of change to exp_ch5.adb. - * sem_warn.adb (Check_References): - Suppress warnings during preanalysis, because we don't - have complete information yet; otherwise, the new Preanalyze - call in exp_ch5.adb generates bogus warnings. - -2025-11-21 Steve Baird <baird@adacore.com> - - * libgnat/a-cobove.adb - (Append): Add an equivalent fast path for the case where tampering - checks are suppressed. - -2025-11-21 Viljar Indus <indus@adacore.com> - - * freeze.adb (Freeze_Profile): Improve -gnatwx message. - -2025-11-21 Eric Botcazou <ebotcazou@adacore.com> - - * repinfo.adb (List_Location): Do not output the final comma. - (List_Common_Type_Info): Adjust to above change. Do not output - "??" for an unknown alignment. - (List_Entities): Do not output generic types. - (List_Object_Info): Adjust to above change. - (List_Subprogram_Info): Likewise. - -2025-11-21 Viljar Indus <indus@adacore.com> - - * sem_ch4.adb (Analyze_Call): ensure we generate a reference to the - non limited view of the return type to avoid scenarios where - the with-ed unit is not considered referenced. - -2025-11-18 Denis Mazzucato <mazzucato@adacore.com> - - * gcc-interface/decl.cc - (is_cplusplus_method,gnat_to_gnu_param,gnat_to_gnu_subprog_type): - Adjust Is_Constructor/Is_CPP_Constructor after renaming. - -2025-11-18 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/34290 - * sem_ch4.adb (Try_Object_Operation.Complete_Object_Operation): Call - Preserve_Comes_From_Source to preserve the flag on nodes. Relocate - the Obj node consistently. Preserve the Comes_From_Source flag for - the case of an implicit 'Access reference and post the local errors - on the rewritten prefix consistently. - * sem_util.adb (Is_Aliased_View): Also return true for a generalized - reference to the result of a function call. - -2025-11-18 Javier Miranda <miranda@adacore.com> - - * exp_util.ads (Flag_Interface_Pointer_Displacement): New subprogram. - * exp_util.adb (Flag_Interface_Pointer_Displacement): Ditto. - * exp_attr.adb (Add_Implicit_Interface_Type_Conversion): Flag type - conversions internally added to displace the pointer to the object. - (Expand_N_Attribute_Reference): Ditto. - * exp_ch4.adb (Displace_Allocator_Pointer): Ditto. - * exp_ch6.adb (Expand_Simple_Function_Return): Ditto. - (Make_Build_In_Place_Call_In_Allocator): Ditto. - (Make_CPP_Constructor_Call_In_Allocator): Ditto. - * exp_disp.adb (Expand_Interface_Actuals): Ditto. - * exp_intr.adb (Expand_Dispatching_Constructor_Call): Ditto. - * sem_ch6.adb (Analyze_Function_Return): Ditto. - * sem_disp.adb (Propagate_Tag): Ditto. - * sem_res.adb (Resolve_Actuals): Ditto. - (Valid_Conversion): Rely on the new flag to handle the type conversion - as a conversion added to displace the pointer to the object. Factorize - code handling general and anonymous access types. - * sem_type.adb (Interface_Present_In_Ancestor): For concurrent types - add missing handling of class-wide types. Noticed working on this - issue. - * sinfo.ads (Is_Interface_Pointer_Displacement): Document this new flag. - * gen_il-fields.ads (Is_Interface_Pointer_Displacement): New flag. - * gen_il-gen-gen_nodes.adb (Is_Interface_Pointer_Displacement): New - flag on N_Type_Conversion nodes. - * gen_il-internals.adb (Image): Add Is_Interface_Pointer_Displacement - flag image. - -2025-11-18 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch12.adb (Analyze_Package_Instantiation): Streamline and move - code clearing Needs_Body after it is computed to ... - (Needs_Body_Instantiated): ...here. Chain if-then constructs. - -2025-11-18 Eric Botcazou <ebotcazou@adacore.com> - - * sem_type.adb (Last_Overloaded): Fix typo. - -2025-11-18 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/111433 - * sem_util.ads (Incomplete_Or_Partial_View): Add Partial_Only formal - parameter. - * sem_util.adb (Incomplete_Or_Partial_View): Likewise. Do not look - for an incomplete view if it is set to True. - * sem_ch6.adb (Check_Conformance.Null_Exclusions_Match): Pass True - for Partial_Only in the call to Incomplete_Or_Partial_View. - -2025-11-18 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm/obsolescent_features.rst: update PolyOrb reference - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-11-18 Denis Mazzucato <mazzucato@adacore.com> - - * par-ch4.adb (P_Simple_Expression): Improve diagnostic. - -2025-11-18 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Procedure_Call_Levels): New function for - implementing the check. - * ghost.ads (Check_Procedure_Call_Levels): Likewise. - * sem_ch6.adb (Analyze_Procedure_Call): Check the levels after - the call has been resolved and the previous ghost region has - been restored. - -2025-11-18 Denis Mazzucato <mazzucato@adacore.com> - - * sem_util.adb (Is_Constructor_Procedure): Replace by Is_Constructor. - * sem_util.ads: Likewise. - * sem_ch6.adb (Analyze_Direct_Attribute_Definition): Set Is_Constructor. - * einfo.ads: Use Is_Constructor for Ada constructors, and - Is_CPP_Constructor for CPP constructors. - * exp_ch6.adb: Likewise. - * exp_disp.adb: Likewise. - * freeze.adb: Likewise. - * gen_il-fields.ads: Likewise. - * gen_il-gen-gen_entities.adb: Likewise. - * gen_il-internals.adb: Likewise. - * par-ch6.adb: Likewise. - * sem_prag.adb: Likewise. - * treepr.adb: Likewise. - -2025-11-18 Steve Baird <baird@adacore.com> - - * exp_attr.adb (Expand_N_Attribute_Reference): Ensure that - Build_Record_Or_Elementary_Input_Function and - Build_Record_Or_Elementary_Output_Procedure are only called - from within an instance of Build_And_Insert_Type_Attr_Subp. - In particular, the results returned by those 2 functions should - not be passed directly to Insert_Action. This is needed to - ensure that the newly-built subprogram is inserted at the correct - point in the tree. - -2025-11-18 Bob Duff <duff@adacore.com> - - * exp_ch4.adb (Warn_On_Abstract_Equality_For_Component): - Add additional information in the record-component case. - -2025-11-18 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Valid_Ghost_Policy): Remove function. - (Ghost_Policy_In_Effect): Force the ghost policy to be always be - ignore inside ignored regions. - (Mark_And_Set_Ghost_Declaration): Likewise. - -2025-11-18 Steve Baird <baird@adacore.com> - - * exp_imgv.adb (Build_Enumeration_Image_Tables): If a - No_Dynamic_Sized_Objects restriction is in effect, then choose a large - value for Threshold so that no Lit_Hash function is generated. - -2025-11-18 Ronan Desplanques <desplanques@adacore.com> - - * libgnarl/s-taspri__mingw.ads (Suspension_Object): Remove. - (Private_Data): Revert unintentional removal. - -2025-11-18 Ronan Desplanques <desplanques@adacore.com> - - * libgnarl/a-sytaco.ads (Suspension_Object): Change components. - * libgnarl/a-sytaco.adb (Initialize, Finalize, Current_State, - Set_False, Set_True, Suspend_Until_True): New cross-platform version. - * libgnarl/s-taskin.ads (Task_States): New task state. - * libgnarl/s-tasini.adb (Locked_Abort_To_Level): Adapt to new state. - * libgnarl/s-taprop.ads (Is_Task_Context): New function Spec. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__dummy.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__linux.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__mingw.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__posix.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__qnx.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__rtems.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__solaris.adb (Is_Task_Context): New body. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taprop__vxworks.adb (Is_Task_Context): Remove spec. - (Initialize, Finalize, Current_State, Set_False, Set_True, - Suspend_Until_True): Remove. - * libgnarl/s-taspri__dummy.ads (Suspension_Object): Remove. - * libgnarl/s-taspri__lynxos.ads (Suspension_Object): Remove. - * libgnarl/s-taspri__mingw.ads (Suspension_Object): Remove. - * libgnarl/s-taspri__posix-noaltstack.ads (Suspension_Object): - Remove. - * libgnarl/s-taspri__posix.ads (Suspension_Object): Remove. - * libgnarl/s-taspri__solaris.ads (Suspension_Object): Remove. - * libgnarl/s-taspri__vxworks.ads (Suspension_Object): Remove. - -2025-11-18 Ronan Desplanques <desplanques@adacore.com> - - * libgnarl/a-sytaco.ads (Suspension_Object): Use Finalizable aspect. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch9.adb (Expand_N_Entry_Declaration): In the deferred case, - freeze immediately all the newly created entities. - -2025-11-13 Douglas B Rupp <rupp@adacore.com> - - * sigtramp-vxworks-target.h (REGNO_PC_OFFSET): Use 32 vice - 96 with llvm/clang. (REGNO_G_REG_OFFSET): Remove parens on - operand. (REGNO_GR): Likewise. - * sigtramp-vxworks.c (__gnat_sigtramp): Define a macro for - __attribute__ optimize, which is empty of not available. - * raise-gcc.c (db): Define ATTRIBUTE_PRINTF_2 if not defined. - -2025-11-13 Steve Baird <baird@adacore.com> - - * exp_attr.adb: Rewrite the spec and implementation of package - Cached_Attribute_Ops so that the saved value associated with a - type in a given map is not a single subprogram but instead a - set of subprograms. Thus, the correct generation of a second subprogram - for given type for use in some other context no longer causes the - first subprogram to be forgotten. This allows more reuse and, - in particular, allows reuse in the case where generating another - copy of the subprogram would result in a compilation failure. - Update Cached_Attribute_Ops clients correspondingly. - -2025-11-13 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Find_In_Enclosing_Context): Give up on declarations of - internal types. - -2025-11-13 Piotr Trojanek <trojanek@adacore.com> - - * treepr.adb (Print_End_Span): Print prefix, field name and line break. - -2025-11-13 Gary Dismukes <dismukes@adacore.com> - - * libgnat/a-cbdlli.ads: Add "limited" to partial view of reference types. - * libgnat/a-cbhama.ads: Likewise. - * libgnat/a-cbhase.ads: Likewise. - * libgnat/a-cbmutr.ads: Likewise. - * libgnat/a-cborma.ads: Likewise. - * libgnat/a-cborse.ads: Likewise. - * libgnat/a-cdlili.ads: Likewise. - * libgnat/a-cidlli.ads: Likewise. - * libgnat/a-cihama.ads: Likewise. - * libgnat/a-cihase.ads: Likewise. - * libgnat/a-cimutr.ads: Likewise. - * libgnat/a-ciorma.ads: Likewise. - * libgnat/a-ciormu.ads: Likewise. - * libgnat/a-ciorse.ads: Likewise. - * libgnat/a-cobove.ads: Likewise. - * libgnat/a-cohama.ads: Likewise. - * libgnat/a-cohase.ads: Likewise. - * libgnat/a-coinho.ads: Likewise. - * libgnat/a-coinho__shared.ads: Likewise. - * libgnat/a-coinve.ads: Likewise. - * libgnat/a-comutr.ads: Likewise. - * libgnat/a-convec.ads: Likewise. - * libgnat/a-coorma.ads: Likewise. - * libgnat/a-coormu.ads: Likewise. - * libgnat/a-coorse.ads: Likewise. - * sem_ch5.adb (Analyze_Assignment): Added code to resolve the target - object (LHS) as a complete context when there are target names ("@") - present in the expression of the assignment. Loop over interpretations, - removing any that have a limited type, and set the type (T1) to be the - type of the first nonlimited interpretation. Test for ambiguity by - calling Is_Ambiguous_Operand. Delay analysis of Rhs in the target-name - case. Replace existing test for generalized indexing with implicit - dereference in existing analysis code with test of Is_Limited_Type - along with calling Remove_Interp in the limited case. - * sem_res.adb (Is_Ambiguous_Operand): Condition the calls to - Report_Interpretation on Report_Errors being True. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/29463 - * sem_eval.adb (Fold_Uint): Use Universal_Integer as actual type - for a named number. - (Fold_Ureal): Likewise with Universal_Real. - * sem_res.adb (Resolve_Real_Literal): Test whether the literal is - a static expression instead of coming from source to give the error - prescribed by the RM 4.9(36/2) subclause. - -2025-11-13 Ronan Desplanques <desplanques@adacore.com> - - * libgnarl/s-taspri__posix.ads (Suspension_Object): Add some - documentation. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Alignment): Update description. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * sem_prag.adb (Analyze_Pragma) <Process_Suppress_Unsuppress>: For - Alignment_Check on a specific object with an address clause and no - alignment clause, toggle the Check_Address_Alignment flag present - on the address clause. - -2025-11-13 Marc Poulhiès <poulhies@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst: Update - the list of junk names. - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: - Likewise. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-11-13 Piotr Trojanek <trojanek@adacore.com> - - * libgnat/g-crc32.ads (CRC32): Annotate as pure and always terminating. - * libgnat/s-crc32.ads (CRC32): Annotate as pure and always terminating. - -2025-11-13 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Get_Current_Value_Condition): Relax assertion about - rewritten ELSIF branch. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_rm/implementation_defined_attributes.rst - (Maximum_Alignment): Fix description. - * doc/gnat_rm/representation_clauses_and_pragmas.rst - (Alignment Clauses): Adjust accordingly. - * checks.adb (Apply_Address_Clause_Check): Remove incorrect test on - Maximum_Alignment. - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Minor tweak - in comment. - * ttypes.ads (Maximum_Alignment): Fix description. - * gnat_rm.texi: Regenerate. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst (Pragma Suppress): - Remove mention of range checks in the entry for alignment checks. - * gnat_rm.texi: Regenerate. - -2025-11-13 Eric Botcazou <ebotcazou@adacore.com> - - * layout.adb (Set_Composite_Alignment): Fix typos and comments. - -2025-11-12 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122640 - * sem_ch3.adb (Analyze_Object_Declaration): Set Is_True_Constant - on entry for constants and Never_Set_In_Source in all cases. - If an initialization expression is present, set Has_Initial_Value - and Is_True_Constant on variables. - -2025-11-08 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/34374 - * sem_ch10.adb (Check_Private_Limited_Withed_Unit): Use a separate - variable for the private child unit, streamline the loop locating - the nearest private ancestor, fix a too early termination of the - loop traversing the ancestor of the current unit, and use the same - privacy test as Check_Private_Child_Unit. - -2025-11-07 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/83188 - * sem_eval.adb (Subtypes_Statically_Match): Deal with class-wide - subtypes whose class-wide types have discriminants. - -2025-11-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/113352 - * sem_ch4.adb (Diagnose_Call): Tweak error message. - * sem_ch8.adb (Find_Selected_Component): Remove bypass for calls - to procedures in the overloaded overloadable case. Factor out - the diagnostics code and invoke it uniformly in this case. - -2025-11-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/113350 - PR ada/113351 - * exp_ch2.adb (Expand_Renaming): Fix reference to Evaluate_Name. - * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Call - Evaluate_Name to evaluate the name. - * sem_ch8.adb (Analyze_Renamed_Entry): Minor tweaks. - (Analyze_Renamed_Family_Member): Likewise. - (Analyze_Renamed_Primitive_Operation): Likewise. - Fix thinko in the function checking profile conformance, save the - result of the resolution and make implicit dereferences explicit. - -2025-11-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/35793 - * sem_res.adb (Check_Discriminant_Use): In a constraint context, - check that the discriminant appears alone as a direct name in all - cases and give a consistent error message when it does not. - -2025-11-04 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch3.adb (Analyze_Subtype_Declaration) <Concurrent_Kind>: - Propagate the Uses_Lock_Free flag for protected types. - -2025-11-04 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/18453 - * sem_ch12.adb (Find_Actual_Type): Add Typ_Ref parameter and - perform a standard resolution on it in the fallback case. - Call Get_Instance_Of if the type is declared in a formal of - the child unit. - (Instantiate_Type.Validate_Access_Type_Instance): Adjust call - to Find_Actual_Type. - (Instantiate_Type.Validate_Array_Type_Instance): Likewise and - streamline the check for matching component subtypes. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/78175 - * sem_ch12.adb (Hide_Current_Scope): Deal with a transient scope - as current scope. - (Remove_Parent): Likewise. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/55324 - * par-ch3.adb (P_Type_Declaration): Give a better error message - for illegal "abstract" in a type derivation. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Get_Current_Value_Condition): Guard against orphaned - references in rewritten if-expressions. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_rm/representation_clauses_and_pragmas.rst (Address - Clauses): Adjust description of alignment checks. - * sem_ch13.adb (Address_Clause_Check_Record): Remove now unused - Alignment_Checks_Suppressed component. - (Alignment_Checks_Suppressed): Delete. - (Analyze_Attribute_Definition_Clause) <Attribute_Alignment>: Do not - consider the status of range checks to decide whether to generate an - alignment check. Always generate it if an alignment clause is also - given for the entity. - <Attribute_Alignment>: Generate an alignment check if an address - clause is also given for the entity. - (Register_Address_Clause_Check): Adjust for above removal. - (Validate_Address_Clauses): Test the Check_Address_Alignment flag - on the clause to decide whether to give the warning. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * checks.adb (Apply_Address_Clause_Check): Adjust self-reference in - the opening comment. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Find_In_Enclosing_Context): Refactor from handling of - IF statements. - (Get_Current_Value_Condition): Reuse IF code for WHILE statements. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Get_Current_Value_Condition): Rewrite to not rely on - Sloc and End_Span of an if statement. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Update_Semantic_Fields): Preserve tree structure when - copying scalar range of a discrete type. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * inline.adb (Process_Sloc): Remove. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/61127 - * sem_ch12.adb (Associations.Match_Positional): Remove the always - false condition that guards the error on a positional box. - -2025-11-03 Gary Dismukes <dismukes@adacore.com> - - * sem_disp.adb (Check_Dispatching_Call): Remove "elsif" that does error - checking for abstract tag-indeterminate calls (seems to be no longer - needed). - -2025-11-03 Marc Poulhiès <poulhies@adacore.com> - - * exp_ch7.adb (Fixup_Inner_Scopes): Adjust to handle N_Freeze_Entity nodes. - * exp_unst.adb (Get_Level): Assert when the function didn't find the - nested level (indicates that inner sub has scope pointing higher in - the stack) - -2025-11-03 Ronan Desplanques <desplanques@adacore.com> - - * fname.adb (Is_Predefined_File_Name): Tweak. - -2025-11-03 Bob Duff <duff@adacore.com> - - * gen_il-gen-gen_nodes.adb (N_Exception_Declaration): - Change Expression from Sm to Sy, to match other Expression fields. - * gen_il-gen.adb (Setter_Needs_Parent): - Expression no longer needs to be a special case. - (Check_For_Syntactic_Field_Mismatch): - Do not exempt Expression from the Sy/Sm mixing rule. - This was the last such case, so remove all the exemption code. - * gen_il-gen.ads: Update comments to match new code. - * sinfo.ads (N_Exception_Declaration): - Document the meaning of the Expression field, because it - doesn't follow from the RM syntax of exception_declaration. - * exp_ch11.adb: Minor comment fixes. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause) - <Attribute_Size>: Tweak wording of existing error message for the - size of all elementary objects. Move error handling for aliased - objects into the block for objects and give a similar error for - (nonaliased) floating-point objects. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_attr.adb (Rewrite_Attribute_Proc_Call)<Attribute_Put_Image>: - Fix call to Analyze. - -2025-11-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Resolve_Attribute): Remove rewriting of a slice - address expression. - -2025-11-03 Viljar Indus <indus@adacore.com> - - * libgnat/a-cbmutr.adb (Put_Image): Fix the condition and starting point - for printing the tree. - * libgnat/a-cimutr.adb (Put_Image): Likewise. - * libgnat/a-comutr.adb (Put_Image): Likewise. - -2025-11-03 Viljar Indus <indus@adacore.com> - - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Avoid disabling - the expander for ignored ghost regions if Codepeer_Mode is active. - * sem_ch7.adb (Analyze_Package_Body_Helper): Likewise. - * freeze.adb (Freeze_Entity): Avoid triggering special freezing - action for entities within ignored ghost regions in Codepeer_Mode. - -2025-11-03 Viljar Indus <indus@adacore.com> - - * ghost.adb (Is_Ok_Context): consider ghost prefix to always - be a valid ghost context. - -2025-11-03 Denis Mazzucato <mazzucato@adacore.com> - - * errout.adb (Set_Msg_Node): Support N_Attribute_Reference and - nodes that denotes direct attribute definitions. - * exp_dbug.ads: Description for the encoding of direct attribute - definitions as tick are hard to deal in entity names. - * erroutc.adb - (Set_Msg_Insertion_Name): Replace underscore between prefix and - attribute name in direct attribute definitions; at this point we - lost the semantic information of node type and we resort to match - the string name as described in exp_dbug.adb. - * exp_aggr.adb (Convert_To_Positional): Use Needs_Construction and - Has_Default_Constructor. - * exp_ch3.adb (Build_Record_Init_Proc) - (Expand_N_Object_Declaration): Likewise. - * exp_attr.adb (Expand_N_Attribute_Reference): Likewise. - * exp_ch4.adb (Expand_N_Allocator): Likewise. - * exp_ch6.adb - (Prepend_Constructor_Procedure_Prologue): Use - Is_Constructor_Procedure. - (Make_Parent_Constructor_Call): Use - Direct_Attribute_Definition_Name. - * gen_il-fields.ads: Remove Constructor_List and Constructor_Name. - * gen_il-gen-gen_entities.adb: Likewise. - * einfo.ads (Needs_Construction): Add description. - (Has_Delayed_Aspects): Adjust indentation. - * par-ch13.adb (P_Attribute_Designators): Parse attribute - designators. - (P_Representation_Clause): Use P_Attribute_Designators. - * par-ch6.adb (P_Subprogram): Support attribute designators in - subprogram name. - (Rewrites_Entity_If_Direct_Attribute_Def): Fix the specification - node in case of direct attribute definitions. - * par-endh.adb (Check_End, Same_Label): Likewise. - * par.adb (P_Attribute_Designators): Specification. - * sem_attr.adb (Analyze_Attribute): Error when using 'Constructor - outside procedure specification. - (Analyze_Attribute): Add error handling code. - * sem_ch3.adb (Analyze_Aspect_Specifications): Likewise. - * sem_ch6.adb (Analyze_Direct_Attribute_Definition): Handle direct - attribute definitions. Add error handling code for the - 'Construction attribute and set constructor flags when necessary. - (Analyze_Subprogram_Specification): Use - Analyze_Direct_Attribute_Definition. - * sem_util.adb (Direct_Attribute_Definition_Name): Name of - entities created for direct attribute definitions. We emit an - error if multiple attributes. - (Is_Direct_Attribute_Subp_Spec): Helper to check whether a - subprogram specification is a direct attribute definition. - (Is_Constructor_Procedure): Helper to check whether a subprogram - is a constructor procedure. - (Has_Default_Constructor): Check whether the default constructor - exists. - (Default_Constructor): Not used anymore. - (Parameter_Count): Likewise. - (Process_End_Label): Get_Attribute_Reference_Name_String encodes - also direct attribute definition end labels. - * sem_util.ads: Likewise. - * snames.ads-tmpl: Support for 'Constructor attribute. - * snames.adb-tmpl (Is_Direct_Attribute_Definition_Name): Helper to - check attributes allowed in direct attribute definitions. - * aspects.ads: Remove constructor aspect. - * sem_ch13.adb: Likewise. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122161 - * sem_ch12.adb: Improve the description of Check_Generic_Actuals, - Restore_Private_Views and Switch_View, and alphabetize them. - (Check_Generic_Actuals): Make actuals visible only if needed. - (Install_Formal_Packages): Pass exact Is_Formal_Box parameter and - remove call to Set_Is_Hidden. - (Instantiate_Formal_Package): Use Next_Non_Pragma consistently in - the loop computing the visibility of actuals. - (Analyze_Package_Instantiation): Use named second parameter in the - call to Restore_Private_Views. - (Analyze_Subprogram_Instantiation): Likewise. - (Instantiate_Package_Body): Likewise and for Check_Generic_Actuals. - (Instantiate_Subprogram_Body): Likewise. - (Restore_Env): Replace call to Restore_Private_Views. - (Restore_Private_Views): Remove default value for second parameter - and test of presence for first parameter. Consistently clear the - Is_Potentially_Use_Visible flag when setting the Is_Hidden flag. - Remove call to Set_Is_Hidden for a formal package of the enclosing - generic unit, if any. - -2025-11-03 Bob Duff <duff@adacore.com> - - * gen_il-gen.adb (N_Short_Circuit): - Make Actions syntactic. - (N_Case_Expression_Alternative): Likewise. - * gen_il-gen-gen_nodes.adb (Create_Type): - No longer exempt Actions from the syntactic/semantic ordering rule. - (Check_For_Syntactic_Field_Mismatch): - No longer exempt Actions from the syntactic/semantic mixing rule. - * sinfo.ads (N_Compound_Statement): - Add comment. - -2025-11-03 Marc Poulhiès <poulhies@adacore.com> - - * sem_aux.adb (Enclosing_Dynamic_Scope): Remove comment. - -2025-11-03 Bob Duff <duff@adacore.com> - - * einfo.ads: Remove unused fields. - * gen_il-fields.ads: Likewise. - * gen_il-gen-gen_entities.adb: Likewise. - * gen_il-gen-gen_nodes.adb: Likewise. - * sinfo.ads: Likewise. - * gen_il-gen.adb (Compile): Remove obsolete comment. - -2025-11-03 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-stratt__cheri.adb (W_80IEEE): New procedure. - -2025-11-03 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-stratt.adb (W_80IEEE): Make constant local. - -2025-11-03 Bob Duff <duff@adacore.com> - - * einfo.ads (Has_Pragma_Controlled): Remove. - (Is_Activation_Record): Document usage by llvm. - * gen_il-fields.ads (Opt_Field_Enum): - Remove Has_Pragma_Controlled. - * gen_il-gen-gen_entities.adb (Access_Kind): - Remove Has_Pragma_Controlled. - * sem_prag.adb: - Remove setting of Has_Pragma_Controlled. - * sinfo.ads (Corresponding_Entry_Body): - Document usage by codepeer. - -2025-11-03 Alexandre Oliva <oliva@adacore.com> - - * exp_ch3.adb (Expand_N_Object_Declaration): Insert ctor call - after representation clauses. - -2025-11-03 Bob Duff <duff@adacore.com> - - * atree.adb (Same_Node_To_Fetch_From): - Use Node_To_Fetch_From_If_Set, and remove handler. - * einfo-utils.adb (Root_Type_If_Set): - Return Empty if Base_Type_If_Set returns Empty. - Return Empty if we find Etype (T) = Empty. - (Underlying_Type): Use "Has_Non_Limited_View..." instead - of "Present (Non_Limited_View...)", because the latter raises - an exception when given the wrong Ekind. - -2025-11-03 Ronan Desplanques <desplanques@adacore.com> - - * gen_il-fields.ads (Is_IEEE_Extended_Precision): New flag. - * gen_il-gen-gen_entities.adb: Likewise. - * gen_il-internals.adb (Image): Likewise. - * treepr.adb (Image): Likewise. - * einfo.ads: Document new flag. - * cstand.adb (Copy_Float_Type, Register_Float_Type): Use new flag. - * libgnat/s-stratt.ads (W_80IEEE): New procedure. - * libgnat/s-stratt.adb (W_80IEEE): Likewise. - * exp_strm.adb (Get_Primitives): Select new procedure when - appropriate. - * rtsfind.ads: Register new runtime procedure. - * sem_ch3.adb (Build_Derived_Numeric_Type, - Analyze_Subtype_Declaration): Propagate new flag. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122160 - * sem_res.adb (Resolve_Op_Concat_Rest): Do not build the subtype of - the second operand again if it has already been built. - (Resolve_String_Literal): Do not defer the creation of the subtype - for the right operand of a concatenation whose left operand may be - the null string. - -2025-11-03 Gary Dismukes <dismukes@adacore.com> - - * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete - comment about not being able to allocate fixed-size controlled results - on the caller side, and replace another obsolete comment with a simpler - comment. Call Build_Allocate_Deallocate_Proc when the function doesn't - need a BIPalloc formal to ensure that function results with controlled - parts allocated on the caller side will be chained for finalization. - (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection - on the function's Entity_Id rather than the function call. - (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal - then it doesn't need a BIP collection either; return False in that case. - (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. - * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack - to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put - the other tests in a disjunction subsidiary to that. Improve preceding - comment. - -2025-11-03 Bob Duff <duff@adacore.com> - - * gen_il-gen-gen_nodes.adb: Rename Default_Expression to be - Expression. - * gen_il-gen.adb (Check_For_Syntactic_Field_Mismatch): Do not - exempt Default_Expression from the rule. - * par-ch12.adb (P_Formal_Object_Declarations): Use renamed setter. - * sem_ch12.adb (Default): Use renamed getter. - (Analyze_Formal_Object_Declaration): Likewise. - * sprint.adb (Sprint_Node_Actual): Use renamed getter. - * sinfo.ads: Fix comments. - -2025-11-03 Bob Duff <duff@adacore.com> - - * style.adb (Check_Xtra_Parens_Precedence): - Give warning based on Original_Node. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122161 - * sem_ch12.adb (Check_Generic_Actuals): Consistently set the - Is_Potentially_Use_Visible flag on actuals whenever the Is_Hidden - flag is cleared. - (Restore_Private_Views): Clear the Is_Potentially_Use_Visible flag - explicitly on the entities of an actual package. - -2025-11-03 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-trasym.ads (Calling_Entity): New function. - * libgnat/s-trasym.adb (Calling_Entity): Add dummy body. - * libgnat/s-trasym__dwarf.adb (Calling_Entity): New function. - (Symbolic_Traceback, Symbolic_Traceback_No_Lock, - Module_Symbolic_Traceback, Multi_Module_Symbolic_Traceback): Add - Subprg_Name_Only parameter and corresponding functionality. - (Symbolic_Traceback_No_Lock): Fix typo in documentation comment. - * libgnat/s-dwalin.ads (Symbolic_Traceback): Likewise. - * libgnat/s-dwalin.adb (Symbolic_Traceback): Likewise. - -2025-11-03 Bob Duff <duff@adacore.com> - - * gen_il-gen-gen_nodes.adb (N_Op): - Make Chars syntactic, and move it down into subclasses - N_Binary_Op and N_Unary_Op. - * gen_il-gen.adb (Create_Type): - Do not exempt Chars from the ordering rule. - (Exception_To_Inheritance_Rule): Exempt Chars from the - inheritance rule. - (Check_For_Syntactic_Field_Mismatch): - Do not exempt Chars from the syntactic mismatch rule. - This is the main point of this change. - (Put_Make_Bodies): The Nmake functions for types in N_Op - will now take a Chars parameter, which should always - default to No_Name. This will be overwritten by the - special-case Set_Chars call. Assert that it is in - fact defaulted. - * exp_ch4.adb (Expand_Array_Comparison): - Use the Nkind instead of the Chars, which seems cleaner. - Use a case instead of an elsif chain. - * sem_attr.adb (Proper_Op): Minor cleanup. - * sem_ch8.adb: Minor reformatting. - * sem_res.adb (Operator_Kind): Tighten up the result subtype. - -2025-11-03 Viljar Indus <indus@adacore.com> - - * exp_attr.adb (Expand_N_Attribute_Reference): Use the - First_Subtype when creating the procedure for stream - attributes. - (Get_Array_Stream_Item_Type): New method for calculating - the type for the Item argument for streaming methods. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - * locales.c (is_iso_639_3): New static function. - (c_get_language_code): Use it to validate the ISO-639-3 code - before returning it. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/58881 - * sem_ch3.adb (Build_Derived_Private_Type): Build the underlying - full view when the derivation occurs in the public part of the - scope of the parent. - (Build_Derived_Record_Type): Propagate Has_Unknown_Discriminants - in the same circumstances. - (Constrain_Discriminated_Type): Give a specific error message for - any type with the Has_Unknown_Discriminants flag. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/52319 - * sem_ch8.adb (End_Use_Package): Use the scope of the operator. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/15610 - * sem_type.adb (Collect_Interps): Apply the same visibility - criterion to expanded names as Find_Expanded_Name. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/54178 - * sem_ch12.adb (Instantiate_Object): Strip qualification to detect - aggregates used as actuals. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/16214 - * sem_ch8.adb (Find_Expanded_Name): Consolidate and streamline the - processing required for references to instances within themselves. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/48039 - * sem_ch12.adb (Analyze_Subprogram_Instantiation): Call - Remove_Homonym to remove the enclosing package from visibility. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Remove_Side_Effects): Use separately the Etype of - the expression to build new nodes and its Underlying_Type to drive - part of the processing. - -2025-10-28 Johannes Kliemann <kliemann@adacore.com> - - * adaint.c: Remove __gnat_enable_signals, __gnat_disable_signals - and related code for QNX. - * libgnarl/s-taprop__qnx.adb: Disable and enable - signals in Ada. - -2025-10-28 Alexandre Oliva <oliva@adacore.com> - - * sem_ch13.adb (Analyze_Aspect_Export_Import): Skip - Set_Is_Imported on E_Exception. - * sem_prag.adb (Process_Import_Or_Interface): Explain - why not Set_Is_Imported. - -2025-10-28 Denis Mazzucato <mazzucato@adacore.com> - - * sem_util.adb (Collect_Primitive_Operations): Avoid setting - Is_Primitive for noninherited and nonoverriding subprograms not - declared immediately within a package specification. - * sem_ch13.adb (Check_Nonoverridable_Aspect_Subprograms): Better - error posting to allow multiple errors on same type but different - aggregate subprogram. - -2025-10-28 Ronan Desplanques <desplanques@adacore.com> - - * table.ads (Clear, Is_Empty): New subprograms. - * table.adb (Clear, Is_Empty): Likewise. - (Init): Use new subprogram. - * atree.adb (Traverse_Func_With_Parent): Use new subprograms. - * fmap.adb (Empty_Tables): Use new subprogram. - * par_sco.adb (Process_Pending_Decisions): Likewise. - * sem_elab.adb (Check_Elab_Call): Likewise. - * sem_ch12.adb (Build_Local_Package, Analyze_Package_Instantiation, - Analyze_Subprogram_Instantiation): Likewise. - (Save_And_Reset): Use Table.Table.First. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122063 - * exp_fixd.adb (Build_Double_Divide_Code): Convert the result of the - multiply. - (Build_Multiply): Use base types of operands to size the operation. - (Build_Rem): Likewise. - (Build_Scaled_Divide_Code): Convert the result of the multiply. - -2025-10-28 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm/obsolescent_features.rst: typo - * gnat_rm.texi: Regenerate. - -2025-10-28 Javier Miranda <miranda@adacore.com> - - * aspects.adb (Get_Aspect_Id): Enable aspect Unsigned_Base_Range - using -gnatd.u - * debug.adb (Debug_Flag_Dot_U): Document this switch. - * einfo-utils.adb (Is_Modular_Integer_Type): Return True if - the entity is a modular integer type and its base type does - not have the attribute has_unsigned_base_range_aspect. - (Is_Signed_Integer_Type): Return True if the entity is a signed - integer type, or it is a modular integer type and its base type - has the attribute has_unsigned_base_range_aspect. - * einfo.ads (E_Modular_Integer_Type): Add documentation of - Has_Unsigned_Base_Range_Aspect. - * par-ch4.adb (Scan_Apostrophe): Enable attribute Unsigned_Base_Range - using -gnatd.u - * sem_ch13.adb (Analyze_One_Aspect): Check general language - restrictions on aspect Unsigned_Base_Range. For Unsigned_Base_Range - aspect, do not delay the generation of the pragma becase we need - to process it before any type or subtype derivation is analyzed. - * sem_ch3.adb (Build_Scalar_Bound): Disable code analyzing the - bound with the base type of the parent type because, for unsigned - base range types, their base type is a modular type but their - type is a signed integer type. - * sem_prag.adb (Analyze_Pragma): Enable pragma Unsigned_Base_Range - using -gnatd.u. Check more errors on Unsigned_Base_Range pragma, - and create the new base type only when required. - -2025-10-28 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch12.adb (Build_Local_Package) - (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): - Fix Set_Last calls. - (Set_Instance_Of): Use Table.Table.Append. - (Save_And_Reset): Remove useless call. Remove defensive code. - (Restore): Remove incorrect Set_Last call and adapt to - Set_Instance_Of change. - -2025-10-28 Denis Mazzucato <mazzucato@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Add enclosing quotation when the - invalid switch ends with a space. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/59234 - * sem_ch12.adb (Analyze_Formal_Package_Declaration): Mark the - special name built for the formal in the parent of a child unit - as internal. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/34511 - * sem_ch12.adb (Analyze_Associations): Add Parent_Installed formal - parameter and pass it in call to Analyze_One_Association. - (Analyze_One_Association): Add Parent_Installed formal parameter - and pass it in call to Instantiate_Formal_Subprogram. - (Analyze_Formal_Package_Declaration): Pass Parent_Installed in call - to Analyze_Associations. - (Analyze_Package_Instantiation): Likewise. - (Analyze_Subprogram_Instantiation): Likewise. - (Instantiate_Formal_Subprogram): Add Parent_Installed formal - parameter and prune references to the parent unit(s) only if - it is true. - -2025-10-27 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/29958 - * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Deal with - formal types specially. - -2025-10-27 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/25988 - * sem_ch12.adb (Save_Global_References.Reset_Entity): Also call - Save_Global_Defaults for instances with an expanded name. - (Save_Global_References.Save_References): Minor code cleanup. - -2025-10-27 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/15800 - * freeze.adb (Freeze_Entity.Freeze_Record_Type): Small cleanup - in code and comments. - * gcc-interface/utils.cc (create_field_decl): Assert that the type - of the field is frozen at this point. - -2025-10-26 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/13370 - * sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Set the - Has_Delayed_Freeze flag if the argument is not a literal. - -2025-10-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/80033 - * gcc-interface/Makefile.in (force): Restore. - -2025-10-24 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/80033 - * gcc-interface/Makefile.in (deftarg.o): Delete. - (init-vxsim.o): Likewise. - (force): Likewise. - -2025-10-24 Mivirl <octoberstargazer7405@mivirl.dev> - - PR ada/122367 - * rtinit.c (__gnat_runtime_initialize) [__MINGW32__]: Fix detection - of quoted arguments. - -2025-10-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118782 - * styleg.adb (Is_Box_Comment): Also stop the loop at EOF. - -2025-10-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/113516 - * s-oscons-tmplt.c [_WIN32]: Undefine POLLPRI before redefining it. - -2025-10-24 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/98879 - * terminals.c (__gnat_setup_child_communication) [_WIN32]: Add else - blocks in the processing of the data returned by ReadFile. - -2025-10-24 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/81087 - * gnatlink.adb (Is_Prefix): Move around, streamline and return false - when the prefix is not strict. - (Gnatlink): Fix other instances of incorrect lower bound assumption. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/102078 - * affinity.c (__gnat_set_affinity_mask): Add U qualifier. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/32318 - * libgnat/g-catiio.adb (Image_Helper) <'c'>: Fix comment. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/68179 - * exp_ch3.adb (Expand_Freeze_Array_Type): Build an initialization - procedure for a type derived from String declared with the aspect - Default_Aspect_Component_Value. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/52319 - * sem_ch7.adb (Uninstall_Declarations): Use direct test on Nkind - to spot operators. - * sem_ch8.adb (End_Use_Package): Also test the Etype of operators - to spot those which are primitive operators of use-visible types. - -2025-10-20 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/87777 - * gnatchop.adb: Add with clause for Osint. - (Locate_Executable): Delete. - (Gnatchop): Use Osint.Program_Name and Locate_Exec_On_Path instead - of Locate_Executable to locate GCC's driver executable. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/107536 - * exp_ch2.adb (Expand_Renaming): Mark the entity as referenced. - -2025-10-17 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/122295 - * sem_ch12.adb (Analyze_Package_Instantiation): Force Style_Check - to False only after possibly installing the parent. - * aspects.adb (UAD_Pragma_Map): Fix style violation. - * inline.adb (To_Pending_Instantiations): Likewise. - * lib.ads (Unit_Names): Likewise. - * repinfo.adb (Relevant_Entities): Likewise. - * sem_ch7.adb (Subprogram_Table): Likewise. - (Traversed_Table): Likewise. - * sem_util.adb (Interval_Sorting): Likewise. - -2025-10-07 Eric Botcazou <ebotcazou@adacore.com> - - Revert: - 2025-10-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118343 - * Makefile.rtl (LLVM_BUILD): Delete. - -2025-10-06 Marc Poulhiès <poulhies@adacore.com> - Éric Botcazou <botcazou@adacore.com> - - * gcc-interface/decl.cc (get_extended_unconstrained_array): Handle - array subtype. - -2025-10-06 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/utils.cc (convert): Also extract the _Parent field - to implement upcasting in the case where only the sizes match. - -2025-10-06 Marc Poulhiès <poulhies@adacore.com> - - * gcc-interface/trans.cc (Attribute_to_gnu)<Attr_Pool_Address>: Handle - extended access. - -2025-10-06 Ronan Desplanques <desplanques@adacore.com> - - * fmap.adb (File_Mapping, Path_Mapping): Fix instantiations. - (Add_To_File_Map): Use Table.Table.Append. - -2025-10-06 Ronan Desplanques <desplanques@adacore.com> - - * fmap.ads (Add_Forbidden_File_Name): Remove obsolete code. - * fmap.adb (Forbidden_Names, Add_Forbidden_File_Name, - Mapped_Path_Name, Reset_Tables): Remove obsolete code. - -2025-10-06 Tonu Naks <naks@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: refine - description of -gnatwr - * gnat_ugn.texi: Regenerate. - -2025-10-05 Franck Behaghel <franckbehaghel_gcc@protonmail.com> - - PR ada/110314 - * sem_ch4.adb (Analyze_Allocator): Add call to New_Copy_Tree. - -2025-10-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/112446 - * usage.adb (Usage): Add 'z' to the list of 'g' style. - -2025-10-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118343 - * Makefile.rtl (LLVM_BUILD): Delete. - -2025-10-04 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/64869 - * sem_ch7.adb (Install_Private_Declarations): Also propagate the - Current_Use_Clause from partial to full view. - (Uninstall_Declarations): Extend implementation of RM 8.4(8.1/3) - subclause to all primitive subprograms. - -2025-09-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/117517 - * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Try to - resolve the reducer first. Fix casing of error message. - -2025-09-29 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm/implementation_advice.rst: PolyORB - * doc/gnat_rm/implementation_defined_characteristics.rst: PolyORB - * doc/gnat_rm/implementation_defined_pragmas.rst: ASIS - * doc/gnat_rm/obsolescent_features.rst: PolyORB - * doc/gnat_rm/specialized_needs_annexes.rst: PolyORB - * doc/gnat_rm/the_gnat_library.rst: PolyORB - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: ASIS - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-29 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Pre_Post_Condition): Handle contracts on - generic formal subprograms like on declarations of access-to-subprogram - types. - -2025-09-29 Piotr Trojanek <trojanek@adacore.com> - - * exp_util.adb (Attribute_Constrained_Static_Value): Special case - stand-alone objects for GNATprove. - -2025-09-29 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Full_View): Fix error message. - -2025-09-29 Javier Miranda <miranda@adacore.com> - - * aspects.adb (Get_Aspect_Id): Return No_Aspect for Unsigned_Base_Range - name. - * sem_prag.adb (Analyze_Pragma): Disable pragma Unsigned_Base_Range. - * par-ch4.adb (Scan_Apostrophe): Disable attribute Unsigned_Base_Range. - * doc/gnat_rm/gnat_language_extensions.rst: Remove documentation - of aspect unsigned base range. - * gnat_rm.texi: Regenerate. - -2025-09-29 Ghjuvan Lacambre <lacambre@adacore.com> - - * exp_ch6.adb (Validate_Subprogram_Calls): Do not Check_Calls in CodePeer_Mode. - (Check_Calls): Remove CodePeer_Mode special case. - -2025-09-29 Viljar Indus <indus@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst: update - rules for pragmas affected by assertion levels. - * gnat_rm.texi: Regenerate. - -2025-09-29 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Procedure_Call_Policies): Update the check - between the levels of the argument and the call. - -2025-09-23 Bob Duff <duff@adacore.com> - - * exp_ch6.adb (Prepend_Constructor_Procedure_Prologue): - Push/Pop the procedure scope, so that temps created herein - get the right Scope. - -2025-09-23 Jose Ruiz <ruiz@adacore.com> - - * libgnarl/s-stusta.adb (Report_Impl): Export a copy of - the current stack usage while holding the runtime lock. - (Report_For_Task): Do not compute stack usage for a task - that has not yet initialized its stack with the expected - pattern. - (Report_For_Task): The Stack_Analyzer object for the - environment task is not part of its ATCB. For the rest of - the tasks wait until we have initialized the stack pattern - before computing stack usage. - (Report_All_Tasks, Get_All_Tasks_Usage, - Get_Current_Task_Usage): Adapt to the new interface from - Report_Impl. Take into account that Result_Array can be - null. When we don't store stack results for a task we - need to compute it when requested. - (Print): Handle the case when we don't know the stack - usage to be reported. - * libgnat/s-stausa.adb (Initialize): For the environment - task, approximate the stack origin with the topmost - stack address that is known. - * libgnat/s-stausa.ads: Clarify comments. - -2025-09-23 Denis Mazzucato <mazzucato@adacore.com> - - * sem_util.adb (Ultimate_Prefix): Clean-up the loop condition by using - Has_prefix instead of an explicit list of node kinds. - -2025-09-23 Denis Mazzucato <mazzucato@adacore.com> - - * sem_ch10.adb (Install_Siblings): Fix condition to emit warning. - -2025-09-23 Viljar Indus <indus@adacore.com> - - * sem_case.adb (Is_Case_Choice_Pattern): Return False for allocators. - -2025-09-23 Douglas B Rupp <rupp@adacore.com> - - * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Linker_Options): - Remove pragma for RTP specs. - * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise. - -2025-09-23 Gary Dismukes <dismukes@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Add doc - for addition of -gnateG options b, c, and e. - * doc/gnat_ugn/the_gnat_compilation_model.rst: Add doc for "-e" optionn - on gnatprep and integrated preprocessing. Add doc for addition of - -gnateG options b, c, and e. - * gprep.adb (Scan_Command_Line): Add 'e' to the list of allowed switch - letters in the string passed to GNAT.Command_Line.Getopt. Set the flag - Opt.Empty_Comment_Deleted_Lines to True when the "-e" switch is found. - (Usage): Output a switch description for the "-e" switch. - * opt.ads: Add new flag variable Empty_Comment_Deleted_Lines. Add - "GNAT" to the "GNATPREP" comment line for Comment_Deleted_Lines. - * prep.adb (Output_Line): Add handling for Empty_Comment_Deleted_Lines, - outputting comment lines consisting of "--!" for lines that are removed - in the preprocessed source file when Empty_Comment_Deleted_Lines is True. - * prepcomp.adb (Preproc_Data): Add Empty_Comments component (defaulting - to False). - (No_Preproc_Data): Add association for Empty_Comments component. - (Parse_Preprocessing_Data_File): Add handling for new switch -e. - (Prepare_To_Preprocess): Add logic for setting the new option - Empty_Comment_Deleted_Lines (and making it the default for - integrated preprocessing in the absence of other switches). - * switch-c.adb (Scan_Front_End_Switches): Add support adding a single - character 'b', 'c', 'e' to the "-gnateG" switch, to select any of the - three options for replacing deleted lines in preprocessing output file. - * usage.adb: Update usage info for -gnateG, to reflect the option of - appending b, c, or e to the switch. - * gnat_ugn.texi: Regenerate. - -2025-09-23 Piotr Trojanek <trojanek@adacore.com> - - * sprint.adb (Sprint_Node_Actual): Print finally statements, if - present. - -2025-09-23 Javier Miranda <miranda@adacore.com> - - * sem_util.adb (Is_Partially_Initialized_Type): Return False - for record types with no components. - -2025-09-23 Steve Baird <baird@adacore.com> - - * doc/gnat_rm/implementation_defined_aspects.rst: Document the - Extended_Access aspect. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-22 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/121968 - * sem_ch12.adb (Associations.Find_Assoc): Add guard for clauses. - * sem_dim.adb (Analyze_Dimension_Array_Aggregate): Add test for - N_Iterated_Component_Association nodes. - -2025-09-19 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/gigi.h (create_var_decl): Add LINKONCE_FLAG boolean - parameter. - (create_subprog_decl): Likewise. - * gcc-interface/decl.cc (gnat_to_gnu_entity): Adjust calls to - create_var_decl and create_subprog_decl. - (elaborate_expression_1): Likewise. - * gcc-interface/trans.cc (gigi): Likewise. - (build_raise_check): Likewise. - (Subprogram_Body_to_gnu): Likewise. - (create_temporary): Likewise. - (Exception_Handler_to_gnu): Likewise. - (Compilation_Unit_to_gnu): Likewise. - (gnat_to_gnu): Likewise. - (use_alias_for_thunk_p): Return false for a one-only target. - * gcc-interface/utils.cc (maybe_pad_type): Adjust call to - create_var_decl. - (create_var_decl): Add LINKONCE_FLAG boolean parameter. - (create_subprog_decl): Likewise. - -2025-09-19 Marc Poulhiès <poulhies@adacore.com> - - * gcc-interface/ada-tree.h (TYPE_EXTENDED_POINTER_P): New. - (TYPE_IS_EXTENDED_POINTER_P): New. - (TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. - (SET_TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. - (TYPE_DUMMY_EXT_POINTER_TO): New. - (SET_TYPE_DUMMY_EXT_POINTER_TO): New. - * gcc-interface/decl.cc (get_extended_unconstrained_array): New. - (gnat_to_gnu_entity): Handle extended access type. - (get_unpadded_extended_type): New. - (gnat_to_gnu_component_type): Handle extended access type. - (build_template_type): New. - (gnat_to_gnu_field): Handle extended access type. - (validate_size): Likewise. - (set_rm_size): Likewise. - (copy_and_substitute_in_layout): Likewise. - (rm_size): Likewise. - * gcc-interface/gigi.h (get_unpadded_extended_type): New. - (build_template_type): New. - (build_dummy_unc_pointer_types_ext): New. - (finish_extended_pointer_type): New. - (build_unc_object_type_from_ptr): Rename first parameter. - * gcc-interface/misc.cc (gnat_print_type): Handle extended access type. - * gcc-interface/trans.cc (Identifier_to_gnu): Likewise. - (Attribute_to_gnu): Likewise. - (gnat_to_gnu): Likewise. - * gcc-interface/utils.cc (convert_to_fat_pointer): Assert if converting an - extended pointer. - (build_dummy_unc_pointer_types_ext): New. - (finish_extended_pointer_type): New. - (finish_record_type): Handle extended access type. - (build_unc_object_type_from_ptr): Likewise. - (convert_to_extended_pointer): New. - (convert): Handle extended access type. - (gnat_pushdecl): Likewise. - (maybe_pad_type): Likewise. - * gcc-interface/utils2.cc (build_unary_op): Likewise. - (build_binary_op): Likewise. - (build_allocator): Likewise. - (gnat_save_expr): Likewise. - (gnat_protect_expr): Likewise. - (gnat_stabilize_reference_1): Likewise. - -2025-09-19 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch4.adb (Analyze_Selected_Component): Bail out if the prefix - has Void_Type. - -2025-09-19 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch4.adb (Analyze_User_Defined_Binary_Op): Remove declare block. - -2025-09-19 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst (Structural Generic - Instantiation): New entry - * einfo.ads (Is_Link_Once): New flag defined in entities. - * sinfo.ads (Is_Structural): New flag defined in instantiations. - * gen_il-fields.ads (Opt_Field_Enum): Add Is_Link_Once and - Is_Structural. - * gen_il-gen-gen_entities.adb (Entity_Kind): Add Is_Link_Once - semantic flag. - * gen_il-gen-gen_nodes.adb (N_Generic_Instantiation): Move up - Parent_Spec field and add Is_Structural semantic flag. - * frontend.adb: Add with clause for Sem_Ch12. - (Frontend): After analysis is complete and bodies are instantiated, - call Sem_Ch12.Mark_Link_Once on the declarations of the main unit. - * par.adb (P_Qualified_Simple_Name): Delete. - (P_Qualified_Simple_Name_Resync): Likewise - (P_Exception_Name): New function declaration. - (P_Label_Name): Likewise. - (P_Loop_Name): Likewise. - (P_Generic_Unit_Name): Likewise. - (P_Library_Unit_Name): Likewise. - (P_Package_Name): Likewise. - (P_Parent_Unit_Name): Likewise. - (P_Subtype_Name): Likewise. - (P_Subtype_Name_Resync): Likewise. - * par-ch3.adb (P_Subtype_Mark_Resync): Replace call to - P_Qualified_Simple_Name_Resync by P_Subtype_Name_Resync. - (P_Identifier_Declarations): Replace call to - P_Qualified_Simple_Name_Resync by P_Exception_Name. - (P_Derived_Type_Def_Or_Private_Ext_Decl): Replace call to - P_Qualified_Simple_Name by P_Subtype_Name. - (P_Interface_Type_Definition): Replace calls to - P_Qualified_Simple_Name by P_Subtype_Name. - * par-ch4.adb (P_Reduction_Attribute_Reference): Move around and - change name of parameter. - (P_Name): Document new grammar rule and make a couple of tweaks. - (P_Exception_Name): New function. - (P_Label_Name): Likewise. - (P_Loop_Name): Likewise. - (P_Generic_Unit_Name): Likewise. - (P_Library_Unit_Name): Likewise. - (P_Package_Name): Likewise. - (P_Parent_Unit_Name): Likewise. - (P_Subtype_Name): Likewise. - (P_Subtype_Name_Resync): Likewise. - (P_Qualified_Simple_Name): Rename into... - (P_Simple_Name): ...this. - (P_Qualified_Simple_Name_Resync): Rename into... - (P_Simple_Name_Resync): ...this. Accept left parenthesis and - dot as name extensions. - (P_Allocator): Replace call to P_Qualified_Simple_Name_Resync - by P_Subtype_Name_Resync. - * par-ch5.adb (P_Goto_Statement): Replace call to - P_Qualified_Simple_Name by P_Label_Name. - (Parse_Loop_Flow_Statement): Replace call to - P_Qualified_Simple_Name by P_Loop_Name. - * par-ch6.adb (P_Subprogram): Replace call to - P_Qualified_Simple_Name by P_Generic_Unit_Name. - * par-ch7.adb (P_Package): Replace calls to - P_Qualified_Simple_Name by P_Package_Name and P_Generic_Unit_Name. - * par-ch8.adb (P_Use_Package_Clause): Replace calls to - P_Qualified_Simple_Name by P_Package_Name. - * par-ch9.adb (P_Task): Replace call to - P_Qualified_Simple_Name by P_Subtype_Name. - (P_Protected): Likewise. - * par-ch10.adb (P_Context_Clause): Replace call to - P_Qualified_Simple_Name by P_Library_Unit_Name. - (P_Subunit): Replace call to P_Qualified_Simple_Name by - P_Parent_Unit_Name. - * par-ch12.adb (P_Generic): Replace call to - P_Qualified_Simple_Name by P_Generic_Unit_Name. - (P_Formal_Derived_Type_Definition): Replace call to - P_Qualified_Simple_Name by P_Subtype_Name. - (P_Formal_Package_Declaration): Replace call to - P_Qualified_Simple_Name by P_Generic_Unit_Name. - * sem_ch4.adb: Add with and use clauses for Sem_Ch12. - (Analyze_Call): Accept implicit instantiations with -gnatX0. - (Analyze_Indexed_Component_Form): Likewise. - * sem_ch8.adb (Analyze_Use_Package): Add guard before inserting - a with clause automatically when there is a use clause. - (Check_In_Previous_With_Clause): Retrieve original names. - (Check_Library_Unit_Renaming): Deal with structural instances. - (End_Use_Type): Minor tweak. - * sem_ch10.adb (Analyze_With_Clause): Remove useless test and - call Defining_Entity_Of_Instance. - * sem_ch12.ads (Build_Structural_Instantiation): New function. - (Mark_Link_Once): New procedure. - * sem_ch12.adb: Add with and use clauses for Exp_Dbug. - (Analyze_Associations): Add support for structural instantiations. - (Analyze_Package_Instantiation): Likewise. - (Analyze_Subprogram_Instantiation): Likewise. - (Analyze_Structural_Associations): New procedure. - (Need_Subprogram_Instance_Body): Return True for instantiation is - in the auxiliary declarations of the main unit. - (Build_Structural_Instantiation): New function. - (Mark_Link_Once): New procedure. - * sem_util.ads (Add_Local_Declaration): New procedure. - (Defining_Entity_Of_Instance): New function. - * sem_util.adb (Add_Local_Declaration): New procedure. - (Defining_Entity_Of_Instance): New function. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-19 Ronan Desplanques <desplanques@adacore.com> - - * aspects.ads: Fix comment. - -2025-09-19 Ronan Desplanques <desplanques@adacore.com> - - * aspects.ads: Remove comment. - -2025-09-19 Marc Poulhiès <poulhies@adacore.com> - - * libgnat/s-putima.ads (Ext_Access_Pointer): New. - (Put_Image_Extended_Access_Pointer): New. - * libgnat/s-putima.adb (Ext_Acc_Instance): New. - (Put_Image_Extended_Access_Pointer): New. - * rtsfind.ads (RE_Id, RE_Unit_Table): Set value for - RE_Put_Image_Extended_Access_Pointer. - * exp_put_image.adb (Build_Elementary_Put_Image_Call): Handle extended - access. - -2025-09-19 Marc Poulhiès <poulhies@adacore.com> - - * fe.h (Is_Extended_Access_Type): Add C bindings. - * sem_util.ads (Is_Extended_Access_Type): Add comment that any - change to the function must take care of the C binding. - -2025-09-19 Marc Poulhiès <poulhies@adacore.com> - - * layout.adb (Layout_Type): Adjust comment and code extended - accesses. - -2025-09-19 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Add_Tag): Remove superfluous statements. - -2025-09-19 Steve Baird <baird@adacore.com> - - * exp_attr.adb (Interunit_Ref_OK): Treat a subunit like a body. - (Build_And_Insert_Type_Attr_Subp): When climbing up the - tree, go from an N_Subunit node to its stub (instead of to the - subunit's N_Compilation_Unit node). - -2025-09-19 Gary Dismukes <dismukes@adacore.com> - - * sem_attr.adb (Eval_Attribute): In the case of a VADS-specific - size attribute, only fold to the object size when the Esize field - is known. - -2025-09-16 Ronan Desplanques <desplanques@adacore.com> - - * exp_strm.ads (Get_Primitives): New function. - * exp_strm.adb (Get_Primitives): Likewise. - (Build_Elementary_Input_Call, Build_Elementary_Write_Call): use - Get_Primitives. - (Has_Stream_Standard_Rep): Add formal parameter and rename to... - (Is_Stream_Standard_Rep): New function. - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Fix error - emission. - -2025-09-16 Gary Dismukes <dismukes@adacore.com> - - Revert: - 2025-09-15 Gary Dismukes <dismukes@adacore.com> - - * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete - comment about not being able to allocate fixed-size controlled results - on the caller side, and replace another obsolete comment with a simpler - comment. Call Build_Allocate_Deallocate_Proc when the function doesn't - need a BIPalloc formal to ensure that function results with controlled - parts allocated on the caller side will be chained for finalization. - (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection - on the function's Entity_Id rather than the function call. - (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal - then it doesn't need a BIP collection either; return False in that case. - (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. - * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack - to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put - the other tests in a disjunction subsidiary to that. Improve preceding - comment. - -2025-09-16 Iain Sandoe <iain@sandoe.co.uk> - - PR ada/114065 - * libgnarl/s-osinte__darwin.adb: Add and reference clause - for Interfaces.C, remove clause for Interfaces.C.Extensions. - -2025-09-15 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/114065 - PR ada/121953 - * Makefile.rtl (LIBGNAT_TARGET_PAIRS) [x32-linux]: Replace - libgnarl/s-osinte__x32.adb with libgnarl/s-osinte__posix.adb. - * libgnarl/s-osinte__x32.adb: Delete. - -2025-09-15 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/trans.cc (gnat_to_gnu) - <N_Object_Renaming_Declaration>: Deal with objects whose elaboration - is deferred. - (process_freeze_entity): Deal with renamed objects whose elaboration - is deferred. - -2025-09-15 Gary Dismukes <dismukes@adacore.com> - - * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete - comment about not being able to allocate fixed-size controlled results - on the caller side, and replace another obsolete comment with a simpler - comment. Call Build_Allocate_Deallocate_Proc when the function doesn't - need a BIPalloc formal to ensure that function results with controlled - parts allocated on the caller side will be chained for finalization. - (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection - on the function's Entity_Id rather than the function call. - (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal - then it doesn't need a BIP collection either; return False in that case. - (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. - * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack - to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put - the other tests in a disjunction subsidiary to that. Improve preceding - comment. - -2025-09-15 Eric Botcazou <ebotcazou@adacore.com> - - * checks.adb (Apply_Discriminant_Check): Remove undocumented test - on Is_Aliased_View applied to the left-hand side to skip the check - in the case where the subtypes are the same, and replace it with a - test that the subtypes are constrained. - -2025-09-15 Jose Ruiz <ruiz@adacore.com> - - * doc/gnat_rm/security_hardening_features.rst: - clarify that hardening options are not supported by the - LLVM back end. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Disable context checks for - the preanalysis of the expression for Loop_Invariant pragmas - as the ghost region for the pragma has not been set up yet. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Get_Applicable_Policy): Match assertion levels - by name. - -2025-09-15 Steve Baird <baird@adacore.com> - - * freeze.adb (Freeze_Entity): In the case of an anonymous - access-to-subprogram type where Do_Freeze_Profile is True, freeze - the designated subprogram type. - (Should_Freeze_Type): Do not call Unit_Declaration_Node with - a parentless argument. - * sem_ch3.adb (Analyze_Object_Declaration): When calling - Freeze_Before, override the default value for Do_Freeze_Profile. - This is needed in some cases to prevent premature freezing in the - case of an object of an anonymous access-to-subprogram type. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Add ghost level check to - Assertion_Policy. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Assignment_Policies): The level of the assignee - should depend on the level of the region. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * ghost.adb (Is_Ok_Pragma): Remove calls to Check_Policies. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * contracts.adb: Update SPARK RM reference numbers. - * freeze.adb: Likewise. - * ghost.adb: Likewise. - * ghost.ads: Likewise. - * sem_ch12.adb: Likewise. - * sem_ch3.adb: Likewise. - * sem_ch6.adb: Likewise. - * sem_prag.adb: Likwise. - * sem_res.adb: Likewise. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Check_Inconsistent_Argument_Ghostliness): - new method for handling the ghost constency errors between - different arguments. Use this method in the processing for - pragmas Unused, Unrefefrenced, Unreferenced_Objects, Inline and - No_Return. - * sem_prag.ads (Suppressed_Ghost_Policy_Check_Pragma): add - missing entry for pragma Inline. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Assignee_Levels): Fix the condition and improve - error message handling. - -2025-09-15 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/114065 - * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and - s-c_time$(objext). - (Aarch64/Android): Do not use s-osinte__android.adb. - (SPARC/Solaris): Do not use s-osprim__solaris.adb. - (x86/Solaris): Likewise. - (LynxOS178): Do not use s-parame__posix2008.ads. - (RTEMS): Likewise. - (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace - s-osprim__x32.adb with s-osprim__posix.adb. - (LIBGNAT_OBJS): Remove cal.o. - * cal.c: Delete. - * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. - (GNAT.Calendar): Do not mention the obsolete conversion functions. - * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. - * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time - (Clock): Use type and functions from System.C_Time. - * libgnarl/s-linux.ads: Remove with clause for System.Parameters. - Remove declarations of C time types. - * libgnarl/s-linux__alpha.ads: Likewise. - * libgnarl/s-linux__android-aarch64.ads: Likewise. - * libgnarl/s-linux__android-arm.ads: Likewise. - * libgnarl/s-linux__hppa.ads: Likewise. - * libgnarl/s-linux__loongarch.ads: Likewise. - * libgnarl/s-linux__mips.ads: Likewise. - * libgnarl/s-linux__riscv.ads: Likewise. - * libgnarl/s-linux__sparc.ads: Likewise. - * libgnarl/s-osinte__aix.ads: Likewise. - * libgnarl/s-osinte__android.ads: Likewise. - * libgnarl/s-osinte__cheribsd.ads: Likewise. - * libgnarl/s-osinte__darwin.ads: Likewise. - * libgnarl/s-osinte__dragonfly.ads: Likewise. - * libgnarl/s-osinte__freebsd.ads: Likewise. - * libgnarl/s-osinte__gnu.ads: Likewise. - * libgnarl/s-osinte__hpux.ads: Likewise. - * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. - * libgnarl/s-osinte__linux.ads: Likewise. - * libgnarl/s-osinte__lynxos178e.ads: Likewise. - * libgnarl/s-osinte__qnx.ads: Likewise. - * libgnarl/s-osinte__rtems.ads: Likewise. - * libgnarl/s-osinte__solaris.ads: Likewise. - * libgnarl/s-osinte__vxworks.ads: Likewise. - * libgnarl/s-qnx.ads: Likewise. - * libgnarl/s-linux__x32.ads: Delete. - * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. - (To_Timespec): Likewise. - * libgnarl/s-osinte__aix.adb: Likewise. - * libgnarl/s-osinte__dragonfly.adb: Likewise. - * libgnarl/s-osinte__freebsd.adb: Likewise. - * libgnarl/s-osinte__gnu.adb: Likewise. - * libgnarl/s-osinte__lynxos178.adb: Likewise. - * libgnarl/s-osinte__posix.adb: Likewise. - * libgnarl/s-osinte__qnx.adb: Likewise. - * libgnarl/s-osinte__rtems.adb: Likewise. - * libgnarl/s-osinte__solaris.adb: Likewise. - * libgnarl/s-osinte__vxworks.adb: Likewise. - * libgnarl/s-osinte__x32.adb: Likewise. - * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. - (Monotonic_Clock): Use type and functions from System.C_Time. - (RT_Resolution): Likewise. - (Timed_Sleep): Likewise. - (Timed_Delay): Likewise. - * libgnarl/s-taprop__vxworks.adb: Likewise. - * libgnarl/s-tpopmo.adb: Likewise. - * libgnarl/s-osinte__android.adb: Delete. - * libgnat/g-c_time.ads: New file. - * libgnat/g-calend.adb: Delegate to System.C_Time. - * libgnat/g-calend.ads: Likewise. - * libgnat/g-socket.adb: Likewise. - * libgnat/g-socthi.adb: Likewise. - * libgnat/g-socthi__vxworks.adb: Likewise. - * libgnat/g-sothco.ads: Likewise. - * libgnat/g-spogwa.adb: Likewise. - * libgnat/s-c_time.adb: New file. - * libgnat/s-c_time.ads: Likewise. - * libgnat/s-optide.adb: Import nanosleep here. - * libgnat/s-os_lib.ads (time_t): Remove. - (To_Ada): Adjust. - (To_C): Likewise. - * libgnat/s-os_lib.adb: Likewise. - * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. - * libgnat/s-osprim__posix.adb: Likewise. - * libgnat/s-osprim__posix2008.adb: Likewise. - * libgnat/s-osprim__rtems.adb: Likewise. - * libgnat/s-osprim__unix.adb: Likewise. - * libgnat/s-osprim__solaris.adb: Delete. - * libgnat/s-osprim__x32.adb: Likewise. - * libgnat/s-parame.ads (time_t_bits): Remove. - * libgnat/s-parame__hpux.ads: Likewise. - * libgnat/s-parame__vxworks.ads: Likewise. - * libgnat/s-parame__posix2008.ads: Delete. - * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. - * gnat_rm.texi: Regenerate. - -2025-09-15 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Finalize_Address): In an untagged derivation, call - Root_Type on the full view of the base type if the partial view is - itself not a derived type. - (Is_Untagged_Derivation): Minor formatting tweak. - -2025-09-15 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.ads (Unqualified_Unconditional_Parent): New function. - * exp_util.adb (Unconditional_Parent): Do not look through qualified - expressions. - (Unqualified_Unconditional_Parent): New function identical to the - original Unconditional_Parent. - * exp_aggr.adb (Convert_To_Assignments): Replace Unconditional_Parent - with Unqualified_Unconditional_Parent. - (Expand_Array_Aggregate): Likewse. - * exp_ch4.adb (Expand_N_Case_Expression): Likewise. - (Expand_N_If_Expression): Likewise. - * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not bypass an enclosing - qualified expression in the parent chain. - -2025-09-15 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst: Fix section of Finalizable. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * sem_ch6.adb (Analyze_Expression_Function): Disable ghost - checks during the early freeze. - -2025-09-15 Steve Baird <baird@adacore.com> - - * aspects.ads: Define Super aspect; allow Initialize aspect - specification on a subprogram body. - * exp_attr.adb (Expand_N_Attribute_Reference): Rewrite Make - attribute implementation. - * exp_ch3.adb (Initialization_Control): Delete Initialization_Mode - and Make_Mode_Literal (those declarations were moved to the spec). - (Build_Record_Init_Proc): For a constructor type, component - initialization (other than for the tag component, if any) must be - performed by calling the single-argument constructor procedure. - (Requires_Init_Proc): Return True for a constructor type. - * exp_ch3.ads (Make_Mode_Literal, Initialization_Mode): New, moved - from the body of this package. - * exp_ch6.adb (Expand_N_Subprogram_Body): Declare, implement, and - call a new local procedure, Prepend_Constructor_Procedure_Prologue - in order to generate component initialization for a constructor - procedure. - * sem_attr.adb (Analyze_Attribute): Improve the error message - generated for a 'Make attribute reference if GNAT extensions are - not all allowed. - * sem_ch13.adb (Analyze_One_Aspect): Improved implementation of - aspect specifications for Initialize, Constructor, and Super - aspects. For Super, there was no previous implementation. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * atree.adb (Mark_New_Ghost_Node): Set Is_Implicit_Ghost for - all newly created nodes. - * gen_il-fields.ads (Is_Implicit_Ghost): New attribute. - * gen_il-gen-gen_entities.adb (Entity_Kind): Add Is_Implicit_Ghost - attribute. - * ghost.adb (Ghost_Policy_In_Effect): Implicit_Ghost_Entities inside - pragmas get the ghost mode from the region isntead of the global - ghost policy. - (Ghost_Assertion_Level_In_Effect): New function that returns the - applicable assertion level for the given entity in a similar manner - as Ghost_Policy_In_Effect. - (Install_Ghost_Region): Set Is_Inside_Statement_Or_Pragma attribute. - (Mark_And_Set_Ghost_Body): Update the logic for deriving the ghost - region. - (Set_Ghost_Mode): Ignored pragmas attached to checked ghost entities - now create an ignored ghost region. Pragmas attached to non-ghost - entities create the ghost region based on the policy applied to the - given pragma. - * opt.ads (Ghost_Config_Type): add new attribute - Is_Inside_Statement_Or_Pragama to track whether we should take the - active ghost mode from the ghost region for implicit ghost entities. - * sem_prag.adb (Analyze_Pragma): Mark entities that have an explicit - ghost pragma as non-implicit ghost. - -2025-09-15 Sebastian Poeplau <poeplau@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: - Remove the note on light runtimes. - -2025-09-15 Sebastian Poeplau <poeplau@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Move - recommendation of Toolchain_Name up. - * gnat_ugn.texi: Regenerate. - -2025-09-15 Vadim Godunko <godunko@adacore.com> - - * bindgen.adb (Gen_Adafinal): Don't generate call of adafinal - when use of standard library suppressed. - -2025-09-15 Vadim Godunko <godunko@adacore.com> - - * bindgen.adb (Gen_Adafinal): Don't generate code when - use of standard library suppressed. - -2025-09-15 Vadim Godunko <godunko@adacore.com> - - * libgnat/a-swunau.ads (Set_Wide_String): New subprogram. - * libgnat/a-swunau.adb (Set_Wide_String): Likewise. - * libgnat/a-swunau__shared.adb (Set_Wide_String): Likewise. - * libgnat/a-szunau.ads (Set_Wide_Wide_String): Likewise. - * libgnat/a-szunau.adb (Set_Wide_Wide_String): Likewise. - * libgnat/a-szunau__shared.adb (Set_Wide_Wide_String): Likewise. - -2025-09-15 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Context): Avoid context checks when they - are globally disabled. - * sem.ads (Ghost_Context_Checks_Disabled): New flag to control - whether ghost context checks are activated or not. - * sem_prag.adb (Analyze_Pragma): Disable ghost context checks for - pragmas that determine their ghostliness based on one of its arguments. - -2025-09-15 Ronan Desplanques <desplanques@adacore.com> - - * sem_util.ads (Is_Ancestor_Package): Fix documentation comment. - * sem_util.adb (Is_Ancestor_Package): Rename local object. - -2025-09-11 Marc Poulhiès <poulhies@adacore.com> - - * libgnat/g-socket.adb (Listen_Socket): Change default value. - * libgnat/g-socket.ads (Listen_Socket): Likewise. - * s-oscons-tmplt.c (BACKLOG_MAX): New. - -2025-09-11 Marc Poulhiès <poulhies@adacore.com> - - * env.c (__gnat_clearenv): Adjust comment. - * libgnarl/a-intnam__bsd.ads: Fix copyright date. - -2025-09-11 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Give a - warning for huge imported objects as well. - -2025-09-11 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/ada-tree.h (TYPE_ALIGN_OK): Delete. - * gcc-interface/decl.cc (gnat_to_gnu_entity): Do not set it. - * gcc-interface/gigi.h (standard_datatypes): Add ADT_tag_name_id. - (tag_name_id): New macro. - (type_is_tagged_or_cw_equivalent): New inline predicate. - * gcc-interface/trans.cc (gigi): Initialize tag_name_id. - (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Replace tests on - TYPE_ALIGN_OK with calls to type_is_tagged_or_cw_equivalent. - (addressable_p): Likewise. - * gcc-interface/utils.cc (convert): Likewise. - * gcc-interface/utils2.cc (build_binary_op): Likewise. - -2025-09-11 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/misc.cc (gnat_get_array_descr_info): In the record - type case, bail out if the original array type cannot be retrieved. - -2025-09-11 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/gigi.h (standard_datatypes): Add ADT_uns_mulv64_decl - and ADT_uns_mulv128_decl. - (uns_mulv64_decl): New macro. - (uns_mulv128_decl): Likewise. - * gcc-interface/trans.cc (gigi): Create the uns_mulv64_decl and - uns_mulv128_decl declarations. - (gnat_to_gnu) <N_Op_Add>: Perform an overflow check for unsigned - integer addition, subtraction and multiplication if required. - <N_Op_Minus>: Perform an overflow check for unsigned integer - negation if required. - (build_unary_op_trapv): Add support for unsigned types. - (build_binary_op_trapv): Likewise. - <MINUS_EXPR>: Perform the check if the LHS is zero in the signed - case as well. - -2025-09-11 Steve Baird <baird@adacore.com> - - * exp_ch6.adb (Expand_Actuals): After building the tree for a - predicate check, call Prepend_To instead of Append_To so that the - check is performed before, instead of after, the corresponding - parameter copy-back. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * sem_prag.adb: Create a ghost region for pragma annotate before - analyzing its arguments. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * sem_ch5.adb (Analyze_Iterator_Specification): Check ghost context - of Iterable functions when handling iterator specifications with an - Iterable aspect. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Policy): Update coding style. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Policy): Avoid triggering a ghost - policy error if the policy is referenced within the Iterable - aspect. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * ghost.adb (Is_OK_Statement): Check the levels of the - assignee with the levels of the entity are ghost level dependent. - (Check_Assignement_Levels): New function for checking the level - dependencies. - -2025-09-11 Piotr Trojanek <trojanek@adacore.com> - - * einfo.ads (Ghost_Assertion_Level): Fix comment. - -2025-09-11 Viljar Indus <indus@adacore.com> - - * ghost.adb (Mark_And_Set_Ghost_Assignment): Create a ghost region - for an assigment irregardless of whether the expander is active. - Relocate the Assignment validity checks from Is_OK_Statement to - this subprogram. - -2025-09-11 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Build_Container_Aggr_Code.Build_Size_Expr): In the case - of an association with a single choice, only call Update_Choices when - the choice expression is nonstatic. - -2025-09-11 Bob Duff <duff@adacore.com> - - * exp_ch5.adb - (Expand_Assign_With_Target_Names.Replace_Target): - Remove code setting Entity to Empty. - * sinfo.ads (Has_Target_Names): - Improve comment: add "@" to clarify what "target name" - means, and remove the content-free phrase "and must - be expanded accordingly." - -2025-09-11 Bob Duff <duff@adacore.com> - - * einfo-utils.adb (Root_Type): Do not deal with missing Etype. - -2025-09-11 Bob Duff <duff@adacore.com> - - * einfo-utils.adb (Root_Type): Deal with missing Etype. - (Root_Type_If_Set): Likewise. - -2025-09-11 Javier Miranda <miranda@adacore.com> - - * freeze.adb (Freeze_Entity): Protect call to Associated_Storage_Pool - since it cannot be used when the Etype is not set. - * sem_ch3.adb (Access_Type_Declaration): Ditto. - * sem_aux.adb (Is_Derived_Type): Protect call to Root_Type since it - cannot be used when the Etype is not set. - -2025-09-11 Tonu Naks <naks@adacore.com> - - * libgnat/s-crtl.ads: define unsigned - * libgnat/s-crtl__mingw.adb (read, write): change arg type - -2025-09-11 Bob Duff <duff@adacore.com> - - * freeze.adb (Freeze_Entity): Change "=" to ">=" in - size comparison for Implicit_Packing mode. - Keep it as "=" for giving error messages. - * opt.ads (Implicit_Packing): Minor: correct obsolete - comment. - -2025-09-11 Javier Miranda <miranda@adacore.com> - - * sem_aggr.adb (Report_Null_Array_Constraint_Error): Adjust code - for reporting the error on enumeration types. - (Resolve_Null_Array_Aggregate): On multidimiensional arrays, avoid - reporting the same error several times. Flag the node as raising - constraint error when the bounds are known and some of them is - known to raise constraint error. - -2025-09-11 Bob Duff <duff@adacore.com> - - * atree.ads (Node_To_Fetch_From_If_Set): Alternative to - Node_To_Fetch_From that returns Empty in error cases. - For use only in Treepr. - * treepr.adb (Print_Entity_Field): Avoid printing field - if Node_To_Fetch_From_If_Set returns Empty. - * einfo-utils.ads (Base_Type_If_Set): Alternative to - Base_Type that returns Empty in error cases. - (Implementation_Base_Type_If_Set): Likewise. - (Root_Type_If_Set): Likewise. - (Underlying_Type): Use more accurate result subtype. - * einfo-utils.adb (Base_Type): Add Asserts. - (Implementation_Base_Type): Add Assert; minor cleanup. - (Root_Type): Add Assert; minor cleanup. Remove Assert that - is redundant with predicate. - (Base_Type_If_Set): Body of new function. - (Implementation_Base_Type_If_Set): Body of new function. - (Root_Type_If_Set): Body of new function. - -2025-09-11 Johannes Kliemann <kliemann@adacore.com> - - * adaint.c: Add functions to disable and enable signals on QNX. - * libgnarl/s-taprop__qnx.adb (Create_Task): Disable - signals when calling pthread_create. - -2025-09-11 Gary Dismukes <dismukes@adacore.com> - - * exp_ch4.adb (Expand_N_Op_Eq): Test for absence of user-defined - equality on type being compared (for both array and record types) - as a condition for checking for abstract equality on component - types. Add a "???" comment about current limitations on issuing - the new warning. - (Warn_On_Abstract_Equality_For_Component): Remove temporary disabling - of the warning. Improve comment on declaration. - -2025-09-11 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Discriminants, Process_Full_View): Fix - comments. - -2025-09-11 Denis Mazzucato <mazzucato@adacore.com> - - * sem_attr.adb (Eval_Attribute): Remove strict analysis condition. - -2025-09-11 Denis Mazzucato <mazzucato@adacore.com> - - * par-load.adb (Load): Better warning message. - -2025-09-11 Tucker Taft <taft@adacore.com> - - * exp_attr.adb - (Build_Array_VS_Func and Build_Record_VS_Func): Pass in the - Attr as the Related_Node parametr when calling - Make_Temporary for the Func_Id for the array and record - Valid_Scalars local functions. - -2025-09-11 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.ads (Find_Type_Name): Improve documentation comment. - -2025-09-11 Gary Dismukes <dismukes@adacore.com> - - * exp_ch4.adb (Warn_On_Abstract_Equality_For_Component): Temporarily - disable warning. - -2025-09-10 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/121885 - * snames.ads-tmpl (Pragma_Id): Rename Unknown_Pragma to - Pragma_Unknown for the sake of XSnamesT. - * snames.adb-tmpl (Get_Pragma_Id): Adjust to above renaming. - * snames.h-tmpl (Attribute_Id): Change underlying type to Byte. - (Get_Attribute_Id): Use Byte as return value. - (Pragma_Id): Change underlying type to Word. - (Get_Pragma_Id): Use Word as return value. - * types.h (Word): New typedef. - * exp_prag.adb (Expand_N_Pragma): Remove useless comment. - * par-prag.adb (Prag): Adjust to above renaming. - * sem_prag.adb (Analyze_Pragma): Likewise. - (Sig_Flags): Likewise. - -2025-09-09 Gary Dismukes <dismukes@adacore.com> - - * exp_ch4.adb (Expand_N_Op_Eq): Check for warning about call to - the abstract equality function of a component type, for both array - and record enclosing types. - (Warn_On_Abstract_Equality_For_Component): New procedure to issue - a warning when an abstract equality function of a component type - will be called and result in Program_Error. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch5.adb (Make_Call): Mark generated nodes as coming from source. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Incomplete_Type_Decl): Remove incorrect - comment. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Is_OK_Pragma): Use the - Suppressed_Ghost_Policy_Check_Pragma list for ignoring certain - pragmas. - * sem_prag.ads (Suppressed_Ghost_Policy_Check_Pragma): New variable - to store the pragmas that could be ignored when checking for - consitant ghost policy. - -2025-09-09 Tonu Naks <naks@adacore.com> - Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-crtl.ads (read, write): remove import - * libgnat/s-crtl__mingw.adb: body for windows - * libgnat/s-crtl.adb: body for all the other targets - * Makefile.rtl: configure s-crtl.adb/libgnat/s-crtl__mingw.adb - * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Alphabetize. - (GNATBIND_OBJS): Add ada/libgnat/s-crtl.o. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * contracts.adb: Use the In_Codegen function instead. - * exp_ch3.adb: Likewise. - * exp_ch5.adb: Likewise. - * exp_ch6.adb: Likewise. - * exp_ch7.adb: Likewise. - * exp_ch9.adb: Likewise. - * exp_disp.adb: Likewise. - * exp_util.adb: Likewise. - * freeze.adb: Likewise. - * ghost.adb: Likewise. - * inline.adb: Likewise. - * repinfo.adb: Likewise. - * sem_ch10.adb: Likewise. - * sem_ch13.adb: Likewise. - * sem_ch3.adb: Likewise. - * sem_ch6.adb: Likewise. - * sem_elab.adb: Likewise. - * sem_res.adb: Likewise. - * sem_util.adb (Predicates_Ignored_In_Codegen): Add new function for - the Predicates_Ignored property. - (Predicates_Enabled): Use Predicates_Ignored_In_Codegen instead. - * sem_util.ads (Predicates_Ignored_In_Codegen): New function. - (Is_Ignored_In_Codegen): Add documentation on how _In_Codegen - functions should be used. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Copy_And_Swap): Improve comments. - -2025-09-09 Javier Miranda <miranda@adacore.com> - - * sem_util.adb (Needs_One_Actual): Add support for untagged record - types when the sources are compiled with Core Extensions allowed. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Find_Type_Name): Fix comment. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Check_Nonoverridable_Aspects): Remove if statement. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Check_Nonoverridable_Aspects): Improve documentation - comment. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Completion): Add location info - to the policy messages. - (Check_Ghost_Policy): Likwise. - -2025-09-09 Javier Miranda <miranda@adacore.com> - - * exp_attr.adb (Rewrite_Attribute_Proc_Call): Add new parameter - to calls to Create_Extra_Formals. - (Expand_N_Attribute_Reference): Ditto. - * exp_ch3.adb (Expand_Freeze_Record_Type): Ditto. - * exp_ch6.adb (Expand_Call_Helper): Ditto. - * exp_disp.adb (Expand_Dispatching_Call): Ditto. - * freeze.adb (Check_Itype): Ditto. - (Freeze_Expression): Ditto. - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Ditto. - (Create_Extra_Formals): Add new formal, and use it to determine - if the creation of the extra formals can be deferred. Add the - new parameter to calls to Create_Extra_Formals. - (Is_Unsupported_Extra_Actuals_Call): Adjust the code to improve - its performance when the result is known. - (Is_Unsupported_Extra_Formals_Entity): Ditto. Add new formal - * sem_ch6.ads (Create_Extra_Formals): Add new formal. - (Is_Unsupported_Extra_Formals_Entity): Ditto. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * sem_aggr.adb (Resolve_Array_Aggregate): Indicate an out of - bounds index error also in the case of a missing index. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * sem_ch13.adb (Analyze_Aspect_Definitions): Create a temporary - pragma for the non-task and access type cases. - -2025-09-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch7.adb (New_Private_Type): Remove useless statements. - -2025-09-09 Denis Mazzucato <mazzucato@adacore.com> - - * targparm.adb (Get_Target_Parameters): Address type declaration doesn't - ends anymore with a semicolon. - * libgnat/a-cdlili.ads: Replace Preelaborable_Initialization. - * libgnat/a-cidlli.ads: Likewise. - * libgnat/a-cihama.ads: Likewise. - * libgnat/a-cihase.ads: Likewise. - * libgnat/a-cimutr.ads: Likewise. - * libgnat/a-ciorma.ads: Likewise. - * libgnat/a-ciormu.ads: Likewise. - * libgnat/a-ciorse.ads: Likewise. - * libgnat/a-cohama.ads: Likewise. - * libgnat/a-cohase.ads: Likewise. - * libgnat/a-coinho.ads: Likewise. - * libgnat/a-coinho__shared.ads: Likewise. - * libgnat/a-coinve.ads: Likewise. - * libgnat/a-comutr.ads: Likewise. - * libgnat/a-convec.ads: Likewise. - * libgnat/a-coorma.ads: Likewise. - * libgnat/a-coormu.ads: Likewise. - * libgnat/a-coorse.ads: Likewise. - * libgnat/a-crdlli.ads: Likewise. - * libgnat/a-except.ads: Likewise. - * libgnat/a-finali.ads: Likewise. - * libgnat/a-ngcoty.ads: Likewise. - * libgnat/a-strbou.ads: Likewise. - * libgnat/a-stream.ads: Likewise. - * libgnat/a-strmap.ads: Likewise. - * libgnat/a-strunb.ads: Likewise. - * libgnat/a-strunb__shared.ads: Likewise. - * libgnat/a-ststio.ads: Likewise. - * libgnat/a-stwibo.ads: Likewise. - * libgnat/a-stwima.ads: Likewise. - * libgnat/a-stwiun.ads: Likewise. - * libgnat/a-stwiun__shared.ads: Likewise. - * libgnat/a-stzbou.ads: Likewise. - * libgnat/a-stzmap.ads: Likewise. - * libgnat/a-stzunb.ads: Likewise. - * libgnat/a-stzunb__shared.ads: Likewise. - * libgnat/a-tags.ads: Likewise. - * libgnat/i-cstrin.ads: Likewise. - * libgnat/s-stopoo.ads: Likewise. - * libgnat/s-stposu.ads: Likewise. - * libgnat/system-aix.ads: Likewise. - * libgnat/system-darwin-arm.ads: Likewise. - * libgnat/system-darwin-ppc.ads: Likewise. - * libgnat/system-darwin-x86.ads: Likewise. - * libgnat/system-djgpp.ads: Likewise. - * libgnat/system-dragonfly-x86_64.ads: Likewise. - * libgnat/system-freebsd.ads: Likewise. - * libgnat/system-gnu.ads: Likewise. - * libgnat/system-hpux-ia64.ads: Likewise. - * libgnat/system-hpux.ads: Likewise. - * libgnat/system-linux-alpha.ads: Likewise. - * libgnat/system-linux-arm.ads: Likewise. - * libgnat/system-linux-hppa.ads: Likewise. - * libgnat/system-linux-ia64.ads: Likewise. - * libgnat/system-linux-loongarch.ads: Likewise. - * libgnat/system-linux-m68k.ads: Likewise. - * libgnat/system-linux-mips.ads: Likewise. - * libgnat/system-linux-ppc.ads: Likewise. - * libgnat/system-linux-riscv.ads: Likewise. - * libgnat/system-linux-s390.ads: Likewise. - * libgnat/system-linux-sh4.ads: Likewise. - * libgnat/system-linux-sparc.ads: Likewise. - * libgnat/system-linux-x86.ads: Likewise. - * libgnat/system-lynxos178-ppc.ads: Likewise. - * libgnat/system-lynxos178-x86.ads: Likewise. - * libgnat/system-mingw.ads: Likewise. - * libgnat/system-qnx-arm.ads: Likewise. - * libgnat/system-rtems.ads: Likewise. - * libgnat/system-solaris-sparc.ads: Likewise. - * libgnat/system-solaris-x86.ads: Likewise. - * libgnat/system-vxworks-ppc-kernel.ads: Likewise. - * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise. - * libgnat/system-vxworks-ppc-rtp.ads: Likewise. - * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-aarch64.ads: Likewise. - * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-arm.ads: Likewise. - * libgnat/system-vxworks7-ppc-kernel.ads: Likewise. - * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise. - * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-x86-kernel.ads: Likewise. - * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. - * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise. - * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise. - -2025-09-09 Marc Poulhiès <poulhies@adacore.com> - - * s-pack.adb.tmpl: Typo fix in comment. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Set Mark_Ghost_Code individually - based on the semantics of each pragma. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Mark_Ghost_Declaration_Or_Body): Mark ghost - entity explicitly as ignored or checked. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Policy): ignore ghost policy changes - within instantiation statements. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Check_Ghost_Policy): Use the policy in affect for - the identifier at the current moment instead of the region - around it when checking a policy change for a procedure call. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Mark_And_Set_Ghost_Declaration): apply the - ghost policy and level from the declaration only if the declaration - has an explicit ghost aspect/pragma. - -2025-09-09 Denis Mazzucato <mazzucato@adacore.com> - - * sem_ch13.adb (Check_Nonoverridable_Aspect_Subprograms): Add the new - legality check in Check_Nonoverridable_Aspect_Subprograms for - nonoverridable aspects to check whether the denoted subprograms satisfy - MR 13.1.1(18.4/6), otherwise we emit an error. Fix spacing. - * sem_ch6.adb (New_Overloaded_Entity): Set Is_Primitive flag - for inherited primitives, and filter out homonym candidates without a - function specification as parents. - -2025-09-09 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Check_Interrupt_Or_Attach_Handler): Refine test for - protected procedures; fix typo in comment. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Is_OK_Pragma): mark the context of ignored ghost - pragmas as OK. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * ghost.adb (Assertion_Level_From_Arg): Ensure that assertion level - is stored as the entity for its reference. - (Enables_Ghostness): Derive the result from whether or not the - an argument indicated an assertion level. - * tbuild.adb (Make_Assertion_Level): ensure that assertion levels - have a standard scope. - -2025-09-09 Piotr Trojanek <trojanek@adacore.com> - - * checks.adb (Make_Bignum_Block): Check restriction No_Secondary_Stack. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * sem_util.adb (Policy_In_Effect): Add special handling - for Runtime and Static values. - -2025-09-09 Denis Mazzucato <mazzucato@adacore.com> - - * exp_ch3.adb (Init_Formals): Remove the check on Global_No_Tasking. - * sem.adb: Fix typo. - -2025-09-09 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Build_Container_Aggr_Code.To_Int): Replace existing - conditional expression with call to Expr_Value. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * sem_ch13.adb (Analyze_Aspect_Specifications): add default - assertion level to assertion aspects. - * sem_prag.adb (Analyze_Pragma): Likewise. - -2025-09-09 Ghjuvan Lacambre <lacambre@adacore.com> - - * exp_ch6.adb (Check_BIP_Actuals, Process_Node): Disable checks. - -2025-09-09 Javier Miranda <miranda@adacore.com> - - * aspects.ads (Aspect_Unsigned_Base_Range): New aspect. - * checks.adb (Determine_Range): Handle types with unsigned base range aspect. - (Enable_Overflow_Check): ditto - (Apply_Arithmetic_Overflow_Strict): ditto - * debug.adb (d_o): Document new usage. - * einfo.ads (Has_Unsigned_Base_Range_Aspect): New flag. - * exp_attr.adb (Expand_N_Attribute_Reference): No action since - it has been already handled at this stage. - * exp_ch4.adb (Expand_N_Op_Add): Generate aritmetic overflow check on - unsigned base range type operands. - (Expand_N_Op_Subtract): ditto - (Expand_N_Op_Multiply): ditto - (Expand_N_Op_Minus): ditto - * gen_il-fields.ads (Has_Unsigned_Base_Range_Aspect): New flag. - * gen_il-gen-gen_entities.adb (Has_Unsigned_Base_Range_Aspect): New flag. - * gen_il-internals.adb (Has_Unsigned_Base_Range_Aspect): New flag. - * gnat1drv.adb (Adjust_Global_Switches): Handle -gnatd_o - * par-prag.adb (Pragma_Unsigned_Base_Range): No action since it will - be entirely handled by the semantic analyzer. - * rtsfind.ads (RE_Id): Add RE_Uns_[Add|Subtract|Multiply]_With_ Ovflo_Check - * sem_attr.ads (Attribute_Unsigned_Base_Range): Added to the set of - implementation defined attributes. - * sem_attr.adb (Analyze_Attribute): Analyze attribute Unsigned_Base_Range. - (Eval_Attribute): Evaluate attribute Unsigned_Base_Range. - * sem_ch13.adb (Analyze_One_Aspect): Defer checks for this aspect to - the analysis of the corresponding pragma. - * sem_ch3.ads (Unsigned_Base_Range_Type_Declaration): New subprogram. - * sem_ch3.adb (Build_Derived_Numeric_Type): Inherit flag - Has_Unsigned_Base_Range_Aspect. - (Unsigned_Base_Range_Type_Declaration): New subprogram. - (Has_Pragma_Unsigned_Base_Range): New subprogram. - * sem_prag.adb (Analyze_Pragma): Handle Pragma_Unsigned_Base_Range. - * snames.adb-tmpl (Get_Pragma_Id): Handle Name_Unsigned_Base_Range. - (Is_Pragma_Name): ditto. - * snames.ads-tmpl (Name_Unsigned_Base_Range): New name. - (Attribute_Unsigned_Base_Range): New attribute. - (Pragma_Unsigned_Base_Range): New pragma. - * libgnat/s-aridou.ads (Add_With_Ovflo_Check): New routine for Double_Uns. - (Subtract_With_Ovflo_Check): ditto. - (Multiply_With_Ovflo_Check): ditto. - * libgnat/s-aridou.adb (Add_With_Ovflo_Check): ditto. - (Subtract_With_Ovflo_Check): ditto. - (Multiply_With_Ovflo_Check): ditto. - * libgnat/s-arit64.ads (Uns_Add_With_Ovflo_Check64): New subprogram. - (Uns_Subtract_With_Ovflo_Check64): ditto. - (Uns_Multiply_With_Ovflo_Check64): ditto. - * libgnat/s-arit64.adb (Uns_Add_With_Ovflo_Check64): New subprogram. - (Uns_Subtract_With_Ovflo_Check64): ditto. - (Uns_Multiply_With_Ovflo_Check64): ditto. - * libgnat/s-arit128.ads (Uns_Add_With_Ovflo_Check128): New subprogram. - (Uns_Subtract_With_Ovflo_Check128): ditto. - (Uns_Multiply_With_Ovflo_Check128): ditto. - * libgnat/s-arit128.adb (Uns_Add_With_Ovflo_Check128): New subprogram. - (Uns_Subtract_With_Ovflo_Check128): ditto. - (Uns_Multiply_With_Ovflo_Check128): ditto. - * doc/gnat_rm/gnat_language_extensions.rst: Document unsigned - base range. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-09-09 Viljar Indus <indus@adacore.com> - - * atree.adb (Mark_New_Ghost_Node): Store the assertion level on the - entity. - * contracts.adb (Analyze_Package_Contract): Add support for multiple - pragma Initial_Condition orginating from multiple assertion levels. - * cstand.adb (Make_Assertion_Level_Definition): New function that - creates a new Assertion_Level and adds it to the Assertion_Levels - table. - (Create_Standard): Add definitions for assertion levels defined in - Standard. - (Print_Standard): Add assertion level pragmas do the output. - * exp_ch6.adb (Check_Subprogram_Variant): Add support for multiple - Subprogram_Variant pragmas created by assertion levels. - * einfo.ads: add info for the new nodes and attributes. - * exp_prag.adb (Consequence_Error): Fix error message string - corruption caused by another call to the internal strings during - the call to Make_Procedure_Call_Statement. - (Expand_Pragma_Initial_Condition): Ensure all ghost related - attributes are copied to the new pragma. - (Expand_Pragma_Loop_Variant): Likewise. - (Expand_Pragma_Subprogram_Variant). Likewise. Additionally - create a new Subprogram_Variant function for each pragma associated - with an assertion level. - * exp_util.adb (Add_DIC_Check): Ensure all ghost related attributes - are copied to the new pragma. - (Build_DIC_Procedure_Body): Add support for mutliple DIC pragmas - created from assertion levels. - * gen_il-fields.ads: - (Aspect_Ghost_Assertion_Level): New field. - (Original_Aspect): New field. - (Original_Pragma): New field. - (Pragma_Ghost_Assertion_Level): New field. - (Child_Levels): New field. - (Ghost_Assertion_Level): New field. - (Parent_Levels): New field. - * gen_il-gen-gen_entities.adb: - Add Ghost_Assertion_Level field for all entities - Add new E_Assertion_Level entity for storing assertion levels. - * gen_il-gen-gen_nodes.adb: - Add Aspect_Ghost_Assertion_Level for N_Aspect to store the - assertion level associated with the aspect. - Add Original_Aspect to store the original aspect where the aspect - that was transformed from an aspect with an assertion level - origninated from. - Add Pragma_Ghost_Assertion_Level and Original_Pragma to store - the same information for N_Prama nodes. - * gen_il-types.ads: Add new entity kind E_Assertion_Level - * ghost.adb (Assertion_Level_Error_Msg): Create constant for - error messages using the same main error message. - (Ghost_Policy_Error_Msg): Likewise. - (Assertion_Level_To_Name): New subprogram. - (Check_Valid_Ghost_Declaration): New subprogram. - (Get_Ghost_Aspect): New subprogram. - (Get_Ghost_Assertion_Level): New subprogram. - (Ghost_Policy_In_Effect): New subprogram. - (Install_Ghost_Region): New subprogram. - (Mark_And_Set_Ghost_Region): New subprogram. - (Mark_Ghost_Declaration_Or_Body): Add new argument for assertion - levels. - (Check_Ghost_Completion): Update ghost policy calculation with - assertion levels. Refactor error message. - (Is_OK_Statement): Add new checks for valid assertion policies and - assertion levels. - (Is_OK_Pragma): Refactor the calculation of valid ghost pragmas. - (Check_Ghost_Policy): Make the checks ghost region based. - (Check_Ghost_Context): Refactor the order of checks. - (Check_Ghost_Formal_Procedure_Or_Package): Relax the checks for - overriding procedures. Now only ignored subprograms cannot be - overridden by checked or non-ghost subprograms. - (Check_Ghost_Primitive): Relax conditions for primitve operations. - Now only checked primitive subprograms are considered invalid for - ignored tagged types. Add assertion level compatibility checks. - (Check_Ghost_Refinement): Relax conditions for ghost refinements. - Add assertion level compatibility checks for refinements. - (Install_Ghost_Region): Store the current region and the assertion - for that region in the ghost config. - (Enables_Ghostness): Refactor implementation to support assertion - levels. - (Is_Subject_To_Ghost): Simplify implementation. - (Mark_And_Set_Ghost_Assignment): Refactor implementation. - (Mark_And_Set_Ghost_Body): Add support for assertion levels. - (Mark_And_Set_Ghost_Completion): Likewise. - (Mark_And_Set_Ghost_Declaration): Likwise. - (Mark_And_Set_Ghost_Instantiation): Likwise. - (Mark_And_Set_Ghost_Procedure_Call): Refactor implementation. - (Mark_Ghost_Declaration_Or_Body): Add support for assertion levels. - (Set_Ghost_Mode): Likwise. - * ghost.ads (Assertion_Level_From_Arg): New subprogram. - (Install_Ghost_Region): Add argument Level for assertrion levels. - (Is_Assertion_Level_Dependent): New subprogram. - * lib-xref.ads: Add new mapping for E_Assertion_Level entities. - * opt.ads (Ghost_Config_Type): Add new members Ghost_Assertion_Mode - and Current_Region to the structure. - * par-prag.adb (Prag): Add new pragma name Assertion_Level. - * rtsfind.adb (Load_RTU): Update the arguments for the call to - Install_Ghost_Region. - * sem.adb (Do_Analyze): Likewise. - * sem_ch13.adb (Convert_Aspect_With_Assertion_Levels): New - subprogram. - (Make_Aitem_Pragma): Copy ghost mode attributes from the aspect to - the pragma. - (Analyze_Aspect_Specifications): Convert aspects that have an - assertion level association in the aspects without the association - and the original supported syntax and with the assertion level - stored on the aspect node. - Updated duplicate detection to avoid duplicates being called on - aspects with assertion levels that orginated from the same aspect. - * sem_prag.adb (Apply_Check_Policy): New subprogram. - (Get_Applicable_Policy): New subprogram. - (Mark_Is_Checked): New subprogram. - (Mark_Is_Disabled): New subprogram. - (Mark_Is_Ignored): New subprgram. - (Check_Arg_Is_One_Of): Remove versions that had a specific number - of arguments and replace them with a list one. - (Create_Pragma_Without_Assertion_Level): New subprogram. - (Assertion_Level_Pragma_Comes_From_Source): New subprogram. - (Analyze_Pragma): Replace aspects that have an assertion level - with aspects without them where the level is stored on the pragma - node. - (Abstract_State): Add support for assertion levels in ghost - Abstract_State pragmas. - (Assert): Update argument handling for Assert like pragmas. - (Assertion_Level): Add a new section to support the analysis of - pragma Assertion_Level. - (Assertion_Policy): Add support for setting the policy for assertion - levels. - (Check): Update argument handling. Update the assertion policy - application process. - (Check_Policy): Add support for assertion levels. Add check_policy - pragmas for assertion_level dependencis also to the stack of - known Check_Policy pragmas. - (Default_Initial_Condition): Reject the use of DIC with assertion - levels. Update duplication checks. - (Ghost): Add support for assertion levels. Fix issue where - assertion levels with Ghost => False were treated as ghost. - (Predicate): Update the policy handling of Ghost_Predicate. - (Analyze_Refined_State_In_Decl_Part): Create a new ghost region - for analyzing Refined_State. - (Check_Applicable_Policy): Refactor the implementation. Break it - down to Get_Applicable_Policy and Apply_Check_Policy. - (Check_Kind): Removed. Replaced by Get_Applicable_Policy and - Apply_Check_Policy. - (Initialize): Initialize the table storing all know assertion - levels. - * sem_prag.ads (Find_Assertion_Level): New subprogram. - (Insert_Assertion_Level): New subprogram. - (Check_Applicable_Policy): Add new argument Level. - (Check_Kind): Removed. Merged with Get_Applicable_Policy. - (Get_Assertion_Level): New subprogram. - (Is_Valid_Assertion_Level): New subprogram. - * sem_util.adb (Copy_Assertion_Policy_Attributes): New function - for copying the ghost related attributes from one pragma to - another. - (Copy_Subprogram_Spec): Additionally copy the level from the spec. - (Depends_On_Level): New function for checking if one level depends - on another level. - (From_Same_Aspect): New function for checking whether the aspects - orignate from the same original aspect. - (From_Same_Pragma): New function for checking whether the pragmas - originate from the same original aspect or pragma. - (Get_Subprogram_Entity): Avoid crash when being called when the - entity has not been set for the subprogram. - (Has_Assertion_Level_Argument): New function for checking whether - the aspect or a pragma has an argument that is using an assertion - level association. - (Policy_In_Effect): add an additional argument for the level that - should be checked along with the assertion name. - * sem_util.ads (Copy_Assertion_Policy_Attributes): New function. - (Depends_On_Level): Likewise. - (From_Same_Aspect): Likewise. - (From_Same_Pragma): Likewise. - (Has_Assertion_Level_Argument): Likewise. - (Is_Same_Or_Depends_On_Level): Likewise. - (Policy_In_Effect): Add new argument Level. - * sinfo.ads: Add documentation for all the new attributes that - were added to the nodes and entities. - * snames.ads-tmpl: Add new entries for Name_Assertion_Level, - Name_uDefault_Assertion_Level and Pragma_Assertion_Level. - * stand.ads: Add new entities for the predefined assertion levels. - (Standard_Level_Static): Definition for the predefined Static - level that is always ignored. - (Standard_Level_Runtime): Defintion for the predefined Runtime - level that is always checked. - (Standard_Level_Default): Definition for the implicit Default - level that is given for ghost entities that were not associated - with an assertion level (e.g. Ghost => True). - * tbuild.adb (Make_Assertion_Level): New function for constructin - an assertion level. - * tbuild.ads (Make_Assertion_Level): Likewise. - -2025-08-04 Viljar Indus <indus@adacore.com> - - * contracts.adb: Use Is_Ignored_In_Codegen instead of just - using Is_Ignored. - * exp_ch6.adb: Likewise. - * exp_prag.adb: Likewise. - * exp_util.adb: Likewise. - * frontend.adb: Avoid removal of ignored nodes in GNATProve_Mode. - * gnat1drv.adb: Avoid forcing Assertions_Enabled in GNATProve_Mode. - * lib-writ.adb (Write_With_File_Names): Avoid early exit - with ignored entities in GNATProve_Mode. - * lib-xref.adb: Likewise. - * opt.adb: Remove check for Assertions_Enabled. - * sem_attr.adb: Use Is_Ignored_In_Codegen instead of Is_Ignored. - * sem_ch13.adb: Likewise. Additionally always add predicates in - GNATProve_Mode. - * sem_prag.adb: Likewise. Additionally remove modifications - to applied policies in GNATProve_Mode. - * sem_util.adb (Is_Ignored_In_Codegen): New function that overrides - Is_Ignored in GNATProve_Mode and Codepeer_Mode. - (Is_Ignored_Ghost_Pragma_In_Codegen): Likewise for - Is_Ignored_Ghost_Pragma. - (Is_Ignored_Ghost_Entity_In_Codegen): Likewise for - Is_Ignored_Ghost_Entity. - (Policy_In_List): Remove overriding of policies in GNATProve_Mode. - * sem_util.ads: Add specs for new functions. - * (Predicates_Enabled): Always generate predicates in - GNATProve_Mode. - -2025-08-04 Bob Duff <duff@adacore.com> - - * treepr.adb (Print_Node_Ref): Protect against - Entity (N) being empty before calling - Compile_Time_Known_Value. - -2025-08-04 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Validate_Compile_Time_Warning_Errors): - Check if the original compile time pragma was replaced and - validate the original node instead. - -2025-08-04 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Validate_Compile_Time_Warning_Or_Error): - simplify the implementation. - -2025-08-04 Steve Baird <baird@adacore.com> - - * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): If the - accessibility level being checked is known statically, then - statically check it against the level of the function being - returned from. - -2025-08-04 Viljar Indus <indus@adacore.com> - - * atree.adb: update references to Ghost_Mode. - * exp_ch3.adb: use a structure type to store all of the existing - ghost mode related state variables. - * exp_disp.adb: Likewise. - * exp_spark.adb: Likewise. - * exp_util.adb: Likewise. - * expander.adb: Likewise. - * freeze.adb: Likewise and replace references to existing ghost - mode variables. - * ghost.adb (Install_Ghost_Region): install the changes of - the region in to the new Ghost_Config structure. - (Restore_Ghost_Region): Use the new Ghost_Config instead. - In general replace all references to the existing ghost mode - variables with the new structure equivalent. - * ghost.ads (Restore_Ghost_Region): update the spec. - * opt.ads (Ghost_Config_Type): A new type that has two of the - previous ghost code related global variables as memembers - - Ghost_Mode and Ignored_Ghost_Region. - (Ghost_Config) New variable to store the previous Ghost_Mode and - Ignored_Ghost_Region info. - * rtsfind.adb: Replace references to existing ghost mode variables. - * sem.adb: Likewise. - * sem_ch12.adb: Likewise. - * sem_ch13.adb: Likewise. - * sem_ch3.adb: Likewise. - * sem_ch5.adb: Likewise. - * sem_ch6.adb: Likewise. - * sem_ch7.adb: Likewise. - * sem_prag.adb: Likewise. - * sem_util.adb: Likewise. - -2025-08-04 Steve Baird <baird@adacore.com> - - * freeze.adb (Freeze_Profile): Do not emit a warning stating that - a formal parameter's size is 8 if the parameter's size is not 8. - -2025-08-04 Viljar Indus <indus@adacore.com> - - * table.adb (Max): Move variable to the body and initialize - it with the same value as in the Init function. - * table.ads (Max): Likewise. - -2025-08-04 Bob Duff <duff@adacore.com> - - * par.adb: Move and rewrite some comments. - (Util): Shared code and comments for dealing with - defining_identifier_lists. - * par-util.adb (Append): Shared code for appending - one identifier onto Defining_Identifiers. - (P_Def_Ids): Shared code for parsing a defining_identifier_list. - Unfortunately, this is not used in all cases, because some of - them mix in sophisticated error recovery, which we do not - modify here. - * par-ch12.adb (P_Formal_Object_Declarations): - Use Defining_Identifiers and related code. - * par-ch3.adb (P_Identifier_Declarations): Likewise. - (P_Known_Discriminant_Part_Opt): Likewise. - (P_Component_Items): Likewise. - * par-ch6.adb (P_Formal_Part): Likewise. - -2025-07-31 Eric Botcazou <ebotcazou@gcc.gnu.org> - - Revert: - 2025-07-31 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/114065 - * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and - s-c_time$(objext). - (Aarch64/Android): Do not use s-osinte__android.adb. - (SPARC/Solaris): Do not use s-osprim__solaris.adb. - (x86/Solaris): Likewise. - (LynxOS178): Do not use s-parame__posix2008.ads. - (RTEMS): Likewise. - (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace - s-osprim__x32.adb with s-osprim__posix.adb. - (LIBGNAT_OBJS): Remove cal.o. - * cal.c: Delete. - * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. - (GNAT.Calendar): Do not mention the obsolete conversion functions. - * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. - * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time - (Clock): Use type and functions from System.C_Time. - * libgnarl/s-linux.ads: Remove with clause for System.Parameters. - Remove declarations of C time types. - * libgnarl/s-linux__alpha.ads: Likewise. - * libgnarl/s-linux__android-aarch64.ads: Likewise. - * libgnarl/s-linux__android-arm.ads: Likewise. - * libgnarl/s-linux__hppa.ads: Likewise. - * libgnarl/s-linux__loongarch.ads: Likewise. - * libgnarl/s-linux__mips.ads: Likewise. - * libgnarl/s-linux__riscv.ads: Likewise. - * libgnarl/s-linux__sparc.ads: Likewise. - * libgnarl/s-osinte__aix.ads: Likewise. - * libgnarl/s-osinte__android.ads: Likewise. - * libgnarl/s-osinte__cheribsd.ads: Likewise. - * libgnarl/s-osinte__darwin.ads: Likewise. - * libgnarl/s-osinte__dragonfly.ads: Likewise. - * libgnarl/s-osinte__freebsd.ads: Likewise. - * libgnarl/s-osinte__gnu.ads: Likewise. - * libgnarl/s-osinte__hpux.ads: Likewise. - * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. - * libgnarl/s-osinte__linux.ads: Likewise. - * libgnarl/s-osinte__lynxos178e.ads: Likewise. - * libgnarl/s-osinte__qnx.ads: Likewise. - * libgnarl/s-osinte__rtems.ads: Likewise. - * libgnarl/s-osinte__solaris.ads: Likewise. - * libgnarl/s-osinte__vxworks.ads: Likewise. - * libgnarl/s-qnx.ads: Likewise. - * libgnarl/s-linux__x32.ads: Delete. - * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. - (To_Timespec): Likewise. - * libgnarl/s-osinte__aix.adb: Likewise. - * libgnarl/s-osinte__dragonfly.adb: Likewise. - * libgnarl/s-osinte__freebsd.adb: Likewise. - * libgnarl/s-osinte__gnu.adb: Likewise. - * libgnarl/s-osinte__lynxos178.adb: Likewise. - * libgnarl/s-osinte__posix.adb: Likewise. - * libgnarl/s-osinte__qnx.adb: Likewise. - * libgnarl/s-osinte__rtems.adb: Likewise. - * libgnarl/s-osinte__solaris.adb: Likewise. - * libgnarl/s-osinte__vxworks.adb: Likewise. - * libgnarl/s-osinte__x32.adb: Likewise. - * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. - (Monotonic_Clock): Use type and functions from System.C_Time. - (RT_Resolution): Likewise. - (Timed_Sleep): Likewise. - (Timed_Delay): Likewise. - * libgnarl/s-taprop__vxworks.adb: Likewise. - * libgnarl/s-tpopmo.adb: Likewise. - * libgnarl/s-osinte__android.adb: Delete. - * libgnat/g-c_time.ads: New file. - * libgnat/g-calend.adb: Delegate to System.C_Time. - * libgnat/g-calend.ads: Likewise. - * libgnat/g-socket.adb: Likewise. - * libgnat/g-socthi.adb: Likewise. - * libgnat/g-socthi__vxworks.adb: Likewise. - * libgnat/g-sothco.ads: Likewise. - * libgnat/g-spogwa.adb: Likewise. - * libgnat/s-c_time.adb: New file. - * libgnat/s-c_time.ads: Likewise. - * libgnat/s-optide.adb: Import nanosleep here. - * libgnat/s-os_lib.ads (time_t): Remove. - (To_Ada): Adjust. - (To_C): Likewise. - * libgnat/s-os_lib.adb: Likewise. - * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. - * libgnat/s-osprim__posix.adb: Likewise. - * libgnat/s-osprim__posix2008.adb: Likewise. - * libgnat/s-osprim__rtems.adb: Likewise. - * libgnat/s-osprim__unix.adb: Likewise. - * libgnat/s-osprim__solaris.adb: Delete. - * libgnat/s-osprim__x32.adb: Likewise. - * libgnat/s-parame.ads (time_t_bits): Remove. - * libgnat/s-parame__hpux.ads: Likewise. - * libgnat/s-parame__vxworks.ads: Likewise. - * libgnat/s-parame__posix2008.ads: Delete. - * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. - -2025-07-31 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/120440 - * gcc-interface/Makefile.in (GNATLINK_OBJS): Add s-excmac.o. - (GNATMAKE_OBJS): Likewise. - -2025-07-31 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/114065 - * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and - s-c_time$(objext). - (Aarch64/Android): Do not use s-osinte__android.adb. - (SPARC/Solaris): Do not use s-osprim__solaris.adb. - (x86/Solaris): Likewise. - (LynxOS178): Do not use s-parame__posix2008.ads. - (RTEMS): Likewise. - (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace - s-osprim__x32.adb with s-osprim__posix.adb. - (LIBGNAT_OBJS): Remove cal.o. - * cal.c: Delete. - * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. - (GNAT.Calendar): Do not mention the obsolete conversion functions. - * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. - * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time - (Clock): Use type and functions from System.C_Time. - * libgnarl/s-linux.ads: Remove with clause for System.Parameters. - Remove declarations of C time types. - * libgnarl/s-linux__alpha.ads: Likewise. - * libgnarl/s-linux__android-aarch64.ads: Likewise. - * libgnarl/s-linux__android-arm.ads: Likewise. - * libgnarl/s-linux__hppa.ads: Likewise. - * libgnarl/s-linux__loongarch.ads: Likewise. - * libgnarl/s-linux__mips.ads: Likewise. - * libgnarl/s-linux__riscv.ads: Likewise. - * libgnarl/s-linux__sparc.ads: Likewise. - * libgnarl/s-osinte__aix.ads: Likewise. - * libgnarl/s-osinte__android.ads: Likewise. - * libgnarl/s-osinte__cheribsd.ads: Likewise. - * libgnarl/s-osinte__darwin.ads: Likewise. - * libgnarl/s-osinte__dragonfly.ads: Likewise. - * libgnarl/s-osinte__freebsd.ads: Likewise. - * libgnarl/s-osinte__gnu.ads: Likewise. - * libgnarl/s-osinte__hpux.ads: Likewise. - * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. - * libgnarl/s-osinte__linux.ads: Likewise. - * libgnarl/s-osinte__lynxos178e.ads: Likewise. - * libgnarl/s-osinte__qnx.ads: Likewise. - * libgnarl/s-osinte__rtems.ads: Likewise. - * libgnarl/s-osinte__solaris.ads: Likewise. - * libgnarl/s-osinte__vxworks.ads: Likewise. - * libgnarl/s-qnx.ads: Likewise. - * libgnarl/s-linux__x32.ads: Delete. - * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. - (To_Timespec): Likewise. - * libgnarl/s-osinte__aix.adb: Likewise. - * libgnarl/s-osinte__dragonfly.adb: Likewise. - * libgnarl/s-osinte__freebsd.adb: Likewise. - * libgnarl/s-osinte__gnu.adb: Likewise. - * libgnarl/s-osinte__lynxos178.adb: Likewise. - * libgnarl/s-osinte__posix.adb: Likewise. - * libgnarl/s-osinte__qnx.adb: Likewise. - * libgnarl/s-osinte__rtems.adb: Likewise. - * libgnarl/s-osinte__solaris.adb: Likewise. - * libgnarl/s-osinte__vxworks.adb: Likewise. - * libgnarl/s-osinte__x32.adb: Likewise. - * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. - (Monotonic_Clock): Use type and functions from System.C_Time. - (RT_Resolution): Likewise. - (Timed_Sleep): Likewise. - (Timed_Delay): Likewise. - * libgnarl/s-taprop__vxworks.adb: Likewise. - * libgnarl/s-tpopmo.adb: Likewise. - * libgnarl/s-osinte__android.adb: Delete. - * libgnat/g-c_time.ads: New file. - * libgnat/g-calend.adb: Delegate to System.C_Time. - * libgnat/g-calend.ads: Likewise. - * libgnat/g-socket.adb: Likewise. - * libgnat/g-socthi.adb: Likewise. - * libgnat/g-socthi__vxworks.adb: Likewise. - * libgnat/g-sothco.ads: Likewise. - * libgnat/g-spogwa.adb: Likewise. - * libgnat/s-c_time.adb: New file. - * libgnat/s-c_time.ads: Likewise. - * libgnat/s-optide.adb: Import nanosleep here. - * libgnat/s-os_lib.ads (time_t): Remove. - (To_Ada): Adjust. - (To_C): Likewise. - * libgnat/s-os_lib.adb: Likewise. - * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. - * libgnat/s-osprim__posix.adb: Likewise. - * libgnat/s-osprim__posix2008.adb: Likewise. - * libgnat/s-osprim__rtems.adb: Likewise. - * libgnat/s-osprim__unix.adb: Likewise. - * libgnat/s-osprim__solaris.adb: Delete. - * libgnat/s-osprim__x32.adb: Likewise. - * libgnat/s-parame.ads (time_t_bits): Remove. - * libgnat/s-parame__hpux.ads: Likewise. - * libgnat/s-parame__vxworks.ads: Likewise. - * libgnat/s-parame__posix2008.ads: Delete. - * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. - -2025-07-28 Marc Poulhiès <poulhies@adacore.com> - - * gcc-interface/trans.cc (gnat_to_gnu): Fix typo in comment. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc-interface/misc.cc: Make - diagnostics::context::m_source_printing private. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc-interface/trans.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc-interface/misc.cc: Update for diagnostic_context becoming - diagnostics::context. - -2025-07-25 Marc Poulhiès <poulhies@adacore.com> - - * gcc-interface/utils.cc (update_pointer_to): Renamed ptr/old_ptr, ref/old_ref. - -2025-07-25 Alexandre Oliva <oliva@adacore.com> - - * s-oscons-tmplt.c (CLOCK_RT_Ada) [__vxworks]: Define to - CLOCK_REALTIME on VxWorks6. - * gsocket.h [__vxworks]: Include strings.h if available. - * sysdep.c [__vxworks]: Likewise. - -2025-07-25 Steve Baird <baird@adacore.com> - - * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): Do - nothing and simply return if either Ada_Version <= Ada_95 or if - the function being returned from lacks the extra formal parameter - needed to perform the check (typically because the result is - tagged). - -2025-07-25 Bob Duff <duff@adacore.com> - - * sem_ch12.adb (Check_Formal_Package_Instance): - Do nothing in case of E_Subprogram_Body. - -2025-07-25 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Discriminants): Update comments - -2025-07-25 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Build_Derived_Record_Type): Set flag appropriately. - -2025-07-25 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/a-calend.adb (To_Struct_Timespec_64): Deal with negative - Duration values and truncate the nanoseconds too. - * libgnat/g-calend.adb (timeval_to_duration): Unsuppress overflow - checks. - (duration_to_timeval): Likewise. Deal with negative Duration values - as well as integral Duration values. - * libgnat/g-socket.adb (To_Timeval): Simplify the implementation. - -2025-07-24 Steve Baird <baird@adacore.com> - - * exp_aggr.adb (Convert_To_Assignments): Add calls to Ensure_Defined - before generating assignments to components that could be - associated with a not-yet-defined itype. - -2025-07-24 Steve Baird <baird@adacore.com> - - * accessibility.adb (Function_Call_Or_Allocator_Level): Handle the - case where a function that has an Extra_Accessibility_Of_Result - parameter returns as its result a call to another such function. - In that case, the extra parameter should be passed along. - (Check_Return_Construct_Accessibility): Replace a warning about an - inevitable failure of a dynamic check with a legality-rule-violation - error message; adjust the text of the message accordingly. - * exp_ch6.ads (Apply_Access_Discrims_Accessibility_Check): New - procedure, following example of the existing - Apply_CW_Accessibility procedure. - * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): body - for new procedure. - (Expand_Simple_Function_Return): Add call to new - Apply_Access_Discrims_Accessibility_Check procedure. - * exp_ch3.adb (Make_Allocator_For_Return): Add call to new - Apply_Access_Discrims_Accessibility_Check procedure. - -2025-07-24 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst: - clarify parameter description. - * gnat_rm.texi: Regenerate. - -2025-07-22 Gary Dismukes <dismukes@adacore.com> - - * sem_ch8.adb (End_Use_Type): Add a test for there not being an earlier - use_type_clause for the same type as an additional criterion for turning - off In_Use and Current_Use_Clause. - -2025-07-22 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Eval_Attribute): Only fold array attributes when prefix - is static or at least safe to evaluate - -2025-07-22 Ronan Desplanques <desplanques@adacore.com> - - * einfo.ads (Is_Controlled_Active): Fix pasto in comment. - * sem_util.ads (Propagate_Controlled_Flags): Update comment for - Destructor aspect. - -2025-07-22 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. - * snames.ads-tmpl: Add name for new aspect. - * gen_il-fields.ads (Has_Destructor, Is_Destructor): Add new fields. - * gen_il-gen-gen_entities.adb (E_Procedure, Type_Kind): Add new fields. - * einfo.ads (Has_Destructor, Is_Destructor): Document new fields. - * aspects.ads: Add new aspect. - * sem_ch13.adb (Analyze_Aspect_Specifications, - Check_Aspect_At_Freeze_Point, Check_Aspect_At_End_Of_Declarations): - Add semantic analysis for new aspect. - (Resolve_Finalization_Procedure): New function. - (Resolve_Finalizable_Argument): Use new function above. - * sem_util.adb (Propagate_Controlled_Flags): Extend for new field. - * freeze.adb (Freeze_Entity): Add legality check for new aspect. - * exp_ch3.adb (Expand_Freeze_Record_Type, Predefined_Primitive_Bodies): - Use new field. - * exp_ch7.adb (Build_Finalize_Statements): Add expansion for - destructors. - (Make_Final_Call, Build_Record_Deep_Procs): Adapt to new Has_Destructor - field. - (Build_Adjust_Statements): Tweak to handle cases of empty lists. - * gnat_rm.texi: Regenerate. - -2025-07-22 Denis Mazzucato <mazzucato@adacore.com> - - * sem_ch6.adb (Might_Need_BIP_Task_Actuals): Before retrieving the original corresponding - operation we retrieve first the root of the aliased chain. - -2025-07-22 Ronan Desplanques <desplanques@adacore.com> - - * gen_il-fields.ads (Is_Implicit_Full_View): New field. - * gen_il-gen-gen_entities.adb (Type_Kind): Use new field. - * einfo.ads (Is_Implicit_Full_View): Document new field. - * exp_ch7.adb (Make_Adjust_Call, Make_Init_Call, Make_Final_Call): Use - new field. - * exp_util.adb (Finalize_Address): Likewise. - * sem_ch3.adb (Copy_And_Build): Set new field. - -2025-07-22 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.ads (May_Generate_Large_Temp): Delete. - * exp_util.adb (May_Generate_Large_Temp): Likewise. - (Safe_Unchecked_Type_Conversion): Do not take stack checking into - account to compute the result. - -2025-07-22 Javier Miranda <miranda@adacore.com> - - * sinfo.ads (Is_Expanded_Dispatching_Call): New flag. - (Tag_Propagated): New flag. - * exp_ch6.adb (Expand_Call_Helper): Propagate the tag when - the dispatching call is placed in conditionl expressions or - case-expressions. - * sem_ch5.adb (Analyze_Assignment): For assignment of tag- - indeterminate expression, do not propagate the tag if - previously done. - * sem_disp.adb (Is_Tag_Indeterminate): Add missing support - for conditional expression and case expression. - * exp_disp.ads (Is_Expanded_Dispatching_Call): Removed. Function - replaced by a new flag in the nodes. - * exp_disp.adb (Expand_Dispatching_Call): Set a flag in the - call node to remember that the call has been expanded. - (Is_Expanded_Dispatching_Call): Function removed. - * gen_il-fields.ads (Tag_Propagated): New flag. - (Is_Expanded_Dispatching_Call): New flag. - * gen_il-gen-gen_nodes.adb (Tag_Propagated): New flag. - (Is_Expanded_Dispatching_Call): New flag. - -2025-07-22 Gary Dismukes <dismukes@adacore.com> - - * libgnat/a-cbhama.ads (Empty): Add missing default to Capacity formal. - * libgnat/a-cbhama.adb (Empty): Add missing default to Capacity formal. - * exp_aggr.adb (Build_Size_Expr): Test for presence of Capacity - discriminant as additional criterion for generating the call to - the Length function. Update comments. - -2025-07-22 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Safe_Unchecked_Type_Conversion): Always return True - if the expression is the prefix of an N_Selected_Component. - -2025-07-22 Denis Mazzucato <mazzucato@adacore.com> - - * sem_ch6.adb (Might_Need_BIP_Task_Actuals): Check whether No_Task_Parts is enabled in any - of the derived types, or interfaces, from the user-defined primitive return type. - * sem_ch13.adb (Analyze_Aspect_Specifications): Add No_Task_Parts and No_Controlled_Parts to - the representation chain to be visible in the full view of private types. - * aspects.ads (Nonoverridable_Aspect_Id): As per GNAT RM, No_Task_Parts is nonoverridable. - * sem_util.adb (Check_Inherited_Nonoverridable_Aspects): Likewise. - * sem_util.ads: Fix typo and style. - * sem_disp.adb: Missing comment. - -2025-07-22 Javier Miranda <miranda@adacore.com> - - * einfo.ads (Extra_Formals): Complete documentation. - (Has_First_Controlling_Parameter_Aspect): Place it in alphabetical order. - (Has_Frozen_Extra_Formals): New attribute. - * gen_il-fields.ads (Has_Frozen_Extra_Formals): New entity field. - * gen_il-gen-gen_entities.adb (Has_Frozen_Extra_Formals): Adding new - entity flag to subprograms, subprogram types, and and entries. - * gen_il-internals.adb (Image): Adding Has_Frozen_Extra_Formals. - * exp_ch3.adb (Build_Array_Init_Proc): Freeze its extra formals. - (Build_Init_Procedure): Freeze its extra formals. - (Expand_Freeze_Record_Type): For tagged types with foreign convention - create the extra formals of primitives with convention Ada. - * exp_ch6.ads (Create_Extra_Actuals): New subprogram. - * exp_ch6.adb (Check_BIP_Actuals): Adding assertions. - (Create_Extra_Actuals): New subprogram that factorizes code from - Expand_Call_Helper. - (Expand_Call_Helper): Adding support to defer the addition of extra - actuals. Move the code that adds the extra actuals to a new subprogram. - (Is_Unchecked_Union_Equality): Renamed as Is_Unchecked_Union_Predefined_ - Equality_Call. - * exp_ch7.adb (Create_Finalizer): Freeze its extra formals. - (Wrap_Transient_Expression): Link the temporary with its relocated - expression to facilitate locating the expression in the expanded code. - * exp_ch9.ads (Expand_N_Entry_Declaration): Adding one formal. - * exp_ch9.adb (Expand_N_Entry_Declaration): Defer the expansion of - the entry if the extra formals are not available; analyze the built - declarations for the record type that holds all the parameters if - the expansion of the entry declaration was deferred. - * exp_disp.adb (Expand_Dispatching_Call): Handle deferred extra formals. - (Set_CPP_Constructors): Freeze its extra formals. - * freeze.adb (Freeze_Entity): Create the extra actuals of acccess to - subprograms whose designated type is a subprogram type. - (Freeze_Subprogram): Adjust assertion to support deferred extra formals, - and freeze extra formals of non-dispatching subprograms with foreign - convention. Added assertion to check matching of formals in thunks. - * sem_aux.adb (Get_Called_Entity): Adding documentation. - * sem_ch3.adb (Analyze_Full_Type_Declaration): Create the extra formals - of deferred subprograms, subprogram types and entries; create also the - extra actuals of deferred calls. - * sem_ch6.ads (Freeze_Extra_Formals): New subprogram. - (Deferred_Extra_Formals_Support): New package. - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Create the extra formals - of subprograms without separate spec. - (Add_Extra_Formal): Add documentation. - (Has_Extra_Formals): Removed. - (Parent_Subprogram): Adding documentation. - (Create_Extra_Formals): Defer adding extra formals if the underlying_type - of some formal type or return type is not available. - (Extra_Formals_Match_OK): Add missing check on the extra formals of - unchecked unions. - (Freeze_Extra_Formals): New subprogram. - (Deferred_Extra_Formals_Support): New package. - * sem_ch9.adb (Analyze_Entry_Declaration): Freeze its extra formals. - * sem_ch13.adb (New_Put_Image_Subprogram): ditto. - * sem_util.ads (Is_Unchecked_Union_Equality): New subprogram. - * sem_util.adb (Is_Unchecked_Union_Equality): ditto. - -2025-07-22 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Get_Actual_Subtype): Do the same for GCC and GNATprove - backends. - -2025-07-22 Martin Clochard <clochard@adacore.com> - - * exp_spark.adb (Expand_SPARK): Add expansion of continue statements. - (Expand_SPARK_N_Continue_Statement): Expand continue statements resolved - as procedure calls into said procedure calls. - -2025-07-22 Piotr Trojanek <trojanek@adacore.com> - - * sem_res.adb (Resolve_Call): Look at the base type of actual parameter - when checking call to Set_Handler. - -2025-07-22 Eric Botcazou <ebotcazou@adacore.com> - - * sem_util.adb (Get_Actual_Subtype): Only create a new subtype when - the expander is active. Remove a useless test of type inequality, - as well as a useless call to Set_Has_Delayed_Freeze on the subtype. - -2025-07-22 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Build_Size_Expr): Change test of "not Present (...)" - to "No (...)". - -2025-07-22 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Build_Size_Expr): Determine the length of a container - aggregate association in the case where it's an iteration over an - object of a container type coming from an instantiation of a predefined - container generic. Minor updates to existing comments. - -2025-07-22 Ghjuvan Lacambre <lacambre@adacore.com> - - * exp_util.adb (Finalize_Address): Prevent infinite loop - -2025-07-22 Steve Baird <baird@adacore.com> - - * sem_aux.ads: Declare new function Unique_Component_Name. - * sem_aux.adb: Implement new function Unique_Component_Name. - -2025-07-22 Viljar Indus <indus@adacore.com> - - * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): - Ensure the Expression_Copy always has a parent before - calling any analyze. - -2025-07-22 Steve Baird <baird@adacore.com> - - * exp_aggr.adb (Build_Record_Aggr_Code.Gen_Assign): In the case of - an aggregate component where the component type is mutably tagged - and the component value is provided by a qualified aggregate (and - qualified with a specific type), avoid incorrectly rejecting the - inner aggregate for violating the rule that the type of an - aggregate shall not be class-wide. - * exp_attr.adb: For a predefined streaming operation (i.e., Read, - Write, Input, or Output) of a class-wide type, the external name - of the tag of the value is normally written out by Output and read - in by Input. In the case of a mutably tagged type, this is instead - done in Write and Read. - * exp_ch4.adb (Expand_Composite_Equality): In the case of an - equality comparison for a type having a mutably tagged component, - we want the component comparison to compare two values of the - mutably tagged type, not two values of the corresponding - array-of-bytes-ish representation type. Even if there are no - user-defined equality functions anywhere in sight, comparing the - array values still doesn't work because undefined bits may end up - participating in the comparison (resulting in an incorrect result - of False). - * exp_put_image.adb: In the case of a class-wide type, the - predefined Image attribute includes the name of the specific type - (and a "'" character, to follow qualified expression syntax) to - indicate the tag of the value. With the introduction of mutably - tagged types, this case can now arise in the case of a component - (of either an enclosing array or an enclosing record), not just - for a top-level object. So we factor the code to do this into a - new procedure, Put_Specific_Type_Name_Qualifier, so that it can be - called from more than one place. This reorganization also involves - replacing the procedure Put_String_Exp with a new procedure, - Put_String_Exp_To_Buffer, declared in a less nested scope. For - mutably tagged components (at the source level) the component type - (at the GNAT tree level) is an array of bytes (actually a two - field record containing an array of bytes, but that's a detail). - Appropriate conversions need to be generated so that we don't end - up generating an image for an array of bytes; this is done at the - same places where Put_Specific_Type_Name_Qualifier is called - (for components) by calling Make_Mutably_Tagged_Conversion. - * exp_strm.adb (Make_Field_Attribute): Add - Make_Mutably_Tagged_Conversion call where we construct a - Selected_Component node and the corresponding component type is - the internal representation type for a mutably tagged type. - (Stream_Base_Type): Return the mutably - tagged type if given the corresponding internal representation type. - * sem_ch3.adb (Array_Type_Declaration): In the case where the - source-level component type of an array type is mutably tagged, - set the Component_Type field of the base type of the declared - array type (as opposed to that of the first subtype of the array - type) to the corresponding internal representation type. - * sem_ch4.adb (Analyze_Selected_Component): In the case of a - selected component name which references a component whose type is - the internal representation type of a mutably tagged type, - generate a conversion to the mutably tagged type. - -2025-07-21 Eric Botcazou <ebotcazou@gcc.gnu.org> - - PR ada/121184 - * styleg.adb (Check_Comment): Use consistent warning message. - -2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc-interface/trans.cc (gnat_to_gnu): Pass null pointer to - parse_{input,output}_constraint(). - -2025-07-18 Steve Baird <baird@adacore.com> - - * sem_ch12.adb (Validate_Derived_Type_Instance): Cope with the case - where the ancestor type for a formal derived type is declared in - an earlier formal package but Get_Instance_Of does not return the - corresponding type from the corresponding actual package. - -2025-07-18 Bob Duff <duff@adacore.com> - - * tbuild.adb (Unchecked_Convert_To): Back out - change. - -2025-07-18 Marc Poulhiès <poulhies@adacore.com> - Eric Botcazou <botcazou@adacore.com> - - * exp_ch6.adb (Convert): Do not call Expand_Inlined_Call for - unsupported cases. - * inline.adb (Expand_Inlined_Call): Add assert to catch unsupported - case. - -2025-07-18 Gary Dismukes <dismukes@adacore.com> - - * einfo.ads: Document new field Overridden_Inherited_Operation and - list it as a field for the entity kinds that it applies to. - * gen_il-fields.ads (type Opt_Field_Enum): Add new literal - Overridden_Inherited_Operation to the type. - * gen_il-gen-gen_entities.adb: Add Overridden_Inherited_Operation as - a field of entities of kinds E_Enumeration_Literal and Subprogram_Kind. - * sem_ch4.adb (Is_Callable_Private_Overriding): Change name (was - Is_Private_Overriding). Replace Is_Hidden test on Overridden_Operation - with test of Is_Hidden on the new field Overridden_Inherited_Operation. - * sem_ch6.adb (New_Overloaded_Entity): Set the new field - Overridden_Inherited_Operation on an operation derived from - an interface to refer to the inherited operation of a private - extension that's overridden by the derived operation. Also set - that field in the more common cases of an explicit subprogram - that overrides, to refer to the inherited subprogram that is - overridden. (Contrary to its name, the Overridden_Operation - field of the overriding subprogram, which is also set in these - places, refers to the *parent* subprogram from which the inherited - subprogram is derived.) Also, remove a redundant Present (Alias (S)) - test in an if_statement and the dead "else" part of that statement. - -2025-07-18 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Build_Elaboration_Entity): Set ghost mode to none - before creating the elaboration entity; restore the ghost mode - afterwards. - -2025-07-18 Javier Miranda <miranda@adacore.com> - - * exp_aggr.adb (Gen_Assign): Code cleanup. - (Initialize_Component): Do not adjust the tag when the type of - the aggregate components is a mutably tagged type. - -2025-07-14 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/121056 - * sem_ch4.adb (Try_Object_Operation.Try_Primitive_Operation): Add - test on Is_Record_Type before accessing Underlying_Record_View. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - * par-load.adb: Comment spelling fix: bellow -> below. - * libgnarl/s-taskin.ads: Likewise. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/Make-lang.in (ACATSDIR): Change to acats-4. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/utils.cc (make_packable_type): Clear the TYPE_PACKED - flag in the case where the alignment is bumped. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/trans.cc (Subprogram_Body_to_gnu): Do not generate - a block-copy out for a null initialization procedure when the _Init - parameter is not passed in. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Only apply the - transformation to integer types. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Add guards. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): In the case of a - subprogram using the Copy-In/Copy-Out mechanism, deal specially with - the case of 2 parameters of differing sizes. - * gcc-interface/trans.cc (Subprogram_Body_to_gnu): In the case of a - subprogram using the Copy-In/Copy-Out mechanism, make sure the types - are consistent on the two sides for all the parameters. - -2025-07-04 Steve Baird <baird@adacore.com> - - * sem_res.adb (Resolve_Type_Conversion): Replace code for - detecting a similar case with a more comprehensive test. - -2025-07-04 Bob Duff <duff@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst - (Short_Circuit_And_Or): Add more documentation. - * sem_ch8.adb (Analyze_Subprogram_Renaming): - Disallow renamings. - * gnat_rm.texi: Regenerate. - -2025-07-04 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch7.adb (Make_Final_Call): Tweak search of Finalize primitive. - * exp_util.adb (Finalize_Address): Likewise. - -2025-07-04 Eric Botcazou <ebotcazou@adacore.com> - - * freeze.adb (Check_Compile_Time_Size): Try harder to see whether - the bounds of array types are known at compile time. - -2025-07-04 Piotr Trojanek <trojanek@adacore.com> - - * sem_aux.ads (First_Discriminant): Remove space before period. - -2025-07-04 Steve Baird <baird@adacore.com> - - * sem_ch13.adb (Analyze_Record_Representation_Clause): In deciding - whether to generate a warning about a missing component clause, in - addition to calling Is_Unchecked_Union also call a new local - function, Unchecked_Union_Pragma_Pending, which checks for the - case of a not-yet-analyzed Unchecked_Union pragma occurring later - in the declaration list. - -2025-07-04 Steve Baird <baird@adacore.com> - - * mutably_tagged.adb (Make_CW_Size_Compile_Check): Include the - value of the Size'Class limit in the message generated via a - Compile_Time_Error pragma. - -2025-07-04 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch13.adb (Check_Aspect_At_Freeze_Point): Remove obsolete bits. - -2025-07-04 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch13.adb (Analyze_Aspect_Specifications): Fix error emission. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/Makefile.in (gnatlib-sjlj): Delete. - (gnatlib-zcx): Do not modify Frontend_Exceptions constant. - * libgnat/system-linux-loongarch.ads (Frontend_Exceptions): Delete. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (type_contains_only_integral_data): Do not - return false only because the type contains pointer data. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_entity): Use default messages - for errors reported for Object_Size clauses. - (validate_size): Give an error for stand-alone objects of composite - types if the specified size is not a multiple of the alignment. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/trans.cc (addressable_p): Add COMPG third parameter. - <COMPONENT_REF>: Do not return true out of alignment considerations - for non-strict-alignment targets if COMPG is set. - (Call_to_gnu): Pass true as COMPG in the call to the addressable_p - predicate if the called subprogram is an initialization procedure. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/trans.cc (gnat_to_gnu) <N_Allocator>: Allocate the - bounds alongside the data if the Is_Constr_Array_Subt_With_Bounds - flag is set on the designated type. - <N_Free_Statement>: Take into account the allocated bounds if the - Is_Constr_Array_Subt_With_Bounds flag is set on the designated type. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_component_type): Validate the - Component_Size like the size of a type only if the component type - is actually packed. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_elab.adb (Check_Overriding_Primitive): Find early call region - of the subprogram body declaration, not of the subprogram body stub. - -2025-07-03 Bob Duff <duff@adacore.com> - - * gen_il-gen-gen_nodes.adb (N_Unchecked_Type_Conversion): - Remove useless Nmake_Assert. - * tbuild.adb (Unchecked_Convert_To): - Narrow the bitfield-related conditions. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_util.adb (Insert_Actions): Fix check. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch6.adb (Expand_Ctrl_Function_Call): Precisify comment. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not bail out for the - declarations of return objects. - -2025-07-03 Daniel King <dmking@adacore.com> - - * Makefile.rtl (LIBGNAT_TARGET_PAIRS): New unit s-tsgsba__cheri.adb for morello-freebsd. - * libgnarl/s-tassta.adb (Get_Stack_Base): New function. - * libgnarl/s-tsgsba__cheri.adb: New file for CHERI targets. - * libgnarl/s-tsgsba.adb: New default file for non-CHERI targets. - * libgnat/s-stausa.adb (Fill_Stack, Compute_Result): Port to CHERI. - * libgnat/s-stausa.ads (Initialize_Analyzer, Stack_Analyzer): Port to CHERI. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Check_Return_Subtype_Indication): Use Original_Node. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Check_Return_Subtype_Indication): Use type from - explicit subtype indication, when possible. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Check_Return_Subtype_Indication): Adjust error message - to match the RM wording. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Check_Return_Subtype_Indication): Use the nominal - subtype of a return object; literally implement the RM rule about - elementary types; check for static subtype compatibility both when - the subtype is given as a subtype mark and a subtype indication. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * repinfo.adb (First_Comp_Or_Discr.Is_Placed_Before): Return True - only if the components are in the same component list. - -2025-07-03 Denis Mazzucato <mazzucato@adacore.com> - - * sem_disp.adb (Check_Dispatching_call): Fix uninitialized Subp_Entity. - * sem_util.adb (Update_Controlling_Argument): No need to replace controlling argument - in case of functions. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * errid.ads: Adjust header to renaming and fix copyright line. - * errid.adb: Adjust header to renaming and add blank line. - * erroutc-pretty_emitter.ads: Adjust header to renaming. - * erroutc-pretty_emitter.adb: Likewise. - * erroutc-sarif_emitter.ads: Likewise. - * erroutc-sarif_emitter.adb: Likewise. - * errsw.ads: Adjust header to renaming and add blank line. - * errsw.adb: Likewise. - * json_utils.ads: Likewise. - * json_utils.adb: Adjust header to renaming. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * errid.ads (Diagnostic_Entries): Now a constant. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * errid.ads (Diagnostic_Entries): Remove nested aggregate. - * errsw.adb (Switches): Likewise. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch7.adb (Make_Deep_Record_Body): Fix case of absent Initialize - primitive. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb (Count_Default_Sized_Task_Stacks): Refine subtypes of - parameters; same for callsites. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * exp_imgv.adb (Expand_Value_Attribute): Do not call Set_Etype on N - after rewriting it by means of OK_Convert_To. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_aggr.adb (Generate_Finalization_Actions): Stop assuming that - initialize primitive exists. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch7.adb (Build_Record_Deep_Procs): Fix typo in comment. - -2025-07-03 Gary Dismukes <dismukes@adacore.com> - - * sem_ch12.adb (Install_Spec): Remove "not Is_Generic_Instance (Par)" - in test for setting Instance_Parent_Unit. Revise comment to no longer - say "noninstance", plus remove "???". - (Remove_Parent): Restructure if_statement to allow for both "elsif" - parts to be executed (by changing them to be separate if_statements - within an "else" part). - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch3.adb (Predefined_Primitive_Bodies): Fix comment. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_tss.adb (TSS): Refactor IF condition to make code smaller. - * lib.adb (Increment_Serial_Number, Synchronize_Serial_Number): - Use type of renamed object when creating renaming. - * lib.ads (Unit_Record): Refine subtype of dependency number. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuef.adb: Document the prerequisites more precisely. - * libgnat/a-tifiio.adb (OK_Get_32): Adjust to the prerequisites. - (OK_Get_64): Likewise. - * libgnat/a-tifiio__128.adb (OK_Get_32): Likewise. - (OK_Get_64): Likewise. - (OK_Get_128): Likewise. - * libgnat/a-wtfiio.adb (OK_Get_32): Likewise. - (OK_Get_64): Likewise. - * libgnat/a-wtfiio__128.adb (OK_Get_32): Likewise. - (OK_Get_64): Likewise. - (OK_Get_128): Likewise. - * libgnat/a-ztfiio.adb (OK_Get_32): Likewise. - (OK_Get_64): Likewise. - * libgnat/a-ztfiio__128.adb (OK_Get_32): Likewise. - (OK_Get_64): Likewise. - (OK_Get_128): Likewise. - * exp_imgv.adb (Expand_Value_Attribute): Adjust the conditions under - which the RE_Value_Fixed{32,64,128} routines are called for ordinary - fixed-point types. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch3.adb (Make_Predefined_Primitive_Specs): Fix comment. - -2025-07-03 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch7.adb (Insert_Actions_In_Scope_Around): Fix condition. - -2025-07-03 Bob Duff <duff@adacore.com> - - * checks.adb: Remove unnecessary "return;" statements. - * eval_fat.adb: Likewise. - * exp_aggr.adb: Likewise. - * exp_attr.adb: Likewise. - * exp_ch3.adb: Likewise. - * exp_ch4.adb: Likewise. - * exp_ch5.adb: Likewise. - * exp_ch6.adb: Likewise. - * exp_unst.adb: Likewise. - * krunch.adb: Likewise. - * layout.adb: Likewise. - * libgnat/s-excdeb.adb: Likewise. - * libgnat/s-trasym__dwarf.adb: Likewise. - * par-endh.adb: Likewise. - * par-tchk.adb: Likewise. - * sem.adb: Likewise. - * sem_attr.adb: Likewise. - * sem_ch6.adb: Likewise. - * sem_elim.adb: Likewise. - * sem_eval.adb: Likewise. - * sfn_scan.adb: Likewise. - -2025-07-03 Bob Duff <duff@adacore.com> - - * doc/gnat_rm/implementation_defined_characteristics.rst: - Change Ignore to Disable. - * sem_ch13.ads (Analyze_Aspect_Specifications): - Minor: Remove incorrect comment; there is no need to check - Has_Aspects (N) at the call site. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-07-03 Bob Duff <duff@adacore.com> - - * types.ads (Empty_Or_Error): Remove. - * atree.adb: Remove reference to Empty_Or_Error. - * par-endh.adb: Likewise. - * sem_ch12.adb: Likewise. - * sem_ch3.adb: Likewise. - * sem_util.adb: Likewise. - * treepr.adb: Likewise. - -2025-07-03 Viljar Indus <indus@adacore.com> - - * sem_ch10.adb(Analyze_With_Clause): Call Semantics instead - of Analyze to bring Current_Sem_Unit up to date. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * lib-xref-spark_specific.adb - (Enclosing_Subprogram_Or_Library_Package): Traverse subunits and body - stubs. - -2025-07-03 Tonu Naks <naks@adacore.com> - - * libgnat/i-cstrin.ads (Value): add documentation - -2025-07-03 Aleksandra Pasek <pasek@adacore.com> - - * libgnat/a-strsup.adb (Super_Delete): Fix index check. - * libgnat/a-stwisu.adb (Super_Delete): Likewise. - * libgnat/a-stzsup.adb (Super_Delete): Likewise. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Handle_Changed_Representation): Alphabetize local - variables. Set the No_Finalize_Actions flag on the assignment. - -2025-07-03 Joffrey Huguet <huguet@adacore.com> - - * aspects.ads: Define an identifier for Potentially_Invalid. - * doc/gnat_rm/implementation_defined_aspects.rst: Add section for Potentially_Invalid. - * sem_attr.adb (Analyze_Attribute_Old_Result): Attribute Old is allowed to occur in a - Potentially_Invalid aspect. - * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Potentially_Invalid. - * sem_util.adb (Has_Potentially_Invalid): Returns True iff an entity is subject to the - Potentially_Invalid aspect. - * sem_util.ads (Has_Potentially_Invalid): Idem. - * snames.ads-tmpl: New name for Potentially_Invalid. - * gnat_rm.texi: Regenerate. - -2025-07-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch10.adb (Analyze_Compilation_Unit): Ignored ghost unit need no - elaboration checks. - -2025-07-03 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valued.adb (Integer_to_Decimal): Use truncation for the - scaled divide operation performed for bases other than 10. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/120705 - * exp_ch6.adb (Needs_BIP_Collection): Always return False if the - type has relaxed finalization. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuef.adb (Integer_to_Fixed): Restore rounding of the - first scaled divide operation. - -2025-07-01 Piotr Trojanek <trojanek@adacore.com> - - * gnat1drv.adb (Gnat1drv): Do minimal decoration of the spec and body - of an ignored ghost compilation unit. - -2025-07-01 Piotr Trojanek <trojanek@adacore.com> - - * ali.ads (Unit_Record): Fix grammar in comment. - * bindgen.adb (Num_Elab_Calls, Num_Primary_Stacks): Remove counters - that were only incremented and never actually used. - -2025-07-01 Tonu Naks <naks@adacore.com> - - * libgnat/s-valuer.adb (Scan_Decimal_Digits, - Scan_Integral_Digits): fix condition for rejecting - underscore. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valued.adb (Integer_To_Decimal): Deal specifically with - Val = 2**(Int'Size - 1) if Minus is not set. Exit the loops when V - saturates to 0 in the case of (huge) negative exponents. Use Base - instead of B consistently in unsigned computations. - * libgnat/s-valuef.adb (Integer_To_Fixed): Use Base instead of B - consistently in unsigned computations. - -2025-07-01 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch4.adb (Fixup_Universal_Fixed_Operation): Move to spec. - * exp_ch4.ads (Fixup_Universal_Fixed_Operation): Move from body. - * exp_spark.adb (Expand_SPARK): Call a fixup expansion routine. - -2025-07-01 Gary Dismukes <dismukes@adacore.com> - - * exp_ch3.adb (Build_Heap_Or_Pool_Allocator): Test not Has_Relaxed_Finalization - as a guard against retrieving BIP_Collection formal (and related code). - -2025-07-01 Javier Miranda <miranda@adacore.com> - - * exp_ch3.adb (Build_Untagged_Record_Equality): Report the - warning when no component of an untagged record type U is a - record type, and the type C of some of its components has - defined its user-defined equality operator "=". - * exp_ch4.adb (Expand_Composite_Equality): Report the warning - calling Warn_On_Ignored_Equality_Operator. - * sem_warn.ads (Warn_On_Ignored_Equality_Operator): New subprogram. - * sem_warn.adb (Warn_On_Ignored_Equality_Operator): Factorize code - reporting the warning. - -2025-07-01 Tonu Naks <naks@adacore.com> - - * libgnat/a-ngelfu.adb: conditional computation of X^2 - -2025-07-01 Steve Baird <baird@adacore.com> - - * Makefile.rtl: Add entry for new unit's object file. - * libgnat/s-casuti.adb: Remove bodies of subprograms that were moved - to the new unit. - * libgnat/s-casuti.ads: Replace (with renamings) declarations for - subprograms that moved to the new unit. - * libgnat/s-cautns.adb: Body for new unit (a new source file). - * libgnat/s-cautns.ads: Spec for new unit (a new source file). - * libgnat/s-valuti.adb: Use the new unit instead of the old one. - * gcc-interface/Make-lang.in: Add entries for new unit's object file. - * gcc-interface/Makefile.in: Likewise. - -2025-07-01 Gary Dismukes <dismukes@adacore.com> - - * sem_ch3.adb (Constrain_Corresponding_Record): Inherit Class_Wide_Type on the - created constrained subtype. - -2025-07-01 Artur Pietrek <pietrek@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: add - GNAT LLVM explicit selection in GPR file - * gnat_ugn.texi: Regenerate. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch7.adb (Shift_Address_For_Descriptor): Add dummy variable - to make sure that System_Storage_Elements is loaded. - -2025-07-01 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. - * gen_il-fields.ads (Opt_Field_Enum): Add new fields. - * gen_il-types.ads (N_Loop_Flow_Statement, N_Continue_Statement): New - node kinds. - * gen_il-gen-gen_nodes.adb (N_Loop_Flow_Statement): New abstract node - kind. - (N_Continue_Statement): New node kind. - (N_Exit_Statement): Reparent below N_Loop_Flow_Statement. - * sinfo.ads (N_Continue_Statement): Add description. - * sinfo-utils.ads (Loop_Flow_Keyword): New function. - * sinfo-utils.adb (Loop_Flow_Keyword): New function. - * gen_il-gen-gen_entities.adb (E_Loop): Add new field. - * einfo.ads (Continue_Mark): Document new field. - * sprint.adb (Sprint_Node_Actual): Update for new node kind. - * snames.ads-tmpl: Add new keyword. - * par-ch5.adb (P_Continue_Statement, Parse_Loop_Flow_Statement): New - functions. - (P_Sequence_Of_Statements): Handle continue statements. - (P_Exit_Statement): Use Parse_Loop_Flow_Statement. - * sem.adb (Analyze): Handle new node kind. - * sem_ch5.adb (Analyze_Loop_Flow_Statement): New function. - (Analyze_Continue_Statement): New procedure. - (Analyze_Exit_Statement): Use new Analyze_Loop_Flow_Statement function. - * sem_ch5.ads (Analyze_Continue_Statement): New procedure. - * expander.adb (Expand): Handle new node kind. - * exp_ch5.ads (Expand_N_Continue_Statement): New procedure. - * exp_ch5.adb (Expand_Loop_Flow_Statement): New procedure. - (Expand_N_Continue_Statement): New procedure. - (Expand_N_Exit_Statement): Use new Expand_Loop_Flow_Statement - procedure. - (Build_Formal_Container_Iteration): Always reuse original loop entity. - * gnat_rm.texi: Regenerate. - -2025-07-01 Bob Duff <duff@adacore.com> - - * repinfo.adb (List_Entities): - Disable output in case of object renamings. - -2025-07-01 Aleksandra Pasek <pasek@adacore.com> - - * libgnat/s-valuen.ads: Correct comment. - -2025-07-01 Alexandre Oliva <oliva@adacore.com> - - * init.c: Include string.h. - -2025-07-01 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm.rst: remove ref to 2012 chapter - * doc/gnat_rm/about_this_guide.rst: remove ref to 2012 chapter - * doc/gnat_rm/compatibility_and_porting_guide.rst: update list of - supported versions - * doc/gnat_rm/implementation_of_ada_2012_features.rst: delete - * doc/gnat_rm/specialized_needs_annexes.rst: update list of - supported versions - * gnat_rm.texi: Regenerate. - -2025-07-01 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm/implementation_advice.rst: remove GLADE - * doc/gnat_rm/implementation_defined_characteristics.rst: remove GLADE - * doc/gnat_rm/specialized_needs_annexes.rst: remove GLADE - * doc/gnat_rm/the_gnat_library.rst: remove GLADE - * gnat_rm.texi: Regenerate. - -2025-07-01 Alexandre Oliva <oliva@adacore.com> - - * adaint.c [__vxworks] (alloca): Redirect to builtin. - -2025-07-01 Ghjuvan Lacambre <lacambre@adacore.com> - - * freeze.adb (Freeze_Record_Type): Check for CodePeer_Mode. - -2025-07-01 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch12.adb (Analyze_Subprogram_Instantiation): Move aspects when - instantiating subprogram as a library unit. - -2025-07-01 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch5.adb (Expand_N_Loop_Statement): Remove useless subexpressions. - -2025-07-01 Jose Ruiz <ruiz@adacore.com> - - * doc/gnat_ugn/gnat_and_program_execution.rst: Add the - documentation about benefits of using sanitizers in - mixed-language applications. - * gnat_ugn.texi: Regenerate. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * atree.ads (Compile_Time_Pragma_Warnings): Removed. - * errout.adb (Initialize): Remove initialization for - Compile_Time_Pragma_Warnings. - (Error_Msg_Internal): Use Warning_As_Error_Kind in the - Error_Msg_Object. Set its value based on the reason the - warning was changed to an error. - (Write_JSON_Span): Adjust the code for Warn_Err. - (Output_Messages): Update the calculation for actual warnings - and errors by just using Warnings_Treated_As_Errors. - (Set_Msg_Text): Simply mark that we are dealing with a - run time message here. Move the code for the Warning_Mode to - Error_Msg_Internal. - * erroutc-pretty_emitter.adb (Write_Error_Msg_Line): Adjust the code - for Warn_Err. Use the Warn_As_Err_Tag token. - * erroutc.adb (Compilation_Errors): Simplify the implementation so - that it only checks for errors and warnings treated as errors. - (Decrease_Error_Msg_Count): Remove the count for - Compile_Time_Pragma_Warnings. - (dmsg): Adjust the code for changes to Warn_Err. - (Increase_Error_Msg_Count): Likewise and remove the count for - Compile_Time_Pragma_Warnings. - (Output_Msg_Text): Warnings converted to error by the - Warning_As_Error pragma and -gnatwE now use the error prefix - in their messages but only warnings changed by the pragma get - the [warning-as-error] tag. - (Output_Text_Within): Adjust the variable name for - Is_Runtime_Raise_Msg. - (Write_Error_Summary): Adjust printing of warnings so that it - just uses the counts for Warnings_Detected and - Warnings_Treated_As_Errors. - * erroutc.ads (Is_Runtime_Raise): renamed to Is_Runtime_Raise_Msg. - (Warning_As_Error_Kind): New type for marking the warning message - is treated as an error which also captures the reason for the - change. Historically each of the reasons will have a different way - of displaying the warning message. - (Error_Msg_Object.Warn_Err): Change type to Warning_As_Error_Kind. - (Kind_To_String): Warnings treated as errors originating from - the pragma or -gnatwE will return error where as warnings - originating from -gnatwe will return warning. - (Compilation_Errors): Update the documentation. - (Warn_As_Err_Tag): Constant string to be used when printing warnings - as errors. - * errutil.adb (Error_Msg): Adjust the code for Warn_Err. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch7.adb (Shift_Address_For_Descriptor): New function. - (Make_Address_For_Finalize): Call above function. - (Make_Finalize_Address_Stmts): Likewise. - * exp_util.ads (Is_Constr_Array_Subt_Of_Unc_With_Controlled): New - predicate. - * exp_util.adb (Is_Constr_Array_Subt_Of_Unc_With_Controlled): Ditto. - (Remove_Side_Effects): Call above predicate. - * sem_ch3.adb (Analyze_Object_Declaration): Likewise. - * sem_ch4.adb (Analyze_Allocator): Allocate the bounds by setting - Is_Constr_Array_Subt_With_Bounds when appropriate. - -2025-07-01 Javier Miranda <miranda@adacore.com> - - * sem_ch4.adb (Try_Object_Operation): Handle mutably tagged - class-wide type prefix. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * errout.adb (Error_Msg_Internal): Use the new - Warning_Treated_As_Error function. - * erroutc.adb (Get_Warning_Option): Add new version of this - function that operates on the Error_Msg_Object directly instead - of the Error_Id. Update the existing function to call the new - version interanlly. - (Get_Warning_Tag): Likewise. - (Warning_Treated_As_Error): Add a new method that combines the - checks for the error message itself and its tag. - * erroutc.ads (Get_Warning_Option): Add new spec. - (Get_Warning_Option): Likewise. - (Get_Warning_Option): Likewise. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * atree.ads: Add Compile_Time_Pragma_Warnings for counting - compile time warnings. - * errout.adb (Initialize): Initialize Compile_Time_Pragma_Warnings. - (Output_Messages): Use Compile_Time_Pragma_Warnings instead of - Count_Compile_Time_Pragma_Warnings. - * erroutc.adb (Compilation_Errors): Likewise. - (Count_Compile_Time_Pragma_Warnings): Removed. - (Decrease_Error_Msg_Count): Update Compile_Time_Pragma_Warnings. - (Increase_Error_Msg_Count): Likewise. - (Write_Error_Summary): Use Compile_Time_Pragma_Warnings instead of - Count_Compile_Time_Pragma_Warnings. - * erroutc.ads (Count_Compile_Time_Pragma_Warnings): Removed. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * errout.adb (Delete_Warning_And_Continuations): Use - Decrease_Error_Msg_Count to update the message counts. - (Delete_Warning): Likewise. - (To_Be_Removed): Likewise. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * errout.adb (Remove_Warning_Messages): Mark removed messages as - deleted. - * erroutc.adb (Purge_Messages): Likewise. - -2025-07-01 Martin Clochard <clochard@adacore.com> - - * frontend.adb (Frontend): do not override GNATprove's setting for - Warn_On_Non_Local_Exception - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch4.adb (Analyze_Allocator): Do not set Etype to itself. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Finalize_Address): Do not go to the root type for - array types. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuer.ads (System.Value_R): Remove Round parameter. - (Scan_Raw_Real): Replace Extra with Extra2 and adjust the comment. - (Value_Raw_Real): Likewise. - * libgnat/s-valuer.adb (Round_Extra): Delete. - (Scan_Decimal_Digits): Replace Extra with Extra2 and adjust the - implementation. - (Scan_Integral_Digits): Replace Extra with Extra2 and Extra_Rounded - with Extra2_Filled and adjust the implementation. - (Scan_Raw_Real): Replace Extra with Extra2 and adjust the - implementation. - (Value_Raw_Real): Likewise. - * libgnat/s-valrea.adb (Impl): Remove actual for Round formal. - * libgnat/s-valued.adb (Impl): Likewise. - (Integer_to_Decimal): Replace Extra with Extra2 and adjust the - implementation. Rename Unsigned_To_Signed to To_Signed. - (Scan_Decimal): Replace Extra with Extra2 and adjust the - implementation. - (Value_Decimal): Likewise. - * libgnat/s-valuef.adb (Impl): Remove actual for Round formal. - (Integer_to_Fixed): Replace Extra with Extra2 and adjust the - implementation. Rename Unsigned_To_Signed to To_Signed. Only - round the last scaled divide operation. - (Scan_Fixed): Replace Extra with Extra2 and adjust the - implementation. - (Value_Fixed): Likewise. - -2025-07-01 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-valuer.adb (Scan_Decimal_Digits, Scan_Integral_Digits): - Minor rephrasing. - -2025-07-01 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Set ekind - earlier. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.ads (Is_Finalizable_Access): New predicate. - (Is_Non_BIP_Func_Call): Delete. - (Is_Secondary_Stack_BIP_Func_Call): Likewise. - * exp_util.adb (Is_Finalizable_Access): New predicate. - (Initialized_By_Aliased_BIP_Func_Call): Delete. - (Initialized_By_Reference): Likewise. - (Is_Aliased): Only consider the nontransient object serviced by - the transient scope. - (Is_Part_Of_BIP_Return_Statement): Minor tweak. - (Is_Finalizable_Transient): Remove calls to Initialized_By_Reference - and Initialized_By_Aliased_BIP_Func_Call. - Call Is_Finalizable_Access for access objects. - (Is_Non_BIP_Func_Call): Delete. - (Is_Secondary_Stack_BIP_Func_Call): Likewise. - (Requires_Cleanup_Actions): Call Is_Finalizable_Access for access - objects. - (Side_Effect_Free): Return True for N_Reference. - * exp_ch7.adb (Build_Finalizer.Process_Declarations): Call - Is_Finalizable_Access for access objects. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Is_Expression_Of_Func_Return): New predicate. - (Is_Related_To_Func_Return): Call Is_Expression_Of_Func_Return. - (Remove_Side_Effects): Generate a temporary for a function call - that returns a constrained array type with controlled component - and an unconstrained first subtype. - -2025-07-01 Piotr Trojanek <trojanek@adacore.com> - - * inline.adb (Rewrite_Procedure_Call): Replace with a simple rewriting - of procedure call into a single block node, i.e. remove broken - optimization. - * sem_util.adb (Next_Actual): Adapt GNATprove-specific code that peeks - into inlined calls. - -2025-07-01 Martin Clochard <clochard@adacore.com> - - * exp_util.adb (Is_Controlling_Formal_Ref): test scope against - derived subprogram as well. - -2025-07-01 Viljar Indus <indus@adacore.com> - - * errout.adb (Error_Msg_Internal): Relocate Warn_As_Err propagation - to Increase_Error_Msg_Counti. - (Delete_Warning_And_Continuations): Update - Warnings_Treated_As_Errors count. - (Delete_Warning): Likewise. - (To_Be_Removed): Likewise. - * erroutc.adb (Increase_Error_Msg_Count): Count warnings treated - as errors here and perform the propagation of this property to - the parent message. - (Output_Msg_Text): Remove counting of warnings as errors from - here. - (Decrease_Error_Msg_Count): Update Warnings_Treated_As_Errors - count. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/120106 - * Make-generated.in (GNATMAKE_FOR_BUILD): Define. - -2025-06-30 Viljar Indus <indus@adacore.com> - - * comperr.adb (Compiler_Abort): Pass the exit code in calls to - Output_Messages. - * errout.adb (Output_Messages): Add new parameter for the - Exit_Code and store its value. - * errout.ads (Output_Messages): Likewise. - * erroutc-sarif_emitter.adb (Print_Invocations): Set - Execution_Successful based on the exit code. - * erroutc.ads (Exit_Code): Store the exit code value. - * gnat1drv.adb (Gnat1drv): Pass the exit code in calls to - Output_Messages. - * prepcomp.adb (Parse_Preprocessing_Data_File, Prpare_To_Preprocess): - Likewise. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * gen_il-gen-gen_entities.adb (Gen_Entities): Tweak Has_Exit. - -2025-06-30 Bob Duff <duff@adacore.com> - - * exp_attr.adb (Attribute_Max_Size_In_Storage_Elements): - Return Storage_Count'Last converted to universal_integer. - -2025-06-30 Tonu Naks <naks@adacore.com> - - * doc/gnat_rm.rst: add entry point for the new chapter - * doc/gnat_rm/about_this_guide.rst: add reference to the new - chapter - * doc/gnat_rm/implementation_of_ada_2022_features.rst: new file - * doc/gnat_rm/implementation_of_ada_2012_features.rst: update - explanation about RM references - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * par-util.adb (Check_Future_Keyword): Use Snames subtypes. Extend - comment. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch5.adb (Analyze_Loop_Statement): Remove obsolete comment. - -2025-06-30 Bob Duff <duff@adacore.com> - - * sem_warn.adb (Warn_On_Useless_Assignments): - Enable Warn_On_Useless_Assignment in the case of - Warn_On_All_Unread_Out_Parameters. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Subtype_Declaration): Remove uses of E_Void. - (Copy_Parent_Attributes): New procedure. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * cstand.adb (Make_Aliased_Component, Make_Formal, New_Operator, - Create_Standard): Remove useless calls. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuer.adb (Scan_Decimal_Digits): Also pretend that the - precision limit was just reached if it was already reached. - (Scan_Integral_Digits): Add Extra_Rounded out parameter, set it to - False on entry and to True when Extra is rounded. - (Scan_Raw_Real): New Extra_Rounded local variable. Pass it in the - calls to Scan_Integral_Digits. If it is True, pass a dummy extra - digit to Scan_Decimal_Digits. - -2025-06-30 Claire Dross <dross@adacore.com> - - * libgnat/a-strsup.ads: Ignore Ghost_Predicate in the assertion policy. - -2025-06-30 Javier Miranda <miranda@adacore.com> - - * sem_aggr.adb (Resolve_Record_Aggregate): Adjust the code to - handle mutably tagged class-wide types since they don't have - discriminants, but all class-wide types are considered to have - unknown discriminants. Initialize mutably tagged class-wide - type components calling their IP subprogram. - * exp_aggr.adb (Gen_Assign): Handle mutably tagged class-wide type - components that have an initializing qualified expression, and - mutably tagged class-wide components default initialization. - (Gen_Loop): Handle mutably tagged class-wide types. - (Gen_Assign): ditto. - (Build_Record_Aggr_Code): Default initialization of mutably tagged - class-wide types is performed by their IP subprogram. - * exp_ch3.adb (Init_Component): Generate code to raise Program_Error - in the IP subprogram of arrays when the type of their components is - a mutably tagged abstract class-wide type. - (Build_Init_Procedure): ditto for the init procedure of record types. - (Build_Init_Statements): Ensure that the type of the expression - initializing a mutably class-wide tagged type component is frozen. - (Requires_Init_Proc): Mutably tagged class-wide types require the - init-proc since it takes care of their default initialization. - * sem_util.adb (Needs_Simple_Initialization): Mutably tagged class-wide - types don't require simple initialization. - * types.ads (PE_Abstract_Type_Component): New reason for Program_Error. - * types.h (PE_Abstract_Type_Component): ditto. - * exp_ch11.adb (Get_RT_Exception_Name): Handle new reason for - Program_Error. - * libgnat/a-except.adb (Rcheck_PE_Abstract_Type_Component): New - subprogram. - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.ads (Get_Enclosing_Object, Get_Enum_Lit_From_Pos, - Is_Universal_Numeric_Type): Reorder declarations. - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Get_Enclosing_Object): Traverse unchecked type - conversions since they from the compiler and should be transparent for - semantic reasoning. - -2025-06-30 Steve Baird <baird@adacore.com> - - * einfo-utils.adb (Predicate_Function): Look through an Itype if - that takes us to another subtype of the same type. - -2025-06-30 Gary Dismukes <dismukes@adacore.com> - - * exp_util.adb (Must_Map_Call_To_Parent_Primitive): Change function - name (was Call_To_Parent_Dispatching_Op_Must_Be_Mapped). Move logic - for attributes and dereferences, plus testing for controlled formals, - into new function Expr_Has_Ctrl_Formal_Ref. Add handling for - access attributes, multiple levels of attributes/dereferences, - conditional_expressions, and declare_expressions. Properly account - for function calls with multiple operands and enclosing calls. - (Expr_Has_Ctrl_Formal_Ref): New function to determine whether - an expression is a reference to a controlling formal or has - a prefix that is such a reference. - (Is_Controlling_Formal_Ref): New function in Expr_Has_Ctrl_Formal_Ref - to determine if a node is a direct reference to a controlling formal. - * freeze.adb (Build_DTW_Body): Create an unchecked conversion instead - of a regular type conversion for converting actuals in calls to parent - inherited primitives that are wrapped for inherited pre/postconditions. - Avoids generating unnecessary checks (such as accessibility checks on - conversions for anonymous access formals). - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.ads (Get_Enclosing_Ghost_Entity): Rename spec. - * sem_util.adb (Get_Enclosing_Ghost_Object): Rename body; reorder - alphabetically; adapt recursive call. - * ghost.adb: Adapt calls to Get_Enclosing_Ghost_Object. - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * ghost.adb (Ghost_Entity): Remove; use Get_Enclosing_Ghost_Object - instead; adapt callers. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * sem_prag.adb (Analyze_Pragma) <Pragma_No_Component_Reordering>: - Call Find_Type on the first argument of the pragma. - -2025-06-30 Tonu Naks <naks@adacore.com> - - * gnatls.adb: remove -l switch - -2025-06-30 Steve Baird <baird@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst: Update documentation for - mutably tagged types and the Size'Class aspect. - * gnat_rm.texi: Regenerate. - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * ghost.adb - (Whole_Object_Ref): Remove; use Get_Enclosing_Ghost_Object instead. - (Is_Ghost_Assignment): Handle more than object identifiers. - (Mark_And_Set_Ghost_Assignment): Likewise. - * sem_util.adb (Get_Enclosing_Ghost_Object): Detect more expressions - as ghost references; rename to better match the intended meaning. - * sem_util.ads (Get_Enclosing_Ghost_Object): Rename; adjust comment. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Backend_Processing_Possible.Component_Check): Return - False for delayed conditional expressions. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.ads (Parent_Is_Regular_Aggregate): New predicate. - * exp_aggr.adb (In_Place_Assign_OK.Safe_Component): Implement more - accurate criterion for function calls. - (Convert_To_Assignments): Use Parent_Is_Regular_Aggregate predicate. - (Expand_Array_Aggregate): Likewise. Remove obsolete comment. - (Initialize_Component): Do not adjust when the expression is a naked - function call and Back_End_Return_Slot is True. - (Parent_Is_Regular_Aggregate): New predicate. - * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Add test of - Back_End_Return_Slot in conjunction with a function call. - * exp_ch4.adb (Expand_Allocator_Expression): Likewise. Use the - Is_Container_Aggregate predicate to detect container aggregates. - (Expand_N_Case_Expression): Delay the expansion if the parent is a - regular aggregate and the type should not be copied. - (Expand_N_If_Expression): Likewise. - (New_Assign_Copy): New function. - * exp_ch6.adb (Expand_Ctrl_Function_Call): Bail out when the parent - is a regular aggregate. - * sem_util.adb (Check_Function_Writable_Actuals): Do not take into - account attribute references created by the compiler. - -2025-06-30 Alexandre Oliva <oliva@adacore.com> - - * socket.c [__vxworks] - (__gnat_gethostbyname): Drop excess '&'. - (__gnat_gethostbyaddr): Likewise. - -2025-06-30 Alexandre Oliva <oliva@adacore.com> - - * adaint.c [__vxworks]: Include ctype.h. - -2025-06-30 Steve Baird <baird@adacore.com> - - * exp_put_image.adb (Build_Record_Put_Image_Procedure): If - Discriminant_Specifications takes us from the full view of a type - to an (intentionally) unanalyzed subtree, then instead find - discriminant entities by calling Discriminant_Specifications on - the partial view of the type. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch6.adb (Check_Delayed_Subprogram, Possible_Freeze): Restrict - cases where freezing is delayed. - * sem_ch6.ads (Check_Delayed_Subprogram): Improve documentation - comment. - * sprint.adb (Write_Itype): Improve output. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valrea.adb (Integer_to_Real): Rename to... - (Integer_To_Real): ...this. Remove the second condition of the - conjunction in the test for the zero value. - (Scan_Real): Adjust to above renaming. - (Value_Real): Likewise. - * libgnat/s-valuer.ads (Scan_Raw_Real): Add note about Val. - -2025-06-30 Jose Ruiz <ruiz@adacore.com> - - * doc/gnat_ugn/gnat_and_program_execution.rst: Fix a - couple of minor formatting issues. - * gnat_ugn.texi: Regenerate. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * treepr.ads (Print_Entity_Chain, pec, rpec): New subprograms. - * treepr.adb (Print_Entity_Chain, pec, rpec): Likewise. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * atree.ads (Parent_Or_List_Containing): Fix typo. - -2025-06-30 Ronan Desplanques <desplanques@adacore.com> - - * treepr.adb (Print_Node): Tweak Parent field printing. - -2025-06-30 Jose Ruiz <ruiz@adacore.com> - - * doc/gnat_ugn/gnat_and_program_execution.rst: Add the - documentation about using sanitizers with Ada code. - * gnat_ugn.texi: Regenerate. - -2025-06-30 Jose Ruiz <ruiz@adacore.com> - - * doc/gnat_ugn/gnat_and_program_execution.rst: Add the - documentation about using sanitizers with Ada code. - * gnat_ugn.texi: Regenerate. - -2025-06-30 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Get_Enclosing_Object): Remove dead code. - -2025-06-30 Steve Baird <baird@adacore.com> - - * einfo-utils.adb (Predicate_Function): Improve handling of a case - where a predicate specified for a subtype of a partial view of a - type was incorrectly ignored. - (Set_Predicate_Function): If the attribute has already been set to - the same value, then do nothing (instead of raising P_E). - * sem_ch13.adb (Build_Predicate_Function): Add new function - Has_Source_Predicate. If a subtype inherits a predicate but also - has its own explicitly specified predicate, then avoid - misinterpreting the presence of the function built for the - inherited predicate to mean that no additional predicate function - is needed. - * sem_util.adb (Build_Subtype): In the case where we are given a - constrained record or array subtype and we need to construct a - different subtype, subject to a different constraint, the - subtype_mark of the constructed subtype needs to reference an - unconstrained subtype (because a new constraint is going to be - imposed). If the Predicated_Parent attribute of the given subtype - is present and refers to a suitable unconstrained subtype, then - use that subtype instead of setting the Predicated_Parent - attribute on a new node (and performing the associated attribute - copying). - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch7.adb (Process_Transient_In_Scope): Bail out if the object - is an ignored ghost entity. - -2025-06-30 Eric Botcazou <ebotcazou@adacore.com> - - * exp_util.adb (Insert_Actions): Extend special treatment applied - to freeze nodes to the case of blocks generated for aggregates. - -2025-06-30 Johannes Kliemann <kliemann@adacore.com> - - * libgnat/s-valuer.adb: Switch missing if-statements to - short-circuit form. - * libgnat/i-cpoint.adb: Ditto. - -2025-06-28 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/120854 - * sem_eval.adb (Get_String_Val): Be prepared for an integer literal - after a serious error is detected, and raise PE on other nodes. - -2025-06-26 David Malcolm <dmalcolm@redhat.com> - - * gcc-interface/misc.cc (gnat_init): Use - diagnostic_context::set_internal_error_callback. - -2025-06-22 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/120106 - * gcc-interface/Make-lang.in: Set GNAT{MAKE,BIND,LINK_LS}_FOR_HOST - from GNAT{MAKE,BIND} instead of using hardcoded commands. - -2025-06-22 Eric Botcazou <ebotcazou@adacore.com> - - * Make-generated.in: Remove obsolete stuff. - -2025-06-22 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/120106 - PR ada/120106 - * Make-generated.in: Use GNATMAKE_FOR_BUILD instead of gnatmake. - * gcc-interface/Makefile.in: Likewise. - -2025-06-17 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/120665 - * sem_aggr.adb (Resolve_Container_Aggregate): Use robust guards. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Generate - a zero-initialization for the anonymous object of a small aggregate - allocated on the stack. - (inline_status_for_subprog): Minor tweak. - -2025-06-12 Tonu Naks <naks@adacore.com> - - * comperr.adb: update support instructions - * switch.adb: update support instructions - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sinfo.ads: Fix RM reference. - -2025-06-12 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Apply_External_Initialization): Reuse local constant. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst - (Generalized Finalization): Document the actual implementation. - (No_Raise): Move to separate section. - * gnat_rm.texi: Regenerate. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-valuer.adb (Scan_Raw_Real): Apply tweak. - -2025-06-12 Tonu Naks <naks@adacore.com> - - * comperr.adb: replace report@ with support@ - * gnatcmd.adb: replace report@ with support@ - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Build_Derived_Private_Type): Fix test. - (Build_Derived_Record_Type): Adjust error recovery paths. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Has_Homonym): Fix inaccuracy in description. - * sem_ch8.ads (Find_Direct_Name): Remove obsolete description. - * sem_ch12.adb (Analyze_Associations): Rename I_Node parameter - into N and adjust description. - (Analyze_Subprogram_Instantiation): Add missing description. - (Contains_Instance_Of): Fix description. - (Associations): Rename Generic_Actual_Rec into Actual_Rec and - Gen_Assocs_Rec into Match_Rec. - (Analyze_One_Association): Rename I_Node parameter into N. - (Check_Fixed_Point_Warning): Rename Gen_Assocs parameter into - Match. - (Body of Associations): Minor cleanups and tweaks. - (Analyze_Associations): Rename I_Node parameter into N and - adjust implementation. - (Analyze_One_Association): Likewise. - (Analyze_Package_Instantiation): Remove obsolete code and clean up. - (Check_Fixed_Point_Warning): Rename Gen_Assocs parameter into - Match and adjust implementation. - (Freeze_Package_Instance): Simplify condition. - (Get_Unit_Instantiation_Node): Add support for instantiations of - subprograms and stop the loop properly in case of errors. - * sem_util.ads (Add_Global_Declaration): Rename N parameter into - Decl and fix description. - * sem_util.adb (Add_Global_Declaration): Rename N parameter into - Decl and adjust implementation. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-valuer.adb (Scan_Raw_Real): Add RM reference. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-valuer.adb (Scan_Raw_Real): Remove subexpression. Improve - surrounding comments. - -2025-06-12 Bob Duff <duff@adacore.com> - - * vast.adb: Check basic tree properties. - * atree.adb (Traverse_Field): Minor. - * treepr.adb (Destroy): Minor comment. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuer.adb (Round_Extra): Use multiplicative test. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * einfo-utils.adb (Set_Convention): Remove obsolete test. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Discriminants): Set Ekind earlier. - * sem_util.adb (Enter_Name): Adjust error processing. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valuef.adb (Integer_To_Fixed): Enable overflow checks. - Deal specifically with Val = 2**(Int'Size - 1) if Minus is not set. - Exit the loop when V saturates to 0 in the case of (huge) negative - exponents. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * exp_util.adb (Insert_Actions): Refine test. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst (Compiler - switches) <-O>: Fix long line. - * gnat_ugn.texi: Regenerate. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst (List of - all switches): Add -gnatRh subswitch. - (Debugging Control): Document -gnatRh subswitch. - * opt.ads (List_Representation_Info_Holes): New boolean variable. - * repinfo.adb: Add with clause for GNAT.Heap_Sort_G. - (List_Common_Type_Info): Relax assertion. - (List_Object_Info): Replace assertion with additional test. - (List_Record_Layout): If -gnatRh is specified, make sure that the - components are ordered by increasing offsets. Output a comment - line giving the number of unused bits if there is a hole between - consecutive components. Streamline the control flow of the loop. - (List_Record_Info): Use the original record type giving the layout - of components, if any, to display the layout of the record. - * switch-c.adb (Scan_Front_End_Switches) <-gnatR>: Add support for - -gnatRh subswitch. - * usage.adb (Usage): Document -gnatRh subswitch. - * gnat_ugn.texi: Regenerate. - -2025-06-12 Johannes Kliemann <kliemann@adacore.com> - - * libgnat/s-secsta.adb (SS_Allocate): Add comment about - conservative alignment padding calculation. - * libgnat/s-secsta__cheri.adb (SS_Allocate): Add comment about - conservative alignment padding calculation. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_warn.adb (Check_References): Rewrite expression - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Constrain_Index, Make_Index, Array_Type_Declaration, - Analyze_Number_Declaration): Remove uses of E_Void. - -2025-06-12 Eric Botcazou <ebotcazou@adacore.com> - - * usage.adb (Usage): Justify the documentation of common switches - like that of other switches. Rework that of the -O switch. - * doc/gnat_ugn/building_executable_programs_with_gnat.rst (Compiler - switches) <-O>: Rework and document 'z' and 'g' operands. - * doc/gnat_ugn/gnat_and_program_execution.rst (Optimization Levels): - Rework and document -Oz and -Og switches. - * gnat_ugn.texi: Regenerate. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Constrain_Index): Avoid unused itypes. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Constrain_Index): Factorize return statement. - -2025-06-12 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Build_Derived_Numeric_Type): Remove duplicate call. - -2025-06-10 Piotr Trojanek <trojanek@adacore.com> - - * gen_il-gen-gen_entities.adb (Formal_Object_Kind): Remove - Entry_Component field. - -2025-06-10 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Resolve_Attribute): Remove redundant guard. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * inline.adb (Analyze_Inlined_Bodies): Minor comment tweak. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * inline.adb (Instantiate_Body): Do not call Add_Scope_To_Clean if - the main unit is generic. - (Instantiate_Bodies): Do not deal with generic main units here. - * sem_ch12.adb (Need_Subprogram_Instance_Body): Return false if the - main unit is generic. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * Makefile.rtl (ADA_EXCLUDE_SRCS): Add the 128-bit support files. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Factorize code. - -2025-06-10 Bob Duff <duff@adacore.com> - - * einfo.ads (Associated_Node_For_Itype): Document that - Parent field may be empty. - * vast.adb: Allow empty Parent in Itypes. - -2025-06-10 Gary Dismukes <dismukes@adacore.com> - - * einfo.ads: Revise comment about Dynamic_Predicate flag to make it - more accurate. - * sem_case.adb (Check_Choices): Test "not Has_Static_Predicate_Aspect" - as additional guard for error about use of subtype with nonstatic - predicate as a case choice. Improve related error message. - -2025-06-10 Tonu Naks <naks@adacore.com> - - * libgnat/s-valueu.adb: add explict raise - * libgnat/s-valueu.ads: update annotation - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch6.adb, sem_ch6.ads (Check_Discriminant_Conformance): Move to … - * sem_ch3.adb (Check_Discriminant_Conformance): … here. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * freeze.adb (Freeze_Static_Object): Do not issue any error message - for compiler-generated entities. - -2025-06-10 Bob Duff <duff@adacore.com> - - * vast.adb: Implement two checks. Improve debugging - outputs. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Insert_Conditional_Object_Declaration): Deal with a - transient scope being created around the declaration. - * freeze.adb (Freeze_Entity): Do not call Freeze_Static_Object for - a renaming declaration. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-vafi32.ads: Fix head description. - * libgnat/s-vafi64.ads: Likewise. - * libgnat/s-vafi128.ads: Likewise. - -2025-06-10 Bob Duff <duff@adacore.com> - - * vast.adb: Initial implementation. - * vast.ads: Rename procedure. Remove parameter; body should decide - what to do. - * lib.ads (ipu): Minor: Rewrite comment for brevity, and because - of an inconvenient misspelling. - (Num_Units): Not used; remove. - (Remove_Unit): Minor: Remove "Currently" (which was current a decade - ago from) comment. - * lib.adb (Num_Units): Not used; remove. - * debug_a.adb (Debug_A_Entry): Fix bug: Use Write_Name_For_Debug, - so this won't crash on the Error node. - * debug.adb: Document -gnatd_V and -gnatd_W compiler switches. - * exp_ch6.adb (Validate_Subprogram_Calls): Remove redundant check for - Serious_Errors_Detected. (We turn off code gen when errors are - detected.) - * frontend.adb: Move decisions into VAST body. - * namet.ads (Present): Remove unnecessary overriding; these are - inherited by the derived types. - * namet.adb (Present): Likewise. - -2025-06-10 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Build_Container_Aggr_Code.To_Int): Apply Enumeration_Pos - to Entity (Expr) rather than Expr. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Find_Type_Of_Object): Fix comment. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Component_Declaration): Rename constant. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Constrain_Array): Simplify. - (Process_Subtype): Adjust. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch12.adb (Copy_Generic_Node): Do not call Root_Type to find - the root type of an aggregate of a derived tagged type. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * libgnarl/s-stusta.adb (Compute_All_Tasks): Skip terminated tasks. - -2025-06-10 Viljar Indus <indus@adacore.com> - - * sem_prag.adb (Is_Configuration_Pragma): Check that nodes - preceding the pragma are pragma nodes or originally were - pragma nodes. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valued.adb (Integer_to_Decimal): Add Extra parameter and - use its value to call Bad_Value on boundary values. - (Scan_Decimal): Adjust call to Integer_to_Decimal. - (Value_Decimal): Likewise. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.ads (Process_Subtype): New formal. - * sem_ch3.adb (Process_Subtype): Likewise. - (Analyze_Subtype_Declaration, Access_Type_Declaration): Use new - formal. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Fix recursive call. - -2025-06-10 Eric Botcazou <ebotcazou@adacore.com> - - * par-ch5.adb (P_Declare_Statement): Rename local variable. - (P_Begin_Statement): Likewise. - -2025-06-10 Piotr Trojanek <trojanek@adacore.com> - - * einfo.ads (Overridden_Operation, Static_Initialization): Remove - comments about a reused entity field. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Tweak formatting. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Add assertion. - -2025-06-10 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Factorize initialization of variable. - -2025-06-09 Gary Dismukes <dismukes@adacore.com> - - * sem_ch3.adb (Constrain_Index): In the case of a fixed-lower-bound index, - set Etype of the newly created itype's Scalar_Range from the index's Etype. - * sem_ch12.adb (Validate_Array_Type_Instance): If the actual subtype is - a fixed-lower-bound type, then check again the Etype of its Scalar_Range. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Fix conditions for legality checks on - formal type declarations. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Pragma): If pragmas apply to a formal array - type, then set the flags on the base type. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Process_Subtype): Clarify code. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.ads (Process_Subtype): Add formal. - * sem_ch3.adb (Process_Subtype): Use new formal. - (Analyze_Subtype_Declaration, Array_Type_Declaration, - Build_Derived_Access_Type): Pass new actual. - * sem_ch4.adb (Find_Type_Of_Object): Likewise. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch6.adb (Set_Formal_Mode): Extend profile. Move parts of the - body… - (Process_Formals): … here. Move call to Set_Formal_Mode earlier. Call - Set_Is_Not_Self_Hidden in second traversal. - -2025-06-09 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Expand_Container_Aggregate): Use the Base_Type of the - subtype provided by the context as the subtype of the temporary object - initialized by the aggregate. - -2025-06-09 Eric Botcazou <ebotcazou@adacore.com> - - * par-ch4.adb (P_Function_Name): Delete body. - (P_Qualified_Simple_Name_Resync): Do not raise Error_Resync on an - operator symbol followed by something else than a dot. - * par-ch6.adb (P_Subprogram): Do not call P_Function_Name. - * par.adb (P_Function_Name): Delete declaration. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem.adb (Analyze): Adapt to new Ekinds. - * sem_ch3.adb (Analyze_Component_Declaration): Set Ekind early. - (Is_Visible_Component, Record_Type_Definition): Adjust. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem.adb (Analyze): Fix comment. - -2025-06-09 Eric Botcazou <ebotcazou@adacore.com> - - * par-ch4.adb (P_Name): Remove obsolete references in comments. - (P_Qualified_Simple_Name): Call P_Qualified_Simple_Name_Resync. - (P_Qualified_Simple_Name_Resync): Adjust a couple of comments. - -2025-06-09 Gary Dismukes <dismukes@adacore.com> - - * exp_util.adb (Call_To_Parent_Dispatching_Op_Must_Be_Mapped): Replace - test of Covers with test of Is_Controlling_Formal. Add handling for - 'Result actuals. Remove Actual_Type and its uses. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Is_Name_Reference): Remove check for selector_name of a - selected_component; reuse existing code for indexed components and - slices. - (Statically_Names_Object): Remove dead code. - -2025-06-09 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Overlays_Constant): Define in constants and variables. - * gen_il-gen-gen_entities.adb (Entity_Kind): Move Overlays_Constant - semantic flag to... - (Constant_Or_Variable_Kind): ...here. - * sem_util.adb (Note_Possible_Modification): Add guard. - -2025-06-09 Bob Duff <duff@adacore.com> - - * exp_ch6.adb: (Make_Build_In_Place_Call_In_Object_Declaration): - Deal with renamings transformed into object declarations. - * sem_ch8.adb (Analyze_Object_Renaming): - Reinstate transformation of a renaming into - an object declaration. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Object_Declaration): Call Mutate_Ekind earlier. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Object_Declaration): Tweak error handling. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * par-ch13.adb (Get_Aspect_Specifications): Save and restore flag while - parsing aspect Abstract_State. - * par-ch2.adb (P_Pragma): Same while parsing pragma Abstract_State. - * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Specialize error message - for contract Abstract_State and extended aggregate. - * par.adb (Inside_Abstract_State): Add new context flag. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch10.adb (Analyze_Compilation_Unit): Check for generic bodies. - * exp_disp.adb (Build_Dispatch_Tables): Likewise. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Find_Overlaid_Entity): Don't call Etype on empty Ent; - tune style; move computation of Overl_Typ out of the loop. - -2025-06-09 Javier Miranda <miranda@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst: Adding - documentation. - * doc/gnat_ugn/the_gnat_compilation_model.rst: ditto. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_attr.adb (Analyze_Attribute): Remove test. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_util.adb (Enter_Name): Remove special handling. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_util.adb (Enter_Name): Remove comment. - -2025-06-09 Bob Duff <duff@adacore.com> - - * exp_ch6.adb: Remove a couple of "???" suggesting something that - we will likely never do. - (Make_Build_In_Place_Call_In_Object_Declaration): - When a constraint check is needed, do the check. - Do it at the call site for now. - The check is still missing in the untagged case, - because the caller allocates in that case. - * sem_ch8.adb (Analyze_Object_Renaming): - Remove obsolete transformation of a renaming into - an object declaration. Given that we also (sometimes) tranform - object declarations into renamings, this transformation was - adding complexity; the new code in - Make_Build_In_Place_Call_In_Object_Declaration above - would need to explicitly avoid the run-time check in the case of - renamings, because renamings are supposed to ignore the nominal - subtype. Anyway, it is no longer needed. - * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite comment; - it IS clear how to do it, but we haven't done it right yet. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * atree.ads (Copy_Node): Fix comment. - -2025-06-09 Piotr Trojanek <trojanek@adacore.com> - - * exp_attr.adb (Expand_N_Attribute_Reference): When expanding attribute - Valid, use signedness from the validated view, not from its base type. - -2025-06-09 Marc Poulhiès <poulhies@adacore.com> - - * sem_util.adb (Find_Overlaid_Entity): Add extra parameter to - extract the type being overlaid. - (Note_Possible_Modification): Adjust call to Find_Overlaid_Entity. - (Ultimate_Overlaid_Entity): Likewise. - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Likewise. - * sem_util.ads (Find_Overlaid_Entity): Add extra parameter to - extract the type being overlaid. - * freeze.adb (Check_Address_Clause): Likewise. - -2025-06-09 Gary Dismukes <dismukes@adacore.com> - - * contracts.adb (Inherit_Condition): Remove Assoc_List and its uses - along with function Check_Condition, since mapping of formals will - effectively be done in Build_Class_Wide_Expression (by Replace_Entity). - * exp_util.adb (Replace_Entity): Only rewrite entity references in - function calls that qualify according to the result of calling the - new function Call_To_Parent_Dispatching_Op_Must_Be_Mapped. - (Call_To_Parent_Dispatching_Op_Must_Be_Mapped): New function that - determines whether a function call to a primitive of Par_Subp - associated tagged type needs to be mapped (according to whether - it has any actuals that reference controlling formals of the - primitive). - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch3.adb (Analyze_Object_Declaration): Remove comment. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_util.ads (Current_Entity_In_Scope): Add example in comment. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * atree.ads (Rewrite, Replace): Clarify comments. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * atree.ads (Rewrite): Remove comment. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * atree.adb (Rewrite): Improve readability. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_util.adb (Kill_Current_Values): Tweak condition. - -2025-06-09 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Insert_Conditional_Object_Declaration): Remove Decl - formal parameter, add Typ and Const formal parameters. - (Expand_N_Case_Expression): Fix pasto in comment. Adjust call to - Insert_Conditional_Object_Declaration and tidy up surrounding code. - (Expand_N_If_Expression): Adjust couple of calls to - Insert_Conditional_Object_Declaration. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch8.adb (Find_Selected_Component): Fix error path. - -2025-06-09 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-dourea.adb (Is_Infinity): Rename to... - (Is_Infinity_Or_NaN): ...this. - ("*"): Adjust accordingly. - ("/"): Likewise. - (Sqr): Likewise. - * libgnat/s-dorepr.adb (Two_Prod): Likewise. - (Two_Sqr): Likewise. - * libgnat/s-dorepr__fma.adb (Two_Prod): Likewise. - -2025-06-09 Daniel King <dmking@adacore.com> - - * libgnat/i-cheri.ads - (Set_Bounds, Set_Exact_Bounds): Remove wrong intrinsic binding. - * libgnat/i-cheri.adb - (Set_Bounds, Set_Exact_Bounds): New subprogram bodies. - -2025-06-09 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch8.adb (Find_Selected_Component): Add mention. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * urealp.adb (UR_Negate): Capture array element in a local constant. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * urealp.adb (UR_Exponentiate): Use local variable. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Tune code for - attribute Small. - * sem_prag.adb (Analyze_Attribute): Tune code for pragma Time_Slice. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * ada_get_targ.adb, cstand.ads, cstand.adb, sem_eval.adb, sem_eval.ads, - urealp.adb, urealp.ads: Tune style. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * get_targ.ads (Register_Proc_Type): Add null exclusion. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * cstand.adb (Build_Float_Type, Register_Float_Type): Refine - parameter subtypes. - * set_targ.ads (FPT_Mode_Entry): Refine component subtype. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Pragma): Add dependency of Program_Exit on - Global and Depends contracts. - (Analyze_Program_Exit_In_Decl_Part): Check references to subprogram - outputs. - -2025-06-06 Claire Dross <dross@adacore.com> - - * doc/gnat_rm/implementation_defined_pragmas.rst - (Pragma Exit_Cases): Update the documentation for Exit_Cases. - * sem_prag.adb - (Anlayze_Pragma): Accept Program_Exit as an exit kind. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * aspects.ads (Aspect_Argument): Argument for Program_Exit is now - optional. - * doc/gnat_rm/implementation_defined_pragmas.rst - (Pragma Program_Exit): Change documentation for pragma syntax. - * sem_prag.adb (Analyze_Pragma): Argument for Program_Exit is now - optional. - (Analyze_Program_Exit_In_Decl_Part): Likewise. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * aspects.ads (Aspect_Id): Add new aspect identifier. - (Aspect_Argument): Specify argument for the new aspect. - (Is_Representation_Aspect): New aspect is not a representation aspect. - (Aspect_Names): Map new aspect to name. - (Aspect_Delay): New aspect is always delayed. - * contracts.adb (Expand_Subprogram_Contract) - (Add_Pre_Post_Condition, Add_Contract_Item) - (Analyze_Entry_Or_Subprogram_Contract) - (Analyze_Entry_Or_Subprogram_Body_Contract) - (Analyze_Subprogram_Body_Stub_Contract): Support new aspect. - * contracts.ads (Add_Contract_Item, - Analyze_Entry_Or_Subprogram_Contract, - Analyze_Entry_Or_Subprogram_Body_Contract, - Analyze_Subprogram_Body_Stub_Contract): Mention new contract in - comment. - * doc/gnat_rm/implementation_defined_aspects.rst - (Aspect Program_Exit): Document new aspect. - * doc/gnat_rm/implementation_defined_pragmas.rst - (Pragma Program_Exit): Document new pragma. - * einfo-utils.adb (Get_Pragma): Support new pragma. - * einfo-utils.ads (Get_Pragma): Mention new pragma in comment. - * exp_prag.adb (Expand_Pragma_Program_Exit): Expand new pragma; - body. - * exp_prag.ads (Expand_Pragma_Program_Exit): Expand new pragma; - spec. - * inline.adb (Remove_Aspects_And_Pragmas): Support new pragma. - * par-prag.adb (Prag): Support new pragma. - * sem_attr.adb (Analyze_Attribute_Old_Result): Accept attribute - Old in new pragma. - * sem_ch12.adb (Implementation of Generic Contracts): Mention new - aspect in comment. - * sem_ch13.adb (Insert_Pragma, Analyze_Aspect_Specifications): - Convert new new aspect to pragma. - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Renumber - subsequent rule in comment. - * sem_prag.adb (Check_Postcondition_Use_In_Inlined_Subprogram) - (Contract_Freeze_Error): Mention new pragma in comment. - (Analyze_Pragma): Support new pragma; renumber subsequent rule in - comment. - (Analyze_Program_Exit_In_Decl_Part): Analyze new pragma; body. - (Sig_Flags): References in new pragma are significant when - detecting unreferenced objects. - * sem_prag.ads (Aspect_Specifying_Pragma) - (Assertion_Expression_Pragma, Pragma_Significant_To_Subprograms): - Support new aspect and pragma. - (Analyze_Program_Exit_In_Decl_Part): Analyze new pragma; spec. - (Find_Related_Package_Or_Body): Mention new pragma in comment. - * sem_util.adb (Is_Subprogram_Contract_Annotation): Support new - pragma. - * sem_util.ads (Is_Subprogram_Contract_Annotation): Mention new - pragma in comment. - * sinfo.ads (Is_Generic_Contract_Pragma): Mention new pragma in - comment. - * snames.ads-tmpl (Preset Names, Pragma_Id): Add name and pragma - identifiers. - * gnat_rm.texi: Regenerate. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * libgnat/g-dyntab.ads (Instance): Update and extend comment. - * scos.ads: Remove comment about the corresponding C header. - * scos.h: Remove. - -2025-06-06 Steve Baird <baird@adacore.com> - - * sem_util.adb (Collect_Primitive_Operations): When collecting - primitive operations, do not include child unit subprograms. - -2025-06-06 Javier Miranda <miranda@adacore.com> - - * sem_ch4.adb (Constant_Indexing_OK): Add missing support for - RM 4.1.6(13/3), and improve performance to avoid climbing more - than needed. Add documentation. - (Try_Indexing_Function): New subprogram. - (Expr_Matches_In_Formal): Added new formals. - (Handle_Selected_Component): New subprogram. - (Has_IN_Mode): New subprogram. - (Try_Container_Indexing): Add documentation, code reorganization - and extend its functionality to improve its support for prefixed - notation calls. - -2025-06-06 Viljar Indus <indus@adacore.com> - - * debug.adb: Mark -gnatd_D as unused. - * diagnostics-repository.adb: Move to... - * errid.adb: ...here. - * diagnostics-repository.ads: Move to... - * errid.ads: ...here. - * errout.adb (Error_Msg_Internal): Add new arguments for the new - attributes of Error_Msg_Objects. - (Error_Msg): Likewise. - (Error_Msg_N): Likewise. - (Labeled_Span): New method for creating Labeled_Span-s - (Primary_Label_Span): New method for creating primary Labeled_Spans. - (Secondary_Labeled_Span): New method for creating secondary - Labeled_Spans. - (Edit): New method for creating Edit elements. - (Fix): New method for creating Fix elements. - (Error_Msg_F): Simplify code for evaluating the span. - (Error_Msg_FE): Likewise. - (Error_Msg_NE): Likewise. - (Error_Msg_NEL): Likewise. - (Error_Msg_N_Gigi): New method that is used as a wrapper for the - Error_Msg_xxx methods that have the new arguments. This function - is later mapped to the Error_Msg method used inside gigi. - (Error_Msg_NE_Gigi): Likewise. - (Write_JSON_Span): Ensure that the Style prefix is included that is - removed when parsing the message is reinserted to the JSON report. - (Output_Messages): Use the new Pretty_Printer and Sarif_Printer - packages to print the messages and remove the old implementation - for the pretty printer. - (Set_Msg_Text): Remove message kind insertion characters from the - final message text to avoid some message kinds being duplicated. - (To_Full_Span_First): New method for creating a span for a node. - (To_Full_Span): Likewise. - * errout.ads: Add the specs for all of the newly added functions. - * diagnostics-pretty_emitter.adb: Move to... - * erroutc-pretty_emitter.adb: ...here. - * diagnostics-pretty_emitter.ads: Move to... - * erroutc-pretty_emitter.ads: ...here. - * diagnostics-sarif_emitter.adb: Move to... - * erroutc-sarif_emitter.adb: ...here. - * diagnostics-sarif_emitter.ads: Move to... - * erroutc-sarif_emitter.ads: ...here. - * erroutc.adb (Next_Error_Msg): New method for iterating to the - next error message. - (Next_Continuation_Msg): New method for iterating to the next - continuation message. - (Primary_Location): New method for returning the first primary - location for the error message. - (Get_Human_Id): New method for returning the human readable - name for the switch associated with this error message. - (Get_Doc_Switch): New method for creating the tag for the switch - used in the error message. - (Output_Text_Within): Change the method to operating on Strings - instead of String pointers. - (Output_Msg_Text): Simplify implementation for generating the - error message. - (Prescan_Message): Make the String handling more error proof. - * erroutc.ads (Error_Msg_Object): Add new attributes that were - added to Diagnostic objects to Error_Msg_Objects. - Add new methods for handling the new error objects. - * diagnostics-switch_repository.adb: Move to... - * errsw.adb: ...here. - * errutil.adb (Error_Msg): Initialize all of the new attributes - added to Error_Msg_Object-s. - * fe.h (Error_Msg_N): Update the binding. - (Error_Msg_NE): Update the binding. - For now the error_msg methods in gigi will use the old - simplified interface for those methods. - * diagnostics-json_utils.adb: Move to... - * json_utils.adb: ...here. - * diagnostics-json_utils.ads: Move to... - * json_utils.ads: ...here. - * par-endh.adb: Replace the old error_msg - calls with the updated interface. - * sem_aggr.adb: Likewise. - * sem_ch13.adb: Likewise. - * sem_ch4.adb: Likewise. - * sem_ch9.adb: Likewise. - * diagnostics-brief_emitter.adb: Removed. - * diagnostics-brief_emitter.ads: Removed. - * diagnostics-constructors.adb: Removed. - * diagnostics-constructors.ads: Removed. - * diagnostics-converter.adb: Removed. - * diagnostics-converter.ads: Removed. - * diagnostics-switch_repository.ads: Removed. - * diagnostics-utils.adb: Removed. - * diagnostics-utils.ads: Removed. - * diagnostics.adb: Removed. - * diagnostics.ads: Removed. - * errsw.ads: New file. Based on diagnostics-switch_repository.ads. - It additionally contains all the switch enumerations. - * gcc-interface/Make-lang.in: Update compilation dependencies. - * gcc-interface/Makefile.in: Likewise. - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * contracts.adb (Add_Invariant_And_Predicate_Checks): Assign Ekind. - * inline.adb (Expand_Inlined_Call): Likewise. - * exp_ch9.adb (Build_Simple_Entry_Call): Likewise. - * exp_dist.adb (Append_Array_Traversal): Likewise. - * exp_fixd.adb (Build_Double_Divide_Code, Build_Scaled_Divide_Code): - Likewise. - -2025-06-06 Olivier Hainque <hainque@adacore.com> - - * libgnarl/s-linux__android-aarch64.ads: Provide an - Android_Sigaction generic package to expose an aarch64 - version of struct_sigation, using a provided sigset_t - for sa_flags. - * libgnarl/s-linux__android-arm.ads: Likewise, for ARM - rather than aarch64. - * libgnarl/s-osinte__android.ads: Move sigset_t definition - to the visible part and use it to instantiate the Android_Sigation - generic provided by System.Linux, which is specialized for ARM vs - aarch64. Define struct_sigaction out of the Android_Sigaction - instance, remove the local representation clauses. - -2025-06-06 Olivier Hainque <hainque@adacore.com> - - * Makefile.rtl: Rework the Android pairs to match those of a - regular Linux port rather than a generic posix one. - * libgnarl/s-osinte__android.ads: Import pcrtl and add bindings - for the pthread_rwlock entry points, used by the Linux units now - in the libgnat target pairs. - * sysdep.c (__gnat_has_cap_sys_nice): Define for Android, - conservative return 0. - * adaint.c (__gnat_cpu_alloc): Define for Android as for Linux. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * namet.ads (Name_Entry): Update comments to explain the current needs. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * lib.ads (Unit_Record): Remove representation clauses and filler - components - * lib-load.adb, lib-writ.adb: Remove initialization of data fillers. - * nlists.adb (Allocate_List_Tables): Remove explicit initialization. - * repinfo.adb (Exp_Node): Remove representation clauses. - * sinput.ads (Source_File_Record): Likewise. - * urealp.adb (Ureal_Entry): Likewise. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * doc/gnat_rm/representation_clauses_and_pragmas.rst - (Effect of Convention on Representation): Fix number of list items. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * sem_ch10.adb (Install_Siblings.In_Context): Add missing guard. - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch4.adb (Analyze_Selected_Component): Tweak condition. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Insert_Conditional_Object_Declaration): Make sure the - object is allocated properly by the code generator at library level. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * sem_eval.adb (Check_Non_Static_Context): Remove special handling of - floating-point zero. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * einfo.ads (Incomplete_View): Move from Sinfo; adapt wording. - * exp_ch3.adb (Build_Record_Init_Proc): Adapt retrieval of - Incomplete_View. - * gen_il-fields.ads (Opt_Field_Enum): Move Incomplete_View from node - to entity field. - * gen_il-gen-gen_entities.adb (Gen_Entities): Add field. - * gen_il-gen-gen_nodes.adb (Gen_Nodes): Remove field. - * sem_ch3.adb (Analyze_Full_Type_Declaration, - Check_Anonymous_Access_Component): Adapt setting of Incomplete_View. - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Adapt retrieval of - Incomplete_View for class-wide types; no longer rely on class-wide - type being attached to non-classwide type declaration. - * sem_util.adb (Collect_Primitive_Operations): Adapt retrieval of - Incomplete_View. - * sinfo.ads (Incomplete_View): Move to Einfo. - -2025-06-06 squirek <squirek@adacore.com> - - * aspects.ads: Add support for constructors. - * exp_aggr.adb: Likewise. - * exp_attr.adb: Likewise. - * exp_ch3.adb: Likewise. - * exp_ch4.adb: Likewise. - * exp_util.adb: Likewise. - * gen_il-fields.ads: Likewise. - * gen_il-gen-gen_entities.adb: Likewise. - * gen_il-gen-gen_nodes.adb: Likewise. - * par-ch4.adb: Likewise. - * sem_aggr.adb: Likewise. - * sem_attr.adb, sem_attr.ads: Likewise. - * sem_ch13.adb: Likewise. - * sem_ch3.adb: Likewise. - * sem_ch5.adb: Likewise. - * sem_ch6.adb: Likewise. - * sem_res.adb: Likewise. - * sem_util.adb, sem_util.ads: Likewise. - * snames.ads-tmpl: Likewise. - -2025-06-06 squirek <squirek@adacore.com> - - * doc/gnat_rm/gnat_language_extensions.rst: Add documentation. - * gnat_rm.texi: Regenerate. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Modulus): Change to implementation base type only. - * gen_il-gen-gen_entities.adb (Modular_Integer_Kind): Change type - of Modulus field to Impl_Base_Type_Only. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Original_Access_Type): Restore. - * gen_il-fields.ads (Opt_Field_Enum): Restore Original_Access_Type. - * gen_il-gen-gen_entities.adb: Adjust accordingly. - * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Restore the - call to Set_Original_Access_Type. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Default_Expr_Function): Delete. - (Dependent_Instances): Likewise. - (Handler_Records): Likewise. - (Needs_Activation_Record): Likewise. - (Original_Access_Type): Likewise. - (Register_Exception_Call): Likewise. - * sinfo.ads (Accept_Handler_Records): Likewise. - * gen_il-fields.ads (Opt_Field_Enum): Remove Accept_Handler_Records, - Default_Expr_Function, Dependent_Instances, Handler_Records, - Needs_Activation_Record, Original_Access_Type and - Register_Exception_Call. - * gen_il-gen-gen_entities.adb: Adjust accordingly. - * gen_il-gen-gen_nodes.adb: Likewise. - * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Remove call - to Set_Original_Access_Type. - (Expand_N_Selective_Accept): Remove call to Set_Handler_Records. - * exp_ch11.adb (Expand_N_Exception_Declaration): Remove call to - Set_Register_Exception_Call. - * sem_ch3.adb (Access_Subprogram_Declaration): Remove call to - Set_Needs_Activation_Record. - * sem_ch12.adb (Instantiate_Package_Body): Remove call to - Set_Handler_Records. - -2025-06-06 Steve Baird <baird@adacore.com> - - * sem_ch4.adb - (Find_Unary_Types): Because we reanalyze names in an instance, - we sometimes have to take steps to filter out extraneous name - resolution candidates that happen to be visible at the point of the - instance declaration. Remove some code that appears to have been - written with this in mind. This is done for two reasons. First, the - code sometimes doesn't work (possibly because the In_Instance test - is not specific enough - it probably should be testing to see whether - we are in an instance of the particular generic in which the result - of calling Corresponding_Generic_Type was declared) and causes correct - code to be rejected. Second, the code seems to no longer be necessary - (possibly because of subsequent fixes in this area which are not - specific to unary operators). - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * sem_ch8.adb (Premature_Usage): Remove dead code. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Size_Check_Code): Delete. - * gen_il-fields.ads (Opt_Field_Enum): Remove Size_Check_Code. - * gen_il-gen-gen_entities.adb (Constant_Or_Variable_Kind): Likewise. - * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Remove call - to Kill_Size_Check_Code. - * sem_prag.adb (Analyze_Pragma): Likewise. - * sem_util.ads (Kill_Size_Check_Code): Delete. - * sem_util.adb (Kill_Size_Check_Code): Likewise. - -2025-06-06 Claire Dross <dross@adacore.com> - - * sem_ch6.adb (Analyze_SPARK_Subprogram_Specification): - Allow the first parameter of functions whose return type is - an anonymous access-to-variable type to have mode IN OUT. - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * gen_il-fields.ads: New field. - * gen_il-gen-gen_entities.adb: New field. - * einfo.ads: Document new field. - * sem_res.adb (Check_Discriminant_Use): Record relevant uses in new - field. Move warning emission to... - * sem_ch3.adb (Analyze_Full_Type_Declaration): ... Here. - -2025-06-06 Steve Baird <baird@adacore.com> - - * sem_disp.adb - (Check_Dispatching_Operation): Delete code to generate - "missing overriding indicator" warning. Update comments. - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * cstand.adb (Create_Standard): Delay declaration generation for - Natural and Positive. - -2025-06-06 Ronan Desplanques <desplanques@adacore.com> - - * cstand.adb (Create_Standard): Remove useless calls. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Expand_Record_Aggregate): Use the named form for the - second actual parameter in the call to Duplicate_Subexpr. - * exp_attr.adb (Expand_Size_Attribute): Likewise. - * exp_ch5.adb (Expand_Assign_Array): Likewise. - (Expand_Assign_Array_Bitfield): Likewise. - (Expand_Assign_Array_Bitfield_Fast): Likewise. - * exp_util.ads (Duplicate_Subexpr): Add New_Scope formal parameter. - (Duplicate_Subexpr_No_Checks): Likewise. - (Duplicate_Subexpr_Move_Checks): Likewise. - * exp_util.adb (Build_Allocate_Deallocate_Proc): Pass Proc_Id as the - actual for New_Scope in the calls to Duplicate_Subexpr_No_Checks. - (Duplicate_Subexpr): Add New_Scope formal parameter and forward it - in the call to New_Copy_Tree. - (Duplicate_Subexpr_No_Checks): Likewise. - (Duplicate_Subexpr_Move_Checks): Likewise. - -2025-06-06 Piotr Trojanek <trojanek@adacore.com> - - * checks.adb (Insert_Valid_Check): Set flag Assignment_OK in the object - declaration inserted for the validity checks. - -2025-06-05 squirek <squirek@adacore.com> - - * sem_warn.adb - (Warn_On_Useless_Assignment): Disable out value "overwritten" warning - when we are not warning on unread out parameters (e.g. "-gnatw.o"). - -2025-06-05 Tonu Naks <naks@adacore.com> - - * libgnat/i-cstrin.adb: null pointer check in Update - -2025-06-05 Arnaud Charlet <charlet@adacore.com> - - * exp_util.adb, rtsfind.adb, rtsfind.ads, sem_prag.adb: Remove - references to RO_GH_Big_Integer and - Ada_Numerics_Big_Numbers_Big_Integers_Ghost. - * libgnat/a-strfix.adb, libgnat/a-strmap.adb, - libgnat/a-strsea.adb, libgnat/a-strsup.adb, - libgnat/i-c.ads, libgnat/i-c.adb, libgnat/s-aridou.adb, - libgnat/s-aridou.ads, libgnat/s-arit128.adb, - libgnat/s-arit128.ads, libgnat/s-arit32.adb, - libgnat/s-arit32.ads, libgnat/s-arit64.adb, - libgnat/s-arit64.ads, libgnat/s-casuti.adb, - libgnat/s-exnint.ads, libgnat/s-exnlli.ads, - libgnat/s-exnllli.ads, libgnat/s-expint.ads, - libgnat/s-explli.ads, libgnat/s-expllli.ads, - libgnat/s-explllu.ads, libgnat/s-expllu.ads, - libgnat/s-expmod.adb, libgnat/s-expmod.ads, - libgnat/s-exponn.adb, libgnat/s-exponn.ads, - libgnat/s-expont.adb, libgnat/s-expont.ads, - libgnat/s-exponu.adb, libgnat/s-exponu.ads, - libgnat/s-imaged.ads, libgnat/s-imaged.adb, - libgnat/s-expuns.ads, libgnat/s-imagef.ads, - libgnat/s-imagef.adb, libgnat/s-imagei.adb, - libgnat/s-imagei.ads, libgnat/s-imageu.adb, - libgnat/s-imageu.ads, libgnat/s-imgboo.adb, - libgnat/s-imde128.ads, libgnat/s-imde32.ads, - libgnat/s-imde64.ads, libgnat/s-imfi128.ads, - libgnat/s-imfi32.ads, libgnat/s-imfi64.ads, - libgnat/s-imgboo.ads, libgnat/s-imgint.ads, - libgnat/s-imglli.ads, libgnat/s-imgllli.ads, - libgnat/s-imglllu.ads, libgnat/s-imgllu.ads, - libgnat/s-imguns.ads, libgnat/s-valboo.adb, - libgnat/s-valboo.ads, libgnat/s-valint.ads, - libgnat/s-vallli.ads, libgnat/s-valllli.ads, - libgnat/s-vallllu.ads, libgnat/s-valllu.ads, - libgnat/s-valuns.ads, libgnat/s-valuti.adb, - libgnat/s-valuti.ads, libgnat/s-valuei.adb, - libgnat/s-valuei.ads, libgnat/s-valueu.ads, - libgnat/s-valueu.adb, libgnat/s-veboop.adb, - libgnat/s-veboop.ads, libgnat/s-widint.ads, - libgnat/s-widlli.ads, libgnat/s-widllli.ads, - libgnat/s-widlllu.ads, libgnat/s-widllu.ads, - libgnat/s-widthi.adb, libgnat/s-widthu.adb, - libgnat/s-widthu.ads, libgnat/s-widuns.ads: Remove ghost code - and SPARK annotations. - * libgnat/a-nbnbig.ads, libgnat/a-nbnbig.adb, - libgnat/s-spark.ads, libgnat/s-spcuop.adb, - libgnat/s-spcuop.ads, libgnat/s-vaispe.adb, - libgnat/s-vaispe.ads, libgnat/s-vauspe.adb, - libgnat/s-vauspe.ads, libgnat/s-vs_int.ads, - libgnat/s-vs_lli.ads, libgnat/s-vs_llu.ads, - libgnat/s-vs_uns.ads, libgnat/s-valspe.adb, - libgnat/s-valspe.ads, libgnat/s-vsllli.ads, - libgnat/s-vslllu.ads: Removed. - * Makefile.rtl: Update list of runtime units. - * gcc-interface/Make-lang.in: Remove object files. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * fname-uf.adb: Fix documentation comment. - (Get_Default_File_Name): Fix indices of default patterns. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * atree.ads (New_Copy, Relocate_Node): Tweak documentation comments. - -2025-06-05 Andres Toom <toom@adacore.com> - - * libgnat/a-nudira.ads: Activate SPARK mode and add missing - basic contracts. Mark the unit as always terminating. - * libgnat/a-nuflra.ads: Idem. - -2025-06-05 Javier Miranda <miranda@adacore.com> - - * exp_ch7.adb (Process_Object_Declaration): Avoid generating - duplicate names for master nodes. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * opt.ads: Remove useless variable. - * sem_ch9.adb (Analyze_Abort_Statement, Analyze_Accept_Alternative, - Analyze_Accept_Statement, Analyze_Asynchronous_Select, - Analyze_Conditional_Entry_Call, Analyze_Delay_Alternative, - Analyze_Delay_Relative, Analyze_Delay_Until, Analyze_Entry_Body, - Analyze_Entry_Body_Formal_Part, Analyze_Entry_Call_Alternative, - Analyze_Entry_Declaration, Analyze_Entry_Index_Specification, - Analyze_Protected_Body, Analyze_Protected_Definition, - Analyze_Protected_Type_Declaration, Analyze_Requeue, - Analyze_Selective_Accept, Analyze_Single_Protected_Declaration, - Analyze_Single_Task_Declaration, Analyze_Task_Body, - Analyze_Task_Definition, Analyze_Task_Type_Declaration, - Analyze_Terminate_Alternative, Analyze_Timed_Entry_Call, - Analyze_Triggering_Alternative): Remove useless assignments. - -2025-06-05 Steve Baird <baird@adacore.com> - - * sem_util.adb - (Side_Effect_Free_Statements): Return False if the statement list - includes an explicit (i.e. Comes_From_Source) raise statement. - -2025-06-05 Javier Miranda <miranda@adacore.com> - - * sem_ch6.adb (Analyze_Expression_Function): Add missing check - on premature use of incomplete type. - -2025-06-05 Aleksandra Pasek <pasek@adacore.com> - - * libgnat/s-arit32.adb: Add Ghost aspect to Lo. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch4.adb (Tagged_Membership): Fix for protected types. - -2025-06-05 Bob Duff <duff@adacore.com> - - * sem_eval.adb (Fold_Shift): If the Amount parameter is greater - than the size in bits, use the size. For example, if we are - shifting an Unsigned_8 value, then Amount => 1_000_001 gives the - same result as Amount => 8. This change avoids computing the value - of 2**1_000_000, which takes too long and uses too much memory. - Note that the computation we're talking about is a compile-time - computation. Minor cleanup. DRY. - * sem_eval.ads (Fold_Str, Fold_Uint, Fold_Ureal): Fold the - comments into one comment, because DRY. Remove useless - verbiage. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * exp_attr.adb (Interunit_Ref_OK): Tweak categorization of compilation - units. - -2025-06-05 Aleksandra Pasek <pasek@adacore.com> - - * libgnat/s-aridou.adb: Add missing Ghost aspect to - Lemma_Not_In_Range_Big2xx64. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/s-trasym__dwarf.adb (Init_Module): Add mitigation. - -2025-06-05 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Build_Two_Pass_Aggr_Code): New function containing - most of the code initially present in Two_Pass_Aggregate_Expansion. - (Two_Pass_Aggregate_Expansion): Remove redundant N parameter. - Implement built-in-place expansion for (static) object declarations - and allocators, using Build_Two_Pass_Aggr_Code for the main work. - (Expand_Array_Aggregate): Adjust Two_Pass_Aggregate_Expansion call. - Replace Etype (N) by Typ in a couple of places. - * exp_ch3.adb (Expand_Freeze_Array_Type): Remove special case for - two-pass array aggregates. - (Expand_N_Object_Declaration): Do not adjust the object when it is - initialized by a two-pass array aggregate. - * exp_ch4.adb (Expand_Allocator_Expression): Apply the processing - used for container aggregates to two-pass array aggregates. - * exp_ch6.adb (Validate_Subprogram_Calls): Skip calls present in - initialization expressions of N_Object_Declaration nodes that have - No_Initialization set. - * sem_ch3.adb (Analyze_Object_Declaration): Detect the cases of an - array originally initialized by an aggregate consistently. - -2025-06-05 Johannes Kliemann <kliemann@adacore.com> - - * libgnat/s-arit32.adb (Lemma_Not_In_Range_Big2xx32): Add missing - Ghost aspect. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): Fix - handling of preprocessing dependencies. - -2025-06-05 Viljar Indus <indus@adacore.com> - - * doc/gnat_rm/implementation_defined_attributes.rst: Update the - documentation for Valid_Value. - * sem_attr.adb (Analyze_Attribute): Reject types where - the root type originates from Standard. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-05 Gary Dismukes <dismukes@adacore.com> - - * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Change call to Make_Assignment - for the indexed aggregate object to call Change_Make_OK_Assignment instead. - -2025-06-05 Steve Baird <baird@adacore.com> - - * sem_prag.adb - (Analyze_Constituent): In the specific case case of a defined-too-late - abstract state constituent, generate an additional error message. - -2025-06-05 Viljar Indus <indus@adacore.com> - - * diagnostics-sarif_emitter.adb (Print_Invocations): fix - commandLine and executionSuccessful nodes. - Fix typo in the name for startLine. - * osint.adb (Modified Get_Current_Dir) Fix generation of - the current directory. - (Relative_Path): Avoid relative paths starting with a - path separator. - * osint.ads: Update the documentation for Relative_Path. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/i-cstrin.adb (New_String): Fix size of allocation. - -2025-06-05 squirek <squirek@adacore.com> - - * sem_ch8.adb (Analyze_Package_Name): Add code to expand use - clauses such that they have an implicit with associated with them - when extensions are enabled. - * sem_ch10.ads (Analyze_With_Clause): New. - * sem_ch10.adb (Analyze_With_Clause): Add comes from source check - for warning. - (Expand_With_Clause): Moved to the spec. - * sem_util.adb, sem_util.ads - (Is_In_Context_Clause): Moved from sem_prag. - * sem_prag.adb (Analyze_Pragma): Update calls to - Is_In_Context_Clause. - (Is_In_Context_Clause): Moved to sem_util. - -2025-06-05 Piotr Trojanek <trojanek@adacore.com> - - * doc/gnat_ugn/platform_specific_information.rst - (Setting Stack Size from gnatlink): Improve documentation. - * gnat-style.texi: Regenerate. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - -2025-06-05 squirek <squirek@adacore.com> - - * accessibility.adb (Check_Return_Construct_Accessibility): - Disable check generation when we are only checking semantics. - * opt.ads: Add new flag for -gnatc mode - * switch-c.adb (Scan_Front_End_Switches): Set flag for -gnatc mode - -2025-06-05 Viljar Indus <indus@adacore.com> - - * sem_ch8.adb (Mark_Use_Type): Additionally mark the types - of the parameters and return values as used when analyzing an - operator. - -2025-06-05 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch9.adb (Build_Dispatching_Requeue): Take 'Tag of the - concurrent object instead of doing an unchecked conversion. - * exp_pakd.adb (Expand_Packed_Address_Reference): Perform address - arithmetic using an operator of System.Storage_Elements. - -2025-06-05 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.adb (Expand_Actuals): Remove obsolete comment. - (Make_Build_In_Place_Call_In_Anonymous_Context): Always use a proper - object declaration initialized with the function call in the cases - where a temporary is needed, with Assignment_OK set on it. - * sem_util.adb (Entity_Of): Deal with rewritten function call first. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * libgnat/i-cstrin.adb (Position_Of_Nul): Change specification and - adjust body accordingly. - (New_Char_Array): Fix size of allocation. - (To_Chars_Ptr): Adapt to Position_Of_Nul change. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): Fix - oracle generation. - -2025-06-05 Ronan Desplanques <desplanques@adacore.com> - - * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): - Fix when main library item is an instantiation. - -2025-06-05 Steve Baird <baird@adacore.com> - - * exp_attr.adb (Expand_N_Attribute_Reference): When accessing the - maps declared in package Cached_Attribute_Ops, the key value - passed to Get or to Set should never be the entity node for a - subtype. Use the entity of the corresponding type declaration - instead. - -2025-06-05 Viljar Indus <indus@adacore.com> - - * sem_res.adb (Resolve_Declare_Expression): Mark used - local variables inside a declare expression as referenced. - -2025-06-05 Javier Miranda <miranda@adacore.com> - - * sem.ads: Update reference to renamed subprogram in documentation. - * sem_ch3.ads (Preanalyze_Assert_Expression): Renamed. - (Preanalyze_Spec_Expression): Renamed. - * sem_ch3.adb (Preanalyze_Assert_Expression): Renamed and code cleanup. - (Preanalyze_Spec_Expression): Renamed. - (Preanalyze_Default_Expression): Renamed. - * contracts.adb: Update calls to renamed subprograms. - * exp_pakd.adb: Ditto. - * exp_util.adb: Ditto. - * freeze.adb: Ditto. - * sem_ch12.adb: Ditto. - * sem_ch13.adb: Ditto. - * sem_ch6.adb: Ditto. - * sem_prag.adb: Ditto. - * sem_res.adb (Preanalyze_And_Resolve): Add to the version without - context type the special handling for GNATprove mode provided by - the version with context type; required to cleanup the body of - Preanalyze_Assert_Expression. - -2025-06-05 squirek <squirek@adacore.com> - - * accessibility.adb - (Check_Return_Construct_Accessibility): Disable check generation - when we are only checking semantics. - -2025-06-05 Viljar Indus <indus@adacore.com> - - * diagnostics-json_utils.adb: Add new method To_File_Uri to - convert any path to the URI standard. - * diagnostics-json_utils.ads: Likewise. - * diagnostics-sarif_emitter.adb: Converted Artifact_Change - types to use the Source_File_Index instead of the file name - to store the source file. - Removed the body from Destroy (Elem : in out Artifact_Change) - since it no longer contained elements with dynamic memory. - Updated the implementation of Equals (L, R : Artifact_Change) - to take into account the changes for Artifact_Change. - Print_Artifact_Location: Use the Source_File_Index as an - input argument. Now prints the uriBaseId attribute and a - relative path from the uriBaseId to the file in question as - the value of the uri attribute. - New method Print_Original_Uri_Base_Ids to print the - originalUriBaseIds node. - Print_Run no prints the originalUriBaseIds node. - Use constants instead of strings for all the SARIF attributes. - * osint.adb: Add new method Relative_Path to calculate the - relative path from a base directory. - Add new method Root to calculate the root of each directory. - Add new method Get_Current_Dir to get the current working - directory for the execution environment. - * osint.ads: Likewise. - * clean.adb: Use full names for calls to Get_Current_Dir. - * gnatls.adb: Likewise. - -2025-06-05 Steve Baird <baird@adacore.com> - - * sem_res.adb - (Set_Mixed_Mode_Operand): If we are about to call Resolve - passing in Any_Fixed as the expected type, then instead pass in - the fixed point type of the other operand (i.e., B_Typ). - -2025-06-05 Gary Dismukes <dismukes@adacore.com> - - * sem_util.adb (Check_Function_Writable_Actuals): Add handling for - N_Iterated_Component_Association and N_Iterated_Element_Association. - Fix a typo in an RM reference (6.4.1(20/3) => 6.4.1(6.20/3)). - (Collect_Expression_Ids): New procedure factoring code for collecting - identifiers from expressions of aggregate associations. - (Handle_Association_Choices): New procedure factoring code for handling - id collection for expressions of aggregate associations with multiple - choices. Removed redundant test of Box_Present from original code. - -2025-05-24 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/Make-lang.in (ACATSDIR): Use acats-2 directory. - -2025-05-13 Nicolas Boulenguez <nicolas@debian.org> - - PR ada/87778 - * Make-generated.in: Remove -q gnatmake option. - * gcc-interface/Makefile.in: Likewise. - -2025-05-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/120104 - * exp_ch3.adb (Expand_Freeze_Record_Type): For a controlled tagged - type, freeze only the controlled primitives that are present. - -2025-04-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/112958 - * Makefile.rtl (LIBGNAT_TARGET_PAIRS) [x86 FreeBSD]: Add specific - version of s-dorepr.adb. - * libgnat/s-dorepr__freebsd.adb: New file. - -2025-04-30 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/112958 - * init.c (__gnat_error_handler) [__FreeBSD__]: Fix typo. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gcc-interface/utils.cc (create_param_decl): Remove the - targetm.calls.promote_prototypes call. - -2025-04-17 Jakub Jelinek <jakub@redhat.com> - - * gnatvsn.ads: Bump Library_Version to 16. - -2025-04-12 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/119643 - * sem_ch8.adb (Inherit_Renamed_Profile): Add guard against the - peculiarities of Natural and Positive. - -2025-04-07 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/utils.cc (convert) <POINTER_TYPE>: Use fold_convert - to convert between thin pointers. If the source is a thin pointer - with zero offset from the base and the target is a pointer to its - array, displace the pointer after converting it. - * gcc-interface/utils2.cc (build_unary_op) <ATTR_ADDR_EXPR>: Use - fold_convert to convert the address before displacing it. - -2025-04-04 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/a-ngcoar.adb (Eigensystem): Adjust notation and fix the - layout of the real symmetric matrix in the main comment. Adjust - the layout of the associated code accordingly and correctly turn - the 2Nx1 real vectors into Nx1 complex ones. - (Eigenvalues): Minor similar tweaks. - * libgnat/a-ngrear.adb (Jacobi): Minor tweaks in the main comment. - Adjust notation and corresponding parameter names of functions. - Fix call to Unit_Matrix routine. Adjust the comment describing - the various kinds of iterations to match the implementation. - -2025-03-27 Eric Botcazou <ebotcazou@adacore.com> - - * libgnarl/s-tasini.adb (Tasking_Runtime_Initialize): Add pragma - Linker_Constructor for the procedure. - -2025-03-25 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/119440 - * gcc-interface/Make-lang.in (GCC_LINK): Filter out -pie in stage 1 - (GCC_LLINK): Likewise. - * gcc-interface/Makefile.in (COMPILER): Delete and replace by CC. - (COMPILER_FLAGS): Delete. - (ALL_COMPILERFLAGS): Delete and replace by ALL_CFLAGS. - (ALL_ADAFLAGS): Move around. - (enable_host_pie): New substituted variable. - (LD_PICFLAG): Likewise. Do not add it to TOOLS_LIBS. - (LIBIBERTY): Test enable_host_pie. - (LIBGNAT): Likewise and use libgnat_pic.a if yes. - (TOOLS_FLAGS_TO_PASS): Pass $(PICFLAG) under CFLAGS & $(LD_PICFLAG) - under LDFLAGS. Also pass through ADA_CFLAGS. - (common-tools): Add $(ALL_CFLAGS) $(ADA_CFLAGS) to the --GCC string - of $(GNATLINK) commands. - (../../gnatdll$(exeext)): Likewise. - (gnatmake-re): Likewise. - (gnatlink-re): Likewise. - (gnatlib-shared-dual): Remove all the object files at the end. - -2025-03-19 Eric Botcazou <ebotcazou@adacore.com> - - * gnatvsn.adb (Gnat_Free_Software): Fix message formatting. - -2025-03-19 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Record_Subtype>: Set - the may_alias attribute if a specific GCC type is built. - -2025-03-19 Eric Botcazou <ebotcazou@adacore.com> - - * gen_il-gen-gen_nodes.adb (N_Formal_Package_Declaration): Use - N_Declaration instead of Node_Kind as ancestor. - * sem_ch12.adb (Get_Formal_Entity): Remove obsolete alternative. - (Instantiate_Formal_Package): Take into account the abbreviated - instances in the main loop running over the actuals of the local - package created for the formal package. - -2025-02-04 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118731 - * sem_aggr.adb (Resolve_Iterated_Association): Add missing guard. - -2025-02-01 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118712 - * sem_warn.adb (Check_References): Deal with small adjustments of - references. - -2025-01-31 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/utils.cc (gnat_pushdecl): Clear TREE_PUBLIC on - functions really nested in another function. - -2025-01-22 Arsen Arsenović <arsen@aarsen.me> - - * gcc-interface/lang-specs.h: Replace %{nostdinc*} %{nostdlib*} - with %{nostdinc} %{nostdlib}. - -2025-01-14 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118459 - * libgnat/s-objrea.ads (Object_Arch): Add S390 and RISCV. - * libgnat/s-objrea.adb (EM_S390): New named number. - (EM_RISCV): Likewise. - (ELF_Ops.Initialize): Deal with EM_S390 and EM_RISCV. - (Read_Address): Deal with S390 and RISCV. - -2025-01-13 Pascal Obry <obry@adacore.com> - - * doc/gnat_ugn/platform_specific_information.rst: Update. - * gnat_ugn.texi: Regenerate. - -2025-01-13 Javier Miranda <miranda@adacore.com> - - * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Restore calls - to Preanalyze_Spec_Expression that were replaced by calls to - Preanalyze_And_Resolve. Add documentation. - (Check_Aspect_At_Freeze_Point): Ditto. - -2025-01-13 Pascal Obry <obry@adacore.com> - - * mdll.adb: For the created DLL to be relocatable we do not want to use - the base file name when calling gnatdll. - * gnatdll.adb: Removes option -d which is not working anymore. And - when using a truly relocatable DLL the base-address has no real - meaning. Also reword the usage string for -d as we do not want to - specify relocatable as gnatdll can be used to create both - relocatable and non relocatable DLL. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * libgnat/a-strunb.ads: Remove redundant parentheses inside NOT - operators. - -2025-01-13 Javier Miranda <miranda@adacore.com> - - * sem_util.adb (Build_Actual_Subtype_Of_Component): No action - under preanalysis. - * sem_ch5.adb (Set_Assignment_Type): If the right-hand side contains - target names, expansion has been disabled to prevent expansion that - might move target names out of the context of the assignment statement. - Restore temporarily the current compilation mode so that the actual - subtype can be built. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * par-ch4.adb (P_Factor): Warn when the operand of a unary operator - doesn't require parentheses. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * libgnat/s-genbig.adb: Remove redundant parentheses in comments. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * checks.adb, exp_dist.adb, exp_imgv.adb, exp_util.adb, - libgnarl/a-reatim.adb, libgnat/a-coinve.adb, libgnat/a-nbnbre.adb, - libgnat/a-ngcoty.adb, libgnat/a-ngelfu.adb, libgnat/a-ngrear.adb, - libgnat/a-strbou.ads, libgnat/a-strfix.ads, libgnat/a-strsea.adb, - libgnat/a-strsea.ads, libgnat/a-strsup.ads, - libgnat/a-strunb__shared.ads, libgnat/g-alleve.adb, - libgnat/g-spitbo.adb, libgnat/s-aridou.adb, libgnat/s-arit32.adb, - libgnat/s-dourea.ads, libgnat/s-genbig.adb, libgnat/s-imager.adb, - libgnat/s-statxd.adb, libgnat/s-widthi.adb, sem_attr.adb, sem_ch10.adb, - sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_dim.adb, sem_prag.adb, - sem_res.adb, uintp.adb: Remove redundant parentheses inside NOT and ABS - operators. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * par-ch3.adb (P_Discrete_Range): Detect redundant parentheses in the - lower bound like in the upper bound. - -2025-01-13 Gary Dismukes <dismukes@adacore.com> - - * sem_aggr.adb (Resolve_Aggregate): Add another condition to prevent rewriting - an aggregate whose type is an array of characters, testing for the presence of - predicates on the component type. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch4.adb: (Expand_N_Not_In): Preserve Alternatives in expanded - membership operator just like preserving Right_Opnd (though only - one of these fields is present at a time). - * par-ch4.adb (P_Membership_Test): Remove redundant setting of fields - to their default values. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * par-ch3.adb (P_Discrete_Range): Replace N_Subexpr, which was catching - all subexpressions, with kinds that catch nodes that require - parentheses to become "simple expressions". - -2025-01-13 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-valrea.adb (Large_Powfive) [2 parameters]: Add a couple - of additional comments. - -2025-01-13 Piotr Trojanek <trojanek@adacore.com> - - * par-ch4.adb (P_Relation): Prevent Expr_Form to be overwritten when - parsing the raise expression itself. - (P_Simple_Expression): Fix manipulation of Expr_Form. - -2025-01-10 squirek <squirek@adacore.com> - - * accessibility.adb: - (Innermost_master_Scope_Depth): Add special case for expressions - within library level subprograms. - -2025-01-10 Marc Poulhiès <poulhies@adacore.com> - - * env.h: Remove last empty line. - -2025-01-10 Piotr Trojanek <trojanek@adacore.com> - - * contracts.adb (Build_Call_Helper_Decl): Tune whitespace. - * exp_attr.adb (Analyze_Attribute): Set Of_Present while - creating the node; reorder setting Subtype_Indication to match the - syntax order. - * exp_ch3.adb (Build_Equivalent_Aggregate): Likewise for Box_Present - and Expression properties. - * sem_ch12.adb (Analyze_Formal_Derived_Type): Set type properties - when creating the nodes. - * sem_ch3.adb (Check_Anonymous_Access_Component): Likewise. - -2025-01-10 Piotr Trojanek <trojanek@adacore.com> - - * gen_il-gen-gen_nodes.adb (Gen_Nodes): Change Is_Effective_Use_Clause - from syntactic to semantic property. - -2025-01-10 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb (Predef_Spec_Or_Body): Add explicit parameter - associations, because now the Empty_List actual parameter would be - confused as being for the Aspect_Specifications formal parameter. - * gen_il-gen-gen_nodes.adb (Gen_Nodes): Reorder syntactic fields. - * sem_util.adb (Declare_Indirect_Temp): Add explicit parameter - association, because now the parameter will be interpreted as a - subpool handle name. - -2025-01-09 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/18765 - * debug.adb (d_q): Document new usage. - * sem_ch6.adb (New_Overloaded_Entity): Apply the special processing - to all equality operators whose base result type is Boolean, but do - not enforce the new Ada 2012 freezing rule if the result type is a - proper subtype of it and the -gnatd_q switch is specified. - -2025-01-09 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118274 - * sem_ch4.adb (Check_Arithmetic_Pair.Has_Fixed_Op): Use the original - node of the operator to identify the case of an expanded name whose - prefix is the package Standard. - -2025-01-09 squirek <squirek@adacore.com> - - * libgnat/a-comutr.adb, libgnat/a-comutr.ads: - Move the declarations of iterator types into the specification and - add additional comments. - -2025-01-09 Javier Miranda <miranda@adacore.com> - - * freeze.adb (Freeze_Expr_Types): Reverse patch; that is, restore - calls to Preanalyze_Spec_Expression instead of Preanalyze_And_Resolve - for the sake of consistency with Analyze_Expression_Function. Patch - suggested by Eric Botcazou. - * exp_put_image.adb (Image_Should_Call_Put_Image): Ensure that - function Defining_Identifier is called with a proper node to - avoid internal assertion failure. - -2025-01-07 Marc Poulhiès <poulhies@adacore.com> - - * libgnat/a-calcon.ads: Adjust. - * libgnat/a-calend.ads: Adjust. - -2025-01-07 Alexandre Oliva <oliva@adacore.com> - - * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): - Drop g-cpp, g-cppexc and g-cppstd. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * gcc-interface/trans.cc (Call_to_gnu): Always use the return slot - optimization if the parent node is an initialization statement. - (gnat_to_gnu) <N_Assignment_Statement>: Build an INIT_EXPR instead - of a MODIFY_EXPR if this is an initialization statement. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * gen_il-fields.ads (Opt_Field_Enum): Remove flag. - * gen_il-gen-gen_nodes.adb (N_Attribute_Definition_Clause): Remove - field. - * sem_ch13.adb (Validate_Address_Clauses): Remove read of the flag. - * sinfo.ads (Address_Warning_Posted): Remove flag description. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Packed_Array_Aggregate_Handled): Remove declaration - and handler for Not_Handled local exception. Check the return value - of Get_Component_Val instead. - (Get_Component_Val): Return No_Uint instead of raising Not_Handled. - -2025-01-07 Javier Miranda <miranda@adacore.com> - - * exp_util.adb (Insert_Actions): Document behavior under strict - preanalysis. - * sem.ads (In_Strict_Preanalysis): New subprogram. - (Preanalysis_Active): Replace 'and' operator by 'and then'. - * sem.adb (In_Strict_Preanalysis): Ditto. - * sem_attr.adb (Check_Dereference): Replace In_Spec_Expression - occurrence by call to Preanalysis_Active, and document it. - (Resolve_Attribute [Atribute_Access]): Ditto. - (Eval_Attribute): No evaluation under strict preanalysis. - (Validate_Static_Object_Name): No action under strict preanalysis. - * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Replace - calls to Preanalyze_Spec_Expression by calls to Preanalyze_And_Resolve. - (Check_Aspect_At_Freeze_Point): Ditto. - (Resolve_Aspect_Expressions [Dynamic/Static/Predicate aspects]): Code - cleanup adjusting the code to emulate Preanalyze_And_Resolve, instead - of Preanalyze_Spec_Expression. - (Resolve_Aspect_Expressions [CPU/Interrupt_Priority/Priority/ - Storage_Size aspects]): Replace calls to Preanalyze_Spec_Expression - by call to Preanalyze_And _Resolve. - * sem_ch3.adb (Analyze_Object_Declaration): Replace In_Spec_Expression - occurrence by call to Preanalysis_Active. - (Find_Type_Of_Object): Add documentation. - * sem_ch4.adb (Analyze_Case_Expression): Replace In_Spec_Expression - occurrence by call to Preanalysis_Active. - * sem_ch6.adb (Analyze_Expression_Function): Minor code reorganization - moving the code preanalyzing the expression after the new body has - been inserted in the tree to ensure that its Parent attribute is - available for preanalysis. - * sem_cat.adb (Validate_Static_Object_Name): No action under strict - preanalysis. - * sem_elab.adb (Check_For_Eliminated_Subprogram): Replace In_Spec_Expression - occurrence by call to Preanalysis_Active. - * sem_eval.adb (Eval_Intrinsic_Call [Name_Enclosing_Entity]): Ditto. - * sem_elim.adb (Check_For_Eliminated_Subprogram): Ditto. - * sem_res.adb (Resolve_Entity_Name): Ditto. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * repinfo-input.adb (Decode_Name, Read_Name_With_Prefix): Use constant - overlay with pragma Import. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * exp_disp.adb (Write_DT): Add guards that prevent crashes on illegal - node numbers. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * diagnostics-pretty_emitter.adb (Get_Last_Line_Char): Fix whitespace. - * sem_aggr.adb (Resolve_Array_Aggregate): Fix style. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_util.adb (Is_Null_Record_Definition): Remove check for - Component_List being present after using it; replace check for - component item being a component declaration with an assertion; - fix style in comment. - -2025-01-07 Ronan Desplanques <desplanques@adacore.com> - - * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Fix abort - deferral. - -2025-01-07 Steve Baird <baird@adacore.com> - - * gen_il-fields.ads: add new Renames_Limited_View field. - * gen_il-gen-gen_entities.adb: add Renames_Limited_View flag for - packages. - * einfo.ads: add comment documenting Renames_Limited_View flag. - * sem_ch8.adb (Analyze_Package_Renaming): Set new Renames_Limited_View - flag. Test new Renames_Limited_View flag instead of calling - Has_Limited_With. If Has_Limited_With is True, that just means - that somebody, sometime during this compilation needed to - reference the limited view of the package; so that function - returns True too often to be used here. - (Find_Expanded_Name): Test new Renames_Limited_View flag instead of - calling Has_Limited_With. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * contracts.adb (Inherit_Pragma): Don't set flag Is_Inherited_Pragma. - * gen_il-fields.ads (Opt_Field_Enum): Remove field identifier. - * gen_il-gen-gen_nodes.adb (N_Pragma): Remove field from node. - * sinfo.ads (Is_Inherited_Pragma): Remove field description. - (N_Pragma): Remove field reference. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Attribute): Replace runtime conversion - with existing constant. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Analyze_Attribute): Simplify logic. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * exp_attr.adb (Expand_N_Attribute_Reference): Remove explicit - handling of attributes related to Ada 2012 iterators. - * sem_attr.adb (Analyze_Attribute, Eval_Attribute): Likewise; - move attribute Reduce according to alphabetic order. - * snames.adb-tmpl (Get_Attribute_Id): Add support for new internal - attributes. - * snames.ads-tmpl: Recognize names of new internal attributes. - (Attribute_Id): Recognize new internal attributes. - (Internal_Attribute_Id): Likewise. - (Is_Internal_Attribute_Name): Avoid duplication in comment. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * accessibility.adb (First_Selector): Remove redundant and locally - inconsistent parenthesis. - (Check_Return_Construct_Accessibility): Remove qualifier from list - operation. - * sem_util.adb (Is_Prim_Of_Abst_Type_With_Nonstatic_CW_Pre_Post): - Likewise. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch7.ads (Store_After_Actions_In_Scope_Without_Analysis): New - procedure declaration. - * exp_ch7.adb (Store_New_Actions_In_Scope): New procedure. - (Store_Actions_In_Scope): Call Store_New_Actions_In_Scope when the - target list is empty. - (Store_After_Actions_In_Scope_Without_Analysis): New procedure body. - * exp_aggr.adb (Expand_Container_Aggregate): For a declaration that - is wrapped in a transient scope, also defer the analysis of the new - code until after the declaration is analyzed. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-powflt.ads (Maxpow_Exact): Minor comment fix. - * libgnat/s-powlfl.ads (Maxpow_Exact): Likewise. - * libgnat/s-powllf.ads (Maxpow_Exact): Likewise. - * libgnat/s-valrea.adb (Large_Powfive) [1 parameter]: Exit the loop - as soon as the result saturates to +Inf. - (Large_Powfive) [2 parameters]: Likewise. - -2025-01-07 Alexandre Oliva <oliva@adacore.com> - - * libgnat/system-vxworks-ppc-rtp-smp.ads: Drop - --specs=vxworks-ppc-link.spec from Linker_Options. - * vxworks-smp-ppc-link.spec: Delete. - -2025-01-07 Ronan Desplanques <desplanques@adacore.com> - - * atree.adb (Parent_Or_List_Containing): New function. - * atree.ads (Parent_Or_List_Containing): Likewise. - * gen_il-fields.ads: Add new field. - * gen_il-gen-gen_nodes.adb (Gen_Nodes): Extend handled sequence of - statements node. - * par-ch11.adb (P_Handled_Sequence_Of_Statements, P_Exception_Handler): - Add new syntactic construct. - * par-ch5.adb (P_Sequence_Of_Statements): Likewise. - * par.adb: Likewise. - * par-util.adb (Check_Future_Keyword): Warn that "finally" becomes a - reserved word with extensions. - * scans.adb (Initialize_Ada_Keywords): Add new reserved word. - * snames.adb-tmpl: Likewise. - * snames.ads-tmpl: Likewise. - * scans.ads: Likewise. - * sem_ch11.adb (Analyze_Handled_Statements): Adapt to new node field. - * sem_ch5.adb (Analyze_Exit_Statement): Add legality check. - (Analyze_Goto_Statement): Likewise. - * sem_ch6.adb (Analyze_Return_Statement): Likewise. - * sinfo-utils.adb (Lowest_Common_Ancestor, Destroy_Element): New - subprograms. - * sinfo-utils.ads (Lowest_Common_Ancestor): New function. - * sinfo.ads: Add documentation for new field. - * xsnamest.adb: Fix typo in comment. - * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. - * warnsw.adb: Add new option. - * warnsw.ads: Likewise. - * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Add abort - deferral to finally part. - * gnat_rm.texi: Regenerate. - * gnat_ugn.texi: Regenerate. - * gcc-interface/trans.cc (Handled_Sequence_Of_Statements_to_gnu): - Handle finally statements. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Expand_Array_Aggregate): Do not exclude aggregates - of bit-packed array types in assignments from in-place expansion. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Reject - references to attribute Result. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Move check - from GNATprove backend to GNAT frontend. - -2025-01-07 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Analyze_Exceptional_Contract, Analyze_Variant): Fix - comments. - -2025-01-07 Steve Baird <baird@adacore.com> - - * exp_put_image.adb (Image_Should_Call_Put_Image): Cope with the case - where the attribute prefix for an Image attribute reference - denotes an Itype constructed for a fixed point type. Calling - Has_Aspect with such an Itype misses applicable aspect - specifications; we need to look on the right list. This comes up - if the prefix of the attribute reference is - Some_Fixed_Point_Type'Base. - -2025-01-07 Gary Dismukes <dismukes@adacore.com> - - * sem_ch12.adb (Analyze_One_Association): In the case of a formal type - that has a Default_Subtype_Mark that does not have its Entity field set, - this means the default refers to another formal type of the same generic - formal part, so locate the matching subtype in the Result_Renamings and - set Match's Entity to that subtype prior to the call to Instantiate_Type. - (Validate_Formal_TypeDefault.Reference_Formal): Add test of Entity being - Present, to prevent blowups on End_Label ids (which don't have Entity set). - (Validate_Formal_Type_Default.Validate_Derived_Type_Default): Apply - Base_Type to Formal. - (Validate_Formal_Type_Default): Guard interface-related semantic checks - with a test of Is_Tagged_Type. - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * repinfo.adb (List_GCC_Expression.Print_Expr) <Cond_Expr>: Do not - output the final "end". - -2025-01-07 Johannes Kanig <kanig@adacore.com> - - * gnat1drv.adb: (SPARK_Library_Warning): preserve Warning_Doc_Switch - -2025-01-07 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Expand_Allocator_Expression): Do not build a cleanup - if restriction No_Exception_Propagation is active. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Likewise. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/118247 - * gcc-interface/Make-lang.in (GNATTOOLS_CROSS_MV): Copy gnatbind - instead of moving it. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Use the base type of - the index type to find the type used to compute the length. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * libgnat/s-finpri.ads: Remove clause for Ada.Finalization. - (Finalization_Collection): Change to limited private type with the - Finalizable aspect. - (Initialize): Remove "overriding" keyword. - (Finalize): Likewise. - * libgnat/s-finpri.adb (Initialize): Likewise. - (Finalize): Likewise. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/117569 - * sem_ch4.adb (Analyze_Indexed_Component_Form): Do not rewrite the - node as a type conversion if it is the current instance of a type - in a generic unit. - * sem_ch8.adb (Find_Selected_Component): Restrict the special case - of the current instance of a type to a generic unit. - -2025-01-06 Bob Duff <duff@adacore.com> - - * libgnat/s-imagef.adb (Set_Image_Integer): - Change "RM A.3.10" to be "RM A.10.9". - -2025-01-06 Alexandre Oliva <oliva@adacore.com> - - * libgnat/g-cppexc.adb (Convert_Caught_Object): Move... - * libgnat/g-cstyin.adb (Convert_Caught_Object): ... here. - Use object call notation. - (strcmp): New. - (Char_Arr, CharPtr, Char_Pointer, To_chars_ptr): Drop. Do not - import Interfaces.C.Pointers. - (To_Pointer): Convert from System.Address. - (Name_Starts_With_Asterisk): Rename local variable. - (Name_Past_Asterisk): Rewrite with System.Address and strcmp. - Import System.Storage_Elements. - (Equals): Use strcmp. - (Before): Fix logic error. Use strcmp. - (Name): Move conversion to String... - * libgnat/g-cppstd.adb (Name): ... here. Import - Interfaces.C.Strings. - * libgnat/g-cppstd.ads (Type_Info_Ptr): Disable heap - finalization. - * libgnat/g-cstyin.ads (Name): Change return type. - -2025-01-06 Claire Dross <dross@adacore.com> - - * aspects.ads: Add aspect Aspect_Exit_Cases. - * contracts.adb (Analyze_Entry_Or_Subprogram_Contract): Handle Exit_Cases. - (Expand_Subprogram_Contract): Idem. - * einfo-utils.adb (Get_Pragma): Allow Pragma_Exit_Cases. - * einfo-utils.ads (Get_Pragma): Idem. - * exp_prag.adb (Expand_Pragma_Exit_Cases): Ignore the pragma, currently we don't expand it. - * exp_prag.ads (Expand_Pragma_Exit_Cases): Idem. - * inline.adb (Remove_Aspects_And_Pragmas): Add Exit_Cases to the list. - (Remove_Items): Idem. - * par-prag.adb (Last_Arg_Is_Reason): Idem. - * sem_ch12.adb: Idem. - * sem_ch13.adb: Idem. - * sem_util.adb: Idem. - * sem_util.ads: Idem. - * sinfo.ads: Idem. - * snames.ads-tmpl: Add names Name_Exit_Cases, Name_Exception_Raised, and Name_Normal_Return - as well as pragma Pragma_Exit_Cases. - * sem_prag.adb (Analyze_Exit_Cases_In_Decl_Part): Make sure that a - pragma or aspect Exit_Cases is well formed. - (Analyze_Pragma): Make sure that a pragma or aspect Exit_Cases is at the right place. - * sem_prag.ads (Analyze_Exit_Cases_In_Decl_Part): Declaration. - * doc/gnat_rm/implementation_defined_pragmas.rst: Document the Exit_Cases pragma. - * doc/gnat_rm/implementation_defined_aspects.rst: Document the Exit_Cases aspect. - * gnat_rm.texi: Regenerate. - -2025-01-06 Bob Duff <duff@adacore.com> - - * sem_util.adb (Copy_Subprogram_Spec): When copying - an N_Defining_Operator_Symbol, create an - N_Defining_Operator_Symbol rather than an N_Defining_Identifier. - This will cause Lib.Xref to "skip the initial quote for - navigation purposes" (as per comments in Lib.Xref body). - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_aggr.adb (Case_Table_Type): Fix reference in comment. - (In_Place_Assign_OK): Move declaration around. - (Is_Build_In_Place_Aggregate_Return): Likewise and adjust. - (Expand_Array_Aggregate): Streamline for the sake of consistency. - (Aggr_Assignment_OK_For_Backend): Remove reference to Gigi/gcc. - (Backend_Processing_Possible): Likewise. - (Expand_Array_Aggregate): Add comment. - -2025-01-06 Bob Duff <duff@adacore.com> - - * sinfo.ads (Shift_Count_OK): Update comments. - (Is_Power_Of_2_For_Shift): Likewise. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * debug.adb (dQ): Document usage. - * exp_ch4.ads (Build_Cleanup_For_Allocator): New declaration. - * exp_ch4.adb (Build_Cleanup_For_Allocator): New procedure. - (Expand_Allocator_Expression): Build a cleanup to deallocate the - memory when the evaluation of the expression raises an exception. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Likewise. - * exp_util.adb (Build_Allocate_Deallocate_Proc): Do not generate the - detachment if the deallocation is for the cleanup of an allocator. - * gen_il-fields.ads (Opt_Field_Enum): Add For_Allocator. - * gen_il-gen-gen_nodes.adb (N_Free_Statement): Likewise. - * sinfo.ads (For_Allocator): Document usage on N_Free_Statement. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/117956 - * sem_util.adb (Is_Known_On_Entry): Be prepared for constants coming - from a renaming declaration. - -2025-01-06 Tonu Naks <naks@adacore.com> - - * adaint.c (__gnat_locate_exec_on_path): modify function signature - -2025-01-06 Piotr Trojanek <trojanek@adacore.com> - - * sem_prag.adb (Resolve_State): Continue ordinary processing. - -2025-01-06 Javier Miranda <miranda@adacore.com> - - * sem_ch4.adb (Try_Object_Operation): if no candidate interpretation - matches the context, redo the same analysis with Report_Error True - to report the error. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch5.adb (Expand_Assign_Array): Bail out for controlled - components if the RHS is a function call and the assignment has - the No_Ctrl_Actions flag set. - -2025-01-06 Viljar Indus <indus@adacore.com> - - * diagnostics-json_utils.adb: Add new method - Write_Boolean_Attribute. - * diagnostics-json_utils.ads: Likewise. - * diagnostics-sarif_emitter.adb (Print_Invocations): print - the executionSuccesful property value without extra quotes. - -2025-01-06 Viljar Indus <indus@adacore.com> - - * diagnostics-sarif_emitter.adb (Print_Rule): Remove printing - of the level attribute since it does not match the SARIF schema. - -2025-01-06 Piotr Trojanek <trojanek@adacore.com> - - * gen_il-gen.adb (Put_Tables): Add "not null" to the generated code. - * rtsfind.adb (Cstring_Ptr): Same for table with predefined RE_Id - error messages. - * impunit.adb (Aunit_Record): Same for array of alternative unit names. - -2025-01-06 Piotr Trojanek <trojanek@adacore.com> - - * opt.ads (Ada_Version_Runtime): Now a constant, since it cannot - and should never be modified. - -2025-01-06 Bob Duff <duff@adacore.com> - - * par-ch10.adb (P_Compilation_Unit): Give an error for "is null". - * sem_ch10.adb (Analyze_Subunit): Remove check for "is null" - as a subunit. - * sem_ch6.adb (Analyze_Subprogram_Declaration): - Remove check for "is null" as a library unit. - -2025-01-06 Javier Miranda <miranda@adacore.com> - - * sem_ch6.adb (Analyze_Expression_Function): Set the parent of - the new node to be the parent of the original to get the proper - context, which is needed for complete error reporting and for - semantic analysis. Patch suggested by Eric Botcazou. - -2025-01-06 Alexandre Oliva <oliva@adacore.com> - Olivier Hainque <hainque@adacore.com> - - * Makefile.rtl (LLVM_BUILD): Define based on LLVM_CONFIG. - (GNATRTL_NONTASKING_OBJS): Make g-cpp, g-cppstd, and g-cstyin - conditional on -gcc or -arm EH, and on no LLVM_BUILD. - * raise-gcc.c (GXX_EH_INTEROP): Define as 0 on gnat-llvm or - CERT, and 1 otherwise. - (__gnat_get_cxx_dependent_exception) Omit on !GXX_EH_INTEROP. - (__gnat_maybe_get_cxx_dependent_exception): Likewise. - (__gnat_get_cxx_exception_type_info): Likewise. - (__gnat_obtain_caught_object): Likewise. - (is_handled_by): Omit eid parameter and G++ interop on - !GXX_EH_INTEROP. Adjust callers. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Returns_By_Ref): Fix description. - * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do not - adjust the component manually (if need be), set No_Finalize_Actions - instead of No_Ctrl_Actions for this purpose. Do not adjust when - the expression is a naked function call. - * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Document the quirks of - the function. Assert that the LHS of the assignment does not have - side effects and replace calls to Duplicate_Subexpr_No_Checks with - calls to New_Copy_Tree. Rename local variable Asn to New_N. - (Expand_N_Assignment_Statement): In the tagged or controlled record - case, do remove side effects from both operands on entry. Remove - them in the controlled record case, except if the RHS is a function - call and the assignment has the No_Ctrl_Actions flag set. - * exp_ch6.adb (Expand_Ctrl_Function_Call): Bail out when the parent - node is an assignment statement with the No_Ctrl_Actions flag set. - * sem_util.adb (Statically_Different): Return True for a function - call that does not return its result by reference. - * sinfo.ads (No_Ctrl_Actions): Adjust description and add a note for - the code generator. - (No_Finalize_Actions): Likewise. - -2025-01-06 Bob Duff <duff@adacore.com> - - * gen_il-gen.adb: Fix too-long line. - -2025-01-06 Tonu Naks <naks@adacore.com> - - * adaint.c: void parameter on non-windows platforms - -2025-01-06 Bob Duff <duff@adacore.com> - - * gen_il-internals.ads: Split Fields field into two fields - Imm_Fields and Fields. - * gen_il-gen.adb: Modify the field-inheritance - algorithm to inherit at each level of the type hierarchy, - rather than just inheriting into concrete types. - For example, if C is a concrete type derived from B, - which is in turn derived from A, we now set the Fields - of B to include those of A. (We had always set the Fields - of C to include those of A and B, and we still do that.) - (Compute_Fields_For_One_Type): Detect cases where a given - field is declared for all descendants of a given abstract - type, in which case we should consider declaring it in - the abstract type, and inheriting it in those descendants. - (Exception_To_Inheritance_Rule): These are the cases where - we could inherit, but we don't want to. - * gen_il-gen-gen_nodes.adb: Move fields up the type hierarchy, - so they are inherited instead of being defined separately. - * gen_il-gen-gen_entities.adb: Likewise. - -2025-01-06 Viljar Indus <indus@adacore.com> - - * sem_ch6.adb (Analyze_Subprogram_Body_Helper): - Exchange_Limited_Views also in Ada 2005. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch6.adb (Expand_Call_Helper): Call Ultimate_Alias for the - detection of calls to subprograms specified for Constant_Indexing. - * exp_util.adb (Is_Indexed_Container): Likewise. - (Is_Iterated_Container): Likewise for Default_Iterator. - -2025-01-06 Ronan Desplanques <desplanques@adacore.com> - - * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix markup. - * gnat_ugn.texi: Regenerate. - -2025-01-06 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch13.adb (Validate_Unchecked_Conversions): Remove detection of - null arrays; remove tests for sizes being present, which are redundant - after calling Known_Static_RM_Size. - -2025-01-06 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/117936 - * doc/gnat_rm/implementation_defined_pragmas.rst - (Unimplemented_Unit): Adjust the description of the error message. - * gnat_rm.texi: Regenerate. - -2025-01-05 Estevan Castilho (Tevo) <estevan.cps@gmail.com> - - * libgnarl/s-taprop__dummy.adb: Remove use clause for - System.Parameters. - (Unlock): Remove Global_Lock formal parameter. - (Write_Lock): Likewise. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb, exp_ch4.adb, exp_disp.adb, inline.adb: Remove explicit - actual parameter Null_Exclusion_Present equal False. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb, exp_disp.adb: Remove explicit actual parameter - Constant_Present equal False; tune comments. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb, exp_ch9.adb, exp_dist.adb, exp_imgv.adb, exp_util.adb, - sem_dist.adb: Remove explicit actual parameter Aliased_Present equal - False; tune comments and whitespace. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch5.adb (Check_Call): Reuse Get_Called_Entity. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Check_Array_Type): Remove extra call. - * sem_util.adb (Static_Boolean): Likewise. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_aggr.adb (Others_Check): Reuse List_Length; tune whitespace. - * exp_ch3.adb (Constrain_Array): Remove counting of constraints. - * exp_disp.adb (Make_DT): Use Elist utility routines; tune whitespace. - * sem_ch12.adb (Formal_Dimensions): Reuse List_Length. - (Valid_Default_Attribute): Reuse Number_Formals. - * sem_prag.adb (Process_Convention): Likewise. - * sem_util.adb (Normalize_Actuals): Likewise. - (Check_Function_Writable_Actuals): Reuse List_Length. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * contracts.adb (Create_Generic_Contract): Remove calls to Present. - * sem_util.adb (Normalize_Actuals): Likewise. - -2025-01-03 Bob Duff <duff@adacore.com> - - * sem_util.adb (Append_Entity_Name): Do not skip the - simple name for a compilation unit (which includes - the case of specless subprogram bodies). - -2025-01-03 Tucker Taft <taft@adacore.com> - - * pprint.adb (Expression_Image): Adjust and improve comments - to match style recommendations, and change name of subtype - from Not_Associative to Non_Associative, in response to - code review. - -2025-01-03 Tucker Taft <taft@adacore.com> - - * pprint.adb (Expression_Image): In local function Expr_Name - add a No_Parens flag and define a subtype Not_Associative - to represent the short-circuit operations and And/Or/Xor. - Insert parentheses to separate the subexpressions when - different "Not_Associative" operations occur in a - sequence. - -2025-01-03 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (BIP_Initialization_Call): Adjust description. - * exp_ch4.adb (Expand_N_Case_Expression): Adjust commentary. - (Expand_N_If_Expression): Likewise. - * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): - Set BIP_Initialization_Call unconditionally in the definite case. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * uintp.adb (N_Digits): Refine return subtype, since this routine - always returns a positive number of digits. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * checks.adb (Generate_Index_Checks): Reuse existing utility routine. - * sem_ch4.adb (Analyze_Indexed_Component_Form): Likewise. - * sem_prag.adb (Analyze_Pragma): Likewise. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_dist.adb (Assign_Subprogram_Identifier, - Reserve_NamingContext_Methods): Simplify. - * osint.adb (Append_Suffix_To_File_Name, Find_File, Get_Directory, - Object_File_Name, Strip_Directory): Likewise. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_res.adb (Resolve_Alocator): Move unrelated code out of a declare - block. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * exp_ch3.adb (Search_Access_Discriminant, Search_Current_Instance, - Search_Internal_Call): Use traversal function instead of traversal - procedure and remove associated global variables. - * exp_util.adb (Search_Calls): Likewise. - * sem_prag.adb (Contains_Loop_Entry): Likewise. - * sem_util.adb (Mentions_Post_State): Likewise. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_attr.adb (Eval_Attribute): Fix comment for attribute Image. - * tbuild.adb (Make_SC): Remove extra whitespace. - -2025-01-03 Alexandre Oliva <oliva@adacore.com> - - * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-cpp, g-cppstd, - and g-cstyin. - * doc/gnat_rm/interfacing_to_other_languages.rst (Interfacing to C++): - Document class-wide matching and new interfaces. - * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Add class-wide - exception matching support with 'B' as language identifier. - * libgnat/a-exexpr.adb (Setup_Current_Excep): Add Id formal. - (Set_Foreign_Occurrence): Likewise. - (Propagate_GCC_Exception): Adjust. - (Set_Exception_Parameter): Likewise. - (Unhandled_Except_Handler): Likewise. - * libgnat/g-cpp.ads: New. - * libgnat/g-cppexc.adb (Raise_Cpp_Exception): Match 'B' lang id. - (Get_Object_Address): New. - (Get_Object): Rewrite. - (Get_Access_To_Object): New. - (Get_Access_To_Tagged_Object): New. - (Get_Type_Info): New. - (Convert_Caught_Object): New. - * libgnat/g-cppexc.ads (Get_Object_Address): New. - (Get_Object): Note the Cpp Convention requirement. - (Get_Access_To_Object): New. - (Get_Access_To_Tagged_Object): New. - (Get_Type_Info): New. - * libgnat/g-cppstd.adb: New. - * libgnat/g-cppstd.ads: New. - * libgnat/g-csclex.ads: New, unused. - * libgnat/g-cstyin.adb: New. - * libgnat/g-cstyin.ads: New. - * libgnat/g-excact.adb (Exception_Language): New. - (Is_Foreign_Exception): Rewrite. - * libgnat/g-excact.ads (Exception_Languages): New. - (Exception_Language): New. - * libgnat/s-stalib.ads (Lang): Document 'B'. - * raise-gcc.c (__gnat_setup_current_excep): Add Exception_Id formal. - (CXX_DEPENDENT_EXCEPTION_CLASS): New. - (cxx_type_info): New. - (__cxa_exception): Rename exceptionType to encompass PrimaryException. - (_GNAT_Exception): Drop wrapper. - (EID_For): Adjust. - (exception_class_eq): Likewise. - (__gnat_exception_language_is_cplusplus): New. - (__gnat_exception_language_is_ada): New. - (__gnat_convert_caught_object): Declare. - (__gnat_get_cxx_dependent_exception): New. - (__gnat_maybe_get_cxx_dependent_exception): New. - (__gnat_get_cxx_exception_type_info): New. - (__gnat_obtain_caught_object): New. - (is_handled_by): Adjust. [!CERT] Add eid formal, handle dependent - exceptions and base-type matches. - (get_action_description_for) [!CERT]: Add eid formal. Adjust. - (personality_body): Adjust. - * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS) [!STAGE1]: - Add new g-cpp, g-cppstd, g-cstyin + preexisting g-cppexc - and i-cstrin. - * gnat-style.texi: Regenerate. - * gnat_rm.texi: Regenerate. - -2025-01-03 Gary Dismukes <dismukes@adacore.com> - - * diagnostics-constructors.adb (Make_Default_Iterator_Not_Primitive_Error): - Revise message to match message change made in sem_ch13.adb. - * freeze.adb (Freeze_Record_Type): Output appropriate aspect name in - error message, using Get_Name_String. - (Freeze_Entity): For derived types, call Analyze_Aspects_At_Freeze_Point - on the parent type, and call Inherit_Nonoverridable_Aspects on the type - (for both parent type and any progenitor types). Add with_clause for - System.Case_Util. - * gen_il-fields.ads: Add Aspect_Subprograms to type Opt_Field_Enum. - * gen_il-gen-gen_nodes.adb: Add field Aspect_Subprograms to - N_Aspect_Specification nodes. - * sem_ch4.adb (Try_Container_Indexing): Remove Find_Indexing_Operations - and the code calling it. Add new function Indexing_Interpretations for - retrieving the eligible indexing functions from the appropriate aspect's - Aspect_Subprograms list and call that instead of Find_Value_Of_Aspect. - * sem_ch7.adb (Analyze_Package_Specification): In loop over entities, - call Analyze_Aspects_At_Freeze_Point for types that have delayed - aspects. - * sem_ch13.ads (Analyze_Aspects_At_Freeze_Point): Add Nonoverridable_Only - formal to restrict processing to nonoverridable aspects. - (Check_Function_For_Indexing_Aspect): New exported procedure renamed - from Check_One_Function and moved to library level. - * sem_ch13.adb (Analyze_Aspects_At_Freeze_Point): Test new formal - Nonoverridable_Only formal to skip processing of aspects that are not - nonoverridable when the formal is True. Skip the processing for - Aspect_Full_Access_Only when Nonoverridable_Only is True. Call - Check_Indexing_Functions in the case of indexing aspects (procedure - moved from Analyze_Attribute_Definition_Clause to top level). - (Analyze_Aspect_Specifications): Locate closest ancestor type with an - explicit matching aspect to determine the aspect spec to reference in - the error about a nonoverridable aspect not confirming an inherited - aspect (skipping intermediate derived parents). Ensures that we retain - existing errors flagged on explicit ancestor aspects rather than - implicit inherited ones. Change names of variables Parent_Type and - Inherited_Aspect to Ancestor_Type and Ancestor_Aspect respectively - for clarity. - (Analyze_Attribute_Definition_Clause): Move nested subprograms - Check_Iterator_Functions and Check_Primitive_Function to top level - of package. Move Check_Indexing_Functions (and its nested subprograms) - from here to within Analyze_Aspects_At_Freeze_Point (adding some - formal parameters and adjusting the code appropriately, and no longer - call it from this procedure). - (Is_CW_Or_Access_To_CW): Add test for the parent type having the - indexing aspect for proper setting of Aspect_Specification_Is_Inherited. - Delete "???" comment. - (Look_Through_Anon_Access): Remove unneeded tests of Is_Access_Constant - and Name_Constant_Indexing, which lead to wrong messages in some cases. - (Check_Function_For_Indexing_Aspect): Procedure renamed from - Check_One_Function and moved to library level (was nested within - Check_Indexing_Functions), plus added formals (including Valid, to - check result). Move scope test to beginning, to immediately exclude - subprograms not declared immediately within the same scope as the type. - Improve several error messages. Add error checking for Constant_Indexing - functions. Append the function entity to the Aspect_Subprograms list of - the aspect specification. Move code for checking for nonconfirming - index aspects and for checking for illegal indexing aspects on full - views to Check_Indexing_Functions. - (Check_Indexing_Functions): Move procedure Illegal_Indexing from - here to within Check_Function_For_Indexing_Aspect. Add a comment - to the loop over interpretations about the checking being done as - legality rules rather than resolution rules, plus a note referencing - AI22-0084. Check for nonconfirming indexing aspects and illegal - indexing aspects on full views here rather than in Check_One_Function - (now named Check_Function_For_Indexing_Aspect). Remove function - Check_One_Function (moved to library level and renamed), and call - Check_Function_For_Indexing_Aspect instead. - (Check_Inherited_Indexing): Improve spec comment. Remove nested function - Same_Chars, and replace call Same_Chars with call to Sem_Util.Same_Name. - Replace call to Illegal_Indexing with call to Error_Msg_NE. - (Check_One_Function): Unnested from Check_Indexing_Functions, rename - to Check_Function_For_Indexing_Aspect, move body to library level, - and move declaration to Sem_Ch13 spec. - (Analyze_Attribute_Definition_Clause, case Attribute_Default_Iterator): - Improve error message related to tagged-type requirement. Suppress call - to Check_Iterator_Functions for attribute definition clauses associated - with inherited aspects. Remove error checking that is redundant with - checking done in Check_Iterator_Functions. - (Check_Aspect_At_Freeze_Point, case Attribute_Default_Iterator): Call - Check_Iterator_Functions (only if the aspect is not Comes_From_Source). - (Check_Iterator_Functions): Procedure unnested from - Analyze_Attribute_Definition_Clause. Add formals Typ and Expr. - Error messages corrected to say "aspect Default_Iterator" instead of - "aspect Iterator". - (Valid_Default_Iterator): Improve error message to say "must be - a local primitive or class-wide function" instead of "must be - a primitive function". - (Check_Primitive_Function): Unnested from Analyze_Attribute_Definition_Clause. - Add formal Ent. - (Rep_Item_Too_Late): Return False when an attribute_definition_clause - is not Comes_From_Source, since it was generated by the compiler (such - as for an inherited aspect). - (Resolve_Aspect_Aggregate): Capture implementation base type. - (Valid_Empty): Use implementation base types for result type comparison. - (Valid_Add_Named): Use impl base types for comparison of formal's type. - (Valid_Add_Unnamed): Use impl base types for comparison of formal's type. - (Valid_New_Indexed): Use impl base types for result type comparison. - (Validate_Literal_Aspect): Return immediately when aspect does not have - Comes_From_Source True (no point in validating inherited aspects). - * sem_res.adb (Has_Applicable_User_Defined_Literal): Remove Base_Type - comparison and always call Corresponding_Op_Of_Derived_Type for derived - types. Add "???" comment about issue with wrapper functions (and - indicate that it would be nice to eliminate the call to - Corresponding_Primitive_Op). - * sem_util.ads (Inherit_Nonoverridable_Aspects): New procedure. - (Corresponding_Op_Of_Derived_Type): Update spec comment to indicate - return of Ancestor_Op and name changed from Corresponding_Primitive_Op. - * sem_util.adb (Check_Inherited_Nonoverridable_Aspects): Fix name in - header comment. - (Corresponding_Op_Of_Derived_Type): Move declaration of Typ down with - other local variables. Remove Assert that doesn't apply in some cases. - Simply return Ancestor_Op when it isn't a primitive (it can be a - class-wide op). Function name changed from Corresponding_Primitive_Op. - (Find_Untagged_Type_Of): Add test of Is_Type (E) as a guard for checking - Direct_Primitive_Operations. Remove Assert (False), and return Empty - when the primitive is not found. - (Profile_Matches_Ancestor): Change comparisons to use implementation - base types of the operations' formal and result types. Add tests for - interface ancestors. Revise "???" comment. - (Is_Confirming): Simplify name-matching test to use the names associated - with the aspects rather than going to the N_Attribute_Definition_Clause - nodes (may facilitate elimination of those clauses at some point). - (Inherit_Nonoverridable_Aspects): New procedure to traverse the - aspects of a derived type's parent type and create inherited versions - of the parent type's nonoverridable aspects, identifying the appropriate - subprograms for each such inherited aspect. - (Inherit_Nonoverridable_Aspect): New procedure nested in - Inherit_Nonoverridable_Aspects to inherit individual nonoverridable - aspects. Identifies the corresponding subprogram(s) associated with - an inherited nonoverridable aspect. In the case of indexing aspects, - new eligible indexing functions of the type are also identified here, - and the entities of all of the identified subprograms are appended to - the aspect's Aspect_Subprograms Elist. Add a "???" comment about this. - * sinfo.ads: Add documentation for the new Aspect_Subprograms field. - -2025-01-03 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Insert_Conditional_Object_Declaration): Create the - Master_Node even if the declaration is turned into a renaming. - -2025-01-03 Piotr Trojanek <trojanek@adacore.com> - - * sem_ch3.adb (Array_Type_Declaration): Don't copy parent for an itype - created by an array component declaration. - -2025-01-03 Douglas B Rupp <rupp@adacore.com> - - * socket.c [__vxworks]: Change vxw_h_addr type to long from - int, and cast the conversion of char* to vxw_h_addr to avoid - warning/error. - -2025-01-03 Tonu Naks <naks@adacore.com> - - * adaint.c: change default behaviour of __gnat_locate_exec_on_path - * adaint.h: change prototype of __gnat_locate_exec_on_path - * libgnat/s-os_lib.adb: pass optional argument in Locate_Exec_On_Path - * libgnat/s-os_lib.ads: change spec of Locate_Exec_On_Path - * libgnat/s-trasym__dwarf.adb: update import of __gnat_locate_exec_on_path - -2025-01-03 Eric Botcazou <ebotcazou@adacore.com> - - * exp_ch4.adb (Expand_Allocator_Expression): Put back the call to - Remove_Side_Effects in the case of a function call, a class-wide - designated type and a regular storage pool. - -2025-01-03 Bob Duff <duff@adacore.com> - - * sem_ch6.adb (Analyze_Expression_Function): Mark the implicit - spec for an expression function as Comes_From_Source. - (Analyze_Null_Procedure): Minor cleanup. - * sem_warn.adb (Source_E1): New function to compute whether - to give warnings. In particular, return True for [in] out - parameters of expression functions. - -2025-01-03 Steve Baird <baird@adacore.com> - - * exp_aggr.adb (Check_Bounds): Remove calls that were setting the - Analyzed flag to False for two aggregate bound expressions. - -2025-01-03 Eric Botcazou <ebotcazou@adacore.com> - - * einfo.ads (Is_Independent): Document usage on Master_Node objects. - * exp_aggr.adb (In_Place_Assign_OK): Remove Parent_Kind variable. - (Convert_To_Assignments): Call Unconditional_Parent and remove the - restriction on the known size for the in-place expansion of the - aggregate in the context of an object declaration. - (Expand_Array_Aggregate): Remove Parent_Kind variable and call - Unconditional_Parent and Delay_Conditional_Expressions_Between - * exp_ch3.adb: Remove clauses for Exp_Dbug. - (Expand_N_Object_Declaration): Factor out the code rewriting the - declaration as a renaming in Rewrite_Object_Declaration_As_Renaming - and call the procedure. - * exp_ch4.adb (Insert_Conditional_Object_Declaration): Declare. - (Expand_N_Case_Expression): Delay expanding the expression if it is - in the context of an optimizable object declaration. If the parent - node is this object declaration, then replace it with a renaming of - the dereference of an access value designating an object initialized - with the dependent expression chosen by the condition. - (Expand_N_If_Expression): Likewise. - (Insert_Conditional_Object_Declaration): New procedure. - * exp_ch6.adb (Expand_Ctrl_Function_Call): Test the unconditional - parent in the case of an object declaration too. - * exp_ch7.adb (Build_Finalizer.Process_Declarations): Pass Strict to - Processing_Actions from the Is_Independent flag on a Master_Node. - * exp_util.ads (Rewrite_Object_Declaration_As_Renaming): Declare. - * exp_util.adb: Add clauses for Exp_Dbug. - (Rewrite_Object_Declaration_As_Renaming): New procedure extracted - from Expand_N_Object_Declaration. - * sem_ch3.adb (Analyze_Object_Declaration): Also leave the analysis - if the declaration has been replaced with a renaming in the case of - an initialization expression that is a conditional expression. - -2025-01-03 Eric Botcazou <ebotcazou@adacore.com> - - * checks.adb (Apply_Predicate_Check): Preserve Comes_From_Source. - * exp_ch4.adb (Expand_Allocator_Expression): Factor out common code - for the various cases. Also delay applying the 2nd predicate check. - In the default case, defer to Make_Build_In_Place_Call_In_Allocator - entirely in the build-in-place case. - * sem_ch4.adb (Analyze_Allocator): Do not give the warning or error - for a default-initialized allocator with No_Initialization. - -2025-01-03 Ronan Desplanques <desplanques@adacore.com> - - * lib-writ.adb (Write_ALI): Remove useless space. - -2025-01-03 Ronan Desplanques <desplanques@adacore.com> - - * lib-writ.adb (Write_ALI): Remove condition for writing P line - parameters. - * lib-writ.ads: Fix typos. Clarify comment. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * gnat_ugn.texi: Bump @copying's copyright year. - * gnat_rm.texi: Likewise. - -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/ada/ChangeLog-2025 b/gcc/ada/ChangeLog-2025 new file mode 100644 index 00000000000..e52303ba6a1 --- /dev/null +++ b/gcc/ada/ChangeLog-2025 @@ -0,0 +1,7814 @@ +2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gcc-interface/Make-lang.in (GNATBIND_FLAGS): Delete. + (GNAT_ADA_OBJS): Move g-byorma.o, g-htable.o, g-spchge.o, + g-speche.o and g-u3spch.o to STAGE1 list. + (GNATBIND_OBJS): Move g-byorma.o, g-hesora.o and g-htable.o + to STAGE1 list. + (ada/b_gnat1.adb): Do not pass GNATBIND_FLAGS to gnatbind. + (ada/b_gnatb.adb): Likewise. + (ADA_GENERATED_FILES): Add g-byorma.ad[sb], g-hesora.ad[sb], + g-htable.ad[sb], g-spchge.ad[sb], g-speche.ad[sb], g-u3spch.ad[sb] + and alphabetize. + * libgnat/g-byorma.ads: Add note to head comment. + * libgnat/g-hesora.ads: Likewise. + * libgnat/g-htable.ads: Likewise. + * libgnat/g-spchge.ads: Likewise. + * libgnat/g-speche.ads: Likewise. + * libgnat/g-u3spch.ads: Likewise. + +2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/15605 + * sem_ch8.adb (Analyze_Subprogram_Renaming): Give an error if the + name is also that of a formal parameter of the specification. + +2025-12-27 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/123306 + * sem_ch12.adb (Analyze_One_Association): Immediately freeze the + root type of mutably tagged types used as actual type parameters. + +2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/123088 + * sem_aggr.adb (Resolve_Record_Aggregate): Add more robust guard. + +2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/123302 + * sem_ch12.adb (Save_Global_Reference.Save_References_In_Aggregate): + Recurse on the scope of the type to find one that is visible, in the + case of an actual in a subprogram call with a local type. + +2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/123289 + * sem_ch13.adb (Resolve_Aspect_Aggregate.Resolve_Operation): Give + an error if the operation's name denotes more than one subprogram. + +2025-12-22 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123060 + * gcc-interface/utils.cc (update_pointer_to): Streamline. + +2025-12-22 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123060 + * gcc-interface/utils.cc (update_pointer_to): Preserve the alias + sets present on the old pointer and old reference, if any. + +2025-12-22 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123185 + * sem_ch4.adb (Analyze_Overloaded_Selected_Component): Go to the + root when the prefix has a class-wide type. + * sem_res.adb (Resolve_Selected_Component): Likewise. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * sem_attr.adb (Set_Bounds): Fix comment typo, transfered + -> transferred. + * sem_ch6.adb (Analyze_Expression_Function): Likewise. + * sysdep.c (__gnat_get_task_options): Fix comment typo, explicitely + -> explicitly. + +2025-12-15 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123138 + * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Override a + universal numeric type only if the prefix is not an aggregate. + +2025-12-15 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123060 + * gcc-interface/utils.cc (update_pointer_to): Synthesize a new + TYPE_CANONICAL for the old pointer type in the case where there + is no new pointer type. Likewise for references. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123096 + * exp_put_image.adb (Build_Record_Put_Image_Procedure): Call + Incomplete_Or_Partial_View with Partial_Only set to True. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123062 + * sem_ch12.adb (Analyze_Subprogram_Instantiation): Also propagate + the Convention and Is_Exported flag onto the anonymous actual. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123088 + * sem_aggr.adb (Resolve_Record_Aggregate): Add missing guard. + +2025-12-08 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/123037 + * rtinit.c [__MINGW32__]: Include <stdlib.h> and not <windows.h>. + * rtfinal.c [__MINGW32__]: Do not include <windows.h>. + +2025-12-07 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/115349 + * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Use the base + type as Accum_Type if the reducer is an operator from Standard and + the type is numeric. Use the type of the first operand for other + operators. Streamline the error message given for limited types. + +2025-12-06 Denis Mazzucato <mazzucato@adacore.com> + + * sem_attr.adb (Resolve_Attribute): Check if the reducer is a + procedure before giving the warning. + +2025-12-05 Javier Miranda <miranda@adacore.com> + + * einfo.ads (Has_Unsigned_Base_Range_Aspect): Update documentation. + (Has_Modular_Operations): New synthesized predicate. + (Has_Overflow_Operations): New synthesized predicate. + * einfo-utils.ads (Has_Modular_Operations): New function. + (Has_Overflow_Operations): New function. + * einfo-utils.adb (Is_Modular_Integer_Type): Undo previous patch. + (Is_Signed_Integer_Type): Undo previous patch. + (Has_Modular_Operations): New function. + (Has_Overflow_Operations): New function. + * checks.adb (Determine_Range): Replace selected occurrences of calls to + Is_Modular_Integer_Type by calls to Has_Modular_Operations, and calls to + Is_Signed_Integer_Type by calls to Has Overflow_Operations. + (Enable_Range_Check): Ditto. + (Insert_Valid_Check): Ditto. + * exp_aggr.adb (Others_Check): Ditto. + * exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Pred, + Attribute_Succ]): Ditto. + * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): Ditto. + (Size_In_Storage_Elements): Ditto. + (Expand_N_Op_Abs): Ditto. + (Expand_N_Op_Expon): Ditto. + (Expand_N_Op_Minus): Ditto. + (Expand_N_Op_Multiply): Ditto. + (Expand_N_Op_Subtract): Ditto. + * freeze.adb (Freeze_Entity): Ditto. + * sem_aggr.adb (Report_Null_Array_Constraint_Error): Ditto plus + report specific error for index with unsigned_base_range aspect. + * sem_attr.adb (Check_Modular_Integer_Type): Ditto. + (Analyze_Attribute [Attribute_Pred, Attribute_Succ, Attribute_ + Range_Length, Attribute_Small, Attribute_Reduce]): Ditto. + * sem_ch12.adb (Instantiate_Type): Ditto. + (Validate_Formal_Type_Default): Ditto. + * sem_ch13.adb (Valid_Empty): Ditto. + * sem_ch2.adb (Analyze_Integer_Literal): Ditto. + * sem_ch3.adb (Unsigned_Base_Range_Type_Declaration): Set attribute + Has_Unsigned_Base_Range_Aspect on the implicit base, and set Etype + of its first subtype E_Modular_Integer_Subtype. + * sem_ch4.adb (Analyze_Call): Ditto. + * sem_eval.adb (Check_Non_Static_Context_For_Overflow): Ditto. + (Eval_Arithmetic_Op): Ditto. + (Eval_Integer_Literal): Ditto. + (Eval_Logical_Op): Ditto. + (Eval_Op_Expon): Ditto. + (Eval_Op_Not): Ditto. + (Eval_Unary_Op): Ditto. + (Fold_Shift): Ditto. + (Test_Expression_Is_Foldable): Ditto. + * sem_intr.adb (Check_Shift): Ditto. + * sem_prag.adb (Analyze_Pragma [Pragma_Unsigned_Base_Range]): Add + assertion. + * sem_res.adb (Resolve_Logical_Op): Ditto. + (Resolve_Unary_Op): Ditto. + (Set_String_Literal_Subtype): Ditto. + * sem_type.adb (Covers): Ditto. + (Specific_Type): Ditto. + (Valid_Boolean_Arg): Ditto. + * sem_util.adb (Wrong_Type): Ditto + * style.adb (Check_Boolean_Operator): Ditto. + +2025-12-05 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_rm/representation_clauses_and_pragmas.rst: Improve table. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-12-05 Viljar Indus <indus@adacore.com> + + * sem_util.adb (Get_Cursor_Type): use the + specific type for classwide container checks. + +2025-12-05 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch12.adb (Remove_Parent): Only set the Is_Transient component + of the local scope stack entry. + +2025-12-05 Marc Poulhiès <poulhies@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst + (-gnato??): Remove redundant/confusing doc on floating-point + overflow. + * gnat_ugn.texi: Regenerate. + +2025-12-05 Tonu Naks <naks@adacore.com> + + * adaint.c: use the _tsopen macro when opening RO file + +2025-12-05 Denis Mazzucato <mazzucato@adacore.com> + + * sem_attr.adb + (Analyze_Attribute): Set the type of the attribute expression only when + not ambiguous (it will later be resolved correctly). Emit an error in + case the type is limited. + (Resolve_Attribute): Emit an error if the reducer has no entity. + (Get_Value_Subtype): Try to resolve the Value_Subtype of the aggregate + expression, and if it succeeds, set the candidate reducer subprogram. + (Is_Reducer_Subprogram): Check whether the selected candidate has a + proper reducer profile. + (Make_Array_Type): Return simple array type to resolve the array + aggregate against it. + (Resolve_Attribute): Reimplement the resolution of Reduce attribute, + including its prefix. + * sem_res.adb (Resolve_Declare_Expression): Save and restore variables + that may be hidden by the local declaration. Only setting the new + entities is problematic when dealing with copied trees where the ref is + lost (eg. when resolving array aggregates). + * exp_attr.adb (Expand_N_Attribute_Reference): Remove tricks to resolve + the reducer in case of faulty resolution as not needed anymore. + +2025-12-05 Iain Sandoe <iain@sandoe.co.uk> + + PR ada/115305 + * Makefile.rtl: Use s-oslock__darwin instead of the Posix version. + * libgnat/s-oslock__darwin.ads: New file. + +2025-12-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122960 + * gcc-interface/Makefile.in (powerpc64-suse-linux): Remove kludge. + +2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc-interface/lang.opt.urls: Regenerate. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.adb (Expand_Actuals): Do not create activation chain and + master for build-in-place calls here but... + (Make_Build_In_Place_Call_In_Allocator): Use Unqual_Conv. + (Make_Build_In_Place_Call_In_Anonymous_Context): ...here instead. + Call Make_Build_In_Place_Call_In_Object_Declaration directly. + (Make_Build_In_Place_Iface_Call_In_Anonymous_Context): ...and here + instead. Add missing rewriting of the call. + +2025-11-27 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_ugn/about_this_guide.rst: Minor fixes + * gnat_ugn.texi: Regenerate. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122574 + * doc/gnat_ugn/building_executable_programs_with_gnat.rst (-gnatwp): + Replace reference to -gnatN with -gnatn and adjust accordingly. + * inline.adb: Remove clauses for Exp_Tss. + (Has_Initialized_Type): Delete. + (Add_Inlined_Subprogram): Test that the Is_Inlined flag is still set + on the subprogram. + * usage.adb (Usage): Adjust description of -gnatwp. + * gnat_ugn.texi: Regenerate. + +2025-11-27 Denis Mazzucato <mazzucato@adacore.com> + + * sem_ch5.adb: Skip check for assignment that doesn't come from source. + +2025-11-27 Ronan Desplanques <desplanques@adacore.com> + + * exp_aggr.adb (Gen_Loop): Only preanalyze expressions we know won't + evaluated. + +2025-11-27 Tom Tromey <tromey@adacore.com> + + * repinfo.adb (Visit): New procedure. + (List_GCC_Expression): Rewrite. + * repinfo.ads (Visit): New generic procedure. + +2025-11-27 Ghjuvan Lacambre <lacambre@adacore.com> + + * sem_ch13.adb (Analyze_Code_Statement): Do not emit error + message when only checking relaxed semantics. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.adb (Build_Finalizer_Call): Delete. + (Build_Finalizer): Always insert the finalizer at the end of the + statement list in the non-package case. + (Expand_Cleanup_Actions): Attach the finalizer manually, if any. + * exp_smem.adb (Add_Shared_Var_Lock_Procs): Insert all the actions + directly in the transient scope. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statement): Merge the + eslif condition with the if condition for cleanup actions. + * sem_ch6.adb (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Get + rid of if statement whose condition is always true. + * sinfo.ads (Finally_Statements): Document their purpose. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Extended_Return_Statement): Add + Activation_Chain_Entity semantic field. + * exp_ch3.adb (Build_Master): Use Build_Master_{Entity,Renaming} in + all cases. + (Expand_N_Object_Declaration): Small tweak. + * exp_ch6.adb (Make_Build_In_Place_Iface_Call_In_Allocator): Use + Build_Master_{Entity,Renaming} to build the master. + * exp_ch7.adb (Expand_N_Package_Declaration): Do not guard the call + to Build_Task_Activation_Call for the sake of consistency. + * exp_ch9.ads (Build_Class_Wide_Master): Delete. + (Find_Master_Scope): Likewise. + (Build_Protected_Subprogram_Call_Cleanup): Move to... + (First_Protected_Operation): Move to... + (Mark_Construct_As_Task_Master): New procedure. + * exp_ch9.adb (Build_Protected_Subprogram_Call_Cleanup): ...here. + (First_Protected_Operation): ...here. + (Build_Activation_Chain_Entity): Streamline handling of extended + return statements. + (Build_Class_Wide_Master): Delete. + (Build_Master_Entity): Streamline handling of extended return + statements and call Mark_Construct_As_Task_Master on the context. + (Build_Task_Activation_Call): Assert that the owner is not an + extended return statement. + (Find_Master_Scope): Delete. + (Mark_Construct_As_Task_Master): New procedure. + * sem_ch3.adb (Access_Definition): Use Build_Master_{Entity,Renaming} + in all cases to build a master. + * sem_ch6.adb (Check_Anonymous_Return): Rename to... + (Check_Anonymous_Access_Return_With_Tasks): ...this. At the end, + call Mark_Construct_As_Task_Master on the parent node. + (Analyze_Subprogram_Body_Helper): Adjust to above renaming. + (Create_Extra_Formals): Do not set Has_Master_Entity here. + * sinfo.ads (Activation_Chain_Entity): Adjust description. + +2025-11-27 Bob Duff <duff@adacore.com> + + * sem_ch13.adb (Aspect_Annotate): Avoid disturbing the tree of the + aspect. + * vast.adb: Enable Check_Parent_Present. + * exp_ch6.adb (Validate_Subprogram_Calls): Minor reformatting. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Expand_N_Case_Expression): When not optimizing for a + specific context, call Make_Build_In_Place_Call_In_Anonymous_Context + on expressions of alternatives when they are calls to BIP functions. + (Expand_N_If_Expression): Likewise for the Then & Else expressions. + +2025-11-27 Bob Duff <duff@adacore.com> + + * frontend.adb: Move call to VAST from here... + * gnat1drv.adb: ...to here. + * vast.ads (VAST_If_Enabled): Rename main entry point of VAST from + VAST to VAST_If_Enabled. + * vast.adb: Miscellaneous improvements. Mostly debugging + improvements. Also enable Check_Error_Nodes. Also add checks: + Check_FE_Only, Check_Scope_Present, Check_Scope_Correct. + * debug.ads: Minor comment tweaks. The comment, "In the checks off + version of debug, the call to Set_Debug_Flag is always a null + operation." appears to be false, so is removed. + * debug.adb: Minor: Remove some code duplication. + * sinfo-utils.adb (nnd): Add comment warning about C vs. Ada + confusion. + +2025-11-27 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.ads (Needs_BIP_Task_Actuals): Adjust description. + * exp_ch6.adb (Expand_N_Extended_Return_Statement): Move activation + chain for every build-in-place function with task formal parameters + when the type of the return object might have tasks. + +2025-11-27 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-dwalin.ads (Display_Mode_Type): New enumerated type. + (Symbolic_Traceback): Use new type in profile. + * libgnat/s-dwalin.adb (Symbolic_Traceback): Use new type in profile + and adapt body. + * libgnat/s-trasym__dwarf.adb (Multi_Module_Symbolic_Traceback): Fix + wrong call in body of one overload. Use new type in profile. Adapt + body. + (Symbolic_Traceback, Symbolic_Traceback_No_Lock, + Module_Symbolic_Traceback): Use new type in profile and adapt body. + (Calling_Entity): Adapt body. + +2025-11-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/81106 + * gnatchop.adb (Gnatchop): If present in the source file, output + the BOM at the start of every compilation unit. + +2025-11-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/33994 + * gcc-interface/utils.cc (convert) <INTEGER_TYPE>: Call + int_const_convert if the expression is an integer constant. + +2025-11-21 Bob Duff <duff@adacore.com> + + * exp_ch5.adb (Expand_Formal_Container_Loop): + Preanalyze block with empty statements; then set + the statements later before doing Analyze of the + block. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Expand_Array_Aggregate): Remove obsolete call to + Establish_Transient_Scope for an allocator in a loop. + * exp_ch7.adb (Establish_Transient_Scope): Adjust description. + +2025-11-21 Piotr Trojanek <trojanek@adacore.com> + + * lib-xref.adb (Output_References): Put local array object on the heap. + +2025-11-21 Viljar Indus <indus@adacore.com> + + * erroutc.adb (Is_Redundant_Error_Message): Avoid non-serious errors + masking fatal errors. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.ads (BIP_Formal_Kind): Update description of some values. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Expand_N_Op_Eq): Use No instead of not Present. + (Optimize_Length_Comparison): Initialize Is_Zero and Comp variables. + (Safe_In_Place_Array_Op): Do not use local variable to pass data to + nested function Is_Safe_Operand. + +2025-11-21 Javier Miranda <miranda@adacore.com> + + * sem_ch6.adb (Create_Extra_Formals): Do not add extra formals to + anonymous access to subprogram types defined in the profile of + subprograms that have foreign convention. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch3.adb (Expand_N_Object_Declaration): Delete ancient comment. + * exp_ch6.adb (Expand_Call_Helper): Do not establish a transient + scope for build-in-place functions in anonymous contexts here... + (Make_Build_In_Place_Call_In_Anonymous_Context): ...but here instead. + * sem_attr.adb (Resolve_Attribute) <Attribute_Range>: Remove obsolete + code dealing with transient scopes. + * sem_res.adb (Resolve_Actuals): Likewise. + (Resolve_Call): Adjust comment on the strategy for transient scopes. + +2025-11-21 Bob Duff <duff@adacore.com> + + * exp_ch5.adb (Expand_Formal_Container_Loop): + Analyze Init_Decl in the correct scope. Remove patch-up + code that was needed because we were using the wrong scope. + * exp_ch7.adb (Process_Object_Declaration): + Remove code to unique-ify the name of Master_Node_Id; + no longer needed because of change to exp_ch5.adb. + * sem_warn.adb (Check_References): + Suppress warnings during preanalysis, because we don't + have complete information yet; otherwise, the new Preanalyze + call in exp_ch5.adb generates bogus warnings. + +2025-11-21 Steve Baird <baird@adacore.com> + + * libgnat/a-cobove.adb + (Append): Add an equivalent fast path for the case where tampering + checks are suppressed. + +2025-11-21 Viljar Indus <indus@adacore.com> + + * freeze.adb (Freeze_Profile): Improve -gnatwx message. + +2025-11-21 Eric Botcazou <ebotcazou@adacore.com> + + * repinfo.adb (List_Location): Do not output the final comma. + (List_Common_Type_Info): Adjust to above change. Do not output + "??" for an unknown alignment. + (List_Entities): Do not output generic types. + (List_Object_Info): Adjust to above change. + (List_Subprogram_Info): Likewise. + +2025-11-21 Viljar Indus <indus@adacore.com> + + * sem_ch4.adb (Analyze_Call): ensure we generate a reference to the + non limited view of the return type to avoid scenarios where + the with-ed unit is not considered referenced. + +2025-11-18 Denis Mazzucato <mazzucato@adacore.com> + + * gcc-interface/decl.cc + (is_cplusplus_method,gnat_to_gnu_param,gnat_to_gnu_subprog_type): + Adjust Is_Constructor/Is_CPP_Constructor after renaming. + +2025-11-18 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/34290 + * sem_ch4.adb (Try_Object_Operation.Complete_Object_Operation): Call + Preserve_Comes_From_Source to preserve the flag on nodes. Relocate + the Obj node consistently. Preserve the Comes_From_Source flag for + the case of an implicit 'Access reference and post the local errors + on the rewritten prefix consistently. + * sem_util.adb (Is_Aliased_View): Also return true for a generalized + reference to the result of a function call. + +2025-11-18 Javier Miranda <miranda@adacore.com> + + * exp_util.ads (Flag_Interface_Pointer_Displacement): New subprogram. + * exp_util.adb (Flag_Interface_Pointer_Displacement): Ditto. + * exp_attr.adb (Add_Implicit_Interface_Type_Conversion): Flag type + conversions internally added to displace the pointer to the object. + (Expand_N_Attribute_Reference): Ditto. + * exp_ch4.adb (Displace_Allocator_Pointer): Ditto. + * exp_ch6.adb (Expand_Simple_Function_Return): Ditto. + (Make_Build_In_Place_Call_In_Allocator): Ditto. + (Make_CPP_Constructor_Call_In_Allocator): Ditto. + * exp_disp.adb (Expand_Interface_Actuals): Ditto. + * exp_intr.adb (Expand_Dispatching_Constructor_Call): Ditto. + * sem_ch6.adb (Analyze_Function_Return): Ditto. + * sem_disp.adb (Propagate_Tag): Ditto. + * sem_res.adb (Resolve_Actuals): Ditto. + (Valid_Conversion): Rely on the new flag to handle the type conversion + as a conversion added to displace the pointer to the object. Factorize + code handling general and anonymous access types. + * sem_type.adb (Interface_Present_In_Ancestor): For concurrent types + add missing handling of class-wide types. Noticed working on this + issue. + * sinfo.ads (Is_Interface_Pointer_Displacement): Document this new flag. + * gen_il-fields.ads (Is_Interface_Pointer_Displacement): New flag. + * gen_il-gen-gen_nodes.adb (Is_Interface_Pointer_Displacement): New + flag on N_Type_Conversion nodes. + * gen_il-internals.adb (Image): Add Is_Interface_Pointer_Displacement + flag image. + +2025-11-18 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch12.adb (Analyze_Package_Instantiation): Streamline and move + code clearing Needs_Body after it is computed to ... + (Needs_Body_Instantiated): ...here. Chain if-then constructs. + +2025-11-18 Eric Botcazou <ebotcazou@adacore.com> + + * sem_type.adb (Last_Overloaded): Fix typo. + +2025-11-18 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/111433 + * sem_util.ads (Incomplete_Or_Partial_View): Add Partial_Only formal + parameter. + * sem_util.adb (Incomplete_Or_Partial_View): Likewise. Do not look + for an incomplete view if it is set to True. + * sem_ch6.adb (Check_Conformance.Null_Exclusions_Match): Pass True + for Partial_Only in the call to Incomplete_Or_Partial_View. + +2025-11-18 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm/obsolescent_features.rst: update PolyOrb reference + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-11-18 Denis Mazzucato <mazzucato@adacore.com> + + * par-ch4.adb (P_Simple_Expression): Improve diagnostic. + +2025-11-18 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Procedure_Call_Levels): New function for + implementing the check. + * ghost.ads (Check_Procedure_Call_Levels): Likewise. + * sem_ch6.adb (Analyze_Procedure_Call): Check the levels after + the call has been resolved and the previous ghost region has + been restored. + +2025-11-18 Denis Mazzucato <mazzucato@adacore.com> + + * sem_util.adb (Is_Constructor_Procedure): Replace by Is_Constructor. + * sem_util.ads: Likewise. + * sem_ch6.adb (Analyze_Direct_Attribute_Definition): Set Is_Constructor. + * einfo.ads: Use Is_Constructor for Ada constructors, and + Is_CPP_Constructor for CPP constructors. + * exp_ch6.adb: Likewise. + * exp_disp.adb: Likewise. + * freeze.adb: Likewise. + * gen_il-fields.ads: Likewise. + * gen_il-gen-gen_entities.adb: Likewise. + * gen_il-internals.adb: Likewise. + * par-ch6.adb: Likewise. + * sem_prag.adb: Likewise. + * treepr.adb: Likewise. + +2025-11-18 Steve Baird <baird@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference): Ensure that + Build_Record_Or_Elementary_Input_Function and + Build_Record_Or_Elementary_Output_Procedure are only called + from within an instance of Build_And_Insert_Type_Attr_Subp. + In particular, the results returned by those 2 functions should + not be passed directly to Insert_Action. This is needed to + ensure that the newly-built subprogram is inserted at the correct + point in the tree. + +2025-11-18 Bob Duff <duff@adacore.com> + + * exp_ch4.adb (Warn_On_Abstract_Equality_For_Component): + Add additional information in the record-component case. + +2025-11-18 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Valid_Ghost_Policy): Remove function. + (Ghost_Policy_In_Effect): Force the ghost policy to be always be + ignore inside ignored regions. + (Mark_And_Set_Ghost_Declaration): Likewise. + +2025-11-18 Steve Baird <baird@adacore.com> + + * exp_imgv.adb (Build_Enumeration_Image_Tables): If a + No_Dynamic_Sized_Objects restriction is in effect, then choose a large + value for Threshold so that no Lit_Hash function is generated. + +2025-11-18 Ronan Desplanques <desplanques@adacore.com> + + * libgnarl/s-taspri__mingw.ads (Suspension_Object): Remove. + (Private_Data): Revert unintentional removal. + +2025-11-18 Ronan Desplanques <desplanques@adacore.com> + + * libgnarl/a-sytaco.ads (Suspension_Object): Change components. + * libgnarl/a-sytaco.adb (Initialize, Finalize, Current_State, + Set_False, Set_True, Suspend_Until_True): New cross-platform version. + * libgnarl/s-taskin.ads (Task_States): New task state. + * libgnarl/s-tasini.adb (Locked_Abort_To_Level): Adapt to new state. + * libgnarl/s-taprop.ads (Is_Task_Context): New function Spec. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__dummy.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__linux.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__mingw.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__posix.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__qnx.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__rtems.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__solaris.adb (Is_Task_Context): New body. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taprop__vxworks.adb (Is_Task_Context): Remove spec. + (Initialize, Finalize, Current_State, Set_False, Set_True, + Suspend_Until_True): Remove. + * libgnarl/s-taspri__dummy.ads (Suspension_Object): Remove. + * libgnarl/s-taspri__lynxos.ads (Suspension_Object): Remove. + * libgnarl/s-taspri__mingw.ads (Suspension_Object): Remove. + * libgnarl/s-taspri__posix-noaltstack.ads (Suspension_Object): + Remove. + * libgnarl/s-taspri__posix.ads (Suspension_Object): Remove. + * libgnarl/s-taspri__solaris.ads (Suspension_Object): Remove. + * libgnarl/s-taspri__vxworks.ads (Suspension_Object): Remove. + +2025-11-18 Ronan Desplanques <desplanques@adacore.com> + + * libgnarl/a-sytaco.ads (Suspension_Object): Use Finalizable aspect. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch9.adb (Expand_N_Entry_Declaration): In the deferred case, + freeze immediately all the newly created entities. + +2025-11-13 Douglas B Rupp <rupp@adacore.com> + + * sigtramp-vxworks-target.h (REGNO_PC_OFFSET): Use 32 vice + 96 with llvm/clang. (REGNO_G_REG_OFFSET): Remove parens on + operand. (REGNO_GR): Likewise. + * sigtramp-vxworks.c (__gnat_sigtramp): Define a macro for + __attribute__ optimize, which is empty of not available. + * raise-gcc.c (db): Define ATTRIBUTE_PRINTF_2 if not defined. + +2025-11-13 Steve Baird <baird@adacore.com> + + * exp_attr.adb: Rewrite the spec and implementation of package + Cached_Attribute_Ops so that the saved value associated with a + type in a given map is not a single subprogram but instead a + set of subprograms. Thus, the correct generation of a second subprogram + for given type for use in some other context no longer causes the + first subprogram to be forgotten. This allows more reuse and, + in particular, allows reuse in the case where generating another + copy of the subprogram would result in a compilation failure. + Update Cached_Attribute_Ops clients correspondingly. + +2025-11-13 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Find_In_Enclosing_Context): Give up on declarations of + internal types. + +2025-11-13 Piotr Trojanek <trojanek@adacore.com> + + * treepr.adb (Print_End_Span): Print prefix, field name and line break. + +2025-11-13 Gary Dismukes <dismukes@adacore.com> + + * libgnat/a-cbdlli.ads: Add "limited" to partial view of reference types. + * libgnat/a-cbhama.ads: Likewise. + * libgnat/a-cbhase.ads: Likewise. + * libgnat/a-cbmutr.ads: Likewise. + * libgnat/a-cborma.ads: Likewise. + * libgnat/a-cborse.ads: Likewise. + * libgnat/a-cdlili.ads: Likewise. + * libgnat/a-cidlli.ads: Likewise. + * libgnat/a-cihama.ads: Likewise. + * libgnat/a-cihase.ads: Likewise. + * libgnat/a-cimutr.ads: Likewise. + * libgnat/a-ciorma.ads: Likewise. + * libgnat/a-ciormu.ads: Likewise. + * libgnat/a-ciorse.ads: Likewise. + * libgnat/a-cobove.ads: Likewise. + * libgnat/a-cohama.ads: Likewise. + * libgnat/a-cohase.ads: Likewise. + * libgnat/a-coinho.ads: Likewise. + * libgnat/a-coinho__shared.ads: Likewise. + * libgnat/a-coinve.ads: Likewise. + * libgnat/a-comutr.ads: Likewise. + * libgnat/a-convec.ads: Likewise. + * libgnat/a-coorma.ads: Likewise. + * libgnat/a-coormu.ads: Likewise. + * libgnat/a-coorse.ads: Likewise. + * sem_ch5.adb (Analyze_Assignment): Added code to resolve the target + object (LHS) as a complete context when there are target names ("@") + present in the expression of the assignment. Loop over interpretations, + removing any that have a limited type, and set the type (T1) to be the + type of the first nonlimited interpretation. Test for ambiguity by + calling Is_Ambiguous_Operand. Delay analysis of Rhs in the target-name + case. Replace existing test for generalized indexing with implicit + dereference in existing analysis code with test of Is_Limited_Type + along with calling Remove_Interp in the limited case. + * sem_res.adb (Is_Ambiguous_Operand): Condition the calls to + Report_Interpretation on Report_Errors being True. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/29463 + * sem_eval.adb (Fold_Uint): Use Universal_Integer as actual type + for a named number. + (Fold_Ureal): Likewise with Universal_Real. + * sem_res.adb (Resolve_Real_Literal): Test whether the literal is + a static expression instead of coming from source to give the error + prescribed by the RM 4.9(36/2) subclause. + +2025-11-13 Ronan Desplanques <desplanques@adacore.com> + + * libgnarl/s-taspri__posix.ads (Suspension_Object): Add some + documentation. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Alignment): Update description. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * sem_prag.adb (Analyze_Pragma) <Process_Suppress_Unsuppress>: For + Alignment_Check on a specific object with an address clause and no + alignment clause, toggle the Check_Address_Alignment flag present + on the address clause. + +2025-11-13 Marc Poulhiès <poulhies@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst: Update + the list of junk names. + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: + Likewise. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-11-13 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/g-crc32.ads (CRC32): Annotate as pure and always terminating. + * libgnat/s-crc32.ads (CRC32): Annotate as pure and always terminating. + +2025-11-13 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Get_Current_Value_Condition): Relax assertion about + rewritten ELSIF branch. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_rm/implementation_defined_attributes.rst + (Maximum_Alignment): Fix description. + * doc/gnat_rm/representation_clauses_and_pragmas.rst + (Alignment Clauses): Adjust accordingly. + * checks.adb (Apply_Address_Clause_Check): Remove incorrect test on + Maximum_Alignment. + * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Minor tweak + in comment. + * ttypes.ads (Maximum_Alignment): Fix description. + * gnat_rm.texi: Regenerate. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst (Pragma Suppress): + Remove mention of range checks in the entry for alignment checks. + * gnat_rm.texi: Regenerate. + +2025-11-13 Eric Botcazou <ebotcazou@adacore.com> + + * layout.adb (Set_Composite_Alignment): Fix typos and comments. + +2025-11-12 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122640 + * sem_ch3.adb (Analyze_Object_Declaration): Set Is_True_Constant + on entry for constants and Never_Set_In_Source in all cases. + If an initialization expression is present, set Has_Initial_Value + and Is_True_Constant on variables. + +2025-11-08 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/34374 + * sem_ch10.adb (Check_Private_Limited_Withed_Unit): Use a separate + variable for the private child unit, streamline the loop locating + the nearest private ancestor, fix a too early termination of the + loop traversing the ancestor of the current unit, and use the same + privacy test as Check_Private_Child_Unit. + +2025-11-07 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/83188 + * sem_eval.adb (Subtypes_Statically_Match): Deal with class-wide + subtypes whose class-wide types have discriminants. + +2025-11-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/113352 + * sem_ch4.adb (Diagnose_Call): Tweak error message. + * sem_ch8.adb (Find_Selected_Component): Remove bypass for calls + to procedures in the overloaded overloadable case. Factor out + the diagnostics code and invoke it uniformly in this case. + +2025-11-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/113350 + PR ada/113351 + * exp_ch2.adb (Expand_Renaming): Fix reference to Evaluate_Name. + * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Call + Evaluate_Name to evaluate the name. + * sem_ch8.adb (Analyze_Renamed_Entry): Minor tweaks. + (Analyze_Renamed_Family_Member): Likewise. + (Analyze_Renamed_Primitive_Operation): Likewise. + Fix thinko in the function checking profile conformance, save the + result of the resolution and make implicit dereferences explicit. + +2025-11-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/35793 + * sem_res.adb (Check_Discriminant_Use): In a constraint context, + check that the discriminant appears alone as a direct name in all + cases and give a consistent error message when it does not. + +2025-11-04 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch3.adb (Analyze_Subtype_Declaration) <Concurrent_Kind>: + Propagate the Uses_Lock_Free flag for protected types. + +2025-11-04 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/18453 + * sem_ch12.adb (Find_Actual_Type): Add Typ_Ref parameter and + perform a standard resolution on it in the fallback case. + Call Get_Instance_Of if the type is declared in a formal of + the child unit. + (Instantiate_Type.Validate_Access_Type_Instance): Adjust call + to Find_Actual_Type. + (Instantiate_Type.Validate_Array_Type_Instance): Likewise and + streamline the check for matching component subtypes. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/78175 + * sem_ch12.adb (Hide_Current_Scope): Deal with a transient scope + as current scope. + (Remove_Parent): Likewise. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/55324 + * par-ch3.adb (P_Type_Declaration): Give a better error message + for illegal "abstract" in a type derivation. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Get_Current_Value_Condition): Guard against orphaned + references in rewritten if-expressions. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_rm/representation_clauses_and_pragmas.rst (Address + Clauses): Adjust description of alignment checks. + * sem_ch13.adb (Address_Clause_Check_Record): Remove now unused + Alignment_Checks_Suppressed component. + (Alignment_Checks_Suppressed): Delete. + (Analyze_Attribute_Definition_Clause) <Attribute_Alignment>: Do not + consider the status of range checks to decide whether to generate an + alignment check. Always generate it if an alignment clause is also + given for the entity. + <Attribute_Alignment>: Generate an alignment check if an address + clause is also given for the entity. + (Register_Address_Clause_Check): Adjust for above removal. + (Validate_Address_Clauses): Test the Check_Address_Alignment flag + on the clause to decide whether to give the warning. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * checks.adb (Apply_Address_Clause_Check): Adjust self-reference in + the opening comment. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Find_In_Enclosing_Context): Refactor from handling of + IF statements. + (Get_Current_Value_Condition): Reuse IF code for WHILE statements. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Get_Current_Value_Condition): Rewrite to not rely on + Sloc and End_Span of an if statement. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Update_Semantic_Fields): Preserve tree structure when + copying scalar range of a discrete type. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * inline.adb (Process_Sloc): Remove. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/61127 + * sem_ch12.adb (Associations.Match_Positional): Remove the always + false condition that guards the error on a positional box. + +2025-11-03 Gary Dismukes <dismukes@adacore.com> + + * sem_disp.adb (Check_Dispatching_Call): Remove "elsif" that does error + checking for abstract tag-indeterminate calls (seems to be no longer + needed). + +2025-11-03 Marc Poulhiès <poulhies@adacore.com> + + * exp_ch7.adb (Fixup_Inner_Scopes): Adjust to handle N_Freeze_Entity nodes. + * exp_unst.adb (Get_Level): Assert when the function didn't find the + nested level (indicates that inner sub has scope pointing higher in + the stack) + +2025-11-03 Ronan Desplanques <desplanques@adacore.com> + + * fname.adb (Is_Predefined_File_Name): Tweak. + +2025-11-03 Bob Duff <duff@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Exception_Declaration): + Change Expression from Sm to Sy, to match other Expression fields. + * gen_il-gen.adb (Setter_Needs_Parent): + Expression no longer needs to be a special case. + (Check_For_Syntactic_Field_Mismatch): + Do not exempt Expression from the Sy/Sm mixing rule. + This was the last such case, so remove all the exemption code. + * gen_il-gen.ads: Update comments to match new code. + * sinfo.ads (N_Exception_Declaration): + Document the meaning of the Expression field, because it + doesn't follow from the RM syntax of exception_declaration. + * exp_ch11.adb: Minor comment fixes. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch13.adb (Analyze_Attribute_Definition_Clause) + <Attribute_Size>: Tweak wording of existing error message for the + size of all elementary objects. Move error handling for aliased + objects into the block for objects and give a similar error for + (nonaliased) floating-point objects. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_attr.adb (Rewrite_Attribute_Proc_Call)<Attribute_Put_Image>: + Fix call to Analyze. + +2025-11-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Resolve_Attribute): Remove rewriting of a slice + address expression. + +2025-11-03 Viljar Indus <indus@adacore.com> + + * libgnat/a-cbmutr.adb (Put_Image): Fix the condition and starting point + for printing the tree. + * libgnat/a-cimutr.adb (Put_Image): Likewise. + * libgnat/a-comutr.adb (Put_Image): Likewise. + +2025-11-03 Viljar Indus <indus@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Avoid disabling + the expander for ignored ghost regions if Codepeer_Mode is active. + * sem_ch7.adb (Analyze_Package_Body_Helper): Likewise. + * freeze.adb (Freeze_Entity): Avoid triggering special freezing + action for entities within ignored ghost regions in Codepeer_Mode. + +2025-11-03 Viljar Indus <indus@adacore.com> + + * ghost.adb (Is_Ok_Context): consider ghost prefix to always + be a valid ghost context. + +2025-11-03 Denis Mazzucato <mazzucato@adacore.com> + + * errout.adb (Set_Msg_Node): Support N_Attribute_Reference and + nodes that denotes direct attribute definitions. + * exp_dbug.ads: Description for the encoding of direct attribute + definitions as tick are hard to deal in entity names. + * erroutc.adb + (Set_Msg_Insertion_Name): Replace underscore between prefix and + attribute name in direct attribute definitions; at this point we + lost the semantic information of node type and we resort to match + the string name as described in exp_dbug.adb. + * exp_aggr.adb (Convert_To_Positional): Use Needs_Construction and + Has_Default_Constructor. + * exp_ch3.adb (Build_Record_Init_Proc) + (Expand_N_Object_Declaration): Likewise. + * exp_attr.adb (Expand_N_Attribute_Reference): Likewise. + * exp_ch4.adb (Expand_N_Allocator): Likewise. + * exp_ch6.adb + (Prepend_Constructor_Procedure_Prologue): Use + Is_Constructor_Procedure. + (Make_Parent_Constructor_Call): Use + Direct_Attribute_Definition_Name. + * gen_il-fields.ads: Remove Constructor_List and Constructor_Name. + * gen_il-gen-gen_entities.adb: Likewise. + * einfo.ads (Needs_Construction): Add description. + (Has_Delayed_Aspects): Adjust indentation. + * par-ch13.adb (P_Attribute_Designators): Parse attribute + designators. + (P_Representation_Clause): Use P_Attribute_Designators. + * par-ch6.adb (P_Subprogram): Support attribute designators in + subprogram name. + (Rewrites_Entity_If_Direct_Attribute_Def): Fix the specification + node in case of direct attribute definitions. + * par-endh.adb (Check_End, Same_Label): Likewise. + * par.adb (P_Attribute_Designators): Specification. + * sem_attr.adb (Analyze_Attribute): Error when using 'Constructor + outside procedure specification. + (Analyze_Attribute): Add error handling code. + * sem_ch3.adb (Analyze_Aspect_Specifications): Likewise. + * sem_ch6.adb (Analyze_Direct_Attribute_Definition): Handle direct + attribute definitions. Add error handling code for the + 'Construction attribute and set constructor flags when necessary. + (Analyze_Subprogram_Specification): Use + Analyze_Direct_Attribute_Definition. + * sem_util.adb (Direct_Attribute_Definition_Name): Name of + entities created for direct attribute definitions. We emit an + error if multiple attributes. + (Is_Direct_Attribute_Subp_Spec): Helper to check whether a + subprogram specification is a direct attribute definition. + (Is_Constructor_Procedure): Helper to check whether a subprogram + is a constructor procedure. + (Has_Default_Constructor): Check whether the default constructor + exists. + (Default_Constructor): Not used anymore. + (Parameter_Count): Likewise. + (Process_End_Label): Get_Attribute_Reference_Name_String encodes + also direct attribute definition end labels. + * sem_util.ads: Likewise. + * snames.ads-tmpl: Support for 'Constructor attribute. + * snames.adb-tmpl (Is_Direct_Attribute_Definition_Name): Helper to + check attributes allowed in direct attribute definitions. + * aspects.ads: Remove constructor aspect. + * sem_ch13.adb: Likewise. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122161 + * sem_ch12.adb: Improve the description of Check_Generic_Actuals, + Restore_Private_Views and Switch_View, and alphabetize them. + (Check_Generic_Actuals): Make actuals visible only if needed. + (Install_Formal_Packages): Pass exact Is_Formal_Box parameter and + remove call to Set_Is_Hidden. + (Instantiate_Formal_Package): Use Next_Non_Pragma consistently in + the loop computing the visibility of actuals. + (Analyze_Package_Instantiation): Use named second parameter in the + call to Restore_Private_Views. + (Analyze_Subprogram_Instantiation): Likewise. + (Instantiate_Package_Body): Likewise and for Check_Generic_Actuals. + (Instantiate_Subprogram_Body): Likewise. + (Restore_Env): Replace call to Restore_Private_Views. + (Restore_Private_Views): Remove default value for second parameter + and test of presence for first parameter. Consistently clear the + Is_Potentially_Use_Visible flag when setting the Is_Hidden flag. + Remove call to Set_Is_Hidden for a formal package of the enclosing + generic unit, if any. + +2025-11-03 Bob Duff <duff@adacore.com> + + * gen_il-gen.adb (N_Short_Circuit): + Make Actions syntactic. + (N_Case_Expression_Alternative): Likewise. + * gen_il-gen-gen_nodes.adb (Create_Type): + No longer exempt Actions from the syntactic/semantic ordering rule. + (Check_For_Syntactic_Field_Mismatch): + No longer exempt Actions from the syntactic/semantic mixing rule. + * sinfo.ads (N_Compound_Statement): + Add comment. + +2025-11-03 Marc Poulhiès <poulhies@adacore.com> + + * sem_aux.adb (Enclosing_Dynamic_Scope): Remove comment. + +2025-11-03 Bob Duff <duff@adacore.com> + + * einfo.ads: Remove unused fields. + * gen_il-fields.ads: Likewise. + * gen_il-gen-gen_entities.adb: Likewise. + * gen_il-gen-gen_nodes.adb: Likewise. + * sinfo.ads: Likewise. + * gen_il-gen.adb (Compile): Remove obsolete comment. + +2025-11-03 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-stratt__cheri.adb (W_80IEEE): New procedure. + +2025-11-03 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-stratt.adb (W_80IEEE): Make constant local. + +2025-11-03 Bob Duff <duff@adacore.com> + + * einfo.ads (Has_Pragma_Controlled): Remove. + (Is_Activation_Record): Document usage by llvm. + * gen_il-fields.ads (Opt_Field_Enum): + Remove Has_Pragma_Controlled. + * gen_il-gen-gen_entities.adb (Access_Kind): + Remove Has_Pragma_Controlled. + * sem_prag.adb: + Remove setting of Has_Pragma_Controlled. + * sinfo.ads (Corresponding_Entry_Body): + Document usage by codepeer. + +2025-11-03 Alexandre Oliva <oliva@adacore.com> + + * exp_ch3.adb (Expand_N_Object_Declaration): Insert ctor call + after representation clauses. + +2025-11-03 Bob Duff <duff@adacore.com> + + * atree.adb (Same_Node_To_Fetch_From): + Use Node_To_Fetch_From_If_Set, and remove handler. + * einfo-utils.adb (Root_Type_If_Set): + Return Empty if Base_Type_If_Set returns Empty. + Return Empty if we find Etype (T) = Empty. + (Underlying_Type): Use "Has_Non_Limited_View..." instead + of "Present (Non_Limited_View...)", because the latter raises + an exception when given the wrong Ekind. + +2025-11-03 Ronan Desplanques <desplanques@adacore.com> + + * gen_il-fields.ads (Is_IEEE_Extended_Precision): New flag. + * gen_il-gen-gen_entities.adb: Likewise. + * gen_il-internals.adb (Image): Likewise. + * treepr.adb (Image): Likewise. + * einfo.ads: Document new flag. + * cstand.adb (Copy_Float_Type, Register_Float_Type): Use new flag. + * libgnat/s-stratt.ads (W_80IEEE): New procedure. + * libgnat/s-stratt.adb (W_80IEEE): Likewise. + * exp_strm.adb (Get_Primitives): Select new procedure when + appropriate. + * rtsfind.ads: Register new runtime procedure. + * sem_ch3.adb (Build_Derived_Numeric_Type, + Analyze_Subtype_Declaration): Propagate new flag. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122160 + * sem_res.adb (Resolve_Op_Concat_Rest): Do not build the subtype of + the second operand again if it has already been built. + (Resolve_String_Literal): Do not defer the creation of the subtype + for the right operand of a concatenation whose left operand may be + the null string. + +2025-11-03 Gary Dismukes <dismukes@adacore.com> + + * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete + comment about not being able to allocate fixed-size controlled results + on the caller side, and replace another obsolete comment with a simpler + comment. Call Build_Allocate_Deallocate_Proc when the function doesn't + need a BIPalloc formal to ensure that function results with controlled + parts allocated on the caller side will be chained for finalization. + (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection + on the function's Entity_Id rather than the function call. + (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal + then it doesn't need a BIP collection either; return False in that case. + (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. + * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack + to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put + the other tests in a disjunction subsidiary to that. Improve preceding + comment. + +2025-11-03 Bob Duff <duff@adacore.com> + + * gen_il-gen-gen_nodes.adb: Rename Default_Expression to be + Expression. + * gen_il-gen.adb (Check_For_Syntactic_Field_Mismatch): Do not + exempt Default_Expression from the rule. + * par-ch12.adb (P_Formal_Object_Declarations): Use renamed setter. + * sem_ch12.adb (Default): Use renamed getter. + (Analyze_Formal_Object_Declaration): Likewise. + * sprint.adb (Sprint_Node_Actual): Use renamed getter. + * sinfo.ads: Fix comments. + +2025-11-03 Bob Duff <duff@adacore.com> + + * style.adb (Check_Xtra_Parens_Precedence): + Give warning based on Original_Node. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122161 + * sem_ch12.adb (Check_Generic_Actuals): Consistently set the + Is_Potentially_Use_Visible flag on actuals whenever the Is_Hidden + flag is cleared. + (Restore_Private_Views): Clear the Is_Potentially_Use_Visible flag + explicitly on the entities of an actual package. + +2025-11-03 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-trasym.ads (Calling_Entity): New function. + * libgnat/s-trasym.adb (Calling_Entity): Add dummy body. + * libgnat/s-trasym__dwarf.adb (Calling_Entity): New function. + (Symbolic_Traceback, Symbolic_Traceback_No_Lock, + Module_Symbolic_Traceback, Multi_Module_Symbolic_Traceback): Add + Subprg_Name_Only parameter and corresponding functionality. + (Symbolic_Traceback_No_Lock): Fix typo in documentation comment. + * libgnat/s-dwalin.ads (Symbolic_Traceback): Likewise. + * libgnat/s-dwalin.adb (Symbolic_Traceback): Likewise. + +2025-11-03 Bob Duff <duff@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Op): + Make Chars syntactic, and move it down into subclasses + N_Binary_Op and N_Unary_Op. + * gen_il-gen.adb (Create_Type): + Do not exempt Chars from the ordering rule. + (Exception_To_Inheritance_Rule): Exempt Chars from the + inheritance rule. + (Check_For_Syntactic_Field_Mismatch): + Do not exempt Chars from the syntactic mismatch rule. + This is the main point of this change. + (Put_Make_Bodies): The Nmake functions for types in N_Op + will now take a Chars parameter, which should always + default to No_Name. This will be overwritten by the + special-case Set_Chars call. Assert that it is in + fact defaulted. + * exp_ch4.adb (Expand_Array_Comparison): + Use the Nkind instead of the Chars, which seems cleaner. + Use a case instead of an elsif chain. + * sem_attr.adb (Proper_Op): Minor cleanup. + * sem_ch8.adb: Minor reformatting. + * sem_res.adb (Operator_Kind): Tighten up the result subtype. + +2025-11-03 Viljar Indus <indus@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference): Use the + First_Subtype when creating the procedure for stream + attributes. + (Get_Array_Stream_Item_Type): New method for calculating + the type for the Item argument for streaming methods. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + * locales.c (is_iso_639_3): New static function. + (c_get_language_code): Use it to validate the ISO-639-3 code + before returning it. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/58881 + * sem_ch3.adb (Build_Derived_Private_Type): Build the underlying + full view when the derivation occurs in the public part of the + scope of the parent. + (Build_Derived_Record_Type): Propagate Has_Unknown_Discriminants + in the same circumstances. + (Constrain_Discriminated_Type): Give a specific error message for + any type with the Has_Unknown_Discriminants flag. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/52319 + * sem_ch8.adb (End_Use_Package): Use the scope of the operator. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/15610 + * sem_type.adb (Collect_Interps): Apply the same visibility + criterion to expanded names as Find_Expanded_Name. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/54178 + * sem_ch12.adb (Instantiate_Object): Strip qualification to detect + aggregates used as actuals. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/16214 + * sem_ch8.adb (Find_Expanded_Name): Consolidate and streamline the + processing required for references to instances within themselves. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/48039 + * sem_ch12.adb (Analyze_Subprogram_Instantiation): Call + Remove_Homonym to remove the enclosing package from visibility. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Remove_Side_Effects): Use separately the Etype of + the expression to build new nodes and its Underlying_Type to drive + part of the processing. + +2025-10-28 Johannes Kliemann <kliemann@adacore.com> + + * adaint.c: Remove __gnat_enable_signals, __gnat_disable_signals + and related code for QNX. + * libgnarl/s-taprop__qnx.adb: Disable and enable + signals in Ada. + +2025-10-28 Alexandre Oliva <oliva@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Export_Import): Skip + Set_Is_Imported on E_Exception. + * sem_prag.adb (Process_Import_Or_Interface): Explain + why not Set_Is_Imported. + +2025-10-28 Denis Mazzucato <mazzucato@adacore.com> + + * sem_util.adb (Collect_Primitive_Operations): Avoid setting + Is_Primitive for noninherited and nonoverriding subprograms not + declared immediately within a package specification. + * sem_ch13.adb (Check_Nonoverridable_Aspect_Subprograms): Better + error posting to allow multiple errors on same type but different + aggregate subprogram. + +2025-10-28 Ronan Desplanques <desplanques@adacore.com> + + * table.ads (Clear, Is_Empty): New subprograms. + * table.adb (Clear, Is_Empty): Likewise. + (Init): Use new subprogram. + * atree.adb (Traverse_Func_With_Parent): Use new subprograms. + * fmap.adb (Empty_Tables): Use new subprogram. + * par_sco.adb (Process_Pending_Decisions): Likewise. + * sem_elab.adb (Check_Elab_Call): Likewise. + * sem_ch12.adb (Build_Local_Package, Analyze_Package_Instantiation, + Analyze_Subprogram_Instantiation): Likewise. + (Save_And_Reset): Use Table.Table.First. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122063 + * exp_fixd.adb (Build_Double_Divide_Code): Convert the result of the + multiply. + (Build_Multiply): Use base types of operands to size the operation. + (Build_Rem): Likewise. + (Build_Scaled_Divide_Code): Convert the result of the multiply. + +2025-10-28 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm/obsolescent_features.rst: typo + * gnat_rm.texi: Regenerate. + +2025-10-28 Javier Miranda <miranda@adacore.com> + + * aspects.adb (Get_Aspect_Id): Enable aspect Unsigned_Base_Range + using -gnatd.u + * debug.adb (Debug_Flag_Dot_U): Document this switch. + * einfo-utils.adb (Is_Modular_Integer_Type): Return True if + the entity is a modular integer type and its base type does + not have the attribute has_unsigned_base_range_aspect. + (Is_Signed_Integer_Type): Return True if the entity is a signed + integer type, or it is a modular integer type and its base type + has the attribute has_unsigned_base_range_aspect. + * einfo.ads (E_Modular_Integer_Type): Add documentation of + Has_Unsigned_Base_Range_Aspect. + * par-ch4.adb (Scan_Apostrophe): Enable attribute Unsigned_Base_Range + using -gnatd.u + * sem_ch13.adb (Analyze_One_Aspect): Check general language + restrictions on aspect Unsigned_Base_Range. For Unsigned_Base_Range + aspect, do not delay the generation of the pragma becase we need + to process it before any type or subtype derivation is analyzed. + * sem_ch3.adb (Build_Scalar_Bound): Disable code analyzing the + bound with the base type of the parent type because, for unsigned + base range types, their base type is a modular type but their + type is a signed integer type. + * sem_prag.adb (Analyze_Pragma): Enable pragma Unsigned_Base_Range + using -gnatd.u. Check more errors on Unsigned_Base_Range pragma, + and create the new base type only when required. + +2025-10-28 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch12.adb (Build_Local_Package) + (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): + Fix Set_Last calls. + (Set_Instance_Of): Use Table.Table.Append. + (Save_And_Reset): Remove useless call. Remove defensive code. + (Restore): Remove incorrect Set_Last call and adapt to + Set_Instance_Of change. + +2025-10-28 Denis Mazzucato <mazzucato@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Add enclosing quotation when the + invalid switch ends with a space. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/59234 + * sem_ch12.adb (Analyze_Formal_Package_Declaration): Mark the + special name built for the formal in the parent of a child unit + as internal. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/34511 + * sem_ch12.adb (Analyze_Associations): Add Parent_Installed formal + parameter and pass it in call to Analyze_One_Association. + (Analyze_One_Association): Add Parent_Installed formal parameter + and pass it in call to Instantiate_Formal_Subprogram. + (Analyze_Formal_Package_Declaration): Pass Parent_Installed in call + to Analyze_Associations. + (Analyze_Package_Instantiation): Likewise. + (Analyze_Subprogram_Instantiation): Likewise. + (Instantiate_Formal_Subprogram): Add Parent_Installed formal + parameter and prune references to the parent unit(s) only if + it is true. + +2025-10-27 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/29958 + * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Deal with + formal types specially. + +2025-10-27 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/25988 + * sem_ch12.adb (Save_Global_References.Reset_Entity): Also call + Save_Global_Defaults for instances with an expanded name. + (Save_Global_References.Save_References): Minor code cleanup. + +2025-10-27 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/15800 + * freeze.adb (Freeze_Entity.Freeze_Record_Type): Small cleanup + in code and comments. + * gcc-interface/utils.cc (create_field_decl): Assert that the type + of the field is frozen at this point. + +2025-10-26 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/13370 + * sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Set the + Has_Delayed_Freeze flag if the argument is not a literal. + +2025-10-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/80033 + * gcc-interface/Makefile.in (force): Restore. + +2025-10-24 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/80033 + * gcc-interface/Makefile.in (deftarg.o): Delete. + (init-vxsim.o): Likewise. + (force): Likewise. + +2025-10-24 Mivirl <octoberstargazer7405@mivirl.dev> + + PR ada/122367 + * rtinit.c (__gnat_runtime_initialize) [__MINGW32__]: Fix detection + of quoted arguments. + +2025-10-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118782 + * styleg.adb (Is_Box_Comment): Also stop the loop at EOF. + +2025-10-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/113516 + * s-oscons-tmplt.c [_WIN32]: Undefine POLLPRI before redefining it. + +2025-10-24 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/98879 + * terminals.c (__gnat_setup_child_communication) [_WIN32]: Add else + blocks in the processing of the data returned by ReadFile. + +2025-10-24 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/81087 + * gnatlink.adb (Is_Prefix): Move around, streamline and return false + when the prefix is not strict. + (Gnatlink): Fix other instances of incorrect lower bound assumption. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/102078 + * affinity.c (__gnat_set_affinity_mask): Add U qualifier. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/32318 + * libgnat/g-catiio.adb (Image_Helper) <'c'>: Fix comment. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/68179 + * exp_ch3.adb (Expand_Freeze_Array_Type): Build an initialization + procedure for a type derived from String declared with the aspect + Default_Aspect_Component_Value. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/52319 + * sem_ch7.adb (Uninstall_Declarations): Use direct test on Nkind + to spot operators. + * sem_ch8.adb (End_Use_Package): Also test the Etype of operators + to spot those which are primitive operators of use-visible types. + +2025-10-20 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/87777 + * gnatchop.adb: Add with clause for Osint. + (Locate_Executable): Delete. + (Gnatchop): Use Osint.Program_Name and Locate_Exec_On_Path instead + of Locate_Executable to locate GCC's driver executable. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/107536 + * exp_ch2.adb (Expand_Renaming): Mark the entity as referenced. + +2025-10-17 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/122295 + * sem_ch12.adb (Analyze_Package_Instantiation): Force Style_Check + to False only after possibly installing the parent. + * aspects.adb (UAD_Pragma_Map): Fix style violation. + * inline.adb (To_Pending_Instantiations): Likewise. + * lib.ads (Unit_Names): Likewise. + * repinfo.adb (Relevant_Entities): Likewise. + * sem_ch7.adb (Subprogram_Table): Likewise. + (Traversed_Table): Likewise. + * sem_util.adb (Interval_Sorting): Likewise. + +2025-10-07 Eric Botcazou <ebotcazou@adacore.com> + + Revert: + 2025-10-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118343 + * Makefile.rtl (LLVM_BUILD): Delete. + +2025-10-06 Marc Poulhiès <poulhies@adacore.com> + Éric Botcazou <botcazou@adacore.com> + + * gcc-interface/decl.cc (get_extended_unconstrained_array): Handle + array subtype. + +2025-10-06 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/utils.cc (convert): Also extract the _Parent field + to implement upcasting in the case where only the sizes match. + +2025-10-06 Marc Poulhiès <poulhies@adacore.com> + + * gcc-interface/trans.cc (Attribute_to_gnu)<Attr_Pool_Address>: Handle + extended access. + +2025-10-06 Ronan Desplanques <desplanques@adacore.com> + + * fmap.adb (File_Mapping, Path_Mapping): Fix instantiations. + (Add_To_File_Map): Use Table.Table.Append. + +2025-10-06 Ronan Desplanques <desplanques@adacore.com> + + * fmap.ads (Add_Forbidden_File_Name): Remove obsolete code. + * fmap.adb (Forbidden_Names, Add_Forbidden_File_Name, + Mapped_Path_Name, Reset_Tables): Remove obsolete code. + +2025-10-06 Tonu Naks <naks@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: refine + description of -gnatwr + * gnat_ugn.texi: Regenerate. + +2025-10-05 Franck Behaghel <franckbehaghel_gcc@protonmail.com> + + PR ada/110314 + * sem_ch4.adb (Analyze_Allocator): Add call to New_Copy_Tree. + +2025-10-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/112446 + * usage.adb (Usage): Add 'z' to the list of 'g' style. + +2025-10-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118343 + * Makefile.rtl (LLVM_BUILD): Delete. + +2025-10-04 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/64869 + * sem_ch7.adb (Install_Private_Declarations): Also propagate the + Current_Use_Clause from partial to full view. + (Uninstall_Declarations): Extend implementation of RM 8.4(8.1/3) + subclause to all primitive subprograms. + +2025-09-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/117517 + * sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Try to + resolve the reducer first. Fix casing of error message. + +2025-09-29 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm/implementation_advice.rst: PolyORB + * doc/gnat_rm/implementation_defined_characteristics.rst: PolyORB + * doc/gnat_rm/implementation_defined_pragmas.rst: ASIS + * doc/gnat_rm/obsolescent_features.rst: PolyORB + * doc/gnat_rm/specialized_needs_annexes.rst: PolyORB + * doc/gnat_rm/the_gnat_library.rst: PolyORB + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: ASIS + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-29 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Pre_Post_Condition): Handle contracts on + generic formal subprograms like on declarations of access-to-subprogram + types. + +2025-09-29 Piotr Trojanek <trojanek@adacore.com> + + * exp_util.adb (Attribute_Constrained_Static_Value): Special case + stand-alone objects for GNATprove. + +2025-09-29 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Full_View): Fix error message. + +2025-09-29 Javier Miranda <miranda@adacore.com> + + * aspects.adb (Get_Aspect_Id): Return No_Aspect for Unsigned_Base_Range + name. + * sem_prag.adb (Analyze_Pragma): Disable pragma Unsigned_Base_Range. + * par-ch4.adb (Scan_Apostrophe): Disable attribute Unsigned_Base_Range. + * doc/gnat_rm/gnat_language_extensions.rst: Remove documentation + of aspect unsigned base range. + * gnat_rm.texi: Regenerate. + +2025-09-29 Ghjuvan Lacambre <lacambre@adacore.com> + + * exp_ch6.adb (Validate_Subprogram_Calls): Do not Check_Calls in CodePeer_Mode. + (Check_Calls): Remove CodePeer_Mode special case. + +2025-09-29 Viljar Indus <indus@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst: update + rules for pragmas affected by assertion levels. + * gnat_rm.texi: Regenerate. + +2025-09-29 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Procedure_Call_Policies): Update the check + between the levels of the argument and the call. + +2025-09-23 Bob Duff <duff@adacore.com> + + * exp_ch6.adb (Prepend_Constructor_Procedure_Prologue): + Push/Pop the procedure scope, so that temps created herein + get the right Scope. + +2025-09-23 Jose Ruiz <ruiz@adacore.com> + + * libgnarl/s-stusta.adb (Report_Impl): Export a copy of + the current stack usage while holding the runtime lock. + (Report_For_Task): Do not compute stack usage for a task + that has not yet initialized its stack with the expected + pattern. + (Report_For_Task): The Stack_Analyzer object for the + environment task is not part of its ATCB. For the rest of + the tasks wait until we have initialized the stack pattern + before computing stack usage. + (Report_All_Tasks, Get_All_Tasks_Usage, + Get_Current_Task_Usage): Adapt to the new interface from + Report_Impl. Take into account that Result_Array can be + null. When we don't store stack results for a task we + need to compute it when requested. + (Print): Handle the case when we don't know the stack + usage to be reported. + * libgnat/s-stausa.adb (Initialize): For the environment + task, approximate the stack origin with the topmost + stack address that is known. + * libgnat/s-stausa.ads: Clarify comments. + +2025-09-23 Denis Mazzucato <mazzucato@adacore.com> + + * sem_util.adb (Ultimate_Prefix): Clean-up the loop condition by using + Has_prefix instead of an explicit list of node kinds. + +2025-09-23 Denis Mazzucato <mazzucato@adacore.com> + + * sem_ch10.adb (Install_Siblings): Fix condition to emit warning. + +2025-09-23 Viljar Indus <indus@adacore.com> + + * sem_case.adb (Is_Case_Choice_Pattern): Return False for allocators. + +2025-09-23 Douglas B Rupp <rupp@adacore.com> + + * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Linker_Options): + Remove pragma for RTP specs. + * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise. + +2025-09-23 Gary Dismukes <dismukes@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Add doc + for addition of -gnateG options b, c, and e. + * doc/gnat_ugn/the_gnat_compilation_model.rst: Add doc for "-e" optionn + on gnatprep and integrated preprocessing. Add doc for addition of + -gnateG options b, c, and e. + * gprep.adb (Scan_Command_Line): Add 'e' to the list of allowed switch + letters in the string passed to GNAT.Command_Line.Getopt. Set the flag + Opt.Empty_Comment_Deleted_Lines to True when the "-e" switch is found. + (Usage): Output a switch description for the "-e" switch. + * opt.ads: Add new flag variable Empty_Comment_Deleted_Lines. Add + "GNAT" to the "GNATPREP" comment line for Comment_Deleted_Lines. + * prep.adb (Output_Line): Add handling for Empty_Comment_Deleted_Lines, + outputting comment lines consisting of "--!" for lines that are removed + in the preprocessed source file when Empty_Comment_Deleted_Lines is True. + * prepcomp.adb (Preproc_Data): Add Empty_Comments component (defaulting + to False). + (No_Preproc_Data): Add association for Empty_Comments component. + (Parse_Preprocessing_Data_File): Add handling for new switch -e. + (Prepare_To_Preprocess): Add logic for setting the new option + Empty_Comment_Deleted_Lines (and making it the default for + integrated preprocessing in the absence of other switches). + * switch-c.adb (Scan_Front_End_Switches): Add support adding a single + character 'b', 'c', 'e' to the "-gnateG" switch, to select any of the + three options for replacing deleted lines in preprocessing output file. + * usage.adb: Update usage info for -gnateG, to reflect the option of + appending b, c, or e to the switch. + * gnat_ugn.texi: Regenerate. + +2025-09-23 Piotr Trojanek <trojanek@adacore.com> + + * sprint.adb (Sprint_Node_Actual): Print finally statements, if + present. + +2025-09-23 Javier Miranda <miranda@adacore.com> + + * sem_util.adb (Is_Partially_Initialized_Type): Return False + for record types with no components. + +2025-09-23 Steve Baird <baird@adacore.com> + + * doc/gnat_rm/implementation_defined_aspects.rst: Document the + Extended_Access aspect. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-22 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/121968 + * sem_ch12.adb (Associations.Find_Assoc): Add guard for clauses. + * sem_dim.adb (Analyze_Dimension_Array_Aggregate): Add test for + N_Iterated_Component_Association nodes. + +2025-09-19 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/gigi.h (create_var_decl): Add LINKONCE_FLAG boolean + parameter. + (create_subprog_decl): Likewise. + * gcc-interface/decl.cc (gnat_to_gnu_entity): Adjust calls to + create_var_decl and create_subprog_decl. + (elaborate_expression_1): Likewise. + * gcc-interface/trans.cc (gigi): Likewise. + (build_raise_check): Likewise. + (Subprogram_Body_to_gnu): Likewise. + (create_temporary): Likewise. + (Exception_Handler_to_gnu): Likewise. + (Compilation_Unit_to_gnu): Likewise. + (gnat_to_gnu): Likewise. + (use_alias_for_thunk_p): Return false for a one-only target. + * gcc-interface/utils.cc (maybe_pad_type): Adjust call to + create_var_decl. + (create_var_decl): Add LINKONCE_FLAG boolean parameter. + (create_subprog_decl): Likewise. + +2025-09-19 Marc Poulhiès <poulhies@adacore.com> + + * gcc-interface/ada-tree.h (TYPE_EXTENDED_POINTER_P): New. + (TYPE_IS_EXTENDED_POINTER_P): New. + (TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. + (SET_TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. + (TYPE_DUMMY_EXT_POINTER_TO): New. + (SET_TYPE_DUMMY_EXT_POINTER_TO): New. + * gcc-interface/decl.cc (get_extended_unconstrained_array): New. + (gnat_to_gnu_entity): Handle extended access type. + (get_unpadded_extended_type): New. + (gnat_to_gnu_component_type): Handle extended access type. + (build_template_type): New. + (gnat_to_gnu_field): Handle extended access type. + (validate_size): Likewise. + (set_rm_size): Likewise. + (copy_and_substitute_in_layout): Likewise. + (rm_size): Likewise. + * gcc-interface/gigi.h (get_unpadded_extended_type): New. + (build_template_type): New. + (build_dummy_unc_pointer_types_ext): New. + (finish_extended_pointer_type): New. + (build_unc_object_type_from_ptr): Rename first parameter. + * gcc-interface/misc.cc (gnat_print_type): Handle extended access type. + * gcc-interface/trans.cc (Identifier_to_gnu): Likewise. + (Attribute_to_gnu): Likewise. + (gnat_to_gnu): Likewise. + * gcc-interface/utils.cc (convert_to_fat_pointer): Assert if converting an + extended pointer. + (build_dummy_unc_pointer_types_ext): New. + (finish_extended_pointer_type): New. + (finish_record_type): Handle extended access type. + (build_unc_object_type_from_ptr): Likewise. + (convert_to_extended_pointer): New. + (convert): Handle extended access type. + (gnat_pushdecl): Likewise. + (maybe_pad_type): Likewise. + * gcc-interface/utils2.cc (build_unary_op): Likewise. + (build_binary_op): Likewise. + (build_allocator): Likewise. + (gnat_save_expr): Likewise. + (gnat_protect_expr): Likewise. + (gnat_stabilize_reference_1): Likewise. + +2025-09-19 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch4.adb (Analyze_Selected_Component): Bail out if the prefix + has Void_Type. + +2025-09-19 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch4.adb (Analyze_User_Defined_Binary_Op): Remove declare block. + +2025-09-19 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst (Structural Generic + Instantiation): New entry + * einfo.ads (Is_Link_Once): New flag defined in entities. + * sinfo.ads (Is_Structural): New flag defined in instantiations. + * gen_il-fields.ads (Opt_Field_Enum): Add Is_Link_Once and + Is_Structural. + * gen_il-gen-gen_entities.adb (Entity_Kind): Add Is_Link_Once + semantic flag. + * gen_il-gen-gen_nodes.adb (N_Generic_Instantiation): Move up + Parent_Spec field and add Is_Structural semantic flag. + * frontend.adb: Add with clause for Sem_Ch12. + (Frontend): After analysis is complete and bodies are instantiated, + call Sem_Ch12.Mark_Link_Once on the declarations of the main unit. + * par.adb (P_Qualified_Simple_Name): Delete. + (P_Qualified_Simple_Name_Resync): Likewise + (P_Exception_Name): New function declaration. + (P_Label_Name): Likewise. + (P_Loop_Name): Likewise. + (P_Generic_Unit_Name): Likewise. + (P_Library_Unit_Name): Likewise. + (P_Package_Name): Likewise. + (P_Parent_Unit_Name): Likewise. + (P_Subtype_Name): Likewise. + (P_Subtype_Name_Resync): Likewise. + * par-ch3.adb (P_Subtype_Mark_Resync): Replace call to + P_Qualified_Simple_Name_Resync by P_Subtype_Name_Resync. + (P_Identifier_Declarations): Replace call to + P_Qualified_Simple_Name_Resync by P_Exception_Name. + (P_Derived_Type_Def_Or_Private_Ext_Decl): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Interface_Type_Definition): Replace calls to + P_Qualified_Simple_Name by P_Subtype_Name. + * par-ch4.adb (P_Reduction_Attribute_Reference): Move around and + change name of parameter. + (P_Name): Document new grammar rule and make a couple of tweaks. + (P_Exception_Name): New function. + (P_Label_Name): Likewise. + (P_Loop_Name): Likewise. + (P_Generic_Unit_Name): Likewise. + (P_Library_Unit_Name): Likewise. + (P_Package_Name): Likewise. + (P_Parent_Unit_Name): Likewise. + (P_Subtype_Name): Likewise. + (P_Subtype_Name_Resync): Likewise. + (P_Qualified_Simple_Name): Rename into... + (P_Simple_Name): ...this. + (P_Qualified_Simple_Name_Resync): Rename into... + (P_Simple_Name_Resync): ...this. Accept left parenthesis and + dot as name extensions. + (P_Allocator): Replace call to P_Qualified_Simple_Name_Resync + by P_Subtype_Name_Resync. + * par-ch5.adb (P_Goto_Statement): Replace call to + P_Qualified_Simple_Name by P_Label_Name. + (Parse_Loop_Flow_Statement): Replace call to + P_Qualified_Simple_Name by P_Loop_Name. + * par-ch6.adb (P_Subprogram): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + * par-ch7.adb (P_Package): Replace calls to + P_Qualified_Simple_Name by P_Package_Name and P_Generic_Unit_Name. + * par-ch8.adb (P_Use_Package_Clause): Replace calls to + P_Qualified_Simple_Name by P_Package_Name. + * par-ch9.adb (P_Task): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Protected): Likewise. + * par-ch10.adb (P_Context_Clause): Replace call to + P_Qualified_Simple_Name by P_Library_Unit_Name. + (P_Subunit): Replace call to P_Qualified_Simple_Name by + P_Parent_Unit_Name. + * par-ch12.adb (P_Generic): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + (P_Formal_Derived_Type_Definition): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Formal_Package_Declaration): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + * sem_ch4.adb: Add with and use clauses for Sem_Ch12. + (Analyze_Call): Accept implicit instantiations with -gnatX0. + (Analyze_Indexed_Component_Form): Likewise. + * sem_ch8.adb (Analyze_Use_Package): Add guard before inserting + a with clause automatically when there is a use clause. + (Check_In_Previous_With_Clause): Retrieve original names. + (Check_Library_Unit_Renaming): Deal with structural instances. + (End_Use_Type): Minor tweak. + * sem_ch10.adb (Analyze_With_Clause): Remove useless test and + call Defining_Entity_Of_Instance. + * sem_ch12.ads (Build_Structural_Instantiation): New function. + (Mark_Link_Once): New procedure. + * sem_ch12.adb: Add with and use clauses for Exp_Dbug. + (Analyze_Associations): Add support for structural instantiations. + (Analyze_Package_Instantiation): Likewise. + (Analyze_Subprogram_Instantiation): Likewise. + (Analyze_Structural_Associations): New procedure. + (Need_Subprogram_Instance_Body): Return True for instantiation is + in the auxiliary declarations of the main unit. + (Build_Structural_Instantiation): New function. + (Mark_Link_Once): New procedure. + * sem_util.ads (Add_Local_Declaration): New procedure. + (Defining_Entity_Of_Instance): New function. + * sem_util.adb (Add_Local_Declaration): New procedure. + (Defining_Entity_Of_Instance): New function. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-19 Ronan Desplanques <desplanques@adacore.com> + + * aspects.ads: Fix comment. + +2025-09-19 Ronan Desplanques <desplanques@adacore.com> + + * aspects.ads: Remove comment. + +2025-09-19 Marc Poulhiès <poulhies@adacore.com> + + * libgnat/s-putima.ads (Ext_Access_Pointer): New. + (Put_Image_Extended_Access_Pointer): New. + * libgnat/s-putima.adb (Ext_Acc_Instance): New. + (Put_Image_Extended_Access_Pointer): New. + * rtsfind.ads (RE_Id, RE_Unit_Table): Set value for + RE_Put_Image_Extended_Access_Pointer. + * exp_put_image.adb (Build_Elementary_Put_Image_Call): Handle extended + access. + +2025-09-19 Marc Poulhiès <poulhies@adacore.com> + + * fe.h (Is_Extended_Access_Type): Add C bindings. + * sem_util.ads (Is_Extended_Access_Type): Add comment that any + change to the function must take care of the C binding. + +2025-09-19 Marc Poulhiès <poulhies@adacore.com> + + * layout.adb (Layout_Type): Adjust comment and code extended + accesses. + +2025-09-19 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Add_Tag): Remove superfluous statements. + +2025-09-19 Steve Baird <baird@adacore.com> + + * exp_attr.adb (Interunit_Ref_OK): Treat a subunit like a body. + (Build_And_Insert_Type_Attr_Subp): When climbing up the + tree, go from an N_Subunit node to its stub (instead of to the + subunit's N_Compilation_Unit node). + +2025-09-19 Gary Dismukes <dismukes@adacore.com> + + * sem_attr.adb (Eval_Attribute): In the case of a VADS-specific + size attribute, only fold to the object size when the Esize field + is known. + +2025-09-16 Ronan Desplanques <desplanques@adacore.com> + + * exp_strm.ads (Get_Primitives): New function. + * exp_strm.adb (Get_Primitives): Likewise. + (Build_Elementary_Input_Call, Build_Elementary_Write_Call): use + Get_Primitives. + (Has_Stream_Standard_Rep): Add formal parameter and rename to... + (Is_Stream_Standard_Rep): New function. + * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Fix error + emission. + +2025-09-16 Gary Dismukes <dismukes@adacore.com> + + Revert: + 2025-09-15 Gary Dismukes <dismukes@adacore.com> + + * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete + comment about not being able to allocate fixed-size controlled results + on the caller side, and replace another obsolete comment with a simpler + comment. Call Build_Allocate_Deallocate_Proc when the function doesn't + need a BIPalloc formal to ensure that function results with controlled + parts allocated on the caller side will be chained for finalization. + (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection + on the function's Entity_Id rather than the function call. + (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal + then it doesn't need a BIP collection either; return False in that case. + (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. + * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack + to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put + the other tests in a disjunction subsidiary to that. Improve preceding + comment. + +2025-09-16 Iain Sandoe <iain@sandoe.co.uk> + + PR ada/114065 + * libgnarl/s-osinte__darwin.adb: Add and reference clause + for Interfaces.C, remove clause for Interfaces.C.Extensions. + +2025-09-15 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/114065 + PR ada/121953 + * Makefile.rtl (LIBGNAT_TARGET_PAIRS) [x32-linux]: Replace + libgnarl/s-osinte__x32.adb with libgnarl/s-osinte__posix.adb. + * libgnarl/s-osinte__x32.adb: Delete. + +2025-09-15 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.cc (gnat_to_gnu) + <N_Object_Renaming_Declaration>: Deal with objects whose elaboration + is deferred. + (process_freeze_entity): Deal with renamed objects whose elaboration + is deferred. + +2025-09-15 Gary Dismukes <dismukes@adacore.com> + + * exp_ch6.ads (Make_Build_In_Place_Call_In_Allocator): Simplify comment. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Remove obsolete + comment about not being able to allocate fixed-size controlled results + on the caller side, and replace another obsolete comment with a simpler + comment. Call Build_Allocate_Deallocate_Proc when the function doesn't + need a BIPalloc formal to ensure that function results with controlled + parts allocated on the caller side will be chained for finalization. + (Make_Build_In_Place_Call_In_Object_Declaration): Call Needs_BIP_Collection + on the function's Entity_Id rather than the function call. + (Needs_BIP_Collection): If a BIP function doesn't need a BIPalloc formal + then it doesn't need a BIP collection either; return False in that case. + (Needs_BIP_Alloc_Form): Remove test of Needs_BIP_Collection. + * exp_ch7.adb (Expand_Cleanup_Actions): Move test of Uses_Sec_Stack + to be the first conjunct in setting of Needs_Sec_Stack_Mark, and put + the other tests in a disjunction subsidiary to that. Improve preceding + comment. + +2025-09-15 Eric Botcazou <ebotcazou@adacore.com> + + * checks.adb (Apply_Discriminant_Check): Remove undocumented test + on Is_Aliased_View applied to the left-hand side to skip the check + in the case where the subtypes are the same, and replace it with a + test that the subtypes are constrained. + +2025-09-15 Jose Ruiz <ruiz@adacore.com> + + * doc/gnat_rm/security_hardening_features.rst: + clarify that hardening options are not supported by the + LLVM back end. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Disable context checks for + the preanalysis of the expression for Loop_Invariant pragmas + as the ghost region for the pragma has not been set up yet. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Get_Applicable_Policy): Match assertion levels + by name. + +2025-09-15 Steve Baird <baird@adacore.com> + + * freeze.adb (Freeze_Entity): In the case of an anonymous + access-to-subprogram type where Do_Freeze_Profile is True, freeze + the designated subprogram type. + (Should_Freeze_Type): Do not call Unit_Declaration_Node with + a parentless argument. + * sem_ch3.adb (Analyze_Object_Declaration): When calling + Freeze_Before, override the default value for Do_Freeze_Profile. + This is needed in some cases to prevent premature freezing in the + case of an object of an anonymous access-to-subprogram type. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Add ghost level check to + Assertion_Policy. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Assignment_Policies): The level of the assignee + should depend on the level of the region. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * ghost.adb (Is_Ok_Pragma): Remove calls to Check_Policies. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * contracts.adb: Update SPARK RM reference numbers. + * freeze.adb: Likewise. + * ghost.adb: Likewise. + * ghost.ads: Likewise. + * sem_ch12.adb: Likewise. + * sem_ch3.adb: Likewise. + * sem_ch6.adb: Likewise. + * sem_prag.adb: Likwise. + * sem_res.adb: Likewise. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Check_Inconsistent_Argument_Ghostliness): + new method for handling the ghost constency errors between + different arguments. Use this method in the processing for + pragmas Unused, Unrefefrenced, Unreferenced_Objects, Inline and + No_Return. + * sem_prag.ads (Suppressed_Ghost_Policy_Check_Pragma): add + missing entry for pragma Inline. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Assignee_Levels): Fix the condition and improve + error message handling. + +2025-09-15 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/114065 + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and + s-c_time$(objext). + (Aarch64/Android): Do not use s-osinte__android.adb. + (SPARC/Solaris): Do not use s-osprim__solaris.adb. + (x86/Solaris): Likewise. + (LynxOS178): Do not use s-parame__posix2008.ads. + (RTEMS): Likewise. + (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace + s-osprim__x32.adb with s-osprim__posix.adb. + (LIBGNAT_OBJS): Remove cal.o. + * cal.c: Delete. + * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. + (GNAT.Calendar): Do not mention the obsolete conversion functions. + * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. + * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time + (Clock): Use type and functions from System.C_Time. + * libgnarl/s-linux.ads: Remove with clause for System.Parameters. + Remove declarations of C time types. + * libgnarl/s-linux__alpha.ads: Likewise. + * libgnarl/s-linux__android-aarch64.ads: Likewise. + * libgnarl/s-linux__android-arm.ads: Likewise. + * libgnarl/s-linux__hppa.ads: Likewise. + * libgnarl/s-linux__loongarch.ads: Likewise. + * libgnarl/s-linux__mips.ads: Likewise. + * libgnarl/s-linux__riscv.ads: Likewise. + * libgnarl/s-linux__sparc.ads: Likewise. + * libgnarl/s-osinte__aix.ads: Likewise. + * libgnarl/s-osinte__android.ads: Likewise. + * libgnarl/s-osinte__cheribsd.ads: Likewise. + * libgnarl/s-osinte__darwin.ads: Likewise. + * libgnarl/s-osinte__dragonfly.ads: Likewise. + * libgnarl/s-osinte__freebsd.ads: Likewise. + * libgnarl/s-osinte__gnu.ads: Likewise. + * libgnarl/s-osinte__hpux.ads: Likewise. + * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. + * libgnarl/s-osinte__linux.ads: Likewise. + * libgnarl/s-osinte__lynxos178e.ads: Likewise. + * libgnarl/s-osinte__qnx.ads: Likewise. + * libgnarl/s-osinte__rtems.ads: Likewise. + * libgnarl/s-osinte__solaris.ads: Likewise. + * libgnarl/s-osinte__vxworks.ads: Likewise. + * libgnarl/s-qnx.ads: Likewise. + * libgnarl/s-linux__x32.ads: Delete. + * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. + (To_Timespec): Likewise. + * libgnarl/s-osinte__aix.adb: Likewise. + * libgnarl/s-osinte__dragonfly.adb: Likewise. + * libgnarl/s-osinte__freebsd.adb: Likewise. + * libgnarl/s-osinte__gnu.adb: Likewise. + * libgnarl/s-osinte__lynxos178.adb: Likewise. + * libgnarl/s-osinte__posix.adb: Likewise. + * libgnarl/s-osinte__qnx.adb: Likewise. + * libgnarl/s-osinte__rtems.adb: Likewise. + * libgnarl/s-osinte__solaris.adb: Likewise. + * libgnarl/s-osinte__vxworks.adb: Likewise. + * libgnarl/s-osinte__x32.adb: Likewise. + * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. + (Monotonic_Clock): Use type and functions from System.C_Time. + (RT_Resolution): Likewise. + (Timed_Sleep): Likewise. + (Timed_Delay): Likewise. + * libgnarl/s-taprop__vxworks.adb: Likewise. + * libgnarl/s-tpopmo.adb: Likewise. + * libgnarl/s-osinte__android.adb: Delete. + * libgnat/g-c_time.ads: New file. + * libgnat/g-calend.adb: Delegate to System.C_Time. + * libgnat/g-calend.ads: Likewise. + * libgnat/g-socket.adb: Likewise. + * libgnat/g-socthi.adb: Likewise. + * libgnat/g-socthi__vxworks.adb: Likewise. + * libgnat/g-sothco.ads: Likewise. + * libgnat/g-spogwa.adb: Likewise. + * libgnat/s-c_time.adb: New file. + * libgnat/s-c_time.ads: Likewise. + * libgnat/s-optide.adb: Import nanosleep here. + * libgnat/s-os_lib.ads (time_t): Remove. + (To_Ada): Adjust. + (To_C): Likewise. + * libgnat/s-os_lib.adb: Likewise. + * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. + * libgnat/s-osprim__posix.adb: Likewise. + * libgnat/s-osprim__posix2008.adb: Likewise. + * libgnat/s-osprim__rtems.adb: Likewise. + * libgnat/s-osprim__unix.adb: Likewise. + * libgnat/s-osprim__solaris.adb: Delete. + * libgnat/s-osprim__x32.adb: Likewise. + * libgnat/s-parame.ads (time_t_bits): Remove. + * libgnat/s-parame__hpux.ads: Likewise. + * libgnat/s-parame__vxworks.ads: Likewise. + * libgnat/s-parame__posix2008.ads: Delete. + * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. + * gnat_rm.texi: Regenerate. + +2025-09-15 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Finalize_Address): In an untagged derivation, call + Root_Type on the full view of the base type if the partial view is + itself not a derived type. + (Is_Untagged_Derivation): Minor formatting tweak. + +2025-09-15 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.ads (Unqualified_Unconditional_Parent): New function. + * exp_util.adb (Unconditional_Parent): Do not look through qualified + expressions. + (Unqualified_Unconditional_Parent): New function identical to the + original Unconditional_Parent. + * exp_aggr.adb (Convert_To_Assignments): Replace Unconditional_Parent + with Unqualified_Unconditional_Parent. + (Expand_Array_Aggregate): Likewse. + * exp_ch4.adb (Expand_N_Case_Expression): Likewise. + (Expand_N_If_Expression): Likewise. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not bypass an enclosing + qualified expression in the parent chain. + +2025-09-15 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst: Fix section of Finalizable. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * sem_ch6.adb (Analyze_Expression_Function): Disable ghost + checks during the early freeze. + +2025-09-15 Steve Baird <baird@adacore.com> + + * aspects.ads: Define Super aspect; allow Initialize aspect + specification on a subprogram body. + * exp_attr.adb (Expand_N_Attribute_Reference): Rewrite Make + attribute implementation. + * exp_ch3.adb (Initialization_Control): Delete Initialization_Mode + and Make_Mode_Literal (those declarations were moved to the spec). + (Build_Record_Init_Proc): For a constructor type, component + initialization (other than for the tag component, if any) must be + performed by calling the single-argument constructor procedure. + (Requires_Init_Proc): Return True for a constructor type. + * exp_ch3.ads (Make_Mode_Literal, Initialization_Mode): New, moved + from the body of this package. + * exp_ch6.adb (Expand_N_Subprogram_Body): Declare, implement, and + call a new local procedure, Prepend_Constructor_Procedure_Prologue + in order to generate component initialization for a constructor + procedure. + * sem_attr.adb (Analyze_Attribute): Improve the error message + generated for a 'Make attribute reference if GNAT extensions are + not all allowed. + * sem_ch13.adb (Analyze_One_Aspect): Improved implementation of + aspect specifications for Initialize, Constructor, and Super + aspects. For Super, there was no previous implementation. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * atree.adb (Mark_New_Ghost_Node): Set Is_Implicit_Ghost for + all newly created nodes. + * gen_il-fields.ads (Is_Implicit_Ghost): New attribute. + * gen_il-gen-gen_entities.adb (Entity_Kind): Add Is_Implicit_Ghost + attribute. + * ghost.adb (Ghost_Policy_In_Effect): Implicit_Ghost_Entities inside + pragmas get the ghost mode from the region isntead of the global + ghost policy. + (Ghost_Assertion_Level_In_Effect): New function that returns the + applicable assertion level for the given entity in a similar manner + as Ghost_Policy_In_Effect. + (Install_Ghost_Region): Set Is_Inside_Statement_Or_Pragma attribute. + (Mark_And_Set_Ghost_Body): Update the logic for deriving the ghost + region. + (Set_Ghost_Mode): Ignored pragmas attached to checked ghost entities + now create an ignored ghost region. Pragmas attached to non-ghost + entities create the ghost region based on the policy applied to the + given pragma. + * opt.ads (Ghost_Config_Type): add new attribute + Is_Inside_Statement_Or_Pragama to track whether we should take the + active ghost mode from the ghost region for implicit ghost entities. + * sem_prag.adb (Analyze_Pragma): Mark entities that have an explicit + ghost pragma as non-implicit ghost. + +2025-09-15 Sebastian Poeplau <poeplau@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: + Remove the note on light runtimes. + +2025-09-15 Sebastian Poeplau <poeplau@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Move + recommendation of Toolchain_Name up. + * gnat_ugn.texi: Regenerate. + +2025-09-15 Vadim Godunko <godunko@adacore.com> + + * bindgen.adb (Gen_Adafinal): Don't generate call of adafinal + when use of standard library suppressed. + +2025-09-15 Vadim Godunko <godunko@adacore.com> + + * bindgen.adb (Gen_Adafinal): Don't generate code when + use of standard library suppressed. + +2025-09-15 Vadim Godunko <godunko@adacore.com> + + * libgnat/a-swunau.ads (Set_Wide_String): New subprogram. + * libgnat/a-swunau.adb (Set_Wide_String): Likewise. + * libgnat/a-swunau__shared.adb (Set_Wide_String): Likewise. + * libgnat/a-szunau.ads (Set_Wide_Wide_String): Likewise. + * libgnat/a-szunau.adb (Set_Wide_Wide_String): Likewise. + * libgnat/a-szunau__shared.adb (Set_Wide_Wide_String): Likewise. + +2025-09-15 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Context): Avoid context checks when they + are globally disabled. + * sem.ads (Ghost_Context_Checks_Disabled): New flag to control + whether ghost context checks are activated or not. + * sem_prag.adb (Analyze_Pragma): Disable ghost context checks for + pragmas that determine their ghostliness based on one of its arguments. + +2025-09-15 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.ads (Is_Ancestor_Package): Fix documentation comment. + * sem_util.adb (Is_Ancestor_Package): Rename local object. + +2025-09-11 Marc Poulhiès <poulhies@adacore.com> + + * libgnat/g-socket.adb (Listen_Socket): Change default value. + * libgnat/g-socket.ads (Listen_Socket): Likewise. + * s-oscons-tmplt.c (BACKLOG_MAX): New. + +2025-09-11 Marc Poulhiès <poulhies@adacore.com> + + * env.c (__gnat_clearenv): Adjust comment. + * libgnarl/a-intnam__bsd.ads: Fix copyright date. + +2025-09-11 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Give a + warning for huge imported objects as well. + +2025-09-11 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/ada-tree.h (TYPE_ALIGN_OK): Delete. + * gcc-interface/decl.cc (gnat_to_gnu_entity): Do not set it. + * gcc-interface/gigi.h (standard_datatypes): Add ADT_tag_name_id. + (tag_name_id): New macro. + (type_is_tagged_or_cw_equivalent): New inline predicate. + * gcc-interface/trans.cc (gigi): Initialize tag_name_id. + (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Replace tests on + TYPE_ALIGN_OK with calls to type_is_tagged_or_cw_equivalent. + (addressable_p): Likewise. + * gcc-interface/utils.cc (convert): Likewise. + * gcc-interface/utils2.cc (build_binary_op): Likewise. + +2025-09-11 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/misc.cc (gnat_get_array_descr_info): In the record + type case, bail out if the original array type cannot be retrieved. + +2025-09-11 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/gigi.h (standard_datatypes): Add ADT_uns_mulv64_decl + and ADT_uns_mulv128_decl. + (uns_mulv64_decl): New macro. + (uns_mulv128_decl): Likewise. + * gcc-interface/trans.cc (gigi): Create the uns_mulv64_decl and + uns_mulv128_decl declarations. + (gnat_to_gnu) <N_Op_Add>: Perform an overflow check for unsigned + integer addition, subtraction and multiplication if required. + <N_Op_Minus>: Perform an overflow check for unsigned integer + negation if required. + (build_unary_op_trapv): Add support for unsigned types. + (build_binary_op_trapv): Likewise. + <MINUS_EXPR>: Perform the check if the LHS is zero in the signed + case as well. + +2025-09-11 Steve Baird <baird@adacore.com> + + * exp_ch6.adb (Expand_Actuals): After building the tree for a + predicate check, call Prepend_To instead of Append_To so that the + check is performed before, instead of after, the corresponding + parameter copy-back. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * sem_prag.adb: Create a ghost region for pragma annotate before + analyzing its arguments. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * sem_ch5.adb (Analyze_Iterator_Specification): Check ghost context + of Iterable functions when handling iterator specifications with an + Iterable aspect. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Policy): Update coding style. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Policy): Avoid triggering a ghost + policy error if the policy is referenced within the Iterable + aspect. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * ghost.adb (Is_OK_Statement): Check the levels of the + assignee with the levels of the entity are ghost level dependent. + (Check_Assignement_Levels): New function for checking the level + dependencies. + +2025-09-11 Piotr Trojanek <trojanek@adacore.com> + + * einfo.ads (Ghost_Assertion_Level): Fix comment. + +2025-09-11 Viljar Indus <indus@adacore.com> + + * ghost.adb (Mark_And_Set_Ghost_Assignment): Create a ghost region + for an assigment irregardless of whether the expander is active. + Relocate the Assignment validity checks from Is_OK_Statement to + this subprogram. + +2025-09-11 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Build_Container_Aggr_Code.Build_Size_Expr): In the case + of an association with a single choice, only call Update_Choices when + the choice expression is nonstatic. + +2025-09-11 Bob Duff <duff@adacore.com> + + * exp_ch5.adb + (Expand_Assign_With_Target_Names.Replace_Target): + Remove code setting Entity to Empty. + * sinfo.ads (Has_Target_Names): + Improve comment: add "@" to clarify what "target name" + means, and remove the content-free phrase "and must + be expanded accordingly." + +2025-09-11 Bob Duff <duff@adacore.com> + + * einfo-utils.adb (Root_Type): Do not deal with missing Etype. + +2025-09-11 Bob Duff <duff@adacore.com> + + * einfo-utils.adb (Root_Type): Deal with missing Etype. + (Root_Type_If_Set): Likewise. + +2025-09-11 Javier Miranda <miranda@adacore.com> + + * freeze.adb (Freeze_Entity): Protect call to Associated_Storage_Pool + since it cannot be used when the Etype is not set. + * sem_ch3.adb (Access_Type_Declaration): Ditto. + * sem_aux.adb (Is_Derived_Type): Protect call to Root_Type since it + cannot be used when the Etype is not set. + +2025-09-11 Tonu Naks <naks@adacore.com> + + * libgnat/s-crtl.ads: define unsigned + * libgnat/s-crtl__mingw.adb (read, write): change arg type + +2025-09-11 Bob Duff <duff@adacore.com> + + * freeze.adb (Freeze_Entity): Change "=" to ">=" in + size comparison for Implicit_Packing mode. + Keep it as "=" for giving error messages. + * opt.ads (Implicit_Packing): Minor: correct obsolete + comment. + +2025-09-11 Javier Miranda <miranda@adacore.com> + + * sem_aggr.adb (Report_Null_Array_Constraint_Error): Adjust code + for reporting the error on enumeration types. + (Resolve_Null_Array_Aggregate): On multidimiensional arrays, avoid + reporting the same error several times. Flag the node as raising + constraint error when the bounds are known and some of them is + known to raise constraint error. + +2025-09-11 Bob Duff <duff@adacore.com> + + * atree.ads (Node_To_Fetch_From_If_Set): Alternative to + Node_To_Fetch_From that returns Empty in error cases. + For use only in Treepr. + * treepr.adb (Print_Entity_Field): Avoid printing field + if Node_To_Fetch_From_If_Set returns Empty. + * einfo-utils.ads (Base_Type_If_Set): Alternative to + Base_Type that returns Empty in error cases. + (Implementation_Base_Type_If_Set): Likewise. + (Root_Type_If_Set): Likewise. + (Underlying_Type): Use more accurate result subtype. + * einfo-utils.adb (Base_Type): Add Asserts. + (Implementation_Base_Type): Add Assert; minor cleanup. + (Root_Type): Add Assert; minor cleanup. Remove Assert that + is redundant with predicate. + (Base_Type_If_Set): Body of new function. + (Implementation_Base_Type_If_Set): Body of new function. + (Root_Type_If_Set): Body of new function. + +2025-09-11 Johannes Kliemann <kliemann@adacore.com> + + * adaint.c: Add functions to disable and enable signals on QNX. + * libgnarl/s-taprop__qnx.adb (Create_Task): Disable + signals when calling pthread_create. + +2025-09-11 Gary Dismukes <dismukes@adacore.com> + + * exp_ch4.adb (Expand_N_Op_Eq): Test for absence of user-defined + equality on type being compared (for both array and record types) + as a condition for checking for abstract equality on component + types. Add a "???" comment about current limitations on issuing + the new warning. + (Warn_On_Abstract_Equality_For_Component): Remove temporary disabling + of the warning. Improve comment on declaration. + +2025-09-11 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Discriminants, Process_Full_View): Fix + comments. + +2025-09-11 Denis Mazzucato <mazzucato@adacore.com> + + * sem_attr.adb (Eval_Attribute): Remove strict analysis condition. + +2025-09-11 Denis Mazzucato <mazzucato@adacore.com> + + * par-load.adb (Load): Better warning message. + +2025-09-11 Tucker Taft <taft@adacore.com> + + * exp_attr.adb + (Build_Array_VS_Func and Build_Record_VS_Func): Pass in the + Attr as the Related_Node parametr when calling + Make_Temporary for the Func_Id for the array and record + Valid_Scalars local functions. + +2025-09-11 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.ads (Find_Type_Name): Improve documentation comment. + +2025-09-11 Gary Dismukes <dismukes@adacore.com> + + * exp_ch4.adb (Warn_On_Abstract_Equality_For_Component): Temporarily + disable warning. + +2025-09-10 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/121885 + * snames.ads-tmpl (Pragma_Id): Rename Unknown_Pragma to + Pragma_Unknown for the sake of XSnamesT. + * snames.adb-tmpl (Get_Pragma_Id): Adjust to above renaming. + * snames.h-tmpl (Attribute_Id): Change underlying type to Byte. + (Get_Attribute_Id): Use Byte as return value. + (Pragma_Id): Change underlying type to Word. + (Get_Pragma_Id): Use Word as return value. + * types.h (Word): New typedef. + * exp_prag.adb (Expand_N_Pragma): Remove useless comment. + * par-prag.adb (Prag): Adjust to above renaming. + * sem_prag.adb (Analyze_Pragma): Likewise. + (Sig_Flags): Likewise. + +2025-09-09 Gary Dismukes <dismukes@adacore.com> + + * exp_ch4.adb (Expand_N_Op_Eq): Check for warning about call to + the abstract equality function of a component type, for both array + and record enclosing types. + (Warn_On_Abstract_Equality_For_Component): New procedure to issue + a warning when an abstract equality function of a component type + will be called and result in Program_Error. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch5.adb (Make_Call): Mark generated nodes as coming from source. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Incomplete_Type_Decl): Remove incorrect + comment. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Is_OK_Pragma): Use the + Suppressed_Ghost_Policy_Check_Pragma list for ignoring certain + pragmas. + * sem_prag.ads (Suppressed_Ghost_Policy_Check_Pragma): New variable + to store the pragmas that could be ignored when checking for + consitant ghost policy. + +2025-09-09 Tonu Naks <naks@adacore.com> + Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-crtl.ads (read, write): remove import + * libgnat/s-crtl__mingw.adb: body for windows + * libgnat/s-crtl.adb: body for all the other targets + * Makefile.rtl: configure s-crtl.adb/libgnat/s-crtl__mingw.adb + * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Alphabetize. + (GNATBIND_OBJS): Add ada/libgnat/s-crtl.o. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * contracts.adb: Use the In_Codegen function instead. + * exp_ch3.adb: Likewise. + * exp_ch5.adb: Likewise. + * exp_ch6.adb: Likewise. + * exp_ch7.adb: Likewise. + * exp_ch9.adb: Likewise. + * exp_disp.adb: Likewise. + * exp_util.adb: Likewise. + * freeze.adb: Likewise. + * ghost.adb: Likewise. + * inline.adb: Likewise. + * repinfo.adb: Likewise. + * sem_ch10.adb: Likewise. + * sem_ch13.adb: Likewise. + * sem_ch3.adb: Likewise. + * sem_ch6.adb: Likewise. + * sem_elab.adb: Likewise. + * sem_res.adb: Likewise. + * sem_util.adb (Predicates_Ignored_In_Codegen): Add new function for + the Predicates_Ignored property. + (Predicates_Enabled): Use Predicates_Ignored_In_Codegen instead. + * sem_util.ads (Predicates_Ignored_In_Codegen): New function. + (Is_Ignored_In_Codegen): Add documentation on how _In_Codegen + functions should be used. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Copy_And_Swap): Improve comments. + +2025-09-09 Javier Miranda <miranda@adacore.com> + + * sem_util.adb (Needs_One_Actual): Add support for untagged record + types when the sources are compiled with Core Extensions allowed. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Find_Type_Name): Fix comment. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Check_Nonoverridable_Aspects): Remove if statement. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Check_Nonoverridable_Aspects): Improve documentation + comment. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Completion): Add location info + to the policy messages. + (Check_Ghost_Policy): Likwise. + +2025-09-09 Javier Miranda <miranda@adacore.com> + + * exp_attr.adb (Rewrite_Attribute_Proc_Call): Add new parameter + to calls to Create_Extra_Formals. + (Expand_N_Attribute_Reference): Ditto. + * exp_ch3.adb (Expand_Freeze_Record_Type): Ditto. + * exp_ch6.adb (Expand_Call_Helper): Ditto. + * exp_disp.adb (Expand_Dispatching_Call): Ditto. + * freeze.adb (Check_Itype): Ditto. + (Freeze_Expression): Ditto. + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Ditto. + (Create_Extra_Formals): Add new formal, and use it to determine + if the creation of the extra formals can be deferred. Add the + new parameter to calls to Create_Extra_Formals. + (Is_Unsupported_Extra_Actuals_Call): Adjust the code to improve + its performance when the result is known. + (Is_Unsupported_Extra_Formals_Entity): Ditto. Add new formal + * sem_ch6.ads (Create_Extra_Formals): Add new formal. + (Is_Unsupported_Extra_Formals_Entity): Ditto. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * sem_aggr.adb (Resolve_Array_Aggregate): Indicate an out of + bounds index error also in the case of a missing index. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Definitions): Create a temporary + pragma for the non-task and access type cases. + +2025-09-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch7.adb (New_Private_Type): Remove useless statements. + +2025-09-09 Denis Mazzucato <mazzucato@adacore.com> + + * targparm.adb (Get_Target_Parameters): Address type declaration doesn't + ends anymore with a semicolon. + * libgnat/a-cdlili.ads: Replace Preelaborable_Initialization. + * libgnat/a-cidlli.ads: Likewise. + * libgnat/a-cihama.ads: Likewise. + * libgnat/a-cihase.ads: Likewise. + * libgnat/a-cimutr.ads: Likewise. + * libgnat/a-ciorma.ads: Likewise. + * libgnat/a-ciormu.ads: Likewise. + * libgnat/a-ciorse.ads: Likewise. + * libgnat/a-cohama.ads: Likewise. + * libgnat/a-cohase.ads: Likewise. + * libgnat/a-coinho.ads: Likewise. + * libgnat/a-coinho__shared.ads: Likewise. + * libgnat/a-coinve.ads: Likewise. + * libgnat/a-comutr.ads: Likewise. + * libgnat/a-convec.ads: Likewise. + * libgnat/a-coorma.ads: Likewise. + * libgnat/a-coormu.ads: Likewise. + * libgnat/a-coorse.ads: Likewise. + * libgnat/a-crdlli.ads: Likewise. + * libgnat/a-except.ads: Likewise. + * libgnat/a-finali.ads: Likewise. + * libgnat/a-ngcoty.ads: Likewise. + * libgnat/a-strbou.ads: Likewise. + * libgnat/a-stream.ads: Likewise. + * libgnat/a-strmap.ads: Likewise. + * libgnat/a-strunb.ads: Likewise. + * libgnat/a-strunb__shared.ads: Likewise. + * libgnat/a-ststio.ads: Likewise. + * libgnat/a-stwibo.ads: Likewise. + * libgnat/a-stwima.ads: Likewise. + * libgnat/a-stwiun.ads: Likewise. + * libgnat/a-stwiun__shared.ads: Likewise. + * libgnat/a-stzbou.ads: Likewise. + * libgnat/a-stzmap.ads: Likewise. + * libgnat/a-stzunb.ads: Likewise. + * libgnat/a-stzunb__shared.ads: Likewise. + * libgnat/a-tags.ads: Likewise. + * libgnat/i-cstrin.ads: Likewise. + * libgnat/s-stopoo.ads: Likewise. + * libgnat/s-stposu.ads: Likewise. + * libgnat/system-aix.ads: Likewise. + * libgnat/system-darwin-arm.ads: Likewise. + * libgnat/system-darwin-ppc.ads: Likewise. + * libgnat/system-darwin-x86.ads: Likewise. + * libgnat/system-djgpp.ads: Likewise. + * libgnat/system-dragonfly-x86_64.ads: Likewise. + * libgnat/system-freebsd.ads: Likewise. + * libgnat/system-gnu.ads: Likewise. + * libgnat/system-hpux-ia64.ads: Likewise. + * libgnat/system-hpux.ads: Likewise. + * libgnat/system-linux-alpha.ads: Likewise. + * libgnat/system-linux-arm.ads: Likewise. + * libgnat/system-linux-hppa.ads: Likewise. + * libgnat/system-linux-ia64.ads: Likewise. + * libgnat/system-linux-loongarch.ads: Likewise. + * libgnat/system-linux-m68k.ads: Likewise. + * libgnat/system-linux-mips.ads: Likewise. + * libgnat/system-linux-ppc.ads: Likewise. + * libgnat/system-linux-riscv.ads: Likewise. + * libgnat/system-linux-s390.ads: Likewise. + * libgnat/system-linux-sh4.ads: Likewise. + * libgnat/system-linux-sparc.ads: Likewise. + * libgnat/system-linux-x86.ads: Likewise. + * libgnat/system-lynxos178-ppc.ads: Likewise. + * libgnat/system-lynxos178-x86.ads: Likewise. + * libgnat/system-mingw.ads: Likewise. + * libgnat/system-qnx-arm.ads: Likewise. + * libgnat/system-rtems.ads: Likewise. + * libgnat/system-solaris-sparc.ads: Likewise. + * libgnat/system-solaris-x86.ads: Likewise. + * libgnat/system-vxworks-ppc-kernel.ads: Likewise. + * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise. + * libgnat/system-vxworks-ppc-rtp.ads: Likewise. + * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-aarch64.ads: Likewise. + * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-arm.ads: Likewise. + * libgnat/system-vxworks7-ppc-kernel.ads: Likewise. + * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise. + * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-x86-kernel.ads: Likewise. + * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. + * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise. + * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise. + +2025-09-09 Marc Poulhiès <poulhies@adacore.com> + + * s-pack.adb.tmpl: Typo fix in comment. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Set Mark_Ghost_Code individually + based on the semantics of each pragma. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Mark_Ghost_Declaration_Or_Body): Mark ghost + entity explicitly as ignored or checked. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Policy): ignore ghost policy changes + within instantiation statements. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Check_Ghost_Policy): Use the policy in affect for + the identifier at the current moment instead of the region + around it when checking a policy change for a procedure call. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Mark_And_Set_Ghost_Declaration): apply the + ghost policy and level from the declaration only if the declaration + has an explicit ghost aspect/pragma. + +2025-09-09 Denis Mazzucato <mazzucato@adacore.com> + + * sem_ch13.adb (Check_Nonoverridable_Aspect_Subprograms): Add the new + legality check in Check_Nonoverridable_Aspect_Subprograms for + nonoverridable aspects to check whether the denoted subprograms satisfy + MR 13.1.1(18.4/6), otherwise we emit an error. Fix spacing. + * sem_ch6.adb (New_Overloaded_Entity): Set Is_Primitive flag + for inherited primitives, and filter out homonym candidates without a + function specification as parents. + +2025-09-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Check_Interrupt_Or_Attach_Handler): Refine test for + protected procedures; fix typo in comment. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Is_OK_Pragma): mark the context of ignored ghost + pragmas as OK. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * ghost.adb (Assertion_Level_From_Arg): Ensure that assertion level + is stored as the entity for its reference. + (Enables_Ghostness): Derive the result from whether or not the + an argument indicated an assertion level. + * tbuild.adb (Make_Assertion_Level): ensure that assertion levels + have a standard scope. + +2025-09-09 Piotr Trojanek <trojanek@adacore.com> + + * checks.adb (Make_Bignum_Block): Check restriction No_Secondary_Stack. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * sem_util.adb (Policy_In_Effect): Add special handling + for Runtime and Static values. + +2025-09-09 Denis Mazzucato <mazzucato@adacore.com> + + * exp_ch3.adb (Init_Formals): Remove the check on Global_No_Tasking. + * sem.adb: Fix typo. + +2025-09-09 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Build_Container_Aggr_Code.To_Int): Replace existing + conditional expression with call to Expr_Value. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Specifications): add default + assertion level to assertion aspects. + * sem_prag.adb (Analyze_Pragma): Likewise. + +2025-09-09 Ghjuvan Lacambre <lacambre@adacore.com> + + * exp_ch6.adb (Check_BIP_Actuals, Process_Node): Disable checks. + +2025-09-09 Javier Miranda <miranda@adacore.com> + + * aspects.ads (Aspect_Unsigned_Base_Range): New aspect. + * checks.adb (Determine_Range): Handle types with unsigned base range aspect. + (Enable_Overflow_Check): ditto + (Apply_Arithmetic_Overflow_Strict): ditto + * debug.adb (d_o): Document new usage. + * einfo.ads (Has_Unsigned_Base_Range_Aspect): New flag. + * exp_attr.adb (Expand_N_Attribute_Reference): No action since + it has been already handled at this stage. + * exp_ch4.adb (Expand_N_Op_Add): Generate aritmetic overflow check on + unsigned base range type operands. + (Expand_N_Op_Subtract): ditto + (Expand_N_Op_Multiply): ditto + (Expand_N_Op_Minus): ditto + * gen_il-fields.ads (Has_Unsigned_Base_Range_Aspect): New flag. + * gen_il-gen-gen_entities.adb (Has_Unsigned_Base_Range_Aspect): New flag. + * gen_il-internals.adb (Has_Unsigned_Base_Range_Aspect): New flag. + * gnat1drv.adb (Adjust_Global_Switches): Handle -gnatd_o + * par-prag.adb (Pragma_Unsigned_Base_Range): No action since it will + be entirely handled by the semantic analyzer. + * rtsfind.ads (RE_Id): Add RE_Uns_[Add|Subtract|Multiply]_With_ Ovflo_Check + * sem_attr.ads (Attribute_Unsigned_Base_Range): Added to the set of + implementation defined attributes. + * sem_attr.adb (Analyze_Attribute): Analyze attribute Unsigned_Base_Range. + (Eval_Attribute): Evaluate attribute Unsigned_Base_Range. + * sem_ch13.adb (Analyze_One_Aspect): Defer checks for this aspect to + the analysis of the corresponding pragma. + * sem_ch3.ads (Unsigned_Base_Range_Type_Declaration): New subprogram. + * sem_ch3.adb (Build_Derived_Numeric_Type): Inherit flag + Has_Unsigned_Base_Range_Aspect. + (Unsigned_Base_Range_Type_Declaration): New subprogram. + (Has_Pragma_Unsigned_Base_Range): New subprogram. + * sem_prag.adb (Analyze_Pragma): Handle Pragma_Unsigned_Base_Range. + * snames.adb-tmpl (Get_Pragma_Id): Handle Name_Unsigned_Base_Range. + (Is_Pragma_Name): ditto. + * snames.ads-tmpl (Name_Unsigned_Base_Range): New name. + (Attribute_Unsigned_Base_Range): New attribute. + (Pragma_Unsigned_Base_Range): New pragma. + * libgnat/s-aridou.ads (Add_With_Ovflo_Check): New routine for Double_Uns. + (Subtract_With_Ovflo_Check): ditto. + (Multiply_With_Ovflo_Check): ditto. + * libgnat/s-aridou.adb (Add_With_Ovflo_Check): ditto. + (Subtract_With_Ovflo_Check): ditto. + (Multiply_With_Ovflo_Check): ditto. + * libgnat/s-arit64.ads (Uns_Add_With_Ovflo_Check64): New subprogram. + (Uns_Subtract_With_Ovflo_Check64): ditto. + (Uns_Multiply_With_Ovflo_Check64): ditto. + * libgnat/s-arit64.adb (Uns_Add_With_Ovflo_Check64): New subprogram. + (Uns_Subtract_With_Ovflo_Check64): ditto. + (Uns_Multiply_With_Ovflo_Check64): ditto. + * libgnat/s-arit128.ads (Uns_Add_With_Ovflo_Check128): New subprogram. + (Uns_Subtract_With_Ovflo_Check128): ditto. + (Uns_Multiply_With_Ovflo_Check128): ditto. + * libgnat/s-arit128.adb (Uns_Add_With_Ovflo_Check128): New subprogram. + (Uns_Subtract_With_Ovflo_Check128): ditto. + (Uns_Multiply_With_Ovflo_Check128): ditto. + * doc/gnat_rm/gnat_language_extensions.rst: Document unsigned + base range. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-09 Viljar Indus <indus@adacore.com> + + * atree.adb (Mark_New_Ghost_Node): Store the assertion level on the + entity. + * contracts.adb (Analyze_Package_Contract): Add support for multiple + pragma Initial_Condition orginating from multiple assertion levels. + * cstand.adb (Make_Assertion_Level_Definition): New function that + creates a new Assertion_Level and adds it to the Assertion_Levels + table. + (Create_Standard): Add definitions for assertion levels defined in + Standard. + (Print_Standard): Add assertion level pragmas do the output. + * exp_ch6.adb (Check_Subprogram_Variant): Add support for multiple + Subprogram_Variant pragmas created by assertion levels. + * einfo.ads: add info for the new nodes and attributes. + * exp_prag.adb (Consequence_Error): Fix error message string + corruption caused by another call to the internal strings during + the call to Make_Procedure_Call_Statement. + (Expand_Pragma_Initial_Condition): Ensure all ghost related + attributes are copied to the new pragma. + (Expand_Pragma_Loop_Variant): Likewise. + (Expand_Pragma_Subprogram_Variant). Likewise. Additionally + create a new Subprogram_Variant function for each pragma associated + with an assertion level. + * exp_util.adb (Add_DIC_Check): Ensure all ghost related attributes + are copied to the new pragma. + (Build_DIC_Procedure_Body): Add support for mutliple DIC pragmas + created from assertion levels. + * gen_il-fields.ads: + (Aspect_Ghost_Assertion_Level): New field. + (Original_Aspect): New field. + (Original_Pragma): New field. + (Pragma_Ghost_Assertion_Level): New field. + (Child_Levels): New field. + (Ghost_Assertion_Level): New field. + (Parent_Levels): New field. + * gen_il-gen-gen_entities.adb: + Add Ghost_Assertion_Level field for all entities + Add new E_Assertion_Level entity for storing assertion levels. + * gen_il-gen-gen_nodes.adb: + Add Aspect_Ghost_Assertion_Level for N_Aspect to store the + assertion level associated with the aspect. + Add Original_Aspect to store the original aspect where the aspect + that was transformed from an aspect with an assertion level + origninated from. + Add Pragma_Ghost_Assertion_Level and Original_Pragma to store + the same information for N_Prama nodes. + * gen_il-types.ads: Add new entity kind E_Assertion_Level + * ghost.adb (Assertion_Level_Error_Msg): Create constant for + error messages using the same main error message. + (Ghost_Policy_Error_Msg): Likewise. + (Assertion_Level_To_Name): New subprogram. + (Check_Valid_Ghost_Declaration): New subprogram. + (Get_Ghost_Aspect): New subprogram. + (Get_Ghost_Assertion_Level): New subprogram. + (Ghost_Policy_In_Effect): New subprogram. + (Install_Ghost_Region): New subprogram. + (Mark_And_Set_Ghost_Region): New subprogram. + (Mark_Ghost_Declaration_Or_Body): Add new argument for assertion + levels. + (Check_Ghost_Completion): Update ghost policy calculation with + assertion levels. Refactor error message. + (Is_OK_Statement): Add new checks for valid assertion policies and + assertion levels. + (Is_OK_Pragma): Refactor the calculation of valid ghost pragmas. + (Check_Ghost_Policy): Make the checks ghost region based. + (Check_Ghost_Context): Refactor the order of checks. + (Check_Ghost_Formal_Procedure_Or_Package): Relax the checks for + overriding procedures. Now only ignored subprograms cannot be + overridden by checked or non-ghost subprograms. + (Check_Ghost_Primitive): Relax conditions for primitve operations. + Now only checked primitive subprograms are considered invalid for + ignored tagged types. Add assertion level compatibility checks. + (Check_Ghost_Refinement): Relax conditions for ghost refinements. + Add assertion level compatibility checks for refinements. + (Install_Ghost_Region): Store the current region and the assertion + for that region in the ghost config. + (Enables_Ghostness): Refactor implementation to support assertion + levels. + (Is_Subject_To_Ghost): Simplify implementation. + (Mark_And_Set_Ghost_Assignment): Refactor implementation. + (Mark_And_Set_Ghost_Body): Add support for assertion levels. + (Mark_And_Set_Ghost_Completion): Likewise. + (Mark_And_Set_Ghost_Declaration): Likwise. + (Mark_And_Set_Ghost_Instantiation): Likwise. + (Mark_And_Set_Ghost_Procedure_Call): Refactor implementation. + (Mark_Ghost_Declaration_Or_Body): Add support for assertion levels. + (Set_Ghost_Mode): Likwise. + * ghost.ads (Assertion_Level_From_Arg): New subprogram. + (Install_Ghost_Region): Add argument Level for assertrion levels. + (Is_Assertion_Level_Dependent): New subprogram. + * lib-xref.ads: Add new mapping for E_Assertion_Level entities. + * opt.ads (Ghost_Config_Type): Add new members Ghost_Assertion_Mode + and Current_Region to the structure. + * par-prag.adb (Prag): Add new pragma name Assertion_Level. + * rtsfind.adb (Load_RTU): Update the arguments for the call to + Install_Ghost_Region. + * sem.adb (Do_Analyze): Likewise. + * sem_ch13.adb (Convert_Aspect_With_Assertion_Levels): New + subprogram. + (Make_Aitem_Pragma): Copy ghost mode attributes from the aspect to + the pragma. + (Analyze_Aspect_Specifications): Convert aspects that have an + assertion level association in the aspects without the association + and the original supported syntax and with the assertion level + stored on the aspect node. + Updated duplicate detection to avoid duplicates being called on + aspects with assertion levels that orginated from the same aspect. + * sem_prag.adb (Apply_Check_Policy): New subprogram. + (Get_Applicable_Policy): New subprogram. + (Mark_Is_Checked): New subprogram. + (Mark_Is_Disabled): New subprogram. + (Mark_Is_Ignored): New subprgram. + (Check_Arg_Is_One_Of): Remove versions that had a specific number + of arguments and replace them with a list one. + (Create_Pragma_Without_Assertion_Level): New subprogram. + (Assertion_Level_Pragma_Comes_From_Source): New subprogram. + (Analyze_Pragma): Replace aspects that have an assertion level + with aspects without them where the level is stored on the pragma + node. + (Abstract_State): Add support for assertion levels in ghost + Abstract_State pragmas. + (Assert): Update argument handling for Assert like pragmas. + (Assertion_Level): Add a new section to support the analysis of + pragma Assertion_Level. + (Assertion_Policy): Add support for setting the policy for assertion + levels. + (Check): Update argument handling. Update the assertion policy + application process. + (Check_Policy): Add support for assertion levels. Add check_policy + pragmas for assertion_level dependencis also to the stack of + known Check_Policy pragmas. + (Default_Initial_Condition): Reject the use of DIC with assertion + levels. Update duplication checks. + (Ghost): Add support for assertion levels. Fix issue where + assertion levels with Ghost => False were treated as ghost. + (Predicate): Update the policy handling of Ghost_Predicate. + (Analyze_Refined_State_In_Decl_Part): Create a new ghost region + for analyzing Refined_State. + (Check_Applicable_Policy): Refactor the implementation. Break it + down to Get_Applicable_Policy and Apply_Check_Policy. + (Check_Kind): Removed. Replaced by Get_Applicable_Policy and + Apply_Check_Policy. + (Initialize): Initialize the table storing all know assertion + levels. + * sem_prag.ads (Find_Assertion_Level): New subprogram. + (Insert_Assertion_Level): New subprogram. + (Check_Applicable_Policy): Add new argument Level. + (Check_Kind): Removed. Merged with Get_Applicable_Policy. + (Get_Assertion_Level): New subprogram. + (Is_Valid_Assertion_Level): New subprogram. + * sem_util.adb (Copy_Assertion_Policy_Attributes): New function + for copying the ghost related attributes from one pragma to + another. + (Copy_Subprogram_Spec): Additionally copy the level from the spec. + (Depends_On_Level): New function for checking if one level depends + on another level. + (From_Same_Aspect): New function for checking whether the aspects + orignate from the same original aspect. + (From_Same_Pragma): New function for checking whether the pragmas + originate from the same original aspect or pragma. + (Get_Subprogram_Entity): Avoid crash when being called when the + entity has not been set for the subprogram. + (Has_Assertion_Level_Argument): New function for checking whether + the aspect or a pragma has an argument that is using an assertion + level association. + (Policy_In_Effect): add an additional argument for the level that + should be checked along with the assertion name. + * sem_util.ads (Copy_Assertion_Policy_Attributes): New function. + (Depends_On_Level): Likewise. + (From_Same_Aspect): Likewise. + (From_Same_Pragma): Likewise. + (Has_Assertion_Level_Argument): Likewise. + (Is_Same_Or_Depends_On_Level): Likewise. + (Policy_In_Effect): Add new argument Level. + * sinfo.ads: Add documentation for all the new attributes that + were added to the nodes and entities. + * snames.ads-tmpl: Add new entries for Name_Assertion_Level, + Name_uDefault_Assertion_Level and Pragma_Assertion_Level. + * stand.ads: Add new entities for the predefined assertion levels. + (Standard_Level_Static): Definition for the predefined Static + level that is always ignored. + (Standard_Level_Runtime): Defintion for the predefined Runtime + level that is always checked. + (Standard_Level_Default): Definition for the implicit Default + level that is given for ghost entities that were not associated + with an assertion level (e.g. Ghost => True). + * tbuild.adb (Make_Assertion_Level): New function for constructin + an assertion level. + * tbuild.ads (Make_Assertion_Level): Likewise. + +2025-08-04 Viljar Indus <indus@adacore.com> + + * contracts.adb: Use Is_Ignored_In_Codegen instead of just + using Is_Ignored. + * exp_ch6.adb: Likewise. + * exp_prag.adb: Likewise. + * exp_util.adb: Likewise. + * frontend.adb: Avoid removal of ignored nodes in GNATProve_Mode. + * gnat1drv.adb: Avoid forcing Assertions_Enabled in GNATProve_Mode. + * lib-writ.adb (Write_With_File_Names): Avoid early exit + with ignored entities in GNATProve_Mode. + * lib-xref.adb: Likewise. + * opt.adb: Remove check for Assertions_Enabled. + * sem_attr.adb: Use Is_Ignored_In_Codegen instead of Is_Ignored. + * sem_ch13.adb: Likewise. Additionally always add predicates in + GNATProve_Mode. + * sem_prag.adb: Likewise. Additionally remove modifications + to applied policies in GNATProve_Mode. + * sem_util.adb (Is_Ignored_In_Codegen): New function that overrides + Is_Ignored in GNATProve_Mode and Codepeer_Mode. + (Is_Ignored_Ghost_Pragma_In_Codegen): Likewise for + Is_Ignored_Ghost_Pragma. + (Is_Ignored_Ghost_Entity_In_Codegen): Likewise for + Is_Ignored_Ghost_Entity. + (Policy_In_List): Remove overriding of policies in GNATProve_Mode. + * sem_util.ads: Add specs for new functions. + * (Predicates_Enabled): Always generate predicates in + GNATProve_Mode. + +2025-08-04 Bob Duff <duff@adacore.com> + + * treepr.adb (Print_Node_Ref): Protect against + Entity (N) being empty before calling + Compile_Time_Known_Value. + +2025-08-04 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Validate_Compile_Time_Warning_Errors): + Check if the original compile time pragma was replaced and + validate the original node instead. + +2025-08-04 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Validate_Compile_Time_Warning_Or_Error): + simplify the implementation. + +2025-08-04 Steve Baird <baird@adacore.com> + + * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): If the + accessibility level being checked is known statically, then + statically check it against the level of the function being + returned from. + +2025-08-04 Viljar Indus <indus@adacore.com> + + * atree.adb: update references to Ghost_Mode. + * exp_ch3.adb: use a structure type to store all of the existing + ghost mode related state variables. + * exp_disp.adb: Likewise. + * exp_spark.adb: Likewise. + * exp_util.adb: Likewise. + * expander.adb: Likewise. + * freeze.adb: Likewise and replace references to existing ghost + mode variables. + * ghost.adb (Install_Ghost_Region): install the changes of + the region in to the new Ghost_Config structure. + (Restore_Ghost_Region): Use the new Ghost_Config instead. + In general replace all references to the existing ghost mode + variables with the new structure equivalent. + * ghost.ads (Restore_Ghost_Region): update the spec. + * opt.ads (Ghost_Config_Type): A new type that has two of the + previous ghost code related global variables as memembers - + Ghost_Mode and Ignored_Ghost_Region. + (Ghost_Config) New variable to store the previous Ghost_Mode and + Ignored_Ghost_Region info. + * rtsfind.adb: Replace references to existing ghost mode variables. + * sem.adb: Likewise. + * sem_ch12.adb: Likewise. + * sem_ch13.adb: Likewise. + * sem_ch3.adb: Likewise. + * sem_ch5.adb: Likewise. + * sem_ch6.adb: Likewise. + * sem_ch7.adb: Likewise. + * sem_prag.adb: Likewise. + * sem_util.adb: Likewise. + +2025-08-04 Steve Baird <baird@adacore.com> + + * freeze.adb (Freeze_Profile): Do not emit a warning stating that + a formal parameter's size is 8 if the parameter's size is not 8. + +2025-08-04 Viljar Indus <indus@adacore.com> + + * table.adb (Max): Move variable to the body and initialize + it with the same value as in the Init function. + * table.ads (Max): Likewise. + +2025-08-04 Bob Duff <duff@adacore.com> + + * par.adb: Move and rewrite some comments. + (Util): Shared code and comments for dealing with + defining_identifier_lists. + * par-util.adb (Append): Shared code for appending + one identifier onto Defining_Identifiers. + (P_Def_Ids): Shared code for parsing a defining_identifier_list. + Unfortunately, this is not used in all cases, because some of + them mix in sophisticated error recovery, which we do not + modify here. + * par-ch12.adb (P_Formal_Object_Declarations): + Use Defining_Identifiers and related code. + * par-ch3.adb (P_Identifier_Declarations): Likewise. + (P_Known_Discriminant_Part_Opt): Likewise. + (P_Component_Items): Likewise. + * par-ch6.adb (P_Formal_Part): Likewise. + +2025-07-31 Eric Botcazou <ebotcazou@gcc.gnu.org> + + Revert: + 2025-07-31 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/114065 + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and + s-c_time$(objext). + (Aarch64/Android): Do not use s-osinte__android.adb. + (SPARC/Solaris): Do not use s-osprim__solaris.adb. + (x86/Solaris): Likewise. + (LynxOS178): Do not use s-parame__posix2008.ads. + (RTEMS): Likewise. + (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace + s-osprim__x32.adb with s-osprim__posix.adb. + (LIBGNAT_OBJS): Remove cal.o. + * cal.c: Delete. + * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. + (GNAT.Calendar): Do not mention the obsolete conversion functions. + * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. + * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time + (Clock): Use type and functions from System.C_Time. + * libgnarl/s-linux.ads: Remove with clause for System.Parameters. + Remove declarations of C time types. + * libgnarl/s-linux__alpha.ads: Likewise. + * libgnarl/s-linux__android-aarch64.ads: Likewise. + * libgnarl/s-linux__android-arm.ads: Likewise. + * libgnarl/s-linux__hppa.ads: Likewise. + * libgnarl/s-linux__loongarch.ads: Likewise. + * libgnarl/s-linux__mips.ads: Likewise. + * libgnarl/s-linux__riscv.ads: Likewise. + * libgnarl/s-linux__sparc.ads: Likewise. + * libgnarl/s-osinte__aix.ads: Likewise. + * libgnarl/s-osinte__android.ads: Likewise. + * libgnarl/s-osinte__cheribsd.ads: Likewise. + * libgnarl/s-osinte__darwin.ads: Likewise. + * libgnarl/s-osinte__dragonfly.ads: Likewise. + * libgnarl/s-osinte__freebsd.ads: Likewise. + * libgnarl/s-osinte__gnu.ads: Likewise. + * libgnarl/s-osinte__hpux.ads: Likewise. + * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. + * libgnarl/s-osinte__linux.ads: Likewise. + * libgnarl/s-osinte__lynxos178e.ads: Likewise. + * libgnarl/s-osinte__qnx.ads: Likewise. + * libgnarl/s-osinte__rtems.ads: Likewise. + * libgnarl/s-osinte__solaris.ads: Likewise. + * libgnarl/s-osinte__vxworks.ads: Likewise. + * libgnarl/s-qnx.ads: Likewise. + * libgnarl/s-linux__x32.ads: Delete. + * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. + (To_Timespec): Likewise. + * libgnarl/s-osinte__aix.adb: Likewise. + * libgnarl/s-osinte__dragonfly.adb: Likewise. + * libgnarl/s-osinte__freebsd.adb: Likewise. + * libgnarl/s-osinte__gnu.adb: Likewise. + * libgnarl/s-osinte__lynxos178.adb: Likewise. + * libgnarl/s-osinte__posix.adb: Likewise. + * libgnarl/s-osinte__qnx.adb: Likewise. + * libgnarl/s-osinte__rtems.adb: Likewise. + * libgnarl/s-osinte__solaris.adb: Likewise. + * libgnarl/s-osinte__vxworks.adb: Likewise. + * libgnarl/s-osinte__x32.adb: Likewise. + * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. + (Monotonic_Clock): Use type and functions from System.C_Time. + (RT_Resolution): Likewise. + (Timed_Sleep): Likewise. + (Timed_Delay): Likewise. + * libgnarl/s-taprop__vxworks.adb: Likewise. + * libgnarl/s-tpopmo.adb: Likewise. + * libgnarl/s-osinte__android.adb: Delete. + * libgnat/g-c_time.ads: New file. + * libgnat/g-calend.adb: Delegate to System.C_Time. + * libgnat/g-calend.ads: Likewise. + * libgnat/g-socket.adb: Likewise. + * libgnat/g-socthi.adb: Likewise. + * libgnat/g-socthi__vxworks.adb: Likewise. + * libgnat/g-sothco.ads: Likewise. + * libgnat/g-spogwa.adb: Likewise. + * libgnat/s-c_time.adb: New file. + * libgnat/s-c_time.ads: Likewise. + * libgnat/s-optide.adb: Import nanosleep here. + * libgnat/s-os_lib.ads (time_t): Remove. + (To_Ada): Adjust. + (To_C): Likewise. + * libgnat/s-os_lib.adb: Likewise. + * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. + * libgnat/s-osprim__posix.adb: Likewise. + * libgnat/s-osprim__posix2008.adb: Likewise. + * libgnat/s-osprim__rtems.adb: Likewise. + * libgnat/s-osprim__unix.adb: Likewise. + * libgnat/s-osprim__solaris.adb: Delete. + * libgnat/s-osprim__x32.adb: Likewise. + * libgnat/s-parame.ads (time_t_bits): Remove. + * libgnat/s-parame__hpux.ads: Likewise. + * libgnat/s-parame__vxworks.ads: Likewise. + * libgnat/s-parame__posix2008.ads: Delete. + * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. + +2025-07-31 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/120440 + * gcc-interface/Makefile.in (GNATLINK_OBJS): Add s-excmac.o. + (GNATMAKE_OBJS): Likewise. + +2025-07-31 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/114065 + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-c_time$(objext) and + s-c_time$(objext). + (Aarch64/Android): Do not use s-osinte__android.adb. + (SPARC/Solaris): Do not use s-osprim__solaris.adb. + (x86/Solaris): Likewise. + (LynxOS178): Do not use s-parame__posix2008.ads. + (RTEMS): Likewise. + (x32/Linux): Likewise, as well as s-linux__x32.ads. Replace + s-osprim__x32.adb with s-osprim__posix.adb. + (LIBGNAT_OBJS): Remove cal.o. + * cal.c: Delete. + * doc/gnat_rm/the_gnat_library.rst (GNAT.C_Time): New entry. + (GNAT.Calendar): Do not mention the obsolete conversion functions. + * impunit.adb (Non_Imp_File_Names_95): Add g-c_time. + * libgnarl/a-exetim__posix.adb: Add with clause for System.C_Time + (Clock): Use type and functions from System.C_Time. + * libgnarl/s-linux.ads: Remove with clause for System.Parameters. + Remove declarations of C time types. + * libgnarl/s-linux__alpha.ads: Likewise. + * libgnarl/s-linux__android-aarch64.ads: Likewise. + * libgnarl/s-linux__android-arm.ads: Likewise. + * libgnarl/s-linux__hppa.ads: Likewise. + * libgnarl/s-linux__loongarch.ads: Likewise. + * libgnarl/s-linux__mips.ads: Likewise. + * libgnarl/s-linux__riscv.ads: Likewise. + * libgnarl/s-linux__sparc.ads: Likewise. + * libgnarl/s-osinte__aix.ads: Likewise. + * libgnarl/s-osinte__android.ads: Likewise. + * libgnarl/s-osinte__cheribsd.ads: Likewise. + * libgnarl/s-osinte__darwin.ads: Likewise. + * libgnarl/s-osinte__dragonfly.ads: Likewise. + * libgnarl/s-osinte__freebsd.ads: Likewise. + * libgnarl/s-osinte__gnu.ads: Likewise. + * libgnarl/s-osinte__hpux.ads: Likewise. + * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. + * libgnarl/s-osinte__linux.ads: Likewise. + * libgnarl/s-osinte__lynxos178e.ads: Likewise. + * libgnarl/s-osinte__qnx.ads: Likewise. + * libgnarl/s-osinte__rtems.ads: Likewise. + * libgnarl/s-osinte__solaris.ads: Likewise. + * libgnarl/s-osinte__vxworks.ads: Likewise. + * libgnarl/s-qnx.ads: Likewise. + * libgnarl/s-linux__x32.ads: Delete. + * libgnarl/s-osinte__darwin.adb (To_Duration): Remove. + (To_Timespec): Likewise. + * libgnarl/s-osinte__aix.adb: Likewise. + * libgnarl/s-osinte__dragonfly.adb: Likewise. + * libgnarl/s-osinte__freebsd.adb: Likewise. + * libgnarl/s-osinte__gnu.adb: Likewise. + * libgnarl/s-osinte__lynxos178.adb: Likewise. + * libgnarl/s-osinte__posix.adb: Likewise. + * libgnarl/s-osinte__qnx.adb: Likewise. + * libgnarl/s-osinte__rtems.adb: Likewise. + * libgnarl/s-osinte__solaris.adb: Likewise. + * libgnarl/s-osinte__vxworks.adb: Likewise. + * libgnarl/s-osinte__x32.adb: Likewise. + * libgnarl/s-taprop__solaris.adb: Add with clause for System.C_Time. + (Monotonic_Clock): Use type and functions from System.C_Time. + (RT_Resolution): Likewise. + (Timed_Sleep): Likewise. + (Timed_Delay): Likewise. + * libgnarl/s-taprop__vxworks.adb: Likewise. + * libgnarl/s-tpopmo.adb: Likewise. + * libgnarl/s-osinte__android.adb: Delete. + * libgnat/g-c_time.ads: New file. + * libgnat/g-calend.adb: Delegate to System.C_Time. + * libgnat/g-calend.ads: Likewise. + * libgnat/g-socket.adb: Likewise. + * libgnat/g-socthi.adb: Likewise. + * libgnat/g-socthi__vxworks.adb: Likewise. + * libgnat/g-sothco.ads: Likewise. + * libgnat/g-spogwa.adb: Likewise. + * libgnat/s-c_time.adb: New file. + * libgnat/s-c_time.ads: Likewise. + * libgnat/s-optide.adb: Import nanosleep here. + * libgnat/s-os_lib.ads (time_t): Remove. + (To_Ada): Adjust. + (To_C): Likewise. + * libgnat/s-os_lib.adb: Likewise. + * libgnat/s-osprim__darwin.adb: Delegate to System.C_Time. + * libgnat/s-osprim__posix.adb: Likewise. + * libgnat/s-osprim__posix2008.adb: Likewise. + * libgnat/s-osprim__rtems.adb: Likewise. + * libgnat/s-osprim__unix.adb: Likewise. + * libgnat/s-osprim__solaris.adb: Delete. + * libgnat/s-osprim__x32.adb: Likewise. + * libgnat/s-parame.ads (time_t_bits): Remove. + * libgnat/s-parame__hpux.ads: Likewise. + * libgnat/s-parame__vxworks.ads: Likewise. + * libgnat/s-parame__posix2008.ads: Delete. + * s-oscons-tmplt.c (SIZEOF_tv_nsec): New constant. + +2025-07-28 Marc Poulhiès <poulhies@adacore.com> + + * gcc-interface/trans.cc (gnat_to_gnu): Fix typo in comment. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc-interface/misc.cc: Make + diagnostics::context::m_source_printing private. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc-interface/trans.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc-interface/misc.cc: Update for diagnostic_context becoming + diagnostics::context. + +2025-07-25 Marc Poulhiès <poulhies@adacore.com> + + * gcc-interface/utils.cc (update_pointer_to): Renamed ptr/old_ptr, ref/old_ref. + +2025-07-25 Alexandre Oliva <oliva@adacore.com> + + * s-oscons-tmplt.c (CLOCK_RT_Ada) [__vxworks]: Define to + CLOCK_REALTIME on VxWorks6. + * gsocket.h [__vxworks]: Include strings.h if available. + * sysdep.c [__vxworks]: Likewise. + +2025-07-25 Steve Baird <baird@adacore.com> + + * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): Do + nothing and simply return if either Ada_Version <= Ada_95 or if + the function being returned from lacks the extra formal parameter + needed to perform the check (typically because the result is + tagged). + +2025-07-25 Bob Duff <duff@adacore.com> + + * sem_ch12.adb (Check_Formal_Package_Instance): + Do nothing in case of E_Subprogram_Body. + +2025-07-25 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Discriminants): Update comments + +2025-07-25 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Build_Derived_Record_Type): Set flag appropriately. + +2025-07-25 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/a-calend.adb (To_Struct_Timespec_64): Deal with negative + Duration values and truncate the nanoseconds too. + * libgnat/g-calend.adb (timeval_to_duration): Unsuppress overflow + checks. + (duration_to_timeval): Likewise. Deal with negative Duration values + as well as integral Duration values. + * libgnat/g-socket.adb (To_Timeval): Simplify the implementation. + +2025-07-24 Steve Baird <baird@adacore.com> + + * exp_aggr.adb (Convert_To_Assignments): Add calls to Ensure_Defined + before generating assignments to components that could be + associated with a not-yet-defined itype. + +2025-07-24 Steve Baird <baird@adacore.com> + + * accessibility.adb (Function_Call_Or_Allocator_Level): Handle the + case where a function that has an Extra_Accessibility_Of_Result + parameter returns as its result a call to another such function. + In that case, the extra parameter should be passed along. + (Check_Return_Construct_Accessibility): Replace a warning about an + inevitable failure of a dynamic check with a legality-rule-violation + error message; adjust the text of the message accordingly. + * exp_ch6.ads (Apply_Access_Discrims_Accessibility_Check): New + procedure, following example of the existing + Apply_CW_Accessibility procedure. + * exp_ch6.adb (Apply_Access_Discrims_Accessibility_Check): body + for new procedure. + (Expand_Simple_Function_Return): Add call to new + Apply_Access_Discrims_Accessibility_Check procedure. + * exp_ch3.adb (Make_Allocator_For_Return): Add call to new + Apply_Access_Discrims_Accessibility_Check procedure. + +2025-07-24 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst: + clarify parameter description. + * gnat_rm.texi: Regenerate. + +2025-07-22 Gary Dismukes <dismukes@adacore.com> + + * sem_ch8.adb (End_Use_Type): Add a test for there not being an earlier + use_type_clause for the same type as an additional criterion for turning + off In_Use and Current_Use_Clause. + +2025-07-22 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Eval_Attribute): Only fold array attributes when prefix + is static or at least safe to evaluate + +2025-07-22 Ronan Desplanques <desplanques@adacore.com> + + * einfo.ads (Is_Controlled_Active): Fix pasto in comment. + * sem_util.ads (Propagate_Controlled_Flags): Update comment for + Destructor aspect. + +2025-07-22 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. + * snames.ads-tmpl: Add name for new aspect. + * gen_il-fields.ads (Has_Destructor, Is_Destructor): Add new fields. + * gen_il-gen-gen_entities.adb (E_Procedure, Type_Kind): Add new fields. + * einfo.ads (Has_Destructor, Is_Destructor): Document new fields. + * aspects.ads: Add new aspect. + * sem_ch13.adb (Analyze_Aspect_Specifications, + Check_Aspect_At_Freeze_Point, Check_Aspect_At_End_Of_Declarations): + Add semantic analysis for new aspect. + (Resolve_Finalization_Procedure): New function. + (Resolve_Finalizable_Argument): Use new function above. + * sem_util.adb (Propagate_Controlled_Flags): Extend for new field. + * freeze.adb (Freeze_Entity): Add legality check for new aspect. + * exp_ch3.adb (Expand_Freeze_Record_Type, Predefined_Primitive_Bodies): + Use new field. + * exp_ch7.adb (Build_Finalize_Statements): Add expansion for + destructors. + (Make_Final_Call, Build_Record_Deep_Procs): Adapt to new Has_Destructor + field. + (Build_Adjust_Statements): Tweak to handle cases of empty lists. + * gnat_rm.texi: Regenerate. + +2025-07-22 Denis Mazzucato <mazzucato@adacore.com> + + * sem_ch6.adb (Might_Need_BIP_Task_Actuals): Before retrieving the original corresponding + operation we retrieve first the root of the aliased chain. + +2025-07-22 Ronan Desplanques <desplanques@adacore.com> + + * gen_il-fields.ads (Is_Implicit_Full_View): New field. + * gen_il-gen-gen_entities.adb (Type_Kind): Use new field. + * einfo.ads (Is_Implicit_Full_View): Document new field. + * exp_ch7.adb (Make_Adjust_Call, Make_Init_Call, Make_Final_Call): Use + new field. + * exp_util.adb (Finalize_Address): Likewise. + * sem_ch3.adb (Copy_And_Build): Set new field. + +2025-07-22 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.ads (May_Generate_Large_Temp): Delete. + * exp_util.adb (May_Generate_Large_Temp): Likewise. + (Safe_Unchecked_Type_Conversion): Do not take stack checking into + account to compute the result. + +2025-07-22 Javier Miranda <miranda@adacore.com> + + * sinfo.ads (Is_Expanded_Dispatching_Call): New flag. + (Tag_Propagated): New flag. + * exp_ch6.adb (Expand_Call_Helper): Propagate the tag when + the dispatching call is placed in conditionl expressions or + case-expressions. + * sem_ch5.adb (Analyze_Assignment): For assignment of tag- + indeterminate expression, do not propagate the tag if + previously done. + * sem_disp.adb (Is_Tag_Indeterminate): Add missing support + for conditional expression and case expression. + * exp_disp.ads (Is_Expanded_Dispatching_Call): Removed. Function + replaced by a new flag in the nodes. + * exp_disp.adb (Expand_Dispatching_Call): Set a flag in the + call node to remember that the call has been expanded. + (Is_Expanded_Dispatching_Call): Function removed. + * gen_il-fields.ads (Tag_Propagated): New flag. + (Is_Expanded_Dispatching_Call): New flag. + * gen_il-gen-gen_nodes.adb (Tag_Propagated): New flag. + (Is_Expanded_Dispatching_Call): New flag. + +2025-07-22 Gary Dismukes <dismukes@adacore.com> + + * libgnat/a-cbhama.ads (Empty): Add missing default to Capacity formal. + * libgnat/a-cbhama.adb (Empty): Add missing default to Capacity formal. + * exp_aggr.adb (Build_Size_Expr): Test for presence of Capacity + discriminant as additional criterion for generating the call to + the Length function. Update comments. + +2025-07-22 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Safe_Unchecked_Type_Conversion): Always return True + if the expression is the prefix of an N_Selected_Component. + +2025-07-22 Denis Mazzucato <mazzucato@adacore.com> + + * sem_ch6.adb (Might_Need_BIP_Task_Actuals): Check whether No_Task_Parts is enabled in any + of the derived types, or interfaces, from the user-defined primitive return type. + * sem_ch13.adb (Analyze_Aspect_Specifications): Add No_Task_Parts and No_Controlled_Parts to + the representation chain to be visible in the full view of private types. + * aspects.ads (Nonoverridable_Aspect_Id): As per GNAT RM, No_Task_Parts is nonoverridable. + * sem_util.adb (Check_Inherited_Nonoverridable_Aspects): Likewise. + * sem_util.ads: Fix typo and style. + * sem_disp.adb: Missing comment. + +2025-07-22 Javier Miranda <miranda@adacore.com> + + * einfo.ads (Extra_Formals): Complete documentation. + (Has_First_Controlling_Parameter_Aspect): Place it in alphabetical order. + (Has_Frozen_Extra_Formals): New attribute. + * gen_il-fields.ads (Has_Frozen_Extra_Formals): New entity field. + * gen_il-gen-gen_entities.adb (Has_Frozen_Extra_Formals): Adding new + entity flag to subprograms, subprogram types, and and entries. + * gen_il-internals.adb (Image): Adding Has_Frozen_Extra_Formals. + * exp_ch3.adb (Build_Array_Init_Proc): Freeze its extra formals. + (Build_Init_Procedure): Freeze its extra formals. + (Expand_Freeze_Record_Type): For tagged types with foreign convention + create the extra formals of primitives with convention Ada. + * exp_ch6.ads (Create_Extra_Actuals): New subprogram. + * exp_ch6.adb (Check_BIP_Actuals): Adding assertions. + (Create_Extra_Actuals): New subprogram that factorizes code from + Expand_Call_Helper. + (Expand_Call_Helper): Adding support to defer the addition of extra + actuals. Move the code that adds the extra actuals to a new subprogram. + (Is_Unchecked_Union_Equality): Renamed as Is_Unchecked_Union_Predefined_ + Equality_Call. + * exp_ch7.adb (Create_Finalizer): Freeze its extra formals. + (Wrap_Transient_Expression): Link the temporary with its relocated + expression to facilitate locating the expression in the expanded code. + * exp_ch9.ads (Expand_N_Entry_Declaration): Adding one formal. + * exp_ch9.adb (Expand_N_Entry_Declaration): Defer the expansion of + the entry if the extra formals are not available; analyze the built + declarations for the record type that holds all the parameters if + the expansion of the entry declaration was deferred. + * exp_disp.adb (Expand_Dispatching_Call): Handle deferred extra formals. + (Set_CPP_Constructors): Freeze its extra formals. + * freeze.adb (Freeze_Entity): Create the extra actuals of acccess to + subprograms whose designated type is a subprogram type. + (Freeze_Subprogram): Adjust assertion to support deferred extra formals, + and freeze extra formals of non-dispatching subprograms with foreign + convention. Added assertion to check matching of formals in thunks. + * sem_aux.adb (Get_Called_Entity): Adding documentation. + * sem_ch3.adb (Analyze_Full_Type_Declaration): Create the extra formals + of deferred subprograms, subprogram types and entries; create also the + extra actuals of deferred calls. + * sem_ch6.ads (Freeze_Extra_Formals): New subprogram. + (Deferred_Extra_Formals_Support): New package. + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Create the extra formals + of subprograms without separate spec. + (Add_Extra_Formal): Add documentation. + (Has_Extra_Formals): Removed. + (Parent_Subprogram): Adding documentation. + (Create_Extra_Formals): Defer adding extra formals if the underlying_type + of some formal type or return type is not available. + (Extra_Formals_Match_OK): Add missing check on the extra formals of + unchecked unions. + (Freeze_Extra_Formals): New subprogram. + (Deferred_Extra_Formals_Support): New package. + * sem_ch9.adb (Analyze_Entry_Declaration): Freeze its extra formals. + * sem_ch13.adb (New_Put_Image_Subprogram): ditto. + * sem_util.ads (Is_Unchecked_Union_Equality): New subprogram. + * sem_util.adb (Is_Unchecked_Union_Equality): ditto. + +2025-07-22 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Get_Actual_Subtype): Do the same for GCC and GNATprove + backends. + +2025-07-22 Martin Clochard <clochard@adacore.com> + + * exp_spark.adb (Expand_SPARK): Add expansion of continue statements. + (Expand_SPARK_N_Continue_Statement): Expand continue statements resolved + as procedure calls into said procedure calls. + +2025-07-22 Piotr Trojanek <trojanek@adacore.com> + + * sem_res.adb (Resolve_Call): Look at the base type of actual parameter + when checking call to Set_Handler. + +2025-07-22 Eric Botcazou <ebotcazou@adacore.com> + + * sem_util.adb (Get_Actual_Subtype): Only create a new subtype when + the expander is active. Remove a useless test of type inequality, + as well as a useless call to Set_Has_Delayed_Freeze on the subtype. + +2025-07-22 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Build_Size_Expr): Change test of "not Present (...)" + to "No (...)". + +2025-07-22 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Build_Size_Expr): Determine the length of a container + aggregate association in the case where it's an iteration over an + object of a container type coming from an instantiation of a predefined + container generic. Minor updates to existing comments. + +2025-07-22 Ghjuvan Lacambre <lacambre@adacore.com> + + * exp_util.adb (Finalize_Address): Prevent infinite loop + +2025-07-22 Steve Baird <baird@adacore.com> + + * sem_aux.ads: Declare new function Unique_Component_Name. + * sem_aux.adb: Implement new function Unique_Component_Name. + +2025-07-22 Viljar Indus <indus@adacore.com> + + * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): + Ensure the Expression_Copy always has a parent before + calling any analyze. + +2025-07-22 Steve Baird <baird@adacore.com> + + * exp_aggr.adb (Build_Record_Aggr_Code.Gen_Assign): In the case of + an aggregate component where the component type is mutably tagged + and the component value is provided by a qualified aggregate (and + qualified with a specific type), avoid incorrectly rejecting the + inner aggregate for violating the rule that the type of an + aggregate shall not be class-wide. + * exp_attr.adb: For a predefined streaming operation (i.e., Read, + Write, Input, or Output) of a class-wide type, the external name + of the tag of the value is normally written out by Output and read + in by Input. In the case of a mutably tagged type, this is instead + done in Write and Read. + * exp_ch4.adb (Expand_Composite_Equality): In the case of an + equality comparison for a type having a mutably tagged component, + we want the component comparison to compare two values of the + mutably tagged type, not two values of the corresponding + array-of-bytes-ish representation type. Even if there are no + user-defined equality functions anywhere in sight, comparing the + array values still doesn't work because undefined bits may end up + participating in the comparison (resulting in an incorrect result + of False). + * exp_put_image.adb: In the case of a class-wide type, the + predefined Image attribute includes the name of the specific type + (and a "'" character, to follow qualified expression syntax) to + indicate the tag of the value. With the introduction of mutably + tagged types, this case can now arise in the case of a component + (of either an enclosing array or an enclosing record), not just + for a top-level object. So we factor the code to do this into a + new procedure, Put_Specific_Type_Name_Qualifier, so that it can be + called from more than one place. This reorganization also involves + replacing the procedure Put_String_Exp with a new procedure, + Put_String_Exp_To_Buffer, declared in a less nested scope. For + mutably tagged components (at the source level) the component type + (at the GNAT tree level) is an array of bytes (actually a two + field record containing an array of bytes, but that's a detail). + Appropriate conversions need to be generated so that we don't end + up generating an image for an array of bytes; this is done at the + same places where Put_Specific_Type_Name_Qualifier is called + (for components) by calling Make_Mutably_Tagged_Conversion. + * exp_strm.adb (Make_Field_Attribute): Add + Make_Mutably_Tagged_Conversion call where we construct a + Selected_Component node and the corresponding component type is + the internal representation type for a mutably tagged type. + (Stream_Base_Type): Return the mutably + tagged type if given the corresponding internal representation type. + * sem_ch3.adb (Array_Type_Declaration): In the case where the + source-level component type of an array type is mutably tagged, + set the Component_Type field of the base type of the declared + array type (as opposed to that of the first subtype of the array + type) to the corresponding internal representation type. + * sem_ch4.adb (Analyze_Selected_Component): In the case of a + selected component name which references a component whose type is + the internal representation type of a mutably tagged type, + generate a conversion to the mutably tagged type. + +2025-07-21 Eric Botcazou <ebotcazou@gcc.gnu.org> + + PR ada/121184 + * styleg.adb (Check_Comment): Use consistent warning message. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc-interface/trans.cc (gnat_to_gnu): Pass null pointer to + parse_{input,output}_constraint(). + +2025-07-18 Steve Baird <baird@adacore.com> + + * sem_ch12.adb (Validate_Derived_Type_Instance): Cope with the case + where the ancestor type for a formal derived type is declared in + an earlier formal package but Get_Instance_Of does not return the + corresponding type from the corresponding actual package. + +2025-07-18 Bob Duff <duff@adacore.com> + + * tbuild.adb (Unchecked_Convert_To): Back out + change. + +2025-07-18 Marc Poulhiès <poulhies@adacore.com> + Eric Botcazou <botcazou@adacore.com> + + * exp_ch6.adb (Convert): Do not call Expand_Inlined_Call for + unsupported cases. + * inline.adb (Expand_Inlined_Call): Add assert to catch unsupported + case. + +2025-07-18 Gary Dismukes <dismukes@adacore.com> + + * einfo.ads: Document new field Overridden_Inherited_Operation and + list it as a field for the entity kinds that it applies to. + * gen_il-fields.ads (type Opt_Field_Enum): Add new literal + Overridden_Inherited_Operation to the type. + * gen_il-gen-gen_entities.adb: Add Overridden_Inherited_Operation as + a field of entities of kinds E_Enumeration_Literal and Subprogram_Kind. + * sem_ch4.adb (Is_Callable_Private_Overriding): Change name (was + Is_Private_Overriding). Replace Is_Hidden test on Overridden_Operation + with test of Is_Hidden on the new field Overridden_Inherited_Operation. + * sem_ch6.adb (New_Overloaded_Entity): Set the new field + Overridden_Inherited_Operation on an operation derived from + an interface to refer to the inherited operation of a private + extension that's overridden by the derived operation. Also set + that field in the more common cases of an explicit subprogram + that overrides, to refer to the inherited subprogram that is + overridden. (Contrary to its name, the Overridden_Operation + field of the overriding subprogram, which is also set in these + places, refers to the *parent* subprogram from which the inherited + subprogram is derived.) Also, remove a redundant Present (Alias (S)) + test in an if_statement and the dead "else" part of that statement. + +2025-07-18 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Build_Elaboration_Entity): Set ghost mode to none + before creating the elaboration entity; restore the ghost mode + afterwards. + +2025-07-18 Javier Miranda <miranda@adacore.com> + + * exp_aggr.adb (Gen_Assign): Code cleanup. + (Initialize_Component): Do not adjust the tag when the type of + the aggregate components is a mutably tagged type. + +2025-07-14 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/121056 + * sem_ch4.adb (Try_Object_Operation.Try_Primitive_Operation): Add + test on Is_Record_Type before accessing Underlying_Record_View. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * par-load.adb: Comment spelling fix: bellow -> below. + * libgnarl/s-taskin.ads: Likewise. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/Make-lang.in (ACATSDIR): Change to acats-4. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/utils.cc (make_packable_type): Clear the TYPE_PACKED + flag in the case where the alignment is bumped. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.cc (Subprogram_Body_to_gnu): Do not generate + a block-copy out for a null initialization procedure when the _Init + parameter is not passed in. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Only apply the + transformation to integer types. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Add guards. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): In the case of a + subprogram using the Copy-In/Copy-Out mechanism, deal specially with + the case of 2 parameters of differing sizes. + * gcc-interface/trans.cc (Subprogram_Body_to_gnu): In the case of a + subprogram using the Copy-In/Copy-Out mechanism, make sure the types + are consistent on the two sides for all the parameters. + +2025-07-04 Steve Baird <baird@adacore.com> + + * sem_res.adb (Resolve_Type_Conversion): Replace code for + detecting a similar case with a more comprehensive test. + +2025-07-04 Bob Duff <duff@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst + (Short_Circuit_And_Or): Add more documentation. + * sem_ch8.adb (Analyze_Subprogram_Renaming): + Disallow renamings. + * gnat_rm.texi: Regenerate. + +2025-07-04 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch7.adb (Make_Final_Call): Tweak search of Finalize primitive. + * exp_util.adb (Finalize_Address): Likewise. + +2025-07-04 Eric Botcazou <ebotcazou@adacore.com> + + * freeze.adb (Check_Compile_Time_Size): Try harder to see whether + the bounds of array types are known at compile time. + +2025-07-04 Piotr Trojanek <trojanek@adacore.com> + + * sem_aux.ads (First_Discriminant): Remove space before period. + +2025-07-04 Steve Baird <baird@adacore.com> + + * sem_ch13.adb (Analyze_Record_Representation_Clause): In deciding + whether to generate a warning about a missing component clause, in + addition to calling Is_Unchecked_Union also call a new local + function, Unchecked_Union_Pragma_Pending, which checks for the + case of a not-yet-analyzed Unchecked_Union pragma occurring later + in the declaration list. + +2025-07-04 Steve Baird <baird@adacore.com> + + * mutably_tagged.adb (Make_CW_Size_Compile_Check): Include the + value of the Size'Class limit in the message generated via a + Compile_Time_Error pragma. + +2025-07-04 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch13.adb (Check_Aspect_At_Freeze_Point): Remove obsolete bits. + +2025-07-04 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch13.adb (Analyze_Aspect_Specifications): Fix error emission. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/Makefile.in (gnatlib-sjlj): Delete. + (gnatlib-zcx): Do not modify Frontend_Exceptions constant. + * libgnat/system-linux-loongarch.ads (Frontend_Exceptions): Delete. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (type_contains_only_integral_data): Do not + return false only because the type contains pointer data. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity): Use default messages + for errors reported for Object_Size clauses. + (validate_size): Give an error for stand-alone objects of composite + types if the specified size is not a multiple of the alignment. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.cc (addressable_p): Add COMPG third parameter. + <COMPONENT_REF>: Do not return true out of alignment considerations + for non-strict-alignment targets if COMPG is set. + (Call_to_gnu): Pass true as COMPG in the call to the addressable_p + predicate if the called subprogram is an initialization procedure. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.cc (gnat_to_gnu) <N_Allocator>: Allocate the + bounds alongside the data if the Is_Constr_Array_Subt_With_Bounds + flag is set on the designated type. + <N_Free_Statement>: Take into account the allocated bounds if the + Is_Constr_Array_Subt_With_Bounds flag is set on the designated type. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_component_type): Validate the + Component_Size like the size of a type only if the component type + is actually packed. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_elab.adb (Check_Overriding_Primitive): Find early call region + of the subprogram body declaration, not of the subprogram body stub. + +2025-07-03 Bob Duff <duff@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Unchecked_Type_Conversion): + Remove useless Nmake_Assert. + * tbuild.adb (Unchecked_Convert_To): + Narrow the bitfield-related conditions. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_util.adb (Insert_Actions): Fix check. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch6.adb (Expand_Ctrl_Function_Call): Precisify comment. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not bail out for the + declarations of return objects. + +2025-07-03 Daniel King <dmking@adacore.com> + + * Makefile.rtl (LIBGNAT_TARGET_PAIRS): New unit s-tsgsba__cheri.adb for morello-freebsd. + * libgnarl/s-tassta.adb (Get_Stack_Base): New function. + * libgnarl/s-tsgsba__cheri.adb: New file for CHERI targets. + * libgnarl/s-tsgsba.adb: New default file for non-CHERI targets. + * libgnat/s-stausa.adb (Fill_Stack, Compute_Result): Port to CHERI. + * libgnat/s-stausa.ads (Initialize_Analyzer, Stack_Analyzer): Port to CHERI. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Check_Return_Subtype_Indication): Use Original_Node. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Check_Return_Subtype_Indication): Use type from + explicit subtype indication, when possible. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Check_Return_Subtype_Indication): Adjust error message + to match the RM wording. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Check_Return_Subtype_Indication): Use the nominal + subtype of a return object; literally implement the RM rule about + elementary types; check for static subtype compatibility both when + the subtype is given as a subtype mark and a subtype indication. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * repinfo.adb (First_Comp_Or_Discr.Is_Placed_Before): Return True + only if the components are in the same component list. + +2025-07-03 Denis Mazzucato <mazzucato@adacore.com> + + * sem_disp.adb (Check_Dispatching_call): Fix uninitialized Subp_Entity. + * sem_util.adb (Update_Controlling_Argument): No need to replace controlling argument + in case of functions. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * errid.ads: Adjust header to renaming and fix copyright line. + * errid.adb: Adjust header to renaming and add blank line. + * erroutc-pretty_emitter.ads: Adjust header to renaming. + * erroutc-pretty_emitter.adb: Likewise. + * erroutc-sarif_emitter.ads: Likewise. + * erroutc-sarif_emitter.adb: Likewise. + * errsw.ads: Adjust header to renaming and add blank line. + * errsw.adb: Likewise. + * json_utils.ads: Likewise. + * json_utils.adb: Adjust header to renaming. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * errid.ads (Diagnostic_Entries): Now a constant. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * errid.ads (Diagnostic_Entries): Remove nested aggregate. + * errsw.adb (Switches): Likewise. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch7.adb (Make_Deep_Record_Body): Fix case of absent Initialize + primitive. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb (Count_Default_Sized_Task_Stacks): Refine subtypes of + parameters; same for callsites. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * exp_imgv.adb (Expand_Value_Attribute): Do not call Set_Etype on N + after rewriting it by means of OK_Convert_To. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_aggr.adb (Generate_Finalization_Actions): Stop assuming that + initialize primitive exists. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch7.adb (Build_Record_Deep_Procs): Fix typo in comment. + +2025-07-03 Gary Dismukes <dismukes@adacore.com> + + * sem_ch12.adb (Install_Spec): Remove "not Is_Generic_Instance (Par)" + in test for setting Instance_Parent_Unit. Revise comment to no longer + say "noninstance", plus remove "???". + (Remove_Parent): Restructure if_statement to allow for both "elsif" + parts to be executed (by changing them to be separate if_statements + within an "else" part). + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch3.adb (Predefined_Primitive_Bodies): Fix comment. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_tss.adb (TSS): Refactor IF condition to make code smaller. + * lib.adb (Increment_Serial_Number, Synchronize_Serial_Number): + Use type of renamed object when creating renaming. + * lib.ads (Unit_Record): Refine subtype of dependency number. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuef.adb: Document the prerequisites more precisely. + * libgnat/a-tifiio.adb (OK_Get_32): Adjust to the prerequisites. + (OK_Get_64): Likewise. + * libgnat/a-tifiio__128.adb (OK_Get_32): Likewise. + (OK_Get_64): Likewise. + (OK_Get_128): Likewise. + * libgnat/a-wtfiio.adb (OK_Get_32): Likewise. + (OK_Get_64): Likewise. + * libgnat/a-wtfiio__128.adb (OK_Get_32): Likewise. + (OK_Get_64): Likewise. + (OK_Get_128): Likewise. + * libgnat/a-ztfiio.adb (OK_Get_32): Likewise. + (OK_Get_64): Likewise. + * libgnat/a-ztfiio__128.adb (OK_Get_32): Likewise. + (OK_Get_64): Likewise. + (OK_Get_128): Likewise. + * exp_imgv.adb (Expand_Value_Attribute): Adjust the conditions under + which the RE_Value_Fixed{32,64,128} routines are called for ordinary + fixed-point types. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch3.adb (Make_Predefined_Primitive_Specs): Fix comment. + +2025-07-03 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch7.adb (Insert_Actions_In_Scope_Around): Fix condition. + +2025-07-03 Bob Duff <duff@adacore.com> + + * checks.adb: Remove unnecessary "return;" statements. + * eval_fat.adb: Likewise. + * exp_aggr.adb: Likewise. + * exp_attr.adb: Likewise. + * exp_ch3.adb: Likewise. + * exp_ch4.adb: Likewise. + * exp_ch5.adb: Likewise. + * exp_ch6.adb: Likewise. + * exp_unst.adb: Likewise. + * krunch.adb: Likewise. + * layout.adb: Likewise. + * libgnat/s-excdeb.adb: Likewise. + * libgnat/s-trasym__dwarf.adb: Likewise. + * par-endh.adb: Likewise. + * par-tchk.adb: Likewise. + * sem.adb: Likewise. + * sem_attr.adb: Likewise. + * sem_ch6.adb: Likewise. + * sem_elim.adb: Likewise. + * sem_eval.adb: Likewise. + * sfn_scan.adb: Likewise. + +2025-07-03 Bob Duff <duff@adacore.com> + + * doc/gnat_rm/implementation_defined_characteristics.rst: + Change Ignore to Disable. + * sem_ch13.ads (Analyze_Aspect_Specifications): + Minor: Remove incorrect comment; there is no need to check + Has_Aspects (N) at the call site. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-07-03 Bob Duff <duff@adacore.com> + + * types.ads (Empty_Or_Error): Remove. + * atree.adb: Remove reference to Empty_Or_Error. + * par-endh.adb: Likewise. + * sem_ch12.adb: Likewise. + * sem_ch3.adb: Likewise. + * sem_util.adb: Likewise. + * treepr.adb: Likewise. + +2025-07-03 Viljar Indus <indus@adacore.com> + + * sem_ch10.adb(Analyze_With_Clause): Call Semantics instead + of Analyze to bring Current_Sem_Unit up to date. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * lib-xref-spark_specific.adb + (Enclosing_Subprogram_Or_Library_Package): Traverse subunits and body + stubs. + +2025-07-03 Tonu Naks <naks@adacore.com> + + * libgnat/i-cstrin.ads (Value): add documentation + +2025-07-03 Aleksandra Pasek <pasek@adacore.com> + + * libgnat/a-strsup.adb (Super_Delete): Fix index check. + * libgnat/a-stwisu.adb (Super_Delete): Likewise. + * libgnat/a-stzsup.adb (Super_Delete): Likewise. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Handle_Changed_Representation): Alphabetize local + variables. Set the No_Finalize_Actions flag on the assignment. + +2025-07-03 Joffrey Huguet <huguet@adacore.com> + + * aspects.ads: Define an identifier for Potentially_Invalid. + * doc/gnat_rm/implementation_defined_aspects.rst: Add section for Potentially_Invalid. + * sem_attr.adb (Analyze_Attribute_Old_Result): Attribute Old is allowed to occur in a + Potentially_Invalid aspect. + * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Potentially_Invalid. + * sem_util.adb (Has_Potentially_Invalid): Returns True iff an entity is subject to the + Potentially_Invalid aspect. + * sem_util.ads (Has_Potentially_Invalid): Idem. + * snames.ads-tmpl: New name for Potentially_Invalid. + * gnat_rm.texi: Regenerate. + +2025-07-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch10.adb (Analyze_Compilation_Unit): Ignored ghost unit need no + elaboration checks. + +2025-07-03 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valued.adb (Integer_to_Decimal): Use truncation for the + scaled divide operation performed for bases other than 10. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/120705 + * exp_ch6.adb (Needs_BIP_Collection): Always return False if the + type has relaxed finalization. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuef.adb (Integer_to_Fixed): Restore rounding of the + first scaled divide operation. + +2025-07-01 Piotr Trojanek <trojanek@adacore.com> + + * gnat1drv.adb (Gnat1drv): Do minimal decoration of the spec and body + of an ignored ghost compilation unit. + +2025-07-01 Piotr Trojanek <trojanek@adacore.com> + + * ali.ads (Unit_Record): Fix grammar in comment. + * bindgen.adb (Num_Elab_Calls, Num_Primary_Stacks): Remove counters + that were only incremented and never actually used. + +2025-07-01 Tonu Naks <naks@adacore.com> + + * libgnat/s-valuer.adb (Scan_Decimal_Digits, + Scan_Integral_Digits): fix condition for rejecting + underscore. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valued.adb (Integer_To_Decimal): Deal specifically with + Val = 2**(Int'Size - 1) if Minus is not set. Exit the loops when V + saturates to 0 in the case of (huge) negative exponents. Use Base + instead of B consistently in unsigned computations. + * libgnat/s-valuef.adb (Integer_To_Fixed): Use Base instead of B + consistently in unsigned computations. + +2025-07-01 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch4.adb (Fixup_Universal_Fixed_Operation): Move to spec. + * exp_ch4.ads (Fixup_Universal_Fixed_Operation): Move from body. + * exp_spark.adb (Expand_SPARK): Call a fixup expansion routine. + +2025-07-01 Gary Dismukes <dismukes@adacore.com> + + * exp_ch3.adb (Build_Heap_Or_Pool_Allocator): Test not Has_Relaxed_Finalization + as a guard against retrieving BIP_Collection formal (and related code). + +2025-07-01 Javier Miranda <miranda@adacore.com> + + * exp_ch3.adb (Build_Untagged_Record_Equality): Report the + warning when no component of an untagged record type U is a + record type, and the type C of some of its components has + defined its user-defined equality operator "=". + * exp_ch4.adb (Expand_Composite_Equality): Report the warning + calling Warn_On_Ignored_Equality_Operator. + * sem_warn.ads (Warn_On_Ignored_Equality_Operator): New subprogram. + * sem_warn.adb (Warn_On_Ignored_Equality_Operator): Factorize code + reporting the warning. + +2025-07-01 Tonu Naks <naks@adacore.com> + + * libgnat/a-ngelfu.adb: conditional computation of X^2 + +2025-07-01 Steve Baird <baird@adacore.com> + + * Makefile.rtl: Add entry for new unit's object file. + * libgnat/s-casuti.adb: Remove bodies of subprograms that were moved + to the new unit. + * libgnat/s-casuti.ads: Replace (with renamings) declarations for + subprograms that moved to the new unit. + * libgnat/s-cautns.adb: Body for new unit (a new source file). + * libgnat/s-cautns.ads: Spec for new unit (a new source file). + * libgnat/s-valuti.adb: Use the new unit instead of the old one. + * gcc-interface/Make-lang.in: Add entries for new unit's object file. + * gcc-interface/Makefile.in: Likewise. + +2025-07-01 Gary Dismukes <dismukes@adacore.com> + + * sem_ch3.adb (Constrain_Corresponding_Record): Inherit Class_Wide_Type on the + created constrained subtype. + +2025-07-01 Artur Pietrek <pietrek@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: add + GNAT LLVM explicit selection in GPR file + * gnat_ugn.texi: Regenerate. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.adb (Shift_Address_For_Descriptor): Add dummy variable + to make sure that System_Storage_Elements is loaded. + +2025-07-01 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. + * gen_il-fields.ads (Opt_Field_Enum): Add new fields. + * gen_il-types.ads (N_Loop_Flow_Statement, N_Continue_Statement): New + node kinds. + * gen_il-gen-gen_nodes.adb (N_Loop_Flow_Statement): New abstract node + kind. + (N_Continue_Statement): New node kind. + (N_Exit_Statement): Reparent below N_Loop_Flow_Statement. + * sinfo.ads (N_Continue_Statement): Add description. + * sinfo-utils.ads (Loop_Flow_Keyword): New function. + * sinfo-utils.adb (Loop_Flow_Keyword): New function. + * gen_il-gen-gen_entities.adb (E_Loop): Add new field. + * einfo.ads (Continue_Mark): Document new field. + * sprint.adb (Sprint_Node_Actual): Update for new node kind. + * snames.ads-tmpl: Add new keyword. + * par-ch5.adb (P_Continue_Statement, Parse_Loop_Flow_Statement): New + functions. + (P_Sequence_Of_Statements): Handle continue statements. + (P_Exit_Statement): Use Parse_Loop_Flow_Statement. + * sem.adb (Analyze): Handle new node kind. + * sem_ch5.adb (Analyze_Loop_Flow_Statement): New function. + (Analyze_Continue_Statement): New procedure. + (Analyze_Exit_Statement): Use new Analyze_Loop_Flow_Statement function. + * sem_ch5.ads (Analyze_Continue_Statement): New procedure. + * expander.adb (Expand): Handle new node kind. + * exp_ch5.ads (Expand_N_Continue_Statement): New procedure. + * exp_ch5.adb (Expand_Loop_Flow_Statement): New procedure. + (Expand_N_Continue_Statement): New procedure. + (Expand_N_Exit_Statement): Use new Expand_Loop_Flow_Statement + procedure. + (Build_Formal_Container_Iteration): Always reuse original loop entity. + * gnat_rm.texi: Regenerate. + +2025-07-01 Bob Duff <duff@adacore.com> + + * repinfo.adb (List_Entities): + Disable output in case of object renamings. + +2025-07-01 Aleksandra Pasek <pasek@adacore.com> + + * libgnat/s-valuen.ads: Correct comment. + +2025-07-01 Alexandre Oliva <oliva@adacore.com> + + * init.c: Include string.h. + +2025-07-01 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm.rst: remove ref to 2012 chapter + * doc/gnat_rm/about_this_guide.rst: remove ref to 2012 chapter + * doc/gnat_rm/compatibility_and_porting_guide.rst: update list of + supported versions + * doc/gnat_rm/implementation_of_ada_2012_features.rst: delete + * doc/gnat_rm/specialized_needs_annexes.rst: update list of + supported versions + * gnat_rm.texi: Regenerate. + +2025-07-01 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm/implementation_advice.rst: remove GLADE + * doc/gnat_rm/implementation_defined_characteristics.rst: remove GLADE + * doc/gnat_rm/specialized_needs_annexes.rst: remove GLADE + * doc/gnat_rm/the_gnat_library.rst: remove GLADE + * gnat_rm.texi: Regenerate. + +2025-07-01 Alexandre Oliva <oliva@adacore.com> + + * adaint.c [__vxworks] (alloca): Redirect to builtin. + +2025-07-01 Ghjuvan Lacambre <lacambre@adacore.com> + + * freeze.adb (Freeze_Record_Type): Check for CodePeer_Mode. + +2025-07-01 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch12.adb (Analyze_Subprogram_Instantiation): Move aspects when + instantiating subprogram as a library unit. + +2025-07-01 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch5.adb (Expand_N_Loop_Statement): Remove useless subexpressions. + +2025-07-01 Jose Ruiz <ruiz@adacore.com> + + * doc/gnat_ugn/gnat_and_program_execution.rst: Add the + documentation about benefits of using sanitizers in + mixed-language applications. + * gnat_ugn.texi: Regenerate. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * atree.ads (Compile_Time_Pragma_Warnings): Removed. + * errout.adb (Initialize): Remove initialization for + Compile_Time_Pragma_Warnings. + (Error_Msg_Internal): Use Warning_As_Error_Kind in the + Error_Msg_Object. Set its value based on the reason the + warning was changed to an error. + (Write_JSON_Span): Adjust the code for Warn_Err. + (Output_Messages): Update the calculation for actual warnings + and errors by just using Warnings_Treated_As_Errors. + (Set_Msg_Text): Simply mark that we are dealing with a + run time message here. Move the code for the Warning_Mode to + Error_Msg_Internal. + * erroutc-pretty_emitter.adb (Write_Error_Msg_Line): Adjust the code + for Warn_Err. Use the Warn_As_Err_Tag token. + * erroutc.adb (Compilation_Errors): Simplify the implementation so + that it only checks for errors and warnings treated as errors. + (Decrease_Error_Msg_Count): Remove the count for + Compile_Time_Pragma_Warnings. + (dmsg): Adjust the code for changes to Warn_Err. + (Increase_Error_Msg_Count): Likewise and remove the count for + Compile_Time_Pragma_Warnings. + (Output_Msg_Text): Warnings converted to error by the + Warning_As_Error pragma and -gnatwE now use the error prefix + in their messages but only warnings changed by the pragma get + the [warning-as-error] tag. + (Output_Text_Within): Adjust the variable name for + Is_Runtime_Raise_Msg. + (Write_Error_Summary): Adjust printing of warnings so that it + just uses the counts for Warnings_Detected and + Warnings_Treated_As_Errors. + * erroutc.ads (Is_Runtime_Raise): renamed to Is_Runtime_Raise_Msg. + (Warning_As_Error_Kind): New type for marking the warning message + is treated as an error which also captures the reason for the + change. Historically each of the reasons will have a different way + of displaying the warning message. + (Error_Msg_Object.Warn_Err): Change type to Warning_As_Error_Kind. + (Kind_To_String): Warnings treated as errors originating from + the pragma or -gnatwE will return error where as warnings + originating from -gnatwe will return warning. + (Compilation_Errors): Update the documentation. + (Warn_As_Err_Tag): Constant string to be used when printing warnings + as errors. + * errutil.adb (Error_Msg): Adjust the code for Warn_Err. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.adb (Shift_Address_For_Descriptor): New function. + (Make_Address_For_Finalize): Call above function. + (Make_Finalize_Address_Stmts): Likewise. + * exp_util.ads (Is_Constr_Array_Subt_Of_Unc_With_Controlled): New + predicate. + * exp_util.adb (Is_Constr_Array_Subt_Of_Unc_With_Controlled): Ditto. + (Remove_Side_Effects): Call above predicate. + * sem_ch3.adb (Analyze_Object_Declaration): Likewise. + * sem_ch4.adb (Analyze_Allocator): Allocate the bounds by setting + Is_Constr_Array_Subt_With_Bounds when appropriate. + +2025-07-01 Javier Miranda <miranda@adacore.com> + + * sem_ch4.adb (Try_Object_Operation): Handle mutably tagged + class-wide type prefix. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * errout.adb (Error_Msg_Internal): Use the new + Warning_Treated_As_Error function. + * erroutc.adb (Get_Warning_Option): Add new version of this + function that operates on the Error_Msg_Object directly instead + of the Error_Id. Update the existing function to call the new + version interanlly. + (Get_Warning_Tag): Likewise. + (Warning_Treated_As_Error): Add a new method that combines the + checks for the error message itself and its tag. + * erroutc.ads (Get_Warning_Option): Add new spec. + (Get_Warning_Option): Likewise. + (Get_Warning_Option): Likewise. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * atree.ads: Add Compile_Time_Pragma_Warnings for counting + compile time warnings. + * errout.adb (Initialize): Initialize Compile_Time_Pragma_Warnings. + (Output_Messages): Use Compile_Time_Pragma_Warnings instead of + Count_Compile_Time_Pragma_Warnings. + * erroutc.adb (Compilation_Errors): Likewise. + (Count_Compile_Time_Pragma_Warnings): Removed. + (Decrease_Error_Msg_Count): Update Compile_Time_Pragma_Warnings. + (Increase_Error_Msg_Count): Likewise. + (Write_Error_Summary): Use Compile_Time_Pragma_Warnings instead of + Count_Compile_Time_Pragma_Warnings. + * erroutc.ads (Count_Compile_Time_Pragma_Warnings): Removed. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * errout.adb (Delete_Warning_And_Continuations): Use + Decrease_Error_Msg_Count to update the message counts. + (Delete_Warning): Likewise. + (To_Be_Removed): Likewise. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * errout.adb (Remove_Warning_Messages): Mark removed messages as + deleted. + * erroutc.adb (Purge_Messages): Likewise. + +2025-07-01 Martin Clochard <clochard@adacore.com> + + * frontend.adb (Frontend): do not override GNATprove's setting for + Warn_On_Non_Local_Exception + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch4.adb (Analyze_Allocator): Do not set Etype to itself. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Finalize_Address): Do not go to the root type for + array types. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuer.ads (System.Value_R): Remove Round parameter. + (Scan_Raw_Real): Replace Extra with Extra2 and adjust the comment. + (Value_Raw_Real): Likewise. + * libgnat/s-valuer.adb (Round_Extra): Delete. + (Scan_Decimal_Digits): Replace Extra with Extra2 and adjust the + implementation. + (Scan_Integral_Digits): Replace Extra with Extra2 and Extra_Rounded + with Extra2_Filled and adjust the implementation. + (Scan_Raw_Real): Replace Extra with Extra2 and adjust the + implementation. + (Value_Raw_Real): Likewise. + * libgnat/s-valrea.adb (Impl): Remove actual for Round formal. + * libgnat/s-valued.adb (Impl): Likewise. + (Integer_to_Decimal): Replace Extra with Extra2 and adjust the + implementation. Rename Unsigned_To_Signed to To_Signed. + (Scan_Decimal): Replace Extra with Extra2 and adjust the + implementation. + (Value_Decimal): Likewise. + * libgnat/s-valuef.adb (Impl): Remove actual for Round formal. + (Integer_to_Fixed): Replace Extra with Extra2 and adjust the + implementation. Rename Unsigned_To_Signed to To_Signed. Only + round the last scaled divide operation. + (Scan_Fixed): Replace Extra with Extra2 and adjust the + implementation. + (Value_Fixed): Likewise. + +2025-07-01 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-valuer.adb (Scan_Decimal_Digits, Scan_Integral_Digits): + Minor rephrasing. + +2025-07-01 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Set ekind + earlier. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.ads (Is_Finalizable_Access): New predicate. + (Is_Non_BIP_Func_Call): Delete. + (Is_Secondary_Stack_BIP_Func_Call): Likewise. + * exp_util.adb (Is_Finalizable_Access): New predicate. + (Initialized_By_Aliased_BIP_Func_Call): Delete. + (Initialized_By_Reference): Likewise. + (Is_Aliased): Only consider the nontransient object serviced by + the transient scope. + (Is_Part_Of_BIP_Return_Statement): Minor tweak. + (Is_Finalizable_Transient): Remove calls to Initialized_By_Reference + and Initialized_By_Aliased_BIP_Func_Call. + Call Is_Finalizable_Access for access objects. + (Is_Non_BIP_Func_Call): Delete. + (Is_Secondary_Stack_BIP_Func_Call): Likewise. + (Requires_Cleanup_Actions): Call Is_Finalizable_Access for access + objects. + (Side_Effect_Free): Return True for N_Reference. + * exp_ch7.adb (Build_Finalizer.Process_Declarations): Call + Is_Finalizable_Access for access objects. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Is_Expression_Of_Func_Return): New predicate. + (Is_Related_To_Func_Return): Call Is_Expression_Of_Func_Return. + (Remove_Side_Effects): Generate a temporary for a function call + that returns a constrained array type with controlled component + and an unconstrained first subtype. + +2025-07-01 Piotr Trojanek <trojanek@adacore.com> + + * inline.adb (Rewrite_Procedure_Call): Replace with a simple rewriting + of procedure call into a single block node, i.e. remove broken + optimization. + * sem_util.adb (Next_Actual): Adapt GNATprove-specific code that peeks + into inlined calls. + +2025-07-01 Martin Clochard <clochard@adacore.com> + + * exp_util.adb (Is_Controlling_Formal_Ref): test scope against + derived subprogram as well. + +2025-07-01 Viljar Indus <indus@adacore.com> + + * errout.adb (Error_Msg_Internal): Relocate Warn_As_Err propagation + to Increase_Error_Msg_Counti. + (Delete_Warning_And_Continuations): Update + Warnings_Treated_As_Errors count. + (Delete_Warning): Likewise. + (To_Be_Removed): Likewise. + * erroutc.adb (Increase_Error_Msg_Count): Count warnings treated + as errors here and perform the propagation of this property to + the parent message. + (Output_Msg_Text): Remove counting of warnings as errors from + here. + (Decrease_Error_Msg_Count): Update Warnings_Treated_As_Errors + count. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/120106 + * Make-generated.in (GNATMAKE_FOR_BUILD): Define. + +2025-06-30 Viljar Indus <indus@adacore.com> + + * comperr.adb (Compiler_Abort): Pass the exit code in calls to + Output_Messages. + * errout.adb (Output_Messages): Add new parameter for the + Exit_Code and store its value. + * errout.ads (Output_Messages): Likewise. + * erroutc-sarif_emitter.adb (Print_Invocations): Set + Execution_Successful based on the exit code. + * erroutc.ads (Exit_Code): Store the exit code value. + * gnat1drv.adb (Gnat1drv): Pass the exit code in calls to + Output_Messages. + * prepcomp.adb (Parse_Preprocessing_Data_File, Prpare_To_Preprocess): + Likewise. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * gen_il-gen-gen_entities.adb (Gen_Entities): Tweak Has_Exit. + +2025-06-30 Bob Duff <duff@adacore.com> + + * exp_attr.adb (Attribute_Max_Size_In_Storage_Elements): + Return Storage_Count'Last converted to universal_integer. + +2025-06-30 Tonu Naks <naks@adacore.com> + + * doc/gnat_rm.rst: add entry point for the new chapter + * doc/gnat_rm/about_this_guide.rst: add reference to the new + chapter + * doc/gnat_rm/implementation_of_ada_2022_features.rst: new file + * doc/gnat_rm/implementation_of_ada_2012_features.rst: update + explanation about RM references + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * par-util.adb (Check_Future_Keyword): Use Snames subtypes. Extend + comment. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch5.adb (Analyze_Loop_Statement): Remove obsolete comment. + +2025-06-30 Bob Duff <duff@adacore.com> + + * sem_warn.adb (Warn_On_Useless_Assignments): + Enable Warn_On_Useless_Assignment in the case of + Warn_On_All_Unread_Out_Parameters. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Subtype_Declaration): Remove uses of E_Void. + (Copy_Parent_Attributes): New procedure. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * cstand.adb (Make_Aliased_Component, Make_Formal, New_Operator, + Create_Standard): Remove useless calls. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuer.adb (Scan_Decimal_Digits): Also pretend that the + precision limit was just reached if it was already reached. + (Scan_Integral_Digits): Add Extra_Rounded out parameter, set it to + False on entry and to True when Extra is rounded. + (Scan_Raw_Real): New Extra_Rounded local variable. Pass it in the + calls to Scan_Integral_Digits. If it is True, pass a dummy extra + digit to Scan_Decimal_Digits. + +2025-06-30 Claire Dross <dross@adacore.com> + + * libgnat/a-strsup.ads: Ignore Ghost_Predicate in the assertion policy. + +2025-06-30 Javier Miranda <miranda@adacore.com> + + * sem_aggr.adb (Resolve_Record_Aggregate): Adjust the code to + handle mutably tagged class-wide types since they don't have + discriminants, but all class-wide types are considered to have + unknown discriminants. Initialize mutably tagged class-wide + type components calling their IP subprogram. + * exp_aggr.adb (Gen_Assign): Handle mutably tagged class-wide type + components that have an initializing qualified expression, and + mutably tagged class-wide components default initialization. + (Gen_Loop): Handle mutably tagged class-wide types. + (Gen_Assign): ditto. + (Build_Record_Aggr_Code): Default initialization of mutably tagged + class-wide types is performed by their IP subprogram. + * exp_ch3.adb (Init_Component): Generate code to raise Program_Error + in the IP subprogram of arrays when the type of their components is + a mutably tagged abstract class-wide type. + (Build_Init_Procedure): ditto for the init procedure of record types. + (Build_Init_Statements): Ensure that the type of the expression + initializing a mutably class-wide tagged type component is frozen. + (Requires_Init_Proc): Mutably tagged class-wide types require the + init-proc since it takes care of their default initialization. + * sem_util.adb (Needs_Simple_Initialization): Mutably tagged class-wide + types don't require simple initialization. + * types.ads (PE_Abstract_Type_Component): New reason for Program_Error. + * types.h (PE_Abstract_Type_Component): ditto. + * exp_ch11.adb (Get_RT_Exception_Name): Handle new reason for + Program_Error. + * libgnat/a-except.adb (Rcheck_PE_Abstract_Type_Component): New + subprogram. + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.ads (Get_Enclosing_Object, Get_Enum_Lit_From_Pos, + Is_Universal_Numeric_Type): Reorder declarations. + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Get_Enclosing_Object): Traverse unchecked type + conversions since they from the compiler and should be transparent for + semantic reasoning. + +2025-06-30 Steve Baird <baird@adacore.com> + + * einfo-utils.adb (Predicate_Function): Look through an Itype if + that takes us to another subtype of the same type. + +2025-06-30 Gary Dismukes <dismukes@adacore.com> + + * exp_util.adb (Must_Map_Call_To_Parent_Primitive): Change function + name (was Call_To_Parent_Dispatching_Op_Must_Be_Mapped). Move logic + for attributes and dereferences, plus testing for controlled formals, + into new function Expr_Has_Ctrl_Formal_Ref. Add handling for + access attributes, multiple levels of attributes/dereferences, + conditional_expressions, and declare_expressions. Properly account + for function calls with multiple operands and enclosing calls. + (Expr_Has_Ctrl_Formal_Ref): New function to determine whether + an expression is a reference to a controlling formal or has + a prefix that is such a reference. + (Is_Controlling_Formal_Ref): New function in Expr_Has_Ctrl_Formal_Ref + to determine if a node is a direct reference to a controlling formal. + * freeze.adb (Build_DTW_Body): Create an unchecked conversion instead + of a regular type conversion for converting actuals in calls to parent + inherited primitives that are wrapped for inherited pre/postconditions. + Avoids generating unnecessary checks (such as accessibility checks on + conversions for anonymous access formals). + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.ads (Get_Enclosing_Ghost_Entity): Rename spec. + * sem_util.adb (Get_Enclosing_Ghost_Object): Rename body; reorder + alphabetically; adapt recursive call. + * ghost.adb: Adapt calls to Get_Enclosing_Ghost_Object. + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * ghost.adb (Ghost_Entity): Remove; use Get_Enclosing_Ghost_Object + instead; adapt callers. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * sem_prag.adb (Analyze_Pragma) <Pragma_No_Component_Reordering>: + Call Find_Type on the first argument of the pragma. + +2025-06-30 Tonu Naks <naks@adacore.com> + + * gnatls.adb: remove -l switch + +2025-06-30 Steve Baird <baird@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst: Update documentation for + mutably tagged types and the Size'Class aspect. + * gnat_rm.texi: Regenerate. + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * ghost.adb + (Whole_Object_Ref): Remove; use Get_Enclosing_Ghost_Object instead. + (Is_Ghost_Assignment): Handle more than object identifiers. + (Mark_And_Set_Ghost_Assignment): Likewise. + * sem_util.adb (Get_Enclosing_Ghost_Object): Detect more expressions + as ghost references; rename to better match the intended meaning. + * sem_util.ads (Get_Enclosing_Ghost_Object): Rename; adjust comment. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Backend_Processing_Possible.Component_Check): Return + False for delayed conditional expressions. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.ads (Parent_Is_Regular_Aggregate): New predicate. + * exp_aggr.adb (In_Place_Assign_OK.Safe_Component): Implement more + accurate criterion for function calls. + (Convert_To_Assignments): Use Parent_Is_Regular_Aggregate predicate. + (Expand_Array_Aggregate): Likewise. Remove obsolete comment. + (Initialize_Component): Do not adjust when the expression is a naked + function call and Back_End_Return_Slot is True. + (Parent_Is_Regular_Aggregate): New predicate. + * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Add test of + Back_End_Return_Slot in conjunction with a function call. + * exp_ch4.adb (Expand_Allocator_Expression): Likewise. Use the + Is_Container_Aggregate predicate to detect container aggregates. + (Expand_N_Case_Expression): Delay the expansion if the parent is a + regular aggregate and the type should not be copied. + (Expand_N_If_Expression): Likewise. + (New_Assign_Copy): New function. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Bail out when the parent + is a regular aggregate. + * sem_util.adb (Check_Function_Writable_Actuals): Do not take into + account attribute references created by the compiler. + +2025-06-30 Alexandre Oliva <oliva@adacore.com> + + * socket.c [__vxworks] + (__gnat_gethostbyname): Drop excess '&'. + (__gnat_gethostbyaddr): Likewise. + +2025-06-30 Alexandre Oliva <oliva@adacore.com> + + * adaint.c [__vxworks]: Include ctype.h. + +2025-06-30 Steve Baird <baird@adacore.com> + + * exp_put_image.adb (Build_Record_Put_Image_Procedure): If + Discriminant_Specifications takes us from the full view of a type + to an (intentionally) unanalyzed subtree, then instead find + discriminant entities by calling Discriminant_Specifications on + the partial view of the type. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch6.adb (Check_Delayed_Subprogram, Possible_Freeze): Restrict + cases where freezing is delayed. + * sem_ch6.ads (Check_Delayed_Subprogram): Improve documentation + comment. + * sprint.adb (Write_Itype): Improve output. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valrea.adb (Integer_to_Real): Rename to... + (Integer_To_Real): ...this. Remove the second condition of the + conjunction in the test for the zero value. + (Scan_Real): Adjust to above renaming. + (Value_Real): Likewise. + * libgnat/s-valuer.ads (Scan_Raw_Real): Add note about Val. + +2025-06-30 Jose Ruiz <ruiz@adacore.com> + + * doc/gnat_ugn/gnat_and_program_execution.rst: Fix a + couple of minor formatting issues. + * gnat_ugn.texi: Regenerate. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * treepr.ads (Print_Entity_Chain, pec, rpec): New subprograms. + * treepr.adb (Print_Entity_Chain, pec, rpec): Likewise. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * atree.ads (Parent_Or_List_Containing): Fix typo. + +2025-06-30 Ronan Desplanques <desplanques@adacore.com> + + * treepr.adb (Print_Node): Tweak Parent field printing. + +2025-06-30 Jose Ruiz <ruiz@adacore.com> + + * doc/gnat_ugn/gnat_and_program_execution.rst: Add the + documentation about using sanitizers with Ada code. + * gnat_ugn.texi: Regenerate. + +2025-06-30 Jose Ruiz <ruiz@adacore.com> + + * doc/gnat_ugn/gnat_and_program_execution.rst: Add the + documentation about using sanitizers with Ada code. + * gnat_ugn.texi: Regenerate. + +2025-06-30 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Get_Enclosing_Object): Remove dead code. + +2025-06-30 Steve Baird <baird@adacore.com> + + * einfo-utils.adb (Predicate_Function): Improve handling of a case + where a predicate specified for a subtype of a partial view of a + type was incorrectly ignored. + (Set_Predicate_Function): If the attribute has already been set to + the same value, then do nothing (instead of raising P_E). + * sem_ch13.adb (Build_Predicate_Function): Add new function + Has_Source_Predicate. If a subtype inherits a predicate but also + has its own explicitly specified predicate, then avoid + misinterpreting the presence of the function built for the + inherited predicate to mean that no additional predicate function + is needed. + * sem_util.adb (Build_Subtype): In the case where we are given a + constrained record or array subtype and we need to construct a + different subtype, subject to a different constraint, the + subtype_mark of the constructed subtype needs to reference an + unconstrained subtype (because a new constraint is going to be + imposed). If the Predicated_Parent attribute of the given subtype + is present and refers to a suitable unconstrained subtype, then + use that subtype instead of setting the Predicated_Parent + attribute on a new node (and performing the associated attribute + copying). + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.adb (Process_Transient_In_Scope): Bail out if the object + is an ignored ghost entity. + +2025-06-30 Eric Botcazou <ebotcazou@adacore.com> + + * exp_util.adb (Insert_Actions): Extend special treatment applied + to freeze nodes to the case of blocks generated for aggregates. + +2025-06-30 Johannes Kliemann <kliemann@adacore.com> + + * libgnat/s-valuer.adb: Switch missing if-statements to + short-circuit form. + * libgnat/i-cpoint.adb: Ditto. + +2025-06-28 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/120854 + * sem_eval.adb (Get_String_Val): Be prepared for an integer literal + after a serious error is detected, and raise PE on other nodes. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + * gcc-interface/misc.cc (gnat_init): Use + diagnostic_context::set_internal_error_callback. + +2025-06-22 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/120106 + * gcc-interface/Make-lang.in: Set GNAT{MAKE,BIND,LINK_LS}_FOR_HOST + from GNAT{MAKE,BIND} instead of using hardcoded commands. + +2025-06-22 Eric Botcazou <ebotcazou@adacore.com> + + * Make-generated.in: Remove obsolete stuff. + +2025-06-22 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/120106 + PR ada/120106 + * Make-generated.in: Use GNATMAKE_FOR_BUILD instead of gnatmake. + * gcc-interface/Makefile.in: Likewise. + +2025-06-17 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/120665 + * sem_aggr.adb (Resolve_Container_Aggregate): Use robust guards. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Generate + a zero-initialization for the anonymous object of a small aggregate + allocated on the stack. + (inline_status_for_subprog): Minor tweak. + +2025-06-12 Tonu Naks <naks@adacore.com> + + * comperr.adb: update support instructions + * switch.adb: update support instructions + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sinfo.ads: Fix RM reference. + +2025-06-12 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Apply_External_Initialization): Reuse local constant. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst + (Generalized Finalization): Document the actual implementation. + (No_Raise): Move to separate section. + * gnat_rm.texi: Regenerate. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-valuer.adb (Scan_Raw_Real): Apply tweak. + +2025-06-12 Tonu Naks <naks@adacore.com> + + * comperr.adb: replace report@ with support@ + * gnatcmd.adb: replace report@ with support@ + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Build_Derived_Private_Type): Fix test. + (Build_Derived_Record_Type): Adjust error recovery paths. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Has_Homonym): Fix inaccuracy in description. + * sem_ch8.ads (Find_Direct_Name): Remove obsolete description. + * sem_ch12.adb (Analyze_Associations): Rename I_Node parameter + into N and adjust description. + (Analyze_Subprogram_Instantiation): Add missing description. + (Contains_Instance_Of): Fix description. + (Associations): Rename Generic_Actual_Rec into Actual_Rec and + Gen_Assocs_Rec into Match_Rec. + (Analyze_One_Association): Rename I_Node parameter into N. + (Check_Fixed_Point_Warning): Rename Gen_Assocs parameter into + Match. + (Body of Associations): Minor cleanups and tweaks. + (Analyze_Associations): Rename I_Node parameter into N and + adjust implementation. + (Analyze_One_Association): Likewise. + (Analyze_Package_Instantiation): Remove obsolete code and clean up. + (Check_Fixed_Point_Warning): Rename Gen_Assocs parameter into + Match and adjust implementation. + (Freeze_Package_Instance): Simplify condition. + (Get_Unit_Instantiation_Node): Add support for instantiations of + subprograms and stop the loop properly in case of errors. + * sem_util.ads (Add_Global_Declaration): Rename N parameter into + Decl and fix description. + * sem_util.adb (Add_Global_Declaration): Rename N parameter into + Decl and adjust implementation. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-valuer.adb (Scan_Raw_Real): Add RM reference. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-valuer.adb (Scan_Raw_Real): Remove subexpression. Improve + surrounding comments. + +2025-06-12 Bob Duff <duff@adacore.com> + + * vast.adb: Check basic tree properties. + * atree.adb (Traverse_Field): Minor. + * treepr.adb (Destroy): Minor comment. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuer.adb (Round_Extra): Use multiplicative test. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * einfo-utils.adb (Set_Convention): Remove obsolete test. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Discriminants): Set Ekind earlier. + * sem_util.adb (Enter_Name): Adjust error processing. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valuef.adb (Integer_To_Fixed): Enable overflow checks. + Deal specifically with Val = 2**(Int'Size - 1) if Minus is not set. + Exit the loop when V saturates to 0 in the case of (huge) negative + exponents. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * exp_util.adb (Insert_Actions): Refine test. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst (Compiler + switches) <-O>: Fix long line. + * gnat_ugn.texi: Regenerate. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst (List of + all switches): Add -gnatRh subswitch. + (Debugging Control): Document -gnatRh subswitch. + * opt.ads (List_Representation_Info_Holes): New boolean variable. + * repinfo.adb: Add with clause for GNAT.Heap_Sort_G. + (List_Common_Type_Info): Relax assertion. + (List_Object_Info): Replace assertion with additional test. + (List_Record_Layout): If -gnatRh is specified, make sure that the + components are ordered by increasing offsets. Output a comment + line giving the number of unused bits if there is a hole between + consecutive components. Streamline the control flow of the loop. + (List_Record_Info): Use the original record type giving the layout + of components, if any, to display the layout of the record. + * switch-c.adb (Scan_Front_End_Switches) <-gnatR>: Add support for + -gnatRh subswitch. + * usage.adb (Usage): Document -gnatRh subswitch. + * gnat_ugn.texi: Regenerate. + +2025-06-12 Johannes Kliemann <kliemann@adacore.com> + + * libgnat/s-secsta.adb (SS_Allocate): Add comment about + conservative alignment padding calculation. + * libgnat/s-secsta__cheri.adb (SS_Allocate): Add comment about + conservative alignment padding calculation. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_warn.adb (Check_References): Rewrite expression + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Constrain_Index, Make_Index, Array_Type_Declaration, + Analyze_Number_Declaration): Remove uses of E_Void. + +2025-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * usage.adb (Usage): Justify the documentation of common switches + like that of other switches. Rework that of the -O switch. + * doc/gnat_ugn/building_executable_programs_with_gnat.rst (Compiler + switches) <-O>: Rework and document 'z' and 'g' operands. + * doc/gnat_ugn/gnat_and_program_execution.rst (Optimization Levels): + Rework and document -Oz and -Og switches. + * gnat_ugn.texi: Regenerate. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Constrain_Index): Avoid unused itypes. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Constrain_Index): Factorize return statement. + +2025-06-12 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Build_Derived_Numeric_Type): Remove duplicate call. + +2025-06-10 Piotr Trojanek <trojanek@adacore.com> + + * gen_il-gen-gen_entities.adb (Formal_Object_Kind): Remove + Entry_Component field. + +2025-06-10 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Resolve_Attribute): Remove redundant guard. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * inline.adb (Analyze_Inlined_Bodies): Minor comment tweak. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * inline.adb (Instantiate_Body): Do not call Add_Scope_To_Clean if + the main unit is generic. + (Instantiate_Bodies): Do not deal with generic main units here. + * sem_ch12.adb (Need_Subprogram_Instance_Body): Return false if the + main unit is generic. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * Makefile.rtl (ADA_EXCLUDE_SRCS): Add the 128-bit support files. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Factorize code. + +2025-06-10 Bob Duff <duff@adacore.com> + + * einfo.ads (Associated_Node_For_Itype): Document that + Parent field may be empty. + * vast.adb: Allow empty Parent in Itypes. + +2025-06-10 Gary Dismukes <dismukes@adacore.com> + + * einfo.ads: Revise comment about Dynamic_Predicate flag to make it + more accurate. + * sem_case.adb (Check_Choices): Test "not Has_Static_Predicate_Aspect" + as additional guard for error about use of subtype with nonstatic + predicate as a case choice. Improve related error message. + +2025-06-10 Tonu Naks <naks@adacore.com> + + * libgnat/s-valueu.adb: add explict raise + * libgnat/s-valueu.ads: update annotation + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch6.adb, sem_ch6.ads (Check_Discriminant_Conformance): Move to … + * sem_ch3.adb (Check_Discriminant_Conformance): … here. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * freeze.adb (Freeze_Static_Object): Do not issue any error message + for compiler-generated entities. + +2025-06-10 Bob Duff <duff@adacore.com> + + * vast.adb: Implement two checks. Improve debugging + outputs. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Insert_Conditional_Object_Declaration): Deal with a + transient scope being created around the declaration. + * freeze.adb (Freeze_Entity): Do not call Freeze_Static_Object for + a renaming declaration. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-vafi32.ads: Fix head description. + * libgnat/s-vafi64.ads: Likewise. + * libgnat/s-vafi128.ads: Likewise. + +2025-06-10 Bob Duff <duff@adacore.com> + + * vast.adb: Initial implementation. + * vast.ads: Rename procedure. Remove parameter; body should decide + what to do. + * lib.ads (ipu): Minor: Rewrite comment for brevity, and because + of an inconvenient misspelling. + (Num_Units): Not used; remove. + (Remove_Unit): Minor: Remove "Currently" (which was current a decade + ago from) comment. + * lib.adb (Num_Units): Not used; remove. + * debug_a.adb (Debug_A_Entry): Fix bug: Use Write_Name_For_Debug, + so this won't crash on the Error node. + * debug.adb: Document -gnatd_V and -gnatd_W compiler switches. + * exp_ch6.adb (Validate_Subprogram_Calls): Remove redundant check for + Serious_Errors_Detected. (We turn off code gen when errors are + detected.) + * frontend.adb: Move decisions into VAST body. + * namet.ads (Present): Remove unnecessary overriding; these are + inherited by the derived types. + * namet.adb (Present): Likewise. + +2025-06-10 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Build_Container_Aggr_Code.To_Int): Apply Enumeration_Pos + to Entity (Expr) rather than Expr. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Find_Type_Of_Object): Fix comment. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Component_Declaration): Rename constant. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Constrain_Array): Simplify. + (Process_Subtype): Adjust. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch12.adb (Copy_Generic_Node): Do not call Root_Type to find + the root type of an aggregate of a derived tagged type. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * libgnarl/s-stusta.adb (Compute_All_Tasks): Skip terminated tasks. + +2025-06-10 Viljar Indus <indus@adacore.com> + + * sem_prag.adb (Is_Configuration_Pragma): Check that nodes + preceding the pragma are pragma nodes or originally were + pragma nodes. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valued.adb (Integer_to_Decimal): Add Extra parameter and + use its value to call Bad_Value on boundary values. + (Scan_Decimal): Adjust call to Integer_to_Decimal. + (Value_Decimal): Likewise. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.ads (Process_Subtype): New formal. + * sem_ch3.adb (Process_Subtype): Likewise. + (Analyze_Subtype_Declaration, Access_Type_Declaration): Use new + formal. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Fix recursive call. + +2025-06-10 Eric Botcazou <ebotcazou@adacore.com> + + * par-ch5.adb (P_Declare_Statement): Rename local variable. + (P_Begin_Statement): Likewise. + +2025-06-10 Piotr Trojanek <trojanek@adacore.com> + + * einfo.ads (Overridden_Operation, Static_Initialization): Remove + comments about a reused entity field. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Tweak formatting. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Add assertion. + +2025-06-10 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Factorize initialization of variable. + +2025-06-09 Gary Dismukes <dismukes@adacore.com> + + * sem_ch3.adb (Constrain_Index): In the case of a fixed-lower-bound index, + set Etype of the newly created itype's Scalar_Range from the index's Etype. + * sem_ch12.adb (Validate_Array_Type_Instance): If the actual subtype is + a fixed-lower-bound type, then check again the Etype of its Scalar_Range. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Fix conditions for legality checks on + formal type declarations. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Pragma): If pragmas apply to a formal array + type, then set the flags on the base type. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Process_Subtype): Clarify code. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.ads (Process_Subtype): Add formal. + * sem_ch3.adb (Process_Subtype): Use new formal. + (Analyze_Subtype_Declaration, Array_Type_Declaration, + Build_Derived_Access_Type): Pass new actual. + * sem_ch4.adb (Find_Type_Of_Object): Likewise. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch6.adb (Set_Formal_Mode): Extend profile. Move parts of the + body… + (Process_Formals): … here. Move call to Set_Formal_Mode earlier. Call + Set_Is_Not_Self_Hidden in second traversal. + +2025-06-09 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Expand_Container_Aggregate): Use the Base_Type of the + subtype provided by the context as the subtype of the temporary object + initialized by the aggregate. + +2025-06-09 Eric Botcazou <ebotcazou@adacore.com> + + * par-ch4.adb (P_Function_Name): Delete body. + (P_Qualified_Simple_Name_Resync): Do not raise Error_Resync on an + operator symbol followed by something else than a dot. + * par-ch6.adb (P_Subprogram): Do not call P_Function_Name. + * par.adb (P_Function_Name): Delete declaration. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem.adb (Analyze): Adapt to new Ekinds. + * sem_ch3.adb (Analyze_Component_Declaration): Set Ekind early. + (Is_Visible_Component, Record_Type_Definition): Adjust. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem.adb (Analyze): Fix comment. + +2025-06-09 Eric Botcazou <ebotcazou@adacore.com> + + * par-ch4.adb (P_Name): Remove obsolete references in comments. + (P_Qualified_Simple_Name): Call P_Qualified_Simple_Name_Resync. + (P_Qualified_Simple_Name_Resync): Adjust a couple of comments. + +2025-06-09 Gary Dismukes <dismukes@adacore.com> + + * exp_util.adb (Call_To_Parent_Dispatching_Op_Must_Be_Mapped): Replace + test of Covers with test of Is_Controlling_Formal. Add handling for + 'Result actuals. Remove Actual_Type and its uses. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Is_Name_Reference): Remove check for selector_name of a + selected_component; reuse existing code for indexed components and + slices. + (Statically_Names_Object): Remove dead code. + +2025-06-09 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Overlays_Constant): Define in constants and variables. + * gen_il-gen-gen_entities.adb (Entity_Kind): Move Overlays_Constant + semantic flag to... + (Constant_Or_Variable_Kind): ...here. + * sem_util.adb (Note_Possible_Modification): Add guard. + +2025-06-09 Bob Duff <duff@adacore.com> + + * exp_ch6.adb: (Make_Build_In_Place_Call_In_Object_Declaration): + Deal with renamings transformed into object declarations. + * sem_ch8.adb (Analyze_Object_Renaming): + Reinstate transformation of a renaming into + an object declaration. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Object_Declaration): Call Mutate_Ekind earlier. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Object_Declaration): Tweak error handling. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * par-ch13.adb (Get_Aspect_Specifications): Save and restore flag while + parsing aspect Abstract_State. + * par-ch2.adb (P_Pragma): Same while parsing pragma Abstract_State. + * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Specialize error message + for contract Abstract_State and extended aggregate. + * par.adb (Inside_Abstract_State): Add new context flag. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch10.adb (Analyze_Compilation_Unit): Check for generic bodies. + * exp_disp.adb (Build_Dispatch_Tables): Likewise. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Find_Overlaid_Entity): Don't call Etype on empty Ent; + tune style; move computation of Overl_Typ out of the loop. + +2025-06-09 Javier Miranda <miranda@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst: Adding + documentation. + * doc/gnat_ugn/the_gnat_compilation_model.rst: ditto. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_attr.adb (Analyze_Attribute): Remove test. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.adb (Enter_Name): Remove special handling. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.adb (Enter_Name): Remove comment. + +2025-06-09 Bob Duff <duff@adacore.com> + + * exp_ch6.adb: Remove a couple of "???" suggesting something that + we will likely never do. + (Make_Build_In_Place_Call_In_Object_Declaration): + When a constraint check is needed, do the check. + Do it at the call site for now. + The check is still missing in the untagged case, + because the caller allocates in that case. + * sem_ch8.adb (Analyze_Object_Renaming): + Remove obsolete transformation of a renaming into + an object declaration. Given that we also (sometimes) tranform + object declarations into renamings, this transformation was + adding complexity; the new code in + Make_Build_In_Place_Call_In_Object_Declaration above + would need to explicitly avoid the run-time check in the case of + renamings, because renamings are supposed to ignore the nominal + subtype. Anyway, it is no longer needed. + * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite comment; + it IS clear how to do it, but we haven't done it right yet. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * atree.ads (Copy_Node): Fix comment. + +2025-06-09 Piotr Trojanek <trojanek@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference): When expanding attribute + Valid, use signedness from the validated view, not from its base type. + +2025-06-09 Marc Poulhiès <poulhies@adacore.com> + + * sem_util.adb (Find_Overlaid_Entity): Add extra parameter to + extract the type being overlaid. + (Note_Possible_Modification): Adjust call to Find_Overlaid_Entity. + (Ultimate_Overlaid_Entity): Likewise. + * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Likewise. + * sem_util.ads (Find_Overlaid_Entity): Add extra parameter to + extract the type being overlaid. + * freeze.adb (Check_Address_Clause): Likewise. + +2025-06-09 Gary Dismukes <dismukes@adacore.com> + + * contracts.adb (Inherit_Condition): Remove Assoc_List and its uses + along with function Check_Condition, since mapping of formals will + effectively be done in Build_Class_Wide_Expression (by Replace_Entity). + * exp_util.adb (Replace_Entity): Only rewrite entity references in + function calls that qualify according to the result of calling the + new function Call_To_Parent_Dispatching_Op_Must_Be_Mapped. + (Call_To_Parent_Dispatching_Op_Must_Be_Mapped): New function that + determines whether a function call to a primitive of Par_Subp + associated tagged type needs to be mapped (according to whether + it has any actuals that reference controlling formals of the + primitive). + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch3.adb (Analyze_Object_Declaration): Remove comment. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.ads (Current_Entity_In_Scope): Add example in comment. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * atree.ads (Rewrite, Replace): Clarify comments. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * atree.ads (Rewrite): Remove comment. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * atree.adb (Rewrite): Improve readability. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_util.adb (Kill_Current_Values): Tweak condition. + +2025-06-09 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Insert_Conditional_Object_Declaration): Remove Decl + formal parameter, add Typ and Const formal parameters. + (Expand_N_Case_Expression): Fix pasto in comment. Adjust call to + Insert_Conditional_Object_Declaration and tidy up surrounding code. + (Expand_N_If_Expression): Adjust couple of calls to + Insert_Conditional_Object_Declaration. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch8.adb (Find_Selected_Component): Fix error path. + +2025-06-09 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-dourea.adb (Is_Infinity): Rename to... + (Is_Infinity_Or_NaN): ...this. + ("*"): Adjust accordingly. + ("/"): Likewise. + (Sqr): Likewise. + * libgnat/s-dorepr.adb (Two_Prod): Likewise. + (Two_Sqr): Likewise. + * libgnat/s-dorepr__fma.adb (Two_Prod): Likewise. + +2025-06-09 Daniel King <dmking@adacore.com> + + * libgnat/i-cheri.ads + (Set_Bounds, Set_Exact_Bounds): Remove wrong intrinsic binding. + * libgnat/i-cheri.adb + (Set_Bounds, Set_Exact_Bounds): New subprogram bodies. + +2025-06-09 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch8.adb (Find_Selected_Component): Add mention. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * urealp.adb (UR_Negate): Capture array element in a local constant. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * urealp.adb (UR_Exponentiate): Use local variable. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Tune code for + attribute Small. + * sem_prag.adb (Analyze_Attribute): Tune code for pragma Time_Slice. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * ada_get_targ.adb, cstand.ads, cstand.adb, sem_eval.adb, sem_eval.ads, + urealp.adb, urealp.ads: Tune style. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * get_targ.ads (Register_Proc_Type): Add null exclusion. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * cstand.adb (Build_Float_Type, Register_Float_Type): Refine + parameter subtypes. + * set_targ.ads (FPT_Mode_Entry): Refine component subtype. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Pragma): Add dependency of Program_Exit on + Global and Depends contracts. + (Analyze_Program_Exit_In_Decl_Part): Check references to subprogram + outputs. + +2025-06-06 Claire Dross <dross@adacore.com> + + * doc/gnat_rm/implementation_defined_pragmas.rst + (Pragma Exit_Cases): Update the documentation for Exit_Cases. + * sem_prag.adb + (Anlayze_Pragma): Accept Program_Exit as an exit kind. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * aspects.ads (Aspect_Argument): Argument for Program_Exit is now + optional. + * doc/gnat_rm/implementation_defined_pragmas.rst + (Pragma Program_Exit): Change documentation for pragma syntax. + * sem_prag.adb (Analyze_Pragma): Argument for Program_Exit is now + optional. + (Analyze_Program_Exit_In_Decl_Part): Likewise. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * aspects.ads (Aspect_Id): Add new aspect identifier. + (Aspect_Argument): Specify argument for the new aspect. + (Is_Representation_Aspect): New aspect is not a representation aspect. + (Aspect_Names): Map new aspect to name. + (Aspect_Delay): New aspect is always delayed. + * contracts.adb (Expand_Subprogram_Contract) + (Add_Pre_Post_Condition, Add_Contract_Item) + (Analyze_Entry_Or_Subprogram_Contract) + (Analyze_Entry_Or_Subprogram_Body_Contract) + (Analyze_Subprogram_Body_Stub_Contract): Support new aspect. + * contracts.ads (Add_Contract_Item, + Analyze_Entry_Or_Subprogram_Contract, + Analyze_Entry_Or_Subprogram_Body_Contract, + Analyze_Subprogram_Body_Stub_Contract): Mention new contract in + comment. + * doc/gnat_rm/implementation_defined_aspects.rst + (Aspect Program_Exit): Document new aspect. + * doc/gnat_rm/implementation_defined_pragmas.rst + (Pragma Program_Exit): Document new pragma. + * einfo-utils.adb (Get_Pragma): Support new pragma. + * einfo-utils.ads (Get_Pragma): Mention new pragma in comment. + * exp_prag.adb (Expand_Pragma_Program_Exit): Expand new pragma; + body. + * exp_prag.ads (Expand_Pragma_Program_Exit): Expand new pragma; + spec. + * inline.adb (Remove_Aspects_And_Pragmas): Support new pragma. + * par-prag.adb (Prag): Support new pragma. + * sem_attr.adb (Analyze_Attribute_Old_Result): Accept attribute + Old in new pragma. + * sem_ch12.adb (Implementation of Generic Contracts): Mention new + aspect in comment. + * sem_ch13.adb (Insert_Pragma, Analyze_Aspect_Specifications): + Convert new new aspect to pragma. + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Renumber + subsequent rule in comment. + * sem_prag.adb (Check_Postcondition_Use_In_Inlined_Subprogram) + (Contract_Freeze_Error): Mention new pragma in comment. + (Analyze_Pragma): Support new pragma; renumber subsequent rule in + comment. + (Analyze_Program_Exit_In_Decl_Part): Analyze new pragma; body. + (Sig_Flags): References in new pragma are significant when + detecting unreferenced objects. + * sem_prag.ads (Aspect_Specifying_Pragma) + (Assertion_Expression_Pragma, Pragma_Significant_To_Subprograms): + Support new aspect and pragma. + (Analyze_Program_Exit_In_Decl_Part): Analyze new pragma; spec. + (Find_Related_Package_Or_Body): Mention new pragma in comment. + * sem_util.adb (Is_Subprogram_Contract_Annotation): Support new + pragma. + * sem_util.ads (Is_Subprogram_Contract_Annotation): Mention new + pragma in comment. + * sinfo.ads (Is_Generic_Contract_Pragma): Mention new pragma in + comment. + * snames.ads-tmpl (Preset Names, Pragma_Id): Add name and pragma + identifiers. + * gnat_rm.texi: Regenerate. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/g-dyntab.ads (Instance): Update and extend comment. + * scos.ads: Remove comment about the corresponding C header. + * scos.h: Remove. + +2025-06-06 Steve Baird <baird@adacore.com> + + * sem_util.adb (Collect_Primitive_Operations): When collecting + primitive operations, do not include child unit subprograms. + +2025-06-06 Javier Miranda <miranda@adacore.com> + + * sem_ch4.adb (Constant_Indexing_OK): Add missing support for + RM 4.1.6(13/3), and improve performance to avoid climbing more + than needed. Add documentation. + (Try_Indexing_Function): New subprogram. + (Expr_Matches_In_Formal): Added new formals. + (Handle_Selected_Component): New subprogram. + (Has_IN_Mode): New subprogram. + (Try_Container_Indexing): Add documentation, code reorganization + and extend its functionality to improve its support for prefixed + notation calls. + +2025-06-06 Viljar Indus <indus@adacore.com> + + * debug.adb: Mark -gnatd_D as unused. + * diagnostics-repository.adb: Move to... + * errid.adb: ...here. + * diagnostics-repository.ads: Move to... + * errid.ads: ...here. + * errout.adb (Error_Msg_Internal): Add new arguments for the new + attributes of Error_Msg_Objects. + (Error_Msg): Likewise. + (Error_Msg_N): Likewise. + (Labeled_Span): New method for creating Labeled_Span-s + (Primary_Label_Span): New method for creating primary Labeled_Spans. + (Secondary_Labeled_Span): New method for creating secondary + Labeled_Spans. + (Edit): New method for creating Edit elements. + (Fix): New method for creating Fix elements. + (Error_Msg_F): Simplify code for evaluating the span. + (Error_Msg_FE): Likewise. + (Error_Msg_NE): Likewise. + (Error_Msg_NEL): Likewise. + (Error_Msg_N_Gigi): New method that is used as a wrapper for the + Error_Msg_xxx methods that have the new arguments. This function + is later mapped to the Error_Msg method used inside gigi. + (Error_Msg_NE_Gigi): Likewise. + (Write_JSON_Span): Ensure that the Style prefix is included that is + removed when parsing the message is reinserted to the JSON report. + (Output_Messages): Use the new Pretty_Printer and Sarif_Printer + packages to print the messages and remove the old implementation + for the pretty printer. + (Set_Msg_Text): Remove message kind insertion characters from the + final message text to avoid some message kinds being duplicated. + (To_Full_Span_First): New method for creating a span for a node. + (To_Full_Span): Likewise. + * errout.ads: Add the specs for all of the newly added functions. + * diagnostics-pretty_emitter.adb: Move to... + * erroutc-pretty_emitter.adb: ...here. + * diagnostics-pretty_emitter.ads: Move to... + * erroutc-pretty_emitter.ads: ...here. + * diagnostics-sarif_emitter.adb: Move to... + * erroutc-sarif_emitter.adb: ...here. + * diagnostics-sarif_emitter.ads: Move to... + * erroutc-sarif_emitter.ads: ...here. + * erroutc.adb (Next_Error_Msg): New method for iterating to the + next error message. + (Next_Continuation_Msg): New method for iterating to the next + continuation message. + (Primary_Location): New method for returning the first primary + location for the error message. + (Get_Human_Id): New method for returning the human readable + name for the switch associated with this error message. + (Get_Doc_Switch): New method for creating the tag for the switch + used in the error message. + (Output_Text_Within): Change the method to operating on Strings + instead of String pointers. + (Output_Msg_Text): Simplify implementation for generating the + error message. + (Prescan_Message): Make the String handling more error proof. + * erroutc.ads (Error_Msg_Object): Add new attributes that were + added to Diagnostic objects to Error_Msg_Objects. + Add new methods for handling the new error objects. + * diagnostics-switch_repository.adb: Move to... + * errsw.adb: ...here. + * errutil.adb (Error_Msg): Initialize all of the new attributes + added to Error_Msg_Object-s. + * fe.h (Error_Msg_N): Update the binding. + (Error_Msg_NE): Update the binding. + For now the error_msg methods in gigi will use the old + simplified interface for those methods. + * diagnostics-json_utils.adb: Move to... + * json_utils.adb: ...here. + * diagnostics-json_utils.ads: Move to... + * json_utils.ads: ...here. + * par-endh.adb: Replace the old error_msg + calls with the updated interface. + * sem_aggr.adb: Likewise. + * sem_ch13.adb: Likewise. + * sem_ch4.adb: Likewise. + * sem_ch9.adb: Likewise. + * diagnostics-brief_emitter.adb: Removed. + * diagnostics-brief_emitter.ads: Removed. + * diagnostics-constructors.adb: Removed. + * diagnostics-constructors.ads: Removed. + * diagnostics-converter.adb: Removed. + * diagnostics-converter.ads: Removed. + * diagnostics-switch_repository.ads: Removed. + * diagnostics-utils.adb: Removed. + * diagnostics-utils.ads: Removed. + * diagnostics.adb: Removed. + * diagnostics.ads: Removed. + * errsw.ads: New file. Based on diagnostics-switch_repository.ads. + It additionally contains all the switch enumerations. + * gcc-interface/Make-lang.in: Update compilation dependencies. + * gcc-interface/Makefile.in: Likewise. + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * contracts.adb (Add_Invariant_And_Predicate_Checks): Assign Ekind. + * inline.adb (Expand_Inlined_Call): Likewise. + * exp_ch9.adb (Build_Simple_Entry_Call): Likewise. + * exp_dist.adb (Append_Array_Traversal): Likewise. + * exp_fixd.adb (Build_Double_Divide_Code, Build_Scaled_Divide_Code): + Likewise. + +2025-06-06 Olivier Hainque <hainque@adacore.com> + + * libgnarl/s-linux__android-aarch64.ads: Provide an + Android_Sigaction generic package to expose an aarch64 + version of struct_sigation, using a provided sigset_t + for sa_flags. + * libgnarl/s-linux__android-arm.ads: Likewise, for ARM + rather than aarch64. + * libgnarl/s-osinte__android.ads: Move sigset_t definition + to the visible part and use it to instantiate the Android_Sigation + generic provided by System.Linux, which is specialized for ARM vs + aarch64. Define struct_sigaction out of the Android_Sigaction + instance, remove the local representation clauses. + +2025-06-06 Olivier Hainque <hainque@adacore.com> + + * Makefile.rtl: Rework the Android pairs to match those of a + regular Linux port rather than a generic posix one. + * libgnarl/s-osinte__android.ads: Import pcrtl and add bindings + for the pthread_rwlock entry points, used by the Linux units now + in the libgnat target pairs. + * sysdep.c (__gnat_has_cap_sys_nice): Define for Android, + conservative return 0. + * adaint.c (__gnat_cpu_alloc): Define for Android as for Linux. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * namet.ads (Name_Entry): Update comments to explain the current needs. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * lib.ads (Unit_Record): Remove representation clauses and filler + components + * lib-load.adb, lib-writ.adb: Remove initialization of data fillers. + * nlists.adb (Allocate_List_Tables): Remove explicit initialization. + * repinfo.adb (Exp_Node): Remove representation clauses. + * sinput.ads (Source_File_Record): Likewise. + * urealp.adb (Ureal_Entry): Likewise. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * doc/gnat_rm/representation_clauses_and_pragmas.rst + (Effect of Convention on Representation): Fix number of list items. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * sem_ch10.adb (Install_Siblings.In_Context): Add missing guard. + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch4.adb (Analyze_Selected_Component): Tweak condition. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Insert_Conditional_Object_Declaration): Make sure the + object is allocated properly by the code generator at library level. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * sem_eval.adb (Check_Non_Static_Context): Remove special handling of + floating-point zero. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * einfo.ads (Incomplete_View): Move from Sinfo; adapt wording. + * exp_ch3.adb (Build_Record_Init_Proc): Adapt retrieval of + Incomplete_View. + * gen_il-fields.ads (Opt_Field_Enum): Move Incomplete_View from node + to entity field. + * gen_il-gen-gen_entities.adb (Gen_Entities): Add field. + * gen_il-gen-gen_nodes.adb (Gen_Nodes): Remove field. + * sem_ch3.adb (Analyze_Full_Type_Declaration, + Check_Anonymous_Access_Component): Adapt setting of Incomplete_View. + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Adapt retrieval of + Incomplete_View for class-wide types; no longer rely on class-wide + type being attached to non-classwide type declaration. + * sem_util.adb (Collect_Primitive_Operations): Adapt retrieval of + Incomplete_View. + * sinfo.ads (Incomplete_View): Move to Einfo. + +2025-06-06 squirek <squirek@adacore.com> + + * aspects.ads: Add support for constructors. + * exp_aggr.adb: Likewise. + * exp_attr.adb: Likewise. + * exp_ch3.adb: Likewise. + * exp_ch4.adb: Likewise. + * exp_util.adb: Likewise. + * gen_il-fields.ads: Likewise. + * gen_il-gen-gen_entities.adb: Likewise. + * gen_il-gen-gen_nodes.adb: Likewise. + * par-ch4.adb: Likewise. + * sem_aggr.adb: Likewise. + * sem_attr.adb, sem_attr.ads: Likewise. + * sem_ch13.adb: Likewise. + * sem_ch3.adb: Likewise. + * sem_ch5.adb: Likewise. + * sem_ch6.adb: Likewise. + * sem_res.adb: Likewise. + * sem_util.adb, sem_util.ads: Likewise. + * snames.ads-tmpl: Likewise. + +2025-06-06 squirek <squirek@adacore.com> + + * doc/gnat_rm/gnat_language_extensions.rst: Add documentation. + * gnat_rm.texi: Regenerate. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Modulus): Change to implementation base type only. + * gen_il-gen-gen_entities.adb (Modular_Integer_Kind): Change type + of Modulus field to Impl_Base_Type_Only. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Original_Access_Type): Restore. + * gen_il-fields.ads (Opt_Field_Enum): Restore Original_Access_Type. + * gen_il-gen-gen_entities.adb: Adjust accordingly. + * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Restore the + call to Set_Original_Access_Type. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Default_Expr_Function): Delete. + (Dependent_Instances): Likewise. + (Handler_Records): Likewise. + (Needs_Activation_Record): Likewise. + (Original_Access_Type): Likewise. + (Register_Exception_Call): Likewise. + * sinfo.ads (Accept_Handler_Records): Likewise. + * gen_il-fields.ads (Opt_Field_Enum): Remove Accept_Handler_Records, + Default_Expr_Function, Dependent_Instances, Handler_Records, + Needs_Activation_Record, Original_Access_Type and + Register_Exception_Call. + * gen_il-gen-gen_entities.adb: Adjust accordingly. + * gen_il-gen-gen_nodes.adb: Likewise. + * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Remove call + to Set_Original_Access_Type. + (Expand_N_Selective_Accept): Remove call to Set_Handler_Records. + * exp_ch11.adb (Expand_N_Exception_Declaration): Remove call to + Set_Register_Exception_Call. + * sem_ch3.adb (Access_Subprogram_Declaration): Remove call to + Set_Needs_Activation_Record. + * sem_ch12.adb (Instantiate_Package_Body): Remove call to + Set_Handler_Records. + +2025-06-06 Steve Baird <baird@adacore.com> + + * sem_ch4.adb + (Find_Unary_Types): Because we reanalyze names in an instance, + we sometimes have to take steps to filter out extraneous name + resolution candidates that happen to be visible at the point of the + instance declaration. Remove some code that appears to have been + written with this in mind. This is done for two reasons. First, the + code sometimes doesn't work (possibly because the In_Instance test + is not specific enough - it probably should be testing to see whether + we are in an instance of the particular generic in which the result + of calling Corresponding_Generic_Type was declared) and causes correct + code to be rejected. Second, the code seems to no longer be necessary + (possibly because of subsequent fixes in this area which are not + specific to unary operators). + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * sem_ch8.adb (Premature_Usage): Remove dead code. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Size_Check_Code): Delete. + * gen_il-fields.ads (Opt_Field_Enum): Remove Size_Check_Code. + * gen_il-gen-gen_entities.adb (Constant_Or_Variable_Kind): Likewise. + * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Remove call + to Kill_Size_Check_Code. + * sem_prag.adb (Analyze_Pragma): Likewise. + * sem_util.ads (Kill_Size_Check_Code): Delete. + * sem_util.adb (Kill_Size_Check_Code): Likewise. + +2025-06-06 Claire Dross <dross@adacore.com> + + * sem_ch6.adb (Analyze_SPARK_Subprogram_Specification): + Allow the first parameter of functions whose return type is + an anonymous access-to-variable type to have mode IN OUT. + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * gen_il-fields.ads: New field. + * gen_il-gen-gen_entities.adb: New field. + * einfo.ads: Document new field. + * sem_res.adb (Check_Discriminant_Use): Record relevant uses in new + field. Move warning emission to... + * sem_ch3.adb (Analyze_Full_Type_Declaration): ... Here. + +2025-06-06 Steve Baird <baird@adacore.com> + + * sem_disp.adb + (Check_Dispatching_Operation): Delete code to generate + "missing overriding indicator" warning. Update comments. + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * cstand.adb (Create_Standard): Delay declaration generation for + Natural and Positive. + +2025-06-06 Ronan Desplanques <desplanques@adacore.com> + + * cstand.adb (Create_Standard): Remove useless calls. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Expand_Record_Aggregate): Use the named form for the + second actual parameter in the call to Duplicate_Subexpr. + * exp_attr.adb (Expand_Size_Attribute): Likewise. + * exp_ch5.adb (Expand_Assign_Array): Likewise. + (Expand_Assign_Array_Bitfield): Likewise. + (Expand_Assign_Array_Bitfield_Fast): Likewise. + * exp_util.ads (Duplicate_Subexpr): Add New_Scope formal parameter. + (Duplicate_Subexpr_No_Checks): Likewise. + (Duplicate_Subexpr_Move_Checks): Likewise. + * exp_util.adb (Build_Allocate_Deallocate_Proc): Pass Proc_Id as the + actual for New_Scope in the calls to Duplicate_Subexpr_No_Checks. + (Duplicate_Subexpr): Add New_Scope formal parameter and forward it + in the call to New_Copy_Tree. + (Duplicate_Subexpr_No_Checks): Likewise. + (Duplicate_Subexpr_Move_Checks): Likewise. + +2025-06-06 Piotr Trojanek <trojanek@adacore.com> + + * checks.adb (Insert_Valid_Check): Set flag Assignment_OK in the object + declaration inserted for the validity checks. + +2025-06-05 squirek <squirek@adacore.com> + + * sem_warn.adb + (Warn_On_Useless_Assignment): Disable out value "overwritten" warning + when we are not warning on unread out parameters (e.g. "-gnatw.o"). + +2025-06-05 Tonu Naks <naks@adacore.com> + + * libgnat/i-cstrin.adb: null pointer check in Update + +2025-06-05 Arnaud Charlet <charlet@adacore.com> + + * exp_util.adb, rtsfind.adb, rtsfind.ads, sem_prag.adb: Remove + references to RO_GH_Big_Integer and + Ada_Numerics_Big_Numbers_Big_Integers_Ghost. + * libgnat/a-strfix.adb, libgnat/a-strmap.adb, + libgnat/a-strsea.adb, libgnat/a-strsup.adb, + libgnat/i-c.ads, libgnat/i-c.adb, libgnat/s-aridou.adb, + libgnat/s-aridou.ads, libgnat/s-arit128.adb, + libgnat/s-arit128.ads, libgnat/s-arit32.adb, + libgnat/s-arit32.ads, libgnat/s-arit64.adb, + libgnat/s-arit64.ads, libgnat/s-casuti.adb, + libgnat/s-exnint.ads, libgnat/s-exnlli.ads, + libgnat/s-exnllli.ads, libgnat/s-expint.ads, + libgnat/s-explli.ads, libgnat/s-expllli.ads, + libgnat/s-explllu.ads, libgnat/s-expllu.ads, + libgnat/s-expmod.adb, libgnat/s-expmod.ads, + libgnat/s-exponn.adb, libgnat/s-exponn.ads, + libgnat/s-expont.adb, libgnat/s-expont.ads, + libgnat/s-exponu.adb, libgnat/s-exponu.ads, + libgnat/s-imaged.ads, libgnat/s-imaged.adb, + libgnat/s-expuns.ads, libgnat/s-imagef.ads, + libgnat/s-imagef.adb, libgnat/s-imagei.adb, + libgnat/s-imagei.ads, libgnat/s-imageu.adb, + libgnat/s-imageu.ads, libgnat/s-imgboo.adb, + libgnat/s-imde128.ads, libgnat/s-imde32.ads, + libgnat/s-imde64.ads, libgnat/s-imfi128.ads, + libgnat/s-imfi32.ads, libgnat/s-imfi64.ads, + libgnat/s-imgboo.ads, libgnat/s-imgint.ads, + libgnat/s-imglli.ads, libgnat/s-imgllli.ads, + libgnat/s-imglllu.ads, libgnat/s-imgllu.ads, + libgnat/s-imguns.ads, libgnat/s-valboo.adb, + libgnat/s-valboo.ads, libgnat/s-valint.ads, + libgnat/s-vallli.ads, libgnat/s-valllli.ads, + libgnat/s-vallllu.ads, libgnat/s-valllu.ads, + libgnat/s-valuns.ads, libgnat/s-valuti.adb, + libgnat/s-valuti.ads, libgnat/s-valuei.adb, + libgnat/s-valuei.ads, libgnat/s-valueu.ads, + libgnat/s-valueu.adb, libgnat/s-veboop.adb, + libgnat/s-veboop.ads, libgnat/s-widint.ads, + libgnat/s-widlli.ads, libgnat/s-widllli.ads, + libgnat/s-widlllu.ads, libgnat/s-widllu.ads, + libgnat/s-widthi.adb, libgnat/s-widthu.adb, + libgnat/s-widthu.ads, libgnat/s-widuns.ads: Remove ghost code + and SPARK annotations. + * libgnat/a-nbnbig.ads, libgnat/a-nbnbig.adb, + libgnat/s-spark.ads, libgnat/s-spcuop.adb, + libgnat/s-spcuop.ads, libgnat/s-vaispe.adb, + libgnat/s-vaispe.ads, libgnat/s-vauspe.adb, + libgnat/s-vauspe.ads, libgnat/s-vs_int.ads, + libgnat/s-vs_lli.ads, libgnat/s-vs_llu.ads, + libgnat/s-vs_uns.ads, libgnat/s-valspe.adb, + libgnat/s-valspe.ads, libgnat/s-vsllli.ads, + libgnat/s-vslllu.ads: Removed. + * Makefile.rtl: Update list of runtime units. + * gcc-interface/Make-lang.in: Remove object files. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * fname-uf.adb: Fix documentation comment. + (Get_Default_File_Name): Fix indices of default patterns. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * atree.ads (New_Copy, Relocate_Node): Tweak documentation comments. + +2025-06-05 Andres Toom <toom@adacore.com> + + * libgnat/a-nudira.ads: Activate SPARK mode and add missing + basic contracts. Mark the unit as always terminating. + * libgnat/a-nuflra.ads: Idem. + +2025-06-05 Javier Miranda <miranda@adacore.com> + + * exp_ch7.adb (Process_Object_Declaration): Avoid generating + duplicate names for master nodes. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * opt.ads: Remove useless variable. + * sem_ch9.adb (Analyze_Abort_Statement, Analyze_Accept_Alternative, + Analyze_Accept_Statement, Analyze_Asynchronous_Select, + Analyze_Conditional_Entry_Call, Analyze_Delay_Alternative, + Analyze_Delay_Relative, Analyze_Delay_Until, Analyze_Entry_Body, + Analyze_Entry_Body_Formal_Part, Analyze_Entry_Call_Alternative, + Analyze_Entry_Declaration, Analyze_Entry_Index_Specification, + Analyze_Protected_Body, Analyze_Protected_Definition, + Analyze_Protected_Type_Declaration, Analyze_Requeue, + Analyze_Selective_Accept, Analyze_Single_Protected_Declaration, + Analyze_Single_Task_Declaration, Analyze_Task_Body, + Analyze_Task_Definition, Analyze_Task_Type_Declaration, + Analyze_Terminate_Alternative, Analyze_Timed_Entry_Call, + Analyze_Triggering_Alternative): Remove useless assignments. + +2025-06-05 Steve Baird <baird@adacore.com> + + * sem_util.adb + (Side_Effect_Free_Statements): Return False if the statement list + includes an explicit (i.e. Comes_From_Source) raise statement. + +2025-06-05 Javier Miranda <miranda@adacore.com> + + * sem_ch6.adb (Analyze_Expression_Function): Add missing check + on premature use of incomplete type. + +2025-06-05 Aleksandra Pasek <pasek@adacore.com> + + * libgnat/s-arit32.adb: Add Ghost aspect to Lo. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch4.adb (Tagged_Membership): Fix for protected types. + +2025-06-05 Bob Duff <duff@adacore.com> + + * sem_eval.adb (Fold_Shift): If the Amount parameter is greater + than the size in bits, use the size. For example, if we are + shifting an Unsigned_8 value, then Amount => 1_000_001 gives the + same result as Amount => 8. This change avoids computing the value + of 2**1_000_000, which takes too long and uses too much memory. + Note that the computation we're talking about is a compile-time + computation. Minor cleanup. DRY. + * sem_eval.ads (Fold_Str, Fold_Uint, Fold_Ureal): Fold the + comments into one comment, because DRY. Remove useless + verbiage. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * exp_attr.adb (Interunit_Ref_OK): Tweak categorization of compilation + units. + +2025-06-05 Aleksandra Pasek <pasek@adacore.com> + + * libgnat/s-aridou.adb: Add missing Ghost aspect to + Lemma_Not_In_Range_Big2xx64. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/s-trasym__dwarf.adb (Init_Module): Add mitigation. + +2025-06-05 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Build_Two_Pass_Aggr_Code): New function containing + most of the code initially present in Two_Pass_Aggregate_Expansion. + (Two_Pass_Aggregate_Expansion): Remove redundant N parameter. + Implement built-in-place expansion for (static) object declarations + and allocators, using Build_Two_Pass_Aggr_Code for the main work. + (Expand_Array_Aggregate): Adjust Two_Pass_Aggregate_Expansion call. + Replace Etype (N) by Typ in a couple of places. + * exp_ch3.adb (Expand_Freeze_Array_Type): Remove special case for + two-pass array aggregates. + (Expand_N_Object_Declaration): Do not adjust the object when it is + initialized by a two-pass array aggregate. + * exp_ch4.adb (Expand_Allocator_Expression): Apply the processing + used for container aggregates to two-pass array aggregates. + * exp_ch6.adb (Validate_Subprogram_Calls): Skip calls present in + initialization expressions of N_Object_Declaration nodes that have + No_Initialization set. + * sem_ch3.adb (Analyze_Object_Declaration): Detect the cases of an + array originally initialized by an aggregate consistently. + +2025-06-05 Johannes Kliemann <kliemann@adacore.com> + + * libgnat/s-arit32.adb (Lemma_Not_In_Range_Big2xx32): Add missing + Ghost aspect. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): Fix + handling of preprocessing dependencies. + +2025-06-05 Viljar Indus <indus@adacore.com> + + * doc/gnat_rm/implementation_defined_attributes.rst: Update the + documentation for Valid_Value. + * sem_attr.adb (Analyze_Attribute): Reject types where + the root type originates from Standard. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-05 Gary Dismukes <dismukes@adacore.com> + + * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Change call to Make_Assignment + for the indexed aggregate object to call Change_Make_OK_Assignment instead. + +2025-06-05 Steve Baird <baird@adacore.com> + + * sem_prag.adb + (Analyze_Constituent): In the specific case case of a defined-too-late + abstract state constituent, generate an additional error message. + +2025-06-05 Viljar Indus <indus@adacore.com> + + * diagnostics-sarif_emitter.adb (Print_Invocations): fix + commandLine and executionSuccessful nodes. + Fix typo in the name for startLine. + * osint.adb (Modified Get_Current_Dir) Fix generation of + the current directory. + (Relative_Path): Avoid relative paths starting with a + path separator. + * osint.ads: Update the documentation for Relative_Path. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/i-cstrin.adb (New_String): Fix size of allocation. + +2025-06-05 squirek <squirek@adacore.com> + + * sem_ch8.adb (Analyze_Package_Name): Add code to expand use + clauses such that they have an implicit with associated with them + when extensions are enabled. + * sem_ch10.ads (Analyze_With_Clause): New. + * sem_ch10.adb (Analyze_With_Clause): Add comes from source check + for warning. + (Expand_With_Clause): Moved to the spec. + * sem_util.adb, sem_util.ads + (Is_In_Context_Clause): Moved from sem_prag. + * sem_prag.adb (Analyze_Pragma): Update calls to + Is_In_Context_Clause. + (Is_In_Context_Clause): Moved to sem_util. + +2025-06-05 Piotr Trojanek <trojanek@adacore.com> + + * doc/gnat_ugn/platform_specific_information.rst + (Setting Stack Size from gnatlink): Improve documentation. + * gnat-style.texi: Regenerate. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-06-05 squirek <squirek@adacore.com> + + * accessibility.adb (Check_Return_Construct_Accessibility): + Disable check generation when we are only checking semantics. + * opt.ads: Add new flag for -gnatc mode + * switch-c.adb (Scan_Front_End_Switches): Set flag for -gnatc mode + +2025-06-05 Viljar Indus <indus@adacore.com> + + * sem_ch8.adb (Mark_Use_Type): Additionally mark the types + of the parameters and return values as used when analyzing an + operator. + +2025-06-05 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch9.adb (Build_Dispatching_Requeue): Take 'Tag of the + concurrent object instead of doing an unchecked conversion. + * exp_pakd.adb (Expand_Packed_Address_Reference): Perform address + arithmetic using an operator of System.Storage_Elements. + +2025-06-05 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.adb (Expand_Actuals): Remove obsolete comment. + (Make_Build_In_Place_Call_In_Anonymous_Context): Always use a proper + object declaration initialized with the function call in the cases + where a temporary is needed, with Assignment_OK set on it. + * sem_util.adb (Entity_Of): Deal with rewritten function call first. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * libgnat/i-cstrin.adb (Position_Of_Nul): Change specification and + adjust body accordingly. + (New_Char_Array): Fix size of allocation. + (To_Chars_Ptr): Adapt to Position_Of_Nul change. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): Fix + oracle generation. + +2025-06-05 Ronan Desplanques <desplanques@adacore.com> + + * generate_minimal_reproducer.adb (Generate_Minimal_Reproducer): + Fix when main library item is an instantiation. + +2025-06-05 Steve Baird <baird@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference): When accessing the + maps declared in package Cached_Attribute_Ops, the key value + passed to Get or to Set should never be the entity node for a + subtype. Use the entity of the corresponding type declaration + instead. + +2025-06-05 Viljar Indus <indus@adacore.com> + + * sem_res.adb (Resolve_Declare_Expression): Mark used + local variables inside a declare expression as referenced. + +2025-06-05 Javier Miranda <miranda@adacore.com> + + * sem.ads: Update reference to renamed subprogram in documentation. + * sem_ch3.ads (Preanalyze_Assert_Expression): Renamed. + (Preanalyze_Spec_Expression): Renamed. + * sem_ch3.adb (Preanalyze_Assert_Expression): Renamed and code cleanup. + (Preanalyze_Spec_Expression): Renamed. + (Preanalyze_Default_Expression): Renamed. + * contracts.adb: Update calls to renamed subprograms. + * exp_pakd.adb: Ditto. + * exp_util.adb: Ditto. + * freeze.adb: Ditto. + * sem_ch12.adb: Ditto. + * sem_ch13.adb: Ditto. + * sem_ch6.adb: Ditto. + * sem_prag.adb: Ditto. + * sem_res.adb (Preanalyze_And_Resolve): Add to the version without + context type the special handling for GNATprove mode provided by + the version with context type; required to cleanup the body of + Preanalyze_Assert_Expression. + +2025-06-05 squirek <squirek@adacore.com> + + * accessibility.adb + (Check_Return_Construct_Accessibility): Disable check generation + when we are only checking semantics. + +2025-06-05 Viljar Indus <indus@adacore.com> + + * diagnostics-json_utils.adb: Add new method To_File_Uri to + convert any path to the URI standard. + * diagnostics-json_utils.ads: Likewise. + * diagnostics-sarif_emitter.adb: Converted Artifact_Change + types to use the Source_File_Index instead of the file name + to store the source file. + Removed the body from Destroy (Elem : in out Artifact_Change) + since it no longer contained elements with dynamic memory. + Updated the implementation of Equals (L, R : Artifact_Change) + to take into account the changes for Artifact_Change. + Print_Artifact_Location: Use the Source_File_Index as an + input argument. Now prints the uriBaseId attribute and a + relative path from the uriBaseId to the file in question as + the value of the uri attribute. + New method Print_Original_Uri_Base_Ids to print the + originalUriBaseIds node. + Print_Run no prints the originalUriBaseIds node. + Use constants instead of strings for all the SARIF attributes. + * osint.adb: Add new method Relative_Path to calculate the + relative path from a base directory. + Add new method Root to calculate the root of each directory. + Add new method Get_Current_Dir to get the current working + directory for the execution environment. + * osint.ads: Likewise. + * clean.adb: Use full names for calls to Get_Current_Dir. + * gnatls.adb: Likewise. + +2025-06-05 Steve Baird <baird@adacore.com> + + * sem_res.adb + (Set_Mixed_Mode_Operand): If we are about to call Resolve + passing in Any_Fixed as the expected type, then instead pass in + the fixed point type of the other operand (i.e., B_Typ). + +2025-06-05 Gary Dismukes <dismukes@adacore.com> + + * sem_util.adb (Check_Function_Writable_Actuals): Add handling for + N_Iterated_Component_Association and N_Iterated_Element_Association. + Fix a typo in an RM reference (6.4.1(20/3) => 6.4.1(6.20/3)). + (Collect_Expression_Ids): New procedure factoring code for collecting + identifiers from expressions of aggregate associations. + (Handle_Association_Choices): New procedure factoring code for handling + id collection for expressions of aggregate associations with multiple + choices. Removed redundant test of Box_Present from original code. + +2025-05-24 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/Make-lang.in (ACATSDIR): Use acats-2 directory. + +2025-05-13 Nicolas Boulenguez <nicolas@debian.org> + + PR ada/87778 + * Make-generated.in: Remove -q gnatmake option. + * gcc-interface/Makefile.in: Likewise. + +2025-05-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/120104 + * exp_ch3.adb (Expand_Freeze_Record_Type): For a controlled tagged + type, freeze only the controlled primitives that are present. + +2025-04-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/112958 + * Makefile.rtl (LIBGNAT_TARGET_PAIRS) [x86 FreeBSD]: Add specific + version of s-dorepr.adb. + * libgnat/s-dorepr__freebsd.adb: New file. + +2025-04-30 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/112958 + * init.c (__gnat_error_handler) [__FreeBSD__]: Fix typo. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gcc-interface/utils.cc (create_param_decl): Remove the + targetm.calls.promote_prototypes call. + +2025-04-17 Jakub Jelinek <jakub@redhat.com> + + * gnatvsn.ads: Bump Library_Version to 16. + +2025-04-12 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/119643 + * sem_ch8.adb (Inherit_Renamed_Profile): Add guard against the + peculiarities of Natural and Positive. + +2025-04-07 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/utils.cc (convert) <POINTER_TYPE>: Use fold_convert + to convert between thin pointers. If the source is a thin pointer + with zero offset from the base and the target is a pointer to its + array, displace the pointer after converting it. + * gcc-interface/utils2.cc (build_unary_op) <ATTR_ADDR_EXPR>: Use + fold_convert to convert the address before displacing it. + +2025-04-04 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/a-ngcoar.adb (Eigensystem): Adjust notation and fix the + layout of the real symmetric matrix in the main comment. Adjust + the layout of the associated code accordingly and correctly turn + the 2Nx1 real vectors into Nx1 complex ones. + (Eigenvalues): Minor similar tweaks. + * libgnat/a-ngrear.adb (Jacobi): Minor tweaks in the main comment. + Adjust notation and corresponding parameter names of functions. + Fix call to Unit_Matrix routine. Adjust the comment describing + the various kinds of iterations to match the implementation. + +2025-03-27 Eric Botcazou <ebotcazou@adacore.com> + + * libgnarl/s-tasini.adb (Tasking_Runtime_Initialize): Add pragma + Linker_Constructor for the procedure. + +2025-03-25 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/119440 + * gcc-interface/Make-lang.in (GCC_LINK): Filter out -pie in stage 1 + (GCC_LLINK): Likewise. + * gcc-interface/Makefile.in (COMPILER): Delete and replace by CC. + (COMPILER_FLAGS): Delete. + (ALL_COMPILERFLAGS): Delete and replace by ALL_CFLAGS. + (ALL_ADAFLAGS): Move around. + (enable_host_pie): New substituted variable. + (LD_PICFLAG): Likewise. Do not add it to TOOLS_LIBS. + (LIBIBERTY): Test enable_host_pie. + (LIBGNAT): Likewise and use libgnat_pic.a if yes. + (TOOLS_FLAGS_TO_PASS): Pass $(PICFLAG) under CFLAGS & $(LD_PICFLAG) + under LDFLAGS. Also pass through ADA_CFLAGS. + (common-tools): Add $(ALL_CFLAGS) $(ADA_CFLAGS) to the --GCC string + of $(GNATLINK) commands. + (../../gnatdll$(exeext)): Likewise. + (gnatmake-re): Likewise. + (gnatlink-re): Likewise. + (gnatlib-shared-dual): Remove all the object files at the end. + +2025-03-19 Eric Botcazou <ebotcazou@adacore.com> + + * gnatvsn.adb (Gnat_Free_Software): Fix message formatting. + +2025-03-19 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Record_Subtype>: Set + the may_alias attribute if a specific GCC type is built. + +2025-03-19 Eric Botcazou <ebotcazou@adacore.com> + + * gen_il-gen-gen_nodes.adb (N_Formal_Package_Declaration): Use + N_Declaration instead of Node_Kind as ancestor. + * sem_ch12.adb (Get_Formal_Entity): Remove obsolete alternative. + (Instantiate_Formal_Package): Take into account the abbreviated + instances in the main loop running over the actuals of the local + package created for the formal package. + +2025-02-04 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118731 + * sem_aggr.adb (Resolve_Iterated_Association): Add missing guard. + +2025-02-01 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118712 + * sem_warn.adb (Check_References): Deal with small adjustments of + references. + +2025-01-31 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/utils.cc (gnat_pushdecl): Clear TREE_PUBLIC on + functions really nested in another function. + +2025-01-22 Arsen Arsenović <arsen@aarsen.me> + + * gcc-interface/lang-specs.h: Replace %{nostdinc*} %{nostdlib*} + with %{nostdinc} %{nostdlib}. + +2025-01-14 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118459 + * libgnat/s-objrea.ads (Object_Arch): Add S390 and RISCV. + * libgnat/s-objrea.adb (EM_S390): New named number. + (EM_RISCV): Likewise. + (ELF_Ops.Initialize): Deal with EM_S390 and EM_RISCV. + (Read_Address): Deal with S390 and RISCV. + +2025-01-13 Pascal Obry <obry@adacore.com> + + * doc/gnat_ugn/platform_specific_information.rst: Update. + * gnat_ugn.texi: Regenerate. + +2025-01-13 Javier Miranda <miranda@adacore.com> + + * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Restore calls + to Preanalyze_Spec_Expression that were replaced by calls to + Preanalyze_And_Resolve. Add documentation. + (Check_Aspect_At_Freeze_Point): Ditto. + +2025-01-13 Pascal Obry <obry@adacore.com> + + * mdll.adb: For the created DLL to be relocatable we do not want to use + the base file name when calling gnatdll. + * gnatdll.adb: Removes option -d which is not working anymore. And + when using a truly relocatable DLL the base-address has no real + meaning. Also reword the usage string for -d as we do not want to + specify relocatable as gnatdll can be used to create both + relocatable and non relocatable DLL. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/a-strunb.ads: Remove redundant parentheses inside NOT + operators. + +2025-01-13 Javier Miranda <miranda@adacore.com> + + * sem_util.adb (Build_Actual_Subtype_Of_Component): No action + under preanalysis. + * sem_ch5.adb (Set_Assignment_Type): If the right-hand side contains + target names, expansion has been disabled to prevent expansion that + might move target names out of the context of the assignment statement. + Restore temporarily the current compilation mode so that the actual + subtype can be built. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * par-ch4.adb (P_Factor): Warn when the operand of a unary operator + doesn't require parentheses. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/s-genbig.adb: Remove redundant parentheses in comments. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * checks.adb, exp_dist.adb, exp_imgv.adb, exp_util.adb, + libgnarl/a-reatim.adb, libgnat/a-coinve.adb, libgnat/a-nbnbre.adb, + libgnat/a-ngcoty.adb, libgnat/a-ngelfu.adb, libgnat/a-ngrear.adb, + libgnat/a-strbou.ads, libgnat/a-strfix.ads, libgnat/a-strsea.adb, + libgnat/a-strsea.ads, libgnat/a-strsup.ads, + libgnat/a-strunb__shared.ads, libgnat/g-alleve.adb, + libgnat/g-spitbo.adb, libgnat/s-aridou.adb, libgnat/s-arit32.adb, + libgnat/s-dourea.ads, libgnat/s-genbig.adb, libgnat/s-imager.adb, + libgnat/s-statxd.adb, libgnat/s-widthi.adb, sem_attr.adb, sem_ch10.adb, + sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_dim.adb, sem_prag.adb, + sem_res.adb, uintp.adb: Remove redundant parentheses inside NOT and ABS + operators. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * par-ch3.adb (P_Discrete_Range): Detect redundant parentheses in the + lower bound like in the upper bound. + +2025-01-13 Gary Dismukes <dismukes@adacore.com> + + * sem_aggr.adb (Resolve_Aggregate): Add another condition to prevent rewriting + an aggregate whose type is an array of characters, testing for the presence of + predicates on the component type. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch4.adb: (Expand_N_Not_In): Preserve Alternatives in expanded + membership operator just like preserving Right_Opnd (though only + one of these fields is present at a time). + * par-ch4.adb (P_Membership_Test): Remove redundant setting of fields + to their default values. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * par-ch3.adb (P_Discrete_Range): Replace N_Subexpr, which was catching + all subexpressions, with kinds that catch nodes that require + parentheses to become "simple expressions". + +2025-01-13 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-valrea.adb (Large_Powfive) [2 parameters]: Add a couple + of additional comments. + +2025-01-13 Piotr Trojanek <trojanek@adacore.com> + + * par-ch4.adb (P_Relation): Prevent Expr_Form to be overwritten when + parsing the raise expression itself. + (P_Simple_Expression): Fix manipulation of Expr_Form. + +2025-01-10 squirek <squirek@adacore.com> + + * accessibility.adb: + (Innermost_master_Scope_Depth): Add special case for expressions + within library level subprograms. + +2025-01-10 Marc Poulhiès <poulhies@adacore.com> + + * env.h: Remove last empty line. + +2025-01-10 Piotr Trojanek <trojanek@adacore.com> + + * contracts.adb (Build_Call_Helper_Decl): Tune whitespace. + * exp_attr.adb (Analyze_Attribute): Set Of_Present while + creating the node; reorder setting Subtype_Indication to match the + syntax order. + * exp_ch3.adb (Build_Equivalent_Aggregate): Likewise for Box_Present + and Expression properties. + * sem_ch12.adb (Analyze_Formal_Derived_Type): Set type properties + when creating the nodes. + * sem_ch3.adb (Check_Anonymous_Access_Component): Likewise. + +2025-01-10 Piotr Trojanek <trojanek@adacore.com> + + * gen_il-gen-gen_nodes.adb (Gen_Nodes): Change Is_Effective_Use_Clause + from syntactic to semantic property. + +2025-01-10 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb (Predef_Spec_Or_Body): Add explicit parameter + associations, because now the Empty_List actual parameter would be + confused as being for the Aspect_Specifications formal parameter. + * gen_il-gen-gen_nodes.adb (Gen_Nodes): Reorder syntactic fields. + * sem_util.adb (Declare_Indirect_Temp): Add explicit parameter + association, because now the parameter will be interpreted as a + subpool handle name. + +2025-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/18765 + * debug.adb (d_q): Document new usage. + * sem_ch6.adb (New_Overloaded_Entity): Apply the special processing + to all equality operators whose base result type is Boolean, but do + not enforce the new Ada 2012 freezing rule if the result type is a + proper subtype of it and the -gnatd_q switch is specified. + +2025-01-09 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118274 + * sem_ch4.adb (Check_Arithmetic_Pair.Has_Fixed_Op): Use the original + node of the operator to identify the case of an expanded name whose + prefix is the package Standard. + +2025-01-09 squirek <squirek@adacore.com> + + * libgnat/a-comutr.adb, libgnat/a-comutr.ads: + Move the declarations of iterator types into the specification and + add additional comments. + +2025-01-09 Javier Miranda <miranda@adacore.com> + + * freeze.adb (Freeze_Expr_Types): Reverse patch; that is, restore + calls to Preanalyze_Spec_Expression instead of Preanalyze_And_Resolve + for the sake of consistency with Analyze_Expression_Function. Patch + suggested by Eric Botcazou. + * exp_put_image.adb (Image_Should_Call_Put_Image): Ensure that + function Defining_Identifier is called with a proper node to + avoid internal assertion failure. + +2025-01-07 Marc Poulhiès <poulhies@adacore.com> + + * libgnat/a-calcon.ads: Adjust. + * libgnat/a-calend.ads: Adjust. + +2025-01-07 Alexandre Oliva <oliva@adacore.com> + + * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): + Drop g-cpp, g-cppexc and g-cppstd. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.cc (Call_to_gnu): Always use the return slot + optimization if the parent node is an initialization statement. + (gnat_to_gnu) <N_Assignment_Statement>: Build an INIT_EXPR instead + of a MODIFY_EXPR if this is an initialization statement. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * gen_il-fields.ads (Opt_Field_Enum): Remove flag. + * gen_il-gen-gen_nodes.adb (N_Attribute_Definition_Clause): Remove + field. + * sem_ch13.adb (Validate_Address_Clauses): Remove read of the flag. + * sinfo.ads (Address_Warning_Posted): Remove flag description. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Packed_Array_Aggregate_Handled): Remove declaration + and handler for Not_Handled local exception. Check the return value + of Get_Component_Val instead. + (Get_Component_Val): Return No_Uint instead of raising Not_Handled. + +2025-01-07 Javier Miranda <miranda@adacore.com> + + * exp_util.adb (Insert_Actions): Document behavior under strict + preanalysis. + * sem.ads (In_Strict_Preanalysis): New subprogram. + (Preanalysis_Active): Replace 'and' operator by 'and then'. + * sem.adb (In_Strict_Preanalysis): Ditto. + * sem_attr.adb (Check_Dereference): Replace In_Spec_Expression + occurrence by call to Preanalysis_Active, and document it. + (Resolve_Attribute [Atribute_Access]): Ditto. + (Eval_Attribute): No evaluation under strict preanalysis. + (Validate_Static_Object_Name): No action under strict preanalysis. + * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Replace + calls to Preanalyze_Spec_Expression by calls to Preanalyze_And_Resolve. + (Check_Aspect_At_Freeze_Point): Ditto. + (Resolve_Aspect_Expressions [Dynamic/Static/Predicate aspects]): Code + cleanup adjusting the code to emulate Preanalyze_And_Resolve, instead + of Preanalyze_Spec_Expression. + (Resolve_Aspect_Expressions [CPU/Interrupt_Priority/Priority/ + Storage_Size aspects]): Replace calls to Preanalyze_Spec_Expression + by call to Preanalyze_And _Resolve. + * sem_ch3.adb (Analyze_Object_Declaration): Replace In_Spec_Expression + occurrence by call to Preanalysis_Active. + (Find_Type_Of_Object): Add documentation. + * sem_ch4.adb (Analyze_Case_Expression): Replace In_Spec_Expression + occurrence by call to Preanalysis_Active. + * sem_ch6.adb (Analyze_Expression_Function): Minor code reorganization + moving the code preanalyzing the expression after the new body has + been inserted in the tree to ensure that its Parent attribute is + available for preanalysis. + * sem_cat.adb (Validate_Static_Object_Name): No action under strict + preanalysis. + * sem_elab.adb (Check_For_Eliminated_Subprogram): Replace In_Spec_Expression + occurrence by call to Preanalysis_Active. + * sem_eval.adb (Eval_Intrinsic_Call [Name_Enclosing_Entity]): Ditto. + * sem_elim.adb (Check_For_Eliminated_Subprogram): Ditto. + * sem_res.adb (Resolve_Entity_Name): Ditto. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * repinfo-input.adb (Decode_Name, Read_Name_With_Prefix): Use constant + overlay with pragma Import. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * exp_disp.adb (Write_DT): Add guards that prevent crashes on illegal + node numbers. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * diagnostics-pretty_emitter.adb (Get_Last_Line_Char): Fix whitespace. + * sem_aggr.adb (Resolve_Array_Aggregate): Fix style. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Is_Null_Record_Definition): Remove check for + Component_List being present after using it; replace check for + component item being a component declaration with an assertion; + fix style in comment. + +2025-01-07 Ronan Desplanques <desplanques@adacore.com> + + * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Fix abort + deferral. + +2025-01-07 Steve Baird <baird@adacore.com> + + * gen_il-fields.ads: add new Renames_Limited_View field. + * gen_il-gen-gen_entities.adb: add Renames_Limited_View flag for + packages. + * einfo.ads: add comment documenting Renames_Limited_View flag. + * sem_ch8.adb (Analyze_Package_Renaming): Set new Renames_Limited_View + flag. Test new Renames_Limited_View flag instead of calling + Has_Limited_With. If Has_Limited_With is True, that just means + that somebody, sometime during this compilation needed to + reference the limited view of the package; so that function + returns True too often to be used here. + (Find_Expanded_Name): Test new Renames_Limited_View flag instead of + calling Has_Limited_With. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * contracts.adb (Inherit_Pragma): Don't set flag Is_Inherited_Pragma. + * gen_il-fields.ads (Opt_Field_Enum): Remove field identifier. + * gen_il-gen-gen_nodes.adb (N_Pragma): Remove field from node. + * sinfo.ads (Is_Inherited_Pragma): Remove field description. + (N_Pragma): Remove field reference. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Attribute): Replace runtime conversion + with existing constant. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Analyze_Attribute): Simplify logic. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * exp_attr.adb (Expand_N_Attribute_Reference): Remove explicit + handling of attributes related to Ada 2012 iterators. + * sem_attr.adb (Analyze_Attribute, Eval_Attribute): Likewise; + move attribute Reduce according to alphabetic order. + * snames.adb-tmpl (Get_Attribute_Id): Add support for new internal + attributes. + * snames.ads-tmpl: Recognize names of new internal attributes. + (Attribute_Id): Recognize new internal attributes. + (Internal_Attribute_Id): Likewise. + (Is_Internal_Attribute_Name): Avoid duplication in comment. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * accessibility.adb (First_Selector): Remove redundant and locally + inconsistent parenthesis. + (Check_Return_Construct_Accessibility): Remove qualifier from list + operation. + * sem_util.adb (Is_Prim_Of_Abst_Type_With_Nonstatic_CW_Pre_Post): + Likewise. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch7.ads (Store_After_Actions_In_Scope_Without_Analysis): New + procedure declaration. + * exp_ch7.adb (Store_New_Actions_In_Scope): New procedure. + (Store_Actions_In_Scope): Call Store_New_Actions_In_Scope when the + target list is empty. + (Store_After_Actions_In_Scope_Without_Analysis): New procedure body. + * exp_aggr.adb (Expand_Container_Aggregate): For a declaration that + is wrapped in a transient scope, also defer the analysis of the new + code until after the declaration is analyzed. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-powflt.ads (Maxpow_Exact): Minor comment fix. + * libgnat/s-powlfl.ads (Maxpow_Exact): Likewise. + * libgnat/s-powllf.ads (Maxpow_Exact): Likewise. + * libgnat/s-valrea.adb (Large_Powfive) [1 parameter]: Exit the loop + as soon as the result saturates to +Inf. + (Large_Powfive) [2 parameters]: Likewise. + +2025-01-07 Alexandre Oliva <oliva@adacore.com> + + * libgnat/system-vxworks-ppc-rtp-smp.ads: Drop + --specs=vxworks-ppc-link.spec from Linker_Options. + * vxworks-smp-ppc-link.spec: Delete. + +2025-01-07 Ronan Desplanques <desplanques@adacore.com> + + * atree.adb (Parent_Or_List_Containing): New function. + * atree.ads (Parent_Or_List_Containing): Likewise. + * gen_il-fields.ads: Add new field. + * gen_il-gen-gen_nodes.adb (Gen_Nodes): Extend handled sequence of + statements node. + * par-ch11.adb (P_Handled_Sequence_Of_Statements, P_Exception_Handler): + Add new syntactic construct. + * par-ch5.adb (P_Sequence_Of_Statements): Likewise. + * par.adb: Likewise. + * par-util.adb (Check_Future_Keyword): Warn that "finally" becomes a + reserved word with extensions. + * scans.adb (Initialize_Ada_Keywords): Add new reserved word. + * snames.adb-tmpl: Likewise. + * snames.ads-tmpl: Likewise. + * scans.ads: Likewise. + * sem_ch11.adb (Analyze_Handled_Statements): Adapt to new node field. + * sem_ch5.adb (Analyze_Exit_Statement): Add legality check. + (Analyze_Goto_Statement): Likewise. + * sem_ch6.adb (Analyze_Return_Statement): Likewise. + * sinfo-utils.adb (Lowest_Common_Ancestor, Destroy_Element): New + subprograms. + * sinfo-utils.ads (Lowest_Common_Ancestor): New function. + * sinfo.ads: Add documentation for new field. + * xsnamest.adb: Fix typo in comment. + * doc/gnat_rm/gnat_language_extensions.rst: Document new extension. + * warnsw.adb: Add new option. + * warnsw.ads: Likewise. + * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Add abort + deferral to finally part. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + * gcc-interface/trans.cc (Handled_Sequence_Of_Statements_to_gnu): + Handle finally statements. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Expand_Array_Aggregate): Do not exclude aggregates + of bit-packed array types in assignments from in-place expansion. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Reject + references to attribute Result. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Move check + from GNATprove backend to GNAT frontend. + +2025-01-07 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Analyze_Exceptional_Contract, Analyze_Variant): Fix + comments. + +2025-01-07 Steve Baird <baird@adacore.com> + + * exp_put_image.adb (Image_Should_Call_Put_Image): Cope with the case + where the attribute prefix for an Image attribute reference + denotes an Itype constructed for a fixed point type. Calling + Has_Aspect with such an Itype misses applicable aspect + specifications; we need to look on the right list. This comes up + if the prefix of the attribute reference is + Some_Fixed_Point_Type'Base. + +2025-01-07 Gary Dismukes <dismukes@adacore.com> + + * sem_ch12.adb (Analyze_One_Association): In the case of a formal type + that has a Default_Subtype_Mark that does not have its Entity field set, + this means the default refers to another formal type of the same generic + formal part, so locate the matching subtype in the Result_Renamings and + set Match's Entity to that subtype prior to the call to Instantiate_Type. + (Validate_Formal_TypeDefault.Reference_Formal): Add test of Entity being + Present, to prevent blowups on End_Label ids (which don't have Entity set). + (Validate_Formal_Type_Default.Validate_Derived_Type_Default): Apply + Base_Type to Formal. + (Validate_Formal_Type_Default): Guard interface-related semantic checks + with a test of Is_Tagged_Type. + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * repinfo.adb (List_GCC_Expression.Print_Expr) <Cond_Expr>: Do not + output the final "end". + +2025-01-07 Johannes Kanig <kanig@adacore.com> + + * gnat1drv.adb: (SPARK_Library_Warning): preserve Warning_Doc_Switch + +2025-01-07 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Expand_Allocator_Expression): Do not build a cleanup + if restriction No_Exception_Propagation is active. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Likewise. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/118247 + * gcc-interface/Make-lang.in (GNATTOOLS_CROSS_MV): Copy gnatbind + instead of moving it. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Use the base type of + the index type to find the type used to compute the length. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * libgnat/s-finpri.ads: Remove clause for Ada.Finalization. + (Finalization_Collection): Change to limited private type with the + Finalizable aspect. + (Initialize): Remove "overriding" keyword. + (Finalize): Likewise. + * libgnat/s-finpri.adb (Initialize): Likewise. + (Finalize): Likewise. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/117569 + * sem_ch4.adb (Analyze_Indexed_Component_Form): Do not rewrite the + node as a type conversion if it is the current instance of a type + in a generic unit. + * sem_ch8.adb (Find_Selected_Component): Restrict the special case + of the current instance of a type to a generic unit. + +2025-01-06 Bob Duff <duff@adacore.com> + + * libgnat/s-imagef.adb (Set_Image_Integer): + Change "RM A.3.10" to be "RM A.10.9". + +2025-01-06 Alexandre Oliva <oliva@adacore.com> + + * libgnat/g-cppexc.adb (Convert_Caught_Object): Move... + * libgnat/g-cstyin.adb (Convert_Caught_Object): ... here. + Use object call notation. + (strcmp): New. + (Char_Arr, CharPtr, Char_Pointer, To_chars_ptr): Drop. Do not + import Interfaces.C.Pointers. + (To_Pointer): Convert from System.Address. + (Name_Starts_With_Asterisk): Rename local variable. + (Name_Past_Asterisk): Rewrite with System.Address and strcmp. + Import System.Storage_Elements. + (Equals): Use strcmp. + (Before): Fix logic error. Use strcmp. + (Name): Move conversion to String... + * libgnat/g-cppstd.adb (Name): ... here. Import + Interfaces.C.Strings. + * libgnat/g-cppstd.ads (Type_Info_Ptr): Disable heap + finalization. + * libgnat/g-cstyin.ads (Name): Change return type. + +2025-01-06 Claire Dross <dross@adacore.com> + + * aspects.ads: Add aspect Aspect_Exit_Cases. + * contracts.adb (Analyze_Entry_Or_Subprogram_Contract): Handle Exit_Cases. + (Expand_Subprogram_Contract): Idem. + * einfo-utils.adb (Get_Pragma): Allow Pragma_Exit_Cases. + * einfo-utils.ads (Get_Pragma): Idem. + * exp_prag.adb (Expand_Pragma_Exit_Cases): Ignore the pragma, currently we don't expand it. + * exp_prag.ads (Expand_Pragma_Exit_Cases): Idem. + * inline.adb (Remove_Aspects_And_Pragmas): Add Exit_Cases to the list. + (Remove_Items): Idem. + * par-prag.adb (Last_Arg_Is_Reason): Idem. + * sem_ch12.adb: Idem. + * sem_ch13.adb: Idem. + * sem_util.adb: Idem. + * sem_util.ads: Idem. + * sinfo.ads: Idem. + * snames.ads-tmpl: Add names Name_Exit_Cases, Name_Exception_Raised, and Name_Normal_Return + as well as pragma Pragma_Exit_Cases. + * sem_prag.adb (Analyze_Exit_Cases_In_Decl_Part): Make sure that a + pragma or aspect Exit_Cases is well formed. + (Analyze_Pragma): Make sure that a pragma or aspect Exit_Cases is at the right place. + * sem_prag.ads (Analyze_Exit_Cases_In_Decl_Part): Declaration. + * doc/gnat_rm/implementation_defined_pragmas.rst: Document the Exit_Cases pragma. + * doc/gnat_rm/implementation_defined_aspects.rst: Document the Exit_Cases aspect. + * gnat_rm.texi: Regenerate. + +2025-01-06 Bob Duff <duff@adacore.com> + + * sem_util.adb (Copy_Subprogram_Spec): When copying + an N_Defining_Operator_Symbol, create an + N_Defining_Operator_Symbol rather than an N_Defining_Identifier. + This will cause Lib.Xref to "skip the initial quote for + navigation purposes" (as per comments in Lib.Xref body). + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_aggr.adb (Case_Table_Type): Fix reference in comment. + (In_Place_Assign_OK): Move declaration around. + (Is_Build_In_Place_Aggregate_Return): Likewise and adjust. + (Expand_Array_Aggregate): Streamline for the sake of consistency. + (Aggr_Assignment_OK_For_Backend): Remove reference to Gigi/gcc. + (Backend_Processing_Possible): Likewise. + (Expand_Array_Aggregate): Add comment. + +2025-01-06 Bob Duff <duff@adacore.com> + + * sinfo.ads (Shift_Count_OK): Update comments. + (Is_Power_Of_2_For_Shift): Likewise. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * debug.adb (dQ): Document usage. + * exp_ch4.ads (Build_Cleanup_For_Allocator): New declaration. + * exp_ch4.adb (Build_Cleanup_For_Allocator): New procedure. + (Expand_Allocator_Expression): Build a cleanup to deallocate the + memory when the evaluation of the expression raises an exception. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Likewise. + * exp_util.adb (Build_Allocate_Deallocate_Proc): Do not generate the + detachment if the deallocation is for the cleanup of an allocator. + * gen_il-fields.ads (Opt_Field_Enum): Add For_Allocator. + * gen_il-gen-gen_nodes.adb (N_Free_Statement): Likewise. + * sinfo.ads (For_Allocator): Document usage on N_Free_Statement. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/117956 + * sem_util.adb (Is_Known_On_Entry): Be prepared for constants coming + from a renaming declaration. + +2025-01-06 Tonu Naks <naks@adacore.com> + + * adaint.c (__gnat_locate_exec_on_path): modify function signature + +2025-01-06 Piotr Trojanek <trojanek@adacore.com> + + * sem_prag.adb (Resolve_State): Continue ordinary processing. + +2025-01-06 Javier Miranda <miranda@adacore.com> + + * sem_ch4.adb (Try_Object_Operation): if no candidate interpretation + matches the context, redo the same analysis with Report_Error True + to report the error. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch5.adb (Expand_Assign_Array): Bail out for controlled + components if the RHS is a function call and the assignment has + the No_Ctrl_Actions flag set. + +2025-01-06 Viljar Indus <indus@adacore.com> + + * diagnostics-json_utils.adb: Add new method + Write_Boolean_Attribute. + * diagnostics-json_utils.ads: Likewise. + * diagnostics-sarif_emitter.adb (Print_Invocations): print + the executionSuccesful property value without extra quotes. + +2025-01-06 Viljar Indus <indus@adacore.com> + + * diagnostics-sarif_emitter.adb (Print_Rule): Remove printing + of the level attribute since it does not match the SARIF schema. + +2025-01-06 Piotr Trojanek <trojanek@adacore.com> + + * gen_il-gen.adb (Put_Tables): Add "not null" to the generated code. + * rtsfind.adb (Cstring_Ptr): Same for table with predefined RE_Id + error messages. + * impunit.adb (Aunit_Record): Same for array of alternative unit names. + +2025-01-06 Piotr Trojanek <trojanek@adacore.com> + + * opt.ads (Ada_Version_Runtime): Now a constant, since it cannot + and should never be modified. + +2025-01-06 Bob Duff <duff@adacore.com> + + * par-ch10.adb (P_Compilation_Unit): Give an error for "is null". + * sem_ch10.adb (Analyze_Subunit): Remove check for "is null" + as a subunit. + * sem_ch6.adb (Analyze_Subprogram_Declaration): + Remove check for "is null" as a library unit. + +2025-01-06 Javier Miranda <miranda@adacore.com> + + * sem_ch6.adb (Analyze_Expression_Function): Set the parent of + the new node to be the parent of the original to get the proper + context, which is needed for complete error reporting and for + semantic analysis. Patch suggested by Eric Botcazou. + +2025-01-06 Alexandre Oliva <oliva@adacore.com> + Olivier Hainque <hainque@adacore.com> + + * Makefile.rtl (LLVM_BUILD): Define based on LLVM_CONFIG. + (GNATRTL_NONTASKING_OBJS): Make g-cpp, g-cppstd, and g-cstyin + conditional on -gcc or -arm EH, and on no LLVM_BUILD. + * raise-gcc.c (GXX_EH_INTEROP): Define as 0 on gnat-llvm or + CERT, and 1 otherwise. + (__gnat_get_cxx_dependent_exception) Omit on !GXX_EH_INTEROP. + (__gnat_maybe_get_cxx_dependent_exception): Likewise. + (__gnat_get_cxx_exception_type_info): Likewise. + (__gnat_obtain_caught_object): Likewise. + (is_handled_by): Omit eid parameter and G++ interop on + !GXX_EH_INTEROP. Adjust callers. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Returns_By_Ref): Fix description. + * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do not + adjust the component manually (if need be), set No_Finalize_Actions + instead of No_Ctrl_Actions for this purpose. Do not adjust when + the expression is a naked function call. + * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Document the quirks of + the function. Assert that the LHS of the assignment does not have + side effects and replace calls to Duplicate_Subexpr_No_Checks with + calls to New_Copy_Tree. Rename local variable Asn to New_N. + (Expand_N_Assignment_Statement): In the tagged or controlled record + case, do remove side effects from both operands on entry. Remove + them in the controlled record case, except if the RHS is a function + call and the assignment has the No_Ctrl_Actions flag set. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Bail out when the parent + node is an assignment statement with the No_Ctrl_Actions flag set. + * sem_util.adb (Statically_Different): Return True for a function + call that does not return its result by reference. + * sinfo.ads (No_Ctrl_Actions): Adjust description and add a note for + the code generator. + (No_Finalize_Actions): Likewise. + +2025-01-06 Bob Duff <duff@adacore.com> + + * gen_il-gen.adb: Fix too-long line. + +2025-01-06 Tonu Naks <naks@adacore.com> + + * adaint.c: void parameter on non-windows platforms + +2025-01-06 Bob Duff <duff@adacore.com> + + * gen_il-internals.ads: Split Fields field into two fields + Imm_Fields and Fields. + * gen_il-gen.adb: Modify the field-inheritance + algorithm to inherit at each level of the type hierarchy, + rather than just inheriting into concrete types. + For example, if C is a concrete type derived from B, + which is in turn derived from A, we now set the Fields + of B to include those of A. (We had always set the Fields + of C to include those of A and B, and we still do that.) + (Compute_Fields_For_One_Type): Detect cases where a given + field is declared for all descendants of a given abstract + type, in which case we should consider declaring it in + the abstract type, and inheriting it in those descendants. + (Exception_To_Inheritance_Rule): These are the cases where + we could inherit, but we don't want to. + * gen_il-gen-gen_nodes.adb: Move fields up the type hierarchy, + so they are inherited instead of being defined separately. + * gen_il-gen-gen_entities.adb: Likewise. + +2025-01-06 Viljar Indus <indus@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): + Exchange_Limited_Views also in Ada 2005. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch6.adb (Expand_Call_Helper): Call Ultimate_Alias for the + detection of calls to subprograms specified for Constant_Indexing. + * exp_util.adb (Is_Indexed_Container): Likewise. + (Is_Iterated_Container): Likewise for Default_Iterator. + +2025-01-06 Ronan Desplanques <desplanques@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix markup. + * gnat_ugn.texi: Regenerate. + +2025-01-06 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch13.adb (Validate_Unchecked_Conversions): Remove detection of + null arrays; remove tests for sizes being present, which are redundant + after calling Known_Static_RM_Size. + +2025-01-06 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/117936 + * doc/gnat_rm/implementation_defined_pragmas.rst + (Unimplemented_Unit): Adjust the description of the error message. + * gnat_rm.texi: Regenerate. + +2025-01-05 Estevan Castilho (Tevo) <estevan.cps@gmail.com> + + * libgnarl/s-taprop__dummy.adb: Remove use clause for + System.Parameters. + (Unlock): Remove Global_Lock formal parameter. + (Write_Lock): Likewise. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb, exp_ch4.adb, exp_disp.adb, inline.adb: Remove explicit + actual parameter Null_Exclusion_Present equal False. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb, exp_disp.adb: Remove explicit actual parameter + Constant_Present equal False; tune comments. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb, exp_ch9.adb, exp_dist.adb, exp_imgv.adb, exp_util.adb, + sem_dist.adb: Remove explicit actual parameter Aliased_Present equal + False; tune comments and whitespace. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch5.adb (Check_Call): Reuse Get_Called_Entity. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Check_Array_Type): Remove extra call. + * sem_util.adb (Static_Boolean): Likewise. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_aggr.adb (Others_Check): Reuse List_Length; tune whitespace. + * exp_ch3.adb (Constrain_Array): Remove counting of constraints. + * exp_disp.adb (Make_DT): Use Elist utility routines; tune whitespace. + * sem_ch12.adb (Formal_Dimensions): Reuse List_Length. + (Valid_Default_Attribute): Reuse Number_Formals. + * sem_prag.adb (Process_Convention): Likewise. + * sem_util.adb (Normalize_Actuals): Likewise. + (Check_Function_Writable_Actuals): Reuse List_Length. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * contracts.adb (Create_Generic_Contract): Remove calls to Present. + * sem_util.adb (Normalize_Actuals): Likewise. + +2025-01-03 Bob Duff <duff@adacore.com> + + * sem_util.adb (Append_Entity_Name): Do not skip the + simple name for a compilation unit (which includes + the case of specless subprogram bodies). + +2025-01-03 Tucker Taft <taft@adacore.com> + + * pprint.adb (Expression_Image): Adjust and improve comments + to match style recommendations, and change name of subtype + from Not_Associative to Non_Associative, in response to + code review. + +2025-01-03 Tucker Taft <taft@adacore.com> + + * pprint.adb (Expression_Image): In local function Expr_Name + add a No_Parens flag and define a subtype Not_Associative + to represent the short-circuit operations and And/Or/Xor. + Insert parentheses to separate the subexpressions when + different "Not_Associative" operations occur in a + sequence. + +2025-01-03 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (BIP_Initialization_Call): Adjust description. + * exp_ch4.adb (Expand_N_Case_Expression): Adjust commentary. + (Expand_N_If_Expression): Likewise. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): + Set BIP_Initialization_Call unconditionally in the definite case. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * uintp.adb (N_Digits): Refine return subtype, since this routine + always returns a positive number of digits. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * checks.adb (Generate_Index_Checks): Reuse existing utility routine. + * sem_ch4.adb (Analyze_Indexed_Component_Form): Likewise. + * sem_prag.adb (Analyze_Pragma): Likewise. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_dist.adb (Assign_Subprogram_Identifier, + Reserve_NamingContext_Methods): Simplify. + * osint.adb (Append_Suffix_To_File_Name, Find_File, Get_Directory, + Object_File_Name, Strip_Directory): Likewise. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_res.adb (Resolve_Alocator): Move unrelated code out of a declare + block. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * exp_ch3.adb (Search_Access_Discriminant, Search_Current_Instance, + Search_Internal_Call): Use traversal function instead of traversal + procedure and remove associated global variables. + * exp_util.adb (Search_Calls): Likewise. + * sem_prag.adb (Contains_Loop_Entry): Likewise. + * sem_util.adb (Mentions_Post_State): Likewise. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_attr.adb (Eval_Attribute): Fix comment for attribute Image. + * tbuild.adb (Make_SC): Remove extra whitespace. + +2025-01-03 Alexandre Oliva <oliva@adacore.com> + + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-cpp, g-cppstd, + and g-cstyin. + * doc/gnat_rm/interfacing_to_other_languages.rst (Interfacing to C++): + Document class-wide matching and new interfaces. + * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Add class-wide + exception matching support with 'B' as language identifier. + * libgnat/a-exexpr.adb (Setup_Current_Excep): Add Id formal. + (Set_Foreign_Occurrence): Likewise. + (Propagate_GCC_Exception): Adjust. + (Set_Exception_Parameter): Likewise. + (Unhandled_Except_Handler): Likewise. + * libgnat/g-cpp.ads: New. + * libgnat/g-cppexc.adb (Raise_Cpp_Exception): Match 'B' lang id. + (Get_Object_Address): New. + (Get_Object): Rewrite. + (Get_Access_To_Object): New. + (Get_Access_To_Tagged_Object): New. + (Get_Type_Info): New. + (Convert_Caught_Object): New. + * libgnat/g-cppexc.ads (Get_Object_Address): New. + (Get_Object): Note the Cpp Convention requirement. + (Get_Access_To_Object): New. + (Get_Access_To_Tagged_Object): New. + (Get_Type_Info): New. + * libgnat/g-cppstd.adb: New. + * libgnat/g-cppstd.ads: New. + * libgnat/g-csclex.ads: New, unused. + * libgnat/g-cstyin.adb: New. + * libgnat/g-cstyin.ads: New. + * libgnat/g-excact.adb (Exception_Language): New. + (Is_Foreign_Exception): Rewrite. + * libgnat/g-excact.ads (Exception_Languages): New. + (Exception_Language): New. + * libgnat/s-stalib.ads (Lang): Document 'B'. + * raise-gcc.c (__gnat_setup_current_excep): Add Exception_Id formal. + (CXX_DEPENDENT_EXCEPTION_CLASS): New. + (cxx_type_info): New. + (__cxa_exception): Rename exceptionType to encompass PrimaryException. + (_GNAT_Exception): Drop wrapper. + (EID_For): Adjust. + (exception_class_eq): Likewise. + (__gnat_exception_language_is_cplusplus): New. + (__gnat_exception_language_is_ada): New. + (__gnat_convert_caught_object): Declare. + (__gnat_get_cxx_dependent_exception): New. + (__gnat_maybe_get_cxx_dependent_exception): New. + (__gnat_get_cxx_exception_type_info): New. + (__gnat_obtain_caught_object): New. + (is_handled_by): Adjust. [!CERT] Add eid formal, handle dependent + exceptions and base-type matches. + (get_action_description_for) [!CERT]: Add eid formal. Adjust. + (personality_body): Adjust. + * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS) [!STAGE1]: + Add new g-cpp, g-cppstd, g-cstyin + preexisting g-cppexc + and i-cstrin. + * gnat-style.texi: Regenerate. + * gnat_rm.texi: Regenerate. + +2025-01-03 Gary Dismukes <dismukes@adacore.com> + + * diagnostics-constructors.adb (Make_Default_Iterator_Not_Primitive_Error): + Revise message to match message change made in sem_ch13.adb. + * freeze.adb (Freeze_Record_Type): Output appropriate aspect name in + error message, using Get_Name_String. + (Freeze_Entity): For derived types, call Analyze_Aspects_At_Freeze_Point + on the parent type, and call Inherit_Nonoverridable_Aspects on the type + (for both parent type and any progenitor types). Add with_clause for + System.Case_Util. + * gen_il-fields.ads: Add Aspect_Subprograms to type Opt_Field_Enum. + * gen_il-gen-gen_nodes.adb: Add field Aspect_Subprograms to + N_Aspect_Specification nodes. + * sem_ch4.adb (Try_Container_Indexing): Remove Find_Indexing_Operations + and the code calling it. Add new function Indexing_Interpretations for + retrieving the eligible indexing functions from the appropriate aspect's + Aspect_Subprograms list and call that instead of Find_Value_Of_Aspect. + * sem_ch7.adb (Analyze_Package_Specification): In loop over entities, + call Analyze_Aspects_At_Freeze_Point for types that have delayed + aspects. + * sem_ch13.ads (Analyze_Aspects_At_Freeze_Point): Add Nonoverridable_Only + formal to restrict processing to nonoverridable aspects. + (Check_Function_For_Indexing_Aspect): New exported procedure renamed + from Check_One_Function and moved to library level. + * sem_ch13.adb (Analyze_Aspects_At_Freeze_Point): Test new formal + Nonoverridable_Only formal to skip processing of aspects that are not + nonoverridable when the formal is True. Skip the processing for + Aspect_Full_Access_Only when Nonoverridable_Only is True. Call + Check_Indexing_Functions in the case of indexing aspects (procedure + moved from Analyze_Attribute_Definition_Clause to top level). + (Analyze_Aspect_Specifications): Locate closest ancestor type with an + explicit matching aspect to determine the aspect spec to reference in + the error about a nonoverridable aspect not confirming an inherited + aspect (skipping intermediate derived parents). Ensures that we retain + existing errors flagged on explicit ancestor aspects rather than + implicit inherited ones. Change names of variables Parent_Type and + Inherited_Aspect to Ancestor_Type and Ancestor_Aspect respectively + for clarity. + (Analyze_Attribute_Definition_Clause): Move nested subprograms + Check_Iterator_Functions and Check_Primitive_Function to top level + of package. Move Check_Indexing_Functions (and its nested subprograms) + from here to within Analyze_Aspects_At_Freeze_Point (adding some + formal parameters and adjusting the code appropriately, and no longer + call it from this procedure). + (Is_CW_Or_Access_To_CW): Add test for the parent type having the + indexing aspect for proper setting of Aspect_Specification_Is_Inherited. + Delete "???" comment. + (Look_Through_Anon_Access): Remove unneeded tests of Is_Access_Constant + and Name_Constant_Indexing, which lead to wrong messages in some cases. + (Check_Function_For_Indexing_Aspect): Procedure renamed from + Check_One_Function and moved to library level (was nested within + Check_Indexing_Functions), plus added formals (including Valid, to + check result). Move scope test to beginning, to immediately exclude + subprograms not declared immediately within the same scope as the type. + Improve several error messages. Add error checking for Constant_Indexing + functions. Append the function entity to the Aspect_Subprograms list of + the aspect specification. Move code for checking for nonconfirming + index aspects and for checking for illegal indexing aspects on full + views to Check_Indexing_Functions. + (Check_Indexing_Functions): Move procedure Illegal_Indexing from + here to within Check_Function_For_Indexing_Aspect. Add a comment + to the loop over interpretations about the checking being done as + legality rules rather than resolution rules, plus a note referencing + AI22-0084. Check for nonconfirming indexing aspects and illegal + indexing aspects on full views here rather than in Check_One_Function + (now named Check_Function_For_Indexing_Aspect). Remove function + Check_One_Function (moved to library level and renamed), and call + Check_Function_For_Indexing_Aspect instead. + (Check_Inherited_Indexing): Improve spec comment. Remove nested function + Same_Chars, and replace call Same_Chars with call to Sem_Util.Same_Name. + Replace call to Illegal_Indexing with call to Error_Msg_NE. + (Check_One_Function): Unnested from Check_Indexing_Functions, rename + to Check_Function_For_Indexing_Aspect, move body to library level, + and move declaration to Sem_Ch13 spec. + (Analyze_Attribute_Definition_Clause, case Attribute_Default_Iterator): + Improve error message related to tagged-type requirement. Suppress call + to Check_Iterator_Functions for attribute definition clauses associated + with inherited aspects. Remove error checking that is redundant with + checking done in Check_Iterator_Functions. + (Check_Aspect_At_Freeze_Point, case Attribute_Default_Iterator): Call + Check_Iterator_Functions (only if the aspect is not Comes_From_Source). + (Check_Iterator_Functions): Procedure unnested from + Analyze_Attribute_Definition_Clause. Add formals Typ and Expr. + Error messages corrected to say "aspect Default_Iterator" instead of + "aspect Iterator". + (Valid_Default_Iterator): Improve error message to say "must be + a local primitive or class-wide function" instead of "must be + a primitive function". + (Check_Primitive_Function): Unnested from Analyze_Attribute_Definition_Clause. + Add formal Ent. + (Rep_Item_Too_Late): Return False when an attribute_definition_clause + is not Comes_From_Source, since it was generated by the compiler (such + as for an inherited aspect). + (Resolve_Aspect_Aggregate): Capture implementation base type. + (Valid_Empty): Use implementation base types for result type comparison. + (Valid_Add_Named): Use impl base types for comparison of formal's type. + (Valid_Add_Unnamed): Use impl base types for comparison of formal's type. + (Valid_New_Indexed): Use impl base types for result type comparison. + (Validate_Literal_Aspect): Return immediately when aspect does not have + Comes_From_Source True (no point in validating inherited aspects). + * sem_res.adb (Has_Applicable_User_Defined_Literal): Remove Base_Type + comparison and always call Corresponding_Op_Of_Derived_Type for derived + types. Add "???" comment about issue with wrapper functions (and + indicate that it would be nice to eliminate the call to + Corresponding_Primitive_Op). + * sem_util.ads (Inherit_Nonoverridable_Aspects): New procedure. + (Corresponding_Op_Of_Derived_Type): Update spec comment to indicate + return of Ancestor_Op and name changed from Corresponding_Primitive_Op. + * sem_util.adb (Check_Inherited_Nonoverridable_Aspects): Fix name in + header comment. + (Corresponding_Op_Of_Derived_Type): Move declaration of Typ down with + other local variables. Remove Assert that doesn't apply in some cases. + Simply return Ancestor_Op when it isn't a primitive (it can be a + class-wide op). Function name changed from Corresponding_Primitive_Op. + (Find_Untagged_Type_Of): Add test of Is_Type (E) as a guard for checking + Direct_Primitive_Operations. Remove Assert (False), and return Empty + when the primitive is not found. + (Profile_Matches_Ancestor): Change comparisons to use implementation + base types of the operations' formal and result types. Add tests for + interface ancestors. Revise "???" comment. + (Is_Confirming): Simplify name-matching test to use the names associated + with the aspects rather than going to the N_Attribute_Definition_Clause + nodes (may facilitate elimination of those clauses at some point). + (Inherit_Nonoverridable_Aspects): New procedure to traverse the + aspects of a derived type's parent type and create inherited versions + of the parent type's nonoverridable aspects, identifying the appropriate + subprograms for each such inherited aspect. + (Inherit_Nonoverridable_Aspect): New procedure nested in + Inherit_Nonoverridable_Aspects to inherit individual nonoverridable + aspects. Identifies the corresponding subprogram(s) associated with + an inherited nonoverridable aspect. In the case of indexing aspects, + new eligible indexing functions of the type are also identified here, + and the entities of all of the identified subprograms are appended to + the aspect's Aspect_Subprograms Elist. Add a "???" comment about this. + * sinfo.ads: Add documentation for the new Aspect_Subprograms field. + +2025-01-03 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Insert_Conditional_Object_Declaration): Create the + Master_Node even if the declaration is turned into a renaming. + +2025-01-03 Piotr Trojanek <trojanek@adacore.com> + + * sem_ch3.adb (Array_Type_Declaration): Don't copy parent for an itype + created by an array component declaration. + +2025-01-03 Douglas B Rupp <rupp@adacore.com> + + * socket.c [__vxworks]: Change vxw_h_addr type to long from + int, and cast the conversion of char* to vxw_h_addr to avoid + warning/error. + +2025-01-03 Tonu Naks <naks@adacore.com> + + * adaint.c: change default behaviour of __gnat_locate_exec_on_path + * adaint.h: change prototype of __gnat_locate_exec_on_path + * libgnat/s-os_lib.adb: pass optional argument in Locate_Exec_On_Path + * libgnat/s-os_lib.ads: change spec of Locate_Exec_On_Path + * libgnat/s-trasym__dwarf.adb: update import of __gnat_locate_exec_on_path + +2025-01-03 Eric Botcazou <ebotcazou@adacore.com> + + * exp_ch4.adb (Expand_Allocator_Expression): Put back the call to + Remove_Side_Effects in the case of a function call, a class-wide + designated type and a regular storage pool. + +2025-01-03 Bob Duff <duff@adacore.com> + + * sem_ch6.adb (Analyze_Expression_Function): Mark the implicit + spec for an expression function as Comes_From_Source. + (Analyze_Null_Procedure): Minor cleanup. + * sem_warn.adb (Source_E1): New function to compute whether + to give warnings. In particular, return True for [in] out + parameters of expression functions. + +2025-01-03 Steve Baird <baird@adacore.com> + + * exp_aggr.adb (Check_Bounds): Remove calls that were setting the + Analyzed flag to False for two aggregate bound expressions. + +2025-01-03 Eric Botcazou <ebotcazou@adacore.com> + + * einfo.ads (Is_Independent): Document usage on Master_Node objects. + * exp_aggr.adb (In_Place_Assign_OK): Remove Parent_Kind variable. + (Convert_To_Assignments): Call Unconditional_Parent and remove the + restriction on the known size for the in-place expansion of the + aggregate in the context of an object declaration. + (Expand_Array_Aggregate): Remove Parent_Kind variable and call + Unconditional_Parent and Delay_Conditional_Expressions_Between + * exp_ch3.adb: Remove clauses for Exp_Dbug. + (Expand_N_Object_Declaration): Factor out the code rewriting the + declaration as a renaming in Rewrite_Object_Declaration_As_Renaming + and call the procedure. + * exp_ch4.adb (Insert_Conditional_Object_Declaration): Declare. + (Expand_N_Case_Expression): Delay expanding the expression if it is + in the context of an optimizable object declaration. If the parent + node is this object declaration, then replace it with a renaming of + the dereference of an access value designating an object initialized + with the dependent expression chosen by the condition. + (Expand_N_If_Expression): Likewise. + (Insert_Conditional_Object_Declaration): New procedure. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Test the unconditional + parent in the case of an object declaration too. + * exp_ch7.adb (Build_Finalizer.Process_Declarations): Pass Strict to + Processing_Actions from the Is_Independent flag on a Master_Node. + * exp_util.ads (Rewrite_Object_Declaration_As_Renaming): Declare. + * exp_util.adb: Add clauses for Exp_Dbug. + (Rewrite_Object_Declaration_As_Renaming): New procedure extracted + from Expand_N_Object_Declaration. + * sem_ch3.adb (Analyze_Object_Declaration): Also leave the analysis + if the declaration has been replaced with a renaming in the case of + an initialization expression that is a conditional expression. + +2025-01-03 Eric Botcazou <ebotcazou@adacore.com> + + * checks.adb (Apply_Predicate_Check): Preserve Comes_From_Source. + * exp_ch4.adb (Expand_Allocator_Expression): Factor out common code + for the various cases. Also delay applying the 2nd predicate check. + In the default case, defer to Make_Build_In_Place_Call_In_Allocator + entirely in the build-in-place case. + * sem_ch4.adb (Analyze_Allocator): Do not give the warning or error + for a default-initialized allocator with No_Initialization. + +2025-01-03 Ronan Desplanques <desplanques@adacore.com> + + * lib-writ.adb (Write_ALI): Remove useless space. + +2025-01-03 Ronan Desplanques <desplanques@adacore.com> + + * lib-writ.adb (Write_ALI): Remove condition for writing P line + parameters. + * lib-writ.ads: Fix typos. Clarify comment. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * gnat_ugn.texi: Bump @copying's copyright year. + * gnat_rm.texi: Likewise. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index af8d713ab7c..923c914865e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5412 +1,5 @@ -2025-12-29 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/123080 - * parser.cc (cp_parser_skip_to_end_of_statement): Don't abort - implicit templates during tentative parsing. - (cp_parser_lambda_declarator_opt): Add cleanup for - fully_implicit_function_template_p before parsing - trailing_requires_clause. - -2025-12-29 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119097 - PR c++/120005 - * constexpr.cc (potential_constant_expression_1): Fall back to - location from parent expression if needed. - * cp-gimplify.cc (enum fold_flags): Add ff_only_non_odr. - (cp_fold_data::cp_fold_data): Assert invariant for flags. - (cp_fold_omp_clause_refs_r): New function. - (cp_fold_r): Specially handle OMP_CLAUSE_DECL. - (cp_fold_function_non_odr_use): New function. - (cp_fold_non_odr_use_1): New function. - (cp_fold_maybe_rvalue): Fold non-ODR uses when requested. - (cp_fold_non_odr_use): New function. - (fold_caches): Increase number of caches. - (get_fold_cache): Use a new cache for non-ODR use walks. - (cp_fold): Skip most folding for non-ODR use walks; always - fold constant-initialized references; remove dead code to - fold __builtin_source_location. - * cp-tree.h (cp_fold_function_non_odr_use): Declare. - (cp_fold_non_odr_use): Declare. - * decl.cc (finish_function): Fold non-ODR uses before saving - constexpr fundef. Invoke PLUGIN_PRE_GENERICIZE before this - folding. - * ptree.cc (cxx_print_xnode): Handle TU_LOCAL_ENTITY. - * tree.cc (bot_manip): Propagate TREE_CONSTANT. - * typeck2.cc (digest_nsdmi_init): Fold non-ODR uses in NSDMIs. - -2025-12-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * decl.cc (start_preparsed_function): Use - DECL_TEMPLOID_INSTANTIATION instead of - DECL_TEMPLATE_INSTANTIATION to check vague linkage. - * decl2.cc (vague_linkage_p): Likewise. - (c_parse_final_cleanups): Simplify condition. - * pt.cc (non_templated_friend_p): Namespace-scope friend - function declarations without a primary template are still - non-templated. - * semantics.cc (expand_or_defer_fn_1): Also check for temploid - friend functions. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122550 - * decl.cc (member_like_constrained_friend_p): Check that the - friend's enclosing class is an implicit instantiation. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122958 - * pt.cc (maybe_new_partial_specialization): Compare template - parameter lists when checking for existing specializations and - remove flag_concepts check. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/117518 - * parser.cc (cp_parser_lambda_expression): Clear - processing_template_parmlist when parsing lambda body. - -2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> - - * Make-lang.in: Bump GCOV version to 3. - -2025-12-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122994 - * module.cc (depset::disc_bits): New flag - DB_IGNORED_EXPOSURE_BIT. - (depset::is_ignored_exposure_context): New getter. - (depset::hash::ignore_tu_local): Rename to... - (depset::hash::ignore_exposure): ...this, and make private. - (depset::hash::hash): Rename ignore_tu_local. - (depset::hash::ignore_exposure_if): New function. - (trees_out::decl_value): Don't build deps for keyed entities. - (trees_in::decl_value): Handle missing keys. - (trees_out::write_function_def): Use ignore_exposure_if. - (trees_out::write_var_def): Likewise. - (trees_out::write_class_def): Likewise. - (depset::hash::make_dependency): Set DB_IGNORED_EXPOSURE_BIT if - appropriate, or clear it otherwise. - (depset::hash::add_dependency): Rename ignore_tu_local. - (depset::hash::find_dependencies): Set ignore_exposure if in - such a context. - -2025-12-22 Yuao Ma <c8ef@outlook.com> - - PR c++/123261 - * semantics.cc (expand_or_defer_fn_1): Use maybe_constexpr_fn. - -2025-12-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122712 - * module.cc (depset::hash::dep_adl_info): New type. - (depset::hash::dep_adl_entity_list): New work list. - (depset::hash::hash): Create it. - (depset::hash::~hash): Release it. - (trees_out::tree_value): Cache possibly dependent - calls during tree walk. - (depset::hash::add_dependent_adl_entities): New function. - (depset::hash::find_dependencies): Process cached entities. - * name-lookup.cc (name_lookup::tentative): New member. - (name_lookup::name_lookup): Initialize it. - (name_lookup::preserve_state): Propagate tentative from previous - lookup. - (name_lookup::adl_namespace_fns): Don't search imported bindings - during tentative lookup. - (name_lookup::adl_class): Don't attempt to complete class types - during tentative lookup. - (name_lookup::search_adl): Skip type-dependent args and avoid - unnecessary work during tentative lookup. - (lookup_arg_dependent): Add tentative parameter. - * name-lookup.h (lookup_arg_dependent): Likewise. - -2025-12-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/122690 - * tree.cc (implicit_lifetime_type_p): Don't test is_trivially_xible, - instead try to lazily declare dtor and default, copy and move ctors - if needed and check for their triviality and whether they are - deleted. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/91388 - * semantics.cc (finish_static_assert): Suppress -Wreturn-type warnings - in functions with failed assertions. - -2025-12-19 Jason Merrill <jason@redhat.com> - Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/117034 - * parser.cc (maybe_start_implicit_template): Split out from... - (synthesize_implicit_template_parm): ...here. - (cp_parser_template_id): Call it. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - * decl2.cc (mark_single_function): Return false for error_mark_node. - (mark_used): Likewise. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/123044 - * typeck2.cc (build_functional_cast_1): Call convert_from_reference - on template CAST_EXPR to match C-style cast behavior. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122509 - * parser.cc (cp_parser_lookup_name): Use protect=2 instead of - protect=0 when calling lookup_member. - -2025-12-19 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_parser_omp_clause_uses_allocators): Accept - multiple clause-argument-specifications separated by ';'. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/122772 - * tree.cc (cp_stabilize_bitfield_reference): New function. - (cp_stabilize_reference): Use it for stabilization of - clk_bitfield or clk_packed lvalues. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR debug/122968 - * decl.cc (cp_finish_decomp): For structured bindings at namespace - scope which have DECL_HAS_VALUE_EXPR_P set, call early_global_decl - debug hook and put all such structured bindings into - "structured bindings" attribute arguments on the underlying decl. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/122834 - * typeck.cc (cp_compare_floating_point_conversion_ranks): Return - 3 if fmt2->b is 10 except for _Float16 vs. _Decimal128, in that - case return -2. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/123030 - * init.cc (build_vec_init): Call build_vec_delete_1 for -fexceptions - even if just type_build_dtor_call, not only when - TYPE_HAS_NONTRIVIAL_DESTRUCTOR. But register cleanups only - for TYPE_HAS_NONTRIVIAL_DESTRUCTOR. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_build_range_for_decls): If expansion_stmt_p, - where we are setting DECL_DECLARED_CONSTEXPR_P on begin/end, use - const qualified iter_type. - * pt.cc (finish_expansion_stmt): Use build_target_expr_with_type - with cv_unqualified to create it instead of get_target_expr to - make it non-const qualified. When creating VAR_DECLs with - DECL_DECLARED_CONSTEXPR_P, make sure they have const qualified - type unless they are references. - -2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122922 - * module.cc (trees_in::post_types): New member. - (trees_in::trees_in): Initialize it. - (trees_in::~trees_in): Clean it up. - (trees_in::post_process_type): New functions. - (trees_in::tree_node): Save incomplete ARRAY_TYPEs for later - post-processing. - (module_state::read_cluster): Attempt to complete any - ARRAY_TYPEs we saved earlier. - -2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122995 - * name-lookup.cc (maybe_record_mergeable_decl): Don't build a - STAT_HACK for namespaces. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_parser_omp_assumption_clauses): Add - no_openmp_constructs clause. - -2025-12-18 Patrick Palka <ppalka@redhat.com> - - * decl.cc (tag_name) <case none_type>: Return "typename" as if - typename_type. - -2025-12-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/123186 - * parser.cc (cp_parser_template_id): Use TYPE_IDENTIFIER instead of - TYPE_NAME in second build_typename_type argument. - -2025-12-18 Egas Ribeiro <egas.g.ribeiro@gmail.com> - Patrick Palka <ppalka@redhat.com> - - PR c++/122070 - * pt.cc (type_targs_deducible_from): Fall back to - TYPE_TEMPLATE_INFO when TYPE_TEMPLATE_INFO_MAYBE_ALIAS is NULL. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (OMP_TARGET_CLAUSE_MASK): Add - device_type clause. - -2025-12-17 benwu25 <soggysocks206@gmail.com> - - * parser.cc (cp_parser_init_declarator): Adjust comment. - -2025-12-17 benwu25 <soggysocks206@gmail.com> - - PR c++/121443 - * parser.cc (cp_parser_lambda_expression): Clear - in_declarator_p. - -2025-12-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/123075 - * constraint.cc (evaluate_concept_check): Push to an unrelated - scope, but keep the same access context. - * pt.cc (tsubst_lambda_expr): Don't record lambda scopes for - lambdas attached to a concept. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - * parser.cc (cp_parser_template_id): Rebuild instead of modifying - a TYPENAME_TYPE corresponding to a dependently-scoped template. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - * cp-tree.h (TYPENAME_TYPE_TAG_BIT_0): New. - (TYPENAME_TYPE_TAG_BIT_1): New. - (TYPENAME_TYPE_TAG_BIT_2): New. - (TYPENAME_IS_ENUM_P): Use get_typename_tag. - (TYPENAME_IS_CLASS_P): Rename to ... - (TYPENAME_IS_CLASS_OR_STRUCT_P): ... this, and use - get_typename_tag. - (TYPENAME_IS_UNION_P): Use get_typename_tag. - (TYPENAME_IS_RESOLVING_P): Use TREE_LANG_FLAG_3 - instead of _2. - (get_typename_tag): New. - (set_typename_tag): New. - (tag_name): Declare. - * decl.cc (typename_info): Replace bool fields with a single - tag_types field. - (typename_hasher::equal): Adjust. - (build_typename_type): Adjust. - (tag_name): Handle none_type and scope_type. - * error.cc (dump_type) <case TYPENAME_TYPE>: Use tag_name. - * module.cc (trees_out::type_node) <case TYPENAME_TYPE>: Use - get_typename_tag. - * pt.cc (tsubst) <case TYPENAME_TYPE>: Likewise. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - * cp-tree.h (CLASSTYPE_LAMBDA_EXPR): Check CLASS_TYPE_P before - inspecting TYPE_POLYMORPHIC_P. - (TYPE_POLYMORPHIC_P): Restrict to RECORD_TYPE or UNION_TYPE. - Document its use of TREE_LANG_FLAG_2. - * parser.cc (noexcept_override_late_checks): Only - check TYPE_POLYMORPHIC_P on CLASS_TYPE_P types. - * rtti.cc (build_headof): Likewise. - (get_tinfo_ptr_dynamic): Likewise. - (build_typeid): Likewise. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - PR c++/122752 - * pt.cc (tsubst) <case TYPENAME_TYPE>: Allow TYPENAME_TYPE - resolving to another wildcard type. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - PR c++/122668 - PR c++/114764 - * parser.cc (cp_parser_class_specifier): Adjust after - changing the element type of unparsed_noexcepts. Pass - the class type to noexcept_override_late_checks. - (cp_parser_member_declaration): Set - CP_PARSER_FLAGS_DELAY_NOEXCEPT also for templated friends. - (noexcept_override_late_checks): Add class_type parameter. - (cp_parser_single_declaration): Set - CP_PARSER_FLAGS_DELAY_NOEXCEPT also for template friends - at class template scope. - (cp_parser_save_default_args): Push current_class_type - to unparsed_noexcepts. - * parser.h (cp_unparsed_functions_entry::noexcepts): - Change element type to cp_default_arg_entry. - * pt.cc (dependentish_scope_p): Revert r16-5425 change. - -2025-12-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/123128 - * parser.cc (cp_parser_omp_clause_linear): Initialize next to NULL - rather than UNKNOWN_LOCATION. - -2025-12-13 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_parser_omp_clause_reduction): Provide fixit hints - for -Wdeprecated-openmp diagnostics. - (cp_parser_omp_clause_linear): Likewise. - (cp_parser_omp_clause_depend): Likewise. - (cp_parser_omp_clause_map): Likewise. Reset num_commas after the - diagnostics. - (cp_parser_omp_clause_proc_bind): Provide fixit hints for - -Wdeprecated-openmp diagnostics. - (cp_parser_omp_all_clauses): Move -Wdeprecated-openmp diagnostics - for to vs. enter here, add fixit hints for it. - (cp_parser_omp_master):Add MASTER_LOC argument. Provide fixit hints - for -Wdeprecated-openmp diagnostics. - (cp_parser_omp_parallel): Adjust cp_parser_omp_master caller. - (cp_parser_omp_declare_target): Don't emit -Wdeprecated-openmp - warning for to vs. enter here. - (cp_parser_omp_metadirective): Provide fixit hints for - -Wdeprecated-openmp diagnostics. - (cp_parser_omp_construct): Adjust cp_parser_omp_master caller. - -2025-12-12 Nathaniel Shead <nathanieloshead@gmail.com> - - * method.cc (constructible_expr): Emit diagnostics for abstract - types. - * typeck2.cc (abstract_virtuals_error): Use more accurate - wording for default case, and remove extranneous whitespace - in favour of a nesting level. - -2025-12-12 Chung-Lin Tang <cltang@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - Andrew Stubbs <ams@baylibre.com> - - * parser.cc (cp_parser_omp_clause_uses_allocators): New function. - (cp_parser_omp_clause_name, cp_parser_omp_all_clauses, - OMP_TARGET_CLAUSE_MASK): Handle uses_allocators. - * semantics.cc (finish_omp_clauses): Likewise. - * pt.cc (tsubst_omp_clauses): Likewise. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/123098 - * parser.cc (cp_parser_omp_clause_reduction): Only emit - -Wdeprecated-openmp warning for CPP_MINUS if is_omp. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_parser_omp_clause_reduction, - cp_parser_omp_clause_linear, cp_parser_omp_clause_depend, - cp_parser_omp_clause_map, cp_parser_omp_clause_proc_bind, - cp_parser_omp_master, cp_parser_omp_declare_target, - cp_parser_omp_metadirective): Formatting fixes. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * parser.cc (cp_parser_omp_clause_reduction): Deprecate '-' - operator. - (cp_parser_omp_clause_linear): Deprecate modifiers with parens. - (cp_parser_omp_clause_depend): Deprecate sink and source. - (cp_parser_omp_clause_map): Map clause modifiers - comma-separated. - (cp_parser_omp_declare_target): Deprecate synonymous omp declare - target for omp begin declare target. Deprecate to clause. - (cp_parser_omp_metadirective): Deprecate default clause on - metadirectives. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * parser.cc (cp_parser_postfix_expression): Whitespace. - (cp_parser_builtin_c23_va_start): Ditto. - (cp_parser_omp_clause_proc_bind): Deprecate master affinity. - (cp_parser_omp_master): Deprecate master construct. - -2025-12-10 Jason Merrill <jason@redhat.com> - - * module.cc (maybe_translate_include): Suggest <bits/stdc++.h> - as an alternate for importable standard library headers. - (importable_headers, is_importable_header): New. - -2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - Revert: - 2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * decl.cc (start_preparsed_function): Use - DECL_TEMPLOID_INSTANTIATION instead of - DECL_TEMPLATE_INSTANTIATION to check vague linkage. - * decl2.cc (vague_linkage_p): Likewise. - (c_parse_final_cleanups): Simplify condition. - * semantics.cc (expand_or_defer_fn_1): Also check for temploid - friend functions. - -2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * decl.cc (start_preparsed_function): Use - DECL_TEMPLOID_INSTANTIATION instead of - DECL_TEMPLATE_INSTANTIATION to check vague linkage. - * decl2.cc (vague_linkage_p): Likewise. - (c_parse_final_cleanups): Simplify condition. - * semantics.cc (expand_or_defer_fn_1): Also check for temploid - friend functions. - -2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - * pt.cc (tsubst_expr): Add TARGET_EXPR case with explanatory - comment and gcc_unreachable. - -2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/119343 - * pt.cc (resolve_nondeduced_context): Remove mark_used call. - -2025-12-06 Jakub Jelinek <jakub@redhat.com> - - * decl2.cc (is_late_template_attribute): Call lookup_attribute_spec - on TREE_PURPOSE (attr) rather than name. Only call - attribute_takes_identifier_p if get_attribute_namespace (attr) is - gnu_identifier. - * pt.cc (tsubst_attribute): Only call attribute_takes_identifier_p - if get_attribute_namespace (t) is gnu_identifier. - -2025-12-05 Tobias Burnus <tburnus@baylibre.com> - - * pt.cc (tsubst_omp_clauses): Handle OMP_CLAUSE_DYN_GROUPPRIVATE. - * semantics.cc (finish_omp_clauses): Likewise. - * parser.cc (cp_parser_omp_clause_dyn_groupprivate): New. - (cp_parser_omp_clause_name, cp_parser_omp_all_clauses): - Handle 'dyn_groupprivate' clause. - (OMP_TARGET_CLAUSE_MASK): Add PRAGMA_OMP_CLAUSE_DYN_GROUPPRIVATE; - sort clauses alphabetically. - -2025-12-03 Jason Merrill <jason@redhat.com> - - * pt.cc (dependent_implict_conv_p): Rename to... - (dependent_implicit_conv_p): ...this. - -2025-12-02 Jakub Jelinek <jakub@redhat.com> - - PR c++/122860 - * decl.cc (make_rtl_for_nonlocal_decl): Diagnose taking address - of a hard register decl in its initializer. - (cp_finish_decl): Likewise. - -2025-12-02 Jakub Jelinek <jakub@redhat.com> - - PR c++/122836 - * decl.cc (check_array_designated_initializer): Change ce->index to - error_mark_node after emitting an error for it. - -2025-12-02 Jason Merrill <jason@redhat.com> - - PR c++/122171 - PR c++/112632 - * pt.cc (dependent_implict_conv_p): Split out... - (convert_template_argument): ...from here. - (tsubst_expr) [IMPLICIT_CONV_EXPR]: Use it. - (do_auto_deduction): Call mark_single_function. - -2025-12-02 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (module_state::write_using_directives): Correct - condition. - -2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (trees_out::lang_decl_vals): Stream DECL_CHAIN for - decl_specialization_friend_p functions. - (trees_in::lang_decl_vals): Likewise. - -2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122915 - * module.cc (module_state::write_using_directives): Don't emit - imported using-directives. - (module_state::read_using_directives): Rename - add_using_namespace to add_imported_using_namespace. - * name-lookup.cc (add_using_namespace): Handle imported - using-directives. - (add_imported_using_namespace): Rename to match new - functionality. - * name-lookup.h (add_using_namespace): Rename to... - (add_imported_using_namespace): ...this. - -2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119864 - PR c++/122939 - * module.cc (trees_out::write_function_def): Don't crash on - OMP used-defined type reduction function definitions. - -2025-12-01 Jakub Jelinek <jakub@redhat.com> - - PR c++/122905 - * decl.cc (enum_with_enumerator_for_linkage_p): Only return true - for namespace scope types. - -2025-11-30 Jakub Jelinek <jakub@redhat.com> - - PR c++/122465 - * parser.cc (cp_parser_simple_declaration): Adjust function comment. - Set *maybe_range_for_decl to error_mark_node instead of keeping it - NULL_TREE in error cases or when followed by CPP_COLON. - -2025-11-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119864 - * module.cc (trees_in::read_function_def): Don't call - post_process on OpenMP UDT reductions. - * parser.cc (cp_parser_omp_declare_reduction): Call push_decl - for block_scope, even when processing_template_decl. - -2025-11-29 Eczbek <eczbek.void@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/116952 - * parser.cc (cp_parser_lambda_expression): Revert - r11-8166-ge1666ebd9ad31d change prohibiting lambda in non-type - parameter. - -2025-11-29 Jakub Jelinek <jakub@redhat.com> - - PR c++/122758 - * decl.cc (pop_labels): Don't call adjust_backward_gotos if - processing_template_decl. - (decl_instrument_init_bypass_p): Always return false if - processing_template_decl. - (check_goto_1): Don't push anything to direct_goto vector - if processing_template_decl. - -2025-11-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/119969 - * cp-objcp-common.cc (cxx_get_alias_set): Remove special cases - for TYPE_PTRMEMFUNC_P and INDIRECT_TYPE_P for TYPE_PTRMEMFUNC_P. - -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 - * name-lookup.h (expose_existing_namespace): Declare. - * name-lookup.cc (expose_existing_namespace): New function. - (push_namespace): Call it. - * pt.cc (tsubst_friend_function): Likewise. - -2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122789 - * module.cc (trees_out::core_vals): Treat REQUIRES_EXPR - specially and stream the chained decls of its first operand. - (trees_in::core_vals): Likewise. - (trees_out::tree_node): Check the PARM_DECLs we see are what we - expect. - -2025-11-25 Jason Merrill <jason@redhat.com> - - * lang-specs.h: Add @c++-system-module. - * g++spec.cc (lang_specific_driver): Handle --compile-std-module. - -2025-11-24 Marek Polacek <polacek@redhat.com> - - PR c++/119964 - * cp-tree.h (maybe_delete_defaulted_fn): Remove. - * method.cc (maybe_delete_defaulted_fn): Make static. Refactor. If FN - is not explicitly defaulted on its first declaration, emit an error. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122636 - * module.cc (instantiating_tu_local_entity): Don't check - importingness of originating module decl; also check templates. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * constraint.cc (diagnose_trait_expr): - <case CPTK_IS_POINTER_INTERCONVERTIBLE_BASE_OF>: Explain failure - with more detail. - * cp-tree.h (pointer_interconvertible_base_of_p): Add explain - parameter. - * semantics.cc (pointer_interconvertible_base_of_p): Explain why - not. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * constraint.cc (diagnose_trait_expr) - <case CPTK_IS_LAYOUT_COMPATIBLE>: Explain why not. - * cp-tree.h (layout_compatible_type_p): Add explain parameter. - * typeck.cc (layout_compatible_type_p): Add explanations when - returning false. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * constraint.cc (diagnose_trait_expr) - <case CPTK_HAS_UNIQUE_OBJ_REPRESENTATIONS>: Explain failure with - more detail. - * cp-tree.h (type_has_unique_obj_representations): Add explain - parameter. - * tree.cc (record_has_unique_obj_representations): Explain when - returning false. - (type_has_unique_obj_representations): Likewise. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * method.cc (destructible_expr): Add explanation when type is - neither class nor scalar. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * constraint.cc (diagnose_trait_expr): Use t2's location for - is_base_of, is_pointer_interconvertible_base_of, and - is_virtual_base_of. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * constraint.cc (diagnose_trait_expr): Reset input_location. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * typeck.cc (layout_compatible_type_p): Do not check TYPE_SIZE. - -2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> - Julian Brown <julian@codesourcery.com> - waffl3x <waffl3x@baylibre.com> - - * cp-tree.h (struct cp_omp_declare_variant_attr): New. - (struct saved_scope): Add omp_declare_variant_attribute field. - * decl.cc (omp_declare_variant_finalize_one): Add logic to inject - "this" parameter for method calls. - * parser.cc (cp_parser_skip_to_pragma_omp_end_declare_variant): New. - (cp_parser_translation_unit): Handle leftover "begin declare variant" - functions. - (omp_start_variant_function): New. - (omp_finish_variant_function): New. - (omp_maybe_record_variant_base): New. - (cp_parser_init_declarator): Handle variant functions. - (cp_parser_class_specifier): Handle deferred lookup of base functions - when the entire class has been seen. - (cp_parser_member_declaration): Handle variant functions. - (cp_finish_omp_declare_variant): Merge context selectors if in - a "begin declare variant" block. - (cp_parser_omp_begin): Match "omp begin declare variant". Adjust - error messages. - (cp_parser_omp_end): Match "omp end declare variant". - * parser.h (struct omp_begin_declare_variant_map_entry): New. - (struct cp_parser): Add omp_begin_declare_variant_map field. - * semantics.cc (finish_translation_unit): Detect unmatched - "omp begin declare variant". - -2025-11-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/122788 - * pt.cc (finish_expansion_stmt): Or in TREE_USED and DECL_READ_P - flags from range_decl to decl or from corresponding structured binding - to this_decl. - -2025-11-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/122185 - * cp-gimplify.cc (cp_fold) <case CALL_EXPR>: For -ffold-simple-inlines - restore check that both types are INDIRECT_TYPE_P, except for - "to_underlying" check that r has ENUMERAL_TYPE and x has - INTEGRAL_TYPE_P. - -2025-11-22 Daniele Sahebi <daniele@mkryss.me> - Jakub Jelinek <jakub@redhat.com> - - PR c++/122658 - * call.cc (build_over_call): Don't call build_cplus_new in - template declarations. - -2025-11-21 Marek Polacek <polacek@redhat.com> - - PR c++/120529 - * call.cc (ref_conv_binds_to_temporary): Don't ignore access control. - -2025-11-21 Jakub Jelinek <jakub@redhat.com> - - PR c++/121445 - * constexpr.cc (build_data_member_initialization): Just return - false if member is COMPONENT_REF of COMPONENT_REF with - VAR_P get_base_address. - -2025-11-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/120876 - * pt.cc (tsubst_baselink): Move maybe_incomplete handling after - !baselink handling. - -2025-11-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/122540 - * decl.cc (start_enum): When setting ENUM_UNDERLYING_TYPE - to integer_type_node during error recovery, also call copy_type_enum. - -2025-11-19 Marek Polacek <polacek@redhat.com> - - PR c++/119580 - * pt.cc (tsubst_baselink): Return error_mark_node if - tsubst_template_args returned error_mark_node. - -2025-11-19 Patrick Palka <ppalka@redhat.com> - - PR c++/122668 - PR c++/114764 - * pt.cc (dependentish_scope_p): Return true for the current - instantiation from within an immediately parsed noexcept-spec. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_parser_conversion_type_id): Implement C++ DR1670 - - auto as conversion-type-id. Pedwarn on conversion operators - with placeholder return type. - -2025-11-18 Jonathan Wakely <jwakely@redhat.com> - - PR c++/122677 - * module.cc (create_dirs): Skip past any leading slashes. - -2025-11-16 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122625 - * module.cc (trees_in::read_var_def): Also track class-scope - primary template specialisations. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * module.cc (trees_out::write_function_def): Check flag consistency. - * pt.cc (mark_decl_instantiated): Ignore TREE_ASM_WRITTEN. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::read_config): Add complain parm. - (module_state::open_slurp): Split out... - (module_state::do_import): ...from here. - (module_state::read_initial): Move begin call to open_slurp. - (module_state::check_importable): New. - (maybe_translate_include): Call it. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * module.cc (transfer_defining_module): Dereference - pointer into hash_map before possible insertion. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * name-lookup.cc (do_nonmember_using_decl): Handle hidden better. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * decl.cc (grokfndecl): Set DECL_CHAIN of a friend f<>. - * module.cc (trees_out::get_merge_kind): Give it MK_local_friend. - (trees_out::decl_container): Its container is the befriender. - (trees_out::key_mergeable): Expand comment. - * cp-tree.h (decl_specialization_friend_p): New. - * friend.cc (do_friend): Use it. - * pt.cc (tsubst_friend_function): Likewise. - -2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122551 - * cp-tree.h (transfer_defining_module): Declare. - * decl.cc (duplicate_decls): Call it for all decls. - Remove now unnecessary equivalent logic for templates. - * module.cc (mangle_module): Add assertion. - (transfer_defining_module): New function. - -2025-11-11 Jason Merrill <jason@redhat.com> - - * name-lookup.cc (name_lookup::adl_namespace_fns): Also skip hidden - in the module case. - -2025-11-11 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::read_cluster): Use set_cfun. - (post_load_processing): Likewise. - -2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122628 - * module.cc (instantiating_tu_local_entity): Add missing - STRIP_TEMPLATEs. - -2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> - - * pt.cc (tsubst_friend_function): Mark all parent namespaces as - purview if needed. - -2025-11-10 Tejas Belagod <tejas.belagod@arm.com> - - * typeck.cc (cp_build_binary_op): Likewise. - * call.cc (build_conditional_expr): Support vector booleans. - * cvt.cc (ocp_convert): Call target hook to resolve conversion - between standard and non-standard booleans. - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/119064 - * cp-tree.h (struct lang_type): Revert 2025-07-11 changes. - (CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT): Remove. - (CLASSTYPE_TRIVIALLY_RELOCATABLE_COMPUTED): Remove. - (CLASSTYPE_REPLACEABLE_BIT): Remove. - (CLASSTYPE_REPLACEABLE_COMPUTED): Remove. - (enum virt_specifier): Revert 2025-07-11 changes. - (trivially_relocatable_type_p): Remove. - (replaceable_type_p): Remove. - * cp-trait.def (IS_NOTHROW_RELOCATABLE): Remove. - (IS_REPLACEABLE): Remove. - (IS_TRIVIALLY_RELOCATABLE): Remove. - * parser.cc (cp_parser_class_specifier, cp_parser_class_head): - Revert 2025-07-11 changes. - * pt.cc (instantiate_class_template): Likewise. - * semantics.cc (trait_expr_value): Likewise. - (finish_trait_expr): Likewise. - * tree.cc (default_movable_type_p): Remove. - (union_with_no_declared_special_member_fns): Remove. - (trivially_relocatable_type_p): Remove. - (replaceable_type_p): Remove. - * constraint.cc (diagnose_trait_expr): Revert 2025-07-11 changes. - * module.cc (trees_out::lang_type_bools): Revert part of - 2025-07-26 changes related to trivial relocatability. - (trees_in::lang_type_bools): Likewise. - * lex.cc (cxx_init): Don't call cpp_warn on - trivially_relocatable_if_eligible and replaceable_if_eligible. - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - * lex.cc (cxx_init): For C++26 call cpp_warn on "indeterminate". - -2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121574 - * cp-tree.h (instantiating_tu_local_entity): Declare. - * module.cc (is_tu_local_entity): Extract from depset::hash. - (is_tu_local_value): Likewise. - (has_tu_local_tmpl_arg): Likewise. - (depset::hash::is_tu_local_entity): Remove. - (depset::hash::has_tu_local_tmpl_arg): Remove. - (depset::hash::is_tu_local_value): Remove. - (instantiating_tu_local_entity): New function. - (depset::hash::add_binding_entity): No longer go through - depset::hash to check is_tu_local_entity. - * pt.cc (complain_about_tu_local_entity): Remove. - (tsubst): Use instantiating_tu_local_entity. - (tsubst_expr): Likewise. - -2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121574 - * module.cc (depset::disc_bits): Replace 'DB_REFS_TU_LOCAL_BIT' - and 'DB_EXPOSURE_BIT' with new four flags - 'DB_{REF,EXPOSE}_{GLOBAL,PURVIEW}_BIT'. - (depset::is_tu_local): Support checking either for only purview - TU-local entities or any entity described TU-local by standard. - (depset::refs_tu_local): Likewise. - (depset::is_exposure): Likewise. - (depset::hash::make_dependency): A constant initialized to a - TU-local variable is always considered a purview exposure. - (is_exposure_of_member_type): Adjust sanity checks to handle if - we ever relax requirements for TU-local types. - (depset::hash::add_dependency): Differentiate referencing - purview or GMF TU-local entities. - (depset::hash::diagnose_bad_internal_ref): New function. - (depset::hash::diagnose_template_names_tu_local): New function. - (depset::hash::finalize_dependencies): Handle new warnings that - might be needed for GMF TU-local entities. - -2025-11-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122253 - * decl2.cc (min_vis_expr_r): Don't mark no-linkage declarations - as VISIBILITY_ANON. - -2025-11-04 David Malcolm <dmalcolm@redhat.com> - - * parser.cc (enum non_integral_constant): Fix typo - "an decrement" -> "a decrement" in comment. - (cp_parser_non_integral_constant_expression): Likewise in error - message. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * name-lookup.cc (name_lookup::adl_class_fns): Include all - namespace-scope friends. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * name-lookup.cc (pushdecl): Discard built-in sooner. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * module.cc (trees_in::decl_value): Don't add an instantiation to - CLASSTYPE_MEMBER_VEC. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::write_namespaces): Handle - TREE_DEPRECATED. - (module_state::read_namespaces): Likewise. - -2025-11-02 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122421 - * module.cc (trees_in::read_var_def): Don't handle class-scope - variables anymore. - (trees_in::read_class_def): Handle them here instead. - -2025-11-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122381 - * module.cc (trees_out::core_vals): Write BASELINK_OPTYPE (aka - TREE_CHAIN). - (trees_in::core_vals): Read it. - -2025-10-30 Jakub Jelinek <jakub@redhat.com> - - * std-name-hint.gperf: Remove duplicate entries for ispanstream - and istringstream. - * std-name-hint.h: Regenerate. - -2025-10-28 Marek Polacek <polacek@redhat.com> - Jakub Jelinek <jakub@redhat.com> - - * decl.cc (finish_enum_value_list): Use fold_convert instead of - copy_node. - -2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122422 - * decl.cc (maybe_deduce_size_from_array_init): Propagate type to - corresponding TEMPLATE_DECL. - -2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122310 - * module.cc (get_keyed_decl_scope): New function. - (trees_out::get_merge_kind): Use it. - (trees_out::key_mergeable): Use it. - (maybe_key_decl): Key to the containing type for all members. - -2025-10-27 Paul-Antoine Arras <parras@baylibre.com> - - PR c++/122378 - * parser.cc (cp_parser_label_declaration): Mangle label declaration in a - metadirective region. - -2025-10-21 Jakub Jelinek <jakub@redhat.com> - - * cp-tree.h: Implement C++23 P2674R1 - A trait for implicit lifetime - types. - (implicit_lifetime_type_p): Declare. - * tree.cc (implicit_lifetime_type_p): New function. - * cp-trait.def (IS_IMPLICIT_LIFETIME): New unary trait. - * semantics.cc (trait_expr_value): Handle CPTK_IS_IMPLICIT_LIFETIME. - (finish_trait_expr): Likewise. - * constraint.cc (diagnose_trait_expr): Likewise. - -2025-10-21 Paul-Antoine Arras <parras@baylibre.com> - - PR c/120180 - PR fortran/122306 - * parser.cc (cp_parser_omp_metadirective): Return early if only one - selector matches and it resolves to 'omp nothing'. - (cp_parser_omp_error): Reject 'error at(execution)' in intervening code. - (cp_parser_pragma): Accept a subset of non-executable OpenMP directives - as intervening code. - -2025-10-21 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_parser_omp_assumption_clauses): Switch to - 'unknown' not 'invalid' directive name for end directives. - -2025-10-18 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/119060 - * cxxapi-data.csv: Add observable_checkpoint to <utility>. - * std-name-hint.gperf: Add observable_checkpoint to <utility>. - * std-name-hint.h: Regenerate. - -2025-10-18 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122279 - * module.cc (depset::hash::add_namespace_entities): Seed any - purview using-decls. - (module_state::write_using_directives): Stream if the udir was - exported or not. - (module_state::read_using_directives): Add the using-directive - if it's either exported or part of this module. - -2025-10-14 Patrick Palka <ppalka@redhat.com> - - PR c++/122192 - * parser.cc (cp_parser_mem_initializer_id): Pass class_type - instead of typename_type to cp_parser_class_name in the - nested-name-specifier case. - -2025-10-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/122228 - * decl.cc (cp_make_fname_decl): When not using fname_as_decl, - attempt to translate name into ordinary literal encoding. - -2025-10-13 Jakub Jelinek <jakub@redhat.com> - - * decl.cc (omp_declare_variant_finalize_one): If !nbase_args - and TREE_TYPE (decl) has TYPE_NO_NAMED_ARGS_STDARG_P bit set - and varg is NULL, temporarily set TYPE_NO_NAMED_ARGS_STDARG_P - on TREE_TYPE (variant). - -2025-10-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122163 - * expr.cc (mark_use): When processing a reference, always return - an lvalue reference when !rvalue_p. - -2025-10-10 Patrick Palka <ppalka@redhat.com> - - PR c++/122192 - * decl.cc (make_typename_type): Document base-specifier as - another type-only lookup case. - * parser.cc (cp_parser_class_name): Propagate tag_type to - make_typename_type instead of hardcoding typename_type. - (cp_parser_base_specifier): Pass class_type instead of - typename_type as tag_type to cp_parser_class_name. - -2025-10-09 Jakub Jelinek <jakub@redhat.com> - - * cp-tree.h (cp_build_function_type): Declare. - * lex.cc: Implement va_start changes from P3348R4 - C++26 should - refer to C23 not C17 paper. - (init_reswords): Set D_CXX26 in mask for C++23 and older. - * parser.cc (cp_parser_primary_expression): Handle RID_C23_VA_START. - (cp_parser_builtin_c23_va_start): New function. - * cp-objcp-common.cc (names_builtin_p): Likewise. - * decl.cc (grokfndecl, check_function_type): Pass - TYPE_NO_NAMED_ARGS_STDARG_P as last arg to build_function_type. - (grokdeclarator, static_fn_type): Use cp_build_function_type instead - of build_function_type. - * typeck.cc (merge_types): Likewise. - (structural_comptypes): Return false for TYPE_NO_NAMED_ARGS_STDARG_P - differences. - * lambda.cc (maybe_add_lambda_conv_op): Use cp_build_function_type - instead of build_function_type. - * tree.cc (cp_build_function_type): New function. - (strip_typedefs): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to - build_function_type. - * name-lookup.cc (push_local_extern_decl_alias): Likewise. - * module.cc (trees_in::tree_node): Use cp_build_function_type instead - of build_function_type. - * pt.cc (copy_default_args_to_explicit_spec, - rebuild_function_or_method_type, build_deduction_guide): Likewise. - (alias_ctad_tweaks): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to - build_function_type. - * decl2.cc (change_return_type, cp_reconstruct_complex_type): - Likewise. - -2025-10-09 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/116477 - * semantics.cc (finish_call_expr): Move concept_check_p diagnostic - before processing_template_decl check to catch errors earlier. - -2025-10-09 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Define INCLUDE_VECTOR. - -2025-10-08 Jason Merrill <jason@redhat.com> - - * init.cc (build_new_1): Also clobber for non-placement new. - Only loop clobber in constexpr. - * expr.cc (wrap_with_if_consteval): New. - * cp-tree.h (wrap_with_if_consteval): Declare. - -2025-10-07 Jason Merrill <jason@redhat.com> - - * init.cc (build_new_1): Clobber a constant-bound array as a whole. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * module.cc (trees_out::lang_vals): Fix spelling in comment. - -2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122053 - * name-lookup.cc (pushtag): Load any imported definition of type - before calling pushdecl. - -2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> - - * name-lookup.cc (check_module_override): Remove check for - TREE_PUBLIC when checking mergeable entities. - -2025-10-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/114457 - * cp-tree.h: Implement C++26 P2795R5 - Erroneous behavior for - uninitialized reads. - (IF_STMT_VACUOUS_INIT_P): Define. - (check_goto): Change argument type from tree to tree *. - * call.cc (build_over_call): Add indeterminate attribute to - TARGET_EXPR slots for indeterminate parameters. - * constexpr.cc (cxx_eval_internal_function): Handle IFN_DEFERRED_INIT. - (cxx_eval_store_expression): Temporarily work around PR121965 bug. - * cp-gimplify.cc (genericize_if_stmt): Handle IF_STMT_VACUOUS_INIT_P. - (maybe_emit_clobber_object_begin): New function. - (cp_gimplify_expr): Call it for DECL_EXPRs and TARGET_EXPRs with - void type non-NULL TARGET_EXPR_INITIAL. - * decl.cc (struct named_label_fwd_direct_goto, - struct named_label_bck_direct_goto): New types. - (struct named_label_use_entry): Add direct_goto member. Formatting - fix. - (struct named_label_entry): Add direct_goto member. Turn bool members - into bool : 1. Add has_bad_decls bitfield. - (adjust_backward_gotos): New function. - (pop_labels): For flag_auto_var_init > AUTO_INIT_UNINITIALIZED - call adjust_backward_gotos if needed. - (poplevel_named_label_1): For decl_jump_unsafe also set - ent->has_bad_decls, and for decl_instrument_init_bypass_p decls - push them into ent->bad_decls vector too. - (duplicate_decls): Complain if indeterminate attribute on function - parameter isn't present on the first function declaration. - (decl_instrument_init_bypass_p): New function. - (build_deferred_init_call): Likewise. - (maybe_add_deferred_init_calls): Likewise. - (adjust_backward_goto): Likewise. - (check_previous_goto_1): Add direct_goto and case_label arguments. - For decl_instrument_init_bypass_p decls seen if - direct_goto || case_label move case label if needed, call - maybe_add_deferred_init_calls and adjust GOTO_EXPR operands remembered - in direct_goto. Change return type from bool to int, return 0 on - error, 1 for success with no need to adjust vacuous inits and 2 for - success with need to adjust those. - (check_previous_goto): Adjust check_previous_goto_1 call, vec_free - direct_goto vector. - (check_switch_goto): Add case_label argument, adjust - check_previous_goto_1 call. Change return type from bool to int. - (check_goto_1): Remove computed argument, add declp argument. Don't - reuse previous ent->uses if - ent->binding_level != current_binding_level. Push declp into - direct_goto vectors if needed. - (check_goto): Remove decl argument, add declp argument. Adjust - check_goto_1 calls. - (finish_case_label): Call check_switch_goto up to twice, first time - to detect errors and find out if second call will be needed, and - after c_add_case_label second time if needed. In the first case - pass NULL_TREE as new argument to it, in the second case r. - (start_preparsed_function): Don't emit CLOBBER_OBJECT_BEGIN here - for -flifetime-dse=2, instead add "clobber *this" attribute to - current_class_ptr. - * parser.cc (cp_parser_asm_label_list): Call check_goto only - after the TREE_LIST is created and pass address of its TREE_VALUE to - it instead of the label. - * semantics.cc (finish_goto_stmt): Call check_goto only after - build_stmt has been called and pass it address of its first operand - rather than destination. - * tree.cc (handle_indeterminate_attribute): New function. - (cxx_gnu_attributes): Add entry for indeterminate attribute. - -2025-10-04 Jason Merrill <jason@redhat.com> - - PR c++/122127 - PR c++/112632 - * pt.cc (convert_template_argument): Don't add redundant - IMPLICIT_CONV_EXPR. - -2025-10-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117658 - * cp-tree.h (TU_LOCAL_ENTITY_NAME): Clarify meaning. - * module.cc (depset::entity_kind): New enumerator, assert that - we have enough bits reserved. - (depset::disc_bits): Assert the discriminator has enough bits. - (depset::entity_kind_name): Add 'tu-local' case, assert we - have an entry for all relevant entry_kinds. - (name_for_tu_local_decl): New function. - (trees_out::tree_node): Use it. - (depset::hash::make_dependency): Validate EK_TU_LOCAL. - (depset::hash::add_binding_entity): Generate bindings for - internal purview functions. - (enum ct_bind_flags): New enum for TU-local decls. - (depset::hash::find_dependencies): Handle EK_TU_LOCAL entities. - (binding_cmp): Likewise. - (sort_cluster): Likewise. - (module_state::write_cluster): Likewise. - (module_state::read_cluster): Likewise. - * name-lookup.cc (append_imported_binding_slot): Propagate - internal decl list when growing binding vector. - (name_lookup::adl_namespace_fns): Diagnose if naming a TU-local - entity from a different TU. - (set_module_binding): Include any internal decls in binding. - * name-lookup.h (struct module_tree_map_traits): New type. - (struct tree_binding_vec): Add member 'internal_decls'. - (BINDING_VECTOR_INTERNAL_DECLS): New getter. - (MODULE_BINDING_INTERNAL_DECLS_P): New flag. - (set_module_binding): Add parameter. - -2025-10-03 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/122112 - * parser.cc (cp_parser_parameter_declaration_clause): Don't - enable auto_is_implicit_function_template_parm_p when entering - class scope. - -2025-10-01 Iain Sandoe <iain@sandoe.co.uk> - - * constexpr.cc (cxx_eval_constant_expression): Use revised - interfaces to determine if contracts are ignored and, if not, - whether they are evaluated. - * contracts.h (contract_ignored_p, contract_evaluated_p): New. - -2025-10-01 Jan Hubicka <hubicka@ucw.cz> - - * Make-lang.in: Add c++_FDAS - (create_fdas_for_cc1plus): Be sure that build fails if create_gcov fails. - -2025-09-27 Jason Merrill <jason@redhat.com> - - PR c++/112632 - * pt.cc (convert_template_argument): Also force IMPLICIT_CONV_EXPR - if the argument is value-dependent. - -2025-09-27 Jason Merrill <jason@redhat.com> - - PR c++/122048 - * pt.cc (tsubst_expr): Don't use a lambda current_class_ptr. - -2025-09-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122015 - PR c++/122019 - * module.cc (trees_in::install_entity): Remove incorrect - assertion. - -2025-09-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122019 - * module.cc (trees_in::install_entity): Don't be affected by - global language linkage state. - (trees_in::is_matching_decl): Check mismatching language linkage - for variables too. - (module_may_redeclare): Report the correct module name for - partitions and implementation units. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * class.cc (resolve_address_of_overloaded_function): Updated to use - dijoint_versions_decls instead of common_function_version hook. - * decl.cc (decls_match): Refacture to use disjoint_version_decls and - to pass through conflicting_version argument. - (maybe_version_functions): Updated to use - disjoint_version_decls instead of common_function_version hook. - (duplicate_decls): Add logic to handle conflicting unmergable decls - and improve diagnostics for conflicting versions. - * decl2.cc (check_classfn): Updated to use - disjoint_version_decls instead of common_function_version hook. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * cxx-pretty-print.h (pp_cxx_function_target_version): New macro. - (pp_cxx_function_target_clones): Ditto. - (pp_cxx_maybe_whitespace): Ditto. - * error.cc (dump_function_decl): Add printing of target_clone and - target_version in decl diagnostics. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - PR target/118313 - * call.cc (add_candidates): Change to not resolve non-default versions - in target_version semantics. - * class.cc (resolve_address_of_overloaded_function): Ditto. - * cp-gimplify.cc (cp_genericize_r): Change logic to not apply for - target_version semantics. - * decl.cc (maybe_mark_function_versioned): Remove static. - * cp-tree.h (maybe_mark_function_versioned): New function. - * decl2.cc (cplus_decl_attributes ): Change to mark and therefore - mangle all target_version decls in target_version semantics. - * typeck.cc (cp_build_function_call_vec): Add error for calling - unresolvable non-default node in target_version semantics. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * decl.cc (maybe_mark_function_versioned): Change to insert function version - and therefore record assembler name. - -2025-09-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122015 - * cp-tree.h (make_auto_pack): Declare. - * lambda.cc (lambda_capture_field_type): Use make_auto_pack to - ensure TYPE_CANONICAL is set correctly. - * pt.cc (make_auto_pack): New function. - -2025-09-20 Patrick Palka <ppalka@redhat.com> - - PR c++/121981 - * pt.cc (any_template_parm_r) <case TEMPLATE_TYPE_PARM>: - Don't walk TREE_TYPE. - -2025-09-20 Eczbek <eczbek.void@gmail.com> - - PR c++/119048 - * lambda.cc (compare_lambda_sig): Only skip first parameter for - object members. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * constexpr.cc (cxx_eval_component_reference): Clarify diagnostic. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * init.cc (build_new_1): Clobber classes. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * constexpr.cc (get_or_insert_ctor_field): -2 means don't insert. - (cxx_eval_component_reference): Handle finding void_node. - (cxx_eval_store_expression): Don't represent initial clobber - unless we need to activate a union member. - (cxx_eval_statement_list): Don't ask for a void prvalue. - (cxx_eval_loop_expr): The expr is discarded-value. - (cxx_eval_constant_expression): A loose clobber is non-constant. - Handle getting void_node instead of a real result. - (potential_constant_expression_1): A local temp is - potentially-constant. - * init.cc (build_new_1): Don't clobber empty types or - in a template. - (build_vec_init): Fix clobber handling. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * init.cc (build_new_1): Append alloc_node to checking COND_EXPR. - -2025-09-17 David Malcolm <dmalcolm@redhat.com> - - PR c++/121966 - * call.cc (print_z_candidate): Consolidate instances of - auto_diagnostic_nesting_level into one, above the "inherited here" - message so that any such message is nested within the note, - and any messages emitted due to the switch on rejection_reason are - similarly nested within the note. - -2025-09-17 David Malcolm <dmalcolm@redhat.com> - - PR c++/121966 - * call.cc (print_z_candidates): Copy the filtering logic on viable - candidates from the printing loop to the counting loop, so that - num_candidates matches the number of iterations of the latter - loop. - -2025-09-15 Matthias Kretz <m.kretz@gsi.de> - - * mangle.cc (write_real_cst): Replace 8 spaces with Tab. - -2025-09-12 Patrick Palka <ppalka@redhat.com> - - PR c++/121795 - * pt.cc (unify) <case PACK_INDEX_TYPE>: New non-deduced context - case. - -2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121893 - * name-lookup.cc (name_lookup::adl_namespace_fns): Unwrap the - STAT_HACK also when on_inst_path. - -2025-09-11 H.J. Lu <hjl.tools@gmail.com> - - PR c++/121889 - * decl2.cc (cplus_decl_attributes): Don't upgrade TLS model if - TLS model isn't set yet. - -2025-09-10 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121859 - * constraint.cc (maybe_diagnose_standard_trait): Check if expr - is non-null. - -2025-09-10 Jakub Jelinek <jakub@redhat.com> - - * mangle.cc (write_real_cst): Mangle Intel/Motorola extended - 80-bit formats using 20 hex digits instead of 24 or 32. - -2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/99682 - PR c++/121808 - * module.cc (class module_state): Add comment to 'parent'. - (module_state::check_not_purview): Rename to... - (module_state::check_circular_import): ...this. Only handle - interface dependencies, adjust diagnostic message. - (module_state::read_imports): Use new function. Pass location - of import as from_loc instead of the module location. - (module_state::do_import): Set module_p when importing the - primary interface for the current module. - (import_module): Split out check for imports in own unit. - Remove incorrect assertion. - (preprocess_module): Don't overwrite module-decl location with - later import. - -2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (this_module): New function. - (import_entity_module): Use it. - (trees_out::decl_node): Likewise. - (get_module): Likewise. - (module_state::check_not_purview): Likewise. - (module_state::read_imports): Likewise. - (module_state::read_using_directives): Likewise. - (module_state::read_initial): Likewise. - (get_import_bitmap): Likewise. - (module_may_redeclare): Likewise. - (direct_import): Likewise. - (declare_module): Likewise. - (name_pending_imports): Likewise. - (preprocess_module): Likewise. - (finish_module_processing): Likewise. - (late_finish_module): Likewise. - -2025-09-09 Patrick Palka <ppalka@redhat.com> - - PR c++/121779 - * tree.cc (build_min_non_dep_op_overload): Handle comparison - operator expressions rewritten from a <=> that returns a - non-class type. - -2025-09-09 Matthias Kretz <m.kretz@gsi.de> - - PR c++/121801 - * mangle.cc (write_real_cst): Handle 16-bit real and assert - that reals have 16 bits or a multiple of 32 bits. - -2025-09-07 H.J. Lu <hjl.tools@gmail.com> - - PR c++/107393 - * decl.cc (grokvardecl): Set a tentative TLS model which will be - updated by cplus_decl_attributes later. - * decl2.cc (cplus_decl_attributes): Update TLS model with the - default TLS access model if the default TLS access model is - stronger. - * pt.cc (tsubst_decl): Set TLS model only after processing a - variable. - -2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121702 - * module.cc (enum module_state_counts): New counter. - (depset::hash::add_namespace_entities): Seed using-directive - targets for later streaming. - (module_state::write_namespaces): Don't handle using-directives - here. - (module_state::read_namespaces): Likewise. - (module_state::write_using_directives): New function. - (module_state::read_using_directives): New function. - (module_state::write_counts): Log using-directives. - (module_state::read_counts): Likewise. - (module_state::write_begin): Stream using-directives. - (module_state::read_language): Read using-directives if - directly importing. - (module_state::direct_import): Update current TU import list - before calling read_language. - * name-lookup.cc (add_using_namespace): Fix lookup of previous - using-directives. - * parser.cc (cp_parser_import_declaration): Don't set - MK_EXPORTING when performing import_module. - -2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121705 - PR c++/117658 - * module.cc (depset::hash::make_dependency): Make bindings for - GM functions. - (depset::hash::add_binding_entity): Adjust comment. - (depset::hash::add_deduction_guides): Add log. - * ptree.cc (cxx_print_xnode): Handle friend functions where - TI_TEMPLATE is an OVERLOAD or IDENTIFIER. - -2025-09-05 Jakub Jelinek <jakub@redhat.com> - - * constexpr.cc (cxx_eval_cxa_builtin_fn): Add missing word separating - space into invalid_nargs diagnostics. - -2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117658 - * cp-tree.h (get_originating_module): Adjust parameter names. - * module.cc (path_of_instantiation): Handle C++26 expansion - statements. - * name-lookup.cc (name_lookup::adl_namespace_fns): Handle - exported declarations attached to the same module of an - associated entity with the same innermost non-inline namespace, - and non-exported functions on the instantiation path. - (name_lookup::search_adl): Build mapping of namespace to modules - that associated entities are attached to; remove now-unneeded - instantiation path handling. - -2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121724 - * name-lookup.cc (push_namespace): Mark inline namespace - contexts as purview if needed. - -2025-09-03 Patrick Palka <ppalka@redhat.com> - - PR c++/97740 - * pt.cc (tsubst_expr) <case COMPONENT_REF>: Don't check access - when the given member is already a FIELD_DECL. - -2025-09-02 Iain Sandoe <iain@sandoe.co.uk> - - * constexpr.cc: Include contracts.h - * coroutines.cc: Likewise. - * cp-gimplify.cc: Likewise. - * decl.cc: Likewise. - * decl2.cc: Likewise. - * mangle.cc: Likewise. - * module.cc: Likewise. - * pt.cc: Likewise. - * search.cc: Likewise. - * semantics.cc: Likewise. - * contracts.cc (validate_contract_role, setup_default_contract_role, - add_contract_role, get_concrete_axiom_semantic, - get_default_contract_role): Make static. - * cp-tree.h (make_postcondition_variable, grok_contract, - finish_contract_condition, find_contract, set_decl_contracts, - get_contract_semantic, set_contract_semantic): Move to contracts.h. - * contracts.h (get_contract_role, add_contract_role, - validate_contract_role, setup_default_contract_role, - lookup_concrete_semantic, get_default_contract_role): Remove. - -2025-08-29 Sirui Mu <msrlancern@gmail.com> - - * typeck.cc (cp_build_array_ref): Handle 0[arr] earlier. - -2025-08-28 Jason Merrill <jason@redhat.com> - - PR c++/107953 - * parser.cc (cp_parser_lambda_expression): Set - greater_than_is_operator_p. - -2025-08-28 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119844 - * typeck2.cc (cxx_incomplete_type_inform): Add explanation when - a similar type is complete but attached to a different module. - Also fix handling of partial specs and templates. - -2025-08-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/121583 - * semantics.cc (apply_deduced_return_type): Adjust - fun->returns*_struct when !uses_template_parms (fco) instead of - when !processing_template_decl. - -2025-08-28 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c++/121575 - * pt.cc (tsubst_expr) <case PARM_DECL>: If DECL_CONTEXT (t) isn't a - template return t for PARM_DECLs without local specialization. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118839 - * decl.cc (omp_declare_variant_finalize_one): Error if variant - is the same as base. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_finish_omp_declare_variant): Structure diagnostic - code similarly to C front end. Make check for a missing "match" - clause unconditional. - -2025-08-25 Jakub Jelinek <jakub@redhat.com> - - * pt.cc (finish_expansion_stmt): Implement C++ CWG3048 - - Empty destructuring expansion statements. Don't error for - destructuring expansion stmts if sz is 0, don't call - fit_decomposition_lang_decl if n is 0 and pass NULL rather than - this_decomp to cp_finish_decl. - -2025-08-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/121601 - * constexpr.cc (cxx_bind_parameters_in_call): Move break - if *jump_target before the check for null this object pointer. - -2025-08-23 Eczbek <eczbek.void@gmail.com> - - PR c++/116928 - * parser.cc (cp_parser_braced_list): Set greater_than_is_operator_p. - -2025-08-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120499 - * method.cc (synthesize_method): Set the instantiating module. - -2025-08-21 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * constexpr.cc (cxx_eval_store_expression): Allow clobber of a const - object. - -2025-08-21 Jason Merrill <jason@redhat.com> - - PR c++/120757 - * pt.cc (tsubst_expr) [OFFSET_REF]: Don't tsubst the type. - -2025-08-20 Marek Polacek <polacek@redhat.com> - - PR c++/121553 - * name-lookup.cc (check_local_shadow): Check !is_normal_capture_proxy. - -2025-08-19 Ben Wu <soggysocks206@gmail.com> - - PR c++/120618 - * parser.cc (cp_parser_compound_requirement): Set type to - NULL_TREE for invalid type-constraint. - -2025-08-19 Patrick Palka <ppalka@redhat.com> - - PR c++/121351 - * class.cc (add_method): Use outer_template_args when - substituting outer template arguments into constraints. - -2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120195 - * name-lookup.cc (do_nonmember_using_decl): Also handle change - in exportedness of a function. - -2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> - - * typeck.cc (get_member_function_from_ptrfunc): Use - 'sanitize_code_type' instead of 'unsigned int'. - -2025-08-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120503 - PR c++/120824 - * cp-tree.h (TYPE_UNNAMED_P): Adjust for enums with enumerators - for linkage purposes. - (enum_with_enumerator_for_linkage_p): Declare. - * decl.cc (name_unnamed_type): Adjust assertions to handle enums - with enumerators for linkage purposes. - (grokdeclarator): Use a typedef name for enums with enumerators - for linkage purposes. - (enum_with_enumerator_for_linkage_p): New function. - (finish_enum_value_list): Reset type linkage for enums with - enumerators for linkage purposes. - * mangle.cc (write_unnamed_enum_name): New function. - (write_unqualified_name): Handle enums with enumerators for - linkage purposes. - * tree.cc (decl_linkage): Fixup unnamed enums. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - * cp-trait.def (STRUCTURED_BINDING_SIZE): New unary trait. - * cp-tree.h (finish_structured_binding_size): Declare. - * semantics.cc (trait_expr_value): Handle - CPTK_STRUCTURED_BINDING_SIZE. - (finish_structured_binding_size): New function. - (finish_trait_expr): Handle CPTK_RANK and CPTK_TYPE_ORDER - in the switch instead of just doing break; for those and - ifs at the end to handle them. Handle CPTK_STRUCTURED_BINDING_SIZE. - * pt.cc (tsubst_expr): Likewise. - * constraint.cc (diagnose_trait_expr): Likewise. - * decl.cc (get_tuple_size): Use mce_true for maybe_const_value. - (cp_decomp_size): Diagnose incomplete types not just if - processing_template_decl, and use error_at instead of pedwarn. - If btype is NULL, just return 0 instead of diagnosing an error. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/121552 - * decl.cc: Implement C++20 P1766R1 - Mitigating minor modules maladies. - (diagnose_non_c_class_typedef_for_linkage, - maybe_diagnose_non_c_class_typedef_for_linkage): New functions. - (name_unnamed_type): Call - maybe_diagnose_non_c_class_typedef_for_linkage. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/121539 - * parser.cc (cp_parser_cache_defarg): Set done to true for - CPP_ELLIPSIS followed by CPP_CLOSE_PAREN in !nsdmi at depth 0. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - PR target/121520 - * lex.cc (cxx_init): Remove warn_on lambda. Use cpp_warn instead of - cpp_lookup and NODE_WARN bit setting or warn_on. - -2025-08-14 Jakub Jelinek <jakub@redhat.com> - - PR c++/121524 - * tree.cc (build_cplus_array_type): Don't reuse variant type - if it has TREE_DEPRECATED or TREE_UNAVAILABLE flags set or, - unless elt_type has TYPE_USER_ALIGN set and TYPE_ALIGN is - TYPE_ALIGN of elt_type, TYPE_USER_ALIGN is not set. - -2025-08-13 Marek Polacek <polacek@redhat.com> - - PR c++/102610 - * cp-tree.h (LAMBDA_EXPR_CONST_QUAL_P): Define. - (maybe_add_dummy_lambda_op): Declare. - (remove_dummy_lambda_op): Declare. - (push_capture_proxies): Adjust. - * lambda.cc (build_capture_proxy): No longer static. New early_p - parameter. Use it. - (add_capture): Adjust the call to build_capture_proxy. - (resolvable_dummy_lambda): Check DECL_LAMBDA_FUNCTION_P. - (push_capture_proxies): New. - (start_lambda_function): Use it. - * name-lookup.cc (check_local_shadow): Give an error for - is_capture_proxy. - (cp_binding_level_descriptor): Add lambda-scope. - (begin_scope) <case sk_lambda>: New case. - * name-lookup.h (enum scope_kind): Add sk_lambda. - (struct cp_binding_level): Widen kind. - * parser.cc (cp_parser_lambda_expression): Create a new (lambda) scope - after the lambda-introducer. - (cp_parser_lambda_declarator_opt): Set LAMBDA_EXPR_CONST_QUAL_P. - Create a dummy operator() if needed. Inject the captures into the - lambda scope. Remove the dummy operator(). - (make_dummy_lambda_op): New. - (maybe_add_dummy_lambda_op): New. - (remove_dummy_lambda_op): New. - * pt.cc (tsubst_lambda_expr): Begin/end a lambda scope. Push the - capture proxies. Build/remove a dummy operator() if needed. Set - LAMBDA_EXPR_CONST_QUAL_P. - * semantics.cc (parsing_lambda_declarator): New. - (outer_var_p): Also consider captures as outer variables if in a lambda - declarator. - (process_outer_var_ref): Reset containing_function when - parsing_lambda_declarator. - (finish_decltype_type): Process decls in the lambda-declarator as well. - Look at LAMBDA_EXPR_CONST_QUAL_P unless we have an xobj function. - -2025-08-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/120776 - * cp-tree.def: Implement C++26 P1306R5 - Expansion statements. - (TEMPLATE_FOR_STMT): New tree code. - * cp-tree.h (struct saved_scope): Add expansion_stmt. - (in_expansion_stmt): Define. - (TEMPLATE_FOR_DECL, TEMPLATE_FOR_EXPR, TEMPLATE_FOR_BODY, - TEMPLATE_FOR_SCOPE, TEMPLATE_FOR_INIT_STMT): Define. - (struct tinst_level): Adjust comment. - (cp_decomp_size, finish_expansion_stmt, do_pushlevel, - cp_build_range_for_decls, build_range_temp, - cp_perform_range_for_lookup, begin_template_for_scope): Declare. - (finish_range_for_stmt): Remove declaration. - * cp-objcp-common.cc (cp_common_init_ts): Handle TEMPLATE_FOR_STMT. - * name-lookup.h (enum scope_kind): Add sk_template_for enumerator. - (struct cp_binding_level): Enlarge kind bitfield from 4 to 5 bits. - Adjust comment with remaining space bits. - * name-lookup.cc (check_local_shadow): Handle sk_template_for like - sk_for. - (cp_binding_level_descriptor): Add entry for sk_template_for. - (begin_scope): Handle sk_template_for. - * parser.h (IN_EXPANSION_STMT): Define. - * parser.cc (cp_debug_parser): Print IN_EXPANSION_STMT bit. - (cp_parser_lambda_expression): Temporarily clear in_expansion_stmt. - (cp_parser_statement): Handle RID_TEMPLATE followed by RID_FOR for - C++11. - (cp_parser_label_for_labeled_statement): Complain about named labels - inside of expansion stmt body. - (cp_hide_range_decl): New function. - (cp_parser_range_for): Use it. Adjust do_range_for_auto_deduction - caller. Remove second template argument from auto_vecs bindings and - names. - (build_range_temp): No longer static. - (do_range_for_auto_deduction): Add expansion_stmt argument. - (cp_build_range_for_decls): New function. - (cp_convert_range_for): Use it. Call cp_perform_range_for_lookup - rather than cp_parser_perform_range_for_lookup. - (cp_parser_perform_range_for_lookup): Rename to ... - (cp_perform_range_for_lookup): ... this. No longer static. Add - complain argument and handle it. - (cp_parser_range_for_member_function): Rename to ... - (cp_range_for_member_function): ... this. - (cp_parser_expansion_statement): New function. - (cp_parser_jump_statement): Handle IN_EXPANSION_STMT. - (cp_convert_omp_range_for): Adjust do_range_for_auto_deduction caller. - Call cp_perform_range_for_lookup rather than - cp_parser_perform_range_for_lookup. - * error.cc (print_instantiation_full_context): Handle tldcl being - TEMPLATE_FOR_STMT. - (print_instantiation_partial_context_line): Likewise. - * constexpr.cc (potential_constant_expression_1): Handle - TEMPLATE_FOR_STMT. - * decl.cc (poplevel_named_label_1): Use obl instead of bl->level_chain. - (finish_case_label): Diagnose case labels inside of template for. - (find_decomp_class_base): Add complain argument, don't diagnose - anything and just return error_mark_node if tf_none, adjust recursive - call. - (cp_decomp_size): New function. - (cp_finish_decomp): Adjust find_decomp_class_base caller. - * semantics.cc (do_pushlevel): No longer static. - (begin_template_for_scope): New function. - * pt.cc (push_tinst_level_loc): Handle TEMPLATE_FOR_STMT. - (reopen_tinst_level): Likewise. - (tsubst_stmt): Handle TEMPLATE_FOR_STMT. - (struct expansion_stmt_bc): New type. - (expansion_stmt_find_bc_r, finish_expansion_stmt): New functions. - * decl2.cc (decl_dependent_p): Return true for current function's decl - if in_expansion_stmt. - * call.cc (extend_ref_init_temps): Don't extend_all_temps if - TREE_STATIC (decl). - * cxx-pretty-print.cc (cxx_pretty_printer::statement): Handle - TEMPLATE_FOR_STMT. - -2025-08-13 Benjamin Wu <bwu25@cs.washington.edu> - - * lex.cc (init_operators): Fix typo. - -2025-08-11 Nicolas Werner <nicolas.werner@hotmail.de> - - * mapper-client.cc (spawn_mapper_program): change argv parsing - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * decl.cc (set_sb_pack_name): For name independent decls - just clear DECL_NAME instead of appending #i to it. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * decl.cc (cp_finish_decomp): Don't sorry on tuple static - structured bindings with a pack, instead temporarily reset - DECL_NAME of the individual vars in the pack to the name - of the pack for cp_finish_decl time and force mangling. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/121442 - * parser.cc (cp_parser_decomposition_declaration): Don't copy - DECL_DECLARED_CONST{EXPR,INIT}_P bits from decl to decl2 if - decl is error_mark_node. - -2025-08-08 David Malcolm <dmalcolm@redhat.com> - - * error.cc (cp_adjust_diagnostic_info): Convert "context" arg from - ptr to const &. - -2025-08-07 Patrick Palka <ppalka@redhat.com> - - * call.cc (extract_call_expr): Remove handling of C++20 - rewritten comparison operators. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * parser.cc: Implement C++26 P1061R10 - Structured Bindings can - introduce a Pack. - (cp_parser_range_for): Also handle TREE_VEC as DECL_VALUE_EXPR - instead of ARRAY_REF. - (cp_parser_decomposition_declaration): Use sb-identifier-list instead - of identifier-list in comments. Parse structured bindings with - structured binding pack. Don't emit pedwarn about structured - binding attributes in structured bindings inside of a condition. - (cp_convert_omp_range_for): Also handle TREE_VEC as DECL_VALUE_EXPR - instead of ARRAY_REF. - * decl.cc (get_tuple_element_type): Change i argument type from - unsigned to unsigned HOST_WIDE_INT. - (get_tuple_decomp_init): Likewise. - (set_sb_pack_name): New function. - (cp_finish_decomp): Handle structured binding packs. - * pt.cc (tsubst_pack_expansion): Handle structured binding packs - and capture proxies for them. Formatting fixes. - (tsubst_decl): For structured binding packs don't tsubst TREE_TYPE - first, instead recreate the type after r is created. - (tsubst_omp_for_iterator): Also handle TREE_VEC as DECL_VALUE_EXPR - instead of ARRAY_REF. - (tsubst_expr): Handle sizeof... on non-dependent structure binding - packs. - (value_dependent_expression_p): Return false for sizeof... on - non-dependent structure binding packs. - (instantiation_dependent_r): Don't recurse on sizeof... on - non-dependent structure binding packs. - * constexpr.cc (potential_constant_expression_1): Also handle - TREE_VEC on DECL_VALUE_EXPR of structure binding packs. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * lex.cc (cxx_init): Mark cpp nodes corresponding - to keywords, identifiers with special meaning and standard - attribute identifiers as NODE_WARN if warn_keyword_macro. - -2025-08-06 Patrick Palka <ppalka@redhat.com> - - PR c++/121231 - PR c++/119688 - PR c++/94511 - * mangle.cc (write_expression): Write out implicit non-trailing - zeroes of a CONSTRUCTOR when the ABI version is at least 21. - -2025-08-06 Jason Merrill <jason@redhat.com> - - * constexpr.cc (cxx_eval_indirect_ref): Improve diagnostic. - -2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> - - * parser.cc (cp_parser_omp_clause_from_to): Parse 'iterator' modifier. - * semantics.cc (finish_omp_clauses): Finish iterators for to/from - clauses. - -2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> - Andrew Stubbs <ams@baylibre.com> - - * parser.cc (cp_parser_omp_clause_map): Parse 'iterator' modifier. - * semantics.cc (finish_omp_clauses): Finish iterators. Apply - iterators to generated clauses. - -2025-08-05 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * constexpr.cc (cxx_eval_store_expression): Handle clobbers. - (potential_constant_expression_1): Handle clobbers more. - * decl.cc (build_clobber_this): Use INIT_EXPR for initial clobber. - * init.cc (build_new_1): Clobber on placement new. - (build_vec_init): Don't clean up after clobber. - -2025-08-04 Patrick Palka <ppalka@redhat.com> - - PR c++/121351 - PR c++/119859 - * class.cc (add_method): Substitute outer template arguments - into constraints before comparing them if the declarations are - from different classes. - -2025-08-04 Patrick Palka <ppalka@redhat.com> - - PR c++/120620 - * constexpr.cc (cxx_dynamic_cast_fn_p): Return true only - for synthesized __dynamic_cast. - -2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/108080 - * module.cc (trees_out::core_vals): Warn when streaming - target/optimize node; adjust comments. - (trees_in::core_vals): Don't stream a target/optimize node. - -2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121238 - * module.cc (trees_in::fn_parms_fini): Merge properties for - definitions. - -2025-07-31 Jason Merrill <jason@redhat.com> - - PR c++/120800 - * constexpr.cc (cxx_eval_vec_init_1): Suppress access control. - -2025-07-31 Marek Polacek <polacek@redhat.com> - - PR c++/120775 - * constexpr.cc (cxx_eval_outermost_constant_expr): Use - extract_call_expr. - * cp-tree.h (CONSTEVAL_BLOCK_P, LAMBDA_EXPR_CONSTEVAL_BLOCK_P): Define. - (finish_static_assert): Adjust declaration. - (current_nonlambda_function): Likewise. - * lambda.cc (current_nonlambda_function): New parameter. Only keep - iterating if the function represents a consteval block. - * parser.cc (cp_parser_lambda_expression): New parameter for - consteval blocks. Use it. Set LAMBDA_EXPR_CONSTEVAL_BLOCK_P. - (cp_parser_lambda_declarator_opt): Likewise. - (build_empty_string): New. - (cp_parser_next_tokens_are_consteval_block_p): New. - (cp_parser_consteval_block): New. - (cp_parser_block_declaration): Handle consteval blocks. - (cp_parser_static_assert): Use build_empty_string. - (cp_parser_member_declaration): Handle consteval blocks. - * pt.cc (tsubst_stmt): Adjust a call to finish_static_assert. - * semantics.cc (finish_fname): Warn for consteval blocks. - (finish_static_assert): New parameter for consteval blocks. Set - CONSTEVAL_BLOCK_P. Evaluate consteval blocks specially. - -2025-07-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121291 - * constraint.cc (diagnose_trait_expr): Remove assumption about - failures returning error_mark_node. - * except.cc (explain_not_noexcept): Allow expr not being - noexcept. - * method.cc (build_invoke): Adjust comment. - (is_trivially_xible): Always note non-trivial components if expr - is not null or error_mark_node. - (is_nothrow_xible): Likewise for non-noexcept components. - (is_nothrow_convertible): Likewise. - -2025-07-30 Jason Merrill <jason@redhat.com> - - * pt.cc (convert_nontype_argument_function): Check - cxx_constant_value on failure. - (invalid_tparm_referent_p): Likewise. - -2025-07-30 Jakub Jelinek <jakub@redhat.com> - - PR c++/121133 - * parser.cc (cp_parser_unary_expression): Adjust - cp_parser_extension_opt caller and restore warn_long_long. - (cp_parser_declaration): Likewise. - (cp_parser_block_declaration): Likewise. - (cp_parser_member_declaration): Likewise. - (cp_parser_extension_opt): Add SAVED_LONG_LONG argument, - save previous warn_long_long state into it and clear it - for __extension__. - -2025-07-27 Nathaniel Shead <nathanieloshead@gmail.com> - - * cp-tree.h (struct lang_type): Add comment mentioning modules. - * module.cc (trees_out::lang_type_bools): Stream new flags, use - gcc_checking_assert. - (trees_in::lang_type_bools): Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * constexpr.cc: Update usage of "diagnostic_info" to explicitly - refer to "diagnostics::diagnostic_info". - * cp-tree.h: Likewise. - * error.cc: Likewise. - * module.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * call.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - * constexpr.cc: Likewise. - * cp-tree.h: Likewise. - * decl.cc: Likewise. - * error.cc: Likewise. - * init.cc: Likewise. - * method.cc: Likewise. - * module.cc: Likewise. - * parser.cc: Likewise. - * pt.cc: Likewise. - * semantics.cc: Likewise. - * typeck.cc: Likewise. - * typeck2.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cp-tree.h: Update for renaming of diagnostic_option_id to - diagnostics::option_id. - * decl.cc: Likewise. - * error.cc: Likewise. - * name-lookup.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Update for move of diagnostic-color.h to - diagnostics/color.h. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cp-tree.h: Update for diagnostic_context becoming - diagnostics::context. - * error.cc: Likewise. - * module.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * constexpr.cc: Update to add "m_" prefix to fields of - diagnostic_info throughout. - * error.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cp-tree.h: Update for move of diagnostics output formats into - namespace "diagnostics" as "sinks". - * error.cc: Likewise. - -2025-07-25 Patrick Palka <ppalka@redhat.com> - - * call.cc (build_new_op): If the selected candidate is - rewritten, communicate the LOOKUP_REWRITTEN/REVERSED flags to - the caller via the 'overload' out-parameter, and stop clearing - '*overload' in that case. - * tree.cc (build_min_non_dep_op_overload): Handle rebuilding all - C++20 rewritten comparison operator expressions. - -2025-07-25 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/121219 - * coroutines.cc - (cp_coroutine_transform::build_ramp_function): Reorder the return - expressions for the 'normal' and 'allocation failed' cases so that - NRV constraints are met. - -2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117294 - PR c++/113854 - * call.cc (implicit_conversion_error): Hide label when printing - a stub object. - (convert_like_internal): Likewise, and nest candidate - diagnostics. - * constexpr.cc (diagnose_failing_condition): Nest diagnostics, - attempt to provide more helpful diagnostics for traits. - * constraint.cc (satisfy_atom): Pass result before constant - evaluation to diagnose_atomic_constraint. - (diagnose_trait_expr): Adjust diagnostics for clarity and - detail. - (maybe_diagnose_standard_trait): New function. - (diagnose_atomic_constraint): Attempt to provide more helpful - diagnostics for more traits. - * cp-tree.h (explain_not_noexcept): Declare new function. - (is_trivially_xible): Add parameter. - (is_nothrow_xible): Likewise. - (is_xible): Likewise. - (is_convertible): Likewise. - (is_nothrow_convertible): Likewise. - (diagnose_trait_expr): Declare new function. - (maybe_diagnose_standard_trait): Declare new function. - * error.cc (dump_type) <case TREE_VEC>: Handle trait types. - * except.cc (explain_not_noexcept): New function. - * method.cc (build_trait_object): Add complain parameter. - (build_invoke): Propagate complain parameter. - (assignable_expr): Add explain parameter to show diagnostics. - (constructible_expr): Likewise. - (destructible_expr): Likewise. - (is_xible_helper): Replace trivial flag with explain flag, - add diagnostics. - (is_trivially_xible): New explain flag. - (is_nothrow_xible): Likewise. - (is_xible): Likewise. - (is_convertible_helper): Add complain flag. - (is_convertible): New explain flag. - (is_nothrow_convertible): Likewise. - * typeck.cc (cp_build_function_call_vec): Add handling for stub - objects. - (convert_arguments): Always return -1 on error. - * typeck2.cc (cxx_readonly_error): Add handling for stub - objects. - -2025-07-24 Jason Merrill <jason@redhat.com> - - * pt.cc (tsubst_lambda_expr): Revert r9-5971 change. - -2025-07-24 Jason Merrill <jason@redhat.com> - - PR c++/114632 - PR c++/101233 - * lambda.cc (maybe_add_lambda_conv_op): Not for xobj lambda. - * pt.cc (tsubst_function_decl): Add cp_evaluated. - (alias_ctad_tweaks): Revert PR101233 fix. - -2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120412 - * module.cc (trees_out::core_vals): Write TU_LOCAL_ENTITY bits. - (trees_in::core_vals): Read it. - (trees_in::tree_node): Handle TU_LOCAL_ENTITY typedefs. - -2025-07-23 Patrick Palka <ppalka@redhat.com> - - PR c++/121179 - * call.cc (build_new_op): Don't clear *overload for a simple - != to == rewrite. - * tree.cc (build_min_non_dep_op_overload): Handle TRUTH_NOT_EXPR - appearing in a rewritten operator expression. - -2025-07-23 Patrick Palka <ppalka@redhat.com> - - PR c++/121055 - * method.cc (build_invoke): Correct reference_wrapper handling. - -2025-07-22 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * constexpr.cc (cxx_eval_store_expression): Allow ARRAY_REFs - when activating an array member of a union. - -2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * semantics.cc (finish_asm_stmt): Pass null pointer to - parse_{input,output}_constraint(). - -2025-07-16 Kwok Cheung Yeung <kcyeung@baylibre.com> - - * pt.cc (tsubst_omp_clause_decl): Use OMP_ITERATOR_DECL_P. - * semantics.cc (handle_omp_array_sections): Likewise. - (finish_omp_clauses): Likewise. - -2025-07-16 Alfie Richards <alfie.richards@arm.com> - - * class.cc (add_method): Remove argument. - * cp-tree.h (maybe_version_functions): Ditto. - * decl.cc (decls_match): Ditto. - (maybe_version_functions): Ditto. - -2025-07-16 Jeremy Rifkin <jeremy@rifkin.dev> - - PR c/82134 - * call.cc (build_call_a): Add suppress_warning - * cp-gimplify.cc (cp_gimplify_expr): Add suppress_warning - -2025-07-15 Jason Merrill <jason@redhat.com> - - PR c++/44677 - * cp-gimplify.cc (cp_fold) [CLEANUP_POINT_EXPR]: Don't force rvalue. - [COMPOUND_EXPR]: Likewise. - * cvt.cc (convert_to_void): Call mark_exp_read later. - * expr.cc (mark_use): Turn off read_p for any void argument. - (mark_exp_read): Return early for void argument. - -2025-07-15 Jason Merrill <jason@redhat.com> - - PR c++/120577 - * constexpr.cc (cxx_eval_call_expression): Set - CONSTRUCTOR_NO_CLEARING on initial value for ctor. - (cxx_eval_component_reference): Make value-initialization - of an aggregate member explicit. - -2025-07-15 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c/44677 - * cp-gimplify.cc (cp_fold): Clear DECL_READ_P on lhs of MODIFY_EXPR - after cp_fold_rvalue if it wasn't set before. - * decl.cc (poplevel): Use OPT_Wunused_but_set_variable_ - instead of OPT_Wunused_but_set_variable. - (finish_function): Use OPT_Wunused_but_set_parameter_ - instead of OPT_Wunused_but_set_parameter. - * expr.cc (mark_use): Clear read_p for {PRE,POST}{IN,DE}CREMENT_EXPR - cast to void on {VAR,PARM}_DECL for - -Wunused-but-set-{parameter,variable}={2,3}. - (mark_exp_read): Handle {PRE,POST}{IN,DE}CREMENT_EXPR and don't handle - it when cast to void. - * module.cc (trees_in::fn_parms_fini): Remove unused but set variable - ix. - * semantics.cc (finish_unary_op_expr): Return early for - PRE{IN,DE}CREMENT_EXPR. - * typeck.cc (cp_build_unary_op): Clear DECL_READ_P - after mark_lvalue_use for -Wunused-but-set-{parameter,variable}={2,3} - on PRE{IN,DE}CREMENT_EXPR argument. - (cp_build_modify_expr): Clear DECL_READ_P after cp_build_binary_op - for -Wunused-but-set-{parameter,variable}=3. - -2025-07-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/119064 - * cp-tree.h: Implement C++26 P2786R13 - Trivial Relocatability. - (struct lang_type): Add trivially_relocatable, - trivially_relocatable_computed, replaceable and replaceable_computed - bitfields. Change width of dummy from 2 to 30. - (CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT, - CLASSTYPE_TRIVIALLY_RELOCATABLE_COMPUTED, CLASSTYPE_REPLACEABLE_BIT, - CLASSTYPE_REPLACEABLE_COMPUTED): Define. - (enum virt_specifier): Add VIRT_SPEC_TRIVIALLY_RELOCATABLE_IF_ELIGIBLE - and VIRT_SPEC_REPLACEABLE_IF_ELIGIBLE enumerators. - (trivially_relocatable_type_p, replaceable_type_p): Declare. - * cp-trait.def (IS_NOTHROW_RELOCATABLE, IS_REPLACEABLE, - IS_TRIVIALLY_RELOCATABLE): New traits. - * parser.cc (cp_parser_class_property_specifier_seq_opt): Handle - trivially_relocatable_if_eligible, - __trivially_relocatable_if_eligible, replaceable_if_eligible and - __replaceable_if_eligible. - (cp_parser_class_head): Set CLASSTYPE_REPLACEABLE_BIT - and/or CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT if corresponding - conditional keywords were parsed and assert corresponding *_COMPUTED - macro is false. - * pt.cc (instantiate_class_template): Copy over also - CLASSTYPE_TRIVIALLY_RELOCATABLE_{BIT,COMPUTED} and - CLASSTYPE_REPLACEABLE_{BIT,COMPUTED} bits. - * semantics.cc (referenceable_type_p): Move definition earlier. - (trait_expr_value): Handle CPTK_IS_NOTHROW_RELOCATABLE, - CPTK_IS_REPLACEABLE and CPTK_IS_TRIVIALLY_RELOCATABLE. - (finish_trait_expr): Likewise. - * tree.cc (default_movable_type_p): New function. - (union_with_no_declared_special_member_fns): Likewise. - (trivially_relocatable_type_p): Likewise. - (replaceable_type_p): Likewise. - * constraint.cc (diagnose_trait_expr): Handle - CPTK_IS_NOTHROW_RELOCATABLE, CPTK_IS_REPLACEABLE and - CPTK_IS_TRIVIALLY_RELOCATABLE. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - * cp-tree.h (struct lang_type): Add comment before key_method. - Remove lambda_expr. - (CLASSTYPE_KEY_METHOD): Give NULL_TREE if not TYPE_POLYMORPHIC_P. - (SET_CLASSTYPE_KEY_METHOD): Define. - (CLASSTYPE_LAMBDA_EXPR): Give NULL_TREE if TYPE_POLYMORPHIC_P. - Use key_method member instead of lambda_expr. - (SET_CLASSTYPE_LAMBDA_EXPR): Define. - * class.cc (determine_key_method): Use SET_CLASSTYPE_KEY_METHOD - macro. - * decl.cc (xref_tag): Use SET_CLASSTYPE_LAMBDA_EXPR macro. - * lambda.cc (begin_lambda_type): Likewise. - * module.cc (trees_in::read_class_def): Use SET_CLASSTYPE_LAMBDA_EXPR - and SET_CLASSTYPE_KEY_METHOD macros, assert lambda is NULL if - TYPE_POLYMORPHIC_P and otherwise assert key_method is NULL. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/120628 - * parser.cc (cp_parser_elaborated_type_specifier): Use - cp_parser_nth_token_starts_class_definition_p with extra argument 1 - instead of cp_parser_next_token_starts_class_definition_p. - (cp_parser_class_property_specifier_seq_opt): For final conditional - keyword in C++98 check if the token after it isn't - cp_parser_nth_token_starts_class_definition_p nor CPP_NAME and in - that case break without consuming it nor warning. - (cp_parser_class_head): Use - cp_parser_nth_token_starts_class_definition_p with extra argument 1 - instead of cp_parser_next_token_starts_class_definition_p. - (cp_parser_next_token_starts_class_definition_p): Renamed to ... - (cp_parser_nth_token_starts_class_definition_p): ... this. Add N - argument. Use cp_lexer_peek_nth_token instead of cp_lexer_peek_token. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/120569 - * parser.cc (cp_parser_class_property_specifier_seq_opt): New - function. - (cp_parser_class_head): Use it instead of - cp_parser_property_specifier_seq_opt. Don't diagnose - VIRT_SPEC_OVERRIDE here. Formatting fix. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/117785 - * constexpr.cc: Implement C++26 P3068R5 - constexpr exceptions. - (class constexpr_global_ctx): Add caught_exceptions and - uncaught_exceptions members. - (constexpr_global_ctx::constexpr_global_ctx): Initialize - uncaught_exceptions. - (returns, breaks, continues, switches): Move earlier. - (throws): New function. - (exception_what_str, diagnose_std_terminate, - diagnose_uncaught_exception): New functions. - (enum cxa_builtin): New type. - (cxx_cxa_builtin_fn_p, cxx_eval_cxa_builtin_fn): New functions. - (cxx_eval_builtin_function_call): Add jump_target argument. Call - cxx_eval_cxa_builtin_fn for __builtin_eh_ptr_adjust_ref. Adjust - cxx_eval_constant_expression calls, if it results in jmp_target, - set *jump_target to it and return. - (cxx_bind_parameters_in_call): Add jump_target argument. Pass - it through to cxx_eval_constant_expression. If it sets *jump_target, - break. - (fold_operand): Adjust cxx_eval_constant_expression caller. - (cxx_eval_assert): Likewise. If it set jmp_target, return true. - (cxx_eval_internal_function): Add jump_target argument. Pass it - through to cxx_eval_constant_expression. Return early if *jump_target - after recursing on args. - (cxx_eval_dynamic_cast_fn): Likewise. Don't set reference_p for - C++26 with -fexceptions. - (cxx_eval_thunk_call): Add jump_target argument. Pass it through - to cxx_eval_constant_expression. - (cxx_set_object_constness): Likewise. Don't set TREE_READONLY if - throws (jump_target). - (cxx_eval_call_expression): Add jump_target argument. Pass it - through to cxx_eval_internal_function, cxx_eval_builtin_function_call, - cxx_eval_thunk_call, cxx_eval_dynamic_cast_fn and - cxx_set_object_constness. Pass it through also - cxx_eval_constant_expression on arguments, cxx_bind_parameters_in_call - and cxx_fold_indirect_ref and for those cases return early - if *jump_target. Call cxx_eval_cxa_builtin_fn for cxx_cxa_builtin_fn_p - functions. For cxx_eval_constant_expression on body, pass address of - cleared jmp_target automatic variable, if it throws propagate - to *jump_target and make it non-cacheable. For C++26 don't diagnose - calls to non-constexpr functions before cxx_bind_parameters_in_call - could report some argument throwing an exception. - (cxx_eval_unary_expression): Add jump_target argument. Pass it - through to cxx_eval_constant_expression and return early - if *jump_target after the call. - (cxx_fold_pointer_plus_expression): Likewise. - (cxx_eval_binary_expression): Likewise and similarly for - cxx_fold_pointer_plus_expression call. - (cxx_eval_conditional_expression): Pass jump_target to - cxx_eval_constant_expression on first operand and return early - if *jump_target after the call. - (cxx_eval_vector_conditional_expression): Add jump_target argument. - Pass it through to cxx_eval_constant_expression for all 3 arguments - and return early if *jump_target after any of those calls. - (get_array_or_vector_nelts): Add jump_target argument. Pass it - through to cxx_eval_constant_expression. - (eval_and_check_array_index): Add jump_target argument. Pass it - through to cxx_eval_constant_expression calls and return early after - each of them if *jump_target. - (cxx_eval_array_reference): Likewise. - (cxx_eval_component_reference): Likewise. - (cxx_eval_bit_field_ref): Likewise. - (cxx_eval_bit_cast): Likewise. Assert CHECKING_P call doesn't - throw or return. - (cxx_eval_logical_expression): Add jump_target argument. Pass it - through to cxx_eval_constant_expression calls and return early after - each of them if *jump_target. - (cxx_eval_bare_aggregate): Likewise. - (cxx_eval_vec_init_1): Add jump_target argument. Pass it through - to cxx_eval_bare_aggregate and recursive call. Pass it through - to get_array_or_vector_nelts and cxx_eval_constant_expression - and return early after it if *jump_target. - (cxx_eval_vec_init): Add jump_target argument. Pass it through - to cxx_eval_constant_expression and cxx_eval_vec_init_1. - (cxx_union_active_member): Add jump_target argument. Pass it - through to cxx_eval_constant_expression and return early after it - if *jump_target. - (cxx_fold_indirect_ref_1): Add jump_target argument. Pass it - through to cxx_union_active_member and recursive calls. - (cxx_eval_indirect_ref): Add jump_target argument. Pass it through - to cxx_fold_indirect_ref_1 calls and to recursive call, in which - case return early after it if *jump_target. - (cxx_fold_indirect_ref): Add jump_target argument. Pass it through - to cxx_fold_indirect_ref and cxx_eval_constant_expression calls and - return early after those if *jump_target. - (cxx_eval_trinary_expression): Add jump_target argument. Pass it - through to cxx_eval_constant_expression calls and return early after - those if *jump_target. - (cxx_eval_store_expression): Add jump_target argument. Pass it - through to cxx_eval_constant_expression and eval_and_check_array_index - calls and return early after those if *jump_target. - (cxx_eval_increment_expression): Add jump_target argument. Pass it - through to cxx_eval_constant_expression calls and return early after - those if *jump_target. - (label_matches): Handle VAR_DECL case. - (cxx_eval_statement_list): Remove local_target variable and - !jump_target handling. Handle throws (jump_target) like returns or - breaks. - (cxx_eval_loop_expr): Remove local_target variable and !jump_target - handling. Pass it through to cxx_eval_constant_expression. Handle - throws (jump_target) like returns. - (cxx_eval_switch_expr): Pass jump_target through to - cxx_eval_constant_expression on cond, return early after it - if *jump_target. - (build_new_constexpr_heap_type): Add jump_target argument. Pass it - through to cxx_eval_constant_expression calls, return early after - those if *jump_target. - (merge_jump_target): New function. - (cxx_eval_constant_expression): Make jump_target argument no longer - defaulted, don't test jump_target for NULL. Pass jump_target - through to recursive calls, cxx_eval_call_expression, - cxx_eval_store_expression, cxx_eval_indirect_ref, - cxx_eval_unary_expression, cxx_eval_binary_expression, - cxx_eval_logical_expression, cxx_eval_array_reference, - cxx_eval_component_reference, cxx_eval_bit_field_ref, - cxx_eval_vector_conditional_expression, cxx_eval_bare_aggregate, - cxx_eval_vec_init, cxx_eval_trinary_expression, cxx_fold_indirect_ref, - build_new_constexpr_heap_type, cxx_eval_increment_expression, - cxx_eval_bit_cast and return earlyu after some of those - if *jump_target as needed. - (cxx_eval_constant_expression) <case TARGET_EXPR>: For C++26 push - also CLEANUP_EH_ONLY cleanups, with NULL_TREE marker after them. - (cxx_eval_constant_expression) <case RETURN_EXPR>: Don't - override *jump_target if throws (jump_target). - (cxx_eval_constant_expression) <case TRY_CATCH_EXPR, case TRY_BLOCK, - case MUST_NOT_THROW_EXPR, case TRY_FINALLY_EXPR, case CLEANUP_STMT>: - Handle C++26 constant expressions. - (cxx_eval_constant_expression) <case CLEANUP_POINT_EXPR>: For C++26 - with throws (jump_target) evaluate the CLEANUP_EH_ONLY cleanups as - well, and if not throws (jump_target) skip those. Set *jump_target - if some of the cleanups threw. - (cxx_eval_constant_expression) <case THROW_EXPR>: Recurse on operand - for C++26. - (cxx_eval_outermost_constant_expr): Diagnose uncaught exceptions both - from main expression and cleanups, diagnose also - break/continue/returns from the main expression. Handle - CLEANUP_EH_ONLY cleanup markers. Don't diagnose mutable poison stuff - if non_constant_p. Use different diagnostics for non-deleted heap - allocations if they were allocated by __cxa_allocate_exception. - (callee_might_throw): New function. - (struct check_for_return_continue_data): Add could_throw field. - (check_for_return_continue): Handle AGGR_INIT_EXPR and CALL_EXPR and - set d->could_throw if they could throw. - (potential_constant_expression_1): For CALL_EXPR allow - cxx_dynamic_cast_fn_p calls. For C++26 set *jump_target to void_node - for calls that could throw. For C++26 if call to non-constexpr call - is seen, try to evaluate arguments first and if they could throw, - don't diagnose call to non-constexpr function nor return false. - Adjust check_for_return_continue_data initializers and - set *jump_target to void_node if data.could_throw_p. For C++26 - recurse on THROW_EXPR argument. Add comment explaining TRY_BLOCK - handling with C++26 exceptions. Handle throws like returns in some - cases. - * cp-tree.h (MUST_NOT_THROW_NOEXCEPT_P, MUST_NOT_THROW_THROW_P, - MUST_NOT_THROW_CATCH_P, DECL_EXCEPTION_REFCOUNT): Define. - (DECL_LOCAL_DECL_P): Fix comment typo, VARIABLE_DECL -> VAR_DECL. - (enum cp_built_in_function): Add CP_BUILT_IN_EH_PTR_ADJUST_REF, - (handler_match_for_exception_type): Declare. - * call.cc (handler_match_for_exception_type): New function. - * except.cc (initialize_handler_parm): Set MUST_NOT_THROW_CATCH_P - on newly created MUST_NOT_THROW_EXPR. - (begin_eh_spec_block): Set MUST_NOT_THROW_NOEXCEPT_P. - (wrap_cleanups_r): Set MUST_NOT_THROW_THROW_P. - (build_throw): Add another TARGET_EXPR whose scope spans - until after the __cxa_throw call and copy pointer value from ptr - to it and use it in __cxa_throw argument. - * tree.cc (builtin_valid_in_constant_expr_p): Handle - CP_BUILT_IN_EH_PTR_ADJUST_REF. - * decl.cc (cxx_init_decl_processing): Initialize - __builtin_eh_ptr_adjust_ref FE builtin. - * pt.cc (tsubst_stmt) <case MUST_NOT_THROW_EXPR>: Copy the - MUST_NOT_THROW_NOEXCEPT_P, MUST_NOT_THROW_THROW_P and - MUST_NOT_THROW_CATCH_P flags. - * cp-gimplify.cc (cp_gimplify_expr) <case CALL_EXPR>: Error on - non-folded CP_BUILT_IN_EH_PTR_ADJUST_REF calls. - -2025-07-09 Jason Merrill <jason@redhat.com> - - PR c++/121012 - PR c++/120917 - * parser.cc (cp_parser_lambda_expression): Clear - parser->in_template_argument_list_p. - -2025-07-09 Jason Merrill <jason@redhat.com> - - PR c++/121008 - PR c++/113563 - * semantics.cc (finish_this_expr): Do check current_class_ref for - non-lambda. - -2025-07-09 Marek Polacek <polacek@redhat.com> - - PR c++/119838 - * parser.cc (cp_parser_nested_name_specifier_opt): New global_p - parameter. Look for "template" when global_p is true. - (cp_parser_simple_type_specifier): Pass global_p to - cp_parser_nested_name_specifier_opt. - -2025-07-08 Marek Polacek <polacek@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/83469 - PR c++/93809 - * cp-tree.h (UNION_TYPE_P): Define. - (TYPENAME_IS_UNION_P): Define. - * decl.cc (struct typename_info): Add union_p field. - (struct typename_hasher::equal): Compare union_p field. - (build_typename_type): Use ti.union_p for union_type. Set - TYPENAME_IS_UNION_P. - * error.cc (dump_type) <case TYPENAME_TYPE>: Handle - TYPENAME_IS_UNION_P. - * module.cc (trees_out::type_node): Likewise. - * parser.cc (cp_parser_check_class_key): Allow typename key for union - types and allow union keyword for typename types. - * pt.cc (tsubst) <case TYPENAME_TYPE>: Don't conflate unions with - class_type. For TYPENAME_IS_CLASS_P, check NON_UNION_CLASS_TYPE_P - rather than CLASS_TYPE_P. Add TYPENAME_IS_UNION_P handling. - -2025-07-08 Jakub Jelinek <jakub@redhat.com> - - PR c++/117784 - * decl.cc: Implement part of C++26 P2686R4 - constexpr structured - bindings. - (cp_finish_decl): Pedwarn for C++23 and older on constinit on - structured bindings except for static/thread_local where it uses - earlier error. - (grokdeclarator): Pedwarn on constexpr structured bindings for - C++23 and older instead of emitting error always, don't clear - constexpr_p in that case. - * parser.cc (cp_parser_decomposition_declaration): Copy over - DECL_DECLARED_CONSTEXPR_P and DECL_DECLARED_CONSTINIT_P flags. - -2025-07-07 Alfie Richards <alfie.richards@arm.com> - - PR c++/119498 - * decl.cc (duplicate_decls): Change logic to not always exclude FMV - annotated functions in cases of return type non-ambiguation. - -2025-07-07 Jason Merrill <jason@redhat.com> - - PR c++/120917 - * parser.cc (cp_parser_simple_type_specifier): Attach - auto in targ in parameter to -Wabbreviated-auto-in-template-arg. - (cp_parser_placeholder_type_specifier): Diagnose constrained auto in - template arg. - -2025-07-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/84009 - * parser.cc (cp_parser_decomposition_declaration): Pedwarn - on thread_local, __thread or static in decl_specifiers for - for-range-declaration. - (cp_parser_init_declarator): Likewise, and also for extern - or register. - -2025-07-04 Jason Merrill <jason@redhat.com> - - PR c++/120575 - PR c++/116064 - * parser.cc (cp_parser_abort_tentative_parse): Check seen_error - instead of errorcount. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120716 - * lambda.cc (finish_lambda_function): Pass cur_stmt_list to - prune_lambda_captures. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120748 - * lambda.cc (lambda_expr_this_capture): Don't return a FIELD_DECL. - * parser.cc (cp_parser_primary_expression): Ignore THIS_FORBIDDEN - if cp_unevaluated_operand. - -2025-07-03 Jakub Jelinek <jakub@redhat.com> - - PR c++/120940 - * typeck.cc (cp_build_array_ref): Fix a pasto. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120684 - PR c++/118856 - * constexpr.cc (cxx_eval_constant_expression) [TARGET_EXPR]: Clear - the value first if is_complex. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - PR c++/120471 - * typeck.cc (cp_build_array_ref) <case COND_EXPR>: If idx is not - INTEGER_CST, don't optimize the case (but cp_default_conversion on - array early if it has ARRAY_TYPE) or use - SAVE_EXPR <op0>, SAVE_EXPR <idx>, SAVE_EXPR <op0> as new op0 depending - on flag_strong_eval_order and whether op1 and op2 are arrays with - invariant address or tree invariant pointers. Formatting fixes. - -2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (trees_out::walking_bit_field_unit): New flag. - (trees_out::trees_out): Initialize it. - (trees_out::core_vals): Set it. - (trees_out::get_merge_kind): Use it, move previous ad-hoc check - into assertion. - -2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120644 - * decl.cc (cp_finish_decl): Also propagate type to partial - templates. - * module.cc (trees_out::decl_value): Add assertion that the - TREE_TYPE of a streamed template decl matches its inner. - (trees_in::is_matching_decl): Clarify function return type - deduction should only occur for non-TEMPLATE_DECL. - * pt.cc (template_for_substitution): Handle partial specs. - -2025-06-27 Marek Polacek <polacek@redhat.com> - - PR c++/120756 - * pt.cc (resolve_nondeduced_context): Pass complain to mark_used. - -2025-06-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/120777 - * constexpr.cc: Implement C++26 P3533R2 - constexpr virtual - inheritance. - (is_valid_constexpr_fn): Don't reject constexpr cdtors in classes - with virtual bases for C++26, adjust error wording. - (cxx_bind_parameters_in_call): Add ORIG_FUN argument, add - values for __in_chrg and __vtt_parm arguments when needed. - (cxx_eval_dynamic_cast_fn): Adjust function comment, HINT -1 - should be possible. For C++26 if obj is cast from POINTER_PLUS_EXPR, - attempt to use cxx_fold_indirect_ref to simplify it and if successful, - build ADDR_EXPR of that. - (cxx_eval_call_expression): Add orig_fun variable, set it to - fun before looking through clones, pass it to - cxx_bind_parameters_in_call. - (reduced_constant_expression_p): Add SZ argument, pass DECL_SIZE - of FIELD_DECL e.index to recursive calls and don't return false - if SZ is non-NULL and there are unfilled fields with bit position - at or above SZ. - (cxx_fold_indirect_ref_1): Handle reading of vtables using - ptrdiff_t dynamic type instead of some pointer type. Set el_sz - to DECL_SIZE_UNIT value rather than TYPE_SIZE_UNIT of - DECL_FIELD_IS_BASE fields in classes with virtual bases. - (cxx_fold_indirect_ref): In canonicalize_obj_off lambda look - through COMPONENT_REFs with DECL_FIELD_IS_BASE in classes with - virtual bases and adjust off correspondingly. Remove assertion that - off is integer_zerop, pass tree_to_uhwi (off) instead of 0 to the - cxx_fold_indirect_ref_1 call. - * cp-tree.h (publicly_virtually_derived_p): Declare. - (reduced_constant_expression_p): Add another tree argument defaulted - to NULL_TREE. - * method.cc (synthesized_method_walk): Don't clear *constexpr_p - if there are virtual bases for C++26. - * class.cc (build_base_path): Compute fixed_type_p and - virtual_access before checks for build_simple_base_path instead of - after that and conditional cp_build_addr_expr. Use build_simple_path - if !virtual_access even when v_binfo is non-NULL. - (layout_virtual_bases): For build_base_field calls use - access_public_node rather than access_private_node if - publicly_virtually_derived_p. - (build_vtbl_initializer): Revert 2018-09-18 and 2018-12-11 changes. - (publicly_virtually_derived_p): New function. - -2025-06-27 Jason Merrill <jason@redhat.com> - - * class.cc (fixed_type_or_null): Handle class-type CALL_EXPR. - * parser.cc (cp_parser_binary_expression): Fix decltype_p handling. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/98735 - PR c++/118904 - * cp-gimplify.cc (source_location_id): Remove. - (fold_builtin_source_location): Use generate_internal_label. - * module.cc (enum tree_tag): Add 'tt_internal_id' enumerator. - (trees_out::tree_value): Adjust assertion, write definitions - of uncontexted VAR_DECLs. - (trees_in::tree_value): Read variable definitions. - (trees_out::tree_node): Write internal labels, adjust assert. - (trees_in::tree_node): Read internal labels. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120040 - * constexpr.cc (cxx_eval_constant_expression): Handle TYPE_NAME - now being a TYPE_DECL rather than just an IDENTIFIER_NODE. - * init.cc (build_new_constexpr_heap_type): Build a TYPE_DECL for - the returned type; mark the type as artificial. - * module.cc (trees_out::type_node): Add some assertions. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/98735 - PR c++/120040 - * module.cc (trees_out::tree_value): Write TYPE_DECLs. - (trees_in::tree_value): Read TYPE_DECLs. - (trees_out::tree_node): Support uncontexted TYPE_DECLs, and - ensure that all parts of a by-value decl are marked for - streaming. - (trees_out::get_merge_kind): Treat members of uncontexted types - as always unique. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - * decl.cc (grokfndecl): Add explanation of how to attach to - global module. - -2025-06-26 David Malcolm <dmalcolm@redhat.com> - - * error.cc (cxx_initialize_diagnostics): Use - diagnostic_context::set_adjust_diagnostic_info_callback. - -2025-06-26 Jakub Jelinek <jakub@redhat.com> - - * cp-trait.def: Implement C++26 P2830R10 - Constexpr Type Ordering. - (TYPE_ORDER): New. - * method.cc (type_order_value): Define. - * cp-tree.h (type_order_value): Declare. - * semantics.cc (trait_expr_value): Use gcc_unreachable also - for CPTK_TYPE_ORDER, adjust comment. - (finish_trait_expr): Handle CPTK_TYPE_ORDER. - * constraint.cc (diagnose_trait_expr): Likewise. - -2025-06-25 Martin Jambor <mjambor@suse.cz> - - * coroutines.h (class cp_coroutine_transform): Remove member - orig_fn_body. - -2025-06-24 Jakub Jelinek <jakub@redhat.com> - - PR c++/120773 - * decl.cc (grokfndecl): Implement C++26 P3618R0 - Allow attaching - main to the global module. Only pedwarn for current_lang_name - other than lang_name_cplusplus and adjust pedwarn wording. - -2025-06-23 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (OACC_WAIT_CLAUSE_MASK): Ass if clause. - -2025-06-18 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/115908 - PR c++/118074 - PR c++/95615 - * coroutines.cc (coro_frame_refcount_id): New. - (coro_init_identifiers): Initialise coro_frame_refcount_id. - (build_actor_fn): Set up initial_await_resume_called. Handle - decrementing of the frame reference count. Return directly to - the caller if that is non-zero. - (cp_coroutine_transform::wrap_original_function_body): Use a - conditional eh-only cleanup around the initial await expression - to release the body use on exception before initial await - resume. - (cp_coroutine_transform::build_ramp_function): Wrap the called - body in a cleanup that releases a use of the frame when we - return to the ramp. Implement frame, promise and argument copy - destruction via conditional cleanups when the frame use count - is zero. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (struct coroutine_info): Update comments. - (struct coro_aw_data): Remove self_handle and add in - information to create the handle in lowering. - (expand_one_await_expression): Build a temporary coroutine - handle. - (build_actor_fn): Remove reference to the frame copy of the - coroutine handle. - (cp_coroutine_transform::wrap_original_function_body): Remove - reference to the frame copy of the coroutine handle. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (analyze_expression_awaits): Elide assume - attributes containing await expressions, since these have - side effects. Emit a diagnostic that this has been done. - -2025-06-17 Jason Merrill <jason@redhat.com> - - PR c++/120678 - * cp-trait.def (IS_TRIVIALLY_DESTRUCTIBLE): Fix nargs. - -2025-06-17 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::write_diagnostic_classification): New. - (module_state::write_begin): Call it. - (module_state::read_diagnostic_classification): New. - (module_state::read_initial): Call it. - (dk_string, dump_dc_change): New. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (finish_co_await_expr): Do not allow in an - unevaluated context. - (finish_co_yield_expr): Likewise. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120273 - * coroutines.cc - (cp_coroutine_transform::wrap_original_function_body): Use - function start and end locations when synthesizing code. - (cp_coroutine_transform::cp_coroutine_transform): Set the - function end location. - -2025-06-16 Jason Merrill <jason@redhat.com> - - * constraint.cc (failed_completions_map): New. - (note_failed_type_completion): Rename from - note_failed_type_completion_for_satisfaction. Add - -Wsfinae-incomplete handling. - (failed_completion_location): New. - * class.cc (finish_struct_1): Add -Wsfinae-incomplete warning. - * decl.cc (require_deduced_type): Adjust. - (finish_function): Add -Wsfinae-incomplete warning. - * typeck.cc (complete_type_or_maybe_complain): Adjust. - (cxx_sizeof_or_alignof_type): Call note_failed_type_completion. - * pt.cc (dependent_template_arg_p): No longer static. - * cp-tree.h: Adjust. - -2025-06-16 yxj-github-437 <2457369732@qq.com> - - * parser.cc (cp_parser_asm_operand_list): Check for unexpanded - parameter packs. - -2025-06-14 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (build_co_await): Identify diagnostics - for initial and final await expressions. - (cp_coroutine_transform::wrap_original_function_body): Do - not handle initial and final await expressions here ... - (cp_coroutine_transform::apply_transforms): ... handle them - here and avoid duplicate diagnostics. - * coroutines.h: Declare inital and final await expressions - in the transform class. Save the function closing brace - location. - -2025-06-13 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/116775 - * coroutines.cc (analyze_expression_awaits): When we see - a builtin_constant_p call, and that contains one or more - await expressions, then replace the call with its result - and discard the unevaluated operand. - -2025-06-13 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (build_actor_fn): Set can_throw. - -2025-06-12 Alfie Richards <alfie.richards@arm.com> - - * decl.cc (maybe_version_functions): Change record_function_versions - call to add_function_version. - -2025-06-12 Jakub Jelinek <jakub@redhat.com> - - * cp-tree.h (union lang_type::maybe_objc_info): New type. - (struct lang_type): Use union maybe_objc_info info member - instead of tree objc_info. - * lex.cc (copy_lang_type): Use sizeof (struct lang_type) - just for ObjC++ and otherwise offsetof (struct lang_type, info). - (maybe_add_lang_type_raw): Likewise. - (cxx_make_type): Formatting fix. - -2025-06-09 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120495 - PR c++/115605 - * pt.cc (lookup_template_class): Honour provided namespace contexts - when looking up class templates. - -2025-06-06 Jason Merrill <jason@redhat.com> - - PR c++/120555 - * decl2.cc (fn_being_defined, fn_template_being_defined): New. - (mark_used): Check fn_template_being_defined. - -2025-06-05 Patrick Palka <ppalka@redhat.com> - - PR c++/120224 - * pt.cc (tsubst_function_decl): Return error_mark_node if - substituting into the formal parameter list failed. - (tsubst_decl) <case PARM_DECL>: Return error_mark_node - upon TREE_TYPE substitution failure, when in a SFINAE - context. Return error_mark_node upon DECL_CHAIN substitution - failure. - -2025-06-05 Patrick Palka <ppalka@redhat.com> - - PR c++/118340 - * constexpr.cc (maybe_constant_value): First try looking up each - operand in the cv_cache and reusing the result. - -2025-06-05 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (analyze_fn_parms): Move from free function.. - (cp_coroutine_transform::analyze_fn_parms):... to method. - (cp_coroutine_transform::apply_transforms): Adjust call to - analyze_fn_parms. - * coroutines.h: Declare analyze_fn_parms. - -2025-06-05 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (expand_one_await_expression): Set the - initial_await_resume_called flag here. - (build_actor_fn): Populate the frame accessor for the - initial_await_resume_called flag. - (cp_coroutine_transform::wrap_original_function_body): Do - not modify the initial_await expression to include the - initial_await_resume_called flag here. - -2025-06-04 Jason Merrill <jason@redhat.com> - - PR c++/120502 - * cp-gimplify.cc (cp_fold_r) [TARGET_EXPR]: Do constexpr evaluation - before genericize. - * constexpr.cc (cxx_eval_store_expression): Add comment. - -2025-06-03 Jason Merrill <jason@redhat.com> - - * name-lookup.h (operator|, operator|=): Define for WMB_Flags. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * method.cc (destructible_expr): Fix refs and arrays of unknown - bound. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/120506 - * constexpr.cc (cxx_eval_outermost_constant_expr): Always check - CONSTRUCTOR_NO_CLEARING. - -2025-06-02 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (build_actor_fn): Remove an unused - label, guard the frame deallocation correctly, use - simpler APIs to build if and return statements. - -2025-06-02 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/118903 - * constexpr.cc (potential_constant_expression_1): Emit - an error when co_await et. al. are used in constexpr - contexts. - -2025-06-02 Iain Sandoe <iain@sandoe.co.uk> - - * error.cc (dump_expr): Add co_await, co_yield and co_return. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * method.cc (destructible_expr): Handle non-classes. - (constructible_expr): Check for abstract class here... - (is_xible_helper): ...not here. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * semantics.cc (trait_expr_value) [CPTK_HAS_TRIVIAL_DESTRUCTOR]: - Add cp_unevaluated. - -2025-06-02 Sandra Loosemore <sloosemore@baylibre.com> - - * cp-tree.h (maybe_convert_cond): Declare. - * parser.cc (cp_parser_omp_context_selector): Call - maybe_convert_cond and fold_build_cleanup_point_expr on the - expression for OMP_TRAIT_PROPERTY_BOOL_EXPR. - * pt.cc (tsubst_omp_context_selector): Likewise. - * semantics.cc (maybe_convert_cond): Remove static declaration. - -2025-05-30 Jason Merrill <jason@redhat.com> - - PR c++/113563 - * lambda.cc (lambda_capture_field_type): Handle 'this' normally. - (build_capture_proxy): Special-case 'this' by-ref capture more. - (nonlambda_method_basetype): Look through xobj lambdas. - -2025-05-30 Julian Brown <julian@codesourcery.com> - Tobias Burnus <tburnus@baylibre.com> - - * constexpr.cc (reduced_constant_expression_p): Add OMP_DECLARE_MAPPER - case. - (cxx_eval_constant_expression, potential_constant_expression_1): - Likewise. - * cp-gimplify.cc (cxx_omp_finish_mapper_clauses): New function. - * cp-objcp-common.h (LANG_HOOKS_OMP_FINISH_MAPPER_CLAUSES, - LANG_HOOKS_OMP_MAPPER_LOOKUP, LANG_HOOKS_OMP_EXTRACT_MAPPER_DIRECTIVE, - LANG_HOOKS_OMP_MAP_ARRAY_SECTION): Define langhooks. - * cp-tree.h (lang_decl_base): Add omp_declare_mapper_p field. Recount - spare bits comment. - (DECL_OMP_DECLARE_MAPPER_P): New macro. - (omp_mapper_id): Add prototype. - (cp_check_omp_declare_mapper): Add prototype. - (omp_instantiate_mappers): Add prototype. - (cxx_omp_finish_mapper_clauses): Add prototype. - (cxx_omp_mapper_lookup): Add prototype. - (cxx_omp_extract_mapper_directive): Add prototype. - (cxx_omp_map_array_section): Add prototype. - * decl.cc (check_initializer): Add OpenMP declare mapper support. - (cp_finish_decl): Set DECL_INITIAL for OpenMP declare mapper var decls - as appropriate. - * decl2.cc (mark_used): Instantiate OpenMP "declare mapper" magic var - decls. - * error.cc (dump_omp_declare_mapper): New function. - (dump_simple_decl): Use above. - * parser.cc (cp_parser_omp_clause_map): Add KIND parameter. Support - "mapper" modifier. - (cp_parser_omp_all_clauses): Add KIND argument to - cp_parser_omp_clause_map call. - (cp_parser_omp_target): Call omp_instantiate_mappers before - finish_omp_clauses. - (cp_parser_omp_declare_mapper): New function. - (cp_parser_omp_declare): Add "declare mapper" support. - * pt.cc (tsubst_decl): Adjust name of "declare mapper" magic var decls - once we know their type. - (tsubst_omp_clauses): Call omp_instantiate_mappers before - finish_omp_clauses, for target regions. - (tsubst_expr): Support OMP_DECLARE_MAPPER nodes. - (instantiate_decl): Instantiate initialiser (i.e definition) for OpenMP - declare mappers. - * semantics.cc (gimplify.h): Include. - (omp_mapper_id, omp_mapper_lookup, omp_extract_mapper_directive, - cxx_omp_map_array_section, cp_check_omp_declare_mapper): New functions. - (finish_omp_clauses): Delete GOMP_MAP_PUSH_MAPPER_NAME and - GOMP_MAP_POP_MAPPER_NAME artificial clauses. - (omp_target_walk_data): Add MAPPERS field. - (finish_omp_target_clauses_r): Scan for uses of struct/union/class type - variables. - (finish_omp_target_clauses): Create artificial mapper binding clauses - for used structs/unions/classes in offload region. - -2025-05-29 David Malcolm <dmalcolm@redhat.com> - - * error.cc (cxx_format_postprocessor::clone): Update to use - unique_ptr. - (cxx_dump_pretty_printer::cxx_dump_pretty_printer): Likewise. - (cxx_initialize_diagnostics): Likewise. - -2025-05-29 Jason Merrill <jason@redhat.com> - - PR c++/113563 - * lambda.cc (build_capture_proxy): Check pointerness of the - member, not the proxy type. - (lambda_expr_this_capture): Don't assume current_class_ref. - (nonlambda_method_basetype): Likewise. - * semantics.cc (finish_non_static_data_member): Don't assume - TREE_TYPE (object) is set. - (finish_this_expr): Check current_class_type for lambda, - not current_class_ref. - -2025-05-29 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/109283 - * coroutines.cc (find_any_await): Only save the statement - pointer if the caller passes a place for it. - (flatten_await_stmt): When checking that ternary expressions - have been handled, also check that they contain a co_await. - -2025-05-29 Jason Merrill <jason@redhat.com> - - * decl.cc (start_decl): Also set invalid_constexpr - for maybe_constexpr_fn. - * parser.cc (cp_parser_jump_statement): Likewise. - * constexpr.cc (potential_constant_expression_1): Ignore - goto to an artificial label. - -2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_parser_omp_metadirective): Do not call - cp_parser_skip_to_end_of_block_or_statement after an error. - -2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/120180 - * parser.cc (cp_parser_omp_metadirective): Only consume the - token if it is the expected close paren. - -2025-05-29 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (analyze_fn_parms): No longer - create a parameter copy guard var. - * coroutines.h (struct param_info): Remove the - entry for the parameter copy destructor guard. - -2025-05-29 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120453 - * cp-tree.h (DECL_RAMP_P): New. - * typeck.cc (check_return_expr): Use DECL_RAMP_P instead - of DECL_RAMP_FN. - -2025-05-29 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * cp-trait.def (IS_DESTRUCTIBLE, IS_NOTHROW_DESTRUCTIBLE) - (IS_TRIVIALLY_DESTRUCTIBLE): New. - * constraint.cc (diagnose_trait_expr): Explain them. - * method.cc (destructible_expr): New. - (is_xible_helper): Use it. - * semantics.cc (finish_trait_expr): Handle new traits. - (trait_expr_value): Likewise. Complain about asking - whether a deleted dtor is trivial. - -2025-05-28 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::write_namespaces): Write - using-directives. - (module_state::read_namespaces): And read them. - * name-lookup.cc (add_using_namespace): Add overload. Build a - USING_DECL for modules. - (name_lookup::search_usings, name_lookup::queue_usings) - (using_directives_contain_std_p): Strip the USING_DECL. - * name-lookup.h: Declare it. - * parser.cc (cp_parser_import_declaration): Set MK_EXPORTING - for export import. - -2025-05-27 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc (cp_coroutine_transform::build_ramp_function): - Replace TRUTH_AND_EXPR with TRUTH_ANDIF_EXPR in three places. - -2025-05-26 Tobias Burnus <tburnus@baylibre.com> - - PR c++/120413 - * semantics.cc (finish_omp_target_clauses_r): Handle - BIND_EXPR with empty BIND_EXPR_BLOCK. - -2025-05-26 Jason Merrill <jason@redhat.com> - - * cp-tree.h: Declare tinst_dump_id. - * cp-objcp-common.cc (cp_register_dumps): Set it. - * pt.cc (push_tinst_level_loc): Dump it. - (reopen_tinst_level): Here too. - (tinst_complete_p): New. - (instantiate_pending_templates): Don't reopen_tinst_level for - already-complete instantiations. - -2025-05-26 Jason Merrill <jason@redhat.com> - - * cp-tree.h (class cxx_dump_pretty_printer): New. - * error.cc (cxx_dump_pretty_printer): Ctor/dtor definitions. - -2025-05-25 Jason Merrill <jason@redhat.com> - - * error.cc (dump_template_bindings): Correct skipping of - redundant bindings. - -2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120363 - * decl2.cc (get_tls_init_fn): Set context as global_namespace. - (get_tls_wrapper_fn): Likewise. - -2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120414 - * module.cc (trees_in::tree_node): Allow reading a USING_DECL - when streaming tt_data_member. - -2025-05-23 Jason Merrill <jason@redhat.com> - - * mangle.cc (mangle_decl_string): Don't push_tinst_level. - -2025-05-22 Jason Merrill <jason@redhat.com> - - PR c++/120935 - * cp-gimplify.cc (cp_fold): Check always_inline. - -2025-05-21 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc - (cp_coroutine_transform::build_ramp_function): Replace ramp - cleanup try-catch block with eh-only cleanup statements. - -2025-05-21 Iain Sandoe <iain@sandoe.co.uk> - - * coroutines.cc - (cp_coroutine_transform::build_ramp_function): Use - decltype(auto) to determine the type of the temporary - get_return_object. - -2025-05-21 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/119916 - * coroutines.cc - (cp_coroutine_transform::wrap_original_function_body): Do not - initialise initial_await_resume_called here... - (cp_coroutine_transform::build_ramp_function): ... but here. - When the coroutine is not void, initialize a GRO object from - promise.get_return_object(). Use this as the argument to the - return expression. Use a regular cleanup for the GRO, since - it is ramp-local. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120349 - * module.cc (trees_out::core_bools): Always mark vtables as - DECL_EXTERNAL. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120013 - * module.cc (trees_in::install_entity): Handle re-registering - the inner TYPE_DECL of a partial specialisation. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120350 - * rtti.cc (get_tinfo_decl_direct): Mark TREE_ADDRESSABLE. - -2025-05-16 Ville Voutilainen <ville.voutilainen@gmail.com> - - * cp-gimplify.cc (cp_fold): Do the conversion unconditionally, even for same-type cases. - -2025-05-16 Iain Sandoe <iain@sandoe.co.uk> - - * typeck.cc (check_return_expr): Suppress conversions for NVRO - in coroutine ramp functions. - -2025-05-16 Iain Sandoe <iain@sandoe.co.uk> - - * decl.cc (poplevel): Set BLOCK_OUTER_CURLY_BRACE_P on the - body block for functions with no subblocks. - -2025-05-16 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (importer_interface): Adjust flags. - (get_importer_interface): Rename flags. - (trees_out::core_bools): Clean up special casing. - (trees_out::write_function_def): Rename flag. - -2025-05-15 Patrick Palka <ppalka@redhat.com> - - PR c++/120161 - * pt.cc (unify) <case RECORD_TYPE>: When comparing specializations - of a non-primary template, still perform a type comparison. - -2025-05-15 Jason Merrill <jason@redhat.com> - - * module.cc (trees_out::lang_decl_bools): Stream implicit_constexpr. - (trees_in::lang_decl_bools): Likewise. - (trees_in::is_matching_decl): Check it. - -2025-05-15 Jason Merrill <jason@redhat.com> - - PR c++/99599 - * pt.cc (conversion_may_instantiate_p): Make sure - classes are complete. - -2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> - - * cp-gimplify.cc (cp_fold): Remove a remnant comment. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120125 - * module.cc (trees_out::write_function_def): Only set - DECL_NOT_REALLY_EXTERN if the importer might need to emit it. - * optimize.cc (maybe_thunk_body): Don't assume 'fn' has a cgraph - node created. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119864 - * decl2.cc (start_objects): Only use module initialized for - host. - (c_parse_final_cleanups): Don't always create an OMP offload - init function in modules. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - * name-lookup.cc (lookup_imported_hidden_friend): Add back - lazy_load_pendings with comment. - -2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> - - * cp-gimplify.cc (cp_fold): Add to_underlying. - -2025-05-14 Owen Avery <powerboat9.gamer@gmail.com> - Jason Merrill <jason@redhat.com> - - * method.cc (synthesized_method_walk): Check whether - -Wvirtual-move-assign is enabled at the location of a base - class's move assignment operator. - -2025-05-12 Jason Merrill <jason@redhat.com> - - PR c++/120012 - * class.cc (check_non_pod_aggregate): Check is_empty_class. - -2025-05-10 Jason Merrill <jason@redhat.com> - - PR c++/120204 - * pt.cc (tsubst_baselink): Always error if lookup fails. - -2025-05-09 Jason Merrill <jason@redhat.com> - - * decl2.cc (determine_visibility): Ignore args for friend templates. - -2025-05-09 Jason Merrill <jason@redhat.com> - - PR c++/99599 - PR c++/120185 - * class.cc (type_has_converting_constructor): Handle null parm. - * pt.cc (fn_type_unification): Skip early non-dep checking if - no concepts. - -2025-05-08 Jason Merrill <jason@redhat.com> - - PR c++/99599 - * cp-tree.h (type_has_converting_constructor): Declare. - * class.cc (type_has_converting_constructor): New. - * pt.cc (conversion_may_instantiate_p): Don't check completeness. - -2025-05-05 Simon Martin <simon@nasilyan.com> - - * cp-tree.h (parsing_default_capturing_generic_lambda_in_template): - Remove obsolete prototype. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/115207 - * decl.cc (cp_finish_decl): Call layout_decl after CTAD. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/120012 - * cp-tree.h (struct lang_type): Add non_aggregate_pod. - (CLASSTYPE_NON_AGGREGATE_POD): New. - * class.cc (check_bases_and_members): Set it. - (check_non_pod_aggregate): Diagnose it. - -2025-05-02 Jakub Jelinek <jakub@redhat.com> - - PR c++/117827 - * init.cc (build_vec_init): Push to *cleanup_flags clearing of rval - instead of setting of iterator to maxindex. - -2025-05-01 Patrick Palka <ppalka@redhat.com> - - * constexpr.cc (explain_invalid_constexpr_fn): In the - DECL_CONSTRUCTOR_P branch pass the non-genericized body to - require_potential_constant_expression. - -2025-05-01 Patrick Palka <ppalka@redhat.com> - - PR c++/119034 - PR c++/68942 - * pt.cc (tsubst_expr) <case CALL_EXPR>: Revert PR68942 fix. - * semantics.cc (finish_call_expr): Ensure the callee of an - ADL-enabled call is wrapped in an OVERLOAD. - -2025-05-01 Jason Merrill <jason@redhat.com> - - * Make-lang.in: Don't pass the full path to gperf. - * std-name-hint.h: Regenerate. - -2025-05-01 Jason Merrill <jason@redhat.com> - - PR c++/119162 - * constexpr.cc (find_deleted_heap_var): Remove. - (cxx_eval_call_expression): Don't call it. Don't set TREE_STATIC on - heap vars. - (cxx_eval_outermost_constant_expr): Don't mess with varpool. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120023 - * module.cc (depset::hash::find_dependencies): Also call - add_deduction_guides when walking one. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119938 - * pt.cc (get_template_parm_object): When !check_init, add assert - that expr really is constant and mark decl as such. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119551 - PR c++/119996 - * module.cc (depset::hash::make_dependency): Also mark inline - variables referencing TU-local values as exposures here. - (depset::hash::finalize_dependencies): Add error message for - inline variables. - -2025-04-30 Patrick Palka <ppalka@redhat.com> - - PR c++/119981 - PR c++/119378 - * pt.cc (tsubst) <case UNBOUND_CLASS_TEMPLATE>: Substitute - into template parameter list first. When substituting the - context, only set processing_template_decl if there's more - than one level of introduced template parameters. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * parser.cc: Include "analyzer/analyzer-language.h". - (ana::cp_translation_unit): New class. - (cp_parser_translation_unit): Add call to - ana::on_finish_translation_unit. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * cxx-pretty-print.cc: Drop include of "make-unique.h". - Replace uses of ::make_unique with std::make_unique. - * error.cc: Likewise. - * name-lookup.cc: Likewise. - * parser.cc: Likewise. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * name-lookup.cc: Include "make-unique.h". - (namespace_hints::convert_candidates_to_name_hint): Use - ::make_unique rather than "new" when making - show_candidate_location and suggest_alternatives. - (namespace_hints::maybe_decorate_with_limit): Likewise when making - namespace_limit_reached. - (suggest_alternatives_for_1): Likewise when making - suggest_missing_option. - (maybe_suggest_missing_std_header): Likewise when making - missing_std_header. - (macro_use_before_def::maybe_make): Use std::unique_ptr. - (macro_use_before_def::macro_use_before_def): Make public. - (lookup_name_fuzzy): Use ::make_unique rather than "new" when - making suggest_missing_header. - * parser.cc: Include "make-unique.h". - (cp_parser_error_1): Use ::make_unique rather than "new" when - making suggest_missing_header. - -2025-04-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119939 - * module.cc (trees_out::lang_decl_vals): Also stream - lang->u.fn.context when DECL_UNIQUE_FRIEND_P. - (trees_in::lang_decl_vals): Likewise. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * call.cc (type_passed_as): Remove the - targetm.calls.promote_prototypes call. - (convert_for_arg_passing): Likewise. - * typeck.cc (cxx_safe_arg_type_equiv_p): Likewise. - -2025-04-25 Jason Merrill <jason@redhat.com> - - PR c++/119764 - PR c++/87185 - * lambda.cc (insert_capture_proxy): Handle noexcept lambda. - (prune_lambda_captures): Likewise, in ABI v21. - -2025-04-25 Jason Merrill <jason@redhat.com> - - * cp-tree.h (struct tinst_level): Add had_errors bit. - * pt.cc (push_tinst_level_loc): Clear it. - (pop_tinst_level): Set it. - (reopen_tinst_level): Check it. - (instantiate_pending_templates): Call limit_bad_template_recursion. - -2025-04-24 Jason Merrill <jason@redhat.com> - - PR c++/116954 - * contracts.cc (remove_contract_attributes): Return early if - not enabled. - -2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * name-lookup.cc (lookup_imported_hidden_friend): Remove - unnecessary lazy_load_pendings. - -2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119863 - * name-lookup.cc (get_mergeable_namespace_binding): Remove - no-longer-used function. - (lookup_imported_hidden_friend): Also look for hidden imported - decls in an attached decl's module. - -2025-04-21 Jason Merrill <jason@redhat.com> - - * constexpr.cc (cxx_eval_outermost_constant_expr): Move - verify_constant later. - -2025-04-21 Jason Merrill <jason@redhat.com> - - PR c++/118775 - * constexpr.cc (cxx_eval_call_expression): Add assert. - (fold_to_constant): Handle processing_template_decl. - * init.cc (build_new_1): Use fold_to_constant. - -2025-04-21 Jason Merrill <jason@redhat.com> - - PR c++/99456 - * constexpr.cc (cxx_eval_constant_expression): Check strict - instead of manifestly_const_eval. - (maybe_constant_init_1): Be strict for static constexpr vars. - -2025-04-19 Jason Merrill <jason@redhat.com> - - * coroutines.cc (coro_build_expr_stmt) - (coro_build_cvt_void_expr_stmt): Remove. - (build_actor_fn): Use finish_expr_stmt. - * semantics.cc (finish_expr_stmt): Avoid wrapping statement in - EXPR_STMT. - (finish_stmt_expr_expr): Add comment. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * constexpr.cc (is_valid_constexpr_fn): Improve diagnostic. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * constexpr.cc (cxx_eval_outermost_constant_expr): Give both - expression and allocation location in allocated storage diagnostics. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * name-lookup.cc (name_lookup::preserve_state): Fix reserve call. - * rtti.cc (get_tinfo_desc): Use vec_safe_grow_cleared. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * semantics.cc (finish_type_pack_element): Add more info - to diagnostics. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * decl.cc (cp_make_fname_decl): Prevent silent failure. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * lex.cc (unqualified_name_lookup_error): Handle 'requires' better. - -2025-04-17 Jason Merrill <jason@redhat.com> - - PR c++/113360 - * cp-tree.h (struct language_function): Add erroneous bit. - * constexpr.cc (explain_invalid_constexpr_fn): Return if set. - (cxx_eval_call_expression): Quiet if set. - * parser.cc (cp_parser_function_definition_after_declarator) - * pt.cc (instantiate_body): Set it. - -2025-04-16 Jason Merrill <jason@redhat.com> - - PR c++/114772 - PR c++/101180 - * pt.cc (apply_late_template_attributes): Also override - target_option_current_node. - -2025-04-16 Jason Merrill <jason@redhat.com> - - PR c++/116954 - * contracts.cc (remove_contract_attributes): Preserve flags - on the attribute list. - -2025-04-15 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119755 - * lambda.cc (prune_lambda_captures): Remove pruned capture from - function's BLOCK_VARS and BIND_EXPR_VARS. - -2025-04-15 Jason Merrill <jason@redhat.com> - - PR c++/111075 - * constexpr.cc (cxx_eval_call_expression): Allow trivial - call from a thunk. - -2025-04-15 Patrick Palka <ppalka@redhat.com> - - PR c++/119807 - PR c++/112288 - * pt.cc (tsubst_friend_function): Skip remapping an - existing specialization if it doesn't match the shape of - the new friend definition. - -2025-04-15 Jason Merrill <jason@redhat.com> - - PR c++/113835 - * constexpr.cc (cxx_eval_outermost_constant_expr): Bail out early - for std::vector(N). - -2025-04-14 Patrick Palka <ppalka@redhat.com> - - PR c++/99214 - * constraint.cc (satisfy_declaration_constraints): Pass the - original ARGS to push_tinst_level. - -2025-04-13 Patrick Palka <ppalka@redhat.com> - - PR c++/115639 - * constexpr.cc (struct constexpr_call): Add NSDMIs to each - field. Replace 'result' data member with 3-element 'results' - array and a 'result' accessor function. Remove - 'manifestly_const_eval' data member. - (constexpr_call_hasher::equal): Adjust after constexpr_call - layout change. - (cxx_eval_call_expression): Likewise. Define some local - variables closer to their first use. Use unknown_type_node - instead of NULL_TREE as the "in progress" result. After - successully evaluating a call with mce_unknown, also cache the - result in the corresponding mce_true and mce_false slots. - -2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (trees_in::is_matching_decl): Don't check for - mismatches when importing a DECL_MAYBE_DELETED function over one - that's already finished. - -2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (trees_in::is_matching_decl): Add custom errors for - different kinds of mismatches. - -2025-04-12 Patrick Palka <ppalka@redhat.com> - - PR c++/116416 - * constexpr.cc (maybe_constant_init_1): Generalize type of - of manifestly_const_eval parameter from bool to mce_value. - (maybe_constant_init): Define 3-parameter version taking a - manifestly_const_eval instead of bool parameter. - (cxx_constant_init): Adjust. - * cp-gimplify.cc (cp_fold_r) <case TARGET_EXPR>: Pass mce_false - to maybe_constant_init during prvalue folding if ff_mce_false is - set. - * cp-tree.h (maybe_constant_init): Declare new overload. - -2025-04-11 Jason Merrill <jason@redhat.com> - - PR c++/114970 - * cp-gimplify.cc (cp_build_init_expr_for_ctor): Suppress warnings on - return_this COMPOUND_EXPR. - -2025-04-10 Jason Merrill <jason@redhat.com> - - PR c++/119345 - * pt.cc (add_extra_args): Also register a specialization - of the captured variable. - -2025-04-10 Patrick Palka <ppalka@redhat.com> - - PR c++/119687 - * pt.cc (alias_ctad_tweaks): Use lkp_range / lkp_iterator - instead of ovl_iterator. - -2025-04-10 Jakub Jelinek <jakub@redhat.com> - - PR translation/119684 - * error.cc (cp_print_error_function): Use G_ instead of _ for - pp_printf arguments. - (function_category): Use G_ instead of _. - (print_instantiation_full_context): Use G_ instead of _ in pp_verbatim - arguments. - (print_location): Likewise. - (print_instantiation_partial_context): Likewise. - (maybe_print_constexpr_context): Likewise. - (print_constrained_decl_info): Use G_() around pp_verbatim argument. - (print_concept_check_info): Likewise. - (print_constraint_context_head): Likewise. - (print_requires_expression_info): Likewise. Merge separate pp_verbatim - "in requirements " and "with " into one with conditional messages. - -2025-04-10 Jason Merrill <jason@redhat.com> - - PR c++/119175 - * mangle.cc (decl_mangling_context): Look through lambda type. - -2025-04-09 Patrick Palka <ppalka@redhat.com> - - PR c++/119574 - * pt.cc (add_extra_args): Remove checking assert. - -2025-04-09 Jason Merrill <jason@redhat.com> - - PR c++/118698 - * constraint.cc (struct norm_info): Add tf_partial. - * pt.cc (any_template_parm_r): Handle LAMBDA_EXPR_EXTRA_ARGS. - -2025-04-08 Jason Merrill <jason@redhat.com> - - PR c++/117530 - * pt.cc (instantiate_template): Check retrieve_specialization after - tsubst. - -2025-04-07 Jason Merrill <jason@redhat.com> - - PR c++/119652 - * constexpr.cc (cxx_eval_outermost_constant_expr): Also don't add a - TARGET_EXPR around AGGR_INIT_EXPR. - -2025-04-06 Patrick Palka <ppalka@redhat.com> - - PR c++/118626 - * pt.cc (maybe_dependent_member_ref): Restrict TYPENAME_TYPE - shortcut to non-typedef TYPE_DECL. - -2025-04-06 Patrick Palka <ppalka@redhat.com> - - PR c++/118626 - * pt.cc (maybe_dependent_member_ref): Substitute and return the - stripped type if we decided to not rewrite it directly. - -2025-04-05 Patrick Palka <ppalka@redhat.com> - - PR c++/118249 - * constexpr.cc (potential_constant_expression_1) - <case INDIRECT_REF>: Remove obsolete *this handling. - -2025-04-05 Jason Merrill <jason@redhat.com> - - PR c++/118629 - * name-lookup.cc (pushdecl_outermost_localscope): Look for an - sk_block. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119564 - * decl.cc (cp_tree_node_structure): Add TU_LOCAL_ENTITY; fix - formatting. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119608 - * module.cc (trees_out::decl_node): Maybe require by-value - walking not just when streaming. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119462 - * module.cc (trees_in::is_matching_decl): Propagate exception - spec and constexpr to DECL_MAYBE_DELETED; clear if appropriate. - -2025-04-04 Jason Merrill <jason@redhat.com> - - PR c++/99546 - PR c++/113925 - PR c++/106976 - PR c++/109961 - PR c++/117336 - * lambda.cc (build_lambda_object): Handle fake - requires-expr processing_template_decl. - * parser.cc (cp_parser_lambda_expression): Likewise. - -2025-04-04 Patrick Palka <ppalka@redhat.com> - - PR c++/117849 - * semantics.cc (finish_id_expression_1): Allow use of constraint - variable outside an unevaluated context. - -2025-04-03 Patrick Palka <ppalka@redhat.com> - - PR c++/119387 - * constexpr.cc (p2280_active_p): New. - (cxx_eval_constant_expression) <case VAR_DECL>: Use it to - restrict P2280 relaxations. - <case PARM_DECL>: Likewise. - -2025-04-03 Jason Merrill <jason@redhat.com> - - * module.cc (module_state::read_cluster) - (post_load_processing): Clear DECL_EXTERNAL if DECL_COMDAT. - -2025-04-03 Jason Merrill <jason@redhat.com> - - * call.cc (add_candidates): Re-lookup ne_fns if we move into - another namespace. - -2025-04-03 Andrew Pinski <quic_apinski@quicinc.com> - Jakub Jelinek <jakub@redhat.com> - - PR c++/119563 - * call.cc (build_list_conv): Fix a typo in loop gathering - summary information from subsubconvs. - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118965 - * parser.cc (c_parser_omp_clause_init_modifiers): Adjust - error message. - (cp_parser_omp_clause_init): Remove code for recognizing clauses - without modifiers. Diagnose missing target/targetsync modifier. - (cp_finish_omp_declare_variant): Diagnose missing target/targetsync - modifier. - -2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119551 - * module.cc (trees_out::write_var_def): Only ignore non-inline - variable initializers. - -2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> - - * parser.cc (cp_parser_diagnose_invalid_type_name): Replace - fmodules-ts with fmodules. - (cp_parser_template_declaration): Likewise. - -2025-04-01 Marek Polacek <polacek@redhat.com> - - PR c++/119383 - * call.cc (build_over_call): Use force_lvalue to ensure op= returns - an lvalue. - * cp-tree.h (force_lvalue): Declare. - * cvt.cc (force_lvalue): New. - * typeck.cc (cp_build_indirect_ref_1): Revert r15-8011. - -2025-03-31 Jason Merrill <jason@redhat.com> - - PR c++/119401 - * pt.cc (regenerate_decl_from_template): Don't regenerate if the - signature involves a lambda. - -2025-03-31 Jakub Jelinek <jakub@redhat.com> - - PR c++/119518 - * decl.cc (finish_function): Don't set TREE_NOTHROW for - functions with "noipa" attribute even when we can prove - they can't throw. - -2025-03-29 Jason Merrill <jason@redhat.com> - - * decl.cc (duplicate_decls): Don't clobber DECL_MODULE_IMPORT_P with - an injected friend. - * name-lookup.cc (check_module_override): Look at all reachable - decls in decl's originating module. - -2025-03-29 Jason Merrill <jason@redhat.com> - - PR c++/64500 - PR c++/116285 - * name-lookup.cc (push_to_top_level): Don't try to store_bindings - for namespace levels. - -2025-03-29 Jakub Jelinek <jakub@redhat.com> - - * name-lookup.cc (maybe_lazily_declare): Fix comment typo, - anout -> about. - -2025-03-29 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118961 - * class.cc (copy_fndecl_with_name): Mark clones as non-abstract. - * cp-tree.h (setup_explicit_instantiation_definition_linkage): - Declare new function. - * module.cc (trees_in::read_var_def): Use it. - (module_state::read_cluster): Likewise. - * pt.cc (setup_explicit_instantiation_definition_linkage): New - function. - (mark_decl_instantiated): Use it. - -2025-03-27 Tobias Burnus <tburnus@baylibre.com> - - * cp-tree.h (cp_finish_omp_init_prefer_type): Add. - * decl.cc (omp_declare_variant_finalize_one): Call it. - * pt.cc (tsubst_attribute): Minor rebustification for OpenMP - append_args handling. - * semantics.cc (cp_omp_init_prefer_type_update): Rename to ... - (cp_finish_omp_init_prefer_type): ... this; remove static attribute - and return modified tree. Move clause handling to ... - (finish_omp_clauses): ... the caller. - -2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118920 - * cp-tree.h (equal_abi_tags): Declare. - * mangle.cc (equal_abi_tags): Make external, fix comparison. - (tree_string_cmp): Make internal. - * module.cc (trees_in::check_abi_tags): New function. - (trees_in::decl_value): Use it. - (trees_in::is_matching_decl): Likewise. - -2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/118920 - * name-lookup.cc (lookup_imported_hidden_friend): Check for - module entity rather than just module import. - * module.cc (get_originating_module): Rename for_mangle parm to - global_m1. - * error.cc (dump_module_suffix): Don't decorate global module decls. - -2025-03-26 Thomas Schwinge <tschwinge@baylibre.com> - Jason Merrill <jason@redhat.com> - - * rtti.cc (throw_bad_typeid): Adjust implicit '__cxa_bad_typeid' - prototype to reality. Adjust all users. - -2025-03-25 Simon Martin <simon@nasilyan.com> - - PR c++/114525 - * typeck2.cc (build_m_component_ref): Call cp_build_addr_expr - instead of build_address. - -2025-03-25 yxj-github-437 <2457369732@qq.com> - - * parser.cc (cp_parser_lambda_expression): Use cp_evaluated. - -2025-03-24 Jason Merrill <jason@redhat.com> - - * semantics.cc (finish_type_pack_element): Pass mce_true to - maybe_constant_value. - -2025-03-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119154 - * decl2.cc (vague_linkage_p): Revert gnu_linkage handling. - * module.cc (importer_interface): New enumeration. - (get_importer_interface): New function. - (trees_out::core_bools): Use it to determine interface. - (trees_in::is_matching_decl): Propagate gnu_inline handling onto - existing forward declarations. - (trees_in::read_var_def): Also note explicit instantiation - definitions of variable templates to be emitted. - -2025-03-22 Patrick Palka <ppalka@redhat.com> - - PR c++/119379 - * pt.cc (tsubst_decl) <case TYPE_DECL>: Preserve structural-ness - of a partially instantiated typedef. - -2025-03-21 Paul-Antoine Arras <parras@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_parser_omp_clause_init): Make addressable. - -2025-03-21 Jason Merrill <jason@redhat.com> - - * init.cc (throw_bad_array_new_length): Returns void. - -2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> - - * rtti.cc (throw_bad_cast): Adjust implicit '__cxa_bad_cast' - prototype to reality. - -2025-03-20 Richard Biener <rguenther@suse.de> - - * module.cc (trees_out::core_bools): Convert scoped enum - explicitly. - -2025-03-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/119370 - * decl2.cc (set_context_for_auto_vars_r): New function. - (emit_partial_init_fini_fn): Call walk_tree with that function - on &init before walk_tree with copy_tree_body_r. - -2025-03-19 Jason Merrill <jason@redhat.com> - - PR c++/119316 - * mangle.cc (write_expression) [NEW_EXPR]: Avoid using - compute_array_index_type. - (write_array_type): Add checking_assert. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - PR target/118068 - * cp-gimplify.cc (cp_fold_immediate): Use cp_walk_tree rather than - cp_walk_tree_without_duplicates. - (cp_fold_immediate_r): For IF_STMT_CONSTEVAL_P IF_STMT don't walk - into THEN_CLAUSE subtree, only ELSE_CLAUSE. For non-call related - stmts call data->pset.add and if it returns true, don't walk subtrees. - (cp_fold_r): Don't call cp_fold_immediate_r here. - (cp_fold_function): For C++20 or later call cp_walk_tree - with cp_fold_immediate_r callback first before calling cp_walk_tree - with cp_fold_r callback and call data.pset.empty () in between. - (cp_fully_fold_init): Likewise. - (cp_genericize_r) <case RETURN_EXPR>: Suppress -Wreturn-type warning - if RETURN_EXPR has erroneous argument. - -2025-03-18 Marek Polacek <polacek@redhat.com> - - PR c++/119344 - * typeck.cc (cp_build_binary_op): Use cp_save_expr instead of save_expr. - -2025-03-18 Jason Merrill <jason@redhat.com> - - PR c++/119194 - * decl2.cc (min_vis_expr_r) [ADDR_EXPR]: New case. - -2025-03-18 Marek Polacek <polacek@redhat.com> - - PR c++/118104 - * pt.cc (use_pack_expansion_extra_args_p): Remove an assert. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR c/116545 - * parser.cc (cp_parser_statement): Call cp_parser_attributes_opt - rather than cp_parser_std_attribute_spec_seq. - (cp_parser_jump_statement): Diagnose gnu::musttail attributes - with no arguments. - -2025-03-18 Patrick Palka <ppalka@redhat.com> - - PR c++/119233 - * pt.cc (mark_template_arguments_used): Also handle member - function pointers. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR target/119120 - * cp-gimplify.cc (cp_genericize_r): Set DECL_NOT_GIMPLE_REG_P - on {REAL,IMAG}PART_EXPR is_gimple_reg operand at -O0 if it is lhs - of a MODIFY_EXPR. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR c++/119150 - * constexpr.cc (cxx_eval_call_expression): For - DECL_IMMEDIATE_FUNCTION_P (fun) set manifestly_const_eval in new_ctx - and new_call to mce_true and set ctx to &new_ctx. - -2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118799 - * module.cc (depset::hash::is_tu_local_entity): Only types, - functions, variables, and template (specialisations) can be - TU-local. Explicit type aliases are TU-local iff the type they - refer to are. - (module_state::write_namespaces): Allow unnamed namespaces in - named modules. - (check_module_decl_linkage): Error for all exported declarations - in an unnamed namespace. - -2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119154 - * decl2.cc (vague_linkage_p): Don't treat gnu_inline functions - as having vague linkage. - * module.cc (trees_out::core_bools): Clear DECL_INTERFACE_KNOWN - for vague-linkage entities. - (read_var_def): Maybe set comdat linkage for imported var - definitions. - (module_state::read_cluster): Use expand_or_defer_fn instead of - ad-hoc linkage management. - (post_load_processing): Likewise. - * semantics.cc (expand_or_defer_fn_1): Don't forget that we had - a definition at all. - -2025-03-12 Marek Polacek <polacek@redhat.com> - - PR c++/117512 - * typeck.cc (cp_build_indirect_ref_1): Only do the *&e -> e - folding if the result would be an lvalue. - -2025-03-12 Simon Martin <simon@nasilyan.com> - - PR c++/110584 - * cp-tree.h (strip_normal_capture_proxy): Declare. - * lambda.cc (strip_normal_capture_proxy): New function to look - through normal capture proxies. - (build_capture_proxy): Use it. - * semantics.cc (process_outer_var_ref): Likewise. - -2025-03-12 Marek Polacek <polacek@redhat.com> - - PR c++/119134 - * pt.cc (check_for_bare_parameter_packs): Check DECL_CONTEXT. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR c++/119076 - * module.cc (trees_out::start): Handle RAW_DATA_CST. - (trees_in::start): Likewise. - (trees_out::core_vals): Likewise. - (trees_in::core_vals): Likewise. - -2025-03-11 Jason Merrill <jason@redhat.com> - - PR c++/119162 - * constexpr.cc (find_deleted_heap_var): New. - (cxx_eval_call_expression): Don't cache a - reference to heap_deleted. - -2025-03-10 Nathaniel Shead <nathanieloshead@gmail.com> - - * module.cc (trees_out::has_tu_local_dep): Also look at the - TI_TEMPLATE if we don't find a dep for a decl. - (depset::hash::is_tu_local_entity): Handle unnamed template - types, treat lambdas specially. - (is_exposure_of_member_type): New function. - (depset::hash::add_dependency): Use it. - (depset::hash::finalize_dependencies): Likewise. - -2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_parser_asm_definition): Make comment more explicit. - (cp_parser_asm_operand_list): Likewise. Also correct the comment - block at the top of the function to reflect reality. - -2025-03-08 Jason Merrill <jason@redhat.com> - Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/114630 - PR c++/114795 - * pt.cc (reopen_tinst_level): Set or clear MK_PURVIEW. - (mark_decl_instantiated): Call set_instantiating_module. - (instantiate_pending_templates): Save and restore module_kind so - it isn't affected by reopen_tinst_level. - -2025-03-07 Marek Polacek <polacek@redhat.com> - - PR c++/118775 - * constexpr.cc (cxx_eval_call_expression): Check tree_fits_uhwi_p. - -2025-03-07 Nathaniel Shead <nathanieloshead@gmail.com> - - * constexpr.cc (potential_constant_expression_1): Handle - TU_LOCAL_ENTITY. - * pt.cc (expr_contains_tu_local_entity): Remove. - (function_contains_tu_local_entity): Remove. - (dependent_operand_p): Remove special handling for - TU_LOCAL_ENTITY. - (tsubst_expr): Handle TU_LOCAL_ENTITY when tsubsting OVERLOADs; - remove now-unnecessary extra handling. - (type_dependent_expression_p): Handle TU_LOCAL_ENTITY. - -2025-03-06 Simon Martin <simon@nasilyan.com> - - * cp-tree.h (processing_contract_condition): Fix comment typo, - paramter -> parameter. - * parser.cc (cp_parser_requires_expression): Fix comment typo, - delared -> declared. - -2025-03-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/98533 - PR c++/119123 - * parser.cc (cp_parser_class_specifier): Update TYPE_FIELDS of - variant types in case cp_parser_late_parsing_default_args etc. change - TYPE_FIELDS on the main variant. Add switch_to_class lambda and - use it to simplify repeated class switching code. - -2025-03-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/119138 - * pt.cc (apply_late_template_attributes): Set p to NULL if - ATTR_FLAG_TYPE_IN_PLACE is not set in attr_flags. - (tsubst) <case POINTER_TYPE, case REFERENCE_TYPE, case ARRAY_TYPE>: - Reuse original type even if TYPE_ATTRIBUTES is non-NULL, but all - the attributes are non-dependent. - -2025-03-06 Simon Martin <simon@nasilyan.com> - - PR c++/117504 - * call.cc (perform_implicit_conversion_flags): Don't call - mark_{l,r}value_use. - -2025-03-05 Jason Merrill <jason@redhat.com> - Jakub Jelinek <jakub@redhat.com> - - PR c++/117364 - PR c++/118874 - * coroutines.cc (cp_coroutine_transform::build_ramp_function): For - !aggregate_value_p return force return value into a local temp. - -2025-03-05 Da Xie <xxie_xd@163.com> - - PR c++/100589 - * decl.cc (grokdeclarator): Issue an error for a declarator with - constrained auto type specifier and trailing return types. Include - function names if available. - -2025-03-05 Simon Martin <simon@nasilyan.com> - - PR c++/116740 - * name-lookup.cc (set_identifier_type_value_with_scope): Don't - fail assert with ill-formed input. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR c++/119102 - * module.cc (enum streamed_extensions): Add SE_OPENMP_SIMD - and SE_OPENACC, change value of SE_OPENMP and SE_BITS. - (CASE_OMP_SIMD_CODE, CASE_OMP_CODE, CASE_OACC_CODE): Define. - (trees_out::start): Don't set SE_OPENMP extension for OMP_CLAUSE. - Set SE_OPENMP_SIMD extension for CASE_OMP_SIMD_CODE, SE_OPENMP - for CASE_OMP_CODE and SE_OPENACC for CASE_OACC_CODE. - (trees_in::start): Don't fail for OMP_CLAUSE with missing - SE_OPENMP extension. Do fail for CASE_OMP_SIMD_CODE and missing - SE_OPENMP_SIMD extension, or CASE_OMP_CODE and missing SE_OPENMP - extension, or CASE_OACC_CODE and missing SE_OPENACC extension. - (module_state::write_readme): Write all of SE_OPENMP_SIMD, SE_OPENMP - and SE_OPENACC extensions. - (module_state::read_config): Diagnose missing -fopenmp, -fopenmp-simd - and/or -fopenacc depending on extensions used. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - * typeck.cc (check_return_expr): Fix comment typo, rom -> from. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR c++/118787 - * pt.cc (tsubst) <case ARRAY_TYPE>: Use return t; only if it doesn't - have any TYPE_ATTRIBUTES. Call apply_late_template_attributes. - <case POINTER_TYPE, case REFERENCE_TYPE>: Likewise. Formatting fix. - -2025-03-04 Jason Merrill <jason@redhat.com> - - PR c++/119073 - * call.cc (extend_temps_r): Preserve types of COND_EXPR arms. - -2025-03-04 Marek Polacek <polacek@redhat.com> - - PR c++/109431 - * cp-tree.h (range_expr_nelts): Declare. - * init.cc (build_vec_init): If the CONSTRUCTOR's index is a - RANGE_EXPR, use range_expr_nelts to count how many elements - were initialized. - -2025-02-28 Marek Polacek <polacek@redhat.com> - - PR c++/114913 - PR c++/110822 - * constexpr.cc (replace_decl_r): If we've replaced something - inside of an ADDR_EXPR, call cxx_mark_addressable and - recompute_tree_invariant_for_addr_expr on the resulting ADDR_EXPR. - -2025-02-28 Marek Polacek <polacek@redhat.com> - - PR c++/118986 - * constexpr.cc (cxx_eval_call_expression): Check that the types match - before calling replace_decl, if not, set *non_constant_p. - (maybe_constant_init_1): Don't strip INIT_EXPR if it would change the - type of the expression. - -2025-02-28 Patrick Palka <ppalka@redhat.com> - - PR c++/119038 - * lambda.cc (maybe_generic_this_capture): Consider xobj - member functions as well, not just iobj. Update function - comment. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/119045 - * constexpr.cc (cxx_eval_store_expression) <case REALPART_EXPR>: - Assert that refs->is_empty () rather than probe == target. - (cxx_eval_store_expression) <case IMAGPART_EXPR>: Likewise. - -2025-02-27 Marek Polacek <polacek@redhat.com> - - PR c++/118928 - * constexpr.cc (cxx_eval_constant_expression) <case GOTO_EXPR>: Remove - an assert. - -2025-02-27 Marek Polacek <polacek@redhat.com> - - PR c++/118516 - * parser.cc (cp_parser_template_argument): Don't call - require_potential_constant_expression. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/118876 - * cp-tree.h (register_dtor_fn): Add a bool argument defaulted to false. - * decl.cc (start_cleanup_fn): Add OMP_TARGET argument, use - "__omp_tcf" prefix rather than "__tcf" in that case. Add - "omp declare target" and "omp declare target nohost" attributes - to the fndecl. - (register_dtor_fn): Add OMP_TARGET argument, pass it down to - start_cleanup_fn. - * decl2.cc (one_static_initialization_or_destruction): Add OMP_TARGET - argument, pass it down to register_dtor_fn. - (emit_partial_init_fini_fn): Pass omp_target to - one_static_initialization_or_destruction. - (handle_tls_init): Pass false to - one_static_initialization_or_destruction. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/118923 - * tree.cc (get_internal_target_expr): Use force_target_expr - instead of build_target_expr_with_type. - * typeck.cc (get_member_function_from_ptrfunc): Use - get_internal_target_expr instead of force_target_expr. - * decl.cc (cp_finish_decl): Likewise. - * method.cc (build_comparison_op): Likewise. - -2025-02-22 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_finish_omp_declare_variant): Initialize - append_args_last. - -2025-02-17 Jason Merrill <jason@redhat.com> - - PR c++/118856 - PR c++/118763 - * cp-tree.h (TARGET_EXPR_INTERNAL_P): New. - * call.cc (extend_temps_r): Check it instead of CLEANUP_EH_ONLY. - * tree.cc (get_internal_target_expr): Set it instead. - * typeck2.cc (maybe_push_temp_cleanup): Don't set CLEANUP_EH_ONLY. - -2025-02-15 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118846 - * cp-tree.h (WILDCARD_TYPE_P): Include UNBOUND_CLASS_TEMPLATE. - * decl2.cc (min_vis_expr_r): Don't assume a TEMPLATE_DECL will - be a function or variable. - -2025-02-15 Jason Merrill <jason@redhat.com> - - PR c++/118053 - * constexpr.cc (cxx_eval_constant_expression): Generalize - DECL_VALUE_EXPR invisiref handling. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - * pt.cc (tsubst_expr) <COMPONENT_REF>: Assign the result of - force_paren_expr. - -2025-02-14 Jason Merrill <jason@redhat.com> - - PR c++/118856 - * call.cc (set_up_extended_ref_temp): Retain a TARGET_EXPR for - cleanups if something later in initialization throws. - (extend_temps_r): Don't extend eliding or EH-only TARGET_EXPRs. - * cp-tree.h (get_internal_target_expr): Declare. - * tree.cc (get_internal_target_expr): New. - * decl.cc (cp_finish_decomp, expand_static_init): Use it. - * except.cc (build_throw): Likewise. - * init.cc (build_new_1, build_vec_init, build_delete): Likewise. - (build_vec_delete): Likewise. - * typeck2.cc (maybe_push_temp_cleanup): Likewise. - -2025-02-14 Jason Merrill <jason@redhat.com> - - * init.cc (perform_member_init): Remove unicode from comment. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/116379 - * pt.cc (tsubst_expr) <COMPONENT_REF>: Use force_paren_expr to set - REF_PARENTHESIZED_P. - -2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> - - * lambda.cc (record_lambda_scope): Clear mangling scope for - otherwise unattached lambdas in class member templates. - -2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/107741 - * cp-tree.h (is_static_data_member_initialized_in_class): - Declare new predicate. - * decl2.cc (start_initialized_static_member): Push the - TEMPLATE_DECL when appropriate. - (is_static_data_member_initialized_in_class): New predicate. - (finish_initialized_static_member): Use it. - * lambda.cc (record_lambda_scope): Likewise. - * parser.cc (cp_parser_init_declarator): Start the member decl - early for static members so that lambda scope is set. - (cp_parser_template_declaration_after_parameters): Don't - register in-class initialized static members here. - -2025-02-13 Jason Merrill <jason@redhat.com> - - * tree.cc (handle_init_priority_attribute): Use OPT_prio_ctor_dtor. - -2025-02-13 Jason Merrill <jason@redhat.com> - - * decl.cc (omp_declare_variant_finalize_one): Use forward_parm. - -2025-02-13 Jason Merrill <jason@redhat.com> - - PR c++/118856 - * call.cc (struct extend_temps_data): Add var_map. - (extend_all_temps): Adjust. - (set_up_extended_ref_temp): Make walk_data void*. - (extend_temps_r): Remap variables. Handle pset here. - Extend all TARGET_EXPRs. - -2025-02-13 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118849 - * decl2.cc (min_vis_expr_r): Constrain visibility according to - the type of decl_constant_var_p decls. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/118822 - PR c++/118833 - * semantics.cc (adjust_loop_decl_cond): Allow multiple trailing - CLEANUP_STMT levels in *BODY_P. Set *CLEANUP_P to the number - of levels rather than one particular cleanup, keep the cleanups - in *PREP_P. Set *BODY_P to the last stmt in the cur_stmt_list - or NULL if *CLEANUP_P and the innermost cur_stmt_list is empty. - (finish_loop_cond_prep): New function. - (finish_while_stmt, finish_for_stmt): Use it. Don't call - set_one_cleanup_loc. - * constexpr.cc (cxx_eval_loop_expr): Adjust handling of - {FOR,WHILE}_COND_{PREP,CLEANUP}. - -2025-02-11 Jason Merrill <jason@redhat.com> - - PR c++/118574 - PR c++/107637 - * call.cc (struct extend_temps_data): New. - (extend_temps_r, extend_all_temps): New. - (set_up_extended_ref_temp): Handle tree walk case. - (extend_ref_init_temps): Cal extend_all_temps. - * decl.cc (initialize_local_var): Revert ext-temps change. - * parser.cc (cp_convert_range_for): Likewise. - (cp_parser_omp_loop_nest): Likewise. - * pt.cc (tsubst_stmt): Likewise. - * semantics.cc (finish_for_stmt): Likewise. - -2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_finish_omp_declare_variant): Update call to - omp_check_context_selector. - (cp_parser_omp_metadirective): Likewise. - -2025-02-11 Simon Martin <simon@nasilyan.com> - - PR c++/118306 - PR c++/118304 - * decl.cc (maybe_strip_indirect_ref): New. - (check_special_function_return_type): Take declarator as input. - Call maybe_strip_indirect_ref and error out if it returns true. - (grokdeclarator): Update call to - check_special_function_return_type. - -2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118807 - * pt.cc (reregister_specialization): Remove spec from - DECL_TEMPLATE_INSTANTIATIONS. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/115586 - * parser.cc (cp_parser_range_for): For name independent decls in - structured bindings, only push the name/binding once per - structured binding. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c++/86769 - * semantics.cc (set_one_cleanup_loc): New function. - (set_cleanup_locs): Use it. - (simplify_loop_decl_cond): Remove. - (adjust_loop_decl_cond): New function. - (begin_while_stmt): Add 2 further NULL_TREE operands to build_stmt. - (finish_while_stmt_cond): Call adjust_loop_decl_cond instead of - simplify_loop_decl_cond. - (finish_while_stmt): Call do_poplevel also on WHILE_COND_PREP if - non-NULL and also use pop_stmt_list rather than do_poplevel for - WHILE_BODY in that case. Call set_one_cleanup_loc. - (begin_for_stmt): Add 2 further NULL_TREE operands to build_stmt. - (finish_for_cond): Call adjust_loop_decl_cond instead of - simplify_loop_decl_cond. - (finish_for_stmt): Call do_poplevel also on FOR_COND_PREP if non-NULL - and also use pop_stmt_list rather than do_poplevel for FOR_BODY in - that case. Call set_one_cleanup_loc. - * constexpr.cc (cxx_eval_loop_expr): Handle - {WHILE,FOR}_COND_{PREP,CLEANUP}. - (check_for_return_continue): Handle {WHILE,FOR}_COND_PREP. - (potential_constant_expression_1): RECUR on - {WHILE,FOR}_COND_{PREP,CLEANUP}. - -2025-02-07 Marek Polacek <polacek@redhat.com> - - PR c++/117106 - PR c++/118190 - * pt.cc (maybe_instantiate_noexcept): Give an error if the noexcept - hasn't been parsed yet. - -2025-02-07 Simon Martin <simon@nasilyan.com> - - PR c++/118282 - * call.cc (add_builtin_candidate): Also check for null_ptr_cst_p - operands. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118763 - * init.cc (build_new_1): Don't set CLEANUP_EH_ONLY. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118773 - * decl.cc (grokdeclarator): Use cplus_decl_attributes rather than - decl_attributes for std_attributes on pointer and array types. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118661 - * constexpr.cc (potential_constant_expression_1): Don't diagnose - lvalue-to-rvalue conversion of volatile lvalue if it has NULLPTR_TYPE. - * decl2.cc (decl_maybe_constant_var_p): Return true for constexpr - decls with NULLPTR_TYPE even if they are volatile. - -2025-02-05 Simon Martin <simon@nasilyan.com> - - PR c++/118319 - * decl.cc (grokfndecl): Inspect all friend function parameters. - If it's not valid for them to have a default value and we're - processing a template, set the default value to error_mark_node - and give a hard error. - -2025-02-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/118671 - * call.cc (build_list_conv): For RAW_DATA_CST, call - implicit_conversion with INTEGER_CST representing first byte instead - of the whole RAW_DATA_CST. If it is an optimizable trivial - conversion, just save that to subconvs, otherwise allocate an - artificial ck_list for all the RAW_DATA_CST bytes and create - subsubconv for each of them. - (convert_like_internal): For ck_list with RAW_DATA_CST, instead of - doing all the checks for optimizable conversion just check kind and - assert everything else, otherwise use subsubconversions instead of - the subconversion for each element. - -2025-02-04 Marek Polacek <polacek@redhat.com> - - PR c++/117778 - * parser.cc (cp_parser_late_return_type_opt): Maybe override - auto_is_implicit_function_template_parm_p. - (cp_parser_parameter_declaration): Move a make_temp_override below. - -2025-02-04 Marek Polacek <polacek@redhat.com> - - PR c++/118718 - * parser.cc (warn_about_ambiguous_parse): Don't warn when a trailing - return type is present. - -2025-02-04 Simon Martin <simon@nasilyan.com> - Jason Merrill <jason@redhat.com> - - PR c++/117114 - PR c++/109918 - * class.cc (warn_hidden): Keep track of overloaded and of hidden - base methods. - * error.cc (location_of): Skip over conv_op_marker. - -2025-02-04 Simon Martin <simon@nasilyan.com> - - PR c++/114619 - * init.cc (build_vec_init): Properly determine whether - digest_init has been called. - -2025-02-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/118719 - * lambda.cc (add_capture): Only pedwarn about capturing structured - binding if !explicit_init_p. - -2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/108205 - * contracts.cc (get_pseudo_contract_violation_type): Give names - to generated FIELD_DECLs. - (declare_handle_contract_violation): Mark contract_violation - type as external linkage. - (build_contract_handler_call): Ensure any builtin declarations - created here aren't treated as attached to the current module. - -2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/98893 - * decl.cc (start_cleanup_fn): Make name from the mangled name of - the passed-in decl. - (register_dtor_fn): Pass decl to start_cleanup_fn. - -2025-02-03 A J Ryan Solutions Ltd <gcc.gnu.org@ajryansolutions.co.uk> - - PR c++/118265 - * pt.cc (find_parameter_packs_r) <case TEMPLATE_PARM_INDEX>: - Walk into the type of a parameter pack. - -2025-02-03 Iain Sandoe <iains.gcc@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/116506 - PR c++/116880 - * coroutines.cc (build_co_await): Ensure that xvalues are - materialised. Handle references/pointer values in awaiter - access expressions. - (is_stable_lvalue): New. - * decl.cc (cxx_maybe_build_cleanup): Handle null arg. - -2025-02-03 Jason Merrill <jason@redhat.com> - - PR c++/116914 - PR c++/117231 - PR c++/118470 - PR c++/118491 - * semantics.cc (finish_for_stmt): Don't wrap the result of - pop_stmt_list in EXPR_STMT. - -2025-02-03 Richard Biener <rguenther@suse.de> - - PR c++/79786 - * rtti.cc (emit_tinfo_decl): Fix DATA_ABI_ALIGNMENT invocation. - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR c++/117516 - * class.cc (field_nonempty_p): Formatting fixes. Use - integer_zerop instead of tree_int_cst_equal with size_zero_node. - (struct flexmems_t): Change type of first member from tree to bool. - (find_flexarrays): Add nested_p argument. Change pun argument type - from tree to bool, adjust uses. Formatting fixes. If BASE_P or - NESTED_P and T is RECORD_TYPE, start looking only at the last - non-empty or array FIELD_DECL. Adjust recursive call, set first - if it was a nested call and found an array. - (diagnose_invalid_flexarray, diagnose_flexarrays, check_flexarrays): - Formatting fixes. - -2025-01-31 Marek Polacek <polacek@redhat.com> - - PR c++/117501 - * cp-gimplify.cc (cp_build_init_expr_for_ctor): New. - (cp_fold_immediate_r): Call it. - (cp_fold): Break out code into cp_build_init_expr_for_ctor. - -2025-01-30 Patrick Palka <ppalka@redhat.com> - - * cp-tree.h (LAMBDA_EXPR_CAPTURES_THIS_P): Remove. - -2025-01-30 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/118673 - * tree.cc (lvalue_kind): Mark CONST_DECLs as mergable - when they are also TREE_STATIC. - -2025-01-30 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_finish_omp_declare_variant): Modify how append_args - is saved internally. - * pt.cc (tsubst_attribute): Likewise. - (tsubst_omp_clauses): Remove C_ORT_OMP_DECLARE_SIMD from interop - handling as no longer called for it. - * decl.cc (omp_declare_variant_finalize_one): Update append_args - changes; fixes for ADL input. - -2025-01-29 Jakub Jelinek <jakub@redhat.com> - - PR c++/118655 - * semantics.cc (trait_expr_value) <case CPTK_IS_BOUNDED_ARRAY>: Return - false for zero-sized arrays. - -2025-01-28 Jason Merrill <jason@redhat.com> - - PR c++/118285 - * constexpr.cc (cxx_eval_vec_init_1): Build INIT_EXPR for - initializing a class. - -2025-01-28 Jason Merrill <jason@redhat.com> - - PR c++/118673 - * call.cc (maybe_init_list_as_array): Check for lvalue - initializers. - * cp-tree.h (enum cp_lvalue_kind_flags): Add clk_mergeable. - * tree.cc (lvalue_kind): Return it. - (non_mergeable_glvalue_p): New. - (test_lvalue_kind): Adjust. - -2025-01-28 Patrick Palka <ppalka@redhat.com> - - PR c++/117855 - * cp-tree.h (DECL_FRIEND_CONTEXT): Exclude deduction guides. - -2025-01-27 Jason Merrill <jason@redhat.com> - - PR c++/118632 - * pt.cc (unify): Only strip conversion if deducible_expression. - -2025-01-27 Simon Martin <simon@nasilyan.com> - - PR c++/114292 - * pt.cc (for_each_template_parm_r) <INTEGER_TYPE>: Remove case - now handled by cp_walk_subtrees. - * tree.cc (cp_walk_subtrees): Walk the type of DECL_EXPR - declarations, as well as the TYPE_{MIN,MAX}_VALUE of - INTEGER_TYPEs. - -2025-01-27 John David Anglin <danglin@gcc.gnu.org> - - * module.cc: Test HAVE_MUNMAP and HAVE_MSYNC instead of - _POSIX_MAPPED_FILES > 0. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * module.cc (module_state::write_inits): Verify - STATIC_INIT_DECOMP_{,NON}BASE_P flags and stream changes in those - out. - (module_state::read_inits): Stream those flags in. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * cp-tree.h (STATIC_INIT_DECOMP_BASE_P): Define. - (STATIC_INIT_DECOMP_NONBASE_P): Define. - * decl.cc (cp_finish_decl): Mark nodes in {static,tls}_aggregates - emitted for namespace scope structured bindings with - STATIC_INIT_DECOMP_{,NON}BASE_P flags when needed. - * decl2.cc (decomp_handle_one_var, decomp_finalize_var_list): New - functions. - (emit_partial_init_fini_fn): Use them. - (prune_vars_needing_no_initialization): Assert - STATIC_INIT_DECOMP_*BASE_P is not set on DECL_EXTERNAL vars to be - pruned out. - (partition_vars_for_init_fini): Use same priority for - consecutive STATIC_INIT_DECOMP_*BASE_P vars and propagate - those flags to new TREE_LISTs when possible. Formatting fix. - (handle_tls_init): Use decomp_handle_one_var and - decomp_finalize_var_list functions. - -2025-01-25 Simon Martin <simon@nasilyan.com> - - PR c++/118239 - * constexpr.cc (cx_check_missing_mem_inits): Don't skip fields - with DECL_FIELD_IS_BASE. - -2025-01-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/117827 - * init.cc (build_new_1): Pass address of a make_tree_vector () - initialized gc tree vector to build_vec_init and append - build_disable_temp_cleanup to init_expr from it. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/116568 - * module.cc (trees_out::get_merge_kind): Treat all lambdas - without a mangling scope as un-mergeable. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/116568 - * cp-tree.h (finish_concept_definition): Adjust parameters. - (start_concept_definition): Declare. - * module.cc (depset::hash::is_tu_local_entity): Use - LAMBDA_EXPR_EXTRA_SCOPE to detect TU-local lambdas. - * parser.cc (cp_parser_concept_definition): Start a lambda scope - for concept definitions. - * pt.cc (tsubst_lambda_expr): Namespace-scope lambdas may now - have extra scope. - (finish_concept_definition): Split into... - (start_concept_definition): ...this new function. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118245 - * cp-tree.h (LAMBDA_EXPR_EXTRA_SCOPE): Adjust comment. - * parser.cc (cp_parser_class_head): Start (and do not finish) - lambda scope for all valid types. - (cp_parser_class_specifier): Finish lambda scope after parsing - members instead. - * pt.cc (instantiate_class_template): Add lambda scoping. - -2025-01-24 Marek Polacek <polacek@redhat.com> - - PR c++/117153 - * decl2.cc (build_anon_union_vars): Use FIELD for the second operand - of a COMPONENT_REF. - -2025-01-23 Marek Polacek <polacek@redhat.com> - - PR c++/117602 - * cp-tree.h (current_nonlambda_scope): Add a default argument. - * lambda.cc (current_nonlambda_scope): New bool parameter. Use it. - * parser.cc (cp_parser_lambda_introducer): Use current_nonlambda_scope - to check if the lambda is non-local. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR c++/118590 - * typeck.cc (build_omp_array_section): If array_expr is type dependent - or a TYPE_DECL, build OMP_ARRAY_SECTION with NULL type. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR c++/118604 - * parser.cc (cp_parser_omp_metadirective): Test !default_p - first and use strcmp () != 0 rather than !strcmp () == 0. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - * mangle.cc (write_expression): Update mangling for lambdas. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/107741 - * cp-tree.h (start_initialized_static_member): Declare. - (finish_initialized_static_member): Declare. - * decl2.cc (start_initialized_static_member): New function. - (finish_initialized_static_member): New function. - * lambda.cc (record_lambda_scope): Support falling back to old - ABI (maybe with warning). - * parser.cc (cp_parser_member_declaration): Build decl early - when parsing an initialized static data member. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118582 - * module.cc (trees_out::decl_value): Always stream - imported_temploid_friends information. - (trees_in::decl_value): Likewise. - -2025-01-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * decl.cc: Partially implement CWG 2867 - Order of initialization - for structured bindings. - (cp_finish_decl): If need_decomp_init, for function scope structure - binding bases, temporarily clear stmts_are_full_exprs_p before - calling expand_static_init, after it call cp_finish_decomp and wrap - code emitted by both into maybe_cleanup_point_expr_void and ensure - cp_finish_decomp isn't called again. - -2025-01-22 Marek Polacek <polacek@redhat.com> - - PR c++/118396 - * constexpr.cc (cxx_eval_outermost_constant_expr): Add an error call - when !allow_non_constant. - -2025-01-22 Simon Martin <simon@nasilyan.com> - - PR c++/118199 - * typeck2.cc (split_nonconstant_init_1): Clear - TARGET_EXPR_ELIDING_P if we need to use a copy constructor - because of __no_unique_address__. - -2025-01-22 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_parser_objc_message_args): Use tree_cons with - nreverse at the end for both sel_args and addl_args, instead of - chainon with build_tree_list second argument. - -2025-01-22 Jakub Jelinek <jakub@redhat.com> - - * call.cc (add_list_candidates): Use append_ctor_to_tree_vector. - -2025-01-22 Patrick Palka <ppalka@redhat.com> - - PR c++/116756 - * lambda.cc (lambda_expr_this_capture): Call - retrieve_local_specialization on the result of - LAMBDA_EXPR_THIS_CAPTURE for a generic lambda. - * parser.cc (cp_parser_lambda_expression): Don't clear - LAMBDA_EXPR_THIS_CAPTURE. - * pt.cc (tsubst_stmt) <case DECL_EXPR>: Don't overwrite - LAMBDA_EXPR_THIS_CAPTURE with the specialized capture. - (tsubst_lambda_expr): Don't clear LAMBDA_EXPR_THIS_CAPTURE - afterward. - -2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/118525 - * cp-gimplify.cc (cp_fold): Check operands of unary, binary, cond/vec_cond - and array_ref for error_mark before checking if the operands had changed. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - PR objc++/118586 - * parser.cc (cp_parser_objc_message_args): Handle CPP_EMBED. - -2025-01-21 Marek Polacek <polacek@redhat.com> - - PR c++/118396 - PR c++/118523 - * constexpr.cc (cxx_eval_outermost_constant_expr): For non-simple - TARGET_EXPRs, return ctx.ctor rather than the result of - cxx_eval_constant_expression. If TYPE and the type of R don't - match, return the original expression. - -2025-01-21 Simon Martin <simon@nasilyan.com> - - PR c++/118225 - * typeck.cc (build_class_member_access_expr): Let errors that - that have been reported go through. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_lexer_new_main): Attempt to optimize large sequences - of CPP_NUMBER with int type and values 0-255 separated by CPP_COMMA - into CPP_EMBED with RAW_DATA_CST u.value. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - * cp-objcp-common.cc (names_builtin_p): Return 1 for RID_VA_ARG. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - PR c++/118532 - * call.cc (add_list_candidates): Handle RAW_DATA_CST among init_list - elts. - * error.cc (dump_expr_init_vec): Handle RAW_DATA_CST among v elts. - -2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> - - * parser.cc (cp_parser_decomposition_declaration): Check linkage - of structured bindings in modules. - * tree.cc (decl_linkage): Structured bindings don't necessarily - have no linkage. - -2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118101 - * module.cc (trees_in::decl_value): Use structural equality when - deduping partial specs with mismatching canonical types. - -2025-01-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/118513 - * decl2.cc (copy_linkage): If not TREE_PUBLIC, also set - DECL_INTERFACE_KNOWN, assert it was set on decl and copy - DECL_NOT_REALLY_EXTERN flags. - -2025-01-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/118534 - * constexpr.cc (find_array_ctor_elt): Don't return i early if - i == end - 1 and the last elt's value is RAW_DATA_CST. - -2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118049 - * module.cc (trees_in::is_matching_decl): Propagate - FNDECL_USED_AUTO as well. - -2025-01-17 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118321 - * decl.cc (omp_declare_variant_finalize_one): Shift adjust_args index - by one for non-static class function's 'this' pointer. - -2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118147 - * parser.cc (cp_parser_cache_defarg): Don't error when - CPP_PRAGMA_EOL. - -2025-01-17 Simon Martin <simon@nasilyan.com> - - PR c++/118255 - * name-lookup.cc (pushdecl): Don't call check_template_shadow - for hidden bindings. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/105440 - * constexpr.cc (cxx_eval_call_expression): If any RESULT_DECLs get - replaced in the call result, try further evaluating the result. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/107522 - * constraint.cc (get_normalized_constraints_from_decl): Use the - most general template for an explicit specialization of a - member template. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/118454 - * cp-tree.h (STF_KEEP_INJ_CLASS_NAME): Define. - * pt.cc (iterative_hash_template_argument) <case tcc_type>: - Clarify comment for when we'd see an alias template - specialization here. - (coerce_template_parms): Strip typedefs (except for - injected-class-names) in the pack expansion early break cases - that defer coercion. - * tree.cc (strip_typedefs): Don't strip an injected-class-name - if STF_KEEP_INJ_CLASS_NAME is set. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/116417 - * cp-tree.h (finish_pseudo_destructor_expr): Add complain - parameter. - * parser.cc (cp_parser_postfix_dot_deref_expression): Pass - complain=tf_warning_or_error to finish_pseudo_destructor_expr. - * pt.cc (tsubst_expr): Pass complain to - finish_pseudo_destructor_expr. - * semantics.cc (finish_pseudo_destructor_expr): Check complain - before emitting a diagnostic. - -2025-01-16 Simon Martin <simon@nasilyan.com> - - PR c++/117775 - * decl.cc (fold_sizeof_expr): Make sure the folded result has - type size_type_node. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * parser.cc (cp_parser_omp_assumption_clauses): Give a more specific - error message for invalid directives vs unknown names. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * decl2.cc (cplus_decl_attributes): Don't add "omp declare target - block". - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - - PR middle-end/112779 - PR middle-end/113904 - * cp-tree.h (struct saved_scope): Add new field - x_processing_omp_trait_property_expr. - (processing_omp_trait_property_expr): New. - * parser.cc (cp_parser_skip_to_end_of_block_or_statement): Add - metadirective_p parameter and handle skipping over the parentheses - in a "for" statement. - (struct omp_metadirective_parse_data): New. - (mangle_metadirective_region_label): New. - (cp_parser_label_for_labeled_statement): Mangle label names in a - metadirective body. - (cp_parser_jump_statement): Likewise. - (cp_parser_omp_context_selector): Allow arbitrary expressions in - device_num and condition properties. - (cp_parser_omp_assumption_clauses): Handle C_OMP_DIR_META. - (analyze_metadirective_body): New. - (cp_parser_omp_metadirective): New. - (cp_parser_pragma): Handle PRAGMA_OMP_METADIRECTIVE. - * parser.h (struct cp_parser): Add omp_metadirective_state field. - * pt.cc (tsubst_omp_context_selector): New. - (tsubst_stmt): Handle OMP_METADIRECTIVE. - * semantics.cc (finish_id_expression_1): Don't diagnose use of - parameter outside function body in dynamic selector expressions here. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - PR c++/118214 - * decl.cc (struct reshape_iter): Add raw_idx member. - (cp_maybe_split_raw_data): Add inc_cur parameter, set *inc_cur, - don't modify original CONSTRUCTOR, use d->raw_idx to track index - into a RAW_DATA_CST d->cur->value. - (consume_init): Adjust cp_maybe_split_raw_data caller, increment - d->cur when cur_inc is true. - (reshape_init_array_1): Don't modify original CONSTRUCTOR when - handling RAW_DATA_CST d->cur->value and !reuse, instead use - d->raw_idx to track index into RAW_DATA_CST. - (reshape_single_init): Initialize iter.raw_idx. - (reshape_init_class): Adjust for introduction of d->raw_idx, - adjust cp_maybe_split_raw_data caller, do d->cur++ if inc_cur - rather than when it returns non-NULL. - (reshape_init_r): Check for has_designator_problem for second - half of _Complex earlier, also check for - error_operand_p (d->cur->value). Use consume_init instead of - cp_maybe_split_raw_data with later conditional d->cur++. - (reshape_init): Initialize d.raw_idx. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - * parser.cc (cp_parser_lambda_declarator_opt, - cp_parser_statement, cp_parser_selection_statement, - cp_parser_jump_statement): Use -std=c++23 and -std=gnu++23 - in diagnostics rather than -std=c++2b and -std=gnu++2b. - * semantics.cc (finish_compound_literal): Likewise. - * typeck2.cc (build_functional_cast_1): Likewise. - * decl.cc (start_decl): Likewise. - * constexpr.cc (ensure_literal_type_for_constexpr_object, - potential_constant_expression_1): Likewise. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118390 - * cp-tree.h (count_ctor_elements): Declare. - * call.cc (count_ctor_elements): No longer static. - * pt.cc (unify): Use count_ctor_elements instead of - CONSTRUCTOR_NELTS. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118278 - * mangle.cc (write_expression): Handle RAW_DATA_CST. - -2025-01-15 Marek Polacek <polacek@redhat.com> - - PR c++/118139 - * cxx-pretty-print.cc (pp_cxx_nested_name_specifier): Handle - a computed-type-specifier. - -2025-01-15 Tobias Burnus <tburnus@baylibre.com> - - PR c++/118486 - * decl.cc (omp_declare_variant_finalize_one): When resolving - the variant to use, handle variant calls with TARGET_EXPR. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118387 - * method.cc (build_comparison_op): Set bad if - std::strong_ordering::equal doesn't convert to rettype. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118124 - * cp-tree.h (build_array_of_n_type): Change second argument type - from int to unsigned HOST_WIDE_INT. - * tree.cc (build_array_of_n_type): Likewise. - * call.cc (count_ctor_elements): New function. - (maybe_init_list_as_array): Use it instead of CONSTRUCTOR_NELTS. - (convert_like_internal): Use length from init's type instead of - len when handling the maybe_init_list_as_array case. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118124 - * call.cc (convert_like_internal): Handle RAW_DATA_CST in - ck_list handling. Formatting fixes. - -2025-01-14 Marek Polacek <polacek@redhat.com> - - PR c++/118047 - PR c++/118355 - * typeck2.cc (massage_init_elt): Call fold_non_dependent_init - unless for a CONSTRUCTOR in a template. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Marcel Vollweiler <marcel@codesourcery.com> - - PR middle-end/114596 - PR middle-end/112779 - PR middle-end/113904 - * decl.cc (omp_declare_variant_finalize_one): Update for changes - to omp-general.h interfaces. - * parser.cc (cp_finish_omp_declare_variant): Likewise. - -2025-01-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117397 - * module.cc (depset::hash::add_deduction_guides): Don't emit - imported deduction guides. - (depset::hash::finalize_dependencies): Add check for any - bindings referring to imported entities. - -2025-01-14 Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/118445 - * constexpr.cc (cxx_eval_constant_expression): Handle VEC_DUPLICATE like - a "normal" unary operator. - (potential_constant_expression_1): Likewise. - -2025-01-11 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/114630 - * module.cc (trees_in::core_vals) <BLOCK>: Chain a new node if - DECL_CHAIN already is set. - -2025-01-11 Jason Merrill <jason@redhat.com> - - * module.cc (trees_out::type_node): Write attributes for - tt_derived_type, not tt_variant_type. - (trees_in::tree_node): Likewise for reading. - -2025-01-11 Jason Merrill <jason@redhat.com> - - * module.cc (trees_in::decl_value): Merge attributes. - -2025-01-10 Paul-Antoine Arras <parras@baylibre.com> - - * parser.cc (cp_parser_pragma): Replace call to cp_parser_omp_dispatch - with cp_parser_omp_construct and check context. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/118387 - * method.cc (genericize_spaceship): For tag == cc_last if - type is not auto just return error_mark_node instead of failing - checking assertion. - -2025-01-10 Jason Merrill <jason@redhat.com> - - * module.cc (trees_out::core_bools): Write replaceable_operator. - (trees_in::core_bools): Read it. - -2025-01-10 Marek Polacek <polacek@redhat.com> - - PR c++/117937 - * pt.cc (tsubst_pack_index): tsubst the pack even when it's not - PACK_EXPANSION_P. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/118277 - * cp-tree.h (finish_asm_string_expression): Declare. - * semantics.cc (finish_asm_string_expression): New function. - (finish_asm_stmt): Use it. - * parser.cc (cp_parser_asm_string_expression): Likewise. - Wrap string into PAREN_EXPR in the ("") case. - (cp_parser_asm_definition): Don't ICE if finish_asm_stmt - returns error_mark_node. - (cp_parser_asm_specification_opt): Revert 2024-06-24 changes. - * pt.cc (tsubst_stmt): Don't ICE if finish_asm_stmt returns - error_mark_node. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - * module.cc (trees_out::core_vals): Note DECL_VALUE_EXPR even for - vars outside of functions. - (trees_in::core_vals): Read in DECL_VALUE_EXPR even for vars outside - of functions. - (trees_out::get_merge_kind): Make DECL_DECOMPOSITION_P MK_unique. - -2025-01-10 Jason Merrill <jason@redhat.com> - - * error.cc (cxx_initialize_diagnostics): Improve comment. - * module.cc (modules): Improve comment. - (get_originating_module): Add function comment. - -2025-01-10 Jason Merrill <jason@redhat.com> - - * module.cc (trees_out::write_function_def): Write returns* flags. - (struct post_process_data): Add returns_* flags. - (trees_in::read_function_def): Set them. - (module_state::read_cluster): Use them. - -2025-01-09 Jason Merrill <jason@redhat.com> - - * decl.cc (check_redeclaration_exception_specification): Be more - lenient about ::operator new. - -2025-01-09 Jason Merrill <jason@redhat.com> - Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - PR c/116060 - * call.cc (standard_conversion): Preserve type name in ck_identity. - (maybe_adjust_type_name): New. - (convert_like_internal): Use it. - Handle -Wsuggest-attribute=format here. - (convert_for_arg_passing): Not here. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/118060 - * constraint.cc (tsubst_valid_expression_requirement): Don't - check convert_to_void during partial substitution. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117887 - * pt.cc (instantiate_template): Set tf_partial if arguments are - dependent. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117925 - * constexpr.cc (potential_constant_expression_1) <case CAST_EXPR>: - Fix check for class conversion to literal type to properly look - through the TREE_LIST operand of a CAST_EXPR. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117925 - * constexpr.cc (cxx_eval_constant_expression) <default>: - Relax ICE when encountering an unexpected tree code into a - checking ICE guarded by flag_checking. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117993 - * search.cc (any_dependent_bases_p): Recurse into bases (of - dependent type) that are not BINFO_DEPENDENT_BASE_P. Document - default argument. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117792 - * pt.cc (type_dependent_expression_p): Consider the dependence - of the address of each template argument of a function - template-id. - -2025-01-08 Jakub Jelinek <jakub@redhat.com> - - PR c++/117825 - * typeck.cc (cp_build_function_call_vec): Don't call - check_function_arguments if complain doesn't have tf_warning bit set. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * cp-tree.h (build_nop): Add CXX_MEM_STAT_INFO. - * typeck.cc (build_nop): Add MEM_STAT_DECL. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * call.cc (implicit_conversion): Check that FROM isn't a reference - if we also got an EXPR argument. - (convert_like_internal): Check that EXPR isn't a reference. - (can_convert_arg): convert_from_reference if needed. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * method.cc (is_stub_object): New. - * cp-tree.h (is_stub_object): Declare. - * error.cc (dump_expr): Use it. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * call.cc (convert_like_internal): Add missing break. - * coroutines.cc (cp_coroutine_transform::build_ramp_function): Build - INIT_EXPR directly. - * decl.cc (omp_declare_variant_finalize_one): Use build_stub_object. - -2025-01-08 Marek Polacek <polacek@redhat.com> - - PR c++/118169 - * typeck2.cc (split_nonconstant_init): Call finish_expr_stmt instead - of add_stmt. - -2025-01-03 Tobias Burnus <tburnus@baylibre.com> - - * parser.cc (cp_parser_omp_var_list_no_open, - cp_parser_omp_var_list): For kind=0 (= OMP_CLAUSE_ERROR), - store also the expression location in the tree list. - (cp_parser_oacc_data_clause_deviceptr, - cp_finish_omp_declare_variant): Use that location instead or - input_location/the before-parsing location. - * semantics.cc (finish_omp_threadprivate): Likewise. - -2025-01-02 Paul-Antoine Arras <parras@baylibre.com> - - * parser.cc (cp_parser_omp_dispatch): Handle INDIRECT_REF. - -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/cp/ChangeLog-2025 b/gcc/cp/ChangeLog-2025 new file mode 100644 index 00000000000..d3f63ff56f7 --- /dev/null +++ b/gcc/cp/ChangeLog-2025 @@ -0,0 +1,5412 @@ +2025-12-29 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/123080 + * parser.cc (cp_parser_skip_to_end_of_statement): Don't abort + implicit templates during tentative parsing. + (cp_parser_lambda_declarator_opt): Add cleanup for + fully_implicit_function_template_p before parsing + trailing_requires_clause. + +2025-12-29 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119097 + PR c++/120005 + * constexpr.cc (potential_constant_expression_1): Fall back to + location from parent expression if needed. + * cp-gimplify.cc (enum fold_flags): Add ff_only_non_odr. + (cp_fold_data::cp_fold_data): Assert invariant for flags. + (cp_fold_omp_clause_refs_r): New function. + (cp_fold_r): Specially handle OMP_CLAUSE_DECL. + (cp_fold_function_non_odr_use): New function. + (cp_fold_non_odr_use_1): New function. + (cp_fold_maybe_rvalue): Fold non-ODR uses when requested. + (cp_fold_non_odr_use): New function. + (fold_caches): Increase number of caches. + (get_fold_cache): Use a new cache for non-ODR use walks. + (cp_fold): Skip most folding for non-ODR use walks; always + fold constant-initialized references; remove dead code to + fold __builtin_source_location. + * cp-tree.h (cp_fold_function_non_odr_use): Declare. + (cp_fold_non_odr_use): Declare. + * decl.cc (finish_function): Fold non-ODR uses before saving + constexpr fundef. Invoke PLUGIN_PRE_GENERICIZE before this + folding. + * ptree.cc (cxx_print_xnode): Handle TU_LOCAL_ENTITY. + * tree.cc (bot_manip): Propagate TREE_CONSTANT. + * typeck2.cc (digest_nsdmi_init): Fold non-ODR uses in NSDMIs. + +2025-12-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * decl.cc (start_preparsed_function): Use + DECL_TEMPLOID_INSTANTIATION instead of + DECL_TEMPLATE_INSTANTIATION to check vague linkage. + * decl2.cc (vague_linkage_p): Likewise. + (c_parse_final_cleanups): Simplify condition. + * pt.cc (non_templated_friend_p): Namespace-scope friend + function declarations without a primary template are still + non-templated. + * semantics.cc (expand_or_defer_fn_1): Also check for temploid + friend functions. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122550 + * decl.cc (member_like_constrained_friend_p): Check that the + friend's enclosing class is an implicit instantiation. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122958 + * pt.cc (maybe_new_partial_specialization): Compare template + parameter lists when checking for existing specializations and + remove flag_concepts check. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/117518 + * parser.cc (cp_parser_lambda_expression): Clear + processing_template_parmlist when parsing lambda body. + +2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> + + * Make-lang.in: Bump GCOV version to 3. + +2025-12-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122994 + * module.cc (depset::disc_bits): New flag + DB_IGNORED_EXPOSURE_BIT. + (depset::is_ignored_exposure_context): New getter. + (depset::hash::ignore_tu_local): Rename to... + (depset::hash::ignore_exposure): ...this, and make private. + (depset::hash::hash): Rename ignore_tu_local. + (depset::hash::ignore_exposure_if): New function. + (trees_out::decl_value): Don't build deps for keyed entities. + (trees_in::decl_value): Handle missing keys. + (trees_out::write_function_def): Use ignore_exposure_if. + (trees_out::write_var_def): Likewise. + (trees_out::write_class_def): Likewise. + (depset::hash::make_dependency): Set DB_IGNORED_EXPOSURE_BIT if + appropriate, or clear it otherwise. + (depset::hash::add_dependency): Rename ignore_tu_local. + (depset::hash::find_dependencies): Set ignore_exposure if in + such a context. + +2025-12-22 Yuao Ma <c8ef@outlook.com> + + PR c++/123261 + * semantics.cc (expand_or_defer_fn_1): Use maybe_constexpr_fn. + +2025-12-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122712 + * module.cc (depset::hash::dep_adl_info): New type. + (depset::hash::dep_adl_entity_list): New work list. + (depset::hash::hash): Create it. + (depset::hash::~hash): Release it. + (trees_out::tree_value): Cache possibly dependent + calls during tree walk. + (depset::hash::add_dependent_adl_entities): New function. + (depset::hash::find_dependencies): Process cached entities. + * name-lookup.cc (name_lookup::tentative): New member. + (name_lookup::name_lookup): Initialize it. + (name_lookup::preserve_state): Propagate tentative from previous + lookup. + (name_lookup::adl_namespace_fns): Don't search imported bindings + during tentative lookup. + (name_lookup::adl_class): Don't attempt to complete class types + during tentative lookup. + (name_lookup::search_adl): Skip type-dependent args and avoid + unnecessary work during tentative lookup. + (lookup_arg_dependent): Add tentative parameter. + * name-lookup.h (lookup_arg_dependent): Likewise. + +2025-12-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/122690 + * tree.cc (implicit_lifetime_type_p): Don't test is_trivially_xible, + instead try to lazily declare dtor and default, copy and move ctors + if needed and check for their triviality and whether they are + deleted. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/91388 + * semantics.cc (finish_static_assert): Suppress -Wreturn-type warnings + in functions with failed assertions. + +2025-12-19 Jason Merrill <jason@redhat.com> + Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/117034 + * parser.cc (maybe_start_implicit_template): Split out from... + (synthesize_implicit_template_parm): ...here. + (cp_parser_template_id): Call it. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + * decl2.cc (mark_single_function): Return false for error_mark_node. + (mark_used): Likewise. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/123044 + * typeck2.cc (build_functional_cast_1): Call convert_from_reference + on template CAST_EXPR to match C-style cast behavior. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122509 + * parser.cc (cp_parser_lookup_name): Use protect=2 instead of + protect=0 when calling lookup_member. + +2025-12-19 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_parser_omp_clause_uses_allocators): Accept + multiple clause-argument-specifications separated by ';'. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/122772 + * tree.cc (cp_stabilize_bitfield_reference): New function. + (cp_stabilize_reference): Use it for stabilization of + clk_bitfield or clk_packed lvalues. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR debug/122968 + * decl.cc (cp_finish_decomp): For structured bindings at namespace + scope which have DECL_HAS_VALUE_EXPR_P set, call early_global_decl + debug hook and put all such structured bindings into + "structured bindings" attribute arguments on the underlying decl. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/122834 + * typeck.cc (cp_compare_floating_point_conversion_ranks): Return + 3 if fmt2->b is 10 except for _Float16 vs. _Decimal128, in that + case return -2. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/123030 + * init.cc (build_vec_init): Call build_vec_delete_1 for -fexceptions + even if just type_build_dtor_call, not only when + TYPE_HAS_NONTRIVIAL_DESTRUCTOR. But register cleanups only + for TYPE_HAS_NONTRIVIAL_DESTRUCTOR. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_build_range_for_decls): If expansion_stmt_p, + where we are setting DECL_DECLARED_CONSTEXPR_P on begin/end, use + const qualified iter_type. + * pt.cc (finish_expansion_stmt): Use build_target_expr_with_type + with cv_unqualified to create it instead of get_target_expr to + make it non-const qualified. When creating VAR_DECLs with + DECL_DECLARED_CONSTEXPR_P, make sure they have const qualified + type unless they are references. + +2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122922 + * module.cc (trees_in::post_types): New member. + (trees_in::trees_in): Initialize it. + (trees_in::~trees_in): Clean it up. + (trees_in::post_process_type): New functions. + (trees_in::tree_node): Save incomplete ARRAY_TYPEs for later + post-processing. + (module_state::read_cluster): Attempt to complete any + ARRAY_TYPEs we saved earlier. + +2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122995 + * name-lookup.cc (maybe_record_mergeable_decl): Don't build a + STAT_HACK for namespaces. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_parser_omp_assumption_clauses): Add + no_openmp_constructs clause. + +2025-12-18 Patrick Palka <ppalka@redhat.com> + + * decl.cc (tag_name) <case none_type>: Return "typename" as if + typename_type. + +2025-12-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/123186 + * parser.cc (cp_parser_template_id): Use TYPE_IDENTIFIER instead of + TYPE_NAME in second build_typename_type argument. + +2025-12-18 Egas Ribeiro <egas.g.ribeiro@gmail.com> + Patrick Palka <ppalka@redhat.com> + + PR c++/122070 + * pt.cc (type_targs_deducible_from): Fall back to + TYPE_TEMPLATE_INFO when TYPE_TEMPLATE_INFO_MAYBE_ALIAS is NULL. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (OMP_TARGET_CLAUSE_MASK): Add + device_type clause. + +2025-12-17 benwu25 <soggysocks206@gmail.com> + + * parser.cc (cp_parser_init_declarator): Adjust comment. + +2025-12-17 benwu25 <soggysocks206@gmail.com> + + PR c++/121443 + * parser.cc (cp_parser_lambda_expression): Clear + in_declarator_p. + +2025-12-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/123075 + * constraint.cc (evaluate_concept_check): Push to an unrelated + scope, but keep the same access context. + * pt.cc (tsubst_lambda_expr): Don't record lambda scopes for + lambdas attached to a concept. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + * parser.cc (cp_parser_template_id): Rebuild instead of modifying + a TYPENAME_TYPE corresponding to a dependently-scoped template. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + * cp-tree.h (TYPENAME_TYPE_TAG_BIT_0): New. + (TYPENAME_TYPE_TAG_BIT_1): New. + (TYPENAME_TYPE_TAG_BIT_2): New. + (TYPENAME_IS_ENUM_P): Use get_typename_tag. + (TYPENAME_IS_CLASS_P): Rename to ... + (TYPENAME_IS_CLASS_OR_STRUCT_P): ... this, and use + get_typename_tag. + (TYPENAME_IS_UNION_P): Use get_typename_tag. + (TYPENAME_IS_RESOLVING_P): Use TREE_LANG_FLAG_3 + instead of _2. + (get_typename_tag): New. + (set_typename_tag): New. + (tag_name): Declare. + * decl.cc (typename_info): Replace bool fields with a single + tag_types field. + (typename_hasher::equal): Adjust. + (build_typename_type): Adjust. + (tag_name): Handle none_type and scope_type. + * error.cc (dump_type) <case TYPENAME_TYPE>: Use tag_name. + * module.cc (trees_out::type_node) <case TYPENAME_TYPE>: Use + get_typename_tag. + * pt.cc (tsubst) <case TYPENAME_TYPE>: Likewise. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + * cp-tree.h (CLASSTYPE_LAMBDA_EXPR): Check CLASS_TYPE_P before + inspecting TYPE_POLYMORPHIC_P. + (TYPE_POLYMORPHIC_P): Restrict to RECORD_TYPE or UNION_TYPE. + Document its use of TREE_LANG_FLAG_2. + * parser.cc (noexcept_override_late_checks): Only + check TYPE_POLYMORPHIC_P on CLASS_TYPE_P types. + * rtti.cc (build_headof): Likewise. + (get_tinfo_ptr_dynamic): Likewise. + (build_typeid): Likewise. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + PR c++/122752 + * pt.cc (tsubst) <case TYPENAME_TYPE>: Allow TYPENAME_TYPE + resolving to another wildcard type. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + PR c++/122668 + PR c++/114764 + * parser.cc (cp_parser_class_specifier): Adjust after + changing the element type of unparsed_noexcepts. Pass + the class type to noexcept_override_late_checks. + (cp_parser_member_declaration): Set + CP_PARSER_FLAGS_DELAY_NOEXCEPT also for templated friends. + (noexcept_override_late_checks): Add class_type parameter. + (cp_parser_single_declaration): Set + CP_PARSER_FLAGS_DELAY_NOEXCEPT also for template friends + at class template scope. + (cp_parser_save_default_args): Push current_class_type + to unparsed_noexcepts. + * parser.h (cp_unparsed_functions_entry::noexcepts): + Change element type to cp_default_arg_entry. + * pt.cc (dependentish_scope_p): Revert r16-5425 change. + +2025-12-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/123128 + * parser.cc (cp_parser_omp_clause_linear): Initialize next to NULL + rather than UNKNOWN_LOCATION. + +2025-12-13 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_parser_omp_clause_reduction): Provide fixit hints + for -Wdeprecated-openmp diagnostics. + (cp_parser_omp_clause_linear): Likewise. + (cp_parser_omp_clause_depend): Likewise. + (cp_parser_omp_clause_map): Likewise. Reset num_commas after the + diagnostics. + (cp_parser_omp_clause_proc_bind): Provide fixit hints for + -Wdeprecated-openmp diagnostics. + (cp_parser_omp_all_clauses): Move -Wdeprecated-openmp diagnostics + for to vs. enter here, add fixit hints for it. + (cp_parser_omp_master):Add MASTER_LOC argument. Provide fixit hints + for -Wdeprecated-openmp diagnostics. + (cp_parser_omp_parallel): Adjust cp_parser_omp_master caller. + (cp_parser_omp_declare_target): Don't emit -Wdeprecated-openmp + warning for to vs. enter here. + (cp_parser_omp_metadirective): Provide fixit hints for + -Wdeprecated-openmp diagnostics. + (cp_parser_omp_construct): Adjust cp_parser_omp_master caller. + +2025-12-12 Nathaniel Shead <nathanieloshead@gmail.com> + + * method.cc (constructible_expr): Emit diagnostics for abstract + types. + * typeck2.cc (abstract_virtuals_error): Use more accurate + wording for default case, and remove extranneous whitespace + in favour of a nesting level. + +2025-12-12 Chung-Lin Tang <cltang@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * parser.cc (cp_parser_omp_clause_uses_allocators): New function. + (cp_parser_omp_clause_name, cp_parser_omp_all_clauses, + OMP_TARGET_CLAUSE_MASK): Handle uses_allocators. + * semantics.cc (finish_omp_clauses): Likewise. + * pt.cc (tsubst_omp_clauses): Likewise. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/123098 + * parser.cc (cp_parser_omp_clause_reduction): Only emit + -Wdeprecated-openmp warning for CPP_MINUS if is_omp. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_parser_omp_clause_reduction, + cp_parser_omp_clause_linear, cp_parser_omp_clause_depend, + cp_parser_omp_clause_map, cp_parser_omp_clause_proc_bind, + cp_parser_omp_master, cp_parser_omp_declare_target, + cp_parser_omp_metadirective): Formatting fixes. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * parser.cc (cp_parser_omp_clause_reduction): Deprecate '-' + operator. + (cp_parser_omp_clause_linear): Deprecate modifiers with parens. + (cp_parser_omp_clause_depend): Deprecate sink and source. + (cp_parser_omp_clause_map): Map clause modifiers + comma-separated. + (cp_parser_omp_declare_target): Deprecate synonymous omp declare + target for omp begin declare target. Deprecate to clause. + (cp_parser_omp_metadirective): Deprecate default clause on + metadirectives. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * parser.cc (cp_parser_postfix_expression): Whitespace. + (cp_parser_builtin_c23_va_start): Ditto. + (cp_parser_omp_clause_proc_bind): Deprecate master affinity. + (cp_parser_omp_master): Deprecate master construct. + +2025-12-10 Jason Merrill <jason@redhat.com> + + * module.cc (maybe_translate_include): Suggest <bits/stdc++.h> + as an alternate for importable standard library headers. + (importable_headers, is_importable_header): New. + +2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + Revert: + 2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * decl.cc (start_preparsed_function): Use + DECL_TEMPLOID_INSTANTIATION instead of + DECL_TEMPLATE_INSTANTIATION to check vague linkage. + * decl2.cc (vague_linkage_p): Likewise. + (c_parse_final_cleanups): Simplify condition. + * semantics.cc (expand_or_defer_fn_1): Also check for temploid + friend functions. + +2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * decl.cc (start_preparsed_function): Use + DECL_TEMPLOID_INSTANTIATION instead of + DECL_TEMPLATE_INSTANTIATION to check vague linkage. + * decl2.cc (vague_linkage_p): Likewise. + (c_parse_final_cleanups): Simplify condition. + * semantics.cc (expand_or_defer_fn_1): Also check for temploid + friend functions. + +2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + * pt.cc (tsubst_expr): Add TARGET_EXPR case with explanatory + comment and gcc_unreachable. + +2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/119343 + * pt.cc (resolve_nondeduced_context): Remove mark_used call. + +2025-12-06 Jakub Jelinek <jakub@redhat.com> + + * decl2.cc (is_late_template_attribute): Call lookup_attribute_spec + on TREE_PURPOSE (attr) rather than name. Only call + attribute_takes_identifier_p if get_attribute_namespace (attr) is + gnu_identifier. + * pt.cc (tsubst_attribute): Only call attribute_takes_identifier_p + if get_attribute_namespace (t) is gnu_identifier. + +2025-12-05 Tobias Burnus <tburnus@baylibre.com> + + * pt.cc (tsubst_omp_clauses): Handle OMP_CLAUSE_DYN_GROUPPRIVATE. + * semantics.cc (finish_omp_clauses): Likewise. + * parser.cc (cp_parser_omp_clause_dyn_groupprivate): New. + (cp_parser_omp_clause_name, cp_parser_omp_all_clauses): + Handle 'dyn_groupprivate' clause. + (OMP_TARGET_CLAUSE_MASK): Add PRAGMA_OMP_CLAUSE_DYN_GROUPPRIVATE; + sort clauses alphabetically. + +2025-12-03 Jason Merrill <jason@redhat.com> + + * pt.cc (dependent_implict_conv_p): Rename to... + (dependent_implicit_conv_p): ...this. + +2025-12-02 Jakub Jelinek <jakub@redhat.com> + + PR c++/122860 + * decl.cc (make_rtl_for_nonlocal_decl): Diagnose taking address + of a hard register decl in its initializer. + (cp_finish_decl): Likewise. + +2025-12-02 Jakub Jelinek <jakub@redhat.com> + + PR c++/122836 + * decl.cc (check_array_designated_initializer): Change ce->index to + error_mark_node after emitting an error for it. + +2025-12-02 Jason Merrill <jason@redhat.com> + + PR c++/122171 + PR c++/112632 + * pt.cc (dependent_implict_conv_p): Split out... + (convert_template_argument): ...from here. + (tsubst_expr) [IMPLICIT_CONV_EXPR]: Use it. + (do_auto_deduction): Call mark_single_function. + +2025-12-02 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (module_state::write_using_directives): Correct + condition. + +2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (trees_out::lang_decl_vals): Stream DECL_CHAIN for + decl_specialization_friend_p functions. + (trees_in::lang_decl_vals): Likewise. + +2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122915 + * module.cc (module_state::write_using_directives): Don't emit + imported using-directives. + (module_state::read_using_directives): Rename + add_using_namespace to add_imported_using_namespace. + * name-lookup.cc (add_using_namespace): Handle imported + using-directives. + (add_imported_using_namespace): Rename to match new + functionality. + * name-lookup.h (add_using_namespace): Rename to... + (add_imported_using_namespace): ...this. + +2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119864 + PR c++/122939 + * module.cc (trees_out::write_function_def): Don't crash on + OMP used-defined type reduction function definitions. + +2025-12-01 Jakub Jelinek <jakub@redhat.com> + + PR c++/122905 + * decl.cc (enum_with_enumerator_for_linkage_p): Only return true + for namespace scope types. + +2025-11-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/122465 + * parser.cc (cp_parser_simple_declaration): Adjust function comment. + Set *maybe_range_for_decl to error_mark_node instead of keeping it + NULL_TREE in error cases or when followed by CPP_COLON. + +2025-11-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119864 + * module.cc (trees_in::read_function_def): Don't call + post_process on OpenMP UDT reductions. + * parser.cc (cp_parser_omp_declare_reduction): Call push_decl + for block_scope, even when processing_template_decl. + +2025-11-29 Eczbek <eczbek.void@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/116952 + * parser.cc (cp_parser_lambda_expression): Revert + r11-8166-ge1666ebd9ad31d change prohibiting lambda in non-type + parameter. + +2025-11-29 Jakub Jelinek <jakub@redhat.com> + + PR c++/122758 + * decl.cc (pop_labels): Don't call adjust_backward_gotos if + processing_template_decl. + (decl_instrument_init_bypass_p): Always return false if + processing_template_decl. + (check_goto_1): Don't push anything to direct_goto vector + if processing_template_decl. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/119969 + * cp-objcp-common.cc (cxx_get_alias_set): Remove special cases + for TYPE_PTRMEMFUNC_P and INDIRECT_TYPE_P for TYPE_PTRMEMFUNC_P. + +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 + * name-lookup.h (expose_existing_namespace): Declare. + * name-lookup.cc (expose_existing_namespace): New function. + (push_namespace): Call it. + * pt.cc (tsubst_friend_function): Likewise. + +2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122789 + * module.cc (trees_out::core_vals): Treat REQUIRES_EXPR + specially and stream the chained decls of its first operand. + (trees_in::core_vals): Likewise. + (trees_out::tree_node): Check the PARM_DECLs we see are what we + expect. + +2025-11-25 Jason Merrill <jason@redhat.com> + + * lang-specs.h: Add @c++-system-module. + * g++spec.cc (lang_specific_driver): Handle --compile-std-module. + +2025-11-24 Marek Polacek <polacek@redhat.com> + + PR c++/119964 + * cp-tree.h (maybe_delete_defaulted_fn): Remove. + * method.cc (maybe_delete_defaulted_fn): Make static. Refactor. If FN + is not explicitly defaulted on its first declaration, emit an error. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122636 + * module.cc (instantiating_tu_local_entity): Don't check + importingness of originating module decl; also check templates. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * constraint.cc (diagnose_trait_expr): + <case CPTK_IS_POINTER_INTERCONVERTIBLE_BASE_OF>: Explain failure + with more detail. + * cp-tree.h (pointer_interconvertible_base_of_p): Add explain + parameter. + * semantics.cc (pointer_interconvertible_base_of_p): Explain why + not. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * constraint.cc (diagnose_trait_expr) + <case CPTK_IS_LAYOUT_COMPATIBLE>: Explain why not. + * cp-tree.h (layout_compatible_type_p): Add explain parameter. + * typeck.cc (layout_compatible_type_p): Add explanations when + returning false. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * constraint.cc (diagnose_trait_expr) + <case CPTK_HAS_UNIQUE_OBJ_REPRESENTATIONS>: Explain failure with + more detail. + * cp-tree.h (type_has_unique_obj_representations): Add explain + parameter. + * tree.cc (record_has_unique_obj_representations): Explain when + returning false. + (type_has_unique_obj_representations): Likewise. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * method.cc (destructible_expr): Add explanation when type is + neither class nor scalar. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * constraint.cc (diagnose_trait_expr): Use t2's location for + is_base_of, is_pointer_interconvertible_base_of, and + is_virtual_base_of. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * constraint.cc (diagnose_trait_expr): Reset input_location. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * typeck.cc (layout_compatible_type_p): Do not check TYPE_SIZE. + +2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> + Julian Brown <julian@codesourcery.com> + waffl3x <waffl3x@baylibre.com> + + * cp-tree.h (struct cp_omp_declare_variant_attr): New. + (struct saved_scope): Add omp_declare_variant_attribute field. + * decl.cc (omp_declare_variant_finalize_one): Add logic to inject + "this" parameter for method calls. + * parser.cc (cp_parser_skip_to_pragma_omp_end_declare_variant): New. + (cp_parser_translation_unit): Handle leftover "begin declare variant" + functions. + (omp_start_variant_function): New. + (omp_finish_variant_function): New. + (omp_maybe_record_variant_base): New. + (cp_parser_init_declarator): Handle variant functions. + (cp_parser_class_specifier): Handle deferred lookup of base functions + when the entire class has been seen. + (cp_parser_member_declaration): Handle variant functions. + (cp_finish_omp_declare_variant): Merge context selectors if in + a "begin declare variant" block. + (cp_parser_omp_begin): Match "omp begin declare variant". Adjust + error messages. + (cp_parser_omp_end): Match "omp end declare variant". + * parser.h (struct omp_begin_declare_variant_map_entry): New. + (struct cp_parser): Add omp_begin_declare_variant_map field. + * semantics.cc (finish_translation_unit): Detect unmatched + "omp begin declare variant". + +2025-11-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/122788 + * pt.cc (finish_expansion_stmt): Or in TREE_USED and DECL_READ_P + flags from range_decl to decl or from corresponding structured binding + to this_decl. + +2025-11-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/122185 + * cp-gimplify.cc (cp_fold) <case CALL_EXPR>: For -ffold-simple-inlines + restore check that both types are INDIRECT_TYPE_P, except for + "to_underlying" check that r has ENUMERAL_TYPE and x has + INTEGRAL_TYPE_P. + +2025-11-22 Daniele Sahebi <daniele@mkryss.me> + Jakub Jelinek <jakub@redhat.com> + + PR c++/122658 + * call.cc (build_over_call): Don't call build_cplus_new in + template declarations. + +2025-11-21 Marek Polacek <polacek@redhat.com> + + PR c++/120529 + * call.cc (ref_conv_binds_to_temporary): Don't ignore access control. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/121445 + * constexpr.cc (build_data_member_initialization): Just return + false if member is COMPONENT_REF of COMPONENT_REF with + VAR_P get_base_address. + +2025-11-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/120876 + * pt.cc (tsubst_baselink): Move maybe_incomplete handling after + !baselink handling. + +2025-11-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/122540 + * decl.cc (start_enum): When setting ENUM_UNDERLYING_TYPE + to integer_type_node during error recovery, also call copy_type_enum. + +2025-11-19 Marek Polacek <polacek@redhat.com> + + PR c++/119580 + * pt.cc (tsubst_baselink): Return error_mark_node if + tsubst_template_args returned error_mark_node. + +2025-11-19 Patrick Palka <ppalka@redhat.com> + + PR c++/122668 + PR c++/114764 + * pt.cc (dependentish_scope_p): Return true for the current + instantiation from within an immediately parsed noexcept-spec. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_parser_conversion_type_id): Implement C++ DR1670 + - auto as conversion-type-id. Pedwarn on conversion operators + with placeholder return type. + +2025-11-18 Jonathan Wakely <jwakely@redhat.com> + + PR c++/122677 + * module.cc (create_dirs): Skip past any leading slashes. + +2025-11-16 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122625 + * module.cc (trees_in::read_var_def): Also track class-scope + primary template specialisations. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * module.cc (trees_out::write_function_def): Check flag consistency. + * pt.cc (mark_decl_instantiated): Ignore TREE_ASM_WRITTEN. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::read_config): Add complain parm. + (module_state::open_slurp): Split out... + (module_state::do_import): ...from here. + (module_state::read_initial): Move begin call to open_slurp. + (module_state::check_importable): New. + (maybe_translate_include): Call it. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * module.cc (transfer_defining_module): Dereference + pointer into hash_map before possible insertion. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * name-lookup.cc (do_nonmember_using_decl): Handle hidden better. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * decl.cc (grokfndecl): Set DECL_CHAIN of a friend f<>. + * module.cc (trees_out::get_merge_kind): Give it MK_local_friend. + (trees_out::decl_container): Its container is the befriender. + (trees_out::key_mergeable): Expand comment. + * cp-tree.h (decl_specialization_friend_p): New. + * friend.cc (do_friend): Use it. + * pt.cc (tsubst_friend_function): Likewise. + +2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122551 + * cp-tree.h (transfer_defining_module): Declare. + * decl.cc (duplicate_decls): Call it for all decls. + Remove now unnecessary equivalent logic for templates. + * module.cc (mangle_module): Add assertion. + (transfer_defining_module): New function. + +2025-11-11 Jason Merrill <jason@redhat.com> + + * name-lookup.cc (name_lookup::adl_namespace_fns): Also skip hidden + in the module case. + +2025-11-11 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::read_cluster): Use set_cfun. + (post_load_processing): Likewise. + +2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122628 + * module.cc (instantiating_tu_local_entity): Add missing + STRIP_TEMPLATEs. + +2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> + + * pt.cc (tsubst_friend_function): Mark all parent namespaces as + purview if needed. + +2025-11-10 Tejas Belagod <tejas.belagod@arm.com> + + * typeck.cc (cp_build_binary_op): Likewise. + * call.cc (build_conditional_expr): Support vector booleans. + * cvt.cc (ocp_convert): Call target hook to resolve conversion + between standard and non-standard booleans. + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/119064 + * cp-tree.h (struct lang_type): Revert 2025-07-11 changes. + (CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT): Remove. + (CLASSTYPE_TRIVIALLY_RELOCATABLE_COMPUTED): Remove. + (CLASSTYPE_REPLACEABLE_BIT): Remove. + (CLASSTYPE_REPLACEABLE_COMPUTED): Remove. + (enum virt_specifier): Revert 2025-07-11 changes. + (trivially_relocatable_type_p): Remove. + (replaceable_type_p): Remove. + * cp-trait.def (IS_NOTHROW_RELOCATABLE): Remove. + (IS_REPLACEABLE): Remove. + (IS_TRIVIALLY_RELOCATABLE): Remove. + * parser.cc (cp_parser_class_specifier, cp_parser_class_head): + Revert 2025-07-11 changes. + * pt.cc (instantiate_class_template): Likewise. + * semantics.cc (trait_expr_value): Likewise. + (finish_trait_expr): Likewise. + * tree.cc (default_movable_type_p): Remove. + (union_with_no_declared_special_member_fns): Remove. + (trivially_relocatable_type_p): Remove. + (replaceable_type_p): Remove. + * constraint.cc (diagnose_trait_expr): Revert 2025-07-11 changes. + * module.cc (trees_out::lang_type_bools): Revert part of + 2025-07-26 changes related to trivial relocatability. + (trees_in::lang_type_bools): Likewise. + * lex.cc (cxx_init): Don't call cpp_warn on + trivially_relocatable_if_eligible and replaceable_if_eligible. + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + * lex.cc (cxx_init): For C++26 call cpp_warn on "indeterminate". + +2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121574 + * cp-tree.h (instantiating_tu_local_entity): Declare. + * module.cc (is_tu_local_entity): Extract from depset::hash. + (is_tu_local_value): Likewise. + (has_tu_local_tmpl_arg): Likewise. + (depset::hash::is_tu_local_entity): Remove. + (depset::hash::has_tu_local_tmpl_arg): Remove. + (depset::hash::is_tu_local_value): Remove. + (instantiating_tu_local_entity): New function. + (depset::hash::add_binding_entity): No longer go through + depset::hash to check is_tu_local_entity. + * pt.cc (complain_about_tu_local_entity): Remove. + (tsubst): Use instantiating_tu_local_entity. + (tsubst_expr): Likewise. + +2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121574 + * module.cc (depset::disc_bits): Replace 'DB_REFS_TU_LOCAL_BIT' + and 'DB_EXPOSURE_BIT' with new four flags + 'DB_{REF,EXPOSE}_{GLOBAL,PURVIEW}_BIT'. + (depset::is_tu_local): Support checking either for only purview + TU-local entities or any entity described TU-local by standard. + (depset::refs_tu_local): Likewise. + (depset::is_exposure): Likewise. + (depset::hash::make_dependency): A constant initialized to a + TU-local variable is always considered a purview exposure. + (is_exposure_of_member_type): Adjust sanity checks to handle if + we ever relax requirements for TU-local types. + (depset::hash::add_dependency): Differentiate referencing + purview or GMF TU-local entities. + (depset::hash::diagnose_bad_internal_ref): New function. + (depset::hash::diagnose_template_names_tu_local): New function. + (depset::hash::finalize_dependencies): Handle new warnings that + might be needed for GMF TU-local entities. + +2025-11-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122253 + * decl2.cc (min_vis_expr_r): Don't mark no-linkage declarations + as VISIBILITY_ANON. + +2025-11-04 David Malcolm <dmalcolm@redhat.com> + + * parser.cc (enum non_integral_constant): Fix typo + "an decrement" -> "a decrement" in comment. + (cp_parser_non_integral_constant_expression): Likewise in error + message. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * name-lookup.cc (name_lookup::adl_class_fns): Include all + namespace-scope friends. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * name-lookup.cc (pushdecl): Discard built-in sooner. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * module.cc (trees_in::decl_value): Don't add an instantiation to + CLASSTYPE_MEMBER_VEC. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::write_namespaces): Handle + TREE_DEPRECATED. + (module_state::read_namespaces): Likewise. + +2025-11-02 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122421 + * module.cc (trees_in::read_var_def): Don't handle class-scope + variables anymore. + (trees_in::read_class_def): Handle them here instead. + +2025-11-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122381 + * module.cc (trees_out::core_vals): Write BASELINK_OPTYPE (aka + TREE_CHAIN). + (trees_in::core_vals): Read it. + +2025-10-30 Jakub Jelinek <jakub@redhat.com> + + * std-name-hint.gperf: Remove duplicate entries for ispanstream + and istringstream. + * std-name-hint.h: Regenerate. + +2025-10-28 Marek Polacek <polacek@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * decl.cc (finish_enum_value_list): Use fold_convert instead of + copy_node. + +2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122422 + * decl.cc (maybe_deduce_size_from_array_init): Propagate type to + corresponding TEMPLATE_DECL. + +2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122310 + * module.cc (get_keyed_decl_scope): New function. + (trees_out::get_merge_kind): Use it. + (trees_out::key_mergeable): Use it. + (maybe_key_decl): Key to the containing type for all members. + +2025-10-27 Paul-Antoine Arras <parras@baylibre.com> + + PR c++/122378 + * parser.cc (cp_parser_label_declaration): Mangle label declaration in a + metadirective region. + +2025-10-21 Jakub Jelinek <jakub@redhat.com> + + * cp-tree.h: Implement C++23 P2674R1 - A trait for implicit lifetime + types. + (implicit_lifetime_type_p): Declare. + * tree.cc (implicit_lifetime_type_p): New function. + * cp-trait.def (IS_IMPLICIT_LIFETIME): New unary trait. + * semantics.cc (trait_expr_value): Handle CPTK_IS_IMPLICIT_LIFETIME. + (finish_trait_expr): Likewise. + * constraint.cc (diagnose_trait_expr): Likewise. + +2025-10-21 Paul-Antoine Arras <parras@baylibre.com> + + PR c/120180 + PR fortran/122306 + * parser.cc (cp_parser_omp_metadirective): Return early if only one + selector matches and it resolves to 'omp nothing'. + (cp_parser_omp_error): Reject 'error at(execution)' in intervening code. + (cp_parser_pragma): Accept a subset of non-executable OpenMP directives + as intervening code. + +2025-10-21 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_parser_omp_assumption_clauses): Switch to + 'unknown' not 'invalid' directive name for end directives. + +2025-10-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119060 + * cxxapi-data.csv: Add observable_checkpoint to <utility>. + * std-name-hint.gperf: Add observable_checkpoint to <utility>. + * std-name-hint.h: Regenerate. + +2025-10-18 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122279 + * module.cc (depset::hash::add_namespace_entities): Seed any + purview using-decls. + (module_state::write_using_directives): Stream if the udir was + exported or not. + (module_state::read_using_directives): Add the using-directive + if it's either exported or part of this module. + +2025-10-14 Patrick Palka <ppalka@redhat.com> + + PR c++/122192 + * parser.cc (cp_parser_mem_initializer_id): Pass class_type + instead of typename_type to cp_parser_class_name in the + nested-name-specifier case. + +2025-10-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/122228 + * decl.cc (cp_make_fname_decl): When not using fname_as_decl, + attempt to translate name into ordinary literal encoding. + +2025-10-13 Jakub Jelinek <jakub@redhat.com> + + * decl.cc (omp_declare_variant_finalize_one): If !nbase_args + and TREE_TYPE (decl) has TYPE_NO_NAMED_ARGS_STDARG_P bit set + and varg is NULL, temporarily set TYPE_NO_NAMED_ARGS_STDARG_P + on TREE_TYPE (variant). + +2025-10-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122163 + * expr.cc (mark_use): When processing a reference, always return + an lvalue reference when !rvalue_p. + +2025-10-10 Patrick Palka <ppalka@redhat.com> + + PR c++/122192 + * decl.cc (make_typename_type): Document base-specifier as + another type-only lookup case. + * parser.cc (cp_parser_class_name): Propagate tag_type to + make_typename_type instead of hardcoding typename_type. + (cp_parser_base_specifier): Pass class_type instead of + typename_type as tag_type to cp_parser_class_name. + +2025-10-09 Jakub Jelinek <jakub@redhat.com> + + * cp-tree.h (cp_build_function_type): Declare. + * lex.cc: Implement va_start changes from P3348R4 - C++26 should + refer to C23 not C17 paper. + (init_reswords): Set D_CXX26 in mask for C++23 and older. + * parser.cc (cp_parser_primary_expression): Handle RID_C23_VA_START. + (cp_parser_builtin_c23_va_start): New function. + * cp-objcp-common.cc (names_builtin_p): Likewise. + * decl.cc (grokfndecl, check_function_type): Pass + TYPE_NO_NAMED_ARGS_STDARG_P as last arg to build_function_type. + (grokdeclarator, static_fn_type): Use cp_build_function_type instead + of build_function_type. + * typeck.cc (merge_types): Likewise. + (structural_comptypes): Return false for TYPE_NO_NAMED_ARGS_STDARG_P + differences. + * lambda.cc (maybe_add_lambda_conv_op): Use cp_build_function_type + instead of build_function_type. + * tree.cc (cp_build_function_type): New function. + (strip_typedefs): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to + build_function_type. + * name-lookup.cc (push_local_extern_decl_alias): Likewise. + * module.cc (trees_in::tree_node): Use cp_build_function_type instead + of build_function_type. + * pt.cc (copy_default_args_to_explicit_spec, + rebuild_function_or_method_type, build_deduction_guide): Likewise. + (alias_ctad_tweaks): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to + build_function_type. + * decl2.cc (change_return_type, cp_reconstruct_complex_type): + Likewise. + +2025-10-09 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/116477 + * semantics.cc (finish_call_expr): Move concept_check_p diagnostic + before processing_template_decl check to catch errors earlier. + +2025-10-09 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Define INCLUDE_VECTOR. + +2025-10-08 Jason Merrill <jason@redhat.com> + + * init.cc (build_new_1): Also clobber for non-placement new. + Only loop clobber in constexpr. + * expr.cc (wrap_with_if_consteval): New. + * cp-tree.h (wrap_with_if_consteval): Declare. + +2025-10-07 Jason Merrill <jason@redhat.com> + + * init.cc (build_new_1): Clobber a constant-bound array as a whole. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * module.cc (trees_out::lang_vals): Fix spelling in comment. + +2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122053 + * name-lookup.cc (pushtag): Load any imported definition of type + before calling pushdecl. + +2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> + + * name-lookup.cc (check_module_override): Remove check for + TREE_PUBLIC when checking mergeable entities. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/114457 + * cp-tree.h: Implement C++26 P2795R5 - Erroneous behavior for + uninitialized reads. + (IF_STMT_VACUOUS_INIT_P): Define. + (check_goto): Change argument type from tree to tree *. + * call.cc (build_over_call): Add indeterminate attribute to + TARGET_EXPR slots for indeterminate parameters. + * constexpr.cc (cxx_eval_internal_function): Handle IFN_DEFERRED_INIT. + (cxx_eval_store_expression): Temporarily work around PR121965 bug. + * cp-gimplify.cc (genericize_if_stmt): Handle IF_STMT_VACUOUS_INIT_P. + (maybe_emit_clobber_object_begin): New function. + (cp_gimplify_expr): Call it for DECL_EXPRs and TARGET_EXPRs with + void type non-NULL TARGET_EXPR_INITIAL. + * decl.cc (struct named_label_fwd_direct_goto, + struct named_label_bck_direct_goto): New types. + (struct named_label_use_entry): Add direct_goto member. Formatting + fix. + (struct named_label_entry): Add direct_goto member. Turn bool members + into bool : 1. Add has_bad_decls bitfield. + (adjust_backward_gotos): New function. + (pop_labels): For flag_auto_var_init > AUTO_INIT_UNINITIALIZED + call adjust_backward_gotos if needed. + (poplevel_named_label_1): For decl_jump_unsafe also set + ent->has_bad_decls, and for decl_instrument_init_bypass_p decls + push them into ent->bad_decls vector too. + (duplicate_decls): Complain if indeterminate attribute on function + parameter isn't present on the first function declaration. + (decl_instrument_init_bypass_p): New function. + (build_deferred_init_call): Likewise. + (maybe_add_deferred_init_calls): Likewise. + (adjust_backward_goto): Likewise. + (check_previous_goto_1): Add direct_goto and case_label arguments. + For decl_instrument_init_bypass_p decls seen if + direct_goto || case_label move case label if needed, call + maybe_add_deferred_init_calls and adjust GOTO_EXPR operands remembered + in direct_goto. Change return type from bool to int, return 0 on + error, 1 for success with no need to adjust vacuous inits and 2 for + success with need to adjust those. + (check_previous_goto): Adjust check_previous_goto_1 call, vec_free + direct_goto vector. + (check_switch_goto): Add case_label argument, adjust + check_previous_goto_1 call. Change return type from bool to int. + (check_goto_1): Remove computed argument, add declp argument. Don't + reuse previous ent->uses if + ent->binding_level != current_binding_level. Push declp into + direct_goto vectors if needed. + (check_goto): Remove decl argument, add declp argument. Adjust + check_goto_1 calls. + (finish_case_label): Call check_switch_goto up to twice, first time + to detect errors and find out if second call will be needed, and + after c_add_case_label second time if needed. In the first case + pass NULL_TREE as new argument to it, in the second case r. + (start_preparsed_function): Don't emit CLOBBER_OBJECT_BEGIN here + for -flifetime-dse=2, instead add "clobber *this" attribute to + current_class_ptr. + * parser.cc (cp_parser_asm_label_list): Call check_goto only + after the TREE_LIST is created and pass address of its TREE_VALUE to + it instead of the label. + * semantics.cc (finish_goto_stmt): Call check_goto only after + build_stmt has been called and pass it address of its first operand + rather than destination. + * tree.cc (handle_indeterminate_attribute): New function. + (cxx_gnu_attributes): Add entry for indeterminate attribute. + +2025-10-04 Jason Merrill <jason@redhat.com> + + PR c++/122127 + PR c++/112632 + * pt.cc (convert_template_argument): Don't add redundant + IMPLICIT_CONV_EXPR. + +2025-10-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117658 + * cp-tree.h (TU_LOCAL_ENTITY_NAME): Clarify meaning. + * module.cc (depset::entity_kind): New enumerator, assert that + we have enough bits reserved. + (depset::disc_bits): Assert the discriminator has enough bits. + (depset::entity_kind_name): Add 'tu-local' case, assert we + have an entry for all relevant entry_kinds. + (name_for_tu_local_decl): New function. + (trees_out::tree_node): Use it. + (depset::hash::make_dependency): Validate EK_TU_LOCAL. + (depset::hash::add_binding_entity): Generate bindings for + internal purview functions. + (enum ct_bind_flags): New enum for TU-local decls. + (depset::hash::find_dependencies): Handle EK_TU_LOCAL entities. + (binding_cmp): Likewise. + (sort_cluster): Likewise. + (module_state::write_cluster): Likewise. + (module_state::read_cluster): Likewise. + * name-lookup.cc (append_imported_binding_slot): Propagate + internal decl list when growing binding vector. + (name_lookup::adl_namespace_fns): Diagnose if naming a TU-local + entity from a different TU. + (set_module_binding): Include any internal decls in binding. + * name-lookup.h (struct module_tree_map_traits): New type. + (struct tree_binding_vec): Add member 'internal_decls'. + (BINDING_VECTOR_INTERNAL_DECLS): New getter. + (MODULE_BINDING_INTERNAL_DECLS_P): New flag. + (set_module_binding): Add parameter. + +2025-10-03 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/122112 + * parser.cc (cp_parser_parameter_declaration_clause): Don't + enable auto_is_implicit_function_template_parm_p when entering + class scope. + +2025-10-01 Iain Sandoe <iain@sandoe.co.uk> + + * constexpr.cc (cxx_eval_constant_expression): Use revised + interfaces to determine if contracts are ignored and, if not, + whether they are evaluated. + * contracts.h (contract_ignored_p, contract_evaluated_p): New. + +2025-10-01 Jan Hubicka <hubicka@ucw.cz> + + * Make-lang.in: Add c++_FDAS + (create_fdas_for_cc1plus): Be sure that build fails if create_gcov fails. + +2025-09-27 Jason Merrill <jason@redhat.com> + + PR c++/112632 + * pt.cc (convert_template_argument): Also force IMPLICIT_CONV_EXPR + if the argument is value-dependent. + +2025-09-27 Jason Merrill <jason@redhat.com> + + PR c++/122048 + * pt.cc (tsubst_expr): Don't use a lambda current_class_ptr. + +2025-09-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122015 + PR c++/122019 + * module.cc (trees_in::install_entity): Remove incorrect + assertion. + +2025-09-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122019 + * module.cc (trees_in::install_entity): Don't be affected by + global language linkage state. + (trees_in::is_matching_decl): Check mismatching language linkage + for variables too. + (module_may_redeclare): Report the correct module name for + partitions and implementation units. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * class.cc (resolve_address_of_overloaded_function): Updated to use + dijoint_versions_decls instead of common_function_version hook. + * decl.cc (decls_match): Refacture to use disjoint_version_decls and + to pass through conflicting_version argument. + (maybe_version_functions): Updated to use + disjoint_version_decls instead of common_function_version hook. + (duplicate_decls): Add logic to handle conflicting unmergable decls + and improve diagnostics for conflicting versions. + * decl2.cc (check_classfn): Updated to use + disjoint_version_decls instead of common_function_version hook. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * cxx-pretty-print.h (pp_cxx_function_target_version): New macro. + (pp_cxx_function_target_clones): Ditto. + (pp_cxx_maybe_whitespace): Ditto. + * error.cc (dump_function_decl): Add printing of target_clone and + target_version in decl diagnostics. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + PR target/118313 + * call.cc (add_candidates): Change to not resolve non-default versions + in target_version semantics. + * class.cc (resolve_address_of_overloaded_function): Ditto. + * cp-gimplify.cc (cp_genericize_r): Change logic to not apply for + target_version semantics. + * decl.cc (maybe_mark_function_versioned): Remove static. + * cp-tree.h (maybe_mark_function_versioned): New function. + * decl2.cc (cplus_decl_attributes ): Change to mark and therefore + mangle all target_version decls in target_version semantics. + * typeck.cc (cp_build_function_call_vec): Add error for calling + unresolvable non-default node in target_version semantics. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * decl.cc (maybe_mark_function_versioned): Change to insert function version + and therefore record assembler name. + +2025-09-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122015 + * cp-tree.h (make_auto_pack): Declare. + * lambda.cc (lambda_capture_field_type): Use make_auto_pack to + ensure TYPE_CANONICAL is set correctly. + * pt.cc (make_auto_pack): New function. + +2025-09-20 Patrick Palka <ppalka@redhat.com> + + PR c++/121981 + * pt.cc (any_template_parm_r) <case TEMPLATE_TYPE_PARM>: + Don't walk TREE_TYPE. + +2025-09-20 Eczbek <eczbek.void@gmail.com> + + PR c++/119048 + * lambda.cc (compare_lambda_sig): Only skip first parameter for + object members. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * constexpr.cc (cxx_eval_component_reference): Clarify diagnostic. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * init.cc (build_new_1): Clobber classes. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * constexpr.cc (get_or_insert_ctor_field): -2 means don't insert. + (cxx_eval_component_reference): Handle finding void_node. + (cxx_eval_store_expression): Don't represent initial clobber + unless we need to activate a union member. + (cxx_eval_statement_list): Don't ask for a void prvalue. + (cxx_eval_loop_expr): The expr is discarded-value. + (cxx_eval_constant_expression): A loose clobber is non-constant. + Handle getting void_node instead of a real result. + (potential_constant_expression_1): A local temp is + potentially-constant. + * init.cc (build_new_1): Don't clobber empty types or + in a template. + (build_vec_init): Fix clobber handling. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * init.cc (build_new_1): Append alloc_node to checking COND_EXPR. + +2025-09-17 David Malcolm <dmalcolm@redhat.com> + + PR c++/121966 + * call.cc (print_z_candidate): Consolidate instances of + auto_diagnostic_nesting_level into one, above the "inherited here" + message so that any such message is nested within the note, + and any messages emitted due to the switch on rejection_reason are + similarly nested within the note. + +2025-09-17 David Malcolm <dmalcolm@redhat.com> + + PR c++/121966 + * call.cc (print_z_candidates): Copy the filtering logic on viable + candidates from the printing loop to the counting loop, so that + num_candidates matches the number of iterations of the latter + loop. + +2025-09-15 Matthias Kretz <m.kretz@gsi.de> + + * mangle.cc (write_real_cst): Replace 8 spaces with Tab. + +2025-09-12 Patrick Palka <ppalka@redhat.com> + + PR c++/121795 + * pt.cc (unify) <case PACK_INDEX_TYPE>: New non-deduced context + case. + +2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121893 + * name-lookup.cc (name_lookup::adl_namespace_fns): Unwrap the + STAT_HACK also when on_inst_path. + +2025-09-11 H.J. Lu <hjl.tools@gmail.com> + + PR c++/121889 + * decl2.cc (cplus_decl_attributes): Don't upgrade TLS model if + TLS model isn't set yet. + +2025-09-10 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121859 + * constraint.cc (maybe_diagnose_standard_trait): Check if expr + is non-null. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + * mangle.cc (write_real_cst): Mangle Intel/Motorola extended + 80-bit formats using 20 hex digits instead of 24 or 32. + +2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/99682 + PR c++/121808 + * module.cc (class module_state): Add comment to 'parent'. + (module_state::check_not_purview): Rename to... + (module_state::check_circular_import): ...this. Only handle + interface dependencies, adjust diagnostic message. + (module_state::read_imports): Use new function. Pass location + of import as from_loc instead of the module location. + (module_state::do_import): Set module_p when importing the + primary interface for the current module. + (import_module): Split out check for imports in own unit. + Remove incorrect assertion. + (preprocess_module): Don't overwrite module-decl location with + later import. + +2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (this_module): New function. + (import_entity_module): Use it. + (trees_out::decl_node): Likewise. + (get_module): Likewise. + (module_state::check_not_purview): Likewise. + (module_state::read_imports): Likewise. + (module_state::read_using_directives): Likewise. + (module_state::read_initial): Likewise. + (get_import_bitmap): Likewise. + (module_may_redeclare): Likewise. + (direct_import): Likewise. + (declare_module): Likewise. + (name_pending_imports): Likewise. + (preprocess_module): Likewise. + (finish_module_processing): Likewise. + (late_finish_module): Likewise. + +2025-09-09 Patrick Palka <ppalka@redhat.com> + + PR c++/121779 + * tree.cc (build_min_non_dep_op_overload): Handle comparison + operator expressions rewritten from a <=> that returns a + non-class type. + +2025-09-09 Matthias Kretz <m.kretz@gsi.de> + + PR c++/121801 + * mangle.cc (write_real_cst): Handle 16-bit real and assert + that reals have 16 bits or a multiple of 32 bits. + +2025-09-07 H.J. Lu <hjl.tools@gmail.com> + + PR c++/107393 + * decl.cc (grokvardecl): Set a tentative TLS model which will be + updated by cplus_decl_attributes later. + * decl2.cc (cplus_decl_attributes): Update TLS model with the + default TLS access model if the default TLS access model is + stronger. + * pt.cc (tsubst_decl): Set TLS model only after processing a + variable. + +2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121702 + * module.cc (enum module_state_counts): New counter. + (depset::hash::add_namespace_entities): Seed using-directive + targets for later streaming. + (module_state::write_namespaces): Don't handle using-directives + here. + (module_state::read_namespaces): Likewise. + (module_state::write_using_directives): New function. + (module_state::read_using_directives): New function. + (module_state::write_counts): Log using-directives. + (module_state::read_counts): Likewise. + (module_state::write_begin): Stream using-directives. + (module_state::read_language): Read using-directives if + directly importing. + (module_state::direct_import): Update current TU import list + before calling read_language. + * name-lookup.cc (add_using_namespace): Fix lookup of previous + using-directives. + * parser.cc (cp_parser_import_declaration): Don't set + MK_EXPORTING when performing import_module. + +2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121705 + PR c++/117658 + * module.cc (depset::hash::make_dependency): Make bindings for + GM functions. + (depset::hash::add_binding_entity): Adjust comment. + (depset::hash::add_deduction_guides): Add log. + * ptree.cc (cxx_print_xnode): Handle friend functions where + TI_TEMPLATE is an OVERLOAD or IDENTIFIER. + +2025-09-05 Jakub Jelinek <jakub@redhat.com> + + * constexpr.cc (cxx_eval_cxa_builtin_fn): Add missing word separating + space into invalid_nargs diagnostics. + +2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117658 + * cp-tree.h (get_originating_module): Adjust parameter names. + * module.cc (path_of_instantiation): Handle C++26 expansion + statements. + * name-lookup.cc (name_lookup::adl_namespace_fns): Handle + exported declarations attached to the same module of an + associated entity with the same innermost non-inline namespace, + and non-exported functions on the instantiation path. + (name_lookup::search_adl): Build mapping of namespace to modules + that associated entities are attached to; remove now-unneeded + instantiation path handling. + +2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121724 + * name-lookup.cc (push_namespace): Mark inline namespace + contexts as purview if needed. + +2025-09-03 Patrick Palka <ppalka@redhat.com> + + PR c++/97740 + * pt.cc (tsubst_expr) <case COMPONENT_REF>: Don't check access + when the given member is already a FIELD_DECL. + +2025-09-02 Iain Sandoe <iain@sandoe.co.uk> + + * constexpr.cc: Include contracts.h + * coroutines.cc: Likewise. + * cp-gimplify.cc: Likewise. + * decl.cc: Likewise. + * decl2.cc: Likewise. + * mangle.cc: Likewise. + * module.cc: Likewise. + * pt.cc: Likewise. + * search.cc: Likewise. + * semantics.cc: Likewise. + * contracts.cc (validate_contract_role, setup_default_contract_role, + add_contract_role, get_concrete_axiom_semantic, + get_default_contract_role): Make static. + * cp-tree.h (make_postcondition_variable, grok_contract, + finish_contract_condition, find_contract, set_decl_contracts, + get_contract_semantic, set_contract_semantic): Move to contracts.h. + * contracts.h (get_contract_role, add_contract_role, + validate_contract_role, setup_default_contract_role, + lookup_concrete_semantic, get_default_contract_role): Remove. + +2025-08-29 Sirui Mu <msrlancern@gmail.com> + + * typeck.cc (cp_build_array_ref): Handle 0[arr] earlier. + +2025-08-28 Jason Merrill <jason@redhat.com> + + PR c++/107953 + * parser.cc (cp_parser_lambda_expression): Set + greater_than_is_operator_p. + +2025-08-28 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119844 + * typeck2.cc (cxx_incomplete_type_inform): Add explanation when + a similar type is complete but attached to a different module. + Also fix handling of partial specs and templates. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/121583 + * semantics.cc (apply_deduced_return_type): Adjust + fun->returns*_struct when !uses_template_parms (fco) instead of + when !processing_template_decl. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c++/121575 + * pt.cc (tsubst_expr) <case PARM_DECL>: If DECL_CONTEXT (t) isn't a + template return t for PARM_DECLs without local specialization. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118839 + * decl.cc (omp_declare_variant_finalize_one): Error if variant + is the same as base. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_finish_omp_declare_variant): Structure diagnostic + code similarly to C front end. Make check for a missing "match" + clause unconditional. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + * pt.cc (finish_expansion_stmt): Implement C++ CWG3048 + - Empty destructuring expansion statements. Don't error for + destructuring expansion stmts if sz is 0, don't call + fit_decomposition_lang_decl if n is 0 and pass NULL rather than + this_decomp to cp_finish_decl. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/121601 + * constexpr.cc (cxx_bind_parameters_in_call): Move break + if *jump_target before the check for null this object pointer. + +2025-08-23 Eczbek <eczbek.void@gmail.com> + + PR c++/116928 + * parser.cc (cp_parser_braced_list): Set greater_than_is_operator_p. + +2025-08-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120499 + * method.cc (synthesize_method): Set the instantiating module. + +2025-08-21 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * constexpr.cc (cxx_eval_store_expression): Allow clobber of a const + object. + +2025-08-21 Jason Merrill <jason@redhat.com> + + PR c++/120757 + * pt.cc (tsubst_expr) [OFFSET_REF]: Don't tsubst the type. + +2025-08-20 Marek Polacek <polacek@redhat.com> + + PR c++/121553 + * name-lookup.cc (check_local_shadow): Check !is_normal_capture_proxy. + +2025-08-19 Ben Wu <soggysocks206@gmail.com> + + PR c++/120618 + * parser.cc (cp_parser_compound_requirement): Set type to + NULL_TREE for invalid type-constraint. + +2025-08-19 Patrick Palka <ppalka@redhat.com> + + PR c++/121351 + * class.cc (add_method): Use outer_template_args when + substituting outer template arguments into constraints. + +2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120195 + * name-lookup.cc (do_nonmember_using_decl): Also handle change + in exportedness of a function. + +2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> + + * typeck.cc (get_member_function_from_ptrfunc): Use + 'sanitize_code_type' instead of 'unsigned int'. + +2025-08-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120503 + PR c++/120824 + * cp-tree.h (TYPE_UNNAMED_P): Adjust for enums with enumerators + for linkage purposes. + (enum_with_enumerator_for_linkage_p): Declare. + * decl.cc (name_unnamed_type): Adjust assertions to handle enums + with enumerators for linkage purposes. + (grokdeclarator): Use a typedef name for enums with enumerators + for linkage purposes. + (enum_with_enumerator_for_linkage_p): New function. + (finish_enum_value_list): Reset type linkage for enums with + enumerators for linkage purposes. + * mangle.cc (write_unnamed_enum_name): New function. + (write_unqualified_name): Handle enums with enumerators for + linkage purposes. + * tree.cc (decl_linkage): Fixup unnamed enums. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + * cp-trait.def (STRUCTURED_BINDING_SIZE): New unary trait. + * cp-tree.h (finish_structured_binding_size): Declare. + * semantics.cc (trait_expr_value): Handle + CPTK_STRUCTURED_BINDING_SIZE. + (finish_structured_binding_size): New function. + (finish_trait_expr): Handle CPTK_RANK and CPTK_TYPE_ORDER + in the switch instead of just doing break; for those and + ifs at the end to handle them. Handle CPTK_STRUCTURED_BINDING_SIZE. + * pt.cc (tsubst_expr): Likewise. + * constraint.cc (diagnose_trait_expr): Likewise. + * decl.cc (get_tuple_size): Use mce_true for maybe_const_value. + (cp_decomp_size): Diagnose incomplete types not just if + processing_template_decl, and use error_at instead of pedwarn. + If btype is NULL, just return 0 instead of diagnosing an error. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121552 + * decl.cc: Implement C++20 P1766R1 - Mitigating minor modules maladies. + (diagnose_non_c_class_typedef_for_linkage, + maybe_diagnose_non_c_class_typedef_for_linkage): New functions. + (name_unnamed_type): Call + maybe_diagnose_non_c_class_typedef_for_linkage. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121539 + * parser.cc (cp_parser_cache_defarg): Set done to true for + CPP_ELLIPSIS followed by CPP_CLOSE_PAREN in !nsdmi at depth 0. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + PR target/121520 + * lex.cc (cxx_init): Remove warn_on lambda. Use cpp_warn instead of + cpp_lookup and NODE_WARN bit setting or warn_on. + +2025-08-14 Jakub Jelinek <jakub@redhat.com> + + PR c++/121524 + * tree.cc (build_cplus_array_type): Don't reuse variant type + if it has TREE_DEPRECATED or TREE_UNAVAILABLE flags set or, + unless elt_type has TYPE_USER_ALIGN set and TYPE_ALIGN is + TYPE_ALIGN of elt_type, TYPE_USER_ALIGN is not set. + +2025-08-13 Marek Polacek <polacek@redhat.com> + + PR c++/102610 + * cp-tree.h (LAMBDA_EXPR_CONST_QUAL_P): Define. + (maybe_add_dummy_lambda_op): Declare. + (remove_dummy_lambda_op): Declare. + (push_capture_proxies): Adjust. + * lambda.cc (build_capture_proxy): No longer static. New early_p + parameter. Use it. + (add_capture): Adjust the call to build_capture_proxy. + (resolvable_dummy_lambda): Check DECL_LAMBDA_FUNCTION_P. + (push_capture_proxies): New. + (start_lambda_function): Use it. + * name-lookup.cc (check_local_shadow): Give an error for + is_capture_proxy. + (cp_binding_level_descriptor): Add lambda-scope. + (begin_scope) <case sk_lambda>: New case. + * name-lookup.h (enum scope_kind): Add sk_lambda. + (struct cp_binding_level): Widen kind. + * parser.cc (cp_parser_lambda_expression): Create a new (lambda) scope + after the lambda-introducer. + (cp_parser_lambda_declarator_opt): Set LAMBDA_EXPR_CONST_QUAL_P. + Create a dummy operator() if needed. Inject the captures into the + lambda scope. Remove the dummy operator(). + (make_dummy_lambda_op): New. + (maybe_add_dummy_lambda_op): New. + (remove_dummy_lambda_op): New. + * pt.cc (tsubst_lambda_expr): Begin/end a lambda scope. Push the + capture proxies. Build/remove a dummy operator() if needed. Set + LAMBDA_EXPR_CONST_QUAL_P. + * semantics.cc (parsing_lambda_declarator): New. + (outer_var_p): Also consider captures as outer variables if in a lambda + declarator. + (process_outer_var_ref): Reset containing_function when + parsing_lambda_declarator. + (finish_decltype_type): Process decls in the lambda-declarator as well. + Look at LAMBDA_EXPR_CONST_QUAL_P unless we have an xobj function. + +2025-08-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/120776 + * cp-tree.def: Implement C++26 P1306R5 - Expansion statements. + (TEMPLATE_FOR_STMT): New tree code. + * cp-tree.h (struct saved_scope): Add expansion_stmt. + (in_expansion_stmt): Define. + (TEMPLATE_FOR_DECL, TEMPLATE_FOR_EXPR, TEMPLATE_FOR_BODY, + TEMPLATE_FOR_SCOPE, TEMPLATE_FOR_INIT_STMT): Define. + (struct tinst_level): Adjust comment. + (cp_decomp_size, finish_expansion_stmt, do_pushlevel, + cp_build_range_for_decls, build_range_temp, + cp_perform_range_for_lookup, begin_template_for_scope): Declare. + (finish_range_for_stmt): Remove declaration. + * cp-objcp-common.cc (cp_common_init_ts): Handle TEMPLATE_FOR_STMT. + * name-lookup.h (enum scope_kind): Add sk_template_for enumerator. + (struct cp_binding_level): Enlarge kind bitfield from 4 to 5 bits. + Adjust comment with remaining space bits. + * name-lookup.cc (check_local_shadow): Handle sk_template_for like + sk_for. + (cp_binding_level_descriptor): Add entry for sk_template_for. + (begin_scope): Handle sk_template_for. + * parser.h (IN_EXPANSION_STMT): Define. + * parser.cc (cp_debug_parser): Print IN_EXPANSION_STMT bit. + (cp_parser_lambda_expression): Temporarily clear in_expansion_stmt. + (cp_parser_statement): Handle RID_TEMPLATE followed by RID_FOR for + C++11. + (cp_parser_label_for_labeled_statement): Complain about named labels + inside of expansion stmt body. + (cp_hide_range_decl): New function. + (cp_parser_range_for): Use it. Adjust do_range_for_auto_deduction + caller. Remove second template argument from auto_vecs bindings and + names. + (build_range_temp): No longer static. + (do_range_for_auto_deduction): Add expansion_stmt argument. + (cp_build_range_for_decls): New function. + (cp_convert_range_for): Use it. Call cp_perform_range_for_lookup + rather than cp_parser_perform_range_for_lookup. + (cp_parser_perform_range_for_lookup): Rename to ... + (cp_perform_range_for_lookup): ... this. No longer static. Add + complain argument and handle it. + (cp_parser_range_for_member_function): Rename to ... + (cp_range_for_member_function): ... this. + (cp_parser_expansion_statement): New function. + (cp_parser_jump_statement): Handle IN_EXPANSION_STMT. + (cp_convert_omp_range_for): Adjust do_range_for_auto_deduction caller. + Call cp_perform_range_for_lookup rather than + cp_parser_perform_range_for_lookup. + * error.cc (print_instantiation_full_context): Handle tldcl being + TEMPLATE_FOR_STMT. + (print_instantiation_partial_context_line): Likewise. + * constexpr.cc (potential_constant_expression_1): Handle + TEMPLATE_FOR_STMT. + * decl.cc (poplevel_named_label_1): Use obl instead of bl->level_chain. + (finish_case_label): Diagnose case labels inside of template for. + (find_decomp_class_base): Add complain argument, don't diagnose + anything and just return error_mark_node if tf_none, adjust recursive + call. + (cp_decomp_size): New function. + (cp_finish_decomp): Adjust find_decomp_class_base caller. + * semantics.cc (do_pushlevel): No longer static. + (begin_template_for_scope): New function. + * pt.cc (push_tinst_level_loc): Handle TEMPLATE_FOR_STMT. + (reopen_tinst_level): Likewise. + (tsubst_stmt): Handle TEMPLATE_FOR_STMT. + (struct expansion_stmt_bc): New type. + (expansion_stmt_find_bc_r, finish_expansion_stmt): New functions. + * decl2.cc (decl_dependent_p): Return true for current function's decl + if in_expansion_stmt. + * call.cc (extend_ref_init_temps): Don't extend_all_temps if + TREE_STATIC (decl). + * cxx-pretty-print.cc (cxx_pretty_printer::statement): Handle + TEMPLATE_FOR_STMT. + +2025-08-13 Benjamin Wu <bwu25@cs.washington.edu> + + * lex.cc (init_operators): Fix typo. + +2025-08-11 Nicolas Werner <nicolas.werner@hotmail.de> + + * mapper-client.cc (spawn_mapper_program): change argv parsing + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * decl.cc (set_sb_pack_name): For name independent decls + just clear DECL_NAME instead of appending #i to it. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * decl.cc (cp_finish_decomp): Don't sorry on tuple static + structured bindings with a pack, instead temporarily reset + DECL_NAME of the individual vars in the pack to the name + of the pack for cp_finish_decl time and force mangling. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/121442 + * parser.cc (cp_parser_decomposition_declaration): Don't copy + DECL_DECLARED_CONST{EXPR,INIT}_P bits from decl to decl2 if + decl is error_mark_node. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + * error.cc (cp_adjust_diagnostic_info): Convert "context" arg from + ptr to const &. + +2025-08-07 Patrick Palka <ppalka@redhat.com> + + * call.cc (extract_call_expr): Remove handling of C++20 + rewritten comparison operators. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * parser.cc: Implement C++26 P1061R10 - Structured Bindings can + introduce a Pack. + (cp_parser_range_for): Also handle TREE_VEC as DECL_VALUE_EXPR + instead of ARRAY_REF. + (cp_parser_decomposition_declaration): Use sb-identifier-list instead + of identifier-list in comments. Parse structured bindings with + structured binding pack. Don't emit pedwarn about structured + binding attributes in structured bindings inside of a condition. + (cp_convert_omp_range_for): Also handle TREE_VEC as DECL_VALUE_EXPR + instead of ARRAY_REF. + * decl.cc (get_tuple_element_type): Change i argument type from + unsigned to unsigned HOST_WIDE_INT. + (get_tuple_decomp_init): Likewise. + (set_sb_pack_name): New function. + (cp_finish_decomp): Handle structured binding packs. + * pt.cc (tsubst_pack_expansion): Handle structured binding packs + and capture proxies for them. Formatting fixes. + (tsubst_decl): For structured binding packs don't tsubst TREE_TYPE + first, instead recreate the type after r is created. + (tsubst_omp_for_iterator): Also handle TREE_VEC as DECL_VALUE_EXPR + instead of ARRAY_REF. + (tsubst_expr): Handle sizeof... on non-dependent structure binding + packs. + (value_dependent_expression_p): Return false for sizeof... on + non-dependent structure binding packs. + (instantiation_dependent_r): Don't recurse on sizeof... on + non-dependent structure binding packs. + * constexpr.cc (potential_constant_expression_1): Also handle + TREE_VEC on DECL_VALUE_EXPR of structure binding packs. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * lex.cc (cxx_init): Mark cpp nodes corresponding + to keywords, identifiers with special meaning and standard + attribute identifiers as NODE_WARN if warn_keyword_macro. + +2025-08-06 Patrick Palka <ppalka@redhat.com> + + PR c++/121231 + PR c++/119688 + PR c++/94511 + * mangle.cc (write_expression): Write out implicit non-trailing + zeroes of a CONSTRUCTOR when the ABI version is at least 21. + +2025-08-06 Jason Merrill <jason@redhat.com> + + * constexpr.cc (cxx_eval_indirect_ref): Improve diagnostic. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + + * parser.cc (cp_parser_omp_clause_from_to): Parse 'iterator' modifier. + * semantics.cc (finish_omp_clauses): Finish iterators for to/from + clauses. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * parser.cc (cp_parser_omp_clause_map): Parse 'iterator' modifier. + * semantics.cc (finish_omp_clauses): Finish iterators. Apply + iterators to generated clauses. + +2025-08-05 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * constexpr.cc (cxx_eval_store_expression): Handle clobbers. + (potential_constant_expression_1): Handle clobbers more. + * decl.cc (build_clobber_this): Use INIT_EXPR for initial clobber. + * init.cc (build_new_1): Clobber on placement new. + (build_vec_init): Don't clean up after clobber. + +2025-08-04 Patrick Palka <ppalka@redhat.com> + + PR c++/121351 + PR c++/119859 + * class.cc (add_method): Substitute outer template arguments + into constraints before comparing them if the declarations are + from different classes. + +2025-08-04 Patrick Palka <ppalka@redhat.com> + + PR c++/120620 + * constexpr.cc (cxx_dynamic_cast_fn_p): Return true only + for synthesized __dynamic_cast. + +2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/108080 + * module.cc (trees_out::core_vals): Warn when streaming + target/optimize node; adjust comments. + (trees_in::core_vals): Don't stream a target/optimize node. + +2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121238 + * module.cc (trees_in::fn_parms_fini): Merge properties for + definitions. + +2025-07-31 Jason Merrill <jason@redhat.com> + + PR c++/120800 + * constexpr.cc (cxx_eval_vec_init_1): Suppress access control. + +2025-07-31 Marek Polacek <polacek@redhat.com> + + PR c++/120775 + * constexpr.cc (cxx_eval_outermost_constant_expr): Use + extract_call_expr. + * cp-tree.h (CONSTEVAL_BLOCK_P, LAMBDA_EXPR_CONSTEVAL_BLOCK_P): Define. + (finish_static_assert): Adjust declaration. + (current_nonlambda_function): Likewise. + * lambda.cc (current_nonlambda_function): New parameter. Only keep + iterating if the function represents a consteval block. + * parser.cc (cp_parser_lambda_expression): New parameter for + consteval blocks. Use it. Set LAMBDA_EXPR_CONSTEVAL_BLOCK_P. + (cp_parser_lambda_declarator_opt): Likewise. + (build_empty_string): New. + (cp_parser_next_tokens_are_consteval_block_p): New. + (cp_parser_consteval_block): New. + (cp_parser_block_declaration): Handle consteval blocks. + (cp_parser_static_assert): Use build_empty_string. + (cp_parser_member_declaration): Handle consteval blocks. + * pt.cc (tsubst_stmt): Adjust a call to finish_static_assert. + * semantics.cc (finish_fname): Warn for consteval blocks. + (finish_static_assert): New parameter for consteval blocks. Set + CONSTEVAL_BLOCK_P. Evaluate consteval blocks specially. + +2025-07-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121291 + * constraint.cc (diagnose_trait_expr): Remove assumption about + failures returning error_mark_node. + * except.cc (explain_not_noexcept): Allow expr not being + noexcept. + * method.cc (build_invoke): Adjust comment. + (is_trivially_xible): Always note non-trivial components if expr + is not null or error_mark_node. + (is_nothrow_xible): Likewise for non-noexcept components. + (is_nothrow_convertible): Likewise. + +2025-07-30 Jason Merrill <jason@redhat.com> + + * pt.cc (convert_nontype_argument_function): Check + cxx_constant_value on failure. + (invalid_tparm_referent_p): Likewise. + +2025-07-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/121133 + * parser.cc (cp_parser_unary_expression): Adjust + cp_parser_extension_opt caller and restore warn_long_long. + (cp_parser_declaration): Likewise. + (cp_parser_block_declaration): Likewise. + (cp_parser_member_declaration): Likewise. + (cp_parser_extension_opt): Add SAVED_LONG_LONG argument, + save previous warn_long_long state into it and clear it + for __extension__. + +2025-07-27 Nathaniel Shead <nathanieloshead@gmail.com> + + * cp-tree.h (struct lang_type): Add comment mentioning modules. + * module.cc (trees_out::lang_type_bools): Stream new flags, use + gcc_checking_assert. + (trees_in::lang_type_bools): Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * constexpr.cc: Update usage of "diagnostic_info" to explicitly + refer to "diagnostics::diagnostic_info". + * cp-tree.h: Likewise. + * error.cc: Likewise. + * module.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * call.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + * constexpr.cc: Likewise. + * cp-tree.h: Likewise. + * decl.cc: Likewise. + * error.cc: Likewise. + * init.cc: Likewise. + * method.cc: Likewise. + * module.cc: Likewise. + * parser.cc: Likewise. + * pt.cc: Likewise. + * semantics.cc: Likewise. + * typeck.cc: Likewise. + * typeck2.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cp-tree.h: Update for renaming of diagnostic_option_id to + diagnostics::option_id. + * decl.cc: Likewise. + * error.cc: Likewise. + * name-lookup.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Update for move of diagnostic-color.h to + diagnostics/color.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cp-tree.h: Update for diagnostic_context becoming + diagnostics::context. + * error.cc: Likewise. + * module.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * constexpr.cc: Update to add "m_" prefix to fields of + diagnostic_info throughout. + * error.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cp-tree.h: Update for move of diagnostics output formats into + namespace "diagnostics" as "sinks". + * error.cc: Likewise. + +2025-07-25 Patrick Palka <ppalka@redhat.com> + + * call.cc (build_new_op): If the selected candidate is + rewritten, communicate the LOOKUP_REWRITTEN/REVERSED flags to + the caller via the 'overload' out-parameter, and stop clearing + '*overload' in that case. + * tree.cc (build_min_non_dep_op_overload): Handle rebuilding all + C++20 rewritten comparison operator expressions. + +2025-07-25 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/121219 + * coroutines.cc + (cp_coroutine_transform::build_ramp_function): Reorder the return + expressions for the 'normal' and 'allocation failed' cases so that + NRV constraints are met. + +2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117294 + PR c++/113854 + * call.cc (implicit_conversion_error): Hide label when printing + a stub object. + (convert_like_internal): Likewise, and nest candidate + diagnostics. + * constexpr.cc (diagnose_failing_condition): Nest diagnostics, + attempt to provide more helpful diagnostics for traits. + * constraint.cc (satisfy_atom): Pass result before constant + evaluation to diagnose_atomic_constraint. + (diagnose_trait_expr): Adjust diagnostics for clarity and + detail. + (maybe_diagnose_standard_trait): New function. + (diagnose_atomic_constraint): Attempt to provide more helpful + diagnostics for more traits. + * cp-tree.h (explain_not_noexcept): Declare new function. + (is_trivially_xible): Add parameter. + (is_nothrow_xible): Likewise. + (is_xible): Likewise. + (is_convertible): Likewise. + (is_nothrow_convertible): Likewise. + (diagnose_trait_expr): Declare new function. + (maybe_diagnose_standard_trait): Declare new function. + * error.cc (dump_type) <case TREE_VEC>: Handle trait types. + * except.cc (explain_not_noexcept): New function. + * method.cc (build_trait_object): Add complain parameter. + (build_invoke): Propagate complain parameter. + (assignable_expr): Add explain parameter to show diagnostics. + (constructible_expr): Likewise. + (destructible_expr): Likewise. + (is_xible_helper): Replace trivial flag with explain flag, + add diagnostics. + (is_trivially_xible): New explain flag. + (is_nothrow_xible): Likewise. + (is_xible): Likewise. + (is_convertible_helper): Add complain flag. + (is_convertible): New explain flag. + (is_nothrow_convertible): Likewise. + * typeck.cc (cp_build_function_call_vec): Add handling for stub + objects. + (convert_arguments): Always return -1 on error. + * typeck2.cc (cxx_readonly_error): Add handling for stub + objects. + +2025-07-24 Jason Merrill <jason@redhat.com> + + * pt.cc (tsubst_lambda_expr): Revert r9-5971 change. + +2025-07-24 Jason Merrill <jason@redhat.com> + + PR c++/114632 + PR c++/101233 + * lambda.cc (maybe_add_lambda_conv_op): Not for xobj lambda. + * pt.cc (tsubst_function_decl): Add cp_evaluated. + (alias_ctad_tweaks): Revert PR101233 fix. + +2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120412 + * module.cc (trees_out::core_vals): Write TU_LOCAL_ENTITY bits. + (trees_in::core_vals): Read it. + (trees_in::tree_node): Handle TU_LOCAL_ENTITY typedefs. + +2025-07-23 Patrick Palka <ppalka@redhat.com> + + PR c++/121179 + * call.cc (build_new_op): Don't clear *overload for a simple + != to == rewrite. + * tree.cc (build_min_non_dep_op_overload): Handle TRUTH_NOT_EXPR + appearing in a rewritten operator expression. + +2025-07-23 Patrick Palka <ppalka@redhat.com> + + PR c++/121055 + * method.cc (build_invoke): Correct reference_wrapper handling. + +2025-07-22 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * constexpr.cc (cxx_eval_store_expression): Allow ARRAY_REFs + when activating an array member of a union. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * semantics.cc (finish_asm_stmt): Pass null pointer to + parse_{input,output}_constraint(). + +2025-07-16 Kwok Cheung Yeung <kcyeung@baylibre.com> + + * pt.cc (tsubst_omp_clause_decl): Use OMP_ITERATOR_DECL_P. + * semantics.cc (handle_omp_array_sections): Likewise. + (finish_omp_clauses): Likewise. + +2025-07-16 Alfie Richards <alfie.richards@arm.com> + + * class.cc (add_method): Remove argument. + * cp-tree.h (maybe_version_functions): Ditto. + * decl.cc (decls_match): Ditto. + (maybe_version_functions): Ditto. + +2025-07-16 Jeremy Rifkin <jeremy@rifkin.dev> + + PR c/82134 + * call.cc (build_call_a): Add suppress_warning + * cp-gimplify.cc (cp_gimplify_expr): Add suppress_warning + +2025-07-15 Jason Merrill <jason@redhat.com> + + PR c++/44677 + * cp-gimplify.cc (cp_fold) [CLEANUP_POINT_EXPR]: Don't force rvalue. + [COMPOUND_EXPR]: Likewise. + * cvt.cc (convert_to_void): Call mark_exp_read later. + * expr.cc (mark_use): Turn off read_p for any void argument. + (mark_exp_read): Return early for void argument. + +2025-07-15 Jason Merrill <jason@redhat.com> + + PR c++/120577 + * constexpr.cc (cxx_eval_call_expression): Set + CONSTRUCTOR_NO_CLEARING on initial value for ctor. + (cxx_eval_component_reference): Make value-initialization + of an aggregate member explicit. + +2025-07-15 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c/44677 + * cp-gimplify.cc (cp_fold): Clear DECL_READ_P on lhs of MODIFY_EXPR + after cp_fold_rvalue if it wasn't set before. + * decl.cc (poplevel): Use OPT_Wunused_but_set_variable_ + instead of OPT_Wunused_but_set_variable. + (finish_function): Use OPT_Wunused_but_set_parameter_ + instead of OPT_Wunused_but_set_parameter. + * expr.cc (mark_use): Clear read_p for {PRE,POST}{IN,DE}CREMENT_EXPR + cast to void on {VAR,PARM}_DECL for + -Wunused-but-set-{parameter,variable}={2,3}. + (mark_exp_read): Handle {PRE,POST}{IN,DE}CREMENT_EXPR and don't handle + it when cast to void. + * module.cc (trees_in::fn_parms_fini): Remove unused but set variable + ix. + * semantics.cc (finish_unary_op_expr): Return early for + PRE{IN,DE}CREMENT_EXPR. + * typeck.cc (cp_build_unary_op): Clear DECL_READ_P + after mark_lvalue_use for -Wunused-but-set-{parameter,variable}={2,3} + on PRE{IN,DE}CREMENT_EXPR argument. + (cp_build_modify_expr): Clear DECL_READ_P after cp_build_binary_op + for -Wunused-but-set-{parameter,variable}=3. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/119064 + * cp-tree.h: Implement C++26 P2786R13 - Trivial Relocatability. + (struct lang_type): Add trivially_relocatable, + trivially_relocatable_computed, replaceable and replaceable_computed + bitfields. Change width of dummy from 2 to 30. + (CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT, + CLASSTYPE_TRIVIALLY_RELOCATABLE_COMPUTED, CLASSTYPE_REPLACEABLE_BIT, + CLASSTYPE_REPLACEABLE_COMPUTED): Define. + (enum virt_specifier): Add VIRT_SPEC_TRIVIALLY_RELOCATABLE_IF_ELIGIBLE + and VIRT_SPEC_REPLACEABLE_IF_ELIGIBLE enumerators. + (trivially_relocatable_type_p, replaceable_type_p): Declare. + * cp-trait.def (IS_NOTHROW_RELOCATABLE, IS_REPLACEABLE, + IS_TRIVIALLY_RELOCATABLE): New traits. + * parser.cc (cp_parser_class_property_specifier_seq_opt): Handle + trivially_relocatable_if_eligible, + __trivially_relocatable_if_eligible, replaceable_if_eligible and + __replaceable_if_eligible. + (cp_parser_class_head): Set CLASSTYPE_REPLACEABLE_BIT + and/or CLASSTYPE_TRIVIALLY_RELOCATABLE_BIT if corresponding + conditional keywords were parsed and assert corresponding *_COMPUTED + macro is false. + * pt.cc (instantiate_class_template): Copy over also + CLASSTYPE_TRIVIALLY_RELOCATABLE_{BIT,COMPUTED} and + CLASSTYPE_REPLACEABLE_{BIT,COMPUTED} bits. + * semantics.cc (referenceable_type_p): Move definition earlier. + (trait_expr_value): Handle CPTK_IS_NOTHROW_RELOCATABLE, + CPTK_IS_REPLACEABLE and CPTK_IS_TRIVIALLY_RELOCATABLE. + (finish_trait_expr): Likewise. + * tree.cc (default_movable_type_p): New function. + (union_with_no_declared_special_member_fns): Likewise. + (trivially_relocatable_type_p): Likewise. + (replaceable_type_p): Likewise. + * constraint.cc (diagnose_trait_expr): Handle + CPTK_IS_NOTHROW_RELOCATABLE, CPTK_IS_REPLACEABLE and + CPTK_IS_TRIVIALLY_RELOCATABLE. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * cp-tree.h (struct lang_type): Add comment before key_method. + Remove lambda_expr. + (CLASSTYPE_KEY_METHOD): Give NULL_TREE if not TYPE_POLYMORPHIC_P. + (SET_CLASSTYPE_KEY_METHOD): Define. + (CLASSTYPE_LAMBDA_EXPR): Give NULL_TREE if TYPE_POLYMORPHIC_P. + Use key_method member instead of lambda_expr. + (SET_CLASSTYPE_LAMBDA_EXPR): Define. + * class.cc (determine_key_method): Use SET_CLASSTYPE_KEY_METHOD + macro. + * decl.cc (xref_tag): Use SET_CLASSTYPE_LAMBDA_EXPR macro. + * lambda.cc (begin_lambda_type): Likewise. + * module.cc (trees_in::read_class_def): Use SET_CLASSTYPE_LAMBDA_EXPR + and SET_CLASSTYPE_KEY_METHOD macros, assert lambda is NULL if + TYPE_POLYMORPHIC_P and otherwise assert key_method is NULL. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/120628 + * parser.cc (cp_parser_elaborated_type_specifier): Use + cp_parser_nth_token_starts_class_definition_p with extra argument 1 + instead of cp_parser_next_token_starts_class_definition_p. + (cp_parser_class_property_specifier_seq_opt): For final conditional + keyword in C++98 check if the token after it isn't + cp_parser_nth_token_starts_class_definition_p nor CPP_NAME and in + that case break without consuming it nor warning. + (cp_parser_class_head): Use + cp_parser_nth_token_starts_class_definition_p with extra argument 1 + instead of cp_parser_next_token_starts_class_definition_p. + (cp_parser_next_token_starts_class_definition_p): Renamed to ... + (cp_parser_nth_token_starts_class_definition_p): ... this. Add N + argument. Use cp_lexer_peek_nth_token instead of cp_lexer_peek_token. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/120569 + * parser.cc (cp_parser_class_property_specifier_seq_opt): New + function. + (cp_parser_class_head): Use it instead of + cp_parser_property_specifier_seq_opt. Don't diagnose + VIRT_SPEC_OVERRIDE here. Formatting fix. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/117785 + * constexpr.cc: Implement C++26 P3068R5 - constexpr exceptions. + (class constexpr_global_ctx): Add caught_exceptions and + uncaught_exceptions members. + (constexpr_global_ctx::constexpr_global_ctx): Initialize + uncaught_exceptions. + (returns, breaks, continues, switches): Move earlier. + (throws): New function. + (exception_what_str, diagnose_std_terminate, + diagnose_uncaught_exception): New functions. + (enum cxa_builtin): New type. + (cxx_cxa_builtin_fn_p, cxx_eval_cxa_builtin_fn): New functions. + (cxx_eval_builtin_function_call): Add jump_target argument. Call + cxx_eval_cxa_builtin_fn for __builtin_eh_ptr_adjust_ref. Adjust + cxx_eval_constant_expression calls, if it results in jmp_target, + set *jump_target to it and return. + (cxx_bind_parameters_in_call): Add jump_target argument. Pass + it through to cxx_eval_constant_expression. If it sets *jump_target, + break. + (fold_operand): Adjust cxx_eval_constant_expression caller. + (cxx_eval_assert): Likewise. If it set jmp_target, return true. + (cxx_eval_internal_function): Add jump_target argument. Pass it + through to cxx_eval_constant_expression. Return early if *jump_target + after recursing on args. + (cxx_eval_dynamic_cast_fn): Likewise. Don't set reference_p for + C++26 with -fexceptions. + (cxx_eval_thunk_call): Add jump_target argument. Pass it through + to cxx_eval_constant_expression. + (cxx_set_object_constness): Likewise. Don't set TREE_READONLY if + throws (jump_target). + (cxx_eval_call_expression): Add jump_target argument. Pass it + through to cxx_eval_internal_function, cxx_eval_builtin_function_call, + cxx_eval_thunk_call, cxx_eval_dynamic_cast_fn and + cxx_set_object_constness. Pass it through also + cxx_eval_constant_expression on arguments, cxx_bind_parameters_in_call + and cxx_fold_indirect_ref and for those cases return early + if *jump_target. Call cxx_eval_cxa_builtin_fn for cxx_cxa_builtin_fn_p + functions. For cxx_eval_constant_expression on body, pass address of + cleared jmp_target automatic variable, if it throws propagate + to *jump_target and make it non-cacheable. For C++26 don't diagnose + calls to non-constexpr functions before cxx_bind_parameters_in_call + could report some argument throwing an exception. + (cxx_eval_unary_expression): Add jump_target argument. Pass it + through to cxx_eval_constant_expression and return early + if *jump_target after the call. + (cxx_fold_pointer_plus_expression): Likewise. + (cxx_eval_binary_expression): Likewise and similarly for + cxx_fold_pointer_plus_expression call. + (cxx_eval_conditional_expression): Pass jump_target to + cxx_eval_constant_expression on first operand and return early + if *jump_target after the call. + (cxx_eval_vector_conditional_expression): Add jump_target argument. + Pass it through to cxx_eval_constant_expression for all 3 arguments + and return early if *jump_target after any of those calls. + (get_array_or_vector_nelts): Add jump_target argument. Pass it + through to cxx_eval_constant_expression. + (eval_and_check_array_index): Add jump_target argument. Pass it + through to cxx_eval_constant_expression calls and return early after + each of them if *jump_target. + (cxx_eval_array_reference): Likewise. + (cxx_eval_component_reference): Likewise. + (cxx_eval_bit_field_ref): Likewise. + (cxx_eval_bit_cast): Likewise. Assert CHECKING_P call doesn't + throw or return. + (cxx_eval_logical_expression): Add jump_target argument. Pass it + through to cxx_eval_constant_expression calls and return early after + each of them if *jump_target. + (cxx_eval_bare_aggregate): Likewise. + (cxx_eval_vec_init_1): Add jump_target argument. Pass it through + to cxx_eval_bare_aggregate and recursive call. Pass it through + to get_array_or_vector_nelts and cxx_eval_constant_expression + and return early after it if *jump_target. + (cxx_eval_vec_init): Add jump_target argument. Pass it through + to cxx_eval_constant_expression and cxx_eval_vec_init_1. + (cxx_union_active_member): Add jump_target argument. Pass it + through to cxx_eval_constant_expression and return early after it + if *jump_target. + (cxx_fold_indirect_ref_1): Add jump_target argument. Pass it + through to cxx_union_active_member and recursive calls. + (cxx_eval_indirect_ref): Add jump_target argument. Pass it through + to cxx_fold_indirect_ref_1 calls and to recursive call, in which + case return early after it if *jump_target. + (cxx_fold_indirect_ref): Add jump_target argument. Pass it through + to cxx_fold_indirect_ref and cxx_eval_constant_expression calls and + return early after those if *jump_target. + (cxx_eval_trinary_expression): Add jump_target argument. Pass it + through to cxx_eval_constant_expression calls and return early after + those if *jump_target. + (cxx_eval_store_expression): Add jump_target argument. Pass it + through to cxx_eval_constant_expression and eval_and_check_array_index + calls and return early after those if *jump_target. + (cxx_eval_increment_expression): Add jump_target argument. Pass it + through to cxx_eval_constant_expression calls and return early after + those if *jump_target. + (label_matches): Handle VAR_DECL case. + (cxx_eval_statement_list): Remove local_target variable and + !jump_target handling. Handle throws (jump_target) like returns or + breaks. + (cxx_eval_loop_expr): Remove local_target variable and !jump_target + handling. Pass it through to cxx_eval_constant_expression. Handle + throws (jump_target) like returns. + (cxx_eval_switch_expr): Pass jump_target through to + cxx_eval_constant_expression on cond, return early after it + if *jump_target. + (build_new_constexpr_heap_type): Add jump_target argument. Pass it + through to cxx_eval_constant_expression calls, return early after + those if *jump_target. + (merge_jump_target): New function. + (cxx_eval_constant_expression): Make jump_target argument no longer + defaulted, don't test jump_target for NULL. Pass jump_target + through to recursive calls, cxx_eval_call_expression, + cxx_eval_store_expression, cxx_eval_indirect_ref, + cxx_eval_unary_expression, cxx_eval_binary_expression, + cxx_eval_logical_expression, cxx_eval_array_reference, + cxx_eval_component_reference, cxx_eval_bit_field_ref, + cxx_eval_vector_conditional_expression, cxx_eval_bare_aggregate, + cxx_eval_vec_init, cxx_eval_trinary_expression, cxx_fold_indirect_ref, + build_new_constexpr_heap_type, cxx_eval_increment_expression, + cxx_eval_bit_cast and return earlyu after some of those + if *jump_target as needed. + (cxx_eval_constant_expression) <case TARGET_EXPR>: For C++26 push + also CLEANUP_EH_ONLY cleanups, with NULL_TREE marker after them. + (cxx_eval_constant_expression) <case RETURN_EXPR>: Don't + override *jump_target if throws (jump_target). + (cxx_eval_constant_expression) <case TRY_CATCH_EXPR, case TRY_BLOCK, + case MUST_NOT_THROW_EXPR, case TRY_FINALLY_EXPR, case CLEANUP_STMT>: + Handle C++26 constant expressions. + (cxx_eval_constant_expression) <case CLEANUP_POINT_EXPR>: For C++26 + with throws (jump_target) evaluate the CLEANUP_EH_ONLY cleanups as + well, and if not throws (jump_target) skip those. Set *jump_target + if some of the cleanups threw. + (cxx_eval_constant_expression) <case THROW_EXPR>: Recurse on operand + for C++26. + (cxx_eval_outermost_constant_expr): Diagnose uncaught exceptions both + from main expression and cleanups, diagnose also + break/continue/returns from the main expression. Handle + CLEANUP_EH_ONLY cleanup markers. Don't diagnose mutable poison stuff + if non_constant_p. Use different diagnostics for non-deleted heap + allocations if they were allocated by __cxa_allocate_exception. + (callee_might_throw): New function. + (struct check_for_return_continue_data): Add could_throw field. + (check_for_return_continue): Handle AGGR_INIT_EXPR and CALL_EXPR and + set d->could_throw if they could throw. + (potential_constant_expression_1): For CALL_EXPR allow + cxx_dynamic_cast_fn_p calls. For C++26 set *jump_target to void_node + for calls that could throw. For C++26 if call to non-constexpr call + is seen, try to evaluate arguments first and if they could throw, + don't diagnose call to non-constexpr function nor return false. + Adjust check_for_return_continue_data initializers and + set *jump_target to void_node if data.could_throw_p. For C++26 + recurse on THROW_EXPR argument. Add comment explaining TRY_BLOCK + handling with C++26 exceptions. Handle throws like returns in some + cases. + * cp-tree.h (MUST_NOT_THROW_NOEXCEPT_P, MUST_NOT_THROW_THROW_P, + MUST_NOT_THROW_CATCH_P, DECL_EXCEPTION_REFCOUNT): Define. + (DECL_LOCAL_DECL_P): Fix comment typo, VARIABLE_DECL -> VAR_DECL. + (enum cp_built_in_function): Add CP_BUILT_IN_EH_PTR_ADJUST_REF, + (handler_match_for_exception_type): Declare. + * call.cc (handler_match_for_exception_type): New function. + * except.cc (initialize_handler_parm): Set MUST_NOT_THROW_CATCH_P + on newly created MUST_NOT_THROW_EXPR. + (begin_eh_spec_block): Set MUST_NOT_THROW_NOEXCEPT_P. + (wrap_cleanups_r): Set MUST_NOT_THROW_THROW_P. + (build_throw): Add another TARGET_EXPR whose scope spans + until after the __cxa_throw call and copy pointer value from ptr + to it and use it in __cxa_throw argument. + * tree.cc (builtin_valid_in_constant_expr_p): Handle + CP_BUILT_IN_EH_PTR_ADJUST_REF. + * decl.cc (cxx_init_decl_processing): Initialize + __builtin_eh_ptr_adjust_ref FE builtin. + * pt.cc (tsubst_stmt) <case MUST_NOT_THROW_EXPR>: Copy the + MUST_NOT_THROW_NOEXCEPT_P, MUST_NOT_THROW_THROW_P and + MUST_NOT_THROW_CATCH_P flags. + * cp-gimplify.cc (cp_gimplify_expr) <case CALL_EXPR>: Error on + non-folded CP_BUILT_IN_EH_PTR_ADJUST_REF calls. + +2025-07-09 Jason Merrill <jason@redhat.com> + + PR c++/121012 + PR c++/120917 + * parser.cc (cp_parser_lambda_expression): Clear + parser->in_template_argument_list_p. + +2025-07-09 Jason Merrill <jason@redhat.com> + + PR c++/121008 + PR c++/113563 + * semantics.cc (finish_this_expr): Do check current_class_ref for + non-lambda. + +2025-07-09 Marek Polacek <polacek@redhat.com> + + PR c++/119838 + * parser.cc (cp_parser_nested_name_specifier_opt): New global_p + parameter. Look for "template" when global_p is true. + (cp_parser_simple_type_specifier): Pass global_p to + cp_parser_nested_name_specifier_opt. + +2025-07-08 Marek Polacek <polacek@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/83469 + PR c++/93809 + * cp-tree.h (UNION_TYPE_P): Define. + (TYPENAME_IS_UNION_P): Define. + * decl.cc (struct typename_info): Add union_p field. + (struct typename_hasher::equal): Compare union_p field. + (build_typename_type): Use ti.union_p for union_type. Set + TYPENAME_IS_UNION_P. + * error.cc (dump_type) <case TYPENAME_TYPE>: Handle + TYPENAME_IS_UNION_P. + * module.cc (trees_out::type_node): Likewise. + * parser.cc (cp_parser_check_class_key): Allow typename key for union + types and allow union keyword for typename types. + * pt.cc (tsubst) <case TYPENAME_TYPE>: Don't conflate unions with + class_type. For TYPENAME_IS_CLASS_P, check NON_UNION_CLASS_TYPE_P + rather than CLASS_TYPE_P. Add TYPENAME_IS_UNION_P handling. + +2025-07-08 Jakub Jelinek <jakub@redhat.com> + + PR c++/117784 + * decl.cc: Implement part of C++26 P2686R4 - constexpr structured + bindings. + (cp_finish_decl): Pedwarn for C++23 and older on constinit on + structured bindings except for static/thread_local where it uses + earlier error. + (grokdeclarator): Pedwarn on constexpr structured bindings for + C++23 and older instead of emitting error always, don't clear + constexpr_p in that case. + * parser.cc (cp_parser_decomposition_declaration): Copy over + DECL_DECLARED_CONSTEXPR_P and DECL_DECLARED_CONSTINIT_P flags. + +2025-07-07 Alfie Richards <alfie.richards@arm.com> + + PR c++/119498 + * decl.cc (duplicate_decls): Change logic to not always exclude FMV + annotated functions in cases of return type non-ambiguation. + +2025-07-07 Jason Merrill <jason@redhat.com> + + PR c++/120917 + * parser.cc (cp_parser_simple_type_specifier): Attach + auto in targ in parameter to -Wabbreviated-auto-in-template-arg. + (cp_parser_placeholder_type_specifier): Diagnose constrained auto in + template arg. + +2025-07-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/84009 + * parser.cc (cp_parser_decomposition_declaration): Pedwarn + on thread_local, __thread or static in decl_specifiers for + for-range-declaration. + (cp_parser_init_declarator): Likewise, and also for extern + or register. + +2025-07-04 Jason Merrill <jason@redhat.com> + + PR c++/120575 + PR c++/116064 + * parser.cc (cp_parser_abort_tentative_parse): Check seen_error + instead of errorcount. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120716 + * lambda.cc (finish_lambda_function): Pass cur_stmt_list to + prune_lambda_captures. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120748 + * lambda.cc (lambda_expr_this_capture): Don't return a FIELD_DECL. + * parser.cc (cp_parser_primary_expression): Ignore THIS_FORBIDDEN + if cp_unevaluated_operand. + +2025-07-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/120940 + * typeck.cc (cp_build_array_ref): Fix a pasto. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120684 + PR c++/118856 + * constexpr.cc (cxx_eval_constant_expression) [TARGET_EXPR]: Clear + the value first if is_complex. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR c++/120471 + * typeck.cc (cp_build_array_ref) <case COND_EXPR>: If idx is not + INTEGER_CST, don't optimize the case (but cp_default_conversion on + array early if it has ARRAY_TYPE) or use + SAVE_EXPR <op0>, SAVE_EXPR <idx>, SAVE_EXPR <op0> as new op0 depending + on flag_strong_eval_order and whether op1 and op2 are arrays with + invariant address or tree invariant pointers. Formatting fixes. + +2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (trees_out::walking_bit_field_unit): New flag. + (trees_out::trees_out): Initialize it. + (trees_out::core_vals): Set it. + (trees_out::get_merge_kind): Use it, move previous ad-hoc check + into assertion. + +2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120644 + * decl.cc (cp_finish_decl): Also propagate type to partial + templates. + * module.cc (trees_out::decl_value): Add assertion that the + TREE_TYPE of a streamed template decl matches its inner. + (trees_in::is_matching_decl): Clarify function return type + deduction should only occur for non-TEMPLATE_DECL. + * pt.cc (template_for_substitution): Handle partial specs. + +2025-06-27 Marek Polacek <polacek@redhat.com> + + PR c++/120756 + * pt.cc (resolve_nondeduced_context): Pass complain to mark_used. + +2025-06-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/120777 + * constexpr.cc: Implement C++26 P3533R2 - constexpr virtual + inheritance. + (is_valid_constexpr_fn): Don't reject constexpr cdtors in classes + with virtual bases for C++26, adjust error wording. + (cxx_bind_parameters_in_call): Add ORIG_FUN argument, add + values for __in_chrg and __vtt_parm arguments when needed. + (cxx_eval_dynamic_cast_fn): Adjust function comment, HINT -1 + should be possible. For C++26 if obj is cast from POINTER_PLUS_EXPR, + attempt to use cxx_fold_indirect_ref to simplify it and if successful, + build ADDR_EXPR of that. + (cxx_eval_call_expression): Add orig_fun variable, set it to + fun before looking through clones, pass it to + cxx_bind_parameters_in_call. + (reduced_constant_expression_p): Add SZ argument, pass DECL_SIZE + of FIELD_DECL e.index to recursive calls and don't return false + if SZ is non-NULL and there are unfilled fields with bit position + at or above SZ. + (cxx_fold_indirect_ref_1): Handle reading of vtables using + ptrdiff_t dynamic type instead of some pointer type. Set el_sz + to DECL_SIZE_UNIT value rather than TYPE_SIZE_UNIT of + DECL_FIELD_IS_BASE fields in classes with virtual bases. + (cxx_fold_indirect_ref): In canonicalize_obj_off lambda look + through COMPONENT_REFs with DECL_FIELD_IS_BASE in classes with + virtual bases and adjust off correspondingly. Remove assertion that + off is integer_zerop, pass tree_to_uhwi (off) instead of 0 to the + cxx_fold_indirect_ref_1 call. + * cp-tree.h (publicly_virtually_derived_p): Declare. + (reduced_constant_expression_p): Add another tree argument defaulted + to NULL_TREE. + * method.cc (synthesized_method_walk): Don't clear *constexpr_p + if there are virtual bases for C++26. + * class.cc (build_base_path): Compute fixed_type_p and + virtual_access before checks for build_simple_base_path instead of + after that and conditional cp_build_addr_expr. Use build_simple_path + if !virtual_access even when v_binfo is non-NULL. + (layout_virtual_bases): For build_base_field calls use + access_public_node rather than access_private_node if + publicly_virtually_derived_p. + (build_vtbl_initializer): Revert 2018-09-18 and 2018-12-11 changes. + (publicly_virtually_derived_p): New function. + +2025-06-27 Jason Merrill <jason@redhat.com> + + * class.cc (fixed_type_or_null): Handle class-type CALL_EXPR. + * parser.cc (cp_parser_binary_expression): Fix decltype_p handling. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98735 + PR c++/118904 + * cp-gimplify.cc (source_location_id): Remove. + (fold_builtin_source_location): Use generate_internal_label. + * module.cc (enum tree_tag): Add 'tt_internal_id' enumerator. + (trees_out::tree_value): Adjust assertion, write definitions + of uncontexted VAR_DECLs. + (trees_in::tree_value): Read variable definitions. + (trees_out::tree_node): Write internal labels, adjust assert. + (trees_in::tree_node): Read internal labels. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120040 + * constexpr.cc (cxx_eval_constant_expression): Handle TYPE_NAME + now being a TYPE_DECL rather than just an IDENTIFIER_NODE. + * init.cc (build_new_constexpr_heap_type): Build a TYPE_DECL for + the returned type; mark the type as artificial. + * module.cc (trees_out::type_node): Add some assertions. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98735 + PR c++/120040 + * module.cc (trees_out::tree_value): Write TYPE_DECLs. + (trees_in::tree_value): Read TYPE_DECLs. + (trees_out::tree_node): Support uncontexted TYPE_DECLs, and + ensure that all parts of a by-value decl are marked for + streaming. + (trees_out::get_merge_kind): Treat members of uncontexted types + as always unique. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + * decl.cc (grokfndecl): Add explanation of how to attach to + global module. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + * error.cc (cxx_initialize_diagnostics): Use + diagnostic_context::set_adjust_diagnostic_info_callback. + +2025-06-26 Jakub Jelinek <jakub@redhat.com> + + * cp-trait.def: Implement C++26 P2830R10 - Constexpr Type Ordering. + (TYPE_ORDER): New. + * method.cc (type_order_value): Define. + * cp-tree.h (type_order_value): Declare. + * semantics.cc (trait_expr_value): Use gcc_unreachable also + for CPTK_TYPE_ORDER, adjust comment. + (finish_trait_expr): Handle CPTK_TYPE_ORDER. + * constraint.cc (diagnose_trait_expr): Likewise. + +2025-06-25 Martin Jambor <mjambor@suse.cz> + + * coroutines.h (class cp_coroutine_transform): Remove member + orig_fn_body. + +2025-06-24 Jakub Jelinek <jakub@redhat.com> + + PR c++/120773 + * decl.cc (grokfndecl): Implement C++26 P3618R0 - Allow attaching + main to the global module. Only pedwarn for current_lang_name + other than lang_name_cplusplus and adjust pedwarn wording. + +2025-06-23 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (OACC_WAIT_CLAUSE_MASK): Ass if clause. + +2025-06-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/115908 + PR c++/118074 + PR c++/95615 + * coroutines.cc (coro_frame_refcount_id): New. + (coro_init_identifiers): Initialise coro_frame_refcount_id. + (build_actor_fn): Set up initial_await_resume_called. Handle + decrementing of the frame reference count. Return directly to + the caller if that is non-zero. + (cp_coroutine_transform::wrap_original_function_body): Use a + conditional eh-only cleanup around the initial await expression + to release the body use on exception before initial await + resume. + (cp_coroutine_transform::build_ramp_function): Wrap the called + body in a cleanup that releases a use of the frame when we + return to the ramp. Implement frame, promise and argument copy + destruction via conditional cleanups when the frame use count + is zero. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (struct coroutine_info): Update comments. + (struct coro_aw_data): Remove self_handle and add in + information to create the handle in lowering. + (expand_one_await_expression): Build a temporary coroutine + handle. + (build_actor_fn): Remove reference to the frame copy of the + coroutine handle. + (cp_coroutine_transform::wrap_original_function_body): Remove + reference to the frame copy of the coroutine handle. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (analyze_expression_awaits): Elide assume + attributes containing await expressions, since these have + side effects. Emit a diagnostic that this has been done. + +2025-06-17 Jason Merrill <jason@redhat.com> + + PR c++/120678 + * cp-trait.def (IS_TRIVIALLY_DESTRUCTIBLE): Fix nargs. + +2025-06-17 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::write_diagnostic_classification): New. + (module_state::write_begin): Call it. + (module_state::read_diagnostic_classification): New. + (module_state::read_initial): Call it. + (dk_string, dump_dc_change): New. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (finish_co_await_expr): Do not allow in an + unevaluated context. + (finish_co_yield_expr): Likewise. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120273 + * coroutines.cc + (cp_coroutine_transform::wrap_original_function_body): Use + function start and end locations when synthesizing code. + (cp_coroutine_transform::cp_coroutine_transform): Set the + function end location. + +2025-06-16 Jason Merrill <jason@redhat.com> + + * constraint.cc (failed_completions_map): New. + (note_failed_type_completion): Rename from + note_failed_type_completion_for_satisfaction. Add + -Wsfinae-incomplete handling. + (failed_completion_location): New. + * class.cc (finish_struct_1): Add -Wsfinae-incomplete warning. + * decl.cc (require_deduced_type): Adjust. + (finish_function): Add -Wsfinae-incomplete warning. + * typeck.cc (complete_type_or_maybe_complain): Adjust. + (cxx_sizeof_or_alignof_type): Call note_failed_type_completion. + * pt.cc (dependent_template_arg_p): No longer static. + * cp-tree.h: Adjust. + +2025-06-16 yxj-github-437 <2457369732@qq.com> + + * parser.cc (cp_parser_asm_operand_list): Check for unexpanded + parameter packs. + +2025-06-14 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (build_co_await): Identify diagnostics + for initial and final await expressions. + (cp_coroutine_transform::wrap_original_function_body): Do + not handle initial and final await expressions here ... + (cp_coroutine_transform::apply_transforms): ... handle them + here and avoid duplicate diagnostics. + * coroutines.h: Declare inital and final await expressions + in the transform class. Save the function closing brace + location. + +2025-06-13 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/116775 + * coroutines.cc (analyze_expression_awaits): When we see + a builtin_constant_p call, and that contains one or more + await expressions, then replace the call with its result + and discard the unevaluated operand. + +2025-06-13 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (build_actor_fn): Set can_throw. + +2025-06-12 Alfie Richards <alfie.richards@arm.com> + + * decl.cc (maybe_version_functions): Change record_function_versions + call to add_function_version. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + * cp-tree.h (union lang_type::maybe_objc_info): New type. + (struct lang_type): Use union maybe_objc_info info member + instead of tree objc_info. + * lex.cc (copy_lang_type): Use sizeof (struct lang_type) + just for ObjC++ and otherwise offsetof (struct lang_type, info). + (maybe_add_lang_type_raw): Likewise. + (cxx_make_type): Formatting fix. + +2025-06-09 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120495 + PR c++/115605 + * pt.cc (lookup_template_class): Honour provided namespace contexts + when looking up class templates. + +2025-06-06 Jason Merrill <jason@redhat.com> + + PR c++/120555 + * decl2.cc (fn_being_defined, fn_template_being_defined): New. + (mark_used): Check fn_template_being_defined. + +2025-06-05 Patrick Palka <ppalka@redhat.com> + + PR c++/120224 + * pt.cc (tsubst_function_decl): Return error_mark_node if + substituting into the formal parameter list failed. + (tsubst_decl) <case PARM_DECL>: Return error_mark_node + upon TREE_TYPE substitution failure, when in a SFINAE + context. Return error_mark_node upon DECL_CHAIN substitution + failure. + +2025-06-05 Patrick Palka <ppalka@redhat.com> + + PR c++/118340 + * constexpr.cc (maybe_constant_value): First try looking up each + operand in the cv_cache and reusing the result. + +2025-06-05 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (analyze_fn_parms): Move from free function.. + (cp_coroutine_transform::analyze_fn_parms):... to method. + (cp_coroutine_transform::apply_transforms): Adjust call to + analyze_fn_parms. + * coroutines.h: Declare analyze_fn_parms. + +2025-06-05 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (expand_one_await_expression): Set the + initial_await_resume_called flag here. + (build_actor_fn): Populate the frame accessor for the + initial_await_resume_called flag. + (cp_coroutine_transform::wrap_original_function_body): Do + not modify the initial_await expression to include the + initial_await_resume_called flag here. + +2025-06-04 Jason Merrill <jason@redhat.com> + + PR c++/120502 + * cp-gimplify.cc (cp_fold_r) [TARGET_EXPR]: Do constexpr evaluation + before genericize. + * constexpr.cc (cxx_eval_store_expression): Add comment. + +2025-06-03 Jason Merrill <jason@redhat.com> + + * name-lookup.h (operator|, operator|=): Define for WMB_Flags. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * method.cc (destructible_expr): Fix refs and arrays of unknown + bound. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/120506 + * constexpr.cc (cxx_eval_outermost_constant_expr): Always check + CONSTRUCTOR_NO_CLEARING. + +2025-06-02 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (build_actor_fn): Remove an unused + label, guard the frame deallocation correctly, use + simpler APIs to build if and return statements. + +2025-06-02 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/118903 + * constexpr.cc (potential_constant_expression_1): Emit + an error when co_await et. al. are used in constexpr + contexts. + +2025-06-02 Iain Sandoe <iain@sandoe.co.uk> + + * error.cc (dump_expr): Add co_await, co_yield and co_return. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * method.cc (destructible_expr): Handle non-classes. + (constructible_expr): Check for abstract class here... + (is_xible_helper): ...not here. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * semantics.cc (trait_expr_value) [CPTK_HAS_TRIVIAL_DESTRUCTOR]: + Add cp_unevaluated. + +2025-06-02 Sandra Loosemore <sloosemore@baylibre.com> + + * cp-tree.h (maybe_convert_cond): Declare. + * parser.cc (cp_parser_omp_context_selector): Call + maybe_convert_cond and fold_build_cleanup_point_expr on the + expression for OMP_TRAIT_PROPERTY_BOOL_EXPR. + * pt.cc (tsubst_omp_context_selector): Likewise. + * semantics.cc (maybe_convert_cond): Remove static declaration. + +2025-05-30 Jason Merrill <jason@redhat.com> + + PR c++/113563 + * lambda.cc (lambda_capture_field_type): Handle 'this' normally. + (build_capture_proxy): Special-case 'this' by-ref capture more. + (nonlambda_method_basetype): Look through xobj lambdas. + +2025-05-30 Julian Brown <julian@codesourcery.com> + Tobias Burnus <tburnus@baylibre.com> + + * constexpr.cc (reduced_constant_expression_p): Add OMP_DECLARE_MAPPER + case. + (cxx_eval_constant_expression, potential_constant_expression_1): + Likewise. + * cp-gimplify.cc (cxx_omp_finish_mapper_clauses): New function. + * cp-objcp-common.h (LANG_HOOKS_OMP_FINISH_MAPPER_CLAUSES, + LANG_HOOKS_OMP_MAPPER_LOOKUP, LANG_HOOKS_OMP_EXTRACT_MAPPER_DIRECTIVE, + LANG_HOOKS_OMP_MAP_ARRAY_SECTION): Define langhooks. + * cp-tree.h (lang_decl_base): Add omp_declare_mapper_p field. Recount + spare bits comment. + (DECL_OMP_DECLARE_MAPPER_P): New macro. + (omp_mapper_id): Add prototype. + (cp_check_omp_declare_mapper): Add prototype. + (omp_instantiate_mappers): Add prototype. + (cxx_omp_finish_mapper_clauses): Add prototype. + (cxx_omp_mapper_lookup): Add prototype. + (cxx_omp_extract_mapper_directive): Add prototype. + (cxx_omp_map_array_section): Add prototype. + * decl.cc (check_initializer): Add OpenMP declare mapper support. + (cp_finish_decl): Set DECL_INITIAL for OpenMP declare mapper var decls + as appropriate. + * decl2.cc (mark_used): Instantiate OpenMP "declare mapper" magic var + decls. + * error.cc (dump_omp_declare_mapper): New function. + (dump_simple_decl): Use above. + * parser.cc (cp_parser_omp_clause_map): Add KIND parameter. Support + "mapper" modifier. + (cp_parser_omp_all_clauses): Add KIND argument to + cp_parser_omp_clause_map call. + (cp_parser_omp_target): Call omp_instantiate_mappers before + finish_omp_clauses. + (cp_parser_omp_declare_mapper): New function. + (cp_parser_omp_declare): Add "declare mapper" support. + * pt.cc (tsubst_decl): Adjust name of "declare mapper" magic var decls + once we know their type. + (tsubst_omp_clauses): Call omp_instantiate_mappers before + finish_omp_clauses, for target regions. + (tsubst_expr): Support OMP_DECLARE_MAPPER nodes. + (instantiate_decl): Instantiate initialiser (i.e definition) for OpenMP + declare mappers. + * semantics.cc (gimplify.h): Include. + (omp_mapper_id, omp_mapper_lookup, omp_extract_mapper_directive, + cxx_omp_map_array_section, cp_check_omp_declare_mapper): New functions. + (finish_omp_clauses): Delete GOMP_MAP_PUSH_MAPPER_NAME and + GOMP_MAP_POP_MAPPER_NAME artificial clauses. + (omp_target_walk_data): Add MAPPERS field. + (finish_omp_target_clauses_r): Scan for uses of struct/union/class type + variables. + (finish_omp_target_clauses): Create artificial mapper binding clauses + for used structs/unions/classes in offload region. + +2025-05-29 David Malcolm <dmalcolm@redhat.com> + + * error.cc (cxx_format_postprocessor::clone): Update to use + unique_ptr. + (cxx_dump_pretty_printer::cxx_dump_pretty_printer): Likewise. + (cxx_initialize_diagnostics): Likewise. + +2025-05-29 Jason Merrill <jason@redhat.com> + + PR c++/113563 + * lambda.cc (build_capture_proxy): Check pointerness of the + member, not the proxy type. + (lambda_expr_this_capture): Don't assume current_class_ref. + (nonlambda_method_basetype): Likewise. + * semantics.cc (finish_non_static_data_member): Don't assume + TREE_TYPE (object) is set. + (finish_this_expr): Check current_class_type for lambda, + not current_class_ref. + +2025-05-29 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/109283 + * coroutines.cc (find_any_await): Only save the statement + pointer if the caller passes a place for it. + (flatten_await_stmt): When checking that ternary expressions + have been handled, also check that they contain a co_await. + +2025-05-29 Jason Merrill <jason@redhat.com> + + * decl.cc (start_decl): Also set invalid_constexpr + for maybe_constexpr_fn. + * parser.cc (cp_parser_jump_statement): Likewise. + * constexpr.cc (potential_constant_expression_1): Ignore + goto to an artificial label. + +2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_parser_omp_metadirective): Do not call + cp_parser_skip_to_end_of_block_or_statement after an error. + +2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/120180 + * parser.cc (cp_parser_omp_metadirective): Only consume the + token if it is the expected close paren. + +2025-05-29 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (analyze_fn_parms): No longer + create a parameter copy guard var. + * coroutines.h (struct param_info): Remove the + entry for the parameter copy destructor guard. + +2025-05-29 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120453 + * cp-tree.h (DECL_RAMP_P): New. + * typeck.cc (check_return_expr): Use DECL_RAMP_P instead + of DECL_RAMP_FN. + +2025-05-29 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * cp-trait.def (IS_DESTRUCTIBLE, IS_NOTHROW_DESTRUCTIBLE) + (IS_TRIVIALLY_DESTRUCTIBLE): New. + * constraint.cc (diagnose_trait_expr): Explain them. + * method.cc (destructible_expr): New. + (is_xible_helper): Use it. + * semantics.cc (finish_trait_expr): Handle new traits. + (trait_expr_value): Likewise. Complain about asking + whether a deleted dtor is trivial. + +2025-05-28 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::write_namespaces): Write + using-directives. + (module_state::read_namespaces): And read them. + * name-lookup.cc (add_using_namespace): Add overload. Build a + USING_DECL for modules. + (name_lookup::search_usings, name_lookup::queue_usings) + (using_directives_contain_std_p): Strip the USING_DECL. + * name-lookup.h: Declare it. + * parser.cc (cp_parser_import_declaration): Set MK_EXPORTING + for export import. + +2025-05-27 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc (cp_coroutine_transform::build_ramp_function): + Replace TRUTH_AND_EXPR with TRUTH_ANDIF_EXPR in three places. + +2025-05-26 Tobias Burnus <tburnus@baylibre.com> + + PR c++/120413 + * semantics.cc (finish_omp_target_clauses_r): Handle + BIND_EXPR with empty BIND_EXPR_BLOCK. + +2025-05-26 Jason Merrill <jason@redhat.com> + + * cp-tree.h: Declare tinst_dump_id. + * cp-objcp-common.cc (cp_register_dumps): Set it. + * pt.cc (push_tinst_level_loc): Dump it. + (reopen_tinst_level): Here too. + (tinst_complete_p): New. + (instantiate_pending_templates): Don't reopen_tinst_level for + already-complete instantiations. + +2025-05-26 Jason Merrill <jason@redhat.com> + + * cp-tree.h (class cxx_dump_pretty_printer): New. + * error.cc (cxx_dump_pretty_printer): Ctor/dtor definitions. + +2025-05-25 Jason Merrill <jason@redhat.com> + + * error.cc (dump_template_bindings): Correct skipping of + redundant bindings. + +2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120363 + * decl2.cc (get_tls_init_fn): Set context as global_namespace. + (get_tls_wrapper_fn): Likewise. + +2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120414 + * module.cc (trees_in::tree_node): Allow reading a USING_DECL + when streaming tt_data_member. + +2025-05-23 Jason Merrill <jason@redhat.com> + + * mangle.cc (mangle_decl_string): Don't push_tinst_level. + +2025-05-22 Jason Merrill <jason@redhat.com> + + PR c++/120935 + * cp-gimplify.cc (cp_fold): Check always_inline. + +2025-05-21 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc + (cp_coroutine_transform::build_ramp_function): Replace ramp + cleanup try-catch block with eh-only cleanup statements. + +2025-05-21 Iain Sandoe <iain@sandoe.co.uk> + + * coroutines.cc + (cp_coroutine_transform::build_ramp_function): Use + decltype(auto) to determine the type of the temporary + get_return_object. + +2025-05-21 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119916 + * coroutines.cc + (cp_coroutine_transform::wrap_original_function_body): Do not + initialise initial_await_resume_called here... + (cp_coroutine_transform::build_ramp_function): ... but here. + When the coroutine is not void, initialize a GRO object from + promise.get_return_object(). Use this as the argument to the + return expression. Use a regular cleanup for the GRO, since + it is ramp-local. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120349 + * module.cc (trees_out::core_bools): Always mark vtables as + DECL_EXTERNAL. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120013 + * module.cc (trees_in::install_entity): Handle re-registering + the inner TYPE_DECL of a partial specialisation. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120350 + * rtti.cc (get_tinfo_decl_direct): Mark TREE_ADDRESSABLE. + +2025-05-16 Ville Voutilainen <ville.voutilainen@gmail.com> + + * cp-gimplify.cc (cp_fold): Do the conversion unconditionally, even for same-type cases. + +2025-05-16 Iain Sandoe <iain@sandoe.co.uk> + + * typeck.cc (check_return_expr): Suppress conversions for NVRO + in coroutine ramp functions. + +2025-05-16 Iain Sandoe <iain@sandoe.co.uk> + + * decl.cc (poplevel): Set BLOCK_OUTER_CURLY_BRACE_P on the + body block for functions with no subblocks. + +2025-05-16 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (importer_interface): Adjust flags. + (get_importer_interface): Rename flags. + (trees_out::core_bools): Clean up special casing. + (trees_out::write_function_def): Rename flag. + +2025-05-15 Patrick Palka <ppalka@redhat.com> + + PR c++/120161 + * pt.cc (unify) <case RECORD_TYPE>: When comparing specializations + of a non-primary template, still perform a type comparison. + +2025-05-15 Jason Merrill <jason@redhat.com> + + * module.cc (trees_out::lang_decl_bools): Stream implicit_constexpr. + (trees_in::lang_decl_bools): Likewise. + (trees_in::is_matching_decl): Check it. + +2025-05-15 Jason Merrill <jason@redhat.com> + + PR c++/99599 + * pt.cc (conversion_may_instantiate_p): Make sure + classes are complete. + +2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> + + * cp-gimplify.cc (cp_fold): Remove a remnant comment. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120125 + * module.cc (trees_out::write_function_def): Only set + DECL_NOT_REALLY_EXTERN if the importer might need to emit it. + * optimize.cc (maybe_thunk_body): Don't assume 'fn' has a cgraph + node created. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119864 + * decl2.cc (start_objects): Only use module initialized for + host. + (c_parse_final_cleanups): Don't always create an OMP offload + init function in modules. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + * name-lookup.cc (lookup_imported_hidden_friend): Add back + lazy_load_pendings with comment. + +2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> + + * cp-gimplify.cc (cp_fold): Add to_underlying. + +2025-05-14 Owen Avery <powerboat9.gamer@gmail.com> + Jason Merrill <jason@redhat.com> + + * method.cc (synthesized_method_walk): Check whether + -Wvirtual-move-assign is enabled at the location of a base + class's move assignment operator. + +2025-05-12 Jason Merrill <jason@redhat.com> + + PR c++/120012 + * class.cc (check_non_pod_aggregate): Check is_empty_class. + +2025-05-10 Jason Merrill <jason@redhat.com> + + PR c++/120204 + * pt.cc (tsubst_baselink): Always error if lookup fails. + +2025-05-09 Jason Merrill <jason@redhat.com> + + * decl2.cc (determine_visibility): Ignore args for friend templates. + +2025-05-09 Jason Merrill <jason@redhat.com> + + PR c++/99599 + PR c++/120185 + * class.cc (type_has_converting_constructor): Handle null parm. + * pt.cc (fn_type_unification): Skip early non-dep checking if + no concepts. + +2025-05-08 Jason Merrill <jason@redhat.com> + + PR c++/99599 + * cp-tree.h (type_has_converting_constructor): Declare. + * class.cc (type_has_converting_constructor): New. + * pt.cc (conversion_may_instantiate_p): Don't check completeness. + +2025-05-05 Simon Martin <simon@nasilyan.com> + + * cp-tree.h (parsing_default_capturing_generic_lambda_in_template): + Remove obsolete prototype. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/115207 + * decl.cc (cp_finish_decl): Call layout_decl after CTAD. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/120012 + * cp-tree.h (struct lang_type): Add non_aggregate_pod. + (CLASSTYPE_NON_AGGREGATE_POD): New. + * class.cc (check_bases_and_members): Set it. + (check_non_pod_aggregate): Diagnose it. + +2025-05-02 Jakub Jelinek <jakub@redhat.com> + + PR c++/117827 + * init.cc (build_vec_init): Push to *cleanup_flags clearing of rval + instead of setting of iterator to maxindex. + +2025-05-01 Patrick Palka <ppalka@redhat.com> + + * constexpr.cc (explain_invalid_constexpr_fn): In the + DECL_CONSTRUCTOR_P branch pass the non-genericized body to + require_potential_constant_expression. + +2025-05-01 Patrick Palka <ppalka@redhat.com> + + PR c++/119034 + PR c++/68942 + * pt.cc (tsubst_expr) <case CALL_EXPR>: Revert PR68942 fix. + * semantics.cc (finish_call_expr): Ensure the callee of an + ADL-enabled call is wrapped in an OVERLOAD. + +2025-05-01 Jason Merrill <jason@redhat.com> + + * Make-lang.in: Don't pass the full path to gperf. + * std-name-hint.h: Regenerate. + +2025-05-01 Jason Merrill <jason@redhat.com> + + PR c++/119162 + * constexpr.cc (find_deleted_heap_var): Remove. + (cxx_eval_call_expression): Don't call it. Don't set TREE_STATIC on + heap vars. + (cxx_eval_outermost_constant_expr): Don't mess with varpool. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120023 + * module.cc (depset::hash::find_dependencies): Also call + add_deduction_guides when walking one. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119938 + * pt.cc (get_template_parm_object): When !check_init, add assert + that expr really is constant and mark decl as such. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119551 + PR c++/119996 + * module.cc (depset::hash::make_dependency): Also mark inline + variables referencing TU-local values as exposures here. + (depset::hash::finalize_dependencies): Add error message for + inline variables. + +2025-04-30 Patrick Palka <ppalka@redhat.com> + + PR c++/119981 + PR c++/119378 + * pt.cc (tsubst) <case UNBOUND_CLASS_TEMPLATE>: Substitute + into template parameter list first. When substituting the + context, only set processing_template_decl if there's more + than one level of introduced template parameters. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * parser.cc: Include "analyzer/analyzer-language.h". + (ana::cp_translation_unit): New class. + (cp_parser_translation_unit): Add call to + ana::on_finish_translation_unit. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * cxx-pretty-print.cc: Drop include of "make-unique.h". + Replace uses of ::make_unique with std::make_unique. + * error.cc: Likewise. + * name-lookup.cc: Likewise. + * parser.cc: Likewise. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * name-lookup.cc: Include "make-unique.h". + (namespace_hints::convert_candidates_to_name_hint): Use + ::make_unique rather than "new" when making + show_candidate_location and suggest_alternatives. + (namespace_hints::maybe_decorate_with_limit): Likewise when making + namespace_limit_reached. + (suggest_alternatives_for_1): Likewise when making + suggest_missing_option. + (maybe_suggest_missing_std_header): Likewise when making + missing_std_header. + (macro_use_before_def::maybe_make): Use std::unique_ptr. + (macro_use_before_def::macro_use_before_def): Make public. + (lookup_name_fuzzy): Use ::make_unique rather than "new" when + making suggest_missing_header. + * parser.cc: Include "make-unique.h". + (cp_parser_error_1): Use ::make_unique rather than "new" when + making suggest_missing_header. + +2025-04-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119939 + * module.cc (trees_out::lang_decl_vals): Also stream + lang->u.fn.context when DECL_UNIQUE_FRIEND_P. + (trees_in::lang_decl_vals): Likewise. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * call.cc (type_passed_as): Remove the + targetm.calls.promote_prototypes call. + (convert_for_arg_passing): Likewise. + * typeck.cc (cxx_safe_arg_type_equiv_p): Likewise. + +2025-04-25 Jason Merrill <jason@redhat.com> + + PR c++/119764 + PR c++/87185 + * lambda.cc (insert_capture_proxy): Handle noexcept lambda. + (prune_lambda_captures): Likewise, in ABI v21. + +2025-04-25 Jason Merrill <jason@redhat.com> + + * cp-tree.h (struct tinst_level): Add had_errors bit. + * pt.cc (push_tinst_level_loc): Clear it. + (pop_tinst_level): Set it. + (reopen_tinst_level): Check it. + (instantiate_pending_templates): Call limit_bad_template_recursion. + +2025-04-24 Jason Merrill <jason@redhat.com> + + PR c++/116954 + * contracts.cc (remove_contract_attributes): Return early if + not enabled. + +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * name-lookup.cc (lookup_imported_hidden_friend): Remove + unnecessary lazy_load_pendings. + +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119863 + * name-lookup.cc (get_mergeable_namespace_binding): Remove + no-longer-used function. + (lookup_imported_hidden_friend): Also look for hidden imported + decls in an attached decl's module. + +2025-04-21 Jason Merrill <jason@redhat.com> + + * constexpr.cc (cxx_eval_outermost_constant_expr): Move + verify_constant later. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/118775 + * constexpr.cc (cxx_eval_call_expression): Add assert. + (fold_to_constant): Handle processing_template_decl. + * init.cc (build_new_1): Use fold_to_constant. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/99456 + * constexpr.cc (cxx_eval_constant_expression): Check strict + instead of manifestly_const_eval. + (maybe_constant_init_1): Be strict for static constexpr vars. + +2025-04-19 Jason Merrill <jason@redhat.com> + + * coroutines.cc (coro_build_expr_stmt) + (coro_build_cvt_void_expr_stmt): Remove. + (build_actor_fn): Use finish_expr_stmt. + * semantics.cc (finish_expr_stmt): Avoid wrapping statement in + EXPR_STMT. + (finish_stmt_expr_expr): Add comment. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * constexpr.cc (is_valid_constexpr_fn): Improve diagnostic. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * constexpr.cc (cxx_eval_outermost_constant_expr): Give both + expression and allocation location in allocated storage diagnostics. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * name-lookup.cc (name_lookup::preserve_state): Fix reserve call. + * rtti.cc (get_tinfo_desc): Use vec_safe_grow_cleared. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * semantics.cc (finish_type_pack_element): Add more info + to diagnostics. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * decl.cc (cp_make_fname_decl): Prevent silent failure. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * lex.cc (unqualified_name_lookup_error): Handle 'requires' better. + +2025-04-17 Jason Merrill <jason@redhat.com> + + PR c++/113360 + * cp-tree.h (struct language_function): Add erroneous bit. + * constexpr.cc (explain_invalid_constexpr_fn): Return if set. + (cxx_eval_call_expression): Quiet if set. + * parser.cc (cp_parser_function_definition_after_declarator) + * pt.cc (instantiate_body): Set it. + +2025-04-16 Jason Merrill <jason@redhat.com> + + PR c++/114772 + PR c++/101180 + * pt.cc (apply_late_template_attributes): Also override + target_option_current_node. + +2025-04-16 Jason Merrill <jason@redhat.com> + + PR c++/116954 + * contracts.cc (remove_contract_attributes): Preserve flags + on the attribute list. + +2025-04-15 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119755 + * lambda.cc (prune_lambda_captures): Remove pruned capture from + function's BLOCK_VARS and BIND_EXPR_VARS. + +2025-04-15 Jason Merrill <jason@redhat.com> + + PR c++/111075 + * constexpr.cc (cxx_eval_call_expression): Allow trivial + call from a thunk. + +2025-04-15 Patrick Palka <ppalka@redhat.com> + + PR c++/119807 + PR c++/112288 + * pt.cc (tsubst_friend_function): Skip remapping an + existing specialization if it doesn't match the shape of + the new friend definition. + +2025-04-15 Jason Merrill <jason@redhat.com> + + PR c++/113835 + * constexpr.cc (cxx_eval_outermost_constant_expr): Bail out early + for std::vector(N). + +2025-04-14 Patrick Palka <ppalka@redhat.com> + + PR c++/99214 + * constraint.cc (satisfy_declaration_constraints): Pass the + original ARGS to push_tinst_level. + +2025-04-13 Patrick Palka <ppalka@redhat.com> + + PR c++/115639 + * constexpr.cc (struct constexpr_call): Add NSDMIs to each + field. Replace 'result' data member with 3-element 'results' + array and a 'result' accessor function. Remove + 'manifestly_const_eval' data member. + (constexpr_call_hasher::equal): Adjust after constexpr_call + layout change. + (cxx_eval_call_expression): Likewise. Define some local + variables closer to their first use. Use unknown_type_node + instead of NULL_TREE as the "in progress" result. After + successully evaluating a call with mce_unknown, also cache the + result in the corresponding mce_true and mce_false slots. + +2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (trees_in::is_matching_decl): Don't check for + mismatches when importing a DECL_MAYBE_DELETED function over one + that's already finished. + +2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (trees_in::is_matching_decl): Add custom errors for + different kinds of mismatches. + +2025-04-12 Patrick Palka <ppalka@redhat.com> + + PR c++/116416 + * constexpr.cc (maybe_constant_init_1): Generalize type of + of manifestly_const_eval parameter from bool to mce_value. + (maybe_constant_init): Define 3-parameter version taking a + manifestly_const_eval instead of bool parameter. + (cxx_constant_init): Adjust. + * cp-gimplify.cc (cp_fold_r) <case TARGET_EXPR>: Pass mce_false + to maybe_constant_init during prvalue folding if ff_mce_false is + set. + * cp-tree.h (maybe_constant_init): Declare new overload. + +2025-04-11 Jason Merrill <jason@redhat.com> + + PR c++/114970 + * cp-gimplify.cc (cp_build_init_expr_for_ctor): Suppress warnings on + return_this COMPOUND_EXPR. + +2025-04-10 Jason Merrill <jason@redhat.com> + + PR c++/119345 + * pt.cc (add_extra_args): Also register a specialization + of the captured variable. + +2025-04-10 Patrick Palka <ppalka@redhat.com> + + PR c++/119687 + * pt.cc (alias_ctad_tweaks): Use lkp_range / lkp_iterator + instead of ovl_iterator. + +2025-04-10 Jakub Jelinek <jakub@redhat.com> + + PR translation/119684 + * error.cc (cp_print_error_function): Use G_ instead of _ for + pp_printf arguments. + (function_category): Use G_ instead of _. + (print_instantiation_full_context): Use G_ instead of _ in pp_verbatim + arguments. + (print_location): Likewise. + (print_instantiation_partial_context): Likewise. + (maybe_print_constexpr_context): Likewise. + (print_constrained_decl_info): Use G_() around pp_verbatim argument. + (print_concept_check_info): Likewise. + (print_constraint_context_head): Likewise. + (print_requires_expression_info): Likewise. Merge separate pp_verbatim + "in requirements " and "with " into one with conditional messages. + +2025-04-10 Jason Merrill <jason@redhat.com> + + PR c++/119175 + * mangle.cc (decl_mangling_context): Look through lambda type. + +2025-04-09 Patrick Palka <ppalka@redhat.com> + + PR c++/119574 + * pt.cc (add_extra_args): Remove checking assert. + +2025-04-09 Jason Merrill <jason@redhat.com> + + PR c++/118698 + * constraint.cc (struct norm_info): Add tf_partial. + * pt.cc (any_template_parm_r): Handle LAMBDA_EXPR_EXTRA_ARGS. + +2025-04-08 Jason Merrill <jason@redhat.com> + + PR c++/117530 + * pt.cc (instantiate_template): Check retrieve_specialization after + tsubst. + +2025-04-07 Jason Merrill <jason@redhat.com> + + PR c++/119652 + * constexpr.cc (cxx_eval_outermost_constant_expr): Also don't add a + TARGET_EXPR around AGGR_INIT_EXPR. + +2025-04-06 Patrick Palka <ppalka@redhat.com> + + PR c++/118626 + * pt.cc (maybe_dependent_member_ref): Restrict TYPENAME_TYPE + shortcut to non-typedef TYPE_DECL. + +2025-04-06 Patrick Palka <ppalka@redhat.com> + + PR c++/118626 + * pt.cc (maybe_dependent_member_ref): Substitute and return the + stripped type if we decided to not rewrite it directly. + +2025-04-05 Patrick Palka <ppalka@redhat.com> + + PR c++/118249 + * constexpr.cc (potential_constant_expression_1) + <case INDIRECT_REF>: Remove obsolete *this handling. + +2025-04-05 Jason Merrill <jason@redhat.com> + + PR c++/118629 + * name-lookup.cc (pushdecl_outermost_localscope): Look for an + sk_block. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119564 + * decl.cc (cp_tree_node_structure): Add TU_LOCAL_ENTITY; fix + formatting. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119608 + * module.cc (trees_out::decl_node): Maybe require by-value + walking not just when streaming. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119462 + * module.cc (trees_in::is_matching_decl): Propagate exception + spec and constexpr to DECL_MAYBE_DELETED; clear if appropriate. + +2025-04-04 Jason Merrill <jason@redhat.com> + + PR c++/99546 + PR c++/113925 + PR c++/106976 + PR c++/109961 + PR c++/117336 + * lambda.cc (build_lambda_object): Handle fake + requires-expr processing_template_decl. + * parser.cc (cp_parser_lambda_expression): Likewise. + +2025-04-04 Patrick Palka <ppalka@redhat.com> + + PR c++/117849 + * semantics.cc (finish_id_expression_1): Allow use of constraint + variable outside an unevaluated context. + +2025-04-03 Patrick Palka <ppalka@redhat.com> + + PR c++/119387 + * constexpr.cc (p2280_active_p): New. + (cxx_eval_constant_expression) <case VAR_DECL>: Use it to + restrict P2280 relaxations. + <case PARM_DECL>: Likewise. + +2025-04-03 Jason Merrill <jason@redhat.com> + + * module.cc (module_state::read_cluster) + (post_load_processing): Clear DECL_EXTERNAL if DECL_COMDAT. + +2025-04-03 Jason Merrill <jason@redhat.com> + + * call.cc (add_candidates): Re-lookup ne_fns if we move into + another namespace. + +2025-04-03 Andrew Pinski <quic_apinski@quicinc.com> + Jakub Jelinek <jakub@redhat.com> + + PR c++/119563 + * call.cc (build_list_conv): Fix a typo in loop gathering + summary information from subsubconvs. + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118965 + * parser.cc (c_parser_omp_clause_init_modifiers): Adjust + error message. + (cp_parser_omp_clause_init): Remove code for recognizing clauses + without modifiers. Diagnose missing target/targetsync modifier. + (cp_finish_omp_declare_variant): Diagnose missing target/targetsync + modifier. + +2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119551 + * module.cc (trees_out::write_var_def): Only ignore non-inline + variable initializers. + +2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> + + * parser.cc (cp_parser_diagnose_invalid_type_name): Replace + fmodules-ts with fmodules. + (cp_parser_template_declaration): Likewise. + +2025-04-01 Marek Polacek <polacek@redhat.com> + + PR c++/119383 + * call.cc (build_over_call): Use force_lvalue to ensure op= returns + an lvalue. + * cp-tree.h (force_lvalue): Declare. + * cvt.cc (force_lvalue): New. + * typeck.cc (cp_build_indirect_ref_1): Revert r15-8011. + +2025-03-31 Jason Merrill <jason@redhat.com> + + PR c++/119401 + * pt.cc (regenerate_decl_from_template): Don't regenerate if the + signature involves a lambda. + +2025-03-31 Jakub Jelinek <jakub@redhat.com> + + PR c++/119518 + * decl.cc (finish_function): Don't set TREE_NOTHROW for + functions with "noipa" attribute even when we can prove + they can't throw. + +2025-03-29 Jason Merrill <jason@redhat.com> + + * decl.cc (duplicate_decls): Don't clobber DECL_MODULE_IMPORT_P with + an injected friend. + * name-lookup.cc (check_module_override): Look at all reachable + decls in decl's originating module. + +2025-03-29 Jason Merrill <jason@redhat.com> + + PR c++/64500 + PR c++/116285 + * name-lookup.cc (push_to_top_level): Don't try to store_bindings + for namespace levels. + +2025-03-29 Jakub Jelinek <jakub@redhat.com> + + * name-lookup.cc (maybe_lazily_declare): Fix comment typo, + anout -> about. + +2025-03-29 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118961 + * class.cc (copy_fndecl_with_name): Mark clones as non-abstract. + * cp-tree.h (setup_explicit_instantiation_definition_linkage): + Declare new function. + * module.cc (trees_in::read_var_def): Use it. + (module_state::read_cluster): Likewise. + * pt.cc (setup_explicit_instantiation_definition_linkage): New + function. + (mark_decl_instantiated): Use it. + +2025-03-27 Tobias Burnus <tburnus@baylibre.com> + + * cp-tree.h (cp_finish_omp_init_prefer_type): Add. + * decl.cc (omp_declare_variant_finalize_one): Call it. + * pt.cc (tsubst_attribute): Minor rebustification for OpenMP + append_args handling. + * semantics.cc (cp_omp_init_prefer_type_update): Rename to ... + (cp_finish_omp_init_prefer_type): ... this; remove static attribute + and return modified tree. Move clause handling to ... + (finish_omp_clauses): ... the caller. + +2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118920 + * cp-tree.h (equal_abi_tags): Declare. + * mangle.cc (equal_abi_tags): Make external, fix comparison. + (tree_string_cmp): Make internal. + * module.cc (trees_in::check_abi_tags): New function. + (trees_in::decl_value): Use it. + (trees_in::is_matching_decl): Likewise. + +2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/118920 + * name-lookup.cc (lookup_imported_hidden_friend): Check for + module entity rather than just module import. + * module.cc (get_originating_module): Rename for_mangle parm to + global_m1. + * error.cc (dump_module_suffix): Don't decorate global module decls. + +2025-03-26 Thomas Schwinge <tschwinge@baylibre.com> + Jason Merrill <jason@redhat.com> + + * rtti.cc (throw_bad_typeid): Adjust implicit '__cxa_bad_typeid' + prototype to reality. Adjust all users. + +2025-03-25 Simon Martin <simon@nasilyan.com> + + PR c++/114525 + * typeck2.cc (build_m_component_ref): Call cp_build_addr_expr + instead of build_address. + +2025-03-25 yxj-github-437 <2457369732@qq.com> + + * parser.cc (cp_parser_lambda_expression): Use cp_evaluated. + +2025-03-24 Jason Merrill <jason@redhat.com> + + * semantics.cc (finish_type_pack_element): Pass mce_true to + maybe_constant_value. + +2025-03-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119154 + * decl2.cc (vague_linkage_p): Revert gnu_linkage handling. + * module.cc (importer_interface): New enumeration. + (get_importer_interface): New function. + (trees_out::core_bools): Use it to determine interface. + (trees_in::is_matching_decl): Propagate gnu_inline handling onto + existing forward declarations. + (trees_in::read_var_def): Also note explicit instantiation + definitions of variable templates to be emitted. + +2025-03-22 Patrick Palka <ppalka@redhat.com> + + PR c++/119379 + * pt.cc (tsubst_decl) <case TYPE_DECL>: Preserve structural-ness + of a partially instantiated typedef. + +2025-03-21 Paul-Antoine Arras <parras@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_parser_omp_clause_init): Make addressable. + +2025-03-21 Jason Merrill <jason@redhat.com> + + * init.cc (throw_bad_array_new_length): Returns void. + +2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> + + * rtti.cc (throw_bad_cast): Adjust implicit '__cxa_bad_cast' + prototype to reality. + +2025-03-20 Richard Biener <rguenther@suse.de> + + * module.cc (trees_out::core_bools): Convert scoped enum + explicitly. + +2025-03-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/119370 + * decl2.cc (set_context_for_auto_vars_r): New function. + (emit_partial_init_fini_fn): Call walk_tree with that function + on &init before walk_tree with copy_tree_body_r. + +2025-03-19 Jason Merrill <jason@redhat.com> + + PR c++/119316 + * mangle.cc (write_expression) [NEW_EXPR]: Avoid using + compute_array_index_type. + (write_array_type): Add checking_assert. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + PR target/118068 + * cp-gimplify.cc (cp_fold_immediate): Use cp_walk_tree rather than + cp_walk_tree_without_duplicates. + (cp_fold_immediate_r): For IF_STMT_CONSTEVAL_P IF_STMT don't walk + into THEN_CLAUSE subtree, only ELSE_CLAUSE. For non-call related + stmts call data->pset.add and if it returns true, don't walk subtrees. + (cp_fold_r): Don't call cp_fold_immediate_r here. + (cp_fold_function): For C++20 or later call cp_walk_tree + with cp_fold_immediate_r callback first before calling cp_walk_tree + with cp_fold_r callback and call data.pset.empty () in between. + (cp_fully_fold_init): Likewise. + (cp_genericize_r) <case RETURN_EXPR>: Suppress -Wreturn-type warning + if RETURN_EXPR has erroneous argument. + +2025-03-18 Marek Polacek <polacek@redhat.com> + + PR c++/119344 + * typeck.cc (cp_build_binary_op): Use cp_save_expr instead of save_expr. + +2025-03-18 Jason Merrill <jason@redhat.com> + + PR c++/119194 + * decl2.cc (min_vis_expr_r) [ADDR_EXPR]: New case. + +2025-03-18 Marek Polacek <polacek@redhat.com> + + PR c++/118104 + * pt.cc (use_pack_expansion_extra_args_p): Remove an assert. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR c/116545 + * parser.cc (cp_parser_statement): Call cp_parser_attributes_opt + rather than cp_parser_std_attribute_spec_seq. + (cp_parser_jump_statement): Diagnose gnu::musttail attributes + with no arguments. + +2025-03-18 Patrick Palka <ppalka@redhat.com> + + PR c++/119233 + * pt.cc (mark_template_arguments_used): Also handle member + function pointers. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR target/119120 + * cp-gimplify.cc (cp_genericize_r): Set DECL_NOT_GIMPLE_REG_P + on {REAL,IMAG}PART_EXPR is_gimple_reg operand at -O0 if it is lhs + of a MODIFY_EXPR. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR c++/119150 + * constexpr.cc (cxx_eval_call_expression): For + DECL_IMMEDIATE_FUNCTION_P (fun) set manifestly_const_eval in new_ctx + and new_call to mce_true and set ctx to &new_ctx. + +2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118799 + * module.cc (depset::hash::is_tu_local_entity): Only types, + functions, variables, and template (specialisations) can be + TU-local. Explicit type aliases are TU-local iff the type they + refer to are. + (module_state::write_namespaces): Allow unnamed namespaces in + named modules. + (check_module_decl_linkage): Error for all exported declarations + in an unnamed namespace. + +2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119154 + * decl2.cc (vague_linkage_p): Don't treat gnu_inline functions + as having vague linkage. + * module.cc (trees_out::core_bools): Clear DECL_INTERFACE_KNOWN + for vague-linkage entities. + (read_var_def): Maybe set comdat linkage for imported var + definitions. + (module_state::read_cluster): Use expand_or_defer_fn instead of + ad-hoc linkage management. + (post_load_processing): Likewise. + * semantics.cc (expand_or_defer_fn_1): Don't forget that we had + a definition at all. + +2025-03-12 Marek Polacek <polacek@redhat.com> + + PR c++/117512 + * typeck.cc (cp_build_indirect_ref_1): Only do the *&e -> e + folding if the result would be an lvalue. + +2025-03-12 Simon Martin <simon@nasilyan.com> + + PR c++/110584 + * cp-tree.h (strip_normal_capture_proxy): Declare. + * lambda.cc (strip_normal_capture_proxy): New function to look + through normal capture proxies. + (build_capture_proxy): Use it. + * semantics.cc (process_outer_var_ref): Likewise. + +2025-03-12 Marek Polacek <polacek@redhat.com> + + PR c++/119134 + * pt.cc (check_for_bare_parameter_packs): Check DECL_CONTEXT. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR c++/119076 + * module.cc (trees_out::start): Handle RAW_DATA_CST. + (trees_in::start): Likewise. + (trees_out::core_vals): Likewise. + (trees_in::core_vals): Likewise. + +2025-03-11 Jason Merrill <jason@redhat.com> + + PR c++/119162 + * constexpr.cc (find_deleted_heap_var): New. + (cxx_eval_call_expression): Don't cache a + reference to heap_deleted. + +2025-03-10 Nathaniel Shead <nathanieloshead@gmail.com> + + * module.cc (trees_out::has_tu_local_dep): Also look at the + TI_TEMPLATE if we don't find a dep for a decl. + (depset::hash::is_tu_local_entity): Handle unnamed template + types, treat lambdas specially. + (is_exposure_of_member_type): New function. + (depset::hash::add_dependency): Use it. + (depset::hash::finalize_dependencies): Likewise. + +2025-03-08 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_parser_asm_definition): Make comment more explicit. + (cp_parser_asm_operand_list): Likewise. Also correct the comment + block at the top of the function to reflect reality. + +2025-03-08 Jason Merrill <jason@redhat.com> + Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/114630 + PR c++/114795 + * pt.cc (reopen_tinst_level): Set or clear MK_PURVIEW. + (mark_decl_instantiated): Call set_instantiating_module. + (instantiate_pending_templates): Save and restore module_kind so + it isn't affected by reopen_tinst_level. + +2025-03-07 Marek Polacek <polacek@redhat.com> + + PR c++/118775 + * constexpr.cc (cxx_eval_call_expression): Check tree_fits_uhwi_p. + +2025-03-07 Nathaniel Shead <nathanieloshead@gmail.com> + + * constexpr.cc (potential_constant_expression_1): Handle + TU_LOCAL_ENTITY. + * pt.cc (expr_contains_tu_local_entity): Remove. + (function_contains_tu_local_entity): Remove. + (dependent_operand_p): Remove special handling for + TU_LOCAL_ENTITY. + (tsubst_expr): Handle TU_LOCAL_ENTITY when tsubsting OVERLOADs; + remove now-unnecessary extra handling. + (type_dependent_expression_p): Handle TU_LOCAL_ENTITY. + +2025-03-06 Simon Martin <simon@nasilyan.com> + + * cp-tree.h (processing_contract_condition): Fix comment typo, + paramter -> parameter. + * parser.cc (cp_parser_requires_expression): Fix comment typo, + delared -> declared. + +2025-03-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/98533 + PR c++/119123 + * parser.cc (cp_parser_class_specifier): Update TYPE_FIELDS of + variant types in case cp_parser_late_parsing_default_args etc. change + TYPE_FIELDS on the main variant. Add switch_to_class lambda and + use it to simplify repeated class switching code. + +2025-03-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/119138 + * pt.cc (apply_late_template_attributes): Set p to NULL if + ATTR_FLAG_TYPE_IN_PLACE is not set in attr_flags. + (tsubst) <case POINTER_TYPE, case REFERENCE_TYPE, case ARRAY_TYPE>: + Reuse original type even if TYPE_ATTRIBUTES is non-NULL, but all + the attributes are non-dependent. + +2025-03-06 Simon Martin <simon@nasilyan.com> + + PR c++/117504 + * call.cc (perform_implicit_conversion_flags): Don't call + mark_{l,r}value_use. + +2025-03-05 Jason Merrill <jason@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + PR c++/117364 + PR c++/118874 + * coroutines.cc (cp_coroutine_transform::build_ramp_function): For + !aggregate_value_p return force return value into a local temp. + +2025-03-05 Da Xie <xxie_xd@163.com> + + PR c++/100589 + * decl.cc (grokdeclarator): Issue an error for a declarator with + constrained auto type specifier and trailing return types. Include + function names if available. + +2025-03-05 Simon Martin <simon@nasilyan.com> + + PR c++/116740 + * name-lookup.cc (set_identifier_type_value_with_scope): Don't + fail assert with ill-formed input. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/119102 + * module.cc (enum streamed_extensions): Add SE_OPENMP_SIMD + and SE_OPENACC, change value of SE_OPENMP and SE_BITS. + (CASE_OMP_SIMD_CODE, CASE_OMP_CODE, CASE_OACC_CODE): Define. + (trees_out::start): Don't set SE_OPENMP extension for OMP_CLAUSE. + Set SE_OPENMP_SIMD extension for CASE_OMP_SIMD_CODE, SE_OPENMP + for CASE_OMP_CODE and SE_OPENACC for CASE_OACC_CODE. + (trees_in::start): Don't fail for OMP_CLAUSE with missing + SE_OPENMP extension. Do fail for CASE_OMP_SIMD_CODE and missing + SE_OPENMP_SIMD extension, or CASE_OMP_CODE and missing SE_OPENMP + extension, or CASE_OACC_CODE and missing SE_OPENACC extension. + (module_state::write_readme): Write all of SE_OPENMP_SIMD, SE_OPENMP + and SE_OPENACC extensions. + (module_state::read_config): Diagnose missing -fopenmp, -fopenmp-simd + and/or -fopenacc depending on extensions used. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + * typeck.cc (check_return_expr): Fix comment typo, rom -> from. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/118787 + * pt.cc (tsubst) <case ARRAY_TYPE>: Use return t; only if it doesn't + have any TYPE_ATTRIBUTES. Call apply_late_template_attributes. + <case POINTER_TYPE, case REFERENCE_TYPE>: Likewise. Formatting fix. + +2025-03-04 Jason Merrill <jason@redhat.com> + + PR c++/119073 + * call.cc (extend_temps_r): Preserve types of COND_EXPR arms. + +2025-03-04 Marek Polacek <polacek@redhat.com> + + PR c++/109431 + * cp-tree.h (range_expr_nelts): Declare. + * init.cc (build_vec_init): If the CONSTRUCTOR's index is a + RANGE_EXPR, use range_expr_nelts to count how many elements + were initialized. + +2025-02-28 Marek Polacek <polacek@redhat.com> + + PR c++/114913 + PR c++/110822 + * constexpr.cc (replace_decl_r): If we've replaced something + inside of an ADDR_EXPR, call cxx_mark_addressable and + recompute_tree_invariant_for_addr_expr on the resulting ADDR_EXPR. + +2025-02-28 Marek Polacek <polacek@redhat.com> + + PR c++/118986 + * constexpr.cc (cxx_eval_call_expression): Check that the types match + before calling replace_decl, if not, set *non_constant_p. + (maybe_constant_init_1): Don't strip INIT_EXPR if it would change the + type of the expression. + +2025-02-28 Patrick Palka <ppalka@redhat.com> + + PR c++/119038 + * lambda.cc (maybe_generic_this_capture): Consider xobj + member functions as well, not just iobj. Update function + comment. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/119045 + * constexpr.cc (cxx_eval_store_expression) <case REALPART_EXPR>: + Assert that refs->is_empty () rather than probe == target. + (cxx_eval_store_expression) <case IMAGPART_EXPR>: Likewise. + +2025-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/118928 + * constexpr.cc (cxx_eval_constant_expression) <case GOTO_EXPR>: Remove + an assert. + +2025-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/118516 + * parser.cc (cp_parser_template_argument): Don't call + require_potential_constant_expression. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/118876 + * cp-tree.h (register_dtor_fn): Add a bool argument defaulted to false. + * decl.cc (start_cleanup_fn): Add OMP_TARGET argument, use + "__omp_tcf" prefix rather than "__tcf" in that case. Add + "omp declare target" and "omp declare target nohost" attributes + to the fndecl. + (register_dtor_fn): Add OMP_TARGET argument, pass it down to + start_cleanup_fn. + * decl2.cc (one_static_initialization_or_destruction): Add OMP_TARGET + argument, pass it down to register_dtor_fn. + (emit_partial_init_fini_fn): Pass omp_target to + one_static_initialization_or_destruction. + (handle_tls_init): Pass false to + one_static_initialization_or_destruction. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/118923 + * tree.cc (get_internal_target_expr): Use force_target_expr + instead of build_target_expr_with_type. + * typeck.cc (get_member_function_from_ptrfunc): Use + get_internal_target_expr instead of force_target_expr. + * decl.cc (cp_finish_decl): Likewise. + * method.cc (build_comparison_op): Likewise. + +2025-02-22 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_finish_omp_declare_variant): Initialize + append_args_last. + +2025-02-17 Jason Merrill <jason@redhat.com> + + PR c++/118856 + PR c++/118763 + * cp-tree.h (TARGET_EXPR_INTERNAL_P): New. + * call.cc (extend_temps_r): Check it instead of CLEANUP_EH_ONLY. + * tree.cc (get_internal_target_expr): Set it instead. + * typeck2.cc (maybe_push_temp_cleanup): Don't set CLEANUP_EH_ONLY. + +2025-02-15 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118846 + * cp-tree.h (WILDCARD_TYPE_P): Include UNBOUND_CLASS_TEMPLATE. + * decl2.cc (min_vis_expr_r): Don't assume a TEMPLATE_DECL will + be a function or variable. + +2025-02-15 Jason Merrill <jason@redhat.com> + + PR c++/118053 + * constexpr.cc (cxx_eval_constant_expression): Generalize + DECL_VALUE_EXPR invisiref handling. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + * pt.cc (tsubst_expr) <COMPONENT_REF>: Assign the result of + force_paren_expr. + +2025-02-14 Jason Merrill <jason@redhat.com> + + PR c++/118856 + * call.cc (set_up_extended_ref_temp): Retain a TARGET_EXPR for + cleanups if something later in initialization throws. + (extend_temps_r): Don't extend eliding or EH-only TARGET_EXPRs. + * cp-tree.h (get_internal_target_expr): Declare. + * tree.cc (get_internal_target_expr): New. + * decl.cc (cp_finish_decomp, expand_static_init): Use it. + * except.cc (build_throw): Likewise. + * init.cc (build_new_1, build_vec_init, build_delete): Likewise. + (build_vec_delete): Likewise. + * typeck2.cc (maybe_push_temp_cleanup): Likewise. + +2025-02-14 Jason Merrill <jason@redhat.com> + + * init.cc (perform_member_init): Remove unicode from comment. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/116379 + * pt.cc (tsubst_expr) <COMPONENT_REF>: Use force_paren_expr to set + REF_PARENTHESIZED_P. + +2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> + + * lambda.cc (record_lambda_scope): Clear mangling scope for + otherwise unattached lambdas in class member templates. + +2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/107741 + * cp-tree.h (is_static_data_member_initialized_in_class): + Declare new predicate. + * decl2.cc (start_initialized_static_member): Push the + TEMPLATE_DECL when appropriate. + (is_static_data_member_initialized_in_class): New predicate. + (finish_initialized_static_member): Use it. + * lambda.cc (record_lambda_scope): Likewise. + * parser.cc (cp_parser_init_declarator): Start the member decl + early for static members so that lambda scope is set. + (cp_parser_template_declaration_after_parameters): Don't + register in-class initialized static members here. + +2025-02-13 Jason Merrill <jason@redhat.com> + + * tree.cc (handle_init_priority_attribute): Use OPT_prio_ctor_dtor. + +2025-02-13 Jason Merrill <jason@redhat.com> + + * decl.cc (omp_declare_variant_finalize_one): Use forward_parm. + +2025-02-13 Jason Merrill <jason@redhat.com> + + PR c++/118856 + * call.cc (struct extend_temps_data): Add var_map. + (extend_all_temps): Adjust. + (set_up_extended_ref_temp): Make walk_data void*. + (extend_temps_r): Remap variables. Handle pset here. + Extend all TARGET_EXPRs. + +2025-02-13 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118849 + * decl2.cc (min_vis_expr_r): Constrain visibility according to + the type of decl_constant_var_p decls. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/118822 + PR c++/118833 + * semantics.cc (adjust_loop_decl_cond): Allow multiple trailing + CLEANUP_STMT levels in *BODY_P. Set *CLEANUP_P to the number + of levels rather than one particular cleanup, keep the cleanups + in *PREP_P. Set *BODY_P to the last stmt in the cur_stmt_list + or NULL if *CLEANUP_P and the innermost cur_stmt_list is empty. + (finish_loop_cond_prep): New function. + (finish_while_stmt, finish_for_stmt): Use it. Don't call + set_one_cleanup_loc. + * constexpr.cc (cxx_eval_loop_expr): Adjust handling of + {FOR,WHILE}_COND_{PREP,CLEANUP}. + +2025-02-11 Jason Merrill <jason@redhat.com> + + PR c++/118574 + PR c++/107637 + * call.cc (struct extend_temps_data): New. + (extend_temps_r, extend_all_temps): New. + (set_up_extended_ref_temp): Handle tree walk case. + (extend_ref_init_temps): Cal extend_all_temps. + * decl.cc (initialize_local_var): Revert ext-temps change. + * parser.cc (cp_convert_range_for): Likewise. + (cp_parser_omp_loop_nest): Likewise. + * pt.cc (tsubst_stmt): Likewise. + * semantics.cc (finish_for_stmt): Likewise. + +2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_finish_omp_declare_variant): Update call to + omp_check_context_selector. + (cp_parser_omp_metadirective): Likewise. + +2025-02-11 Simon Martin <simon@nasilyan.com> + + PR c++/118306 + PR c++/118304 + * decl.cc (maybe_strip_indirect_ref): New. + (check_special_function_return_type): Take declarator as input. + Call maybe_strip_indirect_ref and error out if it returns true. + (grokdeclarator): Update call to + check_special_function_return_type. + +2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118807 + * pt.cc (reregister_specialization): Remove spec from + DECL_TEMPLATE_INSTANTIATIONS. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/115586 + * parser.cc (cp_parser_range_for): For name independent decls in + structured bindings, only push the name/binding once per + structured binding. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c++/86769 + * semantics.cc (set_one_cleanup_loc): New function. + (set_cleanup_locs): Use it. + (simplify_loop_decl_cond): Remove. + (adjust_loop_decl_cond): New function. + (begin_while_stmt): Add 2 further NULL_TREE operands to build_stmt. + (finish_while_stmt_cond): Call adjust_loop_decl_cond instead of + simplify_loop_decl_cond. + (finish_while_stmt): Call do_poplevel also on WHILE_COND_PREP if + non-NULL and also use pop_stmt_list rather than do_poplevel for + WHILE_BODY in that case. Call set_one_cleanup_loc. + (begin_for_stmt): Add 2 further NULL_TREE operands to build_stmt. + (finish_for_cond): Call adjust_loop_decl_cond instead of + simplify_loop_decl_cond. + (finish_for_stmt): Call do_poplevel also on FOR_COND_PREP if non-NULL + and also use pop_stmt_list rather than do_poplevel for FOR_BODY in + that case. Call set_one_cleanup_loc. + * constexpr.cc (cxx_eval_loop_expr): Handle + {WHILE,FOR}_COND_{PREP,CLEANUP}. + (check_for_return_continue): Handle {WHILE,FOR}_COND_PREP. + (potential_constant_expression_1): RECUR on + {WHILE,FOR}_COND_{PREP,CLEANUP}. + +2025-02-07 Marek Polacek <polacek@redhat.com> + + PR c++/117106 + PR c++/118190 + * pt.cc (maybe_instantiate_noexcept): Give an error if the noexcept + hasn't been parsed yet. + +2025-02-07 Simon Martin <simon@nasilyan.com> + + PR c++/118282 + * call.cc (add_builtin_candidate): Also check for null_ptr_cst_p + operands. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118763 + * init.cc (build_new_1): Don't set CLEANUP_EH_ONLY. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118773 + * decl.cc (grokdeclarator): Use cplus_decl_attributes rather than + decl_attributes for std_attributes on pointer and array types. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118661 + * constexpr.cc (potential_constant_expression_1): Don't diagnose + lvalue-to-rvalue conversion of volatile lvalue if it has NULLPTR_TYPE. + * decl2.cc (decl_maybe_constant_var_p): Return true for constexpr + decls with NULLPTR_TYPE even if they are volatile. + +2025-02-05 Simon Martin <simon@nasilyan.com> + + PR c++/118319 + * decl.cc (grokfndecl): Inspect all friend function parameters. + If it's not valid for them to have a default value and we're + processing a template, set the default value to error_mark_node + and give a hard error. + +2025-02-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/118671 + * call.cc (build_list_conv): For RAW_DATA_CST, call + implicit_conversion with INTEGER_CST representing first byte instead + of the whole RAW_DATA_CST. If it is an optimizable trivial + conversion, just save that to subconvs, otherwise allocate an + artificial ck_list for all the RAW_DATA_CST bytes and create + subsubconv for each of them. + (convert_like_internal): For ck_list with RAW_DATA_CST, instead of + doing all the checks for optimizable conversion just check kind and + assert everything else, otherwise use subsubconversions instead of + the subconversion for each element. + +2025-02-04 Marek Polacek <polacek@redhat.com> + + PR c++/117778 + * parser.cc (cp_parser_late_return_type_opt): Maybe override + auto_is_implicit_function_template_parm_p. + (cp_parser_parameter_declaration): Move a make_temp_override below. + +2025-02-04 Marek Polacek <polacek@redhat.com> + + PR c++/118718 + * parser.cc (warn_about_ambiguous_parse): Don't warn when a trailing + return type is present. + +2025-02-04 Simon Martin <simon@nasilyan.com> + Jason Merrill <jason@redhat.com> + + PR c++/117114 + PR c++/109918 + * class.cc (warn_hidden): Keep track of overloaded and of hidden + base methods. + * error.cc (location_of): Skip over conv_op_marker. + +2025-02-04 Simon Martin <simon@nasilyan.com> + + PR c++/114619 + * init.cc (build_vec_init): Properly determine whether + digest_init has been called. + +2025-02-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/118719 + * lambda.cc (add_capture): Only pedwarn about capturing structured + binding if !explicit_init_p. + +2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/108205 + * contracts.cc (get_pseudo_contract_violation_type): Give names + to generated FIELD_DECLs. + (declare_handle_contract_violation): Mark contract_violation + type as external linkage. + (build_contract_handler_call): Ensure any builtin declarations + created here aren't treated as attached to the current module. + +2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98893 + * decl.cc (start_cleanup_fn): Make name from the mangled name of + the passed-in decl. + (register_dtor_fn): Pass decl to start_cleanup_fn. + +2025-02-03 A J Ryan Solutions Ltd <gcc.gnu.org@ajryansolutions.co.uk> + + PR c++/118265 + * pt.cc (find_parameter_packs_r) <case TEMPLATE_PARM_INDEX>: + Walk into the type of a parameter pack. + +2025-02-03 Iain Sandoe <iains.gcc@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/116506 + PR c++/116880 + * coroutines.cc (build_co_await): Ensure that xvalues are + materialised. Handle references/pointer values in awaiter + access expressions. + (is_stable_lvalue): New. + * decl.cc (cxx_maybe_build_cleanup): Handle null arg. + +2025-02-03 Jason Merrill <jason@redhat.com> + + PR c++/116914 + PR c++/117231 + PR c++/118470 + PR c++/118491 + * semantics.cc (finish_for_stmt): Don't wrap the result of + pop_stmt_list in EXPR_STMT. + +2025-02-03 Richard Biener <rguenther@suse.de> + + PR c++/79786 + * rtti.cc (emit_tinfo_decl): Fix DATA_ABI_ALIGNMENT invocation. + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR c++/117516 + * class.cc (field_nonempty_p): Formatting fixes. Use + integer_zerop instead of tree_int_cst_equal with size_zero_node. + (struct flexmems_t): Change type of first member from tree to bool. + (find_flexarrays): Add nested_p argument. Change pun argument type + from tree to bool, adjust uses. Formatting fixes. If BASE_P or + NESTED_P and T is RECORD_TYPE, start looking only at the last + non-empty or array FIELD_DECL. Adjust recursive call, set first + if it was a nested call and found an array. + (diagnose_invalid_flexarray, diagnose_flexarrays, check_flexarrays): + Formatting fixes. + +2025-01-31 Marek Polacek <polacek@redhat.com> + + PR c++/117501 + * cp-gimplify.cc (cp_build_init_expr_for_ctor): New. + (cp_fold_immediate_r): Call it. + (cp_fold): Break out code into cp_build_init_expr_for_ctor. + +2025-01-30 Patrick Palka <ppalka@redhat.com> + + * cp-tree.h (LAMBDA_EXPR_CAPTURES_THIS_P): Remove. + +2025-01-30 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/118673 + * tree.cc (lvalue_kind): Mark CONST_DECLs as mergable + when they are also TREE_STATIC. + +2025-01-30 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_finish_omp_declare_variant): Modify how append_args + is saved internally. + * pt.cc (tsubst_attribute): Likewise. + (tsubst_omp_clauses): Remove C_ORT_OMP_DECLARE_SIMD from interop + handling as no longer called for it. + * decl.cc (omp_declare_variant_finalize_one): Update append_args + changes; fixes for ADL input. + +2025-01-29 Jakub Jelinek <jakub@redhat.com> + + PR c++/118655 + * semantics.cc (trait_expr_value) <case CPTK_IS_BOUNDED_ARRAY>: Return + false for zero-sized arrays. + +2025-01-28 Jason Merrill <jason@redhat.com> + + PR c++/118285 + * constexpr.cc (cxx_eval_vec_init_1): Build INIT_EXPR for + initializing a class. + +2025-01-28 Jason Merrill <jason@redhat.com> + + PR c++/118673 + * call.cc (maybe_init_list_as_array): Check for lvalue + initializers. + * cp-tree.h (enum cp_lvalue_kind_flags): Add clk_mergeable. + * tree.cc (lvalue_kind): Return it. + (non_mergeable_glvalue_p): New. + (test_lvalue_kind): Adjust. + +2025-01-28 Patrick Palka <ppalka@redhat.com> + + PR c++/117855 + * cp-tree.h (DECL_FRIEND_CONTEXT): Exclude deduction guides. + +2025-01-27 Jason Merrill <jason@redhat.com> + + PR c++/118632 + * pt.cc (unify): Only strip conversion if deducible_expression. + +2025-01-27 Simon Martin <simon@nasilyan.com> + + PR c++/114292 + * pt.cc (for_each_template_parm_r) <INTEGER_TYPE>: Remove case + now handled by cp_walk_subtrees. + * tree.cc (cp_walk_subtrees): Walk the type of DECL_EXPR + declarations, as well as the TYPE_{MIN,MAX}_VALUE of + INTEGER_TYPEs. + +2025-01-27 John David Anglin <danglin@gcc.gnu.org> + + * module.cc: Test HAVE_MUNMAP and HAVE_MSYNC instead of + _POSIX_MAPPED_FILES > 0. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * module.cc (module_state::write_inits): Verify + STATIC_INIT_DECOMP_{,NON}BASE_P flags and stream changes in those + out. + (module_state::read_inits): Stream those flags in. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * cp-tree.h (STATIC_INIT_DECOMP_BASE_P): Define. + (STATIC_INIT_DECOMP_NONBASE_P): Define. + * decl.cc (cp_finish_decl): Mark nodes in {static,tls}_aggregates + emitted for namespace scope structured bindings with + STATIC_INIT_DECOMP_{,NON}BASE_P flags when needed. + * decl2.cc (decomp_handle_one_var, decomp_finalize_var_list): New + functions. + (emit_partial_init_fini_fn): Use them. + (prune_vars_needing_no_initialization): Assert + STATIC_INIT_DECOMP_*BASE_P is not set on DECL_EXTERNAL vars to be + pruned out. + (partition_vars_for_init_fini): Use same priority for + consecutive STATIC_INIT_DECOMP_*BASE_P vars and propagate + those flags to new TREE_LISTs when possible. Formatting fix. + (handle_tls_init): Use decomp_handle_one_var and + decomp_finalize_var_list functions. + +2025-01-25 Simon Martin <simon@nasilyan.com> + + PR c++/118239 + * constexpr.cc (cx_check_missing_mem_inits): Don't skip fields + with DECL_FIELD_IS_BASE. + +2025-01-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/117827 + * init.cc (build_new_1): Pass address of a make_tree_vector () + initialized gc tree vector to build_vec_init and append + build_disable_temp_cleanup to init_expr from it. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/116568 + * module.cc (trees_out::get_merge_kind): Treat all lambdas + without a mangling scope as un-mergeable. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/116568 + * cp-tree.h (finish_concept_definition): Adjust parameters. + (start_concept_definition): Declare. + * module.cc (depset::hash::is_tu_local_entity): Use + LAMBDA_EXPR_EXTRA_SCOPE to detect TU-local lambdas. + * parser.cc (cp_parser_concept_definition): Start a lambda scope + for concept definitions. + * pt.cc (tsubst_lambda_expr): Namespace-scope lambdas may now + have extra scope. + (finish_concept_definition): Split into... + (start_concept_definition): ...this new function. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118245 + * cp-tree.h (LAMBDA_EXPR_EXTRA_SCOPE): Adjust comment. + * parser.cc (cp_parser_class_head): Start (and do not finish) + lambda scope for all valid types. + (cp_parser_class_specifier): Finish lambda scope after parsing + members instead. + * pt.cc (instantiate_class_template): Add lambda scoping. + +2025-01-24 Marek Polacek <polacek@redhat.com> + + PR c++/117153 + * decl2.cc (build_anon_union_vars): Use FIELD for the second operand + of a COMPONENT_REF. + +2025-01-23 Marek Polacek <polacek@redhat.com> + + PR c++/117602 + * cp-tree.h (current_nonlambda_scope): Add a default argument. + * lambda.cc (current_nonlambda_scope): New bool parameter. Use it. + * parser.cc (cp_parser_lambda_introducer): Use current_nonlambda_scope + to check if the lambda is non-local. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR c++/118590 + * typeck.cc (build_omp_array_section): If array_expr is type dependent + or a TYPE_DECL, build OMP_ARRAY_SECTION with NULL type. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR c++/118604 + * parser.cc (cp_parser_omp_metadirective): Test !default_p + first and use strcmp () != 0 rather than !strcmp () == 0. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + * mangle.cc (write_expression): Update mangling for lambdas. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/107741 + * cp-tree.h (start_initialized_static_member): Declare. + (finish_initialized_static_member): Declare. + * decl2.cc (start_initialized_static_member): New function. + (finish_initialized_static_member): New function. + * lambda.cc (record_lambda_scope): Support falling back to old + ABI (maybe with warning). + * parser.cc (cp_parser_member_declaration): Build decl early + when parsing an initialized static data member. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118582 + * module.cc (trees_out::decl_value): Always stream + imported_temploid_friends information. + (trees_in::decl_value): Likewise. + +2025-01-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * decl.cc: Partially implement CWG 2867 - Order of initialization + for structured bindings. + (cp_finish_decl): If need_decomp_init, for function scope structure + binding bases, temporarily clear stmts_are_full_exprs_p before + calling expand_static_init, after it call cp_finish_decomp and wrap + code emitted by both into maybe_cleanup_point_expr_void and ensure + cp_finish_decomp isn't called again. + +2025-01-22 Marek Polacek <polacek@redhat.com> + + PR c++/118396 + * constexpr.cc (cxx_eval_outermost_constant_expr): Add an error call + when !allow_non_constant. + +2025-01-22 Simon Martin <simon@nasilyan.com> + + PR c++/118199 + * typeck2.cc (split_nonconstant_init_1): Clear + TARGET_EXPR_ELIDING_P if we need to use a copy constructor + because of __no_unique_address__. + +2025-01-22 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_parser_objc_message_args): Use tree_cons with + nreverse at the end for both sel_args and addl_args, instead of + chainon with build_tree_list second argument. + +2025-01-22 Jakub Jelinek <jakub@redhat.com> + + * call.cc (add_list_candidates): Use append_ctor_to_tree_vector. + +2025-01-22 Patrick Palka <ppalka@redhat.com> + + PR c++/116756 + * lambda.cc (lambda_expr_this_capture): Call + retrieve_local_specialization on the result of + LAMBDA_EXPR_THIS_CAPTURE for a generic lambda. + * parser.cc (cp_parser_lambda_expression): Don't clear + LAMBDA_EXPR_THIS_CAPTURE. + * pt.cc (tsubst_stmt) <case DECL_EXPR>: Don't overwrite + LAMBDA_EXPR_THIS_CAPTURE with the specialized capture. + (tsubst_lambda_expr): Don't clear LAMBDA_EXPR_THIS_CAPTURE + afterward. + +2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/118525 + * cp-gimplify.cc (cp_fold): Check operands of unary, binary, cond/vec_cond + and array_ref for error_mark before checking if the operands had changed. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + PR objc++/118586 + * parser.cc (cp_parser_objc_message_args): Handle CPP_EMBED. + +2025-01-21 Marek Polacek <polacek@redhat.com> + + PR c++/118396 + PR c++/118523 + * constexpr.cc (cxx_eval_outermost_constant_expr): For non-simple + TARGET_EXPRs, return ctx.ctor rather than the result of + cxx_eval_constant_expression. If TYPE and the type of R don't + match, return the original expression. + +2025-01-21 Simon Martin <simon@nasilyan.com> + + PR c++/118225 + * typeck.cc (build_class_member_access_expr): Let errors that + that have been reported go through. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_lexer_new_main): Attempt to optimize large sequences + of CPP_NUMBER with int type and values 0-255 separated by CPP_COMMA + into CPP_EMBED with RAW_DATA_CST u.value. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + * cp-objcp-common.cc (names_builtin_p): Return 1 for RID_VA_ARG. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/118532 + * call.cc (add_list_candidates): Handle RAW_DATA_CST among init_list + elts. + * error.cc (dump_expr_init_vec): Handle RAW_DATA_CST among v elts. + +2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> + + * parser.cc (cp_parser_decomposition_declaration): Check linkage + of structured bindings in modules. + * tree.cc (decl_linkage): Structured bindings don't necessarily + have no linkage. + +2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118101 + * module.cc (trees_in::decl_value): Use structural equality when + deduping partial specs with mismatching canonical types. + +2025-01-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/118513 + * decl2.cc (copy_linkage): If not TREE_PUBLIC, also set + DECL_INTERFACE_KNOWN, assert it was set on decl and copy + DECL_NOT_REALLY_EXTERN flags. + +2025-01-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/118534 + * constexpr.cc (find_array_ctor_elt): Don't return i early if + i == end - 1 and the last elt's value is RAW_DATA_CST. + +2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118049 + * module.cc (trees_in::is_matching_decl): Propagate + FNDECL_USED_AUTO as well. + +2025-01-17 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118321 + * decl.cc (omp_declare_variant_finalize_one): Shift adjust_args index + by one for non-static class function's 'this' pointer. + +2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118147 + * parser.cc (cp_parser_cache_defarg): Don't error when + CPP_PRAGMA_EOL. + +2025-01-17 Simon Martin <simon@nasilyan.com> + + PR c++/118255 + * name-lookup.cc (pushdecl): Don't call check_template_shadow + for hidden bindings. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/105440 + * constexpr.cc (cxx_eval_call_expression): If any RESULT_DECLs get + replaced in the call result, try further evaluating the result. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/107522 + * constraint.cc (get_normalized_constraints_from_decl): Use the + most general template for an explicit specialization of a + member template. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/118454 + * cp-tree.h (STF_KEEP_INJ_CLASS_NAME): Define. + * pt.cc (iterative_hash_template_argument) <case tcc_type>: + Clarify comment for when we'd see an alias template + specialization here. + (coerce_template_parms): Strip typedefs (except for + injected-class-names) in the pack expansion early break cases + that defer coercion. + * tree.cc (strip_typedefs): Don't strip an injected-class-name + if STF_KEEP_INJ_CLASS_NAME is set. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/116417 + * cp-tree.h (finish_pseudo_destructor_expr): Add complain + parameter. + * parser.cc (cp_parser_postfix_dot_deref_expression): Pass + complain=tf_warning_or_error to finish_pseudo_destructor_expr. + * pt.cc (tsubst_expr): Pass complain to + finish_pseudo_destructor_expr. + * semantics.cc (finish_pseudo_destructor_expr): Check complain + before emitting a diagnostic. + +2025-01-16 Simon Martin <simon@nasilyan.com> + + PR c++/117775 + * decl.cc (fold_sizeof_expr): Make sure the folded result has + type size_type_node. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * parser.cc (cp_parser_omp_assumption_clauses): Give a more specific + error message for invalid directives vs unknown names. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * decl2.cc (cplus_decl_attributes): Don't add "omp declare target + block". + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * cp-tree.h (struct saved_scope): Add new field + x_processing_omp_trait_property_expr. + (processing_omp_trait_property_expr): New. + * parser.cc (cp_parser_skip_to_end_of_block_or_statement): Add + metadirective_p parameter and handle skipping over the parentheses + in a "for" statement. + (struct omp_metadirective_parse_data): New. + (mangle_metadirective_region_label): New. + (cp_parser_label_for_labeled_statement): Mangle label names in a + metadirective body. + (cp_parser_jump_statement): Likewise. + (cp_parser_omp_context_selector): Allow arbitrary expressions in + device_num and condition properties. + (cp_parser_omp_assumption_clauses): Handle C_OMP_DIR_META. + (analyze_metadirective_body): New. + (cp_parser_omp_metadirective): New. + (cp_parser_pragma): Handle PRAGMA_OMP_METADIRECTIVE. + * parser.h (struct cp_parser): Add omp_metadirective_state field. + * pt.cc (tsubst_omp_context_selector): New. + (tsubst_stmt): Handle OMP_METADIRECTIVE. + * semantics.cc (finish_id_expression_1): Don't diagnose use of + parameter outside function body in dynamic selector expressions here. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + PR c++/118214 + * decl.cc (struct reshape_iter): Add raw_idx member. + (cp_maybe_split_raw_data): Add inc_cur parameter, set *inc_cur, + don't modify original CONSTRUCTOR, use d->raw_idx to track index + into a RAW_DATA_CST d->cur->value. + (consume_init): Adjust cp_maybe_split_raw_data caller, increment + d->cur when cur_inc is true. + (reshape_init_array_1): Don't modify original CONSTRUCTOR when + handling RAW_DATA_CST d->cur->value and !reuse, instead use + d->raw_idx to track index into RAW_DATA_CST. + (reshape_single_init): Initialize iter.raw_idx. + (reshape_init_class): Adjust for introduction of d->raw_idx, + adjust cp_maybe_split_raw_data caller, do d->cur++ if inc_cur + rather than when it returns non-NULL. + (reshape_init_r): Check for has_designator_problem for second + half of _Complex earlier, also check for + error_operand_p (d->cur->value). Use consume_init instead of + cp_maybe_split_raw_data with later conditional d->cur++. + (reshape_init): Initialize d.raw_idx. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + * parser.cc (cp_parser_lambda_declarator_opt, + cp_parser_statement, cp_parser_selection_statement, + cp_parser_jump_statement): Use -std=c++23 and -std=gnu++23 + in diagnostics rather than -std=c++2b and -std=gnu++2b. + * semantics.cc (finish_compound_literal): Likewise. + * typeck2.cc (build_functional_cast_1): Likewise. + * decl.cc (start_decl): Likewise. + * constexpr.cc (ensure_literal_type_for_constexpr_object, + potential_constant_expression_1): Likewise. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118390 + * cp-tree.h (count_ctor_elements): Declare. + * call.cc (count_ctor_elements): No longer static. + * pt.cc (unify): Use count_ctor_elements instead of + CONSTRUCTOR_NELTS. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118278 + * mangle.cc (write_expression): Handle RAW_DATA_CST. + +2025-01-15 Marek Polacek <polacek@redhat.com> + + PR c++/118139 + * cxx-pretty-print.cc (pp_cxx_nested_name_specifier): Handle + a computed-type-specifier. + +2025-01-15 Tobias Burnus <tburnus@baylibre.com> + + PR c++/118486 + * decl.cc (omp_declare_variant_finalize_one): When resolving + the variant to use, handle variant calls with TARGET_EXPR. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118387 + * method.cc (build_comparison_op): Set bad if + std::strong_ordering::equal doesn't convert to rettype. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118124 + * cp-tree.h (build_array_of_n_type): Change second argument type + from int to unsigned HOST_WIDE_INT. + * tree.cc (build_array_of_n_type): Likewise. + * call.cc (count_ctor_elements): New function. + (maybe_init_list_as_array): Use it instead of CONSTRUCTOR_NELTS. + (convert_like_internal): Use length from init's type instead of + len when handling the maybe_init_list_as_array case. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118124 + * call.cc (convert_like_internal): Handle RAW_DATA_CST in + ck_list handling. Formatting fixes. + +2025-01-14 Marek Polacek <polacek@redhat.com> + + PR c++/118047 + PR c++/118355 + * typeck2.cc (massage_init_elt): Call fold_non_dependent_init + unless for a CONSTRUCTOR in a template. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Marcel Vollweiler <marcel@codesourcery.com> + + PR middle-end/114596 + PR middle-end/112779 + PR middle-end/113904 + * decl.cc (omp_declare_variant_finalize_one): Update for changes + to omp-general.h interfaces. + * parser.cc (cp_finish_omp_declare_variant): Likewise. + +2025-01-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117397 + * module.cc (depset::hash::add_deduction_guides): Don't emit + imported deduction guides. + (depset::hash::finalize_dependencies): Add check for any + bindings referring to imported entities. + +2025-01-14 Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/118445 + * constexpr.cc (cxx_eval_constant_expression): Handle VEC_DUPLICATE like + a "normal" unary operator. + (potential_constant_expression_1): Likewise. + +2025-01-11 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/114630 + * module.cc (trees_in::core_vals) <BLOCK>: Chain a new node if + DECL_CHAIN already is set. + +2025-01-11 Jason Merrill <jason@redhat.com> + + * module.cc (trees_out::type_node): Write attributes for + tt_derived_type, not tt_variant_type. + (trees_in::tree_node): Likewise for reading. + +2025-01-11 Jason Merrill <jason@redhat.com> + + * module.cc (trees_in::decl_value): Merge attributes. + +2025-01-10 Paul-Antoine Arras <parras@baylibre.com> + + * parser.cc (cp_parser_pragma): Replace call to cp_parser_omp_dispatch + with cp_parser_omp_construct and check context. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/118387 + * method.cc (genericize_spaceship): For tag == cc_last if + type is not auto just return error_mark_node instead of failing + checking assertion. + +2025-01-10 Jason Merrill <jason@redhat.com> + + * module.cc (trees_out::core_bools): Write replaceable_operator. + (trees_in::core_bools): Read it. + +2025-01-10 Marek Polacek <polacek@redhat.com> + + PR c++/117937 + * pt.cc (tsubst_pack_index): tsubst the pack even when it's not + PACK_EXPANSION_P. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/118277 + * cp-tree.h (finish_asm_string_expression): Declare. + * semantics.cc (finish_asm_string_expression): New function. + (finish_asm_stmt): Use it. + * parser.cc (cp_parser_asm_string_expression): Likewise. + Wrap string into PAREN_EXPR in the ("") case. + (cp_parser_asm_definition): Don't ICE if finish_asm_stmt + returns error_mark_node. + (cp_parser_asm_specification_opt): Revert 2024-06-24 changes. + * pt.cc (tsubst_stmt): Don't ICE if finish_asm_stmt returns + error_mark_node. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + * module.cc (trees_out::core_vals): Note DECL_VALUE_EXPR even for + vars outside of functions. + (trees_in::core_vals): Read in DECL_VALUE_EXPR even for vars outside + of functions. + (trees_out::get_merge_kind): Make DECL_DECOMPOSITION_P MK_unique. + +2025-01-10 Jason Merrill <jason@redhat.com> + + * error.cc (cxx_initialize_diagnostics): Improve comment. + * module.cc (modules): Improve comment. + (get_originating_module): Add function comment. + +2025-01-10 Jason Merrill <jason@redhat.com> + + * module.cc (trees_out::write_function_def): Write returns* flags. + (struct post_process_data): Add returns_* flags. + (trees_in::read_function_def): Set them. + (module_state::read_cluster): Use them. + +2025-01-09 Jason Merrill <jason@redhat.com> + + * decl.cc (check_redeclaration_exception_specification): Be more + lenient about ::operator new. + +2025-01-09 Jason Merrill <jason@redhat.com> + Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + PR c/116060 + * call.cc (standard_conversion): Preserve type name in ck_identity. + (maybe_adjust_type_name): New. + (convert_like_internal): Use it. + Handle -Wsuggest-attribute=format here. + (convert_for_arg_passing): Not here. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/118060 + * constraint.cc (tsubst_valid_expression_requirement): Don't + check convert_to_void during partial substitution. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117887 + * pt.cc (instantiate_template): Set tf_partial if arguments are + dependent. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117925 + * constexpr.cc (potential_constant_expression_1) <case CAST_EXPR>: + Fix check for class conversion to literal type to properly look + through the TREE_LIST operand of a CAST_EXPR. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117925 + * constexpr.cc (cxx_eval_constant_expression) <default>: + Relax ICE when encountering an unexpected tree code into a + checking ICE guarded by flag_checking. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117993 + * search.cc (any_dependent_bases_p): Recurse into bases (of + dependent type) that are not BINFO_DEPENDENT_BASE_P. Document + default argument. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117792 + * pt.cc (type_dependent_expression_p): Consider the dependence + of the address of each template argument of a function + template-id. + +2025-01-08 Jakub Jelinek <jakub@redhat.com> + + PR c++/117825 + * typeck.cc (cp_build_function_call_vec): Don't call + check_function_arguments if complain doesn't have tf_warning bit set. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * cp-tree.h (build_nop): Add CXX_MEM_STAT_INFO. + * typeck.cc (build_nop): Add MEM_STAT_DECL. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * call.cc (implicit_conversion): Check that FROM isn't a reference + if we also got an EXPR argument. + (convert_like_internal): Check that EXPR isn't a reference. + (can_convert_arg): convert_from_reference if needed. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * method.cc (is_stub_object): New. + * cp-tree.h (is_stub_object): Declare. + * error.cc (dump_expr): Use it. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * call.cc (convert_like_internal): Add missing break. + * coroutines.cc (cp_coroutine_transform::build_ramp_function): Build + INIT_EXPR directly. + * decl.cc (omp_declare_variant_finalize_one): Use build_stub_object. + +2025-01-08 Marek Polacek <polacek@redhat.com> + + PR c++/118169 + * typeck2.cc (split_nonconstant_init): Call finish_expr_stmt instead + of add_stmt. + +2025-01-03 Tobias Burnus <tburnus@baylibre.com> + + * parser.cc (cp_parser_omp_var_list_no_open, + cp_parser_omp_var_list): For kind=0 (= OMP_CLAUSE_ERROR), + store also the expression location in the tree list. + (cp_parser_oacc_data_clause_deviceptr, + cp_finish_omp_declare_variant): Use that location instead or + input_location/the before-parsing location. + * semantics.cc (finish_omp_threadprivate): Likewise. + +2025-01-02 Paul-Antoine Arras <parras@baylibre.com> + + * parser.cc (cp_parser_omp_dispatch): Handle INDIRECT_REF. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index f2dd24ed1e8..923c914865e 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,470 +1,5 @@ -2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * lang.opt.urls: Regenerate. - -2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> - - * d-attribs.cc (d_handle_no_sanitize_attribute): Use - 'sanitize_code_type' instead of 'unsigned int'. - -2025-08-11 Iain Sandoe <iain@sandoe.co.uk> - - * d-codegen.cc (build_filename_from_loc): Use - build_string_literal() to build a null-terminated string for - the filename. - -2025-08-06 Sam James <sam@gentoo.org> - - * Make-lang.in (ALL_DFLAGS): Don't use ALIASING_FLAGS. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * d-diagnostic.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * d-diagnostic.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * d-diagnostic.cc (d_diagnostic_report_diagnostic): Update to add - "m_" prefix to fields of diagnostic_info throughout. - -2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * toir.cc: Pass null pointer to - parse_{input,output}_constraint(). - -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-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119826 - * types.cc (TypeVisitor::visit (TypeEnum *)): Propagate flags of main - enum types to all forward-referenced variants. - -2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119799 - * decl.cc (DeclVisitor::visit (VarDeclaration *)): Check front-end - type size before building the VAR_DECL. Allow C symbols to have a - size of `0'. - -2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119817 - * imports.cc (ImportVisitor::visit (OverloadSet *)): Don't push - NULL_TREE to vector of import symbols. - -2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/109023 - * d-compiler.cc: Include dmd/errors.h. - (Compiler::onImport): Implement. - * d-lang.cc (d_handle_option): Handle -finclude-imports. - (d_parse_file): Run semantic on included imports. - * gdc.texi: Document -finclude-imports. - * lang.opt: Add finclude-imports. - * lang.opt.urls: Regenerate. - -2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119758 - * d-lang.cc (d_parse_file): Use endswith in test for -fonly= argument. - * d-spec.cc (lang_specific_driver): Rework -fonly= and pass all input - files to the front-end compiler when the option is seen. - -2025-04-11 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 1b34fea478. - -2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118309 - * modules.cc: Include debug.h - (d_finish_compilation): Call debug_hooks->type_decl on all TYPE_DECLs. - * types.cc: Remove toplev.h include. - (finish_aggregate_type): Don't call rest_of_type_compilation or - rest_of_decl_compilation on type. - (TypeVisitor::visit (TypeEnum *)): Likewise. - -2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117832 - * d-tree.h (build_padded_constructor): New prototype. - * d-codegen.cc (build_padded_constructor): New function. - (d_array_value): Call it. - (build_memset_call): Likewise. - (build_struct_literal): Likewise. - (underlying_complex_expr): Likewise. - (build_array_from_val): Likewise. - (build_array_from_exprs): Likewise. - (d_build_call): Likewise. - (get_frame_for_symbol): Likewise. - * d-convert.cc (convert_for_rvalue): Likewise. - (convert_for_assignment): Likewise. - * decl.cc (class DeclVisitor): Likewise. - * expr.cc (class ExprVisitor): Likewise. - * modules.cc (layout_moduleinfo): Likewise. - * typeinfo.cc (class TypeInfoVisitor): Likewise. - -2025-04-08 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 51816cd01d. - -2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> - - * lang.opt.urls: Regenerate. - -2025-04-02 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd ed17b3e95d. - -2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd c6863be720. - * dmd/VERSION: Bump version to v2.111.0. - -2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117002 - * decl.cc (aggregate_initializer_decl): Set explicit decl alignment of - class instance. - * expr.cc (ExprVisitor::visit (NewExp *)): Likewise. - * types.cc (TypeVisitor::visit (TypeClass *)): Mark the record type of - classes as packed. - -2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> - - * lang.opt.urls: Regenerate. - -2025-03-26 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 02a64d2e13. - -2025-03-23 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117621 - * types.cc (finish_aggregate_type): Propagate TYPE_PACKED to variants. - -2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 032e24446b. - * dmd/VERSION: Bump version to v2.111.0-rc.1. - -2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 9d2f034398. - -2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 94950cae58. - * d-lang.cc (d_handle_option): Add case for CppStdRevisionCpp23. - * gdc.texi: Document -fextern-std=c++23. - * lang.opt (fextern-std=): Add c++23. - -2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 8db14cf846. - -2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> - - * runtime.def (INVARIANT): Update signature of run-time function. - -2025-03-20 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118545 - * d-lang.cc (d_handle_option): Adjust quoted options. - -2025-03-18 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd fde0f8c40a. - -2025-03-18 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 51be8bb729. - -2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 603225372b. - * dmd/VERSION: Bump version to v2.111.0-beta.1. - * d-builtins.cc (build_frontend_type): Update for new front-end - interface. - * decl.cc (Class DeclVisitor): Likewise. - (maybe_build_decl_tree): Likewise. - (get_vtable_decl): Likewise. - (layout_class_initializer): Likewise. - * expr.cc (class ExprVisitor): Likewise. - (ExprVisitor::visit (NewExp *)): Implement placement new for class, - struct, and pointer types. - * modules.cc (get_internal_fn): Update for new front-end interface. - -2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 53a1cc8d13. - * d-tree.h (create_typeinfo): Change second parameter to Scope *. - (speculative_type_p): Remove prototype. - * d-frontend.cc (getTypeInfoType): Adjust. - * decl.cc: Include dmd/typinf.h. - (DeclVisitor::visit (TypeInfoDeclaration *)): Update for new front-end - interface. - * typeinfo.cc (create_typeinfo): Likewise. - (class SpeculativeTypeVisitor): Remove class. - (speculative_type_p): Remove function. - -2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd ffbad272b6. - * d-tree.h (make_location_t): Add overload taking a const SourceLoc &. - * d-codegen.cc (make_location_t): Likewise. - * d-diagnostic.cc (d_diagnostic_report_diagnostic): Change first - parameter type to const SourceLoc &. - (verrorReport): Update for new front-end interface. - (verrorReportSupplemental): Likewise. - * d-frontend.cc (eval_builtin): Likewise. - (getTypeInfoType): Likewise. - * d-lang.cc (d_parse_file): Likewise. - * d-target.cc (Target::va_listType): Likewise. - (Target::getTargetInfo): Likewise. - * decl.cc (build_decl_tree): Likewise. - * imports.cc (ImportVisitor::visit (Module *)): Likewise. - * modules.cc (get_internal_fn): Likewise. - -2025-03-15 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd d29e3eca45. - * d-codegen.cc (can_elide_copy_p): Update for new front-end interface. - * d-lang.cc (d_handle_option): Likewise. - * expr.cc (class ExprVisitor): Likewise. - -2025-03-15 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream b7e3b3b617. - -2025-03-11 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119139 - * decl.cc (get_symbol_decl): Don't set TREE_READONLY for __result - declarations. - -2025-02-28 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/116961 - * d-codegen.cc (build_float_cst): Change new_value type from real_t to - real_value. - * d-ctfloat.cc (CTFloat::fabs): Default initialize the return value. - (CTFloat::ldexp): Likewise. - (CTFloat::parse): Likewise. - * d-longdouble.cc (longdouble::add): Likewise. - (longdouble::sub): Likewise. - (longdouble::mul): Likewise. - (longdouble::div): Likewise. - (longdouble::mod): Likewise. - (longdouble::neg): Likewise. - * d-port.cc (Port::isFloat32LiteralOutOfRange): Likewise. - (Port::isFloat64LiteralOutOfRange): Likewise. - -2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118654 - * implement-d.texi: Document CET version and traits key. - -2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> - - * Make-lang.in (check_gdc_parallelize): Increase to 128. - -2025-01-29 Arsen Arsenović <arsen@aarsen.me> - Jakub Jelinek <jakub@redhat.com> - - PR d/118477 - * Make-lang.in (DCOMPILE, DPOSTCOMPILE): Use $(basename $(@F)) - instead of $(*F). - -2025-01-22 Arsen Arsenović <arsen@aarsen.me> - - * lang-specs.h: Replace %{nostdinc*} with %{nostdinc}. - -2025-01-20 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/114434 - * expr.cc (ExprVisitor::visit (PtrExp *)): Get the offset as a - dinteger_t rather than a size_t. - (ExprVisitor::visit (SymOffExp *)): Likewise. - -2025-01-18 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd d115713410. - -2025-01-16 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/115249 - * typeinfo.cc (create_tinfo_types): Update internal Typenfo - representation. - (TypeInfoVisitor::visit (TypeInfoClassDeclaration *)): Likewise. - -2025-01-14 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118438 - PR d/118448 - PR d/118449 - * dmd/MERGE: Merge upstream dmd d6f693b46a. - * d-incpath.cc (add_import_paths): Update for new front-end interface. - -2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd c7902293d7. - * dmd/VERSION: Bump version to v2.110.0-rc.1. - -2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd c57da0cf59. - * d-codegen.cc (can_elide_copy_p): New. - (d_build_call): Use it. - * d-lang.cc (d_post_options): Update for new front-end interface. - -2025-01-11 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 82a5d2a7c4. - * d-lang.cc (d_handle_option): Handle new option `-fpreview=safer'. - * expr.cc (ExprVisitor::NewExp): Remove gcc_unreachable for the - generation of `_d_newThrowable'. - * lang.opt: Add -fpreview=safer. - -2025-01-11 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 2b89c2909d. - * Make-lang.in (D_FRONTEND_OBJS): Rename d/basicmangle.o to - d/mangle-basic.o, d/cppmangle.o to d/mangle-cpp.o, and d/dmangle.o to - d/mangle-package.o. - (d/mangle-%.o): New rule. - * d-builtins.cc (maybe_set_builtin_1): Update for new front-end - interface. - * d-diagnostic.cc (verrorReport): Likewise. - (verrorReportSupplemental): Likewise. - * d-frontend.cc (getTypeInfoType): Likewise. - * d-lang.cc (d_init_options): Likewise. - (d_handle_option): Likewise. - (d_post_options): Likewise. - * d-target.cc (TargetC::contributesToAggregateAlignment): New. - * d-tree.h (create_typeinfo): Adjust prototype. - * decl.cc (layout_struct_initializer): Update for new front-end - interface. - * typeinfo.cc (create_typeinfo): Remove generate parameter. - * types.cc (layout_aggregate_members): Update for new front-end - interface. - -2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 4ccb01fde5. - * Make-lang.in (D_FRONTEND_OBJS): Rename d/foreachvar.o to - d/visitor-foreachvar.o, d/visitor.o to d/visitor-package.o, and - d/statement_rewrite_walker.o to d/visitor-statement_rewrite_walker.o. - (D_FRONTEND_OBJS): Rename - d/{parsetime,permissive,postorder,transitive}visitor.o to - d/visitor-{parsetime,permissive,postorder,transitive}.o. - (D_FRONTEND_OBJS): Remove d/sapply.o. - (d.tags): Add dmd/common/*.h. - (d/visitor-%.o:): New rule. - * d-codegen.cc (get_frameinfo): Update for new front-end interface. - -2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 6884b433d2. - * d-builtins.cc (build_frontend_type): Update for new front-end - interface. - (d_build_builtins_module): Likewise. - (matches_builtin_type): Likewise. - (covariant_with_builtin_type_p): Likewise. - * d-codegen.cc (lower_struct_comparison): Likewise. - (call_side_effect_free_p): Likewise. - * d-compiler.cc (Compiler::paintAsType): Likewise. - * d-convert.cc (convert_expr): Likewise. - (convert_for_assignment): Likewise. - * d-target.cc (Target::isVectorTypeSupported): Likewise. - (Target::isVectorOpSupported): Likewise. - (Target::isReturnOnStack): Likewise. - * decl.cc (get_symbol_decl): Likewise. - * expr.cc (build_return_dtor): Likewise. - * imports.cc (class ImportVisitor): Likewise. - * toir.cc (class IRVisitor): Likewise. - * types.cc (class TypeVisitor): Likewise. - -2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 34875cd6e1. - * dmd/VERSION: Bump version to v2.110.0-beta.1. - * Make-lang.in (D_FRONTEND_OBJS): Add d/deps.o, d/timetrace.o. - * decl.cc (class DeclVisitor): Update for new front-end interface. - * expr.cc (class ExprVisitor): Likewise - * typeinfo.cc (check_typeinfo_type): Likewise. - -2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> - - * dmd/MERGE: Merge upstream dmd 66b93fc24a. - * dmd/VERSION: Bump version to v2.109.1. - * d-builtins.cc (build_frontend_type): Update for new front-end - interface. - (matches_builtin_type): Likewise. - * d-codegen.cc (identity_compare_p): Likewise. - (call_side_effect_free_p): Likewise. - * d-convert.cc (convert_expr): Likewise. - (check_valist_conversion): Likewise. - * d-lang.cc (d_types_compatible_p): Likewise. - * d-target.cc (Target::isVectorTypeSupported): Likewise. - (Target::isReturnOnStack): Likewise. - (Target::preferPassByRef): Likewise. - * decl.cc (class DeclVisitor): Likewise. - * expr.cc (class ExprVisitor): Likewise. - * typeinfo.cc (class TypeInfoVisitor): Likewise. - * types.cc (class TypeVisitor): Likewise. - -2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> - - * decl.cc (DeclVisitor::finish_vtable): Update for new front-end - interface. - * dmd/MERGE: Merge upstream dmd 07bc5b9b3c. - * dmd/VERSION: Bump version to v2.109.0. - -2025-01-05 Iain Buclaw <ibuclaw@symmetryinvestments.com> - - * Make-lang.in (D_FRONTEND_OBJS): Add d/attribsem.o, - d/common-charactertables.o, d/common-identifiertables.o. - * d-attribs.cc (apply_user_attributes): Update for new front-end - interface. - * d-builtins.cc (d_init_versions): Predefine CppRuntime_GNU. - * d-incpath.cc (add_globalpaths): Update for new front-end interface. - (add_filepaths): Likewise. - (add_import_paths): Likewise. - * d-lang.cc (d_post_options): Likewise. - * dmd/MERGE: Merge upstream dmd c11e1d1708. - * dmd/VERSION: Bump version to v2.108.1. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * gdc.texi: Bump @copyrights-d year. - -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/d/ChangeLog-2025 b/gcc/d/ChangeLog-2025 new file mode 100644 index 00000000000..c0b201283a3 --- /dev/null +++ b/gcc/d/ChangeLog-2025 @@ -0,0 +1,470 @@ +2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * lang.opt.urls: Regenerate. + +2025-08-18 Indu Bhagat <indu.bhagat@oracle.com> + + * d-attribs.cc (d_handle_no_sanitize_attribute): Use + 'sanitize_code_type' instead of 'unsigned int'. + +2025-08-11 Iain Sandoe <iain@sandoe.co.uk> + + * d-codegen.cc (build_filename_from_loc): Use + build_string_literal() to build a null-terminated string for + the filename. + +2025-08-06 Sam James <sam@gentoo.org> + + * Make-lang.in (ALL_DFLAGS): Don't use ALIASING_FLAGS. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * d-diagnostic.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * d-diagnostic.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * d-diagnostic.cc (d_diagnostic_report_diagnostic): Update to add + "m_" prefix to fields of diagnostic_info throughout. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * toir.cc: Pass null pointer to + parse_{input,output}_constraint(). + +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-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119826 + * types.cc (TypeVisitor::visit (TypeEnum *)): Propagate flags of main + enum types to all forward-referenced variants. + +2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119799 + * decl.cc (DeclVisitor::visit (VarDeclaration *)): Check front-end + type size before building the VAR_DECL. Allow C symbols to have a + size of `0'. + +2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119817 + * imports.cc (ImportVisitor::visit (OverloadSet *)): Don't push + NULL_TREE to vector of import symbols. + +2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/109023 + * d-compiler.cc: Include dmd/errors.h. + (Compiler::onImport): Implement. + * d-lang.cc (d_handle_option): Handle -finclude-imports. + (d_parse_file): Run semantic on included imports. + * gdc.texi: Document -finclude-imports. + * lang.opt: Add finclude-imports. + * lang.opt.urls: Regenerate. + +2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119758 + * d-lang.cc (d_parse_file): Use endswith in test for -fonly= argument. + * d-spec.cc (lang_specific_driver): Rework -fonly= and pass all input + files to the front-end compiler when the option is seen. + +2025-04-11 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 1b34fea478. + +2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118309 + * modules.cc: Include debug.h + (d_finish_compilation): Call debug_hooks->type_decl on all TYPE_DECLs. + * types.cc: Remove toplev.h include. + (finish_aggregate_type): Don't call rest_of_type_compilation or + rest_of_decl_compilation on type. + (TypeVisitor::visit (TypeEnum *)): Likewise. + +2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117832 + * d-tree.h (build_padded_constructor): New prototype. + * d-codegen.cc (build_padded_constructor): New function. + (d_array_value): Call it. + (build_memset_call): Likewise. + (build_struct_literal): Likewise. + (underlying_complex_expr): Likewise. + (build_array_from_val): Likewise. + (build_array_from_exprs): Likewise. + (d_build_call): Likewise. + (get_frame_for_symbol): Likewise. + * d-convert.cc (convert_for_rvalue): Likewise. + (convert_for_assignment): Likewise. + * decl.cc (class DeclVisitor): Likewise. + * expr.cc (class ExprVisitor): Likewise. + * modules.cc (layout_moduleinfo): Likewise. + * typeinfo.cc (class TypeInfoVisitor): Likewise. + +2025-04-08 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 51816cd01d. + +2025-04-06 Sandra Loosemore <sloosemore@baylibre.com> + + * lang.opt.urls: Regenerate. + +2025-04-02 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd ed17b3e95d. + +2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd c6863be720. + * dmd/VERSION: Bump version to v2.111.0. + +2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117002 + * decl.cc (aggregate_initializer_decl): Set explicit decl alignment of + class instance. + * expr.cc (ExprVisitor::visit (NewExp *)): Likewise. + * types.cc (TypeVisitor::visit (TypeClass *)): Mark the record type of + classes as packed. + +2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> + + * lang.opt.urls: Regenerate. + +2025-03-26 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 02a64d2e13. + +2025-03-23 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117621 + * types.cc (finish_aggregate_type): Propagate TYPE_PACKED to variants. + +2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 032e24446b. + * dmd/VERSION: Bump version to v2.111.0-rc.1. + +2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 9d2f034398. + +2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 94950cae58. + * d-lang.cc (d_handle_option): Add case for CppStdRevisionCpp23. + * gdc.texi: Document -fextern-std=c++23. + * lang.opt (fextern-std=): Add c++23. + +2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 8db14cf846. + +2025-03-22 Iain Buclaw <ibuclaw@gdcproject.org> + + * runtime.def (INVARIANT): Update signature of run-time function. + +2025-03-20 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118545 + * d-lang.cc (d_handle_option): Adjust quoted options. + +2025-03-18 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd fde0f8c40a. + +2025-03-18 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 51be8bb729. + +2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 603225372b. + * dmd/VERSION: Bump version to v2.111.0-beta.1. + * d-builtins.cc (build_frontend_type): Update for new front-end + interface. + * decl.cc (Class DeclVisitor): Likewise. + (maybe_build_decl_tree): Likewise. + (get_vtable_decl): Likewise. + (layout_class_initializer): Likewise. + * expr.cc (class ExprVisitor): Likewise. + (ExprVisitor::visit (NewExp *)): Implement placement new for class, + struct, and pointer types. + * modules.cc (get_internal_fn): Update for new front-end interface. + +2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 53a1cc8d13. + * d-tree.h (create_typeinfo): Change second parameter to Scope *. + (speculative_type_p): Remove prototype. + * d-frontend.cc (getTypeInfoType): Adjust. + * decl.cc: Include dmd/typinf.h. + (DeclVisitor::visit (TypeInfoDeclaration *)): Update for new front-end + interface. + * typeinfo.cc (create_typeinfo): Likewise. + (class SpeculativeTypeVisitor): Remove class. + (speculative_type_p): Remove function. + +2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd ffbad272b6. + * d-tree.h (make_location_t): Add overload taking a const SourceLoc &. + * d-codegen.cc (make_location_t): Likewise. + * d-diagnostic.cc (d_diagnostic_report_diagnostic): Change first + parameter type to const SourceLoc &. + (verrorReport): Update for new front-end interface. + (verrorReportSupplemental): Likewise. + * d-frontend.cc (eval_builtin): Likewise. + (getTypeInfoType): Likewise. + * d-lang.cc (d_parse_file): Likewise. + * d-target.cc (Target::va_listType): Likewise. + (Target::getTargetInfo): Likewise. + * decl.cc (build_decl_tree): Likewise. + * imports.cc (ImportVisitor::visit (Module *)): Likewise. + * modules.cc (get_internal_fn): Likewise. + +2025-03-15 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd d29e3eca45. + * d-codegen.cc (can_elide_copy_p): Update for new front-end interface. + * d-lang.cc (d_handle_option): Likewise. + * expr.cc (class ExprVisitor): Likewise. + +2025-03-15 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream b7e3b3b617. + +2025-03-11 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119139 + * decl.cc (get_symbol_decl): Don't set TREE_READONLY for __result + declarations. + +2025-02-28 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/116961 + * d-codegen.cc (build_float_cst): Change new_value type from real_t to + real_value. + * d-ctfloat.cc (CTFloat::fabs): Default initialize the return value. + (CTFloat::ldexp): Likewise. + (CTFloat::parse): Likewise. + * d-longdouble.cc (longdouble::add): Likewise. + (longdouble::sub): Likewise. + (longdouble::mul): Likewise. + (longdouble::div): Likewise. + (longdouble::mod): Likewise. + (longdouble::neg): Likewise. + * d-port.cc (Port::isFloat32LiteralOutOfRange): Likewise. + (Port::isFloat64LiteralOutOfRange): Likewise. + +2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118654 + * implement-d.texi: Document CET version and traits key. + +2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> + + * Make-lang.in (check_gdc_parallelize): Increase to 128. + +2025-01-29 Arsen Arsenović <arsen@aarsen.me> + Jakub Jelinek <jakub@redhat.com> + + PR d/118477 + * Make-lang.in (DCOMPILE, DPOSTCOMPILE): Use $(basename $(@F)) + instead of $(*F). + +2025-01-22 Arsen Arsenović <arsen@aarsen.me> + + * lang-specs.h: Replace %{nostdinc*} with %{nostdinc}. + +2025-01-20 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/114434 + * expr.cc (ExprVisitor::visit (PtrExp *)): Get the offset as a + dinteger_t rather than a size_t. + (ExprVisitor::visit (SymOffExp *)): Likewise. + +2025-01-18 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd d115713410. + +2025-01-16 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/115249 + * typeinfo.cc (create_tinfo_types): Update internal Typenfo + representation. + (TypeInfoVisitor::visit (TypeInfoClassDeclaration *)): Likewise. + +2025-01-14 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118438 + PR d/118448 + PR d/118449 + * dmd/MERGE: Merge upstream dmd d6f693b46a. + * d-incpath.cc (add_import_paths): Update for new front-end interface. + +2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd c7902293d7. + * dmd/VERSION: Bump version to v2.110.0-rc.1. + +2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd c57da0cf59. + * d-codegen.cc (can_elide_copy_p): New. + (d_build_call): Use it. + * d-lang.cc (d_post_options): Update for new front-end interface. + +2025-01-11 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 82a5d2a7c4. + * d-lang.cc (d_handle_option): Handle new option `-fpreview=safer'. + * expr.cc (ExprVisitor::NewExp): Remove gcc_unreachable for the + generation of `_d_newThrowable'. + * lang.opt: Add -fpreview=safer. + +2025-01-11 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 2b89c2909d. + * Make-lang.in (D_FRONTEND_OBJS): Rename d/basicmangle.o to + d/mangle-basic.o, d/cppmangle.o to d/mangle-cpp.o, and d/dmangle.o to + d/mangle-package.o. + (d/mangle-%.o): New rule. + * d-builtins.cc (maybe_set_builtin_1): Update for new front-end + interface. + * d-diagnostic.cc (verrorReport): Likewise. + (verrorReportSupplemental): Likewise. + * d-frontend.cc (getTypeInfoType): Likewise. + * d-lang.cc (d_init_options): Likewise. + (d_handle_option): Likewise. + (d_post_options): Likewise. + * d-target.cc (TargetC::contributesToAggregateAlignment): New. + * d-tree.h (create_typeinfo): Adjust prototype. + * decl.cc (layout_struct_initializer): Update for new front-end + interface. + * typeinfo.cc (create_typeinfo): Remove generate parameter. + * types.cc (layout_aggregate_members): Update for new front-end + interface. + +2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 4ccb01fde5. + * Make-lang.in (D_FRONTEND_OBJS): Rename d/foreachvar.o to + d/visitor-foreachvar.o, d/visitor.o to d/visitor-package.o, and + d/statement_rewrite_walker.o to d/visitor-statement_rewrite_walker.o. + (D_FRONTEND_OBJS): Rename + d/{parsetime,permissive,postorder,transitive}visitor.o to + d/visitor-{parsetime,permissive,postorder,transitive}.o. + (D_FRONTEND_OBJS): Remove d/sapply.o. + (d.tags): Add dmd/common/*.h. + (d/visitor-%.o:): New rule. + * d-codegen.cc (get_frameinfo): Update for new front-end interface. + +2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 6884b433d2. + * d-builtins.cc (build_frontend_type): Update for new front-end + interface. + (d_build_builtins_module): Likewise. + (matches_builtin_type): Likewise. + (covariant_with_builtin_type_p): Likewise. + * d-codegen.cc (lower_struct_comparison): Likewise. + (call_side_effect_free_p): Likewise. + * d-compiler.cc (Compiler::paintAsType): Likewise. + * d-convert.cc (convert_expr): Likewise. + (convert_for_assignment): Likewise. + * d-target.cc (Target::isVectorTypeSupported): Likewise. + (Target::isVectorOpSupported): Likewise. + (Target::isReturnOnStack): Likewise. + * decl.cc (get_symbol_decl): Likewise. + * expr.cc (build_return_dtor): Likewise. + * imports.cc (class ImportVisitor): Likewise. + * toir.cc (class IRVisitor): Likewise. + * types.cc (class TypeVisitor): Likewise. + +2025-01-10 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 34875cd6e1. + * dmd/VERSION: Bump version to v2.110.0-beta.1. + * Make-lang.in (D_FRONTEND_OBJS): Add d/deps.o, d/timetrace.o. + * decl.cc (class DeclVisitor): Update for new front-end interface. + * expr.cc (class ExprVisitor): Likewise + * typeinfo.cc (check_typeinfo_type): Likewise. + +2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> + + * dmd/MERGE: Merge upstream dmd 66b93fc24a. + * dmd/VERSION: Bump version to v2.109.1. + * d-builtins.cc (build_frontend_type): Update for new front-end + interface. + (matches_builtin_type): Likewise. + * d-codegen.cc (identity_compare_p): Likewise. + (call_side_effect_free_p): Likewise. + * d-convert.cc (convert_expr): Likewise. + (check_valist_conversion): Likewise. + * d-lang.cc (d_types_compatible_p): Likewise. + * d-target.cc (Target::isVectorTypeSupported): Likewise. + (Target::isReturnOnStack): Likewise. + (Target::preferPassByRef): Likewise. + * decl.cc (class DeclVisitor): Likewise. + * expr.cc (class ExprVisitor): Likewise. + * typeinfo.cc (class TypeInfoVisitor): Likewise. + * types.cc (class TypeVisitor): Likewise. + +2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> + + * decl.cc (DeclVisitor::finish_vtable): Update for new front-end + interface. + * dmd/MERGE: Merge upstream dmd 07bc5b9b3c. + * dmd/VERSION: Bump version to v2.109.0. + +2025-01-05 Iain Buclaw <ibuclaw@symmetryinvestments.com> + + * Make-lang.in (D_FRONTEND_OBJS): Add d/attribsem.o, + d/common-charactertables.o, d/common-identifiertables.o. + * d-attribs.cc (apply_user_attributes): Update for new front-end + interface. + * d-builtins.cc (d_init_versions): Predefine CppRuntime_GNU. + * d-incpath.cc (add_globalpaths): Update for new front-end interface. + (add_filepaths): Likewise. + (add_import_paths): Likewise. + * d-lang.cc (d_post_options): Likewise. + * dmd/MERGE: Merge upstream dmd c11e1d1708. + * dmd/VERSION: Bump version to v2.108.1. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * gdc.texi: Bump @copyrights-d year. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index b9e67d2af6d..923c914865e 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3465 +1,5 @@ -2025-12-22 Steve Kargl <kargl@gcc.gnu.org> - - PR fortran/122957 - * interface.cc (gfc_match_generic_spec): Issue an error - so that users do not use -fdefault-integer-8 with DTIO. - -2025-12-22 Harald Anlauf <anlauf@gmx.de> - - PR fortran/123253 - * expr.cc (gfc_check_vardef_context): Replace simple check by a - scan through the association targets for a dummy argument. - -2025-12-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/123201 - * trans-expr.cc (conv_dummy_value): Convert string of length 1 to a - single character for passing as actual argument. - -2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121472 - * trans.cc (gfc_finalize_tree_expr): Replace !derived->components - check with TYPE_SIZE_UNIT check for zero-size types. - -2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121475 - * trans.cc (gfc_finalize_tree_expr): Add logic to allow the - function result to be resolved in resolve.cc - (generate_component_assignments). - -2025-12-21 Tamar Christina <tamar.christina@arm.com> - - * trans-openmp.cc (gfc_trans_omp_clauses): Add default to switch. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * dump-parse-tree.cc (show_omp_clauses): Add default: with - gcc_unreachable () to avoid spurious -Wmaybe-uninitialized warnings. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * gfortran.texi: Fix typo, transfered -> transferred. - * resolve.cc (resolve_where): Fix comment typo, outmost -> outermost. - -2025-12-19 Harald Anlauf <anlauf@gmx.de> - - PR fortran/71565 - * expr.cc (gfc_check_vardef_context): Fix treatment of INTENT(IN) - checks for ASSOCIATE variables. Correct checking of PROTECTED - objects, as subobjects inherit the PROTECTED attribute. - -2025-12-19 Christopher Albert <albert@tugraz.at> - - PR fortran/92613 - * cpp.cc (gfc_cpp_preprocess): Skip libcpp for -fpreprocessed. - Error out for -fpreprocessed -E. - * f95-lang.cc (gfc_init): Skip libcpp init for -fpreprocessed. - * scanner.cc (gfc_new_file): Load source directly if preprocessed. - * invoke.texi (Preprocessing Options): Document -fpreprocessed. - -2025-12-19 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (gfc_match_omp_clause_uses_allocators): Accept - multiple clause-argument-specifications separated by ';'. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * dump-parse-tree.cc (show_omp_assumes): Handle - no_openmp_constructs clause. - * gfortran.h (struct gfc_omp_assumptions): Add - no_openmp_constructs. - * openmp.cc (gfc_match_dupl_check): For free-form - Fortran, avoid substring matching. - (gfc_match_omp_clauses): Match no_openmp_constructs clause. - Remove no longer needed 'needs_space', match 'order' followed by - parenthesis instead of 'order' with parenthesis; reorder 'order' - and 'ordering' clauses for free-form Fortran. - (gfc_match_omp_assumes): Handle no_openmp_constructs clause. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * dump-parse-tree.cc (show_omp_clauses): Handle - device_type clause. - * openmp.cc (gfc_match_omp_clauses): Reorder to - match 'device' after 'device_...' to avoid parse - errors. - (OMP_TARGET_CLAUSES): Add device_type clause. - * trans-openmp.cc (gfc_trans_omp_clauses, - gfc_split_omp_clauses): Handle device_type clause. - -2025-12-12 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (gfc_match_omp_clause_uses_allocators): Mention - new syntax in deprecation warning. - -2025-12-12 Tobias Burnus <tburnus@baylibre.com> - - * intrinsic.texi (OpenMP Modules OMP_LIB and OMP_LIB_KINDS): Link - also to OpenMP 6.0, move 'partially supported' to the end of the - list of OpenMP versions. Mark 'omp_lock_hint_...' and - 'omp_atv_sequential' constants as deprecated. - -2025-12-12 Chung-Lin Tang <cltang@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - Andrew Stubbs <ams@baylibre.com> - - * openmp.cc (resolve_omp_clauses): Handle omp_null_allocator. - * trans-openmp.cc (gfc_trans_omp_clauses): Mention it in a comment. - -2025-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/107406 - * parse.cc (check_component): Adjust the error check to - require a codimension if the allocatable type has - a non-coarray LOCK_TYPE component. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/123098 - * openmp.cc (gfc_match_omp_clause_reduction): Only emit - -Wdeprecated-openmp warning for '-' if !openacc. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - * openmp.cc (gfc_match_omp_clause_reduction, - gfc_match_omp_clause_uses_allocators, gfc_match_omp_clauses, - match_omp_metadirective, gfc_match_omp_parallel_master, - gfc_match_omp_parallel_master_taskloop, - gfc_match_omp_parallel_master_taskloop_simd, - gfc_match_omp_master, gfc_match_omp_master_taskloop, - gfc_match_omp_master_taskloop_simd, resolve_omp_clauses): Formatting - fixes. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - * trans-expr.cc (gfc_conv_procedure_call): Fix comment typo, passe - -> pass. - -2025-12-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/107142 - * match.cc (gfc_match_type_spec): Change original declaration - to static match_type_spec and call from gfc_match_type_spec, - where the gfc_current_ns is stashed and restored after call. - (gfc_match_type_is): Before emitting the syntax error message - check if there are any pending error messages and use them - instead. - -2025-12-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/110012 - * decl.cc (gfc_get_pdt_instance): Continue to loop through the - type parameters components if param_list is null and the - parameter is not KIND with a default initializer. - * resolve.cc (resolve_fl_derived): If the data component is a - PDT template, find the instance and build the class. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * gfortran.texi: Bump version and clarify implementation status. - * intrinsic.texi: Bump version and note deprecation of - 'omp_proc_bind_master'. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * openmp.cc (gfc_match_omp_clause_reduction): Deprecate '-' - operator for reductions. - (gfc_match_omp_clause_uses_allocators): Deprecate - allocator(traits) pattern for 'uses_allocators'. - (gfc_match_omp_clauses): Deprecate 'sink' and 'source' for - 'depend' clause. Deprecate list items as arguments with 'linear' - clause. Deprecate non-comma-separated modifiers for the map - clause. Deprecate 'to' clause with declare target. - (gfc_match_omp_declare_target): Whitespace. - (match_omp_metadirective): Deprecate 'default' clause on - metadirectives. - (resolve_omp_clauses): Deprecate executable allocate directives. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * cpp.cc (cpp_define_builtins): Bump _OPENMP version. - * invoke.texi: Update docs for '-Wdeprecated-openmp'. - * lang.opt (Wdeprecated-openmp): Add warning. - * lang.opt.urls: Regenerated. - * openmp.cc (gfc_match_omp_clauses): Deprecate master affinity - policy. - (gfc_match_omp_parallel_master): Deprecate master construct. - (gfc_match_omp_parallel_master_taskloop): Ditto. - (gfc_match_omp_parallel_master_taskloop_simd): Ditto. - (gfc_match_omp_master): Ditto. - (gfc_match_omp_master_taskloop): Ditto. - (gfc_match_omp_master_taskloop_simd): Ditto. - (resolve_omp_clauses): Warn for deprecated use of - {use,is}_device_ptr. - -2025-12-08 Harald Anlauf <anlauf@gmx.de> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/123025 - * decl.cc (match_char_length): Add a check for the - obsolete '*' style of character declarations in the - alternate branch of checking so we dont miss two - use cases: - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122693 - * array.cc (gfc_match_array_constructor): Stash and restore - gfc_current_ns after the call to 'gfc_match_type_spec'. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122670 - * decl.cc (gfc_get_pdt_instance): Ensure that, in an interface - body, PDT instances imported implicitly if the template has - been explicitly imported. - * module.cc (read_module): If a PDT template appears in a use - only statement, implicitly add the instances as well. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122669 - * resolve.cc (resolve_allocate_deallocate): Mold expressions - with an array reference and a constant size must be resolved - for each allocate object. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122578 - * primary.cc (gfc_match_varspec): Try to resolve a typebound - generic procedure selector expression to provide the associate - name with a type. Also, resolve component calls. In both cases, - make a copy of the selector expression to guard against changes - made by gfc_resolve_expr. - -2025-12-05 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122977 - * expr.cc (gfc_is_simply_contiguous): For an associate variable - check whether the associate target is contiguous. - * resolve.cc (resolve_symbol): Skip array type check for an - associate variable when the target has the contiguous attribute. - -2025-12-05 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (resolve_omp_clauses): Permit zero with - DYN_GROUPPRIVATE clause. - * trans-openmp.cc (fallback): Generate TREE code - for DYN_GROUPPRIVATE and remove 'sorry'. - -2025-12-03 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/103371 - * decl.cc (gfc_get_pdt_instance): Remove the requirement that - PDT components be of the same type as the enclosing type. Apply - initializers other than the default to PDT components. - * primary.cc (gfc_match_rvalue): Make combination of the two - actual_arglists conditional on 'type_spec_list' having been - seen as well together with applying component names to all the - arguments. - * trans-decl.cc (gfc_init_default_dt): Add 'pdt_ok' to the args - and use it to signal that a PDT can be default initialized. - (gfc_init_default_pdt): New function to check that a pdt is OK - for default intialization before calling gfc_init_default_dt. - (gfc_trans_deferred_vars): Use gfc_init_default_pdt. - * trans.h: Add bool 'pdt_ok' to prototype with defaul value of - false. - -2025-12-01 Christopher Albert <albert@tugraz.at> - Harald Anlauf <anlauf@gcc.gnu.org> - - PR fortran/107721 - PR fortran/102417 - * arith.cc (eval_intrinsic): Call gfc_check_constructor_type on - array constructor operands with explicit type-spec to ensure - element type conversion before operations. Resolve character - array constructors before CONCAT operations. - (reduce_binary_ac, reduce_binary_ca, reduce_binary_aa): Preserve - character length info in result arrays. - * array.cc (check_constructor_type): Simplify non-constant - expressions before type checking to handle parenthesized elements. - Handle nested character array constructors with explicit type-spec - when outer constructor has no type-spec. - (gfc_resolve_character_array_constructor): Recursively propagate - type-spec to nested array constructors. If the nested constructor - has an explicit type-spec, resolve it first before propagating - the outer type-spec. - -2025-12-01 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.texi (Default exponents): Remove spurious @menu entry. - -2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * lang.opt.urls: Regenerate. - -2025-11-28 Tobias Burnus <tburnus@baylibre.com> - - PR c/122892 - * openmp.cc (gfc_resolve_omp_allocate): Reject non-local - static variables with cgroup/pteam/thread allocators. - * parse.cc: Permit OMP ALLOCATE in BLOCK DATA. - -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 - * decl.cc (gfc_match_decl_type_spec): A pdt_type found while - parsing a contains section can only arise from the typespec of - a function declaration. This can be retained in the typespec. - Once we are parsing the function, the first reference to this - derived type will find that it has no symtree. Provide it with - one so that gfc_use_derived does not complain and, again,retain - it in the typespec. - -2025-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/32365 - * parse.cc (parse_executable): Reject declaration/OpenMP - specification statements seen after executable code - unconditionally, keeping the legacy DATA diagnostic as - a warning. - -2025-11-17 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122709 - * resolve.cc (resolve_assoc_var): If the associate target is a - contiguous pointer, so is the associate variable. - -2025-11-17 Thomas Koenig <tkoenig@gcc.gnu.org> - - * gfortran.texi: Remove section "Experimental features for future - Fortran revisions". Move documentation of UNSIGNED into Extensions. - Mention flang compatibility. - -2025-11-17 Jakub Jelinek <jakub@redhat.com> - - * parse.cc (gfc_parse_file): Avoid arithmetics or - bitwise operations between enumerators from different enums. - -2025-11-14 Yuao Ma <c8ef@outlook.com> - - * trans-expr.cc (conv_dummy_value): Add check for NULL allocatable. - -2025-11-14 Harald Anlauf <anlauf@gmx.de> - - PR fortran/117070 - * array.cc (check_constructor): Allow procedures as potential - target of a procedure pointer. - -2025-11-13 Andrew Stubbs <ams@codesourcery.com> - Kwok Cheung Yeung <kcyeung@baylibre.com> - Thomas Schwinge <tschwinge@baylibre.com> - - * openmp.cc (is_predefined_allocator): Use GOMP_OMP_PREDEF_ALLOC_MAX - and GOMP_OMPX_PREDEF_ALLOC_MIN/MAX instead of hardcoded values in the - comment. - -2025-11-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR other/122638 - * gfortran.texi (OpenMP): Fix syntax. - * intrinsic.texi (UINT): Fix syntax. - -2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/96255 - * match.cc (apply_typespec_to_iterator): Call gfc_set_sym_referenced - for both new and shadow iterator symbols. - -2025-11-12 Tobias Burnus <tburnus@baylibre.com> - - PR libgomp/119677 - * intrinsic.texi (OpenMP Modules): Add omp_default_device. - * openmp.cc (gfc_resolve_omp_context_selector): Accept - omp_default_device as conforming device number. - -2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/96255 - * resolve.cc (gfc_resolve_forall): Delete outer_sym - -2025-11-11 Christopher Albert <albert@tugraz.at> - - PR fortran/90519 - * trans-expr.cc (strip_parentheses): New helper function to strip - INTRINSIC_PARENTHESES operators from expressions. - (is_runtime_conformable): Use strip_parentheses to handle cases - like a = (a) when checking for self-assignment. - (gfc_trans_assignment_1): Strip parentheses before checking if - expr2 is a variable, ensuring deep_copy is enabled for cases like - a = (a). Also strip parentheses when checking for self-assignment - to avoid use-after-free in finalization. - (gfc_trans_scalar_assign): Add comment about parentheses handling. - * class.cc (generate_finalization_wrapper): Create separate result - symbol for finalizer wrapper functions instead of self-referencing - the procedure symbol, avoiding ICE in gimplify_call_expr. - -2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - Steve Kargl <kargl@gcc.gnu.org> - - PR fortran/96255 - * gfortran.h (gfc_forall_iterator): Add bool shadow field. - * match.cc (apply_typespec_to_iterator): New helper function to - consolidate shadow variable creation logic. - (match_forall_header): Add type-spec parsing for DO CONCURRENT - and FORALL. Create shadow variables when type-spec differs from - outer scope. Replace duplicated code with apply_typespec_to_iterator. - * resolve.cc (replace_in_expr_recursive): New function to recursively - walk expressions and replace symbol references. - (replace_in_code_recursive): New function to recursively walk code - blocks and replace symbol references. - (gfc_replace_forall_variable): New entry point for shadow variable - substitution. - (gfc_resolve_assign_in_forall): Skip many-to-one assignment warning - for DO CONCURRENT. - (gfc_count_forall_iterators): Handle both EXEC_FORALL and - EXEC_DO_CONCURRENT with assertion. - (gfc_resolve_forall): Skip F2018 obsolescence warning for DO - CONCURRENT. Fix memory allocation check. Add NULL checks for shadow - variables. Implement shadow variable walker. - (gfc_resolve_code): Set gfc_do_concurrent_flag for DO CONCURRENT - constructs to enable constraint checking. - -2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> - - PR other/122243 - * lang.opt.urls: Regenerated. - -2025-11-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/113338 - * decl.cc (gfc_verify_c_interop_param): Allow further types of - dummy argument without the VALUE attribute as specified in - F2018 18.3.6 item (5). - -2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * trans-array.cc (seen_derived_types): Move to file scope and - preserve/restore around generate_element_copy_wrapper. - * trans-intrinsic.cc (conv_intrinsic_atomic_op): Reuse - gfc_trans_force_lval when forcing addressable CAF temps. - -2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * trans-array.cc (get_copy_helper_function_type): New function to - create function type for element copy helpers. - (get_copy_helper_pointer_type): New function to create pointer type - for element copy helpers. - (generate_element_copy_wrapper): New function to generate runtime - helper for element-wise deep copying of recursive types. - (structure_alloc_comps): Detect recursive allocatable array - components and use runtime helper instead of inline recursion. - Add includes for cgraph.h and function.h. - * trans-decl.cc (gfor_fndecl_cfi_deep_copy_array): New declaration - for runtime deep copy helper. - (gfc_build_builtin_function_decls): Initialize the runtime helper - declaration. - * trans-intrinsic.cc (conv_intrinsic_atomic_op): Enhance handling of - constant values in coarray atomic operations by detecting and - materializing address-of-constant expressions. - * trans.h (gfor_fndecl_cfi_deep_copy_array): Add external declaration. - -2025-11-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122566 - * decl.cc (gfc_get_pdt_instance): Add non-PDT type exstention. - -2025-11-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122501 - PR fortran/122524 - * primary.cc (gfc_convert_to_structure_constructor): Correct - whitespace issue. - (gfc_match_rvalue): Remove the attempt to match specific procs - before filling out PDT constructor. Instead, defer this until - resolution with the condition that there not be a following - arglist and more than one procedure in the generic interface. - -2025-11-05 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/122570 - * openmp.cc (resolve_omp_metadirective): Fix 'skip' of - never matchable metadirective variants. - -2025-11-04 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122564 - * resolve.cc (resolve_locality_spec): Delete temporary hash_set. - -2025-11-04 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/122369 - PR fortran/122508 - * gfortran.h (gfc_rebind_label): Declare new function. - * parse.cc (parse_omp_metadirective_body): Rebind labels to the outer - region. Maintain a vector of metadirective regions. - (gfc_parse_file): Initialise it. - * parse.h (GFC_PARSE_H): Declare it. - * symbol.cc (gfc_get_st_label): Look for existing labels in outer - metadirective regions. - (gfc_rebind_label): Define new function. - (gfc_define_st_label): Accept duplicate labels in metadirective body. - (gfc_reference_st_label): Accept shared DO termination labels in - metadirective body. - -2025-11-03 Steve Kargl <kargls@comcast.net> - - PR fortran/122513 - * resolve.cc (check_default_none_expr): Do not allow an - iterator in a locality spec. Allow a named constant to be - used within the loop. - -2025-11-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/78640 - * resolve.cc (resolve_fl_procedure): Check function result of a - pure function against F2018:C1585. - -2025-10-31 Yuao Ma <c8ef@outlook.com> - - * intrinsic.texi: Fix typo. - * trans-intrinsic.cc (conv_intrinsic_atomic_cas): Remove unreachable - code. - -2025-10-31 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122452 - * primary.cc (gfc_match_rvalue): Give priority to specific - procedures in a generic interface with the same name as a - PDT template. If found, use as the procedure instead of the - constructor generated from the PDT template. - -2025-10-30 Mikael Morin <mikael@gcc.gnu.org> - - * trans-array.cc: Cleanup obsolete comment. - -2025-10-29 Yuao Ma <c8ef@outlook.com> - - * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Remove unreachable - code. - -2025-10-29 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122165 - * primary.cc (gfc_match_varspec): If the previous component ref - was a type specification parameter, a type inquiry ref cannot - follow. - -2025-10-29 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122433 - PR fortran/122434 - * decl.cc (gfc_get_pdt_instance): Prevent a PDT component of - the same type as the template from being converted into an - instance. - * resolve.cc (gfc_impure_variable): The result of a pure - function is a valid allocate object since it is pure. - -2025-10-28 Yuao Ma <c8ef@outlook.com> - - PR fortran/122342 - * trans-const.cc (gfc_conv_constant): Create a variable for the - non-char pointer. - -2025-10-28 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/122439 - * openmp.cc (gfc_resolve_omp_context_selector): Skip selectors that have - OMP_TRAIT_INVALID. - -2025-10-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/922290 - PR fortran/95541 - * resolve.cc (resolve_typebound_intrinsic_op): Add pdt_template - to the list of preemted specifics. - * trans-stmt.cc (trans_associate_var): PDT array and string - components are separately allocated for each element of a PDT - array, so copy in and copy out the selector expression. - -2025-10-27 Richard Biener <rguenther@suse.de> - - PR middle-end/122325 - * options.cc (gfc_init_options_struct): Set flag_complex_method - to fortran rules. - -2025-10-26 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122290 - * decl.cc (variable_decl): Matching component initializer - expressions in PDT templates should be done with gfc_match_expr - to avoid reduction too early. If the expression type is unknown - copy the component typespec. - (gfc_get_pdt_instance): Change comment from a TODO to an - explanation. Insert parameter values in initializers. For - components that are not marked with PDT attributes, do the - full reduction for init expressions. - * primary.cc (gfc_match_actual_arglist): Convert PDT kind exprs - using the component initializer. - * resolve.cc (resolve_typebound_intrinsic_op): Preempt - gfc_check_new_interface for pdt_types as well as entities used - in submodules. - * simplify.cc (get_kind): Remove PDT kind conversion. - -2025-10-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/114023 - * trans-expr.cc (gfc_trans_pointer_assignment): Always set dtype - when remapping a pointer. For unlimited polymorphic LHS use - elem_len from RHS. - * trans-intrinsic.cc (gfc_conv_is_contiguous_expr): Extend inline - generated code for IS_CONTIGUOUS for pointer arguments to detect - when span differs from the element size. - -2025-10-24 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122386 - * dependency.cc (gfc_ref_needs_temporary_p): Revert r16-518. - * trans-intrinsic.cc (gfc_conv_intrinsic_transfer): Force temporary - for SOURCE not being a simply-contiguous array. - -2025-10-24 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/121452 - * openmp.cc (resolve_omp_do): Allow CONTINUE as end statement of a - perfectly nested loop. - -2025-10-21 Paul-Antoine Arras <parras@baylibre.com> - - PR c/120180 - PR fortran/122306 - * gfortran.h (enum gfc_exec_op): Add EXEC_OMP_FIRST_OPENMP_EXEC and - EXEC_OMP_LAST_OPENMP_EXEC. - * openmp.cc (gfc_match_omp_context_selector): Remove static. Remove - checks on score. Add cleanup. Remove checks on trait properties. - (gfc_match_omp_context_selector_specification): Remove static. Adjust - calls to gfc_match_omp_context_selector. - (gfc_match_omp_declare_variant): Adjust call to - gfc_match_omp_context_selector_specification. - (match_omp_metadirective): Likewise. - (icode_code_error_callback): Reject all statements except - 'assume' and 'metadirective'. - (gfc_resolve_omp_context_selector): New function. - (resolve_omp_metadirective): Skip metadirectives which context selectors - can be statically resolved to false. Replace metadirective by its body - if only 'nothing' remains. - (gfc_resolve_omp_declare): Call gfc_resolve_omp_context_selector for - each variant. - -2025-10-21 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (gfc_omp_directive): Add comment to 'allocate'; - add 6.x unimplemented directives as comment-out entries. - -2025-10-18 Yuao Ma <c8ef@outlook.com> - - * resolve.cc (resolve_conditional): Allow character in cond-expr. - * trans-const.cc (gfc_conv_constant): Handle want_pointer. - * trans-expr.cc (gfc_conv_conditional_expr): Fill se->string_length. - (gfc_conv_string_parameter): Handle COND_EXPR tree code. - -2025-10-17 Josef Melcr <jmelcr02@gmail.com> - - * f95-lang.cc (ATTR_CALLBACK_GOMP_LIST): New attr list - corresponding to the list in builtin-attrs.def. - -2025-10-13 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121191 - * trans-array.cc (has_parameterized_comps): New function which - checks if a derived type has parameterized components. - ( gfc_deallocate_pdt_comp): Use it to prevent deallocation of - PDTs if there are no parameterized components. - -2025-10-12 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/95543 - PR fortran/103748 - * decl.cc (insert_parameter_exprs): Guard param->expr before - using it. - (gfc_get_pdt_instance): Substitute paramaters in kind default - initializers. - (gfc_match_decl_type_spec): Emit an error if a type paramter - specification list appears in a variable declaraion with a - non-parameterized type. - * primary.cc (gfc_match_rvalue): Emit an error if a type spec - list is empty. - -2025-10-11 Harald Anlauf <anlauf@gmx.de> - - PR fortran/50377 - PR fortran/122257 - * resolve.cc (resolve_actual_arglist): Initialize variable. - -2025-10-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/50377 - * resolve.cc (resolve_actual_arglist): Check procedure actual - arguments. - -2025-10-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122206 - * trans-types.cc (gfc_get_function_type): Do not clobber an - existing procedure interface. - -2025-10-09 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Define INCLUDE_VECTOR. - -2025-10-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/49111 - * decl.cc (verify_bind_c_sym): Modify condition for generation of - accessibility warning, and adjust warning message. - -2025-10-08 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/93175 - PR fortran/102240 - PR fortran/102686 - * array.cc (match_array_element_spec): For pdt templates, call - gfc_correct_parm_expr to elimante extraneous symbols from the - bound expressions. - * decl.cc (correct_parm_expr, gfc_correct_parm_expr): New fcns - that remove symbols that are not PDT parameters from the type - specification expressions. - (insert_parameter_exprs): Process function symbols as if they - are variables in the substitution with parameter expressions. - (gfc_get_pdt_instance): Make sure that the parameter list of - PDT components is updated as the instance is built. Move the - construction of pdt_strings down a bit in the function and - remove the tie up with pdt_arrays. - * gfortran.h: Add prototype for gfc_correct_parm_expr. - * resolve.cc (resolve_component): Skip testing for constant - specification expressions in pdt_template component string - lengths and pdt_strings. - * trans-array.cc (structure_alloc_comps): Remove testing for - deferred parameters and instead make sure that components of - PDT type have parameters substituted with the parameter exprs - of the enclosing PDT. - -2025-10-07 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/102901 - * trans-array.cc (structure_alloc_comps): Do not use - gfc_check_pdt_dummy with pointer or allocatable components. - -2025-10-04 Harald Anlauf <anlauf@gmx.de> - - PR fortran/107968 - * trans-io.cc (gfc_trans_transfer): Also scalarize I/O of section - of an array pointer. - -2025-10-03 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122089 - * decl.cc (gfc_get_pdt_instance): If gfc_extract_int is true an - error has occurred because the kind expr was not provided. Use - the template in this case and return MATCH_YES. - -2025-10-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122080 - * trans-array.cc (gfc_conv_array_parameter): Wrap the derivation of - bounds and strides for the descriptor of an optional dummy array - argument by a test on argument presence when it is supposed to be - passed to an optional argument. - -2025-10-01 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122089 - * decl.cc (gfc_get_pdt_instance): If the pdt_template is use - associated, 'module' field should be copied to this instance. - -2025-09-30 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/102241 - * gfortran.h: Add symbol attribute 'pdt_comp'. - * module.cc : Add 'pdt_comp' to 'ab_attribute' and 'attr_bits'. - (mio_symbol_attribute): Set 'pdt_comp'. - * resolve.cc (resolve_component): If a PDT component is found - in a non-PDT type, generate the PDT instance, if necessary, and - set the 'pdt_comp' attribute. Fix some whitespace issues. - * trans-decl.cc (gfc_get_symbol_decl, gfc_trans_deferred_vars): - If 'pdt_comp' set, initialize the PDT components. - * trans-stmt.cc (gfc_trans_deallocate): Verify that a typespec - parameter list is available for PDT components of ordinary - derived types. - -2025-09-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87908 - * interface.cc (check_interface0): Revert changes. - -2025-09-26 Harald Anlauf <anlauf@gcc.gnu.org> - - PR fortran/122002 - * decl.cc (gfc_get_pdt_instance): Initialize 'instance' to NULL - and set 'kind_value' to zero before calling gfc_extract_int. - * primary.cc (gfc_match_rvalue): Intitialize 'ctr_arglist' to - NULL and test for default values if gfc_get_pdt_instance - returns NULL. - -2025-09-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121939 - * trans-types.cc (gfc_init_types): Set string flag for all - character types. - -2025-09-24 Mikael Morin <morin-mikael@orange.fr> - - PR fortran/122046 - * symbol.cc (gfc_get_procedure_ns): Try to find the namespace - among the list of contained namespaces before returning the - value from the formal_ns field. - -2025-09-24 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87908 - * interface.cc (check_interface0): If a vtable is found in the - interface list, check that it is either a subroutine or a - function. Let resolve.cc do any further checking. - -2025-09-22 Steve Kargl <pault@gcc.gnu.org> - - PR fortran/103508 - * decl.cc (gfc_match_end): Remove only the current partial - rather than removing the entire sibling chain. - -2025-09-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/109010 - * st.cc (gfc_free_statement): Also free components expr3 and expr4. - -2025-09-21 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/121161 - * invoke.texi: Mention that -ffrontend-optimize is required - for -fexternal-blas64. - * options.cc (gfc_post_options): Fatal error if -fexternal-blas64 - is specified without -ffrontend-optimize. - * trans-types.cc (gfc_init_kinds): Fatal error if -fexternal-blas64 - is specified on a system which does not have 64-bit ptrdiff_t. - -2025-09-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/108581 - * trans-array.cc (gfc_conv_expr_descriptor): Take the dynamic - string length into account when deriving the dataptr offset for - a deferred-length character array. - -2025-09-20 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83746 - * trans-decl.cc (gfc_trans_deferred_vars): If a procedure with - an non-allocatable, non-pointer explicit PDT result has no - default initializer, the parameterized components should be - allocated. - -2025-09-19 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83746 - * trans-array.cc (structure_alloc_comps): Add the pre and post - blocks to 'fnblock' for all the evaluations of parameterized - expressions in PDT component allocatation. - -2025-09-18 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121948 - * decl.cc (gfc_get_pdt_instance): Copy the contents of 'tb' and - not the pointer. - * primary.cc (gfc_match_rvalue): If there is only one actual - argument list, use if for the type spec parameter values. If - this fails try the default type specification values and use - the actual arguments for the component values. - * resolve.cc (build_init_assign): Don't initialize implicit PDT - function results. - -2025-09-17 Thomas Koenig <tkoenig@gcc.gnu.org> - - * frontend-passes.cc (optimize_namespace): Handle - flag_external_blas64. - (call_external_blas): If flag_external_blas is set, use - gfc_integer_4_kind as the argument kind, gfc_integer_8_kind otherwise. - * gfortran.h (gfc_integer_8_kind): Define. - * invoke.texi: Document -fexternal-blas64. - * lang.opt: Add -fexternal-blas64. - * lang.opt.urls: Regenerated. - * options.cc (gfc_post_options): -fexternal-blas is incompatible - with -fexternal-blas64. - -2025-09-15 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83763 - * trans-decl.cc (gfc_trans_deferred_vars): Ensure that the - parameterized components of PDTs that do not have allocatable - components are deallocated on leaving scope. - * trans-expr.cc (gfc_trans_assignment_1): Do a dependency check - on PDT assignments. If there is a dependency between lhs and - rhs, deallocate the lhs parameterized components after the rhs - has been evaluated. - -2025-09-14 Yuao Ma <c8ef@outlook.com> - - * dump-parse-tree.cc (show_expr): Add support for EXPR_CONDITIONAL. - * expr.cc (gfc_get_conditional_expr): Add cond-expr constructor. - (gfc_copy_expr, free_expr0, gfc_is_constant_expr, - simplify_conditional, gfc_simplify_expr, gfc_check_init_expr, - check_restricted, gfc_traverse_expr): Add support for EXPR_CONDITIONAL. - * frontend-passes.cc (gfc_expr_walker): Ditto. - * gfortran.h (enum expr_t): Add EXPR_CONDITIONAL. - (gfc_get_operator_expr): Format fix. - (gfc_get_conditional_expr): New decl. - * matchexp.cc - (match_conditional, match_primary): Parsing for EXPR_CONDITIONAL. - * module.cc (mio_expr): Add support for EXPR_CONDITIONAL. - * resolve.cc (resolve_conditional, gfc_resolve_expr): Ditto. - * trans-array.cc (gfc_walk_conditional_expr, gfc_walk_subexpr): Ditto. - * trans-expr.cc - (gfc_conv_conditional_expr): Codegen for EXPR_CONDITIONAL. - (gfc_apply_interface_mapping_to_expr, gfc_conv_expr, - gfc_conv_expr_reference): Add support for EXPR_CONDITIONAL. - -2025-09-11 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121616 - * primary.cc (gfc_variable_attr): Properly set dimension attribute - from a component ref. - -2025-09-09 Harald Anlauf <anlauf@gmx.de> - - * trans-intrinsic.cc (conv_intrinsic_fstat_lstat_stat_sub): Init - some variables. - -2025-09-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/82480 - * check.cc (error_unsupported_kind): Helper function to report an - unsupported kind of an argument. - (check_minrange4): Helper function to report if an integer variable - does not have a decimal range of at least four. - (gfc_check_fstat): Adjust checks for generalization of instrinsic - function FSTAT. - (gfc_check_fstat_sub): Likewise for subroutine FSTAT. - (gfc_check_stat): Likewise for functio STAT. - (gfc_check_stat_sub): Likewise for subroutine STAT. - * intrinsic.texi: Document generalized versions of intrinsics - STAT/LSTAT/FSTAT. - * iresolve.cc (gfc_resolve_stat): STAT function result shall have - the same kind as the VALUES argument. - (gfc_resolve_lstat): Likewise for LSTAT. - (gfc_resolve_fstat): Likewise for FSTAT. - (gfc_resolve_stat_sub): Resolve proper library subroutine for STAT. - (gfc_resolve_lstat_sub): Likewise for LSTAT. - * trans-decl.cc (gfc_build_intrinsic_function_decls): Declare - fndecls for required subroutines in runtine library. - * trans-intrinsic.cc (conv_intrinsic_fstat_lstat_stat_sub): Emit - runtime wrapper code for the library functions, taking care of - possible kind conversion of the optional STATUS argument of the - subroutine versions of the intrinsics. - (gfc_conv_intrinsic_subroutine): Use it. - * trans.h (GTY): Declare prototypes. - -2025-09-08 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84008 - * decl.cc (insert_parameter_exprs): Correct the typespec of new - variable declarations, where the type is set to BT_PROCEDURE as - a precaution for resolution of the whole program unit. - -2025-09-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84119 - * resolve.cc (reset_array_ref_to_scalar): New function using - chunk broken out from gfc_resolve_ref. - (gfc_resolve_ref): Call the new function, the first time for - PDT type parameters and the second time for LEN inquiry refs. - -2025-09-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84432 - PR fortran/114815 - * expr.cc (gfc_check_assign_symbol): Check that components in a - PDT with a default initializer have type and length parameters - that reduce to constant integer expressions. - * trans-expr.cc (gfc_trans_assignment_1): Parameterized - components cannot have default initializers so they must be - allocated after initialization. - -2025-09-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83762 - PR fortran/102457 - * decl.cc (gfc_get_pdt_instance): Check that variable PDT parm - expressions are of type integer. Note that the symbol must be - tested since the expression often appears as BT_PROCEDURE. - -2025-09-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121263 - * trans-intrinsic.cc (gfc_conv_intrinsic_transfer): For an - unlimited polymorphic SOURCE to TRANSFER use saved descriptor - if possible. - -2025-09-02 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/89707 - * decl.cc (gfc_get_pdt_instance): Copy the typebound procedure - field from the PDT template. If the template interface has - kind=0, provide the new instance with an interface with a type - spec that points to that of the parameterized component. - (match_ppc_decl): When 'saved_kind_expr' this is a PDT and the - expression should be copied to the component kind_expr. - * gfortran.h: Define gfc_get_tbp. - -2025-09-02 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87669 - * expr.cc (gfc_spec_list_type): If no LEN components are seen, - unconditionally return 'SPEC_ASSUMED'. This suppresses an - invalid error in match.cc(gfc_match_type_is). - -2025-09-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121727 - * trans-expr.cc (gfc_const_length_character_type_p): New helper - function. - (conv_dummy_value): Use it to determine if a character actual - argument has a constant length. If a character actual argument is - constant and longer than the dummy, truncate it at compile time. - -2025-08-31 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/99709 - * trans-array.cc (structure_alloc_comps): For the case - COPY_ALLOC_COMP, do a deep copy of non-allocatable PDT arrays - Suppress the use of 'duplicate_allocatable' for PDT arrays. - * trans-expr.cc (conv_dummy_value): When passing to a PDT dummy - with the VALUE attribute, do a deep copy to ensure that - parameterized components are reallocated. - -2025-08-29 Harald Anlauf <anlauf@gmx.de> - - PR fortran/93330 - * interface.cc (get_sym_storage_size): Add argument size_known to - indicate that the storage size could be successfully determined. - (get_expr_storage_size): Likewise. - (gfc_compare_actual_formal): Use them to handle zero-sized dummy - and actual arguments. - If a character formal argument has the pointer or allocatable - attribute, or is an array that is not assumed or explicit size, - we generate an error by default unless -std=legacy is specified, - which falls back to just giving a warning. - If -Wcharacter-truncation is given, warn on a character actual - argument longer than the dummy. Generate an error for too short - scalar character arguments if -std=f* is given instead of just a - warning. - -2025-08-28 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/82843 - * intrinsic.cc (gfc_convert_type_warn): If the 'from_ts' is a - PDT instance, copy the derived type to the target ts. - * resolve.cc (gfc_resolve_ref): A PDT component in a component - reference can be that of the pdt_template. Unconditionally use - component of the PDT instance to ensure that the backend_decl - is set during translation. Likewise if a component is - encountered that is a PDT template type, use the component - parmeters to convert to the correct PDT instance. - -2025-08-28 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/82205 - * decl.cc (gfc_get_pdt_instance): Copy the default initializer - for components that are not PDT parameters or parameterized. If - any component is a pointer or allocatable set the attributes - 'pointer_comp' or 'alloc_comp' of the new PDT instance. - * primary.cc (gfc_match_rvalue): Implement the correct form of - PDT constructors with 'name (type parms)(component values)'. - * trans-array.cc (structure_alloc_comps): Apply scalar default - initializers. Array initializers await the coming change in PDT - representation. - * trans-io.cc (transfer_expr): Do not output the type parms of - a PDT in list directed output. - -2025-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/114611 - * io.cc: Issue an error on use of the H descriptor in - a format with -std=f95 or higher. Otherwise, issue a - warning. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118839 - * trans-openmp.cc (gfc_trans_omp_declare_variant): Error if variant - is the same as base. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - * openmp.cc (gfc_match_omp_declare_variant): Make check for a - missing "match" clause unconditional. - -2025-08-21 Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/121627 - * module.cc (create_int_parameter_array): Avoid NULL - pointer dereference and enhance error message. - -2025-08-21 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84122 - PR fortran/85942 - * parse.cc (parse_derived): PDT type parameters are not allowed - an explicit access specification and must appear before a - PRIVATE statement. If a PRIVATE statement is seen, mark all the - other components as PRIVATE. - * simplify.cc (get_kind): Convert a PDT KIND component into a - specification expression using the default initializer. - -2025-08-20 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - * intrinsic.texi: Correct the example given for FRACTION. - Move the TEAM_NUMBER section to after the TANPI to align - with the order gven in the index. - -2025-08-16 H.J. Lu <hjl.tools@gmail.com> - - PR fortran/107421 - * trans-common.cc (build_common_decl): Call set_decl_tls_model - after processing a variable. - * trans-decl.cc (gfc_finish_var_decl): Likewise. - (get_proc_pointer_decl): Likewise. - -2025-08-13 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/89092 - * resolve.cc (was_declared): Add subroutine attribute. - -2025-08-12 Yuao Ma <c8ef@outlook.com> - - * check.cc (gfc_check_c_f_pointer): Check lower arg legitimacy. - * intrinsic.cc (add_subroutines): Teach c_f_pointer about lower arg. - * intrinsic.h (gfc_check_c_f_pointer): Add lower arg. - * intrinsic.texi: Update lower arg for c_f_pointer. - * trans-intrinsic.cc (conv_isocbinding_subroutine): Add logic handle lower. - -2025-08-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121398 - * resolve.cc (check_pdt_args): New function. - (check_generic_tbp_ambiguity): Use it to ensure that args to - typebound procedures that do not have the same declared type as - the containing derived type have 'pass1/2' set to null. This - avoids false ambiguity errors. - (resolve_typebound_procedure): Do not generate a wrong type - error for typebound procedures marked as pass if they are of a - different declared type to the containing pdt_type. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - * gfortran.h (gfc_case): Fix comment typo, singe -> single. - -2025-08-09 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121182 - * decl.cc (match_generic_stmt): New function based on original - gfc_match_generic but feeding namespace rather than typebound - generics. - (match_typebound_generic): Renamed original gfc_match_generic. - (gfc_match_generic): New function that selects between type - bound generic and other generic statements and calls one of the - above two functions as appropriate. - * parse.cc (decode_specification_statement): Allow generic - statements. - (parse_spec): Accept a generic statement in a specification - block. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-stmt.cc (trans_associate_var): Remove overwrite of - the polymorphic associate variable's array descriptor offset. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-array.cc (trans_array_constructor): Remove the update of - the array descriptor upper bound after array constructor - expansion. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-array.cc (gfc_conv_expr_descriptor): Remove - isolated initialization of the span field before passing to - the function that will do the initialization. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-decl.cc (gfc_trans_deferred_vars): Don't default - initialize the span of local pointer arrays. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-stmt.cc (trans_associate_var): Remove overwrite of the - span field of the associate variable's array descriptor. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * trans-expr.cc (gfc_trans_pointer_assignment): Remove overwrite - of the span after assignment of the array descriptor in the - polymorphic function result to non-polymorphic pointer case. - -2025-08-05 Mikael Morin <mikael@gcc.gnu.org> - - * trans.h (gfc_se): Remove field use_offset. - * trans-expr.cc (gfc_conv_intrinsic_to_class): Remove use_offset - initialization. - (gfc_conv_procedure_call): Likewise. - * trans-stmt.cc (trans_associate_var): Likewise. - -2025-08-05 Mikael Morin <mikael@gcc.gnu.org> - - * trans-array.cc (gfc_alloc_allocatable_for_assignment): Use the - offset setter instead of generating a write to the offset. - (gfc_conv_array_parameter): Use the offset setter instead of - generating a write to the value returned by the offset getter. - * trans-expr.cc (gfc_trans_alloc_subarray_assign): Likewise. - -2025-08-05 Mikael Morin <mikael@gcc.gnu.org> - - * trans-array.cc (gfc_conv_descriptor_data_addr): Remove. - * trans-array.h (gfc_conv_descriptor_data_addr): Remove. - * trans-decl.cc (gfc_trans_deferred_vars): Use - gfc_conv_descriptor_data_get. - -2025-08-05 Mikael Morin <mikael@gcc.gnu.org> - - * trans.cc (gfc_finalize_tree_expr): Use the data setter instead - of writing to the value returned by the data getter. - * trans-decl.cc (gfc_trans_deferred_vars): Likewise. - * trans-stmt.cc (trans_associate_var): Use the data setter - instead of writing to the value dereferenced from the data - address. - -2025-08-01 Mikael Morin <mikael@gcc.gnu.org> - - * trans-decl.cc (gfc_trans_deferred_vars): Fix closing brace in - a comment. - -2025-07-31 Mikael Morin <morin-mikael@orange.fr> - - PR fortran/121342 - * trans-expr.cc (gfc_conv_subref_array_arg): Remove offset - update. - (gfc_conv_procedure_call): For polymorphic functions, move the - scalarizer descriptor information... - * trans-array.cc (gfc_add_loop_ss_code): ... here, and evaluate - the bounds to fresh variables. - (get_class_info_from_ss): Remove offset update. - (gfc_conv_ss_startstride): Don't set a zero value for function - result upper bounds. - (late_set_loop_bounds): New. - (gfc_conv_loop_setup): If the bounds of a function result have - been set, and no other array provided loop bounds for a - dimension, use the function result bounds as loop bounds for - that dimension. - (gfc_set_delta): Don't skip delta setting for polymorphic - function results. - -2025-07-30 Mikael Morin <morin-mikael@orange.fr> - - * trans-array.cc (gfc_array_init_size): Remove the nelems - argument. - (gfc_array_allocate): Update caller. Remove the nelems - argument. - * trans-stmt.cc (gfc_trans_allocate): Update caller. Remove the - nelems variable. - * trans-array.h (gfc_array_allocate): Update prototype. - -2025-07-30 Yuao Ma <c8ef@outlook.com> - - * check.cc (gfc_check_split): Argument check for SPLIT. - * gfortran.h (enum gfc_isym_id): Define GFC_ISYM_SPLIT. - * intrinsic.cc (add_subroutines): Register SPLIT intrinsic. - * intrinsic.h (gfc_check_split): New decl. - (gfc_resolve_split): Ditto. - * intrinsic.texi: SPLIT documentation. - * iresolve.cc (gfc_resolve_split): Add resolved_sym for SPLIT. - * trans-decl.cc (gfc_build_intrinsic_function_decls): Add decl for - SPLIT in libgfortran. - * trans-intrinsic.cc (conv_intrinsic_split): SPLIT codegen. - (gfc_conv_intrinsic_subroutine): Handle SPLIT case. - * trans.h (GTY): Declare gfor_fndecl_string_split{, _char4}. - -2025-07-27 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/121185 - * trans-expr.cc (gfc_trans_assignment_1): Use the same condition - to set the is_alloc_lhs flag and to decide to generate - reallocation code. Add explicit call to gfc_fix_class_refs - before evaluating the condition. - -2025-07-27 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/121185 - * trans-array.cc (set_factored_descriptor_value): Also trigger - the saving of the previously selected reference on encountering - an INDIRECT_REF. Extract the saving code... - (save_ref): ... here as a new function. - -2025-07-27 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/121185 - * trans-expr.cc (gfc_get_class_from_expr): Give up class - container lookup on the second COMPONENT_REF after an array - descriptor. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Make diagnostics::context::m_source_printing private. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cpp.cc: Update usage of "diagnostic_info" to explicitly refer to - "diagnostics::diagnostic_info". - * error.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cpp.cc: Update for diagnostic_t becoming - enum class diagnostics::kind. - * error.cc: Likewise. - * options.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * cpp.cc: Update for renaming of - diagnostic_option_id to diagnostics::option_id. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Update for move of diagnostic-color.h to - diagnostics/color.h. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Update for diagnostic_context becoming - diagnostics::context. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Update to add "m_" prefix to fields of - diagnostic_info throughout. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * error.cc: Update for move of diagnostics output formats into - namespace "diagnostics" as "sinks". - * gfortran.h: Likewise. - -2025-07-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121203 - * trans-expr.cc (gfc_conv_procedure_call): Obtain the character - length of an assumed character length procedure from the typespec - of the actual argument even if there is no explicit interface. - -2025-07-21 Mikael Morin <mikael@gcc.gnu.org> - - * trans-decl.cc (gfc_trans_deferred_vars): Fix indentation. - -2025-07-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119106 - * expr.cc (simplify_constructor): Do not simplify constants. - (gfc_simplify_expr): Continue to simplify expression when an - iterator is present. - -2025-07-21 Mikael Morin <mikael@gcc.gnu.org> - - * trans-array.cc (gfc_conv_ss_descriptor): Move the descriptor - expression initialisation... - (set_factored_descriptor_value): ... to this new function. - Before initialisation, walk the reference expression passed as - argument and save some of its subexpressions to a variable. - (substitute_t): New struct. - (maybe_substitute_expr): New function. - (substitute_subexpr_in_expr): New function. - -2025-07-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121145 - * trans-expr.cc (gfc_conv_procedure_call): Do not create pointer - check for proc-pointer actual passed to optional dummy. - -2025-07-16 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121060 - * interface.cc (matching_typebound_op): Defer determination of - specific procedure until resolution by returning NULL. - -2025-07-16 Steve Kargl <sgk@troutmask.apl.washington.edu> - - * decl.cc (gfc_match_import): Correct minor whitespace snafu - and fix NULL pointer dereferences in two places. - -2025-07-15 Kwok Cheung Yeung <kcyeung@baylibre.com> - - PR fortran/104428 - * trans-openmp.cc (gfc_trans_omp_declare_variant): Check that proc_st - is non-NULL before dereferencing. Add line number to error message. - -2025-07-15 Mikael Morin <mikael@gcc.gnu.org> - - * gfortran.h (gfc_symbol): Remove field allocated_in_scope. - * trans-array.cc (gfc_array_allocate): Don't set it. - (gfc_alloc_allocatable_for_assignment): Likewise. - Generate the unallocated descriptor bounds initialisation - before the opening of the reallocation code block. Create a - variable and use it as additional condition to the unallocated - descriptor bounds initialisation. - -2025-07-15 Mikael Morin <mikael@gcc.gnu.org> - - * trans-array.cc (gfc_conv_ss_descriptor): Don't evaluate - offset and data to a variable if is_alloc_lhs is set. Move the - existing evaluation decision condition for data... - (save_descriptor_data): ... here as a new predicate. - (evaluate_bound): Add argument save_value. Omit the evaluation - of the value to a variable if that argument isn't set. - (gfc_conv_expr_descriptor): Update caller. - (gfc_conv_section_startstride): Update caller. Set save_value - if is_alloc_lhs is not set. Omit the evaluation of stride to a - variable if save_value isn't set. - (gfc_set_delta): Omit the evaluation of delta to a variable - if is_alloc_lhs is set. - (gfc_is_reallocatable_lhs): Return false if flag_realloc_lhs - isn't set. - (gfc_alloc_allocatable_for_assignment): Don't update - the variables that may be stored in saved_offset, delta, and - data. Call instead... - (update_reallocated_descriptor): ... this new procedure. - * trans-expr.cc (gfc_trans_assignment_1): Don't omit setting the - is_alloc_lhs flag if the right hand side is an intrinsic - function. Clear the flag if the right hand side is scalar. - -2025-07-15 Mikael Morin <mikael@gcc.gnu.org> - - * trans-expr.cc (gfc_trans_assignment_1): Generate array - reallocation code before entering the scalarisation loops. - -2025-07-15 Filip Kastl <fkastl@suse.cz> - - * resolve.cc (resolve_select_type): Fix indentation. - -2025-07-12 Tobias Burnus <tburnus@baylibre.com> - - * invoke.texi (-Wsurprising): Note about OpenACC warning - related to PARAMATER. - * openmp.cc (resolve_omp_clauses, gfc_resolve_oacc_declare): - Accept PARAMETER for OpenACC but add surprising warning. - * trans-openmp.cc (gfc_trans_omp_variable_list, - gfc_trans_omp_clauses): Ignore PARAMETER inside clauses. - -2025-07-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/106035 - * decl.cc (build_sym): Emit an error if a symbol associated by - an IMPORT, ONLY or IMPORT, all statement is being redeclared. - (gfc_match_import): Parse and check the F2018 versions of the - IMPORT statement. For scopes other than and interface body, if - the symbol cannot be found in the host scope, generate it and - set it up such that gfc_fixup_sibling_symbols can transfer its - 'imported attribute' if it turnes out to be a not yet parsed - procedure. Test for violations of C897-8100. - * gfortran.h : Add 'import_only' to the gfc_symtree structure. - Add the enum, 'importstate', which is used for values the new - field 'import_state' in gfc_namespace. - * parse.cc (gfc_fixup_sibling_symbols): Transfer the attribute - 'imported' to the new symbol. - * resolve.cc (check_sym_import_status, check_import_status): - New functions to test symbols and expressions for violations of - F2018:C8102. - (resolve_call): Test the 'resolved_sym' against C8102 by a call - to 'check_sym_import_status'. - (gfc_resolve_expr): If the expression is OK and an IMPORT - statement has been registered in the current scope, test C102 - by calling 'check_import_status'. - (resolve_select_type): Test the declared derived type in TYPE - IS and CLASS IS statements. - -2025-07-08 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120637 - * class.cc (finalize_component): Return true, when a finalizable - component was detect and do not free it. - -2025-07-07 Mikael Morin <mikael@gcc.gnu.org> - - * trans-intrinsic.cc (conv_intrinsic_move_alloc): Add pre and - post code for the FROM and TO arguments. - -2025-07-04 Martin Jambor <mjambor@suse.cz> - - * io.cc (format_asterisk): Add a brace around static initialization - location part of the field locus. - -2025-07-03 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120843 - * resolve.cc (resolve_operator): Remove conformability check, - because it is not in the standard. - -2025-07-01 Harald Anlauf <anlauf@gmx.de> - - * coarray.cc (check_add_new_component): Treat pure and elemental - intrinsic functions the same as non-intrinsic ones. - (create_caf_add_data_parameter_type): Fix front-end memleaks. - * trans-intrinsic.cc (conv_caf_func_index): Likewise. - -2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120847 - * coarray.cc (check_add_new_comp_handle_array): Make the count - of components static to be able to create more than one. Create - an array component only for array expressions. - -2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120843 - * resolve.cc (resolve_operator): Report inconsistent coranks - only when not referencing this_image. - (gfc_op_rank_conformable): Treat coranks as inconformable only - when a coindex other then implicit this_image is used. - -2025-06-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120784 - * interface.cc (gfc_match_end_interface): Detect empty local_name. - -2025-06-26 Martin Jambor <mjambor@suse.cz> - - * match.cc (gfc_match_nullify): Initialize p to NULL; - -2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> - - * trans.cc (gfc_allocate_using_malloc): Prevent possible memory - leak when allocation was already done. - -2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> - - * resolve.cc (resolve_fl_derived0): Do not create the token - component when not in coarray lib mode. - * trans-types.cc: Do not access the token when not in coarray - lib mode. - -2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120711 - * trans-array.cc (gfc_trans_array_ctor_element): Store the value - of the offset for reuse. - -2025-06-24 Tobias Burnus <tburnus@baylibre.com> - - * trans-stmt.cc (gfc_trans_call_acc_attach_detach): New. - (gfc_trans_call): Call it. - -2025-06-24 Harald Anlauf <anlauf@gmx.de> - Jerry DeLisle <jvdelisle@gcc.gnu.org> - Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/120743 - * trans-expr.cc (gfc_conv_substring): Substring indices are of - type gfc_charlen_type_node. Convert to size_type_node for - pointer arithmetic only after offset adjustments have been made. - -2025-06-24 Mikael Morin <morin-mikael@orange.fr> - - * misc.cc (gfc_var_name_for_select_type_temp): New function. - * gfortran.h (gfc_var_name_for_select_type_temp): Declare it. - * resolve.cc (resolve_select_type): Pick a discriminating name - from the SELECT TYPE variable reference and use it in the name - of the temporary variable that is generated. Truncate name to - the buffer size. - * match.cc (select_type_set_tmp): Likewise. Pass the - discriminating name... - (select_intrinsic_set_tmp): ... to this function. Use the - discriminating name likewise. Augment the buffer size to match - that of select_type_set_tmp and resolve_select_type. - -2025-06-23 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (OACC_WAIT_CLAUSES): Add if clause. - * trans-openmp.cc (gfc_trans_oacc_wait_directive): Handle it. - -2025-06-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120784 - * interface.cc (gfc_match_end_interface): If a use-associated - symbol is renamed, use the local_name for checking. - -2025-06-19 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/120713 - * trans-array.cc (gfc_trans_deferred_array): Statically - initialize deferred length variable for SAVEd character arrays. - -2025-06-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/82480 - * check.cc (gfc_check_fstat): Extend checks to INTENT(OUT) arguments. - (gfc_check_fstat_sub): Likewise. - (gfc_check_stat): Likewise. - (gfc_check_stat_sub): Likewise. - * intrinsic.texi: Adjust documentation. - -2025-06-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/51961 - * resolve.cc (conformable_arrays): Use modified rank check when - MOLD= expression is given. - -2025-06-12 Yuao Ma <c8ef@outlook.com> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/113152 - * intrinsic.texi: Document new half-revolution trigonometric - functions. Reorder doc for atand. - -2025-06-06 Tobias Burnus <tburnus@baylibre.com> - Sandra Loosemore <sloosemore@baylibre.com> - - * f95-lang.cc (ATTR_PURE_NOTHROW_LIST): Define. - * trans-expr.cc (get_builtin_fn): Handle omp_get_num_devices - and omp_get_intrinsic_device. - * gfortran.h (gfc_option_t): Add disable_omp_... for them. - * options.cc (gfc_handle_option): Handle them with - -fno-builtin-. - -2025-06-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120483 - * trans-expr.cc (gfc_conv_substring): Use pointer arithmetic on - static allocatable char arrays. - -2025-06-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/99838 - * data.cc (gfc_assign_data_value): For a new initializer use the - location from the constructor as fallback. - -2025-05-30 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102599 - PR fortran/114022 - * expr.cc (simplify_complex_array_inquiry_ref): Helper function for - simplification of inquiry references (%re/%im) of constant complex - arrays. - (find_inquiry_ref): Use it for handling %re/%im inquiry references - of complex arrays. - (scalarize_intrinsic_call): Fix frontend memleak. - * primary.cc (gfc_match_varspec): When the reference is NULL, the - previous simplification has succeeded in evaluating inquiry - references also of arrays. - -2025-05-30 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120355 - * interface.cc (compare_parameter): If the global function has a - result clause, take typespec from there for the comparison against - the dummy argument. - -2025-05-30 Julian Brown <julian@codesourcery.com> - Tobias Burnus <tburnus@baylibre.com> - - * parse.cc (tree.h, fold-const.h, tree-hash-traits.h): Add includes - (for additions to omp-general.h). - -2025-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * check.cc(check_c_ptr_2): Rephrase error message - for clarity. - -2025-05-28 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/113152 - * simplify.cc (gfc_simplify_cospi, gfc_simplify_sinpi): Avoid using - mpfr_fmod_ui in the MPFR < 4.2.0 version. - -2025-05-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119856 - * io.cc: Set missing comma error checks to STD_STD_LEGACY. - -2025-05-28 Yuao Ma <c8ef@outlook.com> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/113152 - * gfortran.h (enum gfc_isym_id): Add new enum. - * intrinsic.cc (add_functions): Register new intrinsics. Changing the call - from gfc_resolve_trigd{,2} to gfc_resolve_trig{,2}. - * intrinsic.h (gfc_simplify_acospi, gfc_simplify_asinpi, - gfc_simplify_asinpi, gfc_simplify_atanpi, gfc_simplify_atan2pi, - gfc_simplify_cospi, gfc_simplify_sinpi, gfc_simplify_tanpi): New. - (gfc_resolve_trig): Rename from gfc_resolve_trigd. - (gfc_resolve_trig2): Rename from gfc_resolve_trigd2. - * iresolve.cc (gfc_resolve_trig): Rename from gfc_resolve_trigd. - (gfc_resolve_trig2): Rename from gfc_resolve_trigd2. - * mathbuiltins.def: Add 7 new math builtins and re-align. - * simplify.cc (gfc_simplify_acos, gfc_simplify_asin, - gfc_simplify_acosd, gfc_simplify_asind): Revise error message. - (gfc_simplify_acospi, gfc_simplify_asinpi, - gfc_simplify_asinpi, gfc_simplify_atanpi, gfc_simplify_atan2pi, - gfc_simplify_cospi, gfc_simplify_sinpi, gfc_simplify_tanpi): New. - -2025-05-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/101735 - * primary.cc (gfc_match_varspec): Correct order of logic. - -2025-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * check.cc (gfc_check_c_associated): Use new helper functions. - Only call check_c_ptr_1 if optional c_ptr_2 tests succeed. - (check_c_ptr_1): Handle only c_ptr_1 checks. - (check_c_ptr_2): Expand checks for c_ptr_2 and handle cases - where there is no derived pointer in the gfc_expr and check - the inmod_sym_id only if it exists. - * misc.cc (gfc_typename): Handle the case for BT_VOID rather - than throw an internal error. - -2025-05-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/101735 - * expr.cc (find_inquiry_ref): If an inquiry reference applies to - a substring, use that, and calculate substring length if needed. - * primary.cc (extend_ref): Also handle attaching to end of - reference chain for appending. - (gfc_match_varspec): Discrimate between arrays of character and - substrings of them. If a substring is taken from a character - component of a derived type, get the proper typespec so that - inquiry references work correctly. - (gfc_match_rvalue): Handle corner case where we hit a seemingly - dangling '%' and missed an inquiry reference. Try another match. - -2025-05-27 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * error.cc (gfc_diagnostic_start_span): Update for diagnostic.h - changes. - -2025-05-19 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120099 - * trans-types.cc (gfc_return_by_reference): Intrinsic functions - returning complex numbers may return their result by reference - with -ff2c. - -2025-05-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/85750 - * resolve.cc (resolve_symbol): Reorder conditions when to apply - default-initializers. - -2025-05-15 Tobias Burnus <tburnus@baylibre.com> - - * trans-openmp.cc (gfc_omp_deep_mapping_do): Handle SSA_NAME if - a def_stmt is available. - -2025-05-14 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120139 - * dump-parse-tree.cc (get_c_type_name): If no constant - size of an array exists, output an asterisk. - -2025-05-14 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120107 - * dump-parse-tree.cc (write_type): Do not dump non-interoperable - types. - -2025-05-14 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/120225 - * simplify.cc (gfc_simplify_cotand): Fix used argument in - mpfr_tanu call. - -2025-05-14 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/120225 - * simplify.cc: Include "trigd_fe.inc" only with MPFR < 4.2.0. - (rad2deg, rad2deg): Only define if MPFR < 4.2.0. - (gfc_simplify_acosd, gfc_simplify_asind, gfc_simplify_atand, - gfc_simplify_atan2d, gfc_simplify_cosd, gfc_simplify_tand, - gfc_simplify_cotand): Use mpfr_...u functions with MPFR >= 4.2.0. - -2025-05-13 Yuao Ma <c8ef@outlook.com> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/113413 - * intrinsic.cc (do_check): Minor doc polish. - (add_functions): Add atand(y, x) mapping. - * intrinsic.texi: Update atand example. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - Daniil Kochergin <daniil2472s@gmail.com> - Tobias Burnus <tburnus@baylibre.com> - - PR fortran/120191 - * trans-intrinsic.cc (strip_kind_from_actual): Remove. - (gfc_conv_intrinsic_minmaxloc): Don't call strip_kind_from_actual. - Free and clear kind_arg->expr if non-NULL. Set back_arg->name to - "%VAL" instead of a loop looking for last argument. Remove actual - variable, use array_arg instead. Free and clear dim_arg->expr if - non-NULL for BT_CHARACTER cases instead of using a loop. - -2025-05-11 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120163 - * gfortran.h: Add formal_resolved to gfc_symbol. - * resolve.cc (gfc_resolve_formal_arglist): Set it. - (resolve_function): Do not call gfc_get_formal_from_actual_arglist - if we already resolved a formal arglist. - (resolve_call): Likewise. - -2025-05-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102891 - * dependency.cc (gfc_ref_needs_temporary_p): Within an array - reference, inquiry references of complex variables generally - need a temporary. - -2025-05-10 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120193 - * trans-types.cc (gfc_init_types): For flag_unsigned use - build_distinct_type_copy or build_variant_type_copy from - gfc_character_types[index_char] if index_char > -1 instead of - gfc_character_types[index_char] or - gfc_build_unsigned_type (&gfc_unsigned_kinds[index]). - -2025-05-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120179 - * match.cc (gfc_match_do): Do not attempt to match end-of-statement - twice. - -2025-05-07 Paul Thomas <pault@gcc.gnu.org> - and Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/119948 - * primary.cc (match_variable): Module procedures with sym the - same as result can be treated as variables, although marked - external. - -2025-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * check.cc (gfc_check_c_associated): Modify checks to avoid - ICE and allow use, intrinsic :: iso_c_binding from a separate - module file. - -2025-05-06 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119928 - * interface.cc (gfc_check_dummy_characteristics): Do not issue - error if one dummy symbol has been generated from an actual - argument and the other one has OPTIONAL, INTENT, ALLOCATABLE, - POINTER, TARGET, VALUE, ASYNCHRONOUS or CONTIGUOUS. - (gfc_get_formal_from_actual_arglist): Do nothing if symbol - is a class. - -2025-05-04 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119986 - * expr.cc (is_subref_array): When searching for array references, - do not terminate early so that inquiry references to complex - components work. - * primary.cc (gfc_variable_attr): A substring reference can refer - to either a scalar or array character variable. Adjust search - accordingly. - -2025-05-01 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/119948 - * resolve.cc (gfc_impure_variable): The result of a module - procedure with an interface declaration is not impure even if - the current namespace is not the same as the symbol's. - -2025-04-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102900 - * trans-decl.cc (gfc_generate_function_code): Use sym->result - when generating fake result decl for functions returning - allocatable or pointer results. - * trans-expr.cc (gfc_conv_procedure_call): When checking the - pointer status of an actual argument passed to a non-allocatable, - non-pointer dummy which is of type CLASS, do not check the - class container of the actual if it is just a procedure pointer. - (gfc_trans_pointer_assignment): Fix treatment of assignment to - NULL of a procedure pointer. - -2025-04-23 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119200 - * check.cc (gfc_check_lcobound): Use locus from intrinsic_where. - (gfc_check_image_index): Same. - (gfc_check_num_images): Same. - (gfc_check_team_number): Same. - (gfc_check_this_image): Same. - (gfc_check_ucobound): Same. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * match.cc (match_exit_cycle): Allow to exit team block. - (gfc_match_end_team): Create end_team node also without - parameter list. - * trans-intrinsic.cc (conv_stat_and_team): Team and team_number - only need to be a single pointer. - * trans-stmt.cc (trans_associate_var): Create a mapping coarray - token for coarray associations or it is not addressed correctly. - * trans.h (enum gfc_coarray_regtype): Add mapping mode to - coarray register. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * check.cc (gfc_check_image_index): Check for team or - team_number correctnes. - (gfc_check_num_images): Same. - * gfortran.texi: Update documentation on num_images' API - function. - * intrinsic.cc (add_functions): Update signature of image_index - and num_images. Both can take either a team handle or number. - * intrinsic.h (gfc_check_num_images): Update signature to take - either team or team_number. - (gfc_check_image_index): Can take coarray, subscripts and team - or team number now. - (gfc_simplify_image_index): Same. - (gfc_simplify_num_images): Same. - (gfc_resolve_image_index): Same. - * intrinsic.texi: Update documentation of num_images() Fortran - function. - * iresolve.cc (gfc_resolve_image_index): Update signature. - * simplify.cc (gfc_simplify_num_images): Update signature and - remove undocumented failed argument. - (gfc_simplify_image_index): Add team or team number argument. - * trans-intrinsic.cc (conv_stat_and_team): Because being - optional teams need to be a pointer to the opaque pointer. - (conv_caf_sendget): Correct call; was two arguments short. - (trans_image_index): Support team or team_number. - (trans_num_images): Same. - (conv_intrinsic_cobound): Adapt to changed signature of - num_images in call. - * trans-stmt.cc (gfc_trans_sync): Same. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - * check.cc (gfc_check_this_image): Check the three different - parameter lists possible for this_image and sort them correctly. - * gfortran.texi: Update documentation on this_image's API. - * intrinsic.cc (add_functions): Update this_image's signature. - (check_specific): Add specific check for this_image. - * intrinsic.h (gfc_check_this_image): Change to flexible - argument list. - * intrinsic.texi: Update documentation on this_image(). - * iresolve.cc (gfc_resolve_this_image): Resolve the different - arguments. - * simplify.cc (gfc_simplify_this_image): Simplify the simplify - routine. - * trans-decl.cc (gfc_build_builtin_function_decls): Update - signature of this_image. - * trans-expr.cc (gfc_caf_get_image_index): Use correct signature - of this_image. - * trans-intrinsic.cc (trans_this_image): Adapt to correct - signature. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/88154 - PR fortran/88960 - PR fortran/97210 - PR fortran/103001 - * check.cc (team_type_check): Check a type for being team_type - from the iso_fortran_env module. - (gfc_check_image_status): Use team_type check. - (gfc_check_get_team): Check for level argument. - (gfc_check_team_number): Use team_type check. - * expr.cc (gfc_check_assign): Add treatment for returning - team_type in caf-single mode. - * gfortran.texi: Add/Update documentation for get_team and - team_number API functions. - * intrinsic.cc (add_functions): Update get_team signature. - * intrinsic.h (gfc_resolve_get_team): Add prototype. - * intrinsic.texi: Add/Update documentation for get_team and - team_number Fortran functions. - * iresolve.cc (gfc_resolve_get_team): Resolve return type to be - of type team_type. - * iso-fortran-env.def: Update STAT_LOCK constants. They have - nothing to do with files. Add level constants for get_team. - * libgfortran.h: Add level and unlock_stat constants. - * simplify.cc (gfc_simplify_get_team): Simply to correct return - type team_type. - * trans-decl.cc (gfc_build_builtin_function_decls): Update - get_team and image_status API prototypes to correct signatures. - * trans-intrinsic.cc (conv_intrinsic_image_status): Translate - second parameter correctly. - (conv_intrinsic_team_number): Translate optional single team - argument correctly. - (gfc_conv_intrinsic_function): Add translation of get_team. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - PR fortran/87556 - PR fortran/88254 - PR fortran/103796 - * coarray.cc (split_expr_at_caf_ref): Treat polymorphic types - correctly. Ensure resolve of expression after coindex. - (create_allocated_callback): Fix parameter of allocated function - for coarrays. - (coindexed_expr_callback): Improve detection of coarrays in - allocated function. - * decl.cc (gfc_match_end): Add team block matching. - * dump-parse-tree.cc (show_code_node): Dump change team block as - such. - * frontend-passes.cc (gfc_code_walker): Recognice team block. - * gfortran.texi: Add documentation for team api functions. - * intrinsic.texi: Add documentation about team_type in - iso_fortran_env module. - * iso-fortran-env.def (team_type): Use helper to get pointer - kind. - * match.cc (gfc_match_associate): Factor out matching of - association list, because it is used in change team as well. - (check_coarray_assoc): Ensure, that the association is to a - coarray. - (match_association_list): Match a list of association either in - associate or in change team. - (gfc_match_form_team): Match form team correctly include - new_index. - (gfc_match_change_team): Match change team with association - list. - (gfc_match_end_team): Match end team including stat and errmsg. - (gfc_match_return): Prevent return from team block. - * parse.cc (decode_statement): Sort team block. - (next_statement): Same. - (check_statement_label): Same. - (accept_statement): Same. - (verify_st_order): Same. - (parse_associate): Renamed to move_associates_to_block... - (move_associates_to_block): ... to enable reuse for change team. - (parse_change_team): Parse it as block. - (parse_executable): Same. - * parse.h (enum gfc_compile_state): Add team block as compiler - state. - * resolve.cc (resolve_scalar_argument): New function to resolve - an argument to a statement as a scalar. - (resolve_form_team): Resolve its members. - (resolve_change_team): Same. - (resolve_branch): Prevent branch from jumping out of team block. - (check_team): Removed. - * trans-decl.cc (gfc_build_builtin_function_decls): Add stat and - errmsg to team API functions and update their arguments. - * trans-expr.cc (gfc_trans_subcomponent_assign): Also null the - token when moving memory or an allocated() will not detect a - free. - * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote): - Adapt to signature change no longer a pointer-pointer. - * trans-stmt.cc (gfc_trans_form_team): Translate a form team - including new_index. - (gfc_trans_change_team): Translate a change team as a block. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87939 - * check.cc (gfc_check_move_alloc): Add stat and errmsg to - move_alloc. - * dump-parse-tree.cc (show_sync_stat): New helper function. - (show_code_node): Use show_sync_stat to print stat and errmsg. - * gfortran.h (struct sync_stat): New struct to unify stat and - errmsg handling. - * intrinsic.cc (add_subroutines): Correct signature of - move_alloc. - * intrinsic.h (gfc_check_move_alloc): Correct signature of - check_move_alloc. - * match.cc (match_named_arg): Match an optional argument to a - statement. - (match_stat_errmsg): Match a stat= or errmsg= named argument. - (gfc_match_critical): Use match_stat_errmsg to match the named - arguments. - (gfc_match_sync_team): Same. - * resolve.cc (resolve_team_argument): Resolve an expr to have - type TEAM_TYPE from iso_fortran_env. - (resolve_scalar_variable_as_arg): Resolve an argument as a - scalar type. - (resolve_sync_stat): Resolve stat and errmsg expressions. - (resolve_sync_team): Resolve a sync team statement using - sync_stat helper. - (resolve_end_team): Same. - (resolve_critical): Same. - * trans-decl.cc (gfc_build_builtin_function_decls): Correct - sync_team signature. - * trans-intrinsic.cc (conv_intrinsic_move_alloc): Store stat - an errmsg optional arguments in helper struct and use helper - to translate. - * trans-stmt.cc (trans_exit): Implement DRY pattern for - generating an _exit(). - (gfc_trans_sync_stat): Translate stat and errmsg contents. - (gfc_trans_end_team): Use helper to translate stat and errmsg. - (gfc_trans_sync_team): Same. - (gfc_trans_critical): Same. - * trans-stmt.h (gfc_trans_sync_stat): New function. - * trans.cc (gfc_deallocate_with_status): Parameterize check at - runtime to allow unallocated (co-)array when freeing a - structure. - (gfc_deallocate_scalar_with_status): Same and also add errmsg. - * trans.h (gfc_deallocate_with_status): Signature changes. - (gfc_deallocate_scalar_with_status): Same. - -2025-04-19 Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/119836 - * resolve.cc (check_pure_function): Fix checking for - an impure subprogram within a DO CONCURRENT construct. - (pure_subroutine): Ditto. - -2025-04-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/106948 - * resolve.cc (gfc_pure_function): If a function has been resolved, - but esym is not yet set, look at its attributes to see whether it - is pure or elemental. - -2025-04-15 Tobias Burnus <tburnus@baylibre.com> - - * f95-lang.cc (LANG_HOOKS_OMP_DEEP_MAPPING, - LANG_HOOKS_OMP_DEEP_MAPPING_P, LANG_HOOKS_OMP_DEEP_MAPPING_CNT): - Define. - * openmp.cc (gfc_match_omp_clause_reduction): Fix location setting. - (resolve_omp_clauses): Permit allocatable components, reject - them and polymorphic variables in PRIVATE/FIRSTPRIVATE. - * trans-decl.cc (add_clause): Set clause location. - * trans-openmp.cc (gfc_has_alloc_comps): Add ptr_ok and - shallow_alloc_only Boolean arguments. - (gfc_omp_replace_alloc_by_to_mapping): New. - (gfc_omp_private_outer_ref, gfc_walk_alloc_comps, - gfc_omp_clause_default_ctor, gfc_omp_clause_copy_ctor, - gfc_omp_clause_assign_op, gfc_omp_clause_dtor): Update call to it. - (gfc_omp_finish_clause): Minor cleanups, improve location data, - handle allocatable components. - (gfc_omp_deep_mapping_map, gfc_omp_deep_mapping_item, - gfc_omp_deep_mapping_comps, gfc_omp_gen_simple_loop, - gfc_omp_get_array_size, gfc_omp_elmental_loop, - gfc_omp_deep_map_kind_p, gfc_omp_deep_mapping_int_p, - gfc_omp_deep_mapping_p, gfc_omp_deep_mapping_do, - gfc_omp_deep_mapping_cnt, gfc_omp_deep_mapping): New. - (gfc_trans_omp_array_section): Save array descriptor in case - deep-mapping lang hook will need it. - (gfc_trans_omp_clauses): Likewise; use better clause location data. - * trans.h (gfc_omp_deep_mapping_p, gfc_omp_deep_mapping_cnt, - gfc_omp_deep_mapping): Add function prototypes. - -2025-04-13 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119669 - * interface.cc (compare_parameter): Error when mismatch between - formal argument as subroutine and function. If the dummy - argument is a known function, set its typespec. - -2025-04-12 Thomas Schwinge <tschwinge@baylibre.com> - - PR fortran/101602 - * trans-stmt.cc (gfc_trans_concurrent_locality_spec): Fix - 'static_assert'. - -2025-04-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119656 - * interface.cc (gfc_compare_actual_formal): Fix front-end memleak - when searching for matching interfaces. - * trans-expr.cc (gfc_conv_procedure_call): If there is a formal - dummy corresponding to an absent argument, use its type, and only - fall back to inferred type otherwise. - -2025-04-09 Paul Thomas <pault@gcc.gnu.org> - and Harald Anlauf <anlauf@gcc.gnu.org> - - PR fortran/119460 - * iresolve.cc (generate_reduce_op_wrapper): Increase the size - of 'tname'. Change intent of 'a' and 'b' to intent_in. - * trans-decl.cc (add_argument_checking): Do not test artificial - formal symbols. - * trans-expr.cc (gfc_conv_procedure_call): Remove reduce_scalar - and the blocks triggered by it. - * trans-intrinsic.cc (gfc_conv_intrinsic_function): Set the - result of non-character, scalar reduce to be allocatable. - -2025-04-09 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/101602 - * resolve.cc (resolve_locality_spec): Remove 'sorry, unimplemented'. - * trans-stmt.cc (struct symbol_and_tree_t): New. - (gfc_trans_concurrent_locality_spec): New. - (gfc_trans_forall_1): Call it; update to handle local and local_init. - * trans-decl.cc (gfc_start_saved_local_decls, - gfc_stop_saved_local_decls): New; moved code from ... - (gfc_process_block_locals): ... here. Call it. - * trans.h (gfc_start_saved_local_decls, - gfc_stop_saved_local_decls): Declare. - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118965 - * openmp.cc (gfc_parser_omp_clause_init_modifiers): Fix some - inconsistent code indentation. Remove code for recognizing - clauses without modifiers. Diagnose prefer_type without a - following paren. Adjust error message for an unrecognized modifier. - Diagnose missing target/targetsync modifier. - (gfc_match_omp_init): Fix more inconsistent code indentation. - -2025-03-28 Harald Anlauf <anlauf@gmx.de> - - * check.cc (gfc_invalid_boz): Correct spelling of compiler flag in - hint to -fallow-invalid-boz. - -2025-03-26 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118796 - * resolve.cc: Do not apply default initialization to a derived-type - function result if the resolved function is use-associated. - -2025-03-25 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119419 - * dump-parse-tree.cc (write_funptr_fcn): New function. - (write_type): Invoke it for C_FUNPTR. - (write_interop_decl): Do not dump vtabs. - -2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * trans-openmp.cc (gfc_trans_omp_declare_variant): Remove accidental - redeclaration of pref. - -2025-03-22 Jakub Jelinek <jakub@redhat.com> - - * resolve.cc (resolve_procedure_expression): Remove extraneous space - from the middle of diagnostics. - -2025-03-21 Paul-Antoine Arras <parras@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * trans-openmp.cc (gfc_trans_omp_clauses): Make OMP_CLAUSE_DESTROY and - OMP_CLAUSE_INIT addressable. - * types.def (BT_FN_VOID_INT_INT_PTR_PTR_PTR_INT_PTR_INT_PTR_UINT_PTR): - New. - -2025-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119406 - * resolve.cc (resolve_locality_spec): Add space in error - message. - -2025-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119403 - * interface.cc (compare_parameter): Fix typo. - -2025-03-21 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/85836 - * check.cc (get_ul_from_cst_cl): New function used in - check_operation. - (check_operation): New function used in check_reduce and - check_co_reduce. - (gfc_check_co_reduce): Use it. - (gfc_check_reduce): New function. - (gfc_check_rename): Add prototype for intrinsic with 6 arguments. - * gfortran.h : Add isym id for reduce and prototype for f6. - * intrinsic.cc (do_check): Add another argument expression and use - it in the call to the six argument specific check. - (add_sym_6): New function. - (add_functions): Add the discription of the reduce intrinsic and - add it to the intrinsic list. - * intrinsic.h : Add prototypes for gfc_check_reduce and - gfc_resolve_reduce. - * iresolve.cc (generate_reduce_op_wrapper): Generate a wrapper - subroutine for the 'operation' function to enable the library - implementation to be type agnostic and use pointer arithmetic - throughout. - (gfc_resolve_reduce): New function. - * trans-expr.cc (gfc_conv_procedure_call): Add flag for scalar - reduce. Generate a return variable 'sr' for scalar reduce, pass its - address to the library function and return it as the scalar result. - * trans-intrinsic.cc (gfc_conv_intrinsic_function): Array valued - reduce is called in same way as reshape. Fall through for call to - the scalar version. - -2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119380 - * trans-array.cc (structure_alloc_comps): Prevent freeing of - procedure pointer components. - -2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119349 - * trans-expr.cc (gfc_conv_procedure_call): Prevent deallocation - of array temporary for polymorphic temporary argument. - -2025-03-19 Harald Anlauf <anlauf@gmx.de> - - PR fortran/116706 - * trans-array.cc (gfc_is_reallocatable_lhs): Fix check on - allocatable components of derived type or class objects. - -2025-03-19 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119272 - * resolve.cc (resolve_compcall): Postpone error report when - symbol is not resolved yet for component call resolve. - -2025-03-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119338 - * resolve.cc (resolve_allocate_expr): Check F2003:C626: Type-spec - in ALLOCATE of an assumed-length character dummy argument shall be - an asterisk. - -2025-03-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/60560 - * expr.cc (gfc_traverse_expr): Do not descend into length type - parameter for negative values of auxiliary parameter f. - * resolve.cc (gfc_find_var_in_expr): New helper function to check - dependence of an expression on given variable. - (resolve_allocate_expr): Use it to determine if array bounds in an - ALLOCATE statement depend explicitly on a variable. - -2025-03-15 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/115271 - * module.cc (mio_omp_declare_simd_clauses): New, moved from ... - (mio_omp_declare_simd): ... here. Update call, write empty '( )' - if there is no declare simd but a declare variant. - (mio_omp_declare_variant): New. - (mio_symbol): Call it. - * openmp.cc (gfc_match_omp_context_selector): Add comment about - module.cc to TODO note. - * trans-stmt.h (gfc_trans_omp_declare_variant): Take additional - parent_ns argument. - * trans-decl.cc (create_function_arglist, - gfc_create_function_decl): Update call. - * trans-openmp.cc (gfc_trans_omp_declare_variant): Take new - argument, add some special case handling for attr.use_assoc. - -2025-03-13 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119118 - * dependency.cc (contains_forall_index_p): Let loop over elements - of a constructor update its control variable. Handle REF_INQUIRY - in switch statement. - (gfc_contains_implied_index_p): Likewise. - -2025-03-12 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/98903 - * array.cc (gfc_copy_array_ref): Copy team, team_type and stat. - (match_team_or_stat): Match a single team(_number)= or stat=. - (gfc_match_array_ref): Add switching to image_selector_parsing - and error handling when indices come after named arguments. - * coarray.cc (move_coarray_ref): Move also team_type. - * expr.cc (gfc_free_ref_list): Free team and stat expression. - (gfc_find_team_co): Find team or team_number in array-ref. - * gfortran.h (enum gfc_array_ref_team_type): New enum to - distinguish unset, team or team_number expression. - (gfc_find_team_co): Default searching to team= expressions. - * resolve.cc (resolve_array_ref): Check for type correctness of - team(_number) and stats in coindices. - * trans-array.cc (gfc_conv_array_ref): Ensure stat is cleared - when fcoarray=single is used. - * trans-intrinsic.cc (conv_stat_and_team): Including team_number - in conversion. - (gfc_conv_intrinsic_caf_get): Propagate team_number to ABI - routine. - (conv_caf_send_to_remote): Same. - (conv_caf_sendget): Same. - -2025-03-11 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119199 - * decl.cc (gfc_match_save): Reject SAVE statement of a COMMON block - when in a BLOCK construct. - * trans-common.cc (translate_common): Avoid NULL pointer dereference. - -2025-03-11 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119078 - * frontend-passes.cc (check_against_globals): Do not check - for abstract interfaces or dummy arguments. - * resolve.cc (gfc_verify_binding_labels): Adjust comment. - Do not put abstract interfaces or dummy argument into global - namespace. - -2025-03-10 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107143 - * dependency.cc (check_data_pointer_types): Do not just compare - for derived type, but for same derived type. - -2025-03-09 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119157 - * gfortran.h (gfc_pop_undo_symbol): Remove prototype. - * interface.cc (gfc_get_formal_from_actual_arglist): Use - gfc_commit_symbol() instead of gfc_pop_undo_symbol(). - * symbol.cc (gfc_pop_undo_symbol): Remove. - -2025-03-08 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119157 - * gfortran.h (gfc_symbol): Make ext_dummy_arglist_mismatch a - one-bit bitfield - (gfc_pop_undo_symbol): Declare prototype. - * symbol.cc (gfc_pop_undo_symbol): New function. - * interface.cc (gfc_get_formal_from_actual_arglist): Call it - for artificially introduced formal variables. - -2025-03-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119054 - * resolve.cc (resolve_elemental_actual): When checking other - actual arguments to elemental procedures, don't check - attributes of literals and function calls. - -2025-03-06 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119118 - * dependency.cc (gfc_contains_implied_index_p): Helper function to - determine if an expression has a dependence on an implied-do index. - * dependency.h (gfc_contains_implied_index_p): Add prototype. - * trans-expr.cc (gfc_conv_substring): Adjust logic to not generate - substring bounds checks before implied-do indices have been - substituted. - -2025-03-05 Mark Wielaard <mark@klomp.org> - - * lang.opt.urls: Regenerated. - -2025-03-05 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/104684 - * trans-array.cc (gfc_conv_expr_descriptor): Look at the - lang-specific akind and do a view convert when only the akind - attribute differs between pointer and allocatable array. - -2025-03-04 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119049 - PR fortran/119074 - * dump-parse-tree.cc (seen_conflict): New static varaible. - (gfc_dump_external_c_prototypes): Initialize it. If it was - set, write out a warning that -std=c23 will not work. - (write_proc): Move the work of actually writing out the - formal arglist to... - (write_formal_arglist): New function. Handle external dummy - parameters and their argument lists. If there were mismatched - arguments, output an empty argument list in pre-C23 style. - * gfortran.h (struct gfc_symbol): Add ext_dummy_arglist_mismatch - flag and formal_at. - * invoke.texi: Document -Wexternal-argument-mismatch. - * lang.opt: Put it in. - * resolve.cc (resolve_function): If warning about external - argument mismatches, build a formal from actual arglist the - first time around, and later compare and warn. - (resolve_call): Likewise - -2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/103391 - * trans-expr.cc (gfc_trans_assignment_1): Do not use poly assign - for pointer arrays on lhs (as it is done for allocatables - already). - -2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/77872 - * trans-expr.cc (gfc_get_tree_for_caf_expr): Pick up token from - decl when it is present there for class types. - -2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/77872 - * trans-expr.cc (gfc_conv_procedure_call): Use attr instead of - doing type check and branching for BT_CLASS. - -2025-03-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/101577 - * symbol.cc (verify_bind_c_derived_type): Generate error message - for derived type with no components in standard conformance mode, - indicating that this is a GNU extension. - -2025-03-03 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118747 - * trans-array.cc (gfc_trans_array_ctor_element): Remove copy to - temporary variable. - * trans-expr.cc (gfc_conv_procedure_call): Use references to - array members instead of copies when freeing after use. - Formatting fix. - -2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> - - * intrinsic.texi: Fix inconsistent capitalization of argument - names and other minor copy-editing. - -2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR fortran/47928 - * intrinsic.texi: Move the "Standard" subheading farther down. - -2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR fortran/47928 - * gfortran.texi: Move all the "Syntax" subheadings ahead of - "Description", and rename to "Synopsis". - * intrinsic.texi: Likewise. - -2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR fortran/47928 - * intrinsic.texi: Put a blank line between "@item @emph{}" - subheadings, but not more than one. - -2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR fortran/47928 - * gfortran.texi: Consistently use "@emph{Notes}:" instead of - other spellings. - * intrinsic.texi: Likewise. Also fix an inconsistent capitalization - and remove a redundant "Standard" entry. - -2025-03-01 Harald Anlauf <anlauf@gmx.de> - - * match.cc (gfc_match_nullify): Free matched expression when - cleaning up. - * primary.cc (match_variable): Initialize result to NULL. - -2025-02-28 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118730 - * resolve.cc: Mark unused derived type variable with finalizers - referenced to execute finalizer when leaving scope. - -2025-02-27 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118789 - * trans-stmt.cc (trans_associate_var): Compare pointed to types when - expr to associate is already a pointer. - -2025-02-26 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/108233 - * trans-expr.cc (gfc_trans_assignment_1): Remove SAVE_EXPR on lhs. - -2025-02-25 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * coarray.cc (fixup_comp_refs): For class types set correct - component (class) type. - (split_expr_at_caf_ref): Provide location. - * trans-intrinsic.cc (conv_caf_send_to_remote): Look at - generated formal argument and not declared one to detect - descriptor arrays. - (conv_caf_sendget): Same. - -2025-02-25 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * trans-intrinsic.cc (conv_caf_sendget): Use the size of data - transferred between the two images and not the descritor's size. - -2025-02-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/48958 - * trans-array.cc (gfc_trans_deferred_array): Initialize the data - component of non-saved pointers when -fcheck=pointer is set. - -2025-02-21 Tobias Burnus <tburnus@baylibre.com> - - * trans-array.cc (gfc_full_array_size): Obtain the rank from - the array descriptor for assumed rank. - (gfc_tree_array_size): Likewise; permit expr = NULL to operate - only the tree. - (gfc_conv_descriptor_stride_get): Update for added assumed-rank - array types. - * trans-openmp.cc (gfc_omp_finish_clause): Likewise. - * trans-types.cc (gfc_build_array_type, gfc_get_derived_type, - gfc_get_array_descr_info): Likewise. - * trans.h (enum gfc_array_kind): Add - GFC_ARRAY_ASSUMED_RANK_{ALLOCATABLE,POINTER{,_CONT}}. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * gfortran.texi: Remove deprecated functions from documentation. - * trans-decl.cc (gfc_build_builtin_function_decls): Remove - decprecated function decls. - * trans-intrinsic.cc (gfc_conv_intrinsic_exponent): Remove - deprecated/no longer needed routines. - * trans.h: Remove unused decls. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * coarray.cc (rewrite_caf_send): Rewrite to - transfer_between_remotes when both sides of the assignment have - a coarray. - (coindexed_code_callback): Prevent duplicate rewrite. - * gfortran.texi: Add documentation for transfer_between_remotes. - * intrinsic.cc (add_subroutines): Add intrinsic symbol for - caf_sendget to allow easy rewrite to transfer_between_remotes. - * trans-decl.cc (gfc_build_builtin_function_decls): Add - prototype for transfer_between_remotes. - * trans-intrinsic.cc (conv_caf_vector_subscript_elem): Mark as - deprecated. - (conv_caf_vector_subscript): Same. - (compute_component_offset): Same. - (conv_expr_ref_to_caf_ref): Same. - (conv_stat_and_team): Extract stat and team from expr. - (gfc_conv_intrinsic_caf_get): Use conv_stat_and_team. - (conv_caf_send_to_remote): Same. - (has_ref_after_cafref): Mark as deprecated. - (conv_caf_sendget): Translate to transfer_between_remotes. - * trans.h: Add prototype for transfer_between_remotes. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * coarray.cc (move_coarray_ref): Move the coarray reference out - of the given one. Especially when there is a regular array ref. - (fixup_comp_refs): Move components refs to a derived type where - the codim has been removed, aka a new type. - (split_expr_at_caf_ref): Correctly split the reference chain. - (remove_caf_ref): Simplify. - (create_get_callback): Fix some deficiencies. - (create_allocated_callback): Adapt to new signature of split. - (create_send_callback): New function. - (rewrite_caf_send): Rewrite a call to caf_send to - caf_send_to_remote. - (coindexed_code_callback): Treat caf_send and caf_sendget - correctly. - * gfortran.h (enum gfc_isym_id): Add SENDGET-isym. - * gfortran.texi: Add documentation for send_to_remote. - * resolve.cc (gfc_resolve_code): No longer generate send_by_ref - when allocatable coarray (component) is on the lhs. - * trans-decl.cc (gfc_build_builtin_function_decls): Add - caf_send_to_remote decl. - * trans-intrinsic.cc (conv_caf_func_index): Ensure the static - variables created are not in a block-scope. - (conv_caf_send_to_remote): Translate caf_send_to_remote calls. - (conv_caf_send): Renamed to conv_caf_sendget. - (conv_caf_sendget): Renamed from conv_caf_send. - (gfc_conv_intrinsic_subroutine): Branch correctly for - conv_caf_send and sendget. - * trans.h: Correct decl. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * coarray.cc (create_allocated_callback): Add creating remote - side procedure for checking allocation status of coarray. - (rewrite_caf_allocated): Rewrite ALLOCATED on coarray to use caf - routine. - (coindexed_expr_callback): Exempt caf_is_present_on_remote from - being rewritten again. - * gfortran.h (enum gfc_isym_id): Add caf_is_present_on_remote - id. - * gfortran.texi: Add documentation for caf_is_present_on_remote. - * intrinsic.cc (add_functions): Add caf_is_present_on_remote - symbol. - * trans-decl.cc (gfc_build_builtin_function_decls): Define - interface of caf_is_present_on_remote. - * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote): - Translate caf_is_present_on_remote. - (trans_caf_is_present): Remove. - (caf_this_image_ref): Remove. - (gfc_conv_allocated): Take out coarray treatment, because that - is rewritten to caf_is_present_on_remote now. - (gfc_conv_intrinsic_function): Handle caf_is_present_on_remote - calls. - * trans.h: Add symbol for caf_is_present_on_remote and remove - old one. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * coarray.cc (get_arrayspec_from_expr): Treat array result of - function calls correctly. - (remove_coarray_from_derived_type): Prevent memory loss. - (add_caf_get_from_remote): Correct locus. - (find_comp): New function to find or create a new component in a - derived type. - (check_add_new_comp_handle_array): Handle allocatable arrays or - non-pure/non-elemental functions in indexes of coarrays. - (check_add_new_component): Use above function. - (create_get_parameter_type): Rename to - create_caf_add_data_parameter_type. - (create_caf_add_data_parameter_type): Renaming of variable and - make the additional data a coarray. - (remove_caf_ref): Factor out to reuse in other caf-functions. - (create_get_callback): Use function factored out, set locus - correctly and ensure a kind is set for parameters. - (add_caf_get_intrinsic): Rename to add_caf_get_from_remote and - rename some variables. - (coindexed_expr_callback): Skip over function created by the - rewriter. - (coindexed_code_callback): Filter some intrinsics not to - process. - (gfc_coarray_rewrite): Rewrite also contained functions. - * trans-intrinsic.cc (gfc_conv_intrinsic_caf_get): Reflect - changed order on caf_get_from_remote (). - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * gfortran.texi: Rename caf_get_by_ct to caf_get_from_remote. - * trans-decl.cc (gfc_build_builtin_function_decls): Rename - intrinsic. - * trans-intrinsic.cc (conv_caf_func_index): Factor out - functionality to be reused by other caf-functions. - (conv_caf_add_call_data): Same. - (gfc_conv_intrinsic_caf_get): Use functions factored out. - * trans.h: Rename intrinsic symbol. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * Make-lang.in: Add coarray.cc. - * coarray.cc: New file. - * gfortran.h (gfc_coarray_rewrite): New procedure. - * parse.cc (rewrite_expr_tree): Add entrypoint for rewriting - expression trees. - * resolve.cc (gfc_resolve_ref): Remove caf_lhs handling. - (get_arrayspec_from_expr): Moved to rewrite.cc. - (remove_coarray_from_derived_type): Same. - (convert_coarray_class_to_derived_type): Same. - (split_expr_at_caf_ref): Same. - (check_add_new_component): Same. - (create_get_parameter_type): Same. - (create_get_callback): Same. - (add_caf_get_intrinsic): Same. - (resolve_variable): Remove caf_lhs handling. - -2025-02-17 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/115271 - * gfortran.h (gfc_omp_namelist): Change need_device_ptr to adj_args - union and add more flags. - * openmp.cc (gfc_match_omp_declare_variant, - gfc_resolve_omp_declare): For adjust_args, handle need_device_addr - and numeric values/ranges besides dummy argument names. - (resolve_omp_dispatch): Remove bogus a adjust_args check. - * trans-decl.cc (gfc_handle_omp_declare_variant): New. - (gfc_generate_module_vars, gfc_generate_function_code): Call it. - * trans-openmp.cc (gfc_trans_omp_declare_variant): Handle numeric - values/ranges besides dummy argument names. - -2025-02-17 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/118862 - * trans-expr.cc (gfc_conv_cst_int_power): Use functions for - unsigned wide integer. - (gfc_conv_cst_uint_power): Avoid generating the mask if it would - overflow an unsigned HOST_WIDE_INT. Format fixes. - -2025-02-16 Thomas Koenig <tkoenig@gcc.gnu.org> - - * dump-parse-tree.cc (show_attr): Remove double output - of attr->save. - -2025-02-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118080 - * gfortran.texi: Adjust documentation. - * trans-decl.cc (create_function_arglist): Adjust to pass hidden - presence flag also for derived type dummies with VALUE,OPTIONAL - attribute. - * trans-expr.cc (gfc_conv_expr_present): Expect hidden presence - flag also for derived type dummies with VALUE,OPTIONAL attribute. - (conv_cond_temp): Adjust to allow derived types. - (conv_dummy_value): Extend to handle derived type dummies with - VALUE,OPTIONAL attribute. - (gfc_conv_procedure_call): Adjust for actual arguments passed to - derived type dummies with VALUE,OPTIONAL attribute. - * trans-types.cc (gfc_get_function_type): Adjust fndecl for - hidden presence flag. - -2025-02-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/117430 - * resolve.cc (resolve_transfer): Change gfc_notify_std to - gfc_error. - -2025-02-15 Andrew Pinski <pinskia@gcc.gnu.org> - - PR fortran/118159 - * invoke.texi: Remove mention of defunct web site for Coco. - -2025-02-15 Thomas Koenig <tkoenig@gcc.gnu.org> - - * frontend-passes.cc (check_externals_procedure): Copy - typespec from old to new symbol. - -2025-02-13 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/118845 - * interface.cc (compare_parameter): If the formal attribute has been - generated from an actual argument list, also output an pointer to - there in case of an error. - (gfc_get_formal_from_actual_arglist): Set function and subroutine - attributes and (if it is a function) the typespec from the actual - argument. - -2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> - - * trans-openmp.cc (gfc_trans_omp_declare_variant): Update call to - omp_check_context_selector. - (gfc_trans_omp_metadirective): Likewise. - -2025-02-10 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/24878 - * interface.cc (compare_parameter): Better wording on - error message. - -2025-02-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/56423 - * resolve.cc (resolve_structure_cons): Check rank of pointer target; - reject pointer target with vector subscripts. - -2025-02-09 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/24878 - * interface.cc (compare_parameter): Check global subroutines - passed as actual arguments for subroutine / function and - function type. - -2025-02-08 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/107067 - * parse.cc (parse_omp_do): Diagnose missing "OMP END METADIRECTIVE" - after loop. - (parse_omp_structured_block): Likewise for strictly structured block. - (parse_omp_metadirective_body): Use better test for variants ending - at different places. Issue a user diagnostic at the end if any - were inconsistent, instead of calling gcc_assert. - -2025-02-07 Harald Anlauf <anlauf@gmx.de> - - PR fortran/59252 - * trans-expr.cc (gfc_trans_subcomponent_assign): Initialize - allocatable non-deferred character with NULL properly. - -2025-02-07 Tomáš Trnka <trnka@scm.com> - - PR fortran/116829 - * trans-decl.cc (init_intent_out_dt): Always call - gfc_init_default_dt() for BT_DERIVED to apply s->value if the - symbol isn't allocatable. Also simplify the logic a bit. - -2025-02-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/118750 - * resolve.cc (resolve_assoc_var): If the target expression has - a rank, do not use gfc_expression_rank, since it will return 0 - if the function is elemental. Resolution will have produced the - correct rank. - -2025-02-05 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118740 - * openmp.cc (gfc_match_omp_context_selector, match_omp_metadirective): - Change sorry to sorry_at and use gfc_current_locus as location. - * trans-openmp.cc (gfc_trans_omp_clauses): Likewise, but use n->where. - -2025-02-05 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118745 - * trans-openmp.cc (gfc_trans_omp_declare_variant): Use - append_args_list in the condition for the append_arg location. - -2025-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/47485 - * cpp.cc: fix -MT/-MQ adding additional target instead of - replacing the default. - -2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> - - * arith.cc (arith_power): Handle modular arithmetic for - BT_UNSIGNED. - (eval_intrinsic): Error for unsigned exponentiation with - -pedantic. - * expr.cc (gfc_type_convert_binary): Use type of first - argument for unsigned exponentiation. - * gfortran.texi: Mention arithmetic exponentiation. - * resolve.cc (resolve_operator): Allow unsigned exponentiation. - * trans-decl.cc (gfc_build_intrinsic_function_decls): Build - declarations for unsigned exponentiation. - * trans-expr.cc (gfc_conv_cst_uint_power): New function. - (gfc_conv_power_op): Call it. Handle unsigned exponentiation. - * trans.h (gfor_fndecl_unsigned_pow_list): Add declaration. - -2025-02-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/93289 - * decl.cc (gfc_set_constant_character_len): Downgrade different - string lengths in character array constructor to legacy extension. - -2025-01-31 Harald Anlauf <anlauf@gmx.de> - - PR fortran/108454 - * resolve.cc (resolve_common_blocks): Initialize variable. - (resolve_symbol): If a symbol is already registered with a COMMON - block, do not search for an interface with the same name. - -2025-01-31 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/118714 - * parse.cc (parse_omp_dispatch): Add missing pop_state. - -2025-01-30 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Tobias Burnus <tobias@codesourcery.com> - Paul-Antoine Arras <pa@codesourcery.com> - - PR middle-end/112779 - PR middle-end/113904 - * decl.cc (gfc_match_end): Handle COMP_OMP_BEGIN_METADIRECTIVE and - COMP_OMP_METADIRECTIVE. - * dump-parse-tree.cc (show_omp_node): Handle EXEC_OMP_METADIRECTIVE. - (show_code_node): Likewise. - * gfortran.h (enum gfc_statement): Add ST_OMP_METADIRECTIVE, - ST_OMP_BEGIN_METADIRECTIVE, and ST_OMP_END_METADIRECTIVE. - (struct gfc_omp_clauses): Rename target_first_st_is_teams to - target_first_st_is_teams_or_meta. - (struct gfc_omp_variant): New. - (gfc_get_omp_variant): New. - (struct gfc_st_label): Add omp_region field. - (enum gfc_exec_op): Add EXEC_OMP_METADIRECTIVE. - (struct gfc_code): Add omp_variants fields. - (gfc_free_omp_variants): Declare. - (match_omp_directive): Declare. - (is_omp_declarative_stmt): Declare. - * io.cc (format_asterisk): Adjust initializer. - * match.h (gfc_match_omp_begin_metadirective): Declare. - (gfc_match_omp_metadirective): Declare. - * openmp.cc (gfc_omp_directives): Uncomment metadirective. - (gfc_match_omp_eos): Adjust to match context selectors. - (gfc_free_omp_variants): New. - (gfc_match_omp_clauses): Remove context_selector parameter and adjust - to use gfc_match_omp_eos instead. - (match_omp): Adjust call to gfc_match_omp_clauses. - (gfc_match_omp_context_selector): Add metadirective_p parameter and - adjust error-checking. Adjust matching of simd clauses. - (gfc_match_omp_context_selector_specification): Adjust parameters - so it can be used for metadirective as well as declare variant. - (match_omp_metadirective): New. - (gfc_match_omp_begin_metadirective): New. - (gfc_match_omp_metadirective): New. - (resolve_omp_metadirective): New. - (resolve_omp_target): Handle metadirectives. - (gfc_resolve_omp_directive): Handle EXEC_OMP_METADIRECTIVE. - * parse.cc (gfc_matching_omp_context_selector): New. - (gfc_in_omp_metadirective_body): New. - (gfc_omp_region_count): New. - (decode_omp_directive): Handle ST_OMP_BEGIN_METADIRECTIVE and - ST_OMP_METADIRECTIVE. - (match_omp_directive): New. - (case_omp_structured_block): Define. - (case_omp_do): Define. - (gfc_ascii_statement): Handle ST_OMP_BEGIN_METADIRECTIVE, - ST_OMP_END_METADIRECTIVE, and ST_OMP_METADIRECTIVE. - (accept_statement): Handle ST_OMP_METADIRECTIVE and - ST_OMP_BEGIN_METADIRECTIVE. - (gfc_omp_end_stmt): New, split from... - (parse_omp_do): ...here, and... - (parse_omp_structured_block): ...here. Handle metadirectives, - plus "allocate", "atomic", and "dispatch" which were missing. - (parse_omp_oacc_atomic): Handle "end metadirective". - (parse_openmp_allocate_block): Likewise. - (parse_omp_dispatch): Likewise. - (parse_omp_metadirective_body): New. - (parse_executable): Handle metadirective. Use new case macros - defined above. - (gfc_parse_file): Initialize metadirective state. - (is_omp_declarative_stmt): New. - * parse.h (enum gfc_compile_state): Add COMP_OMP_METADIRECTIVE - and COMP_OMP_BEGIN_METADIRECTIVE. - (gfc_omp_end_stmt): Declare. - (gfc_matching_omp_context_selector): Declare. - (gfc_in_omp_metadirective_body): Declare. - (gfc_omp_metadirective_region_count): Declare. - * resolve.cc (gfc_resolve_code): Handle EXEC_OMP_METADIRECTIVE. - * st.cc (gfc_free_statement): Likewise. - * symbol.cc (compare_st_labels): Handle labels within a metadirective - body. - (gfc_get_st_label): Likewise. - * trans-decl.cc (gfc_get_label_decl): Encode the metadirective region - in the label_name. - * trans-openmp.cc (gfc_trans_omp_directive): Handle - EXEC_OMP_METADIRECTIVE. - (gfc_trans_omp_set_selector): New, split/adapted from code.... - (gfc_trans_omp_declare_variant): ...here. - (gfc_trans_omp_metadirective): New. - * trans-stmt.h (gfc_trans_omp_metadirective): Declare. - * trans.cc (trans_code): Handle EXEC_OMP_METADIRECTIVE. - -2025-01-30 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.h (gfc_omp_declare_variant): Add append_args_list. - * openmp.cc (gfc_parser_omp_clause_init_modifiers): New; - splitt of from ... - (gfc_match_omp_init): ... here; call it. - (gfc_match_omp_declare_variant): Update to handle append_args - clause; some syntax handling fixes. - * trans-openmp.cc (gfc_trans_omp_declare_variant): Handle - append_args clause; add some diagnostic. - -2025-01-29 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118683 - * trans-expr.cc (gfc_conv_procedure_call): The bounds update for - passing to assumed-rank dummies shall also handle component - references besides inquiry references. - -2025-01-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/110993 - * frontend-passes.cc (check_externals_procedure): Do not compare - interfaces of a non-bind(C) procedure against a bind(C) global one. - (check_against_globals): Use local name from rename-on-use in the - search for interfaces. - -2025-01-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/118640 - * resolve.cc (generate_component_assignments): Make sure that - the rhs temporary does not pick up the optional attribute from - the lhs. - -2025-01-26 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (gfc_omp_directives): Uncomment unroll and tile lines - as the directives are by now implemented. - -2025-01-26 Sandra Loosemore <sloosemore@baylibre.com> - - * openmp.cc (resolve_omp_atomic): Fix typo in error message. - -2025-01-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/58857 - * class.cc (gfc_find_derived_vtab): Declare some frontend generated - variables and procedures (_vtab, _copy, _deallocate) as artificial. - (find_intrinsic_vtab): Likewise. - * trans-decl.cc (check_block_data_decls): New helper function. - (gfc_generate_block_data): Use it to emit warnings for variables - declared in a BLOCK DATA program unit but not in a COMMON block. - -2025-01-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118613 - * trans-intrinsic.cc (gfc_conv_intrinsic_minmaxval): Adjust algorithm - for inlined version of MINLOC and MAXLOC so that arguments are only - evaluted once, and create temporaries where necessary. Document - change of algorithm. - -2025-01-23 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/96087 - * trans-decl.cc (gfc_get_symbol_decl): If a dummy is missing a - backend decl, it is likely that it has come from a module proc - interface. Look for the formal symbol by name in the containing - proc and use its backend decl. - * trans-expr.cc (gfc_apply_interface_mapping_to_expr): For the - same reason, match the name, rather than the symbol address to - perform the mapping. - -2025-01-20 Harald Anlauf <anlauf@gmx.de> - - PR fortran/107122 - * openmp.cc (resolve_omp_clauses): Add 'with' to error message text. - -2025-01-20 Harald Anlauf <anlauf@gmx.de> - - PR fortran/81978 - * trans-array.cc (gfc_conv_array_parameter): Do not copy back data - if actual array parameter has the PARAMETER attribute. - * trans-expr.cc (gfc_conv_subref_array_arg): Likewise. - -2025-01-16 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118321 - * trans-openmp.cc (gfc_trans_omp_declare_variant): Honor hidden - arguments for append_arg's need_device_ptr. - -2025-01-16 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/118359 - * dump-parse-tree.cc (show_external_symbol): New function. - (write_type): Add prototype, put in restrictions on what not to dump. - (has_cfi_cdesc): New function. - (need_iso_fortran_binding): New function. - (gfc_dump_c_prototypes): Adjust to take only a file output. Add - "#include <ISO_Fortran_binding.h" if CFI_cdesc_t is found. - Traverse global namespaces to dump types and the globalsymol list - to dump external symbols. - (gfc_dump_external_c_prototypes): Traverse global namespaces. - (get_c_type_name): Handle CFI_cdesc_t. - (write_proc): Also pass array spec to get_c_type_name. - * gfortran.h (gfc_dump_c_prototypes): Adjust prototype. - * parse.cc (gfc_parse_file): Adjust call to gfc_dump_c_prototypes. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * openmp.cc (gfc_omp_absent_contains_clause): Use an Oxford comma - in the message. - -2025-01-16 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118441 - * trans-intrinsic.cc (gfc_get_symbol_for_expr): Use - gfc_new_charlen for character-returning functions. - -2025-01-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/71884 - * resolve.cc (resolve_allocate_expr): Reject intrinsic NULL as - source-expr. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Marcel Vollweiler <marcel@codesourcery.com> - - PR middle-end/114596 - PR middle-end/112779 - PR middle-end/113904 - * trans-openmp.cc (gfc_trans_omp_declare_variant): Update for changes - to omp-general.h interfaces. - -2025-01-14 Anuj Mohite <anujmohite001@gmail.com> - - * dump-parse-tree.cc (show_code_node): Updated to use - c->ext.concur.forall_iterator instead of c->ext.forall_iterator. - * frontend-passes.cc (index_interchange): Updated to - use c->ext.concur.forall_iterator instead of c->ext.forall_iterator. - (gfc_code_walker): Likewise. - * gfortran.h (enum locality_type): Added new enum for locality types - in DO CONCURRENT constructs. - * match.cc (match_simple_forall): Updated to use - new_st.ext.concur.forall_iterator instead of new_st.ext.forall_iterator. - (gfc_match_forall): Likewise. - (gfc_match_do): Implemented support for matching DO CONCURRENT locality - specifiers (LOCAL, LOCAL_INIT, SHARED, DEFAULT(NONE), and REDUCE). - * parse.cc (parse_do_block): Updated to use - new_st.ext.concur.forall_iterator instead of new_st.ext.forall_iterator. - * resolve.cc (struct check_default_none_data): Added struct - check_default_none_data. - (do_concur_locality_specs_f2023): New function to check compliance - with F2023's C1133 constraint for DO CONCURRENT. - (check_default_none_expr): New function to check DEFAULT(NONE) - compliance. - (resolve_locality_spec): New function to resolve locality specs. - (gfc_count_forall_iterators): Updated to use - code->ext.concur.forall_iterator. - (gfc_resolve_forall): Updated to use code->ext.concur.forall_iterator. - * st.cc (gfc_free_statement): Updated to free locality specifications - and use p->ext.concur.forall_iterator. - * trans-stmt.cc (gfc_trans_forall_1): Updated to use - code->ext.concur.forall_iterator. - -2025-01-13 Thomas Koenig <tkoenig@gcc.gnu.org> - - * dump-parse-tree.cc (show_attr): Fix typos for in_equivalence. - -2025-01-13 Paul-Antoine Arras <parras@baylibre.com> - - * openmp.cc (gfc_match_omp_declare_variant): Match comma after directive - name and between clauses. Emit more useful diagnostics. - -2025-01-12 Thomas Koenig <tkoenig@gcc.gnu.org> - - * dump-parse-tree.cc (show_attr): Dump all symbol attributes. - -2025-01-12 Harald Anlauf <anlauf@gmx.de> - - PR fortran/115788 - * check.cc (gfc_check_out_of_range): Check arguments to intrinsic. - * expr.cc (free_expr0): Fix a memleak with unsigned literals. - * gfortran.h (enum gfc_isym_id): Define GFC_ISYM_OUT_OF_RANGE. - * gfortran.texi: Add OUT_OF_RANGE to list of intrinsics supporting - UNSIGNED. - * intrinsic.cc (add_functions): Add Fortran prototype. Break some - nearby lines with excessive length. - * intrinsic.h (gfc_check_out_of_range): Add prototypes. - * intrinsic.texi: Fortran documentation of OUT_OF_RANGE. - * simplify.cc (gfc_simplify_out_of_range): Compile-time simplification - of OUT_OF_RANGE. - * trans-intrinsic.cc (gfc_conv_intrinsic_out_of_range): Generate - inline expansion of runtime code for OUT_OF_RANGE. - (gfc_conv_intrinsic_function): Use it. - -2025-01-12 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/118432 - * frontend-passes.cc (doloop_code): Select correct member - of co->ext.union for inquire. - -2025-01-11 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.h: Add OMP_LIST_INTEROP to the unnamed OMP_LIST_ enum. - * openmp.cc (gfc_match_omp_variable_list): Add reverse_order - boolean argument, defaulting to false. - (enum omp_mask2, OMP_DISPATCH_CLAUSES): Add OMP_CLAUSE_INTEROP. - (gfc_match_omp_clauses, resolve_omp_clauses): Handle dispatch's - 'interop' clause. - * trans-decl.cc (gfc_get_extern_function_decl): Use sym->declared_at - instead input_location as DECL_SOURCE_LOCATION. - * trans-openmp.cc (gfc_trans_omp_clauses): Handle OMP_LIST_INTEROP. - -2025-01-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/108434 - * class.cc (generate_finalization_wrapper): To avoid memory - leaks from callocs, return immediately if the derived type - error flag is set. - * decl.cc (build_struct): If the declaration of a derived type - or class component does not have a deferred arrayspec, correct, - set the error flag of the derived type and emit an immediate - error. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR fortran/118337 - * module.cc (use_iso_fortran_env_module): Add a comment explaining - the optimization performed. Add gcc_checking_assert that i was - incremented for all the elements. Formatting fix. - -2025-01-09 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118337 - * resolve.cc (resolve_fl_derived0): Exempt vtypes from cycle - detection. - -2025-01-09 Jakub Jelinek <jakub@redhat.com> - - PR fortran/118337 - * module.cc (COMPAT_MOD_VERSIONS): Define. - (use_iso_fortran_env_module): Don't assume all NAMED_INTCSTs come - first followed by NAMED_UINTCSTs. - (gfc_use_module): Accept also COMPAT_MOD_VERSIONS for compatibility. - * iso-c-binding.def: Reorder entries so that the GCC 14 ones come - before the ones new in GCC 15. - * iso-fortran-env.def: Likewise. - -2025-01-09 Tobias Burnus <tburnus@baylibre.com> - - * types.def (BT_FN_PTRMODE_PTR_INT_PTR): Add. - -2025-01-08 Jakub Jelinek <jakub@redhat.com> - - PR fortran/118337 - * module.cc (MOD_VERSION): Bump to "16". - -2025-01-07 Thomas Koenig <tkoenig@gcc.gnu.org> - - * intrinsic.texi (ISO_FORTRAN_ENV): Also mention INT8 in the - text. Document UINT8, UINT16, UINT32 and UINT64. - (ISO_C_BINDING): New table for unsigned KIND numbers. - -2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/114612 - * trans-array.cc (structure_alloc_comps): Ensure deep copy is - also done for types having cycles. - -2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/116669 - * class.cc (gfc_find_derived_vtab): Use attr to determine cyclic - type dependendies. - * expr.cc (gfc_has_default_initializer): Prevent endless - recursion by storing already visited derived types. - * resolve.cc (resolve_cyclic_derived_type): Determine if a type - is used in its hierarchy in a cyclic way. - (resolve_fl_derived0): Call resolve_cyclic_derived_type. - (resolve_fl_derived): Ensure vtab is generated when cyclic - derived types have allocatable components. - * trans-array.cc (structure_alloc_comps): Prevent endless loop - for derived type cycles. - * trans-expr.cc (gfc_get_ultimate_alloc_ptr_comps_caf_token): - Off topic, just prevent memory leaks. - -2025-01-03 Thomas Koenig <tkoenig@gcc.gnu.org> - - * gfortran.texi: New subsection "Generating C prototypes from - Fortran". - -2025-01-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/106692 - * trans-expr.cc (gfc_conv_expr_op): Inhibit excessive optimization - of Cray pointers by treating them as volatile in comparisons. - -2025-01-03 Sandra Loosemore <sloosemore@baylibre.com> - - * intrinsic.texi (ATAN): Add missing verb. - -2025-01-02 Tobias Burnus <tburnus@baylibre.com> - - * openmp.cc (OMP_DISPATCH_CLAUSES): Add OMP_CLAUSE_HAS_DEVICE_ADDR. - -2025-01-02 Paul-Antoine Arras <parras@baylibre.com> - - * dump-parse-tree.cc (show_omp_clauses): Handle novariants and nocontext - clauses. - (show_omp_node): Handle EXEC_OMP_DISPATCH. - (show_code_node): Likewise. - * frontend-passes.cc (gfc_code_walker): Handle novariants and nocontext. - * gfortran.h (enum gfc_statement): Add ST_OMP_DISPATCH. - (symbol_attribute): Add omp_declare_variant_need_device_ptr. - (gfc_omp_clauses): Add novariants and nocontext. - (gfc_omp_declare_variant): Add need_device_ptr_arg_list. - (enum gfc_exec_op): Add EXEC_OMP_DISPATCH. - * match.h (gfc_match_omp_dispatch): Declare. - * openmp.cc (gfc_free_omp_clauses): Free novariants and nocontext - clauses. - (gfc_free_omp_declare_variant_list): Free need_device_ptr_arg_list - namelist. - (enum omp_mask2): Add OMP_CLAUSE_NOVARIANTS and OMP_CLAUSE_NOCONTEXT. - (gfc_match_omp_clauses): Handle OMP_CLAUSE_NOVARIANTS and - OMP_CLAUSE_NOCONTEXT. - (OMP_DISPATCH_CLAUSES): Define. - (gfc_match_omp_dispatch): New function. - (gfc_match_omp_declare_variant): Parse adjust_args. - (resolve_omp_clauses): Handle adjust_args, novariants and nocontext. - Adjust handling of OMP_LIST_IS_DEVICE_PTR. - (icode_code_error_callback): Handle EXEC_OMP_DISPATCH. - (omp_code_to_statement): Likewise. - (resolve_omp_dispatch): New function. - (gfc_resolve_omp_directive): Handle EXEC_OMP_DISPATCH. - * parse.cc (decode_omp_directive): Match dispatch. - (next_statement): Handle ST_OMP_DISPATCH. - (gfc_ascii_statement): Likewise. - (parse_omp_dispatch): New function. - (parse_executable): Handle ST_OMP_DISPATCH. - * resolve.cc (gfc_resolve_blocks): Handle EXEC_OMP_DISPATCH. - * st.cc (gfc_free_statement): Likewise. - * trans-decl.cc (create_function_arglist): Declare. - (gfc_get_extern_function_decl): Call it. - * trans-openmp.cc (gfc_trans_omp_clauses): Handle novariants and - nocontext. - (replace_omp_dispatch_call): New function. - (gfc_trans_omp_dispatch): New function. - (gfc_trans_omp_directive): Handle EXEC_OMP_DISPATCH. - (gfc_trans_omp_declare_variant): Handle adjust_args. - * trans.cc (trans_code): Handle EXEC_OMP_DISPATCH:. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * gfortranspec.cc (lang_specific_driver): Update copyright notice - dates. - * gfc-internals.texi: Bump @copying's copyright year. - * gfortran.texi: Ditto. - * intrinsic.texi: Ditto. - * invoke.texi: Ditto. - -2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> - - * gfortran.texi (Function ABI Documentation): Make menu ordering - consistent with subsection ordering. - -2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> - - * gfortran.texi: Clean up that/which usage throughout the file. - * intrinsic.texi: Likewise. - * invoke.texi: Likewise. - -2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> - - * intrinsic.texi: Grammar and markup fixes throughout - the file. -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/fortran/ChangeLog-2025 b/gcc/fortran/ChangeLog-2025 new file mode 100644 index 00000000000..b9e67d2af6d --- /dev/null +++ b/gcc/fortran/ChangeLog-2025 @@ -0,0 +1,3466 @@ +2025-12-22 Steve Kargl <kargl@gcc.gnu.org> + + PR fortran/122957 + * interface.cc (gfc_match_generic_spec): Issue an error + so that users do not use -fdefault-integer-8 with DTIO. + +2025-12-22 Harald Anlauf <anlauf@gmx.de> + + PR fortran/123253 + * expr.cc (gfc_check_vardef_context): Replace simple check by a + scan through the association targets for a dummy argument. + +2025-12-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/123201 + * trans-expr.cc (conv_dummy_value): Convert string of length 1 to a + single character for passing as actual argument. + +2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121472 + * trans.cc (gfc_finalize_tree_expr): Replace !derived->components + check with TYPE_SIZE_UNIT check for zero-size types. + +2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121475 + * trans.cc (gfc_finalize_tree_expr): Add logic to allow the + function result to be resolved in resolve.cc + (generate_component_assignments). + +2025-12-21 Tamar Christina <tamar.christina@arm.com> + + * trans-openmp.cc (gfc_trans_omp_clauses): Add default to switch. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * dump-parse-tree.cc (show_omp_clauses): Add default: with + gcc_unreachable () to avoid spurious -Wmaybe-uninitialized warnings. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * gfortran.texi: Fix typo, transfered -> transferred. + * resolve.cc (resolve_where): Fix comment typo, outmost -> outermost. + +2025-12-19 Harald Anlauf <anlauf@gmx.de> + + PR fortran/71565 + * expr.cc (gfc_check_vardef_context): Fix treatment of INTENT(IN) + checks for ASSOCIATE variables. Correct checking of PROTECTED + objects, as subobjects inherit the PROTECTED attribute. + +2025-12-19 Christopher Albert <albert@tugraz.at> + + PR fortran/92613 + * cpp.cc (gfc_cpp_preprocess): Skip libcpp for -fpreprocessed. + Error out for -fpreprocessed -E. + * f95-lang.cc (gfc_init): Skip libcpp init for -fpreprocessed. + * scanner.cc (gfc_new_file): Load source directly if preprocessed. + * invoke.texi (Preprocessing Options): Document -fpreprocessed. + +2025-12-19 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (gfc_match_omp_clause_uses_allocators): Accept + multiple clause-argument-specifications separated by ';'. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * dump-parse-tree.cc (show_omp_assumes): Handle + no_openmp_constructs clause. + * gfortran.h (struct gfc_omp_assumptions): Add + no_openmp_constructs. + * openmp.cc (gfc_match_dupl_check): For free-form + Fortran, avoid substring matching. + (gfc_match_omp_clauses): Match no_openmp_constructs clause. + Remove no longer needed 'needs_space', match 'order' followed by + parenthesis instead of 'order' with parenthesis; reorder 'order' + and 'ordering' clauses for free-form Fortran. + (gfc_match_omp_assumes): Handle no_openmp_constructs clause. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * dump-parse-tree.cc (show_omp_clauses): Handle + device_type clause. + * openmp.cc (gfc_match_omp_clauses): Reorder to + match 'device' after 'device_...' to avoid parse + errors. + (OMP_TARGET_CLAUSES): Add device_type clause. + * trans-openmp.cc (gfc_trans_omp_clauses, + gfc_split_omp_clauses): Handle device_type clause. + +2025-12-12 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (gfc_match_omp_clause_uses_allocators): Mention + new syntax in deprecation warning. + +2025-12-12 Tobias Burnus <tburnus@baylibre.com> + + * intrinsic.texi (OpenMP Modules OMP_LIB and OMP_LIB_KINDS): Link + also to OpenMP 6.0, move 'partially supported' to the end of the + list of OpenMP versions. Mark 'omp_lock_hint_...' and + 'omp_atv_sequential' constants as deprecated. + +2025-12-12 Chung-Lin Tang <cltang@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * openmp.cc (resolve_omp_clauses): Handle omp_null_allocator. + * trans-openmp.cc (gfc_trans_omp_clauses): Mention it in a comment. + +2025-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/107406 + * parse.cc (check_component): Adjust the error check to + require a codimension if the allocatable type has + a non-coarray LOCK_TYPE component. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/123098 + * openmp.cc (gfc_match_omp_clause_reduction): Only emit + -Wdeprecated-openmp warning for '-' if !openacc. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + * openmp.cc (gfc_match_omp_clause_reduction, + gfc_match_omp_clause_uses_allocators, gfc_match_omp_clauses, + match_omp_metadirective, gfc_match_omp_parallel_master, + gfc_match_omp_parallel_master_taskloop, + gfc_match_omp_parallel_master_taskloop_simd, + gfc_match_omp_master, gfc_match_omp_master_taskloop, + gfc_match_omp_master_taskloop_simd, resolve_omp_clauses): Formatting + fixes. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + * trans-expr.cc (gfc_conv_procedure_call): Fix comment typo, passe + -> pass. + +2025-12-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/107142 + * match.cc (gfc_match_type_spec): Change original declaration + to static match_type_spec and call from gfc_match_type_spec, + where the gfc_current_ns is stashed and restored after call. + (gfc_match_type_is): Before emitting the syntax error message + check if there are any pending error messages and use them + instead. + +2025-12-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/110012 + * decl.cc (gfc_get_pdt_instance): Continue to loop through the + type parameters components if param_list is null and the + parameter is not KIND with a default initializer. + * resolve.cc (resolve_fl_derived): If the data component is a + PDT template, find the instance and build the class. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * gfortran.texi: Bump version and clarify implementation status. + * intrinsic.texi: Bump version and note deprecation of + 'omp_proc_bind_master'. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * openmp.cc (gfc_match_omp_clause_reduction): Deprecate '-' + operator for reductions. + (gfc_match_omp_clause_uses_allocators): Deprecate + allocator(traits) pattern for 'uses_allocators'. + (gfc_match_omp_clauses): Deprecate 'sink' and 'source' for + 'depend' clause. Deprecate list items as arguments with 'linear' + clause. Deprecate non-comma-separated modifiers for the map + clause. Deprecate 'to' clause with declare target. + (gfc_match_omp_declare_target): Whitespace. + (match_omp_metadirective): Deprecate 'default' clause on + metadirectives. + (resolve_omp_clauses): Deprecate executable allocate directives. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * cpp.cc (cpp_define_builtins): Bump _OPENMP version. + * invoke.texi: Update docs for '-Wdeprecated-openmp'. + * lang.opt (Wdeprecated-openmp): Add warning. + * lang.opt.urls: Regenerated. + * openmp.cc (gfc_match_omp_clauses): Deprecate master affinity + policy. + (gfc_match_omp_parallel_master): Deprecate master construct. + (gfc_match_omp_parallel_master_taskloop): Ditto. + (gfc_match_omp_parallel_master_taskloop_simd): Ditto. + (gfc_match_omp_master): Ditto. + (gfc_match_omp_master_taskloop): Ditto. + (gfc_match_omp_master_taskloop_simd): Ditto. + (resolve_omp_clauses): Warn for deprecated use of + {use,is}_device_ptr. + +2025-12-08 Harald Anlauf <anlauf@gmx.de> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/123025 + * decl.cc (match_char_length): Add a check for the + obsolete '*' style of character declarations in the + alternate branch of checking so we dont miss two + use cases: + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122693 + * array.cc (gfc_match_array_constructor): Stash and restore + gfc_current_ns after the call to 'gfc_match_type_spec'. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122670 + * decl.cc (gfc_get_pdt_instance): Ensure that, in an interface + body, PDT instances imported implicitly if the template has + been explicitly imported. + * module.cc (read_module): If a PDT template appears in a use + only statement, implicitly add the instances as well. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122669 + * resolve.cc (resolve_allocate_deallocate): Mold expressions + with an array reference and a constant size must be resolved + for each allocate object. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122578 + * primary.cc (gfc_match_varspec): Try to resolve a typebound + generic procedure selector expression to provide the associate + name with a type. Also, resolve component calls. In both cases, + make a copy of the selector expression to guard against changes + made by gfc_resolve_expr. + +2025-12-05 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122977 + * expr.cc (gfc_is_simply_contiguous): For an associate variable + check whether the associate target is contiguous. + * resolve.cc (resolve_symbol): Skip array type check for an + associate variable when the target has the contiguous attribute. + +2025-12-05 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (resolve_omp_clauses): Permit zero with + DYN_GROUPPRIVATE clause. + * trans-openmp.cc (fallback): Generate TREE code + for DYN_GROUPPRIVATE and remove 'sorry'. + +2025-12-03 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/103371 + * decl.cc (gfc_get_pdt_instance): Remove the requirement that + PDT components be of the same type as the enclosing type. Apply + initializers other than the default to PDT components. + * primary.cc (gfc_match_rvalue): Make combination of the two + actual_arglists conditional on 'type_spec_list' having been + seen as well together with applying component names to all the + arguments. + * trans-decl.cc (gfc_init_default_dt): Add 'pdt_ok' to the args + and use it to signal that a PDT can be default initialized. + (gfc_init_default_pdt): New function to check that a pdt is OK + for default intialization before calling gfc_init_default_dt. + (gfc_trans_deferred_vars): Use gfc_init_default_pdt. + * trans.h: Add bool 'pdt_ok' to prototype with defaul value of + false. + +2025-12-01 Christopher Albert <albert@tugraz.at> + Harald Anlauf <anlauf@gcc.gnu.org> + + PR fortran/107721 + PR fortran/102417 + * arith.cc (eval_intrinsic): Call gfc_check_constructor_type on + array constructor operands with explicit type-spec to ensure + element type conversion before operations. Resolve character + array constructors before CONCAT operations. + (reduce_binary_ac, reduce_binary_ca, reduce_binary_aa): Preserve + character length info in result arrays. + * array.cc (check_constructor_type): Simplify non-constant + expressions before type checking to handle parenthesized elements. + Handle nested character array constructors with explicit type-spec + when outer constructor has no type-spec. + (gfc_resolve_character_array_constructor): Recursively propagate + type-spec to nested array constructors. If the nested constructor + has an explicit type-spec, resolve it first before propagating + the outer type-spec. + +2025-12-01 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.texi (Default exponents): Remove spurious @menu entry. + +2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * lang.opt.urls: Regenerate. + +2025-11-28 Tobias Burnus <tburnus@baylibre.com> + + PR c/122892 + * openmp.cc (gfc_resolve_omp_allocate): Reject non-local + static variables with cgroup/pteam/thread allocators. + * parse.cc: Permit OMP ALLOCATE in BLOCK DATA. + +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 + * decl.cc (gfc_match_decl_type_spec): A pdt_type found while + parsing a contains section can only arise from the typespec of + a function declaration. This can be retained in the typespec. + Once we are parsing the function, the first reference to this + derived type will find that it has no symtree. Provide it with + one so that gfc_use_derived does not complain and, again,retain + it in the typespec. + +2025-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/32365 + * parse.cc (parse_executable): Reject declaration/OpenMP + specification statements seen after executable code + unconditionally, keeping the legacy DATA diagnostic as + a warning. + +2025-11-17 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122709 + * resolve.cc (resolve_assoc_var): If the associate target is a + contiguous pointer, so is the associate variable. + +2025-11-17 Thomas Koenig <tkoenig@gcc.gnu.org> + + * gfortran.texi: Remove section "Experimental features for future + Fortran revisions". Move documentation of UNSIGNED into Extensions. + Mention flang compatibility. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * parse.cc (gfc_parse_file): Avoid arithmetics or + bitwise operations between enumerators from different enums. + +2025-11-14 Yuao Ma <c8ef@outlook.com> + + * trans-expr.cc (conv_dummy_value): Add check for NULL allocatable. + +2025-11-14 Harald Anlauf <anlauf@gmx.de> + + PR fortran/117070 + * array.cc (check_constructor): Allow procedures as potential + target of a procedure pointer. + +2025-11-13 Andrew Stubbs <ams@codesourcery.com> + Kwok Cheung Yeung <kcyeung@baylibre.com> + Thomas Schwinge <tschwinge@baylibre.com> + + * openmp.cc (is_predefined_allocator): Use GOMP_OMP_PREDEF_ALLOC_MAX + and GOMP_OMPX_PREDEF_ALLOC_MIN/MAX instead of hardcoded values in the + comment. + +2025-11-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR other/122638 + * gfortran.texi (OpenMP): Fix syntax. + * intrinsic.texi (UINT): Fix syntax. + +2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/96255 + * match.cc (apply_typespec_to_iterator): Call gfc_set_sym_referenced + for both new and shadow iterator symbols. + +2025-11-12 Tobias Burnus <tburnus@baylibre.com> + + PR libgomp/119677 + * intrinsic.texi (OpenMP Modules): Add omp_default_device. + * openmp.cc (gfc_resolve_omp_context_selector): Accept + omp_default_device as conforming device number. + +2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/96255 + * resolve.cc (gfc_resolve_forall): Delete outer_sym + +2025-11-11 Christopher Albert <albert@tugraz.at> + + PR fortran/90519 + * trans-expr.cc (strip_parentheses): New helper function to strip + INTRINSIC_PARENTHESES operators from expressions. + (is_runtime_conformable): Use strip_parentheses to handle cases + like a = (a) when checking for self-assignment. + (gfc_trans_assignment_1): Strip parentheses before checking if + expr2 is a variable, ensuring deep_copy is enabled for cases like + a = (a). Also strip parentheses when checking for self-assignment + to avoid use-after-free in finalization. + (gfc_trans_scalar_assign): Add comment about parentheses handling. + * class.cc (generate_finalization_wrapper): Create separate result + symbol for finalizer wrapper functions instead of self-referencing + the procedure symbol, avoiding ICE in gimplify_call_expr. + +2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + Steve Kargl <kargl@gcc.gnu.org> + + PR fortran/96255 + * gfortran.h (gfc_forall_iterator): Add bool shadow field. + * match.cc (apply_typespec_to_iterator): New helper function to + consolidate shadow variable creation logic. + (match_forall_header): Add type-spec parsing for DO CONCURRENT + and FORALL. Create shadow variables when type-spec differs from + outer scope. Replace duplicated code with apply_typespec_to_iterator. + * resolve.cc (replace_in_expr_recursive): New function to recursively + walk expressions and replace symbol references. + (replace_in_code_recursive): New function to recursively walk code + blocks and replace symbol references. + (gfc_replace_forall_variable): New entry point for shadow variable + substitution. + (gfc_resolve_assign_in_forall): Skip many-to-one assignment warning + for DO CONCURRENT. + (gfc_count_forall_iterators): Handle both EXEC_FORALL and + EXEC_DO_CONCURRENT with assertion. + (gfc_resolve_forall): Skip F2018 obsolescence warning for DO + CONCURRENT. Fix memory allocation check. Add NULL checks for shadow + variables. Implement shadow variable walker. + (gfc_resolve_code): Set gfc_do_concurrent_flag for DO CONCURRENT + constructs to enable constraint checking. + +2025-11-10 Sandra Loosemore <sloosemore@baylibre.com> + + PR other/122243 + * lang.opt.urls: Regenerated. + +2025-11-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/113338 + * decl.cc (gfc_verify_c_interop_param): Allow further types of + dummy argument without the VALUE attribute as specified in + F2018 18.3.6 item (5). + +2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * trans-array.cc (seen_derived_types): Move to file scope and + preserve/restore around generate_element_copy_wrapper. + * trans-intrinsic.cc (conv_intrinsic_atomic_op): Reuse + gfc_trans_force_lval when forcing addressable CAF temps. + +2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * trans-array.cc (get_copy_helper_function_type): New function to + create function type for element copy helpers. + (get_copy_helper_pointer_type): New function to create pointer type + for element copy helpers. + (generate_element_copy_wrapper): New function to generate runtime + helper for element-wise deep copying of recursive types. + (structure_alloc_comps): Detect recursive allocatable array + components and use runtime helper instead of inline recursion. + Add includes for cgraph.h and function.h. + * trans-decl.cc (gfor_fndecl_cfi_deep_copy_array): New declaration + for runtime deep copy helper. + (gfc_build_builtin_function_decls): Initialize the runtime helper + declaration. + * trans-intrinsic.cc (conv_intrinsic_atomic_op): Enhance handling of + constant values in coarray atomic operations by detecting and + materializing address-of-constant expressions. + * trans.h (gfor_fndecl_cfi_deep_copy_array): Add external declaration. + +2025-11-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122566 + * decl.cc (gfc_get_pdt_instance): Add non-PDT type exstention. + +2025-11-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122501 + PR fortran/122524 + * primary.cc (gfc_convert_to_structure_constructor): Correct + whitespace issue. + (gfc_match_rvalue): Remove the attempt to match specific procs + before filling out PDT constructor. Instead, defer this until + resolution with the condition that there not be a following + arglist and more than one procedure in the generic interface. + +2025-11-05 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/122570 + * openmp.cc (resolve_omp_metadirective): Fix 'skip' of + never matchable metadirective variants. + +2025-11-04 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122564 + * resolve.cc (resolve_locality_spec): Delete temporary hash_set. + +2025-11-04 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/122369 + PR fortran/122508 + * gfortran.h (gfc_rebind_label): Declare new function. + * parse.cc (parse_omp_metadirective_body): Rebind labels to the outer + region. Maintain a vector of metadirective regions. + (gfc_parse_file): Initialise it. + * parse.h (GFC_PARSE_H): Declare it. + * symbol.cc (gfc_get_st_label): Look for existing labels in outer + metadirective regions. + (gfc_rebind_label): Define new function. + (gfc_define_st_label): Accept duplicate labels in metadirective body. + (gfc_reference_st_label): Accept shared DO termination labels in + metadirective body. + +2025-11-03 Steve Kargl <kargls@comcast.net> + + PR fortran/122513 + * resolve.cc (check_default_none_expr): Do not allow an + iterator in a locality spec. Allow a named constant to be + used within the loop. + +2025-11-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/78640 + * resolve.cc (resolve_fl_procedure): Check function result of a + pure function against F2018:C1585. + +2025-10-31 Yuao Ma <c8ef@outlook.com> + + * intrinsic.texi: Fix typo. + * trans-intrinsic.cc (conv_intrinsic_atomic_cas): Remove unreachable + code. + +2025-10-31 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122452 + * primary.cc (gfc_match_rvalue): Give priority to specific + procedures in a generic interface with the same name as a + PDT template. If found, use as the procedure instead of the + constructor generated from the PDT template. + +2025-10-30 Mikael Morin <mikael@gcc.gnu.org> + + * trans-array.cc: Cleanup obsolete comment. + +2025-10-29 Yuao Ma <c8ef@outlook.com> + + * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Remove unreachable + code. + +2025-10-29 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122165 + * primary.cc (gfc_match_varspec): If the previous component ref + was a type specification parameter, a type inquiry ref cannot + follow. + +2025-10-29 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122433 + PR fortran/122434 + * decl.cc (gfc_get_pdt_instance): Prevent a PDT component of + the same type as the template from being converted into an + instance. + * resolve.cc (gfc_impure_variable): The result of a pure + function is a valid allocate object since it is pure. + +2025-10-28 Yuao Ma <c8ef@outlook.com> + + PR fortran/122342 + * trans-const.cc (gfc_conv_constant): Create a variable for the + non-char pointer. + +2025-10-28 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/122439 + * openmp.cc (gfc_resolve_omp_context_selector): Skip selectors that have + OMP_TRAIT_INVALID. + +2025-10-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/922290 + PR fortran/95541 + * resolve.cc (resolve_typebound_intrinsic_op): Add pdt_template + to the list of preemted specifics. + * trans-stmt.cc (trans_associate_var): PDT array and string + components are separately allocated for each element of a PDT + array, so copy in and copy out the selector expression. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR middle-end/122325 + * options.cc (gfc_init_options_struct): Set flag_complex_method + to fortran rules. + +2025-10-26 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122290 + * decl.cc (variable_decl): Matching component initializer + expressions in PDT templates should be done with gfc_match_expr + to avoid reduction too early. If the expression type is unknown + copy the component typespec. + (gfc_get_pdt_instance): Change comment from a TODO to an + explanation. Insert parameter values in initializers. For + components that are not marked with PDT attributes, do the + full reduction for init expressions. + * primary.cc (gfc_match_actual_arglist): Convert PDT kind exprs + using the component initializer. + * resolve.cc (resolve_typebound_intrinsic_op): Preempt + gfc_check_new_interface for pdt_types as well as entities used + in submodules. + * simplify.cc (get_kind): Remove PDT kind conversion. + +2025-10-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/114023 + * trans-expr.cc (gfc_trans_pointer_assignment): Always set dtype + when remapping a pointer. For unlimited polymorphic LHS use + elem_len from RHS. + * trans-intrinsic.cc (gfc_conv_is_contiguous_expr): Extend inline + generated code for IS_CONTIGUOUS for pointer arguments to detect + when span differs from the element size. + +2025-10-24 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122386 + * dependency.cc (gfc_ref_needs_temporary_p): Revert r16-518. + * trans-intrinsic.cc (gfc_conv_intrinsic_transfer): Force temporary + for SOURCE not being a simply-contiguous array. + +2025-10-24 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/121452 + * openmp.cc (resolve_omp_do): Allow CONTINUE as end statement of a + perfectly nested loop. + +2025-10-21 Paul-Antoine Arras <parras@baylibre.com> + + PR c/120180 + PR fortran/122306 + * gfortran.h (enum gfc_exec_op): Add EXEC_OMP_FIRST_OPENMP_EXEC and + EXEC_OMP_LAST_OPENMP_EXEC. + * openmp.cc (gfc_match_omp_context_selector): Remove static. Remove + checks on score. Add cleanup. Remove checks on trait properties. + (gfc_match_omp_context_selector_specification): Remove static. Adjust + calls to gfc_match_omp_context_selector. + (gfc_match_omp_declare_variant): Adjust call to + gfc_match_omp_context_selector_specification. + (match_omp_metadirective): Likewise. + (icode_code_error_callback): Reject all statements except + 'assume' and 'metadirective'. + (gfc_resolve_omp_context_selector): New function. + (resolve_omp_metadirective): Skip metadirectives which context selectors + can be statically resolved to false. Replace metadirective by its body + if only 'nothing' remains. + (gfc_resolve_omp_declare): Call gfc_resolve_omp_context_selector for + each variant. + +2025-10-21 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (gfc_omp_directive): Add comment to 'allocate'; + add 6.x unimplemented directives as comment-out entries. + +2025-10-18 Yuao Ma <c8ef@outlook.com> + + * resolve.cc (resolve_conditional): Allow character in cond-expr. + * trans-const.cc (gfc_conv_constant): Handle want_pointer. + * trans-expr.cc (gfc_conv_conditional_expr): Fill se->string_length. + (gfc_conv_string_parameter): Handle COND_EXPR tree code. + +2025-10-17 Josef Melcr <jmelcr02@gmail.com> + + * f95-lang.cc (ATTR_CALLBACK_GOMP_LIST): New attr list + corresponding to the list in builtin-attrs.def. + +2025-10-13 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121191 + * trans-array.cc (has_parameterized_comps): New function which + checks if a derived type has parameterized components. + ( gfc_deallocate_pdt_comp): Use it to prevent deallocation of + PDTs if there are no parameterized components. + +2025-10-12 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/95543 + PR fortran/103748 + * decl.cc (insert_parameter_exprs): Guard param->expr before + using it. + (gfc_get_pdt_instance): Substitute paramaters in kind default + initializers. + (gfc_match_decl_type_spec): Emit an error if a type paramter + specification list appears in a variable declaraion with a + non-parameterized type. + * primary.cc (gfc_match_rvalue): Emit an error if a type spec + list is empty. + +2025-10-11 Harald Anlauf <anlauf@gmx.de> + + PR fortran/50377 + PR fortran/122257 + * resolve.cc (resolve_actual_arglist): Initialize variable. + +2025-10-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/50377 + * resolve.cc (resolve_actual_arglist): Check procedure actual + arguments. + +2025-10-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122206 + * trans-types.cc (gfc_get_function_type): Do not clobber an + existing procedure interface. + +2025-10-09 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Define INCLUDE_VECTOR. + +2025-10-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/49111 + * decl.cc (verify_bind_c_sym): Modify condition for generation of + accessibility warning, and adjust warning message. + +2025-10-08 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/93175 + PR fortran/102240 + PR fortran/102686 + * array.cc (match_array_element_spec): For pdt templates, call + gfc_correct_parm_expr to elimante extraneous symbols from the + bound expressions. + * decl.cc (correct_parm_expr, gfc_correct_parm_expr): New fcns + that remove symbols that are not PDT parameters from the type + specification expressions. + (insert_parameter_exprs): Process function symbols as if they + are variables in the substitution with parameter expressions. + (gfc_get_pdt_instance): Make sure that the parameter list of + PDT components is updated as the instance is built. Move the + construction of pdt_strings down a bit in the function and + remove the tie up with pdt_arrays. + * gfortran.h: Add prototype for gfc_correct_parm_expr. + * resolve.cc (resolve_component): Skip testing for constant + specification expressions in pdt_template component string + lengths and pdt_strings. + * trans-array.cc (structure_alloc_comps): Remove testing for + deferred parameters and instead make sure that components of + PDT type have parameters substituted with the parameter exprs + of the enclosing PDT. + +2025-10-07 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/102901 + * trans-array.cc (structure_alloc_comps): Do not use + gfc_check_pdt_dummy with pointer or allocatable components. + +2025-10-04 Harald Anlauf <anlauf@gmx.de> + + PR fortran/107968 + * trans-io.cc (gfc_trans_transfer): Also scalarize I/O of section + of an array pointer. + +2025-10-03 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122089 + * decl.cc (gfc_get_pdt_instance): If gfc_extract_int is true an + error has occurred because the kind expr was not provided. Use + the template in this case and return MATCH_YES. + +2025-10-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122080 + * trans-array.cc (gfc_conv_array_parameter): Wrap the derivation of + bounds and strides for the descriptor of an optional dummy array + argument by a test on argument presence when it is supposed to be + passed to an optional argument. + +2025-10-01 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122089 + * decl.cc (gfc_get_pdt_instance): If the pdt_template is use + associated, 'module' field should be copied to this instance. + +2025-09-30 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/102241 + * gfortran.h: Add symbol attribute 'pdt_comp'. + * module.cc : Add 'pdt_comp' to 'ab_attribute' and 'attr_bits'. + (mio_symbol_attribute): Set 'pdt_comp'. + * resolve.cc (resolve_component): If a PDT component is found + in a non-PDT type, generate the PDT instance, if necessary, and + set the 'pdt_comp' attribute. Fix some whitespace issues. + * trans-decl.cc (gfc_get_symbol_decl, gfc_trans_deferred_vars): + If 'pdt_comp' set, initialize the PDT components. + * trans-stmt.cc (gfc_trans_deallocate): Verify that a typespec + parameter list is available for PDT components of ordinary + derived types. + +2025-09-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87908 + * interface.cc (check_interface0): Revert changes. + +2025-09-26 Harald Anlauf <anlauf@gcc.gnu.org> + + PR fortran/122002 + * decl.cc (gfc_get_pdt_instance): Initialize 'instance' to NULL + and set 'kind_value' to zero before calling gfc_extract_int. + * primary.cc (gfc_match_rvalue): Intitialize 'ctr_arglist' to + NULL and test for default values if gfc_get_pdt_instance + returns NULL. + +2025-09-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121939 + * trans-types.cc (gfc_init_types): Set string flag for all + character types. + +2025-09-24 Mikael Morin <morin-mikael@orange.fr> + + PR fortran/122046 + * symbol.cc (gfc_get_procedure_ns): Try to find the namespace + among the list of contained namespaces before returning the + value from the formal_ns field. + +2025-09-24 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87908 + * interface.cc (check_interface0): If a vtable is found in the + interface list, check that it is either a subroutine or a + function. Let resolve.cc do any further checking. + +2025-09-22 Steve Kargl <pault@gcc.gnu.org> + + PR fortran/103508 + * decl.cc (gfc_match_end): Remove only the current partial + rather than removing the entire sibling chain. + +2025-09-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/109010 + * st.cc (gfc_free_statement): Also free components expr3 and expr4. + +2025-09-21 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/121161 + * invoke.texi: Mention that -ffrontend-optimize is required + for -fexternal-blas64. + * options.cc (gfc_post_options): Fatal error if -fexternal-blas64 + is specified without -ffrontend-optimize. + * trans-types.cc (gfc_init_kinds): Fatal error if -fexternal-blas64 + is specified on a system which does not have 64-bit ptrdiff_t. + +2025-09-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/108581 + * trans-array.cc (gfc_conv_expr_descriptor): Take the dynamic + string length into account when deriving the dataptr offset for + a deferred-length character array. + +2025-09-20 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83746 + * trans-decl.cc (gfc_trans_deferred_vars): If a procedure with + an non-allocatable, non-pointer explicit PDT result has no + default initializer, the parameterized components should be + allocated. + +2025-09-19 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83746 + * trans-array.cc (structure_alloc_comps): Add the pre and post + blocks to 'fnblock' for all the evaluations of parameterized + expressions in PDT component allocatation. + +2025-09-18 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121948 + * decl.cc (gfc_get_pdt_instance): Copy the contents of 'tb' and + not the pointer. + * primary.cc (gfc_match_rvalue): If there is only one actual + argument list, use if for the type spec parameter values. If + this fails try the default type specification values and use + the actual arguments for the component values. + * resolve.cc (build_init_assign): Don't initialize implicit PDT + function results. + +2025-09-17 Thomas Koenig <tkoenig@gcc.gnu.org> + + * frontend-passes.cc (optimize_namespace): Handle + flag_external_blas64. + (call_external_blas): If flag_external_blas is set, use + gfc_integer_4_kind as the argument kind, gfc_integer_8_kind otherwise. + * gfortran.h (gfc_integer_8_kind): Define. + * invoke.texi: Document -fexternal-blas64. + * lang.opt: Add -fexternal-blas64. + * lang.opt.urls: Regenerated. + * options.cc (gfc_post_options): -fexternal-blas is incompatible + with -fexternal-blas64. + +2025-09-15 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83763 + * trans-decl.cc (gfc_trans_deferred_vars): Ensure that the + parameterized components of PDTs that do not have allocatable + components are deallocated on leaving scope. + * trans-expr.cc (gfc_trans_assignment_1): Do a dependency check + on PDT assignments. If there is a dependency between lhs and + rhs, deallocate the lhs parameterized components after the rhs + has been evaluated. + +2025-09-14 Yuao Ma <c8ef@outlook.com> + + * dump-parse-tree.cc (show_expr): Add support for EXPR_CONDITIONAL. + * expr.cc (gfc_get_conditional_expr): Add cond-expr constructor. + (gfc_copy_expr, free_expr0, gfc_is_constant_expr, + simplify_conditional, gfc_simplify_expr, gfc_check_init_expr, + check_restricted, gfc_traverse_expr): Add support for EXPR_CONDITIONAL. + * frontend-passes.cc (gfc_expr_walker): Ditto. + * gfortran.h (enum expr_t): Add EXPR_CONDITIONAL. + (gfc_get_operator_expr): Format fix. + (gfc_get_conditional_expr): New decl. + * matchexp.cc + (match_conditional, match_primary): Parsing for EXPR_CONDITIONAL. + * module.cc (mio_expr): Add support for EXPR_CONDITIONAL. + * resolve.cc (resolve_conditional, gfc_resolve_expr): Ditto. + * trans-array.cc (gfc_walk_conditional_expr, gfc_walk_subexpr): Ditto. + * trans-expr.cc + (gfc_conv_conditional_expr): Codegen for EXPR_CONDITIONAL. + (gfc_apply_interface_mapping_to_expr, gfc_conv_expr, + gfc_conv_expr_reference): Add support for EXPR_CONDITIONAL. + +2025-09-11 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121616 + * primary.cc (gfc_variable_attr): Properly set dimension attribute + from a component ref. + +2025-09-09 Harald Anlauf <anlauf@gmx.de> + + * trans-intrinsic.cc (conv_intrinsic_fstat_lstat_stat_sub): Init + some variables. + +2025-09-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/82480 + * check.cc (error_unsupported_kind): Helper function to report an + unsupported kind of an argument. + (check_minrange4): Helper function to report if an integer variable + does not have a decimal range of at least four. + (gfc_check_fstat): Adjust checks for generalization of instrinsic + function FSTAT. + (gfc_check_fstat_sub): Likewise for subroutine FSTAT. + (gfc_check_stat): Likewise for functio STAT. + (gfc_check_stat_sub): Likewise for subroutine STAT. + * intrinsic.texi: Document generalized versions of intrinsics + STAT/LSTAT/FSTAT. + * iresolve.cc (gfc_resolve_stat): STAT function result shall have + the same kind as the VALUES argument. + (gfc_resolve_lstat): Likewise for LSTAT. + (gfc_resolve_fstat): Likewise for FSTAT. + (gfc_resolve_stat_sub): Resolve proper library subroutine for STAT. + (gfc_resolve_lstat_sub): Likewise for LSTAT. + * trans-decl.cc (gfc_build_intrinsic_function_decls): Declare + fndecls for required subroutines in runtine library. + * trans-intrinsic.cc (conv_intrinsic_fstat_lstat_stat_sub): Emit + runtime wrapper code for the library functions, taking care of + possible kind conversion of the optional STATUS argument of the + subroutine versions of the intrinsics. + (gfc_conv_intrinsic_subroutine): Use it. + * trans.h (GTY): Declare prototypes. + +2025-09-08 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84008 + * decl.cc (insert_parameter_exprs): Correct the typespec of new + variable declarations, where the type is set to BT_PROCEDURE as + a precaution for resolution of the whole program unit. + +2025-09-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84119 + * resolve.cc (reset_array_ref_to_scalar): New function using + chunk broken out from gfc_resolve_ref. + (gfc_resolve_ref): Call the new function, the first time for + PDT type parameters and the second time for LEN inquiry refs. + +2025-09-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84432 + PR fortran/114815 + * expr.cc (gfc_check_assign_symbol): Check that components in a + PDT with a default initializer have type and length parameters + that reduce to constant integer expressions. + * trans-expr.cc (gfc_trans_assignment_1): Parameterized + components cannot have default initializers so they must be + allocated after initialization. + +2025-09-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83762 + PR fortran/102457 + * decl.cc (gfc_get_pdt_instance): Check that variable PDT parm + expressions are of type integer. Note that the symbol must be + tested since the expression often appears as BT_PROCEDURE. + +2025-09-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121263 + * trans-intrinsic.cc (gfc_conv_intrinsic_transfer): For an + unlimited polymorphic SOURCE to TRANSFER use saved descriptor + if possible. + +2025-09-02 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/89707 + * decl.cc (gfc_get_pdt_instance): Copy the typebound procedure + field from the PDT template. If the template interface has + kind=0, provide the new instance with an interface with a type + spec that points to that of the parameterized component. + (match_ppc_decl): When 'saved_kind_expr' this is a PDT and the + expression should be copied to the component kind_expr. + * gfortran.h: Define gfc_get_tbp. + +2025-09-02 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87669 + * expr.cc (gfc_spec_list_type): If no LEN components are seen, + unconditionally return 'SPEC_ASSUMED'. This suppresses an + invalid error in match.cc(gfc_match_type_is). + +2025-09-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121727 + * trans-expr.cc (gfc_const_length_character_type_p): New helper + function. + (conv_dummy_value): Use it to determine if a character actual + argument has a constant length. If a character actual argument is + constant and longer than the dummy, truncate it at compile time. + +2025-08-31 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/99709 + * trans-array.cc (structure_alloc_comps): For the case + COPY_ALLOC_COMP, do a deep copy of non-allocatable PDT arrays + Suppress the use of 'duplicate_allocatable' for PDT arrays. + * trans-expr.cc (conv_dummy_value): When passing to a PDT dummy + with the VALUE attribute, do a deep copy to ensure that + parameterized components are reallocated. + +2025-08-29 Harald Anlauf <anlauf@gmx.de> + + PR fortran/93330 + * interface.cc (get_sym_storage_size): Add argument size_known to + indicate that the storage size could be successfully determined. + (get_expr_storage_size): Likewise. + (gfc_compare_actual_formal): Use them to handle zero-sized dummy + and actual arguments. + If a character formal argument has the pointer or allocatable + attribute, or is an array that is not assumed or explicit size, + we generate an error by default unless -std=legacy is specified, + which falls back to just giving a warning. + If -Wcharacter-truncation is given, warn on a character actual + argument longer than the dummy. Generate an error for too short + scalar character arguments if -std=f* is given instead of just a + warning. + +2025-08-28 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/82843 + * intrinsic.cc (gfc_convert_type_warn): If the 'from_ts' is a + PDT instance, copy the derived type to the target ts. + * resolve.cc (gfc_resolve_ref): A PDT component in a component + reference can be that of the pdt_template. Unconditionally use + component of the PDT instance to ensure that the backend_decl + is set during translation. Likewise if a component is + encountered that is a PDT template type, use the component + parmeters to convert to the correct PDT instance. + +2025-08-28 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/82205 + * decl.cc (gfc_get_pdt_instance): Copy the default initializer + for components that are not PDT parameters or parameterized. If + any component is a pointer or allocatable set the attributes + 'pointer_comp' or 'alloc_comp' of the new PDT instance. + * primary.cc (gfc_match_rvalue): Implement the correct form of + PDT constructors with 'name (type parms)(component values)'. + * trans-array.cc (structure_alloc_comps): Apply scalar default + initializers. Array initializers await the coming change in PDT + representation. + * trans-io.cc (transfer_expr): Do not output the type parms of + a PDT in list directed output. + +2025-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/114611 + * io.cc: Issue an error on use of the H descriptor in + a format with -std=f95 or higher. Otherwise, issue a + warning. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118839 + * trans-openmp.cc (gfc_trans_omp_declare_variant): Error if variant + is the same as base. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + * openmp.cc (gfc_match_omp_declare_variant): Make check for a + missing "match" clause unconditional. + +2025-08-21 Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/121627 + * module.cc (create_int_parameter_array): Avoid NULL + pointer dereference and enhance error message. + +2025-08-21 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84122 + PR fortran/85942 + * parse.cc (parse_derived): PDT type parameters are not allowed + an explicit access specification and must appear before a + PRIVATE statement. If a PRIVATE statement is seen, mark all the + other components as PRIVATE. + * simplify.cc (get_kind): Convert a PDT KIND component into a + specification expression using the default initializer. + +2025-08-20 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + * intrinsic.texi: Correct the example given for FRACTION. + Move the TEAM_NUMBER section to after the TANPI to align + with the order gven in the index. + +2025-08-16 H.J. Lu <hjl.tools@gmail.com> + + PR fortran/107421 + * trans-common.cc (build_common_decl): Call set_decl_tls_model + after processing a variable. + * trans-decl.cc (gfc_finish_var_decl): Likewise. + (get_proc_pointer_decl): Likewise. + +2025-08-13 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/89092 + * resolve.cc (was_declared): Add subroutine attribute. + +2025-08-12 Yuao Ma <c8ef@outlook.com> + + * check.cc (gfc_check_c_f_pointer): Check lower arg legitimacy. + * intrinsic.cc (add_subroutines): Teach c_f_pointer about lower arg. + * intrinsic.h (gfc_check_c_f_pointer): Add lower arg. + * intrinsic.texi: Update lower arg for c_f_pointer. + * trans-intrinsic.cc (conv_isocbinding_subroutine): Add logic handle lower. + +2025-08-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121398 + * resolve.cc (check_pdt_args): New function. + (check_generic_tbp_ambiguity): Use it to ensure that args to + typebound procedures that do not have the same declared type as + the containing derived type have 'pass1/2' set to null. This + avoids false ambiguity errors. + (resolve_typebound_procedure): Do not generate a wrong type + error for typebound procedures marked as pass if they are of a + different declared type to the containing pdt_type. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + * gfortran.h (gfc_case): Fix comment typo, singe -> single. + +2025-08-09 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121182 + * decl.cc (match_generic_stmt): New function based on original + gfc_match_generic but feeding namespace rather than typebound + generics. + (match_typebound_generic): Renamed original gfc_match_generic. + (gfc_match_generic): New function that selects between type + bound generic and other generic statements and calls one of the + above two functions as appropriate. + * parse.cc (decode_specification_statement): Allow generic + statements. + (parse_spec): Accept a generic statement in a specification + block. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-stmt.cc (trans_associate_var): Remove overwrite of + the polymorphic associate variable's array descriptor offset. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-array.cc (trans_array_constructor): Remove the update of + the array descriptor upper bound after array constructor + expansion. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-array.cc (gfc_conv_expr_descriptor): Remove + isolated initialization of the span field before passing to + the function that will do the initialization. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-decl.cc (gfc_trans_deferred_vars): Don't default + initialize the span of local pointer arrays. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-stmt.cc (trans_associate_var): Remove overwrite of the + span field of the associate variable's array descriptor. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * trans-expr.cc (gfc_trans_pointer_assignment): Remove overwrite + of the span after assignment of the array descriptor in the + polymorphic function result to non-polymorphic pointer case. + +2025-08-05 Mikael Morin <mikael@gcc.gnu.org> + + * trans.h (gfc_se): Remove field use_offset. + * trans-expr.cc (gfc_conv_intrinsic_to_class): Remove use_offset + initialization. + (gfc_conv_procedure_call): Likewise. + * trans-stmt.cc (trans_associate_var): Likewise. + +2025-08-05 Mikael Morin <mikael@gcc.gnu.org> + + * trans-array.cc (gfc_alloc_allocatable_for_assignment): Use the + offset setter instead of generating a write to the offset. + (gfc_conv_array_parameter): Use the offset setter instead of + generating a write to the value returned by the offset getter. + * trans-expr.cc (gfc_trans_alloc_subarray_assign): Likewise. + +2025-08-05 Mikael Morin <mikael@gcc.gnu.org> + + * trans-array.cc (gfc_conv_descriptor_data_addr): Remove. + * trans-array.h (gfc_conv_descriptor_data_addr): Remove. + * trans-decl.cc (gfc_trans_deferred_vars): Use + gfc_conv_descriptor_data_get. + +2025-08-05 Mikael Morin <mikael@gcc.gnu.org> + + * trans.cc (gfc_finalize_tree_expr): Use the data setter instead + of writing to the value returned by the data getter. + * trans-decl.cc (gfc_trans_deferred_vars): Likewise. + * trans-stmt.cc (trans_associate_var): Use the data setter + instead of writing to the value dereferenced from the data + address. + +2025-08-01 Mikael Morin <mikael@gcc.gnu.org> + + * trans-decl.cc (gfc_trans_deferred_vars): Fix closing brace in + a comment. + +2025-07-31 Mikael Morin <morin-mikael@orange.fr> + + PR fortran/121342 + * trans-expr.cc (gfc_conv_subref_array_arg): Remove offset + update. + (gfc_conv_procedure_call): For polymorphic functions, move the + scalarizer descriptor information... + * trans-array.cc (gfc_add_loop_ss_code): ... here, and evaluate + the bounds to fresh variables. + (get_class_info_from_ss): Remove offset update. + (gfc_conv_ss_startstride): Don't set a zero value for function + result upper bounds. + (late_set_loop_bounds): New. + (gfc_conv_loop_setup): If the bounds of a function result have + been set, and no other array provided loop bounds for a + dimension, use the function result bounds as loop bounds for + that dimension. + (gfc_set_delta): Don't skip delta setting for polymorphic + function results. + +2025-07-30 Mikael Morin <morin-mikael@orange.fr> + + * trans-array.cc (gfc_array_init_size): Remove the nelems + argument. + (gfc_array_allocate): Update caller. Remove the nelems + argument. + * trans-stmt.cc (gfc_trans_allocate): Update caller. Remove the + nelems variable. + * trans-array.h (gfc_array_allocate): Update prototype. + +2025-07-30 Yuao Ma <c8ef@outlook.com> + + * check.cc (gfc_check_split): Argument check for SPLIT. + * gfortran.h (enum gfc_isym_id): Define GFC_ISYM_SPLIT. + * intrinsic.cc (add_subroutines): Register SPLIT intrinsic. + * intrinsic.h (gfc_check_split): New decl. + (gfc_resolve_split): Ditto. + * intrinsic.texi: SPLIT documentation. + * iresolve.cc (gfc_resolve_split): Add resolved_sym for SPLIT. + * trans-decl.cc (gfc_build_intrinsic_function_decls): Add decl for + SPLIT in libgfortran. + * trans-intrinsic.cc (conv_intrinsic_split): SPLIT codegen. + (gfc_conv_intrinsic_subroutine): Handle SPLIT case. + * trans.h (GTY): Declare gfor_fndecl_string_split{, _char4}. + +2025-07-27 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/121185 + * trans-expr.cc (gfc_trans_assignment_1): Use the same condition + to set the is_alloc_lhs flag and to decide to generate + reallocation code. Add explicit call to gfc_fix_class_refs + before evaluating the condition. + +2025-07-27 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/121185 + * trans-array.cc (set_factored_descriptor_value): Also trigger + the saving of the previously selected reference on encountering + an INDIRECT_REF. Extract the saving code... + (save_ref): ... here as a new function. + +2025-07-27 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/121185 + * trans-expr.cc (gfc_get_class_from_expr): Give up class + container lookup on the second COMPONENT_REF after an array + descriptor. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Make diagnostics::context::m_source_printing private. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cpp.cc: Update usage of "diagnostic_info" to explicitly refer to + "diagnostics::diagnostic_info". + * error.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cpp.cc: Update for diagnostic_t becoming + enum class diagnostics::kind. + * error.cc: Likewise. + * options.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * cpp.cc: Update for renaming of + diagnostic_option_id to diagnostics::option_id. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Update for move of diagnostic-color.h to + diagnostics/color.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Update for diagnostic_context becoming + diagnostics::context. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Update to add "m_" prefix to fields of + diagnostic_info throughout. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * error.cc: Update for move of diagnostics output formats into + namespace "diagnostics" as "sinks". + * gfortran.h: Likewise. + +2025-07-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121203 + * trans-expr.cc (gfc_conv_procedure_call): Obtain the character + length of an assumed character length procedure from the typespec + of the actual argument even if there is no explicit interface. + +2025-07-21 Mikael Morin <mikael@gcc.gnu.org> + + * trans-decl.cc (gfc_trans_deferred_vars): Fix indentation. + +2025-07-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119106 + * expr.cc (simplify_constructor): Do not simplify constants. + (gfc_simplify_expr): Continue to simplify expression when an + iterator is present. + +2025-07-21 Mikael Morin <mikael@gcc.gnu.org> + + * trans-array.cc (gfc_conv_ss_descriptor): Move the descriptor + expression initialisation... + (set_factored_descriptor_value): ... to this new function. + Before initialisation, walk the reference expression passed as + argument and save some of its subexpressions to a variable. + (substitute_t): New struct. + (maybe_substitute_expr): New function. + (substitute_subexpr_in_expr): New function. + +2025-07-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121145 + * trans-expr.cc (gfc_conv_procedure_call): Do not create pointer + check for proc-pointer actual passed to optional dummy. + +2025-07-16 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121060 + * interface.cc (matching_typebound_op): Defer determination of + specific procedure until resolution by returning NULL. + +2025-07-16 Steve Kargl <sgk@troutmask.apl.washington.edu> + + * decl.cc (gfc_match_import): Correct minor whitespace snafu + and fix NULL pointer dereferences in two places. + +2025-07-15 Kwok Cheung Yeung <kcyeung@baylibre.com> + + PR fortran/104428 + * trans-openmp.cc (gfc_trans_omp_declare_variant): Check that proc_st + is non-NULL before dereferencing. Add line number to error message. + +2025-07-15 Mikael Morin <mikael@gcc.gnu.org> + + * gfortran.h (gfc_symbol): Remove field allocated_in_scope. + * trans-array.cc (gfc_array_allocate): Don't set it. + (gfc_alloc_allocatable_for_assignment): Likewise. + Generate the unallocated descriptor bounds initialisation + before the opening of the reallocation code block. Create a + variable and use it as additional condition to the unallocated + descriptor bounds initialisation. + +2025-07-15 Mikael Morin <mikael@gcc.gnu.org> + + * trans-array.cc (gfc_conv_ss_descriptor): Don't evaluate + offset and data to a variable if is_alloc_lhs is set. Move the + existing evaluation decision condition for data... + (save_descriptor_data): ... here as a new predicate. + (evaluate_bound): Add argument save_value. Omit the evaluation + of the value to a variable if that argument isn't set. + (gfc_conv_expr_descriptor): Update caller. + (gfc_conv_section_startstride): Update caller. Set save_value + if is_alloc_lhs is not set. Omit the evaluation of stride to a + variable if save_value isn't set. + (gfc_set_delta): Omit the evaluation of delta to a variable + if is_alloc_lhs is set. + (gfc_is_reallocatable_lhs): Return false if flag_realloc_lhs + isn't set. + (gfc_alloc_allocatable_for_assignment): Don't update + the variables that may be stored in saved_offset, delta, and + data. Call instead... + (update_reallocated_descriptor): ... this new procedure. + * trans-expr.cc (gfc_trans_assignment_1): Don't omit setting the + is_alloc_lhs flag if the right hand side is an intrinsic + function. Clear the flag if the right hand side is scalar. + +2025-07-15 Mikael Morin <mikael@gcc.gnu.org> + + * trans-expr.cc (gfc_trans_assignment_1): Generate array + reallocation code before entering the scalarisation loops. + +2025-07-15 Filip Kastl <fkastl@suse.cz> + + * resolve.cc (resolve_select_type): Fix indentation. + +2025-07-12 Tobias Burnus <tburnus@baylibre.com> + + * invoke.texi (-Wsurprising): Note about OpenACC warning + related to PARAMATER. + * openmp.cc (resolve_omp_clauses, gfc_resolve_oacc_declare): + Accept PARAMETER for OpenACC but add surprising warning. + * trans-openmp.cc (gfc_trans_omp_variable_list, + gfc_trans_omp_clauses): Ignore PARAMETER inside clauses. + +2025-07-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/106035 + * decl.cc (build_sym): Emit an error if a symbol associated by + an IMPORT, ONLY or IMPORT, all statement is being redeclared. + (gfc_match_import): Parse and check the F2018 versions of the + IMPORT statement. For scopes other than and interface body, if + the symbol cannot be found in the host scope, generate it and + set it up such that gfc_fixup_sibling_symbols can transfer its + 'imported attribute' if it turnes out to be a not yet parsed + procedure. Test for violations of C897-8100. + * gfortran.h : Add 'import_only' to the gfc_symtree structure. + Add the enum, 'importstate', which is used for values the new + field 'import_state' in gfc_namespace. + * parse.cc (gfc_fixup_sibling_symbols): Transfer the attribute + 'imported' to the new symbol. + * resolve.cc (check_sym_import_status, check_import_status): + New functions to test symbols and expressions for violations of + F2018:C8102. + (resolve_call): Test the 'resolved_sym' against C8102 by a call + to 'check_sym_import_status'. + (gfc_resolve_expr): If the expression is OK and an IMPORT + statement has been registered in the current scope, test C102 + by calling 'check_import_status'. + (resolve_select_type): Test the declared derived type in TYPE + IS and CLASS IS statements. + +2025-07-08 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120637 + * class.cc (finalize_component): Return true, when a finalizable + component was detect and do not free it. + +2025-07-07 Mikael Morin <mikael@gcc.gnu.org> + + * trans-intrinsic.cc (conv_intrinsic_move_alloc): Add pre and + post code for the FROM and TO arguments. + +2025-07-04 Martin Jambor <mjambor@suse.cz> + + * io.cc (format_asterisk): Add a brace around static initialization + location part of the field locus. + +2025-07-03 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120843 + * resolve.cc (resolve_operator): Remove conformability check, + because it is not in the standard. + +2025-07-01 Harald Anlauf <anlauf@gmx.de> + + * coarray.cc (check_add_new_component): Treat pure and elemental + intrinsic functions the same as non-intrinsic ones. + (create_caf_add_data_parameter_type): Fix front-end memleaks. + * trans-intrinsic.cc (conv_caf_func_index): Likewise. + +2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120847 + * coarray.cc (check_add_new_comp_handle_array): Make the count + of components static to be able to create more than one. Create + an array component only for array expressions. + +2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120843 + * resolve.cc (resolve_operator): Report inconsistent coranks + only when not referencing this_image. + (gfc_op_rank_conformable): Treat coranks as inconformable only + when a coindex other then implicit this_image is used. + +2025-06-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120784 + * interface.cc (gfc_match_end_interface): Detect empty local_name. + +2025-06-26 Martin Jambor <mjambor@suse.cz> + + * match.cc (gfc_match_nullify): Initialize p to NULL; + +2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> + + * trans.cc (gfc_allocate_using_malloc): Prevent possible memory + leak when allocation was already done. + +2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> + + * resolve.cc (resolve_fl_derived0): Do not create the token + component when not in coarray lib mode. + * trans-types.cc: Do not access the token when not in coarray + lib mode. + +2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120711 + * trans-array.cc (gfc_trans_array_ctor_element): Store the value + of the offset for reuse. + +2025-06-24 Tobias Burnus <tburnus@baylibre.com> + + * trans-stmt.cc (gfc_trans_call_acc_attach_detach): New. + (gfc_trans_call): Call it. + +2025-06-24 Harald Anlauf <anlauf@gmx.de> + Jerry DeLisle <jvdelisle@gcc.gnu.org> + Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/120743 + * trans-expr.cc (gfc_conv_substring): Substring indices are of + type gfc_charlen_type_node. Convert to size_type_node for + pointer arithmetic only after offset adjustments have been made. + +2025-06-24 Mikael Morin <morin-mikael@orange.fr> + + * misc.cc (gfc_var_name_for_select_type_temp): New function. + * gfortran.h (gfc_var_name_for_select_type_temp): Declare it. + * resolve.cc (resolve_select_type): Pick a discriminating name + from the SELECT TYPE variable reference and use it in the name + of the temporary variable that is generated. Truncate name to + the buffer size. + * match.cc (select_type_set_tmp): Likewise. Pass the + discriminating name... + (select_intrinsic_set_tmp): ... to this function. Use the + discriminating name likewise. Augment the buffer size to match + that of select_type_set_tmp and resolve_select_type. + +2025-06-23 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (OACC_WAIT_CLAUSES): Add if clause. + * trans-openmp.cc (gfc_trans_oacc_wait_directive): Handle it. + +2025-06-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120784 + * interface.cc (gfc_match_end_interface): If a use-associated + symbol is renamed, use the local_name for checking. + +2025-06-19 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/120713 + * trans-array.cc (gfc_trans_deferred_array): Statically + initialize deferred length variable for SAVEd character arrays. + +2025-06-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/82480 + * check.cc (gfc_check_fstat): Extend checks to INTENT(OUT) arguments. + (gfc_check_fstat_sub): Likewise. + (gfc_check_stat): Likewise. + (gfc_check_stat_sub): Likewise. + * intrinsic.texi: Adjust documentation. + +2025-06-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/51961 + * resolve.cc (conformable_arrays): Use modified rank check when + MOLD= expression is given. + +2025-06-12 Yuao Ma <c8ef@outlook.com> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/113152 + * intrinsic.texi: Document new half-revolution trigonometric + functions. Reorder doc for atand. + +2025-06-06 Tobias Burnus <tburnus@baylibre.com> + Sandra Loosemore <sloosemore@baylibre.com> + + * f95-lang.cc (ATTR_PURE_NOTHROW_LIST): Define. + * trans-expr.cc (get_builtin_fn): Handle omp_get_num_devices + and omp_get_intrinsic_device. + * gfortran.h (gfc_option_t): Add disable_omp_... for them. + * options.cc (gfc_handle_option): Handle them with + -fno-builtin-. + +2025-06-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120483 + * trans-expr.cc (gfc_conv_substring): Use pointer arithmetic on + static allocatable char arrays. + +2025-06-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/99838 + * data.cc (gfc_assign_data_value): For a new initializer use the + location from the constructor as fallback. + +2025-05-30 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102599 + PR fortran/114022 + * expr.cc (simplify_complex_array_inquiry_ref): Helper function for + simplification of inquiry references (%re/%im) of constant complex + arrays. + (find_inquiry_ref): Use it for handling %re/%im inquiry references + of complex arrays. + (scalarize_intrinsic_call): Fix frontend memleak. + * primary.cc (gfc_match_varspec): When the reference is NULL, the + previous simplification has succeeded in evaluating inquiry + references also of arrays. + +2025-05-30 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120355 + * interface.cc (compare_parameter): If the global function has a + result clause, take typespec from there for the comparison against + the dummy argument. + +2025-05-30 Julian Brown <julian@codesourcery.com> + Tobias Burnus <tburnus@baylibre.com> + + * parse.cc (tree.h, fold-const.h, tree-hash-traits.h): Add includes + (for additions to omp-general.h). + +2025-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * check.cc(check_c_ptr_2): Rephrase error message + for clarity. + +2025-05-28 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/113152 + * simplify.cc (gfc_simplify_cospi, gfc_simplify_sinpi): Avoid using + mpfr_fmod_ui in the MPFR < 4.2.0 version. + +2025-05-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119856 + * io.cc: Set missing comma error checks to STD_STD_LEGACY. + +2025-05-28 Yuao Ma <c8ef@outlook.com> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/113152 + * gfortran.h (enum gfc_isym_id): Add new enum. + * intrinsic.cc (add_functions): Register new intrinsics. Changing the call + from gfc_resolve_trigd{,2} to gfc_resolve_trig{,2}. + * intrinsic.h (gfc_simplify_acospi, gfc_simplify_asinpi, + gfc_simplify_asinpi, gfc_simplify_atanpi, gfc_simplify_atan2pi, + gfc_simplify_cospi, gfc_simplify_sinpi, gfc_simplify_tanpi): New. + (gfc_resolve_trig): Rename from gfc_resolve_trigd. + (gfc_resolve_trig2): Rename from gfc_resolve_trigd2. + * iresolve.cc (gfc_resolve_trig): Rename from gfc_resolve_trigd. + (gfc_resolve_trig2): Rename from gfc_resolve_trigd2. + * mathbuiltins.def: Add 7 new math builtins and re-align. + * simplify.cc (gfc_simplify_acos, gfc_simplify_asin, + gfc_simplify_acosd, gfc_simplify_asind): Revise error message. + (gfc_simplify_acospi, gfc_simplify_asinpi, + gfc_simplify_asinpi, gfc_simplify_atanpi, gfc_simplify_atan2pi, + gfc_simplify_cospi, gfc_simplify_sinpi, gfc_simplify_tanpi): New. + +2025-05-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/101735 + * primary.cc (gfc_match_varspec): Correct order of logic. + +2025-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * check.cc (gfc_check_c_associated): Use new helper functions. + Only call check_c_ptr_1 if optional c_ptr_2 tests succeed. + (check_c_ptr_1): Handle only c_ptr_1 checks. + (check_c_ptr_2): Expand checks for c_ptr_2 and handle cases + where there is no derived pointer in the gfc_expr and check + the inmod_sym_id only if it exists. + * misc.cc (gfc_typename): Handle the case for BT_VOID rather + than throw an internal error. + +2025-05-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/101735 + * expr.cc (find_inquiry_ref): If an inquiry reference applies to + a substring, use that, and calculate substring length if needed. + * primary.cc (extend_ref): Also handle attaching to end of + reference chain for appending. + (gfc_match_varspec): Discrimate between arrays of character and + substrings of them. If a substring is taken from a character + component of a derived type, get the proper typespec so that + inquiry references work correctly. + (gfc_match_rvalue): Handle corner case where we hit a seemingly + dangling '%' and missed an inquiry reference. Try another match. + +2025-05-27 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * error.cc (gfc_diagnostic_start_span): Update for diagnostic.h + changes. + +2025-05-19 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120099 + * trans-types.cc (gfc_return_by_reference): Intrinsic functions + returning complex numbers may return their result by reference + with -ff2c. + +2025-05-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/85750 + * resolve.cc (resolve_symbol): Reorder conditions when to apply + default-initializers. + +2025-05-15 Tobias Burnus <tburnus@baylibre.com> + + * trans-openmp.cc (gfc_omp_deep_mapping_do): Handle SSA_NAME if + a def_stmt is available. + +2025-05-14 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120139 + * dump-parse-tree.cc (get_c_type_name): If no constant + size of an array exists, output an asterisk. + +2025-05-14 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120107 + * dump-parse-tree.cc (write_type): Do not dump non-interoperable + types. + +2025-05-14 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/120225 + * simplify.cc (gfc_simplify_cotand): Fix used argument in + mpfr_tanu call. + +2025-05-14 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/120225 + * simplify.cc: Include "trigd_fe.inc" only with MPFR < 4.2.0. + (rad2deg, rad2deg): Only define if MPFR < 4.2.0. + (gfc_simplify_acosd, gfc_simplify_asind, gfc_simplify_atand, + gfc_simplify_atan2d, gfc_simplify_cosd, gfc_simplify_tand, + gfc_simplify_cotand): Use mpfr_...u functions with MPFR >= 4.2.0. + +2025-05-13 Yuao Ma <c8ef@outlook.com> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/113413 + * intrinsic.cc (do_check): Minor doc polish. + (add_functions): Add atand(y, x) mapping. + * intrinsic.texi: Update atand example. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + Daniil Kochergin <daniil2472s@gmail.com> + Tobias Burnus <tburnus@baylibre.com> + + PR fortran/120191 + * trans-intrinsic.cc (strip_kind_from_actual): Remove. + (gfc_conv_intrinsic_minmaxloc): Don't call strip_kind_from_actual. + Free and clear kind_arg->expr if non-NULL. Set back_arg->name to + "%VAL" instead of a loop looking for last argument. Remove actual + variable, use array_arg instead. Free and clear dim_arg->expr if + non-NULL for BT_CHARACTER cases instead of using a loop. + +2025-05-11 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120163 + * gfortran.h: Add formal_resolved to gfc_symbol. + * resolve.cc (gfc_resolve_formal_arglist): Set it. + (resolve_function): Do not call gfc_get_formal_from_actual_arglist + if we already resolved a formal arglist. + (resolve_call): Likewise. + +2025-05-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102891 + * dependency.cc (gfc_ref_needs_temporary_p): Within an array + reference, inquiry references of complex variables generally + need a temporary. + +2025-05-10 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120193 + * trans-types.cc (gfc_init_types): For flag_unsigned use + build_distinct_type_copy or build_variant_type_copy from + gfc_character_types[index_char] if index_char > -1 instead of + gfc_character_types[index_char] or + gfc_build_unsigned_type (&gfc_unsigned_kinds[index]). + +2025-05-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120179 + * match.cc (gfc_match_do): Do not attempt to match end-of-statement + twice. + +2025-05-07 Paul Thomas <pault@gcc.gnu.org> + and Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/119948 + * primary.cc (match_variable): Module procedures with sym the + same as result can be treated as variables, although marked + external. + +2025-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * check.cc (gfc_check_c_associated): Modify checks to avoid + ICE and allow use, intrinsic :: iso_c_binding from a separate + module file. + +2025-05-06 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119928 + * interface.cc (gfc_check_dummy_characteristics): Do not issue + error if one dummy symbol has been generated from an actual + argument and the other one has OPTIONAL, INTENT, ALLOCATABLE, + POINTER, TARGET, VALUE, ASYNCHRONOUS or CONTIGUOUS. + (gfc_get_formal_from_actual_arglist): Do nothing if symbol + is a class. + +2025-05-04 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119986 + * expr.cc (is_subref_array): When searching for array references, + do not terminate early so that inquiry references to complex + components work. + * primary.cc (gfc_variable_attr): A substring reference can refer + to either a scalar or array character variable. Adjust search + accordingly. + +2025-05-01 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/119948 + * resolve.cc (gfc_impure_variable): The result of a module + procedure with an interface declaration is not impure even if + the current namespace is not the same as the symbol's. + +2025-04-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102900 + * trans-decl.cc (gfc_generate_function_code): Use sym->result + when generating fake result decl for functions returning + allocatable or pointer results. + * trans-expr.cc (gfc_conv_procedure_call): When checking the + pointer status of an actual argument passed to a non-allocatable, + non-pointer dummy which is of type CLASS, do not check the + class container of the actual if it is just a procedure pointer. + (gfc_trans_pointer_assignment): Fix treatment of assignment to + NULL of a procedure pointer. + +2025-04-23 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119200 + * check.cc (gfc_check_lcobound): Use locus from intrinsic_where. + (gfc_check_image_index): Same. + (gfc_check_num_images): Same. + (gfc_check_team_number): Same. + (gfc_check_this_image): Same. + (gfc_check_ucobound): Same. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * match.cc (match_exit_cycle): Allow to exit team block. + (gfc_match_end_team): Create end_team node also without + parameter list. + * trans-intrinsic.cc (conv_stat_and_team): Team and team_number + only need to be a single pointer. + * trans-stmt.cc (trans_associate_var): Create a mapping coarray + token for coarray associations or it is not addressed correctly. + * trans.h (enum gfc_coarray_regtype): Add mapping mode to + coarray register. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * check.cc (gfc_check_image_index): Check for team or + team_number correctnes. + (gfc_check_num_images): Same. + * gfortran.texi: Update documentation on num_images' API + function. + * intrinsic.cc (add_functions): Update signature of image_index + and num_images. Both can take either a team handle or number. + * intrinsic.h (gfc_check_num_images): Update signature to take + either team or team_number. + (gfc_check_image_index): Can take coarray, subscripts and team + or team number now. + (gfc_simplify_image_index): Same. + (gfc_simplify_num_images): Same. + (gfc_resolve_image_index): Same. + * intrinsic.texi: Update documentation of num_images() Fortran + function. + * iresolve.cc (gfc_resolve_image_index): Update signature. + * simplify.cc (gfc_simplify_num_images): Update signature and + remove undocumented failed argument. + (gfc_simplify_image_index): Add team or team number argument. + * trans-intrinsic.cc (conv_stat_and_team): Because being + optional teams need to be a pointer to the opaque pointer. + (conv_caf_sendget): Correct call; was two arguments short. + (trans_image_index): Support team or team_number. + (trans_num_images): Same. + (conv_intrinsic_cobound): Adapt to changed signature of + num_images in call. + * trans-stmt.cc (gfc_trans_sync): Same. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + * check.cc (gfc_check_this_image): Check the three different + parameter lists possible for this_image and sort them correctly. + * gfortran.texi: Update documentation on this_image's API. + * intrinsic.cc (add_functions): Update this_image's signature. + (check_specific): Add specific check for this_image. + * intrinsic.h (gfc_check_this_image): Change to flexible + argument list. + * intrinsic.texi: Update documentation on this_image(). + * iresolve.cc (gfc_resolve_this_image): Resolve the different + arguments. + * simplify.cc (gfc_simplify_this_image): Simplify the simplify + routine. + * trans-decl.cc (gfc_build_builtin_function_decls): Update + signature of this_image. + * trans-expr.cc (gfc_caf_get_image_index): Use correct signature + of this_image. + * trans-intrinsic.cc (trans_this_image): Adapt to correct + signature. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/88154 + PR fortran/88960 + PR fortran/97210 + PR fortran/103001 + * check.cc (team_type_check): Check a type for being team_type + from the iso_fortran_env module. + (gfc_check_image_status): Use team_type check. + (gfc_check_get_team): Check for level argument. + (gfc_check_team_number): Use team_type check. + * expr.cc (gfc_check_assign): Add treatment for returning + team_type in caf-single mode. + * gfortran.texi: Add/Update documentation for get_team and + team_number API functions. + * intrinsic.cc (add_functions): Update get_team signature. + * intrinsic.h (gfc_resolve_get_team): Add prototype. + * intrinsic.texi: Add/Update documentation for get_team and + team_number Fortran functions. + * iresolve.cc (gfc_resolve_get_team): Resolve return type to be + of type team_type. + * iso-fortran-env.def: Update STAT_LOCK constants. They have + nothing to do with files. Add level constants for get_team. + * libgfortran.h: Add level and unlock_stat constants. + * simplify.cc (gfc_simplify_get_team): Simply to correct return + type team_type. + * trans-decl.cc (gfc_build_builtin_function_decls): Update + get_team and image_status API prototypes to correct signatures. + * trans-intrinsic.cc (conv_intrinsic_image_status): Translate + second parameter correctly. + (conv_intrinsic_team_number): Translate optional single team + argument correctly. + (gfc_conv_intrinsic_function): Add translation of get_team. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + PR fortran/87556 + PR fortran/88254 + PR fortran/103796 + * coarray.cc (split_expr_at_caf_ref): Treat polymorphic types + correctly. Ensure resolve of expression after coindex. + (create_allocated_callback): Fix parameter of allocated function + for coarrays. + (coindexed_expr_callback): Improve detection of coarrays in + allocated function. + * decl.cc (gfc_match_end): Add team block matching. + * dump-parse-tree.cc (show_code_node): Dump change team block as + such. + * frontend-passes.cc (gfc_code_walker): Recognice team block. + * gfortran.texi: Add documentation for team api functions. + * intrinsic.texi: Add documentation about team_type in + iso_fortran_env module. + * iso-fortran-env.def (team_type): Use helper to get pointer + kind. + * match.cc (gfc_match_associate): Factor out matching of + association list, because it is used in change team as well. + (check_coarray_assoc): Ensure, that the association is to a + coarray. + (match_association_list): Match a list of association either in + associate or in change team. + (gfc_match_form_team): Match form team correctly include + new_index. + (gfc_match_change_team): Match change team with association + list. + (gfc_match_end_team): Match end team including stat and errmsg. + (gfc_match_return): Prevent return from team block. + * parse.cc (decode_statement): Sort team block. + (next_statement): Same. + (check_statement_label): Same. + (accept_statement): Same. + (verify_st_order): Same. + (parse_associate): Renamed to move_associates_to_block... + (move_associates_to_block): ... to enable reuse for change team. + (parse_change_team): Parse it as block. + (parse_executable): Same. + * parse.h (enum gfc_compile_state): Add team block as compiler + state. + * resolve.cc (resolve_scalar_argument): New function to resolve + an argument to a statement as a scalar. + (resolve_form_team): Resolve its members. + (resolve_change_team): Same. + (resolve_branch): Prevent branch from jumping out of team block. + (check_team): Removed. + * trans-decl.cc (gfc_build_builtin_function_decls): Add stat and + errmsg to team API functions and update their arguments. + * trans-expr.cc (gfc_trans_subcomponent_assign): Also null the + token when moving memory or an allocated() will not detect a + free. + * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote): + Adapt to signature change no longer a pointer-pointer. + * trans-stmt.cc (gfc_trans_form_team): Translate a form team + including new_index. + (gfc_trans_change_team): Translate a change team as a block. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87939 + * check.cc (gfc_check_move_alloc): Add stat and errmsg to + move_alloc. + * dump-parse-tree.cc (show_sync_stat): New helper function. + (show_code_node): Use show_sync_stat to print stat and errmsg. + * gfortran.h (struct sync_stat): New struct to unify stat and + errmsg handling. + * intrinsic.cc (add_subroutines): Correct signature of + move_alloc. + * intrinsic.h (gfc_check_move_alloc): Correct signature of + check_move_alloc. + * match.cc (match_named_arg): Match an optional argument to a + statement. + (match_stat_errmsg): Match a stat= or errmsg= named argument. + (gfc_match_critical): Use match_stat_errmsg to match the named + arguments. + (gfc_match_sync_team): Same. + * resolve.cc (resolve_team_argument): Resolve an expr to have + type TEAM_TYPE from iso_fortran_env. + (resolve_scalar_variable_as_arg): Resolve an argument as a + scalar type. + (resolve_sync_stat): Resolve stat and errmsg expressions. + (resolve_sync_team): Resolve a sync team statement using + sync_stat helper. + (resolve_end_team): Same. + (resolve_critical): Same. + * trans-decl.cc (gfc_build_builtin_function_decls): Correct + sync_team signature. + * trans-intrinsic.cc (conv_intrinsic_move_alloc): Store stat + an errmsg optional arguments in helper struct and use helper + to translate. + * trans-stmt.cc (trans_exit): Implement DRY pattern for + generating an _exit(). + (gfc_trans_sync_stat): Translate stat and errmsg contents. + (gfc_trans_end_team): Use helper to translate stat and errmsg. + (gfc_trans_sync_team): Same. + (gfc_trans_critical): Same. + * trans-stmt.h (gfc_trans_sync_stat): New function. + * trans.cc (gfc_deallocate_with_status): Parameterize check at + runtime to allow unallocated (co-)array when freeing a + structure. + (gfc_deallocate_scalar_with_status): Same and also add errmsg. + * trans.h (gfc_deallocate_with_status): Signature changes. + (gfc_deallocate_scalar_with_status): Same. + +2025-04-19 Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/119836 + * resolve.cc (check_pure_function): Fix checking for + an impure subprogram within a DO CONCURRENT construct. + (pure_subroutine): Ditto. + +2025-04-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/106948 + * resolve.cc (gfc_pure_function): If a function has been resolved, + but esym is not yet set, look at its attributes to see whether it + is pure or elemental. + +2025-04-15 Tobias Burnus <tburnus@baylibre.com> + + * f95-lang.cc (LANG_HOOKS_OMP_DEEP_MAPPING, + LANG_HOOKS_OMP_DEEP_MAPPING_P, LANG_HOOKS_OMP_DEEP_MAPPING_CNT): + Define. + * openmp.cc (gfc_match_omp_clause_reduction): Fix location setting. + (resolve_omp_clauses): Permit allocatable components, reject + them and polymorphic variables in PRIVATE/FIRSTPRIVATE. + * trans-decl.cc (add_clause): Set clause location. + * trans-openmp.cc (gfc_has_alloc_comps): Add ptr_ok and + shallow_alloc_only Boolean arguments. + (gfc_omp_replace_alloc_by_to_mapping): New. + (gfc_omp_private_outer_ref, gfc_walk_alloc_comps, + gfc_omp_clause_default_ctor, gfc_omp_clause_copy_ctor, + gfc_omp_clause_assign_op, gfc_omp_clause_dtor): Update call to it. + (gfc_omp_finish_clause): Minor cleanups, improve location data, + handle allocatable components. + (gfc_omp_deep_mapping_map, gfc_omp_deep_mapping_item, + gfc_omp_deep_mapping_comps, gfc_omp_gen_simple_loop, + gfc_omp_get_array_size, gfc_omp_elmental_loop, + gfc_omp_deep_map_kind_p, gfc_omp_deep_mapping_int_p, + gfc_omp_deep_mapping_p, gfc_omp_deep_mapping_do, + gfc_omp_deep_mapping_cnt, gfc_omp_deep_mapping): New. + (gfc_trans_omp_array_section): Save array descriptor in case + deep-mapping lang hook will need it. + (gfc_trans_omp_clauses): Likewise; use better clause location data. + * trans.h (gfc_omp_deep_mapping_p, gfc_omp_deep_mapping_cnt, + gfc_omp_deep_mapping): Add function prototypes. + +2025-04-13 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119669 + * interface.cc (compare_parameter): Error when mismatch between + formal argument as subroutine and function. If the dummy + argument is a known function, set its typespec. + +2025-04-12 Thomas Schwinge <tschwinge@baylibre.com> + + PR fortran/101602 + * trans-stmt.cc (gfc_trans_concurrent_locality_spec): Fix + 'static_assert'. + +2025-04-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119656 + * interface.cc (gfc_compare_actual_formal): Fix front-end memleak + when searching for matching interfaces. + * trans-expr.cc (gfc_conv_procedure_call): If there is a formal + dummy corresponding to an absent argument, use its type, and only + fall back to inferred type otherwise. + +2025-04-09 Paul Thomas <pault@gcc.gnu.org> + and Harald Anlauf <anlauf@gcc.gnu.org> + + PR fortran/119460 + * iresolve.cc (generate_reduce_op_wrapper): Increase the size + of 'tname'. Change intent of 'a' and 'b' to intent_in. + * trans-decl.cc (add_argument_checking): Do not test artificial + formal symbols. + * trans-expr.cc (gfc_conv_procedure_call): Remove reduce_scalar + and the blocks triggered by it. + * trans-intrinsic.cc (gfc_conv_intrinsic_function): Set the + result of non-character, scalar reduce to be allocatable. + +2025-04-09 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/101602 + * resolve.cc (resolve_locality_spec): Remove 'sorry, unimplemented'. + * trans-stmt.cc (struct symbol_and_tree_t): New. + (gfc_trans_concurrent_locality_spec): New. + (gfc_trans_forall_1): Call it; update to handle local and local_init. + * trans-decl.cc (gfc_start_saved_local_decls, + gfc_stop_saved_local_decls): New; moved code from ... + (gfc_process_block_locals): ... here. Call it. + * trans.h (gfc_start_saved_local_decls, + gfc_stop_saved_local_decls): Declare. + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118965 + * openmp.cc (gfc_parser_omp_clause_init_modifiers): Fix some + inconsistent code indentation. Remove code for recognizing + clauses without modifiers. Diagnose prefer_type without a + following paren. Adjust error message for an unrecognized modifier. + Diagnose missing target/targetsync modifier. + (gfc_match_omp_init): Fix more inconsistent code indentation. + +2025-03-28 Harald Anlauf <anlauf@gmx.de> + + * check.cc (gfc_invalid_boz): Correct spelling of compiler flag in + hint to -fallow-invalid-boz. + +2025-03-26 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118796 + * resolve.cc: Do not apply default initialization to a derived-type + function result if the resolved function is use-associated. + +2025-03-25 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119419 + * dump-parse-tree.cc (write_funptr_fcn): New function. + (write_type): Invoke it for C_FUNPTR. + (write_interop_decl): Do not dump vtabs. + +2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * trans-openmp.cc (gfc_trans_omp_declare_variant): Remove accidental + redeclaration of pref. + +2025-03-22 Jakub Jelinek <jakub@redhat.com> + + * resolve.cc (resolve_procedure_expression): Remove extraneous space + from the middle of diagnostics. + +2025-03-21 Paul-Antoine Arras <parras@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * trans-openmp.cc (gfc_trans_omp_clauses): Make OMP_CLAUSE_DESTROY and + OMP_CLAUSE_INIT addressable. + * types.def (BT_FN_VOID_INT_INT_PTR_PTR_PTR_INT_PTR_INT_PTR_UINT_PTR): + New. + +2025-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119406 + * resolve.cc (resolve_locality_spec): Add space in error + message. + +2025-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119403 + * interface.cc (compare_parameter): Fix typo. + +2025-03-21 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/85836 + * check.cc (get_ul_from_cst_cl): New function used in + check_operation. + (check_operation): New function used in check_reduce and + check_co_reduce. + (gfc_check_co_reduce): Use it. + (gfc_check_reduce): New function. + (gfc_check_rename): Add prototype for intrinsic with 6 arguments. + * gfortran.h : Add isym id for reduce and prototype for f6. + * intrinsic.cc (do_check): Add another argument expression and use + it in the call to the six argument specific check. + (add_sym_6): New function. + (add_functions): Add the discription of the reduce intrinsic and + add it to the intrinsic list. + * intrinsic.h : Add prototypes for gfc_check_reduce and + gfc_resolve_reduce. + * iresolve.cc (generate_reduce_op_wrapper): Generate a wrapper + subroutine for the 'operation' function to enable the library + implementation to be type agnostic and use pointer arithmetic + throughout. + (gfc_resolve_reduce): New function. + * trans-expr.cc (gfc_conv_procedure_call): Add flag for scalar + reduce. Generate a return variable 'sr' for scalar reduce, pass its + address to the library function and return it as the scalar result. + * trans-intrinsic.cc (gfc_conv_intrinsic_function): Array valued + reduce is called in same way as reshape. Fall through for call to + the scalar version. + +2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119380 + * trans-array.cc (structure_alloc_comps): Prevent freeing of + procedure pointer components. + +2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119349 + * trans-expr.cc (gfc_conv_procedure_call): Prevent deallocation + of array temporary for polymorphic temporary argument. + +2025-03-19 Harald Anlauf <anlauf@gmx.de> + + PR fortran/116706 + * trans-array.cc (gfc_is_reallocatable_lhs): Fix check on + allocatable components of derived type or class objects. + +2025-03-19 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119272 + * resolve.cc (resolve_compcall): Postpone error report when + symbol is not resolved yet for component call resolve. + +2025-03-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119338 + * resolve.cc (resolve_allocate_expr): Check F2003:C626: Type-spec + in ALLOCATE of an assumed-length character dummy argument shall be + an asterisk. + +2025-03-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/60560 + * expr.cc (gfc_traverse_expr): Do not descend into length type + parameter for negative values of auxiliary parameter f. + * resolve.cc (gfc_find_var_in_expr): New helper function to check + dependence of an expression on given variable. + (resolve_allocate_expr): Use it to determine if array bounds in an + ALLOCATE statement depend explicitly on a variable. + +2025-03-15 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/115271 + * module.cc (mio_omp_declare_simd_clauses): New, moved from ... + (mio_omp_declare_simd): ... here. Update call, write empty '( )' + if there is no declare simd but a declare variant. + (mio_omp_declare_variant): New. + (mio_symbol): Call it. + * openmp.cc (gfc_match_omp_context_selector): Add comment about + module.cc to TODO note. + * trans-stmt.h (gfc_trans_omp_declare_variant): Take additional + parent_ns argument. + * trans-decl.cc (create_function_arglist, + gfc_create_function_decl): Update call. + * trans-openmp.cc (gfc_trans_omp_declare_variant): Take new + argument, add some special case handling for attr.use_assoc. + +2025-03-13 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119118 + * dependency.cc (contains_forall_index_p): Let loop over elements + of a constructor update its control variable. Handle REF_INQUIRY + in switch statement. + (gfc_contains_implied_index_p): Likewise. + +2025-03-12 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/98903 + * array.cc (gfc_copy_array_ref): Copy team, team_type and stat. + (match_team_or_stat): Match a single team(_number)= or stat=. + (gfc_match_array_ref): Add switching to image_selector_parsing + and error handling when indices come after named arguments. + * coarray.cc (move_coarray_ref): Move also team_type. + * expr.cc (gfc_free_ref_list): Free team and stat expression. + (gfc_find_team_co): Find team or team_number in array-ref. + * gfortran.h (enum gfc_array_ref_team_type): New enum to + distinguish unset, team or team_number expression. + (gfc_find_team_co): Default searching to team= expressions. + * resolve.cc (resolve_array_ref): Check for type correctness of + team(_number) and stats in coindices. + * trans-array.cc (gfc_conv_array_ref): Ensure stat is cleared + when fcoarray=single is used. + * trans-intrinsic.cc (conv_stat_and_team): Including team_number + in conversion. + (gfc_conv_intrinsic_caf_get): Propagate team_number to ABI + routine. + (conv_caf_send_to_remote): Same. + (conv_caf_sendget): Same. + +2025-03-11 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119199 + * decl.cc (gfc_match_save): Reject SAVE statement of a COMMON block + when in a BLOCK construct. + * trans-common.cc (translate_common): Avoid NULL pointer dereference. + +2025-03-11 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119078 + * frontend-passes.cc (check_against_globals): Do not check + for abstract interfaces or dummy arguments. + * resolve.cc (gfc_verify_binding_labels): Adjust comment. + Do not put abstract interfaces or dummy argument into global + namespace. + +2025-03-10 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107143 + * dependency.cc (check_data_pointer_types): Do not just compare + for derived type, but for same derived type. + +2025-03-09 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119157 + * gfortran.h (gfc_pop_undo_symbol): Remove prototype. + * interface.cc (gfc_get_formal_from_actual_arglist): Use + gfc_commit_symbol() instead of gfc_pop_undo_symbol(). + * symbol.cc (gfc_pop_undo_symbol): Remove. + +2025-03-08 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119157 + * gfortran.h (gfc_symbol): Make ext_dummy_arglist_mismatch a + one-bit bitfield + (gfc_pop_undo_symbol): Declare prototype. + * symbol.cc (gfc_pop_undo_symbol): New function. + * interface.cc (gfc_get_formal_from_actual_arglist): Call it + for artificially introduced formal variables. + +2025-03-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119054 + * resolve.cc (resolve_elemental_actual): When checking other + actual arguments to elemental procedures, don't check + attributes of literals and function calls. + +2025-03-06 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119118 + * dependency.cc (gfc_contains_implied_index_p): Helper function to + determine if an expression has a dependence on an implied-do index. + * dependency.h (gfc_contains_implied_index_p): Add prototype. + * trans-expr.cc (gfc_conv_substring): Adjust logic to not generate + substring bounds checks before implied-do indices have been + substituted. + +2025-03-05 Mark Wielaard <mark@klomp.org> + + * lang.opt.urls: Regenerated. + +2025-03-05 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/104684 + * trans-array.cc (gfc_conv_expr_descriptor): Look at the + lang-specific akind and do a view convert when only the akind + attribute differs between pointer and allocatable array. + +2025-03-04 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119049 + PR fortran/119074 + * dump-parse-tree.cc (seen_conflict): New static varaible. + (gfc_dump_external_c_prototypes): Initialize it. If it was + set, write out a warning that -std=c23 will not work. + (write_proc): Move the work of actually writing out the + formal arglist to... + (write_formal_arglist): New function. Handle external dummy + parameters and their argument lists. If there were mismatched + arguments, output an empty argument list in pre-C23 style. + * gfortran.h (struct gfc_symbol): Add ext_dummy_arglist_mismatch + flag and formal_at. + * invoke.texi: Document -Wexternal-argument-mismatch. + * lang.opt: Put it in. + * resolve.cc (resolve_function): If warning about external + argument mismatches, build a formal from actual arglist the + first time around, and later compare and warn. + (resolve_call): Likewise + +2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/103391 + * trans-expr.cc (gfc_trans_assignment_1): Do not use poly assign + for pointer arrays on lhs (as it is done for allocatables + already). + +2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/77872 + * trans-expr.cc (gfc_get_tree_for_caf_expr): Pick up token from + decl when it is present there for class types. + +2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/77872 + * trans-expr.cc (gfc_conv_procedure_call): Use attr instead of + doing type check and branching for BT_CLASS. + +2025-03-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/101577 + * symbol.cc (verify_bind_c_derived_type): Generate error message + for derived type with no components in standard conformance mode, + indicating that this is a GNU extension. + +2025-03-03 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118747 + * trans-array.cc (gfc_trans_array_ctor_element): Remove copy to + temporary variable. + * trans-expr.cc (gfc_conv_procedure_call): Use references to + array members instead of copies when freeing after use. + Formatting fix. + +2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> + + * intrinsic.texi: Fix inconsistent capitalization of argument + names and other minor copy-editing. + +2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR fortran/47928 + * intrinsic.texi: Move the "Standard" subheading farther down. + +2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR fortran/47928 + * gfortran.texi: Move all the "Syntax" subheadings ahead of + "Description", and rename to "Synopsis". + * intrinsic.texi: Likewise. + +2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR fortran/47928 + * intrinsic.texi: Put a blank line between "@item @emph{}" + subheadings, but not more than one. + +2025-03-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR fortran/47928 + * gfortran.texi: Consistently use "@emph{Notes}:" instead of + other spellings. + * intrinsic.texi: Likewise. Also fix an inconsistent capitalization + and remove a redundant "Standard" entry. + +2025-03-01 Harald Anlauf <anlauf@gmx.de> + + * match.cc (gfc_match_nullify): Free matched expression when + cleaning up. + * primary.cc (match_variable): Initialize result to NULL. + +2025-02-28 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118730 + * resolve.cc: Mark unused derived type variable with finalizers + referenced to execute finalizer when leaving scope. + +2025-02-27 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118789 + * trans-stmt.cc (trans_associate_var): Compare pointed to types when + expr to associate is already a pointer. + +2025-02-26 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/108233 + * trans-expr.cc (gfc_trans_assignment_1): Remove SAVE_EXPR on lhs. + +2025-02-25 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * coarray.cc (fixup_comp_refs): For class types set correct + component (class) type. + (split_expr_at_caf_ref): Provide location. + * trans-intrinsic.cc (conv_caf_send_to_remote): Look at + generated formal argument and not declared one to detect + descriptor arrays. + (conv_caf_sendget): Same. + +2025-02-25 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * trans-intrinsic.cc (conv_caf_sendget): Use the size of data + transferred between the two images and not the descritor's size. + +2025-02-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/48958 + * trans-array.cc (gfc_trans_deferred_array): Initialize the data + component of non-saved pointers when -fcheck=pointer is set. + +2025-02-21 Tobias Burnus <tburnus@baylibre.com> + + * trans-array.cc (gfc_full_array_size): Obtain the rank from + the array descriptor for assumed rank. + (gfc_tree_array_size): Likewise; permit expr = NULL to operate + only the tree. + (gfc_conv_descriptor_stride_get): Update for added assumed-rank + array types. + * trans-openmp.cc (gfc_omp_finish_clause): Likewise. + * trans-types.cc (gfc_build_array_type, gfc_get_derived_type, + gfc_get_array_descr_info): Likewise. + * trans.h (enum gfc_array_kind): Add + GFC_ARRAY_ASSUMED_RANK_{ALLOCATABLE,POINTER{,_CONT}}. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * gfortran.texi: Remove deprecated functions from documentation. + * trans-decl.cc (gfc_build_builtin_function_decls): Remove + decprecated function decls. + * trans-intrinsic.cc (gfc_conv_intrinsic_exponent): Remove + deprecated/no longer needed routines. + * trans.h: Remove unused decls. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * coarray.cc (rewrite_caf_send): Rewrite to + transfer_between_remotes when both sides of the assignment have + a coarray. + (coindexed_code_callback): Prevent duplicate rewrite. + * gfortran.texi: Add documentation for transfer_between_remotes. + * intrinsic.cc (add_subroutines): Add intrinsic symbol for + caf_sendget to allow easy rewrite to transfer_between_remotes. + * trans-decl.cc (gfc_build_builtin_function_decls): Add + prototype for transfer_between_remotes. + * trans-intrinsic.cc (conv_caf_vector_subscript_elem): Mark as + deprecated. + (conv_caf_vector_subscript): Same. + (compute_component_offset): Same. + (conv_expr_ref_to_caf_ref): Same. + (conv_stat_and_team): Extract stat and team from expr. + (gfc_conv_intrinsic_caf_get): Use conv_stat_and_team. + (conv_caf_send_to_remote): Same. + (has_ref_after_cafref): Mark as deprecated. + (conv_caf_sendget): Translate to transfer_between_remotes. + * trans.h: Add prototype for transfer_between_remotes. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * coarray.cc (move_coarray_ref): Move the coarray reference out + of the given one. Especially when there is a regular array ref. + (fixup_comp_refs): Move components refs to a derived type where + the codim has been removed, aka a new type. + (split_expr_at_caf_ref): Correctly split the reference chain. + (remove_caf_ref): Simplify. + (create_get_callback): Fix some deficiencies. + (create_allocated_callback): Adapt to new signature of split. + (create_send_callback): New function. + (rewrite_caf_send): Rewrite a call to caf_send to + caf_send_to_remote. + (coindexed_code_callback): Treat caf_send and caf_sendget + correctly. + * gfortran.h (enum gfc_isym_id): Add SENDGET-isym. + * gfortran.texi: Add documentation for send_to_remote. + * resolve.cc (gfc_resolve_code): No longer generate send_by_ref + when allocatable coarray (component) is on the lhs. + * trans-decl.cc (gfc_build_builtin_function_decls): Add + caf_send_to_remote decl. + * trans-intrinsic.cc (conv_caf_func_index): Ensure the static + variables created are not in a block-scope. + (conv_caf_send_to_remote): Translate caf_send_to_remote calls. + (conv_caf_send): Renamed to conv_caf_sendget. + (conv_caf_sendget): Renamed from conv_caf_send. + (gfc_conv_intrinsic_subroutine): Branch correctly for + conv_caf_send and sendget. + * trans.h: Correct decl. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * coarray.cc (create_allocated_callback): Add creating remote + side procedure for checking allocation status of coarray. + (rewrite_caf_allocated): Rewrite ALLOCATED on coarray to use caf + routine. + (coindexed_expr_callback): Exempt caf_is_present_on_remote from + being rewritten again. + * gfortran.h (enum gfc_isym_id): Add caf_is_present_on_remote + id. + * gfortran.texi: Add documentation for caf_is_present_on_remote. + * intrinsic.cc (add_functions): Add caf_is_present_on_remote + symbol. + * trans-decl.cc (gfc_build_builtin_function_decls): Define + interface of caf_is_present_on_remote. + * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote): + Translate caf_is_present_on_remote. + (trans_caf_is_present): Remove. + (caf_this_image_ref): Remove. + (gfc_conv_allocated): Take out coarray treatment, because that + is rewritten to caf_is_present_on_remote now. + (gfc_conv_intrinsic_function): Handle caf_is_present_on_remote + calls. + * trans.h: Add symbol for caf_is_present_on_remote and remove + old one. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * coarray.cc (get_arrayspec_from_expr): Treat array result of + function calls correctly. + (remove_coarray_from_derived_type): Prevent memory loss. + (add_caf_get_from_remote): Correct locus. + (find_comp): New function to find or create a new component in a + derived type. + (check_add_new_comp_handle_array): Handle allocatable arrays or + non-pure/non-elemental functions in indexes of coarrays. + (check_add_new_component): Use above function. + (create_get_parameter_type): Rename to + create_caf_add_data_parameter_type. + (create_caf_add_data_parameter_type): Renaming of variable and + make the additional data a coarray. + (remove_caf_ref): Factor out to reuse in other caf-functions. + (create_get_callback): Use function factored out, set locus + correctly and ensure a kind is set for parameters. + (add_caf_get_intrinsic): Rename to add_caf_get_from_remote and + rename some variables. + (coindexed_expr_callback): Skip over function created by the + rewriter. + (coindexed_code_callback): Filter some intrinsics not to + process. + (gfc_coarray_rewrite): Rewrite also contained functions. + * trans-intrinsic.cc (gfc_conv_intrinsic_caf_get): Reflect + changed order on caf_get_from_remote (). + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * gfortran.texi: Rename caf_get_by_ct to caf_get_from_remote. + * trans-decl.cc (gfc_build_builtin_function_decls): Rename + intrinsic. + * trans-intrinsic.cc (conv_caf_func_index): Factor out + functionality to be reused by other caf-functions. + (conv_caf_add_call_data): Same. + (gfc_conv_intrinsic_caf_get): Use functions factored out. + * trans.h: Rename intrinsic symbol. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * Make-lang.in: Add coarray.cc. + * coarray.cc: New file. + * gfortran.h (gfc_coarray_rewrite): New procedure. + * parse.cc (rewrite_expr_tree): Add entrypoint for rewriting + expression trees. + * resolve.cc (gfc_resolve_ref): Remove caf_lhs handling. + (get_arrayspec_from_expr): Moved to rewrite.cc. + (remove_coarray_from_derived_type): Same. + (convert_coarray_class_to_derived_type): Same. + (split_expr_at_caf_ref): Same. + (check_add_new_component): Same. + (create_get_parameter_type): Same. + (create_get_callback): Same. + (add_caf_get_intrinsic): Same. + (resolve_variable): Remove caf_lhs handling. + +2025-02-17 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/115271 + * gfortran.h (gfc_omp_namelist): Change need_device_ptr to adj_args + union and add more flags. + * openmp.cc (gfc_match_omp_declare_variant, + gfc_resolve_omp_declare): For adjust_args, handle need_device_addr + and numeric values/ranges besides dummy argument names. + (resolve_omp_dispatch): Remove bogus a adjust_args check. + * trans-decl.cc (gfc_handle_omp_declare_variant): New. + (gfc_generate_module_vars, gfc_generate_function_code): Call it. + * trans-openmp.cc (gfc_trans_omp_declare_variant): Handle numeric + values/ranges besides dummy argument names. + +2025-02-17 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/118862 + * trans-expr.cc (gfc_conv_cst_int_power): Use functions for + unsigned wide integer. + (gfc_conv_cst_uint_power): Avoid generating the mask if it would + overflow an unsigned HOST_WIDE_INT. Format fixes. + +2025-02-16 Thomas Koenig <tkoenig@gcc.gnu.org> + + * dump-parse-tree.cc (show_attr): Remove double output + of attr->save. + +2025-02-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118080 + * gfortran.texi: Adjust documentation. + * trans-decl.cc (create_function_arglist): Adjust to pass hidden + presence flag also for derived type dummies with VALUE,OPTIONAL + attribute. + * trans-expr.cc (gfc_conv_expr_present): Expect hidden presence + flag also for derived type dummies with VALUE,OPTIONAL attribute. + (conv_cond_temp): Adjust to allow derived types. + (conv_dummy_value): Extend to handle derived type dummies with + VALUE,OPTIONAL attribute. + (gfc_conv_procedure_call): Adjust for actual arguments passed to + derived type dummies with VALUE,OPTIONAL attribute. + * trans-types.cc (gfc_get_function_type): Adjust fndecl for + hidden presence flag. + +2025-02-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/117430 + * resolve.cc (resolve_transfer): Change gfc_notify_std to + gfc_error. + +2025-02-15 Andrew Pinski <pinskia@gcc.gnu.org> + + PR fortran/118159 + * invoke.texi: Remove mention of defunct web site for Coco. + +2025-02-15 Thomas Koenig <tkoenig@gcc.gnu.org> + + * frontend-passes.cc (check_externals_procedure): Copy + typespec from old to new symbol. + +2025-02-13 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/118845 + * interface.cc (compare_parameter): If the formal attribute has been + generated from an actual argument list, also output an pointer to + there in case of an error. + (gfc_get_formal_from_actual_arglist): Set function and subroutine + attributes and (if it is a function) the typespec from the actual + argument. + +2025-02-11 Sandra Loosemore <sloosemore@baylibre.com> + + * trans-openmp.cc (gfc_trans_omp_declare_variant): Update call to + omp_check_context_selector. + (gfc_trans_omp_metadirective): Likewise. + +2025-02-10 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/24878 + * interface.cc (compare_parameter): Better wording on + error message. + +2025-02-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/56423 + * resolve.cc (resolve_structure_cons): Check rank of pointer target; + reject pointer target with vector subscripts. + +2025-02-09 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/24878 + * interface.cc (compare_parameter): Check global subroutines + passed as actual arguments for subroutine / function and + function type. + +2025-02-08 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/107067 + * parse.cc (parse_omp_do): Diagnose missing "OMP END METADIRECTIVE" + after loop. + (parse_omp_structured_block): Likewise for strictly structured block. + (parse_omp_metadirective_body): Use better test for variants ending + at different places. Issue a user diagnostic at the end if any + were inconsistent, instead of calling gcc_assert. + +2025-02-07 Harald Anlauf <anlauf@gmx.de> + + PR fortran/59252 + * trans-expr.cc (gfc_trans_subcomponent_assign): Initialize + allocatable non-deferred character with NULL properly. + +2025-02-07 Tomáš Trnka <trnka@scm.com> + + PR fortran/116829 + * trans-decl.cc (init_intent_out_dt): Always call + gfc_init_default_dt() for BT_DERIVED to apply s->value if the + symbol isn't allocatable. Also simplify the logic a bit. + +2025-02-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/118750 + * resolve.cc (resolve_assoc_var): If the target expression has + a rank, do not use gfc_expression_rank, since it will return 0 + if the function is elemental. Resolution will have produced the + correct rank. + +2025-02-05 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118740 + * openmp.cc (gfc_match_omp_context_selector, match_omp_metadirective): + Change sorry to sorry_at and use gfc_current_locus as location. + * trans-openmp.cc (gfc_trans_omp_clauses): Likewise, but use n->where. + +2025-02-05 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118745 + * trans-openmp.cc (gfc_trans_omp_declare_variant): Use + append_args_list in the condition for the append_arg location. + +2025-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/47485 + * cpp.cc: fix -MT/-MQ adding additional target instead of + replacing the default. + +2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> + + * arith.cc (arith_power): Handle modular arithmetic for + BT_UNSIGNED. + (eval_intrinsic): Error for unsigned exponentiation with + -pedantic. + * expr.cc (gfc_type_convert_binary): Use type of first + argument for unsigned exponentiation. + * gfortran.texi: Mention arithmetic exponentiation. + * resolve.cc (resolve_operator): Allow unsigned exponentiation. + * trans-decl.cc (gfc_build_intrinsic_function_decls): Build + declarations for unsigned exponentiation. + * trans-expr.cc (gfc_conv_cst_uint_power): New function. + (gfc_conv_power_op): Call it. Handle unsigned exponentiation. + * trans.h (gfor_fndecl_unsigned_pow_list): Add declaration. + +2025-02-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/93289 + * decl.cc (gfc_set_constant_character_len): Downgrade different + string lengths in character array constructor to legacy extension. + +2025-01-31 Harald Anlauf <anlauf@gmx.de> + + PR fortran/108454 + * resolve.cc (resolve_common_blocks): Initialize variable. + (resolve_symbol): If a symbol is already registered with a COMMON + block, do not search for an interface with the same name. + +2025-01-31 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/118714 + * parse.cc (parse_omp_dispatch): Add missing pop_state. + +2025-01-30 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Tobias Burnus <tobias@codesourcery.com> + Paul-Antoine Arras <pa@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * decl.cc (gfc_match_end): Handle COMP_OMP_BEGIN_METADIRECTIVE and + COMP_OMP_METADIRECTIVE. + * dump-parse-tree.cc (show_omp_node): Handle EXEC_OMP_METADIRECTIVE. + (show_code_node): Likewise. + * gfortran.h (enum gfc_statement): Add ST_OMP_METADIRECTIVE, + ST_OMP_BEGIN_METADIRECTIVE, and ST_OMP_END_METADIRECTIVE. + (struct gfc_omp_clauses): Rename target_first_st_is_teams to + target_first_st_is_teams_or_meta. + (struct gfc_omp_variant): New. + (gfc_get_omp_variant): New. + (struct gfc_st_label): Add omp_region field. + (enum gfc_exec_op): Add EXEC_OMP_METADIRECTIVE. + (struct gfc_code): Add omp_variants fields. + (gfc_free_omp_variants): Declare. + (match_omp_directive): Declare. + (is_omp_declarative_stmt): Declare. + * io.cc (format_asterisk): Adjust initializer. + * match.h (gfc_match_omp_begin_metadirective): Declare. + (gfc_match_omp_metadirective): Declare. + * openmp.cc (gfc_omp_directives): Uncomment metadirective. + (gfc_match_omp_eos): Adjust to match context selectors. + (gfc_free_omp_variants): New. + (gfc_match_omp_clauses): Remove context_selector parameter and adjust + to use gfc_match_omp_eos instead. + (match_omp): Adjust call to gfc_match_omp_clauses. + (gfc_match_omp_context_selector): Add metadirective_p parameter and + adjust error-checking. Adjust matching of simd clauses. + (gfc_match_omp_context_selector_specification): Adjust parameters + so it can be used for metadirective as well as declare variant. + (match_omp_metadirective): New. + (gfc_match_omp_begin_metadirective): New. + (gfc_match_omp_metadirective): New. + (resolve_omp_metadirective): New. + (resolve_omp_target): Handle metadirectives. + (gfc_resolve_omp_directive): Handle EXEC_OMP_METADIRECTIVE. + * parse.cc (gfc_matching_omp_context_selector): New. + (gfc_in_omp_metadirective_body): New. + (gfc_omp_region_count): New. + (decode_omp_directive): Handle ST_OMP_BEGIN_METADIRECTIVE and + ST_OMP_METADIRECTIVE. + (match_omp_directive): New. + (case_omp_structured_block): Define. + (case_omp_do): Define. + (gfc_ascii_statement): Handle ST_OMP_BEGIN_METADIRECTIVE, + ST_OMP_END_METADIRECTIVE, and ST_OMP_METADIRECTIVE. + (accept_statement): Handle ST_OMP_METADIRECTIVE and + ST_OMP_BEGIN_METADIRECTIVE. + (gfc_omp_end_stmt): New, split from... + (parse_omp_do): ...here, and... + (parse_omp_structured_block): ...here. Handle metadirectives, + plus "allocate", "atomic", and "dispatch" which were missing. + (parse_omp_oacc_atomic): Handle "end metadirective". + (parse_openmp_allocate_block): Likewise. + (parse_omp_dispatch): Likewise. + (parse_omp_metadirective_body): New. + (parse_executable): Handle metadirective. Use new case macros + defined above. + (gfc_parse_file): Initialize metadirective state. + (is_omp_declarative_stmt): New. + * parse.h (enum gfc_compile_state): Add COMP_OMP_METADIRECTIVE + and COMP_OMP_BEGIN_METADIRECTIVE. + (gfc_omp_end_stmt): Declare. + (gfc_matching_omp_context_selector): Declare. + (gfc_in_omp_metadirective_body): Declare. + (gfc_omp_metadirective_region_count): Declare. + * resolve.cc (gfc_resolve_code): Handle EXEC_OMP_METADIRECTIVE. + * st.cc (gfc_free_statement): Likewise. + * symbol.cc (compare_st_labels): Handle labels within a metadirective + body. + (gfc_get_st_label): Likewise. + * trans-decl.cc (gfc_get_label_decl): Encode the metadirective region + in the label_name. + * trans-openmp.cc (gfc_trans_omp_directive): Handle + EXEC_OMP_METADIRECTIVE. + (gfc_trans_omp_set_selector): New, split/adapted from code.... + (gfc_trans_omp_declare_variant): ...here. + (gfc_trans_omp_metadirective): New. + * trans-stmt.h (gfc_trans_omp_metadirective): Declare. + * trans.cc (trans_code): Handle EXEC_OMP_METADIRECTIVE. + +2025-01-30 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.h (gfc_omp_declare_variant): Add append_args_list. + * openmp.cc (gfc_parser_omp_clause_init_modifiers): New; + splitt of from ... + (gfc_match_omp_init): ... here; call it. + (gfc_match_omp_declare_variant): Update to handle append_args + clause; some syntax handling fixes. + * trans-openmp.cc (gfc_trans_omp_declare_variant): Handle + append_args clause; add some diagnostic. + +2025-01-29 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118683 + * trans-expr.cc (gfc_conv_procedure_call): The bounds update for + passing to assumed-rank dummies shall also handle component + references besides inquiry references. + +2025-01-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/110993 + * frontend-passes.cc (check_externals_procedure): Do not compare + interfaces of a non-bind(C) procedure against a bind(C) global one. + (check_against_globals): Use local name from rename-on-use in the + search for interfaces. + +2025-01-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/118640 + * resolve.cc (generate_component_assignments): Make sure that + the rhs temporary does not pick up the optional attribute from + the lhs. + +2025-01-26 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (gfc_omp_directives): Uncomment unroll and tile lines + as the directives are by now implemented. + +2025-01-26 Sandra Loosemore <sloosemore@baylibre.com> + + * openmp.cc (resolve_omp_atomic): Fix typo in error message. + +2025-01-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/58857 + * class.cc (gfc_find_derived_vtab): Declare some frontend generated + variables and procedures (_vtab, _copy, _deallocate) as artificial. + (find_intrinsic_vtab): Likewise. + * trans-decl.cc (check_block_data_decls): New helper function. + (gfc_generate_block_data): Use it to emit warnings for variables + declared in a BLOCK DATA program unit but not in a COMMON block. + +2025-01-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118613 + * trans-intrinsic.cc (gfc_conv_intrinsic_minmaxval): Adjust algorithm + for inlined version of MINLOC and MAXLOC so that arguments are only + evaluted once, and create temporaries where necessary. Document + change of algorithm. + +2025-01-23 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/96087 + * trans-decl.cc (gfc_get_symbol_decl): If a dummy is missing a + backend decl, it is likely that it has come from a module proc + interface. Look for the formal symbol by name in the containing + proc and use its backend decl. + * trans-expr.cc (gfc_apply_interface_mapping_to_expr): For the + same reason, match the name, rather than the symbol address to + perform the mapping. + +2025-01-20 Harald Anlauf <anlauf@gmx.de> + + PR fortran/107122 + * openmp.cc (resolve_omp_clauses): Add 'with' to error message text. + +2025-01-20 Harald Anlauf <anlauf@gmx.de> + + PR fortran/81978 + * trans-array.cc (gfc_conv_array_parameter): Do not copy back data + if actual array parameter has the PARAMETER attribute. + * trans-expr.cc (gfc_conv_subref_array_arg): Likewise. + +2025-01-16 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118321 + * trans-openmp.cc (gfc_trans_omp_declare_variant): Honor hidden + arguments for append_arg's need_device_ptr. + +2025-01-16 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/118359 + * dump-parse-tree.cc (show_external_symbol): New function. + (write_type): Add prototype, put in restrictions on what not to dump. + (has_cfi_cdesc): New function. + (need_iso_fortran_binding): New function. + (gfc_dump_c_prototypes): Adjust to take only a file output. Add + "#include <ISO_Fortran_binding.h" if CFI_cdesc_t is found. + Traverse global namespaces to dump types and the globalsymol list + to dump external symbols. + (gfc_dump_external_c_prototypes): Traverse global namespaces. + (get_c_type_name): Handle CFI_cdesc_t. + (write_proc): Also pass array spec to get_c_type_name. + * gfortran.h (gfc_dump_c_prototypes): Adjust prototype. + * parse.cc (gfc_parse_file): Adjust call to gfc_dump_c_prototypes. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * openmp.cc (gfc_omp_absent_contains_clause): Use an Oxford comma + in the message. + +2025-01-16 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118441 + * trans-intrinsic.cc (gfc_get_symbol_for_expr): Use + gfc_new_charlen for character-returning functions. + +2025-01-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/71884 + * resolve.cc (resolve_allocate_expr): Reject intrinsic NULL as + source-expr. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Marcel Vollweiler <marcel@codesourcery.com> + + PR middle-end/114596 + PR middle-end/112779 + PR middle-end/113904 + * trans-openmp.cc (gfc_trans_omp_declare_variant): Update for changes + to omp-general.h interfaces. + +2025-01-14 Anuj Mohite <anujmohite001@gmail.com> + + * dump-parse-tree.cc (show_code_node): Updated to use + c->ext.concur.forall_iterator instead of c->ext.forall_iterator. + * frontend-passes.cc (index_interchange): Updated to + use c->ext.concur.forall_iterator instead of c->ext.forall_iterator. + (gfc_code_walker): Likewise. + * gfortran.h (enum locality_type): Added new enum for locality types + in DO CONCURRENT constructs. + * match.cc (match_simple_forall): Updated to use + new_st.ext.concur.forall_iterator instead of new_st.ext.forall_iterator. + (gfc_match_forall): Likewise. + (gfc_match_do): Implemented support for matching DO CONCURRENT locality + specifiers (LOCAL, LOCAL_INIT, SHARED, DEFAULT(NONE), and REDUCE). + * parse.cc (parse_do_block): Updated to use + new_st.ext.concur.forall_iterator instead of new_st.ext.forall_iterator. + * resolve.cc (struct check_default_none_data): Added struct + check_default_none_data. + (do_concur_locality_specs_f2023): New function to check compliance + with F2023's C1133 constraint for DO CONCURRENT. + (check_default_none_expr): New function to check DEFAULT(NONE) + compliance. + (resolve_locality_spec): New function to resolve locality specs. + (gfc_count_forall_iterators): Updated to use + code->ext.concur.forall_iterator. + (gfc_resolve_forall): Updated to use code->ext.concur.forall_iterator. + * st.cc (gfc_free_statement): Updated to free locality specifications + and use p->ext.concur.forall_iterator. + * trans-stmt.cc (gfc_trans_forall_1): Updated to use + code->ext.concur.forall_iterator. + +2025-01-13 Thomas Koenig <tkoenig@gcc.gnu.org> + + * dump-parse-tree.cc (show_attr): Fix typos for in_equivalence. + +2025-01-13 Paul-Antoine Arras <parras@baylibre.com> + + * openmp.cc (gfc_match_omp_declare_variant): Match comma after directive + name and between clauses. Emit more useful diagnostics. + +2025-01-12 Thomas Koenig <tkoenig@gcc.gnu.org> + + * dump-parse-tree.cc (show_attr): Dump all symbol attributes. + +2025-01-12 Harald Anlauf <anlauf@gmx.de> + + PR fortran/115788 + * check.cc (gfc_check_out_of_range): Check arguments to intrinsic. + * expr.cc (free_expr0): Fix a memleak with unsigned literals. + * gfortran.h (enum gfc_isym_id): Define GFC_ISYM_OUT_OF_RANGE. + * gfortran.texi: Add OUT_OF_RANGE to list of intrinsics supporting + UNSIGNED. + * intrinsic.cc (add_functions): Add Fortran prototype. Break some + nearby lines with excessive length. + * intrinsic.h (gfc_check_out_of_range): Add prototypes. + * intrinsic.texi: Fortran documentation of OUT_OF_RANGE. + * simplify.cc (gfc_simplify_out_of_range): Compile-time simplification + of OUT_OF_RANGE. + * trans-intrinsic.cc (gfc_conv_intrinsic_out_of_range): Generate + inline expansion of runtime code for OUT_OF_RANGE. + (gfc_conv_intrinsic_function): Use it. + +2025-01-12 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/118432 + * frontend-passes.cc (doloop_code): Select correct member + of co->ext.union for inquire. + +2025-01-11 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.h: Add OMP_LIST_INTEROP to the unnamed OMP_LIST_ enum. + * openmp.cc (gfc_match_omp_variable_list): Add reverse_order + boolean argument, defaulting to false. + (enum omp_mask2, OMP_DISPATCH_CLAUSES): Add OMP_CLAUSE_INTEROP. + (gfc_match_omp_clauses, resolve_omp_clauses): Handle dispatch's + 'interop' clause. + * trans-decl.cc (gfc_get_extern_function_decl): Use sym->declared_at + instead input_location as DECL_SOURCE_LOCATION. + * trans-openmp.cc (gfc_trans_omp_clauses): Handle OMP_LIST_INTEROP. + +2025-01-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/108434 + * class.cc (generate_finalization_wrapper): To avoid memory + leaks from callocs, return immediately if the derived type + error flag is set. + * decl.cc (build_struct): If the declaration of a derived type + or class component does not have a deferred arrayspec, correct, + set the error flag of the derived type and emit an immediate + error. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR fortran/118337 + * module.cc (use_iso_fortran_env_module): Add a comment explaining + the optimization performed. Add gcc_checking_assert that i was + incremented for all the elements. Formatting fix. + +2025-01-09 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118337 + * resolve.cc (resolve_fl_derived0): Exempt vtypes from cycle + detection. + +2025-01-09 Jakub Jelinek <jakub@redhat.com> + + PR fortran/118337 + * module.cc (COMPAT_MOD_VERSIONS): Define. + (use_iso_fortran_env_module): Don't assume all NAMED_INTCSTs come + first followed by NAMED_UINTCSTs. + (gfc_use_module): Accept also COMPAT_MOD_VERSIONS for compatibility. + * iso-c-binding.def: Reorder entries so that the GCC 14 ones come + before the ones new in GCC 15. + * iso-fortran-env.def: Likewise. + +2025-01-09 Tobias Burnus <tburnus@baylibre.com> + + * types.def (BT_FN_PTRMODE_PTR_INT_PTR): Add. + +2025-01-08 Jakub Jelinek <jakub@redhat.com> + + PR fortran/118337 + * module.cc (MOD_VERSION): Bump to "16". + +2025-01-07 Thomas Koenig <tkoenig@gcc.gnu.org> + + * intrinsic.texi (ISO_FORTRAN_ENV): Also mention INT8 in the + text. Document UINT8, UINT16, UINT32 and UINT64. + (ISO_C_BINDING): New table for unsigned KIND numbers. + +2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/114612 + * trans-array.cc (structure_alloc_comps): Ensure deep copy is + also done for types having cycles. + +2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/116669 + * class.cc (gfc_find_derived_vtab): Use attr to determine cyclic + type dependendies. + * expr.cc (gfc_has_default_initializer): Prevent endless + recursion by storing already visited derived types. + * resolve.cc (resolve_cyclic_derived_type): Determine if a type + is used in its hierarchy in a cyclic way. + (resolve_fl_derived0): Call resolve_cyclic_derived_type. + (resolve_fl_derived): Ensure vtab is generated when cyclic + derived types have allocatable components. + * trans-array.cc (structure_alloc_comps): Prevent endless loop + for derived type cycles. + * trans-expr.cc (gfc_get_ultimate_alloc_ptr_comps_caf_token): + Off topic, just prevent memory leaks. + +2025-01-03 Thomas Koenig <tkoenig@gcc.gnu.org> + + * gfortran.texi: New subsection "Generating C prototypes from + Fortran". + +2025-01-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/106692 + * trans-expr.cc (gfc_conv_expr_op): Inhibit excessive optimization + of Cray pointers by treating them as volatile in comparisons. + +2025-01-03 Sandra Loosemore <sloosemore@baylibre.com> + + * intrinsic.texi (ATAN): Add missing verb. + +2025-01-02 Tobias Burnus <tburnus@baylibre.com> + + * openmp.cc (OMP_DISPATCH_CLAUSES): Add OMP_CLAUSE_HAS_DEVICE_ADDR. + +2025-01-02 Paul-Antoine Arras <parras@baylibre.com> + + * dump-parse-tree.cc (show_omp_clauses): Handle novariants and nocontext + clauses. + (show_omp_node): Handle EXEC_OMP_DISPATCH. + (show_code_node): Likewise. + * frontend-passes.cc (gfc_code_walker): Handle novariants and nocontext. + * gfortran.h (enum gfc_statement): Add ST_OMP_DISPATCH. + (symbol_attribute): Add omp_declare_variant_need_device_ptr. + (gfc_omp_clauses): Add novariants and nocontext. + (gfc_omp_declare_variant): Add need_device_ptr_arg_list. + (enum gfc_exec_op): Add EXEC_OMP_DISPATCH. + * match.h (gfc_match_omp_dispatch): Declare. + * openmp.cc (gfc_free_omp_clauses): Free novariants and nocontext + clauses. + (gfc_free_omp_declare_variant_list): Free need_device_ptr_arg_list + namelist. + (enum omp_mask2): Add OMP_CLAUSE_NOVARIANTS and OMP_CLAUSE_NOCONTEXT. + (gfc_match_omp_clauses): Handle OMP_CLAUSE_NOVARIANTS and + OMP_CLAUSE_NOCONTEXT. + (OMP_DISPATCH_CLAUSES): Define. + (gfc_match_omp_dispatch): New function. + (gfc_match_omp_declare_variant): Parse adjust_args. + (resolve_omp_clauses): Handle adjust_args, novariants and nocontext. + Adjust handling of OMP_LIST_IS_DEVICE_PTR. + (icode_code_error_callback): Handle EXEC_OMP_DISPATCH. + (omp_code_to_statement): Likewise. + (resolve_omp_dispatch): New function. + (gfc_resolve_omp_directive): Handle EXEC_OMP_DISPATCH. + * parse.cc (decode_omp_directive): Match dispatch. + (next_statement): Handle ST_OMP_DISPATCH. + (gfc_ascii_statement): Likewise. + (parse_omp_dispatch): New function. + (parse_executable): Handle ST_OMP_DISPATCH. + * resolve.cc (gfc_resolve_blocks): Handle EXEC_OMP_DISPATCH. + * st.cc (gfc_free_statement): Likewise. + * trans-decl.cc (create_function_arglist): Declare. + (gfc_get_extern_function_decl): Call it. + * trans-openmp.cc (gfc_trans_omp_clauses): Handle novariants and + nocontext. + (replace_omp_dispatch_call): New function. + (gfc_trans_omp_dispatch): New function. + (gfc_trans_omp_directive): Handle EXEC_OMP_DISPATCH. + (gfc_trans_omp_declare_variant): Handle adjust_args. + * trans.cc (trans_code): Handle EXEC_OMP_DISPATCH:. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * gfortranspec.cc (lang_specific_driver): Update copyright notice + dates. + * gfc-internals.texi: Bump @copying's copyright year. + * gfortran.texi: Ditto. + * intrinsic.texi: Ditto. + * invoke.texi: Ditto. + +2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> + + * gfortran.texi (Function ABI Documentation): Make menu ordering + consistent with subsection ordering. + +2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> + + * gfortran.texi: Clean up that/which usage throughout the file. + * intrinsic.texi: Likewise. + * invoke.texi: Likewise. + +2025-01-01 Sandra Loosemore <sloosemore@baylibre.com> + + * intrinsic.texi: Grammar and markup fixes throughout + the file. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 60605fe874b..923c914865e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,43190 +1,5 @@ -2025-12-31 Jeff Law <jeffrey.law@oss.qualcomm.com> - - PR target/121485 - * gcc.target/riscv/rvv/vsetvl/pr121485.c: New test. - -2025-12-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR testsuite/123334 - * gcc.dg/pr123295-1.c: Require int128. - -2025-12-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/char-in-string-1.a68: New test. - -2025-12-30 Jeff Law <jeffrey.law@oss.qualcomm.com> - - PR target/123318 - * gcc.target/riscv/pr123318.c: New test. - -2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gnat.dg/specs/profile1.ads: New test. - -2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/error-radix-1.a68: New test. - * algol68/compile/radix-hex-upper-1.a68: Likewise. - * algol68/compile/radix-hex-supper-1.a68: Likewise. - * algol68/compile/error-radix-4.a68: Likewise. - * algol68/compile/error-radix-3.a68: Likewise. - * algol68/compile/error-radix-2.a68: Likewise. - * algol68/execute/environment-enquiries-6.a68: Do not use radix 10 - in bits denotations. - -2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/actual-bounds-expected-4.a68: New test. - * algol68/compile/formal-bounds-expected-1.a68: Likewise. - -2025-12-29 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/123080 - * g++.dg/cpp2a/lambda-requires6.C: New test. - * g++.dg/cpp2a/lambda-requires6a.C: New test. - -2025-12-29 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119097 - PR c++/120005 - * g++.dg/cpp0x/constexpr-cast.C: Adjust diagnostics. - * g++.dg/warn/overflow-warn-1.C: Fix diagnostic checks. - * g++.dg/warn/overflow-warn-3.C: Likewise. - * g++.dg/warn/overflow-warn-4.C: Likewise. - * g++.dg/modules/internal-8_a.C: Remove xfails, supplement with - additional testcases. - * g++.dg/modules/internal-8_b.C: New test. - -2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/warning-scope-module-1.a68: New test. - * algol68/compile/warning-scope-module-2.a68: Likewise. - -2025-12-29 Hongyu Wang <hongyu.wang@intel.com> - - * gcc.target/i386/apx-zu-3.c: New test. - -2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR rtl-optimization/123295 - * gcc.dg/pr123295-1.c: New test. - -2025-12-28 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module24.a68: New file. - * algol68/execute/modules/program-24.a68: New test. - -2025-12-28 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module23bar.a68: New test. - * algol68/execute/modules/module23foo.a68: Likewise. - * algol68/execute/modules/program-23.a68: Likewise. - -2025-12-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/20040112-1.c: Add dg-add-options - check_function_bodies. - * gcc.target/i386/pr122343-1a.c: Likewise. - * gcc.target/i386/pr122343-1b.c: Likewise. - * gcc.target/i386/pr122343-2a.c: Likewise. - * gcc.target/i386/pr122343-2b.c: Likewise. - * gcc.target/i386/pr122343-3.c: Likewise. - * gcc.target/i386/pr122343-4a.c: Likewise. - * gcc.target/i386/pr122343-4b.c: Likewise. - * gcc.target/i386/pr122343-5a.c: Likewise. - * gcc.target/i386/pr122343-5b.c: Likewise. - * gcc.target/i386/pr122343-6a.c: Likewise. - * gcc.target/i386/pr122343-6b.c: Likewise. - * gcc.target/i386/pr122343-7.c: Likewise. - * gcc.target/i386/pr122675-1.c: Likewise. - (dg-options): Add -fomit-frame-pointer. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module22bar.a68: New test. - * algol68/execute/modules/module22foo.a68: Likewise. - * algol68/execute/modules/program-22.a68: Likewise. - * algol68/compile/modules/program-11.a68: Adjust test to - publicized modules. - * algol68/compile/modules/program-error-multiple-delaration-module-1.a68: - Likewise. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/error-loop-1.a68: New test. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/module-2.a68: Expand test a little. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/pack-soids-in-moid-1.a68: New test. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/modules/program-error-multiple-delaration-module-1.a68: - New test. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/modules/module10.a68: New test. - * algol68/execute/modules/program-18.a68: Likewise. - * algol68/execute/modules/module18c.a68: Likewise. - * algol68/execute/modules/module18b.a68: Likewise. - * algol68/execute/modules/module18a.a68: Likewise. - * algol68/compile/modules/program-11.a68: Likewise. - * algol68/compile/modules/program-10.a68: Likewise. - * algol68/compile/modules/module12.a68: Likewise. - * algol68/compile/modules/module11.a68: Likewise. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/error-module-nested-access-1.a68: New test. - * algol68/execute/modules/program-21.a68: Likewise. - -2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module17.a68: New test. - -2025-12-27 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/123114 - * gcc.dg/pr123114.c: New test. - -2025-12-27 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gnat.dg/specs/mutably_tagged1.ads: New test. - -2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gnat.dg/aggr34.adb: New test. - * gnat.dg/aggr34_pkg1.ads, gnat.dg/aggr34_pkg1.adb: New helper. - * gnat.dg/aggr34_pkg2.ads, gnat.dg/aggr34_pkg2.adb: Likewise. - * gnat.dg/aggr34_pkg3.ads: Likewise. - -2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gnat.dg/specs/aggr9.ads: New test. - -2025-12-25 Arsen Arsenović <aarsenovic@baylibre.com> - - * gcc.dg/tree-ssa/sincos-ice-on-ifn_sin-call.c: New test. - * gcc.target/gcn/sincos-ice-on-ifn_sin-call-1.c: New test. - -2025-12-24 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Add asm check - for vmsleu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u8.c: New test. - -2025-12-24 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/dot_lane_za16_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_lane_za16_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_lane_za32_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_lane_za32_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_single_za16_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_single_za16_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_single_za32_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_single_za32_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_za16_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_za16_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_za32_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/dot_za32_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/vdot_lane_za16_mf8_vg1x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/vdotb_lane_za32_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/vdott_lane_za32_mf8_vg1x4.c: New test. - * gcc.target/aarch64/sve/acle/general-c/dot_half_za_slice_lane_fpm.c: New test. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme/acle-asm/test_sme_acle.h: (TEST_UNIFORM_ZA): - Add fpm0 parameter. - * gcc.target/aarch64/sve/acle/general-c/binary_za_m_1.c: Add tests for - variants accepting fpm. - * gcc.target/aarch64/sme2/acle-asm/mopa_za16_mf8.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mopa_za32_mf8.c: Likewise. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/test_sme2_acle.h: (TEST_ZA_X1, - TEST_ZA_XN, TEST_ZA_SINGLE, TEST_ZA_SINGLE_Z15, TEST_ZA_LANE, - TEST_ZA_LANE_Z15): Add fpm0 parameter. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_1.c: Add - tests for variants accepting fpm. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_1.c: - Likewise. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x4.c: New test. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/pragma_cpp_predefs_4.c: Add tests checking that - sme-f8f16 and sme-f8f32 prefefs are off by default, and checks for - feature dependencies. - * lib/target-supports.exp: Add check_effective_target support for - sme-f8f16 and sme-f8f32. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/scale_f16_x2.c: : Added test file. - * gcc.target/aarch64/sme2/acle-asm/scale_f16_x4.c: : Likewise. - * gcc.target/aarch64/sme2/acle-asm/scale_f32_x2.c: : Added test file. - * gcc.target/aarch64/sme2/acle-asm/scale_f32_x4.c: : Likewise. - * gcc.target/aarch64/sme2/acle-asm/scale_f64_x2.c: : Added test file. - * gcc.target/aarch64/sme2/acle-asm/scale_f64_x4.c: : Likewise. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_bf16_x2.c: Added test file. - * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_f16_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_f32_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/cvtn_mf8_f32_x4.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h - (TEST_X2_NARROW): Added fpm0 argument for intrinsics. - (TEST_X4_NARROW): Likewise. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * g++.target/aarch64/sme2/aarch64-sme2-acle-asm.exp: Use tuning flag - to reduce churn in testsuites. - * gcc.target/aarch64/sme2/aarch64-sme2-acle-asm.exp: Likewise. - * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_x2.c: Added test file. - * gcc.target/aarch64/sme2/acle-asm/cvtl_mf8_x2.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h (TEST_X2_WIDE): Added - fpm0 argument for intrinsics. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme/acle-asm/revd_mf8.c: Added test file. - * gcc.target/aarch64/sme2/acle-asm/ld1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/ld1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/ldnt1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/ldnt1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_ver_za128.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/sel_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/sel_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/st1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/st1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/stnt1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/stnt1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/uzp_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/uzp_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/uzpq_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/uzpq_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/zip_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/zip_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/zipq_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/zipq_mf8_x4.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/ld1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/ld1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/ldnt1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/ldnt1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/revd_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/stnt1_mf8_x2.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/stnt1_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/read_hor_za128.c: Added mf8 tests. - * gcc.target/aarch64/sme/acle-asm/read_hor_za8.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/read_ver_za128.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/read_ver_za8.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/write_hor_za128.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/write_hor_za8.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/write_ver_za128.c: Likewise. - * gcc.target/aarch64/sme/acle-asm/write_ver_za8.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_hor_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_hor_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_ver_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_ver_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_za8_vg1x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/read_za8_vg1x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_hor_za128.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_za8_vg1x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/readz_za8_vg1x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_hor_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_hor_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_ver_za8_vg2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_ver_za8_vg4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_za8_vg1x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/write_za8_vg1x4.c: Likewise. - -2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c: Likewise. - -2025-12-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * g++.dg/modules/tpl-friend-22.C: New test. - * g++.dg/template/friend88.C: New test. - -2025-12-23 Mohammad-Reza Nabipoor <mnabipoor@gnu.org> - - * algol68/compile/modules/compile.exp (dg-data): New procedure - for writing binary test data to disk. - * algol68/compile/modules/program-m68-lp64.a68: New test which - embeds binary module data. - * algol68/compile/modules/program-m68-llp64.a68: Likewise. - * algol68/compile/modules/program-m68-ilp32.a68: Likewise. - * algol68/compile/modules/program-m68-lp64-be.a68: Likewise. - * algol68/compile/modules/program-m68-llp64-be.a68: Likewise. - -2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> - - PR target/123274 - * gcc.target/riscv/pr123274.c: New test. - -2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> - - PR target/123278 - * gcc.target/riscv/pr123278.c: New test. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122550 - * g++.dg/cpp2a/concepts-friend18.C: New test. - * g++.dg/cpp2a/concepts-friend18a.C: New test. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122958 - * g++.dg/cpp2a/partial-spec-redecl.C: New test. - -2025-12-23 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> - - * rust/compile/issue-4245.rs: New test. - -2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/unused-mut-identifier_0.rs: New test. - * rust/compile/unused-mut-struct-field_0.rs: New test. - -2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/static_item_0.rs: Modify warning output. - * rust/compile/template_function_0.rs: Modify warning output. - -2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4260_0.rs: New test. - -2025-12-23 Ryutaro Okada <1015ryu88@gmail.com> - - * rust/compile/static_item_0.rs: New test. - * rust/compile/template_function_0.rs: New test. - -2025-12-23 Harishankar <harishankarpp7@gmail.com> - - * rust/compile/issue-3977.rs: New test. - -2025-12-23 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> - - * rust/compile/issue-4148.rs: Test should produce errors. - -2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/117518 - * g++.dg/cpp2a/lambda-targ19.C: New test. - -2025-12-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR rtl-optimization/123267 - * gcc.dg/torture/pr123267-1.c: New test. - -2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> - - * lib/profopt.exp: Bump GCOV version to 3. - * gcc.dg/tree-prof/afdo-lto_priv-basic-0.c: New test. - * gcc.dg/tree-prof/afdo-lto_priv-basic-1.c: Likewise. - * gcc.dg/tree-prof/afdo-lto_priv-header-0.c: Likewise. - * gcc.dg/tree-prof/afdo-lto_priv-header-0.h: Likewise. - * gcc.dg/tree-prof/afdo-lto_priv-header-1.c: Likewise. - * gcc.dg/tree-prof/afdo-lto_priv-header-1.h: Likewise. - -2025-12-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122994 - * g++.dg/modules/internal-17_b.C: Use functions and internal - types rather than lambdas. - * g++.dg/modules/internal-4_b.C: Correct expected result. - * g++.dg/modules/internal-20_a.C: New test. - * g++.dg/modules/internal-20_b.C: New test. - * g++.dg/modules/internal-20_c.C: New test. - * g++.dg/modules/internal-21_a.C: New test. - * g++.dg/modules/internal-21_b.C: New test. - -2025-12-22 Steve Kargl <kargl@gcc.gnu.org> - - PR fortran/122957 - * gfortran.dg/pr122957.f90: New test. - -2025-12-22 Harald Anlauf <anlauf@gmx.de> - - PR fortran/123253 - * gfortran.dg/associate_76.f90: Extended testcase. - * gfortran.dg/associate_77.f90: New test. - -2025-12-22 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - PR middle-end/123067 - * gcc.dg/licm-self-write-partial-alias.c: New test. - -2025-12-22 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/Modules20.map (module-bar): Add - underscores. - -2025-12-22 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/class_wide1.ads: New test. - -2025-12-22 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/base/spill-7.c: Update expected output. - -2025-12-22 Yuao Ma <c8ef@outlook.com> - - PR c++/123261 - * g++.dg/ext/fimplicit-constexpr2.C: New test. - -2025-12-22 Vineet Gupta <vineetg@rivosinc.com> - - * gcc.target/riscv/zicond_ifcvt_opt.c: Adjust increased czero counts. - -2025-12-22 Vineet Gupta <vineetg@rivosinc.com> - Philipp Tomsich <philipp.tomsich@vrull.eu> - - PR target/122769 - * gcc.target/riscv/pr122769.c: New test. - -2025-12-22 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/base/spill-1.c: Update expected output. - * gcc.target/riscv/rvv/base/spill-2.c: Likewise. - * gcc.target/riscv/rvv/base/spill-3.c: Likewise. - * gcc.target/riscv/rvv/base/spill-4.c: Likewise. - * gcc.target/riscv/rvv/base/spill-5.c: Likewise. - * gcc.target/riscv/rvv/base/spill-6.c: Likewise. - -2025-12-22 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/zvector/vec-addc-u128.c: Honor deprecation - warning. - -2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121472 - * gfortran.dg/pr121472.f90: New test. - -2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121475 - * gfortran.dg/pr121475.f90: New test as posted in the PR - from Christopher Albert - -2025-12-21 Antoni Boucher <bouanto@zoho.com> - - * jit.dg/all-non-failing-tests.h: Update comment about - test-cold-attribute.c. - * jit.dg/test-cold-attribute.c: Use -Oz to fix test. - -2025-12-21 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/123089 - * gcc.dg/vect/vect-early-break_141-pr123089.c: New test. - * gcc.target/aarch64/sve/peel_ind_14.c: New test. - * gcc.target/aarch64/sve/peel_ind_14_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_15.c: New test. - * gcc.target/aarch64/sve/peel_ind_15_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_16.c: New test. - * gcc.target/aarch64/sve/peel_ind_16_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_17.c: New test. - * gcc.target/aarch64/sve/peel_ind_17_run.c: New test. - -2025-12-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122712 - * g++.dg/modules/adl-12_a.C: New test. - * g++.dg/modules/adl-12_b.C: New test. - -2025-12-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/122690 - * g++.dg/ext/is_implicit_lifetime2.C: New test. - -2025-12-20 Jakub Jelinek <jakub@redhat.com> - - PR target/123217 - * gcc.target/i386/keylocker-pr123217.c: New test. - * gcc.target/i386/user_msr-pr123217.c: New test. - -2025-12-19 Victor Do Nascimento <victor.donascimento@arm.com> - - * gcc.dg/vect/vect-uncounted-prolog-peel_2.c: New. - * gcc.dg/vect/vect-uncounted-prolog-peel_3.c: Likewise. - * g++.dg/vect/vect-uncounted-prolog-peel_1.cc: Likewise. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * gcc.c-torture/compile/20030323-1.c: Fix comment typo, - statment -> statement. - * gcc.dg/tree-ssa/pr96779.c: Fix comment typo, transfered - -> transferred. - * gcc.dg/tree-ssa/pr96779-disabled.c: Likewise. - * gcc.dg/tree-ssa/ssa-thread-16.c (foo): Fix comment typo, - catched -> caught. - * gcc.target/s390/larl-1.c: Fix comment typo, explicitely - -> explicitly. - * g++.dg/tree-ssa/pr44706.C: Fix comment typo, invokation - -> invocation. - * g++.dg/tree-ssa/pr87502.C: Fix comment typo, explicitely - -> explicitly. - * gfortran.dg/bound_8.f90: Likewise. - * gfortran.dg/coarray_14.f90: Fix comment typo, statment - -> statement. - -2025-12-19 Harald Anlauf <anlauf@gmx.de> - - PR fortran/71565 - * gfortran.dg/protected_8.f90: Adjust patterns. - * gfortran.dg/associate_76.f90: New test. - -2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> - - PR target/122970 - * lib/target-supports.exp: Add rvv_zvl128b_ok. - * gcc.target/riscv/rvv/autovec/pr122970.c: New test. - -2025-12-19 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/pr120378-1.c: Dump "optimized". - * gcc.target/riscv/rvv/autovec/pr121510.c: Add semicolon. - * gcc.target/riscv/rvv/base/pr112431-21.c: Add -Wno-pedantic. - -2025-12-19 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/subreg-extract.c: New test. - -2025-12-19 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: - Adjust test expectation. - * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: Ditto. - * gcc.target/riscv/rvv/autovec/partial/select_vl-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/zve64d-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/zve64f-1.c: Ditto. - -2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> - - PR tree-optimization/123118 - * g++.target/riscv/rvv/autovec/pr123118.C: New test. - -2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> - - PR tree-optimization/123117 - * gcc.target/loongarch/vector/lsx/pr123117.c: New test. - -2025-12-19 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/early-break-3.c: New test. - * gcc.target/riscv/rvv/autovec/early-break-4.c: New test. - * gcc.target/riscv/rvv/autovec/early-break-5.c: New test. - -2025-12-19 Robin Dapp <rdapp@ventanamicro.com> - - PR tree-optimization/123097 - * gcc.target/riscv/rvv/autovec/pr123097-run.c: New test. - * gcc.target/riscv/rvv/autovec/pr123097.c: New test. - -2025-12-19 Robin Dapp <rdapp.gcc@gmail.com> - - PR tree-optimization/123192 - * gcc.dg/tree-ssa/ctz-ch.c: Require ctz target. - -2025-12-19 Christopher Albert <albert@tugraz.at> - - PR fortran/92613 - * gfortran.dg/pr92613.f90: New test. - * gfortran.dg/pr92613_2.f90: New test for -E error. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/91388 - * g++.dg/cpp1z/static_assert1.C: New test. - -2025-12-19 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/123205 - * gcc.dg/pr123205.c: New. - -2025-12-19 Jason Merrill <jason@redhat.com> - Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/117034 - * g++.dg/cpp2a/lambda-template-pr117034.C: New test. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - * g++.dg/DRs/dr3061.C: Remove cascading error expectation. - * g++.dg/cpp0x/initlist31.C: Likewise. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/123044 - * g++.dg/template/implicit-func-cast.C: New test. - -2025-12-19 Egas Ribeiro <egas.g.ribeiro@gmail.com> - - PR c++/122509 - * g++.dg/tc1/dr176-2.C: New test. - -2025-12-19 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/uses_allocators-8.c: New test. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/122772 - * g++.dg/cpp1z/eval-order14.C: New test. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR debug/122968 - * g++.dg/guality/decomp1.C: New test. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/122834 - * g++.dg/dfp/pr122834-1.C: New test. - * g++.dg/dfp/pr122834-2.C: New test. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - PR c++/123030 - * g++.dg/cpp0x/deleted18.C: New test. - * g++.dg/cpp0x/new4.C: Expect an error. - -2025-12-19 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp26/expansion-stmt1.C (A::operator *, A::operator !=, - A::operator +, C::operator *, C::operator !=, C::operator +): Add - const qualification. - * g++.dg/cpp26/expansion-stmt2.C (A::operator *, A::operator !=, - A::operator +, C::operator *, C::operator !=, C::operator +): - Likewise. - * g++.dg/cpp26/expansion-stmt3.C (A::operator *, A::operator !=, - A::operator +, C::operator *, C::operator !=, C::operator +): - Likewise. - * g++.dg/cpp26/expansion-stmt18.C (A::operator *, A::operator !=, - A::operator +): Likewise. - -2025-12-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/shift-gf2p8affine-2.c: Require gfni, avx512vl, - avx512bw, avx512f support instead of skipping with Solaris as. - -2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122922 - * g++.dg/modules/pr122922_a.C: New test. - * g++.dg/modules/pr122922_b.C: New test. - -2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122995 - * g++.dg/modules/namespace-17_a.C: New test. - * g++.dg/modules/namespace-17_b.C: New test. - -2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/55212 - * g++.target/sh/torture/pr55212-c413.C: New. - -2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/55212 - * g++.target/sh/torture/pr55212-c384.C: New. - -2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/55212 - * g++.target/sh/torture/pr55212-c373.C: New. - -2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/55212 - * g++.target/sh/torture/pr55212-c333.C: New. - -2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/55212 - * g++.target/sh/sh.exp: New. - * g++.target/sh/torture/sh-torture.exp: New. - * g++.target/sh/torture/pr55212-c311.C: New - -2025-12-19 Kaz Kojima <kkojima@rr.iij4u.or.jp> - - PR target/55212 - * gcc.target/sh/pr55212-c248.c: New test. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/goacc/update-if_present-2.f90: Update dg-error. - * gfortran.dg/gomp/order-8.f90: Likewise. - * gfortran.dg/gomp/order-9.f90: Likewise. - * c-c++-common/gomp/assume-5.c: New test. - * gfortran.dg/gomp/assume-6.f90: New test. - -2025-12-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/123186 - * g++.dg/template/crash133.C: New test. - -2025-12-18 Egas Ribeiro <egas.g.ribeiro@gmail.com> - Patrick Palka <ppalka@redhat.com> - - PR c++/122070 - * g++.dg/cpp23/class-deduction-inherited10.C: New test. - * g++.dg/cpp23/class-deduction-inherited9.C: New test. - -2025-12-18 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/target-device-type-1.c: New test. - * gfortran.dg/gomp/target-device-type-1.f90: New test. - -2025-12-18 Tejas Belagod <tejas.belagod@arm.com> - - * gcc.target/aarch64/sve/acle/general/attributes_1.c: Update test for - __ARM_FEATURE_SVE_PREDICATE_OPERATORS. - * gcc.target/aarch64/sve/acle/general/attributes_9.c: New. - -2025-12-18 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/pragma_cpp_predefs_5.c: New test. - * gcc.target/aarch64/options_set_30.c: Likewise. - * lib/target-supports.exp (exts): Add sve-sm4, sve-aes, sve-bitperm. - -2025-12-18 WANG Xuerui <git@xen0n.name> - - PR target/123171 - * gcc.target/loongarch/pr123171.c: New test. - -2025-12-18 chenxiaolong <chenxiaolong@loongson.cn> - - * gcc.target/loongarch/vector/lasx/vect-extract-256-128.c: - After supporting the vectorized type corresponding to subreg in - the backend, the cost of rtx becomes 0. In fwprop1 pass, - memory-loaded rtx cannot be propagated to this insn, which leads - to xvld not being optimized into vld instructions. - * gcc.target/loongarch/vect-mode-tieable.c: New test. - -2025-12-18 Richard Biener <rguenther@suse.de> - - PR c/123156 - * gcc.dg/torture/builtin-shufflevector-pr123156.c: New testcase. - -2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122734 - * gcc.dg/tree-ssa/copy-headers-13.c: New test. - -2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.target/i386/pr121572-1a.c: Turn off -freorder-blocks-and-partition - as it interferes with the check-body. - -2025-12-17 H.J. Lu <hjl.tools@gmail.com> - - PR target/122343 - * gcc.dg/pr122343-1.c: New test. - -2025-12-17 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module11.a68: Remove multiple definition - module. - -2025-12-17 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/23178 - * gm2/pim/fail/badprocedure.mod: New test. - -2025-12-17 Ulrich Weigand <ulrich.weigand@de.ibm.com> - - PR testsuite/123166 - * gfortran.dg/bessel_6.f90: Add { dg-do run } annotation. - * gfortran.dg/erf_2.F90: Likewise. - * gfortran.dg/integer_exponentiation_3.F90: Likewise. - * gfortran.dg/integer_exponentiation_5.F90: Likewise. - -2025-12-17 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/123151 - * gm2/pimlib/base/run/pass/FIO.mod: Reimplement. - Copy from gm2-libs/FIO.mod since FIO.def api has changed. - * gm2/pimlib/run/pass/testclose.mod: New test. - -2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/pr120881-1a.c: Restrict to Linux. - * gcc.target/i386/pr120881-1b.c: Likewise. - -2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR c++/112652 - * g++.dg/cpp26/literals2.C: Skip on Solaris. - -2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.dg/plugin/crash-test-nested-write-through-null-html.py: - Import re. - (test_results): Allow for "Segmentation Fault", too. - * gcc.dg/plugin/crash-test-nested-write-through-null-sarif.py: - Likewise. - * gcc.dg/plugin/crash-test-write-through-null-stderr.c - (test_inject_write_through_null): Likewise. - -2025-12-17 benwu25 <soggysocks206@gmail.com> - - PR c++/121443 - * g++.dg/parse/pr121443.C: New test. - -2025-12-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/123075 - * g++.dg/cpp2a/concepts-lambda25.C: New test. - * g++.dg/modules/lambda-13.h: New test. - * g++.dg/modules/lambda-13_a.H: New test. - * g++.dg/modules/lambda-13_b.C: New test. - -2025-12-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-4301.rs: New test. - -2025-12-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/macros/mbe/macro-issue3608.rs: Update error messages. - -2025-12-17 Umesh Kalvakuntla <umesh.kalvakuntla@amd.com> - - * g++.target/i386/mv29.C: Likewise. - * gcc.target/i386/funcspec-56.inc: Likewise. - * gcc.target/i386/avx512bmm-1.c: New test. - * gcc.target/i386/avx512bmmvl-1.c: New test. - -2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> - - PR algol68/123131 - * algol68/compile/modules/compile.exp: Pass module include path - via extra_flags to algol68-dg-runtest. - * algol68/execute/modules/execute.exp: Pass module include path - via algol68_compile_args. - * lib/algol68-dg.exp (MODULES_OPTIONS): Delete. - (algol68-dg-runtest): Do not use MODULE_OPTIONS. - * lib/algol68-torture.exp (BUILT_MODULES_DIR): Delete. - (algol68-torture-execute): Do not use BUILT_MODULES_DIR. - -2025-12-16 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/123142 - * gcc.dg/plugin/diagnostic-test-graphs-html.c: Add - dg-require-dot directive. - -2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/error-compile-unknown-tag-1.a68: Use a single - module per packet. - * algol68/compile/error-module-coercions-1.a68: Likewise. - * algol68/compile/error-module-ranges-1.a68: Likewise. - * algol68/compile/module-2.a68: Likewise. - * algol68/compile/module-pub-mangling-1.a68: Likewise. - * algol68/compile/module-pub-mangling-2.a68: Likewise. - * algol68/compile/module-pub-mangling-3.a68: Likewise. - * algol68/compile/module-pub-mangling-4.a68: Likewise. - * algol68/compile/module-pub-mangling-5.a68: Likewise. - * algol68/compile/module-pub-mangling-6.a68: Likewise. - * algol68/compile/warning-module-hidding-1.a68: Likewise. - -2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/Modules20.map: New file. - * algol68/execute/modules/module-bar.a68: New file. - * algol68/execute/modules/module-foo.a68: New file. - * algol68/execute/modules/program-19.a68: New file. - * algol68/execute/modules/program-20.a68: New file. - -2025-12-16 Richard Biener <rguenther@suse.de> - - PR testsuite/123137 - * g++.dg/vect/pr64410.cc: Add -mfpmath=sse -msse on x86. - -2025-12-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/shift-gf2p8affine-2.c: Skip on Solaris - without gas. - -2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> - Indu Bhagat <indu.bhagat@oracle.com> - - * gcc.target/aarch64/memtag/alloca-1.c: New test. - * gcc.target/aarch64/memtag/alloca-2.c: New test. - * gcc.target/aarch64/memtag/alloca-3.c: New test. - * gcc.target/aarch64/memtag/arguments-1.c: New test. - * gcc.target/aarch64/memtag/arguments-2.c: New test. - * gcc.target/aarch64/memtag/arguments-3.c: New test. - * gcc.target/aarch64/memtag/arguments-4.c: New test. - * gcc.target/aarch64/memtag/arguments.c: New test. - * gcc.target/aarch64/memtag/basic-1.c: New test. - * gcc.target/aarch64/memtag/basic-3.c: New test. - * gcc.target/aarch64/memtag/basic-struct.c: New test. - * gcc.target/aarch64/memtag/large-array.c: New test. - * gcc.target/aarch64/memtag/local-no-escape.c: New test. - * gcc.target/aarch64/memtag/memtag.exp: New file. - * gcc.target/aarch64/memtag/no-sanitize-attribute.c: New test. - * gcc.target/aarch64/memtag/value-init.c: New test. - * gcc.target/aarch64/memtag/vararray-gimple.c: New test. - * gcc.target/aarch64/memtag/vararray.c: New test. - * gcc.target/aarch64/memtag/zero-init.c: New test. - * gcc.target/aarch64/memtag/texec-1.c: New test. - * gcc.target/aarch64/memtag/texec-2.c: New test. - * gcc.target/aarch64/memtag/texec-3.c: New test. - * gcc.target/aarch64/memtag/vla-1.c: New test. - * gcc.target/aarch64/memtag/vla-2.c: New test. - * lib/target-supports.exp (check_effective_target_aarch64_mte): - New function. - * gcc.target/aarch64/memtag/cfi-mte-memtag-frame-1.c: New file. - * gcc.target/aarch64/memtag/mte-sig.h: New file. - -2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> - Indu Bhagat <indu.bhagat@oracle.com> - - * gcc.target/aarch64/acle/memtag_1.c: Update test. - -2025-12-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/123110 - * gcc.dg/pr123110-1.c: New test. - -2025-12-15 Martin Jambor <mjambor@suse.cz> - - * gcc.dg/lto/fnptr-from-rec-1_0.c: New test. - * gcc.dg/lto/fnptr-from-rec-1_1.c: Likewise. - * gcc.dg/lto/fnptr-from-rec-2_0.c: Likewise. - * gcc.dg/lto/fnptr-from-rec-2_1.c: Likewise. - * gcc.dg/lto/fnptr-from-rec-3_0.c: Likewise. - * gcc.dg/lto/fnptr-from-rec-3_1.c: Likewise. - -2025-12-15 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/reduce4.adb: New test. - * gnat.dg/reduce5.adb: Likewise. - -2025-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/122936 - * gfortran.dg/pr122936.f90: New test. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - PR c++/122752 - * g++.dg/template/dependent-name19.C: New test. - -2025-12-15 Patrick Palka <ppalka@redhat.com> - - PR c++/122668 - PR c++/114764 - * g++.dg/cpp0x/noexcept91a.C: New test. - -2025-12-15 Joseph Myers <josmyers@redhat.com> - - * lib/plugin-support.exp (plugin-test-execute): Support installed - testing. - * g++.dg/plugin/plugin.exp, gcc.dg/plugin/plugin.exp, - obj-c++.dg/plugin/plugin.exp, objc.dg/plugin/plugin.exp: Do not - disable for installed testing. - -2025-12-15 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/123085 - * c-c++-common/analyzer/strlen-pr123085.c: New test. - -2025-12-15 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/122975 - * c-c++-common/analyzer/arith-1.c: New test. - * c-c++-common/analyzer/infinite-recursion-pr122975.c: New test. - -2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> - - * gcc.dg/vect/vect-early-break_40.c: Fix. - * gcc.dg/gomp/static-chunk-size-one.c: Likewise. - * gcc.dg/vect/vect-uncounted_1.c: New. - * gcc.dg/vect/vect-uncounted_2.c: Likewise. - * gcc.dg/vect/vect-uncounted_3.c: Likewise. - * gcc.dg/vect/vect-uncounted_4.c: Likewise. - * gcc.dg/vect/vect-uncounted_5.c: Likewise. - * gcc.dg/vect/vect-uncounted_6.c: Likewise. - * gcc.dg/vect/vect-uncounted_7.c: Likewise. - * gcc.dg/vect/vect-uncounted-run_1.c: Likewise. - * gcc.dg/vect/vect-uncounted-run_2.c: Likewise. - * gcc.dg/vect/vect-uncounted-run_3.c: Likewise. - * gcc.dg/vect/vect-uncounted-prolog-peel_1.c: Likewise. - -2025-12-15 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/123032 - * gcc.dg/vect/pr123032.c: New test. - -2025-12-15 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/123043 - * gcc.dg/vect/pr123043.c: New test. - -2025-12-15 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/lto30.ads, gnat.dg/lto30.adb: New test. - -2025-12-14 Lewis Hyatt <lhyatt@gmail.com> - - PR tree-optimization/106409 - * g++.dg/lto/pr106409_0.C: New test. - -2025-12-14 Surya Kumari Jangala <jskumari@linux.ibm.com> - - PR rtl-optimization/122274 - * gcc.dg/rtl/powerpc/test-frame-related.c: New test. - -2025-12-13 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/modules/module1.a68: Also test contracted - forms. - * algol68/execute/modules/module3.a68: Likewise. - * algol68/execute/modules/module5.a68: Likewise. - * algol68/execute/modules/program-1.a68: Likewise. - -2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122734 - * gcc.dg/tree-ssa/20030711-1.c: Update. - * gcc.dg/tree-ssa/copy-headers-10.c: New test. - * gcc.dg/tree-ssa/copy-headers-11.c: New test. - * gcc.dg/tree-ssa/copy-headers-12.c: New test. - -2025-12-13 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/gomp/deprecate-1.C: New test. - -2025-12-13 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/gomp/52-deps.c: Change locations of 2 warnings for C. - * gcc.dg/gomp/deprecate-1.c: New test. - -2025-12-13 Alexandre Oliva <oliva@adacore.com> - - * lib/gnat.exp (gnat_init): Set gcc_warning_prefix and - gcc_error_prefix. - -2025-12-13 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/119293 - * gcc.dg/vect/vect-121.c: XFAIL on ia32. - -2025-12-12 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/ext/is_constructible9.C: Add to testcase. - -2025-12-12 Chung-Lin Tang <cltang@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - Andrew Stubbs <ams@baylibre.com> - - * c-c++-common/gomp/uses_allocators-1.c: New test. - * c-c++-common/gomp/uses_allocators-2.c: New test. - * c-c++-common/gomp/uses_allocators-4.c: New test. - * c-c++-common/gomp/uses_allocators-7.c: New test. - * g++.dg/gomp/deprecate-2.C: New test. - * g++.dg/gomp/uses_allocators-1.C: New test. - * gcc.dg/gomp/deprecate-2.c: New test. - -2025-12-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * g++.target/s390/builtin-array-arg-1.C: New test. - * gcc.target/s390/builtin-array-arg-1.c: New test. - -2025-12-12 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/122003 - * c-c++-common/analyzer/allocation-size-multiline-1.c: Update for split - of region creation events. - * c-c++-common/analyzer/bzip2-arg-parse-1.c: Drop test for enode - merging. Add -Wno-analyzer-too-complex. - * c-c++-common/analyzer/coreutils-cksum-pr108664.c: Add - -Wno-analyzer-symbol-too-complex. Add dg-bogus for false +ve seen - during patch development. - * c-c++-common/analyzer/coreutils-group_number.c: New test. - * c-c++-common/analyzer/data-model-20.c: Mark warnings as xfail. - * c-c++-common/analyzer/deref-before-check-qemu-qtest_rsp_args.c: - Add xfails. - * c-c++-common/analyzer/dot-output.c: Update for changes to dumps. - * c-c++-common/analyzer/fd-symbolic-socket.c: Update for - improvements to locations of leaks. - * c-c++-common/analyzer/fibonacci.c: Update regex. - * c-c++-common/analyzer/flex-with-call-summaries.c: Add xfail. - * c-c++-common/analyzer/flex-without-call-summaries.c: Add - -Wno-analyzer-symbol-too-complex. Add xfail. - * c-c++-common/analyzer/infinite-recursion-5.c: Disable cases that - now explode the analysis. - * c-c++-common/analyzer/infinite-recursion-pr108524-2.c: Remove - xfail. - * c-c++-common/analyzer/invalid-shift-1.c: Remove xfails with c++26. - * c-c++-common/analyzer/ipa-callbacks-1.c: New test. - * c-c++-common/analyzer/loop-4.c: Expect incorrect UNKNOWN within - loop. Update expected number of enodes. - * c-c++-common/analyzer/loop-n-down-to-1-by-1.c: Expect incorrect - UNKNOWN within loop. - * c-c++-common/analyzer/loop.c: Drop xfail. - * c-c++-common/analyzer/out-of-bounds-coreutils.c: Expect infinite - loop warning. - * c-c++-common/analyzer/paths-4.c: Update expected number of - enodes. - * c-c++-common/analyzer/pr94362-1.c: Drop -Wno-analyzer-too-complex. - * c-c++-common/analyzer/pr94851-2.c: Add xfail. - * c-c++-common/analyzer/pr96650-1-notrans.c: Add - -Wno-analyzer-too-complex. - * c-c++-common/analyzer/pr98628.c: Likewise. - * c-c++-common/analyzer/pr99774-1.c: Likewise. - * c-c++-common/analyzer/pragma-2.c: Expect double-free warning. - * c-c++-common/analyzer/realloc-1.c: Move expected location of - leak from trailing "}" to realloc call. - * c-c++-common/analyzer/sock-1.c: Add -fno-exceptions. - * c-c++-common/analyzer/sprintf-2.c: Add __attribute__ nonnull to - decl. - * c-c++-common/analyzer/sprintf-concat.c: Move expected location - of leak of p from sprintf to trailing "}". - * c-c++-common/analyzer/stdarg-sentinel-1.c: Drop - -Wno-analyzer-too-complex. - * c-c++-common/analyzer/strncpy-1.c: Add __attribute__ nonnull to - decl. - * c-c++-common/analyzer/strstr-1.c: Likewise. - * g++.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. - * g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C: - Update expected messages. - * g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C: - Likewise. - * g++.dg/analyzer/fanalyzer-show-events-in-system-headers.C: Likewise. - * g++.dg/analyzer/pr94028.C: Move expected location of leak - warning to where return value of f is discarded within m. - * g++.dg/analyzer/pr96641.C: Expect infinite recursion warning. - * gcc.dg/analyzer/CWE-131-examples.c: Add - -Wno-analyzer-too-complex. - * gcc.dg/analyzer/abs-1.c (test_2): Fix return type. - * gcc.dg/analyzer/analyzer-decls.h: Reformat. Add - __attribute__ ((nothrow)) to all functions. - * gcc.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. - * gcc.dg/analyzer/boxed-malloc-1.c: Fix return types. - * gcc.dg/analyzer/call-summaries-2.c: Likewise. - * gcc.dg/analyzer/combined-conditionals-1.c: Likewise. - * gcc.dg/analyzer/compound-assignment-2.c: Expect warning about - missing return. - * gcc.dg/analyzer/compound-assignment-3.c: Likewise. - * gcc.dg/analyzer/conditionals-3.c: Fix return type. - * gcc.dg/analyzer/data-model-1.c: Likewise. - * gcc.dg/analyzer/data-model-15.c: Likewise. - * gcc.dg/analyzer/data-model-17.c: Likewise. - * gcc.dg/analyzer/data-model-20a.c: Remove xfail from bogus leak. - * gcc.dg/analyzer/data-model-7.c: Fix return type. - * gcc.dg/analyzer/doom-d_main-IdentifyVersion.c: Add xfail to some - of the leak msgs. - * gcc.dg/analyzer/doom-s_sound-pr108867.c: Add xfail. - * gcc.dg/analyzer/edges-1.c: Update for improvements to location - of leak. - * gcc.dg/analyzer/error-1.c: Fix return type. - * gcc.dg/analyzer/explode-1.c: Drop xfail. Expect uninit and - double-free warnings. - * gcc.dg/analyzer/explode-2.c: Add xfail. - * gcc.dg/analyzer/explode-3.c: Drop xfail. Expect uninit and - double-free warnings. - * gcc.dg/analyzer/fd-datagram-socket.c: Move expected location of - leaks to closing "}"s. - * gcc.dg/analyzer/fd-glibc-byte-stream-connection-server.c: Add - false +ve leak message, due to not considering that program is - about to exit. - * gcc.dg/analyzer/fd-stream-socket.c: Move expected location of - leaks to closing "}"s. - * gcc.dg/analyzer/malloc-1.c: Fix return types. - * gcc.dg/analyzer/malloc-many-paths-2.c: Likewise. - * gcc.dg/analyzer/malloc-paths-10.c: Likewise. - * gcc.dg/analyzer/malloc-vs-local-4.c: Likewise. - * gcc.dg/analyzer/memset-CVE-2017-18549-1.c: Likewise. - * gcc.dg/analyzer/null-deref-pr102671-1.c: Enable - -fanalyzer-call-summaries. - * gcc.dg/analyzer/null-deref-pr102671-2.c: Remove xfail. - * gcc.dg/analyzer/pr101143.c: Fix return type. - * gcc.dg/analyzer/pr101837.c: Fix return type. Add warning about - missing return. - * gcc.dg/analyzer/pr101983-not-main.c: Fix return type. - * gcc.dg/analyzer/pr103892.c: Enable -fanalyzer-call-summaries. - * gcc.dg/analyzer/pr104224.c: Add xfails. - * gcc.dg/analyzer/pr104434-nonconst.c: Likewise. - * gcc.dg/analyzer/pr93032-mztools-signed-char.c: Increase - exploration limits by a factor of 5. - * gcc.dg/analyzer/pr93032-mztools-unsigned-char.c: Likewise. - * gcc.dg/analyzer/pr93355-localealias-feasibility-2.c: Fix return type. - * gcc.dg/analyzer/pr93355-localealias.c: Add xfail. Add expected - leak true +ve and uninit false +ve. - * gcc.dg/analyzer/pr94579.c: Add warning about missing return. - * gcc.dg/analyzer/pr98599-a.c: Add missing return stmts. - * gcc.dg/analyzer/pr99771-1.c: Fix expected locations of leaks. - * gcc.dg/analyzer/pr99774-2.c: Likewise. - * gcc.dg/analyzer/sensitive-1.c: Fix return types. - * gcc.dg/analyzer/state-diagram-1-sarif.py: Update. - * gcc.dg/analyzer/stdarg-1.c - (__analyzer_test_not_enough_args_2_middle): Add test coverage for - wording of call event with variadic args. - * gcc.dg/analyzer/strcmp-1.c: Fix return types. - * gcc.dg/analyzer/strcpy-1.c: Likewise. - * gcc.dg/analyzer/switch-enum-taint-1.c: Add warning about missing - return. - * gcc.dg/analyzer/switch.c: Fix return types. - * gcc.dg/analyzer/taint-assert.c: Likewise. - * gcc.dg/analyzer/taint-write-offset-1.c: Likewise. - * gcc.dg/analyzer/torture/analyzer-torture.exp: Drop - -fanalyzer-call-summaries. - * gcc.dg/analyzer/torture/boxed-ptr-1.c: Fix return type. - * gcc.dg/analyzer/torture/fold-ptr-arith-pr105784.c: Add - -Wno-analyzer-too-complex. - * gcc.dg/analyzer/torture/loop-inc-ptr-1.c: Skip at -O3 to avoid - changes to enode count. - * gcc.dg/analyzer/torture/pr102225.c: Consolidate on one line to - avoid caring about precise location of leak warning. - * gcc.dg/analyzer/torture/pr93379.c: Skip on -fno-fat-lto-objects. - Add warning about uninit. - * gcc.dg/analyzer/torture/stdarg-4.c: Replace UNKNOWN with - symbolic sum of params. - * gcc.dg/analyzer/untracked-1.c: Fix return type. - * gcc.dg/analyzer/use-after-free.c: Likewise. - * gcc.dg/analyzer/zlib-3.c: Add xfails. - * gcc.dg/plugin/analyzer_cpython_plugin.cc - (class refcnt_stmt_finder): Eliminate. - (check_refcnt): ...in favor of a call to - make_ploc_fixer_for_epath_for_leak_diagnostic. - * gcc.dg/plugin/analyzer_gil_plugin.cc: Update for - location-handling changes. - * gcc.dg/plugin/infoleak-CVE-2011-1078-1.c: Add missing - "return 0;". - * gcc.dg/plugin/infoleak-CVE-2011-1078-2.c: Fix return types. - * gcc.dg/plugin/infoleak-CVE-2017-18549-1.c: Likewise. - * gdc.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. - * gfortran.dg/analyzer/analyzer.exp: Likewise. - * gfortran.dg/analyzer/uninit-pr63311.f90: Add - -Wno-analyzer-too-complex. - -2025-12-12 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/121852 - * gcc.dg/pr121852.c: New test. - -2025-12-12 Tejas Belagod <tejas.belagod@arm.com> - Tamar Christina <tamar.christina@arm.com> - - * g++.target/aarch64/sve/acle/general-c++/svbool_ternary.C: New test. - -2025-12-12 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/123098 - * gcc.dg/debug/dwarf2/omp-fesdr.c: Use #pragma omp masked - instead of #pragma omp master. - * g++.dg/debug/dwarf2/omp-fesdr.C: Likewise. - -2025-12-12 mengqinggang <mengqinggang@loongson.cn> - - * gcc.target/loongarch/la64/add-const.c: New test. - * gcc.target/loongarch/la64/alsl-cost.c: New test. - * gcc.target/loongarch/la64/alsl_wu.c: New test. - * gcc.target/loongarch/la64/and-large-immediate-opt.c: New test. - * gcc.target/loongarch/la64/arch-func-attr-1.c: New test. - * gcc.target/loongarch/la64/arch-pragma-attr-1.c: New test. - * gcc.target/loongarch/la64/attr-model-1.c: New test. - * gcc.target/loongarch/la64/attr-model-2.c: New test. - * gcc.target/loongarch/la64/attr-model-3.c: New test. - * gcc.target/loongarch/la64/attr-model-4.c: New test. - * gcc.target/loongarch/la64/attr-model-5.c: New test. - * gcc.target/loongarch/la64/attr-model-diag.c: New test. - * gcc.target/loongarch/la64/attr-model-test.c: New test. - * gcc.target/loongarch/la64/bitint-alignments.c: New test. - * gcc.target/loongarch/la64/bitint-args.c: New test. - * gcc.target/loongarch/la64/bitint-sizes.c: New test. - * gcc.target/loongarch/la64/bitwise-shift-reassoc.c: New test. - * gcc.target/loongarch/la64/bitwise_extend.c: New test. - * gcc.target/loongarch/la64/bstrins-1.c: New test. - * gcc.target/loongarch/la64/bstrins-2.c: New test. - * gcc.target/loongarch/la64/bstrins-3.c: New test. - * gcc.target/loongarch/la64/bstrins-4.c: New test. - * gcc.target/loongarch/la64/bstrpick_alsl_paired.c: New test. - * gcc.target/loongarch/la64/bytepick_combine.c: New test. - * gcc.target/loongarch/la64/bytepick_shift_128.c: New test. - * gcc.target/loongarch/la64/can_inline_1.c: New test. - * gcc.target/loongarch/la64/can_inline_2.c: New test. - * gcc.target/loongarch/la64/can_inline_3.c: New test. - * gcc.target/loongarch/la64/can_inline_4.c: New test. - * gcc.target/loongarch/la64/can_inline_5.c: New test. - * gcc.target/loongarch/la64/can_inline_6.c: New test. - * gcc.target/loongarch/la64/cmodel-extreme-1.c: New test. - * gcc.target/loongarch/la64/cmodel-extreme-2.c: New test. - * gcc.target/loongarch/la64/cmodel-func-attr-1.c: New test. - * gcc.target/loongarch/la64/cmodel-pragma-attr-1.c: New test. - * gcc.target/loongarch/la64/cmov_ii.c: New test. - * gcc.target/loongarch/la64/compare-both-non-zero.c: New test. - * gcc.target/loongarch/la64/conditional-move-opt-1.c: New test. - * gcc.target/loongarch/la64/conditional-move-opt-2.c: New test. - * gcc.target/loongarch/la64/conditional-move-opt-3.c: New test. - * gcc.target/loongarch/la64/const-double-zero-stx.c: New test. - * gcc.target/loongarch/la64/crc-sext.c: New test. - * gcc.target/loongarch/la64/direct-extern-1.c: New test. - * gcc.target/loongarch/la64/div-div32.c: New test. - * gcc.target/loongarch/la64/div-no-div32.c: New test. - * gcc.target/loongarch/la64/divf.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-extreme-tls-desc.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-lto.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-2.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-3.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-no-anchor.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-tls-desc.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-tls-ld-gd.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-auto-tls-le-ie.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-extreme-auto-tls-ld-gd.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-extreme-tls-desc.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-medium-auto-tls-ld-gd.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-medium-call36-auto-tls-ld-gd.c: New test. - * gcc.target/loongarch/la64/explicit-relocs-tls-desc.c: New test. - * gcc.target/loongarch/la64/extendsidi2-combine.c: New test. - * gcc.target/loongarch/la64/fclass-compile.c: New test. - * gcc.target/loongarch/la64/fclass-run.c: New test. - * gcc.target/loongarch/la64/flogb.c: New test. - * gcc.target/loongarch/la64/flt-abi-isa-1.c: New test. - * gcc.target/loongarch/la64/flt-abi-isa-2.c: New test. - * gcc.target/loongarch/la64/flt-abi-isa-3.c: New test. - * gcc.target/loongarch/la64/flt-abi-isa-4.c: New test. - * gcc.target/loongarch/la64/frint.c: New test. - * gcc.target/loongarch/la64/fscaleb.c: New test. - * gcc.target/loongarch/la64/ftint-no-inexact.c: New test. - * gcc.target/loongarch/la64/ftint.c: New test. - * gcc.target/loongarch/la64/func-call-1.c: New test. - * gcc.target/loongarch/la64/func-call-2.c: New test. - * gcc.target/loongarch/la64/func-call-3.c: New test. - * gcc.target/loongarch/la64/func-call-4.c: New test. - * gcc.target/loongarch/la64/func-call-5.c: New test. - * gcc.target/loongarch/la64/func-call-6.c: New test. - * gcc.target/loongarch/la64/func-call-7.c: New test. - * gcc.target/loongarch/la64/func-call-8.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-1.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-2.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-3.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-4.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-5.c: New test. - * gcc.target/loongarch/la64/func-call-extreme-6.c: New test. - * gcc.target/loongarch/la64/func-call-medium-1.c: New test. - * gcc.target/loongarch/la64/func-call-medium-2.c: New test. - * gcc.target/loongarch/la64/func-call-medium-3.c: New test. - * gcc.target/loongarch/la64/func-call-medium-5.c: New test. - * gcc.target/loongarch/la64/func-call-medium-6.c: New test. - * gcc.target/loongarch/la64/func-call-medium-7.c: New test. - * gcc.target/loongarch/la64/func-call-medium-8.c: New test. - * gcc.target/loongarch/la64/func-call-medium-call36-1.c: New test. - * gcc.target/loongarch/la64/func-call-medium-call36.c: New test. - * gcc.target/loongarch/la64/imm-load.c: New test. - * gcc.target/loongarch/la64/imm-load1.c: New test. - * gcc.target/loongarch/la64/invariant-recip.c: New test. - * gcc.target/loongarch/la64/la64.exp: New test. - * gcc.target/loongarch/la64/larch-frecipe-builtin.c: New test. - * gcc.target/loongarch/la64/larch-frecipe-intrinsic.c: New test. - * gcc.target/loongarch/la64/lasx-func-attr-1.c: New test. - * gcc.target/loongarch/la64/lasx-pragma-attr-1.c: New test. - * gcc.target/loongarch/la64/lsx-func-attr-1.c: New test. - * gcc.target/loongarch/la64/lsx-pragma-attr-1.c: New test. - * gcc.target/loongarch/la64/math-float-128.c: New test. - * gcc.target/loongarch/la64/mem-and-mask-opt.c: New test. - * gcc.target/loongarch/la64/memcpy-vec-1.c: New test. - * gcc.target/loongarch/la64/memcpy-vec-2.c: New test. - * gcc.target/loongarch/la64/memcpy-vec-3.c: New test. - * gcc.target/loongarch/la64/mode-tieable-opt.c: New test. - * gcc.target/loongarch/la64/mov-zero-2.c: New test. - * gcc.target/loongarch/la64/movcf2gr-via-fr.c: New test. - * gcc.target/loongarch/la64/movcf2gr.c: New test. - * gcc.target/loongarch/la64/mul-const-reduction.c: New test. - * gcc.target/loongarch/la64/mulh_wu.c: New test. - * gcc.target/loongarch/la64/mulw_d_w.c: New test. - * gcc.target/loongarch/la64/mulw_d_wu.c: New test. - * gcc.target/loongarch/la64/pr109465-1.c: New test. - * gcc.target/loongarch/la64/pr109465-2.c: New test. - * gcc.target/loongarch/la64/pr109465-3.c: New test. - * gcc.target/loongarch/la64/pr113148.c: New test. - * gcc.target/loongarch/la64/pr114861.c: New test. - * gcc.target/loongarch/la64/pr118561.c: New test. - * gcc.target/loongarch/la64/pr118828-2.c: New test. - * gcc.target/loongarch/la64/pr118828-3.c: New test. - * gcc.target/loongarch/la64/pr118828-4.c: New test. - * gcc.target/loongarch/la64/pr118828.c: New test. - * gcc.target/loongarch/la64/pr118843.c: New test. - * gcc.target/loongarch/la64/pr119127.c: New test. - * gcc.target/loongarch/la64/pr121542.c: New test. - * gcc.target/loongarch/la64/pr121634.c: New test. - * gcc.target/loongarch/la64/pr121875.c: New test. - * gcc.target/loongarch/la64/prolog-opt.c: New test. - * gcc.target/loongarch/la64/recip-divf.c: New test. - * gcc.target/loongarch/la64/recip-sqrtf.c: New test. - * gcc.target/loongarch/la64/relocs-symbol-noaddend.c: New test. - * gcc.target/loongarch/la64/revb.c: New test. - * gcc.target/loongarch/la64/rotl-with-rotr.c: New test. - * gcc.target/loongarch/la64/rotrw.c: New test. - * gcc.target/loongarch/la64/sign-extend-1.c: New test. - * gcc.target/loongarch/la64/sign-extend-2.c: New test. - * gcc.target/loongarch/la64/sign-extend-3.c: New test. - * gcc.target/loongarch/la64/sign-extend-4.c: New test. - * gcc.target/loongarch/la64/sign-extend-5.c: New test. - * gcc.target/loongarch/la64/sign-extend-6.c: New test. - * gcc.target/loongarch/la64/sign-extend-bitwise.c: New test. - * gcc.target/loongarch/la64/sign_extend_ashift.c: New test. - * gcc.target/loongarch/la64/slt-sign-extend.c: New test. - * gcc.target/loongarch/la64/smuldi3_highpart.c: New test. - * gcc.target/loongarch/la64/spill-less.c: New test. - * gcc.target/loongarch/la64/sqrtf.c: New test. - * gcc.target/loongarch/la64/switch-qi.c: New test. - * gcc.target/loongarch/la64/tls-extreme-macro.c: New test. - * gcc.target/loongarch/la64/tls-gd-noplt.c: New test. - * gcc.target/loongarch/la64/tls-ie-extreme.c: New test. - * gcc.target/loongarch/la64/tls-ie-norelax.c: New test. - * gcc.target/loongarch/la64/tls-ie-relax.c: New test. - * gcc.target/loongarch/la64/tls-le-relax.c: New test. - * gcc.target/loongarch/la64/widen-mul-rtx-cost-signed.c: New test. - * gcc.target/loongarch/la64/widen-mul-rtx-cost-unsigned.c: New test. - * gcc.target/loongarch/la64/zero-size-field-pass.c: New test. - * gcc.target/loongarch/la64/zero-size-field-ret.c: New test. - * gcc.target/loongarch/vector/lasx/abd-lasx.c: New test. - * gcc.target/loongarch/vector/lasx/avg-ceil-lasx.c: New test. - * gcc.target/loongarch/vector/lasx/avg-floor-lasx.c: New test. - * gcc.target/loongarch/vector/lasx/fnmam4-vec.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-andn-iorn.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-extract-even_odd-opt.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-func-attr-2.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-pragma-attr-2.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-reduc-1.c: New test. - * gcc.target/loongarch/vector/lasx/lasx-xvpermi_q-opt.c: New test. - * gcc.target/loongarch/vector/lasx/pr112476-2.c: New test. - * gcc.target/loongarch/vector/lasx/pr112476-4.c: New test. - * gcc.target/loongarch/vector/lasx/pr113033.c: New test. - * gcc.target/loongarch/vector/lasx/pragma-push-pop.c: New test. - * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-b.c: New test. - * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-d.c: New test. - * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-h.c: New test. - * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-w.c: New test. - * gcc.target/loongarch/vector/lasx/sad-lasx.c: New test. - * gcc.target/loongarch/vector/lasx/strict-align.c: New test. - * gcc.target/loongarch/vector/lasx/vec_pack_unpack_256.c: New test. - * gcc.target/loongarch/vector/lasx/vec_reduc_half.c: New test. - * gcc.target/loongarch/vector/lasx/vect-extract.c: New test. - * gcc.target/loongarch/vector/lasx/vect-frint-no-inexact.c: New test. - * gcc.target/loongarch/vector/lasx/vect-frint.c: New test. - * gcc.target/loongarch/vector/lasx/vect-ftint-no-inexact.c: New test. - * gcc.target/loongarch/vector/lasx/vect-ftint.c: New test. - * gcc.target/loongarch/vector/lasx/vect-ld-st-imm12.c: New test. - * gcc.target/loongarch/vector/lasx/vect-muh.c: New test. - * gcc.target/loongarch/vector/lasx/vect-rotr.c: New test. - * gcc.target/loongarch/vector/lasx/vect-shuf-fp.c: New test. - * gcc.target/loongarch/vector/lasx/vect-slp-two-operator.c: New test. - * gcc.target/loongarch/vector/lasx/vect-widen-add.c: New test. - * gcc.target/loongarch/vector/lasx/vect-widen-mul.c: New test. - * gcc.target/loongarch/vector/lasx/vect-widen-sub.c: New test. - * gcc.target/loongarch/vector/lasx/vfmax-vfmin.c: New test. - * gcc.target/loongarch/vector/lasx/vrepli.c: New test. - * gcc.target/loongarch/vector/lasx/wide-mul-reduc-1.c: New test. - * gcc.target/loongarch/vector/lasx/wide-mul-reduc-2.c: New test. - * gcc.target/loongarch/vector/lasx/xvfcmp-d.c: New test. - * gcc.target/loongarch/vector/lasx/xvfcmp-f.c: New test. - * gcc.target/loongarch/vector/lsx/abd-lsx.c: New test. - * gcc.target/loongarch/vector/lsx/avg-ceil-lsx.c: New test. - * gcc.target/loongarch/vector/lsx/avg-floor-lsx.c: New test. - * gcc.target/loongarch/vector/lsx/lsx-andn-iorn.c: New test. - * gcc.target/loongarch/vector/lsx/lsx-func-attr-2.c: New test. - * gcc.target/loongarch/vector/lsx/lsx-pragma-attr-2.c: New test. - * gcc.target/loongarch/vector/lsx/mov-zero-1.c: New test. - * gcc.target/loongarch/vector/lsx/popcnt.c: New test. - * gcc.target/loongarch/vector/lsx/popcount.c: New test. - * gcc.target/loongarch/vector/lsx/pr112476-1.c: New test. - * gcc.target/loongarch/vector/lsx/pr112476-3.c: New test. - * gcc.target/loongarch/vector/lsx/pr119084.c: New test. - * gcc.target/loongarch/vector/lsx/pr121064.c: New test. - * gcc.target/loongarch/vector/lsx/pr122097.c: New test. - * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-b.c: New test. - * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-d.c: New test. - * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-h.c: New test. - * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-w.c: New test. - * gcc.target/loongarch/vector/lsx/sad-lsx.c: New test. - * gcc.target/loongarch/vector/lsx/vec_pack_unpack_128.c: New test. - * gcc.target/loongarch/vector/lsx/vect-frint-scalar-no-inexact.c: New test. - * gcc.target/loongarch/vector/lsx/vect-frint-scalar.c: New test. - * gcc.target/loongarch/vector/lsx/vect-shift-imm-round.c: New test. - * gcc.target/loongarch/vector/lsx/vector-func-attr-1.c: New test. - * gcc.target/loongarch/vector/lsx/vector-pragma-attr-1.c: New test. - * gcc.target/loongarch/vector/lsx/vfcmp-d.c: New test. - * gcc.target/loongarch/vector/lsx/vfcmp-f.c: New test. - * gcc.target/loongarch/vector/lsx/xorsign-run.c: New test. - * gcc.target/loongarch/vector/lsx/xorsign.c: New test. - -2025-12-12 mengqinggang <mengqinggang@loongson.cn> - - * g++.target/loongarch/bytepick.C: Skip on LA32. - * g++.target/loongarch/got-load.C: Likewise. - * g++.target/loongarch/pr106828.C: Likewise. - * g++.target/loongarch/vect-ashr-lshr.C: Add loongarch_asx check. - * gcc.dg/ifcvt-4.c: Skip on LA32. - * gcc.dg/stack-usage-1.c: Change __loongarch_lp64 to __loongarch__. - * gcc.dg/tree-ssa/gen-vect-2.c: Skip on LoongArch. - * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. - * gcc.dg/tree-ssa/pr83403-1.c: Add dg-additional-options. - * gcc.dg/tree-ssa/pr83403-2.c: Likewise. - * gcc.target/loongarch/float-load.c: Add hard_float check. - * gcc.target/loongarch/larch-builtin.c: Skip some check on LA32. - * gcc.target/loongarch/pr115752.c: Add hard_float check. - * gcc.target/loongarch/vector/loongarch-vector.exp: Add - check_effective_target_loongarch_sx. - * lib/target-supports.exp: Add hard float condition to - check_effective_target_scalar_all_fma. - Disable loongarch for check_effective_target_vect_cmdline_needed. - Add check_effective_target_loongarch_sx condition to - check_vect_support_and_set_flags. - * gcc.target/loongarch/abd-lasx.c: Removed. - * gcc.target/loongarch/abd-lsx.c: Removed. - * gcc.target/loongarch/add-const.c: Removed. - * gcc.target/loongarch/alsl-cost.c: Removed. - * gcc.target/loongarch/alsl_wu.c: Removed. - * gcc.target/loongarch/and-large-immediate-opt.c: Removed. - * gcc.target/loongarch/arch-func-attr-1.c: Removed. - * gcc.target/loongarch/arch-pragma-attr-1.c: Removed. - * gcc.target/loongarch/attr-model-1.c: Removed. - * gcc.target/loongarch/attr-model-2.c: Removed. - * gcc.target/loongarch/attr-model-3.c: Removed. - * gcc.target/loongarch/attr-model-4.c: Removed. - * gcc.target/loongarch/attr-model-5.c: Removed. - * gcc.target/loongarch/attr-model-diag.c: Removed. - * gcc.target/loongarch/attr-model-test.c: Removed. - * gcc.target/loongarch/avg-ceil-lasx.c: Removed. - * gcc.target/loongarch/avg-ceil-lsx.c: Removed. - * gcc.target/loongarch/avg-floor-lasx.c: Removed. - * gcc.target/loongarch/avg-floor-lsx.c: Removed. - * gcc.target/loongarch/bitint-alignments.c: Removed. - * gcc.target/loongarch/bitint-args.c: Removed. - * gcc.target/loongarch/bitint-sizes.c: Removed. - * gcc.target/loongarch/bitwise-shift-reassoc.c: Removed. - * gcc.target/loongarch/bitwise_extend.c: Removed. - * gcc.target/loongarch/bstrins-1.c: Removed. - * gcc.target/loongarch/bstrins-2.c: Removed. - * gcc.target/loongarch/bstrins-3.c: Removed. - * gcc.target/loongarch/bstrins-4.c: Removed. - * gcc.target/loongarch/bstrpick_alsl_paired.c: Removed. - * gcc.target/loongarch/bytepick_combine.c: Removed. - * gcc.target/loongarch/bytepick_shift_128.c: Removed. - * gcc.target/loongarch/can_inline_1.c: Removed. - * gcc.target/loongarch/can_inline_2.c: Removed. - * gcc.target/loongarch/can_inline_3.c: Removed. - * gcc.target/loongarch/can_inline_4.c: Removed. - * gcc.target/loongarch/can_inline_5.c: Removed. - * gcc.target/loongarch/can_inline_6.c: Removed. - * gcc.target/loongarch/cmodel-extreme-1.c: Removed. - * gcc.target/loongarch/cmodel-extreme-2.c: Removed. - * gcc.target/loongarch/cmodel-func-attr-1.c: Removed. - * gcc.target/loongarch/cmodel-pragma-attr-1.c: Removed. - * gcc.target/loongarch/cmov_ii.c: Removed. - * gcc.target/loongarch/compare-both-non-zero.c: Removed. - * gcc.target/loongarch/conditional-move-opt-1.c: Removed. - * gcc.target/loongarch/conditional-move-opt-2.c: Removed. - * gcc.target/loongarch/conditional-move-opt-3.c: Removed. - * gcc.target/loongarch/const-double-zero-stx.c: Removed. - * gcc.target/loongarch/crc-sext.c: Removed. - * gcc.target/loongarch/direct-extern-1.c: Removed. - * gcc.target/loongarch/div-div32.c: Removed. - * gcc.target/loongarch/div-no-div32.c: Removed. - * gcc.target/loongarch/divf.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-extreme-tls-desc.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-lto.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-single-load-store-2.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-single-load-store-3.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-single-load-store-no-anchor.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-single-load-store.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-tls-desc.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-tls-ld-gd.c: Removed. - * gcc.target/loongarch/explicit-relocs-auto-tls-le-ie.c: Removed. - * gcc.target/loongarch/explicit-relocs-extreme-auto-tls-ld-gd.c: Removed. - * gcc.target/loongarch/explicit-relocs-extreme-tls-desc.c: Removed. - * gcc.target/loongarch/explicit-relocs-medium-auto-tls-ld-gd.c: Removed. - * gcc.target/loongarch/explicit-relocs-medium-call36-auto-tls-ld-gd.c: Removed. - * gcc.target/loongarch/explicit-relocs-tls-desc.c: Removed. - * gcc.target/loongarch/extendsidi2-combine.c: Removed. - * gcc.target/loongarch/fclass-compile.c: Removed. - * gcc.target/loongarch/fclass-run.c: Removed. - * gcc.target/loongarch/flogb.c: Removed. - * gcc.target/loongarch/flt-abi-isa-1.c: Removed. - * gcc.target/loongarch/flt-abi-isa-2.c: Removed. - * gcc.target/loongarch/flt-abi-isa-3.c: Removed. - * gcc.target/loongarch/flt-abi-isa-4.c: Removed. - * gcc.target/loongarch/fnmam4-vec.c: Removed. - * gcc.target/loongarch/frint.c: Removed. - * gcc.target/loongarch/fscaleb.c: Removed. - * gcc.target/loongarch/ftint-no-inexact.c: Removed. - * gcc.target/loongarch/ftint.c: Removed. - * gcc.target/loongarch/func-call-1.c: Removed. - * gcc.target/loongarch/func-call-2.c: Removed. - * gcc.target/loongarch/func-call-3.c: Removed. - * gcc.target/loongarch/func-call-4.c: Removed. - * gcc.target/loongarch/func-call-5.c: Removed. - * gcc.target/loongarch/func-call-6.c: Removed. - * gcc.target/loongarch/func-call-7.c: Removed. - * gcc.target/loongarch/func-call-8.c: Removed. - * gcc.target/loongarch/func-call-extreme-1.c: Removed. - * gcc.target/loongarch/func-call-extreme-2.c: Removed. - * gcc.target/loongarch/func-call-extreme-3.c: Removed. - * gcc.target/loongarch/func-call-extreme-4.c: Removed. - * gcc.target/loongarch/func-call-extreme-5.c: Removed. - * gcc.target/loongarch/func-call-extreme-6.c: Removed. - * gcc.target/loongarch/func-call-medium-1.c: Removed. - * gcc.target/loongarch/func-call-medium-2.c: Removed. - * gcc.target/loongarch/func-call-medium-3.c: Removed. - * gcc.target/loongarch/func-call-medium-5.c: Removed. - * gcc.target/loongarch/func-call-medium-6.c: Removed. - * gcc.target/loongarch/func-call-medium-7.c: Removed. - * gcc.target/loongarch/func-call-medium-8.c: Removed. - * gcc.target/loongarch/func-call-medium-call36-1.c: Removed. - * gcc.target/loongarch/func-call-medium-call36.c: Removed. - * gcc.target/loongarch/imm-load.c: Removed. - * gcc.target/loongarch/imm-load1.c: Removed. - * gcc.target/loongarch/invariant-recip.c: Removed. - * gcc.target/loongarch/larch-frecipe-builtin.c: Removed. - * gcc.target/loongarch/larch-frecipe-intrinsic.c: Removed. - * gcc.target/loongarch/lasx-andn-iorn.c: Removed. - * gcc.target/loongarch/lasx-extract-even_odd-opt.c: Removed. - * gcc.target/loongarch/lasx-func-attr-1.c: Removed. - * gcc.target/loongarch/lasx-func-attr-2.c: Removed. - * gcc.target/loongarch/lasx-pragma-attr-1.c: Removed. - * gcc.target/loongarch/lasx-pragma-attr-2.c: Removed. - * gcc.target/loongarch/lasx-reduc-1.c: Removed. - * gcc.target/loongarch/lasx-xvpermi_q-opt.c: Removed. - * gcc.target/loongarch/lsx-andn-iorn.c: Removed. - * gcc.target/loongarch/lsx-func-attr-1.c: Removed. - * gcc.target/loongarch/lsx-func-attr-2.c: Removed. - * gcc.target/loongarch/lsx-pragma-attr-1.c: Removed. - * gcc.target/loongarch/lsx-pragma-attr-2.c: Removed. - * gcc.target/loongarch/math-float-128.c: Removed. - * gcc.target/loongarch/mem-and-mask-opt.c: Removed. - * gcc.target/loongarch/memcpy-vec-1.c: Removed. - * gcc.target/loongarch/memcpy-vec-2.c: Removed. - * gcc.target/loongarch/memcpy-vec-3.c: Removed. - * gcc.target/loongarch/mode-tieable-opt.c: Removed. - * gcc.target/loongarch/mov-zero-1.c: Removed. - * gcc.target/loongarch/mov-zero-2.c: Removed. - * gcc.target/loongarch/movcf2gr-via-fr.c: Removed. - * gcc.target/loongarch/movcf2gr.c: Removed. - * gcc.target/loongarch/mul-const-reduction.c: Removed. - * gcc.target/loongarch/mulh_wu.c: Removed. - * gcc.target/loongarch/mulw_d_w.c: Removed. - * gcc.target/loongarch/mulw_d_wu.c: Removed. - * gcc.target/loongarch/popcnt.c: Removed. - * gcc.target/loongarch/popcount.c: Removed. - * gcc.target/loongarch/pr109465-1.c: Removed. - * gcc.target/loongarch/pr109465-2.c: Removed. - * gcc.target/loongarch/pr109465-3.c: Removed. - * gcc.target/loongarch/pr112476-1.c: Removed. - * gcc.target/loongarch/pr112476-2.c: Removed. - * gcc.target/loongarch/pr112476-3.c: Removed. - * gcc.target/loongarch/pr112476-4.c: Removed. - * gcc.target/loongarch/pr113033.c: Removed. - * gcc.target/loongarch/pr113148.c: Removed. - * gcc.target/loongarch/pr114861.c: Removed. - * gcc.target/loongarch/pr118561.c: Removed. - * gcc.target/loongarch/pr118828-2.c: Removed. - * gcc.target/loongarch/pr118828-3.c: Removed. - * gcc.target/loongarch/pr118828-4.c: Removed. - * gcc.target/loongarch/pr118828.c: Removed. - * gcc.target/loongarch/pr118843.c: Removed. - * gcc.target/loongarch/pr119084.c: Removed. - * gcc.target/loongarch/pr119127.c: Removed. - * gcc.target/loongarch/pr121064.c: Removed. - * gcc.target/loongarch/pr121542.c: Removed. - * gcc.target/loongarch/pr121634.c: Removed. - * gcc.target/loongarch/pr121875.c: Removed. - * gcc.target/loongarch/pr122097.c: Removed. - * gcc.target/loongarch/pragma-push-pop.c: Removed. - * gcc.target/loongarch/prolog-opt.c: Removed. - * gcc.target/loongarch/recip-divf.c: Removed. - * gcc.target/loongarch/recip-sqrtf.c: Removed. - * gcc.target/loongarch/relocs-symbol-noaddend.c: Removed. - * gcc.target/loongarch/revb.c: Removed. - * gcc.target/loongarch/rotl-with-rotr.c: Removed. - * gcc.target/loongarch/rotl-with-vrotr-b.c: Removed. - * gcc.target/loongarch/rotl-with-vrotr-d.c: Removed. - * gcc.target/loongarch/rotl-with-vrotr-h.c: Removed. - * gcc.target/loongarch/rotl-with-vrotr-w.c: Removed. - * gcc.target/loongarch/rotl-with-xvrotr-b.c: Removed. - * gcc.target/loongarch/rotl-with-xvrotr-d.c: Removed. - * gcc.target/loongarch/rotl-with-xvrotr-h.c: Removed. - * gcc.target/loongarch/rotl-with-xvrotr-w.c: Removed. - * gcc.target/loongarch/rotrw.c: Removed. - * gcc.target/loongarch/sad-lasx.c: Removed. - * gcc.target/loongarch/sad-lsx.c: Removed. - * gcc.target/loongarch/sign-extend-1.c: Removed. - * gcc.target/loongarch/sign-extend-2.c: Removed. - * gcc.target/loongarch/sign-extend-3.c: Removed. - * gcc.target/loongarch/sign-extend-4.c: Removed. - * gcc.target/loongarch/sign-extend-5.c: Removed. - * gcc.target/loongarch/sign-extend-6.c: Removed. - * gcc.target/loongarch/sign-extend-bitwise.c: Removed. - * gcc.target/loongarch/sign_extend_ashift.c: Removed. - * gcc.target/loongarch/slt-sign-extend.c: Removed. - * gcc.target/loongarch/smuldi3_highpart.c: Removed. - * gcc.target/loongarch/spill-less.c: Removed. - * gcc.target/loongarch/sqrtf.c: Removed. - * gcc.target/loongarch/strict-align.c: Removed. - * gcc.target/loongarch/switch-qi.c: Removed. - * gcc.target/loongarch/tls-extreme-macro.c: Removed. - * gcc.target/loongarch/tls-gd-noplt.c: Removed. - * gcc.target/loongarch/tls-ie-extreme.c: Removed. - * gcc.target/loongarch/tls-ie-norelax.c: Removed. - * gcc.target/loongarch/tls-ie-relax.c: Removed. - * gcc.target/loongarch/tls-le-relax.c: Removed. - * gcc.target/loongarch/vec_pack_unpack_128.c: Removed. - * gcc.target/loongarch/vec_pack_unpack_256.c: Removed. - * gcc.target/loongarch/vec_reduc_half.c: Removed. - * gcc.target/loongarch/vect-extract.c: Removed. - * gcc.target/loongarch/vect-frint-no-inexact.c: Removed. - * gcc.target/loongarch/vect-frint-scalar-no-inexact.c: Removed. - * gcc.target/loongarch/vect-frint-scalar.c: Removed. - * gcc.target/loongarch/vect-frint.c: Removed. - * gcc.target/loongarch/vect-ftint-no-inexact.c: Removed. - * gcc.target/loongarch/vect-ftint.c: Removed. - * gcc.target/loongarch/vect-ld-st-imm12.c: Removed. - * gcc.target/loongarch/vect-muh.c: Removed. - * gcc.target/loongarch/vect-rotr.c: Removed. - * gcc.target/loongarch/vect-shift-imm-round.c: Removed. - * gcc.target/loongarch/vect-shuf-fp.c: Removed. - * gcc.target/loongarch/vect-slp-two-operator.c: Removed. - * gcc.target/loongarch/vect-widen-add.c: Removed. - * gcc.target/loongarch/vect-widen-mul.c: Removed. - * gcc.target/loongarch/vect-widen-sub.c: Removed. - * gcc.target/loongarch/vector-func-attr-1.c: Removed. - * gcc.target/loongarch/vector-pragma-attr-1.c: Removed. - * gcc.target/loongarch/vfcmp-d.c: Removed. - * gcc.target/loongarch/vfcmp-f.c: Removed. - * gcc.target/loongarch/vfmax-vfmin.c: Removed. - * gcc.target/loongarch/vrepli.c: Removed. - * gcc.target/loongarch/wide-mul-reduc-1.c: Removed. - * gcc.target/loongarch/wide-mul-reduc-2.c: Removed. - * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: Removed. - * gcc.target/loongarch/widen-mul-rtx-cost-unsigned.c: Removed. - * gcc.target/loongarch/xorsign-run.c: Removed. - * gcc.target/loongarch/xorsign.c: Removed. - * gcc.target/loongarch/xvfcmp-d.c: Removed. - * gcc.target/loongarch/xvfcmp-f.c: Removed. - * gcc.target/loongarch/zero-size-field-pass.c: Removed. - * gcc.target/loongarch/zero-size-field-ret.c: Removed. - -2025-12-12 mengqinggang <mengqinggang@loongson.cn> - - * gcc.target/loongarch/la32/memcpy.c: New test. - -2025-12-12 Jiajie Chen <c@jia.je> - - * gcc.target/loongarch/la32/trunc_int_for_mode.c: New test. - -2025-12-12 mengqinggang <mengqinggang@loongson.cn> - - * gcc.target/loongarch/la32/and.c: New test. - * gcc.target/loongarch/la32/la32.exp: New test. - -2025-12-12 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/manorboy.a68: New file. - -2025-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/107406 - * gfortran.dg/coarray_lock_3.f90: Remove dg-error on - valid code. - * gfortran.dg/coarray_lock_4.f90: Likewise. - * gfortran.dg/coarray_lock_5.f90: Likwise - Co-Authored by: Andre Vehreschild <vehre@gcc.gnu.org> - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/123098 - * gcc.dg/vect/vect-simd-clone-15.c (foo): Use OpenMP 5.2 - syntax for linear clause. - * g++.dg/vect/simd-clone-6.cc (foo): Likewise. - * c-c++-common/goacc-gomp/pr93465-1.c: Use - #pragma omp begin declare target instead of - #pragma omp declare target. - * c-c++-common/goacc-gomp/nesting-fail-1.c: Use #pragma omp masked - instead of #pragma omp master. - * gfortran.dg/goacc-gomp/pr102330-1.f90 (r1): Use - !$omp masked taskloop simd instead of !$omp master taskloop simd. - * gfortran.dg/vect/pr86421.f90 (foo): Use OpenMP 5.2 syntax for - linear clause. - * gfortran.dg/gomp/allocate-16.f90: Use \\\$ instead of $ in dg-error - and use relative line numbers instead of absolute. - * gfortran.dg/gomp/groupprivate-2.f90: Add -Wno-deprecated-openmp - to dg-additional-options. - * gfortran.dg/gomp/groupprivate-5.f90: Likewise. - * gfortran.dg/goacc/pr93329.f90: Likewise. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/put_image2.ads: New test. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/121114 - * g++.dg/tree-ssa/pr110819.C: Guard scan-tree-dump-not delete on - c++23_down and add comment explaining why C++26 fails that. - * g++.dg/tree-ssa/pr96945.C: Likewise. - * g++.dg/tree-ssa/pr109442.C: Likewise. - * g++.dg/tree-ssa/pr116868.C: Likewise. - * g++.dg/tree-ssa/pr58483.C: Likewise. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - * gfortran.dg/interface_16.f90: Fix comment typo,calll -> call. - -2025-12-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/107142 - * gfortran.dg/pdt_78.f03: New test. - -2025-12-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/110012 - * gfortran.dg/pdt_77.f03: New test. - -2025-12-11 Jason Merrill <jason@redhat.com> - - * lib/g++-dg.exp: Handle "modules" std. - * lib/target-supports.exp (check_effective_target_modules): New. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * gfortran.dg/gomp/allocate-14.f90: Suppress warnings. - * gfortran.dg/gomp/allocate-16.f90: Ditto. - * gfortran.dg/gomp/allocate-5.f90: Ditto. - * gfortran.dg/gomp/allocate-6.f90: Ditto. - * gfortran.dg/gomp/allocate-7.f90: Ditto. - * gfortran.dg/gomp/allocators-3.f90: Ditto. - * gfortran.dg/gomp/declare-simd-2.f90: Ditto. - * gfortran.dg/gomp/declare-simd-6.f90: Ditto. - * gfortran.dg/gomp/declare-target-1.f90: Ditto. - * gfortran.dg/gomp/declare-target-2.f90: Ditto. - * gfortran.dg/gomp/declare-target-4.f90: Ditto. - * gfortran.dg/gomp/declare-target-5.f90: Ditto. - * gfortran.dg/gomp/declare-target-indirect-1.f90: Ditto. - * gfortran.dg/gomp/declare-target-indirect-2.f90: Ditto. - * gfortran.dg/gomp/declare-variant-10.f90: Ditto. - * gfortran.dg/gomp/declare-variant-8.f90: Ditto. - * gfortran.dg/gomp/implicit-save.f90: Ditto. - * gfortran.dg/gomp/linear-1.f90: Ditto. - * gfortran.dg/gomp/linear-2.f90: Ditto. - * gfortran.dg/gomp/linear-3.f90: Ditto. - * gfortran.dg/gomp/linear-4.f90: Ditto. - * gfortran.dg/gomp/linear-6.f90: Ditto. - * gfortran.dg/gomp/map-12.f90: Ditto. - * gfortran.dg/gomp/map-6.f90: Ditto. - * gfortran.dg/gomp/map-7.f90: Ditto. - * gfortran.dg/gomp/map-8.f90: Ditto. - * gfortran.dg/gomp/order-8.f90: Ditto. - * gfortran.dg/gomp/pr83977.f90: Ditto. - * gfortran.dg/gomp/reduction1.f90: Ditto. - * gfortran.dg/gomp/schedule-modifiers-2.f90: Ditto. - * gfortran.dg/gomp/workshare-reduction-55.f90: Ditto. - * gfortran.dg/gomp/workshare-reduction-56.f90: Ditto. - * gfortran.dg/gomp/workshare-reduction-57.f90: Ditto. - * gfortran.dg/gomp/workshare-reduction-58.f90: Ditto. - * gfortran.dg/gomp/52-deps.f90: New test. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * c-c++-common/gomp/Wparentheses-2.c: Suppress warnings. - * c-c++-common/gomp/attrs-metadirective-1.c: Ditto. - * c-c++-common/gomp/attrs-metadirective-2.c: Ditto. - * c-c++-common/gomp/attrs-metadirective-3.c: Ditto. - * c-c++-common/gomp/attrs-metadirective-4.c: Ditto. - * c-c++-common/gomp/attrs-metadirective-5.c: Ditto. - * c-c++-common/gomp/attrs-metadirective-8.c: Ditto. - * c-c++-common/gomp/begin-declare-target-1.c: Ditto. - * c-c++-common/gomp/begin-declare-target-2.c: Ditto. - * c-c++-common/gomp/clauses-3.c: Ditto. - * c-c++-common/gomp/declare-target-1.c: Ditto. - * c-c++-common/gomp/declare-target-2.c: Ditto. - * c-c++-common/gomp/declare-target-3.c: Ditto. - * c-c++-common/gomp/declare-target-4.c: Ditto. - * c-c++-common/gomp/declare-target-5.c: Ditto. - * c-c++-common/gomp/declare-target-7.c: Ditto. - * c-c++-common/gomp/declare-target-indirect-1.c: Ditto. - * c-c++-common/gomp/declare-target-indirect-2.c: Ditto. - * c-c++-common/gomp/declare-variant-10.c: Ditto. - * c-c++-common/gomp/declare-variant-8.c: Ditto. - * c-c++-common/gomp/defaultmap-2.c: Ditto. - * c-c++-common/gomp/defaultmap-3.c: Ditto. - * c-c++-common/gomp/depend-iterator-2.c: Ditto. - * c-c++-common/gomp/depobj-1.c: Ditto. - * c-c++-common/gomp/directive-1.c: Ditto. - * c-c++-common/gomp/distribute-1.c: Ditto. - * c-c++-common/gomp/doacross-1.c: Ditto. - * c-c++-common/gomp/doacross-2.c: Ditto. - * c-c++-common/gomp/doacross-3.c: Ditto. - * c-c++-common/gomp/doacross-4.c: Ditto. - * c-c++-common/gomp/doacross-8.c: Ditto. - * c-c++-common/gomp/linear-1.c: Ditto. - * c-c++-common/gomp/linear-2.c: Ditto. - * c-c++-common/gomp/linear-3.c: Ditto. - * c-c++-common/gomp/loop-6.c: Ditto. - * c-c++-common/gomp/map-1.c: Ditto. - * c-c++-common/gomp/map-3.c: Ditto. - * c-c++-common/gomp/map-6.c: Ditto. - * c-c++-common/gomp/metadirective-1.c: Ditto. - * c-c++-common/gomp/metadirective-2.c: Ditto. - * c-c++-common/gomp/metadirective-3.c: Ditto. - * c-c++-common/gomp/metadirective-4.c: Ditto. - * c-c++-common/gomp/metadirective-5.c: Ditto. - * c-c++-common/gomp/metadirective-8.c: Ditto. - * c-c++-common/gomp/metadirective-construct.c: Ditto. - * c-c++-common/gomp/metadirective-device.c: Ditto. - * c-c++-common/gomp/metadirective-target-device-1.c: Ditto. - * c-c++-common/gomp/metadirective-target-device-2.c: Ditto. - * c-c++-common/gomp/order-2.c: Ditto. - * c-c++-common/gomp/ordered-3.c: Ditto. - * c-c++-common/gomp/ordered-5.c: Ditto. - * c-c++-common/gomp/pr102640.c: Ditto. - * c-c++-common/gomp/pr106836.c: Ditto. - * c-c++-common/gomp/pr120180-1.c: Ditto. - * c-c++-common/gomp/pr88203-1.c: Ditto. - * c-c++-common/gomp/pr88203-2.c: Ditto. - * c-c++-common/gomp/pr88203-3.c: Ditto. - * c-c++-common/gomp/pr91401-2.c: Ditto. - * c-c++-common/gomp/pr91987.c: Ditto. - * c-c++-common/gomp/reverse-offload-1.c: Ditto. - * c-c++-common/gomp/schedule-modifiers-1.c: Ditto. - * c-c++-common/gomp/sink-1.c: Ditto. - * c-c++-common/gomp/sink-2.c: Ditto. - * c-c++-common/gomp/sink-3.c: Ditto. - * c-c++-common/gomp/sink-4.c: Ditto. - * c-c++-common/gomp/sink-5.c: Ditto. - * c-c++-common/gomp/target-teams-1.c: Ditto. - * g++.dg/gomp/attrs-12.C: Ditto. - * g++.dg/gomp/attrs-5.C: Ditto. - * g++.dg/gomp/attrs-9.C: Ditto. - * g++.dg/gomp/clause-3.C: Ditto. - * g++.dg/gomp/declare-simd-3.C: Ditto. - * g++.dg/gomp/declare-simd-4.C: Ditto. - * g++.dg/gomp/declare-simd-6.C: Ditto. - * g++.dg/gomp/declare-simd-7.C: Ditto. - * g++.dg/gomp/declare-simd-8.C: Ditto. - * g++.dg/gomp/declare-target-1.C: Ditto. - * g++.dg/gomp/declare-target-2.C: Ditto. - * g++.dg/gomp/declare-target-3.C: Ditto. - * g++.dg/gomp/declare-target-indirect-1.C: Ditto. - * g++.dg/gomp/depend-iterator-2.C: Ditto. - * g++.dg/gomp/depobj-1.C: Ditto. - * g++.dg/gomp/doacross-2.C: Ditto. - * g++.dg/gomp/linear-1.C: Ditto. - * g++.dg/gomp/linear-2.C: Ditto. - * g++.dg/gomp/linear-3.C: Ditto. - * g++.dg/gomp/linear-5.C: Ditto. - * g++.dg/gomp/map-1.C: Ditto. - * g++.dg/gomp/pr118876.C: Ditto. - * g++.dg/gomp/pr119370.C: Ditto. - * g++.dg/gomp/sink-1.C: Ditto. - * g++.dg/gomp/sink-2.C: Ditto. - * g++.dg/gomp/sink-3.C: Ditto. - * g++.dg/gomp/target-simd-clone-1.C: Ditto. - * g++.dg/gomp/target-simd-clone-2.C: Ditto. - * g++.dg/gomp/target-teams-1.C: Ditto. - * g++.dg/gomp/udr-5.C: Ditto. - * gcc.dg/gomp/attrs-12.c: Ditto. - * gcc.dg/gomp/attrs-5.c: Ditto. - * gcc.dg/gomp/attrs-9.c: Ditto. - * gcc.dg/gomp/clause-1.c: Ditto. - * gcc.dg/gomp/declare-simd-3.c: Ditto. - * gcc.dg/gomp/linear-1.c: Ditto. - * gcc.dg/gomp/metadirective-1.c: Ditto. - * gcc.dg/gomp/pr104757.c: Ditto. - * gcc.dg/gomp/sink-fold-1.c: Ditto. - * gcc.dg/gomp/sink-fold-2.c: Ditto. - * gcc.dg/gomp/sink-fold-3.c: Ditto. - * gcc.dg/gomp/target-simd-clone-1.c: Ditto. - * gcc.dg/gomp/target-simd-clone-2.c: Ditto. - * gcc.dg/gomp/target-simd-clone-3.c: Ditto. - * gcc.dg/gomp/target-simd-clone-4.c: Ditto. - * gcc.dg/gomp/target-simd-clone-5.c: Ditto. - * gcc.dg/gomp/target-simd-clone-6.c: Ditto. - * gcc.dg/gomp/target-simd-clone-7.c: Ditto. - * gcc.dg/gomp/target-simd-clone-8.c: Ditto. - * gcc.dg/gomp/workshare-reduction-55.c: Ditto. - * gcc.dg/gomp/workshare-reduction-56.c: Ditto. - * gcc.dg/gomp/workshare-reduction-57.c: Ditto. - * gcc.dg/gomp/workshare-reduction-58.c: Ditto. - * c-c++-common/gomp/52-deps.c: New test. - * g++.dg/gomp/map-csm-dep.C: New test. - * gcc.dg/gomp/map-csm-dep.c: New test. - -2025-12-11 supers1ngular <supers1ngular@baylibre.com> - - * c-c++-common/cpp/openmp-define-3.c: Bump OMP version. - * c-c++-common/gomp/Wparentheses-1.c: Suppress deprecation - warnings. - * c-c++-common/gomp/Wparentheses-3.c: Ditto. - * c-c++-common/gomp/affinity-3.c: Ditto. - * c-c++-common/gomp/allocate-18.c: Ditto. - * c-c++-common/gomp/cancel-1.c: Ditto. - * c-c++-common/gomp/clause-dups-1.c: Ditto. - * c-c++-common/gomp/clauses-1.c: Suppress deprecation - warnings and fix misspelled directive. Add - '-Wunknown-pragmas'. - * c-c++-common/gomp/clauses-6.c: Suppress deprecation warnings. - * c-c++-common/gomp/declare-variant-1.c: Ditto. - * c-c++-common/gomp/declare-variant-2.c: Ditto. - * c-c++-common/gomp/depend-iterator-1.c: Ditto. - * c-c++-common/gomp/lastprivate-conditional-1.c: Ditto. - * c-c++-common/gomp/loop-1.c: Ditto. - * c-c++-common/gomp/loop-2.c: Ditto. - * c-c++-common/gomp/loop-3.c: Ditto. - * c-c++-common/gomp/loop-4.c: Ditto. - * c-c++-common/gomp/master-combined-1.c: Ditto. - * c-c++-common/gomp/master-combined-2.c: Ditto. - * c-c++-common/gomp/nesting-2.c: Ditto. - * c-c++-common/gomp/pr100902-1.c: Ditto. - * c-c++-common/gomp/pr61486-2.c: Ditto. - * c-c++-common/gomp/pr85696.c: Ditto. - * c-c++-common/gomp/pr85956.c: Ditto. - * c-c++-common/gomp/pr98187.c: Ditto. - * c-c++-common/gomp/pr99928-1.c: Ditto. - * c-c++-common/gomp/pr99928-10.c: Ditto. - * c-c++-common/gomp/pr99928-11.c: Ditto. - * c-c++-common/gomp/pr99928-12.c: Ditto. - * c-c++-common/gomp/pr99928-13.c: Ditto. - * c-c++-common/gomp/pr99928-14.c: Ditto. - * c-c++-common/gomp/pr99928-2.c: Ditto. - * c-c++-common/gomp/pr99928-3.c: Ditto. - * c-c++-common/gomp/pr99928-4.c: Ditto. - * c-c++-common/gomp/pr99928-5.c: Ditto. - * c-c++-common/gomp/pr99928-6.c: Ditto. - * c-c++-common/gomp/pr99928-7.c: Ditto. - * c-c++-common/gomp/pr99928-8.c: Ditto. - * c-c++-common/gomp/pr99928-9.c: Ditto. - * c-c++-common/gomp/task-detach-1.c: Ditto. - * c-c++-common/gomp/teams-2.c: Ditto. - * g++.dg/gomp/attrs-1.C: Ditto. - * g++.dg/gomp/attrs-2.C: Ditto. - * g++.dg/gomp/attrs-4.C: Ditto. - * g++.dg/gomp/block-0.C: Ditto. - * g++.dg/gomp/block-10.C: Ditto. - * g++.dg/gomp/block-5.C: Ditto. - * g++.dg/gomp/block-9.C: Ditto. - * g++.dg/gomp/depend-iterator-1.C: Ditto. - * g++.dg/gomp/master-1.C: Ditto. - * g++.dg/gomp/master-2.C: Ditto. - * g++.dg/gomp/master-3.C: Ditto. - * g++.dg/gomp/method-1.C: Ditto. - * g++.dg/gomp/pr29965-3.C: Ditto. - * g++.dg/gomp/pr29965-9.C: Ditto. - * g++.dg/gomp/pr78363-4.C: Ditto. - * g++.dg/gomp/pr78363-6.C: Ditto. - * g++.dg/gomp/pr79664.C: Ditto. - * g++.dg/gomp/pr94477.C: Ditto. - * g++.dg/gomp/pr94512.C: Ditto. - * g++.dg/gomp/tpl-master-1.C: Ditto. - * gcc.dg/gomp/appendix-a/a.12.1.c: Ditto. - * gcc.dg/gomp/appendix-a/a.33.2.c: Ditto. - * gcc.dg/gomp/attrs-1.c: Ditto. - * gcc.dg/gomp/attrs-2.c: Ditto. - * gcc.dg/gomp/attrs-4.c: Ditto. - * gcc.dg/gomp/block-10.c: Ditto. - * gcc.dg/gomp/block-5.c: Ditto. - * gcc.dg/gomp/block-9.c: Ditto. - * gcc.dg/gomp/master-1.c: Ditto. - * gcc.dg/gomp/master-2.c: Ditto. - * gcc.dg/gomp/master-3.c: Ditto. - * gcc.dg/gomp/nesting-1.c: Ditto. - * gcc.dg/gomp/pr104517.c: Ditto. - * gcc.dg/gomp/pr29965-3.c: Ditto. - * gcc.dg/gomp/pr35818.c: Ditto. - * gcc.dg/gomp/pr91216.c: Ditto. - * gcc.dg/gomp/sharing-2.c: Ditto. - * gfortran.dg/gomp/adjust-args-10.f90: Ditto. - * gfortran.dg/gomp/affinity-1.f90: Ditto. - * gfortran.dg/gomp/allocate-clause.f90: Ditto. - * gfortran.dg/gomp/appendix-a/a.12.1.f90: Ditto. - * gfortran.dg/gomp/appendix-a/a.33.2.f90: Ditto. - * gfortran.dg/gomp/c_ptr_tests_20.f90: Ditto. - * gfortran.dg/gomp/c_ptr_tests_21.f90: Ditto. - * gfortran.dg/gomp/cancel-1.f90: Ditto. - * gfortran.dg/gomp/clauses-1.f90: Ditto. - * gfortran.dg/gomp/declare-variant-1.f90: Ditto. - * gfortran.dg/gomp/depend-iterator-1.f90: Ditto. - * gfortran.dg/gomp/depend-iterator-2.f90: Ditto. - * gfortran.dg/gomp/is_device_ptr-1.f90: Ditto. - * gfortran.dg/gomp/is_device_ptr-2.f90: Ditto. - * gfortran.dg/gomp/is_device_ptr-3.f90: Ditto. - * gfortran.dg/gomp/lastprivate-conditional-1.f90: Ditto. - * gfortran.dg/gomp/loop-4.f90: Ditto. - * gfortran.dg/gomp/loop-exit.f90: Ditto. - * gfortran.dg/gomp/map-3.f90: Ditto. - * gfortran.dg/gomp/nesting-2.f90: Ditto. - * gfortran.dg/gomp/nesting-3.f90: Ditto. - * gfortran.dg/gomp/nowait-2.f90: Ditto. - * gfortran.dg/gomp/nowait-4.f90: Ditto. - * gfortran.dg/gomp/nowait-5.f90: Ditto. - * gfortran.dg/gomp/openmp-simd-2.f90: Ditto. - * gfortran.dg/gomp/openmp-simd-3.f90: Ditto. - * gfortran.dg/gomp/parallel-master-1.f90: Ditto. - * gfortran.dg/gomp/parallel-master-2.f90: Ditto. - * gfortran.dg/gomp/pr107214-8.f90: Ditto. - * gfortran.dg/gomp/pr48117.f90: Ditto. - * gfortran.dg/gomp/pr94672.f90: Ditto. - * gfortran.dg/gomp/pr99928-1.f90: Suppression + fix whitespace. - * gfortran.dg/gomp/pr99928-11.f90: Suppression. - * gfortran.dg/gomp/pr99928-2.f90: Suppression + fix whitespace. - * gfortran.dg/gomp/pr99928-3.f90: Ditto. - * gfortran.dg/gomp/pr99928-4.f90: Ditto. - * gfortran.dg/gomp/pr99928-5.f90: Ditto. - * gfortran.dg/gomp/pr99928-6.f90: Ditto. - * gfortran.dg/gomp/pr99928-8.f90: Ditto. - * gfortran.dg/gomp/sharing-3.f90: Suppress deprecation warnings. - * gfortran.dg/gomp/strictly-structured-block-1.f90: Ditto. - * gfortran.dg/gomp/strictly-structured-block-2.f90: Ditto. - * gfortran.dg/gomp/target1.f90: Ditto. - * gfortran.dg/gomp/taskloop-1.f90: Ditto. - * gfortran.dg/gomp/taskloop-2.f90: Ditto. - * gfortran.dg/openmp-define-3.f90: Bump expected version. - * c-c++-common/gomp/master-construct-dep.c: New test. - * gfortran.dg/gomp/master-construct-dep.f90: New test. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/aggr33.adb: New test. - -2025-12-11 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.dg/tls/struct-2.c: New test. - -2025-12-10 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/i386/lea-3.c: Add -fno-PIE. - * gcc.target/i386/lea-4.c: New, with -fPIE. - -2025-12-10 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/sibcall-12.c: Add -fno-PIE on ia32. - * gcc.target/i386/pr106060-2.c: Likewise. - * gcc.target/i386/pr106060-3.c: Likewise. - * gcc.target/i386/vect-shiftv4qi.c: Likewise. - -2025-12-10 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR middle-end/123069 - * gcc.c-torture/compile/pr123069.c: New test. - -2025-12-10 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/sign-int-2.a68: New test. - * algol68/execute/sign-real-2.a68: Likewise. - -2025-12-10 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/mult-char-1.a68: Cover int*char cases. - -2025-12-10 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/compile-std1.C: Test <vector> translation. - -2025-12-10 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/compile-std1.C: Add dg-module-cmi lines. - * g++.dg/modules/modules.exp (host_header_path): New. - (munge_cmi): Factor out... - (dg-module-cmi): ...from here. - -2025-12-10 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/pr123074.C: Move to... - * g++.target/riscv/rvv/autovec/pr123074.C: ...here. - * gcc.target/riscv/rvv/rvv.exp: Remove 'C'. - -2025-12-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * g++.dg/lookup/extern-c-redecl3.C (pid_t): Define. - Use it for fork return type. - terms of __builtin_fork. - * g++.dg/pid_t-1.C: New test. - * gcc.dg/pid_t-1.c: Likewise. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - PR tree-optimization/123074 - * gcc.target/riscv/rvv/rvv.exp: Include *.C. - * gcc.target/riscv/rvv/autovec/pr123074.C: New test. - -2025-12-09 Qing Zhao <qing.zhao@oracle.com> - - PR c/122982 - * gcc.dg/pointer-counted-by-pr122982.c: New test. - -2025-12-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vmslt.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i8.c: New test. - -2025-12-09 Richard Biener <rguenther@suse.de> - - PR target/121230 - * gcc.target/i386/pr121230.c: New testcase. - -2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - Revert: - 2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * g++.dg/modules/tpl-friend-22.C: New test. - -2025-12-09 Jakub Jelinek <jakub@redhat.com> - - PR c/123018 - * gcc.dg/pr123018.c: New test. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - PR tree-optimization/122635 - * gcc.target/aarch64/sve/pfalse-store.c: Expect more elided - stores. - * gcc.target/riscv/rvv/autovec/pr122635-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr122635-2.c: New test. - * gcc.target/powerpc/p9-vec-length-epil-8.c: Expect two lxvl - less. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/max-vect-1.c: New test. - * gcc.target/riscv/rvv/autovec/max-vect-2.c: New test. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - PR target/123022 - * gcc.target/riscv/rvv/autovec/pr123022-2.c: New test. - * gcc.target/riscv/rvv/autovec/pr123022.c: New test. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - PR target/115325 - * gcc.target/riscv/pragma-target-1.c: New test. - * gcc.target/riscv/pragma-target-2.c: New test. - -2025-12-09 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-1-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-1.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-2-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-2.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-3-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-3.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-4-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-4.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-5-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-5.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-6-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-6.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-7-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-7.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-8-run.c: New test. - * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-8.c: New test. - -2025-12-09 Richard Biener <rguenther@suse.de> - - PR target/123027 - * gcc.target/i386/pr123027.c: New testcase. - * gcc.dg/torture/pr123027.c: Likewise. - -2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122819 - * g++.dg/modules/tpl-friend-22.C: New test. - -2025-12-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/46555 - * gcc.dg/tree-ssa/pr46555.c: New test. - -2025-12-08 Harald Anlauf <anlauf@gmx.de> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/123025 - * gfortran.dg/assumed_charlen_dummy.f90: These tests failed - with the change because of the default -pedantic option - used by the dg.exp mechanisms. Overide this default. - * gfortran.dg/automatic_char_len_1.f90: Ditto. - * gfortran.dg/entry_23.f: Ditto. - * gfortran.dg/finalize_59.f90: Dito. - * gfortran.dg/g77/f90-intrinsic-bit.f: Ditto. - * gfortran.dg/g77/f90-intrinsic-mathematical.f: Ditto. - * gfortran.dg/g77/f90-intrinsic-numeric.f: Ditto. - * gfortran.dg/g77/intrinsic-unix-bessel.f: Ditto. - * gfortran.dg/g77/intrinsic-unix-erf.f: Ditto. - * gfortran.dg/initialization_9.f90: Ditto. - * gfortran.dg/intrinsic_actual_4.f90: Ditto. - * gfortran.dg/namelist_assumed_char.f90: Ditto. - * gfortran.dg/pr15140.f90: Ditto. - -2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/119343 - * g++.dg/template/sfinae-deleted-pr119343.C: New test. - -2025-12-08 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.dg/tls/data-sections-1.c: New test. - -2025-12-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/123040 - * g++.dg/torture/pr123040.C: New testcase. - -2025-12-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/123038 - * gcc.dg/vect/pr123038.c: New testcase. - -2025-12-08 Tamar Christina <tamar.christina@arm.com> - - PR target/123026 - * gcc.target/aarch64/pr123026.c: New test. - -2025-12-08 H.J. Lu <hjl.tools@gmail.com> - - PR target/122343 - * gcc.target/i386/avx2-vpcmpgtq-1.c: Compile with - -fno-fuse-ops-with-volatile-access. - -2025-12-07 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/reduce3.adb: New test. - -2025-12-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/122343 - * gcc.target/i386/20040112-1.c: Add -fomit-frame-pointer and use - check-function-bodies to check for loop. - * gcc.target/i386/avx-ne-convert-1.c: Compile with - -fno-fuse-ops-with-volatile-access. - * gcc.target/i386/avx10_2-bf16-1.c: Likewise. - * gcc.target/i386/avx10_2-convert-1.c: Likewise. - * gcc.target/i386/avx10_2-satcvt-1.c: Likewise. - * gcc.target/i386/avx512bf16-vcvtneps2bf16-1.c: Likewise. - * gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1a.c: Likewise. - * gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1b.c: Likewise. - * gcc.target/i386/avx512bitalg-vpshufbitqmb.c: Likewise. - * gcc.target/i386/avx512bw-vpcmpb-1.c: Likewise. - * gcc.target/i386/avx512bw-vpcmpub-1.c: Likewise. - * gcc.target/i386/avx512bw-vpcmpuw-1.c: Likewise. - * gcc.target/i386/avx512bw-vpcmpw-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtps2qq-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtps2uqq-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtqq2pd-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtqq2ps-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvttps2qq-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvttps2uqq-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtuqq2pd-1.c: Likewise. - * gcc.target/i386/avx512dq-vcvtuqq2ps-1.c: Likewise. - * gcc.target/i386/avx512dq-vextractf32x8-1.c: Likewise. - * gcc.target/i386/avx512dq-vextractf64x2-1.c: Likewise. - * gcc.target/i386/avx512dq-vextracti64x2-1.c: Likewise. - * gcc.target/i386/avx512dq-vfpclasspd-1.c: Likewise. - * gcc.target/i386/avx512dq-vfpclassps-1.c: Likewise. - * gcc.target/i386/avx512dq-vfpclasssd-1.c: Likewise. - * gcc.target/i386/avx512dq-vfpclassss-1.c: Likewise. - * gcc.target/i386/avx512dq-vpmullq-1.c: Likewise. - * gcc.target/i386/avx512dq-vpmullq-3.c: Likewise. - * gcc.target/i386/avx512f-pr100267-1.c: Likewise. - * gcc.target/i386/avx512f-vcmppd-1.c: Likewise. - * gcc.target/i386/avx512f-vcmpps-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtps2pd-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtsd2si-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtsd2si64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtsd2usi-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtsd2usi64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtsi2ss-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtss2si-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtss2si64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtss2usi-1.c: Likewise. - * gcc.target/i386/avx512f-vcvtss2usi64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttsd2si-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttsd2si64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttsd2usi-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttsd2usi64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttss2si-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttss2si64-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttss2usi-1.c: Likewise. - * gcc.target/i386/avx512f-vcvttss2usi64-1.c: Likewise. - * gcc.target/i386/avx512f-vextractf32x4-1.c: Likewise. - * gcc.target/i386/avx512f-vextractf64x4-1.c: Likewise. - * gcc.target/i386/avx512f-vextracti64x4-1.c: Likewise. - * gcc.target/i386/avx512f-vmovapd-1.c: Likewise. - * gcc.target/i386/avx512f-vmovaps-1.c: Likewise. - * gcc.target/i386/avx512f-vmovdqa64-1.c: Likewise. - * gcc.target/i386/avx512f-vpandnq-1.c: Likewise. - * gcc.target/i386/avx512f-vpbroadcastd-1.c: Likewise. - * gcc.target/i386/avx512f-vpbroadcastq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpd-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpeqq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpequq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpged-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpgeq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpgeud-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpgeuq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpled-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpleq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpleud-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpleuq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpltd-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpltq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpltud-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpltuq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpneqd-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpneqq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpnequd-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpnequq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpq-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpud-1.c: Likewise. - * gcc.target/i386/avx512f-vpcmpuq-1.c: Likewise. - * gcc.target/i386/avx512f-vrndscalepd-1.c: Likewise. - * gcc.target/i386/avx512f-vrndscaleps-1.c: Likewise. - * gcc.target/i386/avx512fp16-complex-fma.c: Likewise. - * gcc.target/i386/avx512fp16-vaddph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtpd2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2dq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2pd-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2psx-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2qq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2udq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2uqq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2uw-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtph2w-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtps2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtqq2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2dq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2qq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2udq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2uqq-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2uw-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvttph2w-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vcvtuqq2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfcmaddcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfcmulcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfmaddcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfmulcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfpclassph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vfpclasssh-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vmulph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vrcpph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vrsqrtph-1a.c: Likewise. - * gcc.target/i386/avx512fp16-vsqrtph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vaddph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtpd2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2dq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2psx-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2qq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2udq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2uqq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2uw-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtph2w-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtps2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtqq2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvttph2dq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvttph2udq-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvttph2uw-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvttph2w-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vcvtuqq2ph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vfcmaddcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vfcmulcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vfmaddcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vfmulcph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vfpclassph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vmulph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vrcpph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vrsqrtph-1a.c: Likewise. - * gcc.target/i386/avx512fp16vl-vsqrtph-1a.c: Likewise. - * gcc.target/i386/avx512vl-pr100267-1.c: Likewise. - * gcc.target/i386/avx512vl-vcmppd-1.c: Likewise. - * gcc.target/i386/avx512vl-vcmpps-1.c: Likewise. - * gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Likewise. - * gcc.target/i386/avx512vl-vcvtpd2udq-1.c: Likewise. - * gcc.target/i386/avx512vl-vcvttpd2udq-1.c: Likewise. - * gcc.target/i386/avx512vl-vcvttps2udq-1.c: Likewise. - * gcc.target/i386/avx512vl-vextractf32x4-1.c: Likewise. - * gcc.target/i386/avx512vl-vmovapd-1.c: Likewise. - * gcc.target/i386/avx512vl-vmovaps-1.c: Likewise. - * gcc.target/i386/avx512vl-vmovdqa64-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpd-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpeqq-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpequq-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpq-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpud-1.c: Likewise. - * gcc.target/i386/avx512vl-vpcmpuq-1.c: Likewise. - * gcc.target/i386/pr122343-1a.c: New test. - * gcc.target/i386/pr122343-1b.c: Likewise. - * gcc.target/i386/pr122343-2a.c: Likewise. - * gcc.target/i386/pr122343-2b.c: Likewise. - * gcc.target/i386/pr122343-3.c: Likewise. - * gcc.target/i386/pr122343-4a.c: Likewise. - * gcc.target/i386/pr122343-4b.c: Likewise. - * gcc.target/i386/pr122343-5a.c: Likewise. - * gcc.target/i386/pr122343-5b.c: Likewise. - * gcc.target/i386/pr122343-6a.c: Likewise. - * gcc.target/i386/pr122343-6b.c: Likewise. - * gcc.target/i386/pr122343-7.c: Likewise. - -2025-12-06 Alexandre Oliva <oliva@adacore.com> - - PR rtl-optimization/122947 - * gcc.dg/pr122947.c: New. - -2025-12-06 Alexandre Oliva <oliva@adacore.com> - - PR target/91420 - * gcc.target/riscv/pr91420.c: New. - -2025-12-06 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/122675 - * gcc.target/riscv/pr122675-1.c: Adjust expected output. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/103414 - * gfortran.dg/pdt_76.f03: New test. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122693 - * gfortran.dg/pdt_75.f03: New test. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122670 - * gfortran.dg/pdt_74.f03: New test. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122669 - * gfortran.dg/pdt_73.f03: New test. - -2025-12-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122578 - * gfortran.dg/pdt_72.f03: New test. - -2025-12-06 Dimitar Dimitrov <dimitar@dinux.eu> - - PR rtl-optimization/122675 - * gcc.target/aarch64/pr122675-1.c: New test. - * gcc.target/i386/pr122675-1.c: New test. - * gcc.target/riscv/pr122675-1.c: New test. - -2025-12-06 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/99782 - * gcc.dg/torture/pr99782-1.c: Fix typo, dg-compile -> dg-do compile. - Use int128 effective target directly on that directive. Move PR - comment first. - -2025-12-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/torture/pr99782-1.c: Require intt128 target. - -2025-12-05 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/122215 - * gcc.target/riscv/pr122215.c: New. - * lib/target-supports.exp (check_effective_target_valgrind): New. - -2025-12-05 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122977 - * gfortran.dg/contiguous_16.f90: New test. - -2025-12-05 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/gomp/dyn_groupprivate-1.f90: Fix - scan-tree-dump-times regexp to avoid hard-coded 'D.4680'. - -2025-12-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120939 - * gcc.dg/torture/pr113026-1.c: Skip when -ftracer. - -2025-12-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/123002 - * gcc.dg/vect/vect-pr123002.c: Make global data non-const - and non-static. - -2025-12-05 Denis Mazzucato <mazzucato@adacore.com> - - * gnat.dg/reduce1.adb: Adjust expected error message. - -2025-12-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/123002 - * gcc.dg/vect/vect-pr123002.c: New testcase. - -2025-12-05 Richard Biener <rguenther@suse.de> - - * gcc.dg/gimplefe-58.c: New testcase. - -2025-12-05 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/gomp/dyn_groupprivate-1.f90: Add scan-dump test. - * gfortran.dg/gomp/dyn_groupprivate-2.f90: Extend and update. - * c-c++-common/gomp/dyn_groupprivate-1.c: New test. - * c-c++-common/gomp/dyn_groupprivate-2.c: New test. - -2025-12-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122776 - * gcc.dg/vect/vect-simd-clone-24.c: Add -mprefer-vector-width=512. - -2025-12-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR middle-end/99782 - * gcc.dg/torture/pr99782-1.c: New test. - -2025-12-05 Daniel Barboza <dbarboza@ventanamicro.com> - Jeff Law <jlaw@ventanamicro.com> - - * gcc.dg/torture/pr122615.c: New test. - * gcc.dg/torture/pr122616.c: Likewise. - -2025-12-05 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vmsltu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u8.c: New test. - -2025-12-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122776 - * gcc.dg/vect/vect-simd-clone-24.c: New testcase. - * gcc.dg/gomp/pr110485.c: Adjust. - -2025-12-04 Martin Jambor <mjambor@suse.cz> - - * gcc.dg/tree-ssa/vrp-from-cst-agg-1.c: New test. - * gcc.dg/tree-ssa/vrp-from-cst-agg-2.c: Likewise. - * gcc.dg/tree-ssa/vrp-from-cst-agg-3.c: Likewise. - * gcc.dg/tree-ssa/vrp-from-cst-agg-4.c: Likewise. - * gcc.dg/tree-ssa/vrp-from-cst-agg-5.c: Likewise. - * gcc.dg/tree-ssa/vrp-from-cst-agg-6.c: Likewise. - * gcc.dg/tree-ssa/vrp-from-cst-agg-7.c: Likewise. - * gcc.dg/ipa/vrp-from-cst-agg-1.c: Likewise. - -2025-12-04 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/asm-hard-reg-9.c: Restrict to lp64 x86_64. - -2025-12-04 Jakub Jelinek <jakub@redhat.com> - - PR target/122991 - * gcc.dg/pr122991.c: New test. - -2025-12-04 Jakub Jelinek <jakub@redhat.com> - - PR target/122983 - * g++.dg/cpp26/decomp18.C: Add dg-add-options tls and - dg-require-effective-target tls_runtime directives. - -2025-12-04 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/asm-hard-reg-9.c: New test. - -2025-12-03 Joseph Myers <josmyers@redhat.com> - - * lib/gcc-defs.exp (handle-dg-regexps): Also escape \r in output. - -2025-12-03 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/122943 - * gcc.c-torture/execute/pr122943.c: New test. - -2025-12-03 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/122898 - * gcc.dg/pr122898.c: New. - -2025-12-03 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/122969 - * gcc.dg/vect/pr122969.c: New test. - -2025-12-03 Mathias Krause <minipli@grsecurity.net> - - * gcc.target/i386/nop-mcount-m16.c: New test. - * gcc.target/i386/nop-mcount.c: Adapt to test for 5-byte NOP. - -2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/lang_feature_gate.rs: New test. - -2025-12-03 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/core/core.exp: Change -frust-compile-until=astvalidation - to -frust-compile-until=nameresolution. - -2025-12-03 Raiki Tamura <tamaron1203@gmail.com> - - * rust/borrowck/reference.rs: Add attributes. - * rust/borrowck/tmp.rs: Likewise. - * rust/compile/additional-trait-bounds1.rs: Likewise. - * rust/compile/additional-trait-bounds2.rs: Likewise. - * rust/compile/additional-trait-bounds2nr2.rs: Likewise. - * rust/compile/auto_traits1.rs: Likewise. - * rust/compile/auto_traits2.rs: Likewise. - * rust/compile/bad-rpit1.rs: Likewise. - * rust/compile/black_box.rs: Likewise. - * rust/compile/bounds1.rs: Likewise. - * rust/compile/box_syntax_feature_gate.rs: Likewise. - * rust/compile/bug-with-default-generic.rs: Likewise. - * rust/compile/canonical_paths1.rs: Likewise. - * rust/compile/cast_generics.rs: Likewise. - * rust/compile/closure_no_type_anno.rs: Likewise. - * rust/compile/cmp1.rs: Likewise. - * rust/compile/complex_qualified_path_in_expr.rs: Likewise. - * rust/compile/const-issue1440.rs: Likewise. - * rust/compile/const_generics_1.rs: Likewise. - * rust/compile/const_generics_10.rs: Likewise. - * rust/compile/const_generics_11.rs: Likewise. - * rust/compile/const_generics_12.rs: Likewise. - * rust/compile/const_generics_13.rs: Likewise. - * rust/compile/const_generics_14.rs: Likewise. - * rust/compile/const_generics_15.rs: Likewise. - * rust/compile/const_generics_16.rs: Likewise. - * rust/compile/const_generics_18.rs: Likewise. - * rust/compile/const_generics_19.rs: Likewise. - * rust/compile/const_generics_3.rs: Likewise. - * rust/compile/const_generics_8.rs: Likewise. - * rust/compile/const_generics_9.rs: Likewise. - * rust/compile/derive-debug1.rs: Likewise. - * rust/compile/derive-default1.rs: Likewise. - * rust/compile/derive-eq-invalid.rs: Likewise. - * rust/compile/derive-hash1.rs: Likewise. - * rust/compile/derive-partialeq1.rs: Likewise. - * rust/compile/derive_clone_enum1.rs: Likewise. - * rust/compile/derive_clone_enum2.rs: Likewise. - * rust/compile/derive_clone_enum3.rs: Likewise. - * rust/compile/derive_macro1.rs: Likewise. - * rust/compile/derive_macro3.rs: Likewise. - * rust/compile/derive_macro4.rs: Likewise. - * rust/compile/derive_macro6.rs: Likewise. - * rust/compile/derive_partial_ord1.rs: Likewise. - * rust/compile/expand_macro_qual_path_in_type.rs: Likewise. - * rust/compile/expected_type_args2.rs: Likewise. - * rust/compile/expected_type_args3.rs: Likewise. - * rust/compile/extern_generics.rs: Likewise. - * rust/compile/for-loop1.rs: Likewise. - * rust/compile/for-loop2.rs: Likewise. - * rust/compile/format_args_basic_expansion.rs: Likewise. - * rust/compile/format_args_concat.rs: Likewise. - * rust/compile/format_args_extra_comma.rs: Likewise. - * rust/compile/generics1.rs: Likewise. - * rust/compile/generics11.rs: Likewise. - * rust/compile/generics12.rs: Likewise. - * rust/compile/generics2.rs: Likewise. - * rust/compile/generics3.rs: Likewise. - * rust/compile/generics4.rs: Likewise. - * rust/compile/generics6.rs: Likewise. - * rust/compile/generics7.rs: Likewise. - * rust/compile/generics8.rs: Likewise. - * rust/compile/if_let_expr.rs: Likewise. - * rust/compile/impl_fnptr.rs: Likewise. - * rust/compile/impl_trait_diag.rs: Likewise. - * rust/compile/impl_trait_generic_arg.rs: Likewise. - * rust/compile/issue-1005.rs: Likewise. - * rust/compile/issue-1019.rs: Likewise. - * rust/compile/issue-1031.rs: Likewise. - * rust/compile/issue-1034.rs: Likewise. - * rust/compile/issue-1128.rs: Likewise. - * rust/compile/issue-1129-2.rs: Likewise. - * rust/compile/issue-1130.rs: Likewise. - * rust/compile/issue-1131.rs: Likewise. - * rust/compile/issue-1165.rs: Likewise. - * rust/compile/issue-1173.rs: Likewise. - * rust/compile/issue-1235.rs: Likewise. - * rust/compile/issue-1237.rs: Likewise. - * rust/compile/issue-1289.rs: Likewise. - * rust/compile/issue-1383.rs: Likewise. - * rust/compile/issue-1447.rs: Likewise. - * rust/compile/issue-1483.rs: Likewise. - * rust/compile/issue-1485.rs: Likewise. - * rust/compile/issue-1487.rs: Likewise. - * rust/compile/issue-1589.rs: Likewise. - * rust/compile/issue-1725-1.rs: Likewise. - * rust/compile/issue-1725-2.rs: Likewise. - * rust/compile/issue-1786.rs: Likewise. - * rust/compile/issue-1893.rs: Likewise. - * rust/compile/issue-1901.rs: Likewise. - * rust/compile/issue-1930.rs: Likewise. - * rust/compile/issue-1981.rs: Likewise. - * rust/compile/issue-2015.rs: Likewise. - * rust/compile/issue-2019-1.rs: Likewise. - * rust/compile/issue-2019-2.rs: Likewise. - * rust/compile/issue-2019-3.rs: Likewise. - * rust/compile/issue-2036.rs: Likewise. - * rust/compile/issue-2037.rs: Likewise. - * rust/compile/issue-2070.rs: Likewise. - * rust/compile/issue-2105.rs: Likewise. - * rust/compile/issue-2106.rs: Likewise. - * rust/compile/issue-2135.rs: Likewise. - * rust/compile/issue-2136-1.rs: Likewise. - * rust/compile/issue-2136-2.rs: Likewise. - * rust/compile/issue-2139.rs: Likewise. - * rust/compile/issue-2142.rs: Likewise. - * rust/compile/issue-2165.rs: Likewise. - * rust/compile/issue-2166.rs: Likewise. - * rust/compile/issue-2190-1.rs: Likewise. - * rust/compile/issue-2190-2.rs: Likewise. - * rust/compile/issue-2195.rs: Likewise. - * rust/compile/issue-2238.rs: Likewise. - * rust/compile/issue-2304.rs: Likewise. - * rust/compile/issue-2323.rs: Likewise. - * rust/compile/issue-2330.rs: Likewise. - * rust/compile/issue-2369.rs: Likewise. - * rust/compile/issue-2375.rs: Likewise. - * rust/compile/issue-2478.rs: Likewise. - * rust/compile/issue-2499.rs: Likewise. - * rust/compile/issue-2723-1.rs: Likewise. - * rust/compile/issue-2723-2.rs: Likewise. - * rust/compile/issue-2725.rs: Likewise. - * rust/compile/issue-2747.rs: Likewise. - * rust/compile/issue-2772-1.rs: Likewise. - * rust/compile/issue-2772-2.rs: Likewise. - * rust/compile/issue-2775.rs: Likewise. - * rust/compile/issue-2782.rs: Likewise. - * rust/compile/issue-2907.rs: Likewise. - * rust/compile/issue-2951.rs: Likewise. - * rust/compile/issue-2953-1.rs: Likewise. - * rust/compile/issue-2953-2.rs: Likewise. - * rust/compile/issue-2954.rs: Likewise. - * rust/compile/issue-2987.rs: Likewise. - * rust/compile/issue-3009.rs: Likewise. - * rust/compile/issue-3022.rs: Likewise. - * rust/compile/issue-3030.rs: Likewise. - * rust/compile/issue-3032-1.rs: Likewise. - * rust/compile/issue-3032-2.rs: Likewise. - * rust/compile/issue-3033.rs: Likewise. - * rust/compile/issue-3035.rs: Likewise. - * rust/compile/issue-3036.rs: Likewise. - * rust/compile/issue-3045-1.rs: Likewise. - * rust/compile/issue-3045-2.rs: Likewise. - * rust/compile/issue-3144.rs: Likewise. - * rust/compile/issue-3242.rs: Likewise. - * rust/compile/issue-3304.rs: Likewise. - * rust/compile/issue-3382.rs: Likewise. - * rust/compile/issue-3402-1.rs: Likewise. - * rust/compile/issue-3402-2.rs: Likewise. - * rust/compile/issue-3403.rs: Likewise. - * rust/compile/issue-3454.rs: Likewise. - * rust/compile/issue-3551.rs: Likewise. - * rust/compile/issue-3554-2.rs: Likewise. - * rust/compile/issue-3599.rs: Likewise. - * rust/compile/issue-3642.rs: Likewise. - * rust/compile/issue-3711.rs: Likewise. - * rust/compile/issue-3836.rs: Likewise. - * rust/compile/issue-3898.rs: Likewise. - * rust/compile/issue-3915.rs: Likewise. - * rust/compile/issue-3916.rs: Likewise. - * rust/compile/issue-3969.rs: Likewise. - * rust/compile/issue-402.rs: Likewise. - * rust/compile/issue-4090-1.rs: Likewise. - * rust/compile/issue-4090-2.rs: Likewise. - * rust/compile/issue-850.rs: Likewise. - * rust/compile/issue-855.rs: Likewise. - * rust/compile/issue-925.rs: Likewise. - * rust/compile/iterators1.rs: Likewise. - * rust/compile/macros/builtin/option_env1.rs: Likewise. - * rust/compile/macros/builtin/option_env2.rs: Likewise. - * rust/compile/macros/builtin/option_env3.rs: Likewise. - * rust/compile/macros/mbe/macro-issue1400.rs: Likewise. - * rust/compile/macros/mbe/macro-issue3708.rs: Likewise. - * rust/compile/macros/mbe/macro-issue3709-2.rs: Likewise. - * rust/compile/macros/mbe/macro20.rs: Likewise. - * rust/compile/macros/mbe/macro23.rs: Likewise. - * rust/compile/macros/mbe/macro40.rs: Likewise. - * rust/compile/macros/mbe/macro49.rs: Likewise. - * rust/compile/macros/mbe/macro54.rs: Likewise. - * rust/compile/multiple_bindings1.rs: Likewise. - * rust/compile/name_resolution2.rs: Likewise. - * rust/compile/name_resolution4.rs: Likewise. - * rust/compile/nested_generic.rs: Likewise. - * rust/compile/parse_associated_type_as_generic_arg.rs: Likewise. - * rust/compile/parse_associated_type_as_generic_arg2.rs: Likewise. - * rust/compile/parse_associated_type_as_generic_arg3.rs: Likewise. - * rust/compile/parse_closure_bind.rs: Likewise. - * rust/compile/parse_complex_generic_application.rs: Likewise. - * rust/compile/parse_complex_generic_application2.rs: Likewise. - * rust/compile/path_as_generic_arg.rs: Likewise. - * rust/compile/privacy4.rs: Likewise. - * rust/compile/privacy6.rs: Likewise. - * rust/compile/silly-order-bug.rs: Likewise. - * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. - * rust/compile/stmt_with_block_dot.rs: Likewise. - * rust/compile/structural-eq-peq.rs: Likewise. - * rust/compile/torture/associated_types1.rs: Likewise. - * rust/compile/torture/forward_decl_5.rs: Likewise. - * rust/compile/torture/generics1.rs: Likewise. - * rust/compile/torture/generics10.rs: Likewise. - * rust/compile/torture/generics11.rs: Likewise. - * rust/compile/torture/generics12.rs: Likewise. - * rust/compile/torture/generics13.rs: Likewise. - * rust/compile/torture/generics14.rs: Likewise. - * rust/compile/torture/generics15.rs: Likewise. - * rust/compile/torture/generics16.rs: Likewise. - * rust/compile/torture/generics17.rs: Likewise. - * rust/compile/torture/generics18.rs: Likewise. - * rust/compile/torture/generics19.rs: Likewise. - * rust/compile/torture/generics2.rs: Likewise. - * rust/compile/torture/generics20.rs: Likewise. - * rust/compile/torture/generics21.rs: Likewise. - * rust/compile/torture/generics22.rs: Likewise. - * rust/compile/torture/generics23.rs: Likewise. - * rust/compile/torture/generics24.rs: Likewise. - * rust/compile/torture/generics25.rs: Likewise. - * rust/compile/torture/generics26.rs: Likewise. - * rust/compile/torture/generics27.rs: Likewise. - * rust/compile/torture/generics28.rs: Likewise. - * rust/compile/torture/generics29.rs: Likewise. - * rust/compile/torture/generics3.rs: Likewise. - * rust/compile/torture/generics30.rs: Likewise. - * rust/compile/torture/generics31.rs: Likewise. - * rust/compile/torture/generics32.rs: Likewise. - * rust/compile/torture/generics4.rs: Likewise. - * rust/compile/torture/generics5.rs: Likewise. - * rust/compile/torture/generics6.rs: Likewise. - * rust/compile/torture/generics7.rs: Likewise. - * rust/compile/torture/generics8.rs: Likewise. - * rust/compile/torture/generics9.rs: Likewise. - * rust/compile/torture/intrinsics-2.rs: Likewise. - * rust/compile/torture/intrinsics-4.rs: Likewise. - * rust/compile/torture/intrinsics-5.rs: Likewise. - * rust/compile/torture/intrinsics-6.rs: Likewise. - * rust/compile/torture/intrinsics-7.rs: Likewise. - * rust/compile/torture/intrinsics-8.rs: Likewise. - * rust/compile/torture/issue-1024.rs: Likewise. - * rust/compile/torture/issue-1075.rs: Likewise. - * rust/compile/torture/issue-1432.rs: Likewise. - * rust/compile/torture/issue-1555.rs: Likewise. - * rust/compile/torture/issue-368.rs: Likewise. - * rust/compile/torture/issue-808.rs: Likewise. - * rust/compile/torture/issue-862.rs: Likewise. - * rust/compile/torture/issue-893-2.rs: Likewise. - * rust/compile/torture/issue-893.rs: Likewise. - * rust/compile/torture/must_use2.rs: Likewise. - * rust/compile/torture/nested_fn2.rs: Likewise. - * rust/compile/torture/phantom_data.rs: Likewise. - * rust/compile/torture/range-lang-item1.rs: Likewise. - * rust/compile/torture/traits1.rs: Likewise. - * rust/compile/torture/traits10.rs: Likewise. - * rust/compile/torture/traits11.rs: Likewise. - * rust/compile/torture/traits12.rs: Likewise. - * rust/compile/torture/traits13.rs: Likewise. - * rust/compile/torture/traits14.rs: Likewise. - * rust/compile/torture/traits15.rs: Likewise. - * rust/compile/torture/traits16.rs: Likewise. - * rust/compile/torture/traits17.rs: Likewise. - * rust/compile/torture/traits18.rs: Likewise. - * rust/compile/torture/traits19.rs: Likewise. - * rust/compile/torture/traits2.rs: Likewise. - * rust/compile/torture/traits3.rs: Likewise. - * rust/compile/torture/traits4.rs: Likewise. - * rust/compile/torture/traits5.rs: Likewise. - * rust/compile/torture/traits6.rs: Likewise. - * rust/compile/torture/traits7.rs: Likewise. - * rust/compile/torture/traits8.rs: Likewise. - * rust/compile/torture/traits9.rs: Likewise. - * rust/compile/torture/transmute-size-check-1.rs: Likewise. - * rust/compile/torture/transmute1.rs: Likewise. - * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. - * rust/compile/torture/utf8_identifiers.rs: Likewise. - * rust/compile/traits1.rs: Likewise. - * rust/compile/traits10.rs: Likewise. - * rust/compile/traits11.rs: Likewise. - * rust/compile/traits12.rs: Likewise. - * rust/compile/traits2.rs: Likewise. - * rust/compile/traits3.rs: Likewise. - * rust/compile/traits4.rs: Likewise. - * rust/compile/traits5.rs: Likewise. - * rust/compile/traits6.rs: Likewise. - * rust/compile/traits7.rs: Likewise. - * rust/compile/traits8.rs: Likewise. - * rust/compile/traits9.rs: Likewise. - * rust/compile/try-expr1.rs: Likewise. - * rust/compile/try-trait.rs: Likewise. - * rust/compile/try_block1.rs: Likewise. - * rust/compile/type-bindings1.rs: Likewise. - * rust/compile/unconstrained_type_param.rs: Likewise. - * rust/compile/unify-errors1.rs: Likewise. - * rust/compile/unsafe10.rs: Likewise. - * rust/compile/v0-mangle1.rs: Likewise. - * rust/compile/v0-mangle2.rs: Likewise. - * rust/compile/while_let1.rs: Likewise. - * rust/execute/black_box.rs: Likewise. - * rust/execute/torture/atomic_load.rs: Likewise. - * rust/execute/torture/atomic_store.rs: Likewise. - * rust/execute/torture/basic_partial_ord1.rs: Likewise. - * rust/execute/torture/basic_partial_ord2.rs: Likewise. - * rust/execute/torture/builtin_macro_option_env.rs: Likewise. - * rust/execute/torture/closure1.rs: Likewise. - * rust/execute/torture/closure2.rs: Likewise. - * rust/execute/torture/closure3.rs: Likewise. - * rust/execute/torture/closure4.rs: Likewise. - * rust/execute/torture/coercion1.rs: Likewise. - * rust/execute/torture/coercion2.rs: Likewise. - * rust/execute/torture/coercion3.rs: Likewise. - * rust/execute/torture/const-generics-1.rs: Likewise. - * rust/execute/torture/const-generics-2.rs: Likewise. - * rust/execute/torture/const-generics-3.rs: Likewise. - * rust/execute/torture/const-generics-4.rs: Likewise. - * rust/execute/torture/const-generics-5.rs: Likewise. - * rust/execute/torture/const-generics-6.rs: Likewise. - * rust/execute/torture/const-generics-7.rs: Likewise. - * rust/execute/torture/copy_nonoverlapping1.rs: Likewise. - * rust/execute/torture/derive-default1.rs: Likewise. - * rust/execute/torture/derive-partialeq1.rs: Likewise. - * rust/execute/torture/derive-partialeq2.rs: Likewise. - * rust/execute/torture/derive_clone_enum1.rs: Likewise. - * rust/execute/torture/derive_macro1.rs: Likewise. - * rust/execute/torture/derive_macro3.rs: Likewise. - * rust/execute/torture/derive_macro4.rs: Likewise. - * rust/execute/torture/enum_intrinsics1.rs: Likewise. - * rust/execute/torture/enum_intrinsics2.rs: Likewise. - * rust/execute/torture/for-loop1.rs: Likewise. - * rust/execute/torture/for-loop2.rs: Likewise. - * rust/execute/torture/gat1.rs: Likewise. - * rust/execute/torture/impl_desugar-2.rs: Likewise. - * rust/execute/torture/impl_desugar.rs: Likewise. - * rust/execute/torture/impl_rpit1.rs: Likewise. - * rust/execute/torture/impl_rpit2.rs: Likewise. - * rust/execute/torture/impl_rpit3.rs: Likewise. - * rust/execute/torture/impl_trait1.rs: Likewise. - * rust/execute/torture/impl_trait2.rs: Likewise. - * rust/execute/torture/impl_trait3.rs: Likewise. - * rust/execute/torture/impl_trait4.rs: Likewise. - * rust/execute/torture/index1.rs: Likewise. - * rust/execute/torture/issue-1120.rs: Likewise. - * rust/execute/torture/issue-1133.rs: Likewise. - * rust/execute/torture/issue-1198.rs: Likewise. - * rust/execute/torture/issue-1232.rs: Likewise. - * rust/execute/torture/issue-1249.rs: Likewise. - * rust/execute/torture/issue-1436.rs: Likewise. - * rust/execute/torture/issue-1481.rs: Likewise. - * rust/execute/torture/issue-1482.rs: Likewise. - * rust/execute/torture/issue-1496.rs: Likewise. - * rust/execute/torture/issue-1720-2.rs: Likewise. - * rust/execute/torture/issue-1720.rs: Likewise. - * rust/execute/torture/issue-2005.rs: Likewise. - * rust/execute/torture/issue-2052.rs: Likewise. - * rust/execute/torture/issue-2179.rs: Likewise. - * rust/execute/torture/issue-2180.rs: Likewise. - * rust/execute/torture/issue-2236.rs: Likewise. - * rust/execute/torture/issue-2583.rs: Likewise. - * rust/execute/torture/issue-3126.rs: Likewise. - * rust/execute/torture/issue-3381.rs: Likewise. - * rust/execute/torture/issue-3502.rs: Likewise. - * rust/execute/torture/issue-3836.rs: Likewise. - * rust/execute/torture/issue-647.rs: Likewise. - * rust/execute/torture/issue-845.rs: Likewise. - * rust/execute/torture/issue-851.rs: Likewise. - * rust/execute/torture/issue-858.rs: Likewise. - * rust/execute/torture/iter1.rs: Likewise. - * rust/execute/torture/macros23.rs: Likewise. - * rust/execute/torture/macros28.rs: Likewise. - * rust/execute/torture/method2.rs: Likewise. - * rust/execute/torture/method3.rs: Likewise. - * rust/execute/torture/method4.rs: Likewise. - * rust/execute/torture/min_specialization2.rs: Likewise. - * rust/execute/torture/min_specialization3.rs: Likewise. - * rust/execute/torture/operator_overload_1.rs: Likewise. - * rust/execute/torture/operator_overload_10.rs: Likewise. - * rust/execute/torture/operator_overload_11.rs: Likewise. - * rust/execute/torture/operator_overload_12.rs: Likewise. - * rust/execute/torture/operator_overload_2.rs: Likewise. - * rust/execute/torture/operator_overload_3.rs: Likewise. - * rust/execute/torture/operator_overload_4.rs: Likewise. - * rust/execute/torture/operator_overload_5.rs: Likewise. - * rust/execute/torture/operator_overload_6.rs: Likewise. - * rust/execute/torture/operator_overload_7.rs: Likewise. - * rust/execute/torture/operator_overload_8.rs: Likewise. - * rust/execute/torture/operator_overload_9.rs: Likewise. - * rust/execute/torture/partial-eq-1.rs: Likewise. - * rust/execute/torture/partial-eq-2.rs: Likewise. - * rust/execute/torture/partial-eq-3.rs: Likewise. - * rust/execute/torture/partial-eq-4.rs: Likewise. - * rust/execute/torture/partial-ord-1.rs: Likewise. - * rust/execute/torture/partial-ord-2.rs: Likewise. - * rust/execute/torture/partial-ord-3.rs: Likewise. - * rust/execute/torture/partial-ord-4.rs: Likewise. - * rust/execute/torture/partial-ord-5.rs: Likewise. - * rust/execute/torture/partial-ord-6.rs: Likewise. - * rust/execute/torture/prefetch_data.rs: Likewise. - * rust/execute/torture/ref-pattern2.rs: Likewise. - * rust/execute/torture/sip-hasher.rs: Likewise. - * rust/execute/torture/slice-magic.rs: Likewise. - * rust/execute/torture/slice-magic2.rs: Likewise. - * rust/execute/torture/slice1.rs: Likewise. - * rust/execute/torture/str-layout1.rs: Likewise. - * rust/execute/torture/trait1.rs: Likewise. - * rust/execute/torture/trait10.rs: Likewise. - * rust/execute/torture/trait11.rs: Likewise. - * rust/execute/torture/trait12.rs: Likewise. - * rust/execute/torture/trait13.rs: Likewise. - * rust/execute/torture/trait14.rs: Likewise. - * rust/execute/torture/trait15.rs: Likewise. - * rust/execute/torture/trait2.rs: Likewise. - * rust/execute/torture/trait3.rs: Likewise. - * rust/execute/torture/trait4.rs: Likewise. - * rust/execute/torture/trait5.rs: Likewise. - * rust/execute/torture/trait6.rs: Likewise. - * rust/execute/torture/trait7.rs: Likewise. - * rust/execute/torture/trait8.rs: Likewise. - * rust/execute/torture/trait9.rs: Likewise. - * rust/execute/torture/transmute1.rs: Likewise. - * rust/execute/torture/wrapping_op1.rs: Likewise. - * rust/execute/torture/wrapping_op2.rs: Likewise. - * rust/link/generic_function_1.rs: Likewise. - * rust/link/trait_import_1.rs: Likewise. - -2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/braced_macro_arm.rs: Remove parent errors. - * rust/compile/issue-407-2.rs: Likewise. - * rust/compile/issue-407.rs: Likewise. - * rust/compile/issue-4162.rs: Likewise. - * rust/compile/issue-867.rs: Likewise. - * rust/compile/raw_ref_op_invalid.rs: Likewise. - -2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/macros/mbe/macro-issue3608.rs: Remove error. - -2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/braced_macro_arm.rs: Remove superfluous error message - matching. - * rust/compile/decl_macro6.rs: Likewise. - * rust/compile/decl_macro7.rs: Likewise. - * rust/compile/extern_type_item_missing_semi.rs: Likewise. - * rust/compile/issue-2187.rs: Likewise. - * rust/compile/issue-407-2.rs: Likewise. - * rust/compile/issue-407.rs: Likewise. - * rust/compile/issue-4162.rs: Likewise. - * rust/compile/issue-867.rs: Likewise. - * rust/compile/macros/mbe/macro-issue1053-2.rs: Likewise. - * rust/compile/macros/mbe/macro-issue1395-2.rs: Likewise. - * rust/compile/macros/mbe/macro-issue3608.rs: Likewise. - * rust/compile/macros/mbe/macro27.rs: Likewise. - * rust/compile/macros/mbe/macro28.rs: Likewise. - * rust/compile/macros/mbe/macro29.rs: Likewise. - * rust/compile/macros/mbe/macro30.rs: Likewise. - * rust/compile/macros/mbe/macro31.rs: Likewise. - * rust/compile/macros/mbe/macro33.rs: Likewise. - * rust/compile/macros/mbe/macro35.rs: Likewise. - * rust/compile/macros/mbe/macro37.rs: Likewise. - * rust/compile/macros/mbe/macro38.rs: Likewise. - * rust/compile/macros/mbe/macro39.rs: Likewise. - * rust/compile/macros/mbe/macro48.rs: Likewise. - * rust/compile/parse_invalid_specialization.rs: Likewise. - * rust/compile/parse_simple_path_fail_1.rs: Likewise. - * rust/compile/parse_simple_path_fail_2.rs: Likewise. - * rust/compile/raw-string-loc.rs: Likewise. - * rust/compile/raw-byte-string-loc.rs: Likewise. - * rust/compile/self_const_ptr.rs: Likewise. - * rust/compile/self_mut_ptr.rs: Likewise. - * rust/compile/static_var1.rs: Likewise. - * rust/compile/self_ptr.rs: Likewise. - * rust/compile/torture/identifier-missing-impl-1.rs: Likewise. - -2025-12-03 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/103371 - * gfortran.dg/pdt_71.f03: New test. - -2025-12-03 liuhongt <hongtao.liu@intel.com> - - * g++.target/i386/avx512-pr71921.C: New test. - * g++.target/i386/pr71921.C: New test. - -2025-12-02 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/122656 - * gcc.target/riscv/rvv/base/pr122656-1.c: New test. - * gcc.target/riscv/rvv/base/pr122656-2.c: New test.` - -2025-12-02 Jakub Jelinek <jakub@redhat.com> - - PR c++/122860 - * g++.dg/ext/pr122860.C: New test. - -2025-12-02 Jakub Jelinek <jakub@redhat.com> - - PR c++/122836 - * g++.dg/ext/pr122836.C: New test. - -2025-12-02 Jason Merrill <jason@redhat.com> - - PR c++/122171 - PR c++/112632 - * g++.dg/cpp0x/alias-decl-conv1.C: New test. - -2025-12-02 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/122868 - * gcc.dg/vect/vect-early-break_140-pr122868_1.c: New test. - * gcc.dg/vect/vect-early-break_140-pr122868_2.c: New test. - * gcc.dg/vect/vect-early-break_140-pr122868_3.c: New test. - * gcc.dg/vect/vect-early-break_140-pr122868_4.c: New test. - -2025-12-02 David Guillen Fandos <david@davidgf.net> - - * gcc.target/mips/madd-10.c: New test. - * gcc.target/mips/maddu-5.c: New test. - * gcc.target/mips/msub-9.c: New test. - * gcc.target/mips/msubu-5.c: New test. - -2025-12-02 David Guillen Fandos <david@davidgf.net> - - * gcc.target/mips/bswap-7.c: New test. - -2025-12-02 David Guillen Fandos <david@davidgf.net> - - * gcc.target/mips/max-1.c: New test. - * gcc.target/mips/min-1.c: New test. - -2025-12-02 Saurabh Jha <saurabh.jha@arm.com> - Radek Barton <radek.barton@microsoft.com> - - * gcc.target/aarch64/mingw/variadic_hfa.c: New test. - * gcc.target/aarch64/mingw/variadic_hva.c: New test. - * gcc.target/aarch64/mingw/variadic_int.c: New test. - -2025-12-02 Saurabh Jha <saurabh.jha@arm.com> - Radek Barton <radek.barton@microsoft.com> - Martin Vejbora <mvejbora@microsoft.com> - - * gcc.target/aarch64/mingw/mingw.exp: New test. - * gcc.target/aarch64/mingw/long_double_size.c: New test. - -2025-12-02 Saurabh Jha <saurabh.jha@arm.com> - - * lib/scanasm.exp: Add support for mingw targets. - -2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/friend-12_a.C: New test. - * g++.dg/modules/friend-12_b.C: New test. - -2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122915 - * g++.dg/modules/namespace-16_a.C: New test. - * g++.dg/modules/namespace-16_b.C: New test. - * g++.dg/modules/namespace-16_c.C: New test. - * g++.dg/modules/namespace-16_d.C: New test. - -2025-12-01 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122858 - * gcc.target/arm/mve/pr122858.c: New test. - -2025-12-01 Christopher Albert <albert@tugraz.at> - Harald Anlauf <anlauf@gcc.gnu.org> - - PR fortran/107721 - PR fortran/102417 - * gfortran.dg/array_constructor_typespec_1.f90: New test. - -2025-12-01 Jakub Jelinek <jakub@redhat.com> - - PR c++/122905 - * g++.dg/lto/pr122905.h: New file. - * g++.dg/lto/pr122905_0.C: New test. - * g++.dg/lto/pr122905_1.C: New test. - -2025-12-01 Robin Dapp <rdapp@ventanamicro.com> - - PR target/122652 - * gcc.target/riscv/rvv/base/pr122652.c: New test. - -2025-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR testsuite/122596 - * gfortran.dg/alloc_comp_deep_copy_5.f90: Restrict - -Wa,--noexecstack, -Wl,-z,noexecstack to gas, gld. - * gfortran.dg/alloc_comp_deep_copy_6.f90: Likewise. - -2025-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR c++/81337 - PR c++/52477 - * g++.dg/gcov/pr16855.C (Test::~Test): xfail on *-*-solaris2* - (dg-final): Likewise. - * g++.dg/gcov/pr16855-priority.C (Test::~Test): Likewise. - (dg-final): Likewise. - -2025-12-01 H.J. Lu <hjl.tools@gmail.com> - - PR target/122906 - * g++.target/i386/pr122906-1.C: New test. - -2025-11-30 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * gcc.dg/vect/tsvc/vect-tsvc-s293.c: Remove xfail. - * gcc.target/aarch64/vect-ld1r-compile.c: Add - -fno-tree-loop-distribute-patterns to prevent memset detection. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - PR fortran/122923 - * gfortran.dg/ISO_Fortran_binding_17.f90: Recognize language - list in warning regexp. - * gfortran.dg/c-interop/allocate-errors.f90: Likewise. - * gfortran.dg/c-interop/establish-errors.f90: Likewise. - * gfortran.dg/c-interop/pr113338.f90: Likewise. - * gfortran.dg/c-interop/section-errors.f90: Likewise. - * gfortran.dg/c-interop/select-errors.f90: Likewise. - * gfortran.dg/c-interop/setpointer-errors.f90: Likewise. - -2025-11-30 Jakub Jelinek <jakub@redhat.com> - - PR c++/122465 - * g++.dg/cpp0x/pr122465.C: New test. - -2025-11-30 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/115120 - PR tree-optimization/119577 - PR tree-optimization/119860 - * gcc.dg/vect/vect-early-break_39.c: Update. - * gcc.dg/vect/vect-early-break_139.c: New testcase. - * gcc.target/aarch64/sve/peel_ind_10.c: Update. - * gcc.target/aarch64/sve/peel_ind_11.c: Update. - * gcc.target/aarch64/sve/peel_ind_12.c: Update. - * gcc.target/aarch64/sve/peel_ind_5.c: Update. - * gcc.target/aarch64/sve/peel_ind_6.c: Update. - * gcc.target/aarch64/sve/peel_ind_7.c: Update. - * gcc.target/aarch64/sve/peel_ind_9.c: Update. - * gcc.target/aarch64/sve/pr119351.c - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/mcgt-1.3b.a68: New file. - * algol68/compile/mcgt-7.1.3a-bis.a68: Likewise. - * algol68/compile/mcgt-7.1.3a.a68: Likewise. - * algol68/execute/mcgt/execute.exp: Likewise. - * algol68/execute/mcgt/mcgt-1.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-1.3c.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.2.1a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.2.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.2.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.3b.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.3c.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.3e.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.4.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.4.2b.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.4.2c.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.4.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.6a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.6b.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.7d.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.7e.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.8a.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.8b.a68: Likewise. - * algol68/execute/mcgt/mcgt-2.9.1a.a68: Likewise. - * algol68/execute/mcgt/mcgt-3.5.1a.a68: Likewise. - * algol68/execute/mcgt/mcgt-3.5d.a68: Likewise. - * algol68/execute/mcgt/mcgt-3.7.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-3.8.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-3.9.1b.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.1.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.1.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.1.6a.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.1.6b.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.1.6c.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.2.6a.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.2.6b.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.2.6d.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.3.1a.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.3.1b.a68: Likewise. - * algol68/execute/mcgt/mcgt-4.3.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-5.1.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-5.1.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-5.1.3c.a68: Likewise. - * algol68/execute/mcgt/mcgt-5.1.5a.a68: Likewise. - * algol68/execute/mcgt/mcgt-6.2.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-6.2.2b.a68: Likewise. - * algol68/execute/mcgt/mcgt-6.2.2c.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.1.1a.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.1.1b.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.1.3a.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.3.2a.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.3.6a.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.3.6b.a68: Likewise. - * algol68/execute/mcgt/mcgt-7.5.3a.a68: Likewise. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/README.mcts: New file. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/compile/a68includes/goodbye-supper.a68 - * algol68/compile/a68includes/goodbye.a68: Likewise. - * algol68/compile/a68includes/hello-supper.a68: Likewise. - * algol68/compile/a68includes/hello.a68: Likewise. - * algol68/compile/actual-bounds-expected-1.a68: Likewise. - * algol68/compile/actual-bounds-expected-2.a68: Likewise. - * algol68/compile/actual-bounds-expected-3.a68: Likewise. - * algol68/compile/balancing-1.a68: Likewise. - * algol68/compile/bold-nestable-comment-1.a68: Likewise. - * algol68/compile/bold-taggle-1.a68: Likewise. - * algol68/compile/brief-nestable-comment-1.a68: Likewise. - * algol68/compile/brief-nestable-comment-2.a68: Likewise. - * algol68/compile/char-break-1.a68: Likewise. - * algol68/compile/compile.exp: Likewise. - * algol68/compile/conditional-clause-1.a68: Likewise. - * algol68/compile/error-bold-taggle-1.a68: Likewise. - * algol68/compile/error-coercion-1.a68: Likewise. - * algol68/compile/error-coercion-2.a68: Likewise. - * algol68/compile/error-coercion-flex-1.a68: Likewise. - * algol68/compile/error-conformance-clause-1.a68: Likewise. - * algol68/compile/error-contraction-1.a68: Likewise. - * algol68/compile/error-contraction-2.a68: Likewise. - * algol68/compile/error-incestuous-union-1.a68: Likewise. - * algol68/compile/error-label-after-decl-1.a68: Likewise. - * algol68/compile/error-nestable-comments-1.a68: Likewise. - * algol68/compile/error-nested-comment-1.a68: Likewise. - * algol68/compile/error-no-bounds-allowed-1.a68: Likewise. - * algol68/compile/error-string-break-1.a68: Likewise. - * algol68/compile/error-string-break-2.a68: Likewise. - * algol68/compile/error-string-break-3.a68: Likewise. - * algol68/compile/error-string-break-4.a68: Likewise. - * algol68/compile/error-string-break-5.a68: Likewise. - * algol68/compile/error-string-break-6.a68: Likewise. - * algol68/compile/error-string-break-7.a68: Likewise. - * algol68/compile/error-supper-1.a68: Likewise. - * algol68/compile/error-supper-2.a68: Likewise. - * algol68/compile/error-supper-3.a68: Likewise. - * algol68/compile/error-supper-4.a68: Likewise. - * algol68/compile/error-supper-5.a68: Likewise. - * algol68/compile/error-supper-6.a68: Likewise. - * algol68/compile/error-underscore-in-mode-1.a68: Likewise. - * algol68/compile/error-underscore-in-tag-1.a68: Likewise. - * algol68/compile/error-upper-1.a68: Likewise. - * algol68/compile/error-widening-1.a68: Likewise. - * algol68/compile/error-widening-2.a68: Likewise. - * algol68/compile/error-widening-3.a68: Likewise. - * algol68/compile/error-widening-4.a68: Likewise. - * algol68/compile/error-widening-5.a68: Likewise. - * algol68/compile/error-widening-6.a68: Likewise. - * algol68/compile/error-widening-7.a68: Likewise. - * algol68/compile/error-widening-8.a68: Likewise. - * algol68/compile/error-widening-9.a68: Likewise. - * algol68/compile/hidden-operators-1.a68: Likewise. - * algol68/compile/implicit-widening-1.a68: Likewise. - * algol68/compile/include-supper.a68: Likewise. - * algol68/compile/include.a68: Likewise. - * algol68/compile/labeled-unit-1.a68: Likewise. - * algol68/compile/nested-comment-1.a68: Likewise. - * algol68/compile/nested-comment-2.a68: Likewise. - * algol68/compile/operators-firmly-related.a68: Likewise. - * algol68/compile/recursive-modes-1.a68: Likewise. - * algol68/compile/recursive-modes-2.a68: Likewise. - * algol68/compile/serial-clause-jump-1.a68: Likewise. - * algol68/compile/snobol.a68: Likewise. - * algol68/compile/supper-1.a68: Likewise. - * algol68/compile/supper-10.a68: Likewise. - * algol68/compile/supper-11.a68: Likewise. - * algol68/compile/supper-12.a68: Likewise. - * algol68/compile/supper-13.a68: Likewise. - * algol68/compile/supper-2.a68: Likewise. - * algol68/compile/supper-3.a68: Likewise. - * algol68/compile/supper-4.a68: Likewise. - * algol68/compile/supper-5.a68: Likewise. - * algol68/compile/supper-6.a68: Likewise. - * algol68/compile/supper-7.a68: Likewise. - * algol68/compile/supper-8.a68: Likewise. - * algol68/compile/supper-9.a68: Likewise. - * algol68/compile/uniting-1.a68: Likewise. - * algol68/compile/upper-1.a68: Likewise. - * algol68/compile/warning-scope-1.a68: Likewise. - * algol68/compile/warning-scope-2.a68: Likewise. - * algol68/compile/warning-scope-3.a68: Likewise. - * algol68/compile/warning-scope-4.a68: Likewise. - * algol68/compile/warning-scope-5.a68: Likewise. - * algol68/compile/warning-scope-6.a68: Likewise. - * algol68/compile/warning-scope-7.a68: Likewise. - * algol68/compile/warning-voiding-1.a68: Likewise. - * algol68/compile/warning-voiding-2.a68: Likewise. - * algol68/compile/error-compile-unknown-tag-1.a68: New file. - * algol68/compile/error-def-1.a68: New file. - * algol68/compile/error-mode-stropping-1.a68: New file. - * algol68/compile/error-mode-stropping-10.a68: New file. - * algol68/compile/error-mode-stropping-11.a68: New file. - * algol68/compile/error-mode-stropping-12.a68: New file. - * algol68/compile/error-mode-stropping-13.a68: New file. - * algol68/compile/error-mode-stropping-14.a68: New file. - * algol68/compile/error-mode-stropping-15.a68: New file. - * algol68/compile/error-mode-stropping-16.a68: New file. - * algol68/compile/error-mode-stropping-17.a68: New file. - * algol68/compile/error-mode-stropping-2.a68: New file. - * algol68/compile/error-mode-stropping-3.a68: New file. - * algol68/compile/error-mode-stropping-4.a68: New file. - * algol68/compile/error-mode-stropping-5.a68: New file. - * algol68/compile/error-mode-stropping-6.a68: New file. - * algol68/compile/error-mode-stropping-8.a68: New file. - * algol68/compile/error-mode-stropping-9.a68: New file. - * algol68/compile/error-module-coercions-1.a68: New file. - * algol68/compile/error-module-not-found-1.a68: New file. - * algol68/compile/error-module-ranges-1.a68: New file. - * algol68/compile/error-pragmat-1.a68: New file. - * algol68/compile/error-pragmat-access-1.a68: New file. - * algol68/compile/error-pragmat-access-2.a68: New file. - * algol68/compile/error-pub-loc-1.a68: New file. - * algol68/compile/error-pub-out-of-def-1.a68: New file. - * algol68/compile/error-pub-out-of-def-2.a68: New file. - * algol68/compile/error-string-break-8.a68: New file. - * algol68/compile/error-stropping-5.a68: New file. - * algol68/compile/error-stropping-6.a68: New file. - * algol68/compile/error-stropping-keyword-1.a68: New file. - * algol68/compile/error-stropping-keyword-2.a68: New file. - * algol68/compile/error-stropping-keyword-3.a68: New file. - * algol68/compile/error-stropping-keyword-4.a68: New file. - * algol68/compile/error-vacuum-1.a68: New file. - * algol68/compile/error-vacuum-2.a68: New file. - * algol68/compile/error-vacuum-3.a68: New file. - * algol68/compile/module-1.a68: New file. - * algol68/compile/module-2.a68: New file. - * algol68/compile/module-extracts-1.a68: New file. - * algol68/compile/module-mode-exports-1.a68: New file. - * algol68/compile/module-mode-exports-2.a68: New file. - * algol68/compile/module-mode-exports-3.a68: New file. - * algol68/compile/module-mode-exports-4.a68: New file. - * algol68/compile/module-mode-exports-5.a68: New file. - * algol68/compile/module-mode-exports-6.a68: New file. - * algol68/compile/module-mode-exports-7.a68: New file. - * algol68/compile/module-mode-exports-8.a68: New file. - * algol68/compile/module-mode-exports-9.a68: New file. - * algol68/compile/module-pub-1.a68: New file. - * algol68/compile/module-pub-mangling-1.a68: New file. - * algol68/compile/module-pub-mangling-10.a68: New file. - * algol68/compile/module-pub-mangling-11.a68: New file. - * algol68/compile/module-pub-mangling-12.a68: New file. - * algol68/compile/module-pub-mangling-13.a68: New file. - * algol68/compile/module-pub-mangling-14.a68: New file. - * algol68/compile/module-pub-mangling-15.a68: New file. - * algol68/compile/module-pub-mangling-16.a68: New file. - * algol68/compile/module-pub-mangling-17.a68: New file. - * algol68/compile/module-pub-mangling-18.a68: New file. - * algol68/compile/module-pub-mangling-19.a68: New file. - * algol68/compile/module-pub-mangling-2.a68: New file. - * algol68/compile/module-pub-mangling-20.a68: New file. - * algol68/compile/module-pub-mangling-21.a68: New file. - * algol68/compile/module-pub-mangling-22.a68: New file. - * algol68/compile/module-pub-mangling-3.a68: New file. - * algol68/compile/module-pub-mangling-4.a68: New file. - * algol68/compile/module-pub-mangling-5.a68: New file. - * algol68/compile/module-pub-mangling-6.a68: New file. - * algol68/compile/module-pub-mangling-7.a68: New file. - * algol68/compile/module-pub-mangling-8.a68: New file. - * algol68/compile/module-pub-mangling-9.a68: New file. - * algol68/compile/module-top-down-1.a68: New file. - * algol68/compile/modules/compile.exp: New file. - * algol68/compile/modules/module1.a68: New file. - * algol68/compile/modules/module2.a68: New file. - * algol68/compile/modules/module3.a68: New file. - * algol68/compile/modules/module4.a68: New file. - * algol68/compile/modules/module5.a68: New file. - * algol68/compile/modules/module6.a68: New file. - * algol68/compile/modules/module7.a68: New file. - * algol68/compile/modules/module8.a68: New file. - * algol68/compile/modules/module9.a68: New file. - * algol68/compile/modules/program-7.a68: New file. - * algol68/compile/modules/program-8.a68: New file. - * algol68/compile/modules/program-9.a68: New file. - * algol68/compile/modules/program-error-no-prio-1.a68: New file. - * algol68/compile/modules/program-error-outside-access-1.a68: New file. - * algol68/compile/modules/program-module-accesses-module-1.a68: New file. - * algol68/compile/modules/program-proc-arg-order-1.a68: New file. - * algol68/compile/warning-hidding-1.a68: New file. - * algol68/compile/warning-hidding-2.a68: New file. - * algol68/compile/warning-hidding-3.a68: New file. - * algol68/compile/warning-hidding-4.a68: New file. - * algol68/compile/warning-hidding-5.a68: New file. - * algol68/compile/warning-hidding-6.a68: New file. - * algol68/compile/warning-hidding-7.a68: New file. - * algol68/compile/warning-module-hidding-1.a68: New file. - * algol68/compile/warning-pub-loc-1.a68: New file. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/loop-7.a68: New file. - * algol68/execute/loop-8.a68: Likewise. - * algol68/execute/loop-9.a68: Likewise. - * algol68/execute/loop-overflow-underflow.a68: Likewise. - * algol68/execute/lt-int-1.a68: Likewise. - * algol68/execute/lt-string-stride-1.a68: Likewise. - * algol68/execute/lwb-1.a68: Likewise. - * algol68/execute/minus-int-1.a68: Likewise. - * algol68/execute/minusab-1.a68: Likewise. - * algol68/execute/minusab-2.a68: Likewise. - * algol68/execute/minusab-3.a68: Likewise. - * algol68/execute/minusab-4.a68: Likewise. - * algol68/execute/mod-int-1.a68: Likewise. - * algol68/execute/modab-1.a68: Likewise. - * algol68/execute/modab-2.a68: Likewise. - * algol68/execute/mode-indication-1.a68: Likewise. - * algol68/execute/mult-char-1.a68: Likewise. - * algol68/execute/mult-int-1.a68: Likewise. - * algol68/execute/mult-string-1.a68: Likewise. - * algol68/execute/mult-string-2.a68: Likewise. - * algol68/execute/mult-string-3.a68: Likewise. - * algol68/execute/mult-string-4.a68: Likewise. - * algol68/execute/multab-1.a68: Likewise. - * algol68/execute/multab-2.a68: Likewise. - * algol68/execute/multab-3.a68: Likewise. - * algol68/execute/mutual-recursion-1.a68: Likewise. - * algol68/execute/ne-bits-1.a68: Likewise. - * algol68/execute/ne-char-char-1.a68: Likewise. - * algol68/execute/ne-int-1.a68: Likewise. - * algol68/execute/ne-string-1.a68: Likewise. - * algol68/execute/neg-int-1.a68: Likewise. - * algol68/execute/not-bits-1.a68: Likewise. - * algol68/execute/odd-1.a68: Likewise. - * algol68/execute/op-1.a68: Likewise. - * algol68/execute/op-2.a68: Likewise. - * algol68/execute/op-3.a68: Likewise. - * algol68/execute/operator-declaration-1.a68: Likewise. - * algol68/execute/or-bits-1.a68: Likewise. - * algol68/execute/orf-1.a68: Likewise. - * algol68/execute/over-int-1.a68: Likewise. - * algol68/execute/overab-1.a68: Likewise. - * algol68/execute/overab-2.a68: Likewise. - * algol68/execute/particular-program-1.a68: Likewise. - * algol68/execute/plus-char-1.a68: Likewise. - * algol68/execute/plus-int-1.a68: Likewise. - * algol68/execute/plus-string-1.a68: Likewise. - * algol68/execute/plus-string-2.a68: Likewise. - * algol68/execute/plus-string-stride-1.a68: Likewise. - * algol68/execute/plusab-1.a68: Likewise. - * algol68/execute/plusab-2.a68: Likewise. - * algol68/execute/plusab-3.a68: Likewise. - * algol68/execute/plusab-4.a68: Likewise. - * algol68/execute/plusab-string-1.a68: Likewise. - * algol68/execute/plusto-char-1.a68: Likewise. - * algol68/execute/plusto-string-1.a68: Likewise. - * algol68/execute/posix-argc-argv-1.a68: Likewise. - * algol68/execute/posix-fopen-1.a68: Likewise. - * algol68/execute/posix-fputc-fputs-1.a68: Likewise. - * algol68/execute/posix-getenv-1.a68: Likewise. - * algol68/execute/posix-perror-1.a68: Likewise. - * algol68/execute/posix-putchar-1.a68: Likewise. - * algol68/execute/posix-stdinouterr-1.a68: Likewise. - * algol68/execute/posix-strerror-1.a68: Likewise. - * algol68/execute/posix-stride-1.a68: Likewise. - * algol68/execute/pow-int-1.a68: Likewise. - * algol68/execute/pow-real-1.a68: Likewise. - * algol68/execute/proc-1.a68: Likewise. - * algol68/execute/proc-10.a68: Likewise. - * algol68/execute/proc-12.a68: Likewise. - * algol68/execute/proc-13.a68: Likewise. - * algol68/execute/proc-14.a68: Likewise. - * algol68/execute/proc-15.a68: Likewise. - * algol68/execute/proc-16.a68: Likewise. - * algol68/execute/proc-17.a68: Likewise. - * algol68/execute/proc-18.a68: Likewise. - * algol68/execute/proc-19.a68: Likewise. - * algol68/execute/proc-2.a68: Likewise. - * algol68/execute/proc-20.a68: Likewise. - * algol68/execute/proc-21.a68: Likewise. - * algol68/execute/proc-22.a68: Likewise. - * algol68/execute/proc-23.a68: Likewise. - * algol68/execute/proc-25.a68: Likewise. - * algol68/execute/proc-26.a68: Likewise. - * algol68/execute/proc-27.a68: Likewise. - * algol68/execute/proc-28.a68: Likewise. - * algol68/execute/proc-29.a68: Likewise. - * algol68/execute/proc-3.a68: Likewise. - * algol68/execute/proc-4.a68: Likewise. - * algol68/execute/proc-5.a68: Likewise. - * algol68/execute/proc-6.a68: Likewise. - * algol68/execute/proc-7.a68: Likewise. - * algol68/execute/proc-8.a68: Likewise. - * algol68/execute/procedured-goto-1.a68: Likewise. - * algol68/execute/quine.a68: Likewise. - * algol68/execute/random-1.a68: Likewise. - * algol68/execute/re-im-1.a68: Likewise. - * algol68/execute/rela-string-1.a68: Likewise. - * algol68/execute/repr-1.a68: Likewise. - * algol68/execute/round-1.a68: Likewise. - * algol68/execute/row-display-1.a68: Likewise. - * algol68/execute/row-display-2.a68: Likewise. - * algol68/execute/row-display-3.a68: Likewise. - * algol68/execute/row-display-4.a68: Likewise. - * algol68/execute/row-display-5.a68: Likewise. - * algol68/execute/rowing-1.a68: Likewise. - * algol68/execute/rowing-10.a68: Likewise. - * algol68/execute/rowing-11.a68: Likewise. - * algol68/execute/rowing-12.a68: Likewise. - * algol68/execute/rowing-13.a68: Likewise. - * algol68/execute/rowing-2.a68: Likewise. - * algol68/execute/rowing-3.a68: Likewise. - * algol68/execute/rowing-4.a68: Likewise. - * algol68/execute/rowing-5.a68: Likewise. - * algol68/execute/rowing-6.a68: Likewise. - * algol68/execute/rowing-7.a68: Likewise. - * algol68/execute/rowing-8.a68: Likewise. - * algol68/execute/rowing-9.a68: Likewise. - * algol68/execute/selection-1.a68: Likewise. - * algol68/execute/selection-2.a68: Likewise. - * algol68/execute/selection-3.a68: Likewise. - * algol68/execute/selection-4.a68: Likewise. - * algol68/execute/selection-5.a68: Likewise. - * algol68/execute/selection-multiple-1.a68: Likewise. - * algol68/execute/selection-multiple-2.a68: Likewise. - * algol68/execute/serial-clause-1.a68: Likewise. - * algol68/execute/serial-clause-10.a68: Likewise. - * algol68/execute/serial-clause-2.a68: Likewise. - * algol68/execute/serial-clause-3.a68: Likewise. - * algol68/execute/serial-clause-4.a68: Likewise. - * algol68/execute/serial-clause-5.a68: Likewise. - * algol68/execute/serial-clause-6.a68: Likewise. - * algol68/execute/serial-clause-7.a68: Likewise. - * algol68/execute/serial-clause-8.a68: Likewise. - * algol68/execute/serial-clause-9.a68: Likewise. - * algol68/execute/serial-dsa-1.a68: Likewise. - * algol68/execute/serial-dsa-2.a68: Likewise. - * algol68/execute/serial-dsa-3.a68: Likewise. - * algol68/execute/serial-dsa-4.a68: Likewise. - * algol68/execute/serial-dsa-5.a68: Likewise. - * algol68/execute/serial-dsa-6.a68: Likewise. - * algol68/execute/sign-int-1.a68: Likewise. - * algol68/execute/sign-real-1.a68: Likewise. - * algol68/execute/sin-1.a68: Likewise. - * algol68/execute/skip-1.a68: Likewise. - * algol68/execute/skip-2.a68: Likewise. - * algol68/execute/skip-struct-1.a68: Likewise. - * algol68/execute/slice-indexing-1.a68: Likewise. - * algol68/execute/slice-indexing-2.a68: Likewise. - * algol68/execute/slice-indexing-3.a68: Likewise. - * algol68/execute/slice-indexing-4.a68: Likewise. - * algol68/execute/slice-indexing-5.a68: Likewise. - * algol68/execute/slice-indexing-6.a68: Likewise. - * algol68/execute/slice-indexing-7.a68: Likewise. - * algol68/execute/sqrt-1.a68: Likewise. - * algol68/execute/string-1.a68: Likewise. - * algol68/execute/string-2.a68: Likewise. - * algol68/execute/string-4.a68: Likewise. - * algol68/execute/string-break-1.a68: Likewise. - * algol68/execute/struct-self-1.a68: Likewise. - * algol68/execute/struct-self-2.a68: Likewise. - * algol68/execute/struct-self-3.a68: Likewise. - * algol68/execute/structure-display-1.a68: Likewise. - * algol68/execute/structure-display-2.a68: Likewise. - * algol68/execute/structure-display-3.a68: Likewise. - * algol68/execute/structure-display-4.a68: Likewise. - * algol68/execute/structure-display-5.a68: Likewise. - * algol68/execute/tan-1.a68: Likewise. - * algol68/execute/timesab-string-1.a68: Likewise. - * algol68/execute/trimmer-1.a68: Likewise. - * algol68/execute/trimmer-10.a68: Likewise. - * algol68/execute/trimmer-2.a68: Likewise. - * algol68/execute/trimmer-3.a68: Likewise. - * algol68/execute/trimmer-4.a68: Likewise. - * algol68/execute/trimmer-5.a68: Likewise. - * algol68/execute/trimmer-6.a68: Likewise. - * algol68/execute/trimmer-7.a68: Likewise. - * algol68/execute/trimmer-8.a68: Likewise. - * algol68/execute/trimmer-9.a68: Likewise. - * algol68/execute/trimmer-matrix-1.a68: Likewise. - * algol68/execute/trimmer-matrix-2.a68: Likewise. - * algol68/execute/trimmer-matrix-3.a68: Likewise. - * algol68/execute/trimmer-matrix-4.a68: Likewise. - * algol68/execute/trimmer-matrix-5.a68: Likewise. - * algol68/execute/trimmer-matrix-6.a68: Likewise. - * algol68/execute/trimmer-name-1.a68: Likewise. - * algol68/execute/undefined-1.a68: Likewise. - * algol68/execute/undefined-2.a68: Likewise. - * algol68/execute/undefined-3.a68: Likewise. - * algol68/execute/undefined-4.a68: Likewise. - * algol68/execute/undefined-5.a68: Likewise. - * algol68/execute/uniting-1.a68: Likewise. - * algol68/execute/uniting-2.a68: Likewise. - * algol68/execute/uniting-3.a68: Likewise. - * algol68/execute/uniting-4.a68: Likewise. - * algol68/execute/up-down-bits-1.a68: Likewise. - * algol68/execute/upb-1.a68: Likewise. - * algol68/execute/vacuum-1.a68: Likewise. - * algol68/execute/variable-declaration-1.a68: Likewise. - * algol68/execute/variable-declaration-2.a68: Likewise. - * algol68/execute/variable-declaration-3.a68: Likewise. - * algol68/execute/variable-declaration-4.a68: Likewise. - * algol68/execute/variable-declaration-5.a68: Likewise. - * algol68/execute/variable-declaration-6.a68: Likewise. - * algol68/execute/variable-declaration-heap-1.a68: Likewise. - * algol68/execute/variable-declaration-heap-2.a68: Likewise. - * algol68/execute/variable-declaration-multiple-1.a68: Likewise. - * algol68/execute/variable-declaration-multiple-2.a68: Likewise. - * algol68/execute/variable-declaration-multiple-3.a68: Likewise. - * algol68/execute/variable-declaration-multiple-4.a68: Likewise. - * algol68/execute/variable-declaration-multiple-5.a68: Likewise. - * algol68/execute/variable-declaration-multiple-6.a68: Likewise. - * algol68/execute/variable-declaration-multiple-7.a68: Likewise. - * algol68/execute/variable-declaration-multiple-8.a68: Likewise. - * algol68/execute/variable-declaration-multiple-9.a68: Likewise. - * algol68/execute/voiding-1.a68: Likewise. - * algol68/execute/widening-1.a68: Likewise. - * algol68/execute/widening-2.a68: Likewise. - * algol68/execute/widening-bits-1.a68: Likewise. - * algol68/execute/widening-bits-2.a68: Likewise. - * algol68/execute/widening-bits-3.a68: Likewise. - * algol68/execute/xor-bits-1.a68: Likewise. - * algol68/execute/environment-enquiries-8.a68: Likewise. - * algol68/execute/modules/README: New file. - * algol68/execute/modules/execute.exp: New file. - * algol68/execute/modules/module1.a68: New file. - * algol68/execute/modules/module10.a68: New file. - * algol68/execute/modules/module11.a68: New file. - * algol68/execute/modules/module12.a68: New file. - * algol68/execute/modules/module13.a68: New file. - * algol68/execute/modules/module14.a68: New file. - * algol68/execute/modules/module15.a68: New file. - * algol68/execute/modules/module16.a68: New file. - * algol68/execute/modules/module17.a68: New file. - * algol68/execute/modules/module3.a68: New file. - * algol68/execute/modules/module4.a68: New file. - * algol68/execute/modules/module5.a68: New file. - * algol68/execute/modules/module6.a68: New file. - * algol68/execute/modules/module7.a68: New file. - * algol68/execute/modules/module8.a68: New file. - * algol68/execute/modules/module9.a68: New file. - * algol68/execute/modules/program-1.a68: New file. - * algol68/execute/modules/program-10.a68: New file. - * algol68/execute/modules/program-11.a68: New file. - * algol68/execute/modules/program-12.a68: New file. - * algol68/execute/modules/program-15.a68: New file. - * algol68/execute/modules/program-16.a68: New file. - * algol68/execute/modules/program-17.a68: New file. - * algol68/execute/modules/program-2.a68: New file. - * algol68/execute/modules/program-3.a68: New file. - * algol68/execute/modules/program-4.a68: New file. - * algol68/execute/modules/program-5.a68: New file. - * algol68/execute/modules/program-6.a68: New file. - * algol68/execute/modules/program-7.a68: New file. - * algol68/execute/modules/program-8.a68: New file. - * algol68/execute/posix-lseek.a68: New file. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * algol68/execute/abs-bits-1.a68: New file. - * algol68/execute/abs-bool-1.a68: Likewise. - * algol68/execute/abs-char-1.a68: Likewise. - * algol68/execute/abs-int-1.a68: Likewise. - * algol68/execute/abs-int-negative-1.a68: Likewise. - * algol68/execute/abs-int-negative-gnu-1.a68: Likewise. - * algol68/execute/acos-1.a68: Likewise. - * algol68/execute/affirm-int-1.a68: Likewise. - * algol68/execute/and-bits-1.a68: Likewise. - * algol68/execute/andf-1.a68: Likewise. - * algol68/execute/ascription-1.a68: Likewise. - * algol68/execute/asin-1.a68: Likewise. - * algol68/execute/assert-1.a68: Likewise. - * algol68/execute/assignation-char-1.a68: Likewise. - * algol68/execute/assignation-int-1.a68: Likewise. - * algol68/execute/assignation-int-2.a68: Likewise. - * algol68/execute/assignation-int-3.a68: Likewise. - * algol68/execute/assignation-int-4.a68: Likewise. - * algol68/execute/assignation-int-5.a68: Likewise. - * algol68/execute/assignation-multiple-1.a68: Likewise. - * algol68/execute/assignation-multiple-2.a68: Likewise. - * algol68/execute/assignation-struct-1.a68: Likewise. - * algol68/execute/assignation-struct-2.a68: Likewise. - * algol68/execute/atan-1.a68: Likewise. - * algol68/execute/balancing-1.a68: Likewise. - * algol68/execute/balancing-rows-1.a68: Likewise. - * algol68/execute/bin-1.a68: Likewise. - * algol68/execute/bin-negative-1.a68: Likewise. - * algol68/execute/bin-negative-gnu-1.a68: Likewise. - * algol68/execute/boolops-1.a68: Likewise. - * algol68/execute/call-1.a68: Likewise. - * algol68/execute/call-2.a68: Likewise. - * algol68/execute/case-clause-1.a68: Likewise. - * algol68/execute/case-clause-2.a68: Likewise. - * algol68/execute/case-clause-3.a68: Likewise. - * algol68/execute/case-clause-4.a68: Likewise. - * algol68/execute/closed-clause-1.a68: Likewise. - * algol68/execute/closed-clause-2.a68: Likewise. - * algol68/execute/collateral-clause-1.a68: Likewise. - * algol68/execute/collateral-clause-2.a68: Likewise. - * algol68/execute/collateral-clause-3.a68: Likewise. - * algol68/execute/collateral-clause-4.a68: Likewise. - * algol68/execute/collateral-clause-5.a68: Likewise. - * algol68/execute/collateral-clause-6.a68: Likewise. - * algol68/execute/completer-1.a68: Likewise. - * algol68/execute/completer-10.a68: Likewise. - * algol68/execute/completer-2.a68: Likewise. - * algol68/execute/completer-3.a68: Likewise. - * algol68/execute/completer-4.a68: Likewise. - * algol68/execute/completer-5.a68: Likewise. - * algol68/execute/completer-6.a68: Likewise. - * algol68/execute/completer-7.a68: Likewise. - * algol68/execute/completer-8.a68: Likewise. - * algol68/execute/completer-9.a68: Likewise. - * algol68/execute/cond-clause-1.a68: Likewise. - * algol68/execute/cond-clause-2.a68: Likewise. - * algol68/execute/cond-clause-3.a68: Likewise. - * algol68/execute/cond-clause-4.a68: Likewise. - * algol68/execute/cond-clause-5.a68: Likewise. - * algol68/execute/cond-clause-6.a68: Likewise. - * algol68/execute/cond-clause-7.a68: Likewise. - * algol68/execute/cond-clause-8.a68: Likewise. - * algol68/execute/cond-clause-9.a68: Likewise. - * algol68/execute/conformity-clause-1.a68: Likewise. - * algol68/execute/conformity-clause-2.a68: Likewise. - * algol68/execute/conformity-clause-3.a68: Likewise. - * algol68/execute/conformity-clause-4.a68: Likewise. - * algol68/execute/conformity-clause-5.a68: Likewise. - * algol68/execute/conformity-clause-6.a68: Likewise. - * algol68/execute/conformity-clause-7.a68: Likewise. - * algol68/execute/conformity-clause-8.a68: Likewise. - * algol68/execute/conformity-clause-9.a68: Likewise. - * algol68/execute/conj-1.a68: Likewise. - * algol68/execute/cos-1.a68: Likewise. - * algol68/execute/declarer-1.a68: Likewise. - * algol68/execute/declarer-2.a68: Likewise. - * algol68/execute/deprocedure-1.a68: Likewise. - * algol68/execute/deprocedure-2.a68: Likewise. - * algol68/execute/deref-1.a68: Likewise. - * algol68/execute/deref-2.a68: Likewise. - * algol68/execute/deref-3.a68: Likewise. - * algol68/execute/deref-4.a68: Likewise. - * algol68/execute/deref-5.a68: Likewise. - * algol68/execute/deref-6.a68: Likewise. - * algol68/execute/deref-7.a68: Likewise. - * algol68/execute/deref-8.a68: Likewise. - * algol68/execute/div-int-1.a68: Likewise. - * algol68/execute/divab-real-1.a68: Likewise. - * algol68/execute/elem-bits-1.a68: Likewise. - * algol68/execute/elems-1.a68: Likewise. - * algol68/execute/elems-2.a68: Likewise. - * algol68/execute/entier-1.a68: Likewise. - * algol68/execute/environment-enquiries-1.a68: Likewise. - * algol68/execute/environment-enquiries-2.a68: Likewise. - * algol68/execute/environment-enquiries-3.a68: Likewise. - * algol68/execute/environment-enquiries-4.a68: Likewise. - * algol68/execute/environment-enquiries-5.a68: Likewise. - * algol68/execute/environment-enquiries-6.a68: Likewise. - * algol68/execute/environment-enquiries-7.a68: Likewise. - * algol68/execute/environment-enquiries-8.a68: Likewise. - * algol68/execute/eq-bits-1.a68: Likewise. - * algol68/execute/eq-char-char-1.a68: Likewise. - * algol68/execute/eq-int-1.a68: Likewise. - * algol68/execute/eq-string-1.a68: Likewise. - * algol68/execute/eq-string-stride-1.a68: Likewise. - * algol68/execute/execute.exp: Likewise. - * algol68/execute/factorial-1.a68: Likewise. - * algol68/execute/flat-assignation-1.a68: Likewise. - * algol68/execute/flat-assignation-2.a68: Likewise. - * algol68/execute/flex-1.a68: Likewise. - * algol68/execute/flex-2.a68: Likewise. - * algol68/execute/flex-3.a68: Likewise. - * algol68/execute/flex-4.a68: Likewise. - * algol68/execute/flex-5.a68: Likewise. - * algol68/execute/formula-1.a68: Likewise. - * algol68/execute/formula-2.a68: Likewise. - * algol68/execute/fsize-1.a68: Likewise. - * algol68/execute/ge-int-1.a68: Likewise. - * algol68/execute/ge-string-stride-1.a68: Likewise. - * algol68/execute/gen-flex-1.a68: Likewise. - * algol68/execute/gen-heap-1.a68: Likewise. - * algol68/execute/gen-heap-2.a68: Likewise. - * algol68/execute/gen-heap-3.a68: Likewise. - * algol68/execute/gen-heap-bool-1.a68: Likewise. - * algol68/execute/gen-heap-int-1.a68: Likewise. - * algol68/execute/gen-heap-real-1.a68: Likewise. - * algol68/execute/gen-heap-struct-1.a68: Likewise. - * algol68/execute/gen-heap-struct-2.a68: Likewise. - * algol68/execute/gen-heap-struct-3.a68: Likewise. - * algol68/execute/gen-loc-1.a68: Likewise. - * algol68/execute/gen-loc-2.a68: Likewise. - * algol68/execute/gen-loc-3.a68: Likewise. - * algol68/execute/gen-loc-4.a68: Likewise. - * algol68/execute/gen-multiple-1.a68: Likewise. - * algol68/execute/gen-union-1.a68: Likewise. - * algol68/execute/gen-union-2.a68: Likewise. - * algol68/execute/gen-union-3.a68: Likewise. - * algol68/execute/goto-1.a68: Likewise. - * algol68/execute/goto-2.a68: Likewise. - * algol68/execute/goto-3.a68: Likewise. - * algol68/execute/goto-4.a68: Likewise. - * algol68/execute/goto-5.a68: Likewise. - * algol68/execute/gt-int-1.a68: Likewise. - * algol68/execute/gt-string-stride-1.a68: Likewise. - * algol68/execute/i-1.a68: Likewise. - * algol68/execute/i-2.a68: Likewise. - * algol68/execute/identification-1.a68: Likewise. - * algol68/execute/identification-2.a68: Likewise. - * algol68/execute/identity-declaration-1.a68: Likewise. - * algol68/execute/identity-declaration-2.a68: Likewise. - * algol68/execute/identity-declaration-3.a68: Likewise. - * algol68/execute/identity-declaration-4.a68: Likewise. - * algol68/execute/identity-declaration-5.a68: Likewise. - * algol68/execute/identity-declaration-multiple-1.a68: Likewise. - * algol68/execute/identity-declaration-multiple-2.a68: Likewise. - * algol68/execute/identity-declaration-multiple-3.a68: Likewise. - * algol68/execute/identity-declaration-multiple-5.a68: Likewise. - * algol68/execute/identity-declaration-multiple-empty-1.a68: Likewise. - * algol68/execute/identity-declaration-multiple-empty-2.a68: Likewise. - * algol68/execute/identity-declaration-multiple-empty-3.a68: Likewise. - * algol68/execute/identity-declaration-multiple-empty-4.a68: Likewise. - * algol68/execute/identity-declaration-struct-1.a68: Likewise. - * algol68/execute/infinity-1.a68: Likewise. - * algol68/execute/le-ge-bits-1.a68: Likewise. - * algol68/execute/le-int-1.a68: Likewise. - * algol68/execute/le-string-stride-1.a68: Likewise. - * algol68/execute/leng-shorten-bits-1.a68: Likewise. - * algol68/execute/leng-shorten-ints-1.a68: Likewise. - * algol68/execute/leng-shorten-reals-1.a68: Likewise. - * algol68/execute/lengths-shorths-1.a68: Likewise. - * algol68/execute/lisp-1.a68: Likewise. - * algol68/execute/lisp-2.a68: Likewise. - * algol68/execute/ln-1.a68: Likewise. - * algol68/execute/log-1.a68: Likewise. - * algol68/execute/loop-1.a68: Likewise. - * algol68/execute/loop-10.a68: Likewise. - * algol68/execute/loop-11.a68: Likewise. - * algol68/execute/loop-12.a68: Likewise. - * algol68/execute/loop-13.a68: Likewise. - * algol68/execute/loop-14.a68: Likewise. - * algol68/execute/loop-2.a68: Likewise. - * algol68/execute/loop-3.a68: Likewise. - * algol68/execute/loop-4.a68: Likewise. - * algol68/execute/loop-5.a68: Likewise. - * algol68/execute/loop-6.a68: Likewise. - -2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> - - * lib/algol68-dg.exp: New file. - * lib/algol68-torture.exp: Likewise. - * lib/algol68.exp: Likewise. - -2025-11-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119864 - * g++.dg/modules/omp-4_a.C: New test. - * g++.dg/modules/omp-4_b.C: New test. - -2025-11-29 Eczbek <eczbek.void@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/116952 - * g++.dg/cpp2a/lambda-uneval14.C: Revise incorrect test. - * g++.dg/cpp2a/lambda-uneval29.C: New test. - -2025-11-29 Jakub Jelinek <jakub@redhat.com> - - PR c++/122758 - * g++.dg/cpp26/erroneous5.C: New test. - * g++.dg/cpp26/erroneous6.C: New test. - -2025-11-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122844 - * gcc.dg/vect/vect-pr122844.c: New testcase. - -2025-11-28 Tobias Burnus <tburnus@baylibre.com> - - PR c/122892 - * gfortran.dg/gomp/allocate-15.f90: Use another allocator as - omp_{cgroup,pteam}_mem_alloc is invalid for non-local static vars. - * gfortran.dg/gomp/allocate-7.f90: Likewise. - * gfortran.dg/gomp/allocate-static-3.f90: New test. - -2025-11-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/119969 - * g++.dg/torture/pr119969.C: New test. - -2025-11-28 Mark Zhuang <mark.zhuang@spacemit.com> - - * gcc.target/riscv/predef-smt-1.c: New test. - -2025-11-28 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/122733 - * gcc.dg/match-shift-cmp-4.c: New test. - * gcc.dg/match-shift-cmp-5.c: New test. - -2025-11-28 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122890 - * g++.target/aarch64/pr122890.C: New test. - -2025-11-27 Jakub Jelinek <jakub@redhat.com> - - PR c/121506 - * gcc.dg/pr121506.c: New test. - -2025-11-27 Matthieu Longo <matthieu.longo@arm.com> - - * gcc.target/aarch64/build-attributes/build-attribute-define-nok.c: New test. - * gcc.target/aarch64/build-attributes/build-attribute-define-ok.c: New test. - -2025-11-27 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * gcc.target/aarch64/ffs.c: Improve test. - -2025-11-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * c-c++-common/Wstringop-overflow.c: Xfail, PR 122881. - -2025-11-27 Robin Dapp <rdapp@ventanamicro.com> - - PR tree-optimization/122855 - PR tree-optimization/122850 - * gcc.dg/vect/pr122850.c: New test. - * gcc.dg/vect/pr122855.c: New test. - -2025-11-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/pr121959-run-1.c: Update - the reference for run test. - -2025-11-27 Dhruv Chawla <dhruvc@nvidia.com> - - PR tree-optimization/122733 - * gcc.dg/match-shift-cmp-1.c: Update test to only check - equality. - * gcc.dg/match-shift-cmp-2.c: Likewise. - * gcc.dg/match-shift-cmp-3.c: Likewise. - * gcc.dg/match-shift-cmp-4.c: Removed. - -2025-11-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122885 - * gcc.dg/torture/pr122873.c: New testcase. - -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-25 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/gat1.rs: New test. - * rust/execute/torture/gat1.rs: New test. - -2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-3971.rs: New test. - -2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4226.rs: New test. - -2025-11-25 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/e0579-neg-float-fail.rs: New file. - * rust/compile/e0579-neg-float.rs: New file. - -2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4262.rs: New test. - -2025-11-25 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> - - * rust/compile/issue-4140-1.rs: Fixes test. - * rust/compile/issue-4140-2.rs: Likewise. - -2025-11-25 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> - - * rust/compile/issue-4140-1.rs: New test. - * rust/compile/issue-4140-2.rs: Likewise. - -2025-11-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/analyzer/strchr-1.c: Drop include of <string.h>, and use - __builtin_strchr throughout rather than strchr to avoid const - correctness issues when the header implements strchr with a C23 - const-preserving macro. Drop "const" from two vars. - -2025-11-25 Tamar Christina <tamar.christina@arm.com> - - PR target/118974 - * gcc.target/aarch64/sve/pr119351.c: Update codegen. - * gcc.target/aarch64/sve/vect-early-break-cbranch.c: Likewise. - * gcc.target/aarch64/vect-early-break-cbranch.c: Likewise. - * gcc.target/aarch64/sve/vect-early-break-cbranch_2.c: New test. - * gcc.target/aarch64/sve/vect-early-break-cbranch_3.c: New test. - * gcc.target/aarch64/sve/vect-early-break-cbranch_4.c: New test. - * gcc.target/aarch64/sve/vect-early-break-cbranch_5.c: New test. - * gcc.target/aarch64/sve/vect-early-break-cbranch_7.c: New test. - * gcc.target/aarch64/sve/vect-early-break-cbranch_8.c: New test. - * gcc.target/aarch64/vect-early-break-cbranch_2.c: New test. - * gcc.target/aarch64/vect-early-break-cbranch_3.c: New test. - -2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122699 - * g++.dg/modules/tpl-friend-21_a.C: New test. - * g++.dg/modules/tpl-friend-21_b.C: New test. - -2025-11-25 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.dg/Wstringop-overflow-47.c: Adjust warnings to allow for 32-bit - stores. - -2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122789 - * g++.dg/modules/concept-12_a.C: New test. - * g++.dg/modules/concept-12_b.C: New test. - -2025-11-25 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/compile-std1.C: New test. - * g++.dg/modules/modules.exp: Only run it once. - -2025-11-25 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120052 - * c-c++-common/gomp/pr120052.c: New test. - -2025-11-25 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/119931 - * gcc.dg/vla-1.c (main): Hide x value from optimizers and use it after - the call as well. - -2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * g++.dg/DRs/dr2581-1.C (__STDC_ISO_10646__): xfail on non-Linux. - * g++.dg/DRs/dr2581-2.C: Likewise. - (__STDC_VERSION__): Expect error instead of warning on Solaris. - -2025-11-25 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120564 - * c-c++-common/gomp/pr120564.c: New test. - -2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/pr120936-1.c: Restrict to *-*-linux*. - * gcc.target/i386/pr120936-2.c: Likewise. - * gcc.target/i386/pr120936-4.c: Likewise. - * gcc.target/i386/pr120936-5.c: Likewise. - * gcc.target/i386/pr120936-9.c: Likewise. - * gcc.target/i386/pr120936-11.c: Likewise. - -2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/pr120936-3.c: Restrict to *-*-linux*. - * gcc.target/i386/pr120936-6.c: Likewise. - * gcc.target/i386/pr120936-10.c: Likewise. - * gcc.target/i386/pr120936-12.c: Likewise. - -2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * lib/target-supports.exp (add_options_for_check_function_bodies): - New proc. - * g++.target/i386/cf_check-3.C: Add dg-add-options - check_function_bodies. - * g++.target/i386/cf_check-4.C: Likewise. - * gcc.target/i386/builtin-copysign-2.c: Likewise. - * gcc.target/i386/builtin-copysign-3.c: Likewise. - * gcc.target/i386/builtin-copysign-4.c: Likewise. - * gcc.target/i386/builtin-copysign-5.c: Likewise. - * gcc.target/i386/builtin-copysign-6.c: Likewise. - * gcc.target/i386/builtin-copysign-7.c: Likewise. - * gcc.target/i386/builtin-copysign-8a.c: Likewise. - * gcc.target/i386/builtin-copysign-8b.c: Likewise. - * gcc.target/i386/builtin-fabs-1.c: Likewise. - * gcc.target/i386/builtin-memmove-10.c: Likewise. - * gcc.target/i386/builtin-memmove-11a.c: Likewise. - * gcc.target/i386/builtin-memmove-11b.c: Likewise. - * gcc.target/i386/builtin-memmove-11c.c: Likewise. - * gcc.target/i386/builtin-memmove-12.c: Likewise. - * gcc.target/i386/builtin-memmove-13.c: Likewise. - * gcc.target/i386/builtin-memmove-14.c: Likewise. - * gcc.target/i386/builtin-memmove-15.c: Likewise. - * gcc.target/i386/builtin-memmove-1a.c: Likewise. - * gcc.target/i386/builtin-memmove-1b.c: Likewise. - * gcc.target/i386/builtin-memmove-1c.c: Likewise. - * gcc.target/i386/builtin-memmove-1d.c: Likewise. - * gcc.target/i386/builtin-memmove-2a.c: Likewise. - * gcc.target/i386/builtin-memmove-2b.c: Likewise. - * gcc.target/i386/builtin-memmove-2c.c: Likewise. - * gcc.target/i386/builtin-memmove-2d.c: Likewise. - * gcc.target/i386/builtin-memmove-3a.c: Likewise. - * gcc.target/i386/builtin-memmove-3b.c: Likewise. - * gcc.target/i386/builtin-memmove-3c.c: Likewise. - * gcc.target/i386/builtin-memmove-4a.c: Likewise. - * gcc.target/i386/builtin-memmove-4b.c: Likewise. - * gcc.target/i386/builtin-memmove-4c.c: Likewise. - * gcc.target/i386/builtin-memmove-5a.c: Likewise. - * gcc.target/i386/builtin-memmove-5b.c: Likewise. - * gcc.target/i386/builtin-memmove-5c.c: Likewise. - * gcc.target/i386/builtin-memmove-6.c: Likewise. - * gcc.target/i386/builtin-memmove-7.c: Likewise. - * gcc.target/i386/builtin-memmove-8.c: Likewise. - * gcc.target/i386/builtin-memmove-9.c: Likewise. - * gcc.target/i386/cf_check-11.c: Likewise. - * gcc.target/i386/cf_check-7.c: Likewise. - * gcc.target/i386/pr120936-1.c: Likewise. - * gcc.target/i386/pr120936-11.c: Likewise. - * gcc.target/i386/pr120936-2.c: Likewise. - * gcc.target/i386/pr120936-4.c: Likewise. - * gcc.target/i386/pr120936-5.c: Likewise. - * gcc.target/i386/pr120936-9.c: Likewise. - * g++.target/i386/memset-pr101366-1.C: Switch to dg-add-options - check_function_bodies. - * g++.target/i386/memset-pr101366-2.C: Likewise. - * g++.target/i386/memset-pr108585-1a.C: Likewise. - * g++.target/i386/memset-pr108585-1b.C: Likewise. - * g++.target/i386/memset-pr118276-1a.C: Likewise. - * g++.target/i386/memset-pr118276-1b.C: Likewise. - * g++.target/i386/memset-pr118276-1c.C: Likewise. - * gcc.target/i386/memcpy-pr120683-1.c: Likewise. - * gcc.target/i386/memcpy-pr120683-2.c: Likewise. - * gcc.target/i386/memcpy-pr120683-3.c: Likewise. - * gcc.target/i386/memcpy-pr120683-4.c: Likewise. - * gcc.target/i386/memcpy-pr120683-5.c: Likewise. - * gcc.target/i386/memcpy-pr120683-6.c: Likewise. - * gcc.target/i386/memcpy-pr120683-7.c: Likewise. - * gcc.target/i386/memcpy-strategy-12.c: Likewise. - * gcc.target/i386/memset-pr120683-1.c: Likewise. - * gcc.target/i386/memset-pr120683-10.c: Likewise. - * gcc.target/i386/memset-pr120683-11.c: Likewise. - * gcc.target/i386/memset-pr120683-12.c: Likewise. - * gcc.target/i386/memset-pr120683-13.c: Likewise. - * gcc.target/i386/memset-pr120683-14.c: Likewise. - * gcc.target/i386/memset-pr120683-15.c: Likewise. - * gcc.target/i386/memset-pr120683-16.c: Likewise. - * gcc.target/i386/memset-pr120683-17.c: Likewise. - * gcc.target/i386/memset-pr120683-18.c: Likewise. - * gcc.target/i386/memset-pr120683-19.c: Likewise. - * gcc.target/i386/memset-pr120683-2.c: Likewise. - * gcc.target/i386/memset-pr120683-20.c: Likewise. - * gcc.target/i386/memset-pr120683-21.c: Likewise. - * gcc.target/i386/memset-pr120683-22.c: Likewise. - * gcc.target/i386/memset-pr120683-23.c: Likewise. - * gcc.target/i386/memset-pr120683-3.c: Likewise. - * gcc.target/i386/memset-pr120683-4.c: Likewise. - * gcc.target/i386/memset-pr120683-5.c: Likewise. - * gcc.target/i386/memset-pr120683-6.c: Likewise. - * gcc.target/i386/memset-pr120683-7.c: Likewise. - * gcc.target/i386/memset-pr120683-8.c: Likewise. - * gcc.target/i386/memset-pr120683-9.c: Likewise. - * gcc.target/i386/memset-pr70308-1a.c: Likewise. - * gcc.target/i386/memset-pr70308-1b.c: Likewise. - * gcc.target/i386/memset-strategy-10.c: Likewise. - * gcc.target/i386/memset-strategy-13.c: Likewise. - * gcc.target/i386/memset-strategy-25.c: Likewise. - * gcc.target/i386/memset-strategy-28.c: Likewise. - * gcc.target/i386/memset-strategy-29.c: Likewise. - * gcc.target/i386/memset-strategy-30.c: Likewise. - * gcc.target/i386/pr111673.c: Likewise. - * gcc.target/i386/pr82142a.c: Likewise. - * gcc.target/i386/pr82142b.c: Likewise. - * gcc.target/i386/pr92080-17.c: Likewise. - -2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-1.c - (scan-assembler-times): Switch to brace quotes. - Allow for alternative assembler syntax. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-1.c: Likewise. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-10.c: Likewise. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-2.c: Likewise. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-4.c: Likewise. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-5.c: Likewise. - -2025-11-24 Robin Dapp <rdapp.gcc@gmail.com> - - * gcc.target/riscv/rvv/autovec/pr121582.c: New test. - -2025-11-24 Robin Dapp <rdapp@ventanamicro.com> - - PR tree-optimization/122797 - * gcc.dg/vect/pr122797.c: New test. - -2025-11-24 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/powerpc/builtins-1.c: Adjust test expectation. - * gcc.target/riscv/rvv/autovec/pr118019-3.c: New test. - -2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - Richard Biener <rguenther@suse.de> - - PR tree-optimization/116835 - * gcc.dg/torture/pr116835.c: New test. - * gcc.dg/tree-ssa/phiprop-6.c: New test. - * gcc.dg/tree-ssa/phiprop-7.c: New test. - -2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/60183 - * gcc.dg/tree-ssa/phiprop-5.c: New test. - -2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/60183 - * gcc.dg/tree-ssa/phiprop-3.c: New test. - * gcc.dg/tree-ssa/phiprop-4.c: New test. - -2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * g++.dg/tree-ssa/simple-dse-3.C: un-xfail. - -2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122633 - * g++.dg/tree-ssa/simple-dse-1.C: New test. - * g++.dg/tree-ssa/simple-dse-2.C: New test. - * g++.dg/tree-ssa/simple-dse-3.C: New test. - * g++.dg/tree-ssa/simple-dse-4.C: New test. - -2025-11-24 Marek Polacek <polacek@redhat.com> - - PR c++/119964 - * g++.dg/cpp1y/defaulted1.C: New test. - * g++.dg/cpp1y/defaulted2.C: New test. - -2025-11-24 Yury Khrustalev <yury.khrustalev@arm.com> - - PR debug/121964 - * g++.target/aarch64/dwarf-bit-stride-func.C: New test. - * g++.target/aarch64/dwarf-bit-stride-pragma.C: New test. - * g++.target/aarch64/dwarf-bit-stride-pragma-sme.C: New test. - * g++.target/aarch64/sve/dwarf-bit-stride.C: New test. - * gcc.target/aarch64/dwarf-bit-stride-func.c: New test. - * gcc.target/aarch64/dwarf-bit-stride-pragma.c: New test. - * gcc.target/aarch64/dwarf-bit-stride-pragma-sme.c: New test. - * gcc.target/aarch64/sve/dwarf-bit-stride.c: New test. - -2025-11-24 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122766 - * gfortran.dg/pdt_69.f03: New test. - -2025-11-24 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/bb-slp-41.c: Adjust dump scan. - -2025-11-24 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/object_overflow6.adb: New test. - -2025-11-24 liuhongt <hongtao.liu@intel.com> - - PR target/122503 - * g++.target/i386/pr116896-1.C: Add -mtune=generic to - dg-options. - * gcc.target/i386/pr116896.c: Ditto. - -2025-11-23 Pan Li <pan2.li@intel.com> - - * gcc.dg/tree-ssa/bit_op_cvt.1.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.2.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.3.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.4.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.5.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.6.c: New test. - * gcc.dg/tree-ssa/bit_op_cvt.h: New test. - -2025-11-23 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * gcc.dg/vect/vect-licm-hoist-1.c: New. - * gcc.dg/vect/vect-licm-hoist-2.c: Likewise. - -2025-11-23 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/delim-declare-variant-6.c (f3): Use "x86" - instead of "x86_64" in the arch selector, to match both 64- and - 32-bit targets. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122636 - * g++.dg/modules/internal-19_a.C: New test. - * g++.dg/modules/internal-19_b.C: New test. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp2a/is-pointer-interconvertible-base-of2.C: New test. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp2a/is-layout-compatible4.C: New test. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp1z/has-unique-obj-representations5.C: New test. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/ext/is_destructible3.C: Add test for function type. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/ext/is_virtual_base_of_diagnostic2.C: Adjust - diagnostic. - -2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp2a/is-layout-compatible3.C: Adjust expected results. - -2025-11-22 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/122701 - * gcc.dg/torture/pr122701.c: New test. - -2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/delim-declare-variant-1.c: New. - * c-c++-common/gomp/delim-declare-variant-2.c: New. - * c-c++-common/gomp/delim-declare-variant-3.c: New. - * c-c++-common/gomp/delim-declare-variant-4.c: New. - * c-c++-common/gomp/delim-declare-variant-5.c: New. - * c-c++-common/gomp/delim-declare-variant-6.c: New. - * c-c++-common/gomp/delim-declare-variant-7.c: New. - * c-c++-common/gomp/delim-declare-variant-8.c: New. - * c-c++-common/gomp/delim-declare-variant-9.c: New. - -2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> - Julian Brown <julian@codesourcery.com> - waffl3x <waffl3x@baylibre.com> - - * g++.dg/gomp/delim-declare-variant-1.C: New. - * g++.dg/gomp/delim-declare-variant-2.C: New. - * g++.dg/gomp/delim-declare-variant-3.C: New. - * g++.dg/gomp/delim-declare-variant-4.C: New. - * g++.dg/gomp/delim-declare-variant-5.C: New. - * g++.dg/gomp/delim-declare-variant-6.C: New. - * g++.dg/gomp/delim-declare-variant-7.C: New. - * g++.dg/gomp/delim-declare-variant-40.C: New. - * g++.dg/gomp/delim-declare-variant-41.C: New. - * g++.dg/gomp/delim-declare-variant-50.C: New. - * g++.dg/gomp/delim-declare-variant-51.C: New. - * g++.dg/gomp/delim-declare-variant-52.C: New. - * g++.dg/gomp/delim-declare-variant-70.C: New. - * g++.dg/gomp/delim-declare-variant-71.C: New. - -2025-11-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/122788 - * g++.dg/cpp26/expansion-stmt27.C: New test. - -2025-11-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/122185 - * g++.dg/cpp1z/pr122185.C: New test. - -2025-11-22 zhaozhou <zhaozhou@loongson.cn> - - * gcc.target/loongarch/vector/lasx/lasx-struct-move.c: New test. - -2025-11-22 Deng Jianbo <dengjianbo@loongson.cn> - - * gcc.target/loongarch/bstrins-5.c: New test. - * gcc.target/loongarch/bstrins-6.c: New test. - -2025-11-22 zhaozhou <zhaozhou@loongson.cn> - - * gcc.target/loongarch/vector/lsx/lsx-vec-construct-opt.c: - -2025-11-22 Daniele Sahebi <daniele@mkryss.me> - Jakub Jelinek <jakub@redhat.com> - - PR c++/122658 - * g++.dg/cpp2a/consteval42.C: New test. - -2025-11-21 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118358 - * gcc.target/xstormy16/pr118358.c: New. - -2025-11-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122762 - PR tree-optimization/122736 - PR tree-optimization/122790 - * gcc.dg/vect/vect-simd-clone-23.c: New testcase. - -2025-11-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122778 - * gcc.dg/vect/vect-simd-clone-22.c: New testcase. - * gcc.dg/vect/vect-simd-clone-22a.c: Likewise. - -2025-11-21 Marek Polacek <polacek@redhat.com> - - PR c++/120529 - * g++.dg/ext/reference_xes_from_temporary1.C: New test. - -2025-11-21 Jakub Jelinek <jakub@redhat.com> - - PR c++/121445 - * g++.dg/cpp1y/constexpr-121445.C: New test. - -2025-11-21 Jakub Jelinek <jakub@redhat.com> - - PR target/122598 - * gcc.target/i386/pr122598.c: New test. - -2025-11-21 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/122773 - * gcc.dg/pr122773.c: New test. - -2025-11-21 Loeka Rogge <loeka@synopsys.com> - Keith Packard <keithp@keithp.com> - - PR target/120375 - * gcc.target/arc/no-barrel-shifter.c: New test. - -2025-11-21 Claudiu Zissulescu <claziss@gmail.com> - Michiel Derhaeg <michiel@synopsys.com> - - * gcc.target/arc/extvsi-3.c: New test. - -2025-11-21 Deng Jianbo <dengjianbo@loongson.cn> - - * gcc.target/loongarch/vector/lasx/lasx-builtin.c: Replace xvrepli - with xvldi. - * gcc.target/loongarch/vector/lasx/lasx-vec-init-2.c: Fix test. - * gcc.target/loongarch/vector/lsx/lsx-builtin.c: Repalce vrepli with - vldi. - * gcc.target/loongarch/vrepli.c: Ditto. - * gcc.target/loongarch/vector/lasx/lasx-xvldi-2.c: New test. - * gcc.target/loongarch/vector/lsx/lsx-vldi-2.c: New test. - -2025-11-20 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/pr113715.c: New test. - * gcc.target/riscv/rv32e_zcmp.c: Update expected output for - test_popretz. - * gcc.target/riscv/rv32i_zcmp.c: Likewise. - -2025-11-20 Pan Li <pan2.li@intel.com> - - PR target/122692 - * g++.target/riscv/pr122692-run-1.C: New test. - * g++.target/riscv/pr122692-run-2.C: New test. - -2025-11-20 Xi Ruoyao <xry111@xry111.site> - - PR target/122695 - * gcc.target/loongarch/pr122695-1.c: New test. - * gcc.target/loongarch/pr122695-2.c: New test. - -2025-11-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/120876 - * g++.dg/parse/crash81.C: New test. - -2025-11-19 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/122756 - * gcc.dg/pr122756.c: New. - -2025-11-19 Marek Polacek <polacek@redhat.com> - - PR c++/119580 - * g++.dg/template/crash106.C: Adjust expected diagnostics. - * g++.dg/template/crash112.C: Likewise. - * g++.dg/template/dependent-args1.C: Likewise. - * g++.dg/cpp0x/pr119580.C: New test. - -2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122754 - * g++.dg/tree-ssa/string-strlen-1.C: New test. - -2025-11-19 Alfie Richards <alfie.richards@arm.com> - - PR target/122763 - * gcc.target/aarch64/pr122763.c: New test. - -2025-11-19 Patrick Palka <ppalka@redhat.com> - - PR c++/122668 - PR c++/114764 - * g++.dg/cpp0x/noexcept91.C: New test. - -2025-11-19 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/simd/fold_to_highpart_6.c: Update codegen. - * gcc.target/aarch64/sve/fold_to_highpart_1.c: New test. - * gcc.target/aarch64/sve/fold_to_highpart_2.c: New test. - -2025-11-19 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122722 - * gcc.dg/vect/slp-reduc-14.c: New testcase. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121519 - * gcc.dg/pr121519.c: Add testcase for already fixed PR. - -2025-11-19 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/arm/mve/intrinsics/vgetq_lane_f16.c: Add missing - extern "C". Remove dg-skip-if. - * gcc.target/arm/mve/intrinsics/vgetq_lane_f32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s8.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u8.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s64.c: Likewise. Add - check-function-bodies. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u64.c: Likewise. - -2025-11-19 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122747 - * gcc.target/i386/vect-epilogues-10.c: New testcase. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/DRs/dr1670-1.C: New test. - * g++.dg/DRs/dr1670-2.C: New test. - * g++.dg/DRs/dr1670-3.C: New test. - * g++.dg/modules/auto-1_a.H: Use dg-options instead of - dg-additional-options. - * g++.dg/modules/auto-1_b.C: Likewise. - * g++.dg/cpp1y/auto-fn12.C: Likewise. - * g++.dg/cpp1y/auto-fn13.C: Add empty dg-options. - * g++.dg/cpp1y/auto-fn22.C: Likewise. - * g++.dg/cpp1y/constexpr-assert2.C: Likewise. - * g++.dg/cpp1y/auto-fn44.C: Add dg-options -Wpedantic and expect - further warnings. - * g++.dg/cpp1y/auto-fn50.C: Likewise. - * g++.dg/cpp0x/auto9.C: Expect two errors always rather than just - for C++11. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/122671 - * g++.dg/cpp26/constexpr-eh17.C: New test. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/122184 - * g++.dg/opt/pr122184-1.C: New test. - * g++.dg/opt/pr122184-2.C: New test. - -2025-11-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * c-c++-common/asan/pr59063-2.c: Enable on Solaris. - -2025-11-19 Avinash Jayakar <avinashd@linux.ibm.com> - - PR target/119130 - * gcc.target/powerpc/builtins-1-p9-runnable.c: Use same expected - results for both endian format. - -2025-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/32365 - * gfortran.dg/goacc/routine-1.f90: Adjust dg-error format. - * gfortran.dg/goacc/routine-2.f90: Adjust dg-error format. - * gfortran.dg/gomp/declare-variant-17.f90: Adjust dg-error format. - * gfortran.dg/gomp/order-2.f90: Adjust dg-error format. - * gfortran.dg/gomp/pr78026.f03: Adjust dg-error format. - * gfortran.dg/gomp/requires-4.f90: Adjust dg-error format. - * gfortran.dg/gomp/requires-6.f90: Adjust dg-error format. - -2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/arm/mve/intrinsics/vsetq_lane_f16_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_f32_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_s16_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_s32_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_s64_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_s8_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_u16_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_u32_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_u64_bounds.c: New test. - * gcc.target/arm/mve/intrinsics/vsetq_lane_u8_bounds.c: New test. - -2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/117814 - * gcc.target/arm/mve/intrinsics/pr117814-f16.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-2-f16.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-3-f16.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-4-f16.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-f32.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-2-f32.c: New test. - * gcc.target/arm/mve/intrinsics/pr117814-3-f32.c: New test. - * gcc.target/arm/fp16-compile-none-1.c: Delete. - * g++.target/arm/mve/general-c++/nomve_fp_1.c: Fix expected error - message. - * lib/target-supports.exp - (check_effective_target_arm_v8_1m_mve_nofp_ok_nocache): New. - (check_effective_target_arm_v8_1m_mve_nofp_ok): New. - (add_options_for_arm_v8_1m_mve_nofp): New. - -2025-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/32365 - * gfortran.dg/common_22.f90: Update. - * gfortran.dg/common_24.f: Update. - * gfortran.dg/goacc/routine-1.f90: Update. - * gfortran.dg/goacc/routine-2.f90: Update. - * gfortran.dg/gomp/declare-variant-17.f90: Update. - * gfortran.dg/gomp/interop-1.f90: Update. - * gfortran.dg/gomp/order-2.f90: Update. - * gfortran.dg/gomp/pr78026.f03: Update. - * gfortran.dg/gomp/requires-4.f90: Update. - * gfortran.dg/gomp/requires-6.f90: Update. - * gfortran.dg/pr61669.f90: Update. - * gfortran.dg/spec_statement_in_exec.f90: New test exercises - data/common/namelist/OpenMP directives with -fopenmp. - -2025-11-18 Uros Bizjak <ubizjak@gmail.com> - - * gcc.dg/pr116815.c: Require target int32. - -2025-11-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122736 - * gcc.target/i386/vect-pr122736.c: New testcase. - -2025-11-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122723 - * gcc.dg/vect/vect-reduc-cond-add-1.c: New generic functional - testcase. - * gcc.target/i386/vect-epilogues-6.c: New testcase. - * gcc.target/i386/vect-epilogues-7.c: Likewise. - * gcc.target/i386/vect-epilogues-8.c: Likewise. - * gcc.target/i386/vect-epilogues-9.c: Likewise. - -2025-11-18 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx512vl-pr103750-2.c: New test. - -2025-11-17 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122709 - * gfortran.dg/select_contiguous.f90: New test. - -2025-11-17 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/122626 - * g++.dg/analyzer/malloc.C: Add sarif output to verify the fix for - PR analyzer/122626. - -2025-11-17 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-4188.rs: New test. - -2025-11-17 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/const-generics-5.rs: New test. - * rust/execute/torture/const-generics-6.rs: New test. - * rust/execute/torture/const-generics-7.rs: New test. - -2025-11-17 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/const_generics_18.rs: New test. - * rust/compile/const_generics_19.rs: New test. - * rust/execute/torture/const-generics-3.rs: New test. - * rust/execute/torture/const-generics-4.rs: New test. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4212.rs: - * rust/compile/issue-4219.rs: New test. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4162.rs: New test. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4222.rs: New test. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4261.rs: New test. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> - - * rust/compile/issue-4267.rs: New test. - -2025-11-17 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/const-generics-2.rs: New test. - -2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-3659.rs: New file. - -2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-4242.rs: New file. - * rust/execute/torture/issue-4242.rs: New file. - -2025-11-17 vishruth-thimmaiah <vishruththimmaiah@gmail.com> - - * rust/compile/const_generics_17.rs: New test. - * rust/compile/generics14.rs: New test. - -2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/execute/torture/literalpattern_neg.rs: New file. - -2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.fr> - - * rust/compile/issue-3617.rs: New test. - -2025-11-17 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/DRs/dr3079.C: New test. - -2025-11-17 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/DRs/dr3061.C: New test. - -2025-11-17 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/DRs/dr3045.C: New test. - -2025-11-17 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/slp-9.c: Use noipa function attribute, drop - -fno-early-inlining option. - * c-c++-common/restrict-2.c: Explicitly look for hoisted loads. - * gfortran.dg/pr104466.f90: Adjust. - -2025-11-17 Artemiy Volkov <artemiy.volkov@arm.com> - - * gcc.target/aarch64/simd/usubl2.c: New test. - -2025-11-17 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/goacc/cache-3-1.c: Add dg-skip-if for c++26. - * g++.dg/goacc/data-clause-2.C: Likewise. - * g++.dg/gomp/allocate-3.C: Likewise. - * c-c++-common/gomp/affinity-2.c: Use { c || c++23_down } effective - target. - * c-c++-common/goacc/cache-3-2.c: Replace [: in OpenMP or OpenACC - pragmas or attributes with [ : and :] with : ]. - * c-c++-common/goacc/data-clause-1.c: Likewise. - * c-c++-common/goacc/data-clause-2.c: Likewise. - * c-c++-common/goacc/data-clause-duplicate-1.c: Likewise. - * c-c++-common/goacc/mdc-2.c: Likewise. - * c-c++-common/goacc/readonly-1.c: Likewise. - * c-c++-common/gomp/allocate-4.c: Likewise. - * c-c++-common/gomp/clauses-3.c: Likewise. - * c-c++-common/gomp/declare-mapper-3.c: Likewise. - * c-c++-common/gomp/depend-1.c: Likewise. - * c-c++-common/gomp/depend-2.c: Likewise. - * c-c++-common/gomp/depend-3.c: Likewise. - * c-c++-common/gomp/depend-4.c: Likewise. - * c-c++-common/gomp/depend-5.c: Likewise. - * c-c++-common/gomp/depend-6.c: Likewise. - * c-c++-common/gomp/dispatch-1.c: Likewise. - * c-c++-common/gomp/loop-5.c: Likewise. - * c-c++-common/gomp/map-1.c: Likewise. - * c-c++-common/gomp/map-2.c: Likewise. - * c-c++-common/gomp/map-4.c: Likewise. - * c-c++-common/gomp/map-7.c: Likewise. - * c-c++-common/gomp/pr100902-1.c: Likewise. - * c-c++-common/gomp/pr103642.c: Likewise. - * c-c++-common/gomp/pr120180-1.c: Likewise. - * c-c++-common/gomp/pr61486-1.c: Likewise. - * c-c++-common/gomp/pr81006.c: Likewise. - * c-c++-common/gomp/pr91920.c: Likewise. - * c-c++-common/gomp/pr96867.c: Likewise. - * c-c++-common/gomp/pr99928-16.c: Likewise. - * c-c++-common/gomp/reduction-1.c: Likewise. - * c-c++-common/gomp/scan-1.c: Likewise. - * c-c++-common/gomp/target-data-1.c: Likewise. - * c-c++-common/gomp/target-enter-data-1.c: Likewise. - * c-c++-common/gomp/target-has-device-addr-1.c: Likewise. - * c-c++-common/gomp/target-implicit-map-2.c: Likewise. - * c-c++-common/gomp/target-map-iterators-1.c: Likewise. - * c-c++-common/gomp/target-map-iterators-3.c: Likewise. - * c-c++-common/gomp/target-update-iterators-1.c: Likewise. - * c-c++-common/gomp/target-update-iterators-3.c: Likewise. - * g++.dg/goacc/cache-3-1.C: Likewise. - * g++.dg/goacc/cache-3-2.C: Likewise. - * g++.dg/goacc/data-clause-1.C: Likewise. - * g++.dg/goacc/mdc.C: Likewise. - * g++.dg/gomp/array-section-2.C: Likewise. - * g++.dg/gomp/bad-array-section-10.C: Likewise. - * g++.dg/gomp/bad-array-section-11.C: Likewise. - * g++.dg/gomp/bad-array-section-9.C: Likewise. - * g++.dg/gomp/declare-mapper-1.C: Likewise. - * g++.dg/gomp/declare-mapper-2.C: Likewise. - * g++.dg/gomp/depend-1.C: Likewise. - * g++.dg/gomp/depend-2.C: Likewise. - * g++.dg/gomp/ind-base-3.C: Likewise. - * g++.dg/gomp/map-1.C: Likewise. - * g++.dg/gomp/map-2.C: Likewise. - * g++.dg/gomp/map-ptrmem-1.C: Likewise. - * g++.dg/gomp/map-ptrmem-2.C: Likewise. - * g++.dg/gomp/member-array-2.C: Likewise. - * g++.dg/gomp/target-this-3.C: Likewise. - * g++.dg/gomp/target-this-4.C: Likewise. - -2025-11-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122573 - * gcc.dg/vect/costmodel/x86_64/costmodel-pr122573.c: New testcase. - -2025-11-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vmsne.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add the helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u8.c: New test. - -2025-11-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vmsne.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i8.c: New test. - -2025-11-16 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/121345 - * g++.dg/pr121345.C: New. - -2025-11-16 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/pr102983.c: Adjust final check. - -2025-11-16 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122625 - * g++.dg/modules/inst-7_a.C: New test. - * g++.dg/modules/inst-7_b.C: New test. - -2025-11-16 Lewis Hyatt <lhyatt@gmail.com> - - * gcc.dg/plugin/location-overflow-test-3.c: New test. - * gcc.dg/plugin/plugin.exp: Add the new test. - -2025-11-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * g++.dg/tree-ssa/pr117123.C: un-xfail. - -2025-11-16 Sam James <sam@gentoo.org> - - * gcc.target/aarch64/crc-crc32-data16.c: Fix iteration - count to match testname. - -2025-11-15 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/asan/asan-stack-small.c (pa, pb, pc): Make these - vars volatile. - (uintptr_t): New typedef. - (main): Use access of b using pa pointer with offset depending on - how exactly the 3 variables are laid out in the frame. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/using-33_a.C: New test. - * g++.dg/modules/using-33_b.C: New test. - -2025-11-15 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/friend-11_a.C: New test. - * g++.dg/modules/friend-11_b.C: New test. - -2025-11-15 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/cmpbr-4.c: New test. - * gcc.target/aarch64/cmpbr-5.c: New test. - -2025-11-14 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Drop unnecessary output - test(s). - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-1.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-2.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-3.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-4.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-5.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-6.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-7.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-8.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-9.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-10.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-11.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-12.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-13.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-14.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-15.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-16.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-17.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-18.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-19.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-20.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-21.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-22.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-23.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-24.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-25.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-26.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-27.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_phi-28.c: Likewise. - -2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/arm/mve/intrinsics/sqshl_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/srshr_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/uqshl_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/urshr_check_shift.c: New test. - -2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/arm/mve/intrinsics/sqshll_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/srshrl_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/uqshll_check_shift.c: New test. - * gcc.target/arm/mve/intrinsics/urshrl_check_shift.c: New test. - -2025-11-14 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/value_optional_3.f90: New test. - -2025-11-14 Richard Biener <rguenther@suse.de> - - PR ipa/122663 - * g++.dg/torture/pr122663.C: New testcase. - -2025-11-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122573 - * gcc.dg/vect/slp-58.c: New testcase. - -2025-11-14 Harald Anlauf <anlauf@gmx.de> - - PR fortran/117070 - * gfortran.dg/proc_target_1.f90: New test. - -2025-11-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122680 - * gcc.dg/vect/pr122680.c: New testcase. - -2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122216 - * gcc.target/arm/mve/intrinsics/asrl-various-ranges.c: New test. - * gcc.target/arm/mve/intrinsics/lsll-various-ranges.c: New test. - -2025-11-14 zhaozhou <zhaozhou@loongson.cn> - - * gcc.target/loongarch/vec_reduc_half.c: New test. - -2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/96255 - * gfortran.dg/do_concurrent_typespec_1.f90: Delete three - dg-bogus directives not needed. - -2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122646 - * g++.dg/modules/friend-10_a.C: New test. - * g++.dg/modules/friend-10_b.C: New test. - -2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122493 - * gcc.target/i386/pr121062-1.c: Update count. - * gcc.dg/uninit-pred-7_a.c: xfail line 23. - * g++.dg/uninit-pred-5.C: Change dg-warning to dg-bogus. - * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Update count of jump thread. - -2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122637 - * gcc.dg/torture/pr122637-1.c: New test. - -2025-11-13 Michal Jires <mjires@suse.cz> - - PR lto/122603 - * gcc.dg/lto/pr122603_0.c: New test. - -2025-11-13 Artemiy Volkov <artemiy.volkov@arm.com> - - * gcc.dg/tree-ssa/forwprop-43.c: Adjust. - -2025-11-13 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/122627 - * gcc.target/riscv/rvv/autovec/pr122627.c: New test. - -2025-11-13 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/kortest_ccz-1.c: New test. - -2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122551 - * g++.dg/modules/tpl-friend-20_a.C: New test. - * g++.dg/modules/tpl-friend-20_b.C: New test. - * g++.dg/modules/tpl-friend-20_c.C: New test. - -2025-11-13 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.target/aarch64/eor3-opt.c: New test. - -2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/96255 - * gfortran.dg/do_concurrent_typespec_1.f90: Update testcase to check - for bugus warnings. - -2025-11-12 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122175 - * gcc.target/arm/mve/intrinsics/vbicq_m_n_s16.c: Adjust expected - output. - * gcc.target/arm/mve/intrinsics/vbicq_m_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vbicq_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vbicq_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_m_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_m_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_x_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vmvnq_x_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vorrq_m_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vorrq_m_n_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vorrq_n_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vorrq_n_u16.c: Likewise. - -2025-11-12 Antoni Boucher <bouanto@zoho.com> - - * jit.dg/all-non-failing-tests.h: Mention new test. - * jit.dg/test-abi.c: New test. - -2025-11-12 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122653 - * gcc.dg/tree-ssa/scev-16.c: New testcase. - -2025-11-12 Christophe Lyon <christophe.lyon@linaro.org> - Richard Earnshaw <rearnsha@arm.com> - - PR target/122175 - * gcc.target/arm/mve/intrinsics/pr122175.c: New test. - -2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.target/arm/cmse/mainline/8m/hard/union-fp.c: New. - * gcc.target/arm/cmse/baseline/union-4.c: New. - * gcc.target/arm/cmse/mainline/8m/hard/union-4.c: New. - * gcc.target/arm/cmse/mainline/8m/soft/union-4.c: New. - * gcc.target/arm/cmse/mainline/8m/softfp/union-4.c: New. - * gcc.target/arm/cmse/union-4.x: New. - -2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.target/arm/cmse/union-3.x: New test. - * gcc.target/arm/cmse/baseline/union-3.c: New test. - * gcc.target/arm/cmse/mainline/8m/union-3.c: New test. - * gcc.target/arm/cmse/mainline/8_1m/union-3.c: New test. - -2025-11-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/stack-protector-guard-global-1.c: New test. - * gcc.target/s390/stack-protector-guard-global-2.c: New test. - * gcc.target/s390/stack-protector-guard-global-3.c: New test. - * gcc.target/s390/stack-protector-guard-global-4.c: New test. - -2025-11-12 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122647 - * g++.dg/vect/pr122647.cc: New testcase. - -2025-11-12 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/warn34.adb: New test. - -2025-11-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/36725 - * gfortran.dg/fmt_g0_4.f08: Change test case from - compile only to compile and run. Adjust test conditions. - -2025-11-11 Christopher Albert <albert@tugraz.at> - - PR fortran/90519 - * gfortran.dg/finalizer_recursive_alloc_1.f90: New test for ICE fix. - * gfortran.dg/finalizer_recursive_alloc_2.f90: New execution test. - * gfortran.dg/finalizer_self_assign.f90: New test for self-assignment - including a = a, a = (a), and a = (((a))) cases using if/stop pattern. - * gfortran.dg/pr112459.f90: Update to expect 6 _final calls instead - of 12, reflecting corrected self-assignment behavior. - -2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - Steve Kargl <kargl@gcc.gnu.org> - - PR fortran/96255 - * gfortran.dg/do_concurrent_typespec_1.f90: New test covering all - shadowing scenarios: undeclared variable, same kind shadowing, and - different kind shadowing. - -2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/90374 - PR libfortran/90374 - * gfortran.dg/fmt_error_10.f: Update test case to pass. - * gfortran.dg/fmt_zero_width.f90: Likewise. - * gfortran.dg/pr111022.f90: Likewise. - * gfortran.dg/pr96436_4.f90: Likewise. - * gfortran.dg/pr96436_5.f90: Likewise. - -2025-11-11 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vmseq.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u8.c: New test. - -2025-11-11 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vmseq.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i8.c: New test. - -2025-11-11 Dhruv Chawla <dhruvc@nvidia.com> - - * gcc.dg/match-shift-cmp-1.c: New test. - * gcc.dg/match-shift-cmp-2.c: Likewise. - * gcc.dg/match-shift-cmp-3.c: Likewise. - * gcc.dg/match-shift-cmp-4.c: Likewise. - -2025-11-11 Lulu Cheng <chenglulu@loongson.cn> - - * g++.target/loongarch/mv-symbols1.C: New test. - * g++.target/loongarch/mv-symbols2.C: New test. - * g++.target/loongarch/mv-symbols3.C: New test. - * g++.target/loongarch/mv-symbols4.C: New test. - * g++.target/loongarch/mv-symbols5.C: New test. - * g++.target/loongarch/mv-symbols6.C: New test. - * g++.target/loongarch/mvc-symbols1.C: New test. - * g++.target/loongarch/mvc-symbols2.C: New test. - * g++.target/loongarch/mvc-symbols3.C: New test. - * g++.target/loongarch/mvc-symbols4.C: New test. - * g++.target/loongarch/mvc-symbols5.C: New test. - * gcc.target/loongarch/attr-check-error-message1.c: New test. - * gcc.target/loongarch/attr-check-error-message2.c: New test. - * gcc.target/loongarch/attr-check-error-message3.c: New test. - * gcc.target/loongarch/attr-check-error-message4.c: New test. - * gcc.target/loongarch/attr-check-error-message5.c: New test. - * gcc.target/loongarch/attr-check-error-message6.c: New test. - * gcc.target/loongarch/attr-check-error-message7.c: New test. - * gcc.target/loongarch/attr-check-error-message8.c: New test. - * gcc.target/loongarch/attr-check-error-message9.c: New test. - -2025-11-11 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/pragma-la64V1_1.c: New test. - * gcc.target/loongarch/pragma-la64V1_1-2.c: New test. - -2025-11-11 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/attr-check-error-message.c: Add tests. - -2025-11-11 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122629 - * gcc.dg/torture/pr122629-1.c: New test. - * gcc.dg/torture/pr122629-2.c: New test. - * gcc.dg/tree-ssa/pr122629-1.c: New test. - -2025-11-11 Hu, Lin1 <lin1.hu@intel.com> - - PR target/122446 - * gcc.target/i386/amxbf16-asmintel-1.c: Modify dg-final to check intel - form. - * gcc.target/i386/amxcomplex-asmintel-1.c: Ditto. - * gcc.target/i386/amxfp16-asmintel-1.c: Ditto. - * gcc.target/i386/amxfp8-asmintel-1.c: Ditto. - * gcc.target/i386/amxint8-asmintel-1.c: Ditto. - * gcc.target/i386/amxmovrs-asmintel-1.c: Ditto. - * gcc.target/i386/amxtf32-asmintel-1.c: Ditto. - * gcc.target/i386/amxtile-asmintel-1.c: Ditto. - * g++.target/i386/pr122446-1.C: New test. - * g++.target/i386/pr122446-amxavx512.C: Ditto. - * g++.target/i386/pr122446-amxbf16.C: Ditto. - * g++.target/i386/pr122446-amxcomplex.C: Ditto. - * g++.target/i386/pr122446-amxfp16.C: Ditto. - * g++.target/i386/pr122446-amxfp8.C: Ditto. - * g++.target/i386/pr122446-amxint8.C: Ditto. - * g++.target/i386/pr122446-amxmovrs.C: Ditto. - * g++.target/i386/pr122446-amxtf32.C: Ditto. - * g++.target/i386/pr122446-amxtile.C: Ditto. - -2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122628 - * g++.dg/modules/internal-18.C: New test. - -2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/tpl-friend-8_a.H: Add testcase. - * g++.dg/modules/tpl-friend-8_b.C: Add testcase. - -2025-11-10 Alejandro Colomar <alx@kernel.org> - - PR c/122591 - * gcc.dg/countof-compile.c (type): Test return type of _Countof. - -2025-11-10 Dimitar Dimitrov <dimitar@dinux.eu> - - PR target/122415 - * gcc.target/pru/pr122415-1.c: New test. - * gcc.target/pru/pr122415-2.c: New test. - -2025-11-10 Tejas Belagod <tejas.belagod@arm.com> - - * gcc.target/aarch64/sve/acle/general-c/svcount_1.c: Update message. - -2025-11-10 Tejas Belagod <tejas.belagod@arm.com> - - * g++.dg/ext/sve-sizeless-1.C: Add new tests. - * g++.dg/ext/sve-sizeless-2.C: Add new tests. - * g++.target/aarch64/sve/acle/general-c++/gnu_vectors_1.C: Add new tests. - * g++.target/aarch64/sve/acle/general-c++/gnu_vectors_2.C: Add new tests. - * gcc.target/aarch64/sve/acle/general-c/gnu_vectors_1.c: Add new tests. - * gcc.target/aarch64/sve/acle/general-c/gnu_vectors_2.c: Add new tests. - * gcc.target/aarch64/sve/acle/general-c/sizeless-1.c: Add new tests. - * gcc.target/aarch64/sve/acle/general-c/sizeless-2.c : Add new tests. - -2025-11-10 Tejas Belagod <tejas.belagod@arm.com> - - * gcc.target/aarch64/sve/acle/general/cops_bool.c: New. - -2025-11-10 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/pr121985.c: New test. - -2025-11-10 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/pr118019-2.c: - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/119064 - * g++.dg/cpp26/feat-cxx26.C: Revert 2025-07-11 changes. - * g++.dg/DRs/dr2581-1.C (__cpp_trivial_relocatability): Remove test. - * g++.dg/DRs/dr2581-2.C (__cpp_trivial_relocatability): Likewise. - * g++.dg/warn/Wkeyword-macro-1.C: Don't expect any diagnostics on - #define or #undef of trivially_relocatable_if_eligible or - replaceable_if_eligible. - * g++.dg/warn/Wkeyword-macro-2.C: Likewise. - * g++.dg/warn/Wkeyword-macro-4.C: Likewise. - * g++.dg/warn/Wkeyword-macro-5.C: Likewise. - * g++.dg/warn/Wkeyword-macro-7.C: Likewise. - * g++.dg/warn/Wkeyword-macro-8.C: Likewise. - * g++.dg/cpp26/trivially-relocatable1.C: Remove. - * g++.dg/cpp26/trivially-relocatable2.C: Remove. - * g++.dg/cpp26/trivially-relocatable3.C: Remove. - * g++.dg/cpp26/trivially-relocatable4.C: Remove. - * g++.dg/cpp26/trivially-relocatable5.C: Remove. - * g++.dg/cpp26/trivially-relocatable6.C: Remove. - * g++.dg/cpp26/trivially-relocatable7.C: Remove. - * g++.dg/cpp26/trivially-relocatable8.C: Remove. - * g++.dg/cpp26/trivially-relocatable9.C: Remove. - * g++.dg/cpp26/trivially-relocatable10.C: Remove. - * g++.dg/cpp26/trivially-relocatable11.C: Remove. - * g++.dg/modules/class-11_a.H: Remove trivial relocatability - related parts. - * g++.dg/modules/class-11_b.C: Likewise. - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/warn/Wkeyword-macro-1.C: Expect diagnostics on define/undef - of indeterminate. - * g++.dg/warn/Wkeyword-macro-2.C: Likewise. - * g++.dg/warn/Wkeyword-macro-4.C: Likewise. - * g++.dg/warn/Wkeyword-macro-5.C: Likewise. - * g++.dg/warn/Wkeyword-macro-7.C: Likewise. - * g++.dg/warn/Wkeyword-macro-8.C: Likewise. - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/warn/Wkeyword-macro-4.C: Don't diagnose for #undef likely - or #undef unlikely. - * g++.dg/warn/Wkeyword-macro-5.C: Likewise. - * g++.dg/warn/Wkeyword-macro-9.C: Likewise. - * g++.dg/warn/Wkeyword-macro-8.C: Likewise. - * g++.dg/warn/Wkeyword-macro-10.C: Likewise. - -2025-11-10 Lewis Hyatt <lhyatt@gmail.com> - - PR preprocessor/105608 - * g++.dg/pch/line-map-3.C: Remove xfails. - * g++.dg/pch/line-map-4.C: New test. - * g++.dg/pch/line-map-4.Hs: New test. - -2025-11-09 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/apx-ndd-tls-1b.c: Change to xfail for ! ia32. - -2025-11-09 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/indirect-thunk-5.c: Drop x32 scan. - * gcc.target/i386/indirect-thunk-6.c: Likewise. - * gcc.target/i386/indirect-thunk-extern-5.c: Likewise. - * gcc.target/i386/indirect-thunk-extern-6.c: Likewise. - * gcc.target/i386/indirect-thunk-inline-5.c: Likewise. - * gcc.target/i386/indirect-thunk-inline-6.c: Likewise. - -2025-11-09 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/cmov12.c: Limit to lp64. - -2025-11-09 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/shrink_wrap_1.c: Limit to lp64. - -2025-11-09 H.J. Lu <hjl.tools@gmail.com> - - * gcc.dg/pr90838.c: Adjust for x32 - -2025-11-08 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/limited_with4.ads: Rename to... - * gnat.dg/specs/limited_with1.ads: ...this. - * gnat.dg/specs/limited_with4_pkg.ads: Rename to... - * gnat.dg/specs/limited_with1_pkg.ads: ...this. - * gnat.dg/specs/limited_with2-child1.ads: New test. - * gnat.dg/specs/limited_with2-child2.ads: Likewise. - * gnat.dg/specs/limited_with2.ads: New helper. - -2025-11-08 Philipp Tomsich <philipp.tomsich@vrull.eu> - - * gcc.target/riscv/snez.c: New test. - -2025-11-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/113338 - * gfortran.dg/c-interop/pr113338-c.c: New test. - * gfortran.dg/c-interop/pr113338.f90: New test. - -2025-11-08 Avinash Jayakar <avinashd@linux.ibm.com> - - PR tree-optimization/122126 - * gcc.dg/pr122126_vextr.c: New test. - * gcc.dg/pr122126_vset.c: New test. - -2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * gfortran.dg/alloc_comp_deep_copy_7.f90: New test. - -2025-11-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122599 - * gcc.dg/torture/pr122599-1.c: New test. - -2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122588 - * gcc.c-torture/compile/pr122588-1.c: New test. - * gcc.dg/tree-ssa/pr122588-1.c: New test. - -2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR testsuite/122602 - * gcc.dg/vect/complex/complex-operations-run.c: Move to... - * gcc.dg/vect/complex/vect-complex-operations-run.c: ...here. - -2025-11-07 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/class_wide6.ads, gnat.dg/class_wide6.adb: New test. - * gnat.dg/class_wide6_pkg.ads: New helper. - -2025-11-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122577 - * gcc.dg/vect/vect-bool-3.c: New testcase. - -2025-11-07 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/pr121959-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959-2.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959-3.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959-4.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959-5.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959-run-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr121959.h: New test. - -2025-11-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122589 - PR middle-end/122594 - * g++.dg/torture/pr122589.C: New testcase. - -2025-11-07 Alfie Richards <alfie.richards@arm.com> - - PR target/118328 - * gcc.target/aarch64/preserve_none_1.c: New test. - * gcc.target/aarch64/preserve_none_mingw_1.c: New test. - * gcc.target/aarch64/preserve_none_2.c: New test. - * gcc.target/aarch64/preserve_none_3.c: New test. - * gcc.target/aarch64/preserve_none_4.c: New test. - * gcc.target/aarch64/preserve_none_5.c: New test. - * gcc.target/aarch64/preserve_none_6.c: New test. - -2025-11-07 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwmaccu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwmaccu-run-1-u64.c: New test. - -2025-11-07 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/sign-extend-4.c: New test. - * gcc.target/loongarch/sign-extend-5.c: New test. - -2025-11-07 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/sign-extend-3.c: New test. - -2025-11-07 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/sign-extend-6.c: New test. - -2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * gfortran.dg/alloc_comp_deep_copy_5.f90: New test for recursive - allocatable array deep copy. - * gfortran.dg/alloc_comp_deep_copy_6.f90: New test for multi-level - recursive allocatable deep copy. - * gfortran.dg/array_memcpy_2.f90: Fix test with proper allocation. - Signed-off-by: Christopher Albert <albert@tugraz.at> - -2025-11-06 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/prefix3.adb: New test. - * gnat.dg/prefix3_pkg.ads: New helper. - * gnat.dg/prefix3_pkg.adb: Likewise. - -2025-11-06 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/czero-bext.c: New test. - -2025-11-06 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/renaming19.adb: New test. - * gnat.dg/renaming19_pkg.ads: New helper. - * gnat.dg/renaming19_pkg.adb: Likewise. - -2025-11-06 Your Name <jlaw@ventanamicro.com> - - PR rtl-optimization/121136 - * gcc.target/riscv/pr121136.c: New test. - * gcc.dg/cmp-mem-const-1.c: Skip for risc-v. - * gcc.dg/cmp-mem-const-2.c: Likewise. - -2025-11-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122502 - * gcc.dg/torture/pr122502-2.c: New testcase. - -2025-11-06 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/113632 - * gcc.dg/pr113632.c: New. - -2025-11-06 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp - (check_effective_target_arm_v8_vfp_ok_nocache): New. - (check_effective_target_arm_v8_vfp_ok): Call the above helper, and - use global flags. - (add_options_for_arm_v8_vfp): Use et_arm_v8_vfp_flags. - * gcc.target/arm/lceil-vcvt_1.c: Remove -march=armv8-a. - * gcc.target/arm/lfloor-vcvt_1.c: Likewise. - * gcc.target/arm/lround-vcvt_1.c: Likewise. - * gcc.target/arm/vrinta-ce.c: Likewise. - -2025-11-06 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/vect-frint-no-inexact.c (dg-options): Add - -mcmodel=normal. - * gcc.target/loongarch/vect-frint-scalar-no-inexact.c: Likewise. - * gcc.target/loongarch/vect-frint-scalar.c: Likewise. - * gcc.target/loongarch/vect-frint.c: Likewise. - * gcc.target/loongarch/vect-ftint-no-inexact.c: Likewise. - * gcc.target/loongarch/vect-ftint.c: Likewise. - -2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121574 - * g++.dg/modules/internal-17_b.C: Check for diagnostics when - instantiating imported TU-local entities. - -2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121574 - * g++.dg/modules/internal-17_a.C: New test. - * g++.dg/modules/internal-17_b.C: New test. - -2025-11-05 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/discr8.ads: New test. - -2025-11-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122566 - * gfortran.dg/pdt_68.f03: New test. - -2025-11-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122501 - PR fortran/122524 - * gfortran.dg/pdt_66.f03: New test. - * gfortran.dg/pdt_67.f03: New test. - -2025-11-05 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/122570 - * gfortran.dg/gomp/pr122570.f: New test. - -2025-11-05 Artemiy Volkov <artemiy.volkov@arm.com> - - * gcc.dg/tree-ssa/forwprop-43.c: New test. - * gcc.target/aarch64/simd/combine_ext.c: New test. - -2025-11-05 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: Update. - -2025-11-04 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/protected_subtype1.adb: New test. - -2025-11-04 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst9.ads: New test. - * gnat.dg/specs/generic_inst9_pkg1.ads: New helper. - * gnat.dg/specs/generic_inst9_pkg2.ads: Likewise. - * gnat.dg/specs/generic_inst9_pkg2-g.ads: Likewise. - -2025-11-04 Uros Bizjak <ubizjak@gmail.com> - - PR target/122390 - * gcc.target/i386/pr122390.c: New test. - * gcc.target/i386/pr122390-1.c: New test. - -2025-11-04 Kees Cook <kees@kernel.org> - - * gcc.target/arc/builtin_fls_const.c: New test. Verify that - const attribute enables CSE optimization for mathematical ARC - builtins by checking that duplicate calls are eliminated and - results are optimized to shift operations. - -2025-11-04 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/122369 - PR fortran/122508 - * gfortran.dg/gomp/pr122369-1.f90: New test. - * gfortran.dg/gomp/pr122369-2.f90: New test. - * gfortran.dg/gomp/pr122369-3.f90: New test. - * gfortran.dg/gomp/pr122369-4.f90: New test. - * gfortran.dg/gomp/pr122508-1.f90: New test. - * gfortran.dg/gomp/pr122508-2.f90: New test. - -2025-11-04 Siddhesh Poyarekar <siddhesh@gotplt.org> - - PR lto/122515 - * lib/lto.exp (lto-build-archive): New procedure. - (lto-execute-1): Use it. - (lto-link-and-maybe-run, lto-get-options-main): Handle ar-link. - * gcc.dg/lto/pr122515_0.c: New test case. - * gcc.dg/lto/pr122515_1.c: New file. - * gcc.dg/lto/pr122515_2.c: Likewise. - * gcc.dg/lto/pr122515_3.c: Likewise. - * gcc.dg/lto/pr122515_4.c: Likewise. - * gcc.dg/lto/pr122515_5.c: Likewise. - * gcc.dg/lto/pr122515_6.c: Likewise. - * gcc.dg/lto/pr122515_7.c: Likewise. - * gcc.dg/lto/pr122515_8.c: Likewise. - * gcc.dg/lto/pr122515_9.c: Likewise. - -2025-11-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122253 - * g++.dg/modules/internal-16.C: New test. - -2025-11-04 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/122513 - * gfortran.dg/pr122513-2.f90: New test. - -2025-11-04 Kishan Parmar <kishan@linux.ibm.com> - - PR rtl-optimization/93738 - * gcc.target/powerpc/rlwimi-2.c: Update expected rldicl count. - -2025-11-04 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/122544 - * g++.dg/analyzer/exception-path-1-sarif.py: New test script. - * g++.dg/analyzer/exception-path-1.C: Add SARIF output, and use - the above to check it. - * g++.dg/analyzer/exception-path-unwind-multiple-2-sarif.py: New - test script. - * g++.dg/analyzer/exception-path-unwind-multiple-2.C: Add SARIF - output, and use the above to check it. - * gcc.dg/analyzer/setjmp-3-sarif.py: New test script. - * gcc.dg/analyzer/setjmp-3.c: Add SARIF output, and use - the above to check it. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/generic_inst15.adb: New test. - * gnat.dg/generic_inst15_pkg-g.ads: New helper. - * gnat.dg/generic_inst15_pkg.ads: Likewise. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/abstract1.ads: New test. - -2025-11-03 Uros Bizjak <ubizjak@gmail.com> - - PR target/122534 - * gcc.target/i386/pr122534.c: New test. - -2025-11-03 Robin Dapp <rdapp.gcc@gmail.com> - - * gcc.target/riscv/rvv/base/pr119115.c: Add -std=gnu99. - -2025-11-03 Steve Kargl <kargls@comcast.net> - - PR fortran/122513 - * gfortran.dg/pr122513.f90: New test. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * g++.dg/lookup/koenig16.C: New test. - * g++.dg/modules/adl-11_a.C: New file. - * g++.dg/modules/adl-11_b.C: New file. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/builtin-9_a.C: New test. - * g++.dg/modules/builtin-9_b.C: New test. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/clone-5_a.C: New test. - * g++.dg/modules/clone-5_b.C: New test. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/namespace-15_a.C: New test. - * g++.dg/modules/namespace-15_b.C: New test. - -2025-11-03 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/torture/pr92606.c: Use LPM even if LPMx - is available. - -2025-11-03 Loeka Rogge <loeka@synopsys.com> - - * gcc.target/arc/movv2hi-be.c: New test. - -2025-11-03 Kito Cheng <kito.cheng@sifive.com> - - * g++.dg/abi/param2.C: Add -Wno-psabi option for RISC-V. - * g++.target/riscv/abi/empty-struct+union-1.cc: New test. - * g++.target/riscv/abi/empty-struct+union-2.cc: New test. - * g++.target/riscv/abi/empty-struct+union-3.cc: New test. - * g++.target/riscv/abi/empty-struct+union-4.cc: New test. - * g++.target/riscv/abi/empty-struct-1.cc: New test. - * g++.target/riscv/abi/empty-struct-2.cc: New test. - * g++.target/riscv/abi/empty-struct-3.cc: New test. - * g++.target/riscv/abi/empty-struct-4.cc: New test. - * g++.target/riscv/abi/empty-struct-5.cc: New test. - * g++.target/riscv/abi/empty-struct-6.cc: New test. - * g++.target/riscv/abi/empty-struct-7.cc: New test. - * g++.target/riscv/abi/empty-struct-8.cc: New test. - * g++.target/riscv/abi/empty-struct-9.cc: New test. - * g++.target/riscv/abi/empty-struct-10.cc: New test. - * g++.target/riscv/abi/empty-struct-11.cc: New test. - * g++.target/riscv/abi/empty-struct-12.cc: New test. - * g++.target/riscv/abi/empty-union-1.cc: New test. - * g++.target/riscv/abi/empty-union-2.cc: New test. - * g++.target/riscv/abi/empty-union-3.cc: New test. - * g++.target/riscv/abi/empty-union-4.cc: New test. - * g++.target/riscv/riscv.exp: Add abi subdirectory. - * gcc.dg/compat/pr83487-1_x.c: Add -Wno-psabi option for RISC-V. - * gcc.dg/compat/pr83487-1_y.c: Likewise. - * gcc.dg/compat/pr83487-2_x.c: Likewise. - * gcc.dg/compat/pr83487-2_y.c: Likewise. - * gcc.dg/torture/pr28814.c: Likewise. - * gcc.target/riscv/abi/empty-struct+union-1.c: New test. - * gcc.target/riscv/abi/empty-struct+union-2.c: New test. - * gcc.target/riscv/abi/empty-struct+union-3.c: New test. - * gcc.target/riscv/abi/empty-struct+union-4.c: New test. - * gcc.target/riscv/abi/empty-struct-1.c: New test. - * gcc.target/riscv/abi/empty-struct-2.c: New test. - * gcc.target/riscv/abi/empty-struct-3.c: New test. - * gcc.target/riscv/abi/empty-struct-4.c: New test. - * gcc.target/riscv/abi/empty-struct-5.c: New test. - * gcc.target/riscv/abi/empty-struct-6.c: New test. - * gcc.target/riscv/abi/empty-struct-7.c: New test. - * gcc.target/riscv/abi/empty-struct-8.c: New test. - * gcc.target/riscv/abi/empty-struct-9.c: New test. - * gcc.target/riscv/abi/empty-struct-10.c: New test. - * gcc.target/riscv/abi/empty-struct-11.c: New test. - * gcc.target/riscv/abi/empty-struct-12.c: New test. - * gcc.target/riscv/abi/empty-union-1.c: New test. - * gcc.target/riscv/abi/empty-union-2.c: New test. - * gcc.target/riscv/abi/empty-union-3.c: New test. - * gcc.target/riscv/abi/empty-union-4.c: New test. - * gcc.target/riscv/riscv.exp: Add abi subdirectory. - -2025-11-03 Alfie Richards <alfie.richards@arm.com> - - PR target/122405 - * g++.target/aarch64/mv-cpu-features.C: Add HWCAP_ATOMICS and - HWCAP2_RNG defines. - -2025-11-03 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/fmv_priority.in: Update for new features. - * gcc.target/aarch64/fmv_priority1.c: Ditto. - * gcc.target/aarch64/fmv_priority2.c: Ditto. - -2025-11-03 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/vect19.ads, gnat.dg/vect19.adb: New test. - * gnat.dg/vect19_pkg.ads, gnat.dg/vect19_pkg.adb: New helper. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/mode-tieable-opt.c: New test. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/mem-and-mask-opt.c: New test. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/vec_pack_unpack_256.c: Adjust to changed - lasx_xvpermi_q_<LASX:mode> template. - * gcc.target/loongarch/vector/lasx/lasx-builtin.c: Ditto. - * gcc.target/loongarch/lasx-xvpermi_q-opt.c: New test. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/and-large-immediate-opt.c: New test. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/extendsidi2-combine.c: New test. - * gcc.target/loongarch/spill-less.c: New test. - -2025-11-03 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/mulh_wu.c: New test. - -2025-11-03 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/122475 - * gcc.dg/vect/pr122475.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-19.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-20.c: New test. - -2025-11-03 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/builtin-memmove-1a.c: New test. - * gcc.target/i386/builtin-memmove-1b.c: Likewise. - * gcc.target/i386/builtin-memmove-1c.c: Likewise. - * gcc.target/i386/builtin-memmove-1d.c: Likewise. - * gcc.target/i386/builtin-memmove-2a.c: Likewise. - * gcc.target/i386/builtin-memmove-2b.c: Likewise. - * gcc.target/i386/builtin-memmove-2c.c: Likewise. - * gcc.target/i386/builtin-memmove-2d.c: Likewise. - * gcc.target/i386/builtin-memmove-3a.c: Likewise. - * gcc.target/i386/builtin-memmove-3b.c: Likewise. - * gcc.target/i386/builtin-memmove-3c.c: Likewise. - * gcc.target/i386/builtin-memmove-4a.c: Likewise. - * gcc.target/i386/builtin-memmove-4b.c: Likewise. - * gcc.target/i386/builtin-memmove-4c.c: Likewise. - * gcc.target/i386/builtin-memmove-5a.c: Likewise. - * gcc.target/i386/builtin-memmove-5b.c: Likewise. - * gcc.target/i386/builtin-memmove-5c.c: Likewise. - * gcc.target/i386/builtin-memmove-6.c: Likewise. - * gcc.target/i386/builtin-memmove-7.c: Likewise. - * gcc.target/i386/builtin-memmove-8.c: Likewise. - * gcc.target/i386/builtin-memmove-9.c: Likewise. - * gcc.target/i386/builtin-memmove-10.c: Likewise. - * gcc.target/i386/builtin-memmove-11a.c: Likewise. - * gcc.target/i386/builtin-memmove-11b.c: Likewise. - * gcc.target/i386/builtin-memmove-11c.c: Likewise. - * gcc.target/i386/builtin-memmove-12.c: Likewise. - * gcc.target/i386/builtin-memmove-13.c: Likewise. - * gcc.target/i386/builtin-memmove-14.c: Likewise. - * gcc.target/i386/builtin-memmove-15.c: Likewise. - -2025-11-03 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR target/52345 - * gcc.target/riscv/pr52345.c: Add new test cases. - -2025-11-03 chenxiaolong <chenxiaolong@loongson.cn> - - * gcc.target/loongarch/vector/lasx/vect-concat-128-256-result.c: New test. - * gcc.target/loongarch/vector/lasx/vect-concat-128-256.c: New test. - * gcc.target/loongarch/vector/lasx/vect-extract-256-128-result.c: New test. - * gcc.target/loongarch/vector/lasx/vect-extract-256-128.c: New test. - * gcc.target/loongarch/vector/lasx/vect-insert-128-256-result.c: New test. - * gcc.target/loongarch/vector/lasx/vect-insert-128-256.c: New test. - -2025-11-03 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/imm-load.c: Modify. - -2025-11-02 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/122499 - * gm2.dg/spell/iso/fail/badimport2.mod: New test. - * gm2.dg/spell/iso/fail/badimport3.mod: New test. - * gm2.dg/spell/iso/fail/badimport4.mod: New test. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.target/sparc/small-struct-1.c: Run only on Solaris. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.target/sparc/cbcond-1.c: Accept reverse branches. - * gcc.target/sparc/cbcond-2.c: Likewise. - * gcc.target/sparc/overflow-3.c: Likewise. - * gcc.target/sparc/overflow-4.c: Likewise. - * gcc.target/sparc/overflow-5.c: Likewise. - -2025-11-02 Uros Bizjak <ubizjak@gmail.com> - - PR target/122518 - * gcc.target/i386/pr122518.c: New test. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/unknown_discr1.ads: New test. - * gnat.dg/specs/unknown_discr1_pkg.ads: New helper. - * gnat.dg/specs/unknown_discr1_pkg-child.ads: Likewise. - * gnat.dg/specs/unknown_discr1_pkg-g.ads: Likewise. - * gnat.dg/specs/unknown_discr1_pkg-inst.ads: Likewise. - -2025-11-02 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/use_type4.adb: New test. - -2025-11-02 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/torture/pr84211-fuse-move-1.c: Add -fno-lto. - -2025-11-02 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122421 - * g++.dg/modules/inst-6_a.C: New test. - * g++.dg/modules/inst-6_b.C: New test. - -2025-11-01 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR target/67731 - * gcc.target/riscv/pr67731.c: New test. - * gcc.target/sh/pr67731.c: New test. - -2025-11-01 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/122321 - * gcc.target/riscv/rvv/autovec/pr122321.c: New test. - -2025-11-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/78640 - * gfortran.dg/pure_result.f90: New test. - -2025-11-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122381 - * g++.dg/modules/convop-2_a.H: New test. - * g++.dg/modules/convop-2_b.C: New test. - -2025-11-01 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/gnu-compoundlit-1.c: New test. - * gcc.dg/gnu-compoundlit-2.c: New test. - * gcc.dg/pr68090.c: Adapt. - * gcc.dg/vla-init-4.c: Adapt. - * gcc.dg/vla-init-5.c: Adapt. - -2025-11-01 Martin Uecker <uecker@tugraz.at> - - PR c/97986 - * gcc.dg/pr97986-1.c: New test. - * gcc.dg/pr97986-2.c: New test. - -2025-11-01 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/fold-vecperm-1.c: Test at forwprop3. - -2025-10-31 Tamar Christina <tamar.christina@arm.com> - - PR target/121853 - * gcc.target/aarch64/pr121853_1.c: New test. - * gcc.target/aarch64/pr121853_2.c: New test. - -2025-10-31 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122452 - * gfortran.dg/pdt_65.f03: New test. - -2025-10-31 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122502 - * gcc.dg/torture/pr122502.c: New testcase. - -2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/tree-ssa/pr122478.c: Swap `1` and `"optimized"`. - -2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122497 - * gcc.dg/torture/pr122497-1.c: New test. - -2025-10-31 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.dg/vect/slp-widen-mult-half.c: Remove '-mlasx'. - * gcc.dg/vect/tree-vect.h: Check whether the runtime - environment supports LSX instructions. - * gcc.dg/vect/vect-widen-mult-const-s16.c: Dito. - * gcc.dg/vect/vect-widen-mult-const-u16.c: Dito. - * gcc.dg/vect/vect-widen-mult-half-u8.c: Dito. - * gcc.dg/vect/vect-widen-mult-half.c: Dito. - * gcc.dg/vect/vect-widen-mult-u16.c: Dito. - * gcc.dg/vect/vect-widen-mult-u8-s16-s32.c: Dito. - * gcc.dg/vect/vect-widen-mult-u8-u32.c: Dito. - * gcc.dg/vect/vect-widen-mult-u8.c: Dito. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/tuplepattern-restpattern-typecheck-err.rs: New file. - -2025-10-30 Ryo Yoshida <low.ryoshida@gmail.com> - - * rust/compile/match-tuplestructpattern-non-variant.rs: New test. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-4231.rs: New file. - -2025-10-30 Lucas Ly Ba <lucas.ly-ba@outlook.fr> - - * rust/compile/issue-4212.rs: New test. - -2025-10-30 lishin <lishin1008@gmail.com> - - * rust/compile/issue-3556.rs: New test. - -2025-10-30 Ryo Yoshida <low.ryoshida@gmail.com> - - * rust/compile/tuple_index_on_non_tuple.rs: New test. - -2025-10-30 0xllx0 <github+elle@weathered-steel.dev> - - * rust/compile/issue-4145.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/attr_malformed_doc.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/attr_malformed_path.rs: New test. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-tuplestructpattern-err.rs: New file. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-tuplestructpattern-rest.rs: New file. - * rust/execute/torture/match-tuplestructpattern-rest-1.rs: New file. - * rust/execute/torture/match-tuplestructpattern-rest-2.rs: New file. - -2025-10-30 0xllx0 <github+elle@weathered-steel.dev> - - * rust/compile/issue-4148.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/core/core.exp: New test. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-3929-1.rs: New file. - * rust/compile/issue-3929-2.rs: New file. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/torture/link-name.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/macros/mbe/macro58.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3538.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3592.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-4165.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-4090-1.rs: New test. - * rust/compile/issue-4090-2.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-4168.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2394.rs: Update test case - * rust/compile/issue-4146.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-4139.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-4155.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-3922.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-3924.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3969.rs: New test. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3965-1.rs: New test. - * rust/compile/issue-3965-2.rs: New test. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/tuplepattern-rest-readonly.rs: New file. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-3930.rs: New file. - -2025-10-30 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-1725-2.rs: remove bad error message - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/use_self_alone_in_list.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/use_self_alone.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/primitive-import.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/parse_float_dot.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/format_args_concat.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/global-path-array.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/impl_fnptr.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/parse_closure_bind.rs: New test. - -2025-10-30 lishin <lishin1008@gmail.com> - - * rust/compile/issue-3645.rs: New test. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/slice_rest_pattern.rs: Removed -fsyntax-only. - * rust/execute/torture/match-slicepattern-array-2.rs: New file. - * rust/execute/torture/match-slicepattern-slice-2.rs: New file. - -2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/execute/torture/let-identifierpattern-subpattern.rs: New file. - -2025-10-30 lishin <lishin1008@gmail.com> - - * rust/compile/issue-3958.rs: New test. - -2025-10-30 lishin <lishin1008@gmail.com> - - * rust/compile/issue-3947.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-3966.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/use_3.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-3974.rs: New test. - -2025-10-30 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/issue-3726.rs: New test. - * rust/compile/issue-3898.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro-issue4054.rs: New test. - -2025-10-30 Ryutaro Okada <1015ryu88@gmail.com> - - * rust/compile/enum_discriminant3.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/cfg-test.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/import_wildcards.rs: New test. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro49.rs: Add missing lang items. - -2025-10-30 lishin <lishin1008@gmail.com> - - * rust/compile/issue-3928.rs: New test. - -2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/execute/inline_asm_inout_ident.rs: Add arch filter on test. - * rust/execute/inline_asm_inout_var.rs: Likewise. - -2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/attr-macro.rs: New test. - -2025-10-30 David Faust <david.faust@oracle.com> - - PR debug/122248 - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-4.c: New. - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-5.c: New. - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-6.c: New. - -2025-10-30 David Faust <david.faust@oracle.com> - - * gcc.dg/debug/btf/btf-prune-4.c: New. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.dg/cpp/escape-3.i: Remove parentheses in dg-scan directive. - -2025-10-30 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/pointer-counted-by.c: Update for void pointers. - * gcc.dg/pointer-counted-by-10.c: New test. - * gcc.dg/pointer-counted-by-4-void.c: New test. - -2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR target/116075 - * gcc.target/aarch64/sve/dup-insr-1.c: New test. - * gcc.target/aarch64/sve/dup-insr-2.c: New test. - -2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122247 - * g++.dg/tree-ssa/copy-prop-aggregate-sra-2.C: New test. - -2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122247 - * g++.dg/tree-ssa/copy-prop-aggregate-sra-1.C: New test. - -2025-10-30 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.dg/tree-ssa/ctz-char.c: Remove -fno-tree-ch. - * gcc.dg/tree-ssa/ctz-complement-char.c: Ditto. - * gcc.dg/tree-ssa/ctz-complement-int.c: Ditto. - * gcc.dg/tree-ssa/ctz-complement-long-long.c: Ditto. - * gcc.dg/tree-ssa/ctz-complement-long.c: Ditto. - * gcc.dg/tree-ssa/ctz-int.c: Ditto. - * gcc.dg/tree-ssa/ctz-long-long.c: Ditto. - * gcc.dg/tree-ssa/ctz-long.c: Ditto. - * gcc.dg/tree-ssa/ctz-ch.c: New test. - * gcc.dg/pr41488.c: Add -fno-tree-scev-cprop. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst7.ads: New test. - * gnat.dg/specs/generic_inst8.ads: New test. - -2025-10-30 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/122445 - * gcc.target/riscv/rvv/autovec/pr122445.c: New test. - -2025-10-30 Artemiy Volkov <artemiy.volkov@arm.com> - - PR tree-optimization/122478 - * gcc.dg/tree-ssa/pr122478.c: New test. - -2025-10-30 Richard Biener <rguenther@suse.de> - - * gcc.dg/tree-ssa/pr92834.c: Scan phiopt1 instead of optimized. - -2025-10-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR rtl-optimization/121198 - * gcc.target/avr/pr121198.c: New test. - -2025-10-30 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/122485 - * gm2.dg/spell/iso/fail/badimport.mod: New test. - -2025-10-30 Richard Biener <rguenther@suse.de> - Eric Botcazou <ebotcazou@adacore.com> - - * gcc.dg/vect/slp-reduc-13.c: New testcase. - -2025-10-30 Uros Bizjak <ubizjak@gmail.com> - - PR target/116815 - * gcc.dg/pr116815.c: New test. - * gcc.target/i386/pr116815.c: New test. - -2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * c-c++-common/ubsan/align-5.c: Xfail. - * gcc.dg/pr107389.c: Move to... - * gcc.dg/torture/pr107389.c: ...here. Skip for lto. - * gcc.dg/builtin-assume-aligned-1.c: Instead of - testing for deleting of assume-align, test for - the alignment/misalignment. Also disable the - vectorizer. - -2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - Revert: - 2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR middle-end/107389 - PR tree-optimization/122086 - * gcc.dg/pr107389.c: Move to... - * gcc.dg/torture/pr107389.c: ...here. Skip for lto. - Use dg-additional-options rather than dg-options. - * c-c++-common/ubsan/align-5.c: xfail. - -2025-10-30 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr122457.c: New test. - -2025-10-30 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/fnmam4-vec.c: New test. - -2025-10-30 Jinyang He <hejinyang@loongson.cn> - Peng Fan <fanpeng@loongson.cn> - - * gcc.target/loongarch/conditional-move-opt-1.c: Remove mul. - * gcc.target/loongarch/conditional-move-opt-2.c: Remove and. - * gcc.target/loongarch/conditional-move-opt-3.c: New test. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/aggr32.adb: New test. - * gnat.dg/aggr32_pkg.ads: New helper. - * gnat.dg/aggr32_pkg-child.ads: Likewise. - -2025-10-30 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst6.ads: New test. - * gnat.dg/specs/generic_inst6_pkg1-child.ads: New helper. - * gnat.dg/specs/generic_inst6_pkg1-child-grand1.ads: Likewise. - * gnat.dg/specs/generic_inst6_pkg1-child-grand2.ads: Likewise. - * gnat.dg/specs/generic_inst6_pkg1.ads: Likewise. - * gnat.dg/specs/generic_inst6_pkg2.ads: Likewise. - * gnat.dg/specs/generic_inst6_pkg3.ads: Likewise. - -2025-10-29 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/91191 - * gcc.dg/pr91191.c: New. - -2025-10-29 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122165 - * gfortran.dg/pdt_64.f03: New test. - -2025-10-29 Richard Biener <rguenther@suse.de> - - PR tree-optimization/70102 - * gfortran.dg/vect/pr70102.f: New testcase. - -2025-10-29 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122433 - PR fortran/122434 - * gfortran.dg/pdt_62.f03: New test. - * gfortran.dg/pdt_63.f03: New test. - -2025-10-29 Lulu Cheng <chenglulu@loongson.cn> - - PR target/122097 - * gcc.target/loongarch/pr122097.c: New test. - -2025-10-29 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/trap-default.c: New test. - * gcc.target/loongarch/trap-1.c: New test. - -2025-10-28 Yuao Ma <c8ef@outlook.com> - - PR fortran/122342 - * gfortran.dg/coarray_atomic_5.f90: Update testcase. - * gfortran.dg/team_form_3.f90: Likewise. - -2025-10-28 Artemiy Volkov <artemiy.volkov@arm.com> - - * gcc.dg/tree-ssa/forwprop-42.c: New test. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst5.ads: New test. - * gnat.dg/specs/generic_inst5_pkg1.ads: New helper. - * gnat.dg/specs/generic_inst5_pkg2.ads: Likewise. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst4-child2.ads: New test. - * gnat.dg/specs/generic_inst4.ads: New helper. - * gnat.dg/specs/generic_inst4-child1.ads: Likewise. - -2025-10-28 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst3.ads: Add dg-do directive. - -2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122422 - * g++.dg/modules/merge-20.h: New test. - * g++.dg/modules/merge-20_a.H: New test. - * g++.dg/modules/merge-20_b.C: New test. - -2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122310 - * g++.dg/modules/lambda-12.h: New test. - * g++.dg/modules/lambda-12_a.H: New test. - * g++.dg/modules/lambda-12_b.C: New test. - -2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/105749 - PR tree-optimization/80635 - * g++.dg/warn/pr80635-3.C: New test. - * g++.dg/warn/pr80635-4.C: New test. - -2025-10-27 H.J. Lu <hjl.tools@gmail.com> - - PR c/122427 - * g++.target/i386/cf_check-1.C: New test. - * g++.target/i386/cf_check-2.C: Likewise. - * g++.target/i386/cf_check-3.C: Likewise. - * g++.target/i386/cf_check-4.C: Likewise. - * gcc.target/i386/cf_check-7.c: Likewise. - * gcc.target/i386/cf_check-8.c: Likewise. - * gcc.target/i386/cf_check-9.c: Likewise. - * gcc.target/i386/cf_check-10.c: Likewise. - * gcc.target/i386/cf_check-11.c: Likewise. - * gcc.target/i386/no-callee-saved-12.c: Remove dg-error. - * gcc.target/i386/preserve-none-17.c: Likewise. - -2025-10-27 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/private3-child.ads: New test. - * gnat.dg/specs/private3.ads: New helper. - -2025-10-27 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/generic_inst3.ads: New test. - * gnat.dg/specs/generic_inst3_pkg1.ads: New helper. - * gnat.dg/specs/generic_inst3_pkg1.adb: New helper. - * gnat.dg/specs/generic_inst3_pkg2.ads: Likewise. - * gnat.dg/specs/generic_inst3_pkg3.ads: Likewise. - * gnat.dg/specs/generic_inst3_pkg3-child.ads: Likewise. - -2025-10-27 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/122408 - * gfortran.target/aarch64/pr122408_1.f90: New test. - * gfortran.target/aarch64/pr122408_2.f90: New test. - -2025-10-27 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/122394 - * g++.dg/opt/pr122394.C: New test. - -2025-10-27 Olivier Hainque <hainque@adacore.com> - - * g++.target/riscv/rvv/xtheadvector/pr116593.C: Skip if !hostedlib. - -2025-10-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/95541 - * gfortran.dg/pdt_61.f03: New test. - -2025-10-27 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/111003 - * gcc.dg/tree-ssa/pr111003.c: XFAIL. - -2025-10-27 Richard Biener <rguenther@suse.de> - - PR middle-end/122325 - * gcc.dg/complex-8.c: New testcase. - * gcc.dg/complex-9.c: Likewise. - -2025-10-27 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_equivalent_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_equivalent_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_equivalent_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_fp_vs_int_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_128bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_256bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_32bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_64bit_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_all_mixed.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_equivalent_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_four_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_fp_vs_int_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_args.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_int_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_struct.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_unions.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_vectors.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_simple_union.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_single_register.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_two_registers.c: New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_vector_array_struct.c: - New test. - -2025-10-27 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_128bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_256bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_32bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_64bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_all_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_four_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_args.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_int_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_unions.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_simple_union.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_single_register.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_two_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_128bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_256bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_32bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_64bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_all_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_four_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_args.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_int_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_unions.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_simple_union.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_single_register.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_two_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_128bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_256bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_32bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_64bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_all_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_four_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_args.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_int_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_unions.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_simple_union.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_single_register.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_two_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_128bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_256bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_32bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_64bit_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_all_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_call_mixed_function.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_vector_elements.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_width_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_equivalent_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_four_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_fp_vs_int_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_large_vector_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_args.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_float_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_int_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_struct_advanced.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_vector_types_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_unions.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_with_small_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_exhaustion.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_exhaustion_mixed.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_pressure_scenarios.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_same_vectors_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_simple_union.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_single_register.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_single_vector_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_different_abi_vlen.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_eight_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_five_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_four_256bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_nine_128bit_vectors.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_two_registers.c: - New test. - * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_vector_array_struct.c: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_128bit_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_256bit_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_32bit_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_64bit_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_all_mixed.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_call_mixed_function.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_different_vector_elements.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_different_vectors_struct.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_different_width_vectors_struct.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_equivalent_struct.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_four_registers.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_fp_vs_int_vectors.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_large_vector_small_abi_vlen.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_args.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_float_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_int_vector.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_struct.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_struct_advanced.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_mixed_vector_types_struct.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_multiple_unions.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_multiple_vectors.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_multiple_with_small_abi_vlen.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_register_exhaustion.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_register_exhaustion_mixed.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_register_pressure_scenarios.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_same_vectors_struct.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_simple_union.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_single_register.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_single_vector_struct.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_struct_different_abi_vlen.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_struct_eight_128bit_vectors.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_struct_five_256bit_vectors.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_struct_four_256bit_vectors.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_struct_nine_128bit_vectors.h: - New test. - * gcc.target/riscv/rvv/vls-cc/common/test_two_registers.h: New test. - * gcc.target/riscv/rvv/vls-cc/common/test_vector_array_struct.h: New test. - * gcc.target/riscv/rvv/vls-cc/riscv-vls-cc.exp: New test. - * gcc.target/riscv/rvv/vls-cc/test_128_abi_vlen_large_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_128_abi_vlen_medium_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_256_abi_vlen_large_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_256_abi_vlen_very_large_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_32_abi_vlen_medium_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_32_abi_vlen_small_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/test_64_abi_vlen_medium_vector.c: - New test. - * gcc.target/riscv/rvv/vls-cc/test_64_abi_vlen_small_vector.c: New test. - * gcc.target/riscv/rvv/vls-cc/vls-cc-common.h: New test. - -2025-10-27 Jeff Law <jlaw@ventanamicro.com> - - PR target/64345 - PR tree-optimization/80770 - * gcc.target/riscv/pr120553-2.c: Update expected output. - * gcc.target/riscv/pr64345.c: New test. - * gcc.target/riscv/zbb-andn-orn-01.c: Skip when peephole2 isn't run. - * gcc.target/riscv/zbb-andn-orn-02.c: Likewise. - -2025-10-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122419 - * gcc.dg/vect/pr122419.c: New testcase. - -2025-10-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122435 - * gcc.dg/tree-ssa/ssa-fre-111.c: New testcase. - -2025-10-27 H.J. Lu <hjl.tools@gmail.com> - - PR target/122323 - * gcc.target/i386/builtin-copysign-8b.c: Add -mtune=generic. - -2025-10-27 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: New test. - * gcc.target/loongarch/widen-mul-rtx-cost-unsigned.c: New test. - -2025-10-27 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/compare-both-non-zero.c: New test. - -2025-10-27 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/sign_extend_ashift.c: New test. - -2025-10-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/one_cmpl_abs.c: Remove. - -2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR middle-end/107389 - PR tree-optimization/122086 - * gcc.dg/pr107389.c: Move to... - * gcc.dg/torture/pr107389.c: ...here. Skip for lto. - Use dg-additional-options rather than dg-options. - * c-c++-common/ubsan/align-5.c: xfail. - -2025-10-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR target/122270 - * gcc.target/riscv/rvv/base/pr122270-1.c: New test. - -2025-10-26 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/rvv/autovec/pr111391-2.c: Add expected asm. - -2025-10-26 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/machine_attr3.ads, gnat.dg/machine_attr3.adb: New test. - -2025-10-26 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122290 - * gfortran.dg/pdt_60.f03: New test. - -2025-10-26 Alexandre Oliva <oliva@adacore.com> - - PR target/121599 - * gcc.target/aarch64/sve2/pr121599.c: Tolerate alterate insn - selection. - -2025-10-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/114023 - * gfortran.dg/is_contiguous_5.f90: New test. - -2025-10-25 Jiahao Xu <xujiahao@loongson.cn> - - * gcc.target/loongarch/lasx-reduc-1.c: New test. - -2025-10-24 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/pr110405.c: New. - -2025-10-24 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/114025 - * g++.dg/pr114025.C: New. - -2025-10-24 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/122407 - * gm2.dg/spell/iso/fail/badspellabs.mod: New test. - * gm2.dg/spell/iso/fail/badspelladr.mod: New test. - * gm2.dg/spell/iso/fail/badspellcap.mod: New test. - * gm2.dg/spell/iso/fail/badspellchr.mod: New test. - * gm2.dg/spell/iso/fail/badspellchr2.mod: New test. - * gm2.dg/spell/iso/fail/badspelldec.mod: New test. - * gm2.dg/spell/iso/fail/badspellexcl.mod: New test. - * gm2.dg/spell/iso/fail/badspellinc.mod: New test. - * gm2.dg/spell/iso/fail/badspellincl.mod: New test. - * gm2.dg/spell/iso/fail/badspellnew.mod: New test. - * gm2.dg/spell/iso/fail/badspellsize.mod: New test. - * gm2.dg/spell/iso/fail/dg-spell-iso-fail.exp: New test. - -2025-10-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR target/122402 - * gcc.target/aarch64/auto-init-padding-2.c: Turn off SRA. - * gcc.target/aarch64/auto-init-padding-4.c: Likewise. - -2025-10-24 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122386 - * gfortran.dg/transfer_array_subref_2.f90: New test. - -2025-10-24 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/pr114725.c: New. - -2025-10-24 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/118254 - PR tree-optimization/114331 - * gcc.dg/pr114331.c: New. - * gcc.dg/pr118254.c: New. - -2025-10-24 Alex Coplan <alex.coplan@arm.com> - - * gcc.dg/torture/vect-permute-ice.c: New test. - -2025-10-24 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/vect-pr122406-1.c: Adjust to expect reduction - chain vectorization. - * gcc.dg/vect/vect-pr122406-2.c: Likewise. - -2025-10-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122406 - * gcc.dg/vect/vect-pr122406-1.c: New testcase. - * gcc.dg/vect/vect-pr122406-2.c: Likewise. - -2025-10-24 Paul-Antoine Arras <parras@baylibre.com> - - PR fortran/121452 - * c-c++-common/gomp/pr121452-1.c: New test. - * c-c++-common/gomp/pr121452-2.c: New test. - * gfortran.dg/gomp/pr121452-1.f90: New test. - * gfortran.dg/gomp/pr121452-2.f90: New test. - * gfortran.dg/gomp/pr121452-3.f90: New test. - -2025-10-24 H.J. Lu <hjl.tools@gmail.com> - - PR target/122323 - * gcc.target/i386/builtin-fabs-2.c: Also scan (%edi)for x32. - -2025-10-24 Pengfei Li <Pengfei.Li2@arm.com> - - * gcc.dg/fold-vecperm-1.c: New test. - -2025-10-24 Olivier Hainque <hainque@adacore.com> - - * lib/target-supports.exp (check_weak_available): - Return 1 for VxWorks7. - -2025-10-24 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c23-static-assert-5.c, gcc.dg/c23-static-assert-6.c, - gcc.dg/c23-static-assert-7.c, gcc.dg/c23-static-assert-8.c, - gcc.dg/c2y-static-assert-2.c, gcc.dg/c2y-static-assert-3.c, - gcc.dg/c2y-static-assert-4.c: New tests. - -2025-10-23 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/Length_overflow__2_.out: Updated test result. - * cobol.dg/group2/Length_overflow_with_offset__1_.out: Likewise. - * cobol.dg/group2/Offset_overflow.out: Likewise. - * cobol.dg/group2/CALL_with_OCCURS_DEPENDING_ON.cob: New test. - * cobol.dg/group2/CALL_with_OCCURS_DEPENDING_ON.out: New test. - * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_ASCII.cob: New test. - * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_ASCII.out: New test. - * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_EBCDIC.cob: New test. - * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_EBCDIC.out: New test. - * cobol.dg/group2/EC-BOUND-REF-MOD_checking_process_termination.cob: New test. - * cobol.dg/group2/EC-BOUND-REF-MOD_checking_process_termination.out: New test. - * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__3_.cob: New test. - * cobol.dg/group2/Occurs_DEPENDING_ON__source_and_dest.cob: New test. - * cobol.dg/group2/Occurs_DEPENDING_ON__source_and_dest.out: New test. - * cobol.dg/group2/Recursive_subscripts.cob: New test. - * cobol.dg/group2/Recursive_subscripts.out: New test. - * cobol.dg/group2/SEARCH_ALL_with_OCCURS_DEPENDING_ON.cob: New test. - * cobol.dg/group2/SEARCH_ALL_with_OCCURS_DEPENDING_ON.out: New test. - * cobol.dg/group2/Subscript_by_arithmetic_expression.cob: New test. - * cobol.dg/group2/Subscript_out_of_bounds__1_.cob: New test. - * cobol.dg/group2/Subscript_out_of_bounds__1_.out: New test. - * cobol.dg/group2/Subscript_out_of_bounds__2_.cob: New test. - * cobol.dg/group2/Subscript_out_of_bounds__2_.out: New test. - * cobol.dg/group2/Subscripted_refmods.cob: New test. - * cobol.dg/group2/Subscripted_refmods.out: New test. - * cobol.dg/group2/length_of_ODO_Rules_7__8A__and_8B.cob: New test. - * cobol.dg/group2/length_of_ODO_Rules_7__8A__and_8B.out: New test. - * cobol.dg/group2/length_of_ODO_w_-_reference_modification.cob: New test. - -2025-10-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/tree-ssa/bool-12.c: Update based on when BIT_AND/BIT_IOR - is created and no longer MIN/MAX. - -2025-10-23 Robert Dubner <rdubner@symas.com> - James K. Lowden <jklowden@cobolworx.com> - - * cobol.dg/typo-1.cob: New test for squiggles and carets. - -2025-10-23 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/fmv_priority1.c: New test. - * gcc.target/aarch64/fmv_priority2.c: New test. - * gcc.target/aarch64/fmv_priority.in: Support file. - -2025-10-23 Alfie Richards <alfie.richards@arm.com> - - PR target/122190 - * gcc.target/aarch64/pr122190.c: New test - -2025-10-23 zhaozhou <zhaozhou@loongson.cn> - - * gcc.dg/fold-round-1.c: New test. - -2025-10-23 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122223 - * gcc.target/arm/mve/intrinsics/pr122223.c: Relax expected code. - -2025-10-23 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr101639_reduc_mask_vdi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_vqi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_vsi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_ior_vqi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_and_vqi.c: New test. - -2025-10-23 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr101639_reduc_mask_di.c: New test. - * gcc.target/i386/pr101639_reduc_mask_hi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_qi.c: New test. - * gcc.target/i386/pr101639_reduc_mask_si.c: New test. - -2025-10-22 Paul-Antoine Arras <parras@baylibre.com> - - PR middle-end/122378 - * c-c++-common/gomp/attrs-metadirective-2.c: Uncomment local label - declaration. - * c-c++-common/gomp/metadirective-2.c: Likewise. - -2025-10-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/122302 - * g++.dg/cpp0x/pr122302.C: New test. - * g++.dg/cpp/embed-27.C: New test. - -2025-10-22 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/vect-reduc-bool-10.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-11.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-12.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-13.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-14.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-15.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-16.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-17.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-18.c: New test. - -2025-10-22 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/vect-reduc-bool-1.c: New test. - * gcc.target/aarch64/vect-reduc-bool-2.c: New test. - * gcc.target/aarch64/vect-reduc-bool-3.c: New test. - * gcc.target/aarch64/vect-reduc-bool-4.c: New test. - * gcc.target/aarch64/vect-reduc-bool-5.c: New test. - * gcc.target/aarch64/vect-reduc-bool-6.c: New test. - * gcc.target/aarch64/vect-reduc-bool-7.c: New test. - * gcc.target/aarch64/vect-reduc-bool-8.c: New test. - * gcc.target/aarch64/vect-reduc-bool-9.c: New test. - -2025-10-22 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/vect-reduc-bool-1.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-2.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-3.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-4.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-5.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-6.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-7.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-8.c: New test. - * gcc.target/aarch64/sve/vect-reduc-bool-9.c: New test. - -2025-10-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122364 - * gcc.dg/vect/vect-reduc-chain-5.c: New testcase. - -2025-10-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122370 - * gcc.dg/vect/vect-pr122370.c: New testcase. - -2025-10-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122371 - * gcc.dg/vect/vect-pr122371.c: New testcase. - -2025-10-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122365 - * gcc.dg/vect/vect-reduc-bool-9.c: New testcase. - -2025-10-22 Haochen Jiang <haochen.jiang@intel.com> - - * g++.target/i386/mv16.C: Ditto. - * gcc.target/i386/funcspec-56.inc: Handle new march. - -2025-10-22 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr122320-mask16.c: New test. - * gcc.target/i386/pr122320-mask2.c: New test. - * gcc.target/i386/pr122320-mask32.c: New test. - * gcc.target/i386/pr122320-mask4.c: New test. - * gcc.target/i386/pr122320-mask64.c: New test. - * gcc.target/i386/pr122320-mask8.c: New test. - -2025-10-22 Antoni Boucher <bouanto@zoho.com> - - * jit.dg/all-non-failing-tests.h: Mention new test. - * jit.dg/test-sized-float.c: New test. - -2025-10-21 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/c2y-generic-6.c: New test. - * gcc.dg/c2y-generic-7.c: New test. - -2025-10-21 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/ext/is_implicit_lifetime.C: New test. - -2025-10-21 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122189 - * gcc.target/arm/mve/intrinsics/vadcq_m_s32.c - * gcc.target/arm/mve/intrinsics/vadcq_m_u32.c - * gcc.target/arm/mve/intrinsics/vsbcq_m_s32.c - * gcc.target/arm/mve/intrinsics/vsbcq_m_u32.c - -2025-10-21 Paul-Antoine Arras <parras@baylibre.com> - - PR c/120180 - PR fortran/122306 - * c-c++-common/gomp/imperfect1.c: Adjust dg-error. - * c-c++-common/gomp/imperfect4.c: Likewise. - * c-c++-common/gomp/pr120180.c: Move to... - * c-c++-common/gomp/pr120180-1.c: ...here. Remove dg-error. - * g++.dg/gomp/attrs-imperfect1.C: Adjust dg-error. - * g++.dg/gomp/attrs-imperfect4.C: Likewise. - * gfortran.dg/gomp/declare-variant-2.f90: Adjust dg-error. - * gfortran.dg/gomp/declare-variant-20.f90: Likewise. - * c-c++-common/gomp/pr120180-2.c: New test. - * g++.dg/gomp/pr120180-1.C: New test. - * gfortran.dg/gomp/pr120180-1.f90: New test. - * gfortran.dg/gomp/pr120180-2.f90: New test. - * gfortran.dg/gomp/pr122306-1.f90: New file. - * gfortran.dg/gomp/pr122306-2.f90: New file. - -2025-10-21 Roger Sayle <roger@nextmovesoftware.com> - - * gcc.target/i386/sse4_1-stv-10.c: New test case. - * gcc.target/i386/sse4_1-stv-11.c: Likewise. - * gcc.target/i386/sse4_1-stv-12.c: Likewise. - -2025-10-21 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/assumes-2.c: Change for 'invalid' - to 'unknown' change for end directives. - * c-c++-common/gomp/begin-assumes-2.c: Likewise. - * c-c++-common/gomp/assume-2.c: Likewise. Check 'declare - mapper'. - -2025-10-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120687 - * gcc.dg/vect/vect-reduc-chain-4.c: New testcase. - -2025-10-21 Avinash Jayakar <avinashd@linux.ibm.com> - - PR target/104116 - * gcc.dg/vect/pr104116-ceil-div-2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-div-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-div.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-mod-2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-mod-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-mod.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-udiv-2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-udiv-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-udiv.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-umod-2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-umod-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-ceil-umod.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-div-2.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-div-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-div.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-mod-2.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-mod-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-floor-mod.c: disable vectorization. - * gcc.dg/vect/pr104116-round-div-2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-div-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-div.c: disable vectorization. - * gcc.dg/vect/pr104116-round-mod-2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-mod-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-mod.c: disable vectorization. - * gcc.dg/vect/pr104116-round-udiv-2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-udiv-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-udiv.c: disable vectorization. - * gcc.dg/vect/pr104116-round-umod-2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-umod-pow2.c: disable vectorization. - * gcc.dg/vect/pr104116-round-umod.c: disable vectorization. - * gcc.dg/vect/pr104116.h (init_arr): use std idiom, correct - indentation. - (init_uarr): use std idiom. - -2025-10-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/95699 - PR tree-optimization/101024 - PR tree-optimization/110068 - * gcc.dg/tree-ssa/pr101024-1.c: New test. - * gcc.dg/tree-ssa/pr110068-1.c: New test. - -2025-10-20 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Adjust expected output. - -2025-10-20 Antoni Boucher <bouanto@zoho.com> - - * jit.dg/all-non-failing-tests.h: Add test-arrays-u64.c. - * jit.dg/test-arrays-u64.c: New test. - -2025-10-20 Josef Melcr <jmelcr02@gmail.com> - - * gcc.dg/ipa/ipcp-cb-spec1.c: Moved to libgomp/testsuite/libgomp.c/. - * gcc.dg/ipa/ipcp-cb-spec2.c: Likewise. - * gcc.dg/ipa/ipcp-cb1.c: Likewise. - -2025-10-20 Antoni Boucher <bouanto@zoho.com> - - * jit.dg/test-error-array-bounds.c: Fix test. - -2025-10-20 Thomas Schwinge <tschwinge@baylibre.com> - - PR c++/114457 - * c-c++-common/goacc/kernels-decompose-pr100280-1.c: Skip for - c++26 until PR121975 is fixed. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/component_value1.adb: New test. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/use_type3.adb: New test. - -2025-10-20 Srinath Parvathaneni <srinath.parvathaneni@arm.com> - - * gcc.target/aarch64/acle/asm-inlined-sysreg-1.c: New test. - * gcc.target/aarch64/acle/asm-inlined-sysreg-2.c: Likewise. - * gcc.target/aarch64/acle/rwsr-gated-1.c: Likewise. - * gcc.target/aarch64/acle/rwsr-gated-2.c: Likewise. - * lib/target-supports.exp - (check_effective_target_aarch64_sysreg_guarding_ok): Check - assembler support of -menable-sysreg-checking flag. - -2025-10-20 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/vsetvl/imm_switch-6.c: Skip scan-asm test for -O1 too. - * gcc.target/riscv/rvv/vsetvl/imm_switch-7.c: Likewise. - * gcc.target/riscv/shrink-wrap-1.c: Likewise. Skip for -Og as well. - * gcc.target/riscv/xandes/xandesperf-1.c: Adjust expected output. - -2025-10-20 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/renaming18.adb: New test. - -2025-10-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/101639 - PR tree-optimization/103495 - * gcc.dg/vect/vect-reduc-bool-1.c: New testcase. - * gcc.dg/vect/vect-reduc-bool-2.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-3.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-4.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-5.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-6.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-7.c: Likewise. - * gcc.dg/vect/vect-reduc-bool-8.c: Likewise. - -2025-10-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/99930 - PR target/122323 - * gcc.target/i386/builtin-copysign-2.c: New test. - * gcc.target/i386/builtin-copysign-3.c: Likewise. - * gcc.target/i386/builtin-copysign-4.c: Likewise. - * gcc.target/i386/builtin-copysign-5.c: Likewise. - * gcc.target/i386/builtin-copysign-6.c: Likewise. - * gcc.target/i386/builtin-copysign-7.c: Likewise. - * gcc.target/i386/builtin-copysign-8a.c: Likewise. - * gcc.target/i386/builtin-copysign-8b.c: Likewise. - * gcc.target/i386/builtin-fabs-1.c: Likewise. - * gcc.target/i386/builtin-fabs-2.c: Likewise. - -2025-10-19 Georg-Johann Lay <avr@gjlay.de> - - PR testsuite/122212 - PR testsuite/52641 - * gcc.dg/torture/pr122212.c: Pass 0xffffffff instead of -1u - for all bits set in uint32_t. - -2025-10-19 Georg-Johann Lay <avr@gjlay.de> - - PR testsuite/122016 - PR testsuite/52641 - * gcc.dg/torture/pr122016.c (strncmp): Use __SIZE_TYPE__ instead - of long as type of the size argument. - -2025-10-19 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u64.c: New test. - -2025-10-18 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/119060 - * g++.dg/cpp26/observable-checkpoint.C: New test. - -2025-10-18 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122279 - * g++.dg/modules/namespace-13_b.C: Adjust expected results. - * g++.dg/modules/namespace-13_c.C: Test non-exported - using-directive is not used. - * g++.dg/modules/namespace-14_a.C: New test. - * g++.dg/modules/namespace-14_b.C: New test. - * g++.dg/modules/namespace-14_c.C: New test. - * g++.dg/modules/namespace-14_d.C: New test. - -2025-10-18 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122069 - * gcc.target/aarch64/sve2/pr122069_3.c: New test. - * gcc.target/aarch64/sve2/pr122069_4.c: New test. - -2025-10-18 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122069 - * gcc.target/aarch64/sve2/pr122069_1.c: New test. - * gcc.target/aarch64/sve2/pr122069_2.c: New test. - -2025-10-18 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122069 - * gcc.target/aarch64/sve/pr122069_1.c: New test. - * gcc.target/aarch64/sve/pr122069_2.c: New test. - -2025-10-18 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122069 - * gcc.target/aarch64/pr122069_3.c: New test. - * gcc.target/aarch64/pr122069_4.c: New test. - -2025-10-18 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/122069 - * gcc.target/aarch64/pr122069_1.c: New test. - * gcc.target/aarch64/pr122069_2.c: New test. - -2025-10-18 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/conditional_1.f90: Test character type. - * gfortran.dg/conditional_2.f90: Test print constants. - * gfortran.dg/conditional_4.f90: Test diagnostic message. - * gfortran.dg/conditional_6.f90: Test character cond-arg. - -2025-10-18 Linsen Zhou <i@lin.moe> - - PR tree-optimization/122012 - * gcc.dg/torture/pr122012.c: New test. - -2025-10-17 David Faust <david.faust@oracle.com> - - PR target/122139 - * gcc.target/bpf/memset-3.c: New. - * gcc.target/bpf/memset-4.c: New. - -2025-10-17 Tamar Christina <tamar.christina@arm.com> - Jennifer Schmitz <jschmitz@nvidia.com> - - PR target/121604 - * gcc.target/aarch64/sve/pr121604_brk.c: New test. - * gcc.target/aarch64/sve2/pr121604_pmov.c: New test. - -2025-10-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122308 - * gcc.dg/vect/vect-pr122308.c: New testcase. - -2025-10-17 Josef Melcr <jmelcr02@gmail.com> - - * gcc.dg/ipa/ipcp-cb-spec1.c: New test. - * gcc.dg/ipa/ipcp-cb-spec2.c: New test. - * gcc.dg/ipa/ipcp-cb1.c: New test. - -2025-10-17 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/style1.ads: New test. - -2025-10-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122301 - * gcc.dg/vect/vect-pr122301.c: New testcase. - -2025-10-17 Avinash Jayakar <avinashd@linux.ibm.com> - - PR tree-optimization/104116 - * gcc.dg/vect/pr104116-ceil-div-2.c: New test. - * gcc.dg/vect/pr104116-ceil-div-pow2.c: New test. - * gcc.dg/vect/pr104116-ceil-div.c: New test. - * gcc.dg/vect/pr104116-ceil-mod-2.c: New test. - * gcc.dg/vect/pr104116-ceil-mod-pow2.c: New test. - * gcc.dg/vect/pr104116-ceil-mod.c: New test. - * gcc.dg/vect/pr104116-ceil-udiv-2.c: New test. - * gcc.dg/vect/pr104116-ceil-udiv-pow2.c: New test. - * gcc.dg/vect/pr104116-ceil-udiv.c: New test. - * gcc.dg/vect/pr104116-ceil-umod-2.c: New test. - * gcc.dg/vect/pr104116-ceil-umod-pow2.c: New test. - * gcc.dg/vect/pr104116-ceil-umod.c: New test. - * gcc.dg/vect/pr104116-floor-div-2.c: New test. - * gcc.dg/vect/pr104116-floor-div-pow2.c: New test. - * gcc.dg/vect/pr104116-floor-div.c: New test. - * gcc.dg/vect/pr104116-floor-mod-2.c: New test. - * gcc.dg/vect/pr104116-floor-mod-pow2.c: New test. - * gcc.dg/vect/pr104116-floor-mod.c: New test. - * gcc.dg/vect/pr104116-round-div-2.c: New test. - * gcc.dg/vect/pr104116-round-div-pow2.c: New test. - * gcc.dg/vect/pr104116-round-div.c: New test. - * gcc.dg/vect/pr104116-round-mod-2.c: New test. - * gcc.dg/vect/pr104116-round-mod-pow2.c: New test. - * gcc.dg/vect/pr104116-round-mod.c: New test. - * gcc.dg/vect/pr104116-round-udiv-2.c: New test. - * gcc.dg/vect/pr104116-round-udiv-pow2.c: New test. - * gcc.dg/vect/pr104116-round-udiv.c: New test. - * gcc.dg/vect/pr104116-round-umod-2.c: New test. - * gcc.dg/vect/pr104116-round-umod-pow2.c: New test. - * gcc.dg/vect/pr104116-round-umod.c: New test. - * gcc.dg/vect/pr104116.h: New test. - -2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122296 - * gcc.dg/torture/int-bwise-opt-1.c: New test. - -2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122296 - * gcc.dg/tree-ssa/int-bwise-opt-vect01.c: New test. - -2025-10-16 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc - (report_diag_with_graphs): Port from set_attr to set_property. - -2025-10-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/121468 - PR tree-optimization/121206 - PR tree-optimization/122200 - * gcc.dg/pr121468.c: New. - * gcc.dg/pr122200.c: New. - -2025-10-15 Richard Earnshaw <rearnsha@arm.com> - - PR target/118460 - * gcc.target/arm/armv8_2-fp16-move-1.c: Adjust expected output. - * gcc.target/arm/armv8_2-fp16-move-2.c: Likewise. - -2025-10-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122037 - * gcc.dg/tree-ssa/vla-1.c: New test. - -2025-10-15 Alice Carlotti <alice.carlotti@arm.com> - - * gcc.target/aarch64/acle/rwsr-armv8p9.c: Fix incorrect encoding. - -2025-10-15 Sebastian Pop <spop@nvidia.com> - - * gcc.dg/autopar/runtime-auto.c: New test. - -2025-10-15 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122189 - * gcc.target/arm/mve/intrinsics/vadcq-check-carry.c: New test. - * gcc.target/arm/mve/intrinsics/vadcq_m_s32.c: Adjust instructions - order. - * gcc.target/arm/mve/intrinsics/vadcq_m_u32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vsbcq_m_s32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vsbcq_m_u32.c: Likewise. - -2025-10-15 Roger Sayle <roger@nextmovesoftware.com> - - PR rtl-optimization/122266 - * gcc.target/i386/pr122266.c: New test case. - -2025-10-14 Patrick Palka <ppalka@redhat.com> - - PR c++/122192 - * g++.dg/template/dependent-base6.C: Verify mem-initializer-id - qualified name lookup is type-only too. - -2025-10-14 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/121949 - * gcc.dg/vect/pr121949_1.c: New test. - * gcc.dg/vect/pr121949_2.c: New test. - * gcc.dg/vect/pr121949_3.c: New test. - -2025-10-14 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/pr120687-1.c: Adjust. - * gcc.dg/vect/pr120687-2.c: Likewise. - * gcc.dg/vect/pr120687-3.c: Likewise. - -2025-10-14 Haochen Jiang <haochen.jiang@intel.com> - - * g++.dg/other/i386-2.C: Remove AMX-TRANSPOSE test. - * g++.dg/other/i386-3.C: Ditto. - * gcc.target/i386/amx-check.h: Ditto. - * gcc.target/i386/amxmovrs-asmatt-1.c: Ditto. - * gcc.target/i386/amxmovrs-asmintel-1.c: Ditto. - * gcc.target/i386/funcspec-56.inc: Ditto. - * gcc.target/i386/sse-12.c: Ditto. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * lib/target-supports.exp: Ditto. - * gcc.target/i386/amxmovrs-2rpntlvwrs-2.c: Removed. - * gcc.target/i386/amxtranspose-2rpntlvw-2.c: Removed. - * gcc.target/i386/amxtranspose-asmatt-1.c: Removed. - * gcc.target/i386/amxtranspose-asmintel-1.c: Removed. - * gcc.target/i386/amxtranspose-conjtcmmimfp16ps-2.c: Removed. - * gcc.target/i386/amxtranspose-conjtfp16-2.c: Removed. - * gcc.target/i386/amxtranspose-tcmmimfp16ps-2.c: Removed. - * gcc.target/i386/amxtranspose-tcmmrlfp16ps-2.c: Removed. - * gcc.target/i386/amxtranspose-tdpbf16ps-2.c: Removed. - * gcc.target/i386/amxtranspose-tdpfp16ps-2.c: Removed. - * gcc.target/i386/amxtranspose-tmmultf32ps-2.c: Removed. - * gcc.target/i386/amxtranspose-transposed-2.c: Removed. - -2025-10-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122178 - * g++.dg/tree-ssa/cselim-1.C: New test. - -2025-10-14 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-10-13 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.dg/cpp/cpp.exp: Process .i files. - * gcc.dg/cpp/pr36674.i: Pass -Wno-implicit-int. - * gcc.dg/cpp/escape-3.i: New test. - -2025-10-13 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR target/120811 - * gcc.target/riscv/add-synthesis-1.c: Adjust const to fit in range. - * gcc.target/riscv/pr120811.c: Add new test case. - * gcc.target/riscv/sum-of-two-s12-const-1.c: Adjust const to fit in range. - -2025-10-13 Jeff Law <jlaw@ventanamicro.com> - - PR target/120674 - * gcc.target/riscv/pr120674.c: New test. - -2025-10-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/122228 - * g++.dg/cpp1y/func_constexpr3.C: New test. - -2025-10-13 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/122241 - * gm2/iso/fail/badconst.mod: New test. - * gm2/iso/fail/badtype.mod: New test. - * gm2/iso/fail/badvar.mod: New test. - -2025-10-13 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/121772 - * gcc.target/aarch64/torture/pr121772.c: Add -fchecking to - dg-options. - -2025-10-13 Robin Dapp <rdapp@ventanamicro.com> - - PR target/118019 - * gcc.target/riscv/rvv/autovec/pr118019-2.c: New test. - -2025-10-13 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121191 - * gfortran.dg/pdt_59.f03: New test. - -2025-10-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122163 - * g++.dg/cpp0x/lambda/lambda-ref3.C: New test. - -2025-10-12 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/95543 - PR fortran/103748 - * gfortran.dg/pdt_17.f03: Change error message. - * gfortran.dg/pdt_57.f03: New test. - * gfortran.dg/pdt_58.f03: New test. - -2025-10-11 Gaius Mulley <gaiusmod2@gmail.com> - - * gm2/iso/fail/badfield.mod: New test. - * gm2/iso/fail/badfield2.mod: New test. - * gm2/iso/fail/badprocedure.mod: New test. - * gm2/iso/fail/badprocedure2.mod: New test. - * gm2/iso/fail/badset4.mod: New test. - -2025-10-11 Bohan Lei <garthlei@linux.alibaba.com> - - PR target/119587 - * gcc.target/riscv/xtheadmemidx-bug.c: New test. - -2025-10-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/50377 - * gfortran.dg/pr41011.f: Fix invalid testcase. - * gfortran.dg/actual_procedure_2.f: New test. - -2025-10-10 David Faust <david.faust@oracle.com> - - PR target/122141 - * gcc.target/bpf/pr122141-1.c: New. - * gcc.target/bpf/pr122141-2.c: New. - -2025-10-10 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group1/check_88.cob: Likewise. - -2025-10-10 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gfortran.dg/intent_optimize_10.f90: Update so -g won't fail. - * gcc.dg/tree-ssa/copy-prop-aggregate-sra-1.c: New testcase. - -2025-10-10 Patrick Palka <ppalka@redhat.com> - - PR c++/122192 - * g++.dg/template/dependent-base6.C: New test. - -2025-10-10 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwsubu.wx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/wx_vwsubu-run-1-u64.c: New test. - -2025-10-10 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/fminmax-1.c: Disable for signaling NaNs. - * gcc.target/s390/fminmax-2.c: Ditto. - * gcc.target/s390/vector/reduc-minmax-1.c: Ditto. - -2025-10-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR testsuite/116421 - * c-c++-common/vector-subscript-4.c: Check for vectors prior - ISEL. - -2025-10-10 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.dg/vect/vect-reduc-chain-1.c: Adjust expected - dump. - -2025-10-10 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/122223 - * gcc.target/arm/mve/intrinsics/pr122223.c: New test. - -2025-10-10 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122111 - * gcc.target/arm/pr122111.c: New test. - -2025-10-10 YunQiang Su <yunqiang@isrc.iscas.ac.cn> - - Revert: - 2025-10-10 Jie Mei <jie.mei@oss.cipunited.com> - - * gcc.target/mips/mips16e2-cache.c: Use isa_rev>=2 instead of - -mips32r2 and remove -mips16 option. - * gcc.target/mips/mips16e2-cmov.c: Add isa_rev>=2 and remove - -mips16 option. - * gcc.target/mips/mips16e2-gp.c: Same as above. - * gcc.target/mips/mips16e2.c: Same as above. - -2025-10-10 YunQiang Su <yunqiang@isrc.iscas.ac.cn> - - Revert: - 2025-09-27 YunQiang Su <syq@gcc.gnu.org> - - * gcc.target/mips/mips16e2.c: Use isa_rev=2 instead of >=2. - * gcc.target/mips/mips16e2-cache.c: Ditto. - * gcc.target/mips/mips16e2-cmov.c: Ditto. - * gcc.target/mips/mips16e2-gp.c: Ditto. - -2025-10-09 David Faust <david.faust@oracle.com> - - * gcc.target/bpf/core-btf-tag-1.c: New test. - * gcc.target/bpf/core-btf-tag-2.c: New test. - -2025-10-09 David Faust <david.faust@oracle.com> - - * gcc.dg/debug/btf/btf-decl-tag-1.c: New test. - * gcc.dg/debug/btf/btf-decl-tag-2.c: New test. - * gcc.dg/debug/btf/btf-decl-tag-3.c: New test. - * gcc.dg/debug/btf/btf-decl-tag-4.c: New test. - * gcc.dg/debug/btf/btf-type-tag-1.c: New test. - * gcc.dg/debug/btf/btf-type-tag-2.c: New test. - * gcc.dg/debug/btf/btf-type-tag-3.c: New test. - * gcc.dg/debug/btf/btf-type-tag-4.c: New test. - * gcc.dg/debug/btf/btf-type-tag-c2x-1.c: New test. - -2025-10-09 David Faust <david.faust@oracle.com> - - * gcc.dg/debug/ctf/ctf-decl-tag-1.c: New test. - * gcc.dg/debug/ctf/ctf-type-tag-1.c: New test. - -2025-10-09 David Faust <david.faust@oracle.com> - - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-1.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-2.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-3.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-1.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-2.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-3.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-4.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-5.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-6.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-7.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-8.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-9.c: New test. - * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-10.c: New test. - -2025-10-09 David Faust <david.faust@oracle.com> - - * gcc.dg/attr-btf-decl-tag-1.c: New test. - * gcc.dg/attr-btf-decl-tag-2.c: New test. - * gcc.dg/attr-btf-type-tag-1.c: New test. - * gcc.dg/attr-btf-type-tag-2.c: New test. - * gcc.dg/attr-btf-type-tag-3.c: New test. - -2025-10-09 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/cpp/has-builtin-4.c: Expect - __has_builtin (__builtin_c23_va_start) == 1 also for C++26. - * c-c++-common/Wvarargs.c (foo3): Don't expect undefined behavior - warning for C++26. - * g++.dg/cpp26/stdarg1.C: New test. - * g++.dg/cpp26/stdarg2.C: New test. - * g++.dg/cpp26/stdarg3.C: New test. - * g++.dg/cpp26/stdarg4.C: New test. - * g++.dg/cpp26/stdarg5.C: New test. - * g++.dg/cpp26/stdarg6.C: New test. - * g++.dg/cpp26/stdarg7.C: New test. - * g++.dg/cpp26/stdarg8.C: New test. - * g++.dg/cpp26/stdarg9.C: New test. - * g++.dg/opt/pr60849.C (foo): Add explicit cast. - -2025-10-09 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/116477 - * g++.dg/cpp2a/concepts-pr116477.C: New test. - -2025-10-09 Georg-Johann Lay <avr@gjlay.de> - - PR target/122222 - * gcc.target/avr/pr122222-sitod.c: New test. - -2025-10-09 Georg-Johann Lay <avr@gjlay.de> - - PR target/122220 - * gcc.target/avr/pr122220.c: New test. - -2025-10-09 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Replace INCLUDE_ - defines with include of include "analyzer/common.h". Update - for changes to binding_pair. - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - -2025-10-09 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/tree-ssa/cselim-2.c: Pass -ftree-cselim option. - -2025-10-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122206 - * gfortran.dg/interface_abstract_6.f90: New test. - -2025-10-09 Jakub Jelinek <jakub@redhat.com> - - PR c/122188 - * gcc.dg/torture/pr122188.c: New test. - -2025-10-09 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_group_plugin.cc: Define INCLUDE_VECTOR. - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. - * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. - -2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/constsynth_2insns.c, - gcc.target/xtensa/constsynth_3insns.c, - gcc.target/xtensa/constsynth_double.c: Remove due to outdated. - * gcc.target/xtensa/constsynthV2_O2_costs0.c, - gcc.target/xtensa/constsynthV2_O2_costs5.c, - gcc.target/xtensa/constsynthV2_Os.c: New. - -2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/BGEUI-BLTUI-32k-64k.c: - Disable optimizations and modify to also verify RTL dump in the - "expand" pass. - -2025-10-09 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122212 - * gcc.dg/torture/pr122212.c: New testcase. - -2025-10-09 Georg-Johann Lay <avr@gjlay.de> - - PR target/122210 - * gcc.target/avr/dtofx.c: New test. - -2025-10-09 Georg-Johann Lay <avr@gjlay.de> - - PR target/122210 - * gcc.target/avr/fxtod.c: New test. - -2025-10-09 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/vls-type-rvv-max-lmul.c: New test. - * gcc.target/riscv/rvv/vls-type-rvv-max-lmul-autovec.c: New - test. - -2025-10-08 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c11-generic-4.c, gcc.dg/c23-generic-5.c, - gcc.dg/c2y-generic-5.c: New tests. - -2025-10-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/49111 - * gfortran.dg/binding_label_tests_9.f03: Adjust test. - * gfortran.dg/module_private_2.f90: Likewise. - * gfortran.dg/public_private_module_2.f90: Likewise. - * gfortran.dg/binding_label_tests_35.f90: New test. - -2025-10-08 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/c11-generic-2.c: Adapt error message. - * gcc.dg/c2y-generic-3.c: Adapt test. - * gcc.dg/c2y-generic-4.c: New test. - -2025-10-08 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/cpp/named-universal-char-escape-1.c: Add test for - \N{CJK UNIFIED IDEOGRAPH-3340E}. - -2025-10-08 Jason Merrill <jason@redhat.com> - - * g++.dg/analyzer/new-2.C: Adjust diags. - * g++.dg/analyzer/noexcept-new.C: Adjust diags. - * g++.dg/warn/Warray-bounds-23.C: Add warnings. - * g++.dg/warn/Warray-bounds-24.C: Add warnings. - * g++.dg/cpp26/constexpr-new4a.C: New test. - -2025-10-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/110223 - PR tree-optimization/122128 - * gcc.dg/vect/vect-bool-2.c: New testcase. - * gcc.dg/vect/vect-bool-cmp-3.c: Likewise. - * gcc.dg/vect/vect-bool-cmp-4.c: Likewise. - -2025-10-08 Richard Biener <rguenther@suse.de> - - PR testsuite/120100 - * g++.dg/vect/pr64410.cc: Adjust. - -2025-10-08 Richard Biener <rguenther@suse.de> - - PR target/120091 - * gcc.target/i386/pr119919.c: Only check for vectorization - when !ia32. - -2025-10-08 Alfie Richards <alfie.richards@arm.com> - - PR target/122180 - * gcc.target/i386/pr122180.c: New test. - -2025-10-08 Jakub Jelinek <jakub@redhat.com> - - PR c/122188 - * c-c++-common/pr122188.c: New test. - -2025-10-08 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121206 - * gcc.dg/pr121987.c (main): Use unsigned long long type for e instead - of unsigned long and use ULL suffix on the initializer. - -2025-10-08 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/93175 - PR fortran/102240 - PR fortran/102686 - * gfortran.dg/pdt_55.f03: New test. - -2025-10-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/105490 - * gcc.dg/vect/vect-cond-14.c: New testcase. - -2025-10-08 Antoni Boucher <bouanto@zoho.com> - - PR jit/112466 - * jit.dg/all-non-failing-tests.h: Mention - test-target-info.c. - * jit.dg/test-target-info.c: New test. - * jit.dg/test-error-target-info.c: New test. - -2025-10-07 Joseph Myers <josmyers@redhat.com> - - PR c/26581 - * gcc.dg/c23-incomplete-2.c, gcc.dg/c23-incomplete-3.c, - gcc.dg/c23-incomplete-4.c, gcc.dg/c2y-incomplete-4.c, - gcc.dg/c2y-incomplete-5.c: New tests. - * gcc.dg/c23-thread-local-2.c, gcc.dg/c2y-incomplete-1.c: Update - expected errors. - -2025-10-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/120691 - * gcc.target/i386/pr120691.c: New test. - -2025-10-07 Jason Merrill <jason@redhat.com> - - * g++.dg/warn/Warray-bounds-20.C: Remove xfails, add diags. - -2025-10-07 Georg-Johann Lay <avr@gjlay.de> - - PR target/122187 - * gcc.target/avr/torture/pr122187.c: New test. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * gfortran.dg/dynamic_dispatch_9.f03: Fix spelling in comment. - * gfortran.dg/use_only_3.inc: Likewise - -2025-10-07 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/121845 - * gcc.target/riscv/rvv/autovec/pr121845.c: New test. - -2025-10-07 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> - - PR target/122124 - * gcc.target/riscv/rvv/autovec/pr122124.c: New test. - -2025-10-07 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/102901 - * gfortran.dg/pdt_56.f03: Copy of pdt_13.f03 compiled with - -fcheck=all. - -2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121921 - * gcc.dg/pr121921-1.c: New test. - -2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122083 - * gcc.dg/tree-ssa/ssa-pre-19.c: Disable phiopt and cselim. - * g++.dg/opt/pr122083-1.C: New test. - * gcc.dg/tree-ssa/cselim-1.c: New test. - * gcc.dg/tree-ssa/cselim-2.c: New test. - -2025-10-07 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/122122 - * gcc.target/i386/memcpy-pr120683-2.c: Swap %edx/%rdx with - %eax/%rax after - * gcc.target/i386/memcpy-pr120683-3.c: Likewise. - * gcc.target/i386/memcpy-pr120683-4.c: Likewise. - * gcc.target/i386/memcpy-pr120683-5.c: Likewise. - * gcc.target/i386/memcpy-pr120683-6.c: Likewise. - * gcc.target/i386/memcpy-pr120683-7.c: Likewise. - * gcc.target/i386/pr111657-1.c: Likewise. - -2025-10-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122155 - * gcc.dg/tree-ssa/cselim-3.c: New test. - -2025-10-06 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/sincos-1.c: New test. - -2025-10-06 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/121206 - * gcc.dg/pr121987.c: New. - -2025-10-06 Georg-Johann Lay <avr@gjlay.de> - - PR target/122177 - * gcc.target/avr/fminfmax-1.c: New test. - -2025-10-06 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/cmpdi-1.c: New test. - -2025-10-06 Jennifer Schmitz <jschmitz@nvidia.com> - - PR target/121599 - * gcc.target/aarch64/sve2/pr121599.c: New test. - -2025-10-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122131 - * gcc.target/powerpc/altivec-39.c: New testcase. - -2025-10-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122158 - * gcc.dg/vect/pr122158.c: New testcase. - -2025-10-06 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/122133 - * c-c++-common/toplevel-asm-9.c: New test. - -2025-10-05 H.J. Lu <hjl.tools@gmail.com> - - PR target/122150 - * gcc.target/i386/pr122150.c: New test. - -2025-10-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * c-c++-common/torture/asm-inline.c: Disable at -Og. - * gcc.dg/torture/restrict-8.c: Likewise. - -2025-10-05 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwaddu.wx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test - helper macros and data. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_wx_run.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/wx_vwaddu-run-1-u64.c: New test. - -2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122053 - * g++.dg/modules/pr122053_a.C: New test. - * g++.dg/modules/pr122053_b.C: New test. - -2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/namespace-1_c.C: Adjust to expect errors. - * g++.dg/modules/namespace-2_b.C: Likewise. - * g++.dg/modules/namespace-3_a.C: Removed. - * g++.dg/modules/namespace-3_b.C: Removed. - -2025-10-05 Franck Behaghel <franckbehaghel_gcc@protonmail.com> - - * gnat.dg/allocator3.adb: New test. - -2025-10-05 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/113536 - * gnat.dg/reduce2.adb: New test. - -2025-10-04 Harald Anlauf <anlauf@gmx.de> - - PR fortran/107968 - * gfortran.dg/implied_do_io_9.f90: New test. - -2025-10-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122153 - * gcc.dg/tree-ssa/pr122153-1.c: New test. - -2025-10-04 Matteo Nicoli <matteo.nicoli001@gmail.com> - - PR tree-optimization/117760 - * gcc.dg/int-bwise-opt-1.c: New test. - * gcc.dg/int-bwise-opt-2.c: New test. - -2025-10-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/122104 - * gcc.target/i386/pr122104.c: New test. - -2025-10-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> - - PR target/122114 - * gcc.target/riscv/pr122114.c: New test. - -2025-10-04 Jeff Law <jlaw@ventanamicro.com> - - PR target/122147 - * gcc.target/riscv/pr122147.c: New test. - -2025-10-04 Zhongyao Chen <chenzhongyao.hit@gmail.com> - - PR target/118945 - * gcc.target/riscv/rvv/autovec/pr118945-1.c: New file. - * gcc.target/riscv/rvv/autovec/pr118945-2.c: New file. - -2025-10-04 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/use_type1.adb: New test. - * gnat.dg/use_type2.adb: Likewise. - -2025-10-04 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp2a/constexpr-new28.C: New test. - * g++.dg/cpp2a/constexpr-new29.C: New test. - -2025-10-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/114457 - * g++.dg/cpp1y/vla-initlist1.C: Remove dg-skip-if for powerpc. - Initialize i to 43 for ctor from initializer_list and expect value - 43 instead of 42. - * g++.dg/cpp26/attr-indeterminate1.C: New test. - * g++.dg/cpp26/attr-indeterminate2.C: New test. - * g++.dg/cpp26/attr-indeterminate3.C: New test. - * g++.dg/cpp26/attr-indeterminate4.C: New test. - * g++.dg/cpp26/erroneous1.C: New test. - * g++.dg/cpp26/erroneous2.C: New test. - * g++.dg/cpp26/erroneous3.C: New test. - * g++.dg/cpp26/erroneous4.C: New test. - * g++.dg/opt/store-merging-1.C: Add - -ftrivial-auto-var-init=uninitialized to dg-options. - * g++.dg/uninit-pred-loop-1_b.C: Expect a warning for C++26. - * g++.dg/warn/Wuninitialized-13.C: Expect warning on a different - line. - * c-c++-common/ubsan/vla-1.c: Add - -ftrivial-auto-var-init=uninitialized to dg-options. - * c-c++-common/uninit-17.c: For c++26 expect warning on a different - line. - * g++.dg/warn/Warray-bounds-20.C: Expect warning on a different line. - * c-c++-common/analyzer/invalid-shift-1.c: Xfail for c++26 until - PR122044 is fixed. - * g++.dg/analyzer/exception-value-2.C: Skip for c++26 until PR122044 - is fixed. - * c-c++-common/goacc-gomp/nesting-1.c: Skip for c++26 until PR121975 - is fixed. - * c-c++-common/goacc/kernels-decompose-2.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr100400-1-1.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr100400-1-3.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104061-1-1.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104061-1-3.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104061-1-4.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104132-1.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104133-1.c: Likewise. - * c-c++-common/goacc/kernels-decompose-pr104774-1.c: Likewise. - * c-c++-common/goacc/mdc-1.c: Likewise. - -2025-10-04 Jason Merrill <jason@redhat.com> - - PR c++/122127 - PR c++/112632 - * g++.dg/cpp0x/lambda/lambda-template18.C: New test. - -2025-10-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117658 - * g++.dg/modules/adl-6_c.C: Adjust diagnostics. - * g++.dg/modules/internal-14_c.C: Likewise. - * g++.dg/modules/internal-15_a.C: New test. - * g++.dg/modules/internal-15_b.C: New test. - -2025-10-03 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> - - PR c++/122112 - * g++.dg/parse/auto-struct-param.C: New test. - -2025-10-03 David Malcolm <dmalcolm@redhat.com> - - Revert: - 2025-10-03 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc - (report_diag_with_graphs): Port from set_attr to set_property. - -2025-10-03 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/121937 - * gcc.target/riscv/pr121937.c: New test. - -2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121762 - * gcc.dg/tree-ssa/builtin-fprintf-1.c: Update to scan optimized. - * gcc.dg/tree-ssa/builtin-fprintf-chk-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-printf-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-printf-chk-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-vfprintf-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-vfprintf-chk-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-vprintf-1.c: Likewise. - * gcc.dg/tree-ssa/builtin-vprintf-chk-1.c: Likewise. - * gcc.dg/tree-ssa/ssa-ccp-10.c: Likewise. - * gcc.dg/builtin-unreachable-5.c: Likewise. - * gcc.dg/builtin-unreachable-6.c: Likewise. - * gcc.dg/builtin-unreachable-6a.c: Likewise. - * gcc.dg/builtin-unreachable-7.c: Likewise. - * gcc.dg/pr78408-2.c: Change fab1 to forwprop1 as that - optimization was moved there a while back. - * gcc.dg/tree-ssa/pr79691.c: Udpate scanning for 9 - constant to return. - -2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/122033 - * gcc.dg/tree-ssa/pr122033-1.c: New test. - * gcc.dg/tree-ssa/pr122033-2.c: New test. - -2025-10-03 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/aarch64/asm-flag-1.c: Scan for lt. - * gcc.target/aarch64/vector-compare-5.c: Use scan-tree-dump-times. - * gcc.target/aarch64/simd/fold_to_highpart_5.c: Scan for sabal2 - and uabal2. - * gcc.target/aarch64/sve/mixed_size_6.c: Scan for absence of - index with 2. - * gcc.target/aarch64/declare-simd-2.c: Scan for _ZGVnM4ul2v_f05 - and_ZGVnN8ul2v_f05 - * gcc.target/aarch64/sve/arith_1.c: Remove duplicate - scan-assembler patterns. - * gcc.target/aarch64/sve/cond_fmaxnm_1.c: Likewise. - * gcc.target/aarch64/sve/cond_fmaxnm_5.c: Likewise. - * gcc.target/aarch64/sve/cond_fminnm_1.c: Likewise. - * gcc.target/aarch64/sve/cond_fminnm_5.c: Likewise - * gcc.target/aarch64/sve/pcs/annotate_1.c: Likewise. - * gcc.target/aarch64/sve/uzp1_1.c: Likewise. - * gcc.target/aarch64/sve/uzp2_1.c: Likewise. - * gcc.target/aarch64/scalar_intrinsics.c: Scan for ursra. - * gcc.target/aarch64/singleton_intrinsics_1.c: Likewise. - * gcc.target/aarch64/sve/cond_fmaxnm_3.c: Fix register modifiers in - scan patterns. - * gcc.target/aarch64/sve/cond_fmaxnm_7.c: Likewise. - * gcc.target/aarch64/sve/cond_fminnm_3.c: Likewise. - * gcc.target/aarch64/sve/cond_fminnm_7.c: Likewise. - * gcc.target/aarch64/sve/cond_fmul_3.c: Likewise. - * gcc.target/aarch64/sve/cond_fsubr_3.c: Likewise. - * gcc.target/aarch64/ldp_stp_18.c: Fix typos in scan patterns. - * gcc.target/aarch64/sve/pcs/return_6.c: Likewise. - * gcc.target/aarch64/ror_2.c: Adjust constants to ensure - scan-assembler patterns are unique. - * gcc.target/aarch64/sve/struct_move_3.c: Likewise. - * gcc.target/aarch64/sve/struct_move_6.c: Likewise. - * gcc.target/aarch64/builtin_pld_pli.c: Use check-function-bodies - * gcc.target/aarch64/csinc-1.c: Likewise. - * gcc.target/aarch64/csneg-1.c: Likewise. - * gcc.target/aarch64/flt_mov_immediate_1.c: Likewise. - * gcc.target/aarch64/scalar_shift_1.c: Likewise. - -2025-10-03 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122089 - * gfortran.dg/pdt_52.f03: New test. - * gfortran.dg/pdt_53.f03: New test. - * gfortran.dg/pdt_54.f03: New test. - -2025-10-02 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc - (report_diag_with_graphs): Port from set_attr to set_property. - -2025-10-02 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c2y-init-2.c, gcc.dg/c2y-init-3.c: New tests. - -2025-10-02 Aurelien Jarno <aurelien@aurel32.net> - - PR target/121652 - * gcc.target/riscv/rvv/autovec/vls/math-nearbyint-1.c: Adjust - scan pattern for fewer instances of frflags/fsrflags. - -2025-10-02 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/start_unit_plugin.cc: Fix typo in comment. - -2025-10-02 Jeff Law <jlaw@ventanamicro.com> - - PR target/122051 - * gcc.target/riscv/pr122051.c: New test. - -2025-10-02 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/mv-error11.c: New test. - * gcc.target/aarch64/mv-error12.c: New test. - -2025-10-02 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/mv-and-mvc-error1.c: New test. - * gcc.target/aarch64/mv-and-mvc-error2.c: New test. - * gcc.target/aarch64/mv-and-mvc-error3.c: New test. - * gcc.target/aarch64/mv-error1.c: New test. - * gcc.target/aarch64/mv-error2.c: New test. - * gcc.target/aarch64/mv-error3.c: New test. - * gcc.target/aarch64/mv-error4.c: New test. - * gcc.target/aarch64/mv-error5.c: New test. - * gcc.target/aarch64/mv-error6.c: New test. - * gcc.target/aarch64/mv-error7.c: New test. - * gcc.target/aarch64/mv-error8.c: New test. - * gcc.target/aarch64/mv-error9.c: New test. - * gcc.target/aarch64/mv-error10.c: New test. - * gcc.target/aarch64/mvc-error1.c: New test. - * gcc.target/aarch64/mvc-error2.c: New test. - * gcc.target/aarch64/mvc-warning1.c: New test. - -2025-10-02 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/mv-1.c: New test. - * gcc.target/aarch64/mv-and-mvc1.c: New test. - * gcc.target/aarch64/mv-and-mvc2.c: New test. - * gcc.target/aarch64/mv-and-mvc3.c: New test. - * gcc.target/aarch64/mv-and-mvc4.c: New test. - * gcc.target/aarch64/mv-symbols1.c: New test. - * gcc.target/aarch64/mv-symbols10.c: New test. - * gcc.target/aarch64/mv-symbols11.c: New test. - * gcc.target/aarch64/mv-symbols12.c: New test. - * gcc.target/aarch64/mv-symbols13.c: New test. - * gcc.target/aarch64/mv-symbols14.c: New test. - * gcc.target/aarch64/mv-symbols2.c: New test. - * gcc.target/aarch64/mv-symbols3.c: New test. - * gcc.target/aarch64/mv-symbols4.c: New test. - * gcc.target/aarch64/mv-symbols5.c: New test. - * gcc.target/aarch64/mv-symbols6.c: New test. - * gcc.target/aarch64/mv-symbols7.c: New test. - * gcc.target/aarch64/mv-symbols8.c: New test. - * gcc.target/aarch64/mv-symbols9.c: New test. - * gcc.target/aarch64/mvc-symbols1.c: New test. - * gcc.target/aarch64/mvc-symbols2.c: New test. - * gcc.target/aarch64/mvc-symbols3.c: New test. - * gcc.target/aarch64/mvc-symbols4.c: New test. - -2025-10-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122079 - * gcc.dg/torture/pr122079-2.c: New testcase. - * gcc.dg/torture/pr122079-3.c: Likewise. - -2025-10-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122079 - * gcc.dg/torture/pr122079-1.c: New testcase. - -2025-10-01 Jeff Law <jlaw@ventanamicro.com> - - PR target/122106 - * gcc.target/riscv/pr122106.c: New test. - -2025-10-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/122080 - * gfortran.dg/ubsan/missing_optional_dummy_9.f90: New test. - -2025-10-01 Andreas Schwab <schwab@linux-m68k.org> - - PR target/122066 - * gcc.c-torture/compile/pr122066.c: New test. - -2025-10-01 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120560 - * gcc.dg/pr120560.c: New. - -2025-10-01 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/122089 - * gfortran.dg/pdt_51.f03: New test. - -2025-09-30 David Malcolm <dmalcolm@redhat.com> - - * lib/sarif.py: Remove import of ET. - -2025-09-30 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/fmv-selection1.C: New test. - * g++.target/aarch64/fmv-selection2.C: New test. - * g++.target/aarch64/fmv-selection3.C: New test. - * g++.target/aarch64/fmv-selection4.C: New test. - * g++.target/aarch64/fmv-selection5.C: New test. - * g++.target/aarch64/fmv-selection6.C: New test. - * g++.target/aarch64/fmv-selection7.C: New test. - -2025-09-30 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/vect/tsvc/vect-tsvc-s1244.c (s1244): Fix comment typo, - ture -> true. - * gcc.dg/vect/tsvc/vect-tsvc-s2244.c (s2244): Likewise. - -2025-09-30 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/reduce1.adb: New test. - -2025-09-30 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/105380 - PR fortran/102241 - * gfortran.dg/pdt_49.f03: New test. - * gfortran.dg/pdt_11.f03: Deallocate 'o_fdef'. - * gfortran.dg/pdt_15.f03: Reinstate final 'pop_8' and update - the tree dump counts. - * gfortran.dg/pdt_20.f03: Deallocate 'x'. - * gfortran.dg/pdt_23.f03: Deallocate 'x'. - * gfortran.dg/pdt_3.f03: Eliminate the temporary 'matrix' and - use w%d directly in the allocation. Change the TODO comment and - comment on memory leak in allocation. - * gfortran.dg/pdt_39.f03: Comments on memory leaks. - * gfortran.dg/pdt_40.f03: Deallocate 'foo' and bar%x. - * gfortran.dg/pdt_50.f03: New test. - -2025-09-29 YunQiang Su <yunqiang@isrc.iscas.ac.cn> - - * gcc.target/mips/pr99217-2.c: New test. - -2025-09-28 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pieces-memcmp-2.c: Remove mstore-max. - * gcc.target/i386/pieces-memcpy-19.c: Ditto. - * gcc.target/i386/pieces-memcpy-20.c: Ditto. - * gcc.target/i386/pr104610.c: Ditto. - * gcc.target/i386/pieces-memset-47.c: Scan warning for - mstore-max deprecation. - * gcc.target/i386/pieces-memset-48.c: Change mstore-max to mmove-max. - * gcc.target/i386/pr121410.c: Ditto. - * gcc.target/i386/pieces-memset-11.c: Change - avx256_store_by_pieces to avx256_move_by_pieces. - * gcc.target/i386/pieces-memset-14.c: Ditto. - * gcc.target/i386/pieces-memset-2.c: Ditto. - * gcc.target/i386/pieces-memset-20.c: Ditto. - * gcc.target/i386/pieces-memset-23.c: Ditto. - * gcc.target/i386/pieces-memset-29.c: Ditto. - * gcc.target/i386/pieces-memset-30.c: Ditto. - * gcc.target/i386/pieces-memset-33.c: Ditto. - * gcc.target/i386/pieces-memset-34.c: Ditto. - * gcc.target/i386/pieces-memset-37.c: Ditto. - * gcc.target/i386/pieces-memset-44.c: Ditto. - * gcc.target/i386/pieces-memset-5.c: Ditto. - * gcc.target/i386/pr100865-10a.c: Ditto. - * gcc.target/i386/pr100865-4a.c: Ditto. - * gcc.target/i386/pr90773-20.c: Ditto. - * gcc.target/i386/pr90773-21.c: Ditto. - * gcc.target/i386/pr90773-22.c: Ditto. - * gcc.target/i386/pr90773-23.c: Ditto. - * g++.target/i386/pr80566-1.C: Ditto. - * gcc.target/i386/pieces-memset-45.c: Change - avx512_store_by_pieces to avx512_move_by_pieces. - -2025-09-27 YunQiang Su <syq@gcc.gnu.org> - - * gcc.target/mips/mips16e2.c: Use isa_rev=2 instead of >=2. - * gcc.target/mips/mips16e2-cache.c: Ditto. - * gcc.target/mips/mips16e2-cmov.c: Ditto. - * gcc.target/mips/mips16e2-gp.c: Ditto. - -2025-09-27 ChengLulu <chenglulu@loongson.cn> - - PR target/99217 - * gcc.target/mips/pr99217.c: New test. - -2025-09-27 Jason Merrill <jason@redhat.com> - - PR c++/112632 - * g++.dg/cpp2a/concepts-conv4.C: New test. - -2025-09-27 Jason Merrill <jason@redhat.com> - - PR c++/121854 - * g++.dg/cpp23/explicit-obj-lambda19.C: New test. - -2025-09-27 Jason Merrill <jason@redhat.com> - - PR c++/122048 - * g++.dg/cpp1y/lambda-generic-this6.C: New test. - -2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> - - * gcc.target/mips/mips16e2-cache.c: Use isa_rev>=2 instead of - -mips32r2 and remove -mips16 option. - * gcc.target/mips/mips16e2-cmov.c: Add isa_rev>=2 and remove - -mips16 option. - * gcc.target/mips/mips16e2-gp.c: Same as above. - * gcc.target/mips/mips16e2.c: Same as above. - -2025-09-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87908 - * gfortran.dg/pr87908.f90: Delete. - -2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> - - * gcc.target/mips/mips-msubf.c: New tests for MIPSr6. - -2025-09-26 Alejandro Colomar <alx@kernel.org> - - * gcc.dg/Wmultiple-parameter-fwd-decl-lists.c: New test. - -2025-09-26 Harald Anlauf <anlauf@gmx.de> - - * gfortran.dg/pdt_48.f03: - -2025-09-26 Joseph Myers <josmyers@redhat.com> - - PR c/88642 - * gcc.dg/c2y-init-1.c: New test. - -2025-09-26 Lulu Cheng <chenglulu@loongson.cn> - - PR target/121875 - * gcc.target/loongarch/can_inline_1.c: New test. - * gcc.target/loongarch/can_inline_2.c: New test. - * gcc.target/loongarch/can_inline_3.c: New test. - * gcc.target/loongarch/can_inline_4.c: New test. - * gcc.target/loongarch/can_inline_5.c: New test. - * gcc.target/loongarch/can_inline_6.c: New test. - * gcc.target/loongarch/pr121875.c: New test. - -2025-09-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121939 - * gfortran.dg/deferred_character_39.f90: Disable temporary - workaround for character(kind=4) deferred-length bug. - -2025-09-24 Dusan Stojkovic <Dusan.Stojkovic@rt-rk.com> - - PR target/121778 - * gcc.target/riscv/pr121778-1.c: New test. - * gcc.target/riscv/pr121778-2.c: New test. - -2025-09-24 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c23-complit-9.c: New test. - -2025-09-24 Mikael Morin <morin-mikael@orange.fr> - - PR fortran/122046 - * gfortran.dg/submodule_34.f90: New test. - -2025-09-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121762 - * c-c++-common/ubsan/align-5.c: Update as __builtin_assume_aligned - is no longer taked into account. - * c-c++-common/ubsan/align-5a.c: New test. - -2025-09-24 Xi Ruoyao <xry111@xry111.site> - - PR middle-end/66462 - * gcc.target/loongarch/fclass-compile.c: Update test. - * gcc.target/loongarch/fclass-run.c: Likewise. - -2025-09-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122019 - * g++.dg/modules/lang-4_a.C: New test. - * g++.dg/modules/lang-4_b.C: New test. - -2025-09-24 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87908 - * gfortran.dg/pr87908.f90: New test. - -2025-09-24 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u64.c: New test. - -2025-09-23 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/121986 - * gcc.dg/sarif-output/extra-semicolon.c: New test. - * gcc.dg/sarif-output/extra-semicolon.py: New test. - * gcc.dg/sarif-output/missing-semicolon.py: Verify the description - of the insertion fix-it hint. - * libgdiagnostics.dg/test-fix-it-hint-c.py: Verify the description - of the replacement fix-it hint. - -2025-09-23 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/acle/simd32.c (test_sadd16): Scan for sadd16. - * gcc.target/arm/armv8_2-fp16-neon-1.c (vcgtz, 128-bit): Scan for vcgt. - * gcc.target/arm/armv8_2-fp16-neon-2.c (vcgtz, 128-bit): Scan for vcgt. - (vmul, vmul N): Use check function bodies to avoid ambiguity. - * gcc.target/arm/armv8_2-fp16-scalar-1.c (vrndm): Scan for vrintm. - (vrndn): Scan for vrintn. - (vrndp): Scan for vrintp. - (vrndx): Scan for vrintx. - * gcc.target/arm/asm-flag-1.c: Scan for movlt. - * gcc.target/arm/csneg.c: Convert to check-function-bodies. - * gcc.target/arm/mve/dlstp-compile-asm-2.c (test10): Fix comment that caused test9 scan - to be run twice. - * gcc.target/arm/mve/intrinsics/vgetq_lane_f16.c: Convert to check-function-bodies. - * gcc.target/arm/mve/intrinsics/vgetq_lane_f32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_s8.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u16.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u32.c: Likewise. - * gcc.target/arm/mve/intrinsics/vgetq_lane_u8.c: Likewise. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/mv-1.C: Remove option. - * g++.target/aarch64/mv-and-mvc-error1.C: Ditto. - * g++.target/aarch64/mv-and-mvc-error2.C: Ditto. - * g++.target/aarch64/mv-and-mvc-error3.C: Ditto. - * g++.target/aarch64/mv-and-mvc1.C: Ditto. - * g++.target/aarch64/mv-and-mvc2.C: Ditto. - * g++.target/aarch64/mv-and-mvc3.C: Ditto. - * g++.target/aarch64/mv-and-mvc4.C: Ditto. - * g++.target/aarch64/mv-error1.C: Ditto. - * g++.target/aarch64/mv-error2.C: Ditto. - * g++.target/aarch64/mv-error3.C: Ditto. - * g++.target/aarch64/mv-error4.C: Ditto. - * g++.target/aarch64/mv-error5.C: Ditto. - * g++.target/aarch64/mv-error6.C: Ditto. - * g++.target/aarch64/mv-error7.C: Ditto. - * g++.target/aarch64/mv-error8.C: Ditto. - * g++.target/aarch64/mv-pragma.C: Ditto. - * g++.target/aarch64/mv-symbols1.C: Ditto. - * g++.target/aarch64/mv-symbols10.C: Ditto. - * g++.target/aarch64/mv-symbols11.C: Ditto. - * g++.target/aarch64/mv-symbols12.C: Ditto. - * g++.target/aarch64/mv-symbols13.C: Ditto. - * g++.target/aarch64/mv-symbols2.C: Ditto. - * g++.target/aarch64/mv-symbols3.C: Ditto. - * g++.target/aarch64/mv-symbols4.C: Ditto. - * g++.target/aarch64/mv-symbols5.C: Ditto. - * g++.target/aarch64/mv-symbols6.C: Ditto. - * g++.target/aarch64/mv-symbols7.C: Ditto. - * g++.target/aarch64/mv-symbols8.C: Ditto. - * g++.target/aarch64/mv-symbols9.C: Ditto. - * g++.target/aarch64/mvc-error1.C: Ditto. - * g++.target/aarch64/mvc-error2.C: Ditto. - * g++.target/aarch64/mvc-symbols1.C: Ditto. - * g++.target/aarch64/mvc-symbols2.C: Ditto. - * g++.target/aarch64/mvc-symbols3.C: Ditto. - * g++.target/aarch64/mvc-symbols4.C: Ditto. - * g++.target/aarch64/mv-warning1.C: Removed. - * g++.target/aarch64/mvc-warning1.C: Removed. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/mv-and-mvc-error1.C: New test. - * g++.target/aarch64/mv-and-mvc-error2.C: New test. - * g++.target/aarch64/mv-and-mvc-error3.C: New test. - * g++.target/aarch64/mv-error1.C: New test. - * g++.target/aarch64/mv-error2.C: New test. - * g++.target/aarch64/mv-error3.C: New test. - * g++.target/aarch64/mv-error4.C: New test. - * g++.target/aarch64/mv-error5.C: New test. - * g++.target/aarch64/mv-error6.C: New test. - * g++.target/aarch64/mv-error7.C: New test. - * g++.target/aarch64/mv-error8.C: New test. - * g++.target/aarch64/mvc-error1.C: New test. - * g++.target/aarch64/mvc-error2.C: New test. - * g++.target/aarch64/mvc-warning1.C: Modified test. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/mv-and-mvc1.C: New test. - * g++.target/aarch64/mv-and-mvc2.C: New test. - * g++.target/aarch64/mv-and-mvc3.C: New test. - * g++.target/aarch64/mv-and-mvc4.C: New test. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/mv-1.C: Change for target_version semantics. - * g++.target/aarch64/mv-symbols2.C: Ditto. - * g++.target/aarch64/mv-symbols3.C: Ditto. - * g++.target/aarch64/mv-symbols4.C: Ditto. - * g++.target/aarch64/mv-symbols5.C: Ditto. - * g++.target/aarch64/mvc-symbols3.C: Ditto. - * g++.target/riscv/mv-symbols2.C: Ditto. - * g++.target/riscv/mv-symbols3.C: Ditto. - * g++.target/riscv/mv-symbols4.C: Ditto. - * g++.target/riscv/mv-symbols5.C: Ditto. - * g++.target/riscv/mvc-symbols3.C: Ditto. - * g++.target/aarch64/mv-symbols10.C: New test. - * g++.target/aarch64/mv-symbols11.C: New test. - * g++.target/aarch64/mv-symbols12.C: New test. - * g++.target/aarch64/mv-symbols13.C: New test. - * g++.target/aarch64/mv-symbols6.C: New test. - * g++.target/aarch64/mv-symbols7.C: New test. - * g++.target/aarch64/mv-symbols8.C: New test. - * g++.target/aarch64/mv-symbols9.C: New test. - -2025-09-23 Alfie Richards <alfie.richards@arm.com> - - * g++.target/i386/mv-symbols1.C: Update x86 FMV mangling. - * g++.target/i386/mv-symbols3.C: Ditto. - * g++.target/i386/mv-symbols4.C: Ditto. - * g++.target/i386/mv-symbols5.C: Ditto. - -2025-09-22 Peter Bergner <bergner@tenstorrent.com> - - PR target/121982 - * gcc.target/riscv/pr121982.c: New test. - -2025-09-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/122015 - * g++.dg/modules/lambda-11.h: New test. - * g++.dg/modules/lambda-11_a.H: New test. - * g++.dg/modules/lambda-11_b.C: New test. - -2025-09-22 Pan Li <pan2.li@intel.com> - - PR middle-end/122021 - * gcc.target/i386/pr122021-0.c: New test. - -2025-09-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122016 - * gcc.dg/torture/pr122016.c: New testcase. - -2025-09-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/122023 - * gcc.dg/vect/pr122023.c: New testcase. - -2025-09-22 Dimitar Dimitrov <dimitar@dinux.eu> - - PR target/116205 - * gcc.target/pru/mabi-ti-1.c: Adjust diagnostic location. - * gcc.target/pru/mabi-ti-2.c: Ditto. - * gcc.target/pru/mabi-ti-3.c: Ditto. - * gcc.target/pru/mabi-ti-5.c: Ditto. - * gcc.target/pru/mabi-ti-6.c: Ditto. - * gcc.target/pru/mabi-ti-7.c: Adjust diagnostic locations and - add global variables for checking. - * gcc.target/pru/mabi-ti-11.c: New test. - * gcc.target/pru/mabi-ti-12.c: New test. - * gcc.target/pru/mabi-ti-8.c: New test. - * gcc.target/pru/mabi-ti-9.c: New test. - -2025-09-22 Steve Kargl <pault@gcc.gnu.org> - - PR fortran/103508 - * gfortran.dg/pr103508.f90: New test. - -2025-09-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/builtin-unreachable-7.c: New test. - -2025-09-21 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/121161 - * gfortran.dg/matmul_blas_3.f90: Add effective target lp64. - -2025-09-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/108581 - * gfortran.dg/deferred_character_39.f90: New test. - -2025-09-20 Patrick Palka <ppalka@redhat.com> - - PR c++/121981 - * g++.dg/cpp2a/concepts-placeholder15.C: New test. - -2025-09-20 Eczbek <eczbek.void@gmail.com> - - PR c++/119048 - * g++.dg/cpp23/static-operator-call8.C: New test. - -2025-09-20 Jan Hubicka <jh@suse.cz> - - * g++.dg/ipa/devirt-2.C: Update template. - * g++.dg/ipa/devirt-42.C: Update template. - * g++.dg/lto/devirt-2_0.C: Update template. - -2025-09-20 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c11-atomic-6.c, gcc.dg/c23-incomplete-1.c, - gcc.dg/c2y-incomplete-3.c: New tests. - -2025-09-19 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83746 - * gfortran.dg/pdt_48.f03: New test. - -2025-09-19 Gaius Mulley <gaiusmod2@gmail.com> - - * gm2/errors/fail/testbit2.mod: Rewrite. - * gm2/iso/run/pass/shift4.mod: Rewrite adding more internal - tests. - * gm2/iso/run/pass/testsystem.mod (FindFirstElement): Add - bounds check. - * gm2/sets/run/pass/multisetrotate4.mod: Add more runtime - error messages. - * gm2/sets/run/pass/simplepacked.mod (testpset): Correct - setname. - * lib/gm2.exp (gm2_init_minx): Add -fno-wideset. - * gm2/iso/run/pass/assigncons.mod: New test. - * gm2/iso/run/pass/constructor3.mod: New test. - * gm2/iso/run/pass/proc_test.mod: New test. - * gm2/iso/run/pass/simplelarge2.mod: New test. - * gm2/iso/run/pass/simplelarge3.mod: New test. - * gm2/iso/run/pass/simplelarge4.mod: New test. - * gm2/pimlib/wideset/run/pass/bitset.mod: New test. - * gm2/pimlib/wideset/run/pass/bitset2.mod: New test. - * gm2/pimlib/wideset/run/pass/colorset.mod: New test. - * gm2/pimlib/wideset/run/pass/colorset2.mod: New test. - * gm2/pimlib/wideset/run/pass/colorset3.mod: New test. - * gm2/pimlib/wideset/run/pass/highbit.mod: New test. - * gm2/pimlib/wideset/run/pass/highbit2.mod: New test. - * gm2/sets/run/pass/multisetrotate5.mod: New test. - * gm2/sets/run/pass/setcard.mod: New test. - * gm2/sets/run/pass/setincl.mod: New test. - -2025-09-19 Jeff Law <jlaw@ventanamicro.com> - - PR target/121983 - * gcc.target/riscv/pr121983.c: New test. - -2025-09-19 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/shuffle-slide-run.h: - New test. - * gcc.target/riscv/rvv/autovec/shuffle-slidedown-run.c: - Likewise. - * gcc.target/riscv/rvv/autovec/shuffle-slideup-run.c: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.h: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-1.c: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-2.c: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-perm.h: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-1.c: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-2.c: - Likewise. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-perm.h: - Likewise. - -2025-09-19 Jim Lin <jim@andestech.com> - - * gcc.target/riscv/save-restore-cfi-3.c: New test. - * gcc.target/riscv/pr120811.c: New file. - -2025-09-19 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/bclr-lowest-set-bit-1.c: New test. - -2025-09-18 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c2y-anon-init-1.c, gcc.dg/c2y-incomplete-2.c: - gcc.dg/c2y-linkage-1.c, gcc.dg/c2y-linkage-2.c, - gcc.dg/c2y-linkage-3.c, gcc.dg/c2y-linkage-4.c, - gcc.dg/c2y-static-assert-1.c: New tests. - * gcc.dg/c2y-linkage-1.c: New file. - * gcc.dg/c2y-linkage-2.c: New file. - * gcc.dg/c2y-linkage-3.c: New file. - * gcc.dg/c2y-linkage-4.c: New file. - * gcc.dg/c2y-static-assert-1.c: New file. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp2a/constexpr-98122.C: Adjust diagnostic. - * g++.dg/cpp26/constexpr-new6a.C: New test. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * g++.dg/analyzer/pr97116.C: Adjust diagnostic. - * g++.dg/warn/Warray-bounds-20.C: Likewise. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * g++.dg/init/pr25811.C: Tweak diagnostic. - * g++.dg/warn/Warray-bounds-12.C: Likewise. - * g++.dg/warn/Warray-bounds-13.C: Likewise. - * g++.dg/cpp26/constexpr-new6.C: New test. - -2025-09-18 Jason Merrill <jason@redhat.com> - - * g++.dg/warn/Wmismatched-new-delete-2.C: Remove xfail. - -2025-09-18 Qing Zhao <qing.zhao@oracle.com> - - PR tree-optimization/121894 - * g++.dg/opt/auto-init-sra-pr121894.C: New test. - -2025-09-18 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121948 - * gfortran.dg/pdt_3.f03: Add missing deallocation of 'matrix'. - * gfortran.dg/pdt_17.f03: Change dg-error text. - * gfortran.dg/pdt_47.f03: New test. - -2025-09-18 Zhongyao Chen <chenzhongyao.hit@gmail.com> - - PR target/121910 - * gcc.target/riscv/rvv/autovec/pr121910.c: New file. - -2025-09-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/121977 - * g++.dg/gomp/pr121977.C: New test. - -2025-09-18 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/svluti4_zt_1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/svwrite_lane_zt_1.c: New test. - * gcc.target/aarch64/sme2/acle-asm/svwrite_zt_1.c: New test. - * gcc.target/aarch64/sve/acle/general-c/svluti4_zt_1.c: New test. - * gcc.target/aarch64/sve/acle/general-c/svwrite_lane_zt_1.c: New test. - * gcc.target/aarch64/sve/acle/general-c/svwrite_zt_1.c: New test. - -2025-09-18 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u128.c: New test. - -2025-09-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121720 - * gcc.dg/tree-ssa/ssa-pre-36.c: New testcase. - -2025-09-18 hongtao.liu <hongtao.liu@intel.com> - - * gcc.target/i386/pieces-memcpy-18.c: Use -mtune=znver5 - instead of -mtune=sapphirerapids. - * gcc.target/i386/pieces-memcpy-21.c: Ditto. - * gcc.target/i386/pieces-memset-46.c: Ditto. - * gcc.target/i386/pieces-memset-49.c: Ditto. - -2025-09-17 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/analyzer/unique_ptr-1.C: Rename to... - * g++.dg/analyzer/std-unique_ptr-1.C: ...this. - * g++.dg/analyzer/unique_ptr-2.C: Rename to... - * g++.dg/analyzer/std-unique_ptr-2.C: ...this. - -2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121962 - * gcc.dg/torture/pr121962-1.c: New test. - -2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * gcc.dg/tree-ssa/copy-prop-aggregate-arg-2.c: New test. - -2025-09-17 Thomas Koenig <tkoenig@gcc.gnu.org> - - * gfortran.dg/matmul_blas_3.f90: New test. - -2025-09-17 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR tree-optimization/58727 - * gcc.target/riscv/pr58727.c: New test. - -2025-09-17 Richard Biener <rguenther@suse.de> - - * gcc.dg/torture/pr84830.c: Turn into GIMPLE unit test for PRE. - -2025-09-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/arch13/bitops-1.c: Do not return a 32bit value - but write it to memory. - * gcc.target/s390/arch13/bitops-2.c: Ditto. - * gcc.target/s390/md/andc-splitter-2.c: Adjust scan assembler - directive because sign extends are folded, now. - -2025-09-17 Iain Sandoe <iain@sandoe.co.uk> - - * objc.dg/special/load-category-1.m: Add second source. - * objc.dg/special/load-category-2.m: Likewise. - * objc.dg/special/load-category-3.m: Likewise. - * objc.dg/special/unclaimed-category-1.m: Likewise. - * objc.dg/special/special.exp: Rewrite to make use of generic - testsuite facilities. - -2025-09-17 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/fp16-aapcs.c: New test. - * gcc.target/arm/fp16-aapcs-1.c: Removed. - * gcc.target/arm/fp16-aapcs-2.c: Likewise. - * gcc.target/arm/fp16-aapcs-3.c: Likewise. - * gcc.target/arm/fp16-aapcs-4.c: Likewise. - -2025-09-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwmulu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test - data for vwmulu.vx run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwmulu-run-1-u64.c: New test. - -2025-09-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwsubu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwsubu-run-1-u64.c: New test. - -2025-09-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vwaddu.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwaddu-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_vx_run.h: New test. - -2025-09-17 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx512bw-vpmovuswb-2.c: Correct res_ref2 - array size. - * gcc.target/i386/avx512bw-vpmovwb-2.c: Ditto. - -2025-09-17 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/vect-epilogues-4.c: Fix for epilogue - vect tree dump. - -2025-09-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR c/121421 - * gcc.dg/gimplefe-error-16.c: New test. - -2025-09-16 Wilco Dijkstra <wilco.dijkstra@arm.com> - - PR middle-end/66462 - * gcc.target/aarch64/pr66462.c: Update test. - -2025-09-16 Jennifer Schmitz <jschmitz@nvidia.com> - - PR target/121602 - * gcc.target/aarch64/sve/acle/asm/mul_s16.c: New test. - * gcc.target/aarch64/sve/acle/asm/mul_s32.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_s64.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_s8.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u16.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u32.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u64.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u8.c: Likewise. - -2025-09-16 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx512bw-vpackssdw-1.c: - Fix xmm/ymm mask tests. - * gcc.target/i386/avx512bw-vpacksswb-1.c: Ditto. - * gcc.target/i386/avx512bw-vpackusdw-1.c: Ditto. - * gcc.target/i386/avx512bw-vpackuswb-1.c: Ditto. - * gcc.target/i386/avx512bw-vpermw-1.c: Test xmm. - * gcc.target/i386/avx512bw-vpmulhw-1.c: - Fix xmm/ymm mask tests. - * gcc.target/i386/avx512f-vec-init.c: Remove duplicate test. - * gcc.target/i386/avx512fp16-13.c: Fix test for aligned load. - * gcc.target/i386/avx512fp16-conjugation-1.c: Revise the test - to test more precisely on masks. - * gcc.target/i386/avx512fp16vl-conjugation-1.c: Ditto. - * gcc.target/i386/avx512vbmi-vpermb-1.c: Test xmm. - * gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Fix scan asm. - * gcc.target/i386/avx512vl-vinsert-1.c: Fix typo. - * gcc.target/i386/avx512vl-vpmulld-1.c: - Fix xmm/ymm mask tests. - * gcc.target/i386/avx512vl-vptestmd-1.c: Ditto. - * gcc.target/i386/bitwise_mask_op-1.c: Fix typo. - * gcc.target/i386/cond_op_shift_q-1.c: Test both vpsra{,v} - and vpsll{,v}. - * gcc.target/i386/cond_op_shift_ud-1.c: Ditto. - * gcc.target/i386/cond_op_shift_uq-1.c: Ditto. - * gcc.target/i386/memcpy-pr95886.c: Fix the wrong const int. - * gcc.target/i386/part-vect-sqrtph-1.c: Remove duplicate test. - * gcc.target/i386/pr107432-7.c: Test vpmov{s,z}xbw instead of - vpmov{s,z}xbd. - * gcc.target/i386/pr88828-0.c: Fix pblendw scan asm. - -2025-09-16 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx_vbroadcastf128.c: New test. - -2025-09-15 Clément Chigot <chigot@adacore.com> - - * gcc.target/aarch64/pr113356.C: Move to ... - * g++.target/aarch64/pr113356.C: ... here. - -2025-09-15 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/widen-mul-0.c: New test. - * gcc.target/riscv/sat/widen-mul-1.c: New test. - * gcc.target/riscv/sat/widen-mul-2.c: New test. - * gcc.target/riscv/sat/widen-mul-3.c: New test. - * gcc.target/riscv/sat/widen-mul.h: New test. - -2025-09-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121751 - PR tree-optimization/121418 - PR tree-optimization/121417 - * gcc.dg/tree-ssa/copy-prop-aggregate-1.c: New test. - * gcc.dg/tree-ssa/copy-prop-aggregate-memcpy-1.c: New test. - * gcc.dg/tree-ssa/copy-prop-aggregate-memcpy-2.c: New test. - -2025-09-15 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/121772 - * gcc.target/aarch64/torture/pr121772.c: New test. - -2025-09-15 H.J. Lu <hjl.tools@gmail.com> - - PR target/121934 - * gcc.target/i386/pr121934-1a.c: New test. - * gcc.target/i386/pr121934-1b.c: Likewise. - * gcc.target/i386/pr121934-2a.c: Likewise. - * gcc.target/i386/pr121934-2b.c: Likewise. - * gcc.target/i386/pr121934-3a.c: Likewise. - * gcc.target/i386/pr121934-3b.c: Likewise. - * gcc.target/i386/pr121934-4a.c: Likewise. - * gcc.target/i386/pr121934-4b.c: Likewise. - * gcc.target/i386/pr121934-5a.c: Likewise. - * gcc.target/i386/pr121934-5b.c: Likewise. - -2025-09-15 Xi Ruoyao <xry111@xry111.site> - - PR target/121906 - * gcc.target/loongarch/pr121906.c: New test. - -2025-09-15 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/andes_vector.h: New file. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c - (#include): Use local andes_vector.h instead of system header. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c - (#include): Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/andes_vector.h: New file. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c - (#include): Use local andes_vector.h instead of system header. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c - (#include): Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/andes_vector.h: New file. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c - (#include): Use local andes_vector.h instead of system header. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c - (#include): Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/andes_vector.h: New file. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c - (#include): Use local andes_vector.h instead of system header. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c - (#include): Likewise. - * gcc.target/riscv/rvv/xsfvector/sifive_vector.h: New file. - * gcc.target/riscv/rvv/xtheadvector/riscv_th_vector.h: New file. - * gcc.target/riscv/rvv/xtheadvector/riscv_vector.h: New file. - -2025-09-15 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/pr121391-1.c: New test. - * gcc.dg/pr121391-2.c: New test. - -2025-09-15 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83763 - * gfortran.dg/pdt_46.f03: New test. - -2025-09-14 Richard Biener <rguenther@suse.de> - - PR lto/121935 - * g++.dg/lto/pr121935_0.C: New testcase. - -2025-09-14 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/conditional_1.f90: New test. - * gfortran.dg/conditional_2.f90: New test. - * gfortran.dg/conditional_3.f90: New test. - * gfortran.dg/conditional_4.f90: New test. - * gfortran.dg/conditional_5.f90: New test. - * gfortran.dg/conditional_6.f90: New test. - * gfortran.dg/conditional_7.f90: New test. - * gfortran.dg/conditional_8.f90: New test. - * gfortran.dg/conditional_9.f90: New test. - -2025-09-14 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/vect-reduc-chain-2.c: Adjust. - * gcc.dg/vect/vect-reduc-chain-3.c: Likewise. - -2025-09-13 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/asm-hard-reg-error-1.c: Enable test for PRU, and define - registers for PRU. - * gcc.dg/asm-hard-reg-error-4.c: Define hard regs for PRU. - * gcc.dg/asm-hard-reg-error-5.c: Ditto. - -2025-09-13 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c23-array-negative-1.c, gcc.dg/c23-register-array-1.c, - gcc.dg/c23-register-array-2.c, gcc.dg/c23-register-array-3.c, - gcc.dg/c23-register-array-4.c, gcc.dg/c2y-array-negative-1.c, - gcc.dg/c2y-register-array-2.c, gcc.dg/c2y-register-array-3.c: New - tests. - -2025-09-12 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/121532 - * ada/acats-4/tests/cxa/cxai034.a: Use Long_Switch_To_New_Task - constant instead of Switch_To_New_Task in delay statements. - * ada/acats-4/tests/cxa/cxai035.a: Likewise. - * ada/acats-4/tests/cxa/cxai036.a: Likewise. - -2025-09-12 Patrick Palka <ppalka@redhat.com> - - PR c++/121795 - * g++.dg/cpp26/pack-indexing17.C: New test. - * g++.dg/cpp26/pack-indexing17a.C: New test. - -2025-09-12 Edwin Lu <ewlu@rivosinc.com> - - PR target/120378 - * gcc.target/riscv/rvv/autovec/pr120378-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr120378-2.c: New test. - * gcc.target/riscv/rvv/autovec/pr120378-3.c: New test. - * gcc.target/riscv/rvv/autovec/pr120378-4.c: New test. - -2025-09-12 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121888 - * gcc.target/sparc/tls-ld-int16.c: Compile with -fPIC. - * gcc.target/sparc/tls-ld-int32.c: Likewise. - * gcc.target/sparc/tls-ld-int64.c: Likewise. - * gcc.target/sparc/tls-ld-int8.c: Likewise. - * gcc.target/sparc/tls-ld-uint16.c: Likewise. - * gcc.target/sparc/tls-ld-uint32.c: Likewise. - * gcc.target/sparc/tls-ld-uint8.c: Likewise. - -2025-09-12 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/120063 - * gcc.dg/fatal-error.c: New test. - * gcc.dg/fatal-error-html.py: New test. - * gcc.dg/fatal-error-sarif.py: New test. - -2025-09-12 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/121876 - * gcc.dg/plugin/crash-test-nested-ice-html.py: New test. - * gcc.dg/plugin/crash-test-nested-ice-sarif.py: New test. - * gcc.dg/plugin/crash-test-nested-ice.c: New test. - * gcc.dg/plugin/crash-test-nested-write-through-null-html.py: New test. - * gcc.dg/plugin/crash-test-nested-write-through-null-sarif.py: New test. - * gcc.dg/plugin/crash-test-nested-write-through-null.c: New test. - * gcc.dg/plugin/crash_test_plugin.cc: Add "nested" argument, and when - set, inject the problem within a nested diagnostic. - * gcc.dg/plugin/plugin.exp: Add crash-test-nested-ice.c and - crash-test-nested-write-through-null.c. - -2025-09-12 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/crash-test-write-though-null-sarif.c: Rename to... - * gcc.dg/plugin/crash-test-write-through-null-sarif.c: ...this. - * gcc.dg/plugin/crash-test-write-though-null-stderr.c: Rename to... - * gcc.dg/plugin/crash-test-write-through-null-stderr.c: ...this. - * gcc.dg/plugin/plugin.exp: Update for above renamings. Sort the - test files for crash_test_plugin.cc alphabetically. - -2025-09-12 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dots.c: - Adjust ABI specification. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotsu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadb.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadt.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vln8.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dots.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotsu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadb.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadt.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vln8.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dots.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotsu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadb.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadt.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vln8.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dots.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotsu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotu.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadb.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadt.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c: - Likewise. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vln8.c: - Likewise. - -2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121893 - * g++.dg/modules/adl-10_a.C: New test. - * g++.dg/modules/adl-10_b.C: New test. - -2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121865 - * g++.dg/lto/pr101396_0.C: Ensure A will be walked into (and - isn't constant-folded out of the GIMPLE for the function). - * g++.dg/lto/pr101396_1.C: Add message. - * g++.dg/modules/lto-4_a.C: New test. - * g++.dg/modules/lto-4_b.C: New test. - -2025-09-12 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/vect-early-break-addhn_1.c: New test. - * gcc.target/aarch64/vect-early-break-addhn_2.c: New test. - * gcc.target/aarch64/vect-early-break-addhn_3.c: New test. - * gcc.target/aarch64/vect-early-break-addhn_4.c: New test. - -2025-09-12 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/vect-addhn_1.c: New test. - -2025-09-11 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121616 - * gfortran.dg/alloc_comp_assign_17.f90: New test. - -2025-09-11 H.J. Lu <hjl.tools@gmail.com> - - PR fortran/107421 - PR testsuite/121848 - * gfortran.dg/gomp/pr107421.f90: Require PIE and pass -fPIE for - non-x86 targets. - -2025-09-11 H.J. Lu <hjl.tools@gmail.com> - - PR c/107419 - PR c++/107393 - * c-c++-common/tls-attr-common.c: New test. - * c-c++-common/tls-attr-le-pic.c: Likewise. - * c-c++-common/tls-attr-le-pie.c: Likewise. - -2025-09-11 H.J. Lu <hjl.tools@gmail.com> - - PR c++/121889 - * g++.dg/tls/pr121889.C: New test. - -2025-09-11 Wilco Dijkstra <wilco.dijkstra@arm.com> - - PR middle-end/66462 - * gcc.target/aarch64/pr66462.c: Add tests for isfinite. - -2025-09-11 Matteo Nicoli <matteo.nicoli001@gmail.com> - - PR tree-optimization/121595 - * gcc.dg/fabs-plus-zero-1.c: New testcase. - * gcc.dg/fabs-plus-zero-2.c: Likewise. - -2025-09-11 Xi Ruoyao <xry111@xry111.site> - - * lib/target-supports.exp - (check_effective_target_loongarch_scq_hw): New. - (check_effective_target_sync_int_128_runtime): Return 1 on - loongarch64-*-* if hardware supports both LSX and SCQ. - * gcc.dg/atomic-compare-exchange-5.c: Pass -mlsx -mscq for - loongarch64-*-*. - * gcc.dg/atomic-exchange-5.c: Likewise. - * gcc.dg/atomic-load-5.c: Likewise. - * gcc.dg/atomic-op-5.c: Likewise. - * gcc.dg/atomic-store-5.c: Likewise. - * gcc.dg/atomic-store-6.c: Likewise. - * gcc.dg/simulate-thread/atomic-load-int128.c: Likewise. - * gcc.dg/simulate-thread/atomic-other-int128.c: Likewise. - (dg-final): xfail on loongarch64-*-* because gdb does not - handle sc.q properly yet. - -2025-09-11 Tsukasa OI <research_trasio@irq.a4lg.com> - - * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall.c: New test. - * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall-indirect-1.c: Ditto. - * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall-indirect-2.c: Ditto. - -2025-09-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121829 - * gcc.dg/torture/pr121829.c: New testcase. - -2025-09-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121870 - * g++.dg/torture/pr121870.C: New testcase. - -2025-09-11 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/zbb-min-max-04.c: New test. - -2025-09-11 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/addsieq.c: Remove xfail and expect conversion - through noce_convert_multiple_sets. - * gcc.target/riscv/addsifeq.c: Ditto. - * gcc.target/riscv/addsifge.c: Ditto. - * gcc.target/riscv/addsifgt.c: Ditto. - * gcc.target/riscv/addsifle.c: Ditto. - * gcc.target/riscv/addsiflt.c: Ditto. - * gcc.target/riscv/addsifne.c: Ditto. - * gcc.target/riscv/addsige.c: Ditto. - * gcc.target/riscv/addsigeu.c: Ditto. - * gcc.target/riscv/addsigt.c: Ditto. - * gcc.target/riscv/addsigtu.c: Ditto. - * gcc.target/riscv/addsile.c: Ditto. - * gcc.target/riscv/addsileu.c: Ditto. - * gcc.target/riscv/addsilt.c: Ditto. - * gcc.target/riscv/addsiltu.c: Ditto. - -2025-09-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/asm-hard-reg-error-4.c: Limit the test to LRA targets. - Use registers r20 and r21 for hppa. Likewise, for AVR use r20 - and r24 instead. - * gcc.dg/asm-hard-reg-error-5.c: Ditto. - -2025-09-11 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/autovec/zve32f-1.c: Update expected - vectorization count from 2 to 3. - * gcc.target/riscv/rvv/autovec/zve32f_zvl256b-1.c: Add - -mrvv-max-lmul=m2 option. - * gcc.target/riscv/rvv/autovec/zve32x_zvl256b-1.c: Add - -mrvv-max-lmul=m2 option. - -2025-09-11 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/cmodel-extreme-1.c: Add -fPIC. - * gcc.target/loongarch/cmodel-extreme-2.c: Likewise. - * gcc.target/loongarch/tls-gd-noplt.c: Likewise. - * gcc.target/loongarch/tls-extreme-macro.c: Likewise. - * gcc.target/loongarch/func-call-medium-2.c: Modify. - * gcc.target/loongarch/func-call-medium-3.c: Modify. - * gcc.target/loongarch/func-call-medium-4.c: Removed. - -2025-09-10 Joseph Myers <josmyers@redhat.com> - - * gcc.dg/c2y-function-qual-1.c, gcc.dg/c2y-incomplete-1.c, - gcc.dg/c2y-inline-1.c, gcc.dg/c2y-pointer-1.c, - gcc.dg/c2y-register-array-1.c, gcc.dg/c2y-storage-class-1.c, - gcc.dg/c2y-struct-empty-1.c: New tests. - -2025-09-10 Peter Bergner <bergner@tenstorrent.com> - - PR target/121878 - * gcc.target/riscv/pr121878.c: New test. - -2025-09-10 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.dg/vect/nodump-extractlast-1.c: New test. - -2025-09-10 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/Wreturn-nested-1.c: New test. - * gcc.dg/Wreturn-nested-2.c: New test. - * gcc.dg/Wtrampolines-2.c: New test. - * gcc.dg/Wtrampolines-3.c: New test. - -2025-09-10 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwsub.wf. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h - (DEF_VF_BINOP_WIDEN_CASE_2, DEF_VF_BINOP_WIDEN_CASE_3): Swap operands. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-2-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-2-f32.c: New test. - -2025-09-10 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121859 - * g++.dg/cpp2a/concepts-traits5.C: New test. - -2025-09-10 Jakub Jelinek <jakub@redhat.com> - - * lib/lto.exp (lto-execute-1): Search for _1.* etc. files - only with a list of known extensions. - -2025-09-10 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121828 - * gcc.dg/bitint-126.c: New test. - -2025-09-10 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121831 - * g++.dg/lto/pr121831_0.C: New test. - * g++.dg/lto/pr121831_1.C: New test. - -2025-09-10 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.dg/vect/pr109011-2.c: Fix expected outcome. - * gcc.dg/vect/pr109011-4.c: Fix expected outcome. - * gcc.target/s390/ffs-1.c: New test. - -2025-09-10 Jakub Jelinek <jakub@redhat.com> - - * g++.target/i386/mangle-ldbl-1.C: New test. - * g++.target/i386/mangle-ldbl-2.C: New test. - * g++.target/m68k/mangle-ldbl-1.C: New test. - * g++.target/m68k/mangle-ldbl-2.C: New test. - -2025-09-10 Maximilian Immanuel Brandtner <maxbr@linux.ibm.com> - - * gcc.target/s390/vector/vec-extract-3.c: New test. - -2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/99682 - PR c++/121808 - * g++.dg/modules/circ-1_c.C: Adjust diagnostic. - * g++.dg/modules/mod-decl-1.C: Likewise. - * g++.dg/modules/mod-decl-2_b.C: Likewise. - * g++.dg/modules/pr99174.H: Likewise. - * g++.dg/modules/import-3_a.C: New test. - * g++.dg/modules/import-3_b.C: New test. - * g++.dg/modules/import-3_c.C: New test. - * g++.dg/modules/mod-decl-9.C: New test. - * g++.dg/modules/part-10_a.C: New test. - * g++.dg/modules/part-10_b.C: New test. - * g++.dg/modules/part-10_c.C: New test. - * g++.dg/modules/part-10_d.C: New test. - -2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> - - PR testsuite/121872 - * g++.dg/modules/default-arg-4_b.C: Change run to compile. - -2025-09-09 Patrick Palka <ppalka@redhat.com> - - PR c++/121779 - * g++.dg/lookup/operator-8.C: Remove outdated comment about - this test failing. - * g++.dg/lookup/operator-8a.C: New test. - -2025-09-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/82480 - * gfortran.dg/stat_3.f90: Extend argument checking. - * gfortran.dg/stat_4.f90: New test. - -2025-09-09 David Faust <david.faust@oracle.com> - - PR debug/121411 - * gcc.dg/debug/ctf/ctf-struct-3.c: New test. - -2025-09-09 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwsub.vf. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h - (DEF_VF_BINOP_WIDEN_CASE_0, DEF_VF_BINOP_WIDEN_CASE_1): Swap operands. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-1-f32.c: New test. - -2025-09-09 Jakub Jelinek <jakub@redhat.com> - - PR c++/121678 - * g++.dg/ext/pr121678.C: New test. - * gcc.dg/pr121678.c: New test. - -2025-09-09 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwadd.wf. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for single - widening variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: Add support - for single widening variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-2-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-2-f32.c: New test. - -2025-09-09 Kyrylo Tkachov <ktkachov@nvidia.com> - - Revert: - 2025-09-09 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/bcax_d.c: Add tests for DImode arguments. - -2025-09-09 Tamar Christina <tamar.christina@arm.com> - - Revert: - 2025-09-09 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121829 - * gcc.dg/torture/pr121829.c: New testcase. - -2025-09-09 Matthias Kretz <m.kretz@gsi.de> - - PR c++/121801 - * g++.dg/abi/pr121801.C: New test. - -2025-09-09 H.J. Lu <hjl.tools@gmail.com> - - PR target/121861 - * gcc.target/i386/pr121861-1a.c: New file. - * gcc.target/i386/pr121861-1b.c: Likewise. - -2025-09-09 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx256_avoid_vec_perm-3.c: New test. - * gcc.target/i386/avx256_avoid_vec_perm-4.c: New test. - * gcc.target/i386/avx512bw-vpalignr-4.c: Adjust testcase. - * gcc.target/i386/avx512vl-vpalignr-4.c: Ditto. - -2025-09-09 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx256_avoid_vec_perm.c: Adjust testcase. - * gcc.target/i386/avx256_avoid_vec_perm-2.c: New test. - * gcc.target/i386/avx256_avoid_vec_perm-5.c: New test. - -2025-09-08 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/121532 - * ada/acats-4/tests/cxa/cxai033.a: Use Long_Switch_To_New_Task - constant instead of Switch_To_New_Task in delay statements. - -2025-09-08 Xi Ruoyao <xry111@xry111.site> - - * gcc.dg/fixed-point/bitint-1.c (dg-options): Use -std=gnu23 - instead of -std=c23. - -2025-09-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/107997 - PR tree-optimization/121844 - * gcc.dg/torture/pr121844.c: New testcase. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwadd. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h - (DEF_VF_BINOP_WIDEN_CASE_0): Fix OP. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-1-f32.c: New test. - -2025-09-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121830 - * gcc.dg/vect/pr121830.c: New testcase. - -2025-09-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121829 - * gcc.dg/torture/pr121829.c: New testcase. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfrsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - vfrsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f64.c: New test. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vls/floating-point-sub-2.c: Adjust scan - dumps. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - vfsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f64.c: New test. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vls/floating-point-add-2.c: Adjust scan - dump. - * gcc.target/riscv/rvv/autovec/vls/floating-point-add-3.c: Likewise. - * gcc.target/riscv/rvv/autovec/vls/floating-point-sub-3.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfadd. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - vfadd. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f64.c: New test. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwmul. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for - widening variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: New test - helper. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmul-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmul-run-1-f32.c: New test. - -2025-09-08 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f16.c: Add vfmax. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f16.c: Add vfmax. Also add - missing -fno-fast-math. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f64.c: Likewise. - -2025-09-08 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84008 - * gfortran.dg/pdt_45.f03: New test. - -2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/87900 - * gcc.dg/tree-ssa/calloc-10.c: New test. - * gcc.dg/tree-ssa/calloc-11.c: New test. - * gcc.dg/tree-ssa/calloc-12.c: New test. - -2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/83022 - * gcc.dg/tree-ssa/calloc-6.c: New test. - * gcc.dg/tree-ssa/calloc-7.c: New test. - * gcc.dg/tree-ssa/calloc-8.c: New test. - * gcc.dg/tree-ssa/calloc-9.c: New test. - -2025-09-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121841 - * gcc.dg/tree-ssa/copy-prop-aggregate-struct-1.c: New test. - -2025-09-07 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dots.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotsu.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotu.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dots.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotsu.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotu.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dots.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotsu.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotu.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dots.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotsu.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotu.c: New test. - -2025-09-07 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadb.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadt.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadb.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadt.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadb.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadt.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadb.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadt.c: New test. - * gcc.target/riscv/rvv/autovec/vls/J: New file. - -2025-09-07 H.J. Lu <hjl.tools@gmail.com> - - PR c++/107393 - * g++.dg/tls/pr107393-1.C: New test. - * g++.dg/tls/pr107393-2.C: Likewise. - -2025-09-07 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vnmsub.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u8.c: New test. - -2025-09-07 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vnmsub.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i8.c: New test. - -2025-09-06 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vln8.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vln8.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vln8.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vln8.c: New test. - -2025-09-06 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/rvv/rvv.exp: Add regression for xandesvector. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c: New test. - * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c: New test. - * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c: New test. - -2025-09-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84119 - * gfortran.dg/pdt_20.f03: Modify to deal with scalar type parm. - -2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/108466 - * gcc.dg/uninit-pr108466-1.c: New test. - -2025-09-06 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/zbb-sext.c: Include stdint-gcc.h instead of - stdint.h. - -2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121702 - * g++.dg/modules/namespace-10_c.C: Add check for log dump. - * g++.dg/modules/namespace-13_a.C: New test. - * g++.dg/modules/namespace-13_b.C: New test. - * g++.dg/modules/namespace-13_c.C: New test. - -2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121705 - PR c++/117658 - * g++.dg/modules/default-arg-4_a.C: XFAIL bogus errors. - * g++.dg/modules/default-arg-4_b.C: Likewise. - * g++.dg/modules/default-arg-5_a.C: Remove duplicate test. - * g++.dg/modules/default-arg-5_b.C: Likewise. - * g++.dg/modules/adl-9_a.C: New test. - * g++.dg/modules/adl-9_b.C: New test. - * g++.dg/modules/gmf-5.C: New test. - -2025-09-05 Sam James <sam@gentoo.org> - - PR rtl-optimization/121757 - * g++.dg/pr121757.C: Add dg-require-effective-target for lto. - -2025-09-05 Robin Dapp <rdapp@ventanamicro.com> - - PR target/121510 - * gcc.target/riscv/rvv/autovec/pr121510.c: New test. - -2025-09-05 Richard Sandiford <rdsandiford@googlemail.com> - - PR rtl-optimization/121757 - * g++.dg/pr121757.C: New test. - -2025-09-05 Georg-Johann Lay <avr@gjlay.de> - - PR testsuite/121695 - PR testsuite/52641 - * gcc.dg/torture/pr121695-1.c: int -> int32_t etc. - -2025-09-05 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/fixed-point/bitint-1.c: Expect also error about _Sat used - without _Fract/_Accum. - -2025-09-05 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/118567 - * gcc.target/powerpc/vsx-vectorize-9.c: New test. - * gcc.target/powerpc/vsx-vectorize-10.c: New test. - * gcc.target/powerpc/vsx-vectorize-11.c: New test. - * gcc.target/powerpc/vsx-vectorize-12.c: New test. - * gcc.target/powerpc/vsx-vectorize-13.c: New test. - * gcc.target/powerpc/vsx-vectorize-14.c: New test. - * gcc.target/powerpc/vsx-vectorize-15.c: New test. - * gcc.target/powerpc/vsx-vectorize-16.c: New test. - -2025-09-05 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/118567 - * gcc.target/powerpc/vsx-vectorize-1.c: Remove includes, checking - part of main1 and main. - * gcc.target/powerpc/vsx-vectorize-2.c: Remove includes, replace - bar definition with declaration, remove main. - * gcc.target/powerpc/vsx-vectorize-3.c: Likewise. - * gcc.target/powerpc/vsx-vectorize-4.c: Likewise. - * gcc.target/powerpc/vsx-vectorize-5.c: Likewise. - * gcc.target/powerpc/vsx-vectorize-6.c: Likewise. - * gcc.target/powerpc/vsx-vectorize-7.c: Likewise. - * gcc.target/powerpc/vsx-vectorize-8.c: Likewise. - -2025-09-05 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/sve/usminmax_di.c: New test. - -2025-09-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84432 - PR fortran/114815 - * gfortran.dg/pdt_26.f03: Update with default no initializer. - * gfortran.dg/pdt_27.f03: Change to test non-conforming - initializers. - -2025-09-05 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/83762 - PR fortran/102457 - * gfortran.dg/pdt_44.f03: New test. - * gfortran.dg/pr95090.f90: Give the PDT parameter a value to - suppress the type error. - -2025-09-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vmadd.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u8.c: New test. - -2025-09-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vmadd.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i8.c: New test. - -2025-09-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Adjust the - vmacc.vx to avoid generating vmadd. - -2025-09-04 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/121732 - PR target/117013 - * g++.target/aarch64/spaceship_1.C: Adjust expected fn bodies - for _Z8ss_floatff and _Z9ss_doubledd. - -2025-09-04 Richard Earnshaw <rearnsha@arm.com> - - PR target/121775 - * gcc.target/arm/simd/vset_lane_u8.c: New test. - -2025-09-04 Robin Dapp <rdapp@ventanamicro.com> - - PR target/121742 - PR target/121780 - PR target/121781 - * gcc.target/riscv/rvv/autovec/pr121780.c: New test. - * gcc.target/riscv/rvv/autovec/pr121781.c: New test. - -2025-09-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121768 - * gcc.dg/vect/pr121768.c: New testcase. - -2025-09-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121685 - * g++.dg/vect/pr121685-1.cc: New testcase. - -2025-09-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/107051 - * gcc.dg/tree-ssa/copy-prop-aggregate-union-1.c: New test. - -2025-09-04 Kito Cheng <kito.cheng@sifive.com> - - PR target/110812 - * gcc.target/riscv/lto/pr110812_0.c: New test. - * gcc.target/riscv/lto/pr110812_1.c: New test. - * gcc.target/riscv/lto/riscv-lto.exp: New test driver. - * gcc.target/riscv/lto/riscv_vector.h: New header wrapper. - -2025-09-04 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/can_inline_p_test-01.c: New test. - * gcc.target/riscv/can_inline_p_test-02.c: New test. - * gcc.target/riscv/can_inline_p_test-03.c: New test. - * gcc.target/riscv/can_inline_p_test-04.c: New test. - * gcc.target/riscv/riscv_vector.h: New header wrapper for vector - tests. - -2025-09-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/61247 - * gcc.dg/vect/vect-pr61247.c: New testcase. - -2025-09-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121740 - * gcc.dg/tree-ssa/ssa-fre-104.c: Un-XFAIL. - * gcc.dg/tree-ssa/ssa-fre-110.c: New testcase. - -2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117658 - * g++.dg/modules/adl-4_a.C: Test should pass. - * g++.dg/modules/adl-4_b.C: Test should pass. - * g++.dg/modules/adl-6_a.C: New test. - * g++.dg/modules/adl-6_b.C: New test. - * g++.dg/modules/adl-6_c.C: New test. - * g++.dg/modules/adl-7_a.C: New test. - * g++.dg/modules/adl-7_b.C: New test. - * g++.dg/modules/adl-7_c.C: New test. - * g++.dg/modules/adl-8_a.C: New test. - * g++.dg/modules/adl-8_b.C: New test. - * g++.dg/modules/adl-8_c.C: New test. - -2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121724 - * g++.dg/modules/namespace-12_a.C: New test. - * g++.dg/modules/namespace-12_b.C: New test. - -2025-09-04 Iain Sandoe <iain@sandoe.co.uk> - - PR testsuite/112728 - * gcc.dg/scantest-lto.c: Omit unwind frames. - -2025-09-03 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/xandes/xandesbfhcvt-1.c: New test. - * gcc.target/riscv/xandes/xandesbfhcvt-2.c: New test. - -2025-09-03 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/riscv.exp: Add runtest for subdir xandes. - * gcc.target/riscv/xandes/xandesperf-1.c: New test. - * gcc.target/riscv/xandes/xandesperf-10.c: New test. - * gcc.target/riscv/xandes/xandesperf-2.c: New test. - * gcc.target/riscv/xandes/xandesperf-3.c: New test. - * gcc.target/riscv/xandes/xandesperf-4.c: New test. - * gcc.target/riscv/xandes/xandesperf-5.c: New test. - * gcc.target/riscv/xandes/xandesperf-6.c: New test. - * gcc.target/riscv/xandes/xandesperf-7.c: New test. - * gcc.target/riscv/xandes/xandesperf-8.c: New test. - * gcc.target/riscv/xandes/xandesperf-9.c: New test. - * gcc.target/riscv/xandes/xandesperf-11.c: New file. - -2025-09-03 Kuan-Lin Chen <rufus@andestech.com> - - * gcc.target/riscv/xandes/xandes-predef-1.c: New test. - * gcc.target/riscv/xandes/xandes-predef-2.c: New test. - * gcc.target/riscv/xandes/xandes-predef-3.c: New test. - * gcc.target/riscv/xandes/xandes-predef-4.c: New test. - * gcc.target/riscv/xandes/xandes-predef-5.c: New test. - * gcc.target/riscv/xandes/xandes-predef-6.c: New test. - Co-author: Lino Hsing-Yu Peng (linopeng@andestech.com) - Co-author: Kai Kai-Yi Weng (kaiweng@andestech.com). - -2025-09-03 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vls/floating-point-max-2.c: Adjust scan - dump. - * gcc.target/riscv/rvv/autovec/vls/floating-point-max-4.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmax. Also add - missing scan-dump for vfmul. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Add vfmax. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add max functions. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - vfmax. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f64.c: New test. - -2025-09-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121263 - * gfortran.dg/transfer_class_5.f90: New test. - -2025-09-03 Austin Law <austinklaw@gmail.com> - - PR target/121213 - * gcc.target/riscv/amo/pr121213.c: Remove xfail. - -2025-09-03 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR target/121749 - * gcc.target/aarch64/simd/pr121749.c: Use dg-assemble directive. - -2025-09-03 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR target/121749 - * gcc.target/aarch64/simd/pr121749.c: New test. - -2025-09-03 Patrick Palka <ppalka@redhat.com> - - PR c++/97740 - * g++.dg/cpp0x/constexpr-97740a.C: New test. - * g++.dg/cpp0x/constexpr-97740b.C: New test. - -2025-09-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121756 - * gcc.dg/torture/pr121756.c: New testcase. - -2025-09-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121767 - * gcc.dg/vect/pr121767.c: New testcase. - -2025-09-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121758 - * gcc.dg/vect/pr121758.c: New testcase. - -2025-09-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121355 - * gcc.dg/tree-ssa/ptrdiff-1.c: New test. - -2025-09-02 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/89707 - * gfortran.dg/pdt_43.f03: New test. - -2025-09-02 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87669 - * gfortran.dg/pdt_42.f03: New test. - -2025-09-02 Richard Earnshaw <rearnsha@arm.com> - - * gcc.dg/asm-hard-reg-4.c: On Arm, unset the CPU before - setting the arch. - * gcc.dg/asm-hard-reg-error-3.c: Similarly. Also add - floating-point instructions to aid hard-float variants. - Match on arm* not just arm. - -2025-09-02 Robin Dapp <rdapp@ventanamicro.com> - - PR target/121742 - * gcc.target/riscv/rvv/autovec/pr121742.c: New test. - -2025-09-02 Jakub Jelinek <jakub@redhat.com> - - * gcc.target/s390/spaceship-fp-1.c: Expect .SPACESHIP call with - -128 as last argument instead of 2. - (TEST): Use -128 instead of 2. - * gcc.target/s390/spaceship-fp-2.c: Expect .SPACESHIP call with - -128 as last argument instead of 2. - (TEST): Use -128 instead of 2. - -2025-09-02 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/zbb-sext.c: New test. - -2025-09-02 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/zba-shadd.c: New test functions. - -2025-09-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/memset-strategy-10.c (dg-options): Add - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. - * gcc.target/i386/memset-strategy-13.c: Likewise. - -2025-09-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121754 - * gcc.dg/vect/pr121754.c: New testcase. - * gcc.target/aarch64/vect-pr121754.c: Likewise. - -2025-09-02 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121663 - * gcc.dg/pr121663.c: New test. - -2025-09-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.dg/tree-ssa/cswtch-6.c (dg-final): xfail on - sparc*-*-solaris2* && !gas. - * gcc.dg/tree-ssa/cswtch-7.c: Likewise. - -2025-09-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * g++.dg/tree-ssa/vector-compare-1.C: Restrict to - non_strict_align targets. - -2025-09-01 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/cpp/c2y-counter-1.c: New test. - -2025-09-01 Jakub Jelinek <jakub@redhat.com> - - * gcc.c-torture/execute/builtins/lib/abs.c (uimaxabs): Rename to ... - (umaxabs): ... this. - * gcc.c-torture/execute/builtins/uabs-2.c (uimaxabs): Rename to ... - (umaxabs): ... this. - (main_test): Use umaxabs instead of uimaxabs. - * gcc.c-torture/execute/builtins/uabs-3.c (main_test): Use umaxabs - instead of uimaxabs. - -2025-09-01 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121727 - * gfortran.dg/value_10.f90: New test. - -2025-09-01 Yoshinori Sato <yoshinori.sato@nifty.com> - - PR target/89828 - * gcc.dg/pr89828.c: New. - -2025-09-01 Andi Kleen <ak@gcc.gnu.org> - - * gcc.target/i386/shift-gf2p8affine-1.c: Use -march=x86-64 - -mtune-generic. - * gcc.target/i386/shift-gf2p8affine-2.c: Dito. - * gcc.target/i386/shift-gf2p8affine-3.c: Dito. - * gcc.target/i386/shift-gf2p8affine-5.c: Dito. - * gcc.target/i386/shift-gf2p8affine-6.c: Dito. - * gcc.target/i386/shift-gf2p8affine-7.c: Dito. - -2025-09-01 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp - (check_effective_target_arm_v8_neon_ok_nocache): Add "-mcpu=unset - -march=armv8-a" to et_arm_v8_neon_flags. - (add_options_for_vect_early_break): Remove useless "-mcpu=unset - -march=armv8-a". - (add_options_for_arm_v8_neon): Likewise. - -2025-09-01 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp - (check_effective_target_arm_neon_ok_nocache): Remove arm32 check. - Add istarget arm*-*-* check. - (check_effective_target_arm_neon_fp16_ok_nocache): Likewise. - (check_effective_target_arm_neon_softfp_fp16_ok_nocache): Likewise. - (check_effective_target_arm_v8_neon_ok_nocache): Likewise. - (check_effective_target_arm_neonv2_ok_nocache): Likewise. - (check_effective_target_vect_pack_trunc): Remove istarget arm*-*-* - check. - (check_effective_target_vect_unpack): Likewise. - (check_effective_target_vect_condition): Likewise. - (check_effective_target_vect_cond_mixed): Likewise. - (available_vector_sizes): Likewise. - -2025-09-01 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121744 - * gcc.dg/vect/pr121744-1.c: New testcase. - -2025-09-01 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr121699.c: New test. - -2025-08-31 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/99709 - * gfortran.dg/pdt_41.f03: New test. - -2025-08-31 Shreya Munnangi <smunnangi1@ventanamicro.com> - - * gcc.target/riscv/add-synthesis-2.c: New test. - -2025-08-31 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u64.rv64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u64.c: New test. - -2025-08-30 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121698 - * gcc.dg/pr94589-2.c: Adjust for expected unordered value -128 - rather than 2 and negations in unsigned char instead of and with - ~1 and comparison against original value. - * gcc.dg/pr94589-4.c: Likewise. - * gcc.dg/pr94589-5.c: Likewise. - * gcc.dg/pr94589-6.c: Likewise. - -2025-08-30 H.J. Lu <hjl.tools@gmail.com> - - PR target/121725 - * gcc.target/i386/pr121725-1a.c: New test. - * gcc.target/i386/pr121725-1b.c: Likewise. - -2025-08-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/116651 - PR tree-optimization/93265 - PR tree-optimization/103647 - PR tree-optimization/52171 - * gcc.target/i386/pr44130.c: Add an inline-asm clobber. - * g++.dg/tree-ssa/vector-compare-1.C: New test. - -2025-08-30 liuhongt <hongtao.liu@intel.com> - - Revert: - 2025-08-30 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr120691.c: New test. - -2025-08-29 Sirui Mu <msrlancern@gmail.com> - - * g++.dg/cpp1z/array-condition-expr.C: New test. - -2025-08-29 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/bswap-SSAI8.c: New. - -2025-08-29 Harald Anlauf <anlauf@gmx.de> - - PR fortran/93330 - * gfortran.dg/argument_checking_15.f90: Adjust dg-pattern. - * gfortran.dg/bounds_check_strlen_7.f90: Add dg-pattern. - * gfortran.dg/char_length_3.f90: Adjust options. - * gfortran.dg/whole_file_24.f90: Add dg-pattern. - * gfortran.dg/whole_file_29.f90: Likewise. - * gfortran.dg/argument_checking_27.f90: New test. - -2025-08-29 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Add vfmin. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f64.c: New test. - -2025-08-29 H.J. Lu <hjl.tools@gmail.com> - - PR target/121096 - * gcc.target/i386/memcpy-strategy-14.c: New test. - * gcc.target/i386/memcpy-strategy-15.c: Likewise. - * gcc.target/i386/memset-strategy-10.c: Likewise. - * gcc.target/i386/memset-strategy-11.c: Likewise. - * gcc.target/i386/memset-strategy-12.c: Likewise. - * gcc.target/i386/memset-strategy-13.c: Likewise. - * gcc.target/i386/memset-strategy-14.c: Likewise. - * gcc.target/i386/memset-strategy-15.c: Likewise. - -2025-08-29 H.J. Lu <hjl.tools@gmail.com> - - PR target/121108 - * gcc.target/i386/memset-strategy-16.c: New test. - -2025-08-29 H.J. Lu <hjl.tools@gmail.com> - - PR target/121694 - * gcc.target/i386/pr121668-1b.c: New test. - * gcc.target/i386/pr121694-1a.c: Likewise. - * gcc.target/i386/pr121694-1b.c: Likewise. - -2025-08-29 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp26/decomp26.C: Add -fimplicit-constexpr. - -2025-08-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR testsuite/120643 - * gcc.target/i386/vect-pragma-target-1.c: Add `-mno-sse3 -mtune=generic` - to the options. - * gcc.target/i386/vect-pragma-target-2.c: Likewise. - -2025-08-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR testsuite/121713 - * gcc.target/aarch64/vld2-1.c: Update the number of "after previous" - checks. - -2025-08-29 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vnmsac.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u8.c: New test. - -2025-08-29 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vnmsac.vx. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i8.c: New test. - -2025-08-29 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr120691.c: New test. - -2025-08-28 Jason Merrill <jason@redhat.com> - - PR c++/107953 - * g++.dg/cpp2a/lambda-targ18.C: New test. - -2025-08-28 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vls/floating-point-min-2.c: Adjust scan - dump. - * gcc.target/riscv/rvv/autovec/vls/floating-point-min-4.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmin. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for - function variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - vfmin. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f64.c: New test. - -2025-08-28 Wilco Dijkstra <wilco.dijkstra@arm.com> - - PR middle-end/66462 - * gcc.target/aarch64/pr66462.c: Add new test. - -2025-08-28 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119844 - * g++.dg/modules/pr119844_a.C: New test. - * g++.dg/modules/pr119844_b.C: New test. - * g++.dg/template/incomplete13.C: New file. - -2025-08-28 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/121629 - * gm2/switches/pathnameroot/pass/switches-pathnameroot-pass.exp: New test. - * gm2/switches/pathnameroot/pass/test.mod: New test. - * gm2/switches/pathnameroot/pass/testlib/m2/foo.def: New test. - * gm2/switches/pathnameroot/pass/testlib/m2/foo.mod: New test. - -2025-08-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/121583 - * g++.dg/cpp26/expansion-stmt23.C: New test. - * g++.dg/cpp26/expansion-stmt24.C: New test. - -2025-08-28 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c++/121575 - * g++.dg/cpp26/expansion-stmt20.C: New test. - -2025-08-28 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/82843 - * gfortran.dg/pdt_40.f03: New test. - -2025-08-28 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/82205 - * gfortran.dg/pdt_22.f03: Use the correct for PDT constructors. - * gfortran.dg/pdt_23.f03: Likewise. - * gfortran.dg/pdt_3.f03: Likewise. - -2025-08-27 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/nozicond-2.c: Remove xfails. - -2025-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/114611 - * gfortran.dg/aliasing_dummy_1.f90: Accommodate errors - and warnings as needed. - * gfortran.dg/eoshift_8.f90: Likewise. - * gfortran.dg/g77/f77-edit-h-out.f: Likewise. - * gfortran.dg/hollerith_1.f90: Likewise. - * gfortran.dg/io_constraints_1.f90: Likewise. - * gfortran.dg/io_constraints_2.f90: Likewise. - * gfortran.dg/longline.f: Likewise. - * gfortran.dg/pr20086.f90: Likewise. - * gfortran.dg/unused_artificial_dummies_1.f90: Likewise. - * gfortran.dg/x_slash_1.f: Likewise. - -2025-08-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121695 - * gcc.dg/torture/pr121695-1.c: New test. - -2025-08-27 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f64.c: Fix type. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f32.c: Remove - useless dg directives. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f64.c: Likewise. - -2025-08-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121686 - * gcc.dg/vect/pr121686.c: New testcase. - -2025-08-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR testsuite/121684 - * c-c++-common/hwasan/unprotected-allocas-0.c: Mark - using_vararray and using_alloca as noclone too. - -2025-08-27 H.J. Lu <hjl.tools@gmail.com> - - PR target/121668 - * gcc.target/i386/pr121668-1a.c: New test. - -2025-08-27 H.J. Lu <hjl.tools@gmail.com> - - PR tree-optimization/121656 - * gcc.dg/pr121656.c: Moved to ... - * gcc.dg/torture/pr121656.c: Here. - (dg-options): Removed. - (foo): Replace weak attribute with noipa attribute. - -2025-08-27 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/mcpu-xt-c908v.c: Drop xtheadvdot. - * gcc.target/riscv/mcpu-xt-c920v2.c: Drop xtheadvdot. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118839 - * gcc.dg/gomp/declare-variant-3.c: New. - * gfortran.dg/gomp/declare-variant-22.f90: New. - -2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/append-args-1.c: Adjust expected output. - * g++.dg/gomp/adjust-args-1.C: Likewise. - * g++.dg/gomp/adjust-args-3.C: Likewise. - * gcc.dg/gomp/adjust-args-1.c: Likewise: - * gcc.dg/gomp/append-args-1.c: Likewise. - * gcc.dg/gomp/unprototyped-variant.c: New. - * gfortran.dg/gomp/adjust-args-1.f90: Adjust expected output. - * gfortran.dg/gomp/append_args-1.f90: Likewise. - -2025-08-26 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/arch-25.c: Use wildcards to simplify/eliminate - dg-error directives. - * gcc.target/riscv/arch-ss-2.c: Similarly. - * gcc.target/riscv/arch-zilsd-2.c: Similarly. - * gcc.target/riscv/arch-zilsd-3.c: Similarly. - -2025-08-26 David Faust <david.faust@oracle.com> - - PR debug/121411 - * gcc.dg/debug/ctf/ctf-array-7.c: Restrict to lp64,llp64 - targets. - -2025-08-26 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/unsigned-extend-2.c: Disable sched2 and sched3 - and update function body to match. - -2025-08-26 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/vect_unroll-1.c: New test. - * gcc.target/i386/vect_unroll-2.c: New test. - * gcc.target/i386/vect_unroll-3.c: New test. - * gcc.target/i386/vect_unroll-4.c: New test. - * gcc.target/i386/vect_unroll-5.c: New test. - * gcc.target/i386/vect_unroll-6.c: New file. - -2025-08-26 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfrdiv. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for reverse - variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for - reverse variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f64.c: New test. - -2025-08-26 Tamar Christina <tamar.christina@arm.com> - - PR target/121290 - * gcc.target/aarch64/pr121290.c: New test. - -2025-08-26 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmul. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_run.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vls/floating-point-mul-2.c: Adjust scan - dump. - * gcc.target/riscv/rvv/autovec/vls/floating-point-mul-3.c: Likewise. - -2025-08-26 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/bics_3.c: Add some additional tests that - cannot be folded to a bit manipulation. - -2025-08-26 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121659 - * gcc.dg/vect/pr121659.c: New testcase. - -2025-08-26 Jakub Jelinek <jakub@redhat.com> - - PR target/121658 - * gcc.target/i386/pr121658.c: New test. - -2025-08-26 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u8.c: New test. - -2025-08-26 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_run.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i8.c: New test. - -2025-08-25 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121453 - * gcc.dg/gomp/pr121453.c: New test. - -2025-08-25 H.J. Lu <hjl.tools@gmail.com> - - PR tree-optimization/121656 - * gcc.dg/pr121656.c: New file. - -2025-08-25 David Faust <david.faust@oracle.com> - - PR debug/121411 - * gcc.dg/debug/ctf/ctf-array-7.c: New test. - -2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR tree-optimization/121279 - * gcc.dg/torture/pr121279-1.c: New test. - -2025-08-25 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp26/expansion-stmt15.C: Don't expect error on - destructuring expansion stmts with structured binding size 0. - * g++.dg/cpp26/expansion-stmt21.C: New test. - * g++.dg/cpp26/expansion-stmt22.C: New test. - -2025-08-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/121601 - * g++.dg/cpp26/constexpr-eh16.C: New test. - -2025-08-25 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121638 - * gcc.dg/vect/pr121638.c: New testcase. - -2025-08-25 Andi Kleen <ak@gcc.gnu.org> - - * gcc.target/i386/shift-gf2p8affine-1.c: New test - * gcc.target/i386/shift-gf2p8affine-2.c: New test - * gcc.target/i386/shift-gf2p8affine-3.c: New test - * gcc.target/i386/shift-v16qi-4.c: New test - * gcc.target/i386/shift-gf2p8affine-5.c: New test - * gcc.target/i386/shift-gf2p8affine-6.c: New test - * gcc.target/i386/shift-gf2p8affine-7.c: New test - -2025-08-25 Xi Ruoyao <xry111@xry111.site> - - PR target/121634 - * gcc.target/loongarch/pr121634.c: New test. - -2025-08-25 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/arm/bics_3.c: Adjust expected output - -2025-08-23 Eczbek <eczbek.void@gmail.com> - - PR c++/116928 - * g++.dg/parse/template33.C: New test. - -2025-08-23 H.J. Lu <hjl.tools@gmail.com> - - PR target/120933 - * gcc.target/i386/noplt-gd-1.c (dg-options): Add - -mtls-dialect=gnu. - * gcc.target/i386/noplt-ld-1.c (dg-options): Likewise. - -2025-08-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120499 - * g++.dg/modules/imp-member-4_a.C: New test. - * g++.dg/modules/imp-member-4_b.C: New test. - * g++.dg/modules/imp-member-4_c.C: New test. - -2025-08-22 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/120553 - * gcc.target/riscv/pr120553-1.c: New test. - * gcc.target/riscv/pr120553-2.c: New test. - * gcc.target/riscv/pr120553-3.c: New test. - * gcc.target/riscv/pr120553-4.c: New test. - * gcc.target/riscv/pr120553-5.c: New test. - * gcc.target/riscv/pr120553-6.c: New test. - * gcc.target/riscv/pr120553-7.c: New test. - * gcc.target/riscv/pr120553-8.c: New test. - -2025-08-22 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u64.rv32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u64.rv32.c: New test. - -2025-08-22 H.J. Lu <hjl.tools@gmail.com> - - PR target/121635 - * gcc.target/i386/pr121635-1a.c: New test. - * gcc.target/i386/pr121635-1b.c: Likewise. - -2025-08-22 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/abi/mangle83.C: Disable implicit enum test for - -fshort-enums. - -2025-08-22 Alexandre Oliva <oliva@adacore.com> - - PR rtl-optimization/120424 - * lib/target-supports.exp (arm arches): Add arm_arch_v7. - * g++.target/arm/pr120424.C: Require armv7 support. Use - dg-add-options arm_arch_v7 instead of explicit -march=armv7. - -2025-08-21 Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/121627 - * gfortran.dg/pr121627.f90: New test. - -2025-08-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR c/121478 - * gcc.dg/torture/pr121478-1.c: New test. - -2025-08-21 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * g++.dg/cpp2a/constexpr-dtor18.C: New test. - -2025-08-21 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: Call - check_effective_target_riscv_zvfh_ok rather than - check_effective_target_riscv_zvfh. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: Likewise. - * lib/target-supports.exp (check_effective_target_riscv_zvfh_ok): Append - zvfh instead of v to march. - (remove_options_for_riscv_zvfh): Remove duplicate and - call remove_ rather than add_options_for_riscv_z_ext. - -2025-08-21 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/121619 - * gcc.dg/pr121619.c: New test. - -2025-08-21 H.J. Lu <hjl.tools@gmail.com> - - PR target/121607 - * gcc.target/i386/pr121607-1a.c: New test. - * gcc.target/i386/pr121607-1b.c: Likewise. - -2025-08-21 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/84122 - PR fortran/85942 - * gfortran.dg/pdt_38.f03: New test. - * gfortran.dg/pdt_39.f03: New test. - -2025-08-21 Jason Merrill <jason@redhat.com> - - PR c++/120757 - * g++.dg/cpp1y/auto-fn66.C: New test. - -2025-08-20 Marek Polacek <polacek@redhat.com> - - PR c++/121553 - * g++.dg/warn/Wshadow-19.C: Revert P2036 changes. - * g++.dg/warn/Wshadow-6.C: Likewise. - * g++.dg/warn/Wshadow-20.C: New test. - * g++.dg/warn/Wshadow-21.C: New test. - -2025-08-20 Qing Zhao <qing.zhao@oracle.com> - - PR tree-optimization/109071 - PR tree-optimization/85788 - PR tree-optimization/88771 - PR tree-optimization/106762 - PR tree-optimization/108770 - PR tree-optimization/115274 - PR tree-optimization/117179 - * gcc.dg/pr109071.c: New test. - * gcc.dg/pr109071_1.c: New test. - * gcc.dg/pr109071_10.c: New test. - * gcc.dg/pr109071_11.c: New test. - * gcc.dg/pr109071_12.c: New test. - * gcc.dg/pr109071_2.c: New test. - * gcc.dg/pr109071_3.c: New test. - * gcc.dg/pr109071_4.c: New test. - * gcc.dg/pr109071_5.c: New test. - * gcc.dg/pr109071_6.c: New test. - * gcc.dg/pr109071_7.c: New test. - * gcc.dg/pr109071_8.c: New test. - * gcc.dg/pr109071_9.c: New test. - * gcc.dg/pr117375.c: New test. - -2025-08-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/121572 - * gcc.target/i386/pr121572-1a.c: New test. - * gcc.target/i386/pr121572-1b.c: Likewise. - * gcc.target/i386/pr121572-2a.c: Likewise. - * gcc.target/i386/pr121572-2b.c: Likewise. - -2025-08-19 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp26/expansion-stmt16.C: Add -fno-implicit-constexpr. - -2025-08-19 Ben Wu <soggysocks206@gmail.com> - - PR c++/120618 - * g++.dg/cpp2a/concepts-requires5.C: Don't require - redundant diagnostic in static assertion. - * g++.dg/concepts/pr120618.C: New test. - -2025-08-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - PR middle-end/120024 - * gcc.dg/torture/malloc-1.c: New test. - * gcc.dg/torture/malloc-2.c: New test. - -2025-08-19 Patrick Palka <ppalka@redhat.com> - - PR c++/121351 - * g++.dg/cpp2a/concepts-using7.C: New test. - -2025-08-19 Tamar Christina <tamar.christina@arm.com> - - PR target/121536 - * g++.target/aarch64/sve/pr121536.cc: New test. - -2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121578 - * g++.dg/abi/mangle83.C: Requires C++17. - -2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120195 - * g++.dg/modules/using-32_a.C: New test. - * g++.dg/modules/using-32_b.C: New test. - -2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/108080 - PR c++/121396 - * g++.dg/modules/pr108080.H: Also allow target warnings. - -2025-08-17 Austin Law <austinklaw@gmail.com> - - PR target/121213 - * gcc.target/riscv/amo/pr121213.c: New test. - -2025-08-17 dragan.mladjenovic <dragan.mladjenovic@rt-rk.com> - - * gcc.target/mips/tls-1.c: New file. - -2025-08-17 Matthew Fortune <matthew.fortune@imgtec.com> - - * gcc.target/mips/call-clobbered-1.c: Use HAS_LDC ghost - option instead of isa>=2. - -2025-08-17 Andrew Bennett <andrew.bennett@imgtec.com> - - * gcc.target/mips/near-far-1.c: Fix tests properly for - compact-branches (jals and balc). - * gcc.target/mips/near-far-2.c: Likewise. - * gcc.target/mips/near-far-3.c: Likewise. - * gcc.target/mips/near-far-4.c: Likewise. - -2025-08-17 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/mips/call-clobbered-2.c: Add a NOMIPS16 attribute. - * gcc.target/mips/call-clobbered-3.c: Likewise. - * gcc.target/mips/call-clobbered-5.c: Likewise. - * gcc.target/mips/ds-schedule-2.c: Add an -mno-mips16 option. - * gcc.target/mips/interrupt_handler-bug-1.c: Same as - call-clobbered-*.c tests. - * gcc.target/mips/movdf-1.c: Likewise. - * gcc.target/mips/movdf-2.c: Likewise. - * gcc.target/mips/movdf-3.c: Likewise. - * gcc.target/mips/msa-builtins.c: Same as ds-schedule-2.c. - Remove a NOMIPS16 attribute from builtins. - * gcc.target/mips/msa.c: Likewise. - -2025-08-17 Matthew Fortune <matthew.fortune@imgtec.com> - - * gcc.target/mips/insn-casesi.c: Require mips16 support but - not the command line option. - * gcc.target/mips/insn-tablejump.c: Force o32 ABI as - we do not really support n32/n64 microMIPS. Require micromips - support but not the command line option. - -2025-08-17 H.J. Lu <hjl.tools@gmail.com> - - PR target/121541 - * gcc.target/i386/pr121541-1a.c: New test. - * gcc.target/i386/pr121541-1b.c: Likewise. - * gcc.target/i386/pr121541-2.c: Likewise. - * gcc.target/i386/pr121541-3.c: Likewise. - * gcc.target/i386/pr121541-4.c: Likewise. - * gcc.target/i386/pr121541-5a.c: Likewise. - * gcc.target/i386/pr121541-5b.c: Likewise. - -2025-08-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120503 - PR c++/120824 - * g++.dg/abi/mangle32.C: Remove enumerator list. - * g++.dg/cpp0x/linkage2.C: Likewise. - * g++.dg/ext/vector26.C: Likewise. - * g++.dg/other/anon3.C: Likewise. - * g++.dg/abi/mangle83.C: New test. - * g++.dg/modules/enum-15_a.C: New test. - * g++.dg/modules/enum-15_b.C: New test. - -2025-08-16 H.J. Lu <hjl.tools@gmail.com> - - PR fortran/107421 - * gfortran.dg/gomp/pr107421.f90: New test. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp26/expansion-stmt15.C: Expect different diagnostics - for zero size destructuring expansion statement. - * g++.dg/ext/builtin-structured-binding-size1.C: New test. - * g++.dg/ext/builtin-structured-binding-size2.C: New test. - * g++.dg/ext/builtin-structured-binding-size3.C: New test. - * g++.dg/ext/builtin-structured-binding-size4.C: New test. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/121552 - * g++.dg/parse/defarg21.C: New test. - * g++.dg/template/defarg24.C: New test. - * g++.dg/modules/default-arg-4_a.C: New test. - * g++.dg/modules/default-arg-4_b.C: New test. - * g++.dg/modules/default-arg-5_a.C: New test. - * g++.dg/modules/default-arg-5_b.C: New test. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/121552 - * g++.dg/cpp2a/typedef1.C: New test. - * g++.dg/debug/dwarf2/typedef5.C: Add -Wno-non-c-typedef-for-linkage - to dg-options. - * g++.dg/inherit/typeinfo1.C: Add -Wno-non-c-typedef-for-linkage - to dg-additional-options. - * g++.dg/parse/ctor2.C: Likewise. - * g++.dg/ext/anon-struct9.C: Add -Wno-non-c-typedef-for-linkage to - dg-options. - * g++.dg/ext/visibility/anon11.C: Add -Wno-non-c-typedef-for-linkage - to dg-additional-options. - * g++.dg/lto/pr69137_0.C: Add -Wno-non-c-typedef-for-linkage - to dg-lto-options. - * g++.dg/other/anon8.C: Add -Wno-non-c-typedef-for-linkage - to dg-additional-options. - * g++.dg/template/pr84973.C: Likewise. - * g++.dg/template/pr84973-2.C: Likewise. - * g++.dg/template/pr84973-3.C: Likewise. - * g++.dg/abi/anon2.C: Likewise. - * g++.dg/abi/anon3.C: Likewise. - * g++.old-deja/g++.oliva/linkage1.C: Likewise. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/121539 - * g++.dg/parse/defarg20.C: New test. - -2025-08-15 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - PR target/121520 - * g++.dg/DRs/dr2581-1.C: New test. - * g++.dg/DRs/dr2581-2.C: New test. - * c-c++-common/cpp/pr92296-2.c: Expect warnings also on defining - special macros after undefining them. - -2025-08-15 Vineet Gupta <vineetg@rivosinc.com> - - PR target/121534 - * gcc.target/riscv/rvv/autovec/vls/math-nearbyint-1.c: Adjust - scan pattern for additional instances of frflags/fsrflags. - -2025-08-15 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/flex-array-counted-by-2.c: Adjust testing case. - -2025-08-15 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. - -2025-08-15 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/pointer-counted-by-4-char.c: New test. - * gcc.dg/pointer-counted-by-4-float.c: New test. - * gcc.dg/pointer-counted-by-4-struct.c: New test. - * gcc.dg/pointer-counted-by-4-union.c: New test. - * gcc.dg/pointer-counted-by-4.c: New test. - * gcc.dg/pointer-counted-by-5.c: New test. - * gcc.dg/pointer-counted-by-6.c: New test. - * gcc.dg/pointer-counted-by-7.c: New test. - * gcc.dg/pr120929.c: New test. - -2025-08-15 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/flex-array-counted-by.c: Update test. - * gcc.dg/pointer-counted-by-1.c: New test. - * gcc.dg/pointer-counted-by-2.c: New test. - * gcc.dg/pointer-counted-by-3.c: New test. - * gcc.dg/pointer-counted-by-8.c: New test. - * gcc.dg/pointer-counted-by-9.c: New test. - * gcc.dg/pointer-counted-by.c: New test. - -2025-08-15 Umesh Kalappa <ukalappa.mips@gmail.com> - - * gcc.target/riscv/mipsprefetch.c: Test file for mips.pref. - -2025-08-15 Richard Sandiford <richard.sandiford@arm.com> - - PR target/119156 - * gcc.target/aarch64/sve/pr119156_1.c: New test. - -2025-08-15 Lulu Cheng <chenglulu@loongson.cn> - - PR target/121542 - * gcc.target/loongarch/pr121542.c: New test. - -2025-08-14 Jakub Jelinek <jakub@redhat.com> - - PR c++/121524 - * g++.dg/cpp0x/gen-attrs-89.C: New test. - -2025-08-14 Jeff Law <jlaw@ventanamicro.com> - - PR target/119275 - * gcc.target/riscv/pr119275.c: New test. - -2025-08-14 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.dg/tree-ssa/copy-prop-aggregate-arg-1.c: New test. - -2025-08-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vlgv-zero-extend-1.c: Require target - s390_mvx. - * gcc.target/s390/vector/vlgv-zero-extend-2.c: New test. - -2025-08-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/121511 - * gcc.dg/asm-hard-reg-error-3.c: Add additional option -marm for - target arm. - -2025-08-14 H.J. Lu <hjl.tools@gmail.com> - - PR target/121540 - * gcc.target/i386/no-callee-saved-19a.c (dg-options): Add - "-mno-avx -mno-mmx -mno-80387" - * gcc.target/i386/no-callee-saved-19b.c: Likewise. - * gcc.target/i386/no-callee-saved-19c.c: Likewise. - * gcc.target/i386/no-callee-saved-19d.c: Likewise. - * gcc.target/i386/no-callee-saved-19e.c: Likewise. - * gcc.target/i386/pr121208-1a.c: Likewise. - * gcc.target/i386/pr121208-1b.c: Likewise. - * gcc.target/i386/pr121540-1.c: New test. - * gcc.target/i386/pr121540-2.c: Likewise. - -2025-08-13 Jeff Law <jlaw@ventanamicro.com> - - PR target/121531 - * gcc.target/riscv/pr121531.c: New test. - -2025-08-13 Marek Polacek <polacek@redhat.com> - - PR c++/102610 - * g++.dg/cpp0x/lambda/lambda-decltype3.C: Remove xfail. - * g++.dg/warn/Wshadow-19.C: Add -Wpedantic. Adjust a dg-warning. - * g++.dg/warn/Wshadow-6.C: Adjust expected diagnostics. - * g++.dg/cpp23/lambda-scope1.C: New test. - * g++.dg/cpp23/lambda-scope2.C: New test. - * g++.dg/cpp23/lambda-scope3.C: New test. - * g++.dg/cpp23/lambda-scope4.C: New test. - * g++.dg/cpp23/lambda-scope4b.C: New test. - * g++.dg/cpp23/lambda-scope5.C: New test. - * g++.dg/cpp23/lambda-scope6.C: New test. - * g++.dg/cpp23/lambda-scope7.C: New test. - * g++.dg/cpp23/lambda-scope8.C: New test. - * g++.dg/cpp23/lambda-scope9.C: New test. - -2025-08-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/120776 - * g++.dg/cpp1z/decomp64.C: New test. - * g++.dg/cpp26/expansion-stmt1.C: New test. - * g++.dg/cpp26/expansion-stmt2.C: New test. - * g++.dg/cpp26/expansion-stmt3.C: New test. - * g++.dg/cpp26/expansion-stmt4.C: New test. - * g++.dg/cpp26/expansion-stmt5.C: New test. - * g++.dg/cpp26/expansion-stmt6.C: New test. - * g++.dg/cpp26/expansion-stmt7.C: New test. - * g++.dg/cpp26/expansion-stmt8.C: New test. - * g++.dg/cpp26/expansion-stmt9.C: New test. - * g++.dg/cpp26/expansion-stmt10.C: New test. - * g++.dg/cpp26/expansion-stmt11.C: New test. - * g++.dg/cpp26/expansion-stmt12.C: New test. - * g++.dg/cpp26/expansion-stmt13.C: New test. - * g++.dg/cpp26/expansion-stmt14.C: New test. - * g++.dg/cpp26/expansion-stmt15.C: New test. - * g++.dg/cpp26/expansion-stmt16.C: New test. - * g++.dg/cpp26/expansion-stmt17.C: New test. - * g++.dg/cpp26/expansion-stmt18.C: New test. - * g++.dg/cpp26/expansion-stmt19.C: New test. - * g++.dg/cpp26/feat-cxx26.C: Add __cpp_expansion_statements - tests. - -2025-08-13 H.J. Lu <hjl.tools@gmail.com> - - PR target/81501 - * g++.target/i386/pr81501-1.C: New test. - * gcc.target/i386/pr81501-1a.c: Likewise. - * gcc.target/i386/pr81501-1b.c: Likewise. - * gcc.target/i386/pr81501-2a.c: Likewise. - * gcc.target/i386/pr81501-2b.c: Likewise. - * gcc.target/i386/pr81501-3.c: Likewise. - * gcc.target/i386/pr81501-4a.c: Likewise. - * gcc.target/i386/pr81501-4b.c: Likewise. - * gcc.target/i386/pr81501-5.c: Likewise. - * gcc.target/i386/pr81501-6a.c: Likewise. - * gcc.target/i386/pr81501-6b.c: Likewise. - * gcc.target/i386/pr81501-7.c: Likewise. - * gcc.target/i386/pr81501-8a.c: Likewise. - * gcc.target/i386/pr81501-8b.c: Likewise. - * gcc.target/i386/pr81501-9a.c: Likewise. - * gcc.target/i386/pr81501-9b.c: Likewise. - * gcc.target/i386/pr81501-10a.c: Likewise. - * gcc.target/i386/pr81501-10b.c: Likewise. - -2025-08-13 Iain Sandoe <iain@sandoe.co.uk> - - * gcc.dg/torture/darwin-cfstring-3.c: Adjust for amended - string labels. - * g++.dg/torture/darwin-cfstring-3.C: Likewise. - -2025-08-13 Jeff Law <jlaw@ventanamicro.com> - - PR target/121160 - * gcc.target/riscv/pr121160.c: New test. - -2025-08-13 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/89092 - * gfortran.dg/pr89092.f90: New test. - -2025-08-13 Yang Yujie <yangyujie@loongson.cn> - - PR target/117599 - * gcc.target/loongarch/bitint-alignments.c: New test. - * gcc.target/loongarch/bitint-args.c: New test. - * gcc.target/loongarch/bitint-sizes.c: New test. - -2025-08-13 Jeff Law <jlaw@ventanamicro.com> - - PR target/121113 - * gcc.target/riscv/pr121113.c: New test. - -2025-08-13 David Malcolm <dmalcolm@redhat.com> - - PR testsuite/119783 - jit.dg/test-error-impossible-must-tail-call.c - * jit.dg/test-error-impossible-must-tail-call.c (verify_code): - Check that we get a suitable-looking error message, but don't - try to specify exactly what the message is. - -2025-08-13 H.J. Lu <hjl.tools@gmail.com> - Liu, Hongtao <hongtao.liu@intel.com> - - PR target/121497 - * gcc.target/i386/pr121497.c: New test. - -2025-08-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i8.c: New test. - -2025-08-12 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/121334 - * gcc.target/riscv/rvv/autovec/pr121334.c: New test. - -2025-08-12 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/121253 - * gcc.target/aarch64/pr121253.c: New test. - -2025-08-12 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121509 - * gcc.dg/vect/pr121509.c: New testcase. - -2025-08-12 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121514 - * gcc.dg/torture/pr121514.c: New testcase. - -2025-08-12 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121493 - * gcc.dg/tree-ssa/ssa-fre-109.c: New testcase. - -2025-08-12 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/c_f_pointer_shape_tests_7.f90: New test. - * gfortran.dg/c_f_pointer_shape_tests_8.f90: New test. - * gfortran.dg/c_f_pointer_shape_tests_9.f90: New test. - -2025-08-12 Shreya Munnangi <smunnangi1@ventanamicro.com> - Jeff Law <jlaw@ventanamicro.com> - Philipp Tomsich <philipp.tomsich@vrull.eu> - - * gcc.target/riscv/add-synthesis-1.c: New test. - -2025-08-12 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: - Change test for updated handling of Numeric Display variables. - -2025-08-11 Richard Henderson <richard.henderson@linaro.org> - - * gcc.target/aarch64/cmpbr-3.c: New. - * gcc.target/aarch64/ifcvt_multiple_sets_rewire.c: Simplify - test for csel by ignoring the actual registers used. - -2025-08-11 Richard Henderson <richard.henderson@linaro.org> - - PR target/121388 - * gcc.target/aarch64/cmpbr.c (u32_x0_ult_64): XFAIL. - (i32_x0_slt_64, u64_x0_ult_64, i64_x0_slt_64): XFAIL. - * gcc.target/aarch64/cmpbr-2.c: New. - -2025-08-11 Richard Henderson <richard.henderson@linaro.org> - - * gcc.target/aarch64/cmpbr.c: Only compile, not assemble, - since we want to scan the assembly. - -2025-08-11 Richard Henderson <richard.henderson@linaro.org> - - PR target/121385 - * gcc.target/aarch64/cmpbr-1.c: New. - -2025-08-11 Richard Henderson <richard.henderson@linaro.org> - - * gcc.target/aarch64/gcs-nonlocal-3.c: Match cbnz. - -2025-08-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121398 - * gfortran.dg/pdt_generic_1.f90: New test. - -2025-08-11 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.dg/torture/copy-prop-aggr-zero-1.c: New test. - * gcc.dg/torture/copy-prop-aggr-zero-2.c: New test. - * gcc.dg/tree-ssa/copy-prop-aggregate-zero-1.c: New test. - * gcc.dg/tree-ssa/copy-prop-aggregate-zero-2.c: New test. - * gcc.dg/tree-ssa/copy-prop-aggregate-zero-3.c: New test. - -2025-08-11 Jeff Law <jlaw@ventanamicro.com> - - * lib/target-supports.exp (check_effective_target_riscv_b_ok): New. - * gcc.target/riscv/pr116085.c: Use new target selector. - * gcc.target/riscv/pr117690.c: Use new target selector. - * gcc.target/riscv/pr120333.c: Use new target selector. - * gcc.target/riscv/zba-shNadd-10.c: Use new target selector. - -2025-08-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121488 - * gcc.dg/tree-ssa/ssa-fre-108.c: New testcase. - -2025-08-11 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_mul-3-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-3-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-3-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-3-u8.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-3-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-3-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-3-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-3-u8.c: New test. - -2025-08-11 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv-nofm.c: Update - asm check due to above change. - * gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vmul-rv32gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vmul-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv64gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fadd-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fadd-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fadd-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fadd-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-5.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-6.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-5.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-6.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmul-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmul-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmul-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmul-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_fmul-5.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-08-11 Andre Vieira <andre.simoesdiasvieira@arm.com> - - PR target/121464 - * gcc.target/arm/acle/mcrr.c: Update testcase. - * gcc.target/arm/acle/mcrr2.c: Likewise. - * gcc.target/arm/acle/mrrc.c: Likewise. - * gcc.target/arm/acle/mrrc2.c: Likewise. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/warn/template-1.C: Fix comment typo, unsinged -> unsigned. - * gcc.target/powerpc/builtins-2-p9-runnable.c (main): Likewise. - * gcc.dg/graphite/id-30.c: Likewise. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * g++.dg/cpp26/name-independent-decl11.C: New test. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * g++.dg/cpp26/decomp19.C: Don't expect sorry on tuple static - structured bindings with a pack. - * g++.dg/cpp26/decomp26.C: New test. - -2025-08-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/121442 - * g++.dg/cpp1z/decomp65.C: New test. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.dg/asm-hard-reg-6.c: Adjust scan for x86 with ia32, lp64 and - x32. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.dg/asm-hard-reg-5.c: Compile for x86 !ia32. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.dg/asm-hard-reg-4.c: Compile with -msse2 for x86 and scan - x86. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.dg/asm-hard-reg-2.c: Compile for x86 !ia32 and scan x86. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.dg/asm-hard-reg-1.c: Adjust scan for x86 with ia32, x32 and - lp64. - -2025-08-10 Harish Sadineni <Harish.Sadineni@windriver.com> - - PR target/118885 - * gcc.target/i386/pr90579.c: add -fno-pie to dg-options - to fix tests when PIE is enabled. - -2025-08-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * lib/multiline.exp: Added pruning of .exe. - -2025-08-09 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/121205 - * gcc.target/i386/asm-hard-reg-2.c (z): Use long long for -m32 - to trigger RA error. - -2025-08-09 Dimitar Dimitrov <dimitar@dinux.eu> - - * g++.dg/modules/class-11_a.H: Skip test for effective - default_packed targets. - * g++.dg/modules/class-11_b.C: Ditto. - -2025-08-09 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121182 - * gfortran.dg/generic_stmt_1.f90: New test. - * gfortran.dg/generic_stmt_2.f90: New test. - * gfortran.dg/generic_stmt_3.f90: New test. - * gfortran.dg/generic_stmt_4.f90: New test. - -2025-08-09 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/torture/hardbool-ai.c: Require target that supports - atomic operations on int types. - -2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120599 - * g++.dg/torture/noncall-eh-1.C: New test. - -2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118946 - PR tree-optimization/121422 - * gcc.dg/pr118946-1.c: New test. - * gcc.dg/torture/pr121422-1.c: New test. - * gcc.dg/torture/pr121422-2.c: New test. - -2025-08-08 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/116253 - * g++.dg/concepts/nested-diagnostics-1-truncated.C: Update for - renamed keys to -fdiagnostics-set-output=text - * g++.dg/concepts/nested-diagnostics-1.C: Likewise. - * g++.dg/concepts/nested-diagnostics-2.C: Likewise. - * gcc.dg/plugin/diagnostic-test-nesting-no-show-nesting.c: New - test. - * gcc.dg/plugin/diagnostic-test-nesting-show-nesting.c: New test. - * gcc.dg/plugin/diagnostic-test-nesting-text-indented-show-levels.c: - Update for renamed keys to -fdiagnostics-set-output=text. - * gcc.dg/plugin/diagnostic-test-nesting-text-indented-unicode.c: - Likewise. - * gcc.dg/plugin/diagnostic-test-nesting-text-indented.c: Likewise. - * gcc.dg/plugin/plugin.exp: Add the new tests. - -2025-08-08 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/120977 - * gcc.target/arm/cmse/cmse-18.c: Check only the case when FPCXT is - not enabled. - * gcc.target/arm/cmse/cmse-19.c: New test. - -2025-08-08 Pengfei Li <Pengfei.Li2@arm.com> - - PR target/121449 - * g++.target/aarch64/sve/pr121449.C: New test. - -2025-08-08 Alex Coplan <alex.coplan@arm.com> - - PR target/120986 - * gcc.target/aarch64/torture/pr120986-2.c: New test. - -2025-08-08 Alex Coplan <alex.coplan@arm.com> - - PR target/120986 - * gcc.target/aarch64/pr120986-1.c: New test. - -2025-08-08 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121389 - * c-c++-common/asan/pr121389-1.c: New test. - * c-c++-common/asan/pr121389-2.c: New test. - * c-c++-common/asan/pr121389-3.c: New test. - * c-c++-common/asan/pr121389-4.c: New test. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/117783 - * g++.dg/cpp26/decomp13.C: New test. - * g++.dg/cpp26/decomp14.C: New test. - * g++.dg/cpp26/decomp15.C: New test. - * g++.dg/cpp26/decomp16.C: New test. - * g++.dg/cpp26/decomp17.C: New test. - * g++.dg/cpp26/decomp18.C: New test. - * g++.dg/cpp26/decomp19.C: New test. - * g++.dg/cpp26/decomp20.C: New test. - * g++.dg/cpp26/decomp21.C: New test. - * g++.dg/cpp26/feat-cxx26.C (__cpp_structured_bindings): Expect - 202411 rather than 202403. - -2025-08-07 Richard Sandiford <richard.sandiford@arm.com> - - PR target/121414 - * gcc.target/aarch64/sme/pr121414_1.c: New test. - -2025-08-07 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120718 - * gcc.target/aarch64/sve/acle/general/pr120718.c: New test. - -2025-08-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121405 - * gcc.dg/tree-ssa/ssa-fre-107.c: New testcase. - * gcc.target/i386/pr90579.c: Adjust. - -2025-08-07 Pengfei Li <Pengfei.Li2@arm.com> - - * gcc.target/aarch64/sve/peel_ind_11.c: New test. - * gcc.target/aarch64/sve/peel_ind_11_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_12.c: New test. - * gcc.target/aarch64/sve/peel_ind_12_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_13.c: New test. - * gcc.target/aarch64/sve/peel_ind_13_run.c: New test. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2577-1.C: New test. - * g++.dg/DRs/dr2577-2.C: New test. - * g++.dg/DRs/dr2577-2.h: New file. - * g++.dg/DRs/dr2577-3.C: New test. - * g++.dg/DRs/dr2577-3.h: New file. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2575.C: New test. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2576.C: New test. - -2025-08-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * gcc.dg/Wkeyword-macro-1.c: New test. - * gcc.dg/Wkeyword-macro-2.c: New test. - * gcc.dg/Wkeyword-macro-3.c: New test. - * gcc.dg/Wkeyword-macro-4.c: New test. - * gcc.dg/Wkeyword-macro-5.c: New test. - * gcc.dg/Wkeyword-macro-6.c: New test. - * gcc.dg/Wkeyword-macro-7.c: New test. - * gcc.dg/Wkeyword-macro-8.c: New test. - * gcc.dg/Wkeyword-macro-9.c: New test. - * g++.dg/warn/Wkeyword-macro-1.C: New test. - * g++.dg/warn/Wkeyword-macro-2.C: New test. - * g++.dg/warn/Wkeyword-macro-3.C: New test. - * g++.dg/warn/Wkeyword-macro-4.C: New test. - * g++.dg/warn/Wkeyword-macro-5.C: New test. - * g++.dg/warn/Wkeyword-macro-6.C: New test. - * g++.dg/warn/Wkeyword-macro-7.C: New test. - * g++.dg/warn/Wkeyword-macro-8.C: New test. - * g++.dg/warn/Wkeyword-macro-9.C: New test. - * g++.dg/warn/Wkeyword-macro-10.C: New test. - * g++.dg/opt/pr82577.C: Don't #define register to nothing for - C++17 and later. Instead define reg macro to nothing for C++17 - and later or to register and use it instead of register. - * g++.dg/modules/atom-preamble-3.C: Add -Wno-keyword-macro to - dg-additional-options. - * g++.dg/template/sfinae17.C (static_assert): Rename macro to ... - (my_static_assert): ... this. - (main): Use my_static_assert instead of static_assert. - -2025-08-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/bitint-1.c: New test. - * gcc.target/s390/bitint-2.c: New test. - * gcc.target/s390/bitint-3.c: New test. - * gcc.target/s390/bitint-4.c: New test. - -2025-08-06 Sam James <sam@gentoo.org> - - * g++.dg/cpp26/constexpr-new3.C: Escape '[' and ']'. - -2025-08-06 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/torture/hardbool-ai.c: New. - * gcc.dg/torture/hardbool-vi.c: New. - * gcc.dg/torture/hardbool.c: Handle NO_BITFIELDS. - (add1, preinc, postinc, sub1, predec, postdec): New. - (main): Exercise them. - -2025-08-06 Martin Uecker <uecker@tugraz.at> - - PR c/108931 - * gcc.dg/vla-tert-1.c: New test. - -2025-08-06 Patrick Palka <ppalka@redhat.com> - - PR c++/121231 - PR c++/119688 - PR c++/94511 - * g++.dg/abi/mangle82.C: New test. - * g++.dg/cpp2a/nontype-class73.C: New test. - -2025-08-06 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp26/constexpr-new3.C: Tweak diagnostic. - -2025-08-06 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/vect-gather-1.c: Adjust to hide N. - -2025-08-06 Tejas Belagod <tejas.belagod@arm.com> - - * gcc.target/aarch64/sve/acle/general/cops.c: Fix test. - -2025-08-06 Yang Yujie <yangyujie@loongson.cn> - - * gcc.dg/torture/bitint-84.c: New test. - -2025-08-06 Yang Yujie <yangyujie@loongson.cn> - - * gcc.dg/torture/bitint-83.c: New test. - -2025-08-06 Yang Yujie <yangyujie@loongson.cn> - - * gcc.dg/bitintext.h (BEXTC1): Define. Convert the copied - object back to the original type before comparison. - (BEXTC): Use BEXTC1 for both the signed and the unsigned case. - -2025-08-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121413 - * gcc.dg/torture/bitint-85.c: New test. - -2025-08-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121127 - * gcc.dg/bitint-125.c: New test. - -2025-08-06 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/c_f_pointer_shape_tests_2.f03: Use the new driver. - * gfortran.dg/c_f_pointer_shape_tests_4.f03: Ditto. - * gfortran.dg/c_f_pointer_shape_tests_4_driver.c: Removed. - * gfortran.dg/c_f_pointer_shape_tests_2_driver.c: Renamed to ... - * gfortran.dg/c_f_pointer_shape_tests_driver.c: ... this; format - with gcc style. - -2025-08-06 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * c-c++-common/cpp/comment-ff-1.c: New test. - * c-c++-common/cpp/comment-vtab-1.c: New test. - -2025-08-06 Martin Uecker <uecker@tugraz.at> - - PR c/121217 - * gcc.dg/pr121217.c: New test. - -2025-08-06 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/arch-unset-1.c: New test. - * gcc.target/riscv/arch-unset-2.c: New test. - * gcc.target/riscv/arch-unset-3.c: New test. - * gcc.target/riscv/arch-unset-4.c: New test. - * gcc.target/riscv/arch-unset-5.c: New test. - -2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> - - * c-c++-common/gomp/target-update-iterators-1.c: New. - * c-c++-common/gomp/target-update-iterators-2.c: New. - * c-c++-common/gomp/target-update-iterators-3.c: New. - -2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> - Andrew Stubbs <ams@baylibre.com> - - * c-c++-common/gomp/map-6.c (foo): Amend expected error message. - * c-c++-common/gomp/target-map-iterators-1.c: New. - * c-c++-common/gomp/target-map-iterators-2.c: New. - * c-c++-common/gomp/target-map-iterators-3.c: New. - * c-c++-common/gomp/target-map-iterators-4.c: New. - -2025-08-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/121234 - * gfortran.dg/pr121234.f90: New test. - -2025-08-05 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * g++.dg/cpp26/constexpr-new5.C: New test. - -2025-08-05 Mikael Morin <morin-mikael@orange.fr> - - * gfortran.dg/pointer_assign_16.f90: New test. - -2025-08-05 H.J. Lu <hjl.tools@gmail.com> - - PR target/121410 - * gcc.target/i386/pr121410.c: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/offset_of1.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/const-generics-1.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/generics8.rs: extra error message - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3546.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3885.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/const_generics_3.rs: this works now - * rust/compile/const_generics_5.rs: likewise - * rust/compile/const_generics_8.rs: move the failure to another test case - * rust/compile/const_generics_10.rs: New test. - * rust/compile/const_generics_11.rs: New test. - * rust/compile/const_generics_12.rs: New test. - * rust/compile/const_generics_13.rs: New test. - * rust/compile/const_generics_14.rs: New test. - * rust/compile/const_generics_15.rs: New test. - * rust/compile/const_generics_16.rs: New test. - * rust/compile/const_generics_9.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3960.rs: New test. - -2025-08-05 Ryutaro Okada <1015ryu88@gmail.com> - - * rust/compile/auto_traits2.rs: - emove warning for unused `self` parameter - * rust/compile/derive-debug1.rs: - emove warning for unused `self` parameter - * rust/compile/derive_macro1.rs: - Remove warning for unused `self` parameter - * rust/compile/format_args_basic_expansion.rs: - Remove warning for unused `self` parameter - * rust/compile/format_args_extra_comma.rs: - Remove warning for unused `self` parameter - * rust/compile/issue-2043.rs: - Remove warning for unused `self` parameter - * rust/compile/issue-2166.rs: - Remove warning for unused `self` parameter - * rust/compile/issue-2238.rs: - Remove warning for unused `self` parameter - * rust/compile/issue-2907.rs: - Remove warning for unused `self` parameter - * rust/compile/min_specialization1.rs: - Remove warning for unused `self` parameter - * rust/compile/name_resolution2.rs: - Remove warning for unused `self` parameter - * rust/compile/name_resolution4.rs: - Remove warning for unused `self` parameter - * rust/compile/torture/generics29.rs: - Remove warning for unused `self` parameter - * rust/compile/torture/generics30.rs: - Remove warning for unused `self` parameter - * rust/compile/torture/traits3.rs: - Remove warning for unused `self` parameter - * rust/compile/torture/traits7.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/impl_trait3.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/min_specialization2.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/trait10.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/trait11.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/trait12.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/trait13.rs: - Remove warning for unused `self` parameter - * rust/execute/torture/trait9.rs: - Remove warning for unused `self` parameter - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/while_let1.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/offset_of2.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/offset_of1.rs: New test. - -2025-08-05 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-4006.rs: New test. - -2025-08-05 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/execute/inline_asm_inout_ident.rs: New test. - * rust/execute/inline_asm_inout_var.rs: New test. - -2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-slicepattern-slice.rs: New file. - * rust/execute/torture/match-slicepattern-slice-1.rs: New file. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/try_block1.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/deferred_const_inference.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/glob_import_enum.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3915.rs: New test. - * rust/execute/torture/sip-hasher.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3916.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3978.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/parse_simple_path_fail_1.rs: New test. - * rust/compile/parse_simple_path_fail_2.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3524.rs: New test. - -2025-08-05 lishin <lishin1008@gmail.com> - - * rust/compile/loop_constant_context.rs: New test. - * rust/compile/issue-3618.rs: - -2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-slicepattern-array.rs: New file. - * rust/execute/torture/match-slicepattern-array-1.rs: New file. - -2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/slicepattern-size-mismatch.rs: New file. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/issue-2005.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-1048.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3144.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3599.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3876.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2680.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/derive_partial_ord1.rs: this is now fully supported - * rust/execute/torture/basic_partial_ord1.rs: add missing i32 impl - * rust/execute/torture/basic_partial_ord2.rs: likewise - * rust/compile/issue-3836.rs: New test. - * rust/execute/torture/issue-3836.rs: New test. - * rust/execute/torture/partial-ord-6.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3874.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/all-cast.rs: shows array capacity now - * rust/compile/arrays2.rs: likewise - * rust/compile/const3.rs: fix error message - * rust/compile/const_generics_3.rs: disable until typecheck we get proper errors now! - * rust/compile/usize1.rs: proper capacity error message - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/while_let_without_label.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/additional-trait-bounds2nr2.rs: Remove - -frust-name-resolution-2.0 usage. - * rust/compile/const_generics_3.rs: Likewise. - * rust/compile/enum_variant_name.rs: Likewise. - * rust/compile/generics9.rs: Likewise. - * rust/compile/invalid_label_name.rs: Likewise. - * rust/compile/issue-3304.rs: Likewise. - * rust/compile/macros/mbe/macro-issue3708.rs: Likewise. - * rust/compile/macros/mbe/macro-issue3709-2.rs: Likewise. - * rust/compile/name_resolution10.rs: Likewise. - * rust/compile/name_resolution11.rs: Likewise. - * rust/compile/name_resolution12.rs: Likewise. - * rust/compile/name_resolution13.rs: Likewise. - * rust/compile/name_resolution14.rs: Likewise. - * rust/compile/name_resolution15.rs: Likewise. - * rust/compile/name_resolution16.rs: Likewise. - * rust/compile/name_resolution17.rs: Likewise. - * rust/compile/name_resolution18.rs: Likewise. - * rust/compile/name_resolution20.rs: Likewise. - * rust/compile/name_resolution22.rs: Likewise. - * rust/compile/name_resolution23.rs: Likewise. - * rust/compile/name_resolution24.rs: Likewise. - * rust/compile/name_resolution25.rs: Likewise. - * rust/compile/name_resolution6.rs: Likewise. - * rust/compile/name_resolution7.rs: Likewise. - * rust/compile/name_resolution8.rs: Likewise. - * rust/compile/name_resolution9.rs: Likewise. - * rust/compile/nested_macro_definition.rs: Likewise. - * rust/compile/pub_restricted_1.rs: Likewise. - * rust/compile/pub_restricted_2.rs: Likewise. - * rust/compile/self-in-impl.rs: Likewise. - * rust/compile/self_import_namespace.rs: Likewise. - * rust/compile/use_1.rs: Likewise. - * rust/compile/xfail/name_resolution21.rs: Likewise. - * rust/execute/torture/name_resolution.rs: Likewise. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/compile.exp: Removed. - * rust/compile/nr2/exclude: Removed. - -2025-08-05 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-restpattern-tuple-1.rs: New file. - * rust/compile/match-restpattern-tuple-2.rs: New file. - * rust/execute/torture/match-restpattern-tuple.rs: New file. - -2025-08-05 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/tuple_mismatch.rs: Include RestPattern in test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove issue-3315-2.rs. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove torture/alt_patterns1.rs. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/builtin/recurse2.rs: Match "abheyho\0" as - well as "abheyho", to handle slight differences in assembly - output for null-terminated strings. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3525.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3551.rs: New test. - -2025-08-05 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-tuplestructpattern.rs: New file. - * rust/execute/torture/match-tuplestructpattern.rs: New file. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove issue-3642.rs. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/silly-order-bug.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/issue-1481.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 puts out an extra error - * rust/compile/issue-3642.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/black_box.rs: Return 0 from main. - * rust/execute/match-identifierpattern-enum.rs: Move to... - * rust/execute/xfail/match-identifierpattern-enum.rs: ...here. - * rust/execute/execute.exp: New file. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/bug-with-default-generic.rs: New test. - * rust/execute/torture/partial-eq-1.rs: New test. - * rust/execute/torture/partial-eq-2.rs: New test. - * rust/execute/torture/partial-eq-3.rs: New test. - * rust/execute/torture/partial-eq-4.rs: New test. - * rust/execute/torture/partial-ord-1.rs: New test. - * rust/execute/torture/partial-ord-2.rs: New test. - * rust/execute/torture/partial-ord-3.rs: New test. - * rust/execute/torture/partial-ord-4.rs: New test. - * rust/execute/torture/partial-ord-5.rs: New test. - -2025-08-05 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-identifierpattern-enum.rs: New file. - * rust/execute/match-identifierpattern-enum.rs: New file. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive_partial_ord1.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/derive-partialeq2.rs: Add declaration for - discriminant_value. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/basic_partial_ord1.rs: New test. - * rust/execute/torture/basic_partial_ord2.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/const_generics_3.rs: - * rust/compile/issue-3660.rs: New test. - -2025-08-05 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/match-identifierpattern.rs: New file. - * rust/execute/torture/match-identifierpattern.rs: New file. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - * rust/compile/pub_restricted_1.rs: Adjust expected error - messages and only run with name resolution 2.0 enabled. - * rust/compile/pub_restricted_2.rs: Likewise. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove canonical_paths1.rs. - -2025-08-05 Vishruth-Thimmaiah <vishruththimmaiah@gmail.com> - - * rust/compile/torture/unended-raw-byte-string.rs: - New test to ensure correct error message for unended raw byte string. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-3671.rs: Remove usage of Self. - * rust/compile/nr2/exclude: Remove issue-3671.rs. - * rust/compile/self-in-impl.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-08-05 Vishruth-Thimmaiah <vishruththimmaiah@gmail.com> - - * rust/compile/torture/extern_mod2.rs: - New test to ensure an error is emitted for empty path attributes. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/const_block1.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/traits9.rs: update errors - * rust/compile/unify-errors1.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/bad-rpit1.rs: New test. - * rust/execute/torture/impl_rpit1.rs: New test. - * rust/execute/torture/impl_rpit2.rs: New test. - * rust/execute/torture/impl_rpit3.rs: New test. - -2025-08-05 Parthib <parthibdutta02@gmail.com> - - * lib/rust.exp: Remove timeout. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/torture/for-loop1.rs: Adjust paths. - * rust/execute/torture/for-loop2.rs: Likewise. - * rust/execute/torture/iter1.rs: Likewise. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/torture/builtin_abort.rs: Fix path to - intrinsics::abort. - -2025-08-05 Tom Schollenberger <tss2344@g.rit.edu> - - * rust/compile/issue-3661.rs: Test NR2 has expected behavior - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/meta-param.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/same_field_name.rs: Move to... - * rust/compile/same_field_name.rs: ...here and adjust expected - errors. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: these are fixed now - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-08-05 Tom Schollenberger <tss2344@g.rit.edu> - - * rust/compile/issue-3618.rs: Test empty loops error properly. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/impl_trait_generic_arg.rs: New test. - -2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/execute/torture/struct-pattern-match.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2015.rs: fully supported now - * rust/compile/nr2/exclude: nr2 cant handle some of these - * rust/compile/issue-1487.rs: New test. - * rust/compile/issue-3454.rs: New test. - * rust/execute/torture/impl_desugar-2.rs: New test. - * rust/execute/torture/impl_desugar.rs: New test. - * rust/execute/torture/impl_trait1.rs: New test. - * rust/execute/torture/impl_trait2.rs: New test. - * rust/execute/torture/impl_trait3.rs: New test. - * rust/execute/torture/impl_trait4.rs: New test. - * rust/execute/torture/issue-1482.rs: New test. - -2025-08-05 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/impl_trait_diag.rs: New test. - * rust/compile/issue-1485.rs: New test. - -2025-08-05 CohenArthur <cohenarthur.dev@gmail.com> - Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/execute/torture/derive-partialeq2.rs: Add missing terminating nul char. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/derive-partialeq2.rs: New test. - -2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/struct_pattern1.rs: New test. - -2025-08-05 Georg-Johann Lay <avr@gjlay.de> - - PR target/121359 - * gcc.target/avr/torture/pr118591-1.c: Remove -mlra. - * gcc.target/avr/torture/pr118591-2.c: Same. - -2025-08-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121395 - * gcc.dg/vect/pr59984.c: Adjust. - -2025-08-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121382 - * gcc.dg/torture/pr121382.c: New testcase. - -2025-08-05 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121370 - * gcc.dg/torture/pr121370.c: New testcase. - -2025-08-05 Yang Yujie <yangyujie@loongson.cn> - - * gcc.dg/bitintext.h (S, CEIL, PROMOTED_SIZE): Define. - (BEXTC): Generalize to only check extension within PROMOTED_SIZE bits. - -2025-08-05 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2579.C: New test. - * c-c++-common/cpp/va-opt-6.c: Expect ' rather than \" around - tokens in incorrect pasting diagnostics. - * gcc.dg/c23-attr-syntax-6.c: Likewise. - * gcc.dg/cpp/paste12.c: Likewise. - * gcc.dg/cpp/paste12-2.c: Likewise. - * gcc.dg/cpp/paste14.c: Likewise. - * gcc.dg/cpp/paste14-2.c: Likewise. - -2025-08-05 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u64.c: Add mulhu - asm check. - * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: Ditto. - -2025-08-04 Patrick Palka <ppalka@redhat.com> - - PR c++/121351 - * g++.dg/cpp2a/concepts-using6.C: New test. - -2025-08-04 Patrick Palka <ppalka@redhat.com> - - PR c++/121351 - PR c++/119859 - * g++.dg/cpp2a/concepts-using5.C: New test. - * g++.dg/cpp2a/concepts-using5a.C: New test. - -2025-08-04 Patrick Palka <ppalka@redhat.com> - - PR c++/120620 - * g++.dg/cpp2a/constexpr-dynamic19.C: New test. - * g++.dg/cpp2a/constexpr-dynamic1a.C: New test. - -2025-08-04 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/116253 - * gcc.dg/plugin/diagnostic-test-nesting-html.c: New test. - * gcc.dg/plugin/diagnostic-test-nesting-html.py: New test script. - * gcc.dg/plugin/plugin.exp: Add it. - * libgdiagnostics.dg/test-multiple-lines.c: Update expected output - to show fix-it hint. - * sarif-replay.dg/2.1.0-valid/nested-diagnostics-1.sarif: New test. - -2025-08-04 David Malcolm <dmalcolm@redhat.com> - - PR diagnostics/116792 - * gcc.dg/plugin/diagnostic-test-graphs-html.py: Remove trailing - space from expected text of message. - * sarif-replay.dg/2.1.0-valid/embedded-links-check-html.py: - Likewise. - * sarif-replay.dg/2.1.0-valid/graphs-check-html.py: Likewise. - -2025-08-04 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/121303 - * gcc.target/i386/pr121303.c: New test. - -2025-08-04 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2580.C: New test. - -2025-08-04 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr2578.C: New test. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/dupq_13.c: New test. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/dup_1.c: New test. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/pnext_3.c: New test. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve2/acle/general/match_4.c: New test. - * gcc.target/aarch64/sve2/acle/general/nmatch_1.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/acge_1.c: New test. - * gcc.target/aarch64/sve/acle/general/acgt_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/acle_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/aclt_1.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/cmpeq_6.c: New test. - * gcc.target/aarch64/sve/acle/general/cmpge_9.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_9.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_9.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_9.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpne_5.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpuo_1.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/cmpeq_5.c: New test. - * gcc.target/aarch64/sve/acle/general/cmpge_7.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpge_8.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_7.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_8.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_7.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_8.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_7.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_8.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpne_4.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/cmpeq_1.c: Check the number - of PTRUEs. - * gcc.target/aarch64/sve/acle/general/cmpge_5.c: New test. - * gcc.target/aarch64/sve/acle/general/cmpge_6.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_5.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_6.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_5.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_6.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_5.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_6.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpne_3.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/cmpeq_1.c: Add more tests. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/pred_clobber_1.c: Disable combine. - * gcc.target/aarch64/sve/pred_clobber_2.c: Likewise. - * gcc.target/aarch64/sve/pred_clobber_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpeq_2.c: Add more cases. - * gcc.target/aarch64/sve/acle/general/cmpeq_4.c: New test. - * gcc.target/aarch64/sve/acle/general/cmpge_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpge_2.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpge_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpge_4.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_2.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpgt_4.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_2.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmple_4.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_2.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmplt_4.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpne_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general/cmpne_2.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/unpkhi_1.c: New test. - * gcc.target/aarch64/sve/acle/general/unpklo_1.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - PR target/121294 - * gcc.target/aarch64/sve/acle/general/rev_2.c: New test. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - PR target/121294 - * gcc.target/aarch64/sve/acle/general/perm_2.c: New test. - * gcc.target/aarch64/sve/acle/general/perm_3.c: Likewise. - * gcc.target/aarch64/sve/acle/general/perm_4.c: Likewise. - * gcc.target/aarch64/sve/acle/general/perm_5.c: Likewise. - * gcc.target/aarch64/sve/acle/general/perm_6.c: Likewise. - * gcc.target/aarch64/sve/acle/general/perm_7.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/121118 - * gcc.target/aarch64/sve/acle/general/pr121118_1.c: New test. - * gcc.target/aarch64/sve/acle/general/whilele_13.c: Likewise. - * gcc.target/aarch64/sve/acle/general/whilelt_6.c: Likewise. - * gcc.target/aarch64/sve2/acle/general/whilege_1.c: Likewise. - * gcc.target/aarch64/sve2/acle/general/whilegt_1.c: Likewise. - * gcc.target/aarch64/sve2/acle/general/whilerw_5.c: Likewise. - * gcc.target/aarch64/sve2/acle/general/whilewr_5.c: Likewise. - -2025-08-04 Richard Sandiford <richard.sandiford@arm.com> - - PR target/121293 - * gcc.target/aarch64/sve/acle/general/dupq_lane_9.c: New test. - -2025-08-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121362 - * gcc.dg/tree-ssa/ssa-fre-105.c: New testcase. - * gcc.dg/tree-ssa/ssa-fre-106.c: Likewise. - -2025-08-04 H.J. Lu <hjl.tools@gmail.com> - - PR target/120941 - * gcc.target/i386/pr120941-1.c: New test. - -2025-08-03 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/120778 - * g++.dg/DRs/dr1709.C: New test. - -2025-08-03 Jakub Jelinek <jakub@redhat.com> - - PR c++/120845 - * g++.dg/modules/cpp-21.C: New test. - -2025-08-02 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/Warray-parameter-11.c: Change Warray-parameter to - -Wvla-parameter as these are VLAs. - * gcc.dg/Warray-parameter.c: Remove xfail. - -2025-08-01 Artemiy Granat <a.granat@ispras.ru> - - * gcc.target/i386/attributes-error.c: Change incorrect - sseregparm,fastcall combination to cdecl,fastcall. - -2025-08-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121322 - * gcc.dg/pr121322.c: New test. - -2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/108080 - * g++.dg/modules/pr108080.H: New test. - -2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121238 - * g++.dg/modules/merge-19.h: New test. - * g++.dg/modules/merge-19_a.H: New test. - * g++.dg/modules/merge-19_b.C: New test. - -2025-07-31 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/121314 - * gm2/errors/fail/badindrtype.mod: New test. - * gm2/errors/fail/badindrtype2.mod: New test. - -2025-07-31 Mikael Morin <morin-mikael@orange.fr> - - PR fortran/121342 - * gfortran.dg/class_elemental_1.f90: New test. - -2025-07-31 Jason Merrill <jason@redhat.com> - - PR c++/120800 - * g++.dg/cpp0x/constexpr-array30.C: New test. - -2025-07-31 Marek Polacek <polacek@redhat.com> - - PR c++/120775 - * g++.dg/cpp26/consteval-block1.C: New test. - * g++.dg/cpp26/consteval-block2.C: New test. - * g++.dg/cpp26/consteval-block3.C: New test. - * g++.dg/cpp26/consteval-block4.C: New test. - * g++.dg/cpp26/consteval-block5.C: New test. - * g++.dg/cpp26/consteval-block6.C: New test. - * g++.dg/cpp26/consteval-block7.C: New test. - * g++.dg/cpp26/consteval-block8.C: New test. - -2025-07-31 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for signed avg ceil. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add - test data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i8.c: New test. - -2025-07-31 Artemiy Granat <a.granat@ispras.ru> - - * gcc.target/i386/attributes-error.c: Add more attributes - combinations. - -2025-07-31 Artemiy Granat <a.granat@ispras.ru> - - * g++.dg/abi/regparm1.C: Require ia32 target. - * gcc.target/i386/20020224-1.c: Likewise. - * gcc.target/i386/pr103785.c: Use regparm attribute only if - not in 64-bit mode. - * gcc.target/i386/pr36533.c: Likewise. - * gcc.target/i386/pr59099.c: Likewise. - * gcc.target/i386/sibcall-8.c: Likewise. - * gcc.target/i386/sw-1.c: Likewise. - * gcc.target/i386/pr15184-2.c: Fix invalid comment. - * gcc.target/i386/attributes-ignore.c: New test. - -2025-07-31 Yury Khrustalev <yury.khrustalev@arm.com> - - * g++.target/aarch64/mv-cpu-features.C: new test. - -2025-07-31 Yury Khrustalev <yury.khrustalev@arm.com> - - * gcc.target/aarch64/ifunc-resolver.in: add core test functions. - * gcc.target/aarch64/ifunc-resolver-0.c: new test. - * gcc.target/aarch64/ifunc-resolver-1.c: ditto. - * gcc.target/aarch64/ifunc-resolver-2.c: ditto. - * gcc.target/aarch64/ifunc-resolver-3.c: ditto. - * gcc.target/aarch64/ifunc-resolver-4.c: as above. - -2025-07-31 Spencer Abson <spencer.abson@arm.com> - - PR target/121028 - * gcc.target/aarch64/sme/call_sm_switch_1.c: Tell check-function - -bodies not to ignore .inst directives, and replace the test for - "smstart sm" with one for it's encoding. - * gcc.target/aarch64/sme/call_sm_switch_11.c: Likewise. - * gcc.target/aarch64/sme/pr121028.c: New test. - -2025-07-31 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121264 - * gcc.dg/tree-ssa/pr121264.c: New test. - -2025-07-31 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/amax_f16_x2.c: Gate do-assemble on - assembler support for +faminmax and +sme2. - * gcc.target/aarch64/sme2/acle-asm/amax_f16_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amax_f32_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amax_f32_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amax_f64_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amax_f64_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f16_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f16_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f32_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f32_x4.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f64_x2.c: Likewise. - * gcc.target/aarch64/sme2/acle-asm/amin_f64_x4.c: Likewise. - * lib/target-supports.exp: Split the extensions that require SME into - a separate set, and use armv9-a as their baseline. - -2025-07-31 Jakub Jelinek <jakub@redhat.com> - - * gcc.target/i386/apx-1.c (apx_hanlder): Rename to ... - (apx_handler): ... this. - * gcc.target/i386/uintr-2.c (UINTR_hanlder): Rename to ... - (UINTR_handler): ... this. - * gcc.target/i386/uintr-5.c (UINTR_hanlder): Rename to ... - (UINTR_handler): ... this. - -2025-07-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/121291 - * g++.dg/ext/is_invocable7.C: New test. - * g++.dg/ext/is_nothrow_convertible5.C: New test. - -2025-07-30 Jason Merrill <jason@redhat.com> - - * g++.dg/tc1/dr49.C: Adjust diagnostic. - * g++.dg/template/func2.C: Likewise. - * g++.dg/cpp1z/nontype8.C: New test. - -2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/121236 - PR tree-optimization/121295 - * gcc.dg/torture/pr121236-1.c: New test. - * gcc.dg/torture/pr121295-1.c: New test. - -2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> - - Revert: - 2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/121236 - * gcc.dg/torture/pr121236-1.c: New test. - -2025-07-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/spaceship-fp-1.c: New test. - * gcc.target/s390/spaceship-fp-2.c: New test. - * gcc.target/s390/spaceship-fp-3.c: New test. - * gcc.target/s390/spaceship-fp-4.c: New test. - * gcc.target/s390/spaceship-int-1.c: New test. - * gcc.target/s390/spaceship-int-2.c: New test. - * gcc.target/s390/spaceship-int-3.c: New test. - -2025-07-30 H.J. Lu <hjl.tools@gmail.com> - - PR target/120427 - * gcc.target/i386/pr120427-5.c: New test. - -2025-07-30 Jan Hubicka <jh@suse.cz> - - * g++.dg/tree-prof/eh1.C: New test. - -2025-07-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121130 - * gcc.dg/vect/vect-simd-pr121130.c: New testcase. - -2025-07-30 Jakub Jelinek <jakub@redhat.com> - - PR c++/121133 - * g++.dg/warn/pr121133-1.C: New test. - * g++.dg/warn/pr121133-2.C: New test. - * g++.dg/warn/pr121133-3.C: New test. - * g++.dg/warn/pr121133-4.C: New test. - -2025-07-30 Jakub Jelinek <jakub@redhat.com> - - PR c++/120778 - * g++.dg/cpp/if-comma-1.C: New test. - -2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> - - PR tree-optimization/121020 - * gcc.dg/vect/vect-early-break_138-pr121020.c: New test. - -2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> - - PR tree-optimization/121190 - * gcc.dg/vect/vect-early-break_52.c: Update an unsafe test. - * gcc.dg/vect/vect-early-break_137-pr121190.c: New test. - -2025-07-30 Alfie Richards <alfie.richards@arm.com> - - PR target/121300 - * gcc.target/aarch64/pr121300.c: New test. - -2025-07-30 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_cond_fmla_1.c: Add test cases - for merging with multiplcand. - * gcc.target/aarch64/sve/unpacked_cond_fmls_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fnmla_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fnmls_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fmla_2.c: New test. - * gcc.target/aarch64/sve/unpacked_cond_fmls_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fnmla_2.c: Likewise.. - * gcc.target/aarch64/sve/unpacked_cond_fnmls_2.c: Likewise. - * g++.target/aarch64/sve/unpacked_cond_ternary_bf16_1.C: Likewise. - * g++.target/aarch64/sve/unpacked_cond_ternary_bf16_2.C: Likewise. - -2025-07-30 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_cond_fmla_1.c: New test. - * gcc.target/aarch64/sve/unpacked_cond_fmls_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fnmla_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fnmls_1.c: Likewise. - -2025-07-30 Yuao Ma <c8ef@outlook.com> - - * gfortran.dg/split_1.f90: New test. - * gfortran.dg/split_2.f90: New test. - * gfortran.dg/split_3.f90: New test. - * gfortran.dg/split_4.f90: New test. - -2025-07-30 Spencer Abson <spencer.abson@arm.com> - - * g++.target/aarch64/sve/unpacked_ternary_bf16_1.C: New test. - * g++.target/aarch64/sve/unpacked_ternary_bf16_2.C: Likewise. - * gcc.target/aarch64/sve/unpacked_fmla_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmla_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmls_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmls_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fnmla_1.c: Likeiwse. - * gcc.target/aarch64/sve/unpacked_fnmla_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fnmls_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fnmls_2.c: Likewise. - -2025-07-30 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr121274.c: New test. - -2025-07-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Add asm check - for unsigned avg ceil. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add - test data. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u8.c: New test. - -2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/121215 - * lib/profopt.exp (profopt-execute): Call cleanup-after-saved-dg-test - if returning early for the -fauto-profile case failing case. - -2025-07-29 Spencer Abson <spencer.abson@arm.com> - - * g++.target/aarch64/sve/unpacked_cond_binary_bf16_2.C: New test. - * gcc.target/aarch64/sve/unpacked_cond_builtin_fmax_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_builtin_fmin_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fadd_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fdiv_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fmaxnm_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fminnm_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fmul_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fsubr_2.c: Likewise. - -2025-07-29 H.J. Lu <hjl.tools@gmail.com> - - PR target/121208 - * gcc.target/i386/pr121208-1a.c (dg-options): Add -mno-80387. - * gcc.target/i386/pr121208-1b.c (dg-options): Likewise. - -2025-07-29 Juergen Christ <jchrist@linux.ibm.com> - - PR testsuite/121286 - PR testsuite/121288 - * gcc.dg/vect/pr112325.c: Adjust parameters for s390. - * gcc.dg/vect/pr117888-1.c: Ditto. - -2025-07-29 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/saturating_arithmetic_1.c: Allow w0 and w1 - to be duplicated in either order. - * gcc.target/aarch64/saturating_arithmetic_2.c: Likewise. - -2025-07-29 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/cmpbr.c: Support both operand orders - for 8-bit and 16-bit comparisons. - -2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/120660 - * gcc.dg/pr120660.c: New test. - -2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/119795 - * gcc.target/i386/pr119795.c: New test. - -2025-07-29 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u64.c: Add rv64 - target for run. - * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-2-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-2-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-2-u8-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u32.c: New test. - -2025-07-29 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120687 - * gcc.dg/vect/pr120687-3.c: New testcase. - -2025-07-29 Nathaniel Shead <nathanieloshead@gmail.com> - - PR testsuite/121285 - * g++.dg/modules/class-11_a.H: Make static_asserts valid for - C++14. - -2025-07-29 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120687 - * gcc.dg/vect/pr120687-1.c: New testcase. - * gcc.dg/vect/pr120687-2.c: Likewise. - -2025-07-29 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/121289 - * gm2/warnings/style/fail/badvarname.mod: New test. - * gm2/warnings/style/fail/warnings-style-fail.exp: New test. - -2025-07-29 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.dg/pr116906-1.c: Add 'dg-do run'. - * gcc.dg/pr116906-2.c: Likewise. - * gcc.dg/pr78185.c: Likewise. - -2025-07-29 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/121159 - * c-c++-common/pr121159.c: New test. - * gcc.dg/plugin/must-tail-call-2.c (test_5): Don't expect an error. - -2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/120523 - * gcc.dg/tree-ssa/cswtch-7.c: New test. - -2025-07-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/121236 - * gcc.dg/torture/pr121236-1.c: New test. - -2025-07-28 H.J. Lu <hjl.tools@gmail.com> - - PR target/121208 - * gcc.target/i386/pr121208-1a.c: New test. - * gcc.target/i386/pr121208-1b.c: Likewise. - * gcc.target/i386/pr121208-2a.c: Likewise. - * gcc.target/i386/pr121208-2b.c: Likewise. - * gcc.target/i386/pr121208-3a.c: Likewise. - * gcc.target/i386/pr121208-3b.c: Likewise. - -2025-07-28 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/march-map=sm_100.c: New. - * gcc.target/nvptx/march-map=sm_100a.c: Likewise. - * gcc.target/nvptx/march-map=sm_100f.c: Likewise. - * gcc.target/nvptx/march-map=sm_101.c: Likewise. - * gcc.target/nvptx/march-map=sm_101a.c: Likewise. - * gcc.target/nvptx/march-map=sm_101f.c: Likewise. - * gcc.target/nvptx/march-map=sm_103.c: Likewise. - * gcc.target/nvptx/march-map=sm_103a.c: Likewise. - * gcc.target/nvptx/march-map=sm_103f.c: Likewise. - * gcc.target/nvptx/march-map=sm_120.c: Likewise. - * gcc.target/nvptx/march-map=sm_120a.c: Likewise. - * gcc.target/nvptx/march-map=sm_120f.c: Likewise. - * gcc.target/nvptx/march-map=sm_121.c: Likewise. - * gcc.target/nvptx/march-map=sm_121a.c: Likewise. - * gcc.target/nvptx/march-map=sm_121f.c: Likewise. - -2025-07-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121256 - * gcc.dg/vect/vect-recurr-pr121256.c: New testcase. - * gcc.dg/vect/vect-recurr-pr121256-2.c: Likewise. - -2025-07-27 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/121185 - * gfortran.dg/assign_14.f90: New test. - -2025-07-27 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/121185 - * gfortran.dg/assign_13.f90: New test. - -2025-07-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i8.c: New test. - -2025-07-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-07-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper - macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i8.c: New test. - -2025-07-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: - Add zvfh requirements and options. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: - Ditto. - -2025-07-27 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/class-11_a.H: New test. - * g++.dg/modules/class-11_b.C: New test. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Eliminate - digraphs::lazy_digraph and digraphs::lazy_digraphs in favor of - lazily_created template. - * gcc.dg/plugin/diagnostic_plugin_test_metadata.cc: Define - INCLUDE_VECTOR since diagnostics/metadata.h now requires it. - * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_show_trees.cc: Make - diagnostics::context::m_source_printing private. - * gcc.dg/plugin/diagnostic_plugin_test_inlining.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_string_literals.cc: - Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_tree_expression_range.cc: - Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. - * gcc.dg/plugin/expensive_selftests_plugin.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/plugin/show_template_tree_color_plugin.cc: Update usage - of "diagnostic_info" to explicitly refer to - "diagnostics::diagnostic_info". - * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. - * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update for - file_cache and char_span moving from input.h to - diagnostics/file-cache.h and into the "diagnostics::" namespace. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update for - diagnostic_t becoming enum class diagnostics::kind. - * gcc.dg/plugin/expensive_selftests_plugin.cc: Likewise. - * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. - * lib/gcc-dg.exp: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for change - from edit-context.h to changes.h. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for move of - selftest::test_diagnostic_context to - diagnostics::selftest::test_context. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Update for move of - diagnostic-color.h to diagnostics/color.h. - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for move of - selftest-diagnostic.h to diagnostics/selftest-context.h. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/plugin/show_template_tree_color_plugin.cc: Update for - moves to namespace diagnostics. - * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. - * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update to - add "m_" prefix to fields of diagnostic_info throughout. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/plugin/show-template-tree-color-labels.C: Update for - moves to "source-printing". - * gcc.dg/plugin/diagnostic-test-show-locus.py: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_group_plugin.cc: Update for move of - diagnostics output formats into namespace "diagnostics" as - "sinks". - * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. - * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_gil_plugin.cc: Update #include for - "diagnostic-path.h" moving to "diagnostics/paths.h", - diagnostic_thread_id_t to diagnostics::paths::thread_id_t, - diagnostic_event_id_t to diagnostics::paths::event_id_t, - diagnostic_path to diagnostics::paths::path, and - diagnostic_thread to diagnostics::paths::thread, and - diagnostic_event to diagnostics::paths::event. - * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. - * lib/sarif.py (get_state_graph): Update property prefix for - threadFlowLocations from "gcc/diagnostic_event/" to - "gcc/diagnostics/paths/event/". - * gcc.dg/sarif-output/include-chain-2.h: Update comment. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/expensive_selftests_plugin.cc: Update #include for - move of edit-context.h to diagnostics subdir. Update - for move of edit_context to diagnostics::edit_context. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_text_art.cc: Update - #include for move of "diagnostic-diagram.h" to - "diagnostics/diagram.h". Update for move of diagnostic_diagram to - diagnostics::diagram. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: : Update #include for - move of "diagnostic-metadata.h" to "diagnostics/metadata.h" - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Likewise. Also - update for move of diagnostic_metadata to diagnostics::metadata. - * gcc.dg/plugin/diagnostic_plugin_test_metadata.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. - -2025-07-25 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Update #include - for move of "diagnostic-digraphs.h" to "diagnostics/digraphs.h". - -2025-07-25 Patrick Palka <ppalka@redhat.com> - - * g++.dg/lookup/operator-8.C: Remove XFAILs and properly - suppress all -Wunused-result warnings. - -2025-07-25 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/121219 - * g++.dg/coroutines/torture/pr121219.C: New test. - -2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> - - * gcc.target/riscv/interrupt-conflict-mode.c: Remove "user" - interrupts. - * gcc.target/riscv/xtheadint-push-pop.c: Likewise. - * gcc.target/riscv/interrupt-umode.c: Removed. - -2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> - - * gcc.target/riscv/interrupt-rnmi.c: New test. - -2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117294 - PR c++/113854 - * g++.dg/cpp2a/concepts-traits3.C: Adjust diagnostics. - * g++.dg/cpp2a/concepts-traits4.C: New test. - * g++.dg/diagnostic/static_assert5.C: New test. - * g++.dg/ext/has_virtual_destructor2.C: New test. - * g++.dg/ext/is_assignable2.C: New test. - * g++.dg/ext/is_constructible9.C: New test. - * g++.dg/ext/is_convertible7.C: New test. - * g++.dg/ext/is_destructible3.C: New test. - * g++.dg/ext/is_invocable6.C: New test. - * g++.dg/ext/is_virtual_base_of_diagnostic2.C: New test. - -2025-07-24 Jason Merrill <jason@redhat.com> - - PR c++/114632 - PR c++/101233 - * g++.dg/cpp23/explicit-obj-lambda18.C: New test. - * g++.dg/cpp23/static-operator-call7.C: New test. - -2025-07-24 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/_-static__compilation.cob: Modify for -static warning. - * cobol.dg/group2/_-static__compilation.out: Removed. - -2025-07-24 Robin Dapp <rdapp@ventanamicro.com> - - * lib/target-supports.exp: Fix misalignment check. - -2025-07-24 Spencer Abson <spencer.abson@arm.com> - - * g++.target/aarch64/sve/unpacked_cond_binary_bf16_1.C: New test. - * gcc.target/aarch64/sve/unpacked_cond_builtin_fmax_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_builtin_fmin_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fadd_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fdiv_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fmaxnm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fminnm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fmul_1.c: Likewise.. - * gcc.target/aarch64/sve/unpacked_cond_fsubr_1.c: Likewise. - -2025-07-24 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_fdiv_1.c: New test. - * gcc.target/aarch64/sve/unpacked_fdiv_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fdiv_3.c: Likewise. - -2025-07-24 Spencer Abson <spencer.abson@arm.com> - - * g++.target/aarch64/sve/unpacked_binary_bf16_1.C: New test. - * g++.target/aarch64/sve/unpacked_binary_bf16_2.C: Likewise. - * gcc.target/aarch64/sve/unpacked_builtin_fmax_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_builtin_fmax_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_builtin_fmin_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_builtin_fmin_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fadd_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fadd_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmaxnm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmaxnm_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fminnm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fminnm_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmul_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fmul_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fsubr_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fsubr_2.c: Likewise. - -2025-07-24 Jeevitha Palanisamy <jeevitha@linux.ibm.com> - - PR testsuite/119382 - * gcc.target/powerpc/vsx-builtin-7.c: Add '-fno-ipa-icf' to dg-options. - -2025-07-24 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm.h: New test. - -2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120412 - * g++.dg/modules/internal-14_a.C: New test. - * g++.dg/modules/internal-14_b.C: New test. - * g++.dg/modules/internal-14_c.C: New test. - -2025-07-23 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_cond_fabs_1.c: New test. - * gcc.target/aarch64/sve/unpacked_cond_fneg_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frinta_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frinta_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frinti_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frintm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frintp_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frintx_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_frintz_1.c: Likewise. - -2025-07-23 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_fabs_1.c: New test. - * gcc.target/aarch64/sve/unpacked_fneg_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frinta_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frinta_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frinti_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frinti_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintm_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintm_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintp_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintp_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintx_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintx_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintz_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_frintz_2.c: Likewise. - -2025-07-23 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_cond_cvtf_1.c: New test. - * gcc.target/aarch64/sve/unpacked_cond_fcvt_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cond_fcvtz_1.c: Likewise. - -2025-07-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121203 - * gfortran.dg/function_charlen_4.f90: New test. - -2025-07-23 Robin Dapp <rdapp@ventanamicro.com> - - PR target/121073 - * gcc.target/riscv/rvv/autovec/vls-vlmax/repeat-6.c: Adjust test - expectation. - * gcc.target/riscv/rvv/base/scalar_move-5.c: Ditto. - * gcc.target/riscv/rvv/base/scalar_move-6.c: Ditto. - * gcc.target/riscv/rvv/base/scalar_move-7.c: Ditto. - * gcc.target/riscv/rvv/base/scalar_move-8.c: Ditto. - * gcc.target/riscv/rvv/base/scalar_move-9.c: Ditto. - * gcc.target/riscv/rvv/pr121073.c: New test. - -2025-07-23 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: - Add zvfh requirements and options. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: - Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: - Ditto. - * lib/target-supports.exp: Add zvfh options. - -2025-07-23 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/120119 - * g++.dg/torture/pr120119-1.C: New test. - -2025-07-23 Patrick Palka <ppalka@redhat.com> - - PR c++/121179 - * g++.dg/lookup/operator-8.C: Strengthen test and remove one - XFAIL. - -2025-07-23 Patrick Palka <ppalka@redhat.com> - - PR c++/121055 - * g++.dg/ext/is_invocable5.C: New test. - -2025-07-23 Spencer Abson <spencer.abson@arm.com> - - * lib/gcc-defs.exp (aarch64-arg-dg-options): Split add_tune into - add_tune and add_override, so that specifying -moverride does not - change the baseline tuning from the testuite's default (generic). - -2025-07-23 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121220 - * gcc.dg/tree-ssa/ssa-sink-23.c: New testcase. - -2025-07-23 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/119085 - * gcc.dg/tree-ssa/pr119085.c: New test. - -2025-07-23 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/121164 - * gm2/switches/pedantic-params/fail/arrayofchar.def: New test. - * gm2/switches/pedantic-params/fail/arrayofchar.mod: New test. - -2025-07-23 Richard Biener <rguenther@suse.de> - - PR middle-end/121216 - * gcc.dg/pr121216.c: New testcase. - -2025-07-23 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/120101 - * gcc.dg/tree-ssa/pr81627.c (fn1): Mark as noinline. - -2025-07-23 Siddhesh Poyarekar <siddhesh@gotplt.org> - - * gcc.dg/vect/pr116125.c (mem_overlap): Expand A to 10 members. - -2025-07-22 Jason Merrill <jason@redhat.com> - - PR c++/121068 - * g++.dg/cpp2a/constexpr-union6.C: Expect x5 to work. - * g++.dg/cpp26/constexpr-new4.C: New test. - -2025-07-22 Jason Merrill <jason@redhat.com> - - * g++.dg/warn/Wmismatched-new-delete-5.C: Fix allocation. - -2025-07-22 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/109267 - * lib/target-supports.exp (check_effective_target_trap): New proc. - * g++.dg/missing-return.C: Update testcase for the !trap case. - * gcc.dg/pr109267-1.c: New test. - * gcc.dg/pr109267-2.c: New test. - -2025-07-22 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/sve/mask_load_2.c: Update tests. - -2025-07-22 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/sve/mask_load_2.c: New test. - -2025-07-22 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121202 - * gcc.dg/pr121202.c: New testcase. - -2025-07-22 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/slp-28.c: Adjust. - -2025-07-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/110949 - PR tree-optimization/95906 - * gcc.dg/tree-ssa/cmp-2.c: New test. - * gcc.dg/tree-ssa/max-bitcmp-1.c: New test. - -2025-07-21 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u64.c: New test. - -2025-07-21 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-07-21 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u8.c: New test. - -2025-07-21 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/mf8_data_1.c (test_set_lane4, - test_setq_lane4): Relax allowed assembly. - * gcc.target/aarch64/vec-set-zero.c: Use -Os in flags. - * gcc.target/aarch64/inszero_split_1.c: New test. - -2025-07-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121194 - * gcc.dg/torture/pr121194.c: New testcase. - -2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/pr87600-2.c: Split test into two files since errors for - functions test{0,1} are thrown during expand, and for - test{2,3} during gimplification. - * lib/scanasm.exp: On s390, skip lines beginning with #. - * gcc.dg/asm-hard-reg-error-1.c: New test. - * gcc.dg/asm-hard-reg-error-2.c: New test. - * gcc.dg/asm-hard-reg-error-3.c: New test. - * gcc.dg/asm-hard-reg-error-4.c: New test. - * gcc.dg/asm-hard-reg-error-5.c: New test. - * gcc.dg/pr87600-3.c: New test. - * gcc.target/aarch64/asm-hard-reg-2.c: New test. - * gcc.target/s390/asm-hard-reg-7.c: New test. - -2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/asm-hard-reg-1.c: New test. - * gcc.dg/asm-hard-reg-2.c: New test. - * gcc.dg/asm-hard-reg-3.c: New test. - * gcc.dg/asm-hard-reg-4.c: New test. - * gcc.dg/asm-hard-reg-5.c: New test. - * gcc.dg/asm-hard-reg-6.c: New test. - * gcc.dg/asm-hard-reg-7.c: New test. - * gcc.dg/asm-hard-reg-8.c: New test. - * gcc.target/aarch64/asm-hard-reg-1.c: New test. - * gcc.target/i386/asm-hard-reg-1.c: New test. - * gcc.target/i386/asm-hard-reg-2.c: New test. - * gcc.target/s390/asm-hard-reg-1.c: New test. - * gcc.target/s390/asm-hard-reg-2.c: New test. - * gcc.target/s390/asm-hard-reg-3.c: New test. - * gcc.target/s390/asm-hard-reg-4.c: New test. - * gcc.target/s390/asm-hard-reg-5.c: New test. - * gcc.target/s390/asm-hard-reg-6.c: New test. - * gcc.target/s390/asm-hard-reg-longdouble.h: New test. - -2025-07-21 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/vect-127.c: New testcase. - -2025-07-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119106 - * gfortran.dg/array_constructor_58.f90: New test. - -2025-07-21 panciyan <panciyan@eswincomputing.com> - - * gcc.target/riscv/sat/sat_arith.h: Unsigned testcase form8 form9. - * gcc.target/riscv/sat/sat_u_add-8-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-8-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-8-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-8-u8.c: New test. - * gcc.target/riscv/sat/sat_u_add-9-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-9-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-9-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-9-u8.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-8-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-8-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-8-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-8-u8.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-9-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-9-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-9-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-9-u8.c: New test. - -2025-07-20 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/120859 - * gcc.dg/tree-prof/afdo-crossmodule-1b.c: Add some dg-* - commands like what is in afdo-crossmodule-1.c - -2025-07-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i32.c: - Leverage DEF_AVG_0_WRAP to generate the correct func name. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i32-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i64-from-i128.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i32-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i64-from-i128.c: Ditto. - -2025-07-19 Dimitar Dimitrov <dimitar@dinux.eu> - - PR target/121124 - * gcc.target/pru/pragma-ctable_entry-2.c: New test. - -2025-07-19 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwnmacc and - vfwnmsac. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f32.c: New test. - -2025-07-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/121145 - * gfortran.dg/pointer_check_15.f90: New test. - -2025-07-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/121153 - * gcc.dg/vect/vect-reduc-cond-1.c: Require vect_condition. - * gcc.dg/vect/vect-reduc-cond-2.c: Likewise. - -2025-07-18 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/avg_data.h: Adjust the test data. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i64-from-i128.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i64-from-i128.c: New test. - -2025-07-18 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/117423 - * gcc.dg/tree-ssa/pr117423.c: New test. - -2025-07-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121126 - * gcc.dg/vect/pr121126.c: New testcase. - -2025-07-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120924 - * gcc.dg/uninit-pr120924.c: New testcase. - -2025-07-18 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/121131 - * gcc.dg/bitint-124.c: New test. - -2025-07-17 Jason Merrill <jason@redhat.com> - - PR c++/87097 - * g++.dg/cpp0x/constexpr-array29.C: New test. - -2025-07-17 Richard Sandiford <richard.sandiford@arm.com> - Yury Khrustalev <yury.khrustalev@arm.com> - - * lib/target-supports.exp (add_options_for_aarch64_sme) - (check_effective_target_aarch64_sme_hw): New procedures. - * g++.target/aarch64/sme/sme_throw_1.C: New test. - * g++.target/aarch64/sme/sme_throw_2.C: Likewise. - -2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c: Adapt - scan assembler directives. - * gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c: Ditto. - * gcc.target/s390/signbit-1.c: New test. - * gcc.target/s390/signbit-2.c: New test. - * gcc.target/s390/signbit-3.c: New test. - * gcc.target/s390/signbit-4.c: New test. - * gcc.target/s390/signbit-5.c: New test. - * gcc.target/s390/signbit.h: New test. - -2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vlgv-zero-extend-1.c: New test. - -2025-07-17 Xi Ruoyao <xry111@xry111.site> - - PR target/121064 - * gcc.target/loongarch/pr121064.c: New test. - -2025-07-17 Richard Biener <rguenther@suse.de> - - * gcc.dg/vect/bb-slp-39.c: Adjust. - -2025-07-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121035 - * gcc.dg/pr121035.c: New testcase. - -2025-07-16 Uros Bizjak <ubizjak@gmail.com> - - PR target/121062 - * gcc.target/i386/pr121062-1.c: New test. - * gcc.target/i386/pr121062-2.c: Likewise. - * gcc.target/i386/pr121062-3a.c: Likewise. - * gcc.target/i386/pr121062-3b.c: Likewise. - * gcc.target/i386/pr121062-3c.c: Likewise. - * gcc.target/i386/pr121062-4.c: Likewise. - * gcc.target/i386/pr121062-5.c: Likewise. - * gcc.target/i386/pr121062-6.c: Likewise. - * gcc.target/i386/pr121062-7.c: Likewise. - -2025-07-16 H.J. Lu <hjl.tools@gmail.com> - - PR target/120881 - PR testsuite/121078 - * gcc.dg/20021014-1.c (dg-additional-options): Add -mfentry - -fno-pic only on gnu/x86 targets. - * gcc.dg/aru-2.c (dg-additional-options): Likewise. - * gcc.dg/nest.c (dg-additional-options): Likewise. - * gcc.dg/pr32450.c (dg-additional-options): Likewise. - * gcc.dg/pr43643.c (dg-additional-options): Likewise. - * gcc.target/i386/pr104447.c (dg-additional-options): Likewise. - * gcc.target/i386/pr113122-3.c(dg-additional-options): Likewise. - * gcc.target/i386/pr119386-1.c (dg-additional-options): Add - -mfentry only on gnu targets. - * gcc.target/i386/pr119386-2.c (dg-additional-options): Likewise. - -2025-07-16 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121049 - * gcc.dg/vect/pr121049.c: New testcase. - -2025-07-16 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/119920 - PR tree-optimization/112324 - PR tree-optimization/110015 - * gcc.dg/vect/vect-reduc-cond-1.c: New test. - * gcc.dg/vect/vect-reduc-cond-2.c: New test. - * gcc.dg/vect/vect-reduc-cond-3.c: New test. - -2025-07-16 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121116 - * gcc.dg/torture/pr121116.c: New testcase. - -2025-07-16 Spencer Abson <spencer.abson@arm.com> - - PR target/117850 - * gcc.target/aarch64/simd/vabal_combine.c: Removed. This is - covered by fold_to_highpart_1.c - * gcc.target/aarch64/simd/fold_to_highpart_1.c: New test. - * gcc.target/aarch64/simd/fold_to_highpart_2.c: Likewise. - * gcc.target/aarch64/simd/fold_to_highpart_3.c: Likewise. - * gcc.target/aarch64/simd/fold_to_highpart_4.c: Likewise. - * gcc.target/aarch64/simd/fold_to_highpart_5.c: Likewise. - * gcc.target/aarch64/simd/fold_to_highpart_6.c: Likewise. - -2025-07-16 Alfie Richards <alfie.richards@arm.com> - - * g++.dg/warn/Wformat-gcc_diag-1.C: Add string_slice "%B" format tests. - -2025-07-16 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/121065 - * gcc.target/arm/pr121065.c: New test. - -2025-07-16 Robin Dapp <rdapp@ventanamicro.com> - - PR target/120297 - * gcc.target/riscv/rvv/pr120297.c: New test. - -2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/sve2/eon_bsl2n.c: New test. - -2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/sve2/nbsl_nor_nand_neon.c: New test. - -2025-07-16 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/121060 - * gfortran.dg/associate_75.f90: New test. - -2025-07-16 Steve Kargl <sgk@troutmask.apl.washington.edu> - - * gfortran.dg/import13.f90: New test. - -2025-07-16 Jeremy Rifkin <jeremy@rifkin.dev> - - PR c/82134 - * c-c++-common/attr-warn-unused-result-2.c: New test. - -2025-07-16 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/amxavx512-cvtrowd2ps-2.c: Add -mavx512fp16 to - use FP16 related intrins for convert. - * gcc.target/i386/amxavx512-cvtrowps2bf16-2.c: Ditto. - * gcc.target/i386/amxavx512-cvtrowps2ph-2.c: Ditto. - * gcc.target/i386/amxavx512-movrow-2.c: Ditto. - -2025-07-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_s_add-1-i16.c: Remove function-body - check and add no jmp label asm check. - * gcc.target/riscv/sat/sat_s_add-1-i32.c: - * gcc.target/riscv/sat/sat_s_add-1-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-1-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-2-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-2-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-2-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-2-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-3-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-3-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-3-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-3-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-4-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-4-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-4-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-4-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-1-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-1-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-1-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-1-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-2-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-2-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-2-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add_imm-2-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-1-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-1-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-1-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-1-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-2-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-2-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-2-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-2-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-3-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-3-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-3-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-3-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-4-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-4-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-4-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-4-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-6-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u16-from-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u16-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u32-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-10-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-10-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-10-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-10-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-11-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-11-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-11-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-11-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-12-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-12-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-12-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-12-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-6-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-7-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-7-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-7-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-7-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-8-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-8-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-8-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-8-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-9-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-9-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-9-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-9-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-4.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-4.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u64-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u64-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-4.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u64-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-3.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u16-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u16-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u32-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u32-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u8-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u8-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u16-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u16-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u32-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u32-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u8-1.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u8-2.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-6-u8.c: Ditto. - -2025-07-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/avg.h: Add int128 type when - xlen == 64. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i32.c: - Suppress __int128 warning for run test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i32-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_data.h: Fix one incorrect - test data. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i32-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i64-from-i128.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i64-from-i128.c: New test. - -2025-07-15 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/120792 - * libgdiagnostics.dg/sarif.py: Delete duplicate script. - * libgdiagnostics.dg/test-message-buffer-c.py: New test script. - * libgdiagnostics.dg/test-message-buffer.c: New test. - * libgdiagnostics.dg/test-warning-with-path-c.py: Update expected - output to reflect that SARIF for event messages now contains JSON - pointers when referring to other events by ID. - * sarif-replay.dg/2.1.0-valid/3.11.6-embedded-links.sarif: Add - HTML and SARIF output, and call out to Python scripts to verify - the output. Add example of a result with a link in its message. - * sarif-replay.dg/2.1.0-valid/embedded-links-check-html.py: New - test script. - * sarif-replay.dg/2.1.0-valid/embedded-links-check-sarif-roundtrip.py: - New test script. - -2025-07-15 Umesh Kalappa <ukalappa.mips@gmail.com> - - * gcc.target/riscv/mipscondmov.c: Test file for mips.ccmov insn. - -2025-07-15 Jason Merrill <jason@redhat.com> - - PR c++/120577 - * g++.dg/cpp2a/constexpr-union9.C: New test. - -2025-07-15 Jason Merrill <jason@redhat.com> - - PR c++/117784 - * g++.dg/cpp26/decomp25.C: Add -fno-implicit-constexpr. - -2025-07-15 Kwok Cheung Yeung <kcyeung@baylibre.com> - - PR fortran/104428 - * gfortran.dg/gomp/pr104428.f90: New. - -2025-07-15 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - * gcc.target/aarch64/avoid-store-forwarding-be.c: New test. - -2025-07-15 Soumya AR <soumyaa@nvidia.com> - - * gcc.target/aarch64/ldapr-sext.c: Update expected output to include - offsets. - * gcc.target/aarch64/ldapur.c: New test for LDAPUR. - * gcc.target/aarch64/ldapur_avoid.c: New test for AVOID_LDAPUR flag. - -2025-07-15 Richard Biener <rguenther@suse.de> - Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/121059 - * gcc.dg/vect/pr121059.c: New testcase. - -2025-07-15 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c/44677 - * c-c++-common/Wunused-parm-1.c: New test. - * c-c++-common/Wunused-parm-2.c: New test. - * c-c++-common/Wunused-parm-3.c: New test. - * c-c++-common/Wunused-parm-4.c: New test. - * c-c++-common/Wunused-parm-5.c: New test. - * c-c++-common/Wunused-parm-6.c: New test. - * c-c++-common/Wunused-var-7.c (bar, baz): Expect warning on a. - * c-c++-common/Wunused-var-19.c: New test. - * c-c++-common/Wunused-var-20.c: New test. - * c-c++-common/Wunused-var-21.c: New test. - * c-c++-common/Wunused-var-22.c: New test. - * c-c++-common/Wunused-var-23.c: New test. - * c-c++-common/Wunused-var-24.c: New test. - * g++.dg/cpp26/name-independent-decl1.C (foo): Expect one - set but not used warning. - * g++.dg/warn/Wunused-parm-12.C: New test. - * g++.dg/warn/Wunused-parm-13.C: New test. - * g++.dg/warn/Wunused-var-2.C (f2): Expect set but not used warning - on parameter x and variable a. - * g++.dg/warn/Wunused-var-40.C: New test. - * g++.dg/warn/Wunused-var-41.C: New test. - * gcc.dg/memchr-3.c (test_find): Change return type from void to int, - and add return n; statement. - * gcc.dg/unused-9.c (g): Move dg-bogus to the correct line and expect - a warning on i. - -2025-07-15 Kyrylo Tkachov <ktkachov@nvidia.com> - - Revert: - 2025-07-15 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/eor3_d.c: Add tests for DImode operands. - -2025-07-15 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_fcm_combines_1.c: New test. - * gcc.target/aarch64/sve/unpacked_fcm_combines_2.c: Likewise. - -2025-07-14 Richard Biener <rguenther@suse.de> - - Revert: - 2025-07-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121059 - * gcc.dg/vect/pr121059.c: New testcase. - -2025-07-14 Juergen Christ <jchrist@linux.ibm.com> - - * lib/target-supports.exp: Add s390 to vect_logical_reduc targets. - * gcc.target/s390/vector/reduc-binops-1.c: New test. - * gcc.target/s390/vector/reduc-minmax-1.c: New test. - * gcc.target/s390/vector/reduc-plus-1.c: New test. - -2025-07-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121059 - * gcc.dg/vect/pr121059.c: New testcase. - -2025-07-14 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u64.c: New test. - -2025-07-14 Uros Bizjak <ubizjak@gmail.com> - - PR target/121015 - * gcc.target/i386/pr121015.c: New test. - -2025-07-14 H.J. Lu <hjl.tools@gmail.com> - - PR target/120881 - * gcc.dg/20021014-1.c: Add additional -mfentry -fno-pic options - for x86. - * gcc.dg/aru-2.c: Likewise. - * gcc.dg/nest.c: Likewise. - * gcc.dg/pr32450.c: Likewise. - * gcc.dg/pr43643.c: Likewise. - * gcc.target/i386/pr104447.c: Likewise. - * gcc.target/i386/pr113122-3.c: Likewise. - * gcc.target/i386/pr119386-1.c: Add additional -mfentry if not - ia32. - * gcc.target/i386/pr119386-2.c: Likewise. - * gcc.target/i386/pr120881-1a.c: New test. - * gcc.target/i386/pr120881-1b.c: Likewise. - * gcc.target/i386/pr120881-1c.c: Likewise. - * gcc.target/i386/pr120881-1d.c: Likewise. - * gcc.target/i386/pr120881-2a.c: Likewise. - * gcc.target/i386/pr120881-2b.c: Likewise. - * gcc.target/i386/pr82699-1.c: Add additional -mfentry. - * lib/target-supports.exp (check_effective_target_fentry): New. - -2025-07-14 François-Xavier Coudert <fxcoudert@gcc.gnu.org> - - * gcc.dg/darwin-minversion-link.c: Account for macOS 26. - -2025-07-14 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwmacc and - vfwmsac. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. Also check - for fcvt and vfmv. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Add vfwmacc and - vfwmsac. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. Also check - for fcvt and vfmv. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for - widening variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_widen_run.h: New test - helper. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f32.c: New test. - -2025-07-14 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/deref4.adb: New test. - * gnat.dg/deref4_pkg.ads: New helper. - -2025-07-14 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/sme2/acle-asm/amax_f16_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amax_f16_x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amax_f32_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amax_f32_x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amax_f64_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amax_f64_x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f16_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f16_x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f32_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f32_x4.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f64_x2.c: New test. - * gcc.target/aarch64/sme2/acle-asm/amin_f64_x4.c: New test. - -2025-07-14 panciyan <panciyan@eswincomputing.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Unsigned vector SAT_SUB form11 form12. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u16.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u32.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u64.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u8.c: Use ussub instead of usub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u8.c: New test. - -2025-07-12 Xi Ruoyao <xry111@xry111.site> - - PR rtl-optimization/87600 - PR rtl-optimization/120983 - * gcc.dg/pr87600.h [__loongarch__]: Define REG0 and REG1. - * gcc.dg/pr87600-1.c (dg-do): Add loongarch. - * gcc.dg/pr87600-2.c (dg-do): Likewise. - -2025-07-12 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/goacc/parameter.f95: Add -Wsurprising flag - and update expected diagnostic. - * gfortran.dg/goacc/parameter-3.f90: New test. - * gfortran.dg/goacc/parameter-4.f90: New test. - -2025-07-11 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/analyzer/state-diagram-1-sarif.py (test_xml_state): - Rename to... - (test_state_graph): ...this. Port from XML to SARIF graphs. - * gcc.dg/analyzer/state-diagram-1.c: Update sink option - from "sarif:xml-state=yes" to "sarif:state-graphs=yes". - * gcc.dg/analyzer/state-diagram-5-sarif.c: Likewise. - * gcc.dg/analyzer/state-diagram-5-sarif.py: Drop import of ET. - (test_nested_types_in_xml_state): Rename to... - (test_nested_types_in_state_graph): ...this. Port from XML to - SARIF graphs. - * gcc.dg/plugin/diagnostic-test-graphs-html.c: New test. - * gcc.dg/plugin/diagnostic-test-graphs-html.py: New test script. - * gcc.dg/plugin/diagnostic-test-graphs-sarif.c: New test. - * gcc.dg/plugin/diagnostic-test-graphs-sarif.py: New test script. - * gcc.dg/plugin/diagnostic-test-graphs.c: New test. - * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: New test plugin. - * gcc.dg/plugin/plugin.exp (plugin_test_list): Add the above. - * lib/sarif.py (get_xml_state): Delete. - (get_state_graph): New. - (def get_state_node_attr): New. - (get_state_node_kind): New. - (get_state_node_name): New. - (get_state_node_type): New. - (get_state_node_value): New. - * sarif-replay.dg/2.1.0-invalid/3.40.2-duplicate-node-id.sarif: - New test. - * sarif-replay.dg/2.1.0-invalid/3.41.4-unrecognized-node-id.sarif: - New test. - * sarif-replay.dg/2.1.0-valid/graphs-check-html.py: New test - script. - * sarif-replay.dg/2.1.0-valid/graphs-check-sarif-roundtrip.py: New - test script. - * sarif-replay.dg/2.1.0-valid/graphs.sarif: New test. - -2025-07-11 Vladimir N. Makarov <vmakarov@redhat.com> - - * gcc.target/powerpc/pr121007.c: New. - -2025-07-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/119064 - * g++.dg/cpp26/feat-cxx26.C: Add test for - __cpp_trivial_relocatability. - * g++.dg/cpp26/trivially-relocatable1.C: New test. - * g++.dg/cpp26/trivially-relocatable2.C: New test. - * g++.dg/cpp26/trivially-relocatable3.C: New test. - * g++.dg/cpp26/trivially-relocatable4.C: New test. - * g++.dg/cpp26/trivially-relocatable5.C: New test. - * g++.dg/cpp26/trivially-relocatable6.C: New test. - * g++.dg/cpp26/trivially-relocatable7.C: New test. - * g++.dg/cpp26/trivially-relocatable8.C: New test. - * g++.dg/cpp26/trivially-relocatable9.C: New test. - * g++.dg/cpp26/trivially-relocatable10.C: New test. - * g++.dg/cpp26/trivially-relocatable11.C: New test. - -2025-07-11 Richard Sandiford <richard.sandiford@arm.com> - - PR target/121027 - * gcc.target/aarch64/sve/acle/general/perm_1.c: New test. - -2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/eor3_d.c: Add tests for DImode operands. - -2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/bcax_d.c: Add tests for DImode arguments. - -2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/eor3_d.c: New test. - -2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/simd/bcax_d.c: New test. - -2025-07-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/121034 - * gcc.dg/vect/pr121034.c: New testcase. - -2025-07-11 Jakub Jelinek <jakub@redhat.com> - - PR c++/120954 - * c-c++-common/Warray-bounds-11.c: New test. - -2025-07-11 Jan Hubicka <hubicka@ucw.cz> - - * g++.dg/lto/pr114790_0.C: New test. - * g++.dg/lto/pr114790_1.C: New test. - -2025-07-11 Jakub Jelinek <jakub@redhat.com> - Martin Jambor <mjambor@suse.cz> - - PR ipa/121023 - * c-c++-common/musttail32.c: New test. - -2025-07-11 Hu, Lin1 <lin1.hu@intel.com> - - PR target/91384 - * gcc.target/i386/pr91384-1.c: New test. - -2025-07-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/106035 - * gfortran.dg/import3.f90: Use -std=f2008 and comment on change - in error message texts with f2018. - * gfortran.dg/import12.f90: New test. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/120628 - * g++.dg/cpp0x/final1.C: New test. - * g++.dg/cpp0x/final2.C: New test. - * g++.dg/cpp0x/override6.C: New test. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/120569 - * g++.dg/cpp0x/override2.C: Expect different diagnostics with - override or duplicate final. - * g++.dg/cpp0x/override5.C: New test. - * g++.dg/cpp0x/duplicate1.C: Expect different diagnostics with - duplicate final. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/117785 - * g++.dg/cpp0x/constexpr-ellipsis2.C: Expect different diagnostics for - C++26. - * g++.dg/cpp0x/constexpr-throw.C: Likewise. - * g++.dg/cpp1y/constexpr-84192.C: Expect different diagnostics. - * g++.dg/cpp1y/constexpr-throw.C: Expect different diagnostics for - C++26. - * g++.dg/cpp1z/constexpr-asm-5.C: Likewise. - * g++.dg/cpp26/constexpr-eh1.C: New test. - * g++.dg/cpp26/constexpr-eh2.C: New test. - * g++.dg/cpp26/constexpr-eh3.C: New test. - * g++.dg/cpp26/constexpr-eh4.C: New test. - * g++.dg/cpp26/constexpr-eh5.C: New test. - * g++.dg/cpp26/constexpr-eh6.C: New test. - * g++.dg/cpp26/constexpr-eh7.C: New test. - * g++.dg/cpp26/constexpr-eh8.C: New test. - * g++.dg/cpp26/constexpr-eh9.C: New test. - * g++.dg/cpp26/constexpr-eh10.C: New test. - * g++.dg/cpp26/constexpr-eh11.C: New test. - * g++.dg/cpp26/constexpr-eh12.C: New test. - * g++.dg/cpp26/constexpr-eh13.C: New test. - * g++.dg/cpp26/constexpr-eh14.C: New test. - * g++.dg/cpp26/constexpr-eh15.C: New test. - * g++.dg/cpp26/feat-cxx26.C: Change formatting in __cpp_pack_indexing - and __cpp_pp_embed test. Add __cpp_constexpr_exceptions test. - * g++.dg/cpp26/static_assert1.C: Expect different diagnostics for - C++26. - * g++.dg/cpp2a/consteval34.C: Likewise. - * g++.dg/cpp2a/consteval-memfn1.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic4.C: For C++26 add std::exception and - std::bad_cast definitions and expect different diagnostics. - * g++.dg/cpp2a/constexpr-dynamic6.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic7.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic8.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic9.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic11.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic14.C: Likewise. - * g++.dg/cpp2a/constexpr-dynamic18.C: Likewise. - * g++.dg/cpp2a/constexpr-new27.C: New test. - * g++.dg/cpp2a/constexpr-typeid5.C: New test. - -2025-07-10 Qing Zhao <qing.zhao@oracle.com> - - PR middle-end/121000 - * gcc.dg/flex-array-counted-by-pr121000.c: New test. - -2025-07-10 Mikael Morin <mikael@gcc.gnu.org> - - * gfortran.dg/asan/array_constructor_1.f90: Allocate array - before using it. - -2025-07-10 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-inline.c: Add user symbol names. - -2025-07-10 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/pfalse-binary.c: Add -funwind-tables. - * gcc.target/aarch64/sve/pfalse-binary_int_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binary_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binary_opt_single_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binary_rotate.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binary_uint64_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binary_uint_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-binaryxn.c: Likewise. - * gcc.target/aarch64/sve/pfalse-clast.c: Likewise. - * gcc.target/aarch64/sve/pfalse-compare_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-compare_wide_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-count_pred.c: Likewise. - * gcc.target/aarch64/sve/pfalse-fold_left.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_ext.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_ext_gather_index.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_ext_gather_offset.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_gather_sv.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_gather_vs.c: Likewise. - * gcc.target/aarch64/sve/pfalse-load_replicate.c: Likewise. - * gcc.target/aarch64/sve/pfalse-prefetch.c: Likewise. - * gcc.target/aarch64/sve/pfalse-prefetch_gather_index.c: Likewise. - * gcc.target/aarch64/sve/pfalse-prefetch_gather_offset.c: Likewise. - * gcc.target/aarch64/sve/pfalse-ptest.c: Likewise. - * gcc.target/aarch64/sve/pfalse-rdffr.c: Likewise. - * gcc.target/aarch64/sve/pfalse-reduction.c: Likewise. - * gcc.target/aarch64/sve/pfalse-reduction_wide.c: Likewise. - * gcc.target/aarch64/sve/pfalse-shift_right_imm.c: Likewise. - * gcc.target/aarch64/sve/pfalse-store.c: Likewise. - * gcc.target/aarch64/sve/pfalse-store_scatter_index.c: Likewise. - * gcc.target/aarch64/sve/pfalse-store_scatter_offset.c: Likewise. - * gcc.target/aarch64/sve/pfalse-storexn.c: Likewise. - * gcc.target/aarch64/sve/pfalse-ternary_opt_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-ternary_rotate.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary_convert_narrowt.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary_convertxn.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary_n.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary_pred.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unary_to_uint.c: Likewise. - * gcc.target/aarch64/sve/pfalse-unaryxn.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_int_opt_n.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_int_opt_single_n.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_opt_n.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_opt_single_n.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_to_uint.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_uint_opt_n.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-binary_wide.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-compare.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-load_ext_gather_index_restricted.c, - * gcc.target/aarch64/sve2/pfalse-load_ext_gather_offset_restricted.c, - * gcc.target/aarch64/sve2/pfalse-load_gather_sv_restricted.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-load_gather_vs.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-shift_left_imm_to_uint.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-shift_right_imm.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-store_scatter_index_restricted.c, - * gcc.target/aarch64/sve2/pfalse-store_scatter_offset_restricted.c, - * gcc.target/aarch64/sve2/pfalse-unary.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-unary_convert.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-unary_convert_narrowt.c: Likewise. - * gcc.target/aarch64/sve2/pfalse-unary_to_int.c: Likewise. - -2025-07-10 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR target/120999 - * gcc.target/aarch64/sve2/pr120999.c: New test. - -2025-07-10 Richard Sandiford <richard.sandiford@arm.com> - - * lib/target-supports.exp (check_effective_target_aarch64_sve2p1_hw): - New proc. - * gcc.target/aarch64/sve2/dupq_1.c: Extend to big-endian. Add - noipa attributes. - * gcc.target/aarch64/sve2/extq_1.c: Likewise. - * gcc.target/aarch64/sve2/uzpq_1.c: Likewise. - * gcc.target/aarch64/sve2/zipq_1.c: Likewise. - * gcc.target/aarch64/sve2/dupq_1_run.c: New test. - * gcc.target/aarch64/sve2/extq_1_run.c: Likewise. - * gcc.target/aarch64/sve2/uzpq_1_run.c: Likewise. - * gcc.target/aarch64/sve2/zipq_1_run.c: Likewise. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - * gfortran.dg/g77/980310-3.f: Comment spelling fix: bellow -> below. - * jit.dg/test-debuginfo.c: Likewise. - -2025-07-10 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_s_add-run-1-i16.c: Take rv32 || rv64 - instead of riscv_v for scalar run test. - * gcc.target/riscv/sat/sat_s_add-run-1-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-1-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-1-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-2-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-2-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-2-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-2-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-3-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-3-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-3-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-3-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-4-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-4-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-4-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_add-run-4-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-1-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-1-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-1-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-1-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-2-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-2-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-2-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-2-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-3-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-3-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-3-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-3-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-4-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-4-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-4-i64.c: Ditto. - * gcc.target/riscv/sat/sat_s_sub-run-4-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i16-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i32-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i32-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i16.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i32.c: Ditto. - * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-6-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_add_imm-run-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-10-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-10-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-10-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-10-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-11-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-11-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-11-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-11-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-12-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-12-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-12-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-12-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-6-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-7-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-7-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-7-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-7-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-8-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-8-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-8-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-8-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-9-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-9-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-9-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub-run-9-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-1-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-1-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-1-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-1-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-2-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-2-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-2-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-2-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-3-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-3-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-3-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-3-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-4-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-4-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-4-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-4-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-5-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-5-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-5-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-5-u8.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-6-u16.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-6-u32.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-6-u64.c: Ditto. - * gcc.target/riscv/sat/sat_u_trunc-run-6-u8.c: Ditto. - -2025-07-09 Jason Merrill <jason@redhat.com> - - PR c++/120243 - * g++.dg/coroutines/torture/pr120243-unhandled-1.C: New test. - * g++.dg/coroutines/torture/pr120243-unhandled-2.C: New test. - -2025-07-09 Jason Merrill <jason@redhat.com> - - PR c++/121012 - PR c++/120917 - * g++.dg/cpp2a/lambda-targ17.C: New test. - -2025-07-09 Jason Merrill <jason@redhat.com> - - PR c++/121008 - PR c++/113563 - * g++.dg/cpp2a/lambda-uneval28.C: New test. - -2025-07-09 Marek Polacek <polacek@redhat.com> - - PR c++/119838 - * g++.dg/parse/template32.C: New test. - -2025-07-09 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/rtl/aarch64/vec-series-1.c: New test. - * gcc.dg/rtl/aarch64/vec-series-2.c: Likewise. - * gcc.target/aarch64/sve/acle/general/dupq_2.c: Fix expected - output for this big-endian test. - * gcc.target/aarch64/sve/acle/general/dupq_4.c: Likewise. - * gcc.target/aarch64/sve/vec_init_3.c: Restrict to little-endian - targets and add more tests. - * gcc.target/aarch64/sve/vec_init_4.c: New big-endian version - of vec_init_3.c. - -2025-07-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-07-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i8.c: New test. - -2025-07-09 Paul-Antoine Arras <parras@baylibre.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Set - MAX_RELATIVE_DIFF depending on type. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: Enable zvfh. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. - -2025-07-09 Ciyan Pan <panciyan@eswincomputing.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Add vec_sat_u_sub_fmt wrap define. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: Add vec_sat_u_sub test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u8.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u16.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u32.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u64.c: Remove test data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u8.c: Remove test data. - -2025-07-09 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/pr118348_1.c: Require fstack_protector. - * gcc.target/aarch64/pr118348_2.c: Likewise. - -2025-07-09 Icen Zeyada <Icen.Zeyada2@arm.com> - - * gcc.target/aarch64/vector-compare-5.c: Add new test for vector compare simplification. - -2025-07-09 Jeff Law <jlaw@ventanamicro.com> - - PR target/120642 - * gcc.target/riscv/rvv/xtheadvector/pr120642.c: New test. - -2025-07-09 Richard Biener <rguenther@suse.de> - - PR testsuite/120093 - * gcc.dg/vect/pr101145.c: Use noipa instead of noinline - attribute. - -2025-07-09 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/pattern-avg-1.c: Fix on -m31. - * gcc.target/s390/vector/pattern-mulh-1.c: Fix on -m31. - * gcc.target/s390/vector/pattern-mulh-2.c: Fix on -m31. - -2025-07-09 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.dg/builtin-dynamic-object-size-pr120780.c: Fix 'main' function. - -2025-07-09 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/120922 - * gcc.dg/vect/pr120922.c: New test. - -2025-07-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add xlen check for - uint128_t. - * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u128.c: Enable - run test for rv64 only. - * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-run-1-u64-from-u128.c: Ditto. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u128.c: Ditto. - -2025-07-08 Marek Polacek <polacek@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/83469 - PR c++/93809 - * g++.dg/template/error45.C: Adjust dg-error. - * g++.dg/warn/Wredundant-tags-3.C: Remove xfail. - * g++.dg/parse/union1.C: New test. - * g++.dg/parse/union2.C: New test. - * g++.dg/parse/union3.C: New test. - * g++.dg/parse/union4.C: New test. - * g++.dg/parse/union5.C: New test. - * g++.dg/parse/union6.C: New test. - -2025-07-08 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/BGEUI-BLTUI-32k-64k.c: New. - -2025-07-08 Jakub Jelinek <jakub@redhat.com> - - PR c++/117784 - * g++.dg/cpp1z/decomp3.C (test): For constexpr structured binding - initialize from constexpr var instead of non-constexpr and expect - just a pedwarn for C++23 and older instead of error always. - * g++.dg/cpp26/decomp9.C (foo): Likewise. - * g++.dg/cpp26/decomp22.C: New test. - * g++.dg/cpp26/decomp23.C: New test. - * g++.dg/cpp26/decomp24.C: New test. - * g++.dg/cpp26/decomp25.C: New test. - -2025-07-08 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/stack-protector-guard-tls-1.c: New test. - -2025-07-08 Richard Biener <rguenther@suse.de> - - * gcc.dg/guality/guality.h (guality_main): Declare noipa. - (guality_check): Likewise. - -2025-07-08 Robin Dapp <rdapp@ventanamicro.com> - - PR target/120461 - * gcc.target/riscv/rvv/xtheadvector/pr120461.c: New test. - -2025-07-08 Robin Dapp <rdapp@ventanamicro.com> - - PR target/113829 - * gcc.target/riscv/rvv/base/pr113829.c: New test. - -2025-07-08 Andreas Schwab <schwab@suse.de> - - PR target/120995 - * gcc.target/riscv/amo/zabha-zacas-atomic-cas.c: New test. - -2025-07-08 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp1y/lambda-generic-variadic.C: Change to 'compile'. - -2025-07-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/memcpy-pr120683-1.c (dg-options): Add - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. - * gcc.target/i386/memcpy-pr120683-2.c: Likewise. - * gcc.target/i386/memcpy-pr120683-3.c: Likewise. - * gcc.target/i386/memcpy-pr120683-4.c: Likewise. - * gcc.target/i386/memcpy-pr120683-5.c: Likewise. - * gcc.target/i386/memcpy-pr120683-6.c: Likewise. - * gcc.target/i386/memcpy-pr120683-7.c: Likewise. - * gcc.target/i386/memcpy-strategy-12.c: Likewise. - * gcc.target/i386/memset-pr120683-1.c: Likewise. - * gcc.target/i386/memset-pr120683-10.c: Likewise. - * gcc.target/i386/memset-pr120683-11.c: Likewise. - * gcc.target/i386/memset-pr120683-12.c: Likewise. - * gcc.target/i386/memset-pr120683-13.c: Likewise. - * gcc.target/i386/memset-pr120683-14.c: Likewise. - * gcc.target/i386/memset-pr120683-15.c: Likewise. - * gcc.target/i386/memset-pr120683-16.c: Likewise. - * gcc.target/i386/memset-pr120683-17.c: Likewise. - * gcc.target/i386/memset-pr120683-18.c: Likewise. - * gcc.target/i386/memset-pr120683-19.c: Likewise. - * gcc.target/i386/memset-pr120683-2.c: Likewise. - * gcc.target/i386/memset-pr120683-20.c: Likewise. - * gcc.target/i386/memset-pr120683-21.c: Likewise. - * gcc.target/i386/memset-pr120683-22.c: Likewise. - * gcc.target/i386/memset-pr120683-23.c: Likewise. - * gcc.target/i386/memset-pr120683-3.c: Likewise. - * gcc.target/i386/memset-pr120683-4.c: Likewise. - * gcc.target/i386/memset-pr120683-5.c: Likewise. - * gcc.target/i386/memset-pr120683-6.c: Likewise. - * gcc.target/i386/memset-pr120683-7.c: Likewise. - * gcc.target/i386/memset-pr120683-8.c: Likewise. - * gcc.target/i386/memset-pr120683-9.c: Likewise. - -2025-07-08 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/pattern-avg-1.c: Split test. - * gcc.target/s390/vector/pattern-mulh-1.c: Split test. - * gcc.target/s390/vector/pattern-avg-2.c: New test. - * gcc.target/s390/vector/pattern-mulh-2.c: New test. - -2025-07-08 Richard Biener <rguenther@suse.de> - - * gcc.target/i386/vect-mask-epilogue-1.c: New testcase. - * gcc.target/i386/vect-mask-epilogue-2.c: Likewise. - * gcc.target/i386/vect-epilogues-3.c: Adjust. - -2025-07-08 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120637 - * gfortran.dg/asan/finalize_1.f90: New test. - -2025-07-08 Jeff Law <jlaw@ventanamicro.com> - - * gcc.dg/torture/pr120654.c: Use __builtin variants of malloc and free. - -2025-07-08 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/amo/zalrsc-rvwmo-amo-add-int.c: Adjust expected - output. - * gcc.target/riscv/amo/zalrsc-ztso-amo-add-int.c: Likewise. - -2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - Revert: - 2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/flex-array-counted-by.c: Update test. - * gcc.dg/pointer-counted-by-1.c: New test. - * gcc.dg/pointer-counted-by-2.c: New test. - * gcc.dg/pointer-counted-by-3.c: New test. - * gcc.dg/pointer-counted-by.c: New test. - -2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - Revert: - 2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/pointer-counted-by-4-char.c: New test. - * gcc.dg/pointer-counted-by-4-float.c: New test. - * gcc.dg/pointer-counted-by-4-struct.c: New test. - * gcc.dg/pointer-counted-by-4-union.c: New test. - * gcc.dg/pointer-counted-by-4.c: New test. - * gcc.dg/pointer-counted-by-5.c: New test. - * gcc.dg/pointer-counted-by-6.c: New test. - * gcc.dg/pointer-counted-by-7.c: New test. - -2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - Revert: - 2025-07-07 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. - -2025-07-07 H.J. Lu <hjl.tools@gmail.com> - - PR testsuite/120881 - * lib/scanasm.exp (check-function-bodies): Allow "^[0-9]+:". - -2025-07-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/120888 - * gcc.target/xtensa/pr120888-1.c: New test. - * gcc.target/xtensa/pr120888-2.c: Likewise. - -2025-07-07 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/fminmax-1.c: New test. - * gcc.target/s390/fminmax-2.c: New test. - -2025-07-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/120817 - * gcc.dg/vect/pr120817.c: Add SVE HW check. - -2025-07-07 Alfie Richards <alfie.richards@arm.com> - - PR c++/119498 - * g++.target/aarch64/pr119498.C: New test. - -2025-07-07 Jason Merrill <jason@redhat.com> - - PR c++/120917 - * g++.dg/concepts/auto7a.C: Add diagnostic. - * g++.dg/concepts/auto7b.C: New test. - * g++.dg/concepts/auto7c.C: New test. - * g++.dg/cpp1y/pr85076.C: Expect 'auto' error. - * g++.dg/concepts/pr67249.C: Likewise. - * g++.dg/cpp1y/lambda-generic-variadic.C: Likewise. - * g++.dg/cpp2a/concepts-pr67210.C: Likewise. - * g++.dg/concepts/pr67249a.C: New test. - * g++.dg/cpp1y/lambda-generic-variadic-a.C: New test. - * g++.dg/cpp2a/concepts-pr67210a.C: New test. - -2025-07-07 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.target/aarch64/popcnt9.c: Add +nosve to target pragma. - * gcc.target/aarch64/popcnt13.c: New test. - -2025-07-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120817 - * gcc.dg/vect/pr120817.c: New testcase. - -2025-07-07 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_arith_data.h: Add test data for - run test. - * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u64-from-u128.c: New test. - * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u128.c: New test. - -2025-07-07 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats-3/tests/c9/c94001c.ada: Tweak delay statements. - * ada/acats-4/tests/c9/c94001c.ada: Likewise. - * ada/acats-4/tests/c9/c94006a.ada: Likewise. - * ada/acats-4/tests/c9/c94008c.ada: Likewise. - * ada/acats-4/tests/c9/c951002.a: Likewise. - * ada/acats-4/tests/c9/c954a01.a: Likewise. - * ada/acats-4/tests/c9/c940005.a: Tweak duration constants. - * ada/acats-4/tests/c9/c940007.a: Likewise. - * ada/acats-4/tests/c9/c96001a.ada: Likewise. - -2025-07-07 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/pattern-avg-1.c: New test. - * gcc.target/s390/vector/pattern-mulh-1.c: New test. - -2025-07-07 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/unpacked_fcm_1.c: New test. - * gcc.target/aarch64/sve/unpacked_fcm_2.c: Likewise. - -2025-07-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/120670 - PR target/120683 - * gcc.target/i386/auto-init-padding-9.c: Updated. - * gcc.target/i386/memcpy-strategy-12.c: Likewise. - * gcc.target/i386/memset-strategy-25.c: Likewise. - * gcc.target/i386/memset-strategy-29.c: Likewise. - * gcc.target/i386/memset-strategy-30.c: Likewise. - * gcc.target/i386/memset-strategy-31.c: Likewise. - * gcc.target/i386/memcpy-pr120683-1.c: New test. - * gcc.target/i386/memcpy-pr120683-2.c: Likewise. - * gcc.target/i386/memcpy-pr120683-3.c: Likewise. - * gcc.target/i386/memcpy-pr120683-4.c: Likewise. - * gcc.target/i386/memcpy-pr120683-5.c: Likewise. - * gcc.target/i386/memcpy-pr120683-6.c: Likewise. - * gcc.target/i386/memcpy-pr120683-7.c: Likewise. - * gcc.target/i386/memset-pr120683-1.c: Likewise. - * gcc.target/i386/memset-pr120683-2.c: Likewise. - * gcc.target/i386/memset-pr120683-3.c: Likewise. - * gcc.target/i386/memset-pr120683-4.c: Likewise. - * gcc.target/i386/memset-pr120683-5.c: Likewise. - * gcc.target/i386/memset-pr120683-6.c: Likewise. - * gcc.target/i386/memset-pr120683-7.c: Likewise. - * gcc.target/i386/memset-pr120683-8.c: Likewise. - * gcc.target/i386/memset-pr120683-9.c: Likewise. - * gcc.target/i386/memset-pr120683-10.c: Likewise. - * gcc.target/i386/memset-pr120683-11.c: Likewise. - * gcc.target/i386/memset-pr120683-12.c: Likewise. - * gcc.target/i386/memset-pr120683-13.c: Likewise. - * gcc.target/i386/memset-pr120683-14.c: Likewise. - * gcc.target/i386/memset-pr120683-15.c: Likewise. - * gcc.target/i386/memset-pr120683-16.c: Likewise. - * gcc.target/i386/memset-pr120683-17.c: Likewise. - * gcc.target/i386/memset-pr120683-18.c: Likewise. - * gcc.target/i386/memset-pr120683-19.c: Likewise. - * gcc.target/i386/memset-pr120683-20.c: Likewise. - * gcc.target/i386/memset-pr120683-21.c: Likewise. - * gcc.target/i386/memset-pr120683-22.c: Likewise. - * gcc.target/i386/memset-pr120683-23.c: Likewise. - -2025-07-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/84009 - * g++.dg/cpp0x/range-for40.C: New test. - * g++.dg/cpp0x/range-for41.C: New test. - * g++.dg/cpp0x/range-for42.C: New test. - * g++.dg/cpp0x/range-for43.C: New test. - -2025-07-07 Mikael Morin <mikael@gcc.gnu.org> - - * gfortran.dg/move_alloc_20.f03: New test. - -2025-07-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/120709 - * gcc.dg/crc-non-cst-poly-1.c: New test. - -2025-07-06 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120951 - * gcc.dg/torture/pr120951-1.c: New test. - -2025-07-06 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/clone-merge-1.c: - -2025-07-04 Vineet Gupta <vineetg@rivosinc.com> - - PR target/118241 - * gcc.target/riscv/pr118241-b.cc: New test. - -2025-07-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> - - * gcc.target/sh/pr54236-2.c: Fix comments and expected output - -2025-07-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR c/118948 - * gcc.dg/pr118948-1.c: New test. - -2025-07-04 Jason Merrill <jason@redhat.com> - - PR c++/120575 - PR c++/116064 - * g++.dg/template/permissive-error3.C: New test. - -2025-07-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-07-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i8.c: New test. - -2025-07-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120944 - * gcc.dg/torture/pr120944.c: New testcase. - -2025-07-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120927 - * gcc.dg/vect/vect-pr120927.c: New testcase. - * gcc.dg/vect/vect-pr120927-2.c: Likewise. - -2025-07-04 Jakub Jelinek <jakub@redhat.com> - - PR c/120837 - * gcc.dg/ubsan/pr120837.c: New test. - -2025-07-04 Xi Ruoyao <xry111@xry111.site> - - PR target/120807 - * gcc.c-torture/compile/pr120708.c: Rename to ... - * gcc.c-torture/compile/pr120807.c: ... here. - -2025-07-04 Xi Ruoyao <xry111@xry111.site> - - * gcc.c-torture/compile/pr120708.c: New test. - -2025-07-04 panciyan <panciyan@eswincomputing.com> - - * gcc.target/riscv/sat/sat_arith.h: Add signed scalar SAT_ADD IMM form2. - * gcc.target/riscv/sat/sat_s_add_imm-2-i16.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-2-i32.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-2-i64.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-2-i8.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-run-2-i16.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-run-2-i32.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-run-2-i64.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm-run-2-i8.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i16.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i32.c: New test. - * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i8.c: New test. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120716 - * g++.dg/cpp0x/lambda/lambda-constexpr3.C: New test. - * g++.dg/cpp0x/lambda/lambda-constexpr3a.C: New test. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120748 - * g++.dg/cpp2a/lambda-targ16.C: New test. - * g++.dg/cpp0x/this1.C: Adjust diagnostics. - -2025-07-03 Jakub Jelinek <jakub@redhat.com> - - PR c++/120940 - * g++.dg/parse/pr120940.C: New test. - * g++.dg/warn/Wduplicated-branches9.C: New test. - -2025-07-03 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/vec-perm-merge-1.c: New test. - * gcc.target/s390/vector/vec-perm-pack-1.c: New test. - -2025-07-03 Thomas Schwinge <tschwinge@baylibre.com> - - * c-c++-common/gomp/omp_get_num_devices_initial_device.c: Fix. - * gfortran.dg/gomp/omp_get_num_devices_initial_device.f90: Likewise. - -2025-07-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.dg/ipa/pr120295.c (glob): Rename to glob_. - -2025-07-03 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/cmpbr.c: Update tests. - -2025-07-03 Karl Meakin <karl.meakin@arm.com> - - * gcc.target/aarch64/cmpbr.c: - -2025-07-03 Karl Meakin <karl.meakin@arm.com> - - * lib/target-supports.exp: Add `cmpbr` to the list of extensions. - * gcc.target/aarch64/cmpbr.c: New test. - -2025-07-03 Siddhesh Poyarekar <siddhesh@gotplt.org> - - PR tree-optimization/120780 - * gcc.dg/builtin-dynamic-object-size-pr120780.c: New test case. - -2025-07-03 H.J. Lu <hjl.tools@gmail.com> - - PR target/120936 - * gcc.target/i386/pr120936-1.c: New test - * gcc.target/i386/pr120936-2.c: Likewise. - * gcc.target/i386/pr120936-3.c: Likewise. - * gcc.target/i386/pr120936-4.c: Likewise. - * gcc.target/i386/pr120936-5.c: Likewise. - * gcc.target/i386/pr120936-6.c: Likewise. - * gcc.target/i386/pr120936-7.c: Likewise. - * gcc.target/i386/pr120936-8.c: Likewise. - * gcc.target/i386/pr120936-9.c: Likewise. - * gcc.target/i386/pr120936-10.c: Likewise. - * gcc.target/i386/pr120936-11.c: Likewise. - * gcc.target/i386/pr120936-12.c: Likewise. - * gcc.target/i386/pr93492-3.c: Updated. - * gcc.target/i386/pr93492-5.c: Likewise. - -2025-07-03 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120843 - * gfortran.dg/coarray/coindexed_6.f90: Enhance test to have - coarray components covered. - -2025-07-03 H.J. Lu <hjl.tools@gmail.com> - - PR target/120908 - * gcc.target/i386/pr120908.c: New test. - -2025-07-03 Jason Merrill <jason@redhat.com> - - PR c++/120684 - PR c++/118856 - * g++.dg/cpp23/range-for10.C: New test. - -2025-07-02 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/riscv/mcpu-xt-c908.c: Disable for E ABI variants. - * gcc.target/riscv/mcpu-xt-c908v.c: Ditto. - * gcc.target/riscv/mcpu-xt-c910.c: Ditto. - * gcc.target/riscv/mcpu-xt-c910v2.c: Ditto. - * gcc.target/riscv/mcpu-xt-c920.c: Ditto. - * gcc.target/riscv/mcpu-xt-c920v2.c: Ditto. - * gcc.target/riscv/pr118241.c: Ditto. - * gcc.target/riscv/pr120223.c: Ditto. - * gcc.target/riscv/rvv/base/pr119164.c: Disable for E ABI variants - and for 32-bit ISA. - -2025-07-02 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> - - PR target/120356 - * gcc.target/riscv/rvv/autovec/pr120356.c: New test. - -2025-07-01 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. - * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. - -2025-07-01 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/pointer-counted-by-4-char.c: New test. - * gcc.dg/pointer-counted-by-4-float.c: New test. - * gcc.dg/pointer-counted-by-4-struct.c: New test. - * gcc.dg/pointer-counted-by-4-union.c: New test. - * gcc.dg/pointer-counted-by-4.c: New test. - * gcc.dg/pointer-counted-by-5.c: New test. - * gcc.dg/pointer-counted-by-6.c: New test. - * gcc.dg/pointer-counted-by-7.c: New test. - -2025-07-01 Qing Zhao <qing.zhao@oracle.com> - - * gcc.dg/flex-array-counted-by.c: Update test. - * gcc.dg/pointer-counted-by-1.c: New test. - * gcc.dg/pointer-counted-by-2.c: New test. - * gcc.dg/pointer-counted-by-3.c: New test. - * gcc.dg/pointer-counted-by.c: New test. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - PR testsuite/120919 - * gcc.target/powerpc/builtin_altivec_tr_stxvr_runnable.c (main): Change - sc, ss, si and sll vars from scalars to arrays of 2 elements, - initialize and test just the first one though. - -2025-07-01 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/finalizable2.ads: New test. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - * gcc.target/s390/vector/vec-abs-emu.c: Add -fno-stack-protector - to dg-options. - * gcc.target/s390/vector/vec-max-emu.c: Likewise. - * gcc.target/s390/vector/vec-min-emu.c: Likewise. - -2025-07-01 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__2_.cob: - Append INTRINSIC keyword. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - PR c++/120471 - * g++.dg/ubsan/pr120471.C: New test. - * g++.dg/parse/pr120471.C: New test. - -2025-07-01 Remi Machet <rmachet@nvidia.com> - - * gcc.target/aarch64/simd/shrn2subhn.c: New test. - -2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120847 - * gfortran.dg/coarray/coindexed_7.f90: New test. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119318 - PR testsuite/120082 - * gcc.dg/ipa/pr119318.c (main): Expect different result on big endian - from little endian, on unexpected endianness or int/int128 sizes don't - test anything. Formatting fixes. - -2025-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/preserve-none-1.c (dg-options): Add - -fomit-frame-pointer. - -2025-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * g++.target/i386/memset-pr101366-1.C (dg-options): Add - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. - * g++.target/i386/memset-pr101366-2.C: Likewise. - * g++.target/i386/memset-pr118276-1a.C: Likewise. - * g++.target/i386/memset-pr118276-1b.C: Likewise. - * g++.target/i386/memset-pr118276-1c.C: Likewise. - * gcc.target/i386/memset-pr70308-1a.c: Likewise. - * gcc.target/i386/memset-strategy-25.c: Likewise. - * gcc.target/i386/memset-strategy-28.c: Likewise. - * gcc.target/i386/memset-strategy-29.c: Likewise. - * gcc.target/i386/memset-strategy-30.c: Likewise. - * gcc.target/i386/pr92080-17.c: Likewise. - * gcc.target/i386/memset-pr70308-1b.c: Likewise. Also add - -fomit-frame-pointer. - * g++.target/i386/memset-pr108585-1a.C: (dg-options): Add - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. Also add - -mno-stackrealign -fomit-frame-pointer. - * g++.target/i386/memset-pr108585-1b.C: Likewise. - -2025-07-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120608 - * c-c++-common/asan/pr120608-3.c: New test. - * c-c++-common/asan/pr120608-4.c: New test. - * g++.dg/asan/pr120608-3.C: New test. - * g++.dg/asan/pr120608-4.C: New test. - -2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120843 - * gfortran.dg/coarray/coindexed_6.f90: New test. - -2025-07-01 Yuao Ma <c8ef@outlook.com> - - * lib/target-supports.exp (foldable_pi_based_trigonometry): New - effective target. - * gcc.dg/torture/builtin-math-9.c: New test. - -2025-07-01 Alexandre Oliva <oliva@adacore.com> - - PR middle-end/120631 - * gcc.dg/dfp/pr120631.c: Drop overrider of dg-do default action. - * gcc.dg/dfp/bitint-9.c: Likewise. - * gcc.dg/dfp/bitint-10.c: Likewise. - -2025-06-30 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/120242 - PR rtl-optimization/120627 - PR rtl-optimization/120736 - PR rtl-optimization/120813 - * gcc.dg/torture/pr120242.c: New test. - * gcc.dg/torture/pr120627.c: Likewise. - * gcc.dg/torture/pr120736.c: Likewise. - * gcc.dg/torture/pr120813.c: Likewise. - -2025-06-30 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> - - PR target/120714 - * gcc.target/riscv/pr120714.c: New test. - -2025-06-30 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_gil_plugin.cc - (gil_diagnostic::get_meaning_for_state_change): Convert - diagnostic_event::meaning enums to enum class. - -2025-06-30 David Malcolm <dmalcolm@redhat.com> - - * c-c++-common/analyzer/out-of-bounds-diagram-1-json.c: Deleted test. - * c-c++-common/diagnostic-format-json-1.c: Deleted test. - * c-c++-common/diagnostic-format-json-2.c: Deleted test. - * c-c++-common/diagnostic-format-json-3.c: Deleted test. - * c-c++-common/diagnostic-format-json-4.c: Deleted test. - * c-c++-common/diagnostic-format-json-5.c: Deleted test. - * c-c++-common/diagnostic-format-json-file-1.c: Deleted test. - * c-c++-common/diagnostic-format-json-stderr-1.c: Deleted test. - * c-c++-common/pr106133.c: Deleted test. - * g++.dg/pr90462.C: Deleted test. - * gcc.dg/plugin/diagnostic-test-paths-3.c: Deleted test. - * gcc.dg/plugin/plugin.exp (plugin_test_list): Remove deleted - test. - * gfortran.dg/diagnostic-format-json-1.F90: Deleted test. - * gfortran.dg/diagnostic-format-json-2.F90: Deleted test. - * gfortran.dg/diagnostic-format-json-3.F90: Deleted test. - * gfortran.dg/diagnostic-format-json-pr105916.F90: Deleted test. - -2025-06-30 Christopher Bazley <chris.bazley@arm.com> - - * gcc.target/aarch64/sve/adr_7.c: Fix regular expressions. - -2025-06-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vssubu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u8.c: New test. - -2025-06-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u16.c: - Update the asm check due to cost model change. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u32.c: - Diito. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u8.c: - Ditto. - -2025-06-30 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/vsetvl/avl_single-21.c: Ignore -Oz. - * gcc.target/riscv/rvv/vsetvl/avl_single-26.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/avl_single-36.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/avl_single-39.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/avl_single-41.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvl-22.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvlmax-15.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvlmax-2.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvlmax-4.c: Ditto. - -2025-06-30 Kito Cheng <kito.cheng@sifive.com> - - PR target/120659 - * gcc.target/riscv/pr120659.c: New test. - -2025-06-30 Richard Biener <rguenther@suse.de> - - * gcc.target/i386/vect-pr82426.c: Pass explicit -ffp-contract=fast. - * gcc.target/i386/vect-pr82426-2.c: New testcase variant with - -ffp-contract=on. - -2025-06-30 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfnmacc and - vfnmsac. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h (DEF_VF_MULOP_CASE_1): - Fix return type. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f64.c: New test. - -2025-06-30 Jakub Jelinek <jakub@redhat.com> - - PR c/120520 - PR c/117023 - * gcc.dg/nonnull-9.c: Tweak for 3 argument nonnull_if_nonzero - attribute support, add further tests. - * gcc.dg/nonnull-12.c: New test. - * gcc.dg/nonnull-13.c: New test. - * gcc.dg/nonnull-14.c: New test. - * c-c++-common/ubsan/nonnull-8.c: New test. - * c-c++-common/ubsan/nonnull-9.c: New test. - -2025-06-30 H.J. Lu <hjl.tools@gmail.com> - - PR target/120840 - * gcc.target/i386/no-callee-saved-1.c: Updated. - * gcc.target/i386/no-callee-saved-2.c: Likewise. - * gcc.target/i386/no-callee-saved-7.c: Likewise. - * gcc.target/i386/no-callee-saved-8.c: Likewise. - * gcc.target/i386/no-callee-saved-9.c: Likewise. - * gcc.target/i386/no-callee-saved-10.c: Likewise. - * gcc.target/i386/no-callee-saved-18.c: Likewise. - * gcc.target/i386/no-callee-saved-19a.c: Likewise. - * gcc.target/i386/no-callee-saved-19c.c: Likewise. - * gcc.target/i386/no-callee-saved-19d.c: Likewise. - * gcc.target/i386/pr119784a.c: Likewise. - * gcc.target/i386/preserve-none-6.c: Likewise. - * gcc.target/i386/preserve-none-7.c: Likewise. - * gcc.target/i386/preserve-none-12.c: Likewise. - * gcc.target/i386/preserve-none-13.c: Likewise. - * gcc.target/i386/preserve-none-14.c: Likewise. - * gcc.target/i386/preserve-none-15.c: Likewise. - * gcc.target/i386/preserve-none-23.c: Likewise. - * gcc.target/i386/pr120840-1a.c: New test. - * gcc.target/i386/pr120840-1b.c: Likewise. - * gcc.target/i386/pr120840-1c.c: Likewise. - * gcc.target/i386/pr120840-1d.c: Likewise. - -2025-06-29 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/117203 - * gm2/isolib/run/pass/testdelete2.mod: New test. - * gm2/pimlib/logitech/run/pass/testdelete2.mod: New test. - * gm2/pimlib/run/pass/testdelete.mod: New test. - -2025-06-29 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/shrink_wrap_separate_check_lea.c: Scan - "lea(l|q)", instead of "leaq". - -2025-06-28 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/concat6.adb: New test. - -2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120644 - * g++.dg/modules/auto-7.h: New test. - * g++.dg/modules/auto-7_a.H: New test. - * g++.dg/modules/auto-7_b.C: New test. - -2025-06-28 Lili Cui <lili.cui@intel.com> - - PR target/120818 - * g++.target/i386/shrink_wrap_separate.C: Relax the check. - -2025-06-28 Jan Hubicka <hubicka@ucw.cz> - Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * gcc.dg/tree-prof/clone-test.c: New test. - * gcc.dg/tree-prof/clone-merge-1.c: Updae template. - -2025-06-27 Marek Polacek <polacek@redhat.com> - - PR c++/120756 - * g++.dg/warn/deprecated-22.C: New test. - -2025-06-27 Jason Merrill <jason@redhat.com> - - * g++.dg/abi/mangle81.C: Add -fno-implicit-constexpr. - * g++.dg/init/vbase1.C: Likewise. - * g++.dg/ipa/ipa-icf-4.C: Likewise. - -2025-06-27 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/sso20.adb: New test. - -2025-06-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/120777 - * g++.dg/cpp26/constexpr-virt-inherit1.C: New test. - * g++.dg/cpp26/constexpr-virt-inherit2.C: New test. - * g++.dg/cpp26/constexpr-virt-inherit3.C: New test. - * g++.dg/cpp26/feat-cxx26.C: Add __cpp_constexpr_virtual_inheritance - tersts. - * g++.dg/cpp2a/constexpr-dtor3.C: Don't expect one error for C++26. - * g++.dg/cpp2a/constexpr-dtor16.C: Don't expect errors for C++26. - * g++.dg/cpp2a/constexpr-dynamic10.C: Likewise. - * g++.dg/cpp0x/constexpr-ice21.C: Likewise. - * g++.dg/cpp0x/constexpr-ice4.C: Likewise. - * g++.dg/abi/mangle1.C: Guard the test on c++23_down. - * g++.dg/abi/mangle81.C: New test. - * g++.dg/ipa/ipa-icf-4.C (A::A): For - __cpp_constexpr_virtual_inheritance >= 202506L add user provided - non-constexpr constructor. - -2025-06-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120784 - * gfortran.dg/interface_63.f90: Extend testcase. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/98735 - PR c++/118904 - * g++.dg/modules/src-loc-1.h: New test. - * g++.dg/modules/src-loc-1_a.H: New test. - * g++.dg/modules/src-loc-1_b.C: New test. - * g++.dg/modules/src-loc-1_c.C: New test. - * g++.dg/modules/ubsan-1_a.C: New test. - * g++.dg/modules/ubsan-1_b.C: New test. - * g++.dg/ubsan/module-1-aux.cc: New test. - * g++.dg/ubsan/module-1.C: New test. - -2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120040 - * g++.dg/modules/pr120040_a.C: New test. - * g++.dg/modules/pr120040_b.C: New test. - -2025-06-27 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-crossmodule-1.c: Update template. - -2025-06-27 Jeff Law <jlaw@ventanamicro.com> - - PR target/119971 - * gcc.target/riscv/pr119971.c: Fix typo. - -2025-06-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120808 - * gcc.dg/vect/bb-slp-pr120808.c: Now also expect FMADDSUB - patterns to be matched. - -2025-06-27 H.J. Lu <hjl.tools@gmail.com> - - PR target/120830 - * g++.target/i386/pr120830.C: New test. - -2025-06-26 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/pru/mov64-subreg-1.c: New test. - * gcc.target/pru/mov64-subreg-2.c: New test. - -2025-06-26 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/120809 - * gcc.dg/analyzer/state-diagram-5.c: Split out into... - * gcc.dg/analyzer/state-diagram-5-html.c: ...this, adding - dg-require-dot... - * gcc.dg/analyzer/state-diagram-5-sarif.c: ...and this. - -2025-06-26 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp26/type-order1.C: New test. - * g++.dg/cpp26/type-order2.C: New test. - * g++.dg/cpp26/type-order3.C: New test. - -2025-06-26 Uros Bizjak <ubizjak@gmail.com> - - PR target/120719 - * gcc.target/i386/crc-builtin-crc32.c: New test. - -2025-06-26 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-crossmodule-1.c: New test. - * gcc.dg/tree-prof/afdo-crossmodule-1b.c: New test. - -2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120711 - * gfortran.dg/asan/array_constructor_1.f90: New test. - -2025-06-26 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/indir-call-prof-2.c: Update template. - -2025-06-26 H.J. Lu <hjl.tools@gmail.com> - - PR target/120819 - * g++.target/i386/pr120819.C: New test. - -2025-06-26 H.J. Lu <hjl.tools@gmail.com> - - PR target/119628 - * gcc.target/i386/no-callee-saved-3.c: Adjust error location. - * gcc.target/i386/no-callee-saved-19a.c: New test. - * gcc.target/i386/no-callee-saved-19b.c: Likewise. - * gcc.target/i386/no-callee-saved-19c.c: Likewise. - * gcc.target/i386/no-callee-saved-19d.c: Likewise. - * gcc.target/i386/no-callee-saved-19e.c: Likewise. - * gcc.target/i386/preserve-none-1.c: Likewise. - * gcc.target/i386/preserve-none-2.c: Likewise. - * gcc.target/i386/preserve-none-3.c: Likewise. - * gcc.target/i386/preserve-none-4.c: Likewise. - * gcc.target/i386/preserve-none-5.c: Likewise. - * gcc.target/i386/preserve-none-6.c: Likewise. - * gcc.target/i386/preserve-none-7.c: Likewise. - * gcc.target/i386/preserve-none-8.c: Likewise. - * gcc.target/i386/preserve-none-9.c: Likewise. - * gcc.target/i386/preserve-none-10.c: Likewise. - * gcc.target/i386/preserve-none-11.c: Likewise. - * gcc.target/i386/preserve-none-12.c: Likewise. - * gcc.target/i386/preserve-none-13.c: Likewise. - * gcc.target/i386/preserve-none-14.c: Likewise. - * gcc.target/i386/preserve-none-15.c: Likewise. - * gcc.target/i386/preserve-none-16.c: Likewise. - * gcc.target/i386/preserve-none-17.c: Likewise. - * gcc.target/i386/preserve-none-18.c: Likewise. - * gcc.target/i386/preserve-none-19.c: Likewise. - * gcc.target/i386/preserve-none-20.c: Likewise. - * gcc.target/i386/preserve-none-21.c: Likewise. - * gcc.target/i386/preserve-none-22.c: Likewise. - * gcc.target/i386/preserve-none-23.c: Likewise. - * gcc.target/i386/preserve-none-24.c: Likewise. - * gcc.target/i386/preserve-none-25.c: Likewise. - * gcc.target/i386/preserve-none-26.c: Likewise. - * gcc.target/i386/preserve-none-27.c: Likewise. - * gcc.target/i386/preserve-none-28.c: Likewise. - * gcc.target/i386/preserve-none-29.c: Likewise. - * gcc.target/i386/preserve-none-30a.c: Likewise. - * gcc.target/i386/preserve-none-30b.c: Likewise. - -2025-06-25 Luis Silva <luiss@synopsys.com> - - * gcc.target/arc/mult-cmp0.c: New test. - -2025-06-25 Luis Silva <luiss@synopsys.com> - - * gcc.target/arc/overflow-1.c: Replace mov.hs with rlc. - -2025-06-25 Shahab Vahedi <shahab@synopsys.com> - - * gcc.target/arc/overflow-2.c: New file. - -2025-06-25 Shahab Vahedi <shahab@synopsys.com> - - * gcc.target/arc/overflow-1.c: New file - -2025-06-25 Richard Biener <rguenther@suse.de> - - PR tree-optimization/109892 - * gcc.dg/vect/vect-reduc-fma-1.c: New testcase. - * gcc.dg/vect/vect-reduc-fma-2.c: Likewise. - * gcc.dg/vect/vect-reduc-fma-3.c: Likewise. - -2025-06-25 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120808 - * gcc.dg/vect/bb-slp-pr120808.c: New testcase. - -2025-06-25 Alfie Richards <alfie.richards@arm.com> - - * gcc.target/aarch64/sve/adr_7.c: New test. - -2025-06-25 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-rva23s.c: New test. - * gcc.target/riscv/arch-rvb23s.c: New test. - -2025-06-24 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmacc and vfmsac. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for acc - variants. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Define - TEST_OUT. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f64.c: New test. - -2025-06-24 Harald Anlauf <anlauf@gmx.de> - Jerry DeLisle <jvdelisle@gcc.gnu.org> - Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/120743 - * gfortran.dg/pr120743.f90: New test. - -2025-06-24 Jakub Jelinek <jakub@redhat.com> - - PR c++/120773 - * g++.dg/parse/linkage5.C: Don't expect error on - extern "C++" int main ();. - * g++.dg/parse/linkage7.C: New test. - * g++.dg/parse/linkage8.C: New test. - * g++.dg/modules/main-2.C: New test. - * g++.dg/modules/main-3.C: New test. - -2025-06-24 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/vec-extract-1.c: Fix test on arch11. - * gcc.target/s390/vector/vec-set-1.c: Run test on arch11. - * gcc.target/s390/vector/vec-extract-2.c: New test. - -2025-06-24 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/autovec_param_asimd-only_2.c: New test. - * gcc.target/aarch64/autovec_param_default_2.c: New test. - * gcc.target/aarch64/autovec_param_prefer-asimd_2.c: New test. - * gcc.target/aarch64/autovec_param_prefer-sve_2.c: New test. - * gcc.target/aarch64/autovec_param_sve-only_2.c: New test. - -2025-06-24 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/cost_model_17.c: New test. - * gcc.target/aarch64/sve/cost_model_18.c: New test. - -2025-06-24 Mikael Morin <morin-mikael@orange.fr> - - * gfortran.dg/select_type_51.f90: New test. - -2025-06-24 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/unroll-vect.c: New test. - -2025-06-24 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/i386/pr64110.c: Update testcase. - -2025-06-24 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/keylocker-aesdecwide128kl.c: Updated to expect - movdqa instead pxor. - * gcc.target/i386/keylocker-aesdecwide256kl.c: Likewise. - * gcc.target/i386/keylocker-aesencwide128kl.c: Likewise. - * gcc.target/i386/keylocker-aesencwide256kl.c: Likewise. - * gcc.target/i386/pr92080-4.c: New test. - * gcc.target/i386/pr92080-5.c: Likewise. - * gcc.target/i386/pr92080-6.c: Likewise. - * gcc.target/i386/pr92080-7.c: Likewise. - * gcc.target/i386/pr92080-8.c: Likewise. - * gcc.target/i386/pr92080-9.c: Likewise. - * gcc.target/i386/pr92080-10.c: Likewise. - * gcc.target/i386/pr92080-11.c: Likewise. - * gcc.target/i386/pr92080-12.c: Likewise. - * gcc.target/i386/pr92080-13.c: Likewise. - * gcc.target/i386/pr92080-14.c: Likewise. - * gcc.target/i386/pr92080-15.c: Likewise. - * gcc.target/i386/pr92080-16.c: Likewise. - * gcc.target/i386/pr92080-17.c: Likewise. - * gcc.target/i386/pr92080-18.c: Likewise. - * gcc.target/i386/pr92080-19.c: Likewise. - * gcc.target/i386/pr92080-20.c: Likewise. - -2025-06-24 H.J. Lu <hjl.tools@gmail.com> - - PR target/70308 - PR target/101366 - PR target/102294 - PR target/108585 - PR target/118276 - PR target/119596 - PR target/119703 - PR target/119704 - * g++.target/i386/memset-pr101366-1.C: New test. - * g++.target/i386/memset-pr101366-2.C: Likewise. - * g++.target/i386/memset-pr108585-1a.C: Likewise. - * g++.target/i386/memset-pr108585-1b.C: Likewise. - * g++.target/i386/memset-pr118276-1a.C: Likewise. - * g++.target/i386/memset-pr118276-1b.C: Likewise. - * g++.target/i386/memset-pr118276-1c.C: Likewise. - * gcc.target/i386/memcpy-strategy-12.c: Likewise. - * gcc.target/i386/memcpy-strategy-13.c: Likewise. - * gcc.target/i386/memset-pr70308-1a.c: Likewise. - * gcc.target/i386/memset-pr70308-1b.c: Likewise. - * gcc.target/i386/memset-strategy-25.c: Likewise. - * gcc.target/i386/memset-strategy-26.c: Likewise. - * gcc.target/i386/memset-strategy-27.c: Likewise. - * gcc.target/i386/memset-strategy-28.c: Likewise. - * gcc.target/i386/memset-strategy-29.c: Likewise. - * gcc.target/i386/memset-strategy-30.c: Likewise. - * gcc.target/i386/memset-strategy-31.c: Likewise. - * gcc.target/i386/auto-init-padding-3.c: Expect XMM stores. - * gcc.target/i386/auto-init-padding-9.c: Likewise. - * gcc.target/i386/mvc17.c: Fail with "rep mov" - * gcc.target/i386/pr111657-1.c: Scan for unrolled loop. Fail - with "rep mov". - * gcc.target/i386/shrink_wrap_1.c: Also pass - -mmemset-strategy=rep_8byte:-1:align. - * gcc.target/i386/sw-1.c: Also pass -mstringop-strategy=rep_byte. - -2025-06-24 Lili Cui <lili.cui@intel.com> - - PR target/120741 - * gcc.target/i386/pr120741.c: New test. - * gcc.target/i386/shrink-wrap-separate-mingw.c: Likewise. - -2025-06-23 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - PR testsuite/116163 - PR sarif-replay/120792 - * sarif-replay.dg/2.1.0-valid/signal-1-check-html.py: New test - script. - * sarif-replay.dg/2.1.0-valid/signal-1.c.sarif: Add html and sarif - generation to options. Invoke the new script to verify that HTML - and SARIF is generated. - * sarif-replay.dg/2.1.0-valid/signal-1-check-sarif-roundtrip.py: New file. - -2025-06-23 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/goacc/acc-wait-1.c: New test. - * gfortran.dg/goacc/acc-wait-1.f90: New test. - -2025-06-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120784 - * gfortran.dg/interface_63.f90: New test. - -2025-06-23 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * g++.dg/analyzer/state-diagram.C: New test. - * gcc.dg/analyzer/analyzer-decls.h (__analyzer_dump_dot): New - decl. - (__analyzer_dump_xml): New decl. - * gcc.dg/analyzer/state-diagram-1-sarif.py: New test script. - * gcc.dg/analyzer/state-diagram-1.c: New test. - * gcc.dg/analyzer/state-diagram-2.c: New test. - * gcc.dg/analyzer/state-diagram-3.c: New test. - * gcc.dg/analyzer/state-diagram-4.c: New test. - * gcc.dg/analyzer/state-diagram-5-html.py: New test script. - * gcc.dg/analyzer/state-diagram-5-sarif.py: New test script. - * gcc.dg/analyzer/state-diagram-5.c: New test. - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Define INCLUDE_STRING. - * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - * lib/htmltest.py (ns): Add SVG namespace. - * lib/sarif.py (get_result_by_index): New. - (get_xml_state): New. - -2025-06-23 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vsaddu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-23 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u8.c: New test. - -2025-06-23 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120608 - * c-c++-common/asan/pr120608-1.c: New test. - * c-c++-common/asan/pr120608-2.c: New test. - -2025-06-23 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120608 - * g++.dg/asan/pr120608.C: New test. - -2025-06-23 Pengfei Li <Pengfei.Li2@arm.com> - - * gcc.dg/vect/vect-early-break_133_pfa6.c: Adjust test. - -2025-06-23 Mikael Morin <morin-mikael@orange.fr> - - * gfortran.dg/non_lvalue_1.f90: New test. - -2025-06-23 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120721 - * g++.dg/torture/pr120721.C: New test. - -2025-06-23 H.J. Lu <hjl.tools@gmail.com> - - PR target/120728 - * gcc.target/i386/avx512bw-vmovdqu16-1.c: Scan vmovdqu for - non-EVEX register operands. - * gcc.target/i386/avx512bw-vmovdqu8-1.c: Likewise. - * gcc.target/i386/avx512fp16-13.c: Likewise. - * gcc.target/i386/pr100865-10b.c: Likewise. - * gcc.target/i386/pr100865-3.c: Likewise. - * gcc.target/i386/pr100865-4b.c: Likewise. - * gcc.target/i386/pr100865-5b.c: Likewise. - * gcc.target/i386/pr90773-15.c: Likewise. - * gcc.target/i386/pr90773-16.c: Likewise. - * gcc.target/i386/pr90773-17.c: Likewise. - * gcc.target/i386/pr95483-5.c: Likewise. - * gcc.target/i386/pr120728.c: New test. - -2025-06-22 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/119830 - * gcc.target/riscv/pr119830.c: New test. - -2025-06-22 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120731 - * gm2/pimlib/logitech/run/pass/teststrings.mod: New test. - -2025-06-21 Jeff Law <jlaw@ventanamicro.com> - - PR target/118241 - * gcc.target/riscv/pr118241.c: New test. - -2025-06-21 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: Update template. - * gcc.dg/tree-prof/indir-call-prof-2.c: Update template. - -2025-06-21 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: Update template. - * gcc.dg/tree-prof/indir-call-prof-2.c: Likewise. - * gcc.dg/tree-prof/afdo-inline.c: New test. - -2025-06-21 Pan Li <pan2.li@intel.com> - - PR target/120652 - * gcc.target/riscv/rvv/autovec/pr120652-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr120652-2.c: New test. - * gcc.target/riscv/rvv/autovec/pr120652-3.c: New test. - * gcc.target/riscv/rvv/autovec/pr120652.h: New test. - -2025-06-20 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120701 - * gcc.dg/pr120701.c: New. - -2025-06-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120654 - * gcc.dg/torture/pr120654.c: New testcase. - -2025-06-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/120708 - * gcc.target/i386/memcpy-pr120708-1.c: New test. - * gcc.target/i386/memcpy-pr120708-2.c: Likewise. - * gcc.target/i386/memcpy-pr120708-3.c: Likewise. - * gcc.target/i386/memcpy-pr120708-4.c: Likewise. - * gcc.target/i386/memcpy-pr120708-5.c: Likewise. - * gcc.target/i386/memcpy-pr120708-6.c: Likewise. - * gcc.target/i386/memset-pr120708-1.c: Likewise. - * gcc.target/i386/memset-pr120708-2.c: Likewise. - * gcc.target/i386/memcpy-strategy-1.c: Drop dg-skip-if. Replace - -march=atom with -mno-avx -msse2 -mtune=generic - -mtune-ctrl=^sse_typeless_stores. - * gcc.target/i386/memcpy-strategy-2.c: Likewise. - * gcc.target/i386/memcpy-vector_loop-1.c: Likewise. - * gcc.target/i386/memcpy-vector_loop-2.c: Likewise. - * gcc.target/i386/memset-vector_loop-1.c: Likewise. - * gcc.target/i386/memset-vector_loop-2.c: Likewise. - -2025-06-20 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Force rocket tuning. - * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-17.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-18.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-19.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-20.c: Likewise. - -2025-06-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vminu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macors. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add - test data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u8.c: New test. - -2025-06-19 Jakub Jelinek <jakub@redhat.com> - - PR target/120689 - * gcc.target/i386/pr120689.c: New test. - -2025-06-19 Mikael Morin <mikael@gcc.gnu.org> - - PR fortran/120713 - * gfortran.dg/save_alloc_character_1.f90: New test. - -2025-06-19 H.J. Lu <hjl.tools@gmail.com> - - PR target/120427 - * gcc.target/i386/cold-attribute-4.c: Compile with -Oz. - * gcc.target/i386/pr120427-1.c: New test. - * gcc.target/i386/pr120427-2.c: Likewise. - * gcc.target/i386/pr120427-3.c: Likewise. - * gcc.target/i386/pr120427-4.c: Likewise. - -2025-06-19 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/zicond-primitiveSemantics_compare_reg_reg_return_reg_reg.c: New test. - -2025-06-19 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120631 - * gcc.dg/dfp/bitint-10.c: New test. - * gcc.dg/dfp/pr120631.c: New test. - -2025-06-19 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/zilsd-code-gen-split-subreg-1.c: New test. - * gcc.target/riscv/zilsd-code-gen-split-subreg-2.c: New test. - -2025-06-19 Lili Cui <lili.cui@intel.com> - - PR target/120697 - * gcc.target/i386/stack-clash-protection.c: New test. - -2025-06-18 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/pr119039-1.c: Add space in search criteria. - -2025-06-18 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/115908 - PR c++/118074 - PR c++/95615 - * g++.dg/coroutines/pr115908.C: Move to... - * g++.dg/coroutines/torture/pr115908.C: ...here. - * g++.dg/coroutines/torture/pr95615-02.C: Move to... - * g++.dg/coroutines/torture/pr95615-01-promise-ctor-throws.C: ...here. - * g++.dg/coroutines/torture/pr95615-03.C: Move to... - * g++.dg/coroutines/torture/pr95615-02-get-return-object-throws.C: ...here. - * g++.dg/coroutines/torture/pr95615-01.C: Move to... - * g++.dg/coroutines/torture/pr95615-03-initial-suspend-throws.C: ...here. - * g++.dg/coroutines/torture/pr95615-04.C: Move to... - * g++.dg/coroutines/torture/pr95615-04-initial-await-ready-throws.C: ...here. - * g++.dg/coroutines/torture/pr95615-05.C: Move to... - * g++.dg/coroutines/torture/pr95615-05-initial-await-suspend-throws.C: ...here. - * g++.dg/coroutines/torture/pr95615.inc: Add more cases and ensure that the - code completes properly when no exceptions are thrown. - * g++.dg/coroutines/torture/pr95615-00-nothing-throws.C: New test. - * g++.dg/coroutines/torture/pr95615-06-initial-await-resume-throws.C: New test. - * g++.dg/coroutines/torture/pr95615-07-body-throws.C: New test. - * g++.dg/coroutines/torture/pr95615-08-initial-suspend-throws-uhe-throws.C: New test. - * g++.dg/coroutines/torture/pr95615-09-body-throws-uhe-throws.C: New test. - -2025-06-18 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/119039 - * gcc.dg/pr119039-2.c: New. - -2025-06-18 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/119039 - * gcc.dg/pr119039-1.c: New. - * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust thread counts. - -2025-06-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/82480 - * gfortran.dg/stat_3.f90: New test. - -2025-06-18 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120631 - * gcc.dg/dfp/bitint-9.c: New test. - -2025-06-18 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vmin.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-06-18 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i8.c: New test. - -2025-06-18 Lili Cui <lili.cui@intel.com> - Michael Matz <matz@suse.de> - - * gcc.target/x86_64/abi/callabi/leaf-2.c: Adjust the test. - * gcc.target/i386/interrupt-16.c: Likewise. - * gfortran.dg/guality/arg1.f90: Likewise. - * gcc.target/i386/avx10_2-comibf-1.c: Likewise. - * g++.target/i386/shrink_wrap_separate.C: New test. - * gcc.target/i386/shrink_wrap_separate_check_lea.c: Likewise. - -2025-06-18 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120661 - * gcc.dg/pr120661-1.c: New. - * gcc.dg/pr120661-2.c: New. - -2025-06-17 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/aggr8.ads: New test. - -2025-06-17 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120673 - * gm2/pim/fail/badmodvar.mod: New test. - * gm2/pim/fail/cyclictypes.mod: New test. - * gm2/pim/fail/cyclictypes2.mod: New test. - * gm2/pim/fail/cyclictypes4.mod: New test. - -2025-06-17 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: New test. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - * g++.dg/coroutines/assume.C: New test. - -2025-06-17 Umesh Kalappa <ukalappa.mips@gmail.com> - - * gcc.target/riscv/zalrsc.c: New test. - -2025-06-17 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/warn-spec-3_a.C: New test. - * g++.dg/modules/warn-spec-3_b.C: New test. - * g++.dg/modules/warn-spec-3_c.C: New test. - -2025-06-17 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120677 - * gcc.c-torture/execute/pr120677.c: New test. - -2025-06-17 Richard Sandiford <richard.sandiford@arm.com> - - PR target/113027 - * gcc.target/aarch64/pr113027-1.c: New test. - * gcc.target/aarch64/pr113027-2.c: Likewise. - * gcc.target/aarch64/pr113027-3.c: Likewise. - * gcc.target/aarch64/pr113027-4.c: Likewise. - * gcc.target/aarch64/pr113027-5.c: Likewise. - * gcc.target/aarch64/pr113027-6.c: Likewise. - * gcc.target/aarch64/pr113027-7.c: Likewise. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - * g++.dg/coroutines/unevaluated.C: New test. - -2025-06-17 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120273 - * g++.dg/coroutines/pr120273.C: New test. - -2025-06-17 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/jump-table-large-code-model.c: Adding - -fno-pie. - * gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv-nofm.c: Ditto. - -2025-06-16 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/pack_fcvt_signed_1.c: Disable the aarch64 vector - cost model to preserve this test. - * gcc.target/aarch64/sve/pack_fcvt_unsigned_1.c: Likewise. - * gcc.target/aarch64/sve/pack_float_1.c: Likewise. - * gcc.target/aarch64/sve/unpack_float_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cvtf_1.c: New test. - * gcc.target/aarch64/sve/unpacked_cvtf_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_cvtf_3.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fcvt_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fcvt_2.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fcvtz_1.c: Likewise. - * gcc.target/aarch64/sve/unpacked_fcvtz_2.c: Likewise. - -2025-06-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/51961 - * gfortran.dg/allocate_with_mold_5.f90: New test. - -2025-06-16 Jason Merrill <jason@redhat.com> - - * g++.dg/template/friend87.C - * g++.dg/cpp2a/concepts-complete1.C - * g++.dg/cpp2a/concepts-complete2.C - * g++.dg/cpp2a/concepts-complete3.C - * g++.dg/cpp2a/concepts-complete4.C: Expect -Wsfinae-incomplete. - -2025-06-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Leverage - helper macros to avoid code duplication. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add - signed and unsigned vx combine test macros. - -2025-06-16 Matthieu Longo <matthieu.longo@arm.com> - Srinath Parvathaneni <srinath.parvathaneni@arm.com> - - * lib/target-supports.exp: - (check_effective_target_aarch64_gas_has_build_attributes): New checker. - * gcc.target/aarch64/build-attributes/aarch64-build-attributes.exp: New DejaGNU file. - * gcc.target/aarch64/build-attributes/build-attribute-bti.c: New test. - * gcc.target/aarch64/build-attributes/build-attribute-gcs.c: New test. - * gcc.target/aarch64/build-attributes/build-attribute-pac.c: New test. - * gcc.target/aarch64/build-attributes/build-attribute-standard.c: New test. - * gcc.target/aarch64/build-attributes/no-build-attribute-bti.c: New test. - * gcc.target/aarch64/build-attributes/no-build-attribute-gcs.c: New test. - * gcc.target/aarch64/build-attributes/no-build-attribute-pac.c: New test. - * gcc.target/aarch64/build-attributes/no-build-attribute-standard.c: New test. - -2025-06-16 yxj-github-437 <2457369732@qq.com> - - * g++.dg/cpp0x/variadic-crash7.C: New test. - -2025-06-16 Matthieu Longo <matthieu.longo@arm.com> - - * gcc.target/aarch64/bti-1.c: Emit assembly comments, and update - test assertion. - -2025-06-16 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-53.c: Update testcase. - -2025-06-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> - - * gcc.target/xtensa/elim_GP_regmove_0.c: Remove. - * gcc.target/xtensa/elim_GP_regmove_1.c: Remove. - -2025-06-15 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vmaxu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-15 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vmaxu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u8.c: New test. - -2025-06-14 Georg-Johann Lay <avr@gjlay.de> - - Backported from master: - 2025-06-14 Georg-Johann Lay <avr@gjlay.de> - - PR rtl-optimization/120423 - PR rtl-optimization/116389 - * gcc.target/avr/torture/pr120423-1.c: New test. - * gcc.target/avr/torture/pr120423-2.c: New test. - * gcc.target/avr/torture/pr120423-116389.c: New test. - -2025-06-14 Iain Sandoe <iain@sandoe.co.uk> - - * g++.dg/coroutines/coro1-missing-await-method.C: Adjust for - improved diagnostics. - * g++.dg/coroutines/coro-missing-final-suspend.C: Likewise. - * g++.dg/coroutines/pr104051.C: Move to... - * g++.dg/coroutines/pr104051-0.C: ...here. - * g++.dg/coroutines/pr104051-1.C: New test. - -2025-06-13 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/116775 - * g++.dg/coroutines/pr116775.C: New test. - -2025-06-13 Spencer Abson <spencer.abson@arm.com> - - PR target/118150 - * gcc.target/aarch64/sve/acle/general/not_1.c: New test. - -2025-06-13 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR testsuite/119862 - * gcc.dg/pr119160.c: Added empty definitions for - `__cyg_profile_func_enter` and `__cyg_profile_func_exit` - functions. - -2025-06-12 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120638 - * gcc.dg/pr120638.c: New test. - -2025-06-12 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120630 - * gcc.dg/pr120630.c: New test. - * gcc.c-torture/execute/pr120630.c: New test. - -2025-06-12 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120629 - * g++.dg/opt/pr120629.C: New test. - -2025-06-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vmax.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-06-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vmax.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-06-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for max func 1 vmax.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i8.c: New test. - -2025-06-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for max func 1 vmax.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i8.c: New test. - -2025-06-12 Richard Sandiford <richard.sandiford@arm.com> - - PR target/120624 - * gcc.target/aarch64/sme/za_state_7.c: New test. - -2025-06-12 Georg-Johann Lay <avr@gjlay.de> - - PR middle-end/117811 - PR testsuite/52641 - * gcc.dg/torture/pr117811.c: Fix for int < 32 bit. - -2025-06-12 Gwenole Beauchesne <gb.devel@gmail.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/41201 - PR c++/48026 - * c-c++-common/pragma-optimize-1.c: New test. - * g++.target/i386/vect-pragma-target-1.C: New test. - * g++.target/i386/vect-pragma-target-2.C: New test. - * gcc.target/i386/vect-pragma-target-1.c: New test. - * gcc.target/i386/vect-pragma-target-2.c: New test. - -2025-06-11 Martin Uecker <uecker@tugraz.at> - - PR c/120510 - * gcc.dg/old-style-prom-4.c: New test. - -2025-06-11 Edwin Lu <ewlu@rivosinc.com> - - * gcc.target/riscv/rvv/vsetvl/pr117974.c: New test. - -2025-06-11 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfnmadd and - vfnmsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for neg - variants. Fix sign for sub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_data.h: Add data for neg - variants. Fix data for sub. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Rename x to f. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Add neg - argument. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: Likewise. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f64.c: New test. - -2025-06-11 Martin Uecker <uecker@tugraz.at> - - PR c/120303 - * gcc.dg/pr120303.c: New test. - -2025-06-11 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/90693 - * gcc.target/i386/pr90693-3.c: New test. - * gcc.target/i386/pr90693-4.c: New test. - * gcc.target/i386/pr90693-5.c: New test. - * gcc.target/i386/pr90693-6.c: New test. - -2025-06-11 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/html-output/missing-semicolon.py: Update for changes - to diagnostic elements. - * gcc.dg/format/diagnostic-ranges-html.py: Likewise. - * gcc.dg/plugin/diagnostic-test-metadata-html.py: Likewise. Drop - out-of-date comment. - * gcc.dg/plugin/diagnostic-test-paths-2.py: Likewise. - * gcc.dg/plugin/diagnostic-test-paths-4.py: Likewise. Drop - out-of-date comment. - * gcc.dg/plugin/diagnostic-test-show-locus.py: Likewise. - * lib/htmltest.py (get_diag_by_index): Update to use search by id. - (get_message_within_diag): Update to use search by class. - -2025-06-11 David Malcolm <dmalcolm@redhat.com> - - PR other/120610 - * gcc.dg/format/diagnostic-ranges-html.py: Remove out-of-date - comment. - -2025-06-10 Vineet Gupta <vineetg@rivosinc.com> - - * gcc.target/riscv/rvv/vtype-call-clobbered.c: Fix -mabi. - -2025-06-10 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120434 - * gcc.target/i386/pr120434-2.c: New test. - -2025-06-10 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120434 - * gcc.target/i386/pr120434-1.c: New test. - -2025-06-10 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/ventana-16122.c: New test. - -2025-06-10 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vremu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-10 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vremu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u8.c: New test. - -2025-06-10 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/binop/vrem-rv32gcv.c: Adjust the - asm check for vremu. - * gcc.target/riscv/rvv/autovec/binop/vrem-rv64gcv.c: Ditto. - -2025-06-09 Martin Uecker <uecker@tugraz.at> - - PR c/120510 - * gcc.dg/pr120510.c - -2025-06-09 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120495 - PR c++/115605 - * g++.dg/coroutines/pr120495.C: New test. - * g++.dg/pr115605.C: New test. - -2025-06-09 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120606 - * gm2/pim/pass/forarray.mod: New test. - -2025-06-09 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119779 - * gm2.dg/doc/examples/run/pass/doc-examples-run-pass.exp: New test. - * gm2.dg/doc/examples/run/pass/exampleadd2.mod: New test. - -2025-06-09 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/html-output/missing-semicolon.py: Update expected <title> - text. Drop out-of-date comment. - -2025-06-09 Alfie Richards <alfie.richards@arm.com> - - PR testsuite/120519 - * g++.target/powerpc/mvc-symbols1.C: Modify tests. - * g++.target/powerpc/mvc-symbols2.C: Ditto. - * g++.target/powerpc/mvc-symbols3.C: Ditto. - * g++.target/powerpc/mvc-symbols4.C: Ditto. - -2025-06-09 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/cost_model_16.c: New test. - -2025-06-09 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx512f-pr103750-3.c: New test. - -2025-06-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vrem.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-06-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vrem.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i8.c: New test. - -2025-06-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/binop/vrem-rv32gcv.c: Adjust the - asm check for vrem. - * gcc.target/riscv/rvv/autovec/binop/vrem-rv64gcv.c: Ditto. - -2025-06-08 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * gcc.dg/tree-prof/clone-merge-1.c: Enable only for - -fauto-profile. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - PR target/120203 - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-74.c: Expect - an additional FRRM. - -2025-06-08 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119164 - * gcc.target/riscv/rvv/base/pr119164.c: New test. - -2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120533 - * gcc.dg/tree-ssa/pr35286.c: Add -fno-ssa-phiopt. - * gcc.dg/tree-ssa/split-path-6.c: Likewise. - * gcc.dg/tree-ssa/split-path-7.c: Likewise. - * gcc.dg/tree-ssa/phiprop-2.c: Move the check for MIN_EXPR to phiopt1. - -2025-06-07 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119650 - * gm2/iso/fail/CHAR.mod: New test. - * gm2/iso/run/pass/CHAR.mod: New test. - * gm2/iso/run/pass/importself.mod: New test. - * gm2/pimlib/run/pass/testwrite.mod: New test. - * gm2/pimlib/run/pass/testwritechar.mod: New test. - -2025-06-06 Jason Merrill <jason@redhat.com> - - PR c++/120555 - * g++.dg/cpp1z/constexpr-if39.C: New test. - -2025-06-06 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/arc/fma-1.c: Make "a" extern so the optimizers can - see any value and optimize away the key computation. - -2025-06-06 Tobias Burnus <tburnus@baylibre.com> - Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/omp_get_num_devices_initial_device-2.c: New test. - * c-c++-common/gomp/omp_get_num_devices_initial_device.c: New test. - * gfortran.dg/gomp/omp_get_num_devices_initial_device-2.f90: New test. - * gfortran.dg/gomp/omp_get_num_devices_initial_device.f90: New test. - -2025-06-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c: Adjust - the asm check for vdivu. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv.c: Ditto. - -2025-06-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check - for vdivu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-06-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check - for vdivu.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u8.c: New test. - -2025-06-06 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120542 - * gm2/iso/fail/badreturn.mod: New test. - * gm2/iso/fail/badreturn2.mod: New test. - * gm2/iso/pass/modulereturn.mod: New test. - * gm2/iso/pass/modulereturn2.mod: New test. - -2025-06-06 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/aggr7.ads: New test. - -2025-06-06 Jiawei <jiawei@iscas.ac.cn> - Jiawei Chen <jiawei@iscas.ac.cn> - Yangyu Chen <cyy@cyyself.name> - Tang Haojin <tanghaojin@outlook.com> - - * gcc.target/riscv/mcpu-xiangshan-kunminghu.c: New test. - -2025-06-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120032 - * gcc.target/i386/pr120032-3.c: New testcase. - -2025-06-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120032 - * gcc.target/i386/pr120032-1.c: New testcase. - * gcc.target/i386/pr120032-2.c: Likewise. - -2025-06-05 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/nozicond-3.c: New test. - -2025-06-05 Uros Bizjak <ubizjak@gmail.com> - - PR target/120553 - * gcc.target/i386/pr120553.c: New test. - -2025-06-05 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120231 - * gcc.dg/tree-ssa/pr120231-2.c: New test. - * gcc.dg/tree-ssa/pr120231-3.c: New test. - * gfortran.dg/inline_matmul_16.f90: Don't expect any _gfortran_matmul - strings in optimized dump. - * gfortran.dg/inline_matmul_26.f90: New test. - * g++.dg/tree-ssa/loop-split-1.C (d): New variable. - (main): Use std::log (i + d) instead of std::log (i). - -2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/89606 - * gcc.target/aarch64/vld2-1.c: New test. - -2025-06-05 Patrick Palka <ppalka@redhat.com> - - PR c++/120224 - * g++.dg/cpp0x/alias-decl-80.C: New test. - -2025-06-05 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/120547 - * gcc.dg/bitint-123.c: New test. - -2025-06-05 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/nozicond-1.c: New test. - * gcc.target/riscv/nozicond-2.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-ssu64xl.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-sstvecd.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-sstvala.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-sscounterenw.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-ssccptr.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-smrnmi.c: New test. - -2025-06-05 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-smcsrind.c: New test. - -2025-06-05 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/opt7.ads: New test. - * gnat.dg/specs/opt7_pkg.ads: New helper. - * gnat.dg/specs/opt7_pkg.adb: Likewise. - -2025-06-05 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/sve/pr96357.c: Change to avoid producing - a conditional FIX_TRUNC_EXPR, whilst still reproducing the bug - in PR96357. - * gcc.dg/tree-ssa/ifcvt-fix-trunc-1.c: New test. - * gcc.dg/tree-ssa/ifcvt-fix-trunc-2.c: Likewise. - -2025-06-05 Hongyu Wang <hongyu.wang@intel.com> - - * g++.target/i386/pr112824-2.C: New test. - -2025-06-04 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * gcc.dg/tree-prof/clone-merge-1.c: New test. - -2025-06-04 Jason Merrill <jason@redhat.com> - - PR c++/120502 - * g++.dg/cpp2a/constexpr-prvalue2.C: New test. - -2025-06-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/14295 - PR tree-optimization/108358 - PR tree-optimization/114169 - * gcc.dg/tree-ssa/20031106-6.c: Un-xfail. Add scan for forwprop1. - * g++.dg/opt/pr66119.C: Disable forwprop since that does - the copy prop now. - * gcc.dg/tree-ssa/pr108358-a.c: New test. - * gcc.dg/tree-ssa/pr114169-1.c: New test. - * gcc.c-torture/execute/builtins/pr22237-1-lib.c: New test. - * gcc.c-torture/execute/builtins/pr22237-1.c: New test. - * gcc.dg/tree-ssa/pr57361.c: Disable forwprop1. - * gcc.dg/tree-ssa/pr57361-1.c: New test. - -2025-06-04 Pengfei Li <Pengfei.Li2@arm.com> - - * gcc.target/aarch64/acle/uhadd_1.c: New test. - -2025-06-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120231 - * gcc.dg/tree-ssa/pr120231-1.c: New test. - -2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-60.c: New test. - -2025-06-04 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120447 - * gcc.dg/pr120447.c: New test. - -2025-06-04 H.J. Lu <hjl.tools@gmail.com> - - PR debug/120525 - * gcc.dg/pr120525.c: New test. - -2025-06-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/120483 - * gfortran.dg/save_8.f90: New test. - -2025-06-04 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-shlocofideleg.c: New test. - -2025-06-04 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/pr49095-2.c: New test. - -2025-06-04 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/pr79173-13.c: New test. - * gcc.target/i386/pr79173-14.c: Ditto. - * gcc.target/i386/pr79173-15.c: Ditto. - * gcc.target/i386/pr79173-16.c: Ditto. - * gcc.target/i386/pr79173-17.c: Ditto. - * gcc.target/i386/pr79173-18.c: Ditto. - -2025-06-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/99838 - * gfortran.dg/coarray_data_2.f90: New test. - -2025-06-03 Martin Uecker <uecker@tugraz.at> - - PR c/120078 - * gcc.dg/Wjump-misses-init-3.c: New test. - -2025-06-03 Martin Uecker <uecker@tugraz.at> - - * gcc.dg/gnu23-tag-composite-6.c: Update. - -2025-06-03 Martin Uecker <uecker@tugraz.at> - - PR c/116892 - * gcc.dg/pr116892.c: New test. - -2025-06-03 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/cpp-1.C - * g++.dg/modules/cpp-3.C - * g++.dg/modules/cpp-4.C: Specify -fno-modules. - -2025-06-03 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c: Adjust - the asm check for vdiv. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv.c: Ditto. - -2025-06-03 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - check for vdiv.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-06-03 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vdiv.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vdiv run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i8.c: New test. - -2025-06-03 Paul-Antoine Arras <parras@baylibre.com> - - PR target/119100 - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_data.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: New test. - -2025-06-03 H.J. Lu <hjl.tools@gmail.com> - - PR target/103750 - * g++.target/i386/pr103750.C: New test. - -2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/116824 - * gcc.dg/tree-ssa/phiprop-2.c: New test. - -2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120451 - * gcc.dg/tree-ssa/cswtch-6.c: New test. - -2025-06-02 Alexandre Oliva <oliva@adacore.com> - - PR rtl-optimization/120424 - PR middle-end/118939 - * g++.target/arm/pr120424.C: New. - * gnat.dg/controlled9.adb: New. - * gnat.dg/controlled9_pkg.ads: New. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * g++.dg/ext/is_destructible2.C: Add more cases. - -2025-06-02 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-59.c: New test. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/120506 - * g++.dg/cpp2a/constinit21.C: New test. - -2025-06-02 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/118903 - * g++.dg/coroutines/pr118903.C: New test. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * g++.dg/ext/is_destructible2.C: New test. - -2025-06-02 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * g++.dg/ext/has_trivial_destructor-3.C: New test. - -2025-06-02 Stafford Horne <shorne@gmail.com> - - * gcc.target/or1k/return-2.c: Fix test. - -2025-06-02 Stafford Horne <shorne@gmail.com> - - * gcc.target/or1k/call-1.c: New test. - * gcc.target/or1k/got-1.c: New test. - -2025-06-02 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp (check_effective_target_tls_link): New. - * g++.dg/tls/pr102496-1.C: Require tls_link. - * g++.dg/tls/pr77285-1.C: Likewise. - -2025-06-02 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/declare-variant-2.c: Update expected output. - * c-c++-common/gomp/metadirective-condition-constexpr.c: New. - * c-c++-common/gomp/metadirective-condition.c: New. - * c-c++-common/gomp/metadirective-error-recovery.c: Update expected - output. - * g++.dg/gomp/metadirective-condition-class.C: New. - * g++.dg/gomp/metadirective-condition-template.C: New. - -2025-06-02 Liao Shihua <shihua@iscas.ac.cn> - - * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: Change - `autovec-mode` to `riscv-autovec-mode` in dg-options. - -2025-06-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/119856 - * gfortran.dg/pr119856.f90: New test. - -2025-06-01 Martin Uecker <uecker@tugraz.at> - - PR c/120380 - * gcc.dg/pr120380.c: New test. - -2025-06-01 Jason Merrill <jason@redhat.com> - - PR c++/120123 - * g++.dg/cpp23/explicit-obj-lambda18.C: Move to... - * g++.dg/cpp2a/concepts-lambda24.C: ...here. - -2025-06-01 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120497 - * gm2/pim/pass/ReturnType.mod: New test. - * gm2/pim/pass/ReturnType2.mod: New test. - -2025-05-31 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120357 - * gcc.dg/vect/vect-early-break_136-pr120357.c: New testcase. - -2025-05-31 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120389 - * gm2/pim/fail/testcharint.mod: New test. - * gm2/pim/fail/testindrx.mod: New test. - * gm2/pim/pass/testxindr.mod: New test. - * gm2/pim/pass/testxindr2.mod: New test. - * gm2/pim/pass/testxindr3.mod: New test. - -2025-05-30 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/format/diagnostic-ranges-html.py: New test script. - * gcc.dg/format/diagnostic-ranges.c: Add HTML generation to - options, and invoke the new script to check the HTML output. - -2025-05-30 Jason Merrill <jason@redhat.com> - - PR c++/120123 - * g++.dg/cpp23/explicit-obj-lambda18.C: New test. - -2025-05-30 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102599 - PR fortran/114022 - * gfortran.dg/inquiry_type_ref_8.f90: New test. - -2025-05-30 Jason Merrill <jason@redhat.com> - - PR c++/113563 - * g++.dg/cpp23/explicit-obj-lambda17.C: New test. - -2025-05-30 Qing Zhao <qing.zhao@oracle.com> - - PR c/120354 - * gcc.dg/pr120354.c: New test. - -2025-05-30 Qing Zhao <qing.zhao@oracle.com> - - PR c/120353 - * gcc.dg/pr120353.c: New test. - -2025-05-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/avg.h: Add test helper macros. - * gcc.target/riscv/rvv/autovec/avg_data.h: Add test data for - avg_ceil. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i32-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i16.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i32-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i16.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i64.c: New test. - -2025-05-30 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vls/avg-4.c: Update asm check - to vaadd. - * gcc.target/riscv/rvv/autovec/vls/avg-5.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/avg-6.c: Ditto. - * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv64gcv.c: Ditto. - -2025-05-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120341 - * gcc.dg/torture/pr120341-1.c: New testcase. - * gcc.dg/torture/pr120341-2.c: Likewise. - -2025-05-30 Jakub Jelinek <jakub@redhat.com> - - PR target/120480 - * gcc.dg/pr120480.c: New test. - -2025-05-30 Julian Brown <julian@codesourcery.com> - - * c-c++-common/gomp/declare-mapper-3.c: Enable for C. - * c-c++-common/gomp/declare-mapper-4.c: Likewise. - * c-c++-common/gomp/declare-mapper-5.c: Likewise. - * c-c++-common/gomp/declare-mapper-6.c: Likewise. - * c-c++-common/gomp/declare-mapper-7.c: Likewise. - * c-c++-common/gomp/declare-mapper-8.c: Likewise. - * c-c++-common/gomp/declare-mapper-9.c: Likewise. - * c-c++-common/gomp/declare-mapper-10.c: Likewise. - * c-c++-common/gomp/declare-mapper-12.c: Likewise. - * c-c++-common/gomp/map-6.c: Update dg-error. - * gcc.dg/gomp/udr-3.c: Update for change to dg-note. - * c-c++-common/gomp/declare-mapper-11.c: New. - * gcc.dg/gomp/declare-mapper-10.c: New test. - * gcc.dg/gomp/declare-mapper-11.c: New test. - * gcc.dg/gomp/declare-mapper-13.c: New test. - -2025-05-30 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120355 - * gfortran.dg/interface_62.f90: New test. - -2025-05-30 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/diagnostic/bad-binary-ops-highlight-colors.C: Update - expected multiline output for quoted source and underlines to - reflect emitting color codes when changes happen, rather than - per character. - * g++.dg/diagnostic/long-short-colorization.C: Likewise. - * g++.dg/plugin/show-template-tree-color-labels.C: Likewise. - * gcc.dg/bad-binary-ops-highlight-colors.c: Likewise. - * gcc.dg/format/colors.c: Likewise. - -2025-05-30 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/120347 - * gcc.dg/torture/pr120347.c: New test. - -2025-05-30 Julian Brown <julian@codesourcery.com> - Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/map-6.c: Update error scan output. - * c-c++-common/gomp/declare-mapper-3.c: New test (only enabled for C++ - for now). - * c-c++-common/gomp/declare-mapper-4.c: Likewise. - * c-c++-common/gomp/declare-mapper-5.c: Likewise. - * c-c++-common/gomp/declare-mapper-6.c: Likewise. - * c-c++-common/gomp/declare-mapper-7.c: Likewise. - * c-c++-common/gomp/declare-mapper-8.c: Likewise. - * c-c++-common/gomp/declare-mapper-9.c: Likewise. - * c-c++-common/gomp/declare-mapper-10.c: Likewise. - * c-c++-common/gomp/declare-mapper-12.c: Likewise. - * g++.dg/gomp/declare-mapper-1.C: New test. - * g++.dg/gomp/declare-mapper-2.C: New test. - * g++.dg/gomp/declare-mapper-3.C: New test. - -2025-05-30 Martin Uecker <uecker@tugraz.at> - - PR c/120381 - * gcc.dg/pr120381.c: New test. - * gcc.dg/gnu23-tag-composite-6.c: New test. - -2025-05-29 Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - * lib/target-supports.exp: Enable autofdo tests for aarch64. - -2025-05-29 Jason Merrill <jason@redhat.com> - - PR c++/113563 - * g++.dg/cpp23/explicit-obj-lambda16.C: New test. - -2025-05-29 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/109283 - * g++.dg/coroutines/pr109283.C: New test. - -2025-05-29 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp1z/constexpr-lambda29.C: New test. - -2025-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * gfortran.dg/c_f_pointer_tests_6.f90: Adjust dg-error - directive. - -2025-05-29 Alice Carlotti <alice.carlotti@arm.com> - Alfie Richards <alfie.richards@arm.com> - - * g++.target/i386/mv-symbols1.C: New test. - * g++.target/i386/mv-symbols2.C: New test. - * g++.target/i386/mv-symbols3.C: New test. - * g++.target/i386/mv-symbols4.C: New test. - * g++.target/i386/mv-symbols5.C: New test. - * g++.target/i386/mvc-symbols1.C: New test. - * g++.target/i386/mvc-symbols2.C: New test. - * g++.target/i386/mvc-symbols3.C: New test. - * g++.target/i386/mvc-symbols4.C: New test. - -2025-05-29 Alice Carlotti <alice.carlotti@arm.com> - Alfie Richards <alfie.richards@arm.com> - - * g++.target/powerpc/mvc-symbols1.C: New test. - * g++.target/powerpc/mvc-symbols2.C: New test. - * g++.target/powerpc/mvc-symbols3.C: New test. - * g++.target/powerpc/mvc-symbols4.C: New test. - -2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/declare-variant-2.c: Adjust patterns now that - C and C++ now behave similarly. - * c-c++-common/gomp/metadirective-error-recovery.c: New. - -2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/120180 - * c-c++-common/gomp/pr120180.c: New. - -2025-05-29 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/120453 - * g++.dg/coroutines/pr120453.C: New test. - -2025-05-29 Martin Jambor <mjambor@suse.cz> - - PR ipa/120295 - * gcc.dg/ipa/pr120295.c: New test. - -2025-05-29 Pranav Gorantla <Pranav.Gorantla@amd.com> - - * gcc.target/i386/reduc-pshuf.c: New test. - -2025-05-29 Jerry Zhang Jian <jerry.zhangjian@sifive.com> - - * gcc.target/riscv/arch-57.c: New test - * gcc.target/riscv/arch-58.c: New test - -2025-05-29 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm - check for vmul.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - -2025-05-29 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vmul.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vmul run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i8.c: New test. - -2025-05-29 Jason Merrill <jason@redhat.com> - - PR c++/107600 - * g++.dg/ext/is_destructible1.C: New test. - -2025-05-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119586 - * gfortran.dg/comma_format_extension_1.f: Update dg-options to - "-std=legacy". - * gfortran.dg/comma_format_extension_3.f: Likewise. - * gfortran.dg/continuation_13.f90: Likewise. - -2025-05-28 Yuao Ma <c8ef@outlook.com> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/113152 - * gfortran.dg/dec_math_3.f90: Test invalid input. - * gfortran.dg/dec_math_5.f90: Test valid output. - * gfortran.dg/dec_math_6.f90: New test. - -2025-05-28 Robin Dapp <rdapp@ventanamicro.com> - - PR target/120436 - * gcc.target/riscv/rvv/base/pr120436.c: New test. - -2025-05-28 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/namespace-8_a.C: New test. - * g++.dg/modules/namespace-8_b.C: New test. - * g++.dg/modules/namespace-9_a.C: New test. - * g++.dg/modules/namespace-9_b.C: New test. - * g++.dg/modules/namespace-10_a.C: New test. - * g++.dg/modules/namespace-10_b.C: New test. - * g++.dg/modules/namespace-10_c.C: New test. - * g++.dg/modules/namespace-11_a.C: New test. - * g++.dg/modules/namespace-11_b.C: New test. - * g++.dg/modules/namespace-11_c.C: New test. - -2025-05-28 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/avg.h: New test. - * gcc.target/riscv/rvv/autovec/avg_data.h: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i32-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i16.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i32-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i16.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i32.c: New test. - * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i64.c: New test. - * gcc.target/riscv/rvv/autovec/avg_run.h: New test. - -2025-05-28 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vls/avg-1.c: Update asm check - to vaadd. - * gcc.target/riscv/rvv/autovec/vls/avg-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/avg-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv64gcv.c: Ditto. - -2025-05-28 liuhongt <hongtao.liu@intel.com> - - * gcc.dg/vect/bb-slp-pr119181.c: New test. - -2025-05-27 Alejandro Colomar <alx@kernel.org> - - PR c/117025 - * gcc.dg/countof-compat.c: New test. - * gcc.dg/countof-no-compat.c: New test. - * gcc.dg/countof-pedantic.c: New test. - * gcc.dg/countof-pedantic-errors.c: New test. - -2025-05-27 Alejandro Colomar <alx@kernel.org> - - PR c/117025 - * gcc.dg/countof-stdcountof.c: New test. - -2025-05-27 Alejandro Colomar <alx@kernel.org> - Martin Uecker <uecker@tugraz.at> - - PR c/117025 - * gcc.dg/countof-compile.c: New test. - * gcc.dg/countof-vla.c: New test. - * gcc.dg/countof-vmt.c: New test. - * gcc.dg/countof-zero-compile.c: New test. - * gcc.dg/countof-zero.c: New test. - * gcc.dg/countof.c: New test. - -2025-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * gfortran.dg/pr120049_a.f90: Update test directives. - * gfortran.dg/pr120049_b.f90: Update test directives - * gfortran.dg/pr120049_2.f90: New test. - Co-Authored-By: Steve Kargl <kargl@gcc.gnu.org> - -2025-05-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/101735 - * gfortran.dg/inquiry_type_ref_7.f90: New test. - -2025-05-27 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/sso19.adb: New test. - * gnat.dg/sso19_pkg.ads, gnat.dg/sso19_pkg.adb: New helper. - -2025-05-27 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/html-output/missing-semicolon.c: Add ":javascript=no" to - html output. - * gcc.dg/html-output/missing-semicolon.py: Move repeated - definitions into lib/htmltest.py. - * gcc.dg/plugin/diagnostic_group_plugin.cc: Update for template - changes. - * gcc.dg/plugin/diagnostic-test-metadata-html.c: Add - ":javascript=no" to html output. Add - "-fdiagnostics-show-line-numbers". - * gcc.dg/plugin/diagnostic-test-metadata-html.py: Move repeated - definitions into lib/htmltest.py. Add checks of annotated source. - * gcc.dg/plugin/diagnostic-test-paths-2.c: Add ":javascript=no" to - html output. - * gcc.dg/plugin/diagnostic-test-paths-2.py: Move repeated - definitions into lib/htmltest.py. Add checks of execution path. - * gcc.dg/plugin/diagnostic-test-paths-4.c: Add - -fdiagnostics-add-output=experimental-html:javascript=no. Add - invocation ot diagnostic-test-paths-4.py. - * gcc.dg/plugin/diagnostic-test-paths-4.py: New test script. - * gcc.dg/plugin/diagnostic-test-show-locus-bw-line-numbers.c: Add - -fdiagnostics-add-output=experimental-html:javascript=no. Add - invocation of diagnostic-test-show-locus.py. - * gcc.dg/plugin/diagnostic-test-show-locus.py: New test script. - * lib/htmltest.py: New test support script. - -2025-05-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117965 - * g++.dg/tree-ssa/pr117965-1.C: New testcase. - * g++.dg/tree-ssa/pr117965-2.C: Likewise. - -2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/119884 - * gcc.target/i386/pr119884.c: New test. - -2025-05-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vxor.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-27 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check - for vxor.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vxor run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u8.c: New test. - -2025-05-27 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/vector/vec-extract-1.c: New test. - * gcc.target/s390/vector/vec-set-1.c: New test. - -2025-05-27 xuli <xuli1@eswincomputing.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add signed vec SAT_ADD IMM form1. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add sat_s_add_imm data. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i8.c: New test. - -2025-05-27 xuli <xuli1@eswincomputing.com> - - * gcc.target/riscv/sat/sat_s_add_imm-2.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-1-i16.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-3.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-1-i32.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-4.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-1-i64.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-1.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-1-i8.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-run-2.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-run-1-i16.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-run-3.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-run-1-i32.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-run-4.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-run-1-i64.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-run-1.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm-run-1-i8.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-2-1.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i16.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-3-1.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i32.c: ...here. - * gcc.target/riscv/sat/sat_s_add_imm-1-1.c: Move to... - * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i8.c: ...here. - -2025-05-26 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/118694 - * c-c++-common/gomp/attrs-metadirective-3.c: Change to never - expect 'omp metadirective' in the dump. If !offload_nvptx, check - that no 'teams' shows up in the dump; for offload_nvptx, expect - OMP_NEXT_VARIANT and an error about directive between 'target' - and 'teams'. - * c-c++-common/gomp/metadirective-3.c: Likewise. - -2025-05-26 Tobias Burnus <tburnus@baylibre.com> - - PR c++/120413 - * g++.dg/gomp/target-4.C: New test. - -2025-05-26 Richard Biener <rguenther@suse.de> - - * gcc.target/i386/vect-epilogues-5.c: Adjust. - -2025-05-24 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats-4/elabd.lst: New file. - * ada/acats-4/floatstore.lst: Likewise. - * ada/acats-4/norun.lst: Likewise. - * ada/acats-4/run_acats.sh: Likewise. - * ada/acats-4/run_all.sh: Likewise. - * ada/acats-4/run_test.exp: Likewise. - * ada/acats-4/stackcheck.lst: Likewise. - * ada/acats-4/support/acats42.lst: Likewise. - * ada/acats-4/support/checkfil.ada: Likewise. - * ada/acats-4/support/enumchek.ada: Likewise. - * ada/acats-4/support/f340a000.a: Likewise. - * ada/acats-4/support/f340a001.a: Likewise. - * ada/acats-4/support/f341a00.a: Likewise. - * ada/acats-4/support/f350a00.a: Likewise. - * ada/acats-4/support/f350b00.a: Likewise. - * ada/acats-4/support/f360a00.a: Likewise. - * ada/acats-4/support/f360b00.a: Likewise. - * ada/acats-4/support/f390a00.a: Likewise. - * ada/acats-4/support/f392a00.a: Likewise. - * ada/acats-4/support/f392c00.a: Likewise. - * ada/acats-4/support/f392d00.a: Likewise. - * ada/acats-4/support/f393a00.a: Likewise. - * ada/acats-4/support/f393b00.a: Likewise. - * ada/acats-4/support/f394a00.a: Likewise. - * ada/acats-4/support/f3a1a00.a: Likewise. - * ada/acats-4/support/f3a2a00.a: Likewise. - * ada/acats-4/support/f416a00.a: Likewise. - * ada/acats-4/support/f431a00.a: Likewise. - * ada/acats-4/support/f433a00.a: Likewise. - * ada/acats-4/support/f452a00.a: Likewise. - * ada/acats-4/support/f458a00.a: Likewise. - * ada/acats-4/support/f460a00.a: Likewise. - * ada/acats-4/support/f552a00.a: Likewise. - * ada/acats-4/support/f611a00.a: Likewise. - * ada/acats-4/support/f611b00.a: Likewise. - * ada/acats-4/support/f650a00.a: Likewise. - * ada/acats-4/support/f650b00.a: Likewise. - * ada/acats-4/support/f730a000.a: Likewise. - * ada/acats-4/support/f730a001.a: Likewise. - * ada/acats-4/support/f731a00.a: Likewise. - * ada/acats-4/support/f732a00.a: Likewise. - * ada/acats-4/support/f732b00.a: Likewise. - * ada/acats-4/support/f732c00.a: Likewise. - * ada/acats-4/support/f750a00.a: Likewise. - * ada/acats-4/support/f760a00.a: Likewise. - * ada/acats-4/support/f940a00.a: Likewise. - * ada/acats-4/support/f954a00.a: Likewise. - * ada/acats-4/support/fa11a00.a: Likewise. - * ada/acats-4/support/fa11b00.a: Likewise. - * ada/acats-4/support/fa11c00.a: Likewise. - * ada/acats-4/support/fa11d00.a: Likewise. - * ada/acats-4/support/fa13a00.a: Likewise. - * ada/acats-4/support/fa13b00.a: Likewise. - * ada/acats-4/support/fa21a00.a: Likewise. - * ada/acats-4/support/fb20a00.a: Likewise. - * ada/acats-4/support/fb40a00.a: Likewise. - * ada/acats-4/support/fc50a00.a: Likewise. - * ada/acats-4/support/fc51a00.a: Likewise. - * ada/acats-4/support/fc51b00.a: Likewise. - * ada/acats-4/support/fc51c00.a: Likewise. - * ada/acats-4/support/fc51d00.a: Likewise. - * ada/acats-4/support/fc54a00.a: Likewise. - * ada/acats-4/support/fc70a00.a: Likewise. - * ada/acats-4/support/fc70b00.a: Likewise. - * ada/acats-4/support/fc70c00.a: Likewise. - * ada/acats-4/support/fcndecl.ada: Likewise. - * ada/acats-4/support/fd72a00.a: Likewise. - * ada/acats-4/support/fdb0a00.a: Likewise. - * ada/acats-4/support/fdb3a00.a: Likewise. - * ada/acats-4/support/fdd2a00.a: Likewise. - * ada/acats-4/support/fdd2b00.a: Likewise. - * ada/acats-4/support/fxa5a00.a: Likewise. - * ada/acats-4/support/fxaca00.a: Likewise. - * ada/acats-4/support/fxacb00.a: Likewise. - * ada/acats-4/support/fxacc00.a: Likewise. - * ada/acats-4/support/fxaia00.a: Likewise. - * ada/acats-4/support/fxaib00.a: Likewise. - * ada/acats-4/support/fxc6a00.a: Likewise. - * ada/acats-4/support/fxe2a00.a: Likewise. - * ada/acats-4/support/fxf2a00.a: Likewise. - * ada/acats-4/support/fxf3a00.a: Likewise. - * ada/acats-4/support/grade.a: Likewise. - * ada/acats-4/support/grd_data.a: Likewise. - * ada/acats-4/support/impbit.adb: Likewise. - * ada/acats-4/support/impdef.a: Likewise. - * ada/acats-4/support/impdefc.a: Likewise. - * ada/acats-4/support/impdefd.a: Likewise. - * ada/acats-4/support/impdefe.a: Likewise. - * ada/acats-4/support/impdefg.a: Likewise. - * ada/acats-4/support/impdefh.a: Likewise. - * ada/acats-4/support/lencheck.ada: Likewise. - * ada/acats-4/support/macro.dfs: Likewise. - * ada/acats-4/support/macrodef.adb: Likewise. - * ada/acats-4/support/macrosub.ada: Likewise. - * ada/acats-4/support/report.a: Likewise. - * ada/acats-4/support/special.a: Likewise. - * ada/acats-4/support/spprt13s.tst: Likewise. - * ada/acats-4/support/summary.a: Likewise. - * ada/acats-4/support/tctouch.ada: Likewise. - * ada/acats-4/support/trace.a: Likewise. - * ada/acats-4/support/tst_sum.a: Likewise. - * ada/acats-4/support/tsttests.dat: Likewise. - * ada/acats-4/support/version.a: Likewise. - * ada/acats-4/tests/a/a22006b.ada: Likewise. - * ada/acats-4/tests/a/a22006c.ada: Likewise. - * ada/acats-4/tests/a/a22006d.ada: Likewise. - * ada/acats-4/tests/a/a26007a.tst: Likewise. - * ada/acats-4/tests/a/a27003a.ada: Likewise. - * ada/acats-4/tests/a/a29003a.ada: Likewise. - * ada/acats-4/tests/a/a2a031a.ada: Likewise. - * ada/acats-4/tests/a/a33003a.ada: Likewise. - * ada/acats-4/tests/a/a34017c.ada: Likewise. - * ada/acats-4/tests/a/a35101b.ada: Likewise. - * ada/acats-4/tests/a/a35402a.ada: Likewise. - * ada/acats-4/tests/a/a35801f.ada: Likewise. - * ada/acats-4/tests/a/a35902c.ada: Likewise. - * ada/acats-4/tests/a/a38106d.ada: Likewise. - * ada/acats-4/tests/a/a38106e.ada: Likewise. - * ada/acats-4/tests/a/a49027a.ada: Likewise. - * ada/acats-4/tests/a/a49027b.ada: Likewise. - * ada/acats-4/tests/a/a49027c.ada: Likewise. - * ada/acats-4/tests/a/a54b01a.ada: Likewise. - * ada/acats-4/tests/a/a54b02a.ada: Likewise. - * ada/acats-4/tests/a/a55b12a.ada: Likewise. - * ada/acats-4/tests/a/a55b13a.ada: Likewise. - * ada/acats-4/tests/a/a55b14a.ada: Likewise. - * ada/acats-4/tests/a/a71004a.ada: Likewise. - * ada/acats-4/tests/a/a73001i.ada: Likewise. - * ada/acats-4/tests/a/a73001j.ada: Likewise. - * ada/acats-4/tests/a/a74105b.ada: Likewise. - * ada/acats-4/tests/a/a74106a.ada: Likewise. - * ada/acats-4/tests/a/a74106b.ada: Likewise. - * ada/acats-4/tests/a/a74106c.ada: Likewise. - * ada/acats-4/tests/a/a74205e.ada: Likewise. - * ada/acats-4/tests/a/a74205f.ada: Likewise. - * ada/acats-4/tests/a/a83009a.ada: Likewise. - * ada/acats-4/tests/a/a83009b.ada: Likewise. - * ada/acats-4/tests/a/a83a02a.ada: Likewise. - * ada/acats-4/tests/a/a83a02b.ada: Likewise. - * ada/acats-4/tests/a/a83a06a.ada: Likewise. - * ada/acats-4/tests/a/a83a08a.ada: Likewise. - * ada/acats-4/tests/a/a83c01c.ada: Likewise. - * ada/acats-4/tests/a/a83c01h.ada: Likewise. - * ada/acats-4/tests/a/a83c01i.ada: Likewise. - * ada/acats-4/tests/a/a85007d.ada: Likewise. - * ada/acats-4/tests/a/a85013b.ada: Likewise. - * ada/acats-4/tests/a/a87b59a.ada: Likewise. - * ada/acats-4/tests/a/a95001c.ada: Likewise. - * ada/acats-4/tests/a/a95074d.ada: Likewise. - * ada/acats-4/tests/a/a97106a.ada: Likewise. - * ada/acats-4/tests/a/a99006a.ada: Likewise. - * ada/acats-4/tests/a/aa2010a.ada: Likewise. - * ada/acats-4/tests/a/aa2012a.ada: Likewise. - * ada/acats-4/tests/a/ac1015b.ada: Likewise. - * ada/acats-4/tests/a/ac3106a.ada: Likewise. - * ada/acats-4/tests/a/ac3206a.ada: Likewise. - * ada/acats-4/tests/a/ac3207a.ada: Likewise. - * ada/acats-4/tests/a/ad7001b.ada: Likewise. - * ada/acats-4/tests/a/ad7001c0.ada: Likewise. - * ada/acats-4/tests/a/ad7001c1.ada: Likewise. - * ada/acats-4/tests/a/ad7001d0.ada: Likewise. - * ada/acats-4/tests/a/ad7001d1.ada: Likewise. - * ada/acats-4/tests/a/ad7006a.ada: Likewise. - * ada/acats-4/tests/a/ad7101a.ada: Likewise. - * ada/acats-4/tests/a/ad7101c.ada: Likewise. - * ada/acats-4/tests/a/ad7102a.ada: Likewise. - * ada/acats-4/tests/a/ad7103a.ada: Likewise. - * ada/acats-4/tests/a/ad7103c.ada: Likewise. - * ada/acats-4/tests/a/ad7104a.ada: Likewise. - * ada/acats-4/tests/a/ad7201a.ada: Likewise. - * ada/acats-4/tests/a/ad7203b.ada: Likewise. - * ada/acats-4/tests/a/ad7205b.ada: Likewise. - * ada/acats-4/tests/a/ad8011a.tst: Likewise. - * ada/acats-4/tests/a/ada101a.ada: Likewise. - * ada/acats-4/tests/a/ae2113a.ada: Likewise. - * ada/acats-4/tests/a/ae2113b.ada: Likewise. - * ada/acats-4/tests/a/ae3002g.ada: Likewise. - * ada/acats-4/tests/a/ae3101a.ada: Likewise. - * ada/acats-4/tests/a/ae3702a.ada: Likewise. - * ada/acats-4/tests/a/ae3709a.ada: Likewise. - * ada/acats-4/tests/c2/c23001a.ada: Likewise. - * ada/acats-4/tests/c2/c23003a.tst: Likewise. - * ada/acats-4/tests/c2/c23003b.tst: Likewise. - * ada/acats-4/tests/c2/c23003g.tst: Likewise. - * ada/acats-4/tests/c2/c23003i.tst: Likewise. - * ada/acats-4/tests/c2/c23006a.ada: Likewise. - * ada/acats-4/tests/c2/c23006b.ada: Likewise. - * ada/acats-4/tests/c2/c23006c.ada: Likewise. - * ada/acats-4/tests/c2/c23006d.ada: Likewise. - * ada/acats-4/tests/c2/c23006e.ada: Likewise. - * ada/acats-4/tests/c2/c23006f.ada: Likewise. - * ada/acats-4/tests/c2/c23006g.ada: Likewise. - * ada/acats-4/tests/c2/c24002d.ada: Likewise. - * ada/acats-4/tests/c2/c24003a.ada: Likewise. - * ada/acats-4/tests/c2/c24003b.ada: Likewise. - * ada/acats-4/tests/c2/c24003c.ada: Likewise. - * ada/acats-4/tests/c2/c24106a.ada: Likewise. - * ada/acats-4/tests/c2/c24202d.ada: Likewise. - * ada/acats-4/tests/c2/c24203a.ada: Likewise. - * ada/acats-4/tests/c2/c24203b.ada: Likewise. - * ada/acats-4/tests/c2/c24207a.ada: Likewise. - * ada/acats-4/tests/c2/c24211a.ada: Likewise. - * ada/acats-4/tests/c2/c250001.au: Likewise. - * ada/acats-4/tests/c2/c250002.au: Likewise. - * ada/acats-4/tests/c2/c25001a.ada: Likewise. - * ada/acats-4/tests/c2/c25001b.ada: Likewise. - * ada/acats-4/tests/c2/c26006a.ada: Likewise. - * ada/acats-4/tests/c2/c26008a.ada: Likewise. - * ada/acats-4/tests/c2/c2a001a.ada: Likewise. - * ada/acats-4/tests/c2/c2a001b.ada: Likewise. - * ada/acats-4/tests/c2/c2a001c.ada: Likewise. - * ada/acats-4/tests/c2/c2a002a.ada: Likewise. - * ada/acats-4/tests/c2/c2a008a.ada: Likewise. - * ada/acats-4/tests/c2/c2a021b.ada: Likewise. - * ada/acats-4/tests/c3/c32001a.ada: Likewise. - * ada/acats-4/tests/c3/c32001b.ada: Likewise. - * ada/acats-4/tests/c3/c32001c.ada: Likewise. - * ada/acats-4/tests/c3/c32001d.ada: Likewise. - * ada/acats-4/tests/c3/c32001e.ada: Likewise. - * ada/acats-4/tests/c3/c32107a.ada: Likewise. - * ada/acats-4/tests/c3/c32107c.ada: Likewise. - * ada/acats-4/tests/c3/c32108a.ada: Likewise. - * ada/acats-4/tests/c3/c32108b.ada: Likewise. - * ada/acats-4/tests/c3/c32111a.ada: Likewise. - * ada/acats-4/tests/c3/c32111b.ada: Likewise. - * ada/acats-4/tests/c3/c32112b.ada: Likewise. - * ada/acats-4/tests/c3/c32113a.ada: Likewise. - * ada/acats-4/tests/c3/c32115a.ada: Likewise. - * ada/acats-4/tests/c3/c32115b.ada: Likewise. - * ada/acats-4/tests/c3/c324001.a: Likewise. - * ada/acats-4/tests/c3/c324002.a: Likewise. - * ada/acats-4/tests/c3/c324003.a: Likewise. - * ada/acats-4/tests/c3/c324004.a: Likewise. - * ada/acats-4/tests/c3/c324005.a: Likewise. - * ada/acats-4/tests/c3/c324006.a: Likewise. - * ada/acats-4/tests/c3/c330001.a: Likewise. - * ada/acats-4/tests/c3/c330002.a: Likewise. - * ada/acats-4/tests/c3/c332001.a: Likewise. - * ada/acats-4/tests/c3/c340001.a: Likewise. - * ada/acats-4/tests/c3/c34001a.ada: Likewise. - * ada/acats-4/tests/c3/c34001c.ada: Likewise. - * ada/acats-4/tests/c3/c34001d.ada: Likewise. - * ada/acats-4/tests/c3/c34001f.ada: Likewise. - * ada/acats-4/tests/c3/c34002a.ada: Likewise. - * ada/acats-4/tests/c3/c34002c.ada: Likewise. - * ada/acats-4/tests/c3/c34003a.ada: Likewise. - * ada/acats-4/tests/c3/c34003c.ada: Likewise. - * ada/acats-4/tests/c3/c34004a.ada: Likewise. - * ada/acats-4/tests/c3/c34004c.ada: Likewise. - * ada/acats-4/tests/c3/c34005a.ada: Likewise. - * ada/acats-4/tests/c3/c34005c.ada: Likewise. - * ada/acats-4/tests/c3/c34005d.ada: Likewise. - * ada/acats-4/tests/c3/c34005f.ada: Likewise. - * ada/acats-4/tests/c3/c34005g.ada: Likewise. - * ada/acats-4/tests/c3/c34005i.ada: Likewise. - * ada/acats-4/tests/c3/c34005j.ada: Likewise. - * ada/acats-4/tests/c3/c34005l.ada: Likewise. - * ada/acats-4/tests/c3/c34005m.ada: Likewise. - * ada/acats-4/tests/c3/c34005o.ada: Likewise. - * ada/acats-4/tests/c3/c34005p.ada: Likewise. - * ada/acats-4/tests/c3/c34005r.ada: Likewise. - * ada/acats-4/tests/c3/c34005s.ada: Likewise. - * ada/acats-4/tests/c3/c34005u.ada: Likewise. - * ada/acats-4/tests/c3/c34005v.ada: Likewise. - * ada/acats-4/tests/c3/c34006a.ada: Likewise. - * ada/acats-4/tests/c3/c34006d.ada: Likewise. - * ada/acats-4/tests/c3/c34006f.ada: Likewise. - * ada/acats-4/tests/c3/c34006g.ada: Likewise. - * ada/acats-4/tests/c3/c34006j.ada: Likewise. - * ada/acats-4/tests/c3/c34006l.ada: Likewise. - * ada/acats-4/tests/c3/c34007a.ada: Likewise. - * ada/acats-4/tests/c3/c34007d.ada: Likewise. - * ada/acats-4/tests/c3/c34007f.ada: Likewise. - * ada/acats-4/tests/c3/c34007g.ada: Likewise. - * ada/acats-4/tests/c3/c34007i.ada: Likewise. - * ada/acats-4/tests/c3/c34007j.ada: Likewise. - * ada/acats-4/tests/c3/c34007m.ada: Likewise. - * ada/acats-4/tests/c3/c34007p.ada: Likewise. - * ada/acats-4/tests/c3/c34007r.ada: Likewise. - * ada/acats-4/tests/c3/c34007s.ada: Likewise. - * ada/acats-4/tests/c3/c34007u.ada: Likewise. - * ada/acats-4/tests/c3/c34007v.ada: Likewise. - * ada/acats-4/tests/c3/c34008a.ada: Likewise. - * ada/acats-4/tests/c3/c34009a.ada: Likewise. - * ada/acats-4/tests/c3/c34009d.ada: Likewise. - * ada/acats-4/tests/c3/c34009f.ada: Likewise. - * ada/acats-4/tests/c3/c34009g.ada: Likewise. - * ada/acats-4/tests/c3/c34009j.ada: Likewise. - * ada/acats-4/tests/c3/c34009l.ada: Likewise. - * ada/acats-4/tests/c3/c34011b.ada: Likewise. - * ada/acats-4/tests/c3/c34012a.ada: Likewise. - * ada/acats-4/tests/c3/c34014a.ada: Likewise. - * ada/acats-4/tests/c3/c34014c.ada: Likewise. - * ada/acats-4/tests/c3/c34014e.ada: Likewise. - * ada/acats-4/tests/c3/c34014g.ada: Likewise. - * ada/acats-4/tests/c3/c34014h.ada: Likewise. - * ada/acats-4/tests/c3/c34014n.ada: Likewise. - * ada/acats-4/tests/c3/c34014p.ada: Likewise. - * ada/acats-4/tests/c3/c34014r.ada: Likewise. - * ada/acats-4/tests/c3/c34014t.ada: Likewise. - * ada/acats-4/tests/c3/c34014u.ada: Likewise. - * ada/acats-4/tests/c3/c34018a.ada: Likewise. - * ada/acats-4/tests/c3/c340a01.a: Likewise. - * ada/acats-4/tests/c3/c340a02.a: Likewise. - * ada/acats-4/tests/c3/c341a01.a: Likewise. - * ada/acats-4/tests/c3/c341a02.a: Likewise. - * ada/acats-4/tests/c3/c341a03.a: Likewise. - * ada/acats-4/tests/c3/c341a04.a: Likewise. - * ada/acats-4/tests/c3/c350001.a: Likewise. - * ada/acats-4/tests/c3/c35003a.ada: Likewise. - * ada/acats-4/tests/c3/c35003b.ada: Likewise. - * ada/acats-4/tests/c3/c35003d.ada: Likewise. - * ada/acats-4/tests/c3/c350a01.a: Likewise. - * ada/acats-4/tests/c3/c350a02.a: Likewise. - * ada/acats-4/tests/c3/c350b01.a: Likewise. - * ada/acats-4/tests/c3/c350b02.a: Likewise. - * ada/acats-4/tests/c3/c35102a.ada: Likewise. - * ada/acats-4/tests/c3/c352001.a: Likewise. - * ada/acats-4/tests/c3/c354002.a: Likewise. - * ada/acats-4/tests/c3/c354003.a: Likewise. - * ada/acats-4/tests/c3/c354004.a: Likewise. - * ada/acats-4/tests/c3/c35502a.ada: Likewise. - * ada/acats-4/tests/c3/c35502b.ada: Likewise. - * ada/acats-4/tests/c3/c35502c.ada: Likewise. - * ada/acats-4/tests/c3/c35502d.tst: Likewise. - * ada/acats-4/tests/c3/c35502e.ada: Likewise. - * ada/acats-4/tests/c3/c35502f.tst: Likewise. - * ada/acats-4/tests/c3/c35502g.ada: Likewise. - * ada/acats-4/tests/c3/c35502h.ada: Likewise. - * ada/acats-4/tests/c3/c35502i.ada: Likewise. - * ada/acats-4/tests/c3/c35502j.ada: Likewise. - * ada/acats-4/tests/c3/c35502k.ada: Likewise. - * ada/acats-4/tests/c3/c35502l.ada: Likewise. - * ada/acats-4/tests/c3/c35502m.ada: Likewise. - * ada/acats-4/tests/c3/c35502n.ada: Likewise. - * ada/acats-4/tests/c3/c35502o.ada: Likewise. - * ada/acats-4/tests/c3/c35502p.ada: Likewise. - * ada/acats-4/tests/c3/c35503a.ada: Likewise. - * ada/acats-4/tests/c3/c35503b.ada: Likewise. - * ada/acats-4/tests/c3/c35503c.ada: Likewise. - * ada/acats-4/tests/c3/c35503d.tst: Likewise. - * ada/acats-4/tests/c3/c35503e.ada: Likewise. - * ada/acats-4/tests/c3/c35503f.tst: Likewise. - * ada/acats-4/tests/c3/c35503g.ada: Likewise. - * ada/acats-4/tests/c3/c35503h.ada: Likewise. - * ada/acats-4/tests/c3/c35503k.ada: Likewise. - * ada/acats-4/tests/c3/c35503l.ada: Likewise. - * ada/acats-4/tests/c3/c35503o.ada: Likewise. - * ada/acats-4/tests/c3/c35503p.ada: Likewise. - * ada/acats-4/tests/c3/c35504a.ada: Likewise. - * ada/acats-4/tests/c3/c35504b.ada: Likewise. - * ada/acats-4/tests/c3/c35505c.ada: Likewise. - * ada/acats-4/tests/c3/c35505e.ada: Likewise. - * ada/acats-4/tests/c3/c35505f.ada: Likewise. - * ada/acats-4/tests/c3/c35507a.ada: Likewise. - * ada/acats-4/tests/c3/c35507b.ada: Likewise. - * ada/acats-4/tests/c3/c35507c.ada: Likewise. - * ada/acats-4/tests/c3/c35507e.ada: Likewise. - * ada/acats-4/tests/c3/c35507g.ada: Likewise. - * ada/acats-4/tests/c3/c35507h.ada: Likewise. - * ada/acats-4/tests/c3/c35507i.ada: Likewise. - * ada/acats-4/tests/c3/c35507j.ada: Likewise. - * ada/acats-4/tests/c3/c35507k.ada: Likewise. - * ada/acats-4/tests/c3/c35507l.ada: Likewise. - * ada/acats-4/tests/c3/c35507m.ada: Likewise. - * ada/acats-4/tests/c3/c35507n.ada: Likewise. - * ada/acats-4/tests/c3/c35507o.ada: Likewise. - * ada/acats-4/tests/c3/c35507p.ada: Likewise. - * ada/acats-4/tests/c3/c35508a.ada: Likewise. - * ada/acats-4/tests/c3/c35508b.ada: Likewise. - * ada/acats-4/tests/c3/c35508c.ada: Likewise. - * ada/acats-4/tests/c3/c35508e.ada: Likewise. - * ada/acats-4/tests/c3/c35508g.ada: Likewise. - * ada/acats-4/tests/c3/c35508h.ada: Likewise. - * ada/acats-4/tests/c3/c35508k.ada: Likewise. - * ada/acats-4/tests/c3/c35508l.ada: Likewise. - * ada/acats-4/tests/c3/c35508o.ada: Likewise. - * ada/acats-4/tests/c3/c35508p.ada: Likewise. - * ada/acats-4/tests/c3/c35703a.ada: Likewise. - * ada/acats-4/tests/c3/c35704a.ada: Likewise. - * ada/acats-4/tests/c3/c35704b.ada: Likewise. - * ada/acats-4/tests/c3/c35704c.ada: Likewise. - * ada/acats-4/tests/c3/c35704d.ada: Likewise. - * ada/acats-4/tests/c3/c35801d.ada: Likewise. - * ada/acats-4/tests/c3/c35902d.ada: Likewise. - * ada/acats-4/tests/c3/c35904a.ada: Likewise. - * ada/acats-4/tests/c3/c35904b.ada: Likewise. - * ada/acats-4/tests/c3/c35a001.a: Likewise. - * ada/acats-4/tests/c3/c35a02a.ada: Likewise. - * ada/acats-4/tests/c3/c35a05a.ada: Likewise. - * ada/acats-4/tests/c3/c35a05d.ada: Likewise. - * ada/acats-4/tests/c3/c35a05n.ada: Likewise. - * ada/acats-4/tests/c3/c35a05q.ada: Likewise. - * ada/acats-4/tests/c3/c35a07a.ada: Likewise. - * ada/acats-4/tests/c3/c35a07d.ada: Likewise. - * ada/acats-4/tests/c3/c35a08b.ada: Likewise. - * ada/acats-4/tests/c3/c360002.a: Likewise. - * ada/acats-4/tests/c3/c360a01.a: Likewise. - * ada/acats-4/tests/c3/c360a02.a: Likewise. - * ada/acats-4/tests/c3/c360b01.a: Likewise. - * ada/acats-4/tests/c3/c360b02.a: Likewise. - * ada/acats-4/tests/c3/c36104a.ada: Likewise. - * ada/acats-4/tests/c3/c36104b.ada: Likewise. - * ada/acats-4/tests/c3/c36172a.ada: Likewise. - * ada/acats-4/tests/c3/c36172b.ada: Likewise. - * ada/acats-4/tests/c3/c36172c.ada: Likewise. - * ada/acats-4/tests/c3/c36174a.ada: Likewise. - * ada/acats-4/tests/c3/c36180a.ada: Likewise. - * ada/acats-4/tests/c3/c36202c.ada: Likewise. - * ada/acats-4/tests/c3/c36203a.ada: Likewise. - * ada/acats-4/tests/c3/c36204a.ada: Likewise. - * ada/acats-4/tests/c3/c36204b.ada: Likewise. - * ada/acats-4/tests/c3/c36204c.ada: Likewise. - * ada/acats-4/tests/c3/c36204d.ada: Likewise. - * ada/acats-4/tests/c3/c36205a.ada: Likewise. - * ada/acats-4/tests/c3/c36205b.ada: Likewise. - * ada/acats-4/tests/c3/c36205c.ada: Likewise. - * ada/acats-4/tests/c3/c36205d.ada: Likewise. - * ada/acats-4/tests/c3/c36205e.ada: Likewise. - * ada/acats-4/tests/c3/c36205f.ada: Likewise. - * ada/acats-4/tests/c3/c36205g.ada: Likewise. - * ada/acats-4/tests/c3/c36205h.ada: Likewise. - * ada/acats-4/tests/c3/c36205i.ada: Likewise. - * ada/acats-4/tests/c3/c36205j.ada: Likewise. - * ada/acats-4/tests/c3/c36205k.ada: Likewise. - * ada/acats-4/tests/c3/c36205l.ada: Likewise. - * ada/acats-4/tests/c3/c36301a.ada: Likewise. - * ada/acats-4/tests/c3/c36301b.ada: Likewise. - * ada/acats-4/tests/c3/c36302a.ada: Likewise. - * ada/acats-4/tests/c3/c36304a.ada: Likewise. - * ada/acats-4/tests/c3/c36305a.ada: Likewise. - * ada/acats-4/tests/c3/c37002a.ada: Likewise. - * ada/acats-4/tests/c3/c37003a.ada: Likewise. - * ada/acats-4/tests/c3/c37003b.ada: Likewise. - * ada/acats-4/tests/c3/c37005a.ada: Likewise. - * ada/acats-4/tests/c3/c37006a.ada: Likewise. - * ada/acats-4/tests/c3/c37008a.ada: Likewise. - * ada/acats-4/tests/c3/c37008b.ada: Likewise. - * ada/acats-4/tests/c3/c37009a.ada: Likewise. - * ada/acats-4/tests/c3/c37010a.ada: Likewise. - * ada/acats-4/tests/c3/c37010b.ada: Likewise. - * ada/acats-4/tests/c3/c371001.a: Likewise. - * ada/acats-4/tests/c3/c371002.a: Likewise. - * ada/acats-4/tests/c3/c371003.a: Likewise. - * ada/acats-4/tests/c3/c37102b.ada: Likewise. - * ada/acats-4/tests/c3/c37103a.ada: Likewise. - * ada/acats-4/tests/c3/c37105a.ada: Likewise. - * ada/acats-4/tests/c3/c37107a.ada: Likewise. - * ada/acats-4/tests/c3/c37108b.ada: Likewise. - * ada/acats-4/tests/c3/c37206a.ada: Likewise. - * ada/acats-4/tests/c3/c37207a.ada: Likewise. - * ada/acats-4/tests/c3/c37208a.ada: Likewise. - * ada/acats-4/tests/c3/c37208b.ada: Likewise. - * ada/acats-4/tests/c3/c37209a.ada: Likewise. - * ada/acats-4/tests/c3/c37209b.ada: Likewise. - * ada/acats-4/tests/c3/c37210a.ada: Likewise. - * ada/acats-4/tests/c3/c37211a.ada: Likewise. - * ada/acats-4/tests/c3/c37211b.ada: Likewise. - * ada/acats-4/tests/c3/c37211c.ada: Likewise. - * ada/acats-4/tests/c3/c37211d.ada: Likewise. - * ada/acats-4/tests/c3/c37211e.ada: Likewise. - * ada/acats-4/tests/c3/c37213b.ada: Likewise. - * ada/acats-4/tests/c3/c37213d.ada: Likewise. - * ada/acats-4/tests/c3/c37213f.ada: Likewise. - * ada/acats-4/tests/c3/c37213h.ada: Likewise. - * ada/acats-4/tests/c3/c37213j.ada: Likewise. - * ada/acats-4/tests/c3/c37213k.ada: Likewise. - * ada/acats-4/tests/c3/c37213l.ada: Likewise. - * ada/acats-4/tests/c3/c37215b.ada: Likewise. - * ada/acats-4/tests/c3/c37215d.ada: Likewise. - * ada/acats-4/tests/c3/c37215f.ada: Likewise. - * ada/acats-4/tests/c3/c37215h.ada: Likewise. - * ada/acats-4/tests/c3/c37217a.ada: Likewise. - * ada/acats-4/tests/c3/c37217b.ada: Likewise. - * ada/acats-4/tests/c3/c37217c.ada: Likewise. - * ada/acats-4/tests/c3/c37304a.ada: Likewise. - * ada/acats-4/tests/c3/c37305a.ada: Likewise. - * ada/acats-4/tests/c3/c37306a.ada: Likewise. - * ada/acats-4/tests/c3/c37309a.ada: Likewise. - * ada/acats-4/tests/c3/c37310a.ada: Likewise. - * ada/acats-4/tests/c3/c37312a.ada: Likewise. - * ada/acats-4/tests/c3/c37402a.ada: Likewise. - * ada/acats-4/tests/c3/c37403a.ada: Likewise. - * ada/acats-4/tests/c3/c37404a.ada: Likewise. - * ada/acats-4/tests/c3/c37404b.ada: Likewise. - * ada/acats-4/tests/c3/c37405a.ada: Likewise. - * ada/acats-4/tests/c3/c37411a.ada: Likewise. - * ada/acats-4/tests/c3/c380001.a: Likewise. - * ada/acats-4/tests/c3/c380002.a: Likewise. - * ada/acats-4/tests/c3/c380003.a: Likewise. - * ada/acats-4/tests/c3/c380004.a: Likewise. - * ada/acats-4/tests/c3/c38002a.ada: Likewise. - * ada/acats-4/tests/c3/c38002b.ada: Likewise. - * ada/acats-4/tests/c3/c38005a.ada: Likewise. - * ada/acats-4/tests/c3/c38005b.ada: Likewise. - * ada/acats-4/tests/c3/c38005c.ada: Likewise. - * ada/acats-4/tests/c3/c38102a.ada: Likewise. - * ada/acats-4/tests/c3/c38102b.ada: Likewise. - * ada/acats-4/tests/c3/c38102c.ada: Likewise. - * ada/acats-4/tests/c3/c38102d.ada: Likewise. - * ada/acats-4/tests/c3/c38102e.ada: Likewise. - * ada/acats-4/tests/c3/c38104a.ada: Likewise. - * ada/acats-4/tests/c3/c38107a.ada: Likewise. - * ada/acats-4/tests/c3/c38107b.ada: Likewise. - * ada/acats-4/tests/c3/c38108a.ada: Likewise. - * ada/acats-4/tests/c3/c38108b.ada: Likewise. - * ada/acats-4/tests/c3/c38108c0.ada: Likewise. - * ada/acats-4/tests/c3/c38108c1.ada: Likewise. - * ada/acats-4/tests/c3/c38108c2.ada: Likewise. - * ada/acats-4/tests/c3/c38108d0.ada: Likewise. - * ada/acats-4/tests/c3/c38108d1.ada: Likewise. - * ada/acats-4/tests/c3/c3900010.a: Likewise. - * ada/acats-4/tests/c3/c3900011.am: Likewise. - * ada/acats-4/tests/c3/c390002.a: Likewise. - * ada/acats-4/tests/c3/c390003.a: Likewise. - * ada/acats-4/tests/c3/c390004.a: Likewise. - * ada/acats-4/tests/c3/c3900050.a: Likewise. - * ada/acats-4/tests/c3/c3900051.a: Likewise. - * ada/acats-4/tests/c3/c3900052.a: Likewise. - * ada/acats-4/tests/c3/c3900053.am: Likewise. - * ada/acats-4/tests/c3/c3900060.a: Likewise. - * ada/acats-4/tests/c3/c3900061.a: Likewise. - * ada/acats-4/tests/c3/c3900062.a: Likewise. - * ada/acats-4/tests/c3/c3900063.am: Likewise. - * ada/acats-4/tests/c3/c390007.a: Likewise. - * ada/acats-4/tests/c3/c390010.a: Likewise. - * ada/acats-4/tests/c3/c390011.a: Likewise. - * ada/acats-4/tests/c3/c390012.a: Likewise. - * ada/acats-4/tests/c3/c39006a.ada: Likewise. - * ada/acats-4/tests/c3/c39006b.ada: Likewise. - * ada/acats-4/tests/c3/c39006c0.ada: Likewise. - * ada/acats-4/tests/c3/c39006c1.ada: Likewise. - * ada/acats-4/tests/c3/c39006d.ada: Likewise. - * ada/acats-4/tests/c3/c39006e.ada: Likewise. - * ada/acats-4/tests/c3/c39006f0.ada: Likewise. - * ada/acats-4/tests/c3/c39006f1.ada: Likewise. - * ada/acats-4/tests/c3/c39006f2.ada: Likewise. - * ada/acats-4/tests/c3/c39006f3.ada: Likewise. - * ada/acats-4/tests/c3/c39006g.ada: Likewise. - * ada/acats-4/tests/c3/c39007a.ada: Likewise. - * ada/acats-4/tests/c3/c39007b.ada: Likewise. - * ada/acats-4/tests/c3/c39008a.ada: Likewise. - * ada/acats-4/tests/c3/c39008b.ada: Likewise. - * ada/acats-4/tests/c3/c39008c.ada: Likewise. - * ada/acats-4/tests/c3/c390a010.a: Likewise. - * ada/acats-4/tests/c3/c390a011.am: Likewise. - * ada/acats-4/tests/c3/c390a020.a: Likewise. - * ada/acats-4/tests/c3/c390a021.a: Likewise. - * ada/acats-4/tests/c3/c390a022.am: Likewise. - * ada/acats-4/tests/c3/c390a030.a: Likewise. - * ada/acats-4/tests/c3/c390a031.am: Likewise. - * ada/acats-4/tests/c3/c391001.a: Likewise. - * ada/acats-4/tests/c3/c391002.a: Likewise. - * ada/acats-4/tests/c3/c391003.a: Likewise. - * ada/acats-4/tests/c3/c392002.a: Likewise. - * ada/acats-4/tests/c3/c392003.a: Likewise. - * ada/acats-4/tests/c3/c392004.a: Likewise. - * ada/acats-4/tests/c3/c392005.a: Likewise. - * ada/acats-4/tests/c3/c392008.a: Likewise. - * ada/acats-4/tests/c3/c392010.a: Likewise. - * ada/acats-4/tests/c3/c392011.a: Likewise. - * ada/acats-4/tests/c3/c392013.a: Likewise. - * ada/acats-4/tests/c3/c392014.a: Likewise. - * ada/acats-4/tests/c3/c392015.a: Likewise. - * ada/acats-4/tests/c3/c392a01.a: Likewise. - * ada/acats-4/tests/c3/c392c05.a: Likewise. - * ada/acats-4/tests/c3/c392c07.a: Likewise. - * ada/acats-4/tests/c3/c392d01.a: Likewise. - * ada/acats-4/tests/c3/c392d02.a: Likewise. - * ada/acats-4/tests/c3/c392d03.a: Likewise. - * ada/acats-4/tests/c3/c393001.a: Likewise. - * ada/acats-4/tests/c3/c393007.a: Likewise. - * ada/acats-4/tests/c3/c393008.a: Likewise. - * ada/acats-4/tests/c3/c393009.a: Likewise. - * ada/acats-4/tests/c3/c393010.a: Likewise. - * ada/acats-4/tests/c3/c393011.a: Likewise. - * ada/acats-4/tests/c3/c393012.a: Likewise. - * ada/acats-4/tests/c3/c393013.a: Likewise. - * ada/acats-4/tests/c3/c393a02.a: Likewise. - * ada/acats-4/tests/c3/c393a03.a: Likewise. - * ada/acats-4/tests/c3/c393a05.a: Likewise. - * ada/acats-4/tests/c3/c393a06.a: Likewise. - * ada/acats-4/tests/c3/c393b12.a: Likewise. - * ada/acats-4/tests/c3/c393b13.a: Likewise. - * ada/acats-4/tests/c3/c393b14.a: Likewise. - * ada/acats-4/tests/c3/c394001.a: Likewise. - * ada/acats-4/tests/c3/c394002.a: Likewise. - * ada/acats-4/tests/c3/c394003.a: Likewise. - * ada/acats-4/tests/c3/c3a0001.a: Likewise. - * ada/acats-4/tests/c3/c3a0002.a: Likewise. - * ada/acats-4/tests/c3/c3a0003.a: Likewise. - * ada/acats-4/tests/c3/c3a0004.a: Likewise. - * ada/acats-4/tests/c3/c3a0005.a: Likewise. - * ada/acats-4/tests/c3/c3a0006.a: Likewise. - * ada/acats-4/tests/c3/c3a0007.a: Likewise. - * ada/acats-4/tests/c3/c3a0008.a: Likewise. - * ada/acats-4/tests/c3/c3a0009.a: Likewise. - * ada/acats-4/tests/c3/c3a0010.a: Likewise. - * ada/acats-4/tests/c3/c3a0011.a: Likewise. - * ada/acats-4/tests/c3/c3a00120.a: Likewise. - * ada/acats-4/tests/c3/c3a00121.a: Likewise. - * ada/acats-4/tests/c3/c3a00122.am: Likewise. - * ada/acats-4/tests/c3/c3a0013.a: Likewise. - * ada/acats-4/tests/c3/c3a0014.a: Likewise. - * ada/acats-4/tests/c3/c3a0015.a: Likewise. - * ada/acats-4/tests/c3/c3a0016.a: Likewise. - * ada/acats-4/tests/c3/c3a0017.a: Likewise. - * ada/acats-4/tests/c3/c3a0018.a: Likewise. - * ada/acats-4/tests/c3/c3a0019.a: Likewise. - * ada/acats-4/tests/c3/c3a0020.a: Likewise. - * ada/acats-4/tests/c3/c3a0021.a: Likewise. - * ada/acats-4/tests/c3/c3a0022.a: Likewise. - * ada/acats-4/tests/c3/c3a0023.a: Likewise. - * ada/acats-4/tests/c3/c3a0024.a: Likewise. - * ada/acats-4/tests/c3/c3a0025.a: Likewise. - * ada/acats-4/tests/c3/c3a0026.a: Likewise. - * ada/acats-4/tests/c3/c3a0027.a: Likewise. - * ada/acats-4/tests/c3/c3a0028.a: Likewise. - * ada/acats-4/tests/c3/c3a0029.a: Likewise. - * ada/acats-4/tests/c3/c3a0030.a: Likewise. - * ada/acats-4/tests/c3/c3a1001.a: Likewise. - * ada/acats-4/tests/c3/c3a1002.a: Likewise. - * ada/acats-4/tests/c3/c3a10030.a: Likewise. - * ada/acats-4/tests/c3/c3a10031.a: Likewise. - * ada/acats-4/tests/c3/c3a10032.am: Likewise. - * ada/acats-4/tests/c3/c3a10040.a: Likewise. - * ada/acats-4/tests/c3/c3a10041.a: Likewise. - * ada/acats-4/tests/c3/c3a10042.am: Likewise. - * ada/acats-4/tests/c3/c3a1005.a: Likewise. - * ada/acats-4/tests/c3/c3a2001.a: Likewise. - * ada/acats-4/tests/c3/c3a2002.a: Likewise. - * ada/acats-4/tests/c3/c3a2003.a: Likewise. - * ada/acats-4/tests/c3/c3a2004.a: Likewise. - * ada/acats-4/tests/c3/c3a2a01.a: Likewise. - * ada/acats-4/tests/c3/c3a2a02.a: Likewise. - * ada/acats-4/tests/c4/c410001.a: Likewise. - * ada/acats-4/tests/c4/c41101d.ada: Likewise. - * ada/acats-4/tests/c4/c41103a.ada: Likewise. - * ada/acats-4/tests/c4/c41103b.ada: Likewise. - * ada/acats-4/tests/c4/c41104a.ada: Likewise. - * ada/acats-4/tests/c4/c41105a.ada: Likewise. - * ada/acats-4/tests/c4/c41107a.ada: Likewise. - * ada/acats-4/tests/c4/c41201d.ada: Likewise. - * ada/acats-4/tests/c4/c41203a.ada: Likewise. - * ada/acats-4/tests/c4/c41203b.ada: Likewise. - * ada/acats-4/tests/c4/c41204a.ada: Likewise. - * ada/acats-4/tests/c4/c41205a.ada: Likewise. - * ada/acats-4/tests/c4/c41206a.ada: Likewise. - * ada/acats-4/tests/c4/c41207a.ada: Likewise. - * ada/acats-4/tests/c4/c413001.a: Likewise. - * ada/acats-4/tests/c4/c413002.a: Likewise. - * ada/acats-4/tests/c4/c413003.a: Likewise. - * ada/acats-4/tests/c4/c413004.a: Likewise. - * ada/acats-4/tests/c4/c413005.a: Likewise. - * ada/acats-4/tests/c4/c413006.a: Likewise. - * ada/acats-4/tests/c4/c413007.a: Likewise. - * ada/acats-4/tests/c4/c41301a.ada: Likewise. - * ada/acats-4/tests/c4/c41303a.ada: Likewise. - * ada/acats-4/tests/c4/c41303b.ada: Likewise. - * ada/acats-4/tests/c4/c41303c.ada: Likewise. - * ada/acats-4/tests/c4/c41303e.ada: Likewise. - * ada/acats-4/tests/c4/c41303f.ada: Likewise. - * ada/acats-4/tests/c4/c41303g.ada: Likewise. - * ada/acats-4/tests/c4/c41303i.ada: Likewise. - * ada/acats-4/tests/c4/c41303j.ada: Likewise. - * ada/acats-4/tests/c4/c41303k.ada: Likewise. - * ada/acats-4/tests/c4/c41303m.ada: Likewise. - * ada/acats-4/tests/c4/c41303n.ada: Likewise. - * ada/acats-4/tests/c4/c41303o.ada: Likewise. - * ada/acats-4/tests/c4/c41303q.ada: Likewise. - * ada/acats-4/tests/c4/c41303r.ada: Likewise. - * ada/acats-4/tests/c4/c41303s.ada: Likewise. - * ada/acats-4/tests/c4/c41303u.ada: Likewise. - * ada/acats-4/tests/c4/c41303v.ada: Likewise. - * ada/acats-4/tests/c4/c41303w.ada: Likewise. - * ada/acats-4/tests/c4/c41304a.ada: Likewise. - * ada/acats-4/tests/c4/c41304b.ada: Likewise. - * ada/acats-4/tests/c4/c41306b.ada: Likewise. - * ada/acats-4/tests/c4/c41306c.ada: Likewise. - * ada/acats-4/tests/c4/c41307d.ada: Likewise. - * ada/acats-4/tests/c4/c41309a.ada: Likewise. - * ada/acats-4/tests/c4/c41320a.ada: Likewise. - * ada/acats-4/tests/c4/c41321a.ada: Likewise. - * ada/acats-4/tests/c4/c41322a.ada: Likewise. - * ada/acats-4/tests/c4/c41323a.ada: Likewise. - * ada/acats-4/tests/c4/c41324a.ada: Likewise. - * ada/acats-4/tests/c4/c41325a.ada: Likewise. - * ada/acats-4/tests/c4/c41326a.ada: Likewise. - * ada/acats-4/tests/c4/c41327a.ada: Likewise. - * ada/acats-4/tests/c4/c41328a.ada: Likewise. - * ada/acats-4/tests/c4/c41401a.ada: Likewise. - * ada/acats-4/tests/c4/c41402a.ada: Likewise. - * ada/acats-4/tests/c4/c41404a.ada: Likewise. - * ada/acats-4/tests/c4/c416a01.a: Likewise. - * ada/acats-4/tests/c4/c416a02.a: Likewise. - * ada/acats-4/tests/c4/c420001.a: Likewise. - * ada/acats-4/tests/c4/c42006a.ada: Likewise. - * ada/acats-4/tests/c4/c42007e.ada: Likewise. - * ada/acats-4/tests/c4/c43003a.ada: Likewise. - * ada/acats-4/tests/c4/c43004a.ada: Likewise. - * ada/acats-4/tests/c4/c43004c.ada: Likewise. - * ada/acats-4/tests/c4/c431001.a: Likewise. - * ada/acats-4/tests/c4/c431002.a: Likewise. - * ada/acats-4/tests/c4/c431003.a: Likewise. - * ada/acats-4/tests/c4/c431004.a: Likewise. - * ada/acats-4/tests/c4/c43103a.ada: Likewise. - * ada/acats-4/tests/c4/c43103b.ada: Likewise. - * ada/acats-4/tests/c4/c43104a.ada: Likewise. - * ada/acats-4/tests/c4/c43105a.ada: Likewise. - * ada/acats-4/tests/c4/c43105b.ada: Likewise. - * ada/acats-4/tests/c4/c43106a.ada: Likewise. - * ada/acats-4/tests/c4/c43107a.ada: Likewise. - * ada/acats-4/tests/c4/c43108a.ada: Likewise. - * ada/acats-4/tests/c4/c431a01.a: Likewise. - * ada/acats-4/tests/c4/c431a02.a: Likewise. - * ada/acats-4/tests/c4/c431a03.a: Likewise. - * ada/acats-4/tests/c4/c432001.a: Likewise. - * ada/acats-4/tests/c4/c432002.a: Likewise. - * ada/acats-4/tests/c4/c432003.a: Likewise. - * ada/acats-4/tests/c4/c432004.a: Likewise. - * ada/acats-4/tests/c4/c432005.a: Likewise. - * ada/acats-4/tests/c4/c43204a.ada: Likewise. - * ada/acats-4/tests/c4/c43204c.ada: Likewise. - * ada/acats-4/tests/c4/c43204e.ada: Likewise. - * ada/acats-4/tests/c4/c43204f.ada: Likewise. - * ada/acats-4/tests/c4/c43204g.ada: Likewise. - * ada/acats-4/tests/c4/c43204h.ada: Likewise. - * ada/acats-4/tests/c4/c43204i.ada: Likewise. - * ada/acats-4/tests/c4/c43205a.ada: Likewise. - * ada/acats-4/tests/c4/c43205b.ada: Likewise. - * ada/acats-4/tests/c4/c43205c.ada: Likewise. - * ada/acats-4/tests/c4/c43205d.ada: Likewise. - * ada/acats-4/tests/c4/c43205e.ada: Likewise. - * ada/acats-4/tests/c4/c43205g.ada: Likewise. - * ada/acats-4/tests/c4/c43205h.ada: Likewise. - * ada/acats-4/tests/c4/c43205i.ada: Likewise. - * ada/acats-4/tests/c4/c43205j.ada: Likewise. - * ada/acats-4/tests/c4/c43205k.ada: Likewise. - * ada/acats-4/tests/c4/c43206a.ada: Likewise. - * ada/acats-4/tests/c4/c43207b.ada: Likewise. - * ada/acats-4/tests/c4/c43207d.ada: Likewise. - * ada/acats-4/tests/c4/c43208a.ada: Likewise. - * ada/acats-4/tests/c4/c43208b.ada: Likewise. - * ada/acats-4/tests/c4/c43209a.ada: Likewise. - * ada/acats-4/tests/c4/c43210a.ada: Likewise. - * ada/acats-4/tests/c4/c43211a.ada: Likewise. - * ada/acats-4/tests/c4/c43212a.ada: Likewise. - * ada/acats-4/tests/c4/c43212c.ada: Likewise. - * ada/acats-4/tests/c4/c43214a.ada: Likewise. - * ada/acats-4/tests/c4/c43214b.ada: Likewise. - * ada/acats-4/tests/c4/c43214c.ada: Likewise. - * ada/acats-4/tests/c4/c43214d.ada: Likewise. - * ada/acats-4/tests/c4/c43214e.ada: Likewise. - * ada/acats-4/tests/c4/c43214f.ada: Likewise. - * ada/acats-4/tests/c4/c43215a.ada: Likewise. - * ada/acats-4/tests/c4/c43215b.ada: Likewise. - * ada/acats-4/tests/c4/c43222a.ada: Likewise. - * ada/acats-4/tests/c4/c43224a.ada: Likewise. - * ada/acats-4/tests/c4/c433001.a: Likewise. - * ada/acats-4/tests/c4/c433002.a: Likewise. - * ada/acats-4/tests/c4/c433003.a: Likewise. - * ada/acats-4/tests/c4/c433004.a: Likewise. - * ada/acats-4/tests/c4/c433005.a: Likewise. - * ada/acats-4/tests/c4/c433006.a: Likewise. - * ada/acats-4/tests/c4/c433007.a: Likewise. - * ada/acats-4/tests/c4/c433008.a: Likewise. - * ada/acats-4/tests/c4/c433a01.a: Likewise. - * ada/acats-4/tests/c4/c433a02.a: Likewise. - * ada/acats-4/tests/c4/c433a03.a: Likewise. - * ada/acats-4/tests/c4/c433a04.a: Likewise. - * ada/acats-4/tests/c4/c44003d.ada: Likewise. - * ada/acats-4/tests/c4/c44003f.ada: Likewise. - * ada/acats-4/tests/c4/c44003g.ada: Likewise. - * ada/acats-4/tests/c4/c450001.a: Likewise. - * ada/acats-4/tests/c4/c45112a.ada: Likewise. - * ada/acats-4/tests/c4/c45112b.ada: Likewise. - * ada/acats-4/tests/c4/c45113a.ada: Likewise. - * ada/acats-4/tests/c4/c45114b.ada: Likewise. - * ada/acats-4/tests/c4/c452001.a: Likewise. - * ada/acats-4/tests/c4/c452002.a: Likewise. - * ada/acats-4/tests/c4/c452003.a: Likewise. - * ada/acats-4/tests/c4/c452004.a: Likewise. - * ada/acats-4/tests/c4/c452005.a: Likewise. - * ada/acats-4/tests/c4/c452006.a: Likewise. - * ada/acats-4/tests/c4/c45201a.ada: Likewise. - * ada/acats-4/tests/c4/c45201b.ada: Likewise. - * ada/acats-4/tests/c4/c45202b.ada: Likewise. - * ada/acats-4/tests/c4/c45210a.ada: Likewise. - * ada/acats-4/tests/c4/c45211a.ada: Likewise. - * ada/acats-4/tests/c4/c45220a.ada: Likewise. - * ada/acats-4/tests/c4/c45220b.ada: Likewise. - * ada/acats-4/tests/c4/c45220c.ada: Likewise. - * ada/acats-4/tests/c4/c45220d.ada: Likewise. - * ada/acats-4/tests/c4/c45220e.ada: Likewise. - * ada/acats-4/tests/c4/c45220f.ada: Likewise. - * ada/acats-4/tests/c4/c45231a.ada: Likewise. - * ada/acats-4/tests/c4/c45231b.dep: Likewise. - * ada/acats-4/tests/c4/c45231c.dep: Likewise. - * ada/acats-4/tests/c4/c45231d.tst: Likewise. - * ada/acats-4/tests/c4/c45232b.ada: Likewise. - * ada/acats-4/tests/c4/c45242b.ada: Likewise. - * ada/acats-4/tests/c4/c45251a.ada: Likewise. - * ada/acats-4/tests/c4/c45252a.ada: Likewise. - * ada/acats-4/tests/c4/c45252b.ada: Likewise. - * ada/acats-4/tests/c4/c45253a.ada: Likewise. - * ada/acats-4/tests/c4/c45262a.ada: Likewise. - * ada/acats-4/tests/c4/c45262b.ada: Likewise. - * ada/acats-4/tests/c4/c45262c.ada: Likewise. - * ada/acats-4/tests/c4/c45262d.ada: Likewise. - * ada/acats-4/tests/c4/c45264a.ada: Likewise. - * ada/acats-4/tests/c4/c45264b.ada: Likewise. - * ada/acats-4/tests/c4/c45264c.ada: Likewise. - * ada/acats-4/tests/c4/c45265a.ada: Likewise. - * ada/acats-4/tests/c4/c45271a.ada: Likewise. - * ada/acats-4/tests/c4/c45272a.ada: Likewise. - * ada/acats-4/tests/c4/c45273a.ada: Likewise. - * ada/acats-4/tests/c4/c45274a.ada: Likewise. - * ada/acats-4/tests/c4/c45274b.ada: Likewise. - * ada/acats-4/tests/c4/c45274c.ada: Likewise. - * ada/acats-4/tests/c4/c45281a.ada: Likewise. - * ada/acats-4/tests/c4/c45282a.ada: Likewise. - * ada/acats-4/tests/c4/c45282b.ada: Likewise. - * ada/acats-4/tests/c4/c45291a.ada: Likewise. - * ada/acats-4/tests/c4/c452a01.a: Likewise. - * ada/acats-4/tests/c4/c452a02.a: Likewise. - * ada/acats-4/tests/c4/c452a03.a: Likewise. - * ada/acats-4/tests/c4/c453001.a: Likewise. - * ada/acats-4/tests/c4/c45303a.ada: Likewise. - * ada/acats-4/tests/c4/c45304a.ada: Likewise. - * ada/acats-4/tests/c4/c45304b.dep: Likewise. - * ada/acats-4/tests/c4/c45304c.dep: Likewise. - * ada/acats-4/tests/c4/c45322a.ada: Likewise. - * ada/acats-4/tests/c4/c45323a.ada: Likewise. - * ada/acats-4/tests/c4/c45331a.ada: Likewise. - * ada/acats-4/tests/c4/c45342a.ada: Likewise. - * ada/acats-4/tests/c4/c45343a.ada: Likewise. - * ada/acats-4/tests/c4/c45344a.ada: Likewise. - * ada/acats-4/tests/c4/c45345b.ada: Likewise. - * ada/acats-4/tests/c4/c45347a.ada: Likewise. - * ada/acats-4/tests/c4/c45347b.ada: Likewise. - * ada/acats-4/tests/c4/c45347c.ada: Likewise. - * ada/acats-4/tests/c4/c45347d.ada: Likewise. - * ada/acats-4/tests/c4/c45411a.ada: Likewise. - * ada/acats-4/tests/c4/c45411b.dep: Likewise. - * ada/acats-4/tests/c4/c45411c.dep: Likewise. - * ada/acats-4/tests/c4/c45411d.ada: Likewise. - * ada/acats-4/tests/c4/c45413a.ada: Likewise. - * ada/acats-4/tests/c4/c45431a.ada: Likewise. - * ada/acats-4/tests/c4/c455001.a: Likewise. - * ada/acats-4/tests/c4/c45502b.dep: Likewise. - * ada/acats-4/tests/c4/c45502c.dep: Likewise. - * ada/acats-4/tests/c4/c45503a.ada: Likewise. - * ada/acats-4/tests/c4/c45503b.dep: Likewise. - * ada/acats-4/tests/c4/c45503c.dep: Likewise. - * ada/acats-4/tests/c4/c45504a.ada: Likewise. - * ada/acats-4/tests/c4/c45504b.dep: Likewise. - * ada/acats-4/tests/c4/c45504c.dep: Likewise. - * ada/acats-4/tests/c4/c45504d.ada: Likewise. - * ada/acats-4/tests/c4/c45504e.dep: Likewise. - * ada/acats-4/tests/c4/c45504f.dep: Likewise. - * ada/acats-4/tests/c4/c45505a.ada: Likewise. - * ada/acats-4/tests/c4/c45523a.ada: Likewise. - * ada/acats-4/tests/c4/c45531a.ada: Likewise. - * ada/acats-4/tests/c4/c45531b.ada: Likewise. - * ada/acats-4/tests/c4/c45531c.ada: Likewise. - * ada/acats-4/tests/c4/c45531d.ada: Likewise. - * ada/acats-4/tests/c4/c45531e.ada: Likewise. - * ada/acats-4/tests/c4/c45531f.ada: Likewise. - * ada/acats-4/tests/c4/c45531g.ada: Likewise. - * ada/acats-4/tests/c4/c45531h.ada: Likewise. - * ada/acats-4/tests/c4/c45531i.ada: Likewise. - * ada/acats-4/tests/c4/c45531j.ada: Likewise. - * ada/acats-4/tests/c4/c45531k.ada: Likewise. - * ada/acats-4/tests/c4/c45531l.ada: Likewise. - * ada/acats-4/tests/c4/c45531m.dep: Likewise. - * ada/acats-4/tests/c4/c45531n.dep: Likewise. - * ada/acats-4/tests/c4/c45531o.dep: Likewise. - * ada/acats-4/tests/c4/c45531p.dep: Likewise. - * ada/acats-4/tests/c4/c45532a.ada: Likewise. - * ada/acats-4/tests/c4/c45532b.ada: Likewise. - * ada/acats-4/tests/c4/c45532c.ada: Likewise. - * ada/acats-4/tests/c4/c45532d.ada: Likewise. - * ada/acats-4/tests/c4/c45532e.ada: Likewise. - * ada/acats-4/tests/c4/c45532f.ada: Likewise. - * ada/acats-4/tests/c4/c45532g.ada: Likewise. - * ada/acats-4/tests/c4/c45532h.ada: Likewise. - * ada/acats-4/tests/c4/c45532i.ada: Likewise. - * ada/acats-4/tests/c4/c45532j.ada: Likewise. - * ada/acats-4/tests/c4/c45532k.ada: Likewise. - * ada/acats-4/tests/c4/c45532l.ada: Likewise. - * ada/acats-4/tests/c4/c45532m.dep: Likewise. - * ada/acats-4/tests/c4/c45532n.dep: Likewise. - * ada/acats-4/tests/c4/c45532o.dep: Likewise. - * ada/acats-4/tests/c4/c45532p.dep: Likewise. - * ada/acats-4/tests/c4/c45534b.ada: Likewise. - * ada/acats-4/tests/c4/c45536a.dep: Likewise. - * ada/acats-4/tests/c4/c456001.a: Likewise. - * ada/acats-4/tests/c4/c45611a.ada: Likewise. - * ada/acats-4/tests/c4/c45611b.dep: Likewise. - * ada/acats-4/tests/c4/c45611c.dep: Likewise. - * ada/acats-4/tests/c4/c45613a.ada: Likewise. - * ada/acats-4/tests/c4/c45613b.dep: Likewise. - * ada/acats-4/tests/c4/c45613c.dep: Likewise. - * ada/acats-4/tests/c4/c45614a.ada: Likewise. - * ada/acats-4/tests/c4/c45614b.dep: Likewise. - * ada/acats-4/tests/c4/c45614c.dep: Likewise. - * ada/acats-4/tests/c4/c45631a.ada: Likewise. - * ada/acats-4/tests/c4/c45631b.dep: Likewise. - * ada/acats-4/tests/c4/c45631c.dep: Likewise. - * ada/acats-4/tests/c4/c45632a.ada: Likewise. - * ada/acats-4/tests/c4/c45632b.dep: Likewise. - * ada/acats-4/tests/c4/c45632c.dep: Likewise. - * ada/acats-4/tests/c4/c45651a.ada: Likewise. - * ada/acats-4/tests/c4/c45662a.ada: Likewise. - * ada/acats-4/tests/c4/c45662b.ada: Likewise. - * ada/acats-4/tests/c4/c45672a.ada: Likewise. - * ada/acats-4/tests/c4/c457001.a: Likewise. - * ada/acats-4/tests/c4/c457002.a: Likewise. - * ada/acats-4/tests/c4/c457003.a: Likewise. - * ada/acats-4/tests/c4/c457004.a: Likewise. - * ada/acats-4/tests/c4/c457005.a: Likewise. - * ada/acats-4/tests/c4/c457006.a: Likewise. - * ada/acats-4/tests/c4/c457007.a: Likewise. - * ada/acats-4/tests/c4/c458001.a: Likewise. - * ada/acats-4/tests/c4/c458002.a: Likewise. - * ada/acats-4/tests/c4/c458003.a: Likewise. - * ada/acats-4/tests/c4/c458a01.a: Likewise. - * ada/acats-4/tests/c4/c458a02.a: Likewise. - * ada/acats-4/tests/c4/c460001.a: Likewise. - * ada/acats-4/tests/c4/c460002.a: Likewise. - * ada/acats-4/tests/c4/c460004.a: Likewise. - * ada/acats-4/tests/c4/c460005.a: Likewise. - * ada/acats-4/tests/c4/c460006.a: Likewise. - * ada/acats-4/tests/c4/c460007.a: Likewise. - * ada/acats-4/tests/c4/c460008.a: Likewise. - * ada/acats-4/tests/c4/c460009.a: Likewise. - * ada/acats-4/tests/c4/c460010.a: Likewise. - * ada/acats-4/tests/c4/c460011.a: Likewise. - * ada/acats-4/tests/c4/c460012.a: Likewise. - * ada/acats-4/tests/c4/c460013.a: Likewise. - * ada/acats-4/tests/c4/c460014.a: Likewise. - * ada/acats-4/tests/c4/c460015.a: Likewise. - * ada/acats-4/tests/c4/c46011a.ada: Likewise. - * ada/acats-4/tests/c4/c46013a.ada: Likewise. - * ada/acats-4/tests/c4/c46014a.ada: Likewise. - * ada/acats-4/tests/c4/c46021a.ada: Likewise. - * ada/acats-4/tests/c4/c46024a.ada: Likewise. - * ada/acats-4/tests/c4/c46031a.ada: Likewise. - * ada/acats-4/tests/c4/c46032a.ada: Likewise. - * ada/acats-4/tests/c4/c46033a.ada: Likewise. - * ada/acats-4/tests/c4/c46041a.ada: Likewise. - * ada/acats-4/tests/c4/c46042a.ada: Likewise. - * ada/acats-4/tests/c4/c46043b.ada: Likewise. - * ada/acats-4/tests/c4/c46044b.ada: Likewise. - * ada/acats-4/tests/c4/c46051a.ada: Likewise. - * ada/acats-4/tests/c4/c46051b.ada: Likewise. - * ada/acats-4/tests/c4/c46051c.ada: Likewise. - * ada/acats-4/tests/c4/c46052a.ada: Likewise. - * ada/acats-4/tests/c4/c46053a.ada: Likewise. - * ada/acats-4/tests/c4/c46054a.ada: Likewise. - * ada/acats-4/tests/c4/c460a01.a: Likewise. - * ada/acats-4/tests/c4/c460a02.a: Likewise. - * ada/acats-4/tests/c4/c470001.a: Likewise. - * ada/acats-4/tests/c4/c47002a.ada: Likewise. - * ada/acats-4/tests/c4/c47002b.ada: Likewise. - * ada/acats-4/tests/c4/c47002c.ada: Likewise. - * ada/acats-4/tests/c4/c47002d.ada: Likewise. - * ada/acats-4/tests/c4/c47003a.ada: Likewise. - * ada/acats-4/tests/c4/c47004a.ada: Likewise. - * ada/acats-4/tests/c4/c47005a.ada: Likewise. - * ada/acats-4/tests/c4/c47006a.ada: Likewise. - * ada/acats-4/tests/c4/c47007a.ada: Likewise. - * ada/acats-4/tests/c4/c47008a.ada: Likewise. - * ada/acats-4/tests/c4/c47009a.ada: Likewise. - * ada/acats-4/tests/c4/c47009b.ada: Likewise. - * ada/acats-4/tests/c4/c480001.a: Likewise. - * ada/acats-4/tests/c4/c48004a.ada: Likewise. - * ada/acats-4/tests/c4/c48004b.ada: Likewise. - * ada/acats-4/tests/c4/c48004c.ada: Likewise. - * ada/acats-4/tests/c4/c48004d.ada: Likewise. - * ada/acats-4/tests/c4/c48004e.ada: Likewise. - * ada/acats-4/tests/c4/c48004f.ada: Likewise. - * ada/acats-4/tests/c4/c48005a.ada: Likewise. - * ada/acats-4/tests/c4/c48005b.ada: Likewise. - * ada/acats-4/tests/c4/c48006a.ada: Likewise. - * ada/acats-4/tests/c4/c48006b.ada: Likewise. - * ada/acats-4/tests/c4/c48007a.ada: Likewise. - * ada/acats-4/tests/c4/c48007b.ada: Likewise. - * ada/acats-4/tests/c4/c48007c.ada: Likewise. - * ada/acats-4/tests/c4/c48008a.ada: Likewise. - * ada/acats-4/tests/c4/c48008c.ada: Likewise. - * ada/acats-4/tests/c4/c48009a.ada: Likewise. - * ada/acats-4/tests/c4/c48009b.ada: Likewise. - * ada/acats-4/tests/c4/c48009c.ada: Likewise. - * ada/acats-4/tests/c4/c48009d.ada: Likewise. - * ada/acats-4/tests/c4/c48009e.ada: Likewise. - * ada/acats-4/tests/c4/c48009f.ada: Likewise. - * ada/acats-4/tests/c4/c48009g.ada: Likewise. - * ada/acats-4/tests/c4/c48009h.ada: Likewise. - * ada/acats-4/tests/c4/c48009i.ada: Likewise. - * ada/acats-4/tests/c4/c48009j.ada: Likewise. - * ada/acats-4/tests/c4/c48010a.ada: Likewise. - * ada/acats-4/tests/c4/c48011a.ada: Likewise. - * ada/acats-4/tests/c4/c48012a.ada: Likewise. - * ada/acats-4/tests/c4/c490001.a: Likewise. - * ada/acats-4/tests/c4/c490002.a: Likewise. - * ada/acats-4/tests/c4/c490003.a: Likewise. - * ada/acats-4/tests/c4/c49020a.ada: Likewise. - * ada/acats-4/tests/c4/c49021a.ada: Likewise. - * ada/acats-4/tests/c4/c49022a.ada: Likewise. - * ada/acats-4/tests/c4/c49022b.ada: Likewise. - * ada/acats-4/tests/c4/c49022c.ada: Likewise. - * ada/acats-4/tests/c4/c49023a.ada: Likewise. - * ada/acats-4/tests/c4/c49024a.ada: Likewise. - * ada/acats-4/tests/c4/c49025a.ada: Likewise. - * ada/acats-4/tests/c4/c49026a.ada: Likewise. - * ada/acats-4/tests/c4/c4a005b.ada: Likewise. - * ada/acats-4/tests/c4/c4a006a.ada: Likewise. - * ada/acats-4/tests/c4/c4a007a.tst: Likewise. - * ada/acats-4/tests/c4/c4a010a.ada: Likewise. - * ada/acats-4/tests/c4/c4a010b.ada: Likewise. - * ada/acats-4/tests/c4/c4a011a.ada: Likewise. - * ada/acats-4/tests/c4/c4a012b.ada: Likewise. - * ada/acats-4/tests/c4/c4a013a.ada: Likewise. - * ada/acats-4/tests/c4/c4a014a.ada: Likewise. - * ada/acats-4/tests/c5/c51004a.ada: Likewise. - * ada/acats-4/tests/c5/c52005a.ada: Likewise. - * ada/acats-4/tests/c5/c52005b.ada: Likewise. - * ada/acats-4/tests/c5/c52005c.ada: Likewise. - * ada/acats-4/tests/c5/c52005d.ada: Likewise. - * ada/acats-4/tests/c5/c52005e.ada: Likewise. - * ada/acats-4/tests/c5/c52005f.ada: Likewise. - * ada/acats-4/tests/c5/c52008a.ada: Likewise. - * ada/acats-4/tests/c5/c52008b.ada: Likewise. - * ada/acats-4/tests/c5/c52009a.ada: Likewise. - * ada/acats-4/tests/c5/c52009b.ada: Likewise. - * ada/acats-4/tests/c5/c52010a.ada: Likewise. - * ada/acats-4/tests/c5/c52011a.ada: Likewise. - * ada/acats-4/tests/c5/c52011b.ada: Likewise. - * ada/acats-4/tests/c5/c52101a.ada: Likewise. - * ada/acats-4/tests/c5/c52102a.ada: Likewise. - * ada/acats-4/tests/c5/c52102b.ada: Likewise. - * ada/acats-4/tests/c5/c52102c.ada: Likewise. - * ada/acats-4/tests/c5/c52102d.ada: Likewise. - * ada/acats-4/tests/c5/c52103a.ada: Likewise. - * ada/acats-4/tests/c5/c52103b.ada: Likewise. - * ada/acats-4/tests/c5/c52103c.ada: Likewise. - * ada/acats-4/tests/c5/c52103f.ada: Likewise. - * ada/acats-4/tests/c5/c52103g.ada: Likewise. - * ada/acats-4/tests/c5/c52103h.ada: Likewise. - * ada/acats-4/tests/c5/c52103k.ada: Likewise. - * ada/acats-4/tests/c5/c52103l.ada: Likewise. - * ada/acats-4/tests/c5/c52103m.ada: Likewise. - * ada/acats-4/tests/c5/c52103p.ada: Likewise. - * ada/acats-4/tests/c5/c52103q.ada: Likewise. - * ada/acats-4/tests/c5/c52103r.ada: Likewise. - * ada/acats-4/tests/c5/c52103x.ada: Likewise. - * ada/acats-4/tests/c5/c52104a.ada: Likewise. - * ada/acats-4/tests/c5/c52104b.ada: Likewise. - * ada/acats-4/tests/c5/c52104c.ada: Likewise. - * ada/acats-4/tests/c5/c52104f.ada: Likewise. - * ada/acats-4/tests/c5/c52104g.ada: Likewise. - * ada/acats-4/tests/c5/c52104h.ada: Likewise. - * ada/acats-4/tests/c5/c52104k.ada: Likewise. - * ada/acats-4/tests/c5/c52104l.ada: Likewise. - * ada/acats-4/tests/c5/c52104m.ada: Likewise. - * ada/acats-4/tests/c5/c52104p.ada: Likewise. - * ada/acats-4/tests/c5/c52104q.ada: Likewise. - * ada/acats-4/tests/c5/c52104r.ada: Likewise. - * ada/acats-4/tests/c5/c52104x.ada: Likewise. - * ada/acats-4/tests/c5/c52104y.ada: Likewise. - * ada/acats-4/tests/c5/c53007a.ada: Likewise. - * ada/acats-4/tests/c5/c540001.a: Likewise. - * ada/acats-4/tests/c5/c540002.a: Likewise. - * ada/acats-4/tests/c5/c540003.a: Likewise. - * ada/acats-4/tests/c5/c54a03a.ada: Likewise. - * ada/acats-4/tests/c5/c54a04a.ada: Likewise. - * ada/acats-4/tests/c5/c54a07a.ada: Likewise. - * ada/acats-4/tests/c5/c54a13a.ada: Likewise. - * ada/acats-4/tests/c5/c54a13b.ada: Likewise. - * ada/acats-4/tests/c5/c54a13c.ada: Likewise. - * ada/acats-4/tests/c5/c54a13d.ada: Likewise. - * ada/acats-4/tests/c5/c54a22a.ada: Likewise. - * ada/acats-4/tests/c5/c54a23a.ada: Likewise. - * ada/acats-4/tests/c5/c54a24a.ada: Likewise. - * ada/acats-4/tests/c5/c54a24b.ada: Likewise. - * ada/acats-4/tests/c5/c54a42a.ada: Likewise. - * ada/acats-4/tests/c5/c54a42b.ada: Likewise. - * ada/acats-4/tests/c5/c54a42c.ada: Likewise. - * ada/acats-4/tests/c5/c54a42d.ada: Likewise. - * ada/acats-4/tests/c5/c54a42e.ada: Likewise. - * ada/acats-4/tests/c5/c54a42f.ada: Likewise. - * ada/acats-4/tests/c5/c54a42g.ada: Likewise. - * ada/acats-4/tests/c5/c550001.a: Likewise. - * ada/acats-4/tests/c5/c552001.a: Likewise. - * ada/acats-4/tests/c5/c552002.a: Likewise. - * ada/acats-4/tests/c5/c552a01.a: Likewise. - * ada/acats-4/tests/c5/c552a02.a: Likewise. - * ada/acats-4/tests/c5/c55b03a.ada: Likewise. - * ada/acats-4/tests/c5/c55b04a.ada: Likewise. - * ada/acats-4/tests/c5/c55b05a.ada: Likewise. - * ada/acats-4/tests/c5/c55b06a.ada: Likewise. - * ada/acats-4/tests/c5/c55b06b.ada: Likewise. - * ada/acats-4/tests/c5/c55b07a.dep: Likewise. - * ada/acats-4/tests/c5/c55b07b.dep: Likewise. - * ada/acats-4/tests/c5/c55b10a.ada: Likewise. - * ada/acats-4/tests/c5/c55b11a.ada: Likewise. - * ada/acats-4/tests/c5/c55b11b.ada: Likewise. - * ada/acats-4/tests/c5/c55b15a.ada: Likewise. - * ada/acats-4/tests/c5/c55b16a.ada: Likewise. - * ada/acats-4/tests/c5/c55c02a.ada: Likewise. - * ada/acats-4/tests/c5/c55c02b.ada: Likewise. - * ada/acats-4/tests/c5/c56002a.ada: Likewise. - * ada/acats-4/tests/c5/c57003a.ada: Likewise. - * ada/acats-4/tests/c5/c57004a.ada: Likewise. - * ada/acats-4/tests/c5/c57004b.ada: Likewise. - * ada/acats-4/tests/c5/c58004c.ada: Likewise. - * ada/acats-4/tests/c5/c58004d.ada: Likewise. - * ada/acats-4/tests/c5/c58004g.ada: Likewise. - * ada/acats-4/tests/c5/c58005a.ada: Likewise. - * ada/acats-4/tests/c5/c58005b.ada: Likewise. - * ada/acats-4/tests/c5/c58005h.ada: Likewise. - * ada/acats-4/tests/c5/c58006a.ada: Likewise. - * ada/acats-4/tests/c5/c58006b.ada: Likewise. - * ada/acats-4/tests/c5/c59002a.ada: Likewise. - * ada/acats-4/tests/c5/c59002b.ada: Likewise. - * ada/acats-4/tests/c5/c59002c.ada: Likewise. - * ada/acats-4/tests/c6/c61008a.ada: Likewise. - * ada/acats-4/tests/c6/c61009a.ada: Likewise. - * ada/acats-4/tests/c6/c61010a.ada: Likewise. - * ada/acats-4/tests/c6/c611001.a: Likewise. - * ada/acats-4/tests/c6/c611a01.a: Likewise. - * ada/acats-4/tests/c6/c611a020.a: Likewise. - * ada/acats-4/tests/c6/c611a021.a: Likewise. - * ada/acats-4/tests/c6/c611a022.am: Likewise. - * ada/acats-4/tests/c6/c611a030.a: Likewise. - * ada/acats-4/tests/c6/c611a031.a: Likewise. - * ada/acats-4/tests/c6/c611a032.am: Likewise. - * ada/acats-4/tests/c6/c611a040.a: Likewise. - * ada/acats-4/tests/c6/c611a041.a: Likewise. - * ada/acats-4/tests/c6/c611a042.a: Likewise. - * ada/acats-4/tests/c6/c611a043.am: Likewise. - * ada/acats-4/tests/c6/c611b010.a: Likewise. - * ada/acats-4/tests/c6/c611b011.a: Likewise. - * ada/acats-4/tests/c6/c611b012.am: Likewise. - * ada/acats-4/tests/c6/c611b020.a: Likewise. - * ada/acats-4/tests/c6/c611b021.a: Likewise. - * ada/acats-4/tests/c6/c611b022.am: Likewise. - * ada/acats-4/tests/c6/c611b030.a: Likewise. - * ada/acats-4/tests/c6/c611b031.a: Likewise. - * ada/acats-4/tests/c6/c611b032.a: Likewise. - * ada/acats-4/tests/c6/c611b033.am: Likewise. - * ada/acats-4/tests/c6/c620001.a: Likewise. - * ada/acats-4/tests/c6/c620002.a: Likewise. - * ada/acats-4/tests/c6/c62002a.ada: Likewise. - * ada/acats-4/tests/c6/c62003b.ada: Likewise. - * ada/acats-4/tests/c6/c62004a.ada: Likewise. - * ada/acats-4/tests/c6/c62006a.ada: Likewise. - * ada/acats-4/tests/c6/c631001.a: Likewise. - * ada/acats-4/tests/c6/c640001.a: Likewise. - * ada/acats-4/tests/c6/c640002.a: Likewise. - * ada/acats-4/tests/c6/c64002b.ada: Likewise. - * ada/acats-4/tests/c6/c64004g.ada: Likewise. - * ada/acats-4/tests/c6/c64005a.ada: Likewise. - * ada/acats-4/tests/c6/c64005b.ada: Likewise. - * ada/acats-4/tests/c6/c64005c.ada: Likewise. - * ada/acats-4/tests/c6/c64005d0.ada: Likewise. - * ada/acats-4/tests/c6/c64005da.ada: Likewise. - * ada/acats-4/tests/c6/c64005db.ada: Likewise. - * ada/acats-4/tests/c6/c64005dc.ada: Likewise. - * ada/acats-4/tests/c6/c641001.a: Likewise. - * ada/acats-4/tests/c6/c641002.a: Likewise. - * ada/acats-4/tests/c6/c641003.a: Likewise. - * ada/acats-4/tests/c6/c64103b.ada: Likewise. - * ada/acats-4/tests/c6/c64103c.ada: Likewise. - * ada/acats-4/tests/c6/c64103d.ada: Likewise. - * ada/acats-4/tests/c6/c64103e.ada: Likewise. - * ada/acats-4/tests/c6/c64103f.ada: Likewise. - * ada/acats-4/tests/c6/c64104a.ada: Likewise. - * ada/acats-4/tests/c6/c64104b.ada: Likewise. - * ada/acats-4/tests/c6/c64104c.ada: Likewise. - * ada/acats-4/tests/c6/c64104d.ada: Likewise. - * ada/acats-4/tests/c6/c64104e.ada: Likewise. - * ada/acats-4/tests/c6/c64104f.ada: Likewise. - * ada/acats-4/tests/c6/c64104g.ada: Likewise. - * ada/acats-4/tests/c6/c64104h.ada: Likewise. - * ada/acats-4/tests/c6/c64104i.ada: Likewise. - * ada/acats-4/tests/c6/c64104j.ada: Likewise. - * ada/acats-4/tests/c6/c64104k.ada: Likewise. - * ada/acats-4/tests/c6/c64104l.ada: Likewise. - * ada/acats-4/tests/c6/c64104m.ada: Likewise. - * ada/acats-4/tests/c6/c64104n.ada: Likewise. - * ada/acats-4/tests/c6/c64104o.ada: Likewise. - * ada/acats-4/tests/c6/c64105a.ada: Likewise. - * ada/acats-4/tests/c6/c64105b.ada: Likewise. - * ada/acats-4/tests/c6/c64105c.ada: Likewise. - * ada/acats-4/tests/c6/c64105d.ada: Likewise. - * ada/acats-4/tests/c6/c64106a.ada: Likewise. - * ada/acats-4/tests/c6/c64106b.ada: Likewise. - * ada/acats-4/tests/c6/c64106c.ada: Likewise. - * ada/acats-4/tests/c6/c64106d.ada: Likewise. - * ada/acats-4/tests/c6/c64107a.ada: Likewise. - * ada/acats-4/tests/c6/c64108a.ada: Likewise. - * ada/acats-4/tests/c6/c64109a.ada: Likewise. - * ada/acats-4/tests/c6/c64109b.ada: Likewise. - * ada/acats-4/tests/c6/c64109c.ada: Likewise. - * ada/acats-4/tests/c6/c64109d.ada: Likewise. - * ada/acats-4/tests/c6/c64109e.ada: Likewise. - * ada/acats-4/tests/c6/c64109f.ada: Likewise. - * ada/acats-4/tests/c6/c64109g.ada: Likewise. - * ada/acats-4/tests/c6/c64109h.ada: Likewise. - * ada/acats-4/tests/c6/c64109i.ada: Likewise. - * ada/acats-4/tests/c6/c64109j.ada: Likewise. - * ada/acats-4/tests/c6/c64109k.ada: Likewise. - * ada/acats-4/tests/c6/c64109l.ada: Likewise. - * ada/acats-4/tests/c6/c64201b.ada: Likewise. - * ada/acats-4/tests/c6/c64201c.ada: Likewise. - * ada/acats-4/tests/c6/c64202a.ada: Likewise. - * ada/acats-4/tests/c6/c650002.a: Likewise. - * ada/acats-4/tests/c6/c650003.a: Likewise. - * ada/acats-4/tests/c6/c65003a.ada: Likewise. - * ada/acats-4/tests/c6/c65003b.ada: Likewise. - * ada/acats-4/tests/c6/c650a01.a: Likewise. - * ada/acats-4/tests/c6/c650a02.a: Likewise. - * ada/acats-4/tests/c6/c650b01.a: Likewise. - * ada/acats-4/tests/c6/c650b02.a: Likewise. - * ada/acats-4/tests/c6/c650b03.a: Likewise. - * ada/acats-4/tests/c6/c650b04.a: Likewise. - * ada/acats-4/tests/c6/c651001.a: Likewise. - * ada/acats-4/tests/c6/c651002.a: Likewise. - * ada/acats-4/tests/c6/c660001.a: Likewise. - * ada/acats-4/tests/c6/c66002a.ada: Likewise. - * ada/acats-4/tests/c6/c66002c.ada: Likewise. - * ada/acats-4/tests/c6/c66002d.ada: Likewise. - * ada/acats-4/tests/c6/c66002e.ada: Likewise. - * ada/acats-4/tests/c6/c66002f.ada: Likewise. - * ada/acats-4/tests/c6/c66002g.ada: Likewise. - * ada/acats-4/tests/c6/c67002a.ada: Likewise. - * ada/acats-4/tests/c6/c67002b.ada: Likewise. - * ada/acats-4/tests/c6/c67002c.ada: Likewise. - * ada/acats-4/tests/c6/c67002d.ada: Likewise. - * ada/acats-4/tests/c6/c67002e.ada: Likewise. - * ada/acats-4/tests/c6/c67003f.ada: Likewise. - * ada/acats-4/tests/c6/c67005a.ada: Likewise. - * ada/acats-4/tests/c6/c67005b.ada: Likewise. - * ada/acats-4/tests/c6/c67005c.ada: Likewise. - * ada/acats-4/tests/c6/c67005d.ada: Likewise. - * ada/acats-4/tests/c6/c680001.a: Likewise. - * ada/acats-4/tests/c7/c72001b.ada: Likewise. - * ada/acats-4/tests/c7/c72002a.ada: Likewise. - * ada/acats-4/tests/c7/c730001.a: Likewise. - * ada/acats-4/tests/c7/c730002.a: Likewise. - * ada/acats-4/tests/c7/c730003.a: Likewise. - * ada/acats-4/tests/c7/c730004.a: Likewise. - * ada/acats-4/tests/c7/c73002a.ada: Likewise. - * ada/acats-4/tests/c7/c730a01.a: Likewise. - * ada/acats-4/tests/c7/c730a02.a: Likewise. - * ada/acats-4/tests/c7/c731001.a: Likewise. - * ada/acats-4/tests/c7/c7320010.a: Likewise. - * ada/acats-4/tests/c7/c7320011.a: Likewise. - * ada/acats-4/tests/c7/c7320012.am: Likewise. - * ada/acats-4/tests/c7/c732002.a: Likewise. - * ada/acats-4/tests/c7/c732a01.a: Likewise. - * ada/acats-4/tests/c7/c732a02.a: Likewise. - * ada/acats-4/tests/c7/c732b01.a: Likewise. - * ada/acats-4/tests/c7/c732b02.a: Likewise. - * ada/acats-4/tests/c7/c732c01.a: Likewise. - * ada/acats-4/tests/c7/c74004a.ada: Likewise. - * ada/acats-4/tests/c7/c74203a.ada: Likewise. - * ada/acats-4/tests/c7/c74206a.ada: Likewise. - * ada/acats-4/tests/c7/c74207b.ada: Likewise. - * ada/acats-4/tests/c7/c74208a.ada: Likewise. - * ada/acats-4/tests/c7/c74208b.ada: Likewise. - * ada/acats-4/tests/c7/c74209a.ada: Likewise. - * ada/acats-4/tests/c7/c74210a.ada: Likewise. - * ada/acats-4/tests/c7/c74211a.ada: Likewise. - * ada/acats-4/tests/c7/c74211b.ada: Likewise. - * ada/acats-4/tests/c7/c74302a.ada: Likewise. - * ada/acats-4/tests/c7/c74302b.ada: Likewise. - * ada/acats-4/tests/c7/c74305a.ada: Likewise. - * ada/acats-4/tests/c7/c74305b.ada: Likewise. - * ada/acats-4/tests/c7/c74306a.ada: Likewise. - * ada/acats-4/tests/c7/c74307a.ada: Likewise. - * ada/acats-4/tests/c7/c74401d.ada: Likewise. - * ada/acats-4/tests/c7/c74401e.ada: Likewise. - * ada/acats-4/tests/c7/c74401k.ada: Likewise. - * ada/acats-4/tests/c7/c74401q.ada: Likewise. - * ada/acats-4/tests/c7/c74402a.ada: Likewise. - * ada/acats-4/tests/c7/c74402b.ada: Likewise. - * ada/acats-4/tests/c7/c74406a.ada: Likewise. - * ada/acats-4/tests/c7/c74407b.ada: Likewise. - * ada/acats-4/tests/c7/c74409b.ada: Likewise. - * ada/acats-4/tests/c7/c760001.a: Likewise. - * ada/acats-4/tests/c7/c760002.a: Likewise. - * ada/acats-4/tests/c7/c760007.a: Likewise. - * ada/acats-4/tests/c7/c760009.a: Likewise. - * ada/acats-4/tests/c7/c760010.a: Likewise. - * ada/acats-4/tests/c7/c760011.a: Likewise. - * ada/acats-4/tests/c7/c760012.a: Likewise. - * ada/acats-4/tests/c7/c760013.a: Likewise. - * ada/acats-4/tests/c7/c760014.a: Likewise. - * ada/acats-4/tests/c7/c760015.a: Likewise. - * ada/acats-4/tests/c7/c760a01.a: Likewise. - * ada/acats-4/tests/c7/c760a02.a: Likewise. - * ada/acats-4/tests/c7/c760a03.a: Likewise. - * ada/acats-4/tests/c7/c761001.a: Likewise. - * ada/acats-4/tests/c7/c761002.a: Likewise. - * ada/acats-4/tests/c7/c761003.a: Likewise. - * ada/acats-4/tests/c7/c761004.a: Likewise. - * ada/acats-4/tests/c7/c761005.a: Likewise. - * ada/acats-4/tests/c7/c761006.a: Likewise. - * ada/acats-4/tests/c7/c761007.a: Likewise. - * ada/acats-4/tests/c7/c761010.a: Likewise. - * ada/acats-4/tests/c7/c761011.a: Likewise. - * ada/acats-4/tests/c7/c761012.a: Likewise. - * ada/acats-4/tests/c7/c761013.a: Likewise. - * ada/acats-4/tests/c8/c83007a.ada: Likewise. - * ada/acats-4/tests/c8/c83012d.ada: Likewise. - * ada/acats-4/tests/c8/c83022a.ada: Likewise. - * ada/acats-4/tests/c8/c83022g0.ada: Likewise. - * ada/acats-4/tests/c8/c83022g1.ada: Likewise. - * ada/acats-4/tests/c8/c83023a.ada: Likewise. - * ada/acats-4/tests/c8/c83024a.ada: Likewise. - * ada/acats-4/tests/c8/c83024e0.ada: Likewise. - * ada/acats-4/tests/c8/c83024e1.ada: Likewise. - * ada/acats-4/tests/c8/c83025a.ada: Likewise. - * ada/acats-4/tests/c8/c83025c.ada: Likewise. - * ada/acats-4/tests/c8/c83027a.ada: Likewise. - * ada/acats-4/tests/c8/c83027c.ada: Likewise. - * ada/acats-4/tests/c8/c83028a.ada: Likewise. - * ada/acats-4/tests/c8/c83029a.ada: Likewise. - * ada/acats-4/tests/c8/c83030a.ada: Likewise. - * ada/acats-4/tests/c8/c83030c.ada: Likewise. - * ada/acats-4/tests/c8/c83031a.ada: Likewise. - * ada/acats-4/tests/c8/c83031c.ada: Likewise. - * ada/acats-4/tests/c8/c83031e.ada: Likewise. - * ada/acats-4/tests/c8/c83032a.ada: Likewise. - * ada/acats-4/tests/c8/c83033a.ada: Likewise. - * ada/acats-4/tests/c8/c83051a.ada: Likewise. - * ada/acats-4/tests/c8/c831001.a: Likewise. - * ada/acats-4/tests/c8/c83b02a.ada: Likewise. - * ada/acats-4/tests/c8/c83b02b.ada: Likewise. - * ada/acats-4/tests/c8/c83e02a.ada: Likewise. - * ada/acats-4/tests/c8/c83e02b.ada: Likewise. - * ada/acats-4/tests/c8/c83e03a.ada: Likewise. - * ada/acats-4/tests/c8/c83f01a.ada: Likewise. - * ada/acats-4/tests/c8/c83f01b.ada: Likewise. - * ada/acats-4/tests/c8/c83f01c0.ada: Likewise. - * ada/acats-4/tests/c8/c83f01c1.ada: Likewise. - * ada/acats-4/tests/c8/c83f01c2.ada: Likewise. - * ada/acats-4/tests/c8/c83f01d0.ada: Likewise. - * ada/acats-4/tests/c8/c83f01d1.ada: Likewise. - * ada/acats-4/tests/c8/c83f03a.ada: Likewise. - * ada/acats-4/tests/c8/c83f03b.ada: Likewise. - * ada/acats-4/tests/c8/c83f03c0.ada: Likewise. - * ada/acats-4/tests/c8/c83f03c1.ada: Likewise. - * ada/acats-4/tests/c8/c83f03c2.ada: Likewise. - * ada/acats-4/tests/c8/c83f03d0.ada: Likewise. - * ada/acats-4/tests/c8/c83f03d1.ada: Likewise. - * ada/acats-4/tests/c8/c840001.a: Likewise. - * ada/acats-4/tests/c8/c840002.a: Likewise. - * ada/acats-4/tests/c8/c84002a.ada: Likewise. - * ada/acats-4/tests/c8/c84005a.ada: Likewise. - * ada/acats-4/tests/c8/c84008a.ada: Likewise. - * ada/acats-4/tests/c8/c84009a.ada: Likewise. - * ada/acats-4/tests/c8/c85004b.ada: Likewise. - * ada/acats-4/tests/c8/c85005a.ada: Likewise. - * ada/acats-4/tests/c8/c85005b.ada: Likewise. - * ada/acats-4/tests/c8/c85005c.ada: Likewise. - * ada/acats-4/tests/c8/c85005d.ada: Likewise. - * ada/acats-4/tests/c8/c85005e.ada: Likewise. - * ada/acats-4/tests/c8/c85005f.ada: Likewise. - * ada/acats-4/tests/c8/c85005g.ada: Likewise. - * ada/acats-4/tests/c8/c85006a.ada: Likewise. - * ada/acats-4/tests/c8/c85006b.ada: Likewise. - * ada/acats-4/tests/c8/c85006c.ada: Likewise. - * ada/acats-4/tests/c8/c85006d.ada: Likewise. - * ada/acats-4/tests/c8/c85006e.ada: Likewise. - * ada/acats-4/tests/c8/c85006f.ada: Likewise. - * ada/acats-4/tests/c8/c85006g.ada: Likewise. - * ada/acats-4/tests/c8/c85007a.ada: Likewise. - * ada/acats-4/tests/c8/c85007e.ada: Likewise. - * ada/acats-4/tests/c8/c85009a.ada: Likewise. - * ada/acats-4/tests/c8/c85011a.ada: Likewise. - * ada/acats-4/tests/c8/c85013a.ada: Likewise. - * ada/acats-4/tests/c8/c85014a.ada: Likewise. - * ada/acats-4/tests/c8/c85014b.ada: Likewise. - * ada/acats-4/tests/c8/c85014c.ada: Likewise. - * ada/acats-4/tests/c8/c85017a.ada: Likewise. - * ada/acats-4/tests/c8/c85018a.ada: Likewise. - * ada/acats-4/tests/c8/c85018b.ada: Likewise. - * ada/acats-4/tests/c8/c85019a.ada: Likewise. - * ada/acats-4/tests/c8/c851001.a: Likewise. - * ada/acats-4/tests/c8/c851002.a: Likewise. - * ada/acats-4/tests/c8/c854001.a: Likewise. - * ada/acats-4/tests/c8/c854002.a: Likewise. - * ada/acats-4/tests/c8/c854003.a: Likewise. - * ada/acats-4/tests/c8/c86003a.ada: Likewise. - * ada/acats-4/tests/c8/c86004a.ada: Likewise. - * ada/acats-4/tests/c8/c86004b0.ada: Likewise. - * ada/acats-4/tests/c8/c86004b1.ada: Likewise. - * ada/acats-4/tests/c8/c86004b2.ada: Likewise. - * ada/acats-4/tests/c8/c86004c0.ada: Likewise. - * ada/acats-4/tests/c8/c86004c1.ada: Likewise. - * ada/acats-4/tests/c8/c86004c2.ada: Likewise. - * ada/acats-4/tests/c8/c86006i.ada: Likewise. - * ada/acats-4/tests/c8/c86007a.ada: Likewise. - * ada/acats-4/tests/c8/c87a05a.ada: Likewise. - * ada/acats-4/tests/c8/c87a05b.ada: Likewise. - * ada/acats-4/tests/c8/c87b02a.ada: Likewise. - * ada/acats-4/tests/c8/c87b02b.ada: Likewise. - * ada/acats-4/tests/c8/c87b03a.ada: Likewise. - * ada/acats-4/tests/c8/c87b04a.ada: Likewise. - * ada/acats-4/tests/c8/c87b04b.ada: Likewise. - * ada/acats-4/tests/c8/c87b04c.ada: Likewise. - * ada/acats-4/tests/c8/c87b05a.ada: Likewise. - * ada/acats-4/tests/c8/c87b06a.ada: Likewise. - * ada/acats-4/tests/c8/c87b07a.ada: Likewise. - * ada/acats-4/tests/c8/c87b07b.ada: Likewise. - * ada/acats-4/tests/c8/c87b07c.ada: Likewise. - * ada/acats-4/tests/c8/c87b07d.ada: Likewise. - * ada/acats-4/tests/c8/c87b07e.ada: Likewise. - * ada/acats-4/tests/c8/c87b08a.ada: Likewise. - * ada/acats-4/tests/c8/c87b09a.ada: Likewise. - * ada/acats-4/tests/c8/c87b09c.ada: Likewise. - * ada/acats-4/tests/c8/c87b10a.ada: Likewise. - * ada/acats-4/tests/c8/c87b11a.ada: Likewise. - * ada/acats-4/tests/c8/c87b11b.ada: Likewise. - * ada/acats-4/tests/c8/c87b13a.ada: Likewise. - * ada/acats-4/tests/c8/c87b14a.ada: Likewise. - * ada/acats-4/tests/c8/c87b14b.ada: Likewise. - * ada/acats-4/tests/c8/c87b14c.ada: Likewise. - * ada/acats-4/tests/c8/c87b14d.ada: Likewise. - * ada/acats-4/tests/c8/c87b15a.ada: Likewise. - * ada/acats-4/tests/c8/c87b16a.ada: Likewise. - * ada/acats-4/tests/c8/c87b17a.ada: Likewise. - * ada/acats-4/tests/c8/c87b18a.ada: Likewise. - * ada/acats-4/tests/c8/c87b18b.ada: Likewise. - * ada/acats-4/tests/c8/c87b19a.ada: Likewise. - * ada/acats-4/tests/c8/c87b23a.ada: Likewise. - * ada/acats-4/tests/c8/c87b24a.ada: Likewise. - * ada/acats-4/tests/c8/c87b24b.ada: Likewise. - * ada/acats-4/tests/c8/c87b26b.ada: Likewise. - * ada/acats-4/tests/c8/c87b27a.ada: Likewise. - * ada/acats-4/tests/c8/c87b28a.ada: Likewise. - * ada/acats-4/tests/c8/c87b29a.ada: Likewise. - * ada/acats-4/tests/c8/c87b30a.ada: Likewise. - * ada/acats-4/tests/c8/c87b31a.ada: Likewise. - * ada/acats-4/tests/c8/c87b32a.ada: Likewise. - * ada/acats-4/tests/c8/c87b33a.ada: Likewise. - * ada/acats-4/tests/c8/c87b34a.ada: Likewise. - * ada/acats-4/tests/c8/c87b34b.ada: Likewise. - * ada/acats-4/tests/c8/c87b34c.ada: Likewise. - * ada/acats-4/tests/c8/c87b35c.ada: Likewise. - * ada/acats-4/tests/c8/c87b38a.ada: Likewise. - * ada/acats-4/tests/c8/c87b39a.ada: Likewise. - * ada/acats-4/tests/c8/c87b40a.ada: Likewise. - * ada/acats-4/tests/c8/c87b41a.ada: Likewise. - * ada/acats-4/tests/c8/c87b42a.ada: Likewise. - * ada/acats-4/tests/c8/c87b43a.ada: Likewise. - * ada/acats-4/tests/c8/c87b44a.ada: Likewise. - * ada/acats-4/tests/c8/c87b45a.ada: Likewise. - * ada/acats-4/tests/c8/c87b45c.ada: Likewise. - * ada/acats-4/tests/c8/c87b47a.ada: Likewise. - * ada/acats-4/tests/c8/c87b48a.ada: Likewise. - * ada/acats-4/tests/c8/c87b48b.ada: Likewise. - * ada/acats-4/tests/c8/c87b50a.ada: Likewise. - * ada/acats-4/tests/c8/c87b54a.ada: Likewise. - * ada/acats-4/tests/c8/c87b57a.ada: Likewise. - * ada/acats-4/tests/c8/c87b62a.ada: Likewise. - * ada/acats-4/tests/c8/c87b62b.ada: Likewise. - * ada/acats-4/tests/c8/c87b62c.ada: Likewise. - * ada/acats-4/tests/c8/c87b62d.tst: Likewise. - * ada/acats-4/tests/c9/c910001.a: Likewise. - * ada/acats-4/tests/c9/c910002.a: Likewise. - * ada/acats-4/tests/c9/c910003.a: Likewise. - * ada/acats-4/tests/c9/c91004b.ada: Likewise. - * ada/acats-4/tests/c9/c91004c.ada: Likewise. - * ada/acats-4/tests/c9/c91006a.ada: Likewise. - * ada/acats-4/tests/c9/c91007a.ada: Likewise. - * ada/acats-4/tests/c9/c920001.a: Likewise. - * ada/acats-4/tests/c9/c92002a.ada: Likewise. - * ada/acats-4/tests/c9/c92003a.ada: Likewise. - * ada/acats-4/tests/c9/c92005a.ada: Likewise. - * ada/acats-4/tests/c9/c92005b.ada: Likewise. - * ada/acats-4/tests/c9/c92006a.ada: Likewise. - * ada/acats-4/tests/c9/c930001.a: Likewise. - * ada/acats-4/tests/c9/c93001a.ada: Likewise. - * ada/acats-4/tests/c9/c93002a.ada: Likewise. - * ada/acats-4/tests/c9/c93003a.ada: Likewise. - * ada/acats-4/tests/c9/c93004a.ada: Likewise. - * ada/acats-4/tests/c9/c93004b.ada: Likewise. - * ada/acats-4/tests/c9/c93004c.ada: Likewise. - * ada/acats-4/tests/c9/c93004d.ada: Likewise. - * ada/acats-4/tests/c9/c93004f.ada: Likewise. - * ada/acats-4/tests/c9/c93005a.ada: Likewise. - * ada/acats-4/tests/c9/c93005b.ada: Likewise. - * ada/acats-4/tests/c9/c93005c.ada: Likewise. - * ada/acats-4/tests/c9/c93005d.ada: Likewise. - * ada/acats-4/tests/c9/c93005e.ada: Likewise. - * ada/acats-4/tests/c9/c93005f.ada: Likewise. - * ada/acats-4/tests/c9/c93005g.ada: Likewise. - * ada/acats-4/tests/c9/c93005h.ada: Likewise. - * ada/acats-4/tests/c9/c93006a.ada: Likewise. - * ada/acats-4/tests/c9/c93007a.ada: Likewise. - * ada/acats-4/tests/c9/c93008a.ada: Likewise. - * ada/acats-4/tests/c9/c93008b.ada: Likewise. - * ada/acats-4/tests/c9/c940001.a: Likewise. - * ada/acats-4/tests/c9/c940002.a: Likewise. - * ada/acats-4/tests/c9/c940004.a: Likewise. - * ada/acats-4/tests/c9/c940005.a: Likewise. - * ada/acats-4/tests/c9/c940006.a: Likewise. - * ada/acats-4/tests/c9/c940007.a: Likewise. - * ada/acats-4/tests/c9/c940010.a: Likewise. - * ada/acats-4/tests/c9/c940011.a: Likewise. - * ada/acats-4/tests/c9/c940012.a: Likewise. - * ada/acats-4/tests/c9/c940013.a: Likewise. - * ada/acats-4/tests/c9/c940014.a: Likewise. - * ada/acats-4/tests/c9/c940015.a: Likewise. - * ada/acats-4/tests/c9/c940016.a: Likewise. - * ada/acats-4/tests/c9/c940017.a: Likewise. - * ada/acats-4/tests/c9/c94001a.ada: Likewise. - * ada/acats-4/tests/c9/c94001b.ada: Likewise. - * ada/acats-4/tests/c9/c94001c.ada: Likewise. - * ada/acats-4/tests/c9/c94001e.ada: Likewise. - * ada/acats-4/tests/c9/c94001f.ada: Likewise. - * ada/acats-4/tests/c9/c94001g.ada: Likewise. - * ada/acats-4/tests/c9/c94002a.ada: Likewise. - * ada/acats-4/tests/c9/c94002b.ada: Likewise. - * ada/acats-4/tests/c9/c94002d.ada: Likewise. - * ada/acats-4/tests/c9/c94002e.ada: Likewise. - * ada/acats-4/tests/c9/c94002f.ada: Likewise. - * ada/acats-4/tests/c9/c94002g.ada: Likewise. - * ada/acats-4/tests/c9/c94004a.ada: Likewise. - * ada/acats-4/tests/c9/c94004b.ada: Likewise. - * ada/acats-4/tests/c9/c94004c.ada: Likewise. - * ada/acats-4/tests/c9/c94005a.ada: Likewise. - * ada/acats-4/tests/c9/c94005b.ada: Likewise. - * ada/acats-4/tests/c9/c94006a.ada: Likewise. - * ada/acats-4/tests/c9/c94007a.ada: Likewise. - * ada/acats-4/tests/c9/c94007b.ada: Likewise. - * ada/acats-4/tests/c9/c94008a.ada: Likewise. - * ada/acats-4/tests/c9/c94008b.ada: Likewise. - * ada/acats-4/tests/c9/c94008c.ada: Likewise. - * ada/acats-4/tests/c9/c94008d.ada: Likewise. - * ada/acats-4/tests/c9/c94010a.ada: Likewise. - * ada/acats-4/tests/c9/c94011a.ada: Likewise. - * ada/acats-4/tests/c9/c94020a.ada: Likewise. - * ada/acats-4/tests/c9/c940a03.a: Likewise. - * ada/acats-4/tests/c9/c950001.a: Likewise. - * ada/acats-4/tests/c9/c95008a.ada: Likewise. - * ada/acats-4/tests/c9/c95009a.ada: Likewise. - * ada/acats-4/tests/c9/c95010a.ada: Likewise. - * ada/acats-4/tests/c9/c95011a.ada: Likewise. - * ada/acats-4/tests/c9/c95012a.ada: Likewise. - * ada/acats-4/tests/c9/c95021a.ada: Likewise. - * ada/acats-4/tests/c9/c95022a.ada: Likewise. - * ada/acats-4/tests/c9/c95022b.ada: Likewise. - * ada/acats-4/tests/c9/c95033a.ada: Likewise. - * ada/acats-4/tests/c9/c95033b.ada: Likewise. - * ada/acats-4/tests/c9/c95034a.ada: Likewise. - * ada/acats-4/tests/c9/c95034b.ada: Likewise. - * ada/acats-4/tests/c9/c95035a.ada: Likewise. - * ada/acats-4/tests/c9/c95040a.ada: Likewise. - * ada/acats-4/tests/c9/c95040b.ada: Likewise. - * ada/acats-4/tests/c9/c95040c.ada: Likewise. - * ada/acats-4/tests/c9/c95040d.ada: Likewise. - * ada/acats-4/tests/c9/c95041a.ada: Likewise. - * ada/acats-4/tests/c9/c95065a.ada: Likewise. - * ada/acats-4/tests/c9/c95065b.ada: Likewise. - * ada/acats-4/tests/c9/c95065c.ada: Likewise. - * ada/acats-4/tests/c9/c95065d.ada: Likewise. - * ada/acats-4/tests/c9/c95065e.ada: Likewise. - * ada/acats-4/tests/c9/c95065f.ada: Likewise. - * ada/acats-4/tests/c9/c95066a.ada: Likewise. - * ada/acats-4/tests/c9/c95067a.ada: Likewise. - * ada/acats-4/tests/c9/c95071a.ada: Likewise. - * ada/acats-4/tests/c9/c95072b.ada: Likewise. - * ada/acats-4/tests/c9/c95073a.ada: Likewise. - * ada/acats-4/tests/c9/c95074c.ada: Likewise. - * ada/acats-4/tests/c9/c95076a.ada: Likewise. - * ada/acats-4/tests/c9/c95078a.ada: Likewise. - * ada/acats-4/tests/c9/c95080b.ada: Likewise. - * ada/acats-4/tests/c9/c95082g.ada: Likewise. - * ada/acats-4/tests/c9/c95085a.ada: Likewise. - * ada/acats-4/tests/c9/c95085b.ada: Likewise. - * ada/acats-4/tests/c9/c95085c.ada: Likewise. - * ada/acats-4/tests/c9/c95085d.ada: Likewise. - * ada/acats-4/tests/c9/c95085e.ada: Likewise. - * ada/acats-4/tests/c9/c95085f.ada: Likewise. - * ada/acats-4/tests/c9/c95085g.ada: Likewise. - * ada/acats-4/tests/c9/c95085h.ada: Likewise. - * ada/acats-4/tests/c9/c95085i.ada: Likewise. - * ada/acats-4/tests/c9/c95085j.ada: Likewise. - * ada/acats-4/tests/c9/c95085k.ada: Likewise. - * ada/acats-4/tests/c9/c95085l.ada: Likewise. - * ada/acats-4/tests/c9/c95085m.ada: Likewise. - * ada/acats-4/tests/c9/c95085n.ada: Likewise. - * ada/acats-4/tests/c9/c95085o.ada: Likewise. - * ada/acats-4/tests/c9/c95086a.ada: Likewise. - * ada/acats-4/tests/c9/c95086b.ada: Likewise. - * ada/acats-4/tests/c9/c95086c.ada: Likewise. - * ada/acats-4/tests/c9/c95086d.ada: Likewise. - * ada/acats-4/tests/c9/c95086e.ada: Likewise. - * ada/acats-4/tests/c9/c95086f.ada: Likewise. - * ada/acats-4/tests/c9/c95087a.ada: Likewise. - * ada/acats-4/tests/c9/c95087b.ada: Likewise. - * ada/acats-4/tests/c9/c95087c.ada: Likewise. - * ada/acats-4/tests/c9/c95087d.ada: Likewise. - * ada/acats-4/tests/c9/c95088a.ada: Likewise. - * ada/acats-4/tests/c9/c95089a.ada: Likewise. - * ada/acats-4/tests/c9/c95090a.ada: Likewise. - * ada/acats-4/tests/c9/c95092a.ada: Likewise. - * ada/acats-4/tests/c9/c95093a.ada: Likewise. - * ada/acats-4/tests/c9/c95095a.ada: Likewise. - * ada/acats-4/tests/c9/c95095b.ada: Likewise. - * ada/acats-4/tests/c9/c95095c.ada: Likewise. - * ada/acats-4/tests/c9/c95095d.ada: Likewise. - * ada/acats-4/tests/c9/c95095e.ada: Likewise. - * ada/acats-4/tests/c9/c951001.a: Likewise. - * ada/acats-4/tests/c9/c951002.a: Likewise. - * ada/acats-4/tests/c9/c953001.a: Likewise. - * ada/acats-4/tests/c9/c953002.a: Likewise. - * ada/acats-4/tests/c9/c953003.a: Likewise. - * ada/acats-4/tests/c9/c954001.a: Likewise. - * ada/acats-4/tests/c9/c954010.a: Likewise. - * ada/acats-4/tests/c9/c954011.a: Likewise. - * ada/acats-4/tests/c9/c954012.a: Likewise. - * ada/acats-4/tests/c9/c954013.a: Likewise. - * ada/acats-4/tests/c9/c954014.a: Likewise. - * ada/acats-4/tests/c9/c954015.a: Likewise. - * ada/acats-4/tests/c9/c954016.a: Likewise. - * ada/acats-4/tests/c9/c954017.a: Likewise. - * ada/acats-4/tests/c9/c954018.a: Likewise. - * ada/acats-4/tests/c9/c954019.a: Likewise. - * ada/acats-4/tests/c9/c954020.a: Likewise. - * ada/acats-4/tests/c9/c954021.a: Likewise. - * ada/acats-4/tests/c9/c954022.a: Likewise. - * ada/acats-4/tests/c9/c954023.a: Likewise. - * ada/acats-4/tests/c9/c954024.a: Likewise. - * ada/acats-4/tests/c9/c954025.a: Likewise. - * ada/acats-4/tests/c9/c954026.a: Likewise. - * ada/acats-4/tests/c9/c954027.a: Likewise. - * ada/acats-4/tests/c9/c954a01.a: Likewise. - * ada/acats-4/tests/c9/c954a02.a: Likewise. - * ada/acats-4/tests/c9/c954a03.a: Likewise. - * ada/acats-4/tests/c9/c960001.a: Likewise. - * ada/acats-4/tests/c9/c960002.a: Likewise. - * ada/acats-4/tests/c9/c960004.a: Likewise. - * ada/acats-4/tests/c9/c96001a.ada: Likewise. - * ada/acats-4/tests/c9/c96004a.ada: Likewise. - * ada/acats-4/tests/c9/c96005a.ada: Likewise. - * ada/acats-4/tests/c9/c96005b.tst: Likewise. - * ada/acats-4/tests/c9/c96005d.ada: Likewise. - * ada/acats-4/tests/c9/c96005f.ada: Likewise. - * ada/acats-4/tests/c9/c96006a.ada: Likewise. - * ada/acats-4/tests/c9/c96007a.ada: Likewise. - * ada/acats-4/tests/c9/c96008a.ada: Likewise. - * ada/acats-4/tests/c9/c96008b.ada: Likewise. - * ada/acats-4/tests/c9/c961001.a: Likewise. - * ada/acats-4/tests/c9/c97112a.ada: Likewise. - * ada/acats-4/tests/c9/c97113a.ada: Likewise. - * ada/acats-4/tests/c9/c97114a.ada: Likewise. - * ada/acats-4/tests/c9/c97115a.ada: Likewise. - * ada/acats-4/tests/c9/c97116a.ada: Likewise. - * ada/acats-4/tests/c9/c97117a.ada: Likewise. - * ada/acats-4/tests/c9/c97117b.ada: Likewise. - * ada/acats-4/tests/c9/c97117c.ada: Likewise. - * ada/acats-4/tests/c9/c97118a.ada: Likewise. - * ada/acats-4/tests/c9/c97120a.ada: Likewise. - * ada/acats-4/tests/c9/c97120b.ada: Likewise. - * ada/acats-4/tests/c9/c97201a.ada: Likewise. - * ada/acats-4/tests/c9/c97201b.ada: Likewise. - * ada/acats-4/tests/c9/c97201c.ada: Likewise. - * ada/acats-4/tests/c9/c97201d.ada: Likewise. - * ada/acats-4/tests/c9/c97201e.ada: Likewise. - * ada/acats-4/tests/c9/c97201g.ada: Likewise. - * ada/acats-4/tests/c9/c97201h.ada: Likewise. - * ada/acats-4/tests/c9/c97201x.ada: Likewise. - * ada/acats-4/tests/c9/c97202a.ada: Likewise. - * ada/acats-4/tests/c9/c97203a.ada: Likewise. - * ada/acats-4/tests/c9/c97203b.ada: Likewise. - * ada/acats-4/tests/c9/c97203c.ada: Likewise. - * ada/acats-4/tests/c9/c97204a.ada: Likewise. - * ada/acats-4/tests/c9/c97204b.ada: Likewise. - * ada/acats-4/tests/c9/c97205a.ada: Likewise. - * ada/acats-4/tests/c9/c97205b.ada: Likewise. - * ada/acats-4/tests/c9/c97301a.ada: Likewise. - * ada/acats-4/tests/c9/c97301b.ada: Likewise. - * ada/acats-4/tests/c9/c97301c.ada: Likewise. - * ada/acats-4/tests/c9/c97301d.ada: Likewise. - * ada/acats-4/tests/c9/c97301e.ada: Likewise. - * ada/acats-4/tests/c9/c97302a.ada: Likewise. - * ada/acats-4/tests/c9/c97303a.ada: Likewise. - * ada/acats-4/tests/c9/c97303b.ada: Likewise. - * ada/acats-4/tests/c9/c97303c.ada: Likewise. - * ada/acats-4/tests/c9/c97304a.ada: Likewise. - * ada/acats-4/tests/c9/c97304b.ada: Likewise. - * ada/acats-4/tests/c9/c97305a.ada: Likewise. - * ada/acats-4/tests/c9/c97305b.ada: Likewise. - * ada/acats-4/tests/c9/c97305c.ada: Likewise. - * ada/acats-4/tests/c9/c97305d.ada: Likewise. - * ada/acats-4/tests/c9/c97307a.ada: Likewise. - * ada/acats-4/tests/c9/c974001.a: Likewise. - * ada/acats-4/tests/c9/c974002.a: Likewise. - * ada/acats-4/tests/c9/c974003.a: Likewise. - * ada/acats-4/tests/c9/c974004.a: Likewise. - * ada/acats-4/tests/c9/c974005.a: Likewise. - * ada/acats-4/tests/c9/c974006.a: Likewise. - * ada/acats-4/tests/c9/c974007.a: Likewise. - * ada/acats-4/tests/c9/c974008.a: Likewise. - * ada/acats-4/tests/c9/c974009.a: Likewise. - * ada/acats-4/tests/c9/c974010.a: Likewise. - * ada/acats-4/tests/c9/c974011.a: Likewise. - * ada/acats-4/tests/c9/c974012.a: Likewise. - * ada/acats-4/tests/c9/c974013.a: Likewise. - * ada/acats-4/tests/c9/c974014.a: Likewise. - * ada/acats-4/tests/c9/c980001.a: Likewise. - * ada/acats-4/tests/c9/c980002.a: Likewise. - * ada/acats-4/tests/c9/c980003.a: Likewise. - * ada/acats-4/tests/c9/c990001.a: Likewise. - * ada/acats-4/tests/c9/c99005a.ada: Likewise. - * ada/acats-4/tests/c9/c9a003a.ada: Likewise. - * ada/acats-4/tests/c9/c9a004a.ada: Likewise. - * ada/acats-4/tests/c9/c9a007a.ada: Likewise. - * ada/acats-4/tests/c9/c9a009a.ada: Likewise. - * ada/acats-4/tests/c9/c9a009c.ada: Likewise. - * ada/acats-4/tests/c9/c9a009f.ada: Likewise. - * ada/acats-4/tests/c9/c9a009g.ada: Likewise. - * ada/acats-4/tests/c9/c9a009h.ada: Likewise. - * ada/acats-4/tests/c9/c9a010a.ada: Likewise. - * ada/acats-4/tests/c9/c9a011a.ada: Likewise. - * ada/acats-4/tests/c9/c9a011b.ada: Likewise. - * ada/acats-4/tests/ca/ca1003a.ada: Likewise. - * ada/acats-4/tests/ca/ca1004a.ada: Likewise. - * ada/acats-4/tests/ca/ca1005a.ada: Likewise. - * ada/acats-4/tests/ca/ca1006a.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a3.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a4.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a5.ada: Likewise. - * ada/acats-4/tests/ca/ca1011a6.ada: Likewise. - * ada/acats-4/tests/ca/ca1012a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1012a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1012a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1012a3.ada: Likewise. - * ada/acats-4/tests/ca/ca1012a4.ada: Likewise. - * ada/acats-4/tests/ca/ca1012b0.ada: Likewise. - * ada/acats-4/tests/ca/ca1012b2.ada: Likewise. - * ada/acats-4/tests/ca/ca1012b4.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a3.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a4.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a5.ada: Likewise. - * ada/acats-4/tests/ca/ca1013a6.ada: Likewise. - * ada/acats-4/tests/ca/ca1014a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1014a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1014a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1014a3.ada: Likewise. - * ada/acats-4/tests/ca/ca1020e0.ada: Likewise. - * ada/acats-4/tests/ca/ca1020e1.ada: Likewise. - * ada/acats-4/tests/ca/ca1020e2.ada: Likewise. - * ada/acats-4/tests/ca/ca1020e3.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a3.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a4.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a5.ada: Likewise. - * ada/acats-4/tests/ca/ca1022a6.ada: Likewise. - * ada/acats-4/tests/ca/ca11001.a: Likewise. - * ada/acats-4/tests/ca/ca11002.a: Likewise. - * ada/acats-4/tests/ca/ca11003.a: Likewise. - * ada/acats-4/tests/ca/ca110040.a: Likewise. - * ada/acats-4/tests/ca/ca110041.a: Likewise. - * ada/acats-4/tests/ca/ca110042.am: Likewise. - * ada/acats-4/tests/ca/ca110050.a: Likewise. - * ada/acats-4/tests/ca/ca110051.am: Likewise. - * ada/acats-4/tests/ca/ca11006.a: Likewise. - * ada/acats-4/tests/ca/ca11007.a: Likewise. - * ada/acats-4/tests/ca/ca11008.a: Likewise. - * ada/acats-4/tests/ca/ca11009.a: Likewise. - * ada/acats-4/tests/ca/ca11010.a: Likewise. - * ada/acats-4/tests/ca/ca11011.a: Likewise. - * ada/acats-4/tests/ca/ca11012.a: Likewise. - * ada/acats-4/tests/ca/ca11013.a: Likewise. - * ada/acats-4/tests/ca/ca11014.a: Likewise. - * ada/acats-4/tests/ca/ca11015.a: Likewise. - * ada/acats-4/tests/ca/ca11016.a: Likewise. - * ada/acats-4/tests/ca/ca11017.a: Likewise. - * ada/acats-4/tests/ca/ca11018.a: Likewise. - * ada/acats-4/tests/ca/ca11019.a: Likewise. - * ada/acats-4/tests/ca/ca11020.a: Likewise. - * ada/acats-4/tests/ca/ca11021.a: Likewise. - * ada/acats-4/tests/ca/ca11022.a: Likewise. - * ada/acats-4/tests/ca/ca110230.a: Likewise. - * ada/acats-4/tests/ca/ca110231.a: Likewise. - * ada/acats-4/tests/ca/ca110232.am: Likewise. - * ada/acats-4/tests/ca/ca1102a0.ada: Likewise. - * ada/acats-4/tests/ca/ca1102a1.ada: Likewise. - * ada/acats-4/tests/ca/ca1102a2.ada: Likewise. - * ada/acats-4/tests/ca/ca1106a.ada: Likewise. - * ada/acats-4/tests/ca/ca1108a.ada: Likewise. - * ada/acats-4/tests/ca/ca1108b.ada: Likewise. - * ada/acats-4/tests/ca/ca11a01.a: Likewise. - * ada/acats-4/tests/ca/ca11a02.a: Likewise. - * ada/acats-4/tests/ca/ca11b01.a: Likewise. - * ada/acats-4/tests/ca/ca11b02.a: Likewise. - * ada/acats-4/tests/ca/ca11c01.a: Likewise. - * ada/acats-4/tests/ca/ca11c02.a: Likewise. - * ada/acats-4/tests/ca/ca11c03.a: Likewise. - * ada/acats-4/tests/ca/ca11d010.a: Likewise. - * ada/acats-4/tests/ca/ca11d011.a: Likewise. - * ada/acats-4/tests/ca/ca11d012.a: Likewise. - * ada/acats-4/tests/ca/ca11d013.am: Likewise. - * ada/acats-4/tests/ca/ca11d02.a: Likewise. - * ada/acats-4/tests/ca/ca11d03.a: Likewise. - * ada/acats-4/tests/ca/ca120010.a: Likewise. - * ada/acats-4/tests/ca/ca120011.a: Likewise. - * ada/acats-4/tests/ca/ca120012.am: Likewise. - * ada/acats-4/tests/ca/ca12002.a: Likewise. - * ada/acats-4/tests/ca/ca13001.a: Likewise. - * ada/acats-4/tests/ca/ca13002.a: Likewise. - * ada/acats-4/tests/ca/ca13003.a: Likewise. - * ada/acats-4/tests/ca/ca13a01.a: Likewise. - * ada/acats-4/tests/ca/ca13a02.a: Likewise. - * ada/acats-4/tests/ca/ca140230.a: Likewise. - * ada/acats-4/tests/ca/ca140231.a: Likewise. - * ada/acats-4/tests/ca/ca140232.am: Likewise. - * ada/acats-4/tests/ca/ca140233.a: Likewise. - * ada/acats-4/tests/ca/ca140280.a: Likewise. - * ada/acats-4/tests/ca/ca140281.a: Likewise. - * ada/acats-4/tests/ca/ca140282.a: Likewise. - * ada/acats-4/tests/ca/ca140283.am: Likewise. - * ada/acats-4/tests/ca/ca15003.a: Likewise. - * ada/acats-4/tests/ca/ca200020.a: Likewise. - * ada/acats-4/tests/ca/ca200021.a: Likewise. - * ada/acats-4/tests/ca/ca200022.am: Likewise. - * ada/acats-4/tests/ca/ca200030.a: Likewise. - * ada/acats-4/tests/ca/ca200031.am: Likewise. - * ada/acats-4/tests/ca/ca2001h0.ada: Likewise. - * ada/acats-4/tests/ca/ca2001h1.ada: Likewise. - * ada/acats-4/tests/ca/ca2001h2.ada: Likewise. - * ada/acats-4/tests/ca/ca2001h3.ada: Likewise. - * ada/acats-4/tests/ca/ca2002a0.ada: Likewise. - * ada/acats-4/tests/ca/ca2002a1.ada: Likewise. - * ada/acats-4/tests/ca/ca2002a2.ada: Likewise. - * ada/acats-4/tests/ca/ca2003a0.ada: Likewise. - * ada/acats-4/tests/ca/ca2003a1.ada: Likewise. - * ada/acats-4/tests/ca/ca2004a0.ada: Likewise. - * ada/acats-4/tests/ca/ca2004a1.ada: Likewise. - * ada/acats-4/tests/ca/ca2004a2.ada: Likewise. - * ada/acats-4/tests/ca/ca2004a3.ada: Likewise. - * ada/acats-4/tests/ca/ca2004a4.ada: Likewise. - * ada/acats-4/tests/ca/ca2007a0.ada: Likewise. - * ada/acats-4/tests/ca/ca2007a1.ada: Likewise. - * ada/acats-4/tests/ca/ca2007a2.ada: Likewise. - * ada/acats-4/tests/ca/ca2007a3.ada: Likewise. - * ada/acats-4/tests/ca/ca2008a0.ada: Likewise. - * ada/acats-4/tests/ca/ca2008a1.ada: Likewise. - * ada/acats-4/tests/ca/ca2008a2.ada: Likewise. - * ada/acats-4/tests/ca/ca2009a.ada: Likewise. - * ada/acats-4/tests/ca/ca2009c0.ada: Likewise. - * ada/acats-4/tests/ca/ca2009c1.ada: Likewise. - * ada/acats-4/tests/ca/ca2009d.ada: Likewise. - * ada/acats-4/tests/ca/ca2009f0.ada: Likewise. - * ada/acats-4/tests/ca/ca2009f1.ada: Likewise. - * ada/acats-4/tests/ca/ca2009f2.ada: Likewise. - * ada/acats-4/tests/ca/ca2011b.ada: Likewise. - * ada/acats-4/tests/ca/ca21001.a: Likewise. - * ada/acats-4/tests/ca/ca21002.a: Likewise. - * ada/acats-4/tests/ca/ca3011a0.ada: Likewise. - * ada/acats-4/tests/ca/ca3011a1.ada: Likewise. - * ada/acats-4/tests/ca/ca3011a2.ada: Likewise. - * ada/acats-4/tests/ca/ca3011a3.ada: Likewise. - * ada/acats-4/tests/ca/ca3011a4.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a0.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a1.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a2.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a3.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a4.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a5.ada: Likewise. - * ada/acats-4/tests/ca/ca5003a6.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b0.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b1.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b2.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b3.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b4.ada: Likewise. - * ada/acats-4/tests/ca/ca5003b5.ada: Likewise. - * ada/acats-4/tests/ca/ca5004a.ada: Likewise. - * ada/acats-4/tests/ca/ca5004b0.ada: Likewise. - * ada/acats-4/tests/ca/ca5004b1.ada: Likewise. - * ada/acats-4/tests/ca/ca5004b2.ada: Likewise. - * ada/acats-4/tests/ca/ca5006a.ada: Likewise. - * ada/acats-4/tests/cb/cb10002.a: Likewise. - * ada/acats-4/tests/cb/cb1001a.ada: Likewise. - * ada/acats-4/tests/cb/cb1004a.ada: Likewise. - * ada/acats-4/tests/cb/cb1005a.ada: Likewise. - * ada/acats-4/tests/cb/cb1010a.ada: Likewise. - * ada/acats-4/tests/cb/cb1010c.ada: Likewise. - * ada/acats-4/tests/cb/cb1010d.ada: Likewise. - * ada/acats-4/tests/cb/cb20001.a: Likewise. - * ada/acats-4/tests/cb/cb20003.a: Likewise. - * ada/acats-4/tests/cb/cb20004.a: Likewise. - * ada/acats-4/tests/cb/cb20005.a: Likewise. - * ada/acats-4/tests/cb/cb20006.a: Likewise. - * ada/acats-4/tests/cb/cb20007.a: Likewise. - * ada/acats-4/tests/cb/cb2004a.ada: Likewise. - * ada/acats-4/tests/cb/cb2005a.ada: Likewise. - * ada/acats-4/tests/cb/cb2006a.ada: Likewise. - * ada/acats-4/tests/cb/cb2007a.ada: Likewise. - * ada/acats-4/tests/cb/cb20a02.a: Likewise. - * ada/acats-4/tests/cb/cb30001.a: Likewise. - * ada/acats-4/tests/cb/cb30002.a: Likewise. - * ada/acats-4/tests/cb/cb3003a.ada: Likewise. - * ada/acats-4/tests/cb/cb3003b.ada: Likewise. - * ada/acats-4/tests/cb/cb3004a.ada: Likewise. - * ada/acats-4/tests/cb/cb40005.a: Likewise. - * ada/acats-4/tests/cb/cb4001a.ada: Likewise. - * ada/acats-4/tests/cb/cb4002a.ada: Likewise. - * ada/acats-4/tests/cb/cb4003a.ada: Likewise. - * ada/acats-4/tests/cb/cb4004a.ada: Likewise. - * ada/acats-4/tests/cb/cb4005a.ada: Likewise. - * ada/acats-4/tests/cb/cb4006a.ada: Likewise. - * ada/acats-4/tests/cb/cb4007a.ada: Likewise. - * ada/acats-4/tests/cb/cb4008a.ada: Likewise. - * ada/acats-4/tests/cb/cb4009a.ada: Likewise. - * ada/acats-4/tests/cb/cb4013a.ada: Likewise. - * ada/acats-4/tests/cb/cb40a01.a: Likewise. - * ada/acats-4/tests/cb/cb40a020.a: Likewise. - * ada/acats-4/tests/cb/cb40a021.am: Likewise. - * ada/acats-4/tests/cb/cb40a030.a: Likewise. - * ada/acats-4/tests/cb/cb40a031.am: Likewise. - * ada/acats-4/tests/cb/cb40a04.a: Likewise. - * ada/acats-4/tests/cb/cb41001.a: Likewise. - * ada/acats-4/tests/cb/cb41002.a: Likewise. - * ada/acats-4/tests/cb/cb41003.a: Likewise. - * ada/acats-4/tests/cb/cb41004.a: Likewise. - * ada/acats-4/tests/cb/cb42001.a: Likewise. - * ada/acats-4/tests/cb/cb42002.a: Likewise. - * ada/acats-4/tests/cb/cb42003.a: Likewise. - * ada/acats-4/tests/cb/cb50001.a: Likewise. - * ada/acats-4/tests/cb/cb5001a.ada: Likewise. - * ada/acats-4/tests/cb/cb5001b.ada: Likewise. - * ada/acats-4/tests/cb/cb5002a.ada: Likewise. - * ada/acats-4/tests/cc/cc1004a.ada: Likewise. - * ada/acats-4/tests/cc/cc1005b.ada: Likewise. - * ada/acats-4/tests/cc/cc1010a.ada: Likewise. - * ada/acats-4/tests/cc/cc1010b.ada: Likewise. - * ada/acats-4/tests/cc/cc1018a.ada: Likewise. - * ada/acats-4/tests/cc/cc1104c.ada: Likewise. - * ada/acats-4/tests/cc/cc1107b.ada: Likewise. - * ada/acats-4/tests/cc/cc1111a.ada: Likewise. - * ada/acats-4/tests/cc/cc1204a.ada: Likewise. - * ada/acats-4/tests/cc/cc1207b.ada: Likewise. - * ada/acats-4/tests/cc/cc1220a.ada: Likewise. - * ada/acats-4/tests/cc/cc1221a.ada: Likewise. - * ada/acats-4/tests/cc/cc1221b.ada: Likewise. - * ada/acats-4/tests/cc/cc1221c.ada: Likewise. - * ada/acats-4/tests/cc/cc1221d.ada: Likewise. - * ada/acats-4/tests/cc/cc1222a.ada: Likewise. - * ada/acats-4/tests/cc/cc1223a.ada: Likewise. - * ada/acats-4/tests/cc/cc1224a.ada: Likewise. - * ada/acats-4/tests/cc/cc1225a.tst: Likewise. - * ada/acats-4/tests/cc/cc1226b.ada: Likewise. - * ada/acats-4/tests/cc/cc1227a.ada: Likewise. - * ada/acats-4/tests/cc/cc1301a.ada: Likewise. - * ada/acats-4/tests/cc/cc1302a.ada: Likewise. - * ada/acats-4/tests/cc/cc1304a.ada: Likewise. - * ada/acats-4/tests/cc/cc1304b.ada: Likewise. - * ada/acats-4/tests/cc/cc1307a.ada: Likewise. - * ada/acats-4/tests/cc/cc1307b.ada: Likewise. - * ada/acats-4/tests/cc/cc1308a.ada: Likewise. - * ada/acats-4/tests/cc/cc1310a.ada: Likewise. - * ada/acats-4/tests/cc/cc1311a.ada: Likewise. - * ada/acats-4/tests/cc/cc1311b.ada: Likewise. - * ada/acats-4/tests/cc/cc2002a.ada: Likewise. - * ada/acats-4/tests/cc/cc30001.a: Likewise. - * ada/acats-4/tests/cc/cc30002.a: Likewise. - * ada/acats-4/tests/cc/cc30003.a: Likewise. - * ada/acats-4/tests/cc/cc30004.a: Likewise. - * ada/acats-4/tests/cc/cc3004a.ada: Likewise. - * ada/acats-4/tests/cc/cc3007a.ada: Likewise. - * ada/acats-4/tests/cc/cc3007b.ada: Likewise. - * ada/acats-4/tests/cc/cc3011a.ada: Likewise. - * ada/acats-4/tests/cc/cc3011d.ada: Likewise. - * ada/acats-4/tests/cc/cc3012a.ada: Likewise. - * ada/acats-4/tests/cc/cc3015a.ada: Likewise. - * ada/acats-4/tests/cc/cc3016b.ada: Likewise. - * ada/acats-4/tests/cc/cc3016c.ada: Likewise. - * ada/acats-4/tests/cc/cc3016f.ada: Likewise. - * ada/acats-4/tests/cc/cc3016i.ada: Likewise. - * ada/acats-4/tests/cc/cc3017b.ada: Likewise. - * ada/acats-4/tests/cc/cc3019a.ada: Likewise. - * ada/acats-4/tests/cc/cc3019b0.ada: Likewise. - * ada/acats-4/tests/cc/cc3019b1.ada: Likewise. - * ada/acats-4/tests/cc/cc3019b2.ada: Likewise. - * ada/acats-4/tests/cc/cc3019c0.ada: Likewise. - * ada/acats-4/tests/cc/cc3019c1.ada: Likewise. - * ada/acats-4/tests/cc/cc3019c2.ada: Likewise. - * ada/acats-4/tests/cc/cc3106b.ada: Likewise. - * ada/acats-4/tests/cc/cc3120a.ada: Likewise. - * ada/acats-4/tests/cc/cc3120b.ada: Likewise. - * ada/acats-4/tests/cc/cc3121a.ada: Likewise. - * ada/acats-4/tests/cc/cc3123a.ada: Likewise. - * ada/acats-4/tests/cc/cc3125a.ada: Likewise. - * ada/acats-4/tests/cc/cc3125b.ada: Likewise. - * ada/acats-4/tests/cc/cc3125c.ada: Likewise. - * ada/acats-4/tests/cc/cc3125d.ada: Likewise. - * ada/acats-4/tests/cc/cc3126a.ada: Likewise. - * ada/acats-4/tests/cc/cc3127a.ada: Likewise. - * ada/acats-4/tests/cc/cc3128a.ada: Likewise. - * ada/acats-4/tests/cc/cc3203a.ada: Likewise. - * ada/acats-4/tests/cc/cc3207b.ada: Likewise. - * ada/acats-4/tests/cc/cc3220a.ada: Likewise. - * ada/acats-4/tests/cc/cc3221a.ada: Likewise. - * ada/acats-4/tests/cc/cc3222a.ada: Likewise. - * ada/acats-4/tests/cc/cc3223a.ada: Likewise. - * ada/acats-4/tests/cc/cc3224a.ada: Likewise. - * ada/acats-4/tests/cc/cc3225a.ada: Likewise. - * ada/acats-4/tests/cc/cc3230a.ada: Likewise. - * ada/acats-4/tests/cc/cc3231a.ada: Likewise. - * ada/acats-4/tests/cc/cc3232a.ada: Likewise. - * ada/acats-4/tests/cc/cc3233a.ada: Likewise. - * ada/acats-4/tests/cc/cc3234a.ada: Likewise. - * ada/acats-4/tests/cc/cc3235a.ada: Likewise. - * ada/acats-4/tests/cc/cc3236a.ada: Likewise. - * ada/acats-4/tests/cc/cc3240a.ada: Likewise. - * ada/acats-4/tests/cc/cc3305a.ada: Likewise. - * ada/acats-4/tests/cc/cc3305b.ada: Likewise. - * ada/acats-4/tests/cc/cc3305c.ada: Likewise. - * ada/acats-4/tests/cc/cc3305d.ada: Likewise. - * ada/acats-4/tests/cc/cc3601a.ada: Likewise. - * ada/acats-4/tests/cc/cc3601c.ada: Likewise. - * ada/acats-4/tests/cc/cc3602a.ada: Likewise. - * ada/acats-4/tests/cc/cc3603a.ada: Likewise. - * ada/acats-4/tests/cc/cc3605a.ada: Likewise. - * ada/acats-4/tests/cc/cc3606a.ada: Likewise. - * ada/acats-4/tests/cc/cc3606b.ada: Likewise. - * ada/acats-4/tests/cc/cc3607b.ada: Likewise. - * ada/acats-4/tests/cc/cc40001.a: Likewise. - * ada/acats-4/tests/cc/cc50001.a: Likewise. - * ada/acats-4/tests/cc/cc50a01.a: Likewise. - * ada/acats-4/tests/cc/cc50a02.a: Likewise. - * ada/acats-4/tests/cc/cc51001.a: Likewise. - * ada/acats-4/tests/cc/cc51002.a: Likewise. - * ada/acats-4/tests/cc/cc51003.a: Likewise. - * ada/acats-4/tests/cc/cc51004.a: Likewise. - * ada/acats-4/tests/cc/cc51006.a: Likewise. - * ada/acats-4/tests/cc/cc51007.a: Likewise. - * ada/acats-4/tests/cc/cc51008.a: Likewise. - * ada/acats-4/tests/cc/cc51009.a: Likewise. - * ada/acats-4/tests/cc/cc510100.a: Likewise. - * ada/acats-4/tests/cc/cc510101.a: Likewise. - * ada/acats-4/tests/cc/cc510102.a: Likewise. - * ada/acats-4/tests/cc/cc510103.am: Likewise. - * ada/acats-4/tests/cc/cc51011.a: Likewise. - * ada/acats-4/tests/cc/cc51a01.a: Likewise. - * ada/acats-4/tests/cc/cc51b03.a: Likewise. - * ada/acats-4/tests/cc/cc51d01.a: Likewise. - * ada/acats-4/tests/cc/cc51d02.a: Likewise. - * ada/acats-4/tests/cc/cc54001.a: Likewise. - * ada/acats-4/tests/cc/cc54002.a: Likewise. - * ada/acats-4/tests/cc/cc54003.a: Likewise. - * ada/acats-4/tests/cc/cc54004.a: Likewise. - * ada/acats-4/tests/cc/cc60001.a: Likewise. - * ada/acats-4/tests/cc/cc70001.a: Likewise. - * ada/acats-4/tests/cc/cc70002.a: Likewise. - * ada/acats-4/tests/cc/cc70003.a: Likewise. - * ada/acats-4/tests/cc/cc70a01.a: Likewise. - * ada/acats-4/tests/cc/cc70a02.a: Likewise. - * ada/acats-4/tests/cc/cc70b01.a: Likewise. - * ada/acats-4/tests/cc/cc70b02.a: Likewise. - * ada/acats-4/tests/cc/cc70c01.a: Likewise. - * ada/acats-4/tests/cc/cc70c02.a: Likewise. - * ada/acats-4/tests/cd/cd10001.a: Likewise. - * ada/acats-4/tests/cd/cd10002.a: Likewise. - * ada/acats-4/tests/cd/cd1009d.ada: Likewise. - * ada/acats-4/tests/cd/cd1009e.ada: Likewise. - * ada/acats-4/tests/cd/cd1009f.ada: Likewise. - * ada/acats-4/tests/cd/cd1009g.ada: Likewise. - * ada/acats-4/tests/cd/cd1009h.ada: Likewise. - * ada/acats-4/tests/cd/cd1009i.ada: Likewise. - * ada/acats-4/tests/cd/cd1009j.ada: Likewise. - * ada/acats-4/tests/cd/cd1009k.tst: Likewise. - * ada/acats-4/tests/cd/cd1009n.ada: Likewise. - * ada/acats-4/tests/cd/cd1009o.ada: Likewise. - * ada/acats-4/tests/cd/cd1009p.ada: Likewise. - * ada/acats-4/tests/cd/cd1009q.ada: Likewise. - * ada/acats-4/tests/cd/cd1009r.ada: Likewise. - * ada/acats-4/tests/cd/cd1009s.ada: Likewise. - * ada/acats-4/tests/cd/cd1009t.tst: Likewise. - * ada/acats-4/tests/cd/cd1009u.tst: Likewise. - * ada/acats-4/tests/cd/cd1009v.ada: Likewise. - * ada/acats-4/tests/cd/cd1009w.ada: Likewise. - * ada/acats-4/tests/cd/cd1009x.ada: Likewise. - * ada/acats-4/tests/cd/cd1009y.ada: Likewise. - * ada/acats-4/tests/cd/cd1009z.ada: Likewise. - * ada/acats-4/tests/cd/cd11001.a: Likewise. - * ada/acats-4/tests/cd/cd1c03a.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03b.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03c.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03e.tst: Likewise. - * ada/acats-4/tests/cd/cd1c03f.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03g.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03h.ada: Likewise. - * ada/acats-4/tests/cd/cd1c03i.ada: Likewise. - * ada/acats-4/tests/cd/cd1c04a.ada: Likewise. - * ada/acats-4/tests/cd/cd1c04d.ada: Likewise. - * ada/acats-4/tests/cd/cd1c04e.ada: Likewise. - * ada/acats-4/tests/cd/cd1c06a.tst: Likewise. - * ada/acats-4/tests/cd/cd20001.a: Likewise. - * ada/acats-4/tests/cd/cd2a21a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a21e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a22a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a22e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a22i.ada: Likewise. - * ada/acats-4/tests/cd/cd2a22j.ada: Likewise. - * ada/acats-4/tests/cd/cd2a23a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a23e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a24a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a24e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a24i.ada: Likewise. - * ada/acats-4/tests/cd/cd2a24j.ada: Likewise. - * ada/acats-4/tests/cd/cd2a31a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a31e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32c.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32g.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32i.ada: Likewise. - * ada/acats-4/tests/cd/cd2a32j.ada: Likewise. - * ada/acats-4/tests/cd/cd2a51a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a53a.ada: Likewise. - * ada/acats-4/tests/cd/cd2a53e.ada: Likewise. - * ada/acats-4/tests/cd/cd2a83c.tst: Likewise. - * ada/acats-4/tests/cd/cd2a91c.tst: Likewise. - * ada/acats-4/tests/cd/cd2b11b.ada: Likewise. - * ada/acats-4/tests/cd/cd2b11d.ada: Likewise. - * ada/acats-4/tests/cd/cd2b11e.ada: Likewise. - * ada/acats-4/tests/cd/cd2b11f.ada: Likewise. - * ada/acats-4/tests/cd/cd2b16a.ada: Likewise. - * ada/acats-4/tests/cd/cd2c11a.tst: Likewise. - * ada/acats-4/tests/cd/cd2c11d.tst: Likewise. - * ada/acats-4/tests/cd/cd2d11a.ada: Likewise. - * ada/acats-4/tests/cd/cd2d13a.ada: Likewise. - * ada/acats-4/tests/cd/cd30001.a: Likewise. - * ada/acats-4/tests/cd/cd30002.a: Likewise. - * ada/acats-4/tests/cd/cd30003.a: Likewise. - * ada/acats-4/tests/cd/cd30004.a: Likewise. - * ada/acats-4/tests/cd/cd300050.am: Likewise. - * ada/acats-4/tests/cd/cd300051.c: Likewise. - * ada/acats-4/tests/cd/cd30006.a: Likewise. - * ada/acats-4/tests/cd/cd30007.a: Likewise. - * ada/acats-4/tests/cd/cd30008.a: Likewise. - * ada/acats-4/tests/cd/cd30009.a: Likewise. - * ada/acats-4/tests/cd/cd30010.a: Likewise. - * ada/acats-4/tests/cd/cd30011.a: Likewise. - * ada/acats-4/tests/cd/cd30012.a: Likewise. - * ada/acats-4/tests/cd/cd30013.a: Likewise. - * ada/acats-4/tests/cd/cd30014.a: Likewise. - * ada/acats-4/tests/cd/cd3014a.ada: Likewise. - * ada/acats-4/tests/cd/cd3014c.ada: Likewise. - * ada/acats-4/tests/cd/cd3014d.ada: Likewise. - * ada/acats-4/tests/cd/cd3014f.ada: Likewise. - * ada/acats-4/tests/cd/cd3015a.ada: Likewise. - * ada/acats-4/tests/cd/cd3015c.ada: Likewise. - * ada/acats-4/tests/cd/cd3015e.ada: Likewise. - * ada/acats-4/tests/cd/cd3015f.ada: Likewise. - * ada/acats-4/tests/cd/cd3015g.ada: Likewise. - * ada/acats-4/tests/cd/cd3015h.ada: Likewise. - * ada/acats-4/tests/cd/cd3015i.ada: Likewise. - * ada/acats-4/tests/cd/cd3015k.ada: Likewise. - * ada/acats-4/tests/cd/cd3021a.ada: Likewise. - * ada/acats-4/tests/cd/cd40001.a: Likewise. - * ada/acats-4/tests/cd/cd4031a.ada: Likewise. - * ada/acats-4/tests/cd/cd4041a.tst: Likewise. - * ada/acats-4/tests/cd/cd4051a.ada: Likewise. - * ada/acats-4/tests/cd/cd4051b.ada: Likewise. - * ada/acats-4/tests/cd/cd4051c.ada: Likewise. - * ada/acats-4/tests/cd/cd4051d.ada: Likewise. - * ada/acats-4/tests/cd/cd5003a.ada: Likewise. - * ada/acats-4/tests/cd/cd5003b.ada: Likewise. - * ada/acats-4/tests/cd/cd5003c.ada: Likewise. - * ada/acats-4/tests/cd/cd5003d.ada: Likewise. - * ada/acats-4/tests/cd/cd5003e.ada: Likewise. - * ada/acats-4/tests/cd/cd5003f.ada: Likewise. - * ada/acats-4/tests/cd/cd5003g.ada: Likewise. - * ada/acats-4/tests/cd/cd5003h.ada: Likewise. - * ada/acats-4/tests/cd/cd5003i.ada: Likewise. - * ada/acats-4/tests/cd/cd5011a.ada: Likewise. - * ada/acats-4/tests/cd/cd5011c.ada: Likewise. - * ada/acats-4/tests/cd/cd5011e.ada: Likewise. - * ada/acats-4/tests/cd/cd5011g.ada: Likewise. - * ada/acats-4/tests/cd/cd5011i.ada: Likewise. - * ada/acats-4/tests/cd/cd5011k.ada: Likewise. - * ada/acats-4/tests/cd/cd5011m.ada: Likewise. - * ada/acats-4/tests/cd/cd5011q.ada: Likewise. - * ada/acats-4/tests/cd/cd5011s.ada: Likewise. - * ada/acats-4/tests/cd/cd5012a.ada: Likewise. - * ada/acats-4/tests/cd/cd5012b.ada: Likewise. - * ada/acats-4/tests/cd/cd5012e.ada: Likewise. - * ada/acats-4/tests/cd/cd5012f.ada: Likewise. - * ada/acats-4/tests/cd/cd5012i.ada: Likewise. - * ada/acats-4/tests/cd/cd5012m.ada: Likewise. - * ada/acats-4/tests/cd/cd5013a.ada: Likewise. - * ada/acats-4/tests/cd/cd5013c.ada: Likewise. - * ada/acats-4/tests/cd/cd5013e.ada: Likewise. - * ada/acats-4/tests/cd/cd5013g.ada: Likewise. - * ada/acats-4/tests/cd/cd5013i.ada: Likewise. - * ada/acats-4/tests/cd/cd5013k.ada: Likewise. - * ada/acats-4/tests/cd/cd5013m.ada: Likewise. - * ada/acats-4/tests/cd/cd5013o.ada: Likewise. - * ada/acats-4/tests/cd/cd5014a.ada: Likewise. - * ada/acats-4/tests/cd/cd5014c.ada: Likewise. - * ada/acats-4/tests/cd/cd5014e.ada: Likewise. - * ada/acats-4/tests/cd/cd5014g.ada: Likewise. - * ada/acats-4/tests/cd/cd5014i.ada: Likewise. - * ada/acats-4/tests/cd/cd5014k.ada: Likewise. - * ada/acats-4/tests/cd/cd5014m.ada: Likewise. - * ada/acats-4/tests/cd/cd5014o.ada: Likewise. - * ada/acats-4/tests/cd/cd5014t.ada: Likewise. - * ada/acats-4/tests/cd/cd5014v.ada: Likewise. - * ada/acats-4/tests/cd/cd5014x.ada: Likewise. - * ada/acats-4/tests/cd/cd5014y.ada: Likewise. - * ada/acats-4/tests/cd/cd5014z.ada: Likewise. - * ada/acats-4/tests/cd/cd70001.a: Likewise. - * ada/acats-4/tests/cd/cd7002a.ada: Likewise. - * ada/acats-4/tests/cd/cd7007b.ada: Likewise. - * ada/acats-4/tests/cd/cd7101d.ada: Likewise. - * ada/acats-4/tests/cd/cd7101e.dep: Likewise. - * ada/acats-4/tests/cd/cd7101f.dep: Likewise. - * ada/acats-4/tests/cd/cd7101g.tst: Likewise. - * ada/acats-4/tests/cd/cd7103d.ada: Likewise. - * ada/acats-4/tests/cd/cd7202a.ada: Likewise. - * ada/acats-4/tests/cd/cd7204b.ada: Likewise. - * ada/acats-4/tests/cd/cd7204c.ada: Likewise. - * ada/acats-4/tests/cd/cd72a01.a: Likewise. - * ada/acats-4/tests/cd/cd72a02.a: Likewise. - * ada/acats-4/tests/cd/cd7305a.ada: Likewise. - * ada/acats-4/tests/cd/cd90001.a: Likewise. - * ada/acats-4/tests/cd/cd92001.a: Likewise. - * ada/acats-4/tests/cd/cda201a.ada: Likewise. - * ada/acats-4/tests/cd/cda201b.ada: Likewise. - * ada/acats-4/tests/cd/cda201c.ada: Likewise. - * ada/acats-4/tests/cd/cda201e.ada: Likewise. - * ada/acats-4/tests/cd/cdb0001.a: Likewise. - * ada/acats-4/tests/cd/cdb0002.a: Likewise. - * ada/acats-4/tests/cd/cdb0a01.a: Likewise. - * ada/acats-4/tests/cd/cdb0a02.a: Likewise. - * ada/acats-4/tests/cd/cdb3a01.a: Likewise. - * ada/acats-4/tests/cd/cdb4001.a: Likewise. - * ada/acats-4/tests/cd/cdd1001.a: Likewise. - * ada/acats-4/tests/cd/cdd2001.a: Likewise. - * ada/acats-4/tests/cd/cdd2a01.a: Likewise. - * ada/acats-4/tests/cd/cdd2a02.a: Likewise. - * ada/acats-4/tests/cd/cdd2a03.a: Likewise. - * ada/acats-4/tests/cd/cdd2b01.a: Likewise. - * ada/acats-4/tests/cd/cdd2b02.a: Likewise. - * ada/acats-4/tests/cd/cdd2b03.a: Likewise. - * ada/acats-4/tests/cd/cdd2b04.a: Likewise. - * ada/acats-4/tests/cd/cde0001.a: Likewise. - * ada/acats-4/tests/cd/cde0002.a: Likewise. - * ada/acats-4/tests/cd/cde0003.a: Likewise. - * ada/acats-4/tests/ce/ce2102a.ada: Likewise. - * ada/acats-4/tests/ce/ce2102b.ada: Likewise. - * ada/acats-4/tests/ce/ce2102c.tst: Likewise. - * ada/acats-4/tests/ce/ce2102d.ada: Likewise. - * ada/acats-4/tests/ce/ce2102e.ada: Likewise. - * ada/acats-4/tests/ce/ce2102f.ada: Likewise. - * ada/acats-4/tests/ce/ce2102g.ada: Likewise. - * ada/acats-4/tests/ce/ce2102h.tst: Likewise. - * ada/acats-4/tests/ce/ce2102i.ada: Likewise. - * ada/acats-4/tests/ce/ce2102j.ada: Likewise. - * ada/acats-4/tests/ce/ce2102k.ada: Likewise. - * ada/acats-4/tests/ce/ce2102l.ada: Likewise. - * ada/acats-4/tests/ce/ce2102m.ada: Likewise. - * ada/acats-4/tests/ce/ce2102n.ada: Likewise. - * ada/acats-4/tests/ce/ce2102o.ada: Likewise. - * ada/acats-4/tests/ce/ce2102p.ada: Likewise. - * ada/acats-4/tests/ce/ce2102q.ada: Likewise. - * ada/acats-4/tests/ce/ce2102r.ada: Likewise. - * ada/acats-4/tests/ce/ce2102s.ada: Likewise. - * ada/acats-4/tests/ce/ce2102t.ada: Likewise. - * ada/acats-4/tests/ce/ce2102u.ada: Likewise. - * ada/acats-4/tests/ce/ce2102v.ada: Likewise. - * ada/acats-4/tests/ce/ce2102w.ada: Likewise. - * ada/acats-4/tests/ce/ce2102x.ada: Likewise. - * ada/acats-4/tests/ce/ce2102y.ada: Likewise. - * ada/acats-4/tests/ce/ce2103a.tst: Likewise. - * ada/acats-4/tests/ce/ce2103b.tst: Likewise. - * ada/acats-4/tests/ce/ce2103c.ada: Likewise. - * ada/acats-4/tests/ce/ce2103d.ada: Likewise. - * ada/acats-4/tests/ce/ce2104a.ada: Likewise. - * ada/acats-4/tests/ce/ce2104b.ada: Likewise. - * ada/acats-4/tests/ce/ce2104c.ada: Likewise. - * ada/acats-4/tests/ce/ce2104d.ada: Likewise. - * ada/acats-4/tests/ce/ce2106a.ada: Likewise. - * ada/acats-4/tests/ce/ce2106b.ada: Likewise. - * ada/acats-4/tests/ce/ce2108e.ada: Likewise. - * ada/acats-4/tests/ce/ce2108f.ada: Likewise. - * ada/acats-4/tests/ce/ce2108g.ada: Likewise. - * ada/acats-4/tests/ce/ce2108h.ada: Likewise. - * ada/acats-4/tests/ce/ce2109a.ada: Likewise. - * ada/acats-4/tests/ce/ce2109b.ada: Likewise. - * ada/acats-4/tests/ce/ce2109c.ada: Likewise. - * ada/acats-4/tests/ce/ce2110a.ada: Likewise. - * ada/acats-4/tests/ce/ce2110c.ada: Likewise. - * ada/acats-4/tests/ce/ce2111a.ada: Likewise. - * ada/acats-4/tests/ce/ce2111b.ada: Likewise. - * ada/acats-4/tests/ce/ce2111c.ada: Likewise. - * ada/acats-4/tests/ce/ce2111e.ada: Likewise. - * ada/acats-4/tests/ce/ce2111f.ada: Likewise. - * ada/acats-4/tests/ce/ce2111g.ada: Likewise. - * ada/acats-4/tests/ce/ce2111i.ada: Likewise. - * ada/acats-4/tests/ce/ce2201a.ada: Likewise. - * ada/acats-4/tests/ce/ce2201b.ada: Likewise. - * ada/acats-4/tests/ce/ce2201c.ada: Likewise. - * ada/acats-4/tests/ce/ce2201d.dep: Likewise. - * ada/acats-4/tests/ce/ce2201e.dep: Likewise. - * ada/acats-4/tests/ce/ce2201f.ada: Likewise. - * ada/acats-4/tests/ce/ce2201g.ada: Likewise. - * ada/acats-4/tests/ce/ce2201h.ada: Likewise. - * ada/acats-4/tests/ce/ce2201i.ada: Likewise. - * ada/acats-4/tests/ce/ce2201j.ada: Likewise. - * ada/acats-4/tests/ce/ce2201k.ada: Likewise. - * ada/acats-4/tests/ce/ce2201l.ada: Likewise. - * ada/acats-4/tests/ce/ce2201m.ada: Likewise. - * ada/acats-4/tests/ce/ce2201n.ada: Likewise. - * ada/acats-4/tests/ce/ce2202a.ada: Likewise. - * ada/acats-4/tests/ce/ce2203a.tst: Likewise. - * ada/acats-4/tests/ce/ce2204a.ada: Likewise. - * ada/acats-4/tests/ce/ce2204b.ada: Likewise. - * ada/acats-4/tests/ce/ce2204c.ada: Likewise. - * ada/acats-4/tests/ce/ce2204d.ada: Likewise. - * ada/acats-4/tests/ce/ce2205a.ada: Likewise. - * ada/acats-4/tests/ce/ce2206a.ada: Likewise. - * ada/acats-4/tests/ce/ce2208b.ada: Likewise. - * ada/acats-4/tests/ce/ce2401a.ada: Likewise. - * ada/acats-4/tests/ce/ce2401b.ada: Likewise. - * ada/acats-4/tests/ce/ce2401c.ada: Likewise. - * ada/acats-4/tests/ce/ce2401e.ada: Likewise. - * ada/acats-4/tests/ce/ce2401f.ada: Likewise. - * ada/acats-4/tests/ce/ce2401h.ada: Likewise. - * ada/acats-4/tests/ce/ce2401i.ada: Likewise. - * ada/acats-4/tests/ce/ce2401j.ada: Likewise. - * ada/acats-4/tests/ce/ce2401k.ada: Likewise. - * ada/acats-4/tests/ce/ce2401l.ada: Likewise. - * ada/acats-4/tests/ce/ce2402a.ada: Likewise. - * ada/acats-4/tests/ce/ce2403a.tst: Likewise. - * ada/acats-4/tests/ce/ce2404a.ada: Likewise. - * ada/acats-4/tests/ce/ce2404b.ada: Likewise. - * ada/acats-4/tests/ce/ce2405b.ada: Likewise. - * ada/acats-4/tests/ce/ce2406a.ada: Likewise. - * ada/acats-4/tests/ce/ce2407a.ada: Likewise. - * ada/acats-4/tests/ce/ce2407b.ada: Likewise. - * ada/acats-4/tests/ce/ce2408a.ada: Likewise. - * ada/acats-4/tests/ce/ce2408b.ada: Likewise. - * ada/acats-4/tests/ce/ce2409a.ada: Likewise. - * ada/acats-4/tests/ce/ce2409b.ada: Likewise. - * ada/acats-4/tests/ce/ce2410a.ada: Likewise. - * ada/acats-4/tests/ce/ce2410b.ada: Likewise. - * ada/acats-4/tests/ce/ce2411a.ada: Likewise. - * ada/acats-4/tests/ce/ce3002b.tst: Likewise. - * ada/acats-4/tests/ce/ce3002c.tst: Likewise. - * ada/acats-4/tests/ce/ce3002d.ada: Likewise. - * ada/acats-4/tests/ce/ce3002f.ada: Likewise. - * ada/acats-4/tests/ce/ce3102a.ada: Likewise. - * ada/acats-4/tests/ce/ce3102b.tst: Likewise. - * ada/acats-4/tests/ce/ce3102d.ada: Likewise. - * ada/acats-4/tests/ce/ce3102e.ada: Likewise. - * ada/acats-4/tests/ce/ce3102f.ada: Likewise. - * ada/acats-4/tests/ce/ce3102g.ada: Likewise. - * ada/acats-4/tests/ce/ce3102h.ada: Likewise. - * ada/acats-4/tests/ce/ce3102i.ada: Likewise. - * ada/acats-4/tests/ce/ce3102j.ada: Likewise. - * ada/acats-4/tests/ce/ce3102k.ada: Likewise. - * ada/acats-4/tests/ce/ce3103a.ada: Likewise. - * ada/acats-4/tests/ce/ce3104a.ada: Likewise. - * ada/acats-4/tests/ce/ce3104b.ada: Likewise. - * ada/acats-4/tests/ce/ce3104c.ada: Likewise. - * ada/acats-4/tests/ce/ce3106a.ada: Likewise. - * ada/acats-4/tests/ce/ce3106b.ada: Likewise. - * ada/acats-4/tests/ce/ce3107a.tst: Likewise. - * ada/acats-4/tests/ce/ce3107b.ada: Likewise. - * ada/acats-4/tests/ce/ce3108a.ada: Likewise. - * ada/acats-4/tests/ce/ce3108b.ada: Likewise. - * ada/acats-4/tests/ce/ce3110a.ada: Likewise. - * ada/acats-4/tests/ce/ce3112c.ada: Likewise. - * ada/acats-4/tests/ce/ce3112d.ada: Likewise. - * ada/acats-4/tests/ce/ce3114a.ada: Likewise. - * ada/acats-4/tests/ce/ce3115a.ada: Likewise. - * ada/acats-4/tests/ce/ce3201a.ada: Likewise. - * ada/acats-4/tests/ce/ce3202a.ada: Likewise. - * ada/acats-4/tests/ce/ce3206a.ada: Likewise. - * ada/acats-4/tests/ce/ce3207a.ada: Likewise. - * ada/acats-4/tests/ce/ce3301a.ada: Likewise. - * ada/acats-4/tests/ce/ce3302a.ada: Likewise. - * ada/acats-4/tests/ce/ce3303a.ada: Likewise. - * ada/acats-4/tests/ce/ce3304a.tst: Likewise. - * ada/acats-4/tests/ce/ce3305a.ada: Likewise. - * ada/acats-4/tests/ce/ce3306a.ada: Likewise. - * ada/acats-4/tests/ce/ce3401a.ada: Likewise. - * ada/acats-4/tests/ce/ce3402a.ada: Likewise. - * ada/acats-4/tests/ce/ce3402c.ada: Likewise. - * ada/acats-4/tests/ce/ce3402d.ada: Likewise. - * ada/acats-4/tests/ce/ce3402e.ada: Likewise. - * ada/acats-4/tests/ce/ce3403a.ada: Likewise. - * ada/acats-4/tests/ce/ce3403b.ada: Likewise. - * ada/acats-4/tests/ce/ce3403c.ada: Likewise. - * ada/acats-4/tests/ce/ce3403d.ada: Likewise. - * ada/acats-4/tests/ce/ce3403e.ada: Likewise. - * ada/acats-4/tests/ce/ce3403f.ada: Likewise. - * ada/acats-4/tests/ce/ce3404a.ada: Likewise. - * ada/acats-4/tests/ce/ce3404b.ada: Likewise. - * ada/acats-4/tests/ce/ce3404c.ada: Likewise. - * ada/acats-4/tests/ce/ce3404d.ada: Likewise. - * ada/acats-4/tests/ce/ce3405a.ada: Likewise. - * ada/acats-4/tests/ce/ce3405c.ada: Likewise. - * ada/acats-4/tests/ce/ce3405d.ada: Likewise. - * ada/acats-4/tests/ce/ce3406a.ada: Likewise. - * ada/acats-4/tests/ce/ce3406b.ada: Likewise. - * ada/acats-4/tests/ce/ce3406c.ada: Likewise. - * ada/acats-4/tests/ce/ce3406d.ada: Likewise. - * ada/acats-4/tests/ce/ce3407a.ada: Likewise. - * ada/acats-4/tests/ce/ce3407b.ada: Likewise. - * ada/acats-4/tests/ce/ce3407c.ada: Likewise. - * ada/acats-4/tests/ce/ce3408a.ada: Likewise. - * ada/acats-4/tests/ce/ce3408b.ada: Likewise. - * ada/acats-4/tests/ce/ce3408c.ada: Likewise. - * ada/acats-4/tests/ce/ce3409a.ada: Likewise. - * ada/acats-4/tests/ce/ce3409b.ada: Likewise. - * ada/acats-4/tests/ce/ce3409c.ada: Likewise. - * ada/acats-4/tests/ce/ce3409d.ada: Likewise. - * ada/acats-4/tests/ce/ce3409e.ada: Likewise. - * ada/acats-4/tests/ce/ce3410a.ada: Likewise. - * ada/acats-4/tests/ce/ce3410b.ada: Likewise. - * ada/acats-4/tests/ce/ce3410c.ada: Likewise. - * ada/acats-4/tests/ce/ce3410d.ada: Likewise. - * ada/acats-4/tests/ce/ce3410e.ada: Likewise. - * ada/acats-4/tests/ce/ce3411a.ada: Likewise. - * ada/acats-4/tests/ce/ce3411c.ada: Likewise. - * ada/acats-4/tests/ce/ce3412a.ada: Likewise. - * ada/acats-4/tests/ce/ce3413a.ada: Likewise. - * ada/acats-4/tests/ce/ce3413b.ada: Likewise. - * ada/acats-4/tests/ce/ce3413c.ada: Likewise. - * ada/acats-4/tests/ce/ce3414a.ada: Likewise. - * ada/acats-4/tests/ce/ce3601a.ada: Likewise. - * ada/acats-4/tests/ce/ce3602a.ada: Likewise. - * ada/acats-4/tests/ce/ce3602b.ada: Likewise. - * ada/acats-4/tests/ce/ce3602c.ada: Likewise. - * ada/acats-4/tests/ce/ce3602d.ada: Likewise. - * ada/acats-4/tests/ce/ce3603a.ada: Likewise. - * ada/acats-4/tests/ce/ce3604a.ada: Likewise. - * ada/acats-4/tests/ce/ce3604b.ada: Likewise. - * ada/acats-4/tests/ce/ce3605a.ada: Likewise. - * ada/acats-4/tests/ce/ce3605b.ada: Likewise. - * ada/acats-4/tests/ce/ce3605c.ada: Likewise. - * ada/acats-4/tests/ce/ce3605d.ada: Likewise. - * ada/acats-4/tests/ce/ce3605e.ada: Likewise. - * ada/acats-4/tests/ce/ce3606a.ada: Likewise. - * ada/acats-4/tests/ce/ce3606b.ada: Likewise. - * ada/acats-4/tests/ce/ce3701a.ada: Likewise. - * ada/acats-4/tests/ce/ce3704a.ada: Likewise. - * ada/acats-4/tests/ce/ce3704b.ada: Likewise. - * ada/acats-4/tests/ce/ce3704c.ada: Likewise. - * ada/acats-4/tests/ce/ce3704d.ada: Likewise. - * ada/acats-4/tests/ce/ce3704e.ada: Likewise. - * ada/acats-4/tests/ce/ce3704f.ada: Likewise. - * ada/acats-4/tests/ce/ce3704m.ada: Likewise. - * ada/acats-4/tests/ce/ce3704n.ada: Likewise. - * ada/acats-4/tests/ce/ce3704o.ada: Likewise. - * ada/acats-4/tests/ce/ce3705a.ada: Likewise. - * ada/acats-4/tests/ce/ce3705b.ada: Likewise. - * ada/acats-4/tests/ce/ce3705c.ada: Likewise. - * ada/acats-4/tests/ce/ce3705d.ada: Likewise. - * ada/acats-4/tests/ce/ce3705e.ada: Likewise. - * ada/acats-4/tests/ce/ce3706c.ada: Likewise. - * ada/acats-4/tests/ce/ce3706d.ada: Likewise. - * ada/acats-4/tests/ce/ce3706f.ada: Likewise. - * ada/acats-4/tests/ce/ce3706g.ada: Likewise. - * ada/acats-4/tests/ce/ce3707a.ada: Likewise. - * ada/acats-4/tests/ce/ce3708a.ada: Likewise. - * ada/acats-4/tests/ce/ce3801a.ada: Likewise. - * ada/acats-4/tests/ce/ce3801b.ada: Likewise. - * ada/acats-4/tests/ce/ce3804a.ada: Likewise. - * ada/acats-4/tests/ce/ce3804b.ada: Likewise. - * ada/acats-4/tests/ce/ce3804c.ada: Likewise. - * ada/acats-4/tests/ce/ce3804d.ada: Likewise. - * ada/acats-4/tests/ce/ce3804e.ada: Likewise. - * ada/acats-4/tests/ce/ce3804f.ada: Likewise. - * ada/acats-4/tests/ce/ce3804g.ada: Likewise. - * ada/acats-4/tests/ce/ce3804h.ada: Likewise. - * ada/acats-4/tests/ce/ce3804i.ada: Likewise. - * ada/acats-4/tests/ce/ce3804j.ada: Likewise. - * ada/acats-4/tests/ce/ce3804m.ada: Likewise. - * ada/acats-4/tests/ce/ce3804o.ada: Likewise. - * ada/acats-4/tests/ce/ce3804p.ada: Likewise. - * ada/acats-4/tests/ce/ce3805a.ada: Likewise. - * ada/acats-4/tests/ce/ce3805b.ada: Likewise. - * ada/acats-4/tests/ce/ce3806a.ada: Likewise. - * ada/acats-4/tests/ce/ce3806b.ada: Likewise. - * ada/acats-4/tests/ce/ce3806c.ada: Likewise. - * ada/acats-4/tests/ce/ce3806d.ada: Likewise. - * ada/acats-4/tests/ce/ce3806e.ada: Likewise. - * ada/acats-4/tests/ce/ce3806f.ada: Likewise. - * ada/acats-4/tests/ce/ce3806g.ada: Likewise. - * ada/acats-4/tests/ce/ce3806h.ada: Likewise. - * ada/acats-4/tests/ce/ce3809a.ada: Likewise. - * ada/acats-4/tests/ce/ce3809b.ada: Likewise. - * ada/acats-4/tests/ce/ce3810a.ada: Likewise. - * ada/acats-4/tests/ce/ce3810b.ada: Likewise. - * ada/acats-4/tests/ce/ce3815a.ada: Likewise. - * ada/acats-4/tests/ce/ce3901a.ada: Likewise. - * ada/acats-4/tests/ce/ce3902b.ada: Likewise. - * ada/acats-4/tests/ce/ce3904a.ada: Likewise. - * ada/acats-4/tests/ce/ce3904b.ada: Likewise. - * ada/acats-4/tests/ce/ce3905a.ada: Likewise. - * ada/acats-4/tests/ce/ce3905b.ada: Likewise. - * ada/acats-4/tests/ce/ce3905c.ada: Likewise. - * ada/acats-4/tests/ce/ce3905l.ada: Likewise. - * ada/acats-4/tests/ce/ce3906a.ada: Likewise. - * ada/acats-4/tests/ce/ce3906b.ada: Likewise. - * ada/acats-4/tests/ce/ce3906c.ada: Likewise. - * ada/acats-4/tests/ce/ce3906d.ada: Likewise. - * ada/acats-4/tests/ce/ce3906e.ada: Likewise. - * ada/acats-4/tests/ce/ce3906f.ada: Likewise. - * ada/acats-4/tests/ce/ce3907a.ada: Likewise. - * ada/acats-4/tests/ce/ce3908a.ada: Likewise. - * ada/acats-4/tests/cxa/cxa3001.a: Likewise. - * ada/acats-4/tests/cxa/cxa3002.a: Likewise. - * ada/acats-4/tests/cxa/cxa3003.a: Likewise. - * ada/acats-4/tests/cxa/cxa3004.a: Likewise. - * ada/acats-4/tests/cxa/cxa3005.a: Likewise. - * ada/acats-4/tests/cxa/cxa3006.a: Likewise. - * ada/acats-4/tests/cxa/cxa3007.a: Likewise. - * ada/acats-4/tests/cxa/cxa3008.a: Likewise. - * ada/acats-4/tests/cxa/cxa4001.a: Likewise. - * ada/acats-4/tests/cxa/cxa4002.a: Likewise. - * ada/acats-4/tests/cxa/cxa4003.a: Likewise. - * ada/acats-4/tests/cxa/cxa4004.a: Likewise. - * ada/acats-4/tests/cxa/cxa4005.a: Likewise. - * ada/acats-4/tests/cxa/cxa4006.a: Likewise. - * ada/acats-4/tests/cxa/cxa4007.a: Likewise. - * ada/acats-4/tests/cxa/cxa4008.a: Likewise. - * ada/acats-4/tests/cxa/cxa4009.a: Likewise. - * ada/acats-4/tests/cxa/cxa4010.a: Likewise. - * ada/acats-4/tests/cxa/cxa4011.a: Likewise. - * ada/acats-4/tests/cxa/cxa4012.a: Likewise. - * ada/acats-4/tests/cxa/cxa4013.a: Likewise. - * ada/acats-4/tests/cxa/cxa4014.a: Likewise. - * ada/acats-4/tests/cxa/cxa4015.a: Likewise. - * ada/acats-4/tests/cxa/cxa4016.a: Likewise. - * ada/acats-4/tests/cxa/cxa4017.a: Likewise. - * ada/acats-4/tests/cxa/cxa4018.a: Likewise. - * ada/acats-4/tests/cxa/cxa4019.a: Likewise. - * ada/acats-4/tests/cxa/cxa4020.a: Likewise. - * ada/acats-4/tests/cxa/cxa4021.a: Likewise. - * ada/acats-4/tests/cxa/cxa4022.a: Likewise. - * ada/acats-4/tests/cxa/cxa4023.a: Likewise. - * ada/acats-4/tests/cxa/cxa4024.a: Likewise. - * ada/acats-4/tests/cxa/cxa4025.a: Likewise. - * ada/acats-4/tests/cxa/cxa4026.a: Likewise. - * ada/acats-4/tests/cxa/cxa4027.a: Likewise. - * ada/acats-4/tests/cxa/cxa4028.a: Likewise. - * ada/acats-4/tests/cxa/cxa4029.a: Likewise. - * ada/acats-4/tests/cxa/cxa4030.a: Likewise. - * ada/acats-4/tests/cxa/cxa4031.a: Likewise. - * ada/acats-4/tests/cxa/cxa4032.a: Likewise. - * ada/acats-4/tests/cxa/cxa4033.a: Likewise. - * ada/acats-4/tests/cxa/cxa4035.a: Likewise. - * ada/acats-4/tests/cxa/cxa4036.a: Likewise. - * ada/acats-4/tests/cxa/cxa4037.a: Likewise. - * ada/acats-4/tests/cxa/cxa4038.a: Likewise. - * ada/acats-4/tests/cxa/cxa4039.a: Likewise. - * ada/acats-4/tests/cxa/cxa5011.a: Likewise. - * ada/acats-4/tests/cxa/cxa5012.a: Likewise. - * ada/acats-4/tests/cxa/cxa5013.a: Likewise. - * ada/acats-4/tests/cxa/cxa5015.a: Likewise. - * ada/acats-4/tests/cxa/cxa5016.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a01.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a02.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a03.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a04.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a05.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a06.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a07.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a08.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a09.a: Likewise. - * ada/acats-4/tests/cxa/cxa5a10.a: Likewise. - * ada/acats-4/tests/cxa/cxa8001.a: Likewise. - * ada/acats-4/tests/cxa/cxa8002.a: Likewise. - * ada/acats-4/tests/cxa/cxa8003.a: Likewise. - * ada/acats-4/tests/cxa/cxa9001.a: Likewise. - * ada/acats-4/tests/cxa/cxa9002.a: Likewise. - * ada/acats-4/tests/cxa/cxaa001.a: Likewise. - * ada/acats-4/tests/cxa/cxaa002.a: Likewise. - * ada/acats-4/tests/cxa/cxaa003.a: Likewise. - * ada/acats-4/tests/cxa/cxaa004.a: Likewise. - * ada/acats-4/tests/cxa/cxaa005.a: Likewise. - * ada/acats-4/tests/cxa/cxaa006.a: Likewise. - * ada/acats-4/tests/cxa/cxaa007.a: Likewise. - * ada/acats-4/tests/cxa/cxaa008.a: Likewise. - * ada/acats-4/tests/cxa/cxaa009.a: Likewise. - * ada/acats-4/tests/cxa/cxaa010.a: Likewise. - * ada/acats-4/tests/cxa/cxaa011.a: Likewise. - * ada/acats-4/tests/cxa/cxaa012.a: Likewise. - * ada/acats-4/tests/cxa/cxaa013.a: Likewise. - * ada/acats-4/tests/cxa/cxaa014.a: Likewise. - * ada/acats-4/tests/cxa/cxaa015.a: Likewise. - * ada/acats-4/tests/cxa/cxaa016.a: Likewise. - * ada/acats-4/tests/cxa/cxaa017.a: Likewise. - * ada/acats-4/tests/cxa/cxaa018.a: Likewise. - * ada/acats-4/tests/cxa/cxaa019.a: Likewise. - * ada/acats-4/tests/cxa/cxaa020.a: Likewise. - * ada/acats-4/tests/cxa/cxaa021.a: Likewise. - * ada/acats-4/tests/cxa/cxaa022.a: Likewise. - * ada/acats-4/tests/cxa/cxab001.a: Likewise. - * ada/acats-4/tests/cxa/cxab002.au: Likewise. - * ada/acats-4/tests/cxa/cxab003.au: Likewise. - * ada/acats-4/tests/cxa/cxab004.au: Likewise. - * ada/acats-4/tests/cxa/cxab005.au: Likewise. - * ada/acats-4/tests/cxa/cxac001.a: Likewise. - * ada/acats-4/tests/cxa/cxac002.a: Likewise. - * ada/acats-4/tests/cxa/cxac003.a: Likewise. - * ada/acats-4/tests/cxa/cxac004.a: Likewise. - * ada/acats-4/tests/cxa/cxac005.a: Likewise. - * ada/acats-4/tests/cxa/cxac006.a: Likewise. - * ada/acats-4/tests/cxa/cxac007.a: Likewise. - * ada/acats-4/tests/cxa/cxac008.a: Likewise. - * ada/acats-4/tests/cxa/cxac009.a: Likewise. - * ada/acats-4/tests/cxa/cxaca01.a: Likewise. - * ada/acats-4/tests/cxa/cxaca02.a: Likewise. - * ada/acats-4/tests/cxa/cxacb01.a: Likewise. - * ada/acats-4/tests/cxa/cxacb02.a: Likewise. - * ada/acats-4/tests/cxa/cxacc01.a: Likewise. - * ada/acats-4/tests/cxa/cxaf001.a: Likewise. - * ada/acats-4/tests/cxa/cxag001.a: Likewise. - * ada/acats-4/tests/cxa/cxag002.a: Likewise. - * ada/acats-4/tests/cxa/cxag003.a: Likewise. - * ada/acats-4/tests/cxa/cxah001.a: Likewise. - * ada/acats-4/tests/cxa/cxah002.a: Likewise. - * ada/acats-4/tests/cxa/cxah003.a: Likewise. - * ada/acats-4/tests/cxa/cxai001.a: Likewise. - * ada/acats-4/tests/cxa/cxai002.a: Likewise. - * ada/acats-4/tests/cxa/cxai003.a: Likewise. - * ada/acats-4/tests/cxa/cxai004.a: Likewise. - * ada/acats-4/tests/cxa/cxai005.a: Likewise. - * ada/acats-4/tests/cxa/cxai006.a: Likewise. - * ada/acats-4/tests/cxa/cxai007.a: Likewise. - * ada/acats-4/tests/cxa/cxai008.a: Likewise. - * ada/acats-4/tests/cxa/cxai009.a: Likewise. - * ada/acats-4/tests/cxa/cxai010.a: Likewise. - * ada/acats-4/tests/cxa/cxai011.a: Likewise. - * ada/acats-4/tests/cxa/cxai012.a: Likewise. - * ada/acats-4/tests/cxa/cxai013.a: Likewise. - * ada/acats-4/tests/cxa/cxai014.a: Likewise. - * ada/acats-4/tests/cxa/cxai015.a: Likewise. - * ada/acats-4/tests/cxa/cxai016.a: Likewise. - * ada/acats-4/tests/cxa/cxai017.a: Likewise. - * ada/acats-4/tests/cxa/cxai018.a: Likewise. - * ada/acats-4/tests/cxa/cxai019.a: Likewise. - * ada/acats-4/tests/cxa/cxai020.a: Likewise. - * ada/acats-4/tests/cxa/cxai021.a: Likewise. - * ada/acats-4/tests/cxa/cxai022.a: Likewise. - * ada/acats-4/tests/cxa/cxai023.a: Likewise. - * ada/acats-4/tests/cxa/cxai024.a: Likewise. - * ada/acats-4/tests/cxa/cxai025.a: Likewise. - * ada/acats-4/tests/cxa/cxai026.a: Likewise. - * ada/acats-4/tests/cxa/cxai027.a: Likewise. - * ada/acats-4/tests/cxa/cxai028.a: Likewise. - * ada/acats-4/tests/cxa/cxai029.a: Likewise. - * ada/acats-4/tests/cxa/cxai030.a: Likewise. - * ada/acats-4/tests/cxa/cxai031.a: Likewise. - * ada/acats-4/tests/cxa/cxai032.a: Likewise. - * ada/acats-4/tests/cxa/cxai033.a: Likewise. - * ada/acats-4/tests/cxa/cxai034.a: Likewise. - * ada/acats-4/tests/cxa/cxai035.a: Likewise. - * ada/acats-4/tests/cxa/cxai036.a: Likewise. - * ada/acats-4/tests/cxa/cxaia01.a: Likewise. - * ada/acats-4/tests/cxa/cxaia02.a: Likewise. - * ada/acats-4/tests/cxa/cxaia03.a: Likewise. - * ada/acats-4/tests/cxa/cxaia04.a: Likewise. - * ada/acats-4/tests/cxa/cxaia05.a: Likewise. - * ada/acats-4/tests/cxa/cxaia06.a: Likewise. - * ada/acats-4/tests/cxa/cxaia07.a: Likewise. - * ada/acats-4/tests/cxa/cxaia08.a: Likewise. - * ada/acats-4/tests/cxa/cxaia09.a: Likewise. - * ada/acats-4/tests/cxa/cxaia10.a: Likewise. - * ada/acats-4/tests/cxa/cxaia11.a: Likewise. - * ada/acats-4/tests/cxa/cxaia12.a: Likewise. - * ada/acats-4/tests/cxa/cxaia13.a: Likewise. - * ada/acats-4/tests/cxa/cxaia14.a: Likewise. - * ada/acats-4/tests/cxa/cxaib01.a: Likewise. - * ada/acats-4/tests/cxa/cxaib02.a: Likewise. - * ada/acats-4/tests/cxa/cxaib03.a: Likewise. - * ada/acats-4/tests/cxa/cxaib04.a: Likewise. - * ada/acats-4/tests/cxa/cxaib05.a: Likewise. - * ada/acats-4/tests/cxa/cxaib06.a: Likewise. - * ada/acats-4/tests/cxa/cxaib07.a: Likewise. - * ada/acats-4/tests/cxa/cxaib08.a: Likewise. - * ada/acats-4/tests/cxa/cxaj001.a: Likewise. - * ada/acats-4/tests/cxb/cxb2001.a: Likewise. - * ada/acats-4/tests/cxb/cxb2002.a: Likewise. - * ada/acats-4/tests/cxb/cxb2003.a: Likewise. - * ada/acats-4/tests/cxb/cxb3001.a: Likewise. - * ada/acats-4/tests/cxb/cxb3002.a: Likewise. - * ada/acats-4/tests/cxb/cxb3003.a: Likewise. - * ada/acats-4/tests/cxb/cxb30040.c: Likewise. - * ada/acats-4/tests/cxb/cxb30041.am: Likewise. - * ada/acats-4/tests/cxb/cxb3005.a: Likewise. - * ada/acats-4/tests/cxb/cxb30060.c: Likewise. - * ada/acats-4/tests/cxb/cxb30061.am: Likewise. - * ada/acats-4/tests/cxb/cxb3007.a: Likewise. - * ada/acats-4/tests/cxb/cxb3008.a: Likewise. - * ada/acats-4/tests/cxb/cxb3009.a: Likewise. - * ada/acats-4/tests/cxb/cxb3010.a: Likewise. - * ada/acats-4/tests/cxb/cxb3011.a: Likewise. - * ada/acats-4/tests/cxb/cxb3012.a: Likewise. - * ada/acats-4/tests/cxb/cxb30130.c: Likewise. - * ada/acats-4/tests/cxb/cxb30131.c: Likewise. - * ada/acats-4/tests/cxb/cxb30132.am: Likewise. - * ada/acats-4/tests/cxb/cxb3014.a: Likewise. - * ada/acats-4/tests/cxb/cxb3015.a: Likewise. - * ada/acats-4/tests/cxb/cxb3016.a: Likewise. - * ada/acats-4/tests/cxb/cxb30170.c: Likewise. - * ada/acats-4/tests/cxb/cxb30171.a: Likewise. - * ada/acats-4/tests/cxb/cxb30172.am: Likewise. - * ada/acats-4/tests/cxb/cxb30180.c: Likewise. - * ada/acats-4/tests/cxb/cxb30181.a: Likewise. - * ada/acats-4/tests/cxb/cxb30182.am: Likewise. - * ada/acats-4/tests/cxb/cxb3019.a: Likewise. - * ada/acats-4/tests/cxb/cxb3020.a: Likewise. - * ada/acats-4/tests/cxb/cxb3021.a: Likewise. - * ada/acats-4/tests/cxb/cxb3022.a: Likewise. - * ada/acats-4/tests/cxb/cxb30230.c: Likewise. - * ada/acats-4/tests/cxb/cxb30231.am: Likewise. - * ada/acats-4/tests/cxb/cxb30240.c: Likewise. - * ada/acats-4/tests/cxb/cxb30241.am: Likewise. - * ada/acats-4/tests/cxb/cxb4001.a: Likewise. - * ada/acats-4/tests/cxb/cxb4002.a: Likewise. - * ada/acats-4/tests/cxb/cxb4003.a: Likewise. - * ada/acats-4/tests/cxb/cxb4004.a: Likewise. - * ada/acats-4/tests/cxb/cxb4005.a: Likewise. - * ada/acats-4/tests/cxb/cxb4006.a: Likewise. - * ada/acats-4/tests/cxb/cxb4007.a: Likewise. - * ada/acats-4/tests/cxb/cxb4008.a: Likewise. - * ada/acats-4/tests/cxb/cxb5001.a: Likewise. - * ada/acats-4/tests/cxb/cxb5002.a: Likewise. - * ada/acats-4/tests/cxb/cxb5003.a: Likewise. - * ada/acats-4/tests/cxf/cxf1001.a: Likewise. - * ada/acats-4/tests/cxf/cxf2001.a: Likewise. - * ada/acats-4/tests/cxf/cxf2002.a: Likewise. - * ada/acats-4/tests/cxf/cxf2003.a: Likewise. - * ada/acats-4/tests/cxf/cxf2004.a: Likewise. - * ada/acats-4/tests/cxf/cxf2005.a: Likewise. - * ada/acats-4/tests/cxf/cxf2a01.a: Likewise. - * ada/acats-4/tests/cxf/cxf2a02.a: Likewise. - * ada/acats-4/tests/cxf/cxf3001.a: Likewise. - * ada/acats-4/tests/cxf/cxf3002.a: Likewise. - * ada/acats-4/tests/cxf/cxf3003.a: Likewise. - * ada/acats-4/tests/cxf/cxf3004.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a01.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a02.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a03.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a04.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a05.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a06.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a07.a: Likewise. - * ada/acats-4/tests/cxf/cxf3a08.a: Likewise. - * ada/acats-4/tests/cxg/cxg1001.a: Likewise. - * ada/acats-4/tests/cxg/cxg1002.a: Likewise. - * ada/acats-4/tests/cxg/cxg1003.a: Likewise. - * ada/acats-4/tests/cxg/cxg1004.a: Likewise. - * ada/acats-4/tests/cxg/cxg1005.a: Likewise. - * ada/acats-4/tests/cxg/cxg2001.a: Likewise. - * ada/acats-4/tests/cxg/cxg2002.a: Likewise. - * ada/acats-4/tests/cxg/cxg2003.a: Likewise. - * ada/acats-4/tests/cxg/cxg2004.a: Likewise. - * ada/acats-4/tests/cxg/cxg2005.a: Likewise. - * ada/acats-4/tests/cxg/cxg2006.a: Likewise. - * ada/acats-4/tests/cxg/cxg2007.a: Likewise. - * ada/acats-4/tests/cxg/cxg2008.a: Likewise. - * ada/acats-4/tests/cxg/cxg2009.a: Likewise. - * ada/acats-4/tests/cxg/cxg2010.a: Likewise. - * ada/acats-4/tests/cxg/cxg2011.a: Likewise. - * ada/acats-4/tests/cxg/cxg2012.a: Likewise. - * ada/acats-4/tests/cxg/cxg2013.a: Likewise. - * ada/acats-4/tests/cxg/cxg2014.a: Likewise. - * ada/acats-4/tests/cxg/cxg2015.a: Likewise. - * ada/acats-4/tests/cxg/cxg2016.a: Likewise. - * ada/acats-4/tests/cxg/cxg2017.a: Likewise. - * ada/acats-4/tests/cxg/cxg2018.a: Likewise. - * ada/acats-4/tests/cxg/cxg2019.a: Likewise. - * ada/acats-4/tests/cxg/cxg2020.a: Likewise. - * ada/acats-4/tests/cxg/cxg2021.a: Likewise. - * ada/acats-4/tests/cxg/cxg2022.a: Likewise. - * ada/acats-4/tests/cxg/cxg2023.a: Likewise. - * ada/acats-4/tests/cxg/cxg2024.a: Likewise. - * ada/acats-4/tests/cxh/cxh3001.a: Likewise. - * ada/acats-4/tests/cxh/cxh3002.a: Likewise. - * ada/acats-4/tests/cxh/cxh30030.a: Likewise. - * ada/acats-4/tests/cxh/cxh30031.am: Likewise. - * ada/acats-4/tests/cz/cz1101a.ada: Likewise. - * ada/acats-4/tests/cz/cz1102a.ada: Likewise. - * ada/acats-4/tests/cz/cz1103a.ada: Likewise. - * ada/acats-4/tests/d/d4a002a.ada: Likewise. - * ada/acats-4/tests/d/d4a002b.ada: Likewise. - * ada/acats-4/tests/d/d4a004a.ada: Likewise. - * ada/acats-4/tests/d/d4a004b.ada: Likewise. - * ada/acats-4/tests/e/e28002b.ada: Likewise. - * ada/acats-4/tests/e/e28005d.ada: Likewise. - * ada/acats-4/tests/e/e52103y.ada: Likewise. - * ada/acats-4/tests/e/eb4011a.ada: Likewise. - * ada/acats-4/tests/e/eb4012a.ada: Likewise. - * ada/acats-4/tests/e/eb4014a.ada: Likewise. - * ada/acats-4/tests/e/ee3203a.ada: Likewise. - * ada/acats-4/tests/e/ee3204a.ada: Likewise. - * ada/acats-4/tests/e/ee3402b.ada: Likewise. - * ada/acats-4/tests/e/ee3409f.ada: Likewise. - * ada/acats-4/tests/e/ee3412c.ada: Likewise. - * ada/acats-4/tests/l/la140010.a: Likewise. - * ada/acats-4/tests/l/la140011.am: Likewise. - * ada/acats-4/tests/l/la140012.a: Likewise. - * ada/acats-4/tests/l/la140020.a: Likewise. - * ada/acats-4/tests/l/la140021.am: Likewise. - * ada/acats-4/tests/l/la140022.a: Likewise. - * ada/acats-4/tests/l/la140030.a: Likewise. - * ada/acats-4/tests/l/la140031.a: Likewise. - * ada/acats-4/tests/l/la140032.am: Likewise. - * ada/acats-4/tests/l/la140033.a: Likewise. - * ada/acats-4/tests/l/la140040.a: Likewise. - * ada/acats-4/tests/l/la140041.am: Likewise. - * ada/acats-4/tests/l/la140042.a: Likewise. - * ada/acats-4/tests/l/la140050.a: Likewise. - * ada/acats-4/tests/l/la140051.a: Likewise. - * ada/acats-4/tests/l/la140052.am: Likewise. - * ada/acats-4/tests/l/la140053.a: Likewise. - * ada/acats-4/tests/l/la140060.a: Likewise. - * ada/acats-4/tests/l/la140061.a: Likewise. - * ada/acats-4/tests/l/la140062.am: Likewise. - * ada/acats-4/tests/l/la140063.a: Likewise. - * ada/acats-4/tests/l/la140070.a: Likewise. - * ada/acats-4/tests/l/la140071.a: Likewise. - * ada/acats-4/tests/l/la140072.am: Likewise. - * ada/acats-4/tests/l/la140073.a: Likewise. - * ada/acats-4/tests/l/la140080.a: Likewise. - * ada/acats-4/tests/l/la140081.a: Likewise. - * ada/acats-4/tests/l/la140082.am: Likewise. - * ada/acats-4/tests/l/la140083.a: Likewise. - * ada/acats-4/tests/l/la140090.a: Likewise. - * ada/acats-4/tests/l/la140091.a: Likewise. - * ada/acats-4/tests/l/la140092.am: Likewise. - * ada/acats-4/tests/l/la140093.a: Likewise. - * ada/acats-4/tests/l/la140100.a: Likewise. - * ada/acats-4/tests/l/la140101.a: Likewise. - * ada/acats-4/tests/l/la140102.am: Likewise. - * ada/acats-4/tests/l/la140103.a: Likewise. - * ada/acats-4/tests/l/la140110.a: Likewise. - * ada/acats-4/tests/l/la140111.a: Likewise. - * ada/acats-4/tests/l/la140112.am: Likewise. - * ada/acats-4/tests/l/la140113.a: Likewise. - * ada/acats-4/tests/l/la140120.a: Likewise. - * ada/acats-4/tests/l/la140121.a: Likewise. - * ada/acats-4/tests/l/la140122.am: Likewise. - * ada/acats-4/tests/l/la140123.a: Likewise. - * ada/acats-4/tests/l/la140130.a: Likewise. - * ada/acats-4/tests/l/la140131.a: Likewise. - * ada/acats-4/tests/l/la140132.am: Likewise. - * ada/acats-4/tests/l/la140133.a: Likewise. - * ada/acats-4/tests/l/la140140.a: Likewise. - * ada/acats-4/tests/l/la140141.a: Likewise. - * ada/acats-4/tests/l/la140142.am: Likewise. - * ada/acats-4/tests/l/la140143.a: Likewise. - * ada/acats-4/tests/l/la140150.a: Likewise. - * ada/acats-4/tests/l/la140151.a: Likewise. - * ada/acats-4/tests/l/la140152.am: Likewise. - * ada/acats-4/tests/l/la140153.a: Likewise. - * ada/acats-4/tests/l/la140160.a: Likewise. - * ada/acats-4/tests/l/la140161.a: Likewise. - * ada/acats-4/tests/l/la140162.am: Likewise. - * ada/acats-4/tests/l/la140163.a: Likewise. - * ada/acats-4/tests/l/la140170.a: Likewise. - * ada/acats-4/tests/l/la140171.a: Likewise. - * ada/acats-4/tests/l/la140172.am: Likewise. - * ada/acats-4/tests/l/la140173.a: Likewise. - * ada/acats-4/tests/l/la140180.a: Likewise. - * ada/acats-4/tests/l/la140181.a: Likewise. - * ada/acats-4/tests/l/la140182.am: Likewise. - * ada/acats-4/tests/l/la140183.a: Likewise. - * ada/acats-4/tests/l/la140190.a: Likewise. - * ada/acats-4/tests/l/la140191.a: Likewise. - * ada/acats-4/tests/l/la140192.am: Likewise. - * ada/acats-4/tests/l/la140193.a: Likewise. - * ada/acats-4/tests/l/la140200.a: Likewise. - * ada/acats-4/tests/l/la140201.a: Likewise. - * ada/acats-4/tests/l/la140202.am: Likewise. - * ada/acats-4/tests/l/la140203.a: Likewise. - * ada/acats-4/tests/l/la140210.a: Likewise. - * ada/acats-4/tests/l/la140211.am: Likewise. - * ada/acats-4/tests/l/la140212.a: Likewise. - * ada/acats-4/tests/l/la140220.a: Likewise. - * ada/acats-4/tests/l/la140221.am: Likewise. - * ada/acats-4/tests/l/la140222.a: Likewise. - * ada/acats-4/tests/l/la140240.a: Likewise. - * ada/acats-4/tests/l/la140241.a: Likewise. - * ada/acats-4/tests/l/la140242.am: Likewise. - * ada/acats-4/tests/l/la140243.a: Likewise. - * ada/acats-4/tests/l/la140250.a: Likewise. - * ada/acats-4/tests/l/la140251.am: Likewise. - * ada/acats-4/tests/l/la140252.a: Likewise. - * ada/acats-4/tests/l/la140260.a: Likewise. - * ada/acats-4/tests/l/la140261.a: Likewise. - * ada/acats-4/tests/l/la140262.am: Likewise. - * ada/acats-4/tests/l/la140263.a: Likewise. - * ada/acats-4/tests/l/la140270.a: Likewise. - * ada/acats-4/tests/l/la140271.a: Likewise. - * ada/acats-4/tests/l/la140272.am: Likewise. - * ada/acats-4/tests/l/la140273.a: Likewise. - -2025-05-24 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats-3/elabd.lst: New file. - * ada/acats-3/floatstore.lst: Likewise. - * ada/acats-3/norun.lst: Likewise. - * ada/acats-3/run_acats.sh: Likewise. - * ada/acats-3/run_all.sh: Likewise. - * ada/acats-3/run_test.exp: Likewise. - * ada/acats-3/stackcheck.lst: Likewise. - * ada/acats-3/support/acats31.lst: Likewise. - * ada/acats-3/support/checkfil.ada: Likewise. - * ada/acats-3/support/enumchek.ada: Likewise. - * ada/acats-3/support/f340a000.a: Likewise. - * ada/acats-3/support/f340a001.a: Likewise. - * ada/acats-3/support/f341a00.a: Likewise. - * ada/acats-3/support/f390a00.a: Likewise. - * ada/acats-3/support/f392a00.a: Likewise. - * ada/acats-3/support/f392c00.a: Likewise. - * ada/acats-3/support/f392d00.a: Likewise. - * ada/acats-3/support/f393a00.a: Likewise. - * ada/acats-3/support/f393b00.a: Likewise. - * ada/acats-3/support/f394a00.a: Likewise. - * ada/acats-3/support/f3a1a00.a: Likewise. - * ada/acats-3/support/f3a2a00.a: Likewise. - * ada/acats-3/support/f431a00.a: Likewise. - * ada/acats-3/support/f433a00.a: Likewise. - * ada/acats-3/support/f452a00.a: Likewise. - * ada/acats-3/support/f460a00.a: Likewise. - * ada/acats-3/support/f650a00.a: Likewise. - * ada/acats-3/support/f730a000.a: Likewise. - * ada/acats-3/support/f730a001.a: Likewise. - * ada/acats-3/support/f731a00.a: Likewise. - * ada/acats-3/support/f750a00.a: Likewise. - * ada/acats-3/support/f750b00.a: Likewise. - * ada/acats-3/support/f760a00.a: Likewise. - * ada/acats-3/support/f940a00.a: Likewise. - * ada/acats-3/support/f954a00.a: Likewise. - * ada/acats-3/support/fa11a00.a: Likewise. - * ada/acats-3/support/fa11b00.a: Likewise. - * ada/acats-3/support/fa11c00.a: Likewise. - * ada/acats-3/support/fa11d00.a: Likewise. - * ada/acats-3/support/fa13a00.a: Likewise. - * ada/acats-3/support/fa13b00.a: Likewise. - * ada/acats-3/support/fa21a00.a: Likewise. - * ada/acats-3/support/fb20a00.a: Likewise. - * ada/acats-3/support/fb40a00.a: Likewise. - * ada/acats-3/support/fc50a00.a: Likewise. - * ada/acats-3/support/fc51a00.a: Likewise. - * ada/acats-3/support/fc51b00.a: Likewise. - * ada/acats-3/support/fc51c00.a: Likewise. - * ada/acats-3/support/fc51d00.a: Likewise. - * ada/acats-3/support/fc54a00.a: Likewise. - * ada/acats-3/support/fc70a00.a: Likewise. - * ada/acats-3/support/fc70b00.a: Likewise. - * ada/acats-3/support/fc70c00.a: Likewise. - * ada/acats-3/support/fcndecl.ada: Likewise. - * ada/acats-3/support/fd72a00.a: Likewise. - * ada/acats-3/support/fdb0a00.a: Likewise. - * ada/acats-3/support/fdd2a00.a: Likewise. - * ada/acats-3/support/fdd2b00.a: Likewise. - * ada/acats-3/support/fxa5a00.a: Likewise. - * ada/acats-3/support/fxaca00.a: Likewise. - * ada/acats-3/support/fxacb00.a: Likewise. - * ada/acats-3/support/fxacc00.a: Likewise. - * ada/acats-3/support/fxaia00.a: Likewise. - * ada/acats-3/support/fxc6a00.a: Likewise. - * ada/acats-3/support/fxe2a00.a: Likewise. - * ada/acats-3/support/fxf2a00.a: Likewise. - * ada/acats-3/support/fxf3a00.a: Likewise. - * ada/acats-3/support/impbit.adb: Likewise. - * ada/acats-3/support/impdef.a: Likewise. - * ada/acats-3/support/impdefc.a: Likewise. - * ada/acats-3/support/impdefd.a: Likewise. - * ada/acats-3/support/impdefe.a: Likewise. - * ada/acats-3/support/impdefg.a: Likewise. - * ada/acats-3/support/impdefh.a: Likewise. - * ada/acats-3/support/lencheck.ada: Likewise. - * ada/acats-3/support/macro.dfs: Likewise. - * ada/acats-3/support/macrodef.adb: Likewise. - * ada/acats-3/support/macrosub.ada: Likewise. - * ada/acats-3/support/repbody.ada: Likewise. - * ada/acats-3/support/repspec.ada: Likewise. - * ada/acats-3/support/spprt13s.tst: Likewise. - * ada/acats-3/support/tctouch.ada: Likewise. - * ada/acats-3/support/tsttests.dat: Likewise. - * ada/acats-3/tests/a/a22006b.ada: Likewise. - * ada/acats-3/tests/a/a22006c.ada: Likewise. - * ada/acats-3/tests/a/a22006d.ada: Likewise. - * ada/acats-3/tests/a/a26007a.tst: Likewise. - * ada/acats-3/tests/a/a27003a.ada: Likewise. - * ada/acats-3/tests/a/a29003a.ada: Likewise. - * ada/acats-3/tests/a/a2a031a.ada: Likewise. - * ada/acats-3/tests/a/a33003a.ada: Likewise. - * ada/acats-3/tests/a/a34017c.ada: Likewise. - * ada/acats-3/tests/a/a35101b.ada: Likewise. - * ada/acats-3/tests/a/a35402a.ada: Likewise. - * ada/acats-3/tests/a/a35801f.ada: Likewise. - * ada/acats-3/tests/a/a35902c.ada: Likewise. - * ada/acats-3/tests/a/a38106d.ada: Likewise. - * ada/acats-3/tests/a/a38106e.ada: Likewise. - * ada/acats-3/tests/a/a49027a.ada: Likewise. - * ada/acats-3/tests/a/a49027b.ada: Likewise. - * ada/acats-3/tests/a/a49027c.ada: Likewise. - * ada/acats-3/tests/a/a54b01a.ada: Likewise. - * ada/acats-3/tests/a/a54b02a.ada: Likewise. - * ada/acats-3/tests/a/a55b12a.ada: Likewise. - * ada/acats-3/tests/a/a55b13a.ada: Likewise. - * ada/acats-3/tests/a/a55b14a.ada: Likewise. - * ada/acats-3/tests/a/a71004a.ada: Likewise. - * ada/acats-3/tests/a/a73001i.ada: Likewise. - * ada/acats-3/tests/a/a73001j.ada: Likewise. - * ada/acats-3/tests/a/a74105b.ada: Likewise. - * ada/acats-3/tests/a/a74106a.ada: Likewise. - * ada/acats-3/tests/a/a74106b.ada: Likewise. - * ada/acats-3/tests/a/a74106c.ada: Likewise. - * ada/acats-3/tests/a/a74205e.ada: Likewise. - * ada/acats-3/tests/a/a74205f.ada: Likewise. - * ada/acats-3/tests/a/a83009a.ada: Likewise. - * ada/acats-3/tests/a/a83009b.ada: Likewise. - * ada/acats-3/tests/a/a83a02a.ada: Likewise. - * ada/acats-3/tests/a/a83a02b.ada: Likewise. - * ada/acats-3/tests/a/a83a06a.ada: Likewise. - * ada/acats-3/tests/a/a83a08a.ada: Likewise. - * ada/acats-3/tests/a/a83c01c.ada: Likewise. - * ada/acats-3/tests/a/a83c01h.ada: Likewise. - * ada/acats-3/tests/a/a83c01i.ada: Likewise. - * ada/acats-3/tests/a/a85007d.ada: Likewise. - * ada/acats-3/tests/a/a85013b.ada: Likewise. - * ada/acats-3/tests/a/a87b59a.ada: Likewise. - * ada/acats-3/tests/a/a95001c.ada: Likewise. - * ada/acats-3/tests/a/a95074d.ada: Likewise. - * ada/acats-3/tests/a/a97106a.ada: Likewise. - * ada/acats-3/tests/a/a99006a.ada: Likewise. - * ada/acats-3/tests/a/aa2010a.ada: Likewise. - * ada/acats-3/tests/a/aa2012a.ada: Likewise. - * ada/acats-3/tests/a/ac1015b.ada: Likewise. - * ada/acats-3/tests/a/ac3106a.ada: Likewise. - * ada/acats-3/tests/a/ac3206a.ada: Likewise. - * ada/acats-3/tests/a/ac3207a.ada: Likewise. - * ada/acats-3/tests/a/ad7001b.ada: Likewise. - * ada/acats-3/tests/a/ad7001c0.ada: Likewise. - * ada/acats-3/tests/a/ad7001c1.ada: Likewise. - * ada/acats-3/tests/a/ad7001d0.ada: Likewise. - * ada/acats-3/tests/a/ad7001d1.ada: Likewise. - * ada/acats-3/tests/a/ad7006a.ada: Likewise. - * ada/acats-3/tests/a/ad7101a.ada: Likewise. - * ada/acats-3/tests/a/ad7101c.ada: Likewise. - * ada/acats-3/tests/a/ad7102a.ada: Likewise. - * ada/acats-3/tests/a/ad7103a.ada: Likewise. - * ada/acats-3/tests/a/ad7103c.ada: Likewise. - * ada/acats-3/tests/a/ad7104a.ada: Likewise. - * ada/acats-3/tests/a/ad7201a.ada: Likewise. - * ada/acats-3/tests/a/ad7203b.ada: Likewise. - * ada/acats-3/tests/a/ad7205b.ada: Likewise. - * ada/acats-3/tests/a/ad8011a.tst: Likewise. - * ada/acats-3/tests/a/ada101a.ada: Likewise. - * ada/acats-3/tests/a/ae2113a.ada: Likewise. - * ada/acats-3/tests/a/ae2113b.ada: Likewise. - * ada/acats-3/tests/a/ae3002g.ada: Likewise. - * ada/acats-3/tests/a/ae3101a.ada: Likewise. - * ada/acats-3/tests/a/ae3702a.ada: Likewise. - * ada/acats-3/tests/a/ae3709a.ada: Likewise. - * ada/acats-3/tests/c2/c23001a.ada: Likewise. - * ada/acats-3/tests/c2/c23003a.tst: Likewise. - * ada/acats-3/tests/c2/c23003b.tst: Likewise. - * ada/acats-3/tests/c2/c23003g.tst: Likewise. - * ada/acats-3/tests/c2/c23003i.tst: Likewise. - * ada/acats-3/tests/c2/c23006a.ada: Likewise. - * ada/acats-3/tests/c2/c23006b.ada: Likewise. - * ada/acats-3/tests/c2/c23006c.ada: Likewise. - * ada/acats-3/tests/c2/c23006d.ada: Likewise. - * ada/acats-3/tests/c2/c23006e.ada: Likewise. - * ada/acats-3/tests/c2/c23006f.ada: Likewise. - * ada/acats-3/tests/c2/c23006g.ada: Likewise. - * ada/acats-3/tests/c2/c24002d.ada: Likewise. - * ada/acats-3/tests/c2/c24003a.ada: Likewise. - * ada/acats-3/tests/c2/c24003b.ada: Likewise. - * ada/acats-3/tests/c2/c24003c.ada: Likewise. - * ada/acats-3/tests/c2/c24106a.ada: Likewise. - * ada/acats-3/tests/c2/c24202d.ada: Likewise. - * ada/acats-3/tests/c2/c24203a.ada: Likewise. - * ada/acats-3/tests/c2/c24203b.ada: Likewise. - * ada/acats-3/tests/c2/c24207a.ada: Likewise. - * ada/acats-3/tests/c2/c24211a.ada: Likewise. - * ada/acats-3/tests/c2/c250001.au: Likewise. - * ada/acats-3/tests/c2/c250002.au: Likewise. - * ada/acats-3/tests/c2/c25001a.ada: Likewise. - * ada/acats-3/tests/c2/c25001b.ada: Likewise. - * ada/acats-3/tests/c2/c26006a.ada: Likewise. - * ada/acats-3/tests/c2/c26008a.ada: Likewise. - * ada/acats-3/tests/c2/c2a001a.ada: Likewise. - * ada/acats-3/tests/c2/c2a001b.ada: Likewise. - * ada/acats-3/tests/c2/c2a001c.ada: Likewise. - * ada/acats-3/tests/c2/c2a002a.ada: Likewise. - * ada/acats-3/tests/c2/c2a008a.ada: Likewise. - * ada/acats-3/tests/c2/c2a021b.ada: Likewise. - * ada/acats-3/tests/c3/c32001a.ada: Likewise. - * ada/acats-3/tests/c3/c32001b.ada: Likewise. - * ada/acats-3/tests/c3/c32001c.ada: Likewise. - * ada/acats-3/tests/c3/c32001d.ada: Likewise. - * ada/acats-3/tests/c3/c32001e.ada: Likewise. - * ada/acats-3/tests/c3/c32107a.ada: Likewise. - * ada/acats-3/tests/c3/c32107c.ada: Likewise. - * ada/acats-3/tests/c3/c32108a.ada: Likewise. - * ada/acats-3/tests/c3/c32108b.ada: Likewise. - * ada/acats-3/tests/c3/c32111a.ada: Likewise. - * ada/acats-3/tests/c3/c32111b.ada: Likewise. - * ada/acats-3/tests/c3/c32112b.ada: Likewise. - * ada/acats-3/tests/c3/c32113a.ada: Likewise. - * ada/acats-3/tests/c3/c32115a.ada: Likewise. - * ada/acats-3/tests/c3/c32115b.ada: Likewise. - * ada/acats-3/tests/c3/c330001.a: Likewise. - * ada/acats-3/tests/c3/c330002.a: Likewise. - * ada/acats-3/tests/c3/c332001.a: Likewise. - * ada/acats-3/tests/c3/c340001.a: Likewise. - * ada/acats-3/tests/c3/c34001a.ada: Likewise. - * ada/acats-3/tests/c3/c34001c.ada: Likewise. - * ada/acats-3/tests/c3/c34001d.ada: Likewise. - * ada/acats-3/tests/c3/c34001f.ada: Likewise. - * ada/acats-3/tests/c3/c34002a.ada: Likewise. - * ada/acats-3/tests/c3/c34002c.ada: Likewise. - * ada/acats-3/tests/c3/c34003a.ada: Likewise. - * ada/acats-3/tests/c3/c34003c.ada: Likewise. - * ada/acats-3/tests/c3/c34004a.ada: Likewise. - * ada/acats-3/tests/c3/c34004c.ada: Likewise. - * ada/acats-3/tests/c3/c34005a.ada: Likewise. - * ada/acats-3/tests/c3/c34005c.ada: Likewise. - * ada/acats-3/tests/c3/c34005d.ada: Likewise. - * ada/acats-3/tests/c3/c34005f.ada: Likewise. - * ada/acats-3/tests/c3/c34005g.ada: Likewise. - * ada/acats-3/tests/c3/c34005i.ada: Likewise. - * ada/acats-3/tests/c3/c34005j.ada: Likewise. - * ada/acats-3/tests/c3/c34005l.ada: Likewise. - * ada/acats-3/tests/c3/c34005m.ada: Likewise. - * ada/acats-3/tests/c3/c34005o.ada: Likewise. - * ada/acats-3/tests/c3/c34005p.ada: Likewise. - * ada/acats-3/tests/c3/c34005r.ada: Likewise. - * ada/acats-3/tests/c3/c34005s.ada: Likewise. - * ada/acats-3/tests/c3/c34005u.ada: Likewise. - * ada/acats-3/tests/c3/c34005v.ada: Likewise. - * ada/acats-3/tests/c3/c34006a.ada: Likewise. - * ada/acats-3/tests/c3/c34006d.ada: Likewise. - * ada/acats-3/tests/c3/c34006f.ada: Likewise. - * ada/acats-3/tests/c3/c34006g.ada: Likewise. - * ada/acats-3/tests/c3/c34006j.ada: Likewise. - * ada/acats-3/tests/c3/c34006l.ada: Likewise. - * ada/acats-3/tests/c3/c34007a.ada: Likewise. - * ada/acats-3/tests/c3/c34007d.ada: Likewise. - * ada/acats-3/tests/c3/c34007f.ada: Likewise. - * ada/acats-3/tests/c3/c34007g.ada: Likewise. - * ada/acats-3/tests/c3/c34007i.ada: Likewise. - * ada/acats-3/tests/c3/c34007j.ada: Likewise. - * ada/acats-3/tests/c3/c34007m.ada: Likewise. - * ada/acats-3/tests/c3/c34007p.ada: Likewise. - * ada/acats-3/tests/c3/c34007r.ada: Likewise. - * ada/acats-3/tests/c3/c34007s.ada: Likewise. - * ada/acats-3/tests/c3/c34007u.ada: Likewise. - * ada/acats-3/tests/c3/c34007v.ada: Likewise. - * ada/acats-3/tests/c3/c34008a.ada: Likewise. - * ada/acats-3/tests/c3/c34009a.ada: Likewise. - * ada/acats-3/tests/c3/c34009d.ada: Likewise. - * ada/acats-3/tests/c3/c34009f.ada: Likewise. - * ada/acats-3/tests/c3/c34009g.ada: Likewise. - * ada/acats-3/tests/c3/c34009j.ada: Likewise. - * ada/acats-3/tests/c3/c34009l.ada: Likewise. - * ada/acats-3/tests/c3/c34011b.ada: Likewise. - * ada/acats-3/tests/c3/c34012a.ada: Likewise. - * ada/acats-3/tests/c3/c34014a.ada: Likewise. - * ada/acats-3/tests/c3/c34014c.ada: Likewise. - * ada/acats-3/tests/c3/c34014e.ada: Likewise. - * ada/acats-3/tests/c3/c34014g.ada: Likewise. - * ada/acats-3/tests/c3/c34014h.ada: Likewise. - * ada/acats-3/tests/c3/c34014n.ada: Likewise. - * ada/acats-3/tests/c3/c34014p.ada: Likewise. - * ada/acats-3/tests/c3/c34014r.ada: Likewise. - * ada/acats-3/tests/c3/c34014t.ada: Likewise. - * ada/acats-3/tests/c3/c34014u.ada: Likewise. - * ada/acats-3/tests/c3/c34018a.ada: Likewise. - * ada/acats-3/tests/c3/c340a01.a: Likewise. - * ada/acats-3/tests/c3/c340a02.a: Likewise. - * ada/acats-3/tests/c3/c341a01.a: Likewise. - * ada/acats-3/tests/c3/c341a02.a: Likewise. - * ada/acats-3/tests/c3/c341a03.a: Likewise. - * ada/acats-3/tests/c3/c341a04.a: Likewise. - * ada/acats-3/tests/c3/c35003a.ada: Likewise. - * ada/acats-3/tests/c3/c35003b.ada: Likewise. - * ada/acats-3/tests/c3/c35003d.ada: Likewise. - * ada/acats-3/tests/c3/c35102a.ada: Likewise. - * ada/acats-3/tests/c3/c352001.a: Likewise. - * ada/acats-3/tests/c3/c354002.a: Likewise. - * ada/acats-3/tests/c3/c354003.a: Likewise. - * ada/acats-3/tests/c3/c354004.a: Likewise. - * ada/acats-3/tests/c3/c35502a.ada: Likewise. - * ada/acats-3/tests/c3/c35502b.ada: Likewise. - * ada/acats-3/tests/c3/c35502c.ada: Likewise. - * ada/acats-3/tests/c3/c35502d.tst: Likewise. - * ada/acats-3/tests/c3/c35502e.ada: Likewise. - * ada/acats-3/tests/c3/c35502f.tst: Likewise. - * ada/acats-3/tests/c3/c35502g.ada: Likewise. - * ada/acats-3/tests/c3/c35502h.ada: Likewise. - * ada/acats-3/tests/c3/c35502i.ada: Likewise. - * ada/acats-3/tests/c3/c35502j.ada: Likewise. - * ada/acats-3/tests/c3/c35502k.ada: Likewise. - * ada/acats-3/tests/c3/c35502l.ada: Likewise. - * ada/acats-3/tests/c3/c35502m.ada: Likewise. - * ada/acats-3/tests/c3/c35502n.ada: Likewise. - * ada/acats-3/tests/c3/c35502o.ada: Likewise. - * ada/acats-3/tests/c3/c35502p.ada: Likewise. - * ada/acats-3/tests/c3/c35503a.ada: Likewise. - * ada/acats-3/tests/c3/c35503b.ada: Likewise. - * ada/acats-3/tests/c3/c35503c.ada: Likewise. - * ada/acats-3/tests/c3/c35503d.tst: Likewise. - * ada/acats-3/tests/c3/c35503e.ada: Likewise. - * ada/acats-3/tests/c3/c35503f.tst: Likewise. - * ada/acats-3/tests/c3/c35503g.ada: Likewise. - * ada/acats-3/tests/c3/c35503h.ada: Likewise. - * ada/acats-3/tests/c3/c35503k.ada: Likewise. - * ada/acats-3/tests/c3/c35503l.ada: Likewise. - * ada/acats-3/tests/c3/c35503o.ada: Likewise. - * ada/acats-3/tests/c3/c35503p.ada: Likewise. - * ada/acats-3/tests/c3/c35504a.ada: Likewise. - * ada/acats-3/tests/c3/c35504b.ada: Likewise. - * ada/acats-3/tests/c3/c35505c.ada: Likewise. - * ada/acats-3/tests/c3/c35505e.ada: Likewise. - * ada/acats-3/tests/c3/c35505f.ada: Likewise. - * ada/acats-3/tests/c3/c35507a.ada: Likewise. - * ada/acats-3/tests/c3/c35507b.ada: Likewise. - * ada/acats-3/tests/c3/c35507c.ada: Likewise. - * ada/acats-3/tests/c3/c35507e.ada: Likewise. - * ada/acats-3/tests/c3/c35507g.ada: Likewise. - * ada/acats-3/tests/c3/c35507h.ada: Likewise. - * ada/acats-3/tests/c3/c35507i.ada: Likewise. - * ada/acats-3/tests/c3/c35507j.ada: Likewise. - * ada/acats-3/tests/c3/c35507k.ada: Likewise. - * ada/acats-3/tests/c3/c35507l.ada: Likewise. - * ada/acats-3/tests/c3/c35507m.ada: Likewise. - * ada/acats-3/tests/c3/c35507n.ada: Likewise. - * ada/acats-3/tests/c3/c35507o.ada: Likewise. - * ada/acats-3/tests/c3/c35507p.ada: Likewise. - * ada/acats-3/tests/c3/c35508a.ada: Likewise. - * ada/acats-3/tests/c3/c35508b.ada: Likewise. - * ada/acats-3/tests/c3/c35508c.ada: Likewise. - * ada/acats-3/tests/c3/c35508e.ada: Likewise. - * ada/acats-3/tests/c3/c35508g.ada: Likewise. - * ada/acats-3/tests/c3/c35508h.ada: Likewise. - * ada/acats-3/tests/c3/c35508k.ada: Likewise. - * ada/acats-3/tests/c3/c35508l.ada: Likewise. - * ada/acats-3/tests/c3/c35508o.ada: Likewise. - * ada/acats-3/tests/c3/c35508p.ada: Likewise. - * ada/acats-3/tests/c3/c35703a.ada: Likewise. - * ada/acats-3/tests/c3/c35704a.ada: Likewise. - * ada/acats-3/tests/c3/c35704b.ada: Likewise. - * ada/acats-3/tests/c3/c35704c.ada: Likewise. - * ada/acats-3/tests/c3/c35704d.ada: Likewise. - * ada/acats-3/tests/c3/c35801d.ada: Likewise. - * ada/acats-3/tests/c3/c35902d.ada: Likewise. - * ada/acats-3/tests/c3/c35904a.ada: Likewise. - * ada/acats-3/tests/c3/c35904b.ada: Likewise. - * ada/acats-3/tests/c3/c35a02a.ada: Likewise. - * ada/acats-3/tests/c3/c35a05a.ada: Likewise. - * ada/acats-3/tests/c3/c35a05d.ada: Likewise. - * ada/acats-3/tests/c3/c35a05n.ada: Likewise. - * ada/acats-3/tests/c3/c35a05q.ada: Likewise. - * ada/acats-3/tests/c3/c35a07a.ada: Likewise. - * ada/acats-3/tests/c3/c35a07d.ada: Likewise. - * ada/acats-3/tests/c3/c35a08b.ada: Likewise. - * ada/acats-3/tests/c3/c360002.a: Likewise. - * ada/acats-3/tests/c3/c36104a.ada: Likewise. - * ada/acats-3/tests/c3/c36104b.ada: Likewise. - * ada/acats-3/tests/c3/c36172a.ada: Likewise. - * ada/acats-3/tests/c3/c36172b.ada: Likewise. - * ada/acats-3/tests/c3/c36172c.ada: Likewise. - * ada/acats-3/tests/c3/c36174a.ada: Likewise. - * ada/acats-3/tests/c3/c36180a.ada: Likewise. - * ada/acats-3/tests/c3/c36202c.ada: Likewise. - * ada/acats-3/tests/c3/c36203a.ada: Likewise. - * ada/acats-3/tests/c3/c36204a.ada: Likewise. - * ada/acats-3/tests/c3/c36204b.ada: Likewise. - * ada/acats-3/tests/c3/c36204c.ada: Likewise. - * ada/acats-3/tests/c3/c36204d.ada: Likewise. - * ada/acats-3/tests/c3/c36205a.ada: Likewise. - * ada/acats-3/tests/c3/c36205b.ada: Likewise. - * ada/acats-3/tests/c3/c36205c.ada: Likewise. - * ada/acats-3/tests/c3/c36205d.ada: Likewise. - * ada/acats-3/tests/c3/c36205e.ada: Likewise. - * ada/acats-3/tests/c3/c36205f.ada: Likewise. - * ada/acats-3/tests/c3/c36205g.ada: Likewise. - * ada/acats-3/tests/c3/c36205h.ada: Likewise. - * ada/acats-3/tests/c3/c36205i.ada: Likewise. - * ada/acats-3/tests/c3/c36205j.ada: Likewise. - * ada/acats-3/tests/c3/c36205k.ada: Likewise. - * ada/acats-3/tests/c3/c36205l.ada: Likewise. - * ada/acats-3/tests/c3/c36301a.ada: Likewise. - * ada/acats-3/tests/c3/c36301b.ada: Likewise. - * ada/acats-3/tests/c3/c36302a.ada: Likewise. - * ada/acats-3/tests/c3/c36304a.ada: Likewise. - * ada/acats-3/tests/c3/c36305a.ada: Likewise. - * ada/acats-3/tests/c3/c37002a.ada: Likewise. - * ada/acats-3/tests/c3/c37003a.ada: Likewise. - * ada/acats-3/tests/c3/c37003b.ada: Likewise. - * ada/acats-3/tests/c3/c37005a.ada: Likewise. - * ada/acats-3/tests/c3/c37006a.ada: Likewise. - * ada/acats-3/tests/c3/c37008a.ada: Likewise. - * ada/acats-3/tests/c3/c37008b.ada: Likewise. - * ada/acats-3/tests/c3/c37009a.ada: Likewise. - * ada/acats-3/tests/c3/c37010a.ada: Likewise. - * ada/acats-3/tests/c3/c37010b.ada: Likewise. - * ada/acats-3/tests/c3/c371001.a: Likewise. - * ada/acats-3/tests/c3/c371002.a: Likewise. - * ada/acats-3/tests/c3/c371003.a: Likewise. - * ada/acats-3/tests/c3/c37102b.ada: Likewise. - * ada/acats-3/tests/c3/c37103a.ada: Likewise. - * ada/acats-3/tests/c3/c37105a.ada: Likewise. - * ada/acats-3/tests/c3/c37107a.ada: Likewise. - * ada/acats-3/tests/c3/c37108b.ada: Likewise. - * ada/acats-3/tests/c3/c37206a.ada: Likewise. - * ada/acats-3/tests/c3/c37207a.ada: Likewise. - * ada/acats-3/tests/c3/c37208a.ada: Likewise. - * ada/acats-3/tests/c3/c37208b.ada: Likewise. - * ada/acats-3/tests/c3/c37209a.ada: Likewise. - * ada/acats-3/tests/c3/c37209b.ada: Likewise. - * ada/acats-3/tests/c3/c37210a.ada: Likewise. - * ada/acats-3/tests/c3/c37211a.ada: Likewise. - * ada/acats-3/tests/c3/c37211b.ada: Likewise. - * ada/acats-3/tests/c3/c37211c.ada: Likewise. - * ada/acats-3/tests/c3/c37211d.ada: Likewise. - * ada/acats-3/tests/c3/c37211e.ada: Likewise. - * ada/acats-3/tests/c3/c37213b.ada: Likewise. - * ada/acats-3/tests/c3/c37213d.ada: Likewise. - * ada/acats-3/tests/c3/c37213f.ada: Likewise. - * ada/acats-3/tests/c3/c37213h.ada: Likewise. - * ada/acats-3/tests/c3/c37213j.ada: Likewise. - * ada/acats-3/tests/c3/c37213k.ada: Likewise. - * ada/acats-3/tests/c3/c37213l.ada: Likewise. - * ada/acats-3/tests/c3/c37215b.ada: Likewise. - * ada/acats-3/tests/c3/c37215d.ada: Likewise. - * ada/acats-3/tests/c3/c37215f.ada: Likewise. - * ada/acats-3/tests/c3/c37215h.ada: Likewise. - * ada/acats-3/tests/c3/c37217a.ada: Likewise. - * ada/acats-3/tests/c3/c37217b.ada: Likewise. - * ada/acats-3/tests/c3/c37217c.ada: Likewise. - * ada/acats-3/tests/c3/c37304a.ada: Likewise. - * ada/acats-3/tests/c3/c37305a.ada: Likewise. - * ada/acats-3/tests/c3/c37306a.ada: Likewise. - * ada/acats-3/tests/c3/c37309a.ada: Likewise. - * ada/acats-3/tests/c3/c37310a.ada: Likewise. - * ada/acats-3/tests/c3/c37312a.ada: Likewise. - * ada/acats-3/tests/c3/c37402a.ada: Likewise. - * ada/acats-3/tests/c3/c37403a.ada: Likewise. - * ada/acats-3/tests/c3/c37404a.ada: Likewise. - * ada/acats-3/tests/c3/c37404b.ada: Likewise. - * ada/acats-3/tests/c3/c37405a.ada: Likewise. - * ada/acats-3/tests/c3/c37411a.ada: Likewise. - * ada/acats-3/tests/c3/c380001.a: Likewise. - * ada/acats-3/tests/c3/c380002.a: Likewise. - * ada/acats-3/tests/c3/c380003.a: Likewise. - * ada/acats-3/tests/c3/c380004.a: Likewise. - * ada/acats-3/tests/c3/c38002a.ada: Likewise. - * ada/acats-3/tests/c3/c38002b.ada: Likewise. - * ada/acats-3/tests/c3/c38005a.ada: Likewise. - * ada/acats-3/tests/c3/c38005b.ada: Likewise. - * ada/acats-3/tests/c3/c38005c.ada: Likewise. - * ada/acats-3/tests/c3/c38102a.ada: Likewise. - * ada/acats-3/tests/c3/c38102b.ada: Likewise. - * ada/acats-3/tests/c3/c38102c.ada: Likewise. - * ada/acats-3/tests/c3/c38102d.ada: Likewise. - * ada/acats-3/tests/c3/c38102e.ada: Likewise. - * ada/acats-3/tests/c3/c38104a.ada: Likewise. - * ada/acats-3/tests/c3/c38107a.ada: Likewise. - * ada/acats-3/tests/c3/c38107b.ada: Likewise. - * ada/acats-3/tests/c3/c38108a.ada: Likewise. - * ada/acats-3/tests/c3/c38108b.ada: Likewise. - * ada/acats-3/tests/c3/c38108c0.ada: Likewise. - * ada/acats-3/tests/c3/c38108c1.ada: Likewise. - * ada/acats-3/tests/c3/c38108c2.ada: Likewise. - * ada/acats-3/tests/c3/c38108d0.ada: Likewise. - * ada/acats-3/tests/c3/c38108d1.ada: Likewise. - * ada/acats-3/tests/c3/c3900010.a: Likewise. - * ada/acats-3/tests/c3/c3900011.am: Likewise. - * ada/acats-3/tests/c3/c390002.a: Likewise. - * ada/acats-3/tests/c3/c390003.a: Likewise. - * ada/acats-3/tests/c3/c390004.a: Likewise. - * ada/acats-3/tests/c3/c3900050.a: Likewise. - * ada/acats-3/tests/c3/c3900051.a: Likewise. - * ada/acats-3/tests/c3/c3900052.a: Likewise. - * ada/acats-3/tests/c3/c3900053.am: Likewise. - * ada/acats-3/tests/c3/c3900060.a: Likewise. - * ada/acats-3/tests/c3/c3900061.a: Likewise. - * ada/acats-3/tests/c3/c3900062.a: Likewise. - * ada/acats-3/tests/c3/c3900063.am: Likewise. - * ada/acats-3/tests/c3/c390007.a: Likewise. - * ada/acats-3/tests/c3/c390010.a: Likewise. - * ada/acats-3/tests/c3/c390011.a: Likewise. - * ada/acats-3/tests/c3/c390012.a: Likewise. - * ada/acats-3/tests/c3/c39006a.ada: Likewise. - * ada/acats-3/tests/c3/c39006b.ada: Likewise. - * ada/acats-3/tests/c3/c39006c0.ada: Likewise. - * ada/acats-3/tests/c3/c39006c1.ada: Likewise. - * ada/acats-3/tests/c3/c39006d.ada: Likewise. - * ada/acats-3/tests/c3/c39006e.ada: Likewise. - * ada/acats-3/tests/c3/c39006f0.ada: Likewise. - * ada/acats-3/tests/c3/c39006f1.ada: Likewise. - * ada/acats-3/tests/c3/c39006f2.ada: Likewise. - * ada/acats-3/tests/c3/c39006f3.ada: Likewise. - * ada/acats-3/tests/c3/c39006g.ada: Likewise. - * ada/acats-3/tests/c3/c39007a.ada: Likewise. - * ada/acats-3/tests/c3/c39007b.ada: Likewise. - * ada/acats-3/tests/c3/c39008a.ada: Likewise. - * ada/acats-3/tests/c3/c39008b.ada: Likewise. - * ada/acats-3/tests/c3/c39008c.ada: Likewise. - * ada/acats-3/tests/c3/c390a010.a: Likewise. - * ada/acats-3/tests/c3/c390a011.am: Likewise. - * ada/acats-3/tests/c3/c390a020.a: Likewise. - * ada/acats-3/tests/c3/c390a021.a: Likewise. - * ada/acats-3/tests/c3/c390a022.am: Likewise. - * ada/acats-3/tests/c3/c390a030.a: Likewise. - * ada/acats-3/tests/c3/c390a031.am: Likewise. - * ada/acats-3/tests/c3/c391001.a: Likewise. - * ada/acats-3/tests/c3/c391002.a: Likewise. - * ada/acats-3/tests/c3/c391003.a: Likewise. - * ada/acats-3/tests/c3/c392002.a: Likewise. - * ada/acats-3/tests/c3/c392003.a: Likewise. - * ada/acats-3/tests/c3/c392004.a: Likewise. - * ada/acats-3/tests/c3/c392005.a: Likewise. - * ada/acats-3/tests/c3/c392008.a: Likewise. - * ada/acats-3/tests/c3/c392010.a: Likewise. - * ada/acats-3/tests/c3/c392011.a: Likewise. - * ada/acats-3/tests/c3/c392013.a: Likewise. - * ada/acats-3/tests/c3/c392014.a: Likewise. - * ada/acats-3/tests/c3/c392015.a: Likewise. - * ada/acats-3/tests/c3/c392a01.a: Likewise. - * ada/acats-3/tests/c3/c392c05.a: Likewise. - * ada/acats-3/tests/c3/c392c07.a: Likewise. - * ada/acats-3/tests/c3/c392d01.a: Likewise. - * ada/acats-3/tests/c3/c392d02.a: Likewise. - * ada/acats-3/tests/c3/c392d03.a: Likewise. - * ada/acats-3/tests/c3/c393001.a: Likewise. - * ada/acats-3/tests/c3/c393007.a: Likewise. - * ada/acats-3/tests/c3/c393008.a: Likewise. - * ada/acats-3/tests/c3/c393009.a: Likewise. - * ada/acats-3/tests/c3/c393010.a: Likewise. - * ada/acats-3/tests/c3/c393011.a: Likewise. - * ada/acats-3/tests/c3/c393012.a: Likewise. - * ada/acats-3/tests/c3/c393013.a: Likewise. - * ada/acats-3/tests/c3/c393a02.a: Likewise. - * ada/acats-3/tests/c3/c393a03.a: Likewise. - * ada/acats-3/tests/c3/c393a05.a: Likewise. - * ada/acats-3/tests/c3/c393a06.a: Likewise. - * ada/acats-3/tests/c3/c393b12.a: Likewise. - * ada/acats-3/tests/c3/c393b13.a: Likewise. - * ada/acats-3/tests/c3/c393b14.a: Likewise. - * ada/acats-3/tests/c3/c394001.a: Likewise. - * ada/acats-3/tests/c3/c394002.a: Likewise. - * ada/acats-3/tests/c3/c394003.a: Likewise. - * ada/acats-3/tests/c3/c3a0001.a: Likewise. - * ada/acats-3/tests/c3/c3a0002.a: Likewise. - * ada/acats-3/tests/c3/c3a0003.a: Likewise. - * ada/acats-3/tests/c3/c3a0004.a: Likewise. - * ada/acats-3/tests/c3/c3a0005.a: Likewise. - * ada/acats-3/tests/c3/c3a0006.a: Likewise. - * ada/acats-3/tests/c3/c3a0007.a: Likewise. - * ada/acats-3/tests/c3/c3a0008.a: Likewise. - * ada/acats-3/tests/c3/c3a0009.a: Likewise. - * ada/acats-3/tests/c3/c3a0010.a: Likewise. - * ada/acats-3/tests/c3/c3a0011.a: Likewise. - * ada/acats-3/tests/c3/c3a00120.a: Likewise. - * ada/acats-3/tests/c3/c3a00121.a: Likewise. - * ada/acats-3/tests/c3/c3a00122.am: Likewise. - * ada/acats-3/tests/c3/c3a0013.a: Likewise. - * ada/acats-3/tests/c3/c3a0014.a: Likewise. - * ada/acats-3/tests/c3/c3a0015.a: Likewise. - * ada/acats-3/tests/c3/c3a0016.a: Likewise. - * ada/acats-3/tests/c3/c3a0017.a: Likewise. - * ada/acats-3/tests/c3/c3a0018.a: Likewise. - * ada/acats-3/tests/c3/c3a0019.a: Likewise. - * ada/acats-3/tests/c3/c3a0020.a: Likewise. - * ada/acats-3/tests/c3/c3a0021.a: Likewise. - * ada/acats-3/tests/c3/c3a0022.a: Likewise. - * ada/acats-3/tests/c3/c3a0023.a: Likewise. - * ada/acats-3/tests/c3/c3a0024.a: Likewise. - * ada/acats-3/tests/c3/c3a0025.a: Likewise. - * ada/acats-3/tests/c3/c3a0026.a: Likewise. - * ada/acats-3/tests/c3/c3a0027.a: Likewise. - * ada/acats-3/tests/c3/c3a0028.a: Likewise. - * ada/acats-3/tests/c3/c3a0029.a: Likewise. - * ada/acats-3/tests/c3/c3a0030.a: Likewise. - * ada/acats-3/tests/c3/c3a1001.a: Likewise. - * ada/acats-3/tests/c3/c3a1002.a: Likewise. - * ada/acats-3/tests/c3/c3a10030.a: Likewise. - * ada/acats-3/tests/c3/c3a10031.a: Likewise. - * ada/acats-3/tests/c3/c3a10032.am: Likewise. - * ada/acats-3/tests/c3/c3a10040.a: Likewise. - * ada/acats-3/tests/c3/c3a10041.a: Likewise. - * ada/acats-3/tests/c3/c3a10042.am: Likewise. - * ada/acats-3/tests/c3/c3a2001.a: Likewise. - * ada/acats-3/tests/c3/c3a2002.a: Likewise. - * ada/acats-3/tests/c3/c3a2003.a: Likewise. - * ada/acats-3/tests/c3/c3a2004.a: Likewise. - * ada/acats-3/tests/c3/c3a2a01.a: Likewise. - * ada/acats-3/tests/c3/c3a2a02.a: Likewise. - * ada/acats-3/tests/c4/c410001.a: Likewise. - * ada/acats-3/tests/c4/c41101d.ada: Likewise. - * ada/acats-3/tests/c4/c41103a.ada: Likewise. - * ada/acats-3/tests/c4/c41103b.ada: Likewise. - * ada/acats-3/tests/c4/c41104a.ada: Likewise. - * ada/acats-3/tests/c4/c41105a.ada: Likewise. - * ada/acats-3/tests/c4/c41107a.ada: Likewise. - * ada/acats-3/tests/c4/c41201d.ada: Likewise. - * ada/acats-3/tests/c4/c41203a.ada: Likewise. - * ada/acats-3/tests/c4/c41203b.ada: Likewise. - * ada/acats-3/tests/c4/c41204a.ada: Likewise. - * ada/acats-3/tests/c4/c41205a.ada: Likewise. - * ada/acats-3/tests/c4/c41206a.ada: Likewise. - * ada/acats-3/tests/c4/c41207a.ada: Likewise. - * ada/acats-3/tests/c4/c413001.a: Likewise. - * ada/acats-3/tests/c4/c413002.a: Likewise. - * ada/acats-3/tests/c4/c413003.a: Likewise. - * ada/acats-3/tests/c4/c413004.a: Likewise. - * ada/acats-3/tests/c4/c413005.a: Likewise. - * ada/acats-3/tests/c4/c413006.a: Likewise. - * ada/acats-3/tests/c4/c41301a.ada: Likewise. - * ada/acats-3/tests/c4/c41303a.ada: Likewise. - * ada/acats-3/tests/c4/c41303b.ada: Likewise. - * ada/acats-3/tests/c4/c41303c.ada: Likewise. - * ada/acats-3/tests/c4/c41303e.ada: Likewise. - * ada/acats-3/tests/c4/c41303f.ada: Likewise. - * ada/acats-3/tests/c4/c41303g.ada: Likewise. - * ada/acats-3/tests/c4/c41303i.ada: Likewise. - * ada/acats-3/tests/c4/c41303j.ada: Likewise. - * ada/acats-3/tests/c4/c41303k.ada: Likewise. - * ada/acats-3/tests/c4/c41303m.ada: Likewise. - * ada/acats-3/tests/c4/c41303n.ada: Likewise. - * ada/acats-3/tests/c4/c41303o.ada: Likewise. - * ada/acats-3/tests/c4/c41303q.ada: Likewise. - * ada/acats-3/tests/c4/c41303r.ada: Likewise. - * ada/acats-3/tests/c4/c41303s.ada: Likewise. - * ada/acats-3/tests/c4/c41303u.ada: Likewise. - * ada/acats-3/tests/c4/c41303v.ada: Likewise. - * ada/acats-3/tests/c4/c41303w.ada: Likewise. - * ada/acats-3/tests/c4/c41304a.ada: Likewise. - * ada/acats-3/tests/c4/c41304b.ada: Likewise. - * ada/acats-3/tests/c4/c41306b.ada: Likewise. - * ada/acats-3/tests/c4/c41306c.ada: Likewise. - * ada/acats-3/tests/c4/c41307d.ada: Likewise. - * ada/acats-3/tests/c4/c41309a.ada: Likewise. - * ada/acats-3/tests/c4/c41320a.ada: Likewise. - * ada/acats-3/tests/c4/c41321a.ada: Likewise. - * ada/acats-3/tests/c4/c41322a.ada: Likewise. - * ada/acats-3/tests/c4/c41323a.ada: Likewise. - * ada/acats-3/tests/c4/c41324a.ada: Likewise. - * ada/acats-3/tests/c4/c41325a.ada: Likewise. - * ada/acats-3/tests/c4/c41326a.ada: Likewise. - * ada/acats-3/tests/c4/c41327a.ada: Likewise. - * ada/acats-3/tests/c4/c41328a.ada: Likewise. - * ada/acats-3/tests/c4/c41401a.ada: Likewise. - * ada/acats-3/tests/c4/c41402a.ada: Likewise. - * ada/acats-3/tests/c4/c41404a.ada: Likewise. - * ada/acats-3/tests/c4/c420001.a: Likewise. - * ada/acats-3/tests/c4/c42006a.ada: Likewise. - * ada/acats-3/tests/c4/c42007e.ada: Likewise. - * ada/acats-3/tests/c4/c43003a.ada: Likewise. - * ada/acats-3/tests/c4/c43004a.ada: Likewise. - * ada/acats-3/tests/c4/c43004c.ada: Likewise. - * ada/acats-3/tests/c4/c431001.a: Likewise. - * ada/acats-3/tests/c4/c43103a.ada: Likewise. - * ada/acats-3/tests/c4/c43103b.ada: Likewise. - * ada/acats-3/tests/c4/c43104a.ada: Likewise. - * ada/acats-3/tests/c4/c43105a.ada: Likewise. - * ada/acats-3/tests/c4/c43105b.ada: Likewise. - * ada/acats-3/tests/c4/c43106a.ada: Likewise. - * ada/acats-3/tests/c4/c43107a.ada: Likewise. - * ada/acats-3/tests/c4/c43108a.ada: Likewise. - * ada/acats-3/tests/c4/c431a01.a: Likewise. - * ada/acats-3/tests/c4/c431a02.a: Likewise. - * ada/acats-3/tests/c4/c431a03.a: Likewise. - * ada/acats-3/tests/c4/c432001.a: Likewise. - * ada/acats-3/tests/c4/c432002.a: Likewise. - * ada/acats-3/tests/c4/c432003.a: Likewise. - * ada/acats-3/tests/c4/c432004.a: Likewise. - * ada/acats-3/tests/c4/c432005.a: Likewise. - * ada/acats-3/tests/c4/c43204a.ada: Likewise. - * ada/acats-3/tests/c4/c43204c.ada: Likewise. - * ada/acats-3/tests/c4/c43204e.ada: Likewise. - * ada/acats-3/tests/c4/c43204f.ada: Likewise. - * ada/acats-3/tests/c4/c43204g.ada: Likewise. - * ada/acats-3/tests/c4/c43204h.ada: Likewise. - * ada/acats-3/tests/c4/c43204i.ada: Likewise. - * ada/acats-3/tests/c4/c43205a.ada: Likewise. - * ada/acats-3/tests/c4/c43205b.ada: Likewise. - * ada/acats-3/tests/c4/c43205c.ada: Likewise. - * ada/acats-3/tests/c4/c43205d.ada: Likewise. - * ada/acats-3/tests/c4/c43205e.ada: Likewise. - * ada/acats-3/tests/c4/c43205g.ada: Likewise. - * ada/acats-3/tests/c4/c43205h.ada: Likewise. - * ada/acats-3/tests/c4/c43205i.ada: Likewise. - * ada/acats-3/tests/c4/c43205j.ada: Likewise. - * ada/acats-3/tests/c4/c43205k.ada: Likewise. - * ada/acats-3/tests/c4/c43206a.ada: Likewise. - * ada/acats-3/tests/c4/c43207b.ada: Likewise. - * ada/acats-3/tests/c4/c43207d.ada: Likewise. - * ada/acats-3/tests/c4/c43208a.ada: Likewise. - * ada/acats-3/tests/c4/c43208b.ada: Likewise. - * ada/acats-3/tests/c4/c43209a.ada: Likewise. - * ada/acats-3/tests/c4/c43210a.ada: Likewise. - * ada/acats-3/tests/c4/c43211a.ada: Likewise. - * ada/acats-3/tests/c4/c43212a.ada: Likewise. - * ada/acats-3/tests/c4/c43212c.ada: Likewise. - * ada/acats-3/tests/c4/c43214a.ada: Likewise. - * ada/acats-3/tests/c4/c43214b.ada: Likewise. - * ada/acats-3/tests/c4/c43214c.ada: Likewise. - * ada/acats-3/tests/c4/c43214d.ada: Likewise. - * ada/acats-3/tests/c4/c43214e.ada: Likewise. - * ada/acats-3/tests/c4/c43214f.ada: Likewise. - * ada/acats-3/tests/c4/c43215a.ada: Likewise. - * ada/acats-3/tests/c4/c43215b.ada: Likewise. - * ada/acats-3/tests/c4/c43222a.ada: Likewise. - * ada/acats-3/tests/c4/c43224a.ada: Likewise. - * ada/acats-3/tests/c4/c433001.a: Likewise. - * ada/acats-3/tests/c4/c433a01.a: Likewise. - * ada/acats-3/tests/c4/c433a02.a: Likewise. - * ada/acats-3/tests/c4/c433a03.a: Likewise. - * ada/acats-3/tests/c4/c433a04.a: Likewise. - * ada/acats-3/tests/c4/c44003d.ada: Likewise. - * ada/acats-3/tests/c4/c44003f.ada: Likewise. - * ada/acats-3/tests/c4/c44003g.ada: Likewise. - * ada/acats-3/tests/c4/c450001.a: Likewise. - * ada/acats-3/tests/c4/c45112a.ada: Likewise. - * ada/acats-3/tests/c4/c45112b.ada: Likewise. - * ada/acats-3/tests/c4/c45113a.ada: Likewise. - * ada/acats-3/tests/c4/c45114b.ada: Likewise. - * ada/acats-3/tests/c4/c452001.a: Likewise. - * ada/acats-3/tests/c4/c45201a.ada: Likewise. - * ada/acats-3/tests/c4/c45201b.ada: Likewise. - * ada/acats-3/tests/c4/c45202b.ada: Likewise. - * ada/acats-3/tests/c4/c45210a.ada: Likewise. - * ada/acats-3/tests/c4/c45211a.ada: Likewise. - * ada/acats-3/tests/c4/c45220a.ada: Likewise. - * ada/acats-3/tests/c4/c45220b.ada: Likewise. - * ada/acats-3/tests/c4/c45220c.ada: Likewise. - * ada/acats-3/tests/c4/c45220d.ada: Likewise. - * ada/acats-3/tests/c4/c45220e.ada: Likewise. - * ada/acats-3/tests/c4/c45220f.ada: Likewise. - * ada/acats-3/tests/c4/c45231a.ada: Likewise. - * ada/acats-3/tests/c4/c45231b.dep: Likewise. - * ada/acats-3/tests/c4/c45231c.dep: Likewise. - * ada/acats-3/tests/c4/c45231d.tst: Likewise. - * ada/acats-3/tests/c4/c45232b.ada: Likewise. - * ada/acats-3/tests/c4/c45242b.ada: Likewise. - * ada/acats-3/tests/c4/c45251a.ada: Likewise. - * ada/acats-3/tests/c4/c45252a.ada: Likewise. - * ada/acats-3/tests/c4/c45252b.ada: Likewise. - * ada/acats-3/tests/c4/c45253a.ada: Likewise. - * ada/acats-3/tests/c4/c45262a.ada: Likewise. - * ada/acats-3/tests/c4/c45262b.ada: Likewise. - * ada/acats-3/tests/c4/c45262c.ada: Likewise. - * ada/acats-3/tests/c4/c45262d.ada: Likewise. - * ada/acats-3/tests/c4/c45264a.ada: Likewise. - * ada/acats-3/tests/c4/c45264b.ada: Likewise. - * ada/acats-3/tests/c4/c45264c.ada: Likewise. - * ada/acats-3/tests/c4/c45265a.ada: Likewise. - * ada/acats-3/tests/c4/c45271a.ada: Likewise. - * ada/acats-3/tests/c4/c45272a.ada: Likewise. - * ada/acats-3/tests/c4/c45273a.ada: Likewise. - * ada/acats-3/tests/c4/c45274a.ada: Likewise. - * ada/acats-3/tests/c4/c45274b.ada: Likewise. - * ada/acats-3/tests/c4/c45274c.ada: Likewise. - * ada/acats-3/tests/c4/c45281a.ada: Likewise. - * ada/acats-3/tests/c4/c45282a.ada: Likewise. - * ada/acats-3/tests/c4/c45282b.ada: Likewise. - * ada/acats-3/tests/c4/c45291a.ada: Likewise. - * ada/acats-3/tests/c4/c452a01.a: Likewise. - * ada/acats-3/tests/c4/c452a02.a: Likewise. - * ada/acats-3/tests/c4/c452a03.a: Likewise. - * ada/acats-3/tests/c4/c453001.a: Likewise. - * ada/acats-3/tests/c4/c45303a.ada: Likewise. - * ada/acats-3/tests/c4/c45304a.ada: Likewise. - * ada/acats-3/tests/c4/c45304b.dep: Likewise. - * ada/acats-3/tests/c4/c45304c.dep: Likewise. - * ada/acats-3/tests/c4/c45322a.ada: Likewise. - * ada/acats-3/tests/c4/c45323a.ada: Likewise. - * ada/acats-3/tests/c4/c45331a.ada: Likewise. - * ada/acats-3/tests/c4/c45342a.ada: Likewise. - * ada/acats-3/tests/c4/c45343a.ada: Likewise. - * ada/acats-3/tests/c4/c45344a.ada: Likewise. - * ada/acats-3/tests/c4/c45345b.ada: Likewise. - * ada/acats-3/tests/c4/c45347a.ada: Likewise. - * ada/acats-3/tests/c4/c45347b.ada: Likewise. - * ada/acats-3/tests/c4/c45347c.ada: Likewise. - * ada/acats-3/tests/c4/c45347d.ada: Likewise. - * ada/acats-3/tests/c4/c45411a.ada: Likewise. - * ada/acats-3/tests/c4/c45411b.dep: Likewise. - * ada/acats-3/tests/c4/c45411c.dep: Likewise. - * ada/acats-3/tests/c4/c45411d.ada: Likewise. - * ada/acats-3/tests/c4/c45413a.ada: Likewise. - * ada/acats-3/tests/c4/c45431a.ada: Likewise. - * ada/acats-3/tests/c4/c455001.a: Likewise. - * ada/acats-3/tests/c4/c45502b.dep: Likewise. - * ada/acats-3/tests/c4/c45502c.dep: Likewise. - * ada/acats-3/tests/c4/c45503a.ada: Likewise. - * ada/acats-3/tests/c4/c45503b.dep: Likewise. - * ada/acats-3/tests/c4/c45503c.dep: Likewise. - * ada/acats-3/tests/c4/c45504a.ada: Likewise. - * ada/acats-3/tests/c4/c45504b.dep: Likewise. - * ada/acats-3/tests/c4/c45504c.dep: Likewise. - * ada/acats-3/tests/c4/c45504d.ada: Likewise. - * ada/acats-3/tests/c4/c45504e.dep: Likewise. - * ada/acats-3/tests/c4/c45504f.dep: Likewise. - * ada/acats-3/tests/c4/c45505a.ada: Likewise. - * ada/acats-3/tests/c4/c45523a.ada: Likewise. - * ada/acats-3/tests/c4/c45531a.ada: Likewise. - * ada/acats-3/tests/c4/c45531b.ada: Likewise. - * ada/acats-3/tests/c4/c45531c.ada: Likewise. - * ada/acats-3/tests/c4/c45531d.ada: Likewise. - * ada/acats-3/tests/c4/c45531e.ada: Likewise. - * ada/acats-3/tests/c4/c45531f.ada: Likewise. - * ada/acats-3/tests/c4/c45531g.ada: Likewise. - * ada/acats-3/tests/c4/c45531h.ada: Likewise. - * ada/acats-3/tests/c4/c45531i.ada: Likewise. - * ada/acats-3/tests/c4/c45531j.ada: Likewise. - * ada/acats-3/tests/c4/c45531k.ada: Likewise. - * ada/acats-3/tests/c4/c45531l.ada: Likewise. - * ada/acats-3/tests/c4/c45531m.dep: Likewise. - * ada/acats-3/tests/c4/c45531n.dep: Likewise. - * ada/acats-3/tests/c4/c45531o.dep: Likewise. - * ada/acats-3/tests/c4/c45531p.dep: Likewise. - * ada/acats-3/tests/c4/c45532a.ada: Likewise. - * ada/acats-3/tests/c4/c45532b.ada: Likewise. - * ada/acats-3/tests/c4/c45532c.ada: Likewise. - * ada/acats-3/tests/c4/c45532d.ada: Likewise. - * ada/acats-3/tests/c4/c45532e.ada: Likewise. - * ada/acats-3/tests/c4/c45532f.ada: Likewise. - * ada/acats-3/tests/c4/c45532g.ada: Likewise. - * ada/acats-3/tests/c4/c45532h.ada: Likewise. - * ada/acats-3/tests/c4/c45532i.ada: Likewise. - * ada/acats-3/tests/c4/c45532j.ada: Likewise. - * ada/acats-3/tests/c4/c45532k.ada: Likewise. - * ada/acats-3/tests/c4/c45532l.ada: Likewise. - * ada/acats-3/tests/c4/c45532m.dep: Likewise. - * ada/acats-3/tests/c4/c45532n.dep: Likewise. - * ada/acats-3/tests/c4/c45532o.dep: Likewise. - * ada/acats-3/tests/c4/c45532p.dep: Likewise. - * ada/acats-3/tests/c4/c45534b.ada: Likewise. - * ada/acats-3/tests/c4/c45536a.dep: Likewise. - * ada/acats-3/tests/c4/c456001.a: Likewise. - * ada/acats-3/tests/c4/c45611a.ada: Likewise. - * ada/acats-3/tests/c4/c45611b.dep: Likewise. - * ada/acats-3/tests/c4/c45611c.dep: Likewise. - * ada/acats-3/tests/c4/c45613a.ada: Likewise. - * ada/acats-3/tests/c4/c45613b.dep: Likewise. - * ada/acats-3/tests/c4/c45613c.dep: Likewise. - * ada/acats-3/tests/c4/c45614a.ada: Likewise. - * ada/acats-3/tests/c4/c45614b.dep: Likewise. - * ada/acats-3/tests/c4/c45614c.dep: Likewise. - * ada/acats-3/tests/c4/c45631a.ada: Likewise. - * ada/acats-3/tests/c4/c45631b.dep: Likewise. - * ada/acats-3/tests/c4/c45631c.dep: Likewise. - * ada/acats-3/tests/c4/c45632a.ada: Likewise. - * ada/acats-3/tests/c4/c45632b.dep: Likewise. - * ada/acats-3/tests/c4/c45632c.dep: Likewise. - * ada/acats-3/tests/c4/c45651a.ada: Likewise. - * ada/acats-3/tests/c4/c45662a.ada: Likewise. - * ada/acats-3/tests/c4/c45662b.ada: Likewise. - * ada/acats-3/tests/c4/c45672a.ada: Likewise. - * ada/acats-3/tests/c4/c460001.a: Likewise. - * ada/acats-3/tests/c4/c460002.a: Likewise. - * ada/acats-3/tests/c4/c460004.a: Likewise. - * ada/acats-3/tests/c4/c460005.a: Likewise. - * ada/acats-3/tests/c4/c460006.a: Likewise. - * ada/acats-3/tests/c4/c460007.a: Likewise. - * ada/acats-3/tests/c4/c460008.a: Likewise. - * ada/acats-3/tests/c4/c460009.a: Likewise. - * ada/acats-3/tests/c4/c460010.a: Likewise. - * ada/acats-3/tests/c4/c460011.a: Likewise. - * ada/acats-3/tests/c4/c460012.a: Likewise. - * ada/acats-3/tests/c4/c460013.a: Likewise. - * ada/acats-3/tests/c4/c460014.a: Likewise. - * ada/acats-3/tests/c4/c460015.a: Likewise. - * ada/acats-3/tests/c4/c46011a.ada: Likewise. - * ada/acats-3/tests/c4/c46013a.ada: Likewise. - * ada/acats-3/tests/c4/c46014a.ada: Likewise. - * ada/acats-3/tests/c4/c46021a.ada: Likewise. - * ada/acats-3/tests/c4/c46024a.ada: Likewise. - * ada/acats-3/tests/c4/c46031a.ada: Likewise. - * ada/acats-3/tests/c4/c46032a.ada: Likewise. - * ada/acats-3/tests/c4/c46033a.ada: Likewise. - * ada/acats-3/tests/c4/c46041a.ada: Likewise. - * ada/acats-3/tests/c4/c46042a.ada: Likewise. - * ada/acats-3/tests/c4/c46043b.ada: Likewise. - * ada/acats-3/tests/c4/c46044b.ada: Likewise. - * ada/acats-3/tests/c4/c46051a.ada: Likewise. - * ada/acats-3/tests/c4/c46051b.ada: Likewise. - * ada/acats-3/tests/c4/c46051c.ada: Likewise. - * ada/acats-3/tests/c4/c46052a.ada: Likewise. - * ada/acats-3/tests/c4/c46053a.ada: Likewise. - * ada/acats-3/tests/c4/c46054a.ada: Likewise. - * ada/acats-3/tests/c4/c460a01.a: Likewise. - * ada/acats-3/tests/c4/c460a02.a: Likewise. - * ada/acats-3/tests/c4/c47002a.ada: Likewise. - * ada/acats-3/tests/c4/c47002b.ada: Likewise. - * ada/acats-3/tests/c4/c47002c.ada: Likewise. - * ada/acats-3/tests/c4/c47002d.ada: Likewise. - * ada/acats-3/tests/c4/c47003a.ada: Likewise. - * ada/acats-3/tests/c4/c47004a.ada: Likewise. - * ada/acats-3/tests/c4/c47005a.ada: Likewise. - * ada/acats-3/tests/c4/c47006a.ada: Likewise. - * ada/acats-3/tests/c4/c47007a.ada: Likewise. - * ada/acats-3/tests/c4/c47008a.ada: Likewise. - * ada/acats-3/tests/c4/c47009a.ada: Likewise. - * ada/acats-3/tests/c4/c47009b.ada: Likewise. - * ada/acats-3/tests/c4/c480001.a: Likewise. - * ada/acats-3/tests/c4/c48004a.ada: Likewise. - * ada/acats-3/tests/c4/c48004b.ada: Likewise. - * ada/acats-3/tests/c4/c48004c.ada: Likewise. - * ada/acats-3/tests/c4/c48004d.ada: Likewise. - * ada/acats-3/tests/c4/c48004e.ada: Likewise. - * ada/acats-3/tests/c4/c48004f.ada: Likewise. - * ada/acats-3/tests/c4/c48005a.ada: Likewise. - * ada/acats-3/tests/c4/c48005b.ada: Likewise. - * ada/acats-3/tests/c4/c48006a.ada: Likewise. - * ada/acats-3/tests/c4/c48006b.ada: Likewise. - * ada/acats-3/tests/c4/c48007a.ada: Likewise. - * ada/acats-3/tests/c4/c48007b.ada: Likewise. - * ada/acats-3/tests/c4/c48007c.ada: Likewise. - * ada/acats-3/tests/c4/c48008a.ada: Likewise. - * ada/acats-3/tests/c4/c48008c.ada: Likewise. - * ada/acats-3/tests/c4/c48009a.ada: Likewise. - * ada/acats-3/tests/c4/c48009b.ada: Likewise. - * ada/acats-3/tests/c4/c48009c.ada: Likewise. - * ada/acats-3/tests/c4/c48009d.ada: Likewise. - * ada/acats-3/tests/c4/c48009e.ada: Likewise. - * ada/acats-3/tests/c4/c48009f.ada: Likewise. - * ada/acats-3/tests/c4/c48009g.ada: Likewise. - * ada/acats-3/tests/c4/c48009h.ada: Likewise. - * ada/acats-3/tests/c4/c48009i.ada: Likewise. - * ada/acats-3/tests/c4/c48009j.ada: Likewise. - * ada/acats-3/tests/c4/c48010a.ada: Likewise. - * ada/acats-3/tests/c4/c48011a.ada: Likewise. - * ada/acats-3/tests/c4/c48012a.ada: Likewise. - * ada/acats-3/tests/c4/c490001.a: Likewise. - * ada/acats-3/tests/c4/c490002.a: Likewise. - * ada/acats-3/tests/c4/c490003.a: Likewise. - * ada/acats-3/tests/c4/c49020a.ada: Likewise. - * ada/acats-3/tests/c4/c49021a.ada: Likewise. - * ada/acats-3/tests/c4/c49022a.ada: Likewise. - * ada/acats-3/tests/c4/c49022b.ada: Likewise. - * ada/acats-3/tests/c4/c49022c.ada: Likewise. - * ada/acats-3/tests/c4/c49023a.ada: Likewise. - * ada/acats-3/tests/c4/c49024a.ada: Likewise. - * ada/acats-3/tests/c4/c49025a.ada: Likewise. - * ada/acats-3/tests/c4/c49026a.ada: Likewise. - * ada/acats-3/tests/c4/c4a005b.ada: Likewise. - * ada/acats-3/tests/c4/c4a006a.ada: Likewise. - * ada/acats-3/tests/c4/c4a007a.tst: Likewise. - * ada/acats-3/tests/c4/c4a010a.ada: Likewise. - * ada/acats-3/tests/c4/c4a010b.ada: Likewise. - * ada/acats-3/tests/c4/c4a011a.ada: Likewise. - * ada/acats-3/tests/c4/c4a012b.ada: Likewise. - * ada/acats-3/tests/c4/c4a013a.ada: Likewise. - * ada/acats-3/tests/c4/c4a014a.ada: Likewise. - * ada/acats-3/tests/c5/c51004a.ada: Likewise. - * ada/acats-3/tests/c5/c52005a.ada: Likewise. - * ada/acats-3/tests/c5/c52005b.ada: Likewise. - * ada/acats-3/tests/c5/c52005c.ada: Likewise. - * ada/acats-3/tests/c5/c52005d.ada: Likewise. - * ada/acats-3/tests/c5/c52005e.ada: Likewise. - * ada/acats-3/tests/c5/c52005f.ada: Likewise. - * ada/acats-3/tests/c5/c52008a.ada: Likewise. - * ada/acats-3/tests/c5/c52008b.ada: Likewise. - * ada/acats-3/tests/c5/c52009a.ada: Likewise. - * ada/acats-3/tests/c5/c52009b.ada: Likewise. - * ada/acats-3/tests/c5/c52010a.ada: Likewise. - * ada/acats-3/tests/c5/c52011a.ada: Likewise. - * ada/acats-3/tests/c5/c52011b.ada: Likewise. - * ada/acats-3/tests/c5/c52101a.ada: Likewise. - * ada/acats-3/tests/c5/c52102a.ada: Likewise. - * ada/acats-3/tests/c5/c52102b.ada: Likewise. - * ada/acats-3/tests/c5/c52102c.ada: Likewise. - * ada/acats-3/tests/c5/c52102d.ada: Likewise. - * ada/acats-3/tests/c5/c52103a.ada: Likewise. - * ada/acats-3/tests/c5/c52103b.ada: Likewise. - * ada/acats-3/tests/c5/c52103c.ada: Likewise. - * ada/acats-3/tests/c5/c52103f.ada: Likewise. - * ada/acats-3/tests/c5/c52103g.ada: Likewise. - * ada/acats-3/tests/c5/c52103h.ada: Likewise. - * ada/acats-3/tests/c5/c52103k.ada: Likewise. - * ada/acats-3/tests/c5/c52103l.ada: Likewise. - * ada/acats-3/tests/c5/c52103m.ada: Likewise. - * ada/acats-3/tests/c5/c52103p.ada: Likewise. - * ada/acats-3/tests/c5/c52103q.ada: Likewise. - * ada/acats-3/tests/c5/c52103r.ada: Likewise. - * ada/acats-3/tests/c5/c52103x.ada: Likewise. - * ada/acats-3/tests/c5/c52104a.ada: Likewise. - * ada/acats-3/tests/c5/c52104b.ada: Likewise. - * ada/acats-3/tests/c5/c52104c.ada: Likewise. - * ada/acats-3/tests/c5/c52104f.ada: Likewise. - * ada/acats-3/tests/c5/c52104g.ada: Likewise. - * ada/acats-3/tests/c5/c52104h.ada: Likewise. - * ada/acats-3/tests/c5/c52104k.ada: Likewise. - * ada/acats-3/tests/c5/c52104l.ada: Likewise. - * ada/acats-3/tests/c5/c52104m.ada: Likewise. - * ada/acats-3/tests/c5/c52104p.ada: Likewise. - * ada/acats-3/tests/c5/c52104q.ada: Likewise. - * ada/acats-3/tests/c5/c52104r.ada: Likewise. - * ada/acats-3/tests/c5/c52104x.ada: Likewise. - * ada/acats-3/tests/c5/c52104y.ada: Likewise. - * ada/acats-3/tests/c5/c53007a.ada: Likewise. - * ada/acats-3/tests/c5/c540001.a: Likewise. - * ada/acats-3/tests/c5/c540002.a: Likewise. - * ada/acats-3/tests/c5/c54a03a.ada: Likewise. - * ada/acats-3/tests/c5/c54a04a.ada: Likewise. - * ada/acats-3/tests/c5/c54a07a.ada: Likewise. - * ada/acats-3/tests/c5/c54a13a.ada: Likewise. - * ada/acats-3/tests/c5/c54a13b.ada: Likewise. - * ada/acats-3/tests/c5/c54a13c.ada: Likewise. - * ada/acats-3/tests/c5/c54a13d.ada: Likewise. - * ada/acats-3/tests/c5/c54a22a.ada: Likewise. - * ada/acats-3/tests/c5/c54a23a.ada: Likewise. - * ada/acats-3/tests/c5/c54a24a.ada: Likewise. - * ada/acats-3/tests/c5/c54a24b.ada: Likewise. - * ada/acats-3/tests/c5/c54a42a.ada: Likewise. - * ada/acats-3/tests/c5/c54a42b.ada: Likewise. - * ada/acats-3/tests/c5/c54a42c.ada: Likewise. - * ada/acats-3/tests/c5/c54a42d.ada: Likewise. - * ada/acats-3/tests/c5/c54a42e.ada: Likewise. - * ada/acats-3/tests/c5/c54a42f.ada: Likewise. - * ada/acats-3/tests/c5/c54a42g.ada: Likewise. - * ada/acats-3/tests/c5/c55b03a.ada: Likewise. - * ada/acats-3/tests/c5/c55b04a.ada: Likewise. - * ada/acats-3/tests/c5/c55b05a.ada: Likewise. - * ada/acats-3/tests/c5/c55b06a.ada: Likewise. - * ada/acats-3/tests/c5/c55b06b.ada: Likewise. - * ada/acats-3/tests/c5/c55b07a.dep: Likewise. - * ada/acats-3/tests/c5/c55b07b.dep: Likewise. - * ada/acats-3/tests/c5/c55b10a.ada: Likewise. - * ada/acats-3/tests/c5/c55b11a.ada: Likewise. - * ada/acats-3/tests/c5/c55b11b.ada: Likewise. - * ada/acats-3/tests/c5/c55b15a.ada: Likewise. - * ada/acats-3/tests/c5/c55b16a.ada: Likewise. - * ada/acats-3/tests/c5/c55c02a.ada: Likewise. - * ada/acats-3/tests/c5/c55c02b.ada: Likewise. - * ada/acats-3/tests/c5/c56002a.ada: Likewise. - * ada/acats-3/tests/c5/c57003a.ada: Likewise. - * ada/acats-3/tests/c5/c57004a.ada: Likewise. - * ada/acats-3/tests/c5/c57004b.ada: Likewise. - * ada/acats-3/tests/c5/c58004c.ada: Likewise. - * ada/acats-3/tests/c5/c58004d.ada: Likewise. - * ada/acats-3/tests/c5/c58004g.ada: Likewise. - * ada/acats-3/tests/c5/c58005a.ada: Likewise. - * ada/acats-3/tests/c5/c58005b.ada: Likewise. - * ada/acats-3/tests/c5/c58005h.ada: Likewise. - * ada/acats-3/tests/c5/c58006a.ada: Likewise. - * ada/acats-3/tests/c5/c58006b.ada: Likewise. - * ada/acats-3/tests/c5/c59002a.ada: Likewise. - * ada/acats-3/tests/c5/c59002b.ada: Likewise. - * ada/acats-3/tests/c5/c59002c.ada: Likewise. - * ada/acats-3/tests/c6/c61008a.ada: Likewise. - * ada/acats-3/tests/c6/c61009a.ada: Likewise. - * ada/acats-3/tests/c6/c61010a.ada: Likewise. - * ada/acats-3/tests/c6/c620001.a: Likewise. - * ada/acats-3/tests/c6/c620002.a: Likewise. - * ada/acats-3/tests/c6/c62002a.ada: Likewise. - * ada/acats-3/tests/c6/c62003a.ada: Likewise. - * ada/acats-3/tests/c6/c62003b.ada: Likewise. - * ada/acats-3/tests/c6/c62004a.ada: Likewise. - * ada/acats-3/tests/c6/c62006a.ada: Likewise. - * ada/acats-3/tests/c6/c631001.a: Likewise. - * ada/acats-3/tests/c6/c640001.a: Likewise. - * ada/acats-3/tests/c6/c640002.a: Likewise. - * ada/acats-3/tests/c6/c64002b.ada: Likewise. - * ada/acats-3/tests/c6/c64004g.ada: Likewise. - * ada/acats-3/tests/c6/c64005a.ada: Likewise. - * ada/acats-3/tests/c6/c64005b.ada: Likewise. - * ada/acats-3/tests/c6/c64005c.ada: Likewise. - * ada/acats-3/tests/c6/c64005d0.ada: Likewise. - * ada/acats-3/tests/c6/c64005da.ada: Likewise. - * ada/acats-3/tests/c6/c64005db.ada: Likewise. - * ada/acats-3/tests/c6/c64005dc.ada: Likewise. - * ada/acats-3/tests/c6/c641001.a: Likewise. - * ada/acats-3/tests/c6/c64103b.ada: Likewise. - * ada/acats-3/tests/c6/c64103c.ada: Likewise. - * ada/acats-3/tests/c6/c64103d.ada: Likewise. - * ada/acats-3/tests/c6/c64103e.ada: Likewise. - * ada/acats-3/tests/c6/c64103f.ada: Likewise. - * ada/acats-3/tests/c6/c64104a.ada: Likewise. - * ada/acats-3/tests/c6/c64104b.ada: Likewise. - * ada/acats-3/tests/c6/c64104c.ada: Likewise. - * ada/acats-3/tests/c6/c64104d.ada: Likewise. - * ada/acats-3/tests/c6/c64104e.ada: Likewise. - * ada/acats-3/tests/c6/c64104f.ada: Likewise. - * ada/acats-3/tests/c6/c64104g.ada: Likewise. - * ada/acats-3/tests/c6/c64104h.ada: Likewise. - * ada/acats-3/tests/c6/c64104i.ada: Likewise. - * ada/acats-3/tests/c6/c64104j.ada: Likewise. - * ada/acats-3/tests/c6/c64104k.ada: Likewise. - * ada/acats-3/tests/c6/c64104l.ada: Likewise. - * ada/acats-3/tests/c6/c64104m.ada: Likewise. - * ada/acats-3/tests/c6/c64104n.ada: Likewise. - * ada/acats-3/tests/c6/c64104o.ada: Likewise. - * ada/acats-3/tests/c6/c64105a.ada: Likewise. - * ada/acats-3/tests/c6/c64105b.ada: Likewise. - * ada/acats-3/tests/c6/c64105c.ada: Likewise. - * ada/acats-3/tests/c6/c64105d.ada: Likewise. - * ada/acats-3/tests/c6/c64106a.ada: Likewise. - * ada/acats-3/tests/c6/c64106b.ada: Likewise. - * ada/acats-3/tests/c6/c64106c.ada: Likewise. - * ada/acats-3/tests/c6/c64106d.ada: Likewise. - * ada/acats-3/tests/c6/c64107a.ada: Likewise. - * ada/acats-3/tests/c6/c64108a.ada: Likewise. - * ada/acats-3/tests/c6/c64109a.ada: Likewise. - * ada/acats-3/tests/c6/c64109b.ada: Likewise. - * ada/acats-3/tests/c6/c64109c.ada: Likewise. - * ada/acats-3/tests/c6/c64109d.ada: Likewise. - * ada/acats-3/tests/c6/c64109e.ada: Likewise. - * ada/acats-3/tests/c6/c64109f.ada: Likewise. - * ada/acats-3/tests/c6/c64109g.ada: Likewise. - * ada/acats-3/tests/c6/c64109h.ada: Likewise. - * ada/acats-3/tests/c6/c64109i.ada: Likewise. - * ada/acats-3/tests/c6/c64109j.ada: Likewise. - * ada/acats-3/tests/c6/c64109k.ada: Likewise. - * ada/acats-3/tests/c6/c64109l.ada: Likewise. - * ada/acats-3/tests/c6/c64201b.ada: Likewise. - * ada/acats-3/tests/c6/c64201c.ada: Likewise. - * ada/acats-3/tests/c6/c64202a.ada: Likewise. - * ada/acats-3/tests/c6/c650002.a: Likewise. - * ada/acats-3/tests/c6/c650003.a: Likewise. - * ada/acats-3/tests/c6/c65003a.ada: Likewise. - * ada/acats-3/tests/c6/c65003b.ada: Likewise. - * ada/acats-3/tests/c6/c650a01.a: Likewise. - * ada/acats-3/tests/c6/c651001.a: Likewise. - * ada/acats-3/tests/c6/c660001.a: Likewise. - * ada/acats-3/tests/c6/c66002a.ada: Likewise. - * ada/acats-3/tests/c6/c66002c.ada: Likewise. - * ada/acats-3/tests/c6/c66002d.ada: Likewise. - * ada/acats-3/tests/c6/c66002e.ada: Likewise. - * ada/acats-3/tests/c6/c66002f.ada: Likewise. - * ada/acats-3/tests/c6/c66002g.ada: Likewise. - * ada/acats-3/tests/c6/c67002a.ada: Likewise. - * ada/acats-3/tests/c6/c67002b.ada: Likewise. - * ada/acats-3/tests/c6/c67002c.ada: Likewise. - * ada/acats-3/tests/c6/c67002d.ada: Likewise. - * ada/acats-3/tests/c6/c67002e.ada: Likewise. - * ada/acats-3/tests/c6/c67003f.ada: Likewise. - * ada/acats-3/tests/c6/c67005a.ada: Likewise. - * ada/acats-3/tests/c6/c67005b.ada: Likewise. - * ada/acats-3/tests/c6/c67005c.ada: Likewise. - * ada/acats-3/tests/c6/c67005d.ada: Likewise. - * ada/acats-3/tests/c7/c72001b.ada: Likewise. - * ada/acats-3/tests/c7/c72002a.ada: Likewise. - * ada/acats-3/tests/c7/c730001.a: Likewise. - * ada/acats-3/tests/c7/c730002.a: Likewise. - * ada/acats-3/tests/c7/c730003.a: Likewise. - * ada/acats-3/tests/c7/c730004.a: Likewise. - * ada/acats-3/tests/c7/c73002a.ada: Likewise. - * ada/acats-3/tests/c7/c730a01.a: Likewise. - * ada/acats-3/tests/c7/c730a02.a: Likewise. - * ada/acats-3/tests/c7/c731001.a: Likewise. - * ada/acats-3/tests/c7/c74004a.ada: Likewise. - * ada/acats-3/tests/c7/c74203a.ada: Likewise. - * ada/acats-3/tests/c7/c74206a.ada: Likewise. - * ada/acats-3/tests/c7/c74207b.ada: Likewise. - * ada/acats-3/tests/c7/c74208a.ada: Likewise. - * ada/acats-3/tests/c7/c74208b.ada: Likewise. - * ada/acats-3/tests/c7/c74209a.ada: Likewise. - * ada/acats-3/tests/c7/c74210a.ada: Likewise. - * ada/acats-3/tests/c7/c74211a.ada: Likewise. - * ada/acats-3/tests/c7/c74211b.ada: Likewise. - * ada/acats-3/tests/c7/c74302a.ada: Likewise. - * ada/acats-3/tests/c7/c74302b.ada: Likewise. - * ada/acats-3/tests/c7/c74305a.ada: Likewise. - * ada/acats-3/tests/c7/c74305b.ada: Likewise. - * ada/acats-3/tests/c7/c74306a.ada: Likewise. - * ada/acats-3/tests/c7/c74307a.ada: Likewise. - * ada/acats-3/tests/c7/c74401d.ada: Likewise. - * ada/acats-3/tests/c7/c74401e.ada: Likewise. - * ada/acats-3/tests/c7/c74401k.ada: Likewise. - * ada/acats-3/tests/c7/c74401q.ada: Likewise. - * ada/acats-3/tests/c7/c74402a.ada: Likewise. - * ada/acats-3/tests/c7/c74402b.ada: Likewise. - * ada/acats-3/tests/c7/c74406a.ada: Likewise. - * ada/acats-3/tests/c7/c74407b.ada: Likewise. - * ada/acats-3/tests/c7/c74409b.ada: Likewise. - * ada/acats-3/tests/c7/c750b01.a: Likewise. - * ada/acats-3/tests/c7/c760001.a: Likewise. - * ada/acats-3/tests/c7/c760002.a: Likewise. - * ada/acats-3/tests/c7/c760007.a: Likewise. - * ada/acats-3/tests/c7/c760009.a: Likewise. - * ada/acats-3/tests/c7/c760010.a: Likewise. - * ada/acats-3/tests/c7/c760011.a: Likewise. - * ada/acats-3/tests/c7/c760012.a: Likewise. - * ada/acats-3/tests/c7/c760013.a: Likewise. - * ada/acats-3/tests/c7/c760015.a: Likewise. - * ada/acats-3/tests/c7/c760a02.a: Likewise. - * ada/acats-3/tests/c7/c761001.a: Likewise. - * ada/acats-3/tests/c7/c761002.a: Likewise. - * ada/acats-3/tests/c7/c761003.a: Likewise. - * ada/acats-3/tests/c7/c761004.a: Likewise. - * ada/acats-3/tests/c7/c761005.a: Likewise. - * ada/acats-3/tests/c7/c761006.a: Likewise. - * ada/acats-3/tests/c7/c761007.a: Likewise. - * ada/acats-3/tests/c7/c761010.a: Likewise. - * ada/acats-3/tests/c7/c761011.a: Likewise. - * ada/acats-3/tests/c7/c761012.a: Likewise. - * ada/acats-3/tests/c7/c761013.a: Likewise. - * ada/acats-3/tests/c8/c83007a.ada: Likewise. - * ada/acats-3/tests/c8/c83012d.ada: Likewise. - * ada/acats-3/tests/c8/c83022a.ada: Likewise. - * ada/acats-3/tests/c8/c83022g0.ada: Likewise. - * ada/acats-3/tests/c8/c83022g1.ada: Likewise. - * ada/acats-3/tests/c8/c83023a.ada: Likewise. - * ada/acats-3/tests/c8/c83024a.ada: Likewise. - * ada/acats-3/tests/c8/c83024e0.ada: Likewise. - * ada/acats-3/tests/c8/c83024e1.ada: Likewise. - * ada/acats-3/tests/c8/c83025a.ada: Likewise. - * ada/acats-3/tests/c8/c83025c.ada: Likewise. - * ada/acats-3/tests/c8/c83027a.ada: Likewise. - * ada/acats-3/tests/c8/c83027c.ada: Likewise. - * ada/acats-3/tests/c8/c83028a.ada: Likewise. - * ada/acats-3/tests/c8/c83029a.ada: Likewise. - * ada/acats-3/tests/c8/c83030a.ada: Likewise. - * ada/acats-3/tests/c8/c83030c.ada: Likewise. - * ada/acats-3/tests/c8/c83031a.ada: Likewise. - * ada/acats-3/tests/c8/c83031c.ada: Likewise. - * ada/acats-3/tests/c8/c83031e.ada: Likewise. - * ada/acats-3/tests/c8/c83032a.ada: Likewise. - * ada/acats-3/tests/c8/c83033a.ada: Likewise. - * ada/acats-3/tests/c8/c83051a.ada: Likewise. - * ada/acats-3/tests/c8/c83b02a.ada: Likewise. - * ada/acats-3/tests/c8/c83b02b.ada: Likewise. - * ada/acats-3/tests/c8/c83e02a.ada: Likewise. - * ada/acats-3/tests/c8/c83e02b.ada: Likewise. - * ada/acats-3/tests/c8/c83e03a.ada: Likewise. - * ada/acats-3/tests/c8/c83f01a.ada: Likewise. - * ada/acats-3/tests/c8/c83f01b.ada: Likewise. - * ada/acats-3/tests/c8/c83f01c0.ada: Likewise. - * ada/acats-3/tests/c8/c83f01c1.ada: Likewise. - * ada/acats-3/tests/c8/c83f01c2.ada: Likewise. - * ada/acats-3/tests/c8/c83f01d0.ada: Likewise. - * ada/acats-3/tests/c8/c83f01d1.ada: Likewise. - * ada/acats-3/tests/c8/c83f03a.ada: Likewise. - * ada/acats-3/tests/c8/c83f03b.ada: Likewise. - * ada/acats-3/tests/c8/c83f03c0.ada: Likewise. - * ada/acats-3/tests/c8/c83f03c1.ada: Likewise. - * ada/acats-3/tests/c8/c83f03c2.ada: Likewise. - * ada/acats-3/tests/c8/c83f03d0.ada: Likewise. - * ada/acats-3/tests/c8/c83f03d1.ada: Likewise. - * ada/acats-3/tests/c8/c840001.a: Likewise. - * ada/acats-3/tests/c8/c84002a.ada: Likewise. - * ada/acats-3/tests/c8/c84005a.ada: Likewise. - * ada/acats-3/tests/c8/c84008a.ada: Likewise. - * ada/acats-3/tests/c8/c84009a.ada: Likewise. - * ada/acats-3/tests/c8/c85004b.ada: Likewise. - * ada/acats-3/tests/c8/c85005a.ada: Likewise. - * ada/acats-3/tests/c8/c85005b.ada: Likewise. - * ada/acats-3/tests/c8/c85005c.ada: Likewise. - * ada/acats-3/tests/c8/c85005d.ada: Likewise. - * ada/acats-3/tests/c8/c85005e.ada: Likewise. - * ada/acats-3/tests/c8/c85005f.ada: Likewise. - * ada/acats-3/tests/c8/c85005g.ada: Likewise. - * ada/acats-3/tests/c8/c85006a.ada: Likewise. - * ada/acats-3/tests/c8/c85006b.ada: Likewise. - * ada/acats-3/tests/c8/c85006c.ada: Likewise. - * ada/acats-3/tests/c8/c85006d.ada: Likewise. - * ada/acats-3/tests/c8/c85006e.ada: Likewise. - * ada/acats-3/tests/c8/c85006f.ada: Likewise. - * ada/acats-3/tests/c8/c85006g.ada: Likewise. - * ada/acats-3/tests/c8/c85007a.ada: Likewise. - * ada/acats-3/tests/c8/c85007e.ada: Likewise. - * ada/acats-3/tests/c8/c85009a.ada: Likewise. - * ada/acats-3/tests/c8/c85011a.ada: Likewise. - * ada/acats-3/tests/c8/c85013a.ada: Likewise. - * ada/acats-3/tests/c8/c85014a.ada: Likewise. - * ada/acats-3/tests/c8/c85014b.ada: Likewise. - * ada/acats-3/tests/c8/c85014c.ada: Likewise. - * ada/acats-3/tests/c8/c85017a.ada: Likewise. - * ada/acats-3/tests/c8/c85018a.ada: Likewise. - * ada/acats-3/tests/c8/c85018b.ada: Likewise. - * ada/acats-3/tests/c8/c85019a.ada: Likewise. - * ada/acats-3/tests/c8/c851001.a: Likewise. - * ada/acats-3/tests/c8/c851002.a: Likewise. - * ada/acats-3/tests/c8/c854001.a: Likewise. - * ada/acats-3/tests/c8/c854002.a: Likewise. - * ada/acats-3/tests/c8/c854003.a: Likewise. - * ada/acats-3/tests/c8/c86003a.ada: Likewise. - * ada/acats-3/tests/c8/c86004a.ada: Likewise. - * ada/acats-3/tests/c8/c86004b0.ada: Likewise. - * ada/acats-3/tests/c8/c86004b1.ada: Likewise. - * ada/acats-3/tests/c8/c86004b2.ada: Likewise. - * ada/acats-3/tests/c8/c86004c0.ada: Likewise. - * ada/acats-3/tests/c8/c86004c1.ada: Likewise. - * ada/acats-3/tests/c8/c86004c2.ada: Likewise. - * ada/acats-3/tests/c8/c86006i.ada: Likewise. - * ada/acats-3/tests/c8/c86007a.ada: Likewise. - * ada/acats-3/tests/c8/c87a05a.ada: Likewise. - * ada/acats-3/tests/c8/c87a05b.ada: Likewise. - * ada/acats-3/tests/c8/c87b02a.ada: Likewise. - * ada/acats-3/tests/c8/c87b02b.ada: Likewise. - * ada/acats-3/tests/c8/c87b03a.ada: Likewise. - * ada/acats-3/tests/c8/c87b04a.ada: Likewise. - * ada/acats-3/tests/c8/c87b04b.ada: Likewise. - * ada/acats-3/tests/c8/c87b04c.ada: Likewise. - * ada/acats-3/tests/c8/c87b05a.ada: Likewise. - * ada/acats-3/tests/c8/c87b06a.ada: Likewise. - * ada/acats-3/tests/c8/c87b07a.ada: Likewise. - * ada/acats-3/tests/c8/c87b07b.ada: Likewise. - * ada/acats-3/tests/c8/c87b07c.ada: Likewise. - * ada/acats-3/tests/c8/c87b07d.ada: Likewise. - * ada/acats-3/tests/c8/c87b07e.ada: Likewise. - * ada/acats-3/tests/c8/c87b08a.ada: Likewise. - * ada/acats-3/tests/c8/c87b09a.ada: Likewise. - * ada/acats-3/tests/c8/c87b09c.ada: Likewise. - * ada/acats-3/tests/c8/c87b10a.ada: Likewise. - * ada/acats-3/tests/c8/c87b11a.ada: Likewise. - * ada/acats-3/tests/c8/c87b11b.ada: Likewise. - * ada/acats-3/tests/c8/c87b13a.ada: Likewise. - * ada/acats-3/tests/c8/c87b14a.ada: Likewise. - * ada/acats-3/tests/c8/c87b14b.ada: Likewise. - * ada/acats-3/tests/c8/c87b14c.ada: Likewise. - * ada/acats-3/tests/c8/c87b14d.ada: Likewise. - * ada/acats-3/tests/c8/c87b15a.ada: Likewise. - * ada/acats-3/tests/c8/c87b16a.ada: Likewise. - * ada/acats-3/tests/c8/c87b17a.ada: Likewise. - * ada/acats-3/tests/c8/c87b18a.ada: Likewise. - * ada/acats-3/tests/c8/c87b18b.ada: Likewise. - * ada/acats-3/tests/c8/c87b19a.ada: Likewise. - * ada/acats-3/tests/c8/c87b23a.ada: Likewise. - * ada/acats-3/tests/c8/c87b24a.ada: Likewise. - * ada/acats-3/tests/c8/c87b24b.ada: Likewise. - * ada/acats-3/tests/c8/c87b26b.ada: Likewise. - * ada/acats-3/tests/c8/c87b27a.ada: Likewise. - * ada/acats-3/tests/c8/c87b28a.ada: Likewise. - * ada/acats-3/tests/c8/c87b29a.ada: Likewise. - * ada/acats-3/tests/c8/c87b30a.ada: Likewise. - * ada/acats-3/tests/c8/c87b31a.ada: Likewise. - * ada/acats-3/tests/c8/c87b32a.ada: Likewise. - * ada/acats-3/tests/c8/c87b33a.ada: Likewise. - * ada/acats-3/tests/c8/c87b34a.ada: Likewise. - * ada/acats-3/tests/c8/c87b34b.ada: Likewise. - * ada/acats-3/tests/c8/c87b34c.ada: Likewise. - * ada/acats-3/tests/c8/c87b35c.ada: Likewise. - * ada/acats-3/tests/c8/c87b38a.ada: Likewise. - * ada/acats-3/tests/c8/c87b39a.ada: Likewise. - * ada/acats-3/tests/c8/c87b40a.ada: Likewise. - * ada/acats-3/tests/c8/c87b41a.ada: Likewise. - * ada/acats-3/tests/c8/c87b42a.ada: Likewise. - * ada/acats-3/tests/c8/c87b43a.ada: Likewise. - * ada/acats-3/tests/c8/c87b44a.ada: Likewise. - * ada/acats-3/tests/c8/c87b45a.ada: Likewise. - * ada/acats-3/tests/c8/c87b45c.ada: Likewise. - * ada/acats-3/tests/c8/c87b47a.ada: Likewise. - * ada/acats-3/tests/c8/c87b48a.ada: Likewise. - * ada/acats-3/tests/c8/c87b48b.ada: Likewise. - * ada/acats-3/tests/c8/c87b50a.ada: Likewise. - * ada/acats-3/tests/c8/c87b54a.ada: Likewise. - * ada/acats-3/tests/c8/c87b57a.ada: Likewise. - * ada/acats-3/tests/c8/c87b62a.ada: Likewise. - * ada/acats-3/tests/c8/c87b62b.ada: Likewise. - * ada/acats-3/tests/c8/c87b62c.ada: Likewise. - * ada/acats-3/tests/c8/c87b62d.tst: Likewise. - * ada/acats-3/tests/c9/c910001.a: Likewise. - * ada/acats-3/tests/c9/c910002.a: Likewise. - * ada/acats-3/tests/c9/c910003.a: Likewise. - * ada/acats-3/tests/c9/c91004b.ada: Likewise. - * ada/acats-3/tests/c9/c91004c.ada: Likewise. - * ada/acats-3/tests/c9/c91006a.ada: Likewise. - * ada/acats-3/tests/c9/c91007a.ada: Likewise. - * ada/acats-3/tests/c9/c920001.a: Likewise. - * ada/acats-3/tests/c9/c92002a.ada: Likewise. - * ada/acats-3/tests/c9/c92003a.ada: Likewise. - * ada/acats-3/tests/c9/c92005a.ada: Likewise. - * ada/acats-3/tests/c9/c92005b.ada: Likewise. - * ada/acats-3/tests/c9/c92006a.ada: Likewise. - * ada/acats-3/tests/c9/c930001.a: Likewise. - * ada/acats-3/tests/c9/c93001a.ada: Likewise. - * ada/acats-3/tests/c9/c93002a.ada: Likewise. - * ada/acats-3/tests/c9/c93003a.ada: Likewise. - * ada/acats-3/tests/c9/c93004a.ada: Likewise. - * ada/acats-3/tests/c9/c93004b.ada: Likewise. - * ada/acats-3/tests/c9/c93004c.ada: Likewise. - * ada/acats-3/tests/c9/c93004d.ada: Likewise. - * ada/acats-3/tests/c9/c93004f.ada: Likewise. - * ada/acats-3/tests/c9/c93005a.ada: Likewise. - * ada/acats-3/tests/c9/c93005b.ada: Likewise. - * ada/acats-3/tests/c9/c93005c.ada: Likewise. - * ada/acats-3/tests/c9/c93005d.ada: Likewise. - * ada/acats-3/tests/c9/c93005e.ada: Likewise. - * ada/acats-3/tests/c9/c93005f.ada: Likewise. - * ada/acats-3/tests/c9/c93005g.ada: Likewise. - * ada/acats-3/tests/c9/c93005h.ada: Likewise. - * ada/acats-3/tests/c9/c93006a.ada: Likewise. - * ada/acats-3/tests/c9/c93007a.ada: Likewise. - * ada/acats-3/tests/c9/c93008a.ada: Likewise. - * ada/acats-3/tests/c9/c93008b.ada: Likewise. - * ada/acats-3/tests/c9/c940001.a: Likewise. - * ada/acats-3/tests/c9/c940002.a: Likewise. - * ada/acats-3/tests/c9/c940004.a: Likewise. - * ada/acats-3/tests/c9/c940005.a: Likewise. - * ada/acats-3/tests/c9/c940006.a: Likewise. - * ada/acats-3/tests/c9/c940007.a: Likewise. - * ada/acats-3/tests/c9/c940010.a: Likewise. - * ada/acats-3/tests/c9/c940011.a: Likewise. - * ada/acats-3/tests/c9/c940012.a: Likewise. - * ada/acats-3/tests/c9/c940013.a: Likewise. - * ada/acats-3/tests/c9/c940014.a: Likewise. - * ada/acats-3/tests/c9/c940015.a: Likewise. - * ada/acats-3/tests/c9/c940016.a: Likewise. - * ada/acats-3/tests/c9/c940017.a: Likewise. - * ada/acats-3/tests/c9/c94001a.ada: Likewise. - * ada/acats-3/tests/c9/c94001b.ada: Likewise. - * ada/acats-3/tests/c9/c94001c.ada: Likewise. - * ada/acats-3/tests/c9/c94001e.ada: Likewise. - * ada/acats-3/tests/c9/c94001f.ada: Likewise. - * ada/acats-3/tests/c9/c94001g.ada: Likewise. - * ada/acats-3/tests/c9/c94002a.ada: Likewise. - * ada/acats-3/tests/c9/c94002b.ada: Likewise. - * ada/acats-3/tests/c9/c94002d.ada: Likewise. - * ada/acats-3/tests/c9/c94002e.ada: Likewise. - * ada/acats-3/tests/c9/c94002f.ada: Likewise. - * ada/acats-3/tests/c9/c94002g.ada: Likewise. - * ada/acats-3/tests/c9/c94004a.ada: Likewise. - * ada/acats-3/tests/c9/c94004b.ada: Likewise. - * ada/acats-3/tests/c9/c94004c.ada: Likewise. - * ada/acats-3/tests/c9/c94005a.ada: Likewise. - * ada/acats-3/tests/c9/c94005b.ada: Likewise. - * ada/acats-3/tests/c9/c94006a.ada: Likewise. - * ada/acats-3/tests/c9/c94007a.ada: Likewise. - * ada/acats-3/tests/c9/c94007b.ada: Likewise. - * ada/acats-3/tests/c9/c94008a.ada: Likewise. - * ada/acats-3/tests/c9/c94008b.ada: Likewise. - * ada/acats-3/tests/c9/c94008c.ada: Likewise. - * ada/acats-3/tests/c9/c94008d.ada: Likewise. - * ada/acats-3/tests/c9/c94010a.ada: Likewise. - * ada/acats-3/tests/c9/c94011a.ada: Likewise. - * ada/acats-3/tests/c9/c94020a.ada: Likewise. - * ada/acats-3/tests/c9/c940a03.a: Likewise. - * ada/acats-3/tests/c9/c95008a.ada: Likewise. - * ada/acats-3/tests/c9/c95009a.ada: Likewise. - * ada/acats-3/tests/c9/c95010a.ada: Likewise. - * ada/acats-3/tests/c9/c95011a.ada: Likewise. - * ada/acats-3/tests/c9/c95012a.ada: Likewise. - * ada/acats-3/tests/c9/c95021a.ada: Likewise. - * ada/acats-3/tests/c9/c95022a.ada: Likewise. - * ada/acats-3/tests/c9/c95022b.ada: Likewise. - * ada/acats-3/tests/c9/c95033a.ada: Likewise. - * ada/acats-3/tests/c9/c95033b.ada: Likewise. - * ada/acats-3/tests/c9/c95034a.ada: Likewise. - * ada/acats-3/tests/c9/c95034b.ada: Likewise. - * ada/acats-3/tests/c9/c95035a.ada: Likewise. - * ada/acats-3/tests/c9/c95040a.ada: Likewise. - * ada/acats-3/tests/c9/c95040b.ada: Likewise. - * ada/acats-3/tests/c9/c95040c.ada: Likewise. - * ada/acats-3/tests/c9/c95040d.ada: Likewise. - * ada/acats-3/tests/c9/c95041a.ada: Likewise. - * ada/acats-3/tests/c9/c95065a.ada: Likewise. - * ada/acats-3/tests/c9/c95065b.ada: Likewise. - * ada/acats-3/tests/c9/c95065c.ada: Likewise. - * ada/acats-3/tests/c9/c95065d.ada: Likewise. - * ada/acats-3/tests/c9/c95065e.ada: Likewise. - * ada/acats-3/tests/c9/c95065f.ada: Likewise. - * ada/acats-3/tests/c9/c95066a.ada: Likewise. - * ada/acats-3/tests/c9/c95067a.ada: Likewise. - * ada/acats-3/tests/c9/c95071a.ada: Likewise. - * ada/acats-3/tests/c9/c95072a.ada: Likewise. - * ada/acats-3/tests/c9/c95072b.ada: Likewise. - * ada/acats-3/tests/c9/c95073a.ada: Likewise. - * ada/acats-3/tests/c9/c95074c.ada: Likewise. - * ada/acats-3/tests/c9/c95076a.ada: Likewise. - * ada/acats-3/tests/c9/c95078a.ada: Likewise. - * ada/acats-3/tests/c9/c95080b.ada: Likewise. - * ada/acats-3/tests/c9/c95082g.ada: Likewise. - * ada/acats-3/tests/c9/c95085a.ada: Likewise. - * ada/acats-3/tests/c9/c95085b.ada: Likewise. - * ada/acats-3/tests/c9/c95085c.ada: Likewise. - * ada/acats-3/tests/c9/c95085d.ada: Likewise. - * ada/acats-3/tests/c9/c95085e.ada: Likewise. - * ada/acats-3/tests/c9/c95085f.ada: Likewise. - * ada/acats-3/tests/c9/c95085g.ada: Likewise. - * ada/acats-3/tests/c9/c95085h.ada: Likewise. - * ada/acats-3/tests/c9/c95085i.ada: Likewise. - * ada/acats-3/tests/c9/c95085j.ada: Likewise. - * ada/acats-3/tests/c9/c95085k.ada: Likewise. - * ada/acats-3/tests/c9/c95085l.ada: Likewise. - * ada/acats-3/tests/c9/c95085m.ada: Likewise. - * ada/acats-3/tests/c9/c95085n.ada: Likewise. - * ada/acats-3/tests/c9/c95085o.ada: Likewise. - * ada/acats-3/tests/c9/c95086a.ada: Likewise. - * ada/acats-3/tests/c9/c95086b.ada: Likewise. - * ada/acats-3/tests/c9/c95086c.ada: Likewise. - * ada/acats-3/tests/c9/c95086d.ada: Likewise. - * ada/acats-3/tests/c9/c95086e.ada: Likewise. - * ada/acats-3/tests/c9/c95086f.ada: Likewise. - * ada/acats-3/tests/c9/c95087a.ada: Likewise. - * ada/acats-3/tests/c9/c95087b.ada: Likewise. - * ada/acats-3/tests/c9/c95087c.ada: Likewise. - * ada/acats-3/tests/c9/c95087d.ada: Likewise. - * ada/acats-3/tests/c9/c95088a.ada: Likewise. - * ada/acats-3/tests/c9/c95089a.ada: Likewise. - * ada/acats-3/tests/c9/c95090a.ada: Likewise. - * ada/acats-3/tests/c9/c95092a.ada: Likewise. - * ada/acats-3/tests/c9/c95093a.ada: Likewise. - * ada/acats-3/tests/c9/c95095a.ada: Likewise. - * ada/acats-3/tests/c9/c95095b.ada: Likewise. - * ada/acats-3/tests/c9/c95095c.ada: Likewise. - * ada/acats-3/tests/c9/c95095d.ada: Likewise. - * ada/acats-3/tests/c9/c95095e.ada: Likewise. - * ada/acats-3/tests/c9/c951001.a: Likewise. - * ada/acats-3/tests/c9/c951002.a: Likewise. - * ada/acats-3/tests/c9/c953001.a: Likewise. - * ada/acats-3/tests/c9/c953002.a: Likewise. - * ada/acats-3/tests/c9/c953003.a: Likewise. - * ada/acats-3/tests/c9/c954001.a: Likewise. - * ada/acats-3/tests/c9/c954010.a: Likewise. - * ada/acats-3/tests/c9/c954011.a: Likewise. - * ada/acats-3/tests/c9/c954012.a: Likewise. - * ada/acats-3/tests/c9/c954013.a: Likewise. - * ada/acats-3/tests/c9/c954014.a: Likewise. - * ada/acats-3/tests/c9/c954015.a: Likewise. - * ada/acats-3/tests/c9/c954016.a: Likewise. - * ada/acats-3/tests/c9/c954017.a: Likewise. - * ada/acats-3/tests/c9/c954018.a: Likewise. - * ada/acats-3/tests/c9/c954019.a: Likewise. - * ada/acats-3/tests/c9/c954020.a: Likewise. - * ada/acats-3/tests/c9/c954021.a: Likewise. - * ada/acats-3/tests/c9/c954022.a: Likewise. - * ada/acats-3/tests/c9/c954023.a: Likewise. - * ada/acats-3/tests/c9/c954024.a: Likewise. - * ada/acats-3/tests/c9/c954025.a: Likewise. - * ada/acats-3/tests/c9/c954026.a: Likewise. - * ada/acats-3/tests/c9/c954a01.a: Likewise. - * ada/acats-3/tests/c9/c954a02.a: Likewise. - * ada/acats-3/tests/c9/c954a03.a: Likewise. - * ada/acats-3/tests/c9/c960001.a: Likewise. - * ada/acats-3/tests/c9/c960002.a: Likewise. - * ada/acats-3/tests/c9/c960004.a: Likewise. - * ada/acats-3/tests/c9/c96001a.ada: Likewise. - * ada/acats-3/tests/c9/c96004a.ada: Likewise. - * ada/acats-3/tests/c9/c96005a.ada: Likewise. - * ada/acats-3/tests/c9/c96005b.tst: Likewise. - * ada/acats-3/tests/c9/c96005d.ada: Likewise. - * ada/acats-3/tests/c9/c96005f.ada: Likewise. - * ada/acats-3/tests/c9/c96006a.ada: Likewise. - * ada/acats-3/tests/c9/c96007a.ada: Likewise. - * ada/acats-3/tests/c9/c96008a.ada: Likewise. - * ada/acats-3/tests/c9/c96008b.ada: Likewise. - * ada/acats-3/tests/c9/c97112a.ada: Likewise. - * ada/acats-3/tests/c9/c97113a.ada: Likewise. - * ada/acats-3/tests/c9/c97114a.ada: Likewise. - * ada/acats-3/tests/c9/c97115a.ada: Likewise. - * ada/acats-3/tests/c9/c97116a.ada: Likewise. - * ada/acats-3/tests/c9/c97117a.ada: Likewise. - * ada/acats-3/tests/c9/c97117b.ada: Likewise. - * ada/acats-3/tests/c9/c97117c.ada: Likewise. - * ada/acats-3/tests/c9/c97118a.ada: Likewise. - * ada/acats-3/tests/c9/c97120a.ada: Likewise. - * ada/acats-3/tests/c9/c97120b.ada: Likewise. - * ada/acats-3/tests/c9/c97201a.ada: Likewise. - * ada/acats-3/tests/c9/c97201b.ada: Likewise. - * ada/acats-3/tests/c9/c97201c.ada: Likewise. - * ada/acats-3/tests/c9/c97201d.ada: Likewise. - * ada/acats-3/tests/c9/c97201e.ada: Likewise. - * ada/acats-3/tests/c9/c97201g.ada: Likewise. - * ada/acats-3/tests/c9/c97201h.ada: Likewise. - * ada/acats-3/tests/c9/c97201x.ada: Likewise. - * ada/acats-3/tests/c9/c97202a.ada: Likewise. - * ada/acats-3/tests/c9/c97203a.ada: Likewise. - * ada/acats-3/tests/c9/c97203b.ada: Likewise. - * ada/acats-3/tests/c9/c97203c.ada: Likewise. - * ada/acats-3/tests/c9/c97204a.ada: Likewise. - * ada/acats-3/tests/c9/c97204b.ada: Likewise. - * ada/acats-3/tests/c9/c97205a.ada: Likewise. - * ada/acats-3/tests/c9/c97205b.ada: Likewise. - * ada/acats-3/tests/c9/c97301a.ada: Likewise. - * ada/acats-3/tests/c9/c97301b.ada: Likewise. - * ada/acats-3/tests/c9/c97301c.ada: Likewise. - * ada/acats-3/tests/c9/c97301d.ada: Likewise. - * ada/acats-3/tests/c9/c97301e.ada: Likewise. - * ada/acats-3/tests/c9/c97302a.ada: Likewise. - * ada/acats-3/tests/c9/c97303a.ada: Likewise. - * ada/acats-3/tests/c9/c97303b.ada: Likewise. - * ada/acats-3/tests/c9/c97303c.ada: Likewise. - * ada/acats-3/tests/c9/c97304a.ada: Likewise. - * ada/acats-3/tests/c9/c97304b.ada: Likewise. - * ada/acats-3/tests/c9/c97305a.ada: Likewise. - * ada/acats-3/tests/c9/c97305b.ada: Likewise. - * ada/acats-3/tests/c9/c97305c.ada: Likewise. - * ada/acats-3/tests/c9/c97305d.ada: Likewise. - * ada/acats-3/tests/c9/c97307a.ada: Likewise. - * ada/acats-3/tests/c9/c974001.a: Likewise. - * ada/acats-3/tests/c9/c974002.a: Likewise. - * ada/acats-3/tests/c9/c974003.a: Likewise. - * ada/acats-3/tests/c9/c974004.a: Likewise. - * ada/acats-3/tests/c9/c974005.a: Likewise. - * ada/acats-3/tests/c9/c974006.a: Likewise. - * ada/acats-3/tests/c9/c974007.a: Likewise. - * ada/acats-3/tests/c9/c974008.a: Likewise. - * ada/acats-3/tests/c9/c974009.a: Likewise. - * ada/acats-3/tests/c9/c974010.a: Likewise. - * ada/acats-3/tests/c9/c974011.a: Likewise. - * ada/acats-3/tests/c9/c974012.a: Likewise. - * ada/acats-3/tests/c9/c974013.a: Likewise. - * ada/acats-3/tests/c9/c974014.a: Likewise. - * ada/acats-3/tests/c9/c980001.a: Likewise. - * ada/acats-3/tests/c9/c980002.a: Likewise. - * ada/acats-3/tests/c9/c980003.a: Likewise. - * ada/acats-3/tests/c9/c990001.a: Likewise. - * ada/acats-3/tests/c9/c99005a.ada: Likewise. - * ada/acats-3/tests/c9/c9a003a.ada: Likewise. - * ada/acats-3/tests/c9/c9a004a.ada: Likewise. - * ada/acats-3/tests/c9/c9a007a.ada: Likewise. - * ada/acats-3/tests/c9/c9a009a.ada: Likewise. - * ada/acats-3/tests/c9/c9a009c.ada: Likewise. - * ada/acats-3/tests/c9/c9a009f.ada: Likewise. - * ada/acats-3/tests/c9/c9a009g.ada: Likewise. - * ada/acats-3/tests/c9/c9a009h.ada: Likewise. - * ada/acats-3/tests/c9/c9a010a.ada: Likewise. - * ada/acats-3/tests/c9/c9a011a.ada: Likewise. - * ada/acats-3/tests/c9/c9a011b.ada: Likewise. - * ada/acats-3/tests/ca/ca1003a.ada: Likewise. - * ada/acats-3/tests/ca/ca1004a.ada: Likewise. - * ada/acats-3/tests/ca/ca1005a.ada: Likewise. - * ada/acats-3/tests/ca/ca1006a.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a3.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a4.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a5.ada: Likewise. - * ada/acats-3/tests/ca/ca1011a6.ada: Likewise. - * ada/acats-3/tests/ca/ca1012a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1012a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1012a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1012a3.ada: Likewise. - * ada/acats-3/tests/ca/ca1012a4.ada: Likewise. - * ada/acats-3/tests/ca/ca1012b0.ada: Likewise. - * ada/acats-3/tests/ca/ca1012b2.ada: Likewise. - * ada/acats-3/tests/ca/ca1012b4.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a3.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a4.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a5.ada: Likewise. - * ada/acats-3/tests/ca/ca1013a6.ada: Likewise. - * ada/acats-3/tests/ca/ca1014a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1014a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1014a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1014a3.ada: Likewise. - * ada/acats-3/tests/ca/ca1020e0.ada: Likewise. - * ada/acats-3/tests/ca/ca1020e1.ada: Likewise. - * ada/acats-3/tests/ca/ca1020e2.ada: Likewise. - * ada/acats-3/tests/ca/ca1020e3.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a3.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a4.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a5.ada: Likewise. - * ada/acats-3/tests/ca/ca1022a6.ada: Likewise. - * ada/acats-3/tests/ca/ca11001.a: Likewise. - * ada/acats-3/tests/ca/ca11002.a: Likewise. - * ada/acats-3/tests/ca/ca11003.a: Likewise. - * ada/acats-3/tests/ca/ca110040.a: Likewise. - * ada/acats-3/tests/ca/ca110041.a: Likewise. - * ada/acats-3/tests/ca/ca110042.am: Likewise. - * ada/acats-3/tests/ca/ca110050.a: Likewise. - * ada/acats-3/tests/ca/ca110051.am: Likewise. - * ada/acats-3/tests/ca/ca11006.a: Likewise. - * ada/acats-3/tests/ca/ca11007.a: Likewise. - * ada/acats-3/tests/ca/ca11008.a: Likewise. - * ada/acats-3/tests/ca/ca11009.a: Likewise. - * ada/acats-3/tests/ca/ca11010.a: Likewise. - * ada/acats-3/tests/ca/ca11011.a: Likewise. - * ada/acats-3/tests/ca/ca11012.a: Likewise. - * ada/acats-3/tests/ca/ca11013.a: Likewise. - * ada/acats-3/tests/ca/ca11014.a: Likewise. - * ada/acats-3/tests/ca/ca11015.a: Likewise. - * ada/acats-3/tests/ca/ca11016.a: Likewise. - * ada/acats-3/tests/ca/ca11017.a: Likewise. - * ada/acats-3/tests/ca/ca11018.a: Likewise. - * ada/acats-3/tests/ca/ca11019.a: Likewise. - * ada/acats-3/tests/ca/ca11020.a: Likewise. - * ada/acats-3/tests/ca/ca11021.a: Likewise. - * ada/acats-3/tests/ca/ca11022.a: Likewise. - * ada/acats-3/tests/ca/ca110230.a: Likewise. - * ada/acats-3/tests/ca/ca110231.a: Likewise. - * ada/acats-3/tests/ca/ca110232.am: Likewise. - * ada/acats-3/tests/ca/ca1102a0.ada: Likewise. - * ada/acats-3/tests/ca/ca1102a1.ada: Likewise. - * ada/acats-3/tests/ca/ca1102a2.ada: Likewise. - * ada/acats-3/tests/ca/ca1106a.ada: Likewise. - * ada/acats-3/tests/ca/ca1108a.ada: Likewise. - * ada/acats-3/tests/ca/ca1108b.ada: Likewise. - * ada/acats-3/tests/ca/ca11a01.a: Likewise. - * ada/acats-3/tests/ca/ca11a02.a: Likewise. - * ada/acats-3/tests/ca/ca11b01.a: Likewise. - * ada/acats-3/tests/ca/ca11b02.a: Likewise. - * ada/acats-3/tests/ca/ca11c01.a: Likewise. - * ada/acats-3/tests/ca/ca11c02.a: Likewise. - * ada/acats-3/tests/ca/ca11c03.a: Likewise. - * ada/acats-3/tests/ca/ca11d010.a: Likewise. - * ada/acats-3/tests/ca/ca11d011.a: Likewise. - * ada/acats-3/tests/ca/ca11d012.a: Likewise. - * ada/acats-3/tests/ca/ca11d013.am: Likewise. - * ada/acats-3/tests/ca/ca11d02.a: Likewise. - * ada/acats-3/tests/ca/ca11d03.a: Likewise. - * ada/acats-3/tests/ca/ca120010.a: Likewise. - * ada/acats-3/tests/ca/ca120011.a: Likewise. - * ada/acats-3/tests/ca/ca120012.am: Likewise. - * ada/acats-3/tests/ca/ca12002.a: Likewise. - * ada/acats-3/tests/ca/ca13001.a: Likewise. - * ada/acats-3/tests/ca/ca13002.a: Likewise. - * ada/acats-3/tests/ca/ca13003.a: Likewise. - * ada/acats-3/tests/ca/ca13a01.a: Likewise. - * ada/acats-3/tests/ca/ca13a02.a: Likewise. - * ada/acats-3/tests/ca/ca140230.a: Likewise. - * ada/acats-3/tests/ca/ca140231.a: Likewise. - * ada/acats-3/tests/ca/ca140232.am: Likewise. - * ada/acats-3/tests/ca/ca140233.a: Likewise. - * ada/acats-3/tests/ca/ca140280.a: Likewise. - * ada/acats-3/tests/ca/ca140281.a: Likewise. - * ada/acats-3/tests/ca/ca140282.a: Likewise. - * ada/acats-3/tests/ca/ca140283.am: Likewise. - * ada/acats-3/tests/ca/ca15003.a: Likewise. - * ada/acats-3/tests/ca/ca200020.a: Likewise. - * ada/acats-3/tests/ca/ca200021.a: Likewise. - * ada/acats-3/tests/ca/ca200022.am: Likewise. - * ada/acats-3/tests/ca/ca200030.a: Likewise. - * ada/acats-3/tests/ca/ca200031.am: Likewise. - * ada/acats-3/tests/ca/ca2001h0.ada: Likewise. - * ada/acats-3/tests/ca/ca2001h1.ada: Likewise. - * ada/acats-3/tests/ca/ca2001h2.ada: Likewise. - * ada/acats-3/tests/ca/ca2001h3.ada: Likewise. - * ada/acats-3/tests/ca/ca2002a0.ada: Likewise. - * ada/acats-3/tests/ca/ca2002a1.ada: Likewise. - * ada/acats-3/tests/ca/ca2002a2.ada: Likewise. - * ada/acats-3/tests/ca/ca2003a0.ada: Likewise. - * ada/acats-3/tests/ca/ca2003a1.ada: Likewise. - * ada/acats-3/tests/ca/ca2004a0.ada: Likewise. - * ada/acats-3/tests/ca/ca2004a1.ada: Likewise. - * ada/acats-3/tests/ca/ca2004a2.ada: Likewise. - * ada/acats-3/tests/ca/ca2004a3.ada: Likewise. - * ada/acats-3/tests/ca/ca2004a4.ada: Likewise. - * ada/acats-3/tests/ca/ca2007a0.ada: Likewise. - * ada/acats-3/tests/ca/ca2007a1.ada: Likewise. - * ada/acats-3/tests/ca/ca2007a2.ada: Likewise. - * ada/acats-3/tests/ca/ca2007a3.ada: Likewise. - * ada/acats-3/tests/ca/ca2008a0.ada: Likewise. - * ada/acats-3/tests/ca/ca2008a1.ada: Likewise. - * ada/acats-3/tests/ca/ca2008a2.ada: Likewise. - * ada/acats-3/tests/ca/ca2009a.ada: Likewise. - * ada/acats-3/tests/ca/ca2009c0.ada: Likewise. - * ada/acats-3/tests/ca/ca2009c1.ada: Likewise. - * ada/acats-3/tests/ca/ca2009d.ada: Likewise. - * ada/acats-3/tests/ca/ca2009f0.ada: Likewise. - * ada/acats-3/tests/ca/ca2009f1.ada: Likewise. - * ada/acats-3/tests/ca/ca2009f2.ada: Likewise. - * ada/acats-3/tests/ca/ca2011b.ada: Likewise. - * ada/acats-3/tests/ca/ca21001.a: Likewise. - * ada/acats-3/tests/ca/ca3011a0.ada: Likewise. - * ada/acats-3/tests/ca/ca3011a1.ada: Likewise. - * ada/acats-3/tests/ca/ca3011a2.ada: Likewise. - * ada/acats-3/tests/ca/ca3011a3.ada: Likewise. - * ada/acats-3/tests/ca/ca3011a4.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a0.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a1.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a2.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a3.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a4.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a5.ada: Likewise. - * ada/acats-3/tests/ca/ca5003a6.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b0.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b1.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b2.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b3.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b4.ada: Likewise. - * ada/acats-3/tests/ca/ca5003b5.ada: Likewise. - * ada/acats-3/tests/ca/ca5004a.ada: Likewise. - * ada/acats-3/tests/ca/ca5004b0.ada: Likewise. - * ada/acats-3/tests/ca/ca5004b1.ada: Likewise. - * ada/acats-3/tests/ca/ca5004b2.ada: Likewise. - * ada/acats-3/tests/ca/ca5006a.ada: Likewise. - * ada/acats-3/tests/cb/cb10002.a: Likewise. - * ada/acats-3/tests/cb/cb1001a.ada: Likewise. - * ada/acats-3/tests/cb/cb1004a.ada: Likewise. - * ada/acats-3/tests/cb/cb1005a.ada: Likewise. - * ada/acats-3/tests/cb/cb1010a.ada: Likewise. - * ada/acats-3/tests/cb/cb1010c.ada: Likewise. - * ada/acats-3/tests/cb/cb1010d.ada: Likewise. - * ada/acats-3/tests/cb/cb20001.a: Likewise. - * ada/acats-3/tests/cb/cb20003.a: Likewise. - * ada/acats-3/tests/cb/cb20004.a: Likewise. - * ada/acats-3/tests/cb/cb20005.a: Likewise. - * ada/acats-3/tests/cb/cb20006.a: Likewise. - * ada/acats-3/tests/cb/cb20007.a: Likewise. - * ada/acats-3/tests/cb/cb2004a.ada: Likewise. - * ada/acats-3/tests/cb/cb2005a.ada: Likewise. - * ada/acats-3/tests/cb/cb2006a.ada: Likewise. - * ada/acats-3/tests/cb/cb2007a.ada: Likewise. - * ada/acats-3/tests/cb/cb20a02.a: Likewise. - * ada/acats-3/tests/cb/cb30001.a: Likewise. - * ada/acats-3/tests/cb/cb3003a.ada: Likewise. - * ada/acats-3/tests/cb/cb3003b.ada: Likewise. - * ada/acats-3/tests/cb/cb3004a.ada: Likewise. - * ada/acats-3/tests/cb/cb40005.a: Likewise. - * ada/acats-3/tests/cb/cb4001a.ada: Likewise. - * ada/acats-3/tests/cb/cb4002a.ada: Likewise. - * ada/acats-3/tests/cb/cb4003a.ada: Likewise. - * ada/acats-3/tests/cb/cb4004a.ada: Likewise. - * ada/acats-3/tests/cb/cb4005a.ada: Likewise. - * ada/acats-3/tests/cb/cb4006a.ada: Likewise. - * ada/acats-3/tests/cb/cb4007a.ada: Likewise. - * ada/acats-3/tests/cb/cb4008a.ada: Likewise. - * ada/acats-3/tests/cb/cb4009a.ada: Likewise. - * ada/acats-3/tests/cb/cb4013a.ada: Likewise. - * ada/acats-3/tests/cb/cb40a01.a: Likewise. - * ada/acats-3/tests/cb/cb40a020.a: Likewise. - * ada/acats-3/tests/cb/cb40a021.am: Likewise. - * ada/acats-3/tests/cb/cb40a030.a: Likewise. - * ada/acats-3/tests/cb/cb40a031.am: Likewise. - * ada/acats-3/tests/cb/cb40a04.a: Likewise. - * ada/acats-3/tests/cb/cb41001.a: Likewise. - * ada/acats-3/tests/cb/cb41002.a: Likewise. - * ada/acats-3/tests/cb/cb41003.a: Likewise. - * ada/acats-3/tests/cb/cb41004.a: Likewise. - * ada/acats-3/tests/cb/cb42001.a: Likewise. - * ada/acats-3/tests/cb/cb42002.a: Likewise. - * ada/acats-3/tests/cb/cb42003.a: Likewise. - * ada/acats-3/tests/cb/cb5001a.ada: Likewise. - * ada/acats-3/tests/cb/cb5001b.ada: Likewise. - * ada/acats-3/tests/cb/cb5002a.ada: Likewise. - * ada/acats-3/tests/cc/cc1004a.ada: Likewise. - * ada/acats-3/tests/cc/cc1005b.ada: Likewise. - * ada/acats-3/tests/cc/cc1010a.ada: Likewise. - * ada/acats-3/tests/cc/cc1010b.ada: Likewise. - * ada/acats-3/tests/cc/cc1018a.ada: Likewise. - * ada/acats-3/tests/cc/cc1104c.ada: Likewise. - * ada/acats-3/tests/cc/cc1107b.ada: Likewise. - * ada/acats-3/tests/cc/cc1111a.ada: Likewise. - * ada/acats-3/tests/cc/cc1204a.ada: Likewise. - * ada/acats-3/tests/cc/cc1207b.ada: Likewise. - * ada/acats-3/tests/cc/cc1220a.ada: Likewise. - * ada/acats-3/tests/cc/cc1221a.ada: Likewise. - * ada/acats-3/tests/cc/cc1221b.ada: Likewise. - * ada/acats-3/tests/cc/cc1221c.ada: Likewise. - * ada/acats-3/tests/cc/cc1221d.ada: Likewise. - * ada/acats-3/tests/cc/cc1222a.ada: Likewise. - * ada/acats-3/tests/cc/cc1223a.ada: Likewise. - * ada/acats-3/tests/cc/cc1224a.ada: Likewise. - * ada/acats-3/tests/cc/cc1225a.tst: Likewise. - * ada/acats-3/tests/cc/cc1226b.ada: Likewise. - * ada/acats-3/tests/cc/cc1227a.ada: Likewise. - * ada/acats-3/tests/cc/cc1301a.ada: Likewise. - * ada/acats-3/tests/cc/cc1302a.ada: Likewise. - * ada/acats-3/tests/cc/cc1304a.ada: Likewise. - * ada/acats-3/tests/cc/cc1304b.ada: Likewise. - * ada/acats-3/tests/cc/cc1307a.ada: Likewise. - * ada/acats-3/tests/cc/cc1307b.ada: Likewise. - * ada/acats-3/tests/cc/cc1308a.ada: Likewise. - * ada/acats-3/tests/cc/cc1310a.ada: Likewise. - * ada/acats-3/tests/cc/cc1311a.ada: Likewise. - * ada/acats-3/tests/cc/cc1311b.ada: Likewise. - * ada/acats-3/tests/cc/cc2002a.ada: Likewise. - * ada/acats-3/tests/cc/cc30001.a: Likewise. - * ada/acats-3/tests/cc/cc30002.a: Likewise. - * ada/acats-3/tests/cc/cc30003.a: Likewise. - * ada/acats-3/tests/cc/cc30004.a: Likewise. - * ada/acats-3/tests/cc/cc3004a.ada: Likewise. - * ada/acats-3/tests/cc/cc3007a.ada: Likewise. - * ada/acats-3/tests/cc/cc3007b.ada: Likewise. - * ada/acats-3/tests/cc/cc3011a.ada: Likewise. - * ada/acats-3/tests/cc/cc3011d.ada: Likewise. - * ada/acats-3/tests/cc/cc3012a.ada: Likewise. - * ada/acats-3/tests/cc/cc3015a.ada: Likewise. - * ada/acats-3/tests/cc/cc3016b.ada: Likewise. - * ada/acats-3/tests/cc/cc3016c.ada: Likewise. - * ada/acats-3/tests/cc/cc3016f.ada: Likewise. - * ada/acats-3/tests/cc/cc3016i.ada: Likewise. - * ada/acats-3/tests/cc/cc3017b.ada: Likewise. - * ada/acats-3/tests/cc/cc3017c.ada: Likewise. - * ada/acats-3/tests/cc/cc3019a.ada: Likewise. - * ada/acats-3/tests/cc/cc3019b0.ada: Likewise. - * ada/acats-3/tests/cc/cc3019b1.ada: Likewise. - * ada/acats-3/tests/cc/cc3019b2.ada: Likewise. - * ada/acats-3/tests/cc/cc3019c0.ada: Likewise. - * ada/acats-3/tests/cc/cc3019c1.ada: Likewise. - * ada/acats-3/tests/cc/cc3019c2.ada: Likewise. - * ada/acats-3/tests/cc/cc3106b.ada: Likewise. - * ada/acats-3/tests/cc/cc3120a.ada: Likewise. - * ada/acats-3/tests/cc/cc3120b.ada: Likewise. - * ada/acats-3/tests/cc/cc3121a.ada: Likewise. - * ada/acats-3/tests/cc/cc3123a.ada: Likewise. - * ada/acats-3/tests/cc/cc3125a.ada: Likewise. - * ada/acats-3/tests/cc/cc3125b.ada: Likewise. - * ada/acats-3/tests/cc/cc3125c.ada: Likewise. - * ada/acats-3/tests/cc/cc3125d.ada: Likewise. - * ada/acats-3/tests/cc/cc3126a.ada: Likewise. - * ada/acats-3/tests/cc/cc3127a.ada: Likewise. - * ada/acats-3/tests/cc/cc3128a.ada: Likewise. - * ada/acats-3/tests/cc/cc3203a.ada: Likewise. - * ada/acats-3/tests/cc/cc3207b.ada: Likewise. - * ada/acats-3/tests/cc/cc3220a.ada: Likewise. - * ada/acats-3/tests/cc/cc3221a.ada: Likewise. - * ada/acats-3/tests/cc/cc3222a.ada: Likewise. - * ada/acats-3/tests/cc/cc3223a.ada: Likewise. - * ada/acats-3/tests/cc/cc3224a.ada: Likewise. - * ada/acats-3/tests/cc/cc3225a.ada: Likewise. - * ada/acats-3/tests/cc/cc3230a.ada: Likewise. - * ada/acats-3/tests/cc/cc3231a.ada: Likewise. - * ada/acats-3/tests/cc/cc3232a.ada: Likewise. - * ada/acats-3/tests/cc/cc3233a.ada: Likewise. - * ada/acats-3/tests/cc/cc3234a.ada: Likewise. - * ada/acats-3/tests/cc/cc3235a.ada: Likewise. - * ada/acats-3/tests/cc/cc3236a.ada: Likewise. - * ada/acats-3/tests/cc/cc3240a.ada: Likewise. - * ada/acats-3/tests/cc/cc3305a.ada: Likewise. - * ada/acats-3/tests/cc/cc3305b.ada: Likewise. - * ada/acats-3/tests/cc/cc3305c.ada: Likewise. - * ada/acats-3/tests/cc/cc3305d.ada: Likewise. - * ada/acats-3/tests/cc/cc3601a.ada: Likewise. - * ada/acats-3/tests/cc/cc3601c.ada: Likewise. - * ada/acats-3/tests/cc/cc3602a.ada: Likewise. - * ada/acats-3/tests/cc/cc3603a.ada: Likewise. - * ada/acats-3/tests/cc/cc3605a.ada: Likewise. - * ada/acats-3/tests/cc/cc3606a.ada: Likewise. - * ada/acats-3/tests/cc/cc3606b.ada: Likewise. - * ada/acats-3/tests/cc/cc3607b.ada: Likewise. - * ada/acats-3/tests/cc/cc40001.a: Likewise. - * ada/acats-3/tests/cc/cc50001.a: Likewise. - * ada/acats-3/tests/cc/cc50a01.a: Likewise. - * ada/acats-3/tests/cc/cc50a02.a: Likewise. - * ada/acats-3/tests/cc/cc51001.a: Likewise. - * ada/acats-3/tests/cc/cc51002.a: Likewise. - * ada/acats-3/tests/cc/cc51003.a: Likewise. - * ada/acats-3/tests/cc/cc51004.a: Likewise. - * ada/acats-3/tests/cc/cc51006.a: Likewise. - * ada/acats-3/tests/cc/cc51007.a: Likewise. - * ada/acats-3/tests/cc/cc51008.a: Likewise. - * ada/acats-3/tests/cc/cc51a01.a: Likewise. - * ada/acats-3/tests/cc/cc51b03.a: Likewise. - * ada/acats-3/tests/cc/cc51d01.a: Likewise. - * ada/acats-3/tests/cc/cc51d02.a: Likewise. - * ada/acats-3/tests/cc/cc54001.a: Likewise. - * ada/acats-3/tests/cc/cc54002.a: Likewise. - * ada/acats-3/tests/cc/cc54003.a: Likewise. - * ada/acats-3/tests/cc/cc54004.a: Likewise. - * ada/acats-3/tests/cc/cc60001.a: Likewise. - * ada/acats-3/tests/cc/cc70001.a: Likewise. - * ada/acats-3/tests/cc/cc70002.a: Likewise. - * ada/acats-3/tests/cc/cc70003.a: Likewise. - * ada/acats-3/tests/cc/cc70a01.a: Likewise. - * ada/acats-3/tests/cc/cc70a02.a: Likewise. - * ada/acats-3/tests/cc/cc70b01.a: Likewise. - * ada/acats-3/tests/cc/cc70b02.a: Likewise. - * ada/acats-3/tests/cc/cc70c01.a: Likewise. - * ada/acats-3/tests/cc/cc70c02.a: Likewise. - * ada/acats-3/tests/cd/cd10001.a: Likewise. - * ada/acats-3/tests/cd/cd10002.a: Likewise. - * ada/acats-3/tests/cd/cd1009a.ada: Likewise. - * ada/acats-3/tests/cd/cd1009b.ada: Likewise. - * ada/acats-3/tests/cd/cd1009d.ada: Likewise. - * ada/acats-3/tests/cd/cd1009e.ada: Likewise. - * ada/acats-3/tests/cd/cd1009f.ada: Likewise. - * ada/acats-3/tests/cd/cd1009g.ada: Likewise. - * ada/acats-3/tests/cd/cd1009h.ada: Likewise. - * ada/acats-3/tests/cd/cd1009i.ada: Likewise. - * ada/acats-3/tests/cd/cd1009j.ada: Likewise. - * ada/acats-3/tests/cd/cd1009k.tst: Likewise. - * ada/acats-3/tests/cd/cd1009l.ada: Likewise. - * ada/acats-3/tests/cd/cd1009m.ada: Likewise. - * ada/acats-3/tests/cd/cd1009n.ada: Likewise. - * ada/acats-3/tests/cd/cd1009o.ada: Likewise. - * ada/acats-3/tests/cd/cd1009p.ada: Likewise. - * ada/acats-3/tests/cd/cd1009q.ada: Likewise. - * ada/acats-3/tests/cd/cd1009r.ada: Likewise. - * ada/acats-3/tests/cd/cd1009s.ada: Likewise. - * ada/acats-3/tests/cd/cd1009t.tst: Likewise. - * ada/acats-3/tests/cd/cd1009u.tst: Likewise. - * ada/acats-3/tests/cd/cd1009v.ada: Likewise. - * ada/acats-3/tests/cd/cd1009w.ada: Likewise. - * ada/acats-3/tests/cd/cd1009x.ada: Likewise. - * ada/acats-3/tests/cd/cd1009y.ada: Likewise. - * ada/acats-3/tests/cd/cd1009z.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03a.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03b.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03c.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03e.tst: Likewise. - * ada/acats-3/tests/cd/cd1c03f.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03g.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03h.ada: Likewise. - * ada/acats-3/tests/cd/cd1c03i.ada: Likewise. - * ada/acats-3/tests/cd/cd1c04a.ada: Likewise. - * ada/acats-3/tests/cd/cd1c04d.ada: Likewise. - * ada/acats-3/tests/cd/cd1c04e.ada: Likewise. - * ada/acats-3/tests/cd/cd1c06a.tst: Likewise. - * ada/acats-3/tests/cd/cd20001.a: Likewise. - * ada/acats-3/tests/cd/cd2a21a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a21c.ada: Likewise. - * ada/acats-3/tests/cd/cd2a21e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a22a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a22e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a22i.ada: Likewise. - * ada/acats-3/tests/cd/cd2a22j.ada: Likewise. - * ada/acats-3/tests/cd/cd2a23a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a23e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a24a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a24e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a24i.ada: Likewise. - * ada/acats-3/tests/cd/cd2a24j.ada: Likewise. - * ada/acats-3/tests/cd/cd2a31a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a31c.ada: Likewise. - * ada/acats-3/tests/cd/cd2a31e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32c.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32g.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32i.ada: Likewise. - * ada/acats-3/tests/cd/cd2a32j.ada: Likewise. - * ada/acats-3/tests/cd/cd2a51a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a53a.ada: Likewise. - * ada/acats-3/tests/cd/cd2a53e.ada: Likewise. - * ada/acats-3/tests/cd/cd2a83c.tst: Likewise. - * ada/acats-3/tests/cd/cd2a91c.tst: Likewise. - * ada/acats-3/tests/cd/cd2b11b.ada: Likewise. - * ada/acats-3/tests/cd/cd2b11d.ada: Likewise. - * ada/acats-3/tests/cd/cd2b11e.ada: Likewise. - * ada/acats-3/tests/cd/cd2b11f.ada: Likewise. - * ada/acats-3/tests/cd/cd2b16a.ada: Likewise. - * ada/acats-3/tests/cd/cd2c11a.tst: Likewise. - * ada/acats-3/tests/cd/cd2c11d.tst: Likewise. - * ada/acats-3/tests/cd/cd2d11a.ada: Likewise. - * ada/acats-3/tests/cd/cd2d13a.ada: Likewise. - * ada/acats-3/tests/cd/cd30001.a: Likewise. - * ada/acats-3/tests/cd/cd30002.a: Likewise. - * ada/acats-3/tests/cd/cd30003.a: Likewise. - * ada/acats-3/tests/cd/cd30004.a: Likewise. - * ada/acats-3/tests/cd/cd300050.am: Likewise. - * ada/acats-3/tests/cd/cd300051.c: Likewise. - * ada/acats-3/tests/cd/cd30008.a: Likewise. - * ada/acats-3/tests/cd/cd30009.a: Likewise. - * ada/acats-3/tests/cd/cd30011.a: Likewise. - * ada/acats-3/tests/cd/cd30012.a: Likewise. - * ada/acats-3/tests/cd/cd3014a.ada: Likewise. - * ada/acats-3/tests/cd/cd3014c.ada: Likewise. - * ada/acats-3/tests/cd/cd3014d.ada: Likewise. - * ada/acats-3/tests/cd/cd3014f.ada: Likewise. - * ada/acats-3/tests/cd/cd3015a.ada: Likewise. - * ada/acats-3/tests/cd/cd3015c.ada: Likewise. - * ada/acats-3/tests/cd/cd3015e.ada: Likewise. - * ada/acats-3/tests/cd/cd3015f.ada: Likewise. - * ada/acats-3/tests/cd/cd3015g.ada: Likewise. - * ada/acats-3/tests/cd/cd3015h.ada: Likewise. - * ada/acats-3/tests/cd/cd3015i.ada: Likewise. - * ada/acats-3/tests/cd/cd3015k.ada: Likewise. - * ada/acats-3/tests/cd/cd3021a.ada: Likewise. - * ada/acats-3/tests/cd/cd33001.a: Likewise. - * ada/acats-3/tests/cd/cd33002.a: Likewise. - * ada/acats-3/tests/cd/cd40001.a: Likewise. - * ada/acats-3/tests/cd/cd4031a.ada: Likewise. - * ada/acats-3/tests/cd/cd4041a.tst: Likewise. - * ada/acats-3/tests/cd/cd4051a.ada: Likewise. - * ada/acats-3/tests/cd/cd4051b.ada: Likewise. - * ada/acats-3/tests/cd/cd4051c.ada: Likewise. - * ada/acats-3/tests/cd/cd4051d.ada: Likewise. - * ada/acats-3/tests/cd/cd5003a.ada: Likewise. - * ada/acats-3/tests/cd/cd5003b.ada: Likewise. - * ada/acats-3/tests/cd/cd5003c.ada: Likewise. - * ada/acats-3/tests/cd/cd5003d.ada: Likewise. - * ada/acats-3/tests/cd/cd5003e.ada: Likewise. - * ada/acats-3/tests/cd/cd5003f.ada: Likewise. - * ada/acats-3/tests/cd/cd5003g.ada: Likewise. - * ada/acats-3/tests/cd/cd5003h.ada: Likewise. - * ada/acats-3/tests/cd/cd5003i.ada: Likewise. - * ada/acats-3/tests/cd/cd5011a.ada: Likewise. - * ada/acats-3/tests/cd/cd5011c.ada: Likewise. - * ada/acats-3/tests/cd/cd5011e.ada: Likewise. - * ada/acats-3/tests/cd/cd5011g.ada: Likewise. - * ada/acats-3/tests/cd/cd5011i.ada: Likewise. - * ada/acats-3/tests/cd/cd5011k.ada: Likewise. - * ada/acats-3/tests/cd/cd5011m.ada: Likewise. - * ada/acats-3/tests/cd/cd5011q.ada: Likewise. - * ada/acats-3/tests/cd/cd5011s.ada: Likewise. - * ada/acats-3/tests/cd/cd5012a.ada: Likewise. - * ada/acats-3/tests/cd/cd5012b.ada: Likewise. - * ada/acats-3/tests/cd/cd5012e.ada: Likewise. - * ada/acats-3/tests/cd/cd5012f.ada: Likewise. - * ada/acats-3/tests/cd/cd5012i.ada: Likewise. - * ada/acats-3/tests/cd/cd5012m.ada: Likewise. - * ada/acats-3/tests/cd/cd5013a.ada: Likewise. - * ada/acats-3/tests/cd/cd5013c.ada: Likewise. - * ada/acats-3/tests/cd/cd5013e.ada: Likewise. - * ada/acats-3/tests/cd/cd5013g.ada: Likewise. - * ada/acats-3/tests/cd/cd5013i.ada: Likewise. - * ada/acats-3/tests/cd/cd5013k.ada: Likewise. - * ada/acats-3/tests/cd/cd5013m.ada: Likewise. - * ada/acats-3/tests/cd/cd5013o.ada: Likewise. - * ada/acats-3/tests/cd/cd5014a.ada: Likewise. - * ada/acats-3/tests/cd/cd5014c.ada: Likewise. - * ada/acats-3/tests/cd/cd5014e.ada: Likewise. - * ada/acats-3/tests/cd/cd5014g.ada: Likewise. - * ada/acats-3/tests/cd/cd5014i.ada: Likewise. - * ada/acats-3/tests/cd/cd5014k.ada: Likewise. - * ada/acats-3/tests/cd/cd5014m.ada: Likewise. - * ada/acats-3/tests/cd/cd5014o.ada: Likewise. - * ada/acats-3/tests/cd/cd5014t.ada: Likewise. - * ada/acats-3/tests/cd/cd5014v.ada: Likewise. - * ada/acats-3/tests/cd/cd5014x.ada: Likewise. - * ada/acats-3/tests/cd/cd5014y.ada: Likewise. - * ada/acats-3/tests/cd/cd5014z.ada: Likewise. - * ada/acats-3/tests/cd/cd70001.a: Likewise. - * ada/acats-3/tests/cd/cd7002a.ada: Likewise. - * ada/acats-3/tests/cd/cd7007b.ada: Likewise. - * ada/acats-3/tests/cd/cd7101d.ada: Likewise. - * ada/acats-3/tests/cd/cd7101e.dep: Likewise. - * ada/acats-3/tests/cd/cd7101f.dep: Likewise. - * ada/acats-3/tests/cd/cd7101g.tst: Likewise. - * ada/acats-3/tests/cd/cd7103d.ada: Likewise. - * ada/acats-3/tests/cd/cd7202a.ada: Likewise. - * ada/acats-3/tests/cd/cd7204b.ada: Likewise. - * ada/acats-3/tests/cd/cd7204c.ada: Likewise. - * ada/acats-3/tests/cd/cd72a01.a: Likewise. - * ada/acats-3/tests/cd/cd72a02.a: Likewise. - * ada/acats-3/tests/cd/cd7305a.ada: Likewise. - * ada/acats-3/tests/cd/cd90001.a: Likewise. - * ada/acats-3/tests/cd/cd92001.a: Likewise. - * ada/acats-3/tests/cd/cda201a.ada: Likewise. - * ada/acats-3/tests/cd/cda201b.ada: Likewise. - * ada/acats-3/tests/cd/cda201c.ada: Likewise. - * ada/acats-3/tests/cd/cda201e.ada: Likewise. - * ada/acats-3/tests/cd/cdb0001.a: Likewise. - * ada/acats-3/tests/cd/cdb0002.a: Likewise. - * ada/acats-3/tests/cd/cdb0a01.a: Likewise. - * ada/acats-3/tests/cd/cdb0a02.a: Likewise. - * ada/acats-3/tests/cd/cdd1001.a: Likewise. - * ada/acats-3/tests/cd/cdd2001.a: Likewise. - * ada/acats-3/tests/cd/cdd2a01.a: Likewise. - * ada/acats-3/tests/cd/cdd2a02.a: Likewise. - * ada/acats-3/tests/cd/cdd2a03.a: Likewise. - * ada/acats-3/tests/cd/cdd2b01.a: Likewise. - * ada/acats-3/tests/cd/cdd2b03.a: Likewise. - * ada/acats-3/tests/cd/cde0001.a: Likewise. - * ada/acats-3/tests/ce/ce2102a.ada: Likewise. - * ada/acats-3/tests/ce/ce2102b.ada: Likewise. - * ada/acats-3/tests/ce/ce2102c.tst: Likewise. - * ada/acats-3/tests/ce/ce2102d.ada: Likewise. - * ada/acats-3/tests/ce/ce2102e.ada: Likewise. - * ada/acats-3/tests/ce/ce2102f.ada: Likewise. - * ada/acats-3/tests/ce/ce2102g.ada: Likewise. - * ada/acats-3/tests/ce/ce2102h.tst: Likewise. - * ada/acats-3/tests/ce/ce2102i.ada: Likewise. - * ada/acats-3/tests/ce/ce2102j.ada: Likewise. - * ada/acats-3/tests/ce/ce2102k.ada: Likewise. - * ada/acats-3/tests/ce/ce2102l.ada: Likewise. - * ada/acats-3/tests/ce/ce2102m.ada: Likewise. - * ada/acats-3/tests/ce/ce2102n.ada: Likewise. - * ada/acats-3/tests/ce/ce2102o.ada: Likewise. - * ada/acats-3/tests/ce/ce2102p.ada: Likewise. - * ada/acats-3/tests/ce/ce2102q.ada: Likewise. - * ada/acats-3/tests/ce/ce2102r.ada: Likewise. - * ada/acats-3/tests/ce/ce2102s.ada: Likewise. - * ada/acats-3/tests/ce/ce2102t.ada: Likewise. - * ada/acats-3/tests/ce/ce2102u.ada: Likewise. - * ada/acats-3/tests/ce/ce2102v.ada: Likewise. - * ada/acats-3/tests/ce/ce2102w.ada: Likewise. - * ada/acats-3/tests/ce/ce2102x.ada: Likewise. - * ada/acats-3/tests/ce/ce2102y.ada: Likewise. - * ada/acats-3/tests/ce/ce2103a.tst: Likewise. - * ada/acats-3/tests/ce/ce2103b.tst: Likewise. - * ada/acats-3/tests/ce/ce2103c.ada: Likewise. - * ada/acats-3/tests/ce/ce2103d.ada: Likewise. - * ada/acats-3/tests/ce/ce2104a.ada: Likewise. - * ada/acats-3/tests/ce/ce2104b.ada: Likewise. - * ada/acats-3/tests/ce/ce2104c.ada: Likewise. - * ada/acats-3/tests/ce/ce2104d.ada: Likewise. - * ada/acats-3/tests/ce/ce2106a.ada: Likewise. - * ada/acats-3/tests/ce/ce2106b.ada: Likewise. - * ada/acats-3/tests/ce/ce2108e.ada: Likewise. - * ada/acats-3/tests/ce/ce2108f.ada: Likewise. - * ada/acats-3/tests/ce/ce2108g.ada: Likewise. - * ada/acats-3/tests/ce/ce2108h.ada: Likewise. - * ada/acats-3/tests/ce/ce2109a.ada: Likewise. - * ada/acats-3/tests/ce/ce2109b.ada: Likewise. - * ada/acats-3/tests/ce/ce2109c.ada: Likewise. - * ada/acats-3/tests/ce/ce2110a.ada: Likewise. - * ada/acats-3/tests/ce/ce2110c.ada: Likewise. - * ada/acats-3/tests/ce/ce2111a.ada: Likewise. - * ada/acats-3/tests/ce/ce2111b.ada: Likewise. - * ada/acats-3/tests/ce/ce2111c.ada: Likewise. - * ada/acats-3/tests/ce/ce2111e.ada: Likewise. - * ada/acats-3/tests/ce/ce2111f.ada: Likewise. - * ada/acats-3/tests/ce/ce2111g.ada: Likewise. - * ada/acats-3/tests/ce/ce2111i.ada: Likewise. - * ada/acats-3/tests/ce/ce2201a.ada: Likewise. - * ada/acats-3/tests/ce/ce2201b.ada: Likewise. - * ada/acats-3/tests/ce/ce2201c.ada: Likewise. - * ada/acats-3/tests/ce/ce2201d.dep: Likewise. - * ada/acats-3/tests/ce/ce2201e.dep: Likewise. - * ada/acats-3/tests/ce/ce2201f.ada: Likewise. - * ada/acats-3/tests/ce/ce2201g.ada: Likewise. - * ada/acats-3/tests/ce/ce2201h.ada: Likewise. - * ada/acats-3/tests/ce/ce2201i.ada: Likewise. - * ada/acats-3/tests/ce/ce2201j.ada: Likewise. - * ada/acats-3/tests/ce/ce2201k.ada: Likewise. - * ada/acats-3/tests/ce/ce2201l.ada: Likewise. - * ada/acats-3/tests/ce/ce2201m.ada: Likewise. - * ada/acats-3/tests/ce/ce2201n.ada: Likewise. - * ada/acats-3/tests/ce/ce2202a.ada: Likewise. - * ada/acats-3/tests/ce/ce2203a.tst: Likewise. - * ada/acats-3/tests/ce/ce2204a.ada: Likewise. - * ada/acats-3/tests/ce/ce2204b.ada: Likewise. - * ada/acats-3/tests/ce/ce2204c.ada: Likewise. - * ada/acats-3/tests/ce/ce2204d.ada: Likewise. - * ada/acats-3/tests/ce/ce2205a.ada: Likewise. - * ada/acats-3/tests/ce/ce2206a.ada: Likewise. - * ada/acats-3/tests/ce/ce2208b.ada: Likewise. - * ada/acats-3/tests/ce/ce2401a.ada: Likewise. - * ada/acats-3/tests/ce/ce2401b.ada: Likewise. - * ada/acats-3/tests/ce/ce2401c.ada: Likewise. - * ada/acats-3/tests/ce/ce2401e.ada: Likewise. - * ada/acats-3/tests/ce/ce2401f.ada: Likewise. - * ada/acats-3/tests/ce/ce2401h.ada: Likewise. - * ada/acats-3/tests/ce/ce2401i.ada: Likewise. - * ada/acats-3/tests/ce/ce2401j.ada: Likewise. - * ada/acats-3/tests/ce/ce2401k.ada: Likewise. - * ada/acats-3/tests/ce/ce2401l.ada: Likewise. - * ada/acats-3/tests/ce/ce2402a.ada: Likewise. - * ada/acats-3/tests/ce/ce2403a.tst: Likewise. - * ada/acats-3/tests/ce/ce2404a.ada: Likewise. - * ada/acats-3/tests/ce/ce2404b.ada: Likewise. - * ada/acats-3/tests/ce/ce2405b.ada: Likewise. - * ada/acats-3/tests/ce/ce2406a.ada: Likewise. - * ada/acats-3/tests/ce/ce2407a.ada: Likewise. - * ada/acats-3/tests/ce/ce2407b.ada: Likewise. - * ada/acats-3/tests/ce/ce2408a.ada: Likewise. - * ada/acats-3/tests/ce/ce2408b.ada: Likewise. - * ada/acats-3/tests/ce/ce2409a.ada: Likewise. - * ada/acats-3/tests/ce/ce2409b.ada: Likewise. - * ada/acats-3/tests/ce/ce2410a.ada: Likewise. - * ada/acats-3/tests/ce/ce2410b.ada: Likewise. - * ada/acats-3/tests/ce/ce2411a.ada: Likewise. - * ada/acats-3/tests/ce/ce3002b.tst: Likewise. - * ada/acats-3/tests/ce/ce3002c.tst: Likewise. - * ada/acats-3/tests/ce/ce3002d.ada: Likewise. - * ada/acats-3/tests/ce/ce3002f.ada: Likewise. - * ada/acats-3/tests/ce/ce3102a.ada: Likewise. - * ada/acats-3/tests/ce/ce3102b.tst: Likewise. - * ada/acats-3/tests/ce/ce3102d.ada: Likewise. - * ada/acats-3/tests/ce/ce3102e.ada: Likewise. - * ada/acats-3/tests/ce/ce3102f.ada: Likewise. - * ada/acats-3/tests/ce/ce3102g.ada: Likewise. - * ada/acats-3/tests/ce/ce3102h.ada: Likewise. - * ada/acats-3/tests/ce/ce3102i.ada: Likewise. - * ada/acats-3/tests/ce/ce3102j.ada: Likewise. - * ada/acats-3/tests/ce/ce3102k.ada: Likewise. - * ada/acats-3/tests/ce/ce3103a.ada: Likewise. - * ada/acats-3/tests/ce/ce3104a.ada: Likewise. - * ada/acats-3/tests/ce/ce3104b.ada: Likewise. - * ada/acats-3/tests/ce/ce3104c.ada: Likewise. - * ada/acats-3/tests/ce/ce3106a.ada: Likewise. - * ada/acats-3/tests/ce/ce3106b.ada: Likewise. - * ada/acats-3/tests/ce/ce3107a.tst: Likewise. - * ada/acats-3/tests/ce/ce3107b.ada: Likewise. - * ada/acats-3/tests/ce/ce3108a.ada: Likewise. - * ada/acats-3/tests/ce/ce3108b.ada: Likewise. - * ada/acats-3/tests/ce/ce3110a.ada: Likewise. - * ada/acats-3/tests/ce/ce3112c.ada: Likewise. - * ada/acats-3/tests/ce/ce3112d.ada: Likewise. - * ada/acats-3/tests/ce/ce3114a.ada: Likewise. - * ada/acats-3/tests/ce/ce3115a.ada: Likewise. - * ada/acats-3/tests/ce/ce3201a.ada: Likewise. - * ada/acats-3/tests/ce/ce3202a.ada: Likewise. - * ada/acats-3/tests/ce/ce3206a.ada: Likewise. - * ada/acats-3/tests/ce/ce3207a.ada: Likewise. - * ada/acats-3/tests/ce/ce3301a.ada: Likewise. - * ada/acats-3/tests/ce/ce3302a.ada: Likewise. - * ada/acats-3/tests/ce/ce3303a.ada: Likewise. - * ada/acats-3/tests/ce/ce3304a.tst: Likewise. - * ada/acats-3/tests/ce/ce3305a.ada: Likewise. - * ada/acats-3/tests/ce/ce3306a.ada: Likewise. - * ada/acats-3/tests/ce/ce3401a.ada: Likewise. - * ada/acats-3/tests/ce/ce3402a.ada: Likewise. - * ada/acats-3/tests/ce/ce3402c.ada: Likewise. - * ada/acats-3/tests/ce/ce3402d.ada: Likewise. - * ada/acats-3/tests/ce/ce3402e.ada: Likewise. - * ada/acats-3/tests/ce/ce3403a.ada: Likewise. - * ada/acats-3/tests/ce/ce3403b.ada: Likewise. - * ada/acats-3/tests/ce/ce3403c.ada: Likewise. - * ada/acats-3/tests/ce/ce3403d.ada: Likewise. - * ada/acats-3/tests/ce/ce3403e.ada: Likewise. - * ada/acats-3/tests/ce/ce3403f.ada: Likewise. - * ada/acats-3/tests/ce/ce3404a.ada: Likewise. - * ada/acats-3/tests/ce/ce3404b.ada: Likewise. - * ada/acats-3/tests/ce/ce3404c.ada: Likewise. - * ada/acats-3/tests/ce/ce3404d.ada: Likewise. - * ada/acats-3/tests/ce/ce3405a.ada: Likewise. - * ada/acats-3/tests/ce/ce3405c.ada: Likewise. - * ada/acats-3/tests/ce/ce3405d.ada: Likewise. - * ada/acats-3/tests/ce/ce3406a.ada: Likewise. - * ada/acats-3/tests/ce/ce3406b.ada: Likewise. - * ada/acats-3/tests/ce/ce3406c.ada: Likewise. - * ada/acats-3/tests/ce/ce3406d.ada: Likewise. - * ada/acats-3/tests/ce/ce3407a.ada: Likewise. - * ada/acats-3/tests/ce/ce3407b.ada: Likewise. - * ada/acats-3/tests/ce/ce3407c.ada: Likewise. - * ada/acats-3/tests/ce/ce3408a.ada: Likewise. - * ada/acats-3/tests/ce/ce3408b.ada: Likewise. - * ada/acats-3/tests/ce/ce3408c.ada: Likewise. - * ada/acats-3/tests/ce/ce3409a.ada: Likewise. - * ada/acats-3/tests/ce/ce3409b.ada: Likewise. - * ada/acats-3/tests/ce/ce3409c.ada: Likewise. - * ada/acats-3/tests/ce/ce3409d.ada: Likewise. - * ada/acats-3/tests/ce/ce3409e.ada: Likewise. - * ada/acats-3/tests/ce/ce3410a.ada: Likewise. - * ada/acats-3/tests/ce/ce3410b.ada: Likewise. - * ada/acats-3/tests/ce/ce3410c.ada: Likewise. - * ada/acats-3/tests/ce/ce3410d.ada: Likewise. - * ada/acats-3/tests/ce/ce3410e.ada: Likewise. - * ada/acats-3/tests/ce/ce3411a.ada: Likewise. - * ada/acats-3/tests/ce/ce3411c.ada: Likewise. - * ada/acats-3/tests/ce/ce3412a.ada: Likewise. - * ada/acats-3/tests/ce/ce3413a.ada: Likewise. - * ada/acats-3/tests/ce/ce3413b.ada: Likewise. - * ada/acats-3/tests/ce/ce3413c.ada: Likewise. - * ada/acats-3/tests/ce/ce3414a.ada: Likewise. - * ada/acats-3/tests/ce/ce3601a.ada: Likewise. - * ada/acats-3/tests/ce/ce3602a.ada: Likewise. - * ada/acats-3/tests/ce/ce3602b.ada: Likewise. - * ada/acats-3/tests/ce/ce3602c.ada: Likewise. - * ada/acats-3/tests/ce/ce3602d.ada: Likewise. - * ada/acats-3/tests/ce/ce3603a.ada: Likewise. - * ada/acats-3/tests/ce/ce3604a.ada: Likewise. - * ada/acats-3/tests/ce/ce3604b.ada: Likewise. - * ada/acats-3/tests/ce/ce3605a.ada: Likewise. - * ada/acats-3/tests/ce/ce3605b.ada: Likewise. - * ada/acats-3/tests/ce/ce3605c.ada: Likewise. - * ada/acats-3/tests/ce/ce3605d.ada: Likewise. - * ada/acats-3/tests/ce/ce3605e.ada: Likewise. - * ada/acats-3/tests/ce/ce3606a.ada: Likewise. - * ada/acats-3/tests/ce/ce3606b.ada: Likewise. - * ada/acats-3/tests/ce/ce3701a.ada: Likewise. - * ada/acats-3/tests/ce/ce3704a.ada: Likewise. - * ada/acats-3/tests/ce/ce3704b.ada: Likewise. - * ada/acats-3/tests/ce/ce3704c.ada: Likewise. - * ada/acats-3/tests/ce/ce3704d.ada: Likewise. - * ada/acats-3/tests/ce/ce3704e.ada: Likewise. - * ada/acats-3/tests/ce/ce3704f.ada: Likewise. - * ada/acats-3/tests/ce/ce3704m.ada: Likewise. - * ada/acats-3/tests/ce/ce3704n.ada: Likewise. - * ada/acats-3/tests/ce/ce3704o.ada: Likewise. - * ada/acats-3/tests/ce/ce3705a.ada: Likewise. - * ada/acats-3/tests/ce/ce3705b.ada: Likewise. - * ada/acats-3/tests/ce/ce3705c.ada: Likewise. - * ada/acats-3/tests/ce/ce3705d.ada: Likewise. - * ada/acats-3/tests/ce/ce3705e.ada: Likewise. - * ada/acats-3/tests/ce/ce3706c.ada: Likewise. - * ada/acats-3/tests/ce/ce3706d.ada: Likewise. - * ada/acats-3/tests/ce/ce3706f.ada: Likewise. - * ada/acats-3/tests/ce/ce3706g.ada: Likewise. - * ada/acats-3/tests/ce/ce3707a.ada: Likewise. - * ada/acats-3/tests/ce/ce3708a.ada: Likewise. - * ada/acats-3/tests/ce/ce3801a.ada: Likewise. - * ada/acats-3/tests/ce/ce3801b.ada: Likewise. - * ada/acats-3/tests/ce/ce3804a.ada: Likewise. - * ada/acats-3/tests/ce/ce3804b.ada: Likewise. - * ada/acats-3/tests/ce/ce3804c.ada: Likewise. - * ada/acats-3/tests/ce/ce3804d.ada: Likewise. - * ada/acats-3/tests/ce/ce3804e.ada: Likewise. - * ada/acats-3/tests/ce/ce3804f.ada: Likewise. - * ada/acats-3/tests/ce/ce3804g.ada: Likewise. - * ada/acats-3/tests/ce/ce3804h.ada: Likewise. - * ada/acats-3/tests/ce/ce3804i.ada: Likewise. - * ada/acats-3/tests/ce/ce3804j.ada: Likewise. - * ada/acats-3/tests/ce/ce3804m.ada: Likewise. - * ada/acats-3/tests/ce/ce3804o.ada: Likewise. - * ada/acats-3/tests/ce/ce3804p.ada: Likewise. - * ada/acats-3/tests/ce/ce3805a.ada: Likewise. - * ada/acats-3/tests/ce/ce3805b.ada: Likewise. - * ada/acats-3/tests/ce/ce3806a.ada: Likewise. - * ada/acats-3/tests/ce/ce3806b.ada: Likewise. - * ada/acats-3/tests/ce/ce3806c.ada: Likewise. - * ada/acats-3/tests/ce/ce3806d.ada: Likewise. - * ada/acats-3/tests/ce/ce3806e.ada: Likewise. - * ada/acats-3/tests/ce/ce3806f.ada: Likewise. - * ada/acats-3/tests/ce/ce3806g.ada: Likewise. - * ada/acats-3/tests/ce/ce3806h.ada: Likewise. - * ada/acats-3/tests/ce/ce3809a.ada: Likewise. - * ada/acats-3/tests/ce/ce3809b.ada: Likewise. - * ada/acats-3/tests/ce/ce3810a.ada: Likewise. - * ada/acats-3/tests/ce/ce3810b.ada: Likewise. - * ada/acats-3/tests/ce/ce3815a.ada: Likewise. - * ada/acats-3/tests/ce/ce3901a.ada: Likewise. - * ada/acats-3/tests/ce/ce3902b.ada: Likewise. - * ada/acats-3/tests/ce/ce3904a.ada: Likewise. - * ada/acats-3/tests/ce/ce3904b.ada: Likewise. - * ada/acats-3/tests/ce/ce3905a.ada: Likewise. - * ada/acats-3/tests/ce/ce3905b.ada: Likewise. - * ada/acats-3/tests/ce/ce3905c.ada: Likewise. - * ada/acats-3/tests/ce/ce3905l.ada: Likewise. - * ada/acats-3/tests/ce/ce3906a.ada: Likewise. - * ada/acats-3/tests/ce/ce3906b.ada: Likewise. - * ada/acats-3/tests/ce/ce3906c.ada: Likewise. - * ada/acats-3/tests/ce/ce3906d.ada: Likewise. - * ada/acats-3/tests/ce/ce3906e.ada: Likewise. - * ada/acats-3/tests/ce/ce3906f.ada: Likewise. - * ada/acats-3/tests/ce/ce3907a.ada: Likewise. - * ada/acats-3/tests/ce/ce3908a.ada: Likewise. - * ada/acats-3/tests/cxa/cxa3001.a: Likewise. - * ada/acats-3/tests/cxa/cxa3002.a: Likewise. - * ada/acats-3/tests/cxa/cxa3003.a: Likewise. - * ada/acats-3/tests/cxa/cxa3004.a: Likewise. - * ada/acats-3/tests/cxa/cxa4001.a: Likewise. - * ada/acats-3/tests/cxa/cxa4002.a: Likewise. - * ada/acats-3/tests/cxa/cxa4003.a: Likewise. - * ada/acats-3/tests/cxa/cxa4004.a: Likewise. - * ada/acats-3/tests/cxa/cxa4005.a: Likewise. - * ada/acats-3/tests/cxa/cxa4006.a: Likewise. - * ada/acats-3/tests/cxa/cxa4007.a: Likewise. - * ada/acats-3/tests/cxa/cxa4008.a: Likewise. - * ada/acats-3/tests/cxa/cxa4009.a: Likewise. - * ada/acats-3/tests/cxa/cxa4010.a: Likewise. - * ada/acats-3/tests/cxa/cxa4011.a: Likewise. - * ada/acats-3/tests/cxa/cxa4012.a: Likewise. - * ada/acats-3/tests/cxa/cxa4013.a: Likewise. - * ada/acats-3/tests/cxa/cxa4014.a: Likewise. - * ada/acats-3/tests/cxa/cxa4015.a: Likewise. - * ada/acats-3/tests/cxa/cxa4016.a: Likewise. - * ada/acats-3/tests/cxa/cxa4017.a: Likewise. - * ada/acats-3/tests/cxa/cxa4018.a: Likewise. - * ada/acats-3/tests/cxa/cxa4019.a: Likewise. - * ada/acats-3/tests/cxa/cxa4020.a: Likewise. - * ada/acats-3/tests/cxa/cxa4021.a: Likewise. - * ada/acats-3/tests/cxa/cxa4022.a: Likewise. - * ada/acats-3/tests/cxa/cxa4023.a: Likewise. - * ada/acats-3/tests/cxa/cxa4024.a: Likewise. - * ada/acats-3/tests/cxa/cxa4025.a: Likewise. - * ada/acats-3/tests/cxa/cxa4026.a: Likewise. - * ada/acats-3/tests/cxa/cxa4027.a: Likewise. - * ada/acats-3/tests/cxa/cxa4028.a: Likewise. - * ada/acats-3/tests/cxa/cxa4029.a: Likewise. - * ada/acats-3/tests/cxa/cxa4030.a: Likewise. - * ada/acats-3/tests/cxa/cxa4031.a: Likewise. - * ada/acats-3/tests/cxa/cxa4032.a: Likewise. - * ada/acats-3/tests/cxa/cxa4033.a: Likewise. - * ada/acats-3/tests/cxa/cxa4034.a: Likewise. - * ada/acats-3/tests/cxa/cxa4037.a: Likewise. - * ada/acats-3/tests/cxa/cxa5011.a: Likewise. - * ada/acats-3/tests/cxa/cxa5012.a: Likewise. - * ada/acats-3/tests/cxa/cxa5013.a: Likewise. - * ada/acats-3/tests/cxa/cxa5015.a: Likewise. - * ada/acats-3/tests/cxa/cxa5016.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a01.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a02.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a03.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a04.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a05.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a06.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a07.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a08.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a09.a: Likewise. - * ada/acats-3/tests/cxa/cxa5a10.a: Likewise. - * ada/acats-3/tests/cxa/cxa8001.a: Likewise. - * ada/acats-3/tests/cxa/cxa8002.a: Likewise. - * ada/acats-3/tests/cxa/cxa8003.a: Likewise. - * ada/acats-3/tests/cxa/cxa9001.a: Likewise. - * ada/acats-3/tests/cxa/cxa9002.a: Likewise. - * ada/acats-3/tests/cxa/cxaa001.a: Likewise. - * ada/acats-3/tests/cxa/cxaa002.a: Likewise. - * ada/acats-3/tests/cxa/cxaa003.a: Likewise. - * ada/acats-3/tests/cxa/cxaa004.a: Likewise. - * ada/acats-3/tests/cxa/cxaa005.a: Likewise. - * ada/acats-3/tests/cxa/cxaa006.a: Likewise. - * ada/acats-3/tests/cxa/cxaa007.a: Likewise. - * ada/acats-3/tests/cxa/cxaa008.a: Likewise. - * ada/acats-3/tests/cxa/cxaa009.a: Likewise. - * ada/acats-3/tests/cxa/cxaa010.a: Likewise. - * ada/acats-3/tests/cxa/cxaa011.a: Likewise. - * ada/acats-3/tests/cxa/cxaa012.a: Likewise. - * ada/acats-3/tests/cxa/cxaa013.a: Likewise. - * ada/acats-3/tests/cxa/cxaa014.a: Likewise. - * ada/acats-3/tests/cxa/cxaa015.a: Likewise. - * ada/acats-3/tests/cxa/cxaa016.a: Likewise. - * ada/acats-3/tests/cxa/cxaa017.a: Likewise. - * ada/acats-3/tests/cxa/cxaa018.a: Likewise. - * ada/acats-3/tests/cxa/cxaa019.a: Likewise. - * ada/acats-3/tests/cxa/cxaa020.a: Likewise. - * ada/acats-3/tests/cxa/cxaa021.a: Likewise. - * ada/acats-3/tests/cxa/cxaa022.a: Likewise. - * ada/acats-3/tests/cxa/cxab001.a: Likewise. - * ada/acats-3/tests/cxa/cxab002.au: Likewise. - * ada/acats-3/tests/cxa/cxab003.au: Likewise. - * ada/acats-3/tests/cxa/cxab004.au: Likewise. - * ada/acats-3/tests/cxa/cxab005.au: Likewise. - * ada/acats-3/tests/cxa/cxac001.a: Likewise. - * ada/acats-3/tests/cxa/cxac002.a: Likewise. - * ada/acats-3/tests/cxa/cxac003.a: Likewise. - * ada/acats-3/tests/cxa/cxac004.a: Likewise. - * ada/acats-3/tests/cxa/cxac005.a: Likewise. - * ada/acats-3/tests/cxa/cxac006.a: Likewise. - * ada/acats-3/tests/cxa/cxac008.a: Likewise. - * ada/acats-3/tests/cxa/cxaca01.a: Likewise. - * ada/acats-3/tests/cxa/cxaca02.a: Likewise. - * ada/acats-3/tests/cxa/cxacb01.a: Likewise. - * ada/acats-3/tests/cxa/cxacb02.a: Likewise. - * ada/acats-3/tests/cxa/cxacc01.a: Likewise. - * ada/acats-3/tests/cxa/cxaf001.a: Likewise. - * ada/acats-3/tests/cxa/cxag001.a: Likewise. - * ada/acats-3/tests/cxa/cxah001.a: Likewise. - * ada/acats-3/tests/cxa/cxah002.a: Likewise. - * ada/acats-3/tests/cxa/cxai001.a: Likewise. - * ada/acats-3/tests/cxa/cxai002.a: Likewise. - * ada/acats-3/tests/cxa/cxai003.a: Likewise. - * ada/acats-3/tests/cxa/cxai004.a: Likewise. - * ada/acats-3/tests/cxa/cxai005.a: Likewise. - * ada/acats-3/tests/cxa/cxai006.a: Likewise. - * ada/acats-3/tests/cxa/cxaia01.a: Likewise. - * ada/acats-3/tests/cxa/cxaia02.a: Likewise. - * ada/acats-3/tests/cxa/cxaia03.a: Likewise. - * ada/acats-3/tests/cxa/cxaia04.a: Likewise. - * ada/acats-3/tests/cxa/cxaia05.a: Likewise. - * ada/acats-3/tests/cxa/cxaia06.a: Likewise. - * ada/acats-3/tests/cxb/cxb2001.a: Likewise. - * ada/acats-3/tests/cxb/cxb2002.a: Likewise. - * ada/acats-3/tests/cxb/cxb2003.a: Likewise. - * ada/acats-3/tests/cxb/cxb3001.a: Likewise. - * ada/acats-3/tests/cxb/cxb3002.a: Likewise. - * ada/acats-3/tests/cxb/cxb3003.a: Likewise. - * ada/acats-3/tests/cxb/cxb30040.c: Likewise. - * ada/acats-3/tests/cxb/cxb30041.am: Likewise. - * ada/acats-3/tests/cxb/cxb3005.a: Likewise. - * ada/acats-3/tests/cxb/cxb30060.c: Likewise. - * ada/acats-3/tests/cxb/cxb30061.am: Likewise. - * ada/acats-3/tests/cxb/cxb3007.a: Likewise. - * ada/acats-3/tests/cxb/cxb3008.a: Likewise. - * ada/acats-3/tests/cxb/cxb3009.a: Likewise. - * ada/acats-3/tests/cxb/cxb3010.a: Likewise. - * ada/acats-3/tests/cxb/cxb3011.a: Likewise. - * ada/acats-3/tests/cxb/cxb3012.a: Likewise. - * ada/acats-3/tests/cxb/cxb30130.c: Likewise. - * ada/acats-3/tests/cxb/cxb30131.c: Likewise. - * ada/acats-3/tests/cxb/cxb30132.am: Likewise. - * ada/acats-3/tests/cxb/cxb3014.a: Likewise. - * ada/acats-3/tests/cxb/cxb3015.a: Likewise. - * ada/acats-3/tests/cxb/cxb3016.a: Likewise. - * ada/acats-3/tests/cxb/cxb30170.c: Likewise. - * ada/acats-3/tests/cxb/cxb30171.a: Likewise. - * ada/acats-3/tests/cxb/cxb30172.am: Likewise. - * ada/acats-3/tests/cxb/cxb30230.c: Likewise. - * ada/acats-3/tests/cxb/cxb30231.am: Likewise. - * ada/acats-3/tests/cxb/cxb4001.a: Likewise. - * ada/acats-3/tests/cxb/cxb4002.a: Likewise. - * ada/acats-3/tests/cxb/cxb4003.a: Likewise. - * ada/acats-3/tests/cxb/cxb4004.a: Likewise. - * ada/acats-3/tests/cxb/cxb4005.a: Likewise. - * ada/acats-3/tests/cxb/cxb4006.a: Likewise. - * ada/acats-3/tests/cxb/cxb4007.a: Likewise. - * ada/acats-3/tests/cxb/cxb4008.a: Likewise. - * ada/acats-3/tests/cxb/cxb5001.a: Likewise. - * ada/acats-3/tests/cxb/cxb5002.a: Likewise. - * ada/acats-3/tests/cxb/cxb5003.a: Likewise. - * ada/acats-3/tests/cxf/cxf1001.a: Likewise. - * ada/acats-3/tests/cxf/cxf2001.a: Likewise. - * ada/acats-3/tests/cxf/cxf2002.a: Likewise. - * ada/acats-3/tests/cxf/cxf2003.a: Likewise. - * ada/acats-3/tests/cxf/cxf2004.a: Likewise. - * ada/acats-3/tests/cxf/cxf2005.a: Likewise. - * ada/acats-3/tests/cxf/cxf2a01.a: Likewise. - * ada/acats-3/tests/cxf/cxf2a02.a: Likewise. - * ada/acats-3/tests/cxf/cxf3001.a: Likewise. - * ada/acats-3/tests/cxf/cxf3002.a: Likewise. - * ada/acats-3/tests/cxf/cxf3003.a: Likewise. - * ada/acats-3/tests/cxf/cxf3004.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a01.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a02.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a03.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a04.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a05.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a06.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a07.a: Likewise. - * ada/acats-3/tests/cxf/cxf3a08.a: Likewise. - * ada/acats-3/tests/cxg/cxg1001.a: Likewise. - * ada/acats-3/tests/cxg/cxg1002.a: Likewise. - * ada/acats-3/tests/cxg/cxg1003.a: Likewise. - * ada/acats-3/tests/cxg/cxg1004.a: Likewise. - * ada/acats-3/tests/cxg/cxg1005.a: Likewise. - * ada/acats-3/tests/cxg/cxg2001.a: Likewise. - * ada/acats-3/tests/cxg/cxg2002.a: Likewise. - * ada/acats-3/tests/cxg/cxg2003.a: Likewise. - * ada/acats-3/tests/cxg/cxg2004.a: Likewise. - * ada/acats-3/tests/cxg/cxg2005.a: Likewise. - * ada/acats-3/tests/cxg/cxg2006.a: Likewise. - * ada/acats-3/tests/cxg/cxg2007.a: Likewise. - * ada/acats-3/tests/cxg/cxg2008.a: Likewise. - * ada/acats-3/tests/cxg/cxg2009.a: Likewise. - * ada/acats-3/tests/cxg/cxg2010.a: Likewise. - * ada/acats-3/tests/cxg/cxg2011.a: Likewise. - * ada/acats-3/tests/cxg/cxg2012.a: Likewise. - * ada/acats-3/tests/cxg/cxg2013.a: Likewise. - * ada/acats-3/tests/cxg/cxg2014.a: Likewise. - * ada/acats-3/tests/cxg/cxg2015.a: Likewise. - * ada/acats-3/tests/cxg/cxg2016.a: Likewise. - * ada/acats-3/tests/cxg/cxg2017.a: Likewise. - * ada/acats-3/tests/cxg/cxg2018.a: Likewise. - * ada/acats-3/tests/cxg/cxg2019.a: Likewise. - * ada/acats-3/tests/cxg/cxg2020.a: Likewise. - * ada/acats-3/tests/cxg/cxg2021.a: Likewise. - * ada/acats-3/tests/cxg/cxg2022.a: Likewise. - * ada/acats-3/tests/cxg/cxg2023.a: Likewise. - * ada/acats-3/tests/cxg/cxg2024.a: Likewise. - * ada/acats-3/tests/cxh/cxh3001.a: Likewise. - * ada/acats-3/tests/cxh/cxh3002.a: Likewise. - * ada/acats-3/tests/cxh/cxh30030.a: Likewise. - * ada/acats-3/tests/cxh/cxh30031.am: Likewise. - * ada/acats-3/tests/cz/cz1101a.ada: Likewise. - * ada/acats-3/tests/cz/cz1102a.ada: Likewise. - * ada/acats-3/tests/cz/cz1103a.ada: Likewise. - * ada/acats-3/tests/d/d4a002a.ada: Likewise. - * ada/acats-3/tests/d/d4a002b.ada: Likewise. - * ada/acats-3/tests/d/d4a004a.ada: Likewise. - * ada/acats-3/tests/d/d4a004b.ada: Likewise. - * ada/acats-3/tests/e/e28002b.ada: Likewise. - * ada/acats-3/tests/e/e28005d.ada: Likewise. - * ada/acats-3/tests/e/e52103y.ada: Likewise. - * ada/acats-3/tests/e/eb4011a.ada: Likewise. - * ada/acats-3/tests/e/eb4012a.ada: Likewise. - * ada/acats-3/tests/e/eb4014a.ada: Likewise. - * ada/acats-3/tests/e/ee3203a.ada: Likewise. - * ada/acats-3/tests/e/ee3204a.ada: Likewise. - * ada/acats-3/tests/e/ee3402b.ada: Likewise. - * ada/acats-3/tests/e/ee3409f.ada: Likewise. - * ada/acats-3/tests/e/ee3412c.ada: Likewise. - * ada/acats-3/tests/l/la140010.a: Likewise. - * ada/acats-3/tests/l/la140011.am: Likewise. - * ada/acats-3/tests/l/la140012.a: Likewise. - * ada/acats-3/tests/l/la140020.a: Likewise. - * ada/acats-3/tests/l/la140021.am: Likewise. - * ada/acats-3/tests/l/la140022.a: Likewise. - * ada/acats-3/tests/l/la140030.a: Likewise. - * ada/acats-3/tests/l/la140031.a: Likewise. - * ada/acats-3/tests/l/la140032.am: Likewise. - * ada/acats-3/tests/l/la140033.a: Likewise. - * ada/acats-3/tests/l/la140040.a: Likewise. - * ada/acats-3/tests/l/la140041.am: Likewise. - * ada/acats-3/tests/l/la140042.a: Likewise. - * ada/acats-3/tests/l/la140050.a: Likewise. - * ada/acats-3/tests/l/la140051.a: Likewise. - * ada/acats-3/tests/l/la140052.am: Likewise. - * ada/acats-3/tests/l/la140053.a: Likewise. - * ada/acats-3/tests/l/la140060.a: Likewise. - * ada/acats-3/tests/l/la140061.a: Likewise. - * ada/acats-3/tests/l/la140062.am: Likewise. - * ada/acats-3/tests/l/la140063.a: Likewise. - * ada/acats-3/tests/l/la140070.a: Likewise. - * ada/acats-3/tests/l/la140071.a: Likewise. - * ada/acats-3/tests/l/la140072.am: Likewise. - * ada/acats-3/tests/l/la140073.a: Likewise. - * ada/acats-3/tests/l/la140080.a: Likewise. - * ada/acats-3/tests/l/la140081.a: Likewise. - * ada/acats-3/tests/l/la140082.am: Likewise. - * ada/acats-3/tests/l/la140083.a: Likewise. - * ada/acats-3/tests/l/la140090.a: Likewise. - * ada/acats-3/tests/l/la140091.a: Likewise. - * ada/acats-3/tests/l/la140092.am: Likewise. - * ada/acats-3/tests/l/la140093.a: Likewise. - * ada/acats-3/tests/l/la140100.a: Likewise. - * ada/acats-3/tests/l/la140101.a: Likewise. - * ada/acats-3/tests/l/la140102.am: Likewise. - * ada/acats-3/tests/l/la140103.a: Likewise. - * ada/acats-3/tests/l/la140110.a: Likewise. - * ada/acats-3/tests/l/la140111.a: Likewise. - * ada/acats-3/tests/l/la140112.am: Likewise. - * ada/acats-3/tests/l/la140113.a: Likewise. - * ada/acats-3/tests/l/la140120.a: Likewise. - * ada/acats-3/tests/l/la140121.a: Likewise. - * ada/acats-3/tests/l/la140122.am: Likewise. - * ada/acats-3/tests/l/la140123.a: Likewise. - * ada/acats-3/tests/l/la140130.a: Likewise. - * ada/acats-3/tests/l/la140131.a: Likewise. - * ada/acats-3/tests/l/la140132.am: Likewise. - * ada/acats-3/tests/l/la140133.a: Likewise. - * ada/acats-3/tests/l/la140140.a: Likewise. - * ada/acats-3/tests/l/la140141.a: Likewise. - * ada/acats-3/tests/l/la140142.am: Likewise. - * ada/acats-3/tests/l/la140143.a: Likewise. - * ada/acats-3/tests/l/la140150.a: Likewise. - * ada/acats-3/tests/l/la140151.a: Likewise. - * ada/acats-3/tests/l/la140152.am: Likewise. - * ada/acats-3/tests/l/la140153.a: Likewise. - * ada/acats-3/tests/l/la140160.a: Likewise. - * ada/acats-3/tests/l/la140161.a: Likewise. - * ada/acats-3/tests/l/la140162.am: Likewise. - * ada/acats-3/tests/l/la140163.a: Likewise. - * ada/acats-3/tests/l/la140170.a: Likewise. - * ada/acats-3/tests/l/la140171.a: Likewise. - * ada/acats-3/tests/l/la140172.am: Likewise. - * ada/acats-3/tests/l/la140173.a: Likewise. - * ada/acats-3/tests/l/la140180.a: Likewise. - * ada/acats-3/tests/l/la140181.a: Likewise. - * ada/acats-3/tests/l/la140182.am: Likewise. - * ada/acats-3/tests/l/la140183.a: Likewise. - * ada/acats-3/tests/l/la140190.a: Likewise. - * ada/acats-3/tests/l/la140191.a: Likewise. - * ada/acats-3/tests/l/la140192.am: Likewise. - * ada/acats-3/tests/l/la140193.a: Likewise. - * ada/acats-3/tests/l/la140200.a: Likewise. - * ada/acats-3/tests/l/la140201.a: Likewise. - * ada/acats-3/tests/l/la140202.am: Likewise. - * ada/acats-3/tests/l/la140203.a: Likewise. - * ada/acats-3/tests/l/la140210.a: Likewise. - * ada/acats-3/tests/l/la140211.am: Likewise. - * ada/acats-3/tests/l/la140212.a: Likewise. - * ada/acats-3/tests/l/la140220.a: Likewise. - * ada/acats-3/tests/l/la140221.am: Likewise. - * ada/acats-3/tests/l/la140222.a: Likewise. - * ada/acats-3/tests/l/la140240.a: Likewise. - * ada/acats-3/tests/l/la140241.a: Likewise. - * ada/acats-3/tests/l/la140242.am: Likewise. - * ada/acats-3/tests/l/la140243.a: Likewise. - * ada/acats-3/tests/l/la140250.a: Likewise. - * ada/acats-3/tests/l/la140251.am: Likewise. - * ada/acats-3/tests/l/la140252.a: Likewise. - * ada/acats-3/tests/l/la140260.a: Likewise. - * ada/acats-3/tests/l/la140261.a: Likewise. - * ada/acats-3/tests/l/la140262.am: Likewise. - * ada/acats-3/tests/l/la140263.a: Likewise. - * ada/acats-3/tests/l/la140270.a: Likewise. - * ada/acats-3/tests/l/la140271.a: Likewise. - * ada/acats-3/tests/l/la140272.am: Likewise. - * ada/acats-3/tests/l/la140273.a: Likewise. - -2025-05-24 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats-2/run_all.sh: Minor tweaks in comments. - * ada/acats-2/tests/cd/cd300050.am: Upgrade to 2.6K revision. - * ada/acats-2/tests/cd/cd300051.c: Likewise. - * ada/acats-2/tests/cxa/cxa4001.a: Likewise. - * ada/acats-2/tests/cxb/cxb30131.c: Likewise. - -2025-05-24 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats/*: Rename into ada/acats-2/*. - * ada/acats-2/run_all.sh: Adjust to above renaming. - * ada/acats-2/support/impdefc.a: New file. - * ada/acats-2/elabd.lst: New file. - * ada/acats-2/floatstore.lst: New file. - * ada/acats-2/norun.lst: New file. - * ada/acats-2/run_acats.sh: New file. - * ada/acats-2/run_test.exp: New file. - * ada/acats-2/stackcheck.lst: New file. - * ada/acats-2/support/acats26.lst: New file. - * ada/acats-2/support/checkfil.ada: New file. - * ada/acats-2/support/enumchek.ada: New file. - * ada/acats-2/support/f340a000.a: New file. - * ada/acats-2/support/f340a001.a: New file. - * ada/acats-2/support/f341a00.a: New file. - * ada/acats-2/support/f390a00.a: New file. - * ada/acats-2/support/f392a00.a: New file. - * ada/acats-2/support/f392c00.a: New file. - * ada/acats-2/support/f392d00.a: New file. - * ada/acats-2/support/f393a00.a: New file. - * ada/acats-2/support/f393b00.a: New file. - * ada/acats-2/support/f3a2a00.a: New file. - * ada/acats-2/support/f460a00.a: New file. - * ada/acats-2/support/f730a000.a: New file. - * ada/acats-2/support/f730a001.a: New file. - * ada/acats-2/support/f731a00.a: New file. - * ada/acats-2/support/f940a00.a: New file. - * ada/acats-2/support/f954a00.a: New file. - * ada/acats-2/support/fa11a00.a: New file. - * ada/acats-2/support/fa11b00.a: New file. - * ada/acats-2/support/fa11c00.a: New file. - * ada/acats-2/support/fa11d00.a: New file. - * ada/acats-2/support/fa13a00.a: New file. - * ada/acats-2/support/fa13b00.a: New file. - * ada/acats-2/support/fa21a00.a: New file. - * ada/acats-2/support/fb20a00.a: New file. - * ada/acats-2/support/fb40a00.a: New file. - * ada/acats-2/support/fc50a00.a: New file. - * ada/acats-2/support/fc51a00.a: New file. - * ada/acats-2/support/fc51b00.a: New file. - * ada/acats-2/support/fc51c00.a: New file. - * ada/acats-2/support/fc51d00.a: New file. - * ada/acats-2/support/fc54a00.a: New file. - * ada/acats-2/support/fc70a00.a: New file. - * ada/acats-2/support/fc70b00.a: New file. - * ada/acats-2/support/fc70c00.a: New file. - * ada/acats-2/support/fcndecl.ada: New file. - * ada/acats-2/support/fd72a00.a: New file. - * ada/acats-2/support/fdb0a00.a: New file. - * ada/acats-2/support/fdd2a00.a: New file. - * ada/acats-2/support/fxa5a00.a: New file. - * ada/acats-2/support/fxaca00.a: New file. - * ada/acats-2/support/fxacb00.a: New file. - * ada/acats-2/support/fxacc00.a: New file. - * ada/acats-2/support/fxc6a00.a: New file. - * ada/acats-2/support/fxe2a00.a: New file. - * ada/acats-2/support/fxf2a00.a: New file. - * ada/acats-2/support/fxf3a00.a: New file. - * ada/acats-2/support/impbit.adb: New file. - * ada/acats-2/support/impdef.a: New file. - * ada/acats-2/support/impdefd.a: New file. - * ada/acats-2/support/impdefe.a: New file. - * ada/acats-2/support/impdefg.a: New file. - * ada/acats-2/support/impdefh.a: New file. - * ada/acats-2/support/lencheck.ada: New file. - * ada/acats-2/support/macro.dfs: New file. - * ada/acats-2/support/macrodef.adb: New file. - * ada/acats-2/support/macrosub.ada: New file. - * ada/acats-2/support/repbody.ada: New file. - * ada/acats-2/support/repspec.ada: New file. - * ada/acats-2/support/spprt13s.tst: New file. - * ada/acats-2/support/tctouch.ada: New file. - * ada/acats-2/support/tsttests.dat: New file. - * ada/acats-2/support/widechr.a: New file. - * ada/acats-2/tests/a/a22006b.ada: New file. - * ada/acats-2/tests/a/a22006c.ada: New file. - * ada/acats-2/tests/a/a22006d.ada: New file. - * ada/acats-2/tests/a/a26007a.tst: New file. - * ada/acats-2/tests/a/a27003a.ada: New file. - * ada/acats-2/tests/a/a29003a.ada: New file. - * ada/acats-2/tests/a/a2a031a.ada: New file. - * ada/acats-2/tests/a/a33003a.ada: New file. - * ada/acats-2/tests/a/a34017c.ada: New file. - * ada/acats-2/tests/a/a35101b.ada: New file. - * ada/acats-2/tests/a/a35402a.ada: New file. - * ada/acats-2/tests/a/a35801f.ada: New file. - * ada/acats-2/tests/a/a35902c.ada: New file. - * ada/acats-2/tests/a/a38106d.ada: New file. - * ada/acats-2/tests/a/a38106e.ada: New file. - * ada/acats-2/tests/a/a49027a.ada: New file. - * ada/acats-2/tests/a/a49027b.ada: New file. - * ada/acats-2/tests/a/a49027c.ada: New file. - * ada/acats-2/tests/a/a54b01a.ada: New file. - * ada/acats-2/tests/a/a54b02a.ada: New file. - * ada/acats-2/tests/a/a55b12a.ada: New file. - * ada/acats-2/tests/a/a55b13a.ada: New file. - * ada/acats-2/tests/a/a55b14a.ada: New file. - * ada/acats-2/tests/a/a71004a.ada: New file. - * ada/acats-2/tests/a/a73001i.ada: New file. - * ada/acats-2/tests/a/a73001j.ada: New file. - * ada/acats-2/tests/a/a74105b.ada: New file. - * ada/acats-2/tests/a/a74106a.ada: New file. - * ada/acats-2/tests/a/a74106b.ada: New file. - * ada/acats-2/tests/a/a74106c.ada: New file. - * ada/acats-2/tests/a/a74205e.ada: New file. - * ada/acats-2/tests/a/a74205f.ada: New file. - * ada/acats-2/tests/a/a83009a.ada: New file. - * ada/acats-2/tests/a/a83009b.ada: New file. - * ada/acats-2/tests/a/a83a02a.ada: New file. - * ada/acats-2/tests/a/a83a02b.ada: New file. - * ada/acats-2/tests/a/a83a06a.ada: New file. - * ada/acats-2/tests/a/a83a08a.ada: New file. - * ada/acats-2/tests/a/a83c01c.ada: New file. - * ada/acats-2/tests/a/a83c01h.ada: New file. - * ada/acats-2/tests/a/a83c01i.ada: New file. - * ada/acats-2/tests/a/a85007d.ada: New file. - * ada/acats-2/tests/a/a85013b.ada: New file. - * ada/acats-2/tests/a/a87b59a.ada: New file. - * ada/acats-2/tests/a/a95001c.ada: New file. - * ada/acats-2/tests/a/a95074d.ada: New file. - * ada/acats-2/tests/a/a97106a.ada: New file. - * ada/acats-2/tests/a/a99006a.ada: New file. - * ada/acats-2/tests/a/aa2010a.ada: New file. - * ada/acats-2/tests/a/aa2012a.ada: New file. - * ada/acats-2/tests/a/ac1015b.ada: New file. - * ada/acats-2/tests/a/ac3106a.ada: New file. - * ada/acats-2/tests/a/ac3206a.ada: New file. - * ada/acats-2/tests/a/ac3207a.ada: New file. - * ada/acats-2/tests/a/ad7001b.ada: New file. - * ada/acats-2/tests/a/ad7001c0.ada: New file. - * ada/acats-2/tests/a/ad7001c1.ada: New file. - * ada/acats-2/tests/a/ad7001d0.ada: New file. - * ada/acats-2/tests/a/ad7001d1.ada: New file. - * ada/acats-2/tests/a/ad7006a.ada: New file. - * ada/acats-2/tests/a/ad7101a.ada: New file. - * ada/acats-2/tests/a/ad7101c.ada: New file. - * ada/acats-2/tests/a/ad7102a.ada: New file. - * ada/acats-2/tests/a/ad7103a.ada: New file. - * ada/acats-2/tests/a/ad7103c.ada: New file. - * ada/acats-2/tests/a/ad7104a.ada: New file. - * ada/acats-2/tests/a/ad7201a.ada: New file. - * ada/acats-2/tests/a/ad7203b.ada: New file. - * ada/acats-2/tests/a/ad7205b.ada: New file. - * ada/acats-2/tests/a/ad8011a.tst: New file. - * ada/acats-2/tests/a/ada101a.ada: New file. - * ada/acats-2/tests/a/ae2113a.ada: New file. - * ada/acats-2/tests/a/ae2113b.ada: New file. - * ada/acats-2/tests/a/ae3002g.ada: New file. - * ada/acats-2/tests/a/ae3101a.ada: New file. - * ada/acats-2/tests/a/ae3702a.ada: New file. - * ada/acats-2/tests/a/ae3709a.ada: New file. - * ada/acats-2/tests/c2/c23001a.ada: New file. - * ada/acats-2/tests/c2/c23003a.tst: New file. - * ada/acats-2/tests/c2/c23003b.tst: New file. - * ada/acats-2/tests/c2/c23003g.tst: New file. - * ada/acats-2/tests/c2/c23003i.tst: New file. - * ada/acats-2/tests/c2/c23006a.ada: New file. - * ada/acats-2/tests/c2/c23006b.ada: New file. - * ada/acats-2/tests/c2/c23006c.ada: New file. - * ada/acats-2/tests/c2/c23006d.ada: New file. - * ada/acats-2/tests/c2/c23006e.ada: New file. - * ada/acats-2/tests/c2/c23006f.ada: New file. - * ada/acats-2/tests/c2/c23006g.ada: New file. - * ada/acats-2/tests/c2/c24002d.ada: New file. - * ada/acats-2/tests/c2/c24003a.ada: New file. - * ada/acats-2/tests/c2/c24003b.ada: New file. - * ada/acats-2/tests/c2/c24003c.ada: New file. - * ada/acats-2/tests/c2/c24106a.ada: New file. - * ada/acats-2/tests/c2/c24202d.ada: New file. - * ada/acats-2/tests/c2/c24203a.ada: New file. - * ada/acats-2/tests/c2/c24203b.ada: New file. - * ada/acats-2/tests/c2/c24207a.ada: New file. - * ada/acats-2/tests/c2/c24211a.ada: New file. - * ada/acats-2/tests/c2/c250001.aw: New file. - * ada/acats-2/tests/c2/c250002.aw: New file. - * ada/acats-2/tests/c2/c25001a.ada: New file. - * ada/acats-2/tests/c2/c25001b.ada: New file. - * ada/acats-2/tests/c2/c26006a.ada: New file. - * ada/acats-2/tests/c2/c26008a.ada: New file. - * ada/acats-2/tests/c2/c2a001a.ada: New file. - * ada/acats-2/tests/c2/c2a001b.ada: New file. - * ada/acats-2/tests/c2/c2a001c.ada: New file. - * ada/acats-2/tests/c2/c2a002a.ada: New file. - * ada/acats-2/tests/c2/c2a008a.ada: New file. - * ada/acats-2/tests/c2/c2a021b.ada: New file. - * ada/acats-2/tests/c3/c32001a.ada: New file. - * ada/acats-2/tests/c3/c32001b.ada: New file. - * ada/acats-2/tests/c3/c32001c.ada: New file. - * ada/acats-2/tests/c3/c32001d.ada: New file. - * ada/acats-2/tests/c3/c32001e.ada: New file. - * ada/acats-2/tests/c3/c32107a.ada: New file. - * ada/acats-2/tests/c3/c32107c.ada: New file. - * ada/acats-2/tests/c3/c32108a.ada: New file. - * ada/acats-2/tests/c3/c32108b.ada: New file. - * ada/acats-2/tests/c3/c32111a.ada: New file. - * ada/acats-2/tests/c3/c32111b.ada: New file. - * ada/acats-2/tests/c3/c32112b.ada: New file. - * ada/acats-2/tests/c3/c32113a.ada: New file. - * ada/acats-2/tests/c3/c32115a.ada: New file. - * ada/acats-2/tests/c3/c32115b.ada: New file. - * ada/acats-2/tests/c3/c330001.a: New file. - * ada/acats-2/tests/c3/c330002.a: New file. - * ada/acats-2/tests/c3/c332001.a: New file. - * ada/acats-2/tests/c3/c340001.a: New file. - * ada/acats-2/tests/c3/c34001a.ada: New file. - * ada/acats-2/tests/c3/c34001c.ada: New file. - * ada/acats-2/tests/c3/c34001d.ada: New file. - * ada/acats-2/tests/c3/c34001f.ada: New file. - * ada/acats-2/tests/c3/c34002a.ada: New file. - * ada/acats-2/tests/c3/c34002c.ada: New file. - * ada/acats-2/tests/c3/c34003a.ada: New file. - * ada/acats-2/tests/c3/c34003c.ada: New file. - * ada/acats-2/tests/c3/c34004a.ada: New file. - * ada/acats-2/tests/c3/c34004c.ada: New file. - * ada/acats-2/tests/c3/c34005a.ada: New file. - * ada/acats-2/tests/c3/c34005c.ada: New file. - * ada/acats-2/tests/c3/c34005d.ada: New file. - * ada/acats-2/tests/c3/c34005f.ada: New file. - * ada/acats-2/tests/c3/c34005g.ada: New file. - * ada/acats-2/tests/c3/c34005i.ada: New file. - * ada/acats-2/tests/c3/c34005j.ada: New file. - * ada/acats-2/tests/c3/c34005l.ada: New file. - * ada/acats-2/tests/c3/c34005m.ada: New file. - * ada/acats-2/tests/c3/c34005o.ada: New file. - * ada/acats-2/tests/c3/c34005p.ada: New file. - * ada/acats-2/tests/c3/c34005r.ada: New file. - * ada/acats-2/tests/c3/c34005s.ada: New file. - * ada/acats-2/tests/c3/c34005u.ada: New file. - * ada/acats-2/tests/c3/c34005v.ada: New file. - * ada/acats-2/tests/c3/c34006a.ada: New file. - * ada/acats-2/tests/c3/c34006d.ada: New file. - * ada/acats-2/tests/c3/c34006f.ada: New file. - * ada/acats-2/tests/c3/c34006g.ada: New file. - * ada/acats-2/tests/c3/c34006j.ada: New file. - * ada/acats-2/tests/c3/c34006l.ada: New file. - * ada/acats-2/tests/c3/c34007a.ada: New file. - * ada/acats-2/tests/c3/c34007d.ada: New file. - * ada/acats-2/tests/c3/c34007f.ada: New file. - * ada/acats-2/tests/c3/c34007g.ada: New file. - * ada/acats-2/tests/c3/c34007i.ada: New file. - * ada/acats-2/tests/c3/c34007j.ada: New file. - * ada/acats-2/tests/c3/c34007m.ada: New file. - * ada/acats-2/tests/c3/c34007p.ada: New file. - * ada/acats-2/tests/c3/c34007r.ada: New file. - * ada/acats-2/tests/c3/c34007s.ada: New file. - * ada/acats-2/tests/c3/c34007u.ada: New file. - * ada/acats-2/tests/c3/c34007v.ada: New file. - * ada/acats-2/tests/c3/c34008a.ada: New file. - * ada/acats-2/tests/c3/c34009a.ada: New file. - * ada/acats-2/tests/c3/c34009d.ada: New file. - * ada/acats-2/tests/c3/c34009f.ada: New file. - * ada/acats-2/tests/c3/c34009g.ada: New file. - * ada/acats-2/tests/c3/c34009j.ada: New file. - * ada/acats-2/tests/c3/c34009l.ada: New file. - * ada/acats-2/tests/c3/c34011b.ada: New file. - * ada/acats-2/tests/c3/c34012a.ada: New file. - * ada/acats-2/tests/c3/c34014a.ada: New file. - * ada/acats-2/tests/c3/c34014c.ada: New file. - * ada/acats-2/tests/c3/c34014e.ada: New file. - * ada/acats-2/tests/c3/c34014g.ada: New file. - * ada/acats-2/tests/c3/c34014h.ada: New file. - * ada/acats-2/tests/c3/c34014n.ada: New file. - * ada/acats-2/tests/c3/c34014p.ada: New file. - * ada/acats-2/tests/c3/c34014r.ada: New file. - * ada/acats-2/tests/c3/c34014t.ada: New file. - * ada/acats-2/tests/c3/c34014u.ada: New file. - * ada/acats-2/tests/c3/c34018a.ada: New file. - * ada/acats-2/tests/c3/c340a01.a: New file. - * ada/acats-2/tests/c3/c340a02.a: New file. - * ada/acats-2/tests/c3/c341a01.a: New file. - * ada/acats-2/tests/c3/c341a02.a: New file. - * ada/acats-2/tests/c3/c341a03.a: New file. - * ada/acats-2/tests/c3/c341a04.a: New file. - * ada/acats-2/tests/c3/c35003a.ada: New file. - * ada/acats-2/tests/c3/c35003b.ada: New file. - * ada/acats-2/tests/c3/c35003d.ada: New file. - * ada/acats-2/tests/c3/c35102a.ada: New file. - * ada/acats-2/tests/c3/c352001.a: New file. - * ada/acats-2/tests/c3/c354002.a: New file. - * ada/acats-2/tests/c3/c354003.a: New file. - * ada/acats-2/tests/c3/c35502a.ada: New file. - * ada/acats-2/tests/c3/c35502b.ada: New file. - * ada/acats-2/tests/c3/c35502c.ada: New file. - * ada/acats-2/tests/c3/c35502d.tst: New file. - * ada/acats-2/tests/c3/c35502e.ada: New file. - * ada/acats-2/tests/c3/c35502f.tst: New file. - * ada/acats-2/tests/c3/c35502g.ada: New file. - * ada/acats-2/tests/c3/c35502h.ada: New file. - * ada/acats-2/tests/c3/c35502i.ada: New file. - * ada/acats-2/tests/c3/c35502j.ada: New file. - * ada/acats-2/tests/c3/c35502k.ada: New file. - * ada/acats-2/tests/c3/c35502l.ada: New file. - * ada/acats-2/tests/c3/c35502m.ada: New file. - * ada/acats-2/tests/c3/c35502n.ada: New file. - * ada/acats-2/tests/c3/c35502o.ada: New file. - * ada/acats-2/tests/c3/c35502p.ada: New file. - * ada/acats-2/tests/c3/c35503a.ada: New file. - * ada/acats-2/tests/c3/c35503b.ada: New file. - * ada/acats-2/tests/c3/c35503c.ada: New file. - * ada/acats-2/tests/c3/c35503d.tst: New file. - * ada/acats-2/tests/c3/c35503e.ada: New file. - * ada/acats-2/tests/c3/c35503f.tst: New file. - * ada/acats-2/tests/c3/c35503g.ada: New file. - * ada/acats-2/tests/c3/c35503h.ada: New file. - * ada/acats-2/tests/c3/c35503k.ada: New file. - * ada/acats-2/tests/c3/c35503l.ada: New file. - * ada/acats-2/tests/c3/c35503o.ada: New file. - * ada/acats-2/tests/c3/c35503p.ada: New file. - * ada/acats-2/tests/c3/c35504a.ada: New file. - * ada/acats-2/tests/c3/c35504b.ada: New file. - * ada/acats-2/tests/c3/c35505c.ada: New file. - * ada/acats-2/tests/c3/c35505e.ada: New file. - * ada/acats-2/tests/c3/c35505f.ada: New file. - * ada/acats-2/tests/c3/c35507a.ada: New file. - * ada/acats-2/tests/c3/c35507b.ada: New file. - * ada/acats-2/tests/c3/c35507c.ada: New file. - * ada/acats-2/tests/c3/c35507e.ada: New file. - * ada/acats-2/tests/c3/c35507g.ada: New file. - * ada/acats-2/tests/c3/c35507h.ada: New file. - * ada/acats-2/tests/c3/c35507i.ada: New file. - * ada/acats-2/tests/c3/c35507j.ada: New file. - * ada/acats-2/tests/c3/c35507k.ada: New file. - * ada/acats-2/tests/c3/c35507l.ada: New file. - * ada/acats-2/tests/c3/c35507m.ada: New file. - * ada/acats-2/tests/c3/c35507n.ada: New file. - * ada/acats-2/tests/c3/c35507o.ada: New file. - * ada/acats-2/tests/c3/c35507p.ada: New file. - * ada/acats-2/tests/c3/c35508a.ada: New file. - * ada/acats-2/tests/c3/c35508b.ada: New file. - * ada/acats-2/tests/c3/c35508c.ada: New file. - * ada/acats-2/tests/c3/c35508e.ada: New file. - * ada/acats-2/tests/c3/c35508g.ada: New file. - * ada/acats-2/tests/c3/c35508h.ada: New file. - * ada/acats-2/tests/c3/c35508k.ada: New file. - * ada/acats-2/tests/c3/c35508l.ada: New file. - * ada/acats-2/tests/c3/c35508o.ada: New file. - * ada/acats-2/tests/c3/c35508p.ada: New file. - * ada/acats-2/tests/c3/c35703a.ada: New file. - * ada/acats-2/tests/c3/c35704a.ada: New file. - * ada/acats-2/tests/c3/c35704b.ada: New file. - * ada/acats-2/tests/c3/c35704c.ada: New file. - * ada/acats-2/tests/c3/c35704d.ada: New file. - * ada/acats-2/tests/c3/c35801d.ada: New file. - * ada/acats-2/tests/c3/c35902d.ada: New file. - * ada/acats-2/tests/c3/c35904a.ada: New file. - * ada/acats-2/tests/c3/c35904b.ada: New file. - * ada/acats-2/tests/c3/c35a02a.ada: New file. - * ada/acats-2/tests/c3/c35a05a.ada: New file. - * ada/acats-2/tests/c3/c35a05d.ada: New file. - * ada/acats-2/tests/c3/c35a05n.ada: New file. - * ada/acats-2/tests/c3/c35a05q.ada: New file. - * ada/acats-2/tests/c3/c35a07a.ada: New file. - * ada/acats-2/tests/c3/c35a07d.ada: New file. - * ada/acats-2/tests/c3/c35a08b.ada: New file. - * ada/acats-2/tests/c3/c360002.a: New file. - * ada/acats-2/tests/c3/c36104a.ada: New file. - * ada/acats-2/tests/c3/c36104b.ada: New file. - * ada/acats-2/tests/c3/c36172a.ada: New file. - * ada/acats-2/tests/c3/c36172b.ada: New file. - * ada/acats-2/tests/c3/c36172c.ada: New file. - * ada/acats-2/tests/c3/c36174a.ada: New file. - * ada/acats-2/tests/c3/c36180a.ada: New file. - * ada/acats-2/tests/c3/c36202c.ada: New file. - * ada/acats-2/tests/c3/c36203a.ada: New file. - * ada/acats-2/tests/c3/c36204a.ada: New file. - * ada/acats-2/tests/c3/c36204b.ada: New file. - * ada/acats-2/tests/c3/c36204c.ada: New file. - * ada/acats-2/tests/c3/c36204d.ada: New file. - * ada/acats-2/tests/c3/c36205a.ada: New file. - * ada/acats-2/tests/c3/c36205b.ada: New file. - * ada/acats-2/tests/c3/c36205c.ada: New file. - * ada/acats-2/tests/c3/c36205d.ada: New file. - * ada/acats-2/tests/c3/c36205e.ada: New file. - * ada/acats-2/tests/c3/c36205f.ada: New file. - * ada/acats-2/tests/c3/c36205g.ada: New file. - * ada/acats-2/tests/c3/c36205h.ada: New file. - * ada/acats-2/tests/c3/c36205i.ada: New file. - * ada/acats-2/tests/c3/c36205j.ada: New file. - * ada/acats-2/tests/c3/c36205k.ada: New file. - * ada/acats-2/tests/c3/c36205l.ada: New file. - * ada/acats-2/tests/c3/c36301a.ada: New file. - * ada/acats-2/tests/c3/c36301b.ada: New file. - * ada/acats-2/tests/c3/c36302a.ada: New file. - * ada/acats-2/tests/c3/c36304a.ada: New file. - * ada/acats-2/tests/c3/c36305a.ada: New file. - * ada/acats-2/tests/c3/c37002a.ada: New file. - * ada/acats-2/tests/c3/c37003a.ada: New file. - * ada/acats-2/tests/c3/c37003b.ada: New file. - * ada/acats-2/tests/c3/c37005a.ada: New file. - * ada/acats-2/tests/c3/c37006a.ada: New file. - * ada/acats-2/tests/c3/c37008a.ada: New file. - * ada/acats-2/tests/c3/c37008b.ada: New file. - * ada/acats-2/tests/c3/c37009a.ada: New file. - * ada/acats-2/tests/c3/c37010a.ada: New file. - * ada/acats-2/tests/c3/c37010b.ada: New file. - * ada/acats-2/tests/c3/c371001.a: New file. - * ada/acats-2/tests/c3/c371002.a: New file. - * ada/acats-2/tests/c3/c371003.a: New file. - * ada/acats-2/tests/c3/c37102b.ada: New file. - * ada/acats-2/tests/c3/c37103a.ada: New file. - * ada/acats-2/tests/c3/c37105a.ada: New file. - * ada/acats-2/tests/c3/c37107a.ada: New file. - * ada/acats-2/tests/c3/c37108b.ada: New file. - * ada/acats-2/tests/c3/c37206a.ada: New file. - * ada/acats-2/tests/c3/c37207a.ada: New file. - * ada/acats-2/tests/c3/c37208a.ada: New file. - * ada/acats-2/tests/c3/c37208b.ada: New file. - * ada/acats-2/tests/c3/c37209a.ada: New file. - * ada/acats-2/tests/c3/c37209b.ada: New file. - * ada/acats-2/tests/c3/c37210a.ada: New file. - * ada/acats-2/tests/c3/c37211a.ada: New file. - * ada/acats-2/tests/c3/c37211b.ada: New file. - * ada/acats-2/tests/c3/c37211c.ada: New file. - * ada/acats-2/tests/c3/c37211d.ada: New file. - * ada/acats-2/tests/c3/c37211e.ada: New file. - * ada/acats-2/tests/c3/c37213b.ada: New file. - * ada/acats-2/tests/c3/c37213d.ada: New file. - * ada/acats-2/tests/c3/c37213f.ada: New file. - * ada/acats-2/tests/c3/c37213h.ada: New file. - * ada/acats-2/tests/c3/c37213j.ada: New file. - * ada/acats-2/tests/c3/c37213k.ada: New file. - * ada/acats-2/tests/c3/c37213l.ada: New file. - * ada/acats-2/tests/c3/c37215b.ada: New file. - * ada/acats-2/tests/c3/c37215d.ada: New file. - * ada/acats-2/tests/c3/c37215f.ada: New file. - * ada/acats-2/tests/c3/c37215h.ada: New file. - * ada/acats-2/tests/c3/c37217a.ada: New file. - * ada/acats-2/tests/c3/c37217b.ada: New file. - * ada/acats-2/tests/c3/c37217c.ada: New file. - * ada/acats-2/tests/c3/c37304a.ada: New file. - * ada/acats-2/tests/c3/c37305a.ada: New file. - * ada/acats-2/tests/c3/c37306a.ada: New file. - * ada/acats-2/tests/c3/c37309a.ada: New file. - * ada/acats-2/tests/c3/c37310a.ada: New file. - * ada/acats-2/tests/c3/c37312a.ada: New file. - * ada/acats-2/tests/c3/c37402a.ada: New file. - * ada/acats-2/tests/c3/c37403a.ada: New file. - * ada/acats-2/tests/c3/c37404a.ada: New file. - * ada/acats-2/tests/c3/c37404b.ada: New file. - * ada/acats-2/tests/c3/c37405a.ada: New file. - * ada/acats-2/tests/c3/c37411a.ada: New file. - * ada/acats-2/tests/c3/c380001.a: New file. - * ada/acats-2/tests/c3/c380002.a: New file. - * ada/acats-2/tests/c3/c380003.a: New file. - * ada/acats-2/tests/c3/c380004.a: New file. - * ada/acats-2/tests/c3/c38002a.ada: New file. - * ada/acats-2/tests/c3/c38002b.ada: New file. - * ada/acats-2/tests/c3/c38005a.ada: New file. - * ada/acats-2/tests/c3/c38005b.ada: New file. - * ada/acats-2/tests/c3/c38005c.ada: New file. - * ada/acats-2/tests/c3/c38006a.ada: New file. - * ada/acats-2/tests/c3/c38102a.ada: New file. - * ada/acats-2/tests/c3/c38102b.ada: New file. - * ada/acats-2/tests/c3/c38102c.ada: New file. - * ada/acats-2/tests/c3/c38102d.ada: New file. - * ada/acats-2/tests/c3/c38102e.ada: New file. - * ada/acats-2/tests/c3/c38104a.ada: New file. - * ada/acats-2/tests/c3/c38107a.ada: New file. - * ada/acats-2/tests/c3/c38107b.ada: New file. - * ada/acats-2/tests/c3/c38108a.ada: New file. - * ada/acats-2/tests/c3/c38108b.ada: New file. - * ada/acats-2/tests/c3/c38108c0.ada: New file. - * ada/acats-2/tests/c3/c38108c1.ada: New file. - * ada/acats-2/tests/c3/c38108c2.ada: New file. - * ada/acats-2/tests/c3/c38108d0.ada: New file. - * ada/acats-2/tests/c3/c38108d1.ada: New file. - * ada/acats-2/tests/c3/c38202a.ada: New file. - * ada/acats-2/tests/c3/c3900010.a: New file. - * ada/acats-2/tests/c3/c3900011.am: New file. - * ada/acats-2/tests/c3/c390002.a: New file. - * ada/acats-2/tests/c3/c390003.a: New file. - * ada/acats-2/tests/c3/c390004.a: New file. - * ada/acats-2/tests/c3/c3900050.a: New file. - * ada/acats-2/tests/c3/c3900051.a: New file. - * ada/acats-2/tests/c3/c3900052.a: New file. - * ada/acats-2/tests/c3/c3900053.am: New file. - * ada/acats-2/tests/c3/c3900060.a: New file. - * ada/acats-2/tests/c3/c3900061.a: New file. - * ada/acats-2/tests/c3/c3900062.a: New file. - * ada/acats-2/tests/c3/c3900063.am: New file. - * ada/acats-2/tests/c3/c390007.a: New file. - * ada/acats-2/tests/c3/c390010.a: New file. - * ada/acats-2/tests/c3/c390011.a: New file. - * ada/acats-2/tests/c3/c39006a.ada: New file. - * ada/acats-2/tests/c3/c39006b.ada: New file. - * ada/acats-2/tests/c3/c39006c0.ada: New file. - * ada/acats-2/tests/c3/c39006c1.ada: New file. - * ada/acats-2/tests/c3/c39006d.ada: New file. - * ada/acats-2/tests/c3/c39006e.ada: New file. - * ada/acats-2/tests/c3/c39006f0.ada: New file. - * ada/acats-2/tests/c3/c39006f1.ada: New file. - * ada/acats-2/tests/c3/c39006f2.ada: New file. - * ada/acats-2/tests/c3/c39006f3.ada: New file. - * ada/acats-2/tests/c3/c39006g.ada: New file. - * ada/acats-2/tests/c3/c39007a.ada: New file. - * ada/acats-2/tests/c3/c39007b.ada: New file. - * ada/acats-2/tests/c3/c39008a.ada: New file. - * ada/acats-2/tests/c3/c39008b.ada: New file. - * ada/acats-2/tests/c3/c39008c.ada: New file. - * ada/acats-2/tests/c3/c390a010.a: New file. - * ada/acats-2/tests/c3/c390a011.am: New file. - * ada/acats-2/tests/c3/c390a020.a: New file. - * ada/acats-2/tests/c3/c390a021.a: New file. - * ada/acats-2/tests/c3/c390a022.am: New file. - * ada/acats-2/tests/c3/c390a030.a: New file. - * ada/acats-2/tests/c3/c390a031.am: New file. - * ada/acats-2/tests/c3/c391001.a: New file. - * ada/acats-2/tests/c3/c391002.a: New file. - * ada/acats-2/tests/c3/c392002.a: New file. - * ada/acats-2/tests/c3/c392003.a: New file. - * ada/acats-2/tests/c3/c392004.a: New file. - * ada/acats-2/tests/c3/c392005.a: New file. - * ada/acats-2/tests/c3/c392008.a: New file. - * ada/acats-2/tests/c3/c392010.a: New file. - * ada/acats-2/tests/c3/c392011.a: New file. - * ada/acats-2/tests/c3/c392013.a: New file. - * ada/acats-2/tests/c3/c392014.a: New file. - * ada/acats-2/tests/c3/c392a01.a: New file. - * ada/acats-2/tests/c3/c392c05.a: New file. - * ada/acats-2/tests/c3/c392c07.a: New file. - * ada/acats-2/tests/c3/c392d01.a: New file. - * ada/acats-2/tests/c3/c392d02.a: New file. - * ada/acats-2/tests/c3/c392d03.a: New file. - * ada/acats-2/tests/c3/c393001.a: New file. - * ada/acats-2/tests/c3/c393007.a: New file. - * ada/acats-2/tests/c3/c393008.a: New file. - * ada/acats-2/tests/c3/c393009.a: New file. - * ada/acats-2/tests/c3/c393010.a: New file. - * ada/acats-2/tests/c3/c393011.a: New file. - * ada/acats-2/tests/c3/c393012.a: New file. - * ada/acats-2/tests/c3/c393a02.a: New file. - * ada/acats-2/tests/c3/c393a03.a: New file. - * ada/acats-2/tests/c3/c393a05.a: New file. - * ada/acats-2/tests/c3/c393a06.a: New file. - * ada/acats-2/tests/c3/c393b12.a: New file. - * ada/acats-2/tests/c3/c393b13.a: New file. - * ada/acats-2/tests/c3/c393b14.a: New file. - * ada/acats-2/tests/c3/c3a0001.a: New file. - * ada/acats-2/tests/c3/c3a0002.a: New file. - * ada/acats-2/tests/c3/c3a0003.a: New file. - * ada/acats-2/tests/c3/c3a0004.a: New file. - * ada/acats-2/tests/c3/c3a0005.a: New file. - * ada/acats-2/tests/c3/c3a0006.a: New file. - * ada/acats-2/tests/c3/c3a0007.a: New file. - * ada/acats-2/tests/c3/c3a0008.a: New file. - * ada/acats-2/tests/c3/c3a0009.a: New file. - * ada/acats-2/tests/c3/c3a0010.a: New file. - * ada/acats-2/tests/c3/c3a0011.a: New file. - * ada/acats-2/tests/c3/c3a00120.a: New file. - * ada/acats-2/tests/c3/c3a00121.a: New file. - * ada/acats-2/tests/c3/c3a00122.am: New file. - * ada/acats-2/tests/c3/c3a0013.a: New file. - * ada/acats-2/tests/c3/c3a0014.a: New file. - * ada/acats-2/tests/c3/c3a0015.a: New file. - * ada/acats-2/tests/c3/c3a1001.a: New file. - * ada/acats-2/tests/c3/c3a1002.a: New file. - * ada/acats-2/tests/c3/c3a2001.a: New file. - * ada/acats-2/tests/c3/c3a2002.a: New file. - * ada/acats-2/tests/c3/c3a2003.a: New file. - * ada/acats-2/tests/c3/c3a2a01.a: New file. - * ada/acats-2/tests/c3/c3a2a02.a: New file. - * ada/acats-2/tests/c4/c410001.a: New file. - * ada/acats-2/tests/c4/c41101d.ada: New file. - * ada/acats-2/tests/c4/c41103a.ada: New file. - * ada/acats-2/tests/c4/c41103b.ada: New file. - * ada/acats-2/tests/c4/c41104a.ada: New file. - * ada/acats-2/tests/c4/c41105a.ada: New file. - * ada/acats-2/tests/c4/c41107a.ada: New file. - * ada/acats-2/tests/c4/c41201d.ada: New file. - * ada/acats-2/tests/c4/c41203a.ada: New file. - * ada/acats-2/tests/c4/c41203b.ada: New file. - * ada/acats-2/tests/c4/c41204a.ada: New file. - * ada/acats-2/tests/c4/c41205a.ada: New file. - * ada/acats-2/tests/c4/c41206a.ada: New file. - * ada/acats-2/tests/c4/c41207a.ada: New file. - * ada/acats-2/tests/c4/c41301a.ada: New file. - * ada/acats-2/tests/c4/c41303a.ada: New file. - * ada/acats-2/tests/c4/c41303b.ada: New file. - * ada/acats-2/tests/c4/c41303c.ada: New file. - * ada/acats-2/tests/c4/c41303e.ada: New file. - * ada/acats-2/tests/c4/c41303f.ada: New file. - * ada/acats-2/tests/c4/c41303g.ada: New file. - * ada/acats-2/tests/c4/c41303i.ada: New file. - * ada/acats-2/tests/c4/c41303j.ada: New file. - * ada/acats-2/tests/c4/c41303k.ada: New file. - * ada/acats-2/tests/c4/c41303m.ada: New file. - * ada/acats-2/tests/c4/c41303n.ada: New file. - * ada/acats-2/tests/c4/c41303o.ada: New file. - * ada/acats-2/tests/c4/c41303q.ada: New file. - * ada/acats-2/tests/c4/c41303r.ada: New file. - * ada/acats-2/tests/c4/c41303s.ada: New file. - * ada/acats-2/tests/c4/c41303u.ada: New file. - * ada/acats-2/tests/c4/c41303v.ada: New file. - * ada/acats-2/tests/c4/c41303w.ada: New file. - * ada/acats-2/tests/c4/c41304a.ada: New file. - * ada/acats-2/tests/c4/c41304b.ada: New file. - * ada/acats-2/tests/c4/c41306a.ada: New file. - * ada/acats-2/tests/c4/c41306b.ada: New file. - * ada/acats-2/tests/c4/c41306c.ada: New file. - * ada/acats-2/tests/c4/c41307d.ada: New file. - * ada/acats-2/tests/c4/c41309a.ada: New file. - * ada/acats-2/tests/c4/c41320a.ada: New file. - * ada/acats-2/tests/c4/c41321a.ada: New file. - * ada/acats-2/tests/c4/c41322a.ada: New file. - * ada/acats-2/tests/c4/c41323a.ada: New file. - * ada/acats-2/tests/c4/c41324a.ada: New file. - * ada/acats-2/tests/c4/c41325a.ada: New file. - * ada/acats-2/tests/c4/c41326a.ada: New file. - * ada/acats-2/tests/c4/c41327a.ada: New file. - * ada/acats-2/tests/c4/c41328a.ada: New file. - * ada/acats-2/tests/c4/c41401a.ada: New file. - * ada/acats-2/tests/c4/c41402a.ada: New file. - * ada/acats-2/tests/c4/c41404a.ada: New file. - * ada/acats-2/tests/c4/c420001.a: New file. - * ada/acats-2/tests/c4/c42006a.ada: New file. - * ada/acats-2/tests/c4/c42007e.ada: New file. - * ada/acats-2/tests/c4/c43003a.ada: New file. - * ada/acats-2/tests/c4/c43004a.ada: New file. - * ada/acats-2/tests/c4/c43004c.ada: New file. - * ada/acats-2/tests/c4/c431001.a: New file. - * ada/acats-2/tests/c4/c43103a.ada: New file. - * ada/acats-2/tests/c4/c43103b.ada: New file. - * ada/acats-2/tests/c4/c43104a.ada: New file. - * ada/acats-2/tests/c4/c43105a.ada: New file. - * ada/acats-2/tests/c4/c43105b.ada: New file. - * ada/acats-2/tests/c4/c43106a.ada: New file. - * ada/acats-2/tests/c4/c43107a.ada: New file. - * ada/acats-2/tests/c4/c43108a.ada: New file. - * ada/acats-2/tests/c4/c432001.a: New file. - * ada/acats-2/tests/c4/c432002.a: New file. - * ada/acats-2/tests/c4/c432003.a: New file. - * ada/acats-2/tests/c4/c432004.a: New file. - * ada/acats-2/tests/c4/c43204a.ada: New file. - * ada/acats-2/tests/c4/c43204c.ada: New file. - * ada/acats-2/tests/c4/c43204e.ada: New file. - * ada/acats-2/tests/c4/c43204f.ada: New file. - * ada/acats-2/tests/c4/c43204g.ada: New file. - * ada/acats-2/tests/c4/c43204h.ada: New file. - * ada/acats-2/tests/c4/c43204i.ada: New file. - * ada/acats-2/tests/c4/c43205a.ada: New file. - * ada/acats-2/tests/c4/c43205b.ada: New file. - * ada/acats-2/tests/c4/c43205c.ada: New file. - * ada/acats-2/tests/c4/c43205d.ada: New file. - * ada/acats-2/tests/c4/c43205e.ada: New file. - * ada/acats-2/tests/c4/c43205g.ada: New file. - * ada/acats-2/tests/c4/c43205h.ada: New file. - * ada/acats-2/tests/c4/c43205i.ada: New file. - * ada/acats-2/tests/c4/c43205j.ada: New file. - * ada/acats-2/tests/c4/c43205k.ada: New file. - * ada/acats-2/tests/c4/c43206a.ada: New file. - * ada/acats-2/tests/c4/c43207b.ada: New file. - * ada/acats-2/tests/c4/c43207d.ada: New file. - * ada/acats-2/tests/c4/c43208a.ada: New file. - * ada/acats-2/tests/c4/c43208b.ada: New file. - * ada/acats-2/tests/c4/c43209a.ada: New file. - * ada/acats-2/tests/c4/c43210a.ada: New file. - * ada/acats-2/tests/c4/c43211a.ada: New file. - * ada/acats-2/tests/c4/c43212a.ada: New file. - * ada/acats-2/tests/c4/c43212c.ada: New file. - * ada/acats-2/tests/c4/c43214a.ada: New file. - * ada/acats-2/tests/c4/c43214b.ada: New file. - * ada/acats-2/tests/c4/c43214c.ada: New file. - * ada/acats-2/tests/c4/c43214d.ada: New file. - * ada/acats-2/tests/c4/c43214e.ada: New file. - * ada/acats-2/tests/c4/c43214f.ada: New file. - * ada/acats-2/tests/c4/c43215a.ada: New file. - * ada/acats-2/tests/c4/c43215b.ada: New file. - * ada/acats-2/tests/c4/c43222a.ada: New file. - * ada/acats-2/tests/c4/c43224a.ada: New file. - * ada/acats-2/tests/c4/c433001.a: New file. - * ada/acats-2/tests/c4/c44003d.ada: New file. - * ada/acats-2/tests/c4/c44003f.ada: New file. - * ada/acats-2/tests/c4/c44003g.ada: New file. - * ada/acats-2/tests/c4/c450001.a: New file. - * ada/acats-2/tests/c4/c45112a.ada: New file. - * ada/acats-2/tests/c4/c45112b.ada: New file. - * ada/acats-2/tests/c4/c45113a.ada: New file. - * ada/acats-2/tests/c4/c45114b.ada: New file. - * ada/acats-2/tests/c4/c452001.a: New file. - * ada/acats-2/tests/c4/c45201a.ada: New file. - * ada/acats-2/tests/c4/c45201b.ada: New file. - * ada/acats-2/tests/c4/c45202b.ada: New file. - * ada/acats-2/tests/c4/c45210a.ada: New file. - * ada/acats-2/tests/c4/c45211a.ada: New file. - * ada/acats-2/tests/c4/c45220a.ada: New file. - * ada/acats-2/tests/c4/c45220b.ada: New file. - * ada/acats-2/tests/c4/c45220c.ada: New file. - * ada/acats-2/tests/c4/c45220d.ada: New file. - * ada/acats-2/tests/c4/c45220e.ada: New file. - * ada/acats-2/tests/c4/c45220f.ada: New file. - * ada/acats-2/tests/c4/c45231a.ada: New file. - * ada/acats-2/tests/c4/c45231b.dep: New file. - * ada/acats-2/tests/c4/c45231c.dep: New file. - * ada/acats-2/tests/c4/c45231d.tst: New file. - * ada/acats-2/tests/c4/c45232b.ada: New file. - * ada/acats-2/tests/c4/c45242b.ada: New file. - * ada/acats-2/tests/c4/c45251a.ada: New file. - * ada/acats-2/tests/c4/c45252a.ada: New file. - * ada/acats-2/tests/c4/c45252b.ada: New file. - * ada/acats-2/tests/c4/c45253a.ada: New file. - * ada/acats-2/tests/c4/c45262a.ada: New file. - * ada/acats-2/tests/c4/c45262b.ada: New file. - * ada/acats-2/tests/c4/c45262c.ada: New file. - * ada/acats-2/tests/c4/c45262d.ada: New file. - * ada/acats-2/tests/c4/c45264a.ada: New file. - * ada/acats-2/tests/c4/c45264b.ada: New file. - * ada/acats-2/tests/c4/c45264c.ada: New file. - * ada/acats-2/tests/c4/c45265a.ada: New file. - * ada/acats-2/tests/c4/c45271a.ada: New file. - * ada/acats-2/tests/c4/c45272a.ada: New file. - * ada/acats-2/tests/c4/c45273a.ada: New file. - * ada/acats-2/tests/c4/c45274a.ada: New file. - * ada/acats-2/tests/c4/c45274b.ada: New file. - * ada/acats-2/tests/c4/c45274c.ada: New file. - * ada/acats-2/tests/c4/c45281a.ada: New file. - * ada/acats-2/tests/c4/c45282a.ada: New file. - * ada/acats-2/tests/c4/c45282b.ada: New file. - * ada/acats-2/tests/c4/c45291a.ada: New file. - * ada/acats-2/tests/c4/c453001.a: New file. - * ada/acats-2/tests/c4/c45303a.ada: New file. - * ada/acats-2/tests/c4/c45304a.ada: New file. - * ada/acats-2/tests/c4/c45304b.dep: New file. - * ada/acats-2/tests/c4/c45304c.dep: New file. - * ada/acats-2/tests/c4/c45322a.ada: New file. - * ada/acats-2/tests/c4/c45323a.ada: New file. - * ada/acats-2/tests/c4/c45331a.ada: New file. - * ada/acats-2/tests/c4/c45342a.ada: New file. - * ada/acats-2/tests/c4/c45343a.ada: New file. - * ada/acats-2/tests/c4/c45344a.ada: New file. - * ada/acats-2/tests/c4/c45345b.ada: New file. - * ada/acats-2/tests/c4/c45347a.ada: New file. - * ada/acats-2/tests/c4/c45347b.ada: New file. - * ada/acats-2/tests/c4/c45347c.ada: New file. - * ada/acats-2/tests/c4/c45347d.ada: New file. - * ada/acats-2/tests/c4/c45411a.ada: New file. - * ada/acats-2/tests/c4/c45411b.dep: New file. - * ada/acats-2/tests/c4/c45411c.dep: New file. - * ada/acats-2/tests/c4/c45411d.ada: New file. - * ada/acats-2/tests/c4/c45413a.ada: New file. - * ada/acats-2/tests/c4/c45431a.ada: New file. - * ada/acats-2/tests/c4/c455001.a: New file. - * ada/acats-2/tests/c4/c45502b.dep: New file. - * ada/acats-2/tests/c4/c45502c.dep: New file. - * ada/acats-2/tests/c4/c45503a.ada: New file. - * ada/acats-2/tests/c4/c45503b.dep: New file. - * ada/acats-2/tests/c4/c45503c.dep: New file. - * ada/acats-2/tests/c4/c45504a.ada: New file. - * ada/acats-2/tests/c4/c45504b.dep: New file. - * ada/acats-2/tests/c4/c45504c.dep: New file. - * ada/acats-2/tests/c4/c45504d.ada: New file. - * ada/acats-2/tests/c4/c45504e.dep: New file. - * ada/acats-2/tests/c4/c45504f.dep: New file. - * ada/acats-2/tests/c4/c45505a.ada: New file. - * ada/acats-2/tests/c4/c45523a.ada: New file. - * ada/acats-2/tests/c4/c45531a.ada: New file. - * ada/acats-2/tests/c4/c45531b.ada: New file. - * ada/acats-2/tests/c4/c45531c.ada: New file. - * ada/acats-2/tests/c4/c45531d.ada: New file. - * ada/acats-2/tests/c4/c45531e.ada: New file. - * ada/acats-2/tests/c4/c45531f.ada: New file. - * ada/acats-2/tests/c4/c45531g.ada: New file. - * ada/acats-2/tests/c4/c45531h.ada: New file. - * ada/acats-2/tests/c4/c45531i.ada: New file. - * ada/acats-2/tests/c4/c45531j.ada: New file. - * ada/acats-2/tests/c4/c45531k.ada: New file. - * ada/acats-2/tests/c4/c45531l.ada: New file. - * ada/acats-2/tests/c4/c45531m.dep: New file. - * ada/acats-2/tests/c4/c45531n.dep: New file. - * ada/acats-2/tests/c4/c45531o.dep: New file. - * ada/acats-2/tests/c4/c45531p.dep: New file. - * ada/acats-2/tests/c4/c45532a.ada: New file. - * ada/acats-2/tests/c4/c45532b.ada: New file. - * ada/acats-2/tests/c4/c45532c.ada: New file. - * ada/acats-2/tests/c4/c45532d.ada: New file. - * ada/acats-2/tests/c4/c45532e.ada: New file. - * ada/acats-2/tests/c4/c45532f.ada: New file. - * ada/acats-2/tests/c4/c45532g.ada: New file. - * ada/acats-2/tests/c4/c45532h.ada: New file. - * ada/acats-2/tests/c4/c45532i.ada: New file. - * ada/acats-2/tests/c4/c45532j.ada: New file. - * ada/acats-2/tests/c4/c45532k.ada: New file. - * ada/acats-2/tests/c4/c45532l.ada: New file. - * ada/acats-2/tests/c4/c45532m.dep: New file. - * ada/acats-2/tests/c4/c45532n.dep: New file. - * ada/acats-2/tests/c4/c45532o.dep: New file. - * ada/acats-2/tests/c4/c45532p.dep: New file. - * ada/acats-2/tests/c4/c45534b.ada: New file. - * ada/acats-2/tests/c4/c45536a.dep: New file. - * ada/acats-2/tests/c4/c456001.a: New file. - * ada/acats-2/tests/c4/c45611a.ada: New file. - * ada/acats-2/tests/c4/c45611b.dep: New file. - * ada/acats-2/tests/c4/c45611c.dep: New file. - * ada/acats-2/tests/c4/c45613a.ada: New file. - * ada/acats-2/tests/c4/c45613b.dep: New file. - * ada/acats-2/tests/c4/c45613c.dep: New file. - * ada/acats-2/tests/c4/c45614a.ada: New file. - * ada/acats-2/tests/c4/c45614b.dep: New file. - * ada/acats-2/tests/c4/c45614c.dep: New file. - * ada/acats-2/tests/c4/c45631a.ada: New file. - * ada/acats-2/tests/c4/c45631b.dep: New file. - * ada/acats-2/tests/c4/c45631c.dep: New file. - * ada/acats-2/tests/c4/c45632a.ada: New file. - * ada/acats-2/tests/c4/c45632b.dep: New file. - * ada/acats-2/tests/c4/c45632c.dep: New file. - * ada/acats-2/tests/c4/c45651a.ada: New file. - * ada/acats-2/tests/c4/c45662a.ada: New file. - * ada/acats-2/tests/c4/c45662b.ada: New file. - * ada/acats-2/tests/c4/c45672a.ada: New file. - * ada/acats-2/tests/c4/c460001.a: New file. - * ada/acats-2/tests/c4/c460002.a: New file. - * ada/acats-2/tests/c4/c460004.a: New file. - * ada/acats-2/tests/c4/c460005.a: New file. - * ada/acats-2/tests/c4/c460006.a: New file. - * ada/acats-2/tests/c4/c460007.a: New file. - * ada/acats-2/tests/c4/c460008.a: New file. - * ada/acats-2/tests/c4/c460009.a: New file. - * ada/acats-2/tests/c4/c460010.a: New file. - * ada/acats-2/tests/c4/c460011.a: New file. - * ada/acats-2/tests/c4/c460012.a: New file. - * ada/acats-2/tests/c4/c460013.a: New file. - * ada/acats-2/tests/c4/c460014.a: New file. - * ada/acats-2/tests/c4/c46011a.ada: New file. - * ada/acats-2/tests/c4/c46013a.ada: New file. - * ada/acats-2/tests/c4/c46014a.ada: New file. - * ada/acats-2/tests/c4/c46021a.ada: New file. - * ada/acats-2/tests/c4/c46024a.ada: New file. - * ada/acats-2/tests/c4/c46031a.ada: New file. - * ada/acats-2/tests/c4/c46032a.ada: New file. - * ada/acats-2/tests/c4/c46033a.ada: New file. - * ada/acats-2/tests/c4/c46041a.ada: New file. - * ada/acats-2/tests/c4/c46042a.ada: New file. - * ada/acats-2/tests/c4/c46043b.ada: New file. - * ada/acats-2/tests/c4/c46044b.ada: New file. - * ada/acats-2/tests/c4/c46051a.ada: New file. - * ada/acats-2/tests/c4/c46051b.ada: New file. - * ada/acats-2/tests/c4/c46051c.ada: New file. - * ada/acats-2/tests/c4/c46052a.ada: New file. - * ada/acats-2/tests/c4/c46053a.ada: New file. - * ada/acats-2/tests/c4/c46054a.ada: New file. - * ada/acats-2/tests/c4/c460a01.a: New file. - * ada/acats-2/tests/c4/c460a02.a: New file. - * ada/acats-2/tests/c4/c47002a.ada: New file. - * ada/acats-2/tests/c4/c47002b.ada: New file. - * ada/acats-2/tests/c4/c47002c.ada: New file. - * ada/acats-2/tests/c4/c47002d.ada: New file. - * ada/acats-2/tests/c4/c47003a.ada: New file. - * ada/acats-2/tests/c4/c47004a.ada: New file. - * ada/acats-2/tests/c4/c47005a.ada: New file. - * ada/acats-2/tests/c4/c47006a.ada: New file. - * ada/acats-2/tests/c4/c47007a.ada: New file. - * ada/acats-2/tests/c4/c47008a.ada: New file. - * ada/acats-2/tests/c4/c47009a.ada: New file. - * ada/acats-2/tests/c4/c47009b.ada: New file. - * ada/acats-2/tests/c4/c48004a.ada: New file. - * ada/acats-2/tests/c4/c48004b.ada: New file. - * ada/acats-2/tests/c4/c48004c.ada: New file. - * ada/acats-2/tests/c4/c48004d.ada: New file. - * ada/acats-2/tests/c4/c48004e.ada: New file. - * ada/acats-2/tests/c4/c48004f.ada: New file. - * ada/acats-2/tests/c4/c48005a.ada: New file. - * ada/acats-2/tests/c4/c48005b.ada: New file. - * ada/acats-2/tests/c4/c48006a.ada: New file. - * ada/acats-2/tests/c4/c48006b.ada: New file. - * ada/acats-2/tests/c4/c48007a.ada: New file. - * ada/acats-2/tests/c4/c48007b.ada: New file. - * ada/acats-2/tests/c4/c48007c.ada: New file. - * ada/acats-2/tests/c4/c48008a.ada: New file. - * ada/acats-2/tests/c4/c48008c.ada: New file. - * ada/acats-2/tests/c4/c48009a.ada: New file. - * ada/acats-2/tests/c4/c48009b.ada: New file. - * ada/acats-2/tests/c4/c48009c.ada: New file. - * ada/acats-2/tests/c4/c48009d.ada: New file. - * ada/acats-2/tests/c4/c48009e.ada: New file. - * ada/acats-2/tests/c4/c48009f.ada: New file. - * ada/acats-2/tests/c4/c48009g.ada: New file. - * ada/acats-2/tests/c4/c48009h.ada: New file. - * ada/acats-2/tests/c4/c48009i.ada: New file. - * ada/acats-2/tests/c4/c48009j.ada: New file. - * ada/acats-2/tests/c4/c48010a.ada: New file. - * ada/acats-2/tests/c4/c48011a.ada: New file. - * ada/acats-2/tests/c4/c48012a.ada: New file. - * ada/acats-2/tests/c4/c490001.a: New file. - * ada/acats-2/tests/c4/c490002.a: New file. - * ada/acats-2/tests/c4/c490003.a: New file. - * ada/acats-2/tests/c4/c49020a.ada: New file. - * ada/acats-2/tests/c4/c49021a.ada: New file. - * ada/acats-2/tests/c4/c49022a.ada: New file. - * ada/acats-2/tests/c4/c49022b.ada: New file. - * ada/acats-2/tests/c4/c49022c.ada: New file. - * ada/acats-2/tests/c4/c49023a.ada: New file. - * ada/acats-2/tests/c4/c49024a.ada: New file. - * ada/acats-2/tests/c4/c49025a.ada: New file. - * ada/acats-2/tests/c4/c49026a.ada: New file. - * ada/acats-2/tests/c4/c4a005b.ada: New file. - * ada/acats-2/tests/c4/c4a006a.ada: New file. - * ada/acats-2/tests/c4/c4a007a.tst: New file. - * ada/acats-2/tests/c4/c4a010a.ada: New file. - * ada/acats-2/tests/c4/c4a010b.ada: New file. - * ada/acats-2/tests/c4/c4a011a.ada: New file. - * ada/acats-2/tests/c4/c4a012b.ada: New file. - * ada/acats-2/tests/c4/c4a013a.ada: New file. - * ada/acats-2/tests/c4/c4a014a.ada: New file. - * ada/acats-2/tests/c5/c51004a.ada: New file. - * ada/acats-2/tests/c5/c52005a.ada: New file. - * ada/acats-2/tests/c5/c52005b.ada: New file. - * ada/acats-2/tests/c5/c52005c.ada: New file. - * ada/acats-2/tests/c5/c52005d.ada: New file. - * ada/acats-2/tests/c5/c52005e.ada: New file. - * ada/acats-2/tests/c5/c52005f.ada: New file. - * ada/acats-2/tests/c5/c52008a.ada: New file. - * ada/acats-2/tests/c5/c52008b.ada: New file. - * ada/acats-2/tests/c5/c52009a.ada: New file. - * ada/acats-2/tests/c5/c52009b.ada: New file. - * ada/acats-2/tests/c5/c52010a.ada: New file. - * ada/acats-2/tests/c5/c52011a.ada: New file. - * ada/acats-2/tests/c5/c52011b.ada: New file. - * ada/acats-2/tests/c5/c52101a.ada: New file. - * ada/acats-2/tests/c5/c52102a.ada: New file. - * ada/acats-2/tests/c5/c52102b.ada: New file. - * ada/acats-2/tests/c5/c52102c.ada: New file. - * ada/acats-2/tests/c5/c52102d.ada: New file. - * ada/acats-2/tests/c5/c52103a.ada: New file. - * ada/acats-2/tests/c5/c52103b.ada: New file. - * ada/acats-2/tests/c5/c52103c.ada: New file. - * ada/acats-2/tests/c5/c52103f.ada: New file. - * ada/acats-2/tests/c5/c52103g.ada: New file. - * ada/acats-2/tests/c5/c52103h.ada: New file. - * ada/acats-2/tests/c5/c52103k.ada: New file. - * ada/acats-2/tests/c5/c52103l.ada: New file. - * ada/acats-2/tests/c5/c52103m.ada: New file. - * ada/acats-2/tests/c5/c52103p.ada: New file. - * ada/acats-2/tests/c5/c52103q.ada: New file. - * ada/acats-2/tests/c5/c52103r.ada: New file. - * ada/acats-2/tests/c5/c52103x.ada: New file. - * ada/acats-2/tests/c5/c52104a.ada: New file. - * ada/acats-2/tests/c5/c52104b.ada: New file. - * ada/acats-2/tests/c5/c52104c.ada: New file. - * ada/acats-2/tests/c5/c52104f.ada: New file. - * ada/acats-2/tests/c5/c52104g.ada: New file. - * ada/acats-2/tests/c5/c52104h.ada: New file. - * ada/acats-2/tests/c5/c52104k.ada: New file. - * ada/acats-2/tests/c5/c52104l.ada: New file. - * ada/acats-2/tests/c5/c52104m.ada: New file. - * ada/acats-2/tests/c5/c52104p.ada: New file. - * ada/acats-2/tests/c5/c52104q.ada: New file. - * ada/acats-2/tests/c5/c52104r.ada: New file. - * ada/acats-2/tests/c5/c52104x.ada: New file. - * ada/acats-2/tests/c5/c52104y.ada: New file. - * ada/acats-2/tests/c5/c53007a.ada: New file. - * ada/acats-2/tests/c5/c540001.a: New file. - * ada/acats-2/tests/c5/c54a03a.ada: New file. - * ada/acats-2/tests/c5/c54a04a.ada: New file. - * ada/acats-2/tests/c5/c54a07a.ada: New file. - * ada/acats-2/tests/c5/c54a13a.ada: New file. - * ada/acats-2/tests/c5/c54a13b.ada: New file. - * ada/acats-2/tests/c5/c54a13c.ada: New file. - * ada/acats-2/tests/c5/c54a13d.ada: New file. - * ada/acats-2/tests/c5/c54a22a.ada: New file. - * ada/acats-2/tests/c5/c54a23a.ada: New file. - * ada/acats-2/tests/c5/c54a24a.ada: New file. - * ada/acats-2/tests/c5/c54a24b.ada: New file. - * ada/acats-2/tests/c5/c54a42a.ada: New file. - * ada/acats-2/tests/c5/c54a42b.ada: New file. - * ada/acats-2/tests/c5/c54a42c.ada: New file. - * ada/acats-2/tests/c5/c54a42d.ada: New file. - * ada/acats-2/tests/c5/c54a42e.ada: New file. - * ada/acats-2/tests/c5/c54a42f.ada: New file. - * ada/acats-2/tests/c5/c54a42g.ada: New file. - * ada/acats-2/tests/c5/c55b03a.ada: New file. - * ada/acats-2/tests/c5/c55b04a.ada: New file. - * ada/acats-2/tests/c5/c55b05a.ada: New file. - * ada/acats-2/tests/c5/c55b06a.ada: New file. - * ada/acats-2/tests/c5/c55b06b.ada: New file. - * ada/acats-2/tests/c5/c55b07a.dep: New file. - * ada/acats-2/tests/c5/c55b07b.dep: New file. - * ada/acats-2/tests/c5/c55b10a.ada: New file. - * ada/acats-2/tests/c5/c55b11a.ada: New file. - * ada/acats-2/tests/c5/c55b11b.ada: New file. - * ada/acats-2/tests/c5/c55b15a.ada: New file. - * ada/acats-2/tests/c5/c55b16a.ada: New file. - * ada/acats-2/tests/c5/c55c02a.ada: New file. - * ada/acats-2/tests/c5/c55c02b.ada: New file. - * ada/acats-2/tests/c5/c56002a.ada: New file. - * ada/acats-2/tests/c5/c57003a.ada: New file. - * ada/acats-2/tests/c5/c57004a.ada: New file. - * ada/acats-2/tests/c5/c57004b.ada: New file. - * ada/acats-2/tests/c5/c58004c.ada: New file. - * ada/acats-2/tests/c5/c58004d.ada: New file. - * ada/acats-2/tests/c5/c58004g.ada: New file. - * ada/acats-2/tests/c5/c58005a.ada: New file. - * ada/acats-2/tests/c5/c58005b.ada: New file. - * ada/acats-2/tests/c5/c58005h.ada: New file. - * ada/acats-2/tests/c5/c58006a.ada: New file. - * ada/acats-2/tests/c5/c58006b.ada: New file. - * ada/acats-2/tests/c5/c59002a.ada: New file. - * ada/acats-2/tests/c5/c59002b.ada: New file. - * ada/acats-2/tests/c5/c59002c.ada: New file. - * ada/acats-2/tests/c6/c61008a.ada: New file. - * ada/acats-2/tests/c6/c61009a.ada: New file. - * ada/acats-2/tests/c6/c61010a.ada: New file. - * ada/acats-2/tests/c6/c620001.a: New file. - * ada/acats-2/tests/c6/c620002.a: New file. - * ada/acats-2/tests/c6/c62002a.ada: New file. - * ada/acats-2/tests/c6/c62003a.ada: New file. - * ada/acats-2/tests/c6/c62003b.ada: New file. - * ada/acats-2/tests/c6/c62004a.ada: New file. - * ada/acats-2/tests/c6/c62006a.ada: New file. - * ada/acats-2/tests/c6/c631001.a: New file. - * ada/acats-2/tests/c6/c640001.a: New file. - * ada/acats-2/tests/c6/c64002b.ada: New file. - * ada/acats-2/tests/c6/c64004g.ada: New file. - * ada/acats-2/tests/c6/c64005a.ada: New file. - * ada/acats-2/tests/c6/c64005b.ada: New file. - * ada/acats-2/tests/c6/c64005c.ada: New file. - * ada/acats-2/tests/c6/c64005d0.ada: New file. - * ada/acats-2/tests/c6/c64005da.ada: New file. - * ada/acats-2/tests/c6/c64005db.ada: New file. - * ada/acats-2/tests/c6/c64005dc.ada: New file. - * ada/acats-2/tests/c6/c641001.a: New file. - * ada/acats-2/tests/c6/c64103b.ada: New file. - * ada/acats-2/tests/c6/c64103c.ada: New file. - * ada/acats-2/tests/c6/c64103d.ada: New file. - * ada/acats-2/tests/c6/c64103e.ada: New file. - * ada/acats-2/tests/c6/c64103f.ada: New file. - * ada/acats-2/tests/c6/c64104a.ada: New file. - * ada/acats-2/tests/c6/c64104b.ada: New file. - * ada/acats-2/tests/c6/c64104c.ada: New file. - * ada/acats-2/tests/c6/c64104d.ada: New file. - * ada/acats-2/tests/c6/c64104e.ada: New file. - * ada/acats-2/tests/c6/c64104f.ada: New file. - * ada/acats-2/tests/c6/c64104g.ada: New file. - * ada/acats-2/tests/c6/c64104h.ada: New file. - * ada/acats-2/tests/c6/c64104i.ada: New file. - * ada/acats-2/tests/c6/c64104j.ada: New file. - * ada/acats-2/tests/c6/c64104k.ada: New file. - * ada/acats-2/tests/c6/c64104l.ada: New file. - * ada/acats-2/tests/c6/c64104m.ada: New file. - * ada/acats-2/tests/c6/c64104n.ada: New file. - * ada/acats-2/tests/c6/c64104o.ada: New file. - * ada/acats-2/tests/c6/c64105a.ada: New file. - * ada/acats-2/tests/c6/c64105b.ada: New file. - * ada/acats-2/tests/c6/c64105c.ada: New file. - * ada/acats-2/tests/c6/c64105d.ada: New file. - * ada/acats-2/tests/c6/c64106a.ada: New file. - * ada/acats-2/tests/c6/c64106b.ada: New file. - * ada/acats-2/tests/c6/c64106c.ada: New file. - * ada/acats-2/tests/c6/c64106d.ada: New file. - * ada/acats-2/tests/c6/c64107a.ada: New file. - * ada/acats-2/tests/c6/c64108a.ada: New file. - * ada/acats-2/tests/c6/c64109a.ada: New file. - * ada/acats-2/tests/c6/c64109b.ada: New file. - * ada/acats-2/tests/c6/c64109c.ada: New file. - * ada/acats-2/tests/c6/c64109d.ada: New file. - * ada/acats-2/tests/c6/c64109e.ada: New file. - * ada/acats-2/tests/c6/c64109f.ada: New file. - * ada/acats-2/tests/c6/c64109g.ada: New file. - * ada/acats-2/tests/c6/c64109h.ada: New file. - * ada/acats-2/tests/c6/c64109i.ada: New file. - * ada/acats-2/tests/c6/c64109j.ada: New file. - * ada/acats-2/tests/c6/c64109k.ada: New file. - * ada/acats-2/tests/c6/c64109l.ada: New file. - * ada/acats-2/tests/c6/c64201b.ada: New file. - * ada/acats-2/tests/c6/c64201c.ada: New file. - * ada/acats-2/tests/c6/c64202a.ada: New file. - * ada/acats-2/tests/c6/c650001.a: New file. - * ada/acats-2/tests/c6/c65003a.ada: New file. - * ada/acats-2/tests/c6/c65003b.ada: New file. - * ada/acats-2/tests/c6/c66002a.ada: New file. - * ada/acats-2/tests/c6/c66002c.ada: New file. - * ada/acats-2/tests/c6/c66002d.ada: New file. - * ada/acats-2/tests/c6/c66002e.ada: New file. - * ada/acats-2/tests/c6/c66002f.ada: New file. - * ada/acats-2/tests/c6/c66002g.ada: New file. - * ada/acats-2/tests/c6/c67002a.ada: New file. - * ada/acats-2/tests/c6/c67002b.ada: New file. - * ada/acats-2/tests/c6/c67002c.ada: New file. - * ada/acats-2/tests/c6/c67002d.ada: New file. - * ada/acats-2/tests/c6/c67002e.ada: New file. - * ada/acats-2/tests/c6/c67003f.ada: New file. - * ada/acats-2/tests/c6/c67005a.ada: New file. - * ada/acats-2/tests/c6/c67005b.ada: New file. - * ada/acats-2/tests/c6/c67005c.ada: New file. - * ada/acats-2/tests/c6/c67005d.ada: New file. - * ada/acats-2/tests/c7/c72001b.ada: New file. - * ada/acats-2/tests/c7/c72002a.ada: New file. - * ada/acats-2/tests/c7/c730001.a: New file. - * ada/acats-2/tests/c7/c730002.a: New file. - * ada/acats-2/tests/c7/c730003.a: New file. - * ada/acats-2/tests/c7/c730004.a: New file. - * ada/acats-2/tests/c7/c73002a.ada: New file. - * ada/acats-2/tests/c7/c730a01.a: New file. - * ada/acats-2/tests/c7/c730a02.a: New file. - * ada/acats-2/tests/c7/c731001.a: New file. - * ada/acats-2/tests/c7/c74004a.ada: New file. - * ada/acats-2/tests/c7/c74203a.ada: New file. - * ada/acats-2/tests/c7/c74206a.ada: New file. - * ada/acats-2/tests/c7/c74207b.ada: New file. - * ada/acats-2/tests/c7/c74208a.ada: New file. - * ada/acats-2/tests/c7/c74208b.ada: New file. - * ada/acats-2/tests/c7/c74209a.ada: New file. - * ada/acats-2/tests/c7/c74210a.ada: New file. - * ada/acats-2/tests/c7/c74211a.ada: New file. - * ada/acats-2/tests/c7/c74211b.ada: New file. - * ada/acats-2/tests/c7/c74302a.ada: New file. - * ada/acats-2/tests/c7/c74302b.ada: New file. - * ada/acats-2/tests/c7/c74305a.ada: New file. - * ada/acats-2/tests/c7/c74305b.ada: New file. - * ada/acats-2/tests/c7/c74306a.ada: New file. - * ada/acats-2/tests/c7/c74307a.ada: New file. - * ada/acats-2/tests/c7/c74401d.ada: New file. - * ada/acats-2/tests/c7/c74401e.ada: New file. - * ada/acats-2/tests/c7/c74401k.ada: New file. - * ada/acats-2/tests/c7/c74401q.ada: New file. - * ada/acats-2/tests/c7/c74402a.ada: New file. - * ada/acats-2/tests/c7/c74402b.ada: New file. - * ada/acats-2/tests/c7/c74406a.ada: New file. - * ada/acats-2/tests/c7/c74407b.ada: New file. - * ada/acats-2/tests/c7/c74409b.ada: New file. - * ada/acats-2/tests/c7/c760001.a: New file. - * ada/acats-2/tests/c7/c760002.a: New file. - * ada/acats-2/tests/c7/c760007.a: New file. - * ada/acats-2/tests/c7/c760009.a: New file. - * ada/acats-2/tests/c7/c760010.a: New file. - * ada/acats-2/tests/c7/c760011.a: New file. - * ada/acats-2/tests/c7/c760012.a: New file. - * ada/acats-2/tests/c7/c760013.a: New file. - * ada/acats-2/tests/c7/c761001.a: New file. - * ada/acats-2/tests/c7/c761002.a: New file. - * ada/acats-2/tests/c7/c761003.a: New file. - * ada/acats-2/tests/c7/c761004.a: New file. - * ada/acats-2/tests/c7/c761005.a: New file. - * ada/acats-2/tests/c7/c761006.a: New file. - * ada/acats-2/tests/c7/c761007.a: New file. - * ada/acats-2/tests/c7/c761010.a: New file. - * ada/acats-2/tests/c7/c761011.a: New file. - * ada/acats-2/tests/c7/c761012.a: New file. - * ada/acats-2/tests/c8/c83007a.ada: New file. - * ada/acats-2/tests/c8/c83012d.ada: New file. - * ada/acats-2/tests/c8/c83022a.ada: New file. - * ada/acats-2/tests/c8/c83022g0.ada: New file. - * ada/acats-2/tests/c8/c83022g1.ada: New file. - * ada/acats-2/tests/c8/c83023a.ada: New file. - * ada/acats-2/tests/c8/c83024a.ada: New file. - * ada/acats-2/tests/c8/c83024e0.ada: New file. - * ada/acats-2/tests/c8/c83024e1.ada: New file. - * ada/acats-2/tests/c8/c83025a.ada: New file. - * ada/acats-2/tests/c8/c83025c.ada: New file. - * ada/acats-2/tests/c8/c83027a.ada: New file. - * ada/acats-2/tests/c8/c83027c.ada: New file. - * ada/acats-2/tests/c8/c83028a.ada: New file. - * ada/acats-2/tests/c8/c83029a.ada: New file. - * ada/acats-2/tests/c8/c83030a.ada: New file. - * ada/acats-2/tests/c8/c83030c.ada: New file. - * ada/acats-2/tests/c8/c83031a.ada: New file. - * ada/acats-2/tests/c8/c83031c.ada: New file. - * ada/acats-2/tests/c8/c83031e.ada: New file. - * ada/acats-2/tests/c8/c83032a.ada: New file. - * ada/acats-2/tests/c8/c83033a.ada: New file. - * ada/acats-2/tests/c8/c83051a.ada: New file. - * ada/acats-2/tests/c8/c83b02a.ada: New file. - * ada/acats-2/tests/c8/c83b02b.ada: New file. - * ada/acats-2/tests/c8/c83e02a.ada: New file. - * ada/acats-2/tests/c8/c83e02b.ada: New file. - * ada/acats-2/tests/c8/c83e03a.ada: New file. - * ada/acats-2/tests/c8/c83f01a.ada: New file. - * ada/acats-2/tests/c8/c83f01b.ada: New file. - * ada/acats-2/tests/c8/c83f01c0.ada: New file. - * ada/acats-2/tests/c8/c83f01c1.ada: New file. - * ada/acats-2/tests/c8/c83f01c2.ada: New file. - * ada/acats-2/tests/c8/c83f01d0.ada: New file. - * ada/acats-2/tests/c8/c83f01d1.ada: New file. - * ada/acats-2/tests/c8/c83f03a.ada: New file. - * ada/acats-2/tests/c8/c83f03b.ada: New file. - * ada/acats-2/tests/c8/c83f03c0.ada: New file. - * ada/acats-2/tests/c8/c83f03c1.ada: New file. - * ada/acats-2/tests/c8/c83f03c2.ada: New file. - * ada/acats-2/tests/c8/c83f03d0.ada: New file. - * ada/acats-2/tests/c8/c83f03d1.ada: New file. - * ada/acats-2/tests/c8/c840001.a: New file. - * ada/acats-2/tests/c8/c84002a.ada: New file. - * ada/acats-2/tests/c8/c84005a.ada: New file. - * ada/acats-2/tests/c8/c84008a.ada: New file. - * ada/acats-2/tests/c8/c84009a.ada: New file. - * ada/acats-2/tests/c8/c85004b.ada: New file. - * ada/acats-2/tests/c8/c85005a.ada: New file. - * ada/acats-2/tests/c8/c85005b.ada: New file. - * ada/acats-2/tests/c8/c85005c.ada: New file. - * ada/acats-2/tests/c8/c85005d.ada: New file. - * ada/acats-2/tests/c8/c85005e.ada: New file. - * ada/acats-2/tests/c8/c85005f.ada: New file. - * ada/acats-2/tests/c8/c85005g.ada: New file. - * ada/acats-2/tests/c8/c85006a.ada: New file. - * ada/acats-2/tests/c8/c85006b.ada: New file. - * ada/acats-2/tests/c8/c85006c.ada: New file. - * ada/acats-2/tests/c8/c85006d.ada: New file. - * ada/acats-2/tests/c8/c85006e.ada: New file. - * ada/acats-2/tests/c8/c85006f.ada: New file. - * ada/acats-2/tests/c8/c85006g.ada: New file. - * ada/acats-2/tests/c8/c85007a.ada: New file. - * ada/acats-2/tests/c8/c85007e.ada: New file. - * ada/acats-2/tests/c8/c85009a.ada: New file. - * ada/acats-2/tests/c8/c85011a.ada: New file. - * ada/acats-2/tests/c8/c85013a.ada: New file. - * ada/acats-2/tests/c8/c85014a.ada: New file. - * ada/acats-2/tests/c8/c85014b.ada: New file. - * ada/acats-2/tests/c8/c85014c.ada: New file. - * ada/acats-2/tests/c8/c85017a.ada: New file. - * ada/acats-2/tests/c8/c85018a.ada: New file. - * ada/acats-2/tests/c8/c85018b.ada: New file. - * ada/acats-2/tests/c8/c85019a.ada: New file. - * ada/acats-2/tests/c8/c854001.a: New file. - * ada/acats-2/tests/c8/c854002.a: New file. - * ada/acats-2/tests/c8/c854003.a: New file. - * ada/acats-2/tests/c8/c86003a.ada: New file. - * ada/acats-2/tests/c8/c86004a.ada: New file. - * ada/acats-2/tests/c8/c86004b0.ada: New file. - * ada/acats-2/tests/c8/c86004b1.ada: New file. - * ada/acats-2/tests/c8/c86004b2.ada: New file. - * ada/acats-2/tests/c8/c86004c0.ada: New file. - * ada/acats-2/tests/c8/c86004c1.ada: New file. - * ada/acats-2/tests/c8/c86004c2.ada: New file. - * ada/acats-2/tests/c8/c86006i.ada: New file. - * ada/acats-2/tests/c8/c86007a.ada: New file. - * ada/acats-2/tests/c8/c87a05a.ada: New file. - * ada/acats-2/tests/c8/c87a05b.ada: New file. - * ada/acats-2/tests/c8/c87b02a.ada: New file. - * ada/acats-2/tests/c8/c87b02b.ada: New file. - * ada/acats-2/tests/c8/c87b03a.ada: New file. - * ada/acats-2/tests/c8/c87b04a.ada: New file. - * ada/acats-2/tests/c8/c87b04b.ada: New file. - * ada/acats-2/tests/c8/c87b04c.ada: New file. - * ada/acats-2/tests/c8/c87b05a.ada: New file. - * ada/acats-2/tests/c8/c87b06a.ada: New file. - * ada/acats-2/tests/c8/c87b07a.ada: New file. - * ada/acats-2/tests/c8/c87b07b.ada: New file. - * ada/acats-2/tests/c8/c87b07c.ada: New file. - * ada/acats-2/tests/c8/c87b07d.ada: New file. - * ada/acats-2/tests/c8/c87b07e.ada: New file. - * ada/acats-2/tests/c8/c87b08a.ada: New file. - * ada/acats-2/tests/c8/c87b09a.ada: New file. - * ada/acats-2/tests/c8/c87b09c.ada: New file. - * ada/acats-2/tests/c8/c87b10a.ada: New file. - * ada/acats-2/tests/c8/c87b11a.ada: New file. - * ada/acats-2/tests/c8/c87b11b.ada: New file. - * ada/acats-2/tests/c8/c87b13a.ada: New file. - * ada/acats-2/tests/c8/c87b14a.ada: New file. - * ada/acats-2/tests/c8/c87b14b.ada: New file. - * ada/acats-2/tests/c8/c87b14c.ada: New file. - * ada/acats-2/tests/c8/c87b14d.ada: New file. - * ada/acats-2/tests/c8/c87b15a.ada: New file. - * ada/acats-2/tests/c8/c87b16a.ada: New file. - * ada/acats-2/tests/c8/c87b17a.ada: New file. - * ada/acats-2/tests/c8/c87b18a.ada: New file. - * ada/acats-2/tests/c8/c87b18b.ada: New file. - * ada/acats-2/tests/c8/c87b19a.ada: New file. - * ada/acats-2/tests/c8/c87b23a.ada: New file. - * ada/acats-2/tests/c8/c87b24a.ada: New file. - * ada/acats-2/tests/c8/c87b24b.ada: New file. - * ada/acats-2/tests/c8/c87b26b.ada: New file. - * ada/acats-2/tests/c8/c87b27a.ada: New file. - * ada/acats-2/tests/c8/c87b28a.ada: New file. - * ada/acats-2/tests/c8/c87b29a.ada: New file. - * ada/acats-2/tests/c8/c87b30a.ada: New file. - * ada/acats-2/tests/c8/c87b31a.ada: New file. - * ada/acats-2/tests/c8/c87b32a.ada: New file. - * ada/acats-2/tests/c8/c87b33a.ada: New file. - * ada/acats-2/tests/c8/c87b34a.ada: New file. - * ada/acats-2/tests/c8/c87b34b.ada: New file. - * ada/acats-2/tests/c8/c87b34c.ada: New file. - * ada/acats-2/tests/c8/c87b35c.ada: New file. - * ada/acats-2/tests/c8/c87b38a.ada: New file. - * ada/acats-2/tests/c8/c87b39a.ada: New file. - * ada/acats-2/tests/c8/c87b40a.ada: New file. - * ada/acats-2/tests/c8/c87b41a.ada: New file. - * ada/acats-2/tests/c8/c87b42a.ada: New file. - * ada/acats-2/tests/c8/c87b43a.ada: New file. - * ada/acats-2/tests/c8/c87b44a.ada: New file. - * ada/acats-2/tests/c8/c87b45a.ada: New file. - * ada/acats-2/tests/c8/c87b45c.ada: New file. - * ada/acats-2/tests/c8/c87b47a.ada: New file. - * ada/acats-2/tests/c8/c87b48a.ada: New file. - * ada/acats-2/tests/c8/c87b48b.ada: New file. - * ada/acats-2/tests/c8/c87b50a.ada: New file. - * ada/acats-2/tests/c8/c87b54a.ada: New file. - * ada/acats-2/tests/c8/c87b57a.ada: New file. - * ada/acats-2/tests/c8/c87b62a.ada: New file. - * ada/acats-2/tests/c8/c87b62b.ada: New file. - * ada/acats-2/tests/c8/c87b62c.ada: New file. - * ada/acats-2/tests/c8/c87b62d.tst: New file. - * ada/acats-2/tests/c9/c910001.a: New file. - * ada/acats-2/tests/c9/c910002.a: New file. - * ada/acats-2/tests/c9/c910003.a: New file. - * ada/acats-2/tests/c9/c91004b.ada: New file. - * ada/acats-2/tests/c9/c91004c.ada: New file. - * ada/acats-2/tests/c9/c91006a.ada: New file. - * ada/acats-2/tests/c9/c91007a.ada: New file. - * ada/acats-2/tests/c9/c92002a.ada: New file. - * ada/acats-2/tests/c9/c92003a.ada: New file. - * ada/acats-2/tests/c9/c92005a.ada: New file. - * ada/acats-2/tests/c9/c92005b.ada: New file. - * ada/acats-2/tests/c9/c92006a.ada: New file. - * ada/acats-2/tests/c9/c930001.a: New file. - * ada/acats-2/tests/c9/c93001a.ada: New file. - * ada/acats-2/tests/c9/c93002a.ada: New file. - * ada/acats-2/tests/c9/c93003a.ada: New file. - * ada/acats-2/tests/c9/c93004a.ada: New file. - * ada/acats-2/tests/c9/c93004b.ada: New file. - * ada/acats-2/tests/c9/c93004c.ada: New file. - * ada/acats-2/tests/c9/c93004d.ada: New file. - * ada/acats-2/tests/c9/c93004f.ada: New file. - * ada/acats-2/tests/c9/c93005a.ada: New file. - * ada/acats-2/tests/c9/c93005b.ada: New file. - * ada/acats-2/tests/c9/c93005c.ada: New file. - * ada/acats-2/tests/c9/c93005d.ada: New file. - * ada/acats-2/tests/c9/c93005e.ada: New file. - * ada/acats-2/tests/c9/c93005f.ada: New file. - * ada/acats-2/tests/c9/c93005g.ada: New file. - * ada/acats-2/tests/c9/c93005h.ada: New file. - * ada/acats-2/tests/c9/c93006a.ada: New file. - * ada/acats-2/tests/c9/c93007a.ada: New file. - * ada/acats-2/tests/c9/c93008a.ada: New file. - * ada/acats-2/tests/c9/c93008b.ada: New file. - * ada/acats-2/tests/c9/c940001.a: New file. - * ada/acats-2/tests/c9/c940002.a: New file. - * ada/acats-2/tests/c9/c940004.a: New file. - * ada/acats-2/tests/c9/c940005.a: New file. - * ada/acats-2/tests/c9/c940006.a: New file. - * ada/acats-2/tests/c9/c940007.a: New file. - * ada/acats-2/tests/c9/c940010.a: New file. - * ada/acats-2/tests/c9/c940011.a: New file. - * ada/acats-2/tests/c9/c940012.a: New file. - * ada/acats-2/tests/c9/c940013.a: New file. - * ada/acats-2/tests/c9/c940014.a: New file. - * ada/acats-2/tests/c9/c940015.a: New file. - * ada/acats-2/tests/c9/c940016.a: New file. - * ada/acats-2/tests/c9/c94001a.ada: New file. - * ada/acats-2/tests/c9/c94001b.ada: New file. - * ada/acats-2/tests/c9/c94001c.ada: New file. - * ada/acats-2/tests/c9/c94001e.ada: New file. - * ada/acats-2/tests/c9/c94001f.ada: New file. - * ada/acats-2/tests/c9/c94001g.ada: New file. - * ada/acats-2/tests/c9/c94002a.ada: New file. - * ada/acats-2/tests/c9/c94002b.ada: New file. - * ada/acats-2/tests/c9/c94002d.ada: New file. - * ada/acats-2/tests/c9/c94002e.ada: New file. - * ada/acats-2/tests/c9/c94002f.ada: New file. - * ada/acats-2/tests/c9/c94002g.ada: New file. - * ada/acats-2/tests/c9/c94004a.ada: New file. - * ada/acats-2/tests/c9/c94004b.ada: New file. - * ada/acats-2/tests/c9/c94004c.ada: New file. - * ada/acats-2/tests/c9/c94005a.ada: New file. - * ada/acats-2/tests/c9/c94005b.ada: New file. - * ada/acats-2/tests/c9/c94006a.ada: New file. - * ada/acats-2/tests/c9/c94007a.ada: New file. - * ada/acats-2/tests/c9/c94007b.ada: New file. - * ada/acats-2/tests/c9/c94008a.ada: New file. - * ada/acats-2/tests/c9/c94008b.ada: New file. - * ada/acats-2/tests/c9/c94008c.ada: New file. - * ada/acats-2/tests/c9/c94008d.ada: New file. - * ada/acats-2/tests/c9/c94010a.ada: New file. - * ada/acats-2/tests/c9/c94011a.ada: New file. - * ada/acats-2/tests/c9/c94020a.ada: New file. - * ada/acats-2/tests/c9/c940a03.a: New file. - * ada/acats-2/tests/c9/c95008a.ada: New file. - * ada/acats-2/tests/c9/c95009a.ada: New file. - * ada/acats-2/tests/c9/c95010a.ada: New file. - * ada/acats-2/tests/c9/c95011a.ada: New file. - * ada/acats-2/tests/c9/c95012a.ada: New file. - * ada/acats-2/tests/c9/c95021a.ada: New file. - * ada/acats-2/tests/c9/c95022a.ada: New file. - * ada/acats-2/tests/c9/c95022b.ada: New file. - * ada/acats-2/tests/c9/c95033a.ada: New file. - * ada/acats-2/tests/c9/c95033b.ada: New file. - * ada/acats-2/tests/c9/c95034a.ada: New file. - * ada/acats-2/tests/c9/c95034b.ada: New file. - * ada/acats-2/tests/c9/c95035a.ada: New file. - * ada/acats-2/tests/c9/c95040a.ada: New file. - * ada/acats-2/tests/c9/c95040b.ada: New file. - * ada/acats-2/tests/c9/c95040c.ada: New file. - * ada/acats-2/tests/c9/c95040d.ada: New file. - * ada/acats-2/tests/c9/c95041a.ada: New file. - * ada/acats-2/tests/c9/c95065a.ada: New file. - * ada/acats-2/tests/c9/c95065b.ada: New file. - * ada/acats-2/tests/c9/c95065c.ada: New file. - * ada/acats-2/tests/c9/c95065d.ada: New file. - * ada/acats-2/tests/c9/c95065e.ada: New file. - * ada/acats-2/tests/c9/c95065f.ada: New file. - * ada/acats-2/tests/c9/c95066a.ada: New file. - * ada/acats-2/tests/c9/c95067a.ada: New file. - * ada/acats-2/tests/c9/c95071a.ada: New file. - * ada/acats-2/tests/c9/c95072a.ada: New file. - * ada/acats-2/tests/c9/c95072b.ada: New file. - * ada/acats-2/tests/c9/c95073a.ada: New file. - * ada/acats-2/tests/c9/c95074c.ada: New file. - * ada/acats-2/tests/c9/c95076a.ada: New file. - * ada/acats-2/tests/c9/c95078a.ada: New file. - * ada/acats-2/tests/c9/c95080b.ada: New file. - * ada/acats-2/tests/c9/c95082g.ada: New file. - * ada/acats-2/tests/c9/c95085a.ada: New file. - * ada/acats-2/tests/c9/c95085b.ada: New file. - * ada/acats-2/tests/c9/c95085c.ada: New file. - * ada/acats-2/tests/c9/c95085d.ada: New file. - * ada/acats-2/tests/c9/c95085e.ada: New file. - * ada/acats-2/tests/c9/c95085f.ada: New file. - * ada/acats-2/tests/c9/c95085g.ada: New file. - * ada/acats-2/tests/c9/c95085h.ada: New file. - * ada/acats-2/tests/c9/c95085i.ada: New file. - * ada/acats-2/tests/c9/c95085j.ada: New file. - * ada/acats-2/tests/c9/c95085k.ada: New file. - * ada/acats-2/tests/c9/c95085l.ada: New file. - * ada/acats-2/tests/c9/c95085m.ada: New file. - * ada/acats-2/tests/c9/c95085n.ada: New file. - * ada/acats-2/tests/c9/c95085o.ada: New file. - * ada/acats-2/tests/c9/c95086a.ada: New file. - * ada/acats-2/tests/c9/c95086b.ada: New file. - * ada/acats-2/tests/c9/c95086c.ada: New file. - * ada/acats-2/tests/c9/c95086d.ada: New file. - * ada/acats-2/tests/c9/c95086e.ada: New file. - * ada/acats-2/tests/c9/c95086f.ada: New file. - * ada/acats-2/tests/c9/c95087a.ada: New file. - * ada/acats-2/tests/c9/c95087b.ada: New file. - * ada/acats-2/tests/c9/c95087c.ada: New file. - * ada/acats-2/tests/c9/c95087d.ada: New file. - * ada/acats-2/tests/c9/c95088a.ada: New file. - * ada/acats-2/tests/c9/c95089a.ada: New file. - * ada/acats-2/tests/c9/c95090a.ada: New file. - * ada/acats-2/tests/c9/c95092a.ada: New file. - * ada/acats-2/tests/c9/c95093a.ada: New file. - * ada/acats-2/tests/c9/c95095a.ada: New file. - * ada/acats-2/tests/c9/c95095b.ada: New file. - * ada/acats-2/tests/c9/c95095c.ada: New file. - * ada/acats-2/tests/c9/c95095d.ada: New file. - * ada/acats-2/tests/c9/c95095e.ada: New file. - * ada/acats-2/tests/c9/c951001.a: New file. - * ada/acats-2/tests/c9/c951002.a: New file. - * ada/acats-2/tests/c9/c953001.a: New file. - * ada/acats-2/tests/c9/c953002.a: New file. - * ada/acats-2/tests/c9/c953003.a: New file. - * ada/acats-2/tests/c9/c954001.a: New file. - * ada/acats-2/tests/c9/c954010.a: New file. - * ada/acats-2/tests/c9/c954011.a: New file. - * ada/acats-2/tests/c9/c954012.a: New file. - * ada/acats-2/tests/c9/c954013.a: New file. - * ada/acats-2/tests/c9/c954014.a: New file. - * ada/acats-2/tests/c9/c954015.a: New file. - * ada/acats-2/tests/c9/c954016.a: New file. - * ada/acats-2/tests/c9/c954017.a: New file. - * ada/acats-2/tests/c9/c954018.a: New file. - * ada/acats-2/tests/c9/c954019.a: New file. - * ada/acats-2/tests/c9/c954020.a: New file. - * ada/acats-2/tests/c9/c954021.a: New file. - * ada/acats-2/tests/c9/c954022.a: New file. - * ada/acats-2/tests/c9/c954023.a: New file. - * ada/acats-2/tests/c9/c954024.a: New file. - * ada/acats-2/tests/c9/c954025.a: New file. - * ada/acats-2/tests/c9/c954026.a: New file. - * ada/acats-2/tests/c9/c954a01.a: New file. - * ada/acats-2/tests/c9/c954a02.a: New file. - * ada/acats-2/tests/c9/c954a03.a: New file. - * ada/acats-2/tests/c9/c960001.a: New file. - * ada/acats-2/tests/c9/c960002.a: New file. - * ada/acats-2/tests/c9/c960004.a: New file. - * ada/acats-2/tests/c9/c96001a.ada: New file. - * ada/acats-2/tests/c9/c96004a.ada: New file. - * ada/acats-2/tests/c9/c96005a.ada: New file. - * ada/acats-2/tests/c9/c96005b.tst: New file. - * ada/acats-2/tests/c9/c96005d.ada: New file. - * ada/acats-2/tests/c9/c96005f.ada: New file. - * ada/acats-2/tests/c9/c96006a.ada: New file. - * ada/acats-2/tests/c9/c96007a.ada: New file. - * ada/acats-2/tests/c9/c96008a.ada: New file. - * ada/acats-2/tests/c9/c96008b.ada: New file. - * ada/acats-2/tests/c9/c97112a.ada: New file. - * ada/acats-2/tests/c9/c97113a.ada: New file. - * ada/acats-2/tests/c9/c97114a.ada: New file. - * ada/acats-2/tests/c9/c97115a.ada: New file. - * ada/acats-2/tests/c9/c97116a.ada: New file. - * ada/acats-2/tests/c9/c97117a.ada: New file. - * ada/acats-2/tests/c9/c97117b.ada: New file. - * ada/acats-2/tests/c9/c97117c.ada: New file. - * ada/acats-2/tests/c9/c97118a.ada: New file. - * ada/acats-2/tests/c9/c97120a.ada: New file. - * ada/acats-2/tests/c9/c97120b.ada: New file. - * ada/acats-2/tests/c9/c97201a.ada: New file. - * ada/acats-2/tests/c9/c97201b.ada: New file. - * ada/acats-2/tests/c9/c97201c.ada: New file. - * ada/acats-2/tests/c9/c97201d.ada: New file. - * ada/acats-2/tests/c9/c97201e.ada: New file. - * ada/acats-2/tests/c9/c97201g.ada: New file. - * ada/acats-2/tests/c9/c97201h.ada: New file. - * ada/acats-2/tests/c9/c97201x.ada: New file. - * ada/acats-2/tests/c9/c97202a.ada: New file. - * ada/acats-2/tests/c9/c97203a.ada: New file. - * ada/acats-2/tests/c9/c97203b.ada: New file. - * ada/acats-2/tests/c9/c97203c.ada: New file. - * ada/acats-2/tests/c9/c97204a.ada: New file. - * ada/acats-2/tests/c9/c97204b.ada: New file. - * ada/acats-2/tests/c9/c97205a.ada: New file. - * ada/acats-2/tests/c9/c97205b.ada: New file. - * ada/acats-2/tests/c9/c97301a.ada: New file. - * ada/acats-2/tests/c9/c97301b.ada: New file. - * ada/acats-2/tests/c9/c97301c.ada: New file. - * ada/acats-2/tests/c9/c97301d.ada: New file. - * ada/acats-2/tests/c9/c97301e.ada: New file. - * ada/acats-2/tests/c9/c97302a.ada: New file. - * ada/acats-2/tests/c9/c97303a.ada: New file. - * ada/acats-2/tests/c9/c97303b.ada: New file. - * ada/acats-2/tests/c9/c97303c.ada: New file. - * ada/acats-2/tests/c9/c97304a.ada: New file. - * ada/acats-2/tests/c9/c97304b.ada: New file. - * ada/acats-2/tests/c9/c97305a.ada: New file. - * ada/acats-2/tests/c9/c97305b.ada: New file. - * ada/acats-2/tests/c9/c97305c.ada: New file. - * ada/acats-2/tests/c9/c97305d.ada: New file. - * ada/acats-2/tests/c9/c97307a.ada: New file. - * ada/acats-2/tests/c9/c974001.a: New file. - * ada/acats-2/tests/c9/c974002.a: New file. - * ada/acats-2/tests/c9/c974003.a: New file. - * ada/acats-2/tests/c9/c974004.a: New file. - * ada/acats-2/tests/c9/c974005.a: New file. - * ada/acats-2/tests/c9/c974006.a: New file. - * ada/acats-2/tests/c9/c974007.a: New file. - * ada/acats-2/tests/c9/c974008.a: New file. - * ada/acats-2/tests/c9/c974009.a: New file. - * ada/acats-2/tests/c9/c974010.a: New file. - * ada/acats-2/tests/c9/c974011.a: New file. - * ada/acats-2/tests/c9/c974012.a: New file. - * ada/acats-2/tests/c9/c974013.a: New file. - * ada/acats-2/tests/c9/c974014.a: New file. - * ada/acats-2/tests/c9/c980001.a: New file. - * ada/acats-2/tests/c9/c980002.a: New file. - * ada/acats-2/tests/c9/c980003.a: New file. - * ada/acats-2/tests/c9/c99004a.ada: New file. - * ada/acats-2/tests/c9/c99005a.ada: New file. - * ada/acats-2/tests/c9/c9a003a.ada: New file. - * ada/acats-2/tests/c9/c9a004a.ada: New file. - * ada/acats-2/tests/c9/c9a007a.ada: New file. - * ada/acats-2/tests/c9/c9a009a.ada: New file. - * ada/acats-2/tests/c9/c9a009c.ada: New file. - * ada/acats-2/tests/c9/c9a009f.ada: New file. - * ada/acats-2/tests/c9/c9a009g.ada: New file. - * ada/acats-2/tests/c9/c9a009h.ada: New file. - * ada/acats-2/tests/c9/c9a010a.ada: New file. - * ada/acats-2/tests/c9/c9a011a.ada: New file. - * ada/acats-2/tests/c9/c9a011b.ada: New file. - * ada/acats-2/tests/ca/ca1003a.ada: New file. - * ada/acats-2/tests/ca/ca1004a.ada: New file. - * ada/acats-2/tests/ca/ca1005a.ada: New file. - * ada/acats-2/tests/ca/ca1006a.ada: New file. - * ada/acats-2/tests/ca/ca1011a0.ada: New file. - * ada/acats-2/tests/ca/ca1011a1.ada: New file. - * ada/acats-2/tests/ca/ca1011a2.ada: New file. - * ada/acats-2/tests/ca/ca1011a3.ada: New file. - * ada/acats-2/tests/ca/ca1011a4.ada: New file. - * ada/acats-2/tests/ca/ca1011a5.ada: New file. - * ada/acats-2/tests/ca/ca1011a6.ada: New file. - * ada/acats-2/tests/ca/ca1012a0.ada: New file. - * ada/acats-2/tests/ca/ca1012a1.ada: New file. - * ada/acats-2/tests/ca/ca1012a2.ada: New file. - * ada/acats-2/tests/ca/ca1012a3.ada: New file. - * ada/acats-2/tests/ca/ca1012a4.ada: New file. - * ada/acats-2/tests/ca/ca1012b0.ada: New file. - * ada/acats-2/tests/ca/ca1012b2.ada: New file. - * ada/acats-2/tests/ca/ca1012b4.ada: New file. - * ada/acats-2/tests/ca/ca1013a0.ada: New file. - * ada/acats-2/tests/ca/ca1013a1.ada: New file. - * ada/acats-2/tests/ca/ca1013a2.ada: New file. - * ada/acats-2/tests/ca/ca1013a3.ada: New file. - * ada/acats-2/tests/ca/ca1013a4.ada: New file. - * ada/acats-2/tests/ca/ca1013a5.ada: New file. - * ada/acats-2/tests/ca/ca1013a6.ada: New file. - * ada/acats-2/tests/ca/ca1014a0.ada: New file. - * ada/acats-2/tests/ca/ca1014a1.ada: New file. - * ada/acats-2/tests/ca/ca1014a2.ada: New file. - * ada/acats-2/tests/ca/ca1014a3.ada: New file. - * ada/acats-2/tests/ca/ca1020e0.ada: New file. - * ada/acats-2/tests/ca/ca1020e1.ada: New file. - * ada/acats-2/tests/ca/ca1020e2.ada: New file. - * ada/acats-2/tests/ca/ca1020e3.ada: New file. - * ada/acats-2/tests/ca/ca1022a0.ada: New file. - * ada/acats-2/tests/ca/ca1022a1.ada: New file. - * ada/acats-2/tests/ca/ca1022a2.ada: New file. - * ada/acats-2/tests/ca/ca1022a3.ada: New file. - * ada/acats-2/tests/ca/ca1022a4.ada: New file. - * ada/acats-2/tests/ca/ca1022a5.ada: New file. - * ada/acats-2/tests/ca/ca1022a6.ada: New file. - * ada/acats-2/tests/ca/ca11001.a: New file. - * ada/acats-2/tests/ca/ca11002.a: New file. - * ada/acats-2/tests/ca/ca11003.a: New file. - * ada/acats-2/tests/ca/ca110040.a: New file. - * ada/acats-2/tests/ca/ca110041.a: New file. - * ada/acats-2/tests/ca/ca110042.am: New file. - * ada/acats-2/tests/ca/ca110050.a: New file. - * ada/acats-2/tests/ca/ca110051.am: New file. - * ada/acats-2/tests/ca/ca11006.a: New file. - * ada/acats-2/tests/ca/ca11007.a: New file. - * ada/acats-2/tests/ca/ca11008.a: New file. - * ada/acats-2/tests/ca/ca11009.a: New file. - * ada/acats-2/tests/ca/ca11010.a: New file. - * ada/acats-2/tests/ca/ca11011.a: New file. - * ada/acats-2/tests/ca/ca11012.a: New file. - * ada/acats-2/tests/ca/ca11013.a: New file. - * ada/acats-2/tests/ca/ca11014.a: New file. - * ada/acats-2/tests/ca/ca11015.a: New file. - * ada/acats-2/tests/ca/ca11016.a: New file. - * ada/acats-2/tests/ca/ca11017.a: New file. - * ada/acats-2/tests/ca/ca11018.a: New file. - * ada/acats-2/tests/ca/ca11019.a: New file. - * ada/acats-2/tests/ca/ca11020.a: New file. - * ada/acats-2/tests/ca/ca11021.a: New file. - * ada/acats-2/tests/ca/ca11022.a: New file. - * ada/acats-2/tests/ca/ca1102a0.ada: New file. - * ada/acats-2/tests/ca/ca1102a1.ada: New file. - * ada/acats-2/tests/ca/ca1102a2.ada: New file. - * ada/acats-2/tests/ca/ca1106a.ada: New file. - * ada/acats-2/tests/ca/ca1108a.ada: New file. - * ada/acats-2/tests/ca/ca1108b.ada: New file. - * ada/acats-2/tests/ca/ca11a01.a: New file. - * ada/acats-2/tests/ca/ca11a02.a: New file. - * ada/acats-2/tests/ca/ca11b01.a: New file. - * ada/acats-2/tests/ca/ca11b02.a: New file. - * ada/acats-2/tests/ca/ca11c01.a: New file. - * ada/acats-2/tests/ca/ca11c02.a: New file. - * ada/acats-2/tests/ca/ca11c03.a: New file. - * ada/acats-2/tests/ca/ca11d010.a: New file. - * ada/acats-2/tests/ca/ca11d011.a: New file. - * ada/acats-2/tests/ca/ca11d012.a: New file. - * ada/acats-2/tests/ca/ca11d013.am: New file. - * ada/acats-2/tests/ca/ca11d02.a: New file. - * ada/acats-2/tests/ca/ca11d03.a: New file. - * ada/acats-2/tests/ca/ca13001.a: New file. - * ada/acats-2/tests/ca/ca13002.a: New file. - * ada/acats-2/tests/ca/ca13003.a: New file. - * ada/acats-2/tests/ca/ca13a01.a: New file. - * ada/acats-2/tests/ca/ca13a02.a: New file. - * ada/acats-2/tests/ca/ca140230.a: New file. - * ada/acats-2/tests/ca/ca140231.a: New file. - * ada/acats-2/tests/ca/ca140232.am: New file. - * ada/acats-2/tests/ca/ca140233.a: New file. - * ada/acats-2/tests/ca/ca140280.a: New file. - * ada/acats-2/tests/ca/ca140281.a: New file. - * ada/acats-2/tests/ca/ca140282.a: New file. - * ada/acats-2/tests/ca/ca140283.am: New file. - * ada/acats-2/tests/ca/ca15003.a: New file. - * ada/acats-2/tests/ca/ca200020.a: New file. - * ada/acats-2/tests/ca/ca200021.a: New file. - * ada/acats-2/tests/ca/ca200022.am: New file. - * ada/acats-2/tests/ca/ca2001h0.ada: New file. - * ada/acats-2/tests/ca/ca2001h1.ada: New file. - * ada/acats-2/tests/ca/ca2001h2.ada: New file. - * ada/acats-2/tests/ca/ca2001h3.ada: New file. - * ada/acats-2/tests/ca/ca2002a0.ada: New file. - * ada/acats-2/tests/ca/ca2002a1.ada: New file. - * ada/acats-2/tests/ca/ca2002a2.ada: New file. - * ada/acats-2/tests/ca/ca2003a0.ada: New file. - * ada/acats-2/tests/ca/ca2003a1.ada: New file. - * ada/acats-2/tests/ca/ca2004a0.ada: New file. - * ada/acats-2/tests/ca/ca2004a1.ada: New file. - * ada/acats-2/tests/ca/ca2004a2.ada: New file. - * ada/acats-2/tests/ca/ca2004a3.ada: New file. - * ada/acats-2/tests/ca/ca2004a4.ada: New file. - * ada/acats-2/tests/ca/ca2007a0.ada: New file. - * ada/acats-2/tests/ca/ca2007a1.ada: New file. - * ada/acats-2/tests/ca/ca2007a2.ada: New file. - * ada/acats-2/tests/ca/ca2007a3.ada: New file. - * ada/acats-2/tests/ca/ca2008a0.ada: New file. - * ada/acats-2/tests/ca/ca2008a1.ada: New file. - * ada/acats-2/tests/ca/ca2008a2.ada: New file. - * ada/acats-2/tests/ca/ca2009a.ada: New file. - * ada/acats-2/tests/ca/ca2009c0.ada: New file. - * ada/acats-2/tests/ca/ca2009c1.ada: New file. - * ada/acats-2/tests/ca/ca2009d.ada: New file. - * ada/acats-2/tests/ca/ca2009f0.ada: New file. - * ada/acats-2/tests/ca/ca2009f1.ada: New file. - * ada/acats-2/tests/ca/ca2009f2.ada: New file. - * ada/acats-2/tests/ca/ca2011b.ada: New file. - * ada/acats-2/tests/ca/ca21001.a: New file. - * ada/acats-2/tests/ca/ca3011a0.ada: New file. - * ada/acats-2/tests/ca/ca3011a1.ada: New file. - * ada/acats-2/tests/ca/ca3011a2.ada: New file. - * ada/acats-2/tests/ca/ca3011a3.ada: New file. - * ada/acats-2/tests/ca/ca3011a4.ada: New file. - * ada/acats-2/tests/ca/ca5003a0.ada: New file. - * ada/acats-2/tests/ca/ca5003a1.ada: New file. - * ada/acats-2/tests/ca/ca5003a2.ada: New file. - * ada/acats-2/tests/ca/ca5003a3.ada: New file. - * ada/acats-2/tests/ca/ca5003a4.ada: New file. - * ada/acats-2/tests/ca/ca5003a5.ada: New file. - * ada/acats-2/tests/ca/ca5003a6.ada: New file. - * ada/acats-2/tests/ca/ca5003b0.ada: New file. - * ada/acats-2/tests/ca/ca5003b1.ada: New file. - * ada/acats-2/tests/ca/ca5003b2.ada: New file. - * ada/acats-2/tests/ca/ca5003b3.ada: New file. - * ada/acats-2/tests/ca/ca5003b4.ada: New file. - * ada/acats-2/tests/ca/ca5003b5.ada: New file. - * ada/acats-2/tests/ca/ca5004a.ada: New file. - * ada/acats-2/tests/ca/ca5004b0.ada: New file. - * ada/acats-2/tests/ca/ca5004b1.ada: New file. - * ada/acats-2/tests/ca/ca5004b2.ada: New file. - * ada/acats-2/tests/ca/ca5006a.ada: New file. - * ada/acats-2/tests/cb/cb10002.a: New file. - * ada/acats-2/tests/cb/cb1001a.ada: New file. - * ada/acats-2/tests/cb/cb1004a.ada: New file. - * ada/acats-2/tests/cb/cb1005a.ada: New file. - * ada/acats-2/tests/cb/cb1010a.ada: New file. - * ada/acats-2/tests/cb/cb1010c.ada: New file. - * ada/acats-2/tests/cb/cb1010d.ada: New file. - * ada/acats-2/tests/cb/cb20001.a: New file. - * ada/acats-2/tests/cb/cb20003.a: New file. - * ada/acats-2/tests/cb/cb20004.a: New file. - * ada/acats-2/tests/cb/cb20005.a: New file. - * ada/acats-2/tests/cb/cb20006.a: New file. - * ada/acats-2/tests/cb/cb20007.a: New file. - * ada/acats-2/tests/cb/cb2004a.ada: New file. - * ada/acats-2/tests/cb/cb2005a.ada: New file. - * ada/acats-2/tests/cb/cb2006a.ada: New file. - * ada/acats-2/tests/cb/cb2007a.ada: New file. - * ada/acats-2/tests/cb/cb20a02.a: New file. - * ada/acats-2/tests/cb/cb3003a.ada: New file. - * ada/acats-2/tests/cb/cb3003b.ada: New file. - * ada/acats-2/tests/cb/cb3004a.ada: New file. - * ada/acats-2/tests/cb/cb40005.a: New file. - * ada/acats-2/tests/cb/cb4001a.ada: New file. - * ada/acats-2/tests/cb/cb4002a.ada: New file. - * ada/acats-2/tests/cb/cb4003a.ada: New file. - * ada/acats-2/tests/cb/cb4004a.ada: New file. - * ada/acats-2/tests/cb/cb4005a.ada: New file. - * ada/acats-2/tests/cb/cb4006a.ada: New file. - * ada/acats-2/tests/cb/cb4007a.ada: New file. - * ada/acats-2/tests/cb/cb4008a.ada: New file. - * ada/acats-2/tests/cb/cb4009a.ada: New file. - * ada/acats-2/tests/cb/cb4013a.ada: New file. - * ada/acats-2/tests/cb/cb40a01.a: New file. - * ada/acats-2/tests/cb/cb40a020.a: New file. - * ada/acats-2/tests/cb/cb40a021.am: New file. - * ada/acats-2/tests/cb/cb40a030.a: New file. - * ada/acats-2/tests/cb/cb40a031.am: New file. - * ada/acats-2/tests/cb/cb40a04.a: New file. - * ada/acats-2/tests/cb/cb41001.a: New file. - * ada/acats-2/tests/cb/cb41002.a: New file. - * ada/acats-2/tests/cb/cb41003.a: New file. - * ada/acats-2/tests/cb/cb41004.a: New file. - * ada/acats-2/tests/cb/cb5001a.ada: New file. - * ada/acats-2/tests/cb/cb5001b.ada: New file. - * ada/acats-2/tests/cb/cb5002a.ada: New file. - * ada/acats-2/tests/cc/cc1004a.ada: New file. - * ada/acats-2/tests/cc/cc1005b.ada: New file. - * ada/acats-2/tests/cc/cc1010a.ada: New file. - * ada/acats-2/tests/cc/cc1010b.ada: New file. - * ada/acats-2/tests/cc/cc1018a.ada: New file. - * ada/acats-2/tests/cc/cc1104c.ada: New file. - * ada/acats-2/tests/cc/cc1107b.ada: New file. - * ada/acats-2/tests/cc/cc1111a.ada: New file. - * ada/acats-2/tests/cc/cc1204a.ada: New file. - * ada/acats-2/tests/cc/cc1207b.ada: New file. - * ada/acats-2/tests/cc/cc1220a.ada: New file. - * ada/acats-2/tests/cc/cc1221a.ada: New file. - * ada/acats-2/tests/cc/cc1221b.ada: New file. - * ada/acats-2/tests/cc/cc1221c.ada: New file. - * ada/acats-2/tests/cc/cc1221d.ada: New file. - * ada/acats-2/tests/cc/cc1222a.ada: New file. - * ada/acats-2/tests/cc/cc1223a.ada: New file. - * ada/acats-2/tests/cc/cc1224a.ada: New file. - * ada/acats-2/tests/cc/cc1225a.tst: New file. - * ada/acats-2/tests/cc/cc1226b.ada: New file. - * ada/acats-2/tests/cc/cc1227a.ada: New file. - * ada/acats-2/tests/cc/cc1301a.ada: New file. - * ada/acats-2/tests/cc/cc1302a.ada: New file. - * ada/acats-2/tests/cc/cc1304a.ada: New file. - * ada/acats-2/tests/cc/cc1304b.ada: New file. - * ada/acats-2/tests/cc/cc1307a.ada: New file. - * ada/acats-2/tests/cc/cc1307b.ada: New file. - * ada/acats-2/tests/cc/cc1308a.ada: New file. - * ada/acats-2/tests/cc/cc1310a.ada: New file. - * ada/acats-2/tests/cc/cc1311a.ada: New file. - * ada/acats-2/tests/cc/cc1311b.ada: New file. - * ada/acats-2/tests/cc/cc2002a.ada: New file. - * ada/acats-2/tests/cc/cc30001.a: New file. - * ada/acats-2/tests/cc/cc30002.a: New file. - * ada/acats-2/tests/cc/cc3004a.ada: New file. - * ada/acats-2/tests/cc/cc3007a.ada: New file. - * ada/acats-2/tests/cc/cc3007b.ada: New file. - * ada/acats-2/tests/cc/cc3011a.ada: New file. - * ada/acats-2/tests/cc/cc3011d.ada: New file. - * ada/acats-2/tests/cc/cc3012a.ada: New file. - * ada/acats-2/tests/cc/cc3015a.ada: New file. - * ada/acats-2/tests/cc/cc3016b.ada: New file. - * ada/acats-2/tests/cc/cc3016c.ada: New file. - * ada/acats-2/tests/cc/cc3016f.ada: New file. - * ada/acats-2/tests/cc/cc3016i.ada: New file. - * ada/acats-2/tests/cc/cc3017b.ada: New file. - * ada/acats-2/tests/cc/cc3017c.ada: New file. - * ada/acats-2/tests/cc/cc3019a.ada: New file. - * ada/acats-2/tests/cc/cc3019b0.ada: New file. - * ada/acats-2/tests/cc/cc3019b1.ada: New file. - * ada/acats-2/tests/cc/cc3019b2.ada: New file. - * ada/acats-2/tests/cc/cc3019c0.ada: New file. - * ada/acats-2/tests/cc/cc3019c1.ada: New file. - * ada/acats-2/tests/cc/cc3019c2.ada: New file. - * ada/acats-2/tests/cc/cc3106b.ada: New file. - * ada/acats-2/tests/cc/cc3120a.ada: New file. - * ada/acats-2/tests/cc/cc3120b.ada: New file. - * ada/acats-2/tests/cc/cc3121a.ada: New file. - * ada/acats-2/tests/cc/cc3123a.ada: New file. - * ada/acats-2/tests/cc/cc3125a.ada: New file. - * ada/acats-2/tests/cc/cc3125b.ada: New file. - * ada/acats-2/tests/cc/cc3125c.ada: New file. - * ada/acats-2/tests/cc/cc3125d.ada: New file. - * ada/acats-2/tests/cc/cc3126a.ada: New file. - * ada/acats-2/tests/cc/cc3127a.ada: New file. - * ada/acats-2/tests/cc/cc3128a.ada: New file. - * ada/acats-2/tests/cc/cc3203a.ada: New file. - * ada/acats-2/tests/cc/cc3207b.ada: New file. - * ada/acats-2/tests/cc/cc3220a.ada: New file. - * ada/acats-2/tests/cc/cc3221a.ada: New file. - * ada/acats-2/tests/cc/cc3222a.ada: New file. - * ada/acats-2/tests/cc/cc3223a.ada: New file. - * ada/acats-2/tests/cc/cc3224a.ada: New file. - * ada/acats-2/tests/cc/cc3225a.ada: New file. - * ada/acats-2/tests/cc/cc3230a.ada: New file. - * ada/acats-2/tests/cc/cc3231a.ada: New file. - * ada/acats-2/tests/cc/cc3232a.ada: New file. - * ada/acats-2/tests/cc/cc3233a.ada: New file. - * ada/acats-2/tests/cc/cc3234a.ada: New file. - * ada/acats-2/tests/cc/cc3235a.ada: New file. - * ada/acats-2/tests/cc/cc3236a.ada: New file. - * ada/acats-2/tests/cc/cc3240a.ada: New file. - * ada/acats-2/tests/cc/cc3305a.ada: New file. - * ada/acats-2/tests/cc/cc3305b.ada: New file. - * ada/acats-2/tests/cc/cc3305c.ada: New file. - * ada/acats-2/tests/cc/cc3305d.ada: New file. - * ada/acats-2/tests/cc/cc3601a.ada: New file. - * ada/acats-2/tests/cc/cc3601c.ada: New file. - * ada/acats-2/tests/cc/cc3602a.ada: New file. - * ada/acats-2/tests/cc/cc3603a.ada: New file. - * ada/acats-2/tests/cc/cc3605a.ada: New file. - * ada/acats-2/tests/cc/cc3606a.ada: New file. - * ada/acats-2/tests/cc/cc3606b.ada: New file. - * ada/acats-2/tests/cc/cc3607b.ada: New file. - * ada/acats-2/tests/cc/cc40001.a: New file. - * ada/acats-2/tests/cc/cc50001.a: New file. - * ada/acats-2/tests/cc/cc50a01.a: New file. - * ada/acats-2/tests/cc/cc50a02.a: New file. - * ada/acats-2/tests/cc/cc51001.a: New file. - * ada/acats-2/tests/cc/cc51002.a: New file. - * ada/acats-2/tests/cc/cc51003.a: New file. - * ada/acats-2/tests/cc/cc51004.a: New file. - * ada/acats-2/tests/cc/cc51006.a: New file. - * ada/acats-2/tests/cc/cc51007.a: New file. - * ada/acats-2/tests/cc/cc51008.a: New file. - * ada/acats-2/tests/cc/cc51a01.a: New file. - * ada/acats-2/tests/cc/cc51b03.a: New file. - * ada/acats-2/tests/cc/cc51d01.a: New file. - * ada/acats-2/tests/cc/cc51d02.a: New file. - * ada/acats-2/tests/cc/cc54001.a: New file. - * ada/acats-2/tests/cc/cc54002.a: New file. - * ada/acats-2/tests/cc/cc54003.a: New file. - * ada/acats-2/tests/cc/cc54004.a: New file. - * ada/acats-2/tests/cc/cc70001.a: New file. - * ada/acats-2/tests/cc/cc70002.a: New file. - * ada/acats-2/tests/cc/cc70003.a: New file. - * ada/acats-2/tests/cc/cc70a01.a: New file. - * ada/acats-2/tests/cc/cc70a02.a: New file. - * ada/acats-2/tests/cc/cc70b01.a: New file. - * ada/acats-2/tests/cc/cc70b02.a: New file. - * ada/acats-2/tests/cc/cc70c01.a: New file. - * ada/acats-2/tests/cc/cc70c02.a: New file. - * ada/acats-2/tests/cd/cd10001.a: New file. - * ada/acats-2/tests/cd/cd10002.a: New file. - * ada/acats-2/tests/cd/cd1009a.ada: New file. - * ada/acats-2/tests/cd/cd1009b.ada: New file. - * ada/acats-2/tests/cd/cd1009d.ada: New file. - * ada/acats-2/tests/cd/cd1009e.ada: New file. - * ada/acats-2/tests/cd/cd1009f.ada: New file. - * ada/acats-2/tests/cd/cd1009g.ada: New file. - * ada/acats-2/tests/cd/cd1009h.ada: New file. - * ada/acats-2/tests/cd/cd1009i.ada: New file. - * ada/acats-2/tests/cd/cd1009j.ada: New file. - * ada/acats-2/tests/cd/cd1009k.tst: New file. - * ada/acats-2/tests/cd/cd1009l.ada: New file. - * ada/acats-2/tests/cd/cd1009m.ada: New file. - * ada/acats-2/tests/cd/cd1009n.ada: New file. - * ada/acats-2/tests/cd/cd1009o.ada: New file. - * ada/acats-2/tests/cd/cd1009p.ada: New file. - * ada/acats-2/tests/cd/cd1009q.ada: New file. - * ada/acats-2/tests/cd/cd1009r.ada: New file. - * ada/acats-2/tests/cd/cd1009s.ada: New file. - * ada/acats-2/tests/cd/cd1009t.tst: New file. - * ada/acats-2/tests/cd/cd1009u.tst: New file. - * ada/acats-2/tests/cd/cd1009v.ada: New file. - * ada/acats-2/tests/cd/cd1009w.ada: New file. - * ada/acats-2/tests/cd/cd1009x.ada: New file. - * ada/acats-2/tests/cd/cd1009y.ada: New file. - * ada/acats-2/tests/cd/cd1009z.ada: New file. - * ada/acats-2/tests/cd/cd1c03a.ada: New file. - * ada/acats-2/tests/cd/cd1c03b.ada: New file. - * ada/acats-2/tests/cd/cd1c03c.ada: New file. - * ada/acats-2/tests/cd/cd1c03e.tst: New file. - * ada/acats-2/tests/cd/cd1c03f.ada: New file. - * ada/acats-2/tests/cd/cd1c03g.ada: New file. - * ada/acats-2/tests/cd/cd1c03h.ada: New file. - * ada/acats-2/tests/cd/cd1c03i.ada: New file. - * ada/acats-2/tests/cd/cd1c04a.ada: New file. - * ada/acats-2/tests/cd/cd1c04d.ada: New file. - * ada/acats-2/tests/cd/cd1c04e.ada: New file. - * ada/acats-2/tests/cd/cd1c06a.tst: New file. - * ada/acats-2/tests/cd/cd20001.a: New file. - * ada/acats-2/tests/cd/cd2a21a.ada: New file. - * ada/acats-2/tests/cd/cd2a21c.ada: New file. - * ada/acats-2/tests/cd/cd2a21e.ada: New file. - * ada/acats-2/tests/cd/cd2a22a.ada: New file. - * ada/acats-2/tests/cd/cd2a22e.ada: New file. - * ada/acats-2/tests/cd/cd2a22i.ada: New file. - * ada/acats-2/tests/cd/cd2a22j.ada: New file. - * ada/acats-2/tests/cd/cd2a23a.ada: New file. - * ada/acats-2/tests/cd/cd2a23e.ada: New file. - * ada/acats-2/tests/cd/cd2a24a.ada: New file. - * ada/acats-2/tests/cd/cd2a24e.ada: New file. - * ada/acats-2/tests/cd/cd2a24i.ada: New file. - * ada/acats-2/tests/cd/cd2a24j.ada: New file. - * ada/acats-2/tests/cd/cd2a31a.ada: New file. - * ada/acats-2/tests/cd/cd2a31c.ada: New file. - * ada/acats-2/tests/cd/cd2a31e.ada: New file. - * ada/acats-2/tests/cd/cd2a32a.ada: New file. - * ada/acats-2/tests/cd/cd2a32c.ada: New file. - * ada/acats-2/tests/cd/cd2a32e.ada: New file. - * ada/acats-2/tests/cd/cd2a32g.ada: New file. - * ada/acats-2/tests/cd/cd2a32i.ada: New file. - * ada/acats-2/tests/cd/cd2a32j.ada: New file. - * ada/acats-2/tests/cd/cd2a51a.ada: New file. - * ada/acats-2/tests/cd/cd2a53a.ada: New file. - * ada/acats-2/tests/cd/cd2a53e.ada: New file. - * ada/acats-2/tests/cd/cd2a83c.tst: New file. - * ada/acats-2/tests/cd/cd2a91c.tst: New file. - * ada/acats-2/tests/cd/cd2b11a.ada: New file. - * ada/acats-2/tests/cd/cd2b11b.ada: New file. - * ada/acats-2/tests/cd/cd2b11d.ada: New file. - * ada/acats-2/tests/cd/cd2b11e.ada: New file. - * ada/acats-2/tests/cd/cd2b11f.ada: New file. - * ada/acats-2/tests/cd/cd2b15c.ada: New file. - * ada/acats-2/tests/cd/cd2b16a.ada: New file. - * ada/acats-2/tests/cd/cd2c11a.tst: New file. - * ada/acats-2/tests/cd/cd2c11d.tst: New file. - * ada/acats-2/tests/cd/cd2d11a.ada: New file. - * ada/acats-2/tests/cd/cd2d13a.ada: New file. - * ada/acats-2/tests/cd/cd30001.a: New file. - * ada/acats-2/tests/cd/cd30002.a: New file. - * ada/acats-2/tests/cd/cd30003.a: New file. - * ada/acats-2/tests/cd/cd30004.a: New file. - * ada/acats-2/tests/cd/cd300050.am: New file. - * ada/acats-2/tests/cd/cd300051.c: New file. - * ada/acats-2/tests/cd/cd30011.a: New file. - * ada/acats-2/tests/cd/cd30012.a: New file. - * ada/acats-2/tests/cd/cd3014a.ada: New file. - * ada/acats-2/tests/cd/cd3014c.ada: New file. - * ada/acats-2/tests/cd/cd3014d.ada: New file. - * ada/acats-2/tests/cd/cd3014f.ada: New file. - * ada/acats-2/tests/cd/cd3015a.ada: New file. - * ada/acats-2/tests/cd/cd3015c.ada: New file. - * ada/acats-2/tests/cd/cd3015e.ada: New file. - * ada/acats-2/tests/cd/cd3015f.ada: New file. - * ada/acats-2/tests/cd/cd3015g.ada: New file. - * ada/acats-2/tests/cd/cd3015h.ada: New file. - * ada/acats-2/tests/cd/cd3015i.ada: New file. - * ada/acats-2/tests/cd/cd3015k.ada: New file. - * ada/acats-2/tests/cd/cd3021a.ada: New file. - * ada/acats-2/tests/cd/cd33001.a: New file. - * ada/acats-2/tests/cd/cd33002.a: New file. - * ada/acats-2/tests/cd/cd40001.a: New file. - * ada/acats-2/tests/cd/cd4031a.ada: New file. - * ada/acats-2/tests/cd/cd4041a.tst: New file. - * ada/acats-2/tests/cd/cd4051a.ada: New file. - * ada/acats-2/tests/cd/cd4051b.ada: New file. - * ada/acats-2/tests/cd/cd4051c.ada: New file. - * ada/acats-2/tests/cd/cd4051d.ada: New file. - * ada/acats-2/tests/cd/cd5003a.ada: New file. - * ada/acats-2/tests/cd/cd5003b.ada: New file. - * ada/acats-2/tests/cd/cd5003c.ada: New file. - * ada/acats-2/tests/cd/cd5003d.ada: New file. - * ada/acats-2/tests/cd/cd5003e.ada: New file. - * ada/acats-2/tests/cd/cd5003f.ada: New file. - * ada/acats-2/tests/cd/cd5003g.ada: New file. - * ada/acats-2/tests/cd/cd5003h.ada: New file. - * ada/acats-2/tests/cd/cd5003i.ada: New file. - * ada/acats-2/tests/cd/cd5011a.ada: New file. - * ada/acats-2/tests/cd/cd5011c.ada: New file. - * ada/acats-2/tests/cd/cd5011e.ada: New file. - * ada/acats-2/tests/cd/cd5011g.ada: New file. - * ada/acats-2/tests/cd/cd5011i.ada: New file. - * ada/acats-2/tests/cd/cd5011k.ada: New file. - * ada/acats-2/tests/cd/cd5011m.ada: New file. - * ada/acats-2/tests/cd/cd5011q.ada: New file. - * ada/acats-2/tests/cd/cd5011s.ada: New file. - * ada/acats-2/tests/cd/cd5012a.ada: New file. - * ada/acats-2/tests/cd/cd5012b.ada: New file. - * ada/acats-2/tests/cd/cd5012e.ada: New file. - * ada/acats-2/tests/cd/cd5012f.ada: New file. - * ada/acats-2/tests/cd/cd5012i.ada: New file. - * ada/acats-2/tests/cd/cd5012m.ada: New file. - * ada/acats-2/tests/cd/cd5013a.ada: New file. - * ada/acats-2/tests/cd/cd5013c.ada: New file. - * ada/acats-2/tests/cd/cd5013e.ada: New file. - * ada/acats-2/tests/cd/cd5013g.ada: New file. - * ada/acats-2/tests/cd/cd5013i.ada: New file. - * ada/acats-2/tests/cd/cd5013k.ada: New file. - * ada/acats-2/tests/cd/cd5013m.ada: New file. - * ada/acats-2/tests/cd/cd5013o.ada: New file. - * ada/acats-2/tests/cd/cd5014a.ada: New file. - * ada/acats-2/tests/cd/cd5014c.ada: New file. - * ada/acats-2/tests/cd/cd5014e.ada: New file. - * ada/acats-2/tests/cd/cd5014g.ada: New file. - * ada/acats-2/tests/cd/cd5014i.ada: New file. - * ada/acats-2/tests/cd/cd5014k.ada: New file. - * ada/acats-2/tests/cd/cd5014m.ada: New file. - * ada/acats-2/tests/cd/cd5014o.ada: New file. - * ada/acats-2/tests/cd/cd5014t.ada: New file. - * ada/acats-2/tests/cd/cd5014v.ada: New file. - * ada/acats-2/tests/cd/cd5014x.ada: New file. - * ada/acats-2/tests/cd/cd5014y.ada: New file. - * ada/acats-2/tests/cd/cd5014z.ada: New file. - * ada/acats-2/tests/cd/cd70001.a: New file. - * ada/acats-2/tests/cd/cd7002a.ada: New file. - * ada/acats-2/tests/cd/cd7007b.ada: New file. - * ada/acats-2/tests/cd/cd7101d.ada: New file. - * ada/acats-2/tests/cd/cd7101e.dep: New file. - * ada/acats-2/tests/cd/cd7101f.dep: New file. - * ada/acats-2/tests/cd/cd7101g.tst: New file. - * ada/acats-2/tests/cd/cd7103d.ada: New file. - * ada/acats-2/tests/cd/cd7202a.ada: New file. - * ada/acats-2/tests/cd/cd7204b.ada: New file. - * ada/acats-2/tests/cd/cd7204c.ada: New file. - * ada/acats-2/tests/cd/cd72a01.a: New file. - * ada/acats-2/tests/cd/cd72a02.a: New file. - * ada/acats-2/tests/cd/cd7305a.ada: New file. - * ada/acats-2/tests/cd/cd90001.a: New file. - * ada/acats-2/tests/cd/cd92001.a: New file. - * ada/acats-2/tests/cd/cda201a.ada: New file. - * ada/acats-2/tests/cd/cda201b.ada: New file. - * ada/acats-2/tests/cd/cda201c.ada: New file. - * ada/acats-2/tests/cd/cda201e.ada: New file. - * ada/acats-2/tests/cd/cdb0a01.a: New file. - * ada/acats-2/tests/cd/cdb0a02.a: New file. - * ada/acats-2/tests/cd/cdd1001.a: New file. - * ada/acats-2/tests/cd/cdd2001.a: New file. - * ada/acats-2/tests/cd/cdd2a01.a: New file. - * ada/acats-2/tests/cd/cdd2a02.a: New file. - * ada/acats-2/tests/cd/cdd2a03.a: New file. - * ada/acats-2/tests/cd/cde0001.a: New file. - * ada/acats-2/tests/ce/ce2102a.ada: New file. - * ada/acats-2/tests/ce/ce2102b.ada: New file. - * ada/acats-2/tests/ce/ce2102c.tst: New file. - * ada/acats-2/tests/ce/ce2102d.ada: New file. - * ada/acats-2/tests/ce/ce2102e.ada: New file. - * ada/acats-2/tests/ce/ce2102f.ada: New file. - * ada/acats-2/tests/ce/ce2102g.ada: New file. - * ada/acats-2/tests/ce/ce2102h.tst: New file. - * ada/acats-2/tests/ce/ce2102i.ada: New file. - * ada/acats-2/tests/ce/ce2102j.ada: New file. - * ada/acats-2/tests/ce/ce2102k.ada: New file. - * ada/acats-2/tests/ce/ce2102l.ada: New file. - * ada/acats-2/tests/ce/ce2102m.ada: New file. - * ada/acats-2/tests/ce/ce2102n.ada: New file. - * ada/acats-2/tests/ce/ce2102o.ada: New file. - * ada/acats-2/tests/ce/ce2102p.ada: New file. - * ada/acats-2/tests/ce/ce2102q.ada: New file. - * ada/acats-2/tests/ce/ce2102r.ada: New file. - * ada/acats-2/tests/ce/ce2102s.ada: New file. - * ada/acats-2/tests/ce/ce2102t.ada: New file. - * ada/acats-2/tests/ce/ce2102u.ada: New file. - * ada/acats-2/tests/ce/ce2102v.ada: New file. - * ada/acats-2/tests/ce/ce2102w.ada: New file. - * ada/acats-2/tests/ce/ce2102x.ada: New file. - * ada/acats-2/tests/ce/ce2102y.ada: New file. - * ada/acats-2/tests/ce/ce2103a.tst: New file. - * ada/acats-2/tests/ce/ce2103b.tst: New file. - * ada/acats-2/tests/ce/ce2103c.ada: New file. - * ada/acats-2/tests/ce/ce2103d.ada: New file. - * ada/acats-2/tests/ce/ce2104a.ada: New file. - * ada/acats-2/tests/ce/ce2104b.ada: New file. - * ada/acats-2/tests/ce/ce2104c.ada: New file. - * ada/acats-2/tests/ce/ce2104d.ada: New file. - * ada/acats-2/tests/ce/ce2106a.ada: New file. - * ada/acats-2/tests/ce/ce2106b.ada: New file. - * ada/acats-2/tests/ce/ce2108e.ada: New file. - * ada/acats-2/tests/ce/ce2108f.ada: New file. - * ada/acats-2/tests/ce/ce2108g.ada: New file. - * ada/acats-2/tests/ce/ce2108h.ada: New file. - * ada/acats-2/tests/ce/ce2109a.ada: New file. - * ada/acats-2/tests/ce/ce2109b.ada: New file. - * ada/acats-2/tests/ce/ce2109c.ada: New file. - * ada/acats-2/tests/ce/ce2110a.ada: New file. - * ada/acats-2/tests/ce/ce2110c.ada: New file. - * ada/acats-2/tests/ce/ce2111a.ada: New file. - * ada/acats-2/tests/ce/ce2111b.ada: New file. - * ada/acats-2/tests/ce/ce2111c.ada: New file. - * ada/acats-2/tests/ce/ce2111e.ada: New file. - * ada/acats-2/tests/ce/ce2111f.ada: New file. - * ada/acats-2/tests/ce/ce2111g.ada: New file. - * ada/acats-2/tests/ce/ce2111i.ada: New file. - * ada/acats-2/tests/ce/ce2201a.ada: New file. - * ada/acats-2/tests/ce/ce2201b.ada: New file. - * ada/acats-2/tests/ce/ce2201c.ada: New file. - * ada/acats-2/tests/ce/ce2201d.dep: New file. - * ada/acats-2/tests/ce/ce2201e.dep: New file. - * ada/acats-2/tests/ce/ce2201f.ada: New file. - * ada/acats-2/tests/ce/ce2201g.ada: New file. - * ada/acats-2/tests/ce/ce2201h.ada: New file. - * ada/acats-2/tests/ce/ce2201i.ada: New file. - * ada/acats-2/tests/ce/ce2201j.ada: New file. - * ada/acats-2/tests/ce/ce2201k.ada: New file. - * ada/acats-2/tests/ce/ce2201l.ada: New file. - * ada/acats-2/tests/ce/ce2201m.ada: New file. - * ada/acats-2/tests/ce/ce2201n.ada: New file. - * ada/acats-2/tests/ce/ce2202a.ada: New file. - * ada/acats-2/tests/ce/ce2203a.tst: New file. - * ada/acats-2/tests/ce/ce2204a.ada: New file. - * ada/acats-2/tests/ce/ce2204b.ada: New file. - * ada/acats-2/tests/ce/ce2204c.ada: New file. - * ada/acats-2/tests/ce/ce2204d.ada: New file. - * ada/acats-2/tests/ce/ce2205a.ada: New file. - * ada/acats-2/tests/ce/ce2206a.ada: New file. - * ada/acats-2/tests/ce/ce2208b.ada: New file. - * ada/acats-2/tests/ce/ce2401a.ada: New file. - * ada/acats-2/tests/ce/ce2401b.ada: New file. - * ada/acats-2/tests/ce/ce2401c.ada: New file. - * ada/acats-2/tests/ce/ce2401e.ada: New file. - * ada/acats-2/tests/ce/ce2401f.ada: New file. - * ada/acats-2/tests/ce/ce2401h.ada: New file. - * ada/acats-2/tests/ce/ce2401i.ada: New file. - * ada/acats-2/tests/ce/ce2401j.ada: New file. - * ada/acats-2/tests/ce/ce2401k.ada: New file. - * ada/acats-2/tests/ce/ce2401l.ada: New file. - * ada/acats-2/tests/ce/ce2402a.ada: New file. - * ada/acats-2/tests/ce/ce2403a.tst: New file. - * ada/acats-2/tests/ce/ce2404a.ada: New file. - * ada/acats-2/tests/ce/ce2404b.ada: New file. - * ada/acats-2/tests/ce/ce2405b.ada: New file. - * ada/acats-2/tests/ce/ce2406a.ada: New file. - * ada/acats-2/tests/ce/ce2407a.ada: New file. - * ada/acats-2/tests/ce/ce2407b.ada: New file. - * ada/acats-2/tests/ce/ce2408a.ada: New file. - * ada/acats-2/tests/ce/ce2408b.ada: New file. - * ada/acats-2/tests/ce/ce2409a.ada: New file. - * ada/acats-2/tests/ce/ce2409b.ada: New file. - * ada/acats-2/tests/ce/ce2410a.ada: New file. - * ada/acats-2/tests/ce/ce2410b.ada: New file. - * ada/acats-2/tests/ce/ce2411a.ada: New file. - * ada/acats-2/tests/ce/ce3002b.tst: New file. - * ada/acats-2/tests/ce/ce3002c.tst: New file. - * ada/acats-2/tests/ce/ce3002d.ada: New file. - * ada/acats-2/tests/ce/ce3002f.ada: New file. - * ada/acats-2/tests/ce/ce3102a.ada: New file. - * ada/acats-2/tests/ce/ce3102b.tst: New file. - * ada/acats-2/tests/ce/ce3102d.ada: New file. - * ada/acats-2/tests/ce/ce3102e.ada: New file. - * ada/acats-2/tests/ce/ce3102f.ada: New file. - * ada/acats-2/tests/ce/ce3102g.ada: New file. - * ada/acats-2/tests/ce/ce3102h.ada: New file. - * ada/acats-2/tests/ce/ce3102i.ada: New file. - * ada/acats-2/tests/ce/ce3102j.ada: New file. - * ada/acats-2/tests/ce/ce3102k.ada: New file. - * ada/acats-2/tests/ce/ce3103a.ada: New file. - * ada/acats-2/tests/ce/ce3104a.ada: New file. - * ada/acats-2/tests/ce/ce3104b.ada: New file. - * ada/acats-2/tests/ce/ce3104c.ada: New file. - * ada/acats-2/tests/ce/ce3106a.ada: New file. - * ada/acats-2/tests/ce/ce3106b.ada: New file. - * ada/acats-2/tests/ce/ce3107a.tst: New file. - * ada/acats-2/tests/ce/ce3107b.ada: New file. - * ada/acats-2/tests/ce/ce3108a.ada: New file. - * ada/acats-2/tests/ce/ce3108b.ada: New file. - * ada/acats-2/tests/ce/ce3110a.ada: New file. - * ada/acats-2/tests/ce/ce3112c.ada: New file. - * ada/acats-2/tests/ce/ce3112d.ada: New file. - * ada/acats-2/tests/ce/ce3114a.ada: New file. - * ada/acats-2/tests/ce/ce3115a.ada: New file. - * ada/acats-2/tests/ce/ce3201a.ada: New file. - * ada/acats-2/tests/ce/ce3202a.ada: New file. - * ada/acats-2/tests/ce/ce3206a.ada: New file. - * ada/acats-2/tests/ce/ce3207a.ada: New file. - * ada/acats-2/tests/ce/ce3301a.ada: New file. - * ada/acats-2/tests/ce/ce3302a.ada: New file. - * ada/acats-2/tests/ce/ce3303a.ada: New file. - * ada/acats-2/tests/ce/ce3304a.tst: New file. - * ada/acats-2/tests/ce/ce3305a.ada: New file. - * ada/acats-2/tests/ce/ce3306a.ada: New file. - * ada/acats-2/tests/ce/ce3401a.ada: New file. - * ada/acats-2/tests/ce/ce3402a.ada: New file. - * ada/acats-2/tests/ce/ce3402c.ada: New file. - * ada/acats-2/tests/ce/ce3402d.ada: New file. - * ada/acats-2/tests/ce/ce3402e.ada: New file. - * ada/acats-2/tests/ce/ce3403a.ada: New file. - * ada/acats-2/tests/ce/ce3403b.ada: New file. - * ada/acats-2/tests/ce/ce3403c.ada: New file. - * ada/acats-2/tests/ce/ce3403d.ada: New file. - * ada/acats-2/tests/ce/ce3403e.ada: New file. - * ada/acats-2/tests/ce/ce3403f.ada: New file. - * ada/acats-2/tests/ce/ce3404a.ada: New file. - * ada/acats-2/tests/ce/ce3404b.ada: New file. - * ada/acats-2/tests/ce/ce3404c.ada: New file. - * ada/acats-2/tests/ce/ce3404d.ada: New file. - * ada/acats-2/tests/ce/ce3405a.ada: New file. - * ada/acats-2/tests/ce/ce3405c.ada: New file. - * ada/acats-2/tests/ce/ce3405d.ada: New file. - * ada/acats-2/tests/ce/ce3406a.ada: New file. - * ada/acats-2/tests/ce/ce3406b.ada: New file. - * ada/acats-2/tests/ce/ce3406c.ada: New file. - * ada/acats-2/tests/ce/ce3406d.ada: New file. - * ada/acats-2/tests/ce/ce3407a.ada: New file. - * ada/acats-2/tests/ce/ce3407b.ada: New file. - * ada/acats-2/tests/ce/ce3407c.ada: New file. - * ada/acats-2/tests/ce/ce3408a.ada: New file. - * ada/acats-2/tests/ce/ce3408b.ada: New file. - * ada/acats-2/tests/ce/ce3408c.ada: New file. - * ada/acats-2/tests/ce/ce3409a.ada: New file. - * ada/acats-2/tests/ce/ce3409b.ada: New file. - * ada/acats-2/tests/ce/ce3409c.ada: New file. - * ada/acats-2/tests/ce/ce3409d.ada: New file. - * ada/acats-2/tests/ce/ce3409e.ada: New file. - * ada/acats-2/tests/ce/ce3410a.ada: New file. - * ada/acats-2/tests/ce/ce3410b.ada: New file. - * ada/acats-2/tests/ce/ce3410c.ada: New file. - * ada/acats-2/tests/ce/ce3410d.ada: New file. - * ada/acats-2/tests/ce/ce3410e.ada: New file. - * ada/acats-2/tests/ce/ce3411a.ada: New file. - * ada/acats-2/tests/ce/ce3411c.ada: New file. - * ada/acats-2/tests/ce/ce3412a.ada: New file. - * ada/acats-2/tests/ce/ce3413a.ada: New file. - * ada/acats-2/tests/ce/ce3413b.ada: New file. - * ada/acats-2/tests/ce/ce3413c.ada: New file. - * ada/acats-2/tests/ce/ce3414a.ada: New file. - * ada/acats-2/tests/ce/ce3601a.ada: New file. - * ada/acats-2/tests/ce/ce3602a.ada: New file. - * ada/acats-2/tests/ce/ce3602b.ada: New file. - * ada/acats-2/tests/ce/ce3602c.ada: New file. - * ada/acats-2/tests/ce/ce3602d.ada: New file. - * ada/acats-2/tests/ce/ce3603a.ada: New file. - * ada/acats-2/tests/ce/ce3604a.ada: New file. - * ada/acats-2/tests/ce/ce3604b.ada: New file. - * ada/acats-2/tests/ce/ce3605a.ada: New file. - * ada/acats-2/tests/ce/ce3605b.ada: New file. - * ada/acats-2/tests/ce/ce3605c.ada: New file. - * ada/acats-2/tests/ce/ce3605d.ada: New file. - * ada/acats-2/tests/ce/ce3605e.ada: New file. - * ada/acats-2/tests/ce/ce3606a.ada: New file. - * ada/acats-2/tests/ce/ce3606b.ada: New file. - * ada/acats-2/tests/ce/ce3701a.ada: New file. - * ada/acats-2/tests/ce/ce3704a.ada: New file. - * ada/acats-2/tests/ce/ce3704b.ada: New file. - * ada/acats-2/tests/ce/ce3704c.ada: New file. - * ada/acats-2/tests/ce/ce3704d.ada: New file. - * ada/acats-2/tests/ce/ce3704e.ada: New file. - * ada/acats-2/tests/ce/ce3704f.ada: New file. - * ada/acats-2/tests/ce/ce3704m.ada: New file. - * ada/acats-2/tests/ce/ce3704n.ada: New file. - * ada/acats-2/tests/ce/ce3704o.ada: New file. - * ada/acats-2/tests/ce/ce3705a.ada: New file. - * ada/acats-2/tests/ce/ce3705b.ada: New file. - * ada/acats-2/tests/ce/ce3705c.ada: New file. - * ada/acats-2/tests/ce/ce3705d.ada: New file. - * ada/acats-2/tests/ce/ce3705e.ada: New file. - * ada/acats-2/tests/ce/ce3706c.ada: New file. - * ada/acats-2/tests/ce/ce3706d.ada: New file. - * ada/acats-2/tests/ce/ce3706f.ada: New file. - * ada/acats-2/tests/ce/ce3706g.ada: New file. - * ada/acats-2/tests/ce/ce3707a.ada: New file. - * ada/acats-2/tests/ce/ce3708a.ada: New file. - * ada/acats-2/tests/ce/ce3801a.ada: New file. - * ada/acats-2/tests/ce/ce3801b.ada: New file. - * ada/acats-2/tests/ce/ce3804a.ada: New file. - * ada/acats-2/tests/ce/ce3804b.ada: New file. - * ada/acats-2/tests/ce/ce3804c.ada: New file. - * ada/acats-2/tests/ce/ce3804d.ada: New file. - * ada/acats-2/tests/ce/ce3804e.ada: New file. - * ada/acats-2/tests/ce/ce3804f.ada: New file. - * ada/acats-2/tests/ce/ce3804g.ada: New file. - * ada/acats-2/tests/ce/ce3804h.ada: New file. - * ada/acats-2/tests/ce/ce3804i.ada: New file. - * ada/acats-2/tests/ce/ce3804j.ada: New file. - * ada/acats-2/tests/ce/ce3804m.ada: New file. - * ada/acats-2/tests/ce/ce3804o.ada: New file. - * ada/acats-2/tests/ce/ce3804p.ada: New file. - * ada/acats-2/tests/ce/ce3805a.ada: New file. - * ada/acats-2/tests/ce/ce3805b.ada: New file. - * ada/acats-2/tests/ce/ce3806a.ada: New file. - * ada/acats-2/tests/ce/ce3806b.ada: New file. - * ada/acats-2/tests/ce/ce3806c.ada: New file. - * ada/acats-2/tests/ce/ce3806d.ada: New file. - * ada/acats-2/tests/ce/ce3806e.ada: New file. - * ada/acats-2/tests/ce/ce3806f.ada: New file. - * ada/acats-2/tests/ce/ce3806g.ada: New file. - * ada/acats-2/tests/ce/ce3806h.ada: New file. - * ada/acats-2/tests/ce/ce3809a.ada: New file. - * ada/acats-2/tests/ce/ce3809b.ada: New file. - * ada/acats-2/tests/ce/ce3810a.ada: New file. - * ada/acats-2/tests/ce/ce3810b.ada: New file. - * ada/acats-2/tests/ce/ce3815a.ada: New file. - * ada/acats-2/tests/ce/ce3901a.ada: New file. - * ada/acats-2/tests/ce/ce3902b.ada: New file. - * ada/acats-2/tests/ce/ce3904a.ada: New file. - * ada/acats-2/tests/ce/ce3904b.ada: New file. - * ada/acats-2/tests/ce/ce3905a.ada: New file. - * ada/acats-2/tests/ce/ce3905b.ada: New file. - * ada/acats-2/tests/ce/ce3905c.ada: New file. - * ada/acats-2/tests/ce/ce3905l.ada: New file. - * ada/acats-2/tests/ce/ce3906a.ada: New file. - * ada/acats-2/tests/ce/ce3906b.ada: New file. - * ada/acats-2/tests/ce/ce3906c.ada: New file. - * ada/acats-2/tests/ce/ce3906d.ada: New file. - * ada/acats-2/tests/ce/ce3906e.ada: New file. - * ada/acats-2/tests/ce/ce3906f.ada: New file. - * ada/acats-2/tests/ce/ce3907a.ada: New file. - * ada/acats-2/tests/ce/ce3908a.ada: New file. - * ada/acats-2/tests/cxa/cxa3001.a: New file. - * ada/acats-2/tests/cxa/cxa3002.a: New file. - * ada/acats-2/tests/cxa/cxa3003.a: New file. - * ada/acats-2/tests/cxa/cxa3004.a: New file. - * ada/acats-2/tests/cxa/cxa4001.a: New file. - * ada/acats-2/tests/cxa/cxa4002.a: New file. - * ada/acats-2/tests/cxa/cxa4003.a: New file. - * ada/acats-2/tests/cxa/cxa4004.a: New file. - * ada/acats-2/tests/cxa/cxa4005.a: New file. - * ada/acats-2/tests/cxa/cxa4006.a: New file. - * ada/acats-2/tests/cxa/cxa4007.a: New file. - * ada/acats-2/tests/cxa/cxa4008.a: New file. - * ada/acats-2/tests/cxa/cxa4009.a: New file. - * ada/acats-2/tests/cxa/cxa4010.a: New file. - * ada/acats-2/tests/cxa/cxa4011.a: New file. - * ada/acats-2/tests/cxa/cxa4012.a: New file. - * ada/acats-2/tests/cxa/cxa4013.a: New file. - * ada/acats-2/tests/cxa/cxa4014.a: New file. - * ada/acats-2/tests/cxa/cxa4015.a: New file. - * ada/acats-2/tests/cxa/cxa4016.a: New file. - * ada/acats-2/tests/cxa/cxa4017.a: New file. - * ada/acats-2/tests/cxa/cxa4018.a: New file. - * ada/acats-2/tests/cxa/cxa4019.a: New file. - * ada/acats-2/tests/cxa/cxa4020.a: New file. - * ada/acats-2/tests/cxa/cxa4021.a: New file. - * ada/acats-2/tests/cxa/cxa4022.a: New file. - * ada/acats-2/tests/cxa/cxa4023.a: New file. - * ada/acats-2/tests/cxa/cxa4024.a: New file. - * ada/acats-2/tests/cxa/cxa4025.a: New file. - * ada/acats-2/tests/cxa/cxa4026.a: New file. - * ada/acats-2/tests/cxa/cxa4027.a: New file. - * ada/acats-2/tests/cxa/cxa4028.a: New file. - * ada/acats-2/tests/cxa/cxa4029.a: New file. - * ada/acats-2/tests/cxa/cxa4030.a: New file. - * ada/acats-2/tests/cxa/cxa4031.a: New file. - * ada/acats-2/tests/cxa/cxa4032.a: New file. - * ada/acats-2/tests/cxa/cxa4033.a: New file. - * ada/acats-2/tests/cxa/cxa4034.a: New file. - * ada/acats-2/tests/cxa/cxa5011.a: New file. - * ada/acats-2/tests/cxa/cxa5012.a: New file. - * ada/acats-2/tests/cxa/cxa5013.a: New file. - * ada/acats-2/tests/cxa/cxa5015.a: New file. - * ada/acats-2/tests/cxa/cxa5a01.a: New file. - * ada/acats-2/tests/cxa/cxa5a02.a: New file. - * ada/acats-2/tests/cxa/cxa5a03.a: New file. - * ada/acats-2/tests/cxa/cxa5a04.a: New file. - * ada/acats-2/tests/cxa/cxa5a05.a: New file. - * ada/acats-2/tests/cxa/cxa5a06.a: New file. - * ada/acats-2/tests/cxa/cxa5a07.a: New file. - * ada/acats-2/tests/cxa/cxa5a08.a: New file. - * ada/acats-2/tests/cxa/cxa5a09.a: New file. - * ada/acats-2/tests/cxa/cxa5a10.a: New file. - * ada/acats-2/tests/cxa/cxa8001.a: New file. - * ada/acats-2/tests/cxa/cxa8002.a: New file. - * ada/acats-2/tests/cxa/cxa8003.a: New file. - * ada/acats-2/tests/cxa/cxa9001.a: New file. - * ada/acats-2/tests/cxa/cxa9002.a: New file. - * ada/acats-2/tests/cxa/cxaa001.a: New file. - * ada/acats-2/tests/cxa/cxaa002.a: New file. - * ada/acats-2/tests/cxa/cxaa003.a: New file. - * ada/acats-2/tests/cxa/cxaa004.a: New file. - * ada/acats-2/tests/cxa/cxaa005.a: New file. - * ada/acats-2/tests/cxa/cxaa006.a: New file. - * ada/acats-2/tests/cxa/cxaa007.a: New file. - * ada/acats-2/tests/cxa/cxaa008.a: New file. - * ada/acats-2/tests/cxa/cxaa009.a: New file. - * ada/acats-2/tests/cxa/cxaa010.a: New file. - * ada/acats-2/tests/cxa/cxaa011.a: New file. - * ada/acats-2/tests/cxa/cxaa012.a: New file. - * ada/acats-2/tests/cxa/cxaa013.a: New file. - * ada/acats-2/tests/cxa/cxaa014.a: New file. - * ada/acats-2/tests/cxa/cxaa015.a: New file. - * ada/acats-2/tests/cxa/cxaa016.a: New file. - * ada/acats-2/tests/cxa/cxaa017.a: New file. - * ada/acats-2/tests/cxa/cxaa018.a: New file. - * ada/acats-2/tests/cxa/cxaa019.a: New file. - * ada/acats-2/tests/cxa/cxab001.a: New file. - * ada/acats-2/tests/cxa/cxac001.a: New file. - * ada/acats-2/tests/cxa/cxac002.a: New file. - * ada/acats-2/tests/cxa/cxac003.a: New file. - * ada/acats-2/tests/cxa/cxac004.a: New file. - * ada/acats-2/tests/cxa/cxac005.a: New file. - * ada/acats-2/tests/cxa/cxaca01.a: New file. - * ada/acats-2/tests/cxa/cxaca02.a: New file. - * ada/acats-2/tests/cxa/cxacb01.a: New file. - * ada/acats-2/tests/cxa/cxacb02.a: New file. - * ada/acats-2/tests/cxa/cxacc01.a: New file. - * ada/acats-2/tests/cxa/cxaf001.a: New file. - * ada/acats-2/tests/cxb/cxb2001.a: New file. - * ada/acats-2/tests/cxb/cxb2002.a: New file. - * ada/acats-2/tests/cxb/cxb2003.a: New file. - * ada/acats-2/tests/cxb/cxb3001.a: New file. - * ada/acats-2/tests/cxb/cxb3002.a: New file. - * ada/acats-2/tests/cxb/cxb3003.a: New file. - * ada/acats-2/tests/cxb/cxb30040.c: New file. - * ada/acats-2/tests/cxb/cxb30041.am: New file. - * ada/acats-2/tests/cxb/cxb3005.a: New file. - * ada/acats-2/tests/cxb/cxb30060.c: New file. - * ada/acats-2/tests/cxb/cxb30061.am: New file. - * ada/acats-2/tests/cxb/cxb3007.a: New file. - * ada/acats-2/tests/cxb/cxb3008.a: New file. - * ada/acats-2/tests/cxb/cxb3009.a: New file. - * ada/acats-2/tests/cxb/cxb3010.a: New file. - * ada/acats-2/tests/cxb/cxb3011.a: New file. - * ada/acats-2/tests/cxb/cxb3012.a: New file. - * ada/acats-2/tests/cxb/cxb30130.c: New file. - * ada/acats-2/tests/cxb/cxb30131.c: New file. - * ada/acats-2/tests/cxb/cxb30132.am: New file. - * ada/acats-2/tests/cxb/cxb3014.a: New file. - * ada/acats-2/tests/cxb/cxb3015.a: New file. - * ada/acats-2/tests/cxb/cxb3016.a: New file. - * ada/acats-2/tests/cxb/cxb4001.a: New file. - * ada/acats-2/tests/cxb/cxb4002.a: New file. - * ada/acats-2/tests/cxb/cxb4003.a: New file. - * ada/acats-2/tests/cxb/cxb4004.a: New file. - * ada/acats-2/tests/cxb/cxb4005.a: New file. - * ada/acats-2/tests/cxb/cxb4006.a: New file. - * ada/acats-2/tests/cxb/cxb4007.a: New file. - * ada/acats-2/tests/cxb/cxb4008.a: New file. - * ada/acats-2/tests/cxb/cxb5001.a: New file. - * ada/acats-2/tests/cxb/cxb5002.a: New file. - * ada/acats-2/tests/cxb/cxb5003.a: New file. - * ada/acats-2/tests/cxf/cxf1001.a: New file. - * ada/acats-2/tests/cxf/cxf2001.a: New file. - * ada/acats-2/tests/cxf/cxf2002.a: New file. - * ada/acats-2/tests/cxf/cxf2003.a: New file. - * ada/acats-2/tests/cxf/cxf2004.a: New file. - * ada/acats-2/tests/cxf/cxf2005.a: New file. - * ada/acats-2/tests/cxf/cxf2a01.a: New file. - * ada/acats-2/tests/cxf/cxf2a02.a: New file. - * ada/acats-2/tests/cxf/cxf3001.a: New file. - * ada/acats-2/tests/cxf/cxf3002.a: New file. - * ada/acats-2/tests/cxf/cxf3003.a: New file. - * ada/acats-2/tests/cxf/cxf3004.a: New file. - * ada/acats-2/tests/cxf/cxf3a01.a: New file. - * ada/acats-2/tests/cxf/cxf3a02.a: New file. - * ada/acats-2/tests/cxf/cxf3a03.a: New file. - * ada/acats-2/tests/cxf/cxf3a04.a: New file. - * ada/acats-2/tests/cxf/cxf3a05.a: New file. - * ada/acats-2/tests/cxf/cxf3a06.a: New file. - * ada/acats-2/tests/cxf/cxf3a07.a: New file. - * ada/acats-2/tests/cxf/cxf3a08.a: New file. - * ada/acats-2/tests/cxg/cxg1001.a: New file. - * ada/acats-2/tests/cxg/cxg1002.a: New file. - * ada/acats-2/tests/cxg/cxg1003.a: New file. - * ada/acats-2/tests/cxg/cxg1004.a: New file. - * ada/acats-2/tests/cxg/cxg1005.a: New file. - * ada/acats-2/tests/cxg/cxg2001.a: New file. - * ada/acats-2/tests/cxg/cxg2002.a: New file. - * ada/acats-2/tests/cxg/cxg2003.a: New file. - * ada/acats-2/tests/cxg/cxg2004.a: New file. - * ada/acats-2/tests/cxg/cxg2005.a: New file. - * ada/acats-2/tests/cxg/cxg2006.a: New file. - * ada/acats-2/tests/cxg/cxg2007.a: New file. - * ada/acats-2/tests/cxg/cxg2008.a: New file. - * ada/acats-2/tests/cxg/cxg2009.a: New file. - * ada/acats-2/tests/cxg/cxg2010.a: New file. - * ada/acats-2/tests/cxg/cxg2011.a: New file. - * ada/acats-2/tests/cxg/cxg2012.a: New file. - * ada/acats-2/tests/cxg/cxg2013.a: New file. - * ada/acats-2/tests/cxg/cxg2014.a: New file. - * ada/acats-2/tests/cxg/cxg2015.a: New file. - * ada/acats-2/tests/cxg/cxg2016.a: New file. - * ada/acats-2/tests/cxg/cxg2017.a: New file. - * ada/acats-2/tests/cxg/cxg2018.a: New file. - * ada/acats-2/tests/cxg/cxg2019.a: New file. - * ada/acats-2/tests/cxg/cxg2020.a: New file. - * ada/acats-2/tests/cxg/cxg2021.a: New file. - * ada/acats-2/tests/cxg/cxg2022.a: New file. - * ada/acats-2/tests/cxg/cxg2023.a: New file. - * ada/acats-2/tests/cxg/cxg2024.a: New file. - * ada/acats-2/tests/cxh/cxh3001.a: New file. - * ada/acats-2/tests/cxh/cxh3002.a: New file. - * ada/acats-2/tests/cxh/cxh30030.a: New file. - * ada/acats-2/tests/cxh/cxh30031.am: New file. - * ada/acats-2/tests/cz/cz1101a.ada: New file. - * ada/acats-2/tests/cz/cz1102a.ada: New file. - * ada/acats-2/tests/cz/cz1103a.ada: New file. - * ada/acats-2/tests/d/d4a002a.ada: New file. - * ada/acats-2/tests/d/d4a002b.ada: New file. - * ada/acats-2/tests/d/d4a004a.ada: New file. - * ada/acats-2/tests/d/d4a004b.ada: New file. - * ada/acats-2/tests/e/e28002b.ada: New file. - * ada/acats-2/tests/e/e28005d.ada: New file. - * ada/acats-2/tests/e/e52103y.ada: New file. - * ada/acats-2/tests/e/eb4011a.ada: New file. - * ada/acats-2/tests/e/eb4012a.ada: New file. - * ada/acats-2/tests/e/eb4014a.ada: New file. - * ada/acats-2/tests/e/ee3203a.ada: New file. - * ada/acats-2/tests/e/ee3204a.ada: New file. - * ada/acats-2/tests/e/ee3402b.ada: New file. - * ada/acats-2/tests/e/ee3409f.ada: New file. - * ada/acats-2/tests/e/ee3412c.ada: New file. - * ada/acats-2/tests/l/la140010.a: New file. - * ada/acats-2/tests/l/la140011.am: New file. - * ada/acats-2/tests/l/la140012.a: New file. - * ada/acats-2/tests/l/la140020.a: New file. - * ada/acats-2/tests/l/la140021.am: New file. - * ada/acats-2/tests/l/la140022.a: New file. - * ada/acats-2/tests/l/la140030.a: New file. - * ada/acats-2/tests/l/la140031.a: New file. - * ada/acats-2/tests/l/la140032.am: New file. - * ada/acats-2/tests/l/la140033.a: New file. - * ada/acats-2/tests/l/la140040.a: New file. - * ada/acats-2/tests/l/la140041.am: New file. - * ada/acats-2/tests/l/la140042.a: New file. - * ada/acats-2/tests/l/la140050.a: New file. - * ada/acats-2/tests/l/la140051.a: New file. - * ada/acats-2/tests/l/la140052.am: New file. - * ada/acats-2/tests/l/la140053.a: New file. - * ada/acats-2/tests/l/la140060.a: New file. - * ada/acats-2/tests/l/la140061.a: New file. - * ada/acats-2/tests/l/la140062.am: New file. - * ada/acats-2/tests/l/la140063.a: New file. - * ada/acats-2/tests/l/la140070.a: New file. - * ada/acats-2/tests/l/la140071.a: New file. - * ada/acats-2/tests/l/la140072.am: New file. - * ada/acats-2/tests/l/la140073.a: New file. - * ada/acats-2/tests/l/la140080.a: New file. - * ada/acats-2/tests/l/la140081.a: New file. - * ada/acats-2/tests/l/la140082.am: New file. - * ada/acats-2/tests/l/la140083.a: New file. - * ada/acats-2/tests/l/la140090.a: New file. - * ada/acats-2/tests/l/la140091.a: New file. - * ada/acats-2/tests/l/la140092.am: New file. - * ada/acats-2/tests/l/la140093.a: New file. - * ada/acats-2/tests/l/la140100.a: New file. - * ada/acats-2/tests/l/la140101.a: New file. - * ada/acats-2/tests/l/la140102.am: New file. - * ada/acats-2/tests/l/la140103.a: New file. - * ada/acats-2/tests/l/la140110.a: New file. - * ada/acats-2/tests/l/la140111.a: New file. - * ada/acats-2/tests/l/la140112.am: New file. - * ada/acats-2/tests/l/la140113.a: New file. - * ada/acats-2/tests/l/la140120.a: New file. - * ada/acats-2/tests/l/la140121.a: New file. - * ada/acats-2/tests/l/la140122.am: New file. - * ada/acats-2/tests/l/la140123.a: New file. - * ada/acats-2/tests/l/la140130.a: New file. - * ada/acats-2/tests/l/la140131.a: New file. - * ada/acats-2/tests/l/la140132.am: New file. - * ada/acats-2/tests/l/la140133.a: New file. - * ada/acats-2/tests/l/la140140.a: New file. - * ada/acats-2/tests/l/la140141.a: New file. - * ada/acats-2/tests/l/la140142.am: New file. - * ada/acats-2/tests/l/la140143.a: New file. - * ada/acats-2/tests/l/la140150.a: New file. - * ada/acats-2/tests/l/la140151.a: New file. - * ada/acats-2/tests/l/la140152.am: New file. - * ada/acats-2/tests/l/la140153.a: New file. - * ada/acats-2/tests/l/la140160.a: New file. - * ada/acats-2/tests/l/la140161.a: New file. - * ada/acats-2/tests/l/la140162.am: New file. - * ada/acats-2/tests/l/la140163.a: New file. - * ada/acats-2/tests/l/la140170.a: New file. - * ada/acats-2/tests/l/la140171.a: New file. - * ada/acats-2/tests/l/la140172.am: New file. - * ada/acats-2/tests/l/la140173.a: New file. - * ada/acats-2/tests/l/la140180.a: New file. - * ada/acats-2/tests/l/la140181.a: New file. - * ada/acats-2/tests/l/la140182.am: New file. - * ada/acats-2/tests/l/la140183.a: New file. - * ada/acats-2/tests/l/la140190.a: New file. - * ada/acats-2/tests/l/la140191.a: New file. - * ada/acats-2/tests/l/la140192.am: New file. - * ada/acats-2/tests/l/la140193.a: New file. - * ada/acats-2/tests/l/la140200.a: New file. - * ada/acats-2/tests/l/la140201.a: New file. - * ada/acats-2/tests/l/la140202.am: New file. - * ada/acats-2/tests/l/la140203.a: New file. - * ada/acats-2/tests/l/la140210.a: New file. - * ada/acats-2/tests/l/la140211.am: New file. - * ada/acats-2/tests/l/la140212.a: New file. - * ada/acats-2/tests/l/la140220.a: New file. - * ada/acats-2/tests/l/la140221.am: New file. - * ada/acats-2/tests/l/la140222.a: New file. - * ada/acats-2/tests/l/la140240.a: New file. - * ada/acats-2/tests/l/la140241.a: New file. - * ada/acats-2/tests/l/la140242.am: New file. - * ada/acats-2/tests/l/la140243.a: New file. - * ada/acats-2/tests/l/la140250.a: New file. - * ada/acats-2/tests/l/la140251.am: New file. - * ada/acats-2/tests/l/la140252.a: New file. - * ada/acats-2/tests/l/la140260.a: New file. - * ada/acats-2/tests/l/la140261.a: New file. - * ada/acats-2/tests/l/la140262.am: New file. - * ada/acats-2/tests/l/la140263.a: New file. - * ada/acats-2/tests/l/la140270.a: New file. - * ada/acats-2/tests/l/la140271.a: New file. - * ada/acats-2/tests/l/la140272.am: New file. - * ada/acats-2/tests/l/la140273.a: New file. - -2025-05-24 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vor.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-24 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add test cases - for vor vx combine case 0 on GR2VR cost. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vor.vx run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u8.c: New test. - -2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120363 - * g++.dg/modules/pr113292_a.H: Move to... - * g++.dg/modules/tls-1_a.H: ...here. - * g++.dg/modules/pr113292_b.C: Move to... - * g++.dg/modules/tls-1_b.C: ...here. - * g++.dg/modules/pr113292_c.C: Move to... - * g++.dg/modules/tls-1_c.C: ...here. - * g++.dg/modules/tls-2_a.C: New test. - * g++.dg/modules/tls-2_b.C: New test. - * g++.dg/modules/tls-2_c.C: New test. - * g++.dg/modules/tls-3.h: New test. - * g++.dg/modules/tls-3_a.H: New test. - * g++.dg/modules/tls-3_b.C: New test. - -2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120414 - * g++.dg/modules/using-31_a.C: New test. - * g++.dg/modules/using-31_b.C: New test. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/arch-56.c: New test. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: New test. - -2025-05-23 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-3.c: Adjust - expectations. - * gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-9.c: Ditto. - -2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> - Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/shift_rev_1.c: New test. - * gcc.target/aarch64/sve/shift_rev_2.c: Likewise. - * gcc.target/aarch64/sve/shift_rev_3.c: Likewise. - -2025-05-22 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120389 - * gm2/iso/fail/badarray3.mod: New test. - -2025-05-22 Eric Botcazou <ebotcazou@adacore.com> - - * ada/acats/overflow.lst: Delete. - * ada/acats/run_all.sh: Do not process overflow.lst. - -2025-05-22 Jason Merrill <jason@redhat.com> - - * g++.dg/opt/always_inline2.C: Correct PR number. - -2025-05-22 Jason Merrill <jason@redhat.com> - - PR c++/120935 - * g++.dg/opt/always_inline2.C: New test. - * g++.dg/debug/dwarf2/pubnames-2.C: Suppress -fimplicit-constexpr. - * g++.dg/debug/dwarf2/pubnames-3.C: Likewise. - -2025-05-22 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/cwsc1.c (CHAIN, aarch64): x9 instead x18 for __vxworks. - * gcc.target/aarch64/reg-alloc-4.c: Drop x18-assigned asm - operand on vxworks. - * gcc.target/aarch64/shadow_call_stack_1.c: Don't expect - -ffixed-x18 error on vxworks, but rather the sorry message. - * gcc.target/aarch64/shadow_call_stack_2.c: Skip on vxworks. - * gcc.target/aarch64/shadow_call_stack_3.c: Likewise. - * gcc.target/aarch64/shadow_call_stack_4.c: Likewise. - * gcc.target/aarch64/shadow_call_stack_5.c: Likewise. - * gcc.target/aarch64/shadow_call_stack_6.c: Likewise. - * gcc.target/aarch64/shadow_call_stack_7.c: Likewise. - * gcc.target/aarch64/shadow_call_stack_8.c: Likewise. - * gcc.target/aarch64/stack-check-prologue-19.c: Likewise. - * gcc.target/aarch64/stack-check-prologue-20.c: Likewise. - -2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/120372 - * gcc.target/aarch64/imm_choice_comparison-2.c: New test. - -2025-05-22 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/bitintext.h: New file. - * gcc.dg/torture/bitint-82.c: New test. - -2025-05-22 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp (check_effective_target_arm_v8_1a_neon_ok_nocache): Use - -mcpu=unset on arm only. - (check_effective_target_arm_v8_2a_fp16_scalar_ok_nocache): Likewise. - (check_effective_target_arm_v8_2a_fp16_neon_ok_nocache): Likewise. - (check_effective_target_arm_v8_2a_dotprod_neon_ok_nocache): Likewise. - (check_effective_target_arm_v8_2a_i8mm_ok_nocache): Likewise. - (check_effective_target_arm_v8_2a_bf16_neon_ok_nocache): Likewise. - (check_effective_target_arm_v8_3a_complex_neon_ok_nocache): Likewise. - (check_effective_target_arm_v8_3a_fp16_complex_neon_ok_nocache): Likewise. - -2025-05-22 Jakub Jelinek <jakub@redhat.com> - - PR target/120360 - * gcc.target/i386/pr120360.c: New test. - -2025-05-22 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/cset-sext-sfb.c: Skip for -Oz. - * gcc.target/riscv/zba-slliuw.c: Skip for -Og. - -2025-05-21 Jeff Law <jlaw@ventanamicro.com> - - PR target/120368 - * gcc.target/riscv/pr120368.c: New test. - -2025-05-21 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vand.vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-21 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add test cases - for vand vx combine case 0 on GR2VR cost. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vand.vx run test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u8.c: New test. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/vect/vect-simd-clone-16e.c: Expect fewer calls on ia32. - * gcc.dg/vect/vect-simd-clone-17e.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18e.c: Likewise. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/i386/pr31985.c: Add -fomit-frame-pointer. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/i386/pr108938-3.c: Add -msse2. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/i386/no-callee-saved-16.c: Add -fomit-frame-pointer. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/vect/tsvc/vect-tsvc-s332.c: Require vect_early_break_hw. - * gcc.dg/vect/tsvc/vect-tsvc-s481.c: Likewise. - * gcc.dg/vect/tsvc/vect-tsvc-s482.c: Likewise. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/tree-ssa/forwprop-41.c: Add -msse on x86. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/strlenopt-80.c: Bump to -msse2. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/memcpy-6.c: Bump to -msse2. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/fold-copysign-1.c: Bump to sse2 on ia32. - * gcc.dg/pr55152-2.c: Likewise. - * gcc.dg/tree-ssa/abs-4.c: Likewise. - * gcc.dg/tree-ssa/backprop-6.c: Likewise. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/aarch64/sme/nonlocal_goto_1.c: Match - vxworks cache-clearing function as well. - * gcc.target/aarch64/sme/nonlocal_goto_2.c: Likewise. - * gcc.target/aarch64/sme/nonlocal_goto_3.c: Likewise. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/aarch64/acle/rwsr.c: Use uint64_t. - * gcc.target/aarch64/acle/rwsr-2.c: Likewise. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * c-c++-common/analyzer/strtok-cppreference.c - (__STDC_WANT_LIB_EXT1__): Define to 1. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * c-c++-common/analyzer/fd-glibc-byte-stream-socket.c: Skip on - vxworks with C++ < 11. - -2025-05-21 Iain Sandoe <iain@sandoe.co.uk> - - * g++.dg/coroutines/pr115908.C: Count promise construction - and destruction. Run the test and XFAIL it. - -2025-05-21 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/119916 - * g++.dg/coroutines/torture/special-termination-00-sync-completion.C: - Amend for CWG2563 expected behaviour. - * g++.dg/coroutines/torture/special-termination-01-self-destruct.C: - Likewise. - * g++.dg/coroutines/torture/pr119916.C: New test. - -2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/120369 - * gcc.dg/torture/pr120369-1.c: New test. - -2025-05-21 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr118994-1.c: New test. - * gcc.target/i386/pr118994-2.c: New test. - -2025-05-20 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/FUNCTION_SQRT__2_.cob: Testcase. - * cobol.dg/group2/FUNCTION_SQRT__2_.out: Known-good for the testcase. - -2025-05-20 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/torture/bitint-78.c: New test. - * gcc.dg/torture/bitint-79.c: New test. - * gcc.dg/torture/bitint-80.c: New test. - * gcc.dg/torture/bitint-81.c: New test. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120349 - * g++.dg/modules/vtt-3_a.C: New test. - * g++.dg/modules/vtt-3_b.C: New test. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120013 - * g++.dg/modules/partial-8.h: New test. - * g++.dg/modules/partial-8_a.C: New test. - * g++.dg/modules/partial-8_b.C: New test. - * g++.dg/modules/partial-8_c.C: New test. - * g++.dg/modules/partial-8_d.C: New test. - -2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120350 - * g++.dg/modules/tinfo-3_a.H: New test. - * g++.dg/modules/tinfo-3_b.C: New test. - -2025-05-20 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr103771-5.c: New test. - * gcc.target/i386/pr103771-6.c: New test. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Extract - define T as type for testing. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Add asm check - for vrsub with GR2VR cost 2. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Add asm check - for vrsub with GR2VR cost 1. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check - for vrsub case 1 with GR2VR cost 0. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Add asm check - for vrsub with GR2VR cost is 15. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Add vrsub asm - dump check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. - -2025-05-20 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add vrsub asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper - macros for vx binary reversed. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vrsub. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u8.c: New test. - -2025-05-19 Jeff Law <jlaw@ventanamicro.com> - - PR target/120333 - * gcc.target/riscv/pr114512.c: Update expected output. - * gcc.target/riscv/pr120333.c: New test. - -2025-05-19 Thomas Schwinge <tschwinge@baylibre.com> - - PR lto/120308 - * gcc.target/nvptx/abi-struct-arg.c: Add empty structure testing. - * gcc.target/nvptx/abi-struct-ret.c: Likewise. - -2025-05-19 Richard Earnshaw <rearnsha@arm.com> - - PR target/120351 - * gcc.target/arm/pr120351.c: New test. - -2025-05-19 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/zilsd-code-gen.c: New test. - -2025-05-19 Jennifer Schmitz <jschmitz@nvidia.com> - - PR middle-end/120276 - * gcc.dg/torture/pr120276.c: New test. - -2025-05-19 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/constraint-cR-pair.c: New test case. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_2-512-bf16-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-bf16-1.c: ... to this. - * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: Removed and - combined ... - * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c:... to this. - * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: Removed and - combined ... - * gcc.target/i386/avx10_2-bf16-vector-fma-1.c:... to this. - * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: Removed - and combined ... - * gcc.target/i386/avx10_2-bf16-vector-operations-1.c:... to this. - * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: Removed - and combined ... - * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c:... to this. - * gcc.target/i386/avx10_2-512-convert-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-convert-1.c:... to this. - * gcc.target/i386/avx10_2-512-media-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-media-1.c:... to this. - * gcc.target/i386/avx10_2-512-minmax-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-minmax-1.c:... to this. - * gcc.target/i386/avx10_2-512-movrs-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-movrs-1.c:... to this. - * gcc.target/i386/avx10_2-512-satcvt-1.c: Removed and combined ... - * gcc.target/i386/avx10_2-satcvt-1.c:... to this. - * gcc.target/i386/sm4-avx10_2-512-1.c: Move to... - * gcc.target/i386/sm4-avx10_2-1b.c: ...here. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10-check.h: Remove AVX10_512BIT. - * gcc.target/i386/avx10-minmax-helper.h: Ditto. - * gcc.target/i386/avx10_2-vaddbf16-2.c: Add 512 test. - * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. - * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. - * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. - * gcc.target/i386/avx512f-helper.h: Remove AVX10_512BIT. - * gcc.target/i386/sm4-check.h: Use AVX10_2. - * gcc.target/i386/avx10_2-512-vaddbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vaddbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcmpbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvt2ps2phx-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvt2ps2phx-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbf162ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbf162iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvthf82ph-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvthf82ph-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2bf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2bf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2hf8-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2hf8s-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtph2iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtps2ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvtps2iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttbf162ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttbf162iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttpd2dqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttpd2qqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttpd2udqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttph2ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttph2iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2dqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2ibs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2iubs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2qqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2udqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vcvttps2uqqs-2.h: ...here. - * gcc.target/i386/avx10_2-512-vdivbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vdivbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vdpphps-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vdpphps-2.h: ...here. - * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vfpclassbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vgetexpbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vgetmantbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vmaxbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vminbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vminbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vminmaxbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vminmaxpd-2.h: ...here. - * gcc.target/i386/avx10_2-512-vminmaxph-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vminmaxph-2.h: ...here. - * gcc.target/i386/avx10_2-512-vminmaxps-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vminmaxps-2.h: ...here. - * gcc.target/i386/avx10_2-512-vmpsadbw-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vmpsadbw-2.h: ...here. - * gcc.target/i386/avx10_2-512-vmulbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vmulbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbssd-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbssd-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbssds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbssds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbsud-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbsud-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbsuds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbsuds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbuud-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbuud-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpbuuds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpbuuds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwsud-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwsud-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwsuds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwusd-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwusd-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwusds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwusds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwuud-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwuud-2.h: ...here. - * gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vpdpwuuds-2.h: ...here. - * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vrcpbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vreducebf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vreducebf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vrndscalebf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vrsqrtbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vscalefbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vsqrtbf16-2.h: ...here. - * gcc.target/i386/avx10_2-512-vsubbf16-2.c: - Remove 512 test. Move to... - * gcc.target/i386/avx10_2-vsubbf16-2.h: ...here. - * gcc.target/i386/sm4key4-avx10_2-512-2.c: - Remove 512 test. Move to... - * gcc.target/i386/sm4key4-avx10_2-2.c: ...here. - * gcc.target/i386/sm4rnds4-avx10_2-512-2.c: - Remove 512 test. Move to... - * gcc.target/i386/sm4rnds4-avx10_2-2.c: ...here. - * gcc.target/i386/vnniint16-auto-vectorize-4.c: Use AVX10_SCALAR - for 512 bit test. - * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx-1.c: Combine tests and change - intrin file name. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_1-1.c: Remove warning. - * gcc.target/i386/avx10_1-2.c: Ditto. - * gcc.target/i386/avx10_1-3.c: Ditto. - * gcc.target/i386/avx10_1-4.c: Ditto. - * gcc.target/i386/pr111068.c: Ditto. - * gcc.target/i386/pr117946.c: Ditto. - * gcc.target/i386/pr117240_avx512f.c: Remove -mevex512 and - warning. - * gcc.target/i386/avx10_1-11.c: Rename to ... - * gcc.target/i386/avx10_1-5.c: ... this. Remove warning. - * gcc.target/i386/avx10_1-12.c: Rename to ... - * gcc.target/i386/avx10_1-6.c: ... this. Remove warning. - * gcc.target/i386/avx10_1-26.c: Rename to ... - * gcc.target/i386/avx10_1-7.c: ... this. Remove warning. - The origin avx10_1-7.c is removed. - * gcc.target/i386/avx10_1-10.c: Removed. - * gcc.target/i386/avx10_1-13.c: Removed. - * gcc.target/i386/avx10_1-14.c: Removed. - * gcc.target/i386/avx10_1-15.c: Removed. - * gcc.target/i386/avx10_1-16.c: Removed. - * gcc.target/i386/avx10_1-17.c: Removed. - * gcc.target/i386/avx10_1-18.c: Removed. - * gcc.target/i386/avx10_1-19.c: Removed. - * gcc.target/i386/avx10_1-20.c: Removed. - * gcc.target/i386/avx10_1-21.c: Removed. - * gcc.target/i386/avx10_1-22.c: Removed. - * gcc.target/i386/avx10_1-23.c: Removed. - * gcc.target/i386/avx10_1-8.c: Removed. - * gcc.target/i386/avx10_1-9.c: Removed. - * gcc.target/i386/noevex512-1.c: Removed. - * gcc.target/i386/noevex512-2.c: Removed. - * gcc.target/i386/noevex512-3.c: Removed. - * gcc.target/i386/pr111889.c: Removed. - * gcc.target/i386/pr111907.c: Removed. - -2025-05-19 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/pr90096.c: Adjust error message. - * gcc.target/i386/pr117304-1.c: Removed. - -2025-05-17 Yuao Ma <c8ef@outlook.com> - - * gcc.dg/builtins-1.c: Builtin codegen test. - * gcc.dg/c23-builtins-1.c: Builtin signature test. - -2025-05-17 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add more helper macros. - * gcc.target/riscv/sat/sat_arith_data.h: Add the test data - for scalar unsigned SAT_ADD. - * gcc.target/riscv/sat/sat_u_add-run-1-u16.c: Leverage the test - data from the shared header file. - * gcc.target/riscv/sat/sat_u_add-run-1-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-1-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-1-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-2-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-2-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-2-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-2-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-3-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-3-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-3-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-3-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-4-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-4-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-4-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-4-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-5-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-5-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-5-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-5-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-6-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-6-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-6-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-6-u8.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: Ditto - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: Ditto - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - PR target/100165 - * gcc.target/aarch64/fmov-3-be.c: New test. - * gcc.target/aarch64/fmov-3-le.c: New test. - * gcc.target/aarch64/fmov-4-be.c: New test. - * gcc.target/aarch64/fmov-4-le.c: New test. - * gcc.target/aarch64/fmov-5-be.c: New test. - * gcc.target/aarch64/fmov-5-le.c: New test. - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - PR target/100165 - * gcc.target/aarch64/fmov-1-be.c: New test. - * gcc.target/aarch64/fmov-1-le.c: New test. - * gcc.target/aarch64/fmov-2-be.c: New test. - * gcc.target/aarch64/fmov-2-le.c: New test. - -2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> - - PR target/100165 - * gcc.target/aarch64/and-be.c: New test. - * gcc.target/aarch64/and-le.c: New test. - -2025-05-16 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group1/declarative_1.cob: Handle modified exception handling. - -2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.dg/pr78408-1.c: Update scan to forwprop1 only. - -2025-05-16 Jason Merrill <jason@redhat.com> - - * g++.dg/coroutines/pr94760-mismatched-traits-and-promise-prev.C: - Remove { target c++17 }. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Take - test name for the vx combine test data. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Leverage - the test name to identify the test data. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u8.c: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Add test cases - for vsub vx combine case 1 with GR2VR cost 2. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Add test cases - for vsub vx combine case 1 with GR2VR cost 1. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add test cases - for vsub vx combine case 1 with GR2VR cost 0. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Add test cases - for vsub vx combine with GR2VR cost 15. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Add test cases - for vsub vx combine with GR2VR cost 1. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Diito. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Diito. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add vector sub - vx combine asm check. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test - data for vector sub vx combine. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u8.c: New test. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add - type and op name to generate test function name. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Refine the - test helper macros to avoid conflict. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_run.h: Ditto. - -2025-05-16 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u16.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u32.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u64.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: ...here. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u8.c: Move to... - * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: ...here. - -2025-05-15 Jason Merrill <jason@redhat.com> - - * g++.dg/coroutines/co-await-syntax-09-convert.C: Add -fcoroutines. - * g++.dg/coroutines/co-await-syntax-10.C - * g++.dg/coroutines/co-await-syntax-11.C - * g++.dg/coroutines/co-await-void_type.C - * g++.dg/coroutines/co-return-warning-1.C - * g++.dg/coroutines/ramp-return-a.C - * g++.dg/coroutines/ramp-return-c.C: Likewise. - * g++.dg/coroutines/coroutines.exp: Removed. - * lib/g++-dg.exp: Start at C++20 for coroutines/ - -2025-05-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/85750 - * gfortran.dg/alloc_comp_auto_array_3.f90: Adjust scan counts. - * gfortran.dg/alloc_comp_class_3.f03: Remove bogus warnings. - * gfortran.dg/alloc_comp_class_4.f03: Likewise. - * gfortran.dg/allocate_with_source_14.f03: Adjust scan count. - * gfortran.dg/derived_constructor_comps_6.f90: Likewise. - * gfortran.dg/derived_result_5.f90: New test. - -2025-05-15 Robert Dubner <rdubner@symas.com> - - PR cobol/120251 - * cobol.dg/group1/check_88.cob: One final regex "." instead of "ß" - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/116546 - * gcc.dg/pr116546.c: New. - -2025-05-15 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120277 - * gcc.dg/pr120277.c: New. - -2025-05-15 Robert Dubner <rdubner@symas.com> - - PR cobol/120251 - * cobol.dg/group1/check_88.cob: Ignore characters above 0x80. - * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.cob: - Output HIGH-VALUE as hex, rather than as characters. - * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: - Likewise. - * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.cob: Typo. - * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_1.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_2.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_3.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_4.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5-f.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_6.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_7.cob: Likewise. - * cobol.dg/group2/Multiple_INDEXED_BY_variables_with_the_same_name.cob: New test. - * cobol.dg/group2/Multiple_INDEXED_BY_variables_with_the_same_name.out: New test. - -2025-05-15 Jeff Law <jlaw@ventanamicro.com> - - PR target/120223 - * gcc.target/riscv/pr120223.c: New test. - -2025-05-15 Patrick Palka <ppalka@redhat.com> - - PR c++/120161 - * g++.dg/template/unify13.C: New test. - -2025-05-15 Jason Merrill <jason@redhat.com> - - * lib/g++-dg.exp (g++-std-flags): Factor out of g++-dg-runtest. - * g++.dg/modules/modules.exp: Use it instead of a copy. - -2025-05-15 Richard Biener <rguenther@suse.de> - - * gcc.target/i386/pr110310.c: Adjust. - -2025-05-15 Richard Biener <rguenther@suse.de> - - * gcc.target/i386/vect-epilogues-1.c: New testcase. - * gcc.target/i386/vect-epilogues-2.c: Likewise. - * gcc.target/i386/vect-epilogues-3.c: Likewise. - * gcc.target/i386/vect-epilogues-4.c: Likewise. - * gcc.target/i386/vect-epilogues-5.c: Likewise. - -2025-05-14 Simon Martin <simon@nasilyan.com> - - PR c++/120126 - * g++.dg/cpp0x/lambda/lambda-ice33.C: New test. - -2025-05-14 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-55.c: New test. - -2025-05-14 Martin Jambor <mjambor@suse.cz> - - * gcc.dg/ipa/pr120044-1.c: New test. - * gcc.dg/ipa/pr120044-2.c: Likewise. - * gcc.dg/tree-ssa/pr114864.c: Likewise. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120125 - * g++.dg/modules/clone-4_a.C: New test. - * g++.dg/modules/clone-4_b.C: New test. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119864 - * g++.dg/modules/openmp-1.C: New test. - -2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/tpl-friend-19_a.C: New test. - * g++.dg/modules/tpl-friend-19_b.C: New test. - -2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> - - * g++.dg/opt/pr96780_cpp23.C: New. - -2025-05-14 Owen Avery <powerboat9.gamer@gmail.com> - Jason Merrill <jason@redhat.com> - - * g++.dg/warn/ignore-virtual-move-assign.C: New test. - -2025-05-14 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr103771-4.c: New test. - -2025-05-13 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/113413 - * gfortran.dg/dec_math.f90: Add comment that degree - functions are part of F2023. - -2025-05-13 Yuao Ma <c8ef@outlook.com> - Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/113413 - * gfortran.dg/dec_math.f90: Add atand(y, x) testcase. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/119903 - * g++.dg/tree-ssa/pr119903-1.C: New test. - -2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/118868 - * c-c++-common/pr118868-1.c: New test. - -2025-05-13 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120188 - * gm2.dg/doc/examples/plugin/fail/doc-examples-plugin-fail.exp: - Remove call to gm2-dg-frontend-configure-check and replace with - tests for whether plugin variables exist. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120196 - * gfortran.dg/pr120196.f90: New test. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120191 - * gfortran.dg/pr120191_3.f90: New test. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120191 - * gfortran.dg/pr120191_2.f90: New test. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - Daniil Kochergin <daniil2472s@gmail.com> - Tobias Burnus <tburnus@baylibre.com> - - PR fortran/120191 - * gfortran.dg/pr120191_1.f90: New test. - -2025-05-13 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/html-output/missing-semicolon.py: Verify that we don't - have an empty "gcc-annotated-source" and we do have a - "gcc-generated-patch". - * gcc.dg/plugin/diagnostic-test-metadata-html.c: New test. - * gcc.dg/plugin/diagnostic-test-metadata-html.py: New test script. - * gcc.dg/plugin/diagnostic-test-paths-2.c: Add - "-fdiagnostics-add-output=experimental-html" to options. Add - invocation of diagnostic-test-paths-2.py. - * gcc.dg/plugin/diagnostic-test-paths-2.py: New test script. - * gcc.dg/plugin/plugin.exp (plugin_test_list): Add - diagnostic-test-metadata-html.c. - -2025-05-13 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/tree-ssa/vrp124.c: New. - -2025-05-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Add test helper macros. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u16-from-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u16-from-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u32-from-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u16-from-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u16-from-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u32-from-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u64.c: New test. - -2025-05-12 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. - * gcc.target/riscv/sat/sat_u_add-7-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-7-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-7-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-7-u8-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: New test. - * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: New test. - -2025-05-12 Jason Merrill <jason@redhat.com> - - PR c++/120012 - * g++.dg/abi/base-defaulted2.C: New test. - -2025-05-12 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120188 - * lib/gm2-dg.exp (gm2-dg-frontend-configure-check): New function. - (gm2-dg-runtest): Add -O2 to the option_list. - * gm2.dg/doc/examples/plugin/fail/assignvalue.mod: New test. - * gm2.dg/doc/examples/plugin/fail/doc-examples-plugin-fail.exp: New test. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/march-map=sm_61.c: Adjust. - * gcc.target/nvptx/march-map=sm_62.c: Likewise. - * gcc.target/nvptx/march=sm_61.c: New. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/mptx=5.0.c: New. - -2025-05-12 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/116445 - * gcc.target/arm/unsigned-extend-2.c: Fix dg directives. - -2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-ss-1.c: New test. - * gcc.target/riscv/arch-ss-2.c: New test. - -2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-zilsd-1.c: New. - * gcc.target/riscv/arch-zilsd-2.c: New. - * gcc.target/riscv/arch-zilsd-3.c: New. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/ivopts.c: Remove test for iwmmxt - * lib/target-supports.exp - (check_effective_target_arm_iwmmxt_ok): Delete. - -2025-05-12 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/mmx-1.c: Removed. - * gcc.target/arm/mmx-2.c: Removed. - * gcc.target/arm/pr64208.c: Removed. - * gcc.target/arm/pr79145.c: Removed. - * gcc.target/arm/pr99724.c: Removed. - * gcc.target/arm/pr99786.c: Removed. - -2025-05-12 Richard Biener <rguenther@suse.de> - - PR testsuite/120222 - * gcc.dg/tree-ssa/gen-vect-28.c: Use noipa on main_1. - -2025-05-12 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-52.c: Fix regular expression. - -2025-05-12 Chao-ying Fu <cfu@wavecomp.com> - - * gcc.target/mips/pr54240.c: Scan phiopt2. - -2025-05-11 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/pr91446.c: xfail. - * gcc.target/i386/pr99881.c: remove xfail. - -2025-05-11 Max Filippov <jcmvbkbc@gmail.com> - - * lib/target-supports.exp - (check_effective_target_xtensa_atomic): New function. - (check_effective_target_sync_int_long) - (check_effective_target_sync_char_short): Add test for xtensa. - -2025-05-11 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/258_Nested_PERFORM.cob: New testcase. - * cobol.dg/group2/259_PERFORM_VARYING_BY_-0.2.cob: Likewise. - * cobol.dg/group2/338_Default_Arithmetic__1_.cob: Likewise. - * cobol.dg/group2/access_to_OPTIONAL_LINKAGE_item_not_passed.cob: Likewise. - * cobol.dg/group2/ALLOCATE___FREE_basic_default_versions.cob: Likewise. - * cobol.dg/group2/ALLOCATE___FREE_with_BASED_item__1_.cob: Likewise. - * cobol.dg/group2/ALLOCATE___FREE_with_BASED_item__2_.cob: Likewise. - * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.cob: Likewise. - * cobol.dg/group2/Alphanumeric_and_binary_numeric.cob: Likewise. - * cobol.dg/group2/Alphanumeric_MOVE_with_truncation.cob: Likewise. - * cobol.dg/group2/ANY_LENGTH__1_.cob: Likewise. - * cobol.dg/group2/ANY_LENGTH__2_.cob: Likewise. - * cobol.dg/group2/ANY_LENGTH__3_.cob: Likewise. - * cobol.dg/group2/ANY_LENGTH__4_.cob: Likewise. - * cobol.dg/group2/ANY_LENGTH__5_.cob: Likewise. - * cobol.dg/group2/CALL_with_OMITTED_parameter.cob: Likewise. - * cobol.dg/group2/Class_check_with_reference_modification.cob: Likewise. - * cobol.dg/group2/Complex_HEX__VALUE_and_MOVE.cob: Likewise. - * cobol.dg/group2/Complex_IF.cob: Likewise. - * cobol.dg/group2/Concatenation_operator.cob: Likewise. - * cobol.dg/group2/CONTINUE_AFTER_1_SECONDS.cob: Likewise. - * cobol.dg/group2/CURRENCY_SIGN.cob: Likewise. - * cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__1_.cob: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__2_.cob: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__3_.cob: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__4_.cob: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__5_.cob: Likewise. - * cobol.dg/group2/EC-SIZE-TRUNCATION_EC-SIZE-OVERFLOW.cob: Likewise. - * cobol.dg/group2/EC-SIZE-ZERO-DIVIDE__fixed_and_float.cob: Likewise. - * cobol.dg/group2/EXIT_PARAGRAPH.cob: Likewise. - * cobol.dg/group2/EXIT_PERFORM.cob: Likewise. - * cobol.dg/group2/EXIT_PERFORM_CYCLE.cob: Likewise. - * cobol.dg/group2/EXIT_SECTION.cob: Likewise. - * cobol.dg/group2/Fixed_continuation_indicator.cob: Likewise. - * cobol.dg/group2/FLOAT-LONG_with_SIZE_ERROR.cob: Likewise. - * cobol.dg/group2/FLOAT-SHORT___FLOAT-LONG_w_o_SIZE_ERROR.cob: Likewise. - * cobol.dg/group2/FLOAT-SHORT_with_SIZE_ERROR.cob: Likewise. - * cobol.dg/group2/Index_and_parenthesized_expression.cob: Likewise. - * cobol.dg/group2/LENGTH_OF_omnibus.cob: Likewise. - * cobol.dg/group2/LOCAL-STORAGE__3__with_recursive_PROGRAM-ID.cob: Likewise. - * cobol.dg/group2/LOCAL-STORAGE__4__with_recursive_PROGRAM-ID_..._USING.cob: Likewise. - * cobol.dg/group2/MOVE_indexes.cob: Likewise. - * cobol.dg/group2/MOVE_integer_literal_to_alphanumeric.cob: Likewise. - * cobol.dg/group2/MOVE_to_edited_item__1_.cob: Likewise. - * cobol.dg/group2/MOVE_to_edited_item__2_.cob: Likewise. - * cobol.dg/group2/MOVE_to_item_with_simple_and_floating_insertion.cob: Likewise. - * cobol.dg/group2/MOVE_to_itself.cob: Likewise. - * cobol.dg/group2/MOVE_to_JUSTIFIED_item.cob: Likewise. - * cobol.dg/group2/MOVE_with_group_refmod.cob: Likewise. - * cobol.dg/group2/MOVE_with_refmod.cob: Likewise. - * cobol.dg/group2/MOVE_with_refmod__variable_.cob: Likewise. - * cobol.dg/group2/MOVE_Z_literal_.cob: Likewise. - * cobol.dg/group2/Multi-target_MOVE_with_subscript_re-evaluation.cob: Likewise. - * cobol.dg/group2/Non-numeric_data_in_numeric_items__1_.cob: Likewise. - * cobol.dg/group2/Non-numeric_data_in_numeric_items__2_.cob: Likewise. - * cobol.dg/group2/Non-overflow_after_overflow.cob: Likewise. - * cobol.dg/group2/OCCURS_clause_with_1_entry.cob: Likewise. - * cobol.dg/group2/OSVS_Arithmetic_Test__2_.cob: Likewise. - * cobol.dg/group2/PERFORM_..._CONTINUE.cob: Likewise. - * cobol.dg/group2/PERFORM_inline__1_.cob: Likewise. - * cobol.dg/group2/PERFORM_inline__2_.cob: Likewise. - * cobol.dg/group2/PERFORM_type_OSVS.cob: Likewise. - * cobol.dg/group2/PIC_ZZZ-__ZZZ_.cob: Likewise. - * cobol.dg/group2/Quick_check_of_PIC_XX_COMP-5.cob: Likewise. - * cobol.dg/group2/Quote_marks_in_comment_paragraphs.cob: Likewise. - * cobol.dg/group2/Recursive_PERFORM_paragraph.cob: Likewise. - * cobol.dg/group2/REDEFINES_values_on_FILLER_and_INITIALIZE.cob: Likewise. - * cobol.dg/group2/SORT__EBCDIC_table_sort__1_.cob: Likewise. - * cobol.dg/group2/SORT__EBCDIC_table_sort__2_.cob: Likewise. - * cobol.dg/group2/SORT__table_sort__2_.cob: Likewise. - * cobol.dg/group2/SORT__table_sort__3A_.cob: Likewise. - * cobol.dg/group2/SORT__table_sort__3B_.cob: Likewise. - * cobol.dg/group2/SORT__table_sort.cob: Likewise. - * cobol.dg/group2/SOURCE_FIXED_FREE_directives.cob: Likewise. - * cobol.dg/group2/Static_CALL_with_ON_EXCEPTION__with_-fno-static-call_.cob: Likewise. - * cobol.dg/group2/_-static__compilation.cob: Likewise. - * cobol.dg/group2/STOP_RUN_WITH_ERROR_STATUS.cob: Likewise. - * cobol.dg/group2/STOP_RUN_WITH_NORMAL_STATUS.cob: Likewise. - * cobol.dg/group2/STRING___UNSTRING__NOT__ON_OVERFLOW.cob: Likewise. - * cobol.dg/group2/STRING_with_subscript_reference.cob: Likewise. - * cobol.dg/group2/UNSTRING_DELIMITED_ALL_LOW-VALUE.cob: Likewise. - * cobol.dg/group2/UNSTRING_DELIMITED_ALL_SPACE-2.cob: Likewise. - * cobol.dg/group2/UNSTRING_DELIMITED_POINTER.cob: Likewise. - * cobol.dg/group2/UNSTRING_DELIMITER_IN.cob: Likewise. - * cobol.dg/group2/UNSTRING_with_FUNCTION___literal.cob: Likewise. - * cobol.dg/group2/258_Nested_PERFORM.out: Known-good results file. - * cobol.dg/group2/259_PERFORM_VARYING_BY_-0.2.out: Likewise. - * cobol.dg/group2/338_Default_Arithmetic__1_.out: Likewise. - * cobol.dg/group2/access_to_OPTIONAL_LINKAGE_item_not_passed.out: Likewise. - * cobol.dg/group2/ALLOCATE___FREE_basic_default_versions.out: Likewise. - * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: Likewise. - * cobol.dg/group2/Alphanumeric_MOVE_with_truncation.out: Likewise. - * cobol.dg/group2/ANY_LENGTH__1_.out: Likewise. - * cobol.dg/group2/ANY_LENGTH__2_.out: Likewise. - * cobol.dg/group2/ANY_LENGTH__3_.out: Likewise. - * cobol.dg/group2/ANY_LENGTH__5_.out: Likewise. - * cobol.dg/group2/CALL_with_OMITTED_parameter.out: Likewise. - * cobol.dg/group2/Complex_HEX__VALUE_and_MOVE.out: Likewise. - * cobol.dg/group2/Complex_IF.out: Likewise. - * cobol.dg/group2/Concatenation_operator.out: Likewise. - * cobol.dg/group2/CONTINUE_AFTER_1_SECONDS.out: Likewise. - * cobol.dg/group2/CURRENCY_SIGN.out: Likewise. - * cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.out: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__1_.out: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__2_.out: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__3_.out: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__4_.out: Likewise. - * cobol.dg/group2/DECIMAL-POINT_is_COMMA__5_.out: Likewise. - * cobol.dg/group2/EC-SIZE-TRUNCATION_EC-SIZE-OVERFLOW.out: Likewise. - * cobol.dg/group2/EC-SIZE-ZERO-DIVIDE__fixed_and_float.out: Likewise. - * cobol.dg/group2/EXIT_PERFORM_CYCLE.out: Likewise. - * cobol.dg/group2/EXIT_PERFORM.out: Likewise. - * cobol.dg/group2/Fixed_continuation_indicator.out: Likewise. - * cobol.dg/group2/FLOAT-LONG_with_SIZE_ERROR.out: Likewise. - * cobol.dg/group2/FLOAT-SHORT___FLOAT-LONG_w_o_SIZE_ERROR.out: Likewise. - * cobol.dg/group2/FLOAT-SHORT_with_SIZE_ERROR.out: Likewise. - * cobol.dg/group2/Index_and_parenthesized_expression.out: Likewise. - * cobol.dg/group2/LENGTH_OF_omnibus.out: Likewise. - * cobol.dg/group2/LOCAL-STORAGE__3__with_recursive_PROGRAM-ID.out: Likewise. - * cobol.dg/group2/LOCAL-STORAGE__4__with_recursive_PROGRAM-ID_..._USING.out: Likewise. - * cobol.dg/group2/MOVE_integer_literal_to_alphanumeric.out: Likewise. - * cobol.dg/group2/MOVE_to_edited_item__1_.out: Likewise. - * cobol.dg/group2/MOVE_to_edited_item__2_.out: Likewise. - * cobol.dg/group2/MOVE_to_item_with_simple_and_floating_insertion.out: Likewise. - * cobol.dg/group2/MOVE_to_JUSTIFIED_item.out: Likewise. - * cobol.dg/group2/MOVE_Z_literal_.out: Likewise. - * cobol.dg/group2/Multi-target_MOVE_with_subscript_re-evaluation.out: Likewise. - * cobol.dg/group2/Non-numeric_data_in_numeric_items__1_.out: Likewise. - * cobol.dg/group2/Non-numeric_data_in_numeric_items__2_.out: Likewise. - * cobol.dg/group2/OSVS_Arithmetic_Test__2_.out: Likewise. - * cobol.dg/group2/Quick_check_of_PIC_XX_COMP-5.out: Likewise. - * cobol.dg/group2/Quote_marks_in_comment_paragraphs.out: Likewise. - * cobol.dg/group2/Recursive_PERFORM_paragraph.out: Likewise. - * cobol.dg/group2/REDEFINES_values_on_FILLER_and_INITIALIZE.out: Likewise. - * cobol.dg/group2/SORT__table_sort__2_.out: Likewise. - * cobol.dg/group2/SORT__table_sort__3A_.out: Likewise. - * cobol.dg/group2/SORT__table_sort__3B_.out: Likewise. - * cobol.dg/group2/SOURCE_FIXED_FREE_directives.out: Likewise. - * cobol.dg/group2/Static_CALL_with_ON_EXCEPTION__with_-fno-static-call_.out: Likewise. - * cobol.dg/group2/_-static__compilation.out: Likewise. - * cobol.dg/group2/STRING___UNSTRING__NOT__ON_OVERFLOW.out: Likewise. - * cobol.dg/group2/UNSTRING_with_FUNCTION___literal.out: Likewise. - -2025-05-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120211 - * gcc.dg/vect/vect-early-break_135-pr120211.c: New testcase. - * gcc.dg/torture/pr120211-1.c: Likewise. - -2025-05-11 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/120163 - * gfortran.dg/interface_61.f90: New test. - -2025-05-11 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-53.c: New test. - * gcc.target/riscv/arch-54.c: New test. - -2025-05-11 Jiawei <jiawei@iscas.ac.cn> - - * gcc.target/riscv/arch-49.c: New test. - * gcc.target/riscv/arch-50.c: New test. - * gcc.target/riscv/arch-51.c: New test. - * gcc.target/riscv/arch-52.c: New test. - -2025-05-11 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/119909 - * gcc.dg/torture/pr119131-1.c: Add -Wno-psabi. - -2025-05-10 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group1/simple-if.cob: Make explicitly >>SOURCE FREE - -2025-05-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102891 - * gfortran.dg/transfer_array_subref.f90: New test. - -2025-05-10 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/minmax-6.c: xfail test that pmax is used. - * gcc.target/i386/minmax-7.c: xfall test that pmin is used. - -2025-05-10 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120193 - * gfortran.dg/guality/pr120193.f90: New test. - -2025-05-10 Filip Kastl <fkastl@suse.cz> - - * gcc.target/aarch64/pr99988.c: Add -fno-bit-tests. - -2025-05-10 Filip Kastl <fkastl@suse.cz> - - PR tree-optimization/120080 - * gcc.dg/tree-ssa/pr120080.c: New test. - -2025-05-10 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/ior-synthesis-1.c: New test. - * gcc.target/riscv/ior-synthesis-2.c: New test. - * gcc.target/riscv/xor-synthesis-1.c: New test. - * gcc.target/riscv/xor-synthesis-2.c: New test. - * gcc.target/riscv/xor-synthesis-3.c: New test. - -2025-05-10 Anton Blanchard <antonb@tenstorrent.com> - - * gcc.target/riscv/rvv/base/crc-builtin-zvbc.c: New test. - -2025-05-10 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/pr87600.h (REG1, REG2): Test for __PPC__ as well. - * gcc.dg/pr89313.c (REG): Likewise. - -2025-05-10 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/powerpc/block-cmp-8.c: Require powerpc64 - instruction execution support. - -2025-05-10 Jason Merrill <jason@redhat.com> - - PR c++/120204 - * g++.dg/cpp1y/constexpr-recursion3.C: New test. - -2025-05-09 Jason Merrill <jason@redhat.com> - - PR c++/99599 - PR c++/120185 - * g++.dg/cpp2a/concepts-nondep6.C: New test. - -2025-05-09 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/opt106.adb: New test. - * gnat.dg/opt106_pkg1.ads, gnat.dg/opt106_pkg1.adb: New helper. - * gnat.dg/opt106_pkg2.ads, gnat.dg/opt106_pkg2.adb: Likewise. - -2025-05-09 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/120182 - * gcc.dg/torture/pr120182.c: New testcase. - -2025-05-09 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. - -2025-05-09 Christophe Lyon <christophe.lyon@linaro.org> - - * g++.dg/cpp2a/constinit16.C: Require tls. - -2025-05-09 Christophe Lyon <christophe.lyon@linaro.org> - - * g++.dg/cpp2a/decomp2.C: Require tls_runtime. - -2025-05-09 Jiawei <jiawei@iscas.ac.cn> - - * gcc.dg/pr119160.c: Limit backends. - -2025-05-09 Jennifer Schmitz <jschmitz@nvidia.com> - - * gcc.target/aarch64/sve/ptrue_ldr_str.c: New test. - * gcc.target/aarch64/sve/acle/general/attributes_6.c: Adjust - expected outcome. - * gcc.target/aarch64/sve/cost_model_14.c: Adjust expected outcome. - * gcc.target/aarch64/sve/cost_model_4.c: Adjust expected outcome. - * gcc.target/aarch64/sve/cost_model_5.c: Adjust expected outcome. - * gcc.target/aarch64/sve/cost_model_6.c: Adjust expected outcome. - * gcc.target/aarch64/sve/cost_model_7.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_f16.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_f32.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_f64.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_mf8.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_s16.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_s32.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_s64.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_s8.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_u16.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_u32.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_u64.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/varargs_2_u8.c: Adjust expected outcome. - * gcc.target/aarch64/sve/peel_ind_2.c: Adjust expected outcome. - * gcc.target/aarch64/sve/single_1.c: Adjust expected outcome. - * gcc.target/aarch64/sve/single_2.c: Adjust expected outcome. - * gcc.target/aarch64/sve/single_3.c: Adjust expected outcome. - * gcc.target/aarch64/sve/single_4.c: Adjust expected outcome. - -2025-05-09 David Malcolm <dmalcolm@redhat.com> - - PR other/116792 - * gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc: Move to - gcc/diagnostic-format-html.cc. - * gcc.dg/html-output/html-output.exp: New support script. - * gcc.dg/html-output/missing-semicolon.c: New test. - * gcc.dg/html-output/missing-semicolon.py: New test script. - * gcc.dg/plugin/diagnostic-test-xhtml-1.c: Deleted test. - * gcc.dg/plugin/plugin.exp (plugin_test_list): Drop moved plugin - and its deleted test. - * lib/gcc-dg.exp (load_lib): Add load_lib of scanhtml.exp. - * lib/htmltest.py: New support script. - * lib/scanhtml.exp: New support script, based on scansarif.exp. - -2025-05-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u8.c: New test. - -2025-05-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u8.c: New test. - -2025-05-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test - helper macros. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u8.c: New test. - -2025-05-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Rename VX_BINARY - to VX_BINARY_CASE_0 for underlying case 1. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: Take the - new name for test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto - -2025-05-09 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/rvv.exp: Separate test running of - rvv vx_vf. - -2025-05-08 Harald Anlauf <anlauf@gmx.de> - - PR fortran/120179 - * gfortran.dg/do_concurrent_basic.f90: Extend testcase. - -2025-05-08 Jason Merrill <jason@redhat.com> - - PR c++/99599 - * g++.dg/cpp2a/concepts-recursive-sat4.C: Adjust again. - * g++.dg/cpp2a/concepts-nondep5.C: New test. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/120168 - * gcc.dg/tree-ssa/pr31261.c: Use `signed char` instead - of plain char. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120043 - * gcc.dg/torture/pr120043.c: New testcase. - -2025-05-08 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120152 - PR libfortran/120153 - PR libfortran/120158 - * gfortran.dg/pr120152_1.f90: New test. - * gfortran.dg/pr120152_2.f90: New test. - * gfortran.dg/pr120153.f90: New test. - * gfortran.dg/pr120158.f90: New test. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/116938 - * gcc.dg/tree-ssa/phi-opt-40.c: Update to expect ABSU_EXPR. - * gcc.dg/tree-ssa/phi-opt-41.c: Likewise. - -2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/120122 - PR tree-optimization/116939 - * gcc.dg/torture/pr120122-1.c: New test. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR ipa/120146 - * g++.dg/ipa/pr120146.C: New testcase. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120143 - * gcc.dg/vect/vect-early-break_135-pr120143.c: New testcase. - -2025-05-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120089 - * gcc.dg/vect/vect-early-break_134-pr120089.c: New testcase. - -2025-05-07 Jeff Law <jlaw@ventanamicro.com> - - PR target/120137 - PR target/120154 - * gcc.target/riscv/pr120137.c: New test. - * gcc.target/riscv/pr120154.c: New test. - -2025-05-07 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-48.c: New test. - -2025-05-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/110796 - PR target/118446 - * gcc.target/arm/armv8_2-fp16-arith-1.c: Adjust due to no-longer - emitting VCMPE when -ffast-math.. - -2025-05-07 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/108900 - PR preprocessor/116047 - PR preprocessor/120061 - * gcc.dg/plugin/plugin.exp: Add location-overflow-test-pr116047.c - and location-overflow-test-pr120061.c. - * gcc.dg/plugin/location_overflow_plugin.cc (plugin_init): Don't error - on unknown values, instead just break. Handle 0x4fHHHHHH arguments - differently. - * gcc.dg/plugin/location-overflow-test-pr116047.c: New test. - * gcc.dg/plugin/location-overflow-test-pr116047-1.h: New test. - * gcc.dg/plugin/location-overflow-test-pr116047-2.h: New test. - * gcc.dg/plugin/location-overflow-test-pr120061.c: New test. - * gcc.dg/plugin/location-overflow-test-pr120061-1.h: New test. - * gcc.dg/plugin/location-overflow-test-pr120061-2.h: New test. - -2025-05-07 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/pr119919.c: Add -mtune=znver1 - -2025-05-07 Jennifer Schmitz <jschmitz@nvidia.com> - - PR target/117978 - * gcc.target/aarch64/sve/acle/general/whilelt_5.c: Adjust expected - outcome. - * gcc.target/aarch64/sve/ldst_ptrue_pat_128_to_neon.c: New test. - * gcc.target/aarch64/sve/while_7.c: Adjust expected outcome. - * gcc.target/aarch64/sve/while_9.c: Adjust expected outcome. - -2025-05-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/cstoreti-1.c: New test. - * gcc.target/s390/vector/cstoreti-2.c: New test. - -2025-05-07 H.J. Lu <hjl.tools@gmail.com> - - PR target/120036 - * g++.target/i386/pr120036.C: New test. - * gcc.target/i386/pr117839-3a.c: Likewise. - * gcc.target/i386/pr117839-3b.c: Likewise. - -2025-05-07 Paul Thomas <pault@gcc.gnu.org> - and Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/119948 - * gfortran.dg/pr119948.f90: Update to incorporate failing test, - where module procedure is the result. Test submodule cases. - -2025-05-07 Jeff Law <jlaw@ventanamicro.com> - - * g++.target/riscv/redundant-andi.C: New test. - -2025-05-06 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> - - * gcc.target/riscv/arch-47.c: New test. - -2025-05-06 Mingzhu Yan <yanmingzhu@iscas.ac.cn> - - * gcc.target/riscv/arch-45.c: New test. - * gcc.target/riscv/arch-46.c: New test. - -2025-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/120049 - * gfortran.dg/pr120049_a.f90: New test. - * gfortran.dg/pr120049_b.f90: New test. - -2025-05-06 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119928 - * gfortran.dg/interface_60.f90: New test. - -2025-05-06 Martin Jambor <mjambor@suse.cz> - - PR ipa/119852 - * gcc.dg/ipa/pr119852.c: New test. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/117988 - * sarif-replay.dg/2.1.0-invalid/3.1-not-an-object.sarif: Add - expected logical location. - * sarif-replay.dg/2.1.0-invalid/3.11.11-missing-arguments-for-placeholders.sarif: - Likewise. - * sarif-replay.dg/2.1.0-invalid/3.11.11-not-enough-arguments-for-placeholders.sarif: - Likewise. - * sarif-replay.dg/2.1.0-invalid/3.11.5-unescaped-braces.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.13.2-no-version.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.13.2-version-not-a-string.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.13.4-bad-runs.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.13.4-no-runs.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.13.4-non-object-in-runs.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.27.10-bad-level.sarif: Likewise. - * sarif-replay.dg/2.1.0-invalid/3.33.3-index-out-of-range.sarif: Likewise. - * sarif-replay.dg/2.1.0-unhandled/3.27.10-none-level.sarif: Likewise. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * libgdiagnostics.dg/test-nested-logical-locations-json-c.py: New test. - * libgdiagnostics.dg/test-nested-logical-locations-json.c: New test. - * sarif-replay.dg/2.1.0-valid/3.33.7-json-example.sarif: New test. - * sarif-replay.dg/2.1.0-valid/3.33.7-xml-example.sarif: New test. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - PR other/116176 - * g++.dg/sarif-output/logical-locations-1.C: New test. - * g++.dg/sarif-output/logical-locations-1.py: New test script. - * g++.dg/sarif-output/logical-locations-2.C: New test. - * g++.dg/sarif-output/logical-locations-2.py: New test script. - * g++.dg/sarif-output/logical-locations-3.C: New test. - * g++.dg/sarif-output/logical-locations-3.py: New test script. - * g++.dg/sarif-output/sarif-output.exp: New script, adapted - from gcc.dg/sarif-output/sarif-output.exp. - * libgdiagnostics.dg/test-logical-location-c.py: Update for using - theRun.logicalLocations. - * libgdiagnostics.dg/test-warning-with-path-c.py: Likewise. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Update for - changes to simple_diagnostic_path. - -2025-05-06 David Malcolm <dmalcolm@redhat.com> - - * libgdiagnostics.dg/test-logical-location.c: Include - <string.h>. - (main): Verify that the accessors work. - * libgdiagnostics.dg/test-logical-location.cc: New test. - -2025-05-06 Shreya Munnangi <smunnangi1@ventanamicro.com> - - PR middle-end/114512 - * gcc.target/riscv/pr114512.c: New test. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: New test. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: New test. - -2025-05-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/rvv.exp: Add new folder vx_vf for all - vec_dup + vv to vx testcases. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_run.h: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: New test. - * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: New test. - -2025-05-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/1157777 - * gcc.dg/vect/bb-slp-pr115777.c: New testcase. - -2025-05-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/120074 - * gcc.dg/pr120074.c: New test. - -2025-05-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120031 - * gcc.target/i386/pr120031.c: New testcase. - -2025-05-05 Jeff Law <jlaw@ventanamicro.com> - - PR target/119971 - * gcc.target/riscv/pr119971.c: New test. - * gcc.target/riscv/zbb-rol-ror-03.c: Adjust test slightly. - -2025-05-05 Uros Bizjak <ubizjak@gmail.com> - Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR target/120019 - * gcc.target/i386/pr111657-1.c (dg-do): Change to "assemble". - (dg-options): Remove -masm=att and add -save-temps. - (dg-final): Update scan-assembler and scan-assembler-not strings. - -2025-05-05 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/120117 - * gm2/pim/pass/highbit.mod: New test. - * gm2/pim/pass/highbit2.mod: New test. - -2025-05-05 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/120048 - * gcc.dg/pr120048.c: New. - -2025-05-05 Kito Cheng <kito.cheng@sifive.com> - - PR target/120054 - * gcc.target/riscv/predef-19.c: Adjust testcase. - -2025-05-05 John David Anglin <danglin@gcc.gnu.org> - - PR testsuite/120085 - * gcc.dg/lto/modref-2_0.c: Link test with libm. - -2025-05-05 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/specs/finalizable1.ads: New test. - -2025-05-05 Thomas Schwinge <tschwinge@baylibre.com> - - PR middle-end/112877 - * gcc.dg/vect/vect-simd-clone-16c.c: Fix target selector syntax. - * gcc.dg/vect/vect-simd-clone-16d.c: Likewise. - * gcc.dg/vect/vect-simd-clone-17c.c: Likewise. - * gcc.dg/vect/vect-simd-clone-17d.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18c.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18d.c: Likewise. - -2025-05-05 Simon Martin <simon@nasilyan.com> - - PR c++/118163 - PR c++/118392 - * g++.dg/diagnostic/incomplete-type-2.C: New test. - * g++.dg/diagnostic/incomplete-type-2a.C: New test. - * g++.dg/diagnostic/inhibit-warn-3.C: New test. - -2025-05-05 Richard Biener <rguenther@suse.de> - - PR testsuite/120084 - * gcc.dg/lto/pr60779_0.c: Require linker-plugin. - -2025-05-04 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119986 - * gfortran.dg/actual_array_subref.f90: New test. - -2025-05-04 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/vsetvl/avl_prop-2.c: Disable jump threading - and adjust number of expected vsetvls as needed. - * gcc.target/riscv/rvv/vsetvl/avl_single-56.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-67.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-68.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-71.c: Likewise. - -2025-05-04 Jin Ma <jinma@linux.alibaba.com> - Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/riscv/modifier-H-error-1.c: New test. - * gcc.target/riscv/modifier-H-error-2.c: New test. - * gcc.target/riscv/modifier-H.c: New test. - -2025-05-04 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/xtheadfmemidx-xtheadfmv-medany.c: Adjust expected - output. - * gcc.target/riscv/xtheadfmemidx-zfa-medany.c: Likewise. - * gcc.target/riscv/xtheadfmv-fmv.c: Skip for -Os and -Oz. - * gcc.target/riscv/zfa-fmovh-fmovp.c: Use sifive-p400 tuning. - -2025-05-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-49.c: Adjust - the asm dump check times. - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-50.c: Ditto. - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-52.c: Ditto. - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-74.c: Ditto. - * gcc.target/riscv/rvv/base/float-point-dynamic-frm-75.c: Ditto. - -2025-05-03 Jason Merrill <jason@redhat.com> - - PR c++/85944 - * g++.dg/cpp0x/constexpr-temp3.C: New test. - -2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/120059 - * gcc.dg/torture/pr120059-1.c: New test. - -2025-05-02 Jakub Jelinek <jakub@redhat.com> - - PR c/120057 - * gcc.dg/cpp/embed-18.c: New test. - * gcc.dg/pr120057-1.c: New test. - * gcc.dg/pr120057-2.c: New test. - -2025-05-02 Jakub Jelinek <jakub@redhat.com> - Andrew MacLeod <amacleod@redhat.com> - - PR c/117023 - * gcc.dg/tree-ssa/pr78154-2.c: New test. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/115207 - * g++.dg/cpp1z/class-deduction118.C: New test. - -2025-05-02 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp1y/constexpr-89285.C: Always diagnose reinterpret_cast. - * g++.dg/cpp23/constexpr-nonlit19.C: Remove ~A body. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/120012 - * g++.dg/abi/base-defaulted1.C: New test. - * g++.dg/abi/base-defaulted1a.C: New test. - -2025-05-02 Jason Merrill <jason@redhat.com> - - PR c++/60336 - * g++.dg/abi/pr60336-8a.C: New test. - -2025-05-02 Filip Kastl <fkastl@suse.cz> - - * gcc.dg/tree-ssa/switch-5.c: New test. - * gcc.dg/tree-ssa/switch-6.c: New test. - -2025-05-02 Florian Weimer <fweimer@redhat.com> - - * gcc.dg/Wdeprecated-non-prototype-6.c: New test. - -2025-05-02 Jennifer Schmitz <jschmitz@nvidia.com> - - * gcc.target/aarch64/sve/extract_last_128.c: New test. - * gcc.target/aarch64/sve/extract_1.c: Adjust expected outcome. - * gcc.target/aarch64/sve/extract_2.c: Likewise. - * gcc.target/aarch64/sve/extract_3.c: Likewise. - * gcc.target/aarch64/sve/extract_4.c: Likewise. - -2025-05-01 Christopher Bazley <chris.bazley@arm.com> - - PR c/119317 - * gcc.dg/c2y-named-loops-8.c: New test. - -2025-05-01 Florian Weimer <fweimer@redhat.com> - - * gcc.dg/Wdeprecated-non-prototype-5.c: New test. - -2025-05-01 Patrick Palka <ppalka@redhat.com> - - * g++.dg/cpp23/constexpr-nonlit19.C: New test. - -2025-05-01 Patrick Palka <ppalka@redhat.com> - - PR c++/119034 - PR c++/68942 - * g++.dg/template/koenig13.C: New test. - -2025-05-01 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/119948 - * gfortran.dg/pr119948.f90: New test. - -2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> - - * gcc.target/aarch64/acle/acle_sqrt.c: New test. - -2025-05-01 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120003 - * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust aarch64 expected - thread2 number of threads. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/120023 - * g++.dg/modules/dguide-7_a.C: New test. - * g++.dg/modules/dguide-7_b.C: New test. - * g++.dg/modules/dguide-7_c.C: New test. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119938 - * g++.dg/modules/tpl-nttp-2_a.H: New test. - * g++.dg/modules/tpl-nttp-2_b.C: New test. - -2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119551 - PR c++/119996 - * g++.dg/modules/internal-13.C: New test. - -2025-04-30 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/107017 - * c-c++-common/analyzer/sprintf-3.c: New test, covering use of - sprintf with specific format strings. Doesn't yet find problems - as the analyzer doesn't yet understand the format strings. - -2025-04-30 David Malcolm <dmalcolm@redhat.com> - - * c-c++-common/analyzer/data-model-path-1.c: Check for - "using NULL here" message. - * c-c++-common/analyzer/null-deref-pr108251-smp_fetch_ssl_fc_has_early.c: - Likewise. Check for "return of NULL" message. - * c-c++-common/analyzer/null-deref-pr108400-SoftEtherVPN-WebUi.c: - Likewise. - * gcc.dg/analyzer/data-model-5.c: Likewise. - * gcc.dg/analyzer/data-model-5b.c: Likewise. - * gcc.dg/analyzer/data-model-5c.c: Likewise. - * gcc.dg/analyzer/torture/pr93647.c: Likewise. - -2025-04-30 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/pr115258.c: Add -mcmodel=small. - -2025-04-30 Patrick Palka <ppalka@redhat.com> - - PR c++/119981 - PR c++/119378 - * g++.dg/cpp2a/lambda-targ15.C: New test. - -2025-04-30 Richard Biener <rguenther@suse.de> - - Revert: - 2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119960 - * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR ipa/120006 - * gcc.dg/torture/pr120006.c: New testcase. - -2025-04-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/120003 - * gcc.dg/tree-ssa/ssa-thread-23.c: New testcase. - * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust. - -2025-04-30 Georg-Johann Lay <avr@gjlay.de> - - Backported from master: - 2025-04-30 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/torture/pr119989.h: New file. - * gcc.target/avr/torture/pr119989-memx-1.c: New test. - * gcc.target/avr/torture/pr119989-memx-2.c: New test. - * gcc.target/avr/torture/pr119989-memx-3.c: New test. - * gcc.target/avr/torture/pr119989-memx-4.c: New test. - * gcc.target/avr/torture/pr119989-flashx-1.c: New test. - * gcc.target/avr/torture/pr119989-flashx-2.c: New test. - * gcc.target/avr/torture/pr119989-flashx-3.c: New test. - * gcc.target/avr/torture/pr119989-flashx-4.c: New test. - -2025-04-30 Kito Cheng <kito.cheng@sifive.com> - - PR target/119832 - * g++.target/riscv/pr119832.C: New test. - -2025-04-30 Jerry Zhang Jian <jerry.zhangjian@sifive.com> - - * gcc.target/riscv/predef-19.c: set the march to rv64im_zve32x - instead of rv64gc_zve32x to avoid Zicsr implied by g. Extra m is - added to avoid current 'V' extension requires 'M' extension - -2025-04-30 Jennifer Schmitz <jschmitz@nvidia.com> - - * gcc.target/aarch64/sve/ldst_ptrue_128_to_neon.c: New test. - * gcc.target/aarch64/sve/cond_arith_6.c: Adjust expected outcome. - * gcc.target/aarch64/sve/pcs/return_4_128.c: Likewise. - * gcc.target/aarch64/sve/pcs/return_5_128.c: Likewise. - * gcc.target/aarch64/sve/pcs/struct_3_128.c: Likewise. - -2025-04-30 yulong <shiyulong@iscas.ac.cn> - - * gcc.target/riscv/rvv/xsfvector/sf_vc_f.c: New test. - * gcc.target/riscv/rvv/xsfvector/sf_vc_i.c: New test. - * gcc.target/riscv/rvv/xsfvector/sf_vc_v.c: New test. - * gcc.target/riscv/rvv/xsfvector/sf_vc_x.c: New test. - -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 - * c-c++-common/analyzer/hard-reg-1.c: New test. - * g++.dg/analyzer/nrvo-1.C: New test. - * g++.dg/analyzer/nrvo-2.C: New test. - * g++.dg/analyzer/nrvo-pr111536-1.C: New test. - * g++.dg/analyzer/nrvo-pr111536-1b.C: New test. - * g++.dg/analyzer/nrvo-pr111536-2.C: New test. - * g++.dg/analyzer/nrvo-pr111536-2b.C: New test. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/109366 - * g++.dg/analyzer/unique_ptr-1.C: New test. - * g++.dg/analyzer/unique_ptr-2.C: New test. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/97111 - * c-c++-common/analyzer/analyzer-verbosity-2a.c: Add - -fno-exceptions. - * c-c++-common/analyzer/analyzer-verbosity-3a.c: Likewise. - * c-c++-common/analyzer/attr-const-2.c: Add - __attribute__((nothrow)). - * c-c++-common/analyzer/attr-malloc-4.c: Likewise. - * c-c++-common/analyzer/attr-malloc-5.c: Likewise. - * c-c++-common/analyzer/attr-malloc-6.c: Add -fno-exceptions. - * c-c++-common/analyzer/attr-malloc-CVE-2019-19078-usb-leak.c: - Likewise. - * c-c++-common/analyzer/attr-malloc-exception.c: New test. - * c-c++-common/analyzer/call-summaries-pr107158-2.c: Add - -fno-exceptions. - * c-c++-common/analyzer/call-summaries-pr107158.c: Likewise. - * c-c++-common/analyzer/capacity-2.c: Likewise. - * c-c++-common/analyzer/coreutils-sum-pr108666.c: Likewise. - * c-c++-common/analyzer/data-model-22.c: Likewise. - * c-c++-common/analyzer/data-model-5d.c: Likewise. - * c-c++-common/analyzer/deref-before-check-pr108455-git-pack-revindex.c: - Likewise. - * c-c++-common/analyzer/deref-before-check-pr108475-haproxy-tcpcheck.c: - Likewise. - * c-c++-common/analyzer/edges-2.c: Likewise. - * c-c++-common/analyzer/fd-2.c: Likewise. - * c-c++-common/analyzer/fd-3.c: Likewise. - * c-c++-common/analyzer/fd-meaning.c: Likewise. - * c-c++-common/analyzer/file-1.c: Likewise. - * c-c++-common/analyzer/file-3.c: Likewise. - * c-c++-common/analyzer/file-meaning-1.c: Likewise. - * c-c++-common/analyzer/infinite-recursion.c: Likewise. - * c-c++-common/analyzer/leak-3.c: Likewise. - * c-c++-common/analyzer/malloc-dedupe-1.c: Likewise. - * c-c++-common/analyzer/malloc-in-loop.c: Likewise. - * c-c++-common/analyzer/malloc-many-paths-3.c: Likewise. - * c-c++-common/analyzer/malloc-paths-5.c: Likewise. - * c-c++-common/analyzer/malloc-paths-7.c: Likewise. - * c-c++-common/analyzer/malloc-paths-8.c: Likewise. - * c-c++-common/analyzer/malloc-vs-local-1a.c: Likewise. - * c-c++-common/analyzer/malloc-vs-local-2.c: Likewise. - * c-c++-common/analyzer/malloc-vs-local-3.c: Likewise. - * c-c++-common/analyzer/paths-7.c: Likewise. - * c-c++-common/analyzer/pr110830.c: Likewise. - * c-c++-common/analyzer/pr93032-mztools-simplified.c: Likewise. - * c-c++-common/analyzer/pr93355-localealias-feasibility-3.c: - Likewise. - * c-c++-common/analyzer/pr93355-localealias-simplified.c: - Likewise. - * c-c++-common/analyzer/pr96650-1-trans.c: Likewise. - * c-c++-common/analyzer/pr97072.c: Add __attribute__((nothrow)). - * c-c++-common/analyzer/pr98575-1.c: Likewise. - * c-c++-common/analyzer/pr99716-1.c: Add -fno-exceptions. - * c-c++-common/analyzer/pr99716-2.c: Likewise. - * c-c++-common/analyzer/pr99716-3.c: Likewise. - * c-c++-common/analyzer/pragma-2.c: Likewise. - * c-c++-common/analyzer/rhbz1878600.c: Likewise. - * c-c++-common/analyzer/strndup-1.c: Likewise. - * c-c++-common/analyzer/write-to-string-literal-4-disabled.c: - Likewise. - * c-c++-common/analyzer/write-to-string-literal-4.c: Likewise. - * c-c++-common/analyzer/write-to-string-literal-5.c: Likewise. - * c-c++-common/analyzer/zlib-5.c: Likewise. - * g++.dg/analyzer/exception-could-throw-1.C: New test. - * g++.dg/analyzer/exception-could-throw-2.C: New test. - * g++.dg/analyzer/exception-dynamic-spec.C: New test. - * g++.dg/analyzer/exception-leak-1.C: New test. - * g++.dg/analyzer/exception-leak-2.C: New test. - * g++.dg/analyzer/exception-leak-3.C: New test. - * g++.dg/analyzer/exception-leak-4.C: New test. - * g++.dg/analyzer/exception-leak-5.C: New test. - * g++.dg/analyzer/exception-leak-6.C: New test. - * g++.dg/analyzer/exception-nothrow.C: New test. - * g++.dg/analyzer/exception-path-1.C: New test. - * g++.dg/analyzer/exception-path-catch-all-1.C: New test. - * g++.dg/analyzer/exception-path-catch-all-2.C: New test. - * g++.dg/analyzer/exception-path-unwind-multiple-2.C: New test. - * g++.dg/analyzer/exception-path-unwind-multiple.C: New test. - * g++.dg/analyzer/exception-path-unwind-single.C: New test. - * g++.dg/analyzer/exception-path-with-cleanups.C: New test. - * g++.dg/analyzer/exception-rethrow-1.C: New test. - * g++.dg/analyzer/exception-rethrow-2.C: New test. - * g++.dg/analyzer/exception-stack-1.C: New test. - * g++.dg/analyzer/exception-stack-2.C: New test. - * g++.dg/analyzer/exception-subclass-1.C: New test. - * g++.dg/analyzer/exception-subclass-2.C: New test. - * g++.dg/analyzer/exception-value-1.C: New test. - * g++.dg/analyzer/exception-value-2.C: New test. - * g++.dg/analyzer/fno-exception.C: New test. - * g++.dg/analyzer/pr94028.C: Drop xfail. - * g++.dg/analyzer/std-unexpected.C: New test. - * g++.dg/coroutines/pr105287.C: Drop dg-excess-errors. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Drop include of - "make-unique.h". Replace uses of ::make_unique with - std::make_unique. - * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. - * gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc: Likewise. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_gil_plugin.cc: Convert gcall * to gcall & - where we know the pointer must be non-null. - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Convert - enum poison_kind to "enum class". - -2025-04-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/plugin/analyzer_cpython_plugin.cc: Update for renaming - of analyzer/analyzer.h to analyzer/common.h. - * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. - * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/95801 - * gcc.dg/tree-ssa/pr95801.c: New. - -2025-04-28 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/119712 - * gcc.dg/pr119712.c: New. - * gcc.dg/pr83072-2.c: Adjust. - * gcc.dg/tree-ssa/phi-opt-value-5.c: Adjust. - * gcc.dg/tree-ssa/vrp122.c: Adjust - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/67797 - * gcc.dg/tree-ssa/tailcall-14.c: New test. - * gcc.dg/tree-ssa/tailcall-15.c: New test. - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR c/119432 - * gcc.dg/gimplefe-57.c: New test. - -2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/100038 - * g++.dg/tree-ssa/pr100038.C: New test. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove now passing test from exclusion - list. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove passing test from exclusion list. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/multiple_bindings1.rs: Add missing lang items. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove test from exclusion list. - * rust/compile/use_1.rs: Change expected output and remove test from - nr1. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/generics9.rs: Change expected error message. - * rust/compile/nr2/exclude: Remove test from exclusion list. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove passing test from exclusion list. - -2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entry. - -2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/derive-debug1.rs: Adjust a path. - * rust/compile/nr2/exclude: Remove derive-debug1.rs. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 is missing error for this - * rust/compile/issue-3649.rs: New test. - -2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-3568.rs: Adjust expected errors. - * rust/compile/name_resolution9.rs: Likewise. - * rust/compile/self-path2.rs: Likewise. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nonexistent-field.rs: fix bad error message - * rust/compile/issue-3581-1.rs: New test. - * rust/compile/issue-3581-2.rs: New test. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 does not error on the T it should require Self::T - * rust/compile/issue-3652.rs: New test. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/macros/mbe/macro-issue2983_2984.rs: cleanup error diagnotics - * rust/compile/struct_init1.rs: likewise - * rust/compile/issue-3628.rs: New test. - -2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entry. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3662.rs: New test. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3711.rs: New test. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/black_box.rs: New test. - -2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/execute/black_box.rs: New test. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-402.rs: New test. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3664.rs: New test. - -2025-04-28 Zhi Heng <yapzhhg@gmail.com> - - * rust/compile/issue-3530-1.rs: New file. - * rust/compile/issue-3530-2.rs: New file. - -2025-04-28 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3612.rs: New test. - -2025-04-28 H.J. Lu <hjl.tools@gmail.com> - Uros Bizjak <ubizjak@gmail.com> - - PR target/109780 - PR target/109093 - * g++.target/i386/pr109780-1.C: New test. - * gcc.target/i386/pr109093-1.c: Likewise. - * gcc.target/i386/pr109780-1.c: Likewise. - * gcc.target/i386/pr109780-2.c: Likewise. - * gcc.target/i386/pr109780-3.c: Likewise. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR ipa/119973 - * gcc.dg/torture/pr119973.c: New testcase. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119103 - * gcc.target/i386/pr119103.c: New testcase. - -2025-04-28 Richard Biener <rguenther@suse.de> - - PR middle-end/60779 - * gcc.dg/lto/pr60779_0.c: New testcase. - * gcc.dg/lto/pr60779_1.c: Likewise. - -2025-04-28 Lewis Hyatt <lhyatt@gmail.com> - - PR c/118838 - * c-c++-common/cpp/pragma-diagnostic-loc-2.c: New test. - * g++.dg/gomp/macro-4.C: Adjust expected output. - * gcc.dg/gomp/macro-4.c: Likewise. - * gcc.dg/cpp/Wunknown-pragmas-1.c: Likewise. - -2025-04-28 Jonathan Yong <10walls@gmail.com> - - * gcc.dg/graphite/id-15.c: Use __SIZE_TYPE__ instead of - unsigned long. - * gcc.dg/plugin/infoleak-net-ethtool-ioctl.c: ditto. - -2025-04-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119939 - * g++.dg/modules/concept-11_a.H: New test. - * g++.dg/modules/concept-11_b.C: New test. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gcc.dg/tree-ssa/ssa-fre-4.c: Enable for all targets and adjust - scan match. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gcc.dg/tree-ssa/scev-cast.c: Enable for all targets and adjust - scan match. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gcc.dg/vect/vect-simd-clone-16c.c: Expect in-branch clones for - x86. - * gcc.dg/vect/vect-simd-clone-16d.c: Likewise. - * gcc.dg/vect/vect-simd-clone-17c.c: Likewise. - * gcc.dg/vect/vect-simd-clone-17d.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18c.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18d.c: Likewise. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gcc.target/i386/apx-ndd.c: Adjusted. - -2025-04-27 H.J. Lu <hjl.tools@gmail.com> - - PR middle-end/112877 - * gfortran.dg/pr112877-1.f90: New test. - -2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> - - * g++.dg/ipa/pr83549.C: Require effective target - variadic_mi_thunk. - * g++.dg/ipa/pr83667.C: Ditto. - * g++.dg/torture/pr81812.C: Ditto. - * g++.old-deja/g++.jason/thunk3.C: Ditto. - * lib/target-supports.exp - (check_effective_target_variadic_mi_thunk): New function. - -2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> - - * c-c++-common/musttail14.c: Disable test if effective target - using_sjlj_exceptions. - * c-c++-common/musttail22.c: Ditto. - * g++.dg/musttail8.C: Ditto. - * g++.dg/musttail9.C: Ditto. - * g++.dg/opt/musttail3.C: Ditto. - * g++.dg/opt/musttail4.C: Ditto. - * g++.dg/opt/musttail5.C: Ditto. - * g++.dg/opt/pr119613.C: Ditto. - * lib/target-supports.exp - (check_effective_target_using_sjlj_exceptions): New check. - -2025-04-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/102900 - * gfortran.dg/proc_ptr_52.f90: Add -fcheck=pointer to options. - * gfortran.dg/proc_ptr_57.f90: New test. - -2025-04-25 Jason Merrill <jason@redhat.com> - - PR c++/119764 - PR c++/87185 - * g++.dg/cpp0x/lambda/lambda-noexcept1.C: New test. - -2025-04-25 Jason Merrill <jason@redhat.com> - - * g++.dg/abi/macro0.C: Update for -fabi-version=21. - -2025-04-25 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group2/88_level_with_FALSE_IS_clause.cob: New testcase. - * cobol.dg/group2/88_level_with_FILLER.cob: Likewise. - * cobol.dg/group2/88_level_with_THRU.cob: Likewise. - * cobol.dg/group2/ADD_CORRESPONDING.cob: Likewise. - * cobol.dg/group2/ADD_SUBTRACT_CORR_mixed_fix___float.cob: Likewise. - * cobol.dg/group2/ALPHABETIC-LOWER_test.cob: Likewise. - * cobol.dg/group2/ALPHABETIC_test.cob: Likewise. - * cobol.dg/group2/ALPHABETIC-UPPER_test.cob: Likewise. - * cobol.dg/group2/BLANK_WHEN_ZERO.cob: Likewise. - * cobol.dg/group2/Check_for_equality_of_COMP-1___COMP-2.cob: Likewise. - * cobol.dg/group2/Compare_COMP-2_with_floating-point_literal.cob: Likewise. - * cobol.dg/group2/Contained_program_visibility__3_.cob: Likewise. - * cobol.dg/group2/Contained_program_visibility__4_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__1_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__2_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__3_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__4_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__5_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__6_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__7_.cob: Likewise. - * cobol.dg/group2/Context_sensitive_words__8_.cob: Likewise. - * cobol.dg/group2/debugging_lines__not_active_.cob: Likewise. - * cobol.dg/group2/debugging_lines__WITH_DEBUGGING_MODE_.cob: Likewise. - * cobol.dg/group2/DEBUG_Line.cob: Likewise. - * cobol.dg/group2/DISPLAY_and_assignment_NumericDisplay.cob: Likewise. - * cobol.dg/group2/DISPLAY_data_items_with_MOVE_statement.cob: Likewise. - * cobol.dg/group2/DISPLAY_data_items_with_VALUE_clause.cob: Likewise. - * cobol.dg/group2/DISPLAY_literals__DECIMAL-POINT_is_COMMA.cob: Likewise. - * cobol.dg/group2/GLOBAL_at_lower_level.cob: Likewise. - * cobol.dg/group2/GLOBAL_at_same_level.cob: Likewise. - * cobol.dg/group2/GLOBAL_FD__1_.cob: Likewise. - * cobol.dg/group2/GLOBAL_FD__2_.cob: Likewise. - * cobol.dg/group2/GLOBAL_FD__3_.cob: Likewise. - * cobol.dg/group2/GLOBAL_FD__4_.cob: Likewise. - * cobol.dg/group2/Hexadecimal_literal.cob: Likewise. - * cobol.dg/group2/integer_arithmetic_on_floating-point_var.cob: Likewise. - * cobol.dg/group2/MULTIPLY_BY_literal_in_INITIAL_program.cob: Likewise. - * cobol.dg/group2/Named_conditionals_-_fixed__float__and_alphabetic.cob: Likewise. - * cobol.dg/group2/Numeric_operations__1_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__2_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__3_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__4_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__5_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__7_.cob: Likewise. - * cobol.dg/group2/Numeric_operations__8_.cob: Likewise. - * cobol.dg/group2/ROUNDED_AWAY-FROM-ZERO.cob: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-AWAY-FROM-ZERO.cob: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-EVEN.cob: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-TOWARD-ZERO.cob: Likewise. - * cobol.dg/group2/ROUNDED_TOWARD-GREATER.cob: Likewise. - * cobol.dg/group2/ROUNDED_TOWARD-LESSER.cob: Likewise. - * cobol.dg/group2/ROUNDED_TRUNCATION.cob: Likewise. - * cobol.dg/group2/ROUNDING_omnibus_Floating-Point_from_COMPUTE.cob: Likewise. - * cobol.dg/group2/ROUNDING_omnibus_NumericDisplay_from_COMPUTE.cob: Likewise. - * cobol.dg/group2/Separate_sign_positions__1_.cob: Likewise. - * cobol.dg/group2/Separate_sign_positions__2_.cob: Likewise. - * cobol.dg/group2/Simple_p-scaling.cob: Likewise. - * cobol.dg/group2/Simple_TYPEDEF.cob: Likewise. - * cobol.dg/group2/ADD_SUBTRACT_CORR_mixed_fix___float.out: New known-good result. - * cobol.dg/group2/BLANK_WHEN_ZERO.out: Likewise. - * cobol.dg/group2/Contained_program_visibility__4_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__1_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__2_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__3_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__4_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__5_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__6_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__7_.out: Likewise. - * cobol.dg/group2/Context_sensitive_words__8_.out: Likewise. - * cobol.dg/group2/debugging_lines__not_active_.out: Likewise. - * cobol.dg/group2/debugging_lines__WITH_DEBUGGING_MODE_.out: Likewise. - * cobol.dg/group2/DEBUG_Line.out: Likewise. - * cobol.dg/group2/DISPLAY_and_assignment_NumericDisplay.out: Likewise. - * cobol.dg/group2/DISPLAY_data_items_with_MOVE_statement.out: Likewise. - * cobol.dg/group2/DISPLAY_data_items_with_VALUE_clause.out: Likewise. - * cobol.dg/group2/DISPLAY_literals__DECIMAL-POINT_is_COMMA.out: Likewise. - * cobol.dg/group2/GLOBAL_at_lower_level.out: Likewise. - * cobol.dg/group2/GLOBAL_at_same_level.out: Likewise. - * cobol.dg/group2/Hexadecimal_literal.out: Likewise. - * cobol.dg/group2/Named_conditionals_-_fixed__float__and_alphabetic.out: Likewise. - * cobol.dg/group2/ROUNDED_AWAY-FROM-ZERO.out: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-AWAY-FROM-ZERO.out: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-EVEN.out: Likewise. - * cobol.dg/group2/ROUNDED_NEAREST-TOWARD-ZERO.out: Likewise. - * cobol.dg/group2/ROUNDED_TOWARD-GREATER.out: Likewise. - * cobol.dg/group2/ROUNDED_TOWARD-LESSER.out: Likewise. - * cobol.dg/group2/ROUNDED_TRUNCATION.out: Likewise. - * cobol.dg/group2/ROUNDING_omnibus_Floating-Point_from_COMPUTE.out: Likewise. - * cobol.dg/group2/ROUNDING_omnibus_NumericDisplay_from_COMPUTE.out: Likewise. - * cobol.dg/group2/Separate_sign_positions__1_.out: Likewise. - * cobol.dg/group2/Separate_sign_positions__2_.out: Likewise. - * cobol.dg/group2/Simple_p-scaling.out: Likewise. - -2025-04-25 Andre Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.dg/pr116479.c: New test. - -2025-04-25 Jakub Jelinek <jakub@redhat.com> - - PR target/119873 - * gcc.target/s390/pr119873-5.c: New test. - -2025-04-25 Jason Merrill <jason@redhat.com> - - * g++.dg/template/recurse5.C: New test. - -2025-04-25 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> - - PR target/119122 - * gcc.target/riscv/arch-25.c: Fix dg-error expectation. - * gcc.target/riscv/attribute-c-1.c: New test. - * gcc.target/riscv/attribute-c-2.c: New test. - * gcc.target/riscv/attribute-c-3.c: New test. - * gcc.target/riscv/attribute-c-4.c: New test. - * gcc.target/riscv/attribute-c-5.c: New test. - * gcc.target/riscv/attribute-c-6.c: New test. - * gcc.target/riscv/attribute-c-7.c: New test. - * gcc.target/riscv/attribute-c-8.c: New test. - * gcc.target/riscv/attribute-zce-1.c: Update Zce tests. - * gcc.target/riscv/attribute-zce-2.c: Likewise. - * gcc.target/riscv/attribute-zce-3.c: Likewise - * gcc.target/riscv/attribute-zce-4.c: Likewise. - -2025-04-24 Jakub Jelinek <jakub@redhat.com> - Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/119873 - * gcc.target/s390/pr119873-1.c: New test. - * gcc.target/s390/pr119873-2.c: New test. - * gcc.target/s390/pr119873-3.c: New test. - * gcc.target/s390/pr119873-4.c: New test. - -2025-04-24 Robert Dubner <rdubner@symas.com> - - * cobol.dg/group1/declarative_1.cob: Adjust for repaired exception logic. - -2025-04-24 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/pr119919.c: New test. - -2025-04-24 Richard Sandiford <richard.sandiford@arm.com> - - PR target/119610 - * g++.dg/torture/pr119610.C: New test. - * g++.target/aarch64/sve/pr119610-sve.C: Likewise. - -2025-04-24 Jakub Jelinek <jakub@redhat.com> - - PR c++/110343 - * gcc.dg/raw-string-1.c: New test. - -2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> - - * gcc.dg/completion-2.c: Remove check for default. - -2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119915 - * gm2/pimlib/run/pass/format2.mod: New test. - -2025-04-24 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/avx512vl-pr103750-1.c: New test. - * gcc.target/i386/avx512f-pr96891-3.c: Adjust testcase. - * gcc.target/i386/avx512f-vpcmpgtuq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpeqq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpequq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpgeq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpgeuq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpgtq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpgtuq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpleq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpleuq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpltq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpltuq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpneqq-1.c: Ditto. - * gcc.target/i386/avx512vl-vpcmpnequq-1.c: Ditto. - -2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119914 - * gm2/pim/fail/constintarraybyte.mod: New test. - -2025-04-23 Dimitar Dimitrov <dimitar@dinux.eu> - - * g++.dg/no-stack-protector-attr-3.C: Require effective target - fstack_protector. - -2025-04-23 Jan Hubicka <hubicka@ucw.cz> - - * gcc.dg/ipa/ipa-clone-4.c: New file. - * gcc.dg/tree-prof/ipa-cp-1.c: New file. - -2025-04-23 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/71233 - * gcc.target/aarch64/advsimd-intrinsics/vld1x2.c: Enable on arm. - * gcc.target/aarch64/advsimd-intrinsics/vld1x3.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vld1x4.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x2.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x3.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x4.c: Likewise. - -2025-04-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * g++.dg/eh/pr119507.C: Skip on sparc*-*-solaris2* && !gas. - -2025-04-23 Tamar Christina <tamar.christina@arm.com> - - PR target/119286 - * gcc.dg/vect/vect-early-break_38.c: Force -march=gfx908 for amdgcn. - -2025-04-23 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/blendv-to-maxmin.c: New test. - * gcc.target/i386/blendv-to-pand.c: New test. - -2025-04-22 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/pr89618-2.c: XFAIL. - -2025-04-22 Jakub Jelinek <jakub@redhat.com> - - PR target/119327 - * g++.dg/opt/pr119327.C: New test. - -2025-04-22 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/pragma_cpp_predefs_4.c: Test - __ARM_FEATURE_FAMINMAX. - -2025-04-22 Spencer Abson <spencer.abson@arm.com> - - * gcc.target/aarch64/_Float16_cmp_1.c: New test. - * gcc.target/aarch64/_Float16_cmp_2.c: New (negative) test. - -2025-04-22 Spencer Abson <spencer.abson@arm.com> - - PR target/117013 - * g++.target/aarch64/spaceship_1.C: New test. - * g++.target/aarch64/spaceship_2.C: New test. - * g++.target/aarch64/spaceship_3.C: New test. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray/coindexed_3.f08: Add minimal test for - get_team(). - * gfortran.dg/team_change_2.f90: Add test for change team with - label and exiting out of it. - * gfortran.dg/team_end_2.f90: Check parsing to labeled team - blocks is correct now. - * gfortran.dg/team_end_3.f90: Check that end_team call is - generated for labeled end_teams, too. - * gfortran.dg/coarray/coindexed_5.f90: New test. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray_49.f90: Adapt to changed error message. - * gfortran.dg/coarray_collectives_12.f90: Adapt to changed - function signature of num_images. - * gfortran.dg/coarray_collectives_16.f90: Same. - * gfortran.dg/coarray_lib_this_image_1.f90: Same. - * gfortran.dg/coarray_lib_this_image_2.f90: Same. - * gfortran.dg/coarray_this_image_1.f90: Adapt tests for - num_images. - * gfortran.dg/coarray_this_image_2.f90: Same. - * gfortran.dg/coarray_this_image_3.f90: Same. - * gfortran.dg/num_images_1.f90: Check that deprecated syntax is - no longer supported. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - * gfortran.dg/coarray_10.f90: Update error messages. - * gfortran.dg/coarray_lib_this_image_1.f90: Same. - * gfortran.dg/coarray_lib_this_image_2.f90: Same. - * gfortran.dg/coarray_this_image_1.f90: Add more tests and - remove incorrect ones. - * gfortran.dg/coarray_this_image_2.f90: Test more features. - * gfortran.dg/coarray_this_image_3.f90: New test. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/88154 - PR fortran/88960 - PR fortran/97210 - PR fortran/103001 - * gfortran.dg/coarray/image_status_1.f08: Correct check for - team_type. - * gfortran.dg/pr102458.f90: Adapt to multiple errors. - * gfortran.dg/coarray/get_team_1.f90: New test. - * gfortran.dg/team_get_1.f90: New test. - * gfortran.dg/team_number_1.f90: Correct Fortran syntax. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - PR fortran/87556 - PR fortran/88254 - PR fortran/103796 - * gfortran.dg/team_change_2.f90: New test. - * gfortran.dg/team_change_3.f90: New test. - * gfortran.dg/team_end_2.f90: New test. - * gfortran.dg/team_end_3.f90: New test. - * gfortran.dg/team_form_2.f90: New test. - * gfortran.dg/team_form_3.f90: New test. - * gfortran.dg/team_sync_2.f90: New test. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87939 - * gfortran.dg/coarray_critical_2.f90: New test. - * gfortran.dg/coarray_critical_3.f90: New test. - * gfortran.dg/team_sync_1.f90: New test. - * gfortran.dg/move_alloc_11.f90: New test. - -2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> - - * gcc.target/riscv/mcpu-xt-c908.c: test -mcpu=xt-c908. - * gcc.target/riscv/mcpu-xt-c910.c: test -mcpu=xt-c910. - * gcc.target/riscv/mcpu-xt-c920v2.c: test -mcpu=xt-c920v2. - * gcc.target/riscv/mcpu-xt-c908v.c: test -mcpu=xt-c908v. - * gcc.target/riscv/mcpu-xt-c910v2.c: test -mcpu=xt-c910v2. - * gcc.target/riscv/mcpu-xt-c920.c: test -mcpu=xt-c920. - -2025-04-22 Christophe Lyon <christophe.lyon@linaro.org> - - * g++.dg/gcov/gcov.exp: Handle GCOV_UNDER_TEST. - * gcc.misc-tests/gcov.exp: Likewise. - * gdc.dg/gcov.exp: Likewise. - * gnat.dg/gcov/gcov.exp: Likewise. - -2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.misc-tests/gcov-31.c (run_pending_traps): Use sigsetjmp - instead of __sigsetjmp. - -2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119863 - * g++.dg/modules/tpl-friend-18_a.C: New test. - * g++.dg/modules/tpl-friend-18_b.C: New test. - * g++.dg/modules/tpl-friend-18_c.C: New test. - -2025-04-22 Andrew Pinski <quic_apinski@quicinc.com> - - * g++.dg/eh/pr119507.C: Skip for arm eabi. - -2025-04-22 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/powerpc/power11-3.c: Require ifunc support. - -2025-04-21 Jason Merrill <jason@redhat.com> - - PR c++/118775 - * g++.dg/cpp2a/constexpr-new24.C: Adjust diagnostic. - -2025-04-21 Andrew Bennett <andrew.bennett@imgtec.com> - - * gcc.dg/memcpy-4.c: Remove mips specific code. - * gcc.target/mips/memcpy-2.c: New test. - -2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> - - * gcc.target/mips/clear-cache-1.c: Also allow jrc. - -2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> - - * gcc.dg/tree-ssa/ssa-dom-cse-2.c: Do not check output for - MIPS lp64 abi. - -2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/119507 - * g++.dg/eh/pr119507.C: New test. - -2025-04-21 hongtao.liu <hongtao.liu@intel.com> - - * gcc.target/i386/recip-vec-divf-fma.c: New test. - -2025-04-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/117863 - * gcc.dg/rtl/i386/vector_eq-2.c: New test. - * gcc.dg/rtl/i386/vector_eq-3.c: Likewise. - -2025-04-19 Thomas Schwinge <tschwinge@baylibre.com> - - PR testsuite/119508 - * rust/compile/nr2/compile.exp: Disable parallel testing. - -2025-04-19 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - - PR target/118410 - * gcc.target/riscv/pr118410-1.c: New test. - * gcc.target/riscv/pr118410-2.c: Likewise. - -2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.dg/pr118947-1.c: Use 1025 as the size of the buf. - * gcc.dg/pr78408-3.c: Likewise. - -2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/111949 - * gcc.target/aarch64/bic-1.c: New test. - -2025-04-19 Jiaxun Yang <jiaxun.yang@flygoat.com> - - PR target/111814 - * gcc.target/sh/pr111814.c: New test. - -2025-04-19 Maciej W. Rozycki <macro@orcam.me.uk> - - * gcc.target/alpha/memcpy-nested-offset-long.c: New file. - * gcc.target/alpha/memcpy-nested-offset-quad.c: New file. - -2025-04-19 Steven G. Kargl <kargl@gcc.gnu.org> - - PR fortran/119836 - * gfortran.dg/do_concurrent_all_clauses.f90: Remove invalid - dg-error test. - * gfortran.dg/pr119836_1.f90: New test. - * gfortran.dg/pr119836_2.f90: New test. - * gfortran.dg/pr119836_3.f90: New test. - * gfortran.dg/pr119836_4.f90: New test. - -2025-04-18 Thomas Schwinge <tschwinge@baylibre.com> - - PR cobol/119818 - * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: - 'dg-set-target-env-var TZ UTC0'. - -2025-04-18 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/bext-ext-2.c: New test - -2025-04-18 Jonathan Yong <10walls@gmail.com> - - * g++.dg/abi/ref-temp1.C: Replicate some test based on - PE expectations. - * lib/target-supports.exp: New check_effective_target_pe. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/87901 - * gcc.dg/tree-ssa/ssa-dse-53.c: New test. - * gcc.dg/tree-ssa/ssa-dse-54.c: New test. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/87901 - * gcc.dg/tree-ssa/ssa-dse-52.c: New test. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118902 - * gcc.dg/tree-ssa/pr118902-1.c: New test. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118947 - * gcc.dg/pr118947-1.c: New test. - -2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/78408 - PR tree-optimization/118947 - * gcc.dg/pr78408-3.c: New test. - -2025-04-18 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/pr116357.c: Use sizeof(int) instead of alignof(int). - -2025-04-18 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> - - PR middle-end/108016 - * gcc.target/riscv/pr108016.c: New test. - -2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> - - PR rtl-optimization/119160 - * gcc.dg/pr119160.c: New test. - -2025-04-18 Xing Li <lixing@loongson.cn> - - * gcc.target/loongarch/vector/loongarch-vector.exp: Change - {dg-do-what-default} save and restore logical. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp2a/constexpr-dtor16.C: Adjust diagnostic. - * g++.dg/cpp2a/constexpr-dynamic10.C: Likewise. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp1y/constexpr-new.C: Adjust diagnostics. - * g++.dg/cpp1z/constexpr-asm-5.C: Likewise. - * g++.dg/cpp26/static_assert1.C: Likewise. - * g++.dg/cpp2a/constexpr-dtor7.C: Likewise. - * g++.dg/cpp2a/constexpr-new26.C: Likewise. - * g++.dg/cpp2a/constexpr-new3.C: Likewise. - * g++.dg/cpp2a/constinit14.C: Likewise. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp26/pack-indexing2.C: Adjust diagnostics. - * g++.dg/ext/type_pack_element2.C: Likewise. - * g++.dg/ext/type_pack_element4.C: Likewise. - -2025-04-17 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/119351 - * gcc.target/aarch64/sve/pr119351.c: New test. - * gcc.target/aarch64/sve/pr119351_run.c: New test. - -2025-04-17 Jakub Jelinek <jakub@redhat.com> - - PR target/119834 - * g++.target/s390/pr119834.C: New test. - -2025-04-17 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.test/fail_compilation/test21247.d: New test. - * gdc.test/fail_compilation/test21247b.d: New test. - -2025-04-17 Jason Merrill <jason@redhat.com> - - PR c++/113360 - * g++.dg/cpp23/constexpr-nonlit18.C: Remove redundant message. - * g++.dg/cpp1y/constexpr-diag2.C: New test. - * g++.dg/cpp1y/pr63996.C: Adjust expected errors. - * g++.dg/template/explicit-args6.C: Likewise. - * g++.dg/cpp0x/constexpr-ice21.C: Likewise. - -2025-04-16 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/ipa/ipa-sra-19.c: Add -Wno-psabi on ppc-elf too. - -2025-04-16 Peter Bergner <bergner@linux.ibm.com> - - PR tree-optimization/112822 - * g++.dg/pr112822.C: Replace altivec vector attribute with a generic - vector attribute. - -2025-04-16 Eric Botcazou <ebotcazou@gcc.gnu.org> - - * gnat.dg/opt105.adb: New test. - * gnat.dg/opt105_pkg.ads, gnat.dg/opt105_pkg.adb: New helper. - -2025-04-16 Jason Merrill <jason@redhat.com> - - PR c++/114772 - PR c++/101180 - * g++.dg/ext/pragma-target2.C: New test. - -2025-04-16 Jason Merrill <jason@redhat.com> - - PR c++/116954 - * g++.dg/warn/Wformat-3.C: New test. - -2025-04-16 Ard Biesheuvel <ardb@kernel.org> - - PR target/119386 - * gcc.target/i386/pr119386-3.c: New test. - -2025-04-16 Ard Biesheuvel <ardb@kernel.org> - - PR target/119386 - * gcc.target/i386/pr119386-1.c: New test. - * gcc.target/i386/pr119386-2.c: New test. - -2025-04-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/106948 - * gfortran.dg/pure_formal_proc_4.f90: New test. - -2025-04-16 Jan Hubicka <hubicka@ucw.cz> - - * g++.dg/lto/pr119614_0.C: New test. - -2025-04-16 Tamar Christina <tamar.christina@arm.com> - - PR target/119286 - * gcc.dg/vect/vect-early-break_18.c: Force -march=gfx908 for amdgcn. - -2025-04-16 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/119351 - * gcc.target/aarch64/sve/peel_ind_10.c: New test. - * gcc.target/aarch64/sve/peel_ind_10_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_5.c: New test. - * gcc.target/aarch64/sve/peel_ind_5_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_6.c: New test. - * gcc.target/aarch64/sve/peel_ind_6_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_7.c: New test. - * gcc.target/aarch64/sve/peel_ind_7_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_8.c: New test. - * gcc.target/aarch64/sve/peel_ind_8_run.c: New test. - * gcc.target/aarch64/sve/peel_ind_9.c: New test. - * gcc.target/aarch64/sve/peel_ind_9_run.c: New test. - -2025-04-16 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119808 - * gcc.dg/bitint-121.c: New test. - -2025-04-16 Jesse Huang <jesse.huang@sifive.com> - - * gcc.target/riscv/gnu-property-align-rv32.c: New file. - * gcc.target/riscv/gnu-property-align-rv64.c: New file. - -2025-04-16 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/jump-table-large-code-model.c: New test. - -2025-04-16 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/116093 - * gcc.dg/bitint-122.c: New test. - -2025-04-16 Alice Carlotti <alice.carlotti@arm.com> - - * gcc.target/aarch64/acle/rwsr-ungated.c: New test. - -2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119826 - * gdc.dg/debug/imports/pr119826b.d: New test. - * gdc.dg/debug/pr119826.d: New test. - -2025-04-15 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119755 - * g++.dg/modules/lambda-10_a.H: New test. - * g++.dg/modules/lambda-10_b.C: New test. - -2025-04-15 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/completion-2.c: Expect also -flto-partition=default line. - -2025-04-15 Qing Zhao <qing.zhao@oracle.com> - - PR c/119717 - * gcc.dg/pr119717.c: New test. - -2025-04-15 H.J. Lu <hjl.tools@gmail.com> - - PR target/119784 - * gcc.target/i386/apx-interrupt-1.c: Expect 31 .cfi_restore - directives. - -2025-04-15 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119533 - * go.dg/pr119533-riscv.go: New test. - * go.dg/pr119533-riscv-2.go: New test. - -2025-04-15 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119547 - * gcc.target/riscv/rvv/vsetvl/avl_single-68.c: xfail. - * g++.target/riscv/rvv/autovec/pr119547.C: New test. - * g++.target/riscv/rvv/autovec/pr119547-2.C: New test. - * gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-10.c: Adjust. - -2025-04-15 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/gomp/map-alloc-comp-1.f90: Remove dg-error. - * gfortran.dg/gomp/polymorphic-mapping-2.f90: Update warn wording. - * gfortran.dg/gomp/polymorphic-mapping.f90: Change expected - diagnostic; some tests moved to ... - * gfortran.dg/gomp/polymorphic-mapping-1.f90: ... here as new test. - * gfortran.dg/gomp/polymorphic-mapping-3.f90: New test. - * gfortran.dg/gomp/polymorphic-mapping-4.f90: New test. - * gfortran.dg/gomp/polymorphic-mapping-5.f90: New test. - -2025-04-15 Martin Jambor <mjambor@suse.cz> - Jakub Jelinek <jakub@redhat.com> - - PR ipa/119803 - * gcc.dg/ipa/pr119803.c: New test. - -2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119799 - * gdc.dg/import-c/pr119799.d: New test. - * gdc.dg/import-c/pr119799c.c: New test. - -2025-04-15 Patrick Palka <ppalka@redhat.com> - - PR c++/119807 - PR c++/112288 - * g++.dg/template/friend86.C: New test. - * g++.dg/template/friend87.C: New test. - -2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119817 - * gdc.dg/debug/imports/m119817/a.d: New test. - * gdc.dg/debug/imports/m119817/b.d: New test. - * gdc.dg/debug/imports/m119817/package.d: New test. - * gdc.dg/debug/pr119817.d: New test. - -2025-04-15 Jakub Jelinek <jakub@redhat.com> - - PR sanitizer/119801 - * c-c++-common/tsan/pr119801.c: New test. - -2025-04-15 Jonathan Yong <10walls@gmail.com> - - * gcc.dg/Wbuiltin-declaration-mismatch-4.c: Make diagnostic - accept long long. - -2025-04-15 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119318 - * gcc.dg/ipa/pr119318.c: Remove dg-additional-options, add -w to - dg-options. - -2025-04-15 Jason Merrill <jason@redhat.com> - - PR c++/113835 - * g++.dg/cpp2a/constexpr-vector1.C: New test. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/118794 - * g++.target/gcn/exceptions-bad_cast-2.C: Set - '-mno-fake-exceptions'. - * g++.target/gcn/exceptions-pr118794-1.C: Likewise. - * g++.target/gcn/exceptions-throw-2.C: Likewise. - * g++.target/nvptx/exceptions-bad_cast-2.C: Likewise. - * g++.target/nvptx/exceptions-pr118794-1.C: Likewise. - * g++.target/nvptx/exceptions-throw-2.C: Likewise. - * g++.target/gcn/exceptions-bad_cast-2_-mfake-exceptions.C: New. - * g++.target/gcn/exceptions-pr118794-1_-mfake-exceptions.C: - Likewise. - * g++.target/gcn/exceptions-throw-2_-mfake-exceptions.C: Likewise. - * g++.target/nvptx/exceptions-bad_cast-2_-mfake-exceptions.C: - Likewise. - * g++.target/nvptx/exceptions-pr118794-1_-mfake-exceptions.C: - Likewise. - * g++.target/nvptx/exceptions-throw-2_-mfake-exceptions.C: - Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-throw-3.C: New. - * g++.target/nvptx/exceptions-throw-3.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-throw-2.C: New. - * g++.target/nvptx/exceptions-throw-2.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-throw-1.C: New. - * g++.target/nvptx/exceptions-throw-1.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-bad_cast-3.C: New. - * g++.target/nvptx/exceptions-bad_cast-3.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-bad_cast-2.C: New. - * g++.target/nvptx/exceptions-bad_cast-2.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/exceptions-bad_cast-1.C: New. - * g++.target/nvptx/exceptions-bad_cast-1.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/118794 - * g++.target/gcn/exceptions-pr118794-1.C: New. - * g++.target/nvptx/exceptions-pr118794-1.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR c++/119692 - * g++.target/gcn/pr119692-1-1.C: New. - * g++.target/nvptx/pr119692-1-1.C: Likewise. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/gcn/gcn.exp: New. - -2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (${tool}_load): Polish 'dg-output-file' test - logs. - -2025-04-14 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119318 - * gcc.dg/ipa/pr119530.c (d): Change type from char to signed char. - (e): Change argument type from long to long long. - -2025-04-14 beamandala <mandalapubhavesh@gmail.com> - - * rust/compile/track_caller.rs: New test. - -2025-04-14 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/enum_discriminant2.rs: New test. - -2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/format_args_extra_comma.rs: New test. - -2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/macros/mbe/macro-issue3709-1.rs: New test. - * rust/compile/macros/mbe/macro-issue3709-2.rs: New test. - * rust/compile/macros/mbe/macro-issue3693.rs: New file. - -2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/macros/mbe/macro-issue3708.rs: New test. - -2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/torture/min_specialization2.rs: New test. - * rust/execute/torture/min_specialization3.rs: New test. - -2025-04-14 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118476 - * gcc.dg/torture/pr118476-1.c: New test. - -2025-04-14 Patrick Palka <ppalka@redhat.com> - - PR c++/99214 - * g++.dg/concepts/diagnostic20.C: New test. - -2025-04-14 H.J. Lu <hjl.tools@gmail.com> - - PR target/119784 - * gcc.target/i386/pr119784a.c: New test. - * gcc.target/i386/pr119784b.c: Likewise. - -2025-04-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/119318 - * gcc.dg/ipa/pr119318.c: New test. - * gcc.dg/ipa/pr119530.c: Likwise. - -2025-04-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119757 - * gcc.dg/vect/pr119757.c: New testcase. - -2025-04-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119778 - * g++.dg/torture/pr119778.C: New testcase. - -2025-04-14 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119779 - * gm2.dg/doc/examples/pass/doc-examples-pass.exp: New test. - * gm2.dg/doc/examples/pass/exampleadd.mod: New test. - * gm2.dg/doc/examples/pass/exampleadd2.mod: New test. - * gm2.dg/doc/examples/pass/hello.mod: New test. - * gm2.dg/doc/examples/pass/hellopim.mod: New test. - -2025-04-14 Eric Botcazou <ebotcazou@adacore.com> - - PR lto/119792 - * gnat.dg/lto29.adb: New test. - * gnat.dg/lto29_pkg.ads: New helper. - -2025-04-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/119502 - * gfortran.dg/pr119502.f90: New test. - -2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/noexcept-4_a.H: New test. - * g++.dg/modules/noexcept-4_b.C: New test. - -2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/lambda-8_b.C: Adjust error. - * g++.dg/modules/leg-merge-4_c.C: Likewise. - -2025-04-13 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119669 - * gfortran.dg/interface_59.f90: New test. - -2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119761 - * gdc.dg/import-c/import-c.exp: New test. - * gdc.dg/import-c/pr119761.d: New test. - * gdc.dg/import-c/pr119761c.c: New test. - -2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/109023 - * gdc.dg/torture/imports/pr109023.d: New test. - * gdc.dg/torture/pr109023.d: New test. - -2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119758 - * gdc.dg/driver_fonly1.d: New test. - * gdc.dg/driver_fonly2.d: New test. - * gdc.dg/driver_fonly3.d: New test. - * gdc.dg/imports/fonly.d: New test. - -2025-04-12 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/117706 - * gcc.dg/ira-shrinkwrap-prep-1.c: Unxfail for i?68-*-* and x86_64-*-*. - * gcc.dg/ira-shrinkwrap-prep-2.c: Likewise. - -2025-04-12 Patrick Palka <ppalka@redhat.com> - - PR c++/116416 - * g++.dg/cpp1y/constexpr-prvalue1.C: Adjust to instead inspect - the 'original' dump. - * g++.dg/cpp1y/constexpr-prvalue1a.C: New test. - -2025-04-12 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119722 - * gcc.dg/torture/bitint-77.c: New test. - -2025-04-12 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/renaming17.adb: New test. - -2025-04-12 Bob Dubner <rdubner@symas.com> - - PR cobol/119694 - * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__2_.cob: GCOBOL_CURRENT_DATE. - * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.cob: Likewise - * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: Likewise - -2025-04-11 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp: Rename arm_v8_1_lob_ok into - arm_v8_1m_lob_hw. - Rename arm_thumb2_no_arm_v8_1_lob into - arm_thumb2_no_arm_v8_1m_lob. - Rename arm_thumb2_ok_no_arm_v8_1_lob into - arm_thumb2_ok_no_arm_v8_1m_lob. - * gcc.target/arm/lob1.c: Likewise. - * gcc.target/arm/lob6.c: Likewise. - * gcc.target/arm/ivopts.c: Likewise. - * gcc.target/arm/unsigned-extend-2.c: Likewise. - -2025-04-11 Andrew Pinski <quic_apinski@quicinc.com> - - PR rtl-optimization/118502 - * g++.dg/opt/shrink-wrapping-vector-1.C: New test. - -2025-04-11 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/base/pr115068-run.c: Turn off pedantic diagnostics. - * gcc.target/riscv/rvv/base/pr115068.c: Likewise. - * gcc.target/riscv/rvv/base/vwaddsub-1.c: Likewise. - -2025-04-11 Jason Merrill <jason@redhat.com> - - PR c++/114970 - * g++.dg/opt/is_constant_evaluated4.C: New test. - -2025-04-11 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119707 - * gcc.dg/torture/bitint-76.c: New test. - -2025-04-11 Jennifer Schmitz <jschmitz@nvidia.com> - - PR tree-optimization/119706 - * g++.target/aarch64/sve/pr119706.C: New test. - -2025-04-11 Jonathan Yong <10walls@gmail.com> - - PR target/113633 - * gcc.dg/bf-ms-attrib.c: Fix expected __ms_struct__ layout - size. - -2025-04-11 Jonathan Yong <10walls@gmail.com> - - * c-c++-common/analyzer/realloc-1.c: Make diagnostic accept - long long for __builtin_realloc warning. - -2025-04-10 Jason Merrill <jason@redhat.com> - - PR c++/119345 - * g++.dg/cpp2a/lambda-targ14.C: New test. - -2025-04-10 Patrick Palka <ppalka@redhat.com> - - PR c++/119687 - * g++.dg/cpp23/class-deduction-inherited8.C: New test. - -2025-04-10 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group2/Dynamic_reference_modification.cob: New testcase. - * cobol.dg/group2/Length_overflow__1_.cob: Likewise. - * cobol.dg/group2/Length_overflow__2_.cob: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__1_.cob: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__2_.cob: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__3_.cob: Likewise. - * cobol.dg/group2/Offset_overflow.cob: Likewise. - * cobol.dg/group2/Offset_underflow.cob: Likewise. - * cobol.dg/group2/Refmod__comparisons_inside_numeric-display.cob: Likewise. - * cobol.dg/group2/Refmod_sources_are_figurative_constants.cob: Likewise. - * cobol.dg/group2/Static_reference_modification.cob: Likewise. - * cobol.dg/group2/Dynamic_reference_modification.out: New known-good result. - * cobol.dg/group2/Length_overflow__1_.out: Likewise. - * cobol.dg/group2/Length_overflow__2_.out: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__1_.out: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__2_.out: Likewise. - * cobol.dg/group2/Length_overflow_with_offset__3_.out: Likewise. - * cobol.dg/group2/Offset_overflow.out: Likewise. - * cobol.dg/group2/Offset_underflow.out: Likewise. - * cobol.dg/group2/Refmod__comparisons_inside_numeric-display.out: Likewise. - * cobol.dg/group2/Refmod_sources_are_figurative_constants.out: Likewise. - * cobol.dg/group2/Static_reference_modification.out: Likewise. - -2025-04-10 Jason Merrill <jason@redhat.com> - - PR c++/119175 - * g++.dg/cpp2a/concepts-lambda23.C: New test. - -2025-04-10 Iain Sandoe <iain@sandoe.co.uk> - - * lib/cobol.exp: Add libquadmath paths. - -2025-04-10 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/119399 - * gcc.dg/vect/pr119399.c: New test. - -2025-04-10 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-1.c: Include local - riscv_vector.h. - * gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-2.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-1-save-restore.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-1-zcmp.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-1.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c: Ditto. - * gcc.target/riscv/rvv/base/abi-callee-saved-2.c: Ditto. - * gcc.target/riscv/rvv/base/bug-10-2.c: Ditto. - * gcc.target/riscv/rvv/base/bug-10.c: Ditto. - * gcc.target/riscv/rvv/base/bug-7.c: Ditto. - * gcc.target/riscv/rvv/base/bug-8.c: Ditto. - * gcc.target/riscv/rvv/base/bug-9.c: Ditto. - * gcc.target/riscv/rvv/base/pr110943.c: Ditto. - * gcc.target/riscv/rvv/base/pr112431-21.c: Ditto. - * gcc.target/riscv/rvv/base/pr114639-1.c: Ditto. - * gcc.target/riscv/rvv/base/pr115068.c: Ditto. - * gcc.target/riscv/rvv/base/pr117286.c: Ditto. - * gcc.target/riscv/rvv/base/pr117544.c: Ditto. - * gcc.target/riscv/rvv/base/pr117955.c: Ditto. - * gcc.target/riscv/rvv/base/pr118872.c: Ditto. - * gcc.target/riscv/rvv/base/vlmul_ext-1.c: Ditto. - * gcc.target/riscv/rvv/base/vssubu-1.c: Ditto. - * gcc.target/riscv/rvv/base/vssubu-2.c: Ditto. - * gcc.target/riscv/rvv/base/vwaddsub-1.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/pr111234.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/pr115214.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvl-24.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvl_bug-3.c: Ditto. - * gcc.target/riscv/rvv/vsetvl/vsetvl_bug-4.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/pr116591.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/pr116592.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/pr118357.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/vsext.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/vzext.c: Ditto. - -2025-04-09 Patrick Palka <ppalka@redhat.com> - - PR c++/119574 - * g++.dg/cpp2a/lambda-targ13.C: New test. - * g++.dg/cpp2a/lambda-targ13a.C: New test. - * g++.dg/cpp2a/lambda-targ13b.C: New test. - -2025-04-09 Jakub Jelinek <jakub@redhat.com> - - PR target/119664 - * gcc.dg/pr119664.c: New test. - -2025-04-09 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/116595 - * g++.target/aarch64/sve/pr116595.C: New test. - -2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118309 - * gdc.dg/debug/dwarf2/pr118309.d: New test. - -2025-04-09 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119656 - * gfortran.dg/optional_absent_13.f90: New test. - -2025-04-09 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/sat/sat_s_sub-1-i64.c: Update expected output. - * gcc.target/riscv/sat/sat_s_sub-2-i64.c: Likewise. - * gcc.target/riscv/sat/sat_s_sub-3-i64.c: Likewise. - * gcc.target/riscv/sat/sat_s_sub-4-i64.c: Likewise. - -2025-04-09 Uros Bizjak <ubizjak@gmail.com> - - * gcc.target/i386/pr67215-1.c: Correctly escape - asterisk in scan-assembler dirctive. - * gcc.target/i386/pr67215-2.c: Ditto. - -2025-04-09 Jonathan Yong <10walls@gmail.com> - - PR analyzer/113253 - * gcc.dg/analyzer/deref-before-check-pr113253.c: - (ptrdiff_t): use stddef.h type. - (uintptr_t): ditto. - (EMACS_INT): ditto. - (set_marker_internal): Add dummy 0 to suppress -Wreturn-type. - -2025-04-09 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/pr117722.c: Adjust expected output. - -2025-04-09 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/119689 - PR rtl-optimization/115568 - * g++.target/i386/pr119689.C: New testcase. - -2025-04-09 Pan Li <pan2.li@intel.com> - - Revert: - 2025-03-15 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.c: Removed. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i8.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u8.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.h: New test. - -2025-04-09 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/118674 - * gcc.dg/cpp/pr118674.c: New test. - -2025-04-09 Robin Dapp <rdapp@ventanamicro.com> - - * g++.target/riscv/rvv/autovec/pr116595.C: Add -mabi. - -2025-04-09 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/116595 - * g++.target/riscv/rvv/autovec/pr116595.C: New test. - -2025-04-09 Paul Thomas <pault@gcc.gnu.org> - and Harald Anlauf <anlauf@gcc.gnu.org> - - PR fortran/119460 - * gfortran.dg/reduce_2.f90: Add test to check that deferred len - characters cannot slip through. - * gfortran.dg/reduce_3.f90: New test - * gfortran.dg/reduce_4.f90: New test - -2025-04-09 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/101602 - * gfortran.dg/do_concurrent_8_f2023.f90: Update for removed 'sorry, - unimplemented'. - * gfortran.dg/do_concurrent_9.f90: Likewise. - * gfortran.dg/do_concurrent_all_clauses.f90: Likewise. - * gfortran.dg/do_concurrent_local_init.f90: Likewise. - * gfortran.dg/do_concurrent_locality_specs.f90: Likewise. - * gfortran.dg/do_concurrent_11.f90: New test. - * gfortran.dg/do_concurrent_12.f90: New test. - * gfortran.dg/do_concurrent_13.f90: New test. - * gfortran.dg/do_concurrent_14.f90: New test. - * gfortran.dg/do_concurrent_15.f90: New test. - -2025-04-09 Jason Merrill <jason@redhat.com> - - PR c++/118698 - * g++.dg/cpp2a/concepts-lambda22.C: New test. - -2025-04-08 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/guality/pr36728-3.c: Update XFAILs for aarch64. - * gcc.dg/guality/pr41353-1.c: Likewise. - * gcc.dg/guality/pr54693-2.c: Likewise. - * gcc.dg/guality/pr68860-1.c: Likewise. - * gcc.dg/guality/pr68860-2.c: Likewise. - * gcc.dg/guality/sra-1.c: Likewise. - * gcc.dg/guality/vla-1.c: Likewise. - -2025-04-08 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/vect/pr99102.c: Force SVE when forcing the vector length. - -2025-04-08 Martin Uecker <uecker@tugraz.at> - - PR c/119612 - * gcc.dg/gnu23-tag-6.c: New test. - * gcc.dg/pr119612.c: New test. - -2025-04-08 Tobias Burnus <tburnus@baylibre.com> - - PR middle-end/119662 - * c-c++-common/gomp/append-args-interop.c: Update for fixed - GOMP_interop call. - * g++.dg/gomp/append-args-8.C: Likewise. - * gfortran.dg/gomp/append-args-interop.f90: Likewise. - -2025-04-08 Jason Merrill <jason@redhat.com> - - PR c++/117530 - * g++.dg/cpp2a/lambda-uneval27.C: New test. - -2025-04-08 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119594 - * gcc.dg/pr119594.c: New test. - -2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro6.rs: Remove call of undefined - function. - * rust/compile/nr2/exclude: Remove macros/mbe/macro6.rs. - -2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-2812.rs: Avoid multiple definition error. - * rust/compile/nr2/exclude: Remove issue-2812.rs. - -2025-04-08 Matty Kuhn <matty.kuhn.1@gmail.com> - - * rust/compile/feature.rs: add an invalid empty feature to produce an error - -2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/invalid_label_name.rs: Adapt test to nr2. - -2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove test. - -2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/undeclared_label.rs: Change test - expected string. - -2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove test from exclusion list. - -2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove passing test. - -2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/compile.exp: Avoid absolute paths in output, - adjust phrasing of output, and avoid false XPASS output when - tests are run in parallel. - -2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entry. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3647.rs: New test. - -2025-04-08 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/min_specialization1.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 is missing type path error - * rust/compile/issue-3643.rs: New test. - * rust/compile/issue-3646.rs: New test. - * rust/compile/issue-3654.rs: New test. - * rust/compile/issue-3663.rs: New test. - * rust/compile/issue-3671.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3667.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3656.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3625.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3648.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3657.rs: New test. - -2025-04-08 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3665.rs: New test. - -2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-04-08 Ryutaro Okada <1015ryu88@gmail.com> - - * rust/compile/enum_discriminant1.rs: New test. - -2025-04-08 Tejas Belagod <tejas.belagod@arm.com> - - * gcc.target/aarch64/sve/gomp/gomp.exp: Test driver. - * gcc.target/aarch64/sve/gomp/target-device.c: New test. - * gcc.target/aarch64/sve/gomp/target-link.c: Likewise. - * gcc.target/aarch64/sve/gomp/target.c: Likewise. - -2025-04-08 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/rvv/xtheadvector/vsext.c: New test. - * gcc.target/riscv/rvv/xtheadvector/vzext.c: New test. - -2025-04-07 Jason Merrill <jason@redhat.com> - - PR c++/119652 - * g++.dg/cpp2a/constinit20.C: New test. - -2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/alloca-2-O0_-mfake-ptx-alloca.c: Adjust. - -2025-04-07 Martin Jambor <mjambor@suse.cz> - - PR tree-optimization/118924 - * g++.dg/tree-ssa/pr118924.C: New test. - -2025-04-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119640 - * gcc.dg/vect/pr119640.c: New testcase. - -2025-04-07 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/119556 - * gcc.target/arm/short-vfp-1.c: Improve dg directives. - -2025-04-07 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119614 - * g++.dg/opt/pr119613.C: Change { c || c++11 } in obviously C++ only - test to just c++11. - * g++.dg/opt/pr119614.C: New test. - -2025-04-07 Richard Sandiford <richard.sandiford@arm.com> - Richard Biener <rguenther@suse.de> - - * gcc.target/aarch64/popcnt-le-1.c: Account for commutativity of TST. - * gcc.target/aarch64/popcnt-le-3.c: Likewise AND. - * gcc.target/aarch64/pr100056.c: Revert previous patch. - * gcc.target/aarch64/sve/pred-not-gen-1.c: Likewise. - * gcc.target/aarch64/sve/pred-not-gen-4.c: Likewise. - * gcc.target/aarch64/sve/var_stride_2.c: Likewise. - * gcc.target/aarch64/sve/var_stride_4.c: Likewise. - -2025-04-06 Iain Sandoe <iain@sandoe.co.uk> - - * lib/cobol.exp: Simplify the setting of COBOL_UNDER_TEST. - -2025-04-06 Patrick Palka <ppalka@redhat.com> - - PR c++/118626 - * g++.dg/cpp2a/class-deduction-alias25a.C: New test. - -2025-04-06 Patrick Palka <ppalka@redhat.com> - - PR c++/118626 - * g++.dg/cpp2a/class-deduction-alias25.C: New test. - -2025-04-05 Patrick Palka <ppalka@redhat.com> - - PR c++/118249 - * g++.dg/cpp0x/constexpr-reinterpret2.C: Expect error at - call site of the non-constexpr functions. - * g++.dg/cpp23/constexpr-nonlit12.C: Likewise. - * g++.dg/cpp0x/constexpr-ref14.C: New test. - -2025-04-05 Iain Sandoe <iain@sandoe.co.uk> - - * lib/cobol.exp: Conditionally add a path for libgcobol.spec. - -2025-04-05 Jason Merrill <jason@redhat.com> - - PR c++/118629 - * g++.dg/cpp0x/lambda/lambda-__func__3.C: New test. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119564 - * g++.dg/modules/gc-3_a.C: New test. - * g++.dg/modules/gc-3_b.C: New test. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119608 - * g++.dg/modules/pr119608_a.C: New test. - * g++.dg/modules/pr119608_b.C: New test. - -2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119462 - * g++.dg/modules/noexcept-3_a.C: New test. - * g++.dg/modules/noexcept-3_b.C: New test. - * g++.dg/modules/noexcept-3_c.C: New test. - -2025-04-04 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group2/call_subprogram_using_pointer__passing_pointer.cob: New testcase. - * cobol.dg/group2/FUNCTION_ABS.cob: Likewise. - * cobol.dg/group2/FUNCTION_ACOS.cob: Likewise. - * cobol.dg/group2/FUNCTION_ALL_INTRINSIC_simple_test.cob: Likewise. - * cobol.dg/group2/FUNCTION_ANNUITY.cob: Likewise. - * cobol.dg/group2/FUNCTION_as_CALL_parameter_BY_CONTENT.cob: Likewise. - * cobol.dg/group2/FUNCTION_ASIN.cob: Likewise. - * cobol.dg/group2/FUNCTION_ATAN.cob: Likewise. - * cobol.dg/group2/FUNCTION_BIGGER-POINTER__2_.cob: Likewise. - * cobol.dg/group2/FUNCTION_BIGGER-POINTER.cob: Likewise. - * cobol.dg/group2/FUNCTION_BYTE-LENGTH.cob: Likewise. - * cobol.dg/group2/FUNCTION_CHAR.cob: Likewise. - * cobol.dg/group2/FUNCTION_COMBINED-DATETIME.cob: Likewise. - * cobol.dg/group2/FUNCTION_CONCAT___CONCATENATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_CONCAT_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_COS.cob: Likewise. - * cobol.dg/group2/FUNCTION_CURRENT-DATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_DATE-OF-INTEGER.cob: Likewise. - * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: Likewise. - * cobol.dg/group2/FUNCTION_DATE-TO-YYYYMMDD.cob: Likewise. - * cobol.dg/group2/FUNCTION_DAY-OF-INTEGER.cob: Likewise. - * cobol.dg/group2/FUNCTION_DAY-TO-YYYYDDD.cob: Likewise. - * cobol.dg/group2/FUNCTION_E.cob: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-FILE.cob: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-STATEMENT.cob: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-STATUS.cob: Likewise. - * cobol.dg/group2/FUNCTION_EXP10.cob: Likewise. - * cobol.dg/group2/FUNCTION_EXP.cob: Likewise. - * cobol.dg/group2/FUNCTION_FACTORIAL.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATETIME.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATE_TIME_DATETIME.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATETIME_with_ref_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATE_with_ref_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-TIME_DP.COMMA.cob: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-TIME_with_ref_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_FRACTION-PART.cob: Likewise. - * cobol.dg/group2/FUNCTION_HEX-OF.cob: Likewise. - * cobol.dg/group2/FUNCTION_HIGHEST-ALGEBRAIC.cob: Likewise. - * cobol.dg/group2/FUNCTION_INTEGER.cob: Likewise. - * cobol.dg/group2/FUNCTION_INTEGER-OF-DATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_INTEGER-OF-DAY.cob: Likewise. - * cobol.dg/group2/FUNCTION_INTEGER-OF-FORMATTED-DATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_INTEGER-PART.cob: Likewise. - * cobol.dg/group2/FUNCTION_LENGTH__1_.cob: Likewise. - * cobol.dg/group2/FUNCTION_LENGTH__2_.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-COMPARE.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-DATE.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-TIME.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-TIME-FROM-SECONDS.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOG10.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOG.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOWER-CASE.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOWER-CASE_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_LOWEST-ALGEBRAIC.cob: Likewise. - * cobol.dg/group2/FUNCTION_MAX.cob: Likewise. - * cobol.dg/group2/FUNCTION_MEAN.cob: Likewise. - * cobol.dg/group2/FUNCTION_MEDIAN.cob: Likewise. - * cobol.dg/group2/FUNCTION_MIDRANGE.cob: Likewise. - * cobol.dg/group2/FUNCTION_MIN.cob: Likewise. - * cobol.dg/group2/FUNCTION_MOD__invalid_.cob: Likewise. - * cobol.dg/group2/FUNCTION_MODULE-NAME.cob: Likewise. - * cobol.dg/group2/FUNCTION_MOD__valid_.cob: Likewise. - * cobol.dg/group2/FUNCTION_NUMVAL-C.cob: Likewise. - * cobol.dg/group2/FUNCTION_NUMVAL-C_DP.COMMA.cob: Likewise. - * cobol.dg/group2/FUNCTION_NUMVAL.cob: Likewise. - * cobol.dg/group2/FUNCTION_NUMVAL-F.cob: Likewise. - * cobol.dg/group2/FUNCTION_ORD.cob: Likewise. - * cobol.dg/group2/FUNCTION_ORD-MAX.cob: Likewise. - * cobol.dg/group2/FUNCTION_ORD-MIN.cob: Likewise. - * cobol.dg/group2/FUNCTION_PI.cob: Likewise. - * cobol.dg/group2/FUNCTION_PRESENT-VALUE.cob: Likewise. - * cobol.dg/group2/FUNCTION_RANDOM.cob: Likewise. - * cobol.dg/group2/FUNCTION_RANGE.cob: Likewise. - * cobol.dg/group2/FUNCTION_REM__invalid_.cob: Likewise. - * cobol.dg/group2/FUNCTION_REM__valid_.cob: Likewise. - * cobol.dg/group2/FUNCTION_REVERSE.cob: Likewise. - * cobol.dg/group2/FUNCTION_REVERSE_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_SECONDS-FROM-FORMATTED-TIME.cob: Likewise. - * cobol.dg/group2/FUNCTION_SECONDS-PAST-MIDNIGHT.cob: Likewise. - * cobol.dg/group2/FUNCTION_SIGN.cob: Likewise. - * cobol.dg/group2/FUNCTION_SIN.cob: Likewise. - * cobol.dg/group2/FUNCTION_SQRT.cob: Likewise. - * cobol.dg/group2/FUNCTION_STANDARD-DEVIATION.cob: Likewise. - * cobol.dg/group2/FUNCTION_SUBSTITUTE-CASE.cob: Likewise. - * cobol.dg/group2/FUNCTION_SUBSTITUTE-CASE_with_reference_mod.cob: Likewise. - * cobol.dg/group2/FUNCTION_SUBSTITUTE.cob: Likewise. - * cobol.dg/group2/FUNCTION_SUBSTITUTE_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_SUM.cob: Likewise. - * cobol.dg/group2/FUNCTION_TAN.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-DATE-YYYYMMDD.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__1_.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__2_.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_additional.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_DP.COMMA.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_dates.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_datetimes.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_times.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-NUMVAL-C.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-NUMVAL.cob: Likewise. - * cobol.dg/group2/FUNCTION_TEST-NUMVAL-F.cob: Likewise. - * cobol.dg/group2/FUNCTION_TRIM.cob: Likewise. - * cobol.dg/group2/FUNCTION_TRIM_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_TRIM_zero_length.cob: Likewise. - * cobol.dg/group2/FUNCTION_UPPER-CASE.cob: Likewise. - * cobol.dg/group2/FUNCTION_UPPER-CASE_with_reference_modding.cob: Likewise. - * cobol.dg/group2/FUNCTION_VARIANCE.cob: Likewise. - * cobol.dg/group2/FUNCTION_WHEN-COMPILED.cob: Likewise. - * cobol.dg/group2/FUNCTION_YEAR-TO-YYYY.cob: Likewise. - * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__2_.cob: Likewise. - * cobol.dg/group2/Program-to-program_parameters_and_retvals.cob: Likewise. - * cobol.dg/group2/Recursive_FUNCTION_with_local-storage.cob: Likewise. - * cobol.dg/group2/Repository_functions_clause.cob: Likewise. - * cobol.dg/group2/UDF_fibonacci_recursion.cob: Likewise. - * cobol.dg/group2/UDF_in_COMPUTE.cob: Likewise. - * cobol.dg/group2/UDF_RETURNING_group_and_PIC_9_5_.cob: Likewise. - * cobol.dg/group2/UDF_with_recursion.cob: Likewise. - * cobol.dg/group2/call_subprogram_using_pointer__passing_pointer.out: New known-good file. - * cobol.dg/group2/FUNCTION_ABS.out: Likewise. - * cobol.dg/group2/FUNCTION_ALL_INTRINSIC_simple_test.out: Likewise. - * cobol.dg/group2/FUNCTION_as_CALL_parameter_BY_CONTENT.out: Likewise. - * cobol.dg/group2/FUNCTION_BIGGER-POINTER__2_.out: Likewise. - * cobol.dg/group2/FUNCTION_BIGGER-POINTER.out: Likewise. - * cobol.dg/group2/FUNCTION_BYTE-LENGTH.out: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-FILE.out: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-STATEMENT.out: Likewise. - * cobol.dg/group2/FUNCTION_EXCEPTION-STATUS.out: Likewise. - * cobol.dg/group2/FUNCTION_FORMATTED-DATE_TIME_DATETIME.out: Likewise. - * cobol.dg/group2/FUNCTION_HEX-OF.out: Likewise. - * cobol.dg/group2/FUNCTION_LENGTH__2_.out: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-DATE.out: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-TIME-FROM-SECONDS.out: Likewise. - * cobol.dg/group2/FUNCTION_LOCALE-TIME.out: Likewise. - * cobol.dg/group2/FUNCTION_MAX.out: Likewise. - * cobol.dg/group2/FUNCTION_MEAN.out: Likewise. - * cobol.dg/group2/FUNCTION_MEDIAN.out: Likewise. - * cobol.dg/group2/FUNCTION_MIDRANGE.out: Likewise. - * cobol.dg/group2/FUNCTION_MIN.out: Likewise. - * cobol.dg/group2/FUNCTION_MODULE-NAME.out: Likewise. - * cobol.dg/group2/FUNCTION_NUMVAL-F.out: Likewise. - * cobol.dg/group2/FUNCTION_ORD-MAX.out: Likewise. - * cobol.dg/group2/FUNCTION_ORD-MIN.out: Likewise. - * cobol.dg/group2/FUNCTION_ORD.out: Likewise. - * cobol.dg/group2/FUNCTION_PRESENT-VALUE.out: Likewise. - * cobol.dg/group2/FUNCTION_SUBSTITUTE.out: Likewise. - * cobol.dg/group2/FUNCTION_TEST-DATE-YYYYMMDD.out: Likewise. - * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__1_.out: Likewise. - * cobol.dg/group2/FUNCTION_TRIM.out: Likewise. - * cobol.dg/group2/FUNCTION_TRIM_with_reference_modding.out: Likewise. - * cobol.dg/group2/FUNCTION_TRIM_zero_length.out: Likewise. - * cobol.dg/group2/Program-to-program_parameters_and_retvals.out: Likewise. - * cobol.dg/group2/Recursive_FUNCTION_with_local-storage.out: Likewise. - * cobol.dg/group2/Repository_functions_clause.out: Likewise. - * cobol.dg/group2/UDF_fibonacci_recursion.out: Likewise. - * cobol.dg/group2/UDF_in_COMPUTE.out: Likewise. - * cobol.dg/group2/UDF_RETURNING_group_and_PIC_9_5_.out: Likewise. - * cobol.dg/group2/UDF_with_recursion.out: Likewise. - -2025-04-04 Jason Merrill <jason@redhat.com> - - PR c++/99546 - PR c++/113925 - PR c++/106976 - PR c++/109961 - PR c++/117336 - * g++.dg/cpp2a/lambda-requires2.C: New test. - * g++.dg/cpp2a/lambda-requires3.C: New test. - * g++.dg/cpp2a/lambda-requires4.C: New test. - * g++.dg/cpp2a/lambda-requires5.C: New test. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR gcov-profile/119618 - * c-c++-common/pr119618.c: New test. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119616 - * c-c++-common/pr119616.c: New test. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119613 - * g++.dg/opt/pr119613.C: New test. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR target/115910 - * gcc.target/i386/pr115910.c: New test. - -2025-04-04 Patrick Palka <ppalka@redhat.com> - - PR c++/117849 - * g++.dg/cpp2a/concepts-requires41.C: New test. - -2025-04-04 Andrew Pinski <quic_apinski@quicinc.com> - - PR ipa/119599 - * gcc.dg/torture/pr119599-1.c: New test. - * gcc.dg/builtin-apply5.c: New test. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR preprocessor/119391 - * g++.dg/cpp/pr119391.C: New test. - -2025-04-04 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/mve/mve.exp: Save dg-do-what-default before - changing it. Restore it once done. - -2025-04-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119614 - * c-c++-common/pr119614-1.c: New test. - * c-c++-common/pr119614-2.c: New test. - * c-c++-common/pr119614-3.c: New test. - -2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119573 - * gcc.c-torture/compile/pr46534.c: Don't 'dg-skip-if' nvptx. - * gcc.target/nvptx/decl.c: Adjust. - -2025-04-03 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp2a/spaceship-rewrite6.C: New test. - -2025-04-03 Victor Do Nascimento <victor.donascimento@arm.com> - - PR testsuite/118597 - * gcc.dg/vect/vect-fncall-mask.c: Update test directives. - -2025-04-03 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_LEADING.cob: New testcase. - * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_TRAILING.cob: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_CONVERTING.cob: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_REPLACING.cob: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_TALLYING.cob: Likewise. - * cobol.dg/group2/INSPECT_CONVERTING_NULL.cob: Likewise. - * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constant.cob: Likewise. - * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_1.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_2.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_3.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_4.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5-f.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5-r.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_6.cob: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_7.cob: Likewise. - * cobol.dg/group2/INSPECT_No_repeat_conversion_check.cob: Likewise. - * cobol.dg/group2/INSPECT_REPLACING_figurative_constant.cob: Likewise. - * cobol.dg/group2/INSPECT_REPLACING_LEADING_ZEROS_BY_SPACES.cob: Likewise. - * cobol.dg/group2/INSPECT_TALLYING_AFTER.cob: Likewise. - * cobol.dg/group2/INSPECT_TALLYING_BEFORE.cob: Likewise. - * cobol.dg/group2/INSPECT_TALLYING_REPLACING_ISO_Example.cob: Likewise. - * cobol.dg/group2/INSPECT_TRAILING.cob: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_LEADING.out: New known-good result. - * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_TRAILING.out: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_CONVERTING.out: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_REPLACING.out: Likewise. - * cobol.dg/group2/INSPECT_BACKWARD_simple_TALLYING.out: Likewise. - * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_1.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_2.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_3.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_4.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5-f.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_5-r.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_6.out: Likewise. - * cobol.dg/group2/INSPECT_ISO_Example_7.out: Likewise. - * cobol.dg/group2/INSPECT_TALLYING_REPLACING_ISO_Example.out: Likewise. - * cobol.dg/group2/INSPECT_TRAILING.out: Likewise. - -2025-04-03 Andrew Pinski <quic_apinski@quicinc.com> - Jakub Jelinek <jakub@redhat.com> - - PR c++/119563 - * g++.dg/cpp0x/pr119563.C: New test. - * g++.dg/cpp/embed-26.C: New test. - -2025-04-03 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.dg/guality/pr90074.c: Remove xfail for aarch64. - * gcc.dg/guality/pr90716.c: Likewise. - -2025-04-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/pr111673.c (dg-options): Add - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. - * gcc.target/i386/pr82142a.c: Likewise. - * gcc.target/i386/pr82142b.c (dg-options): Add -mno-stackrealign - -fasynchronous-unwind-tables -fdwarf2-cfi-asm. - -2025-04-03 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/riscv/rvv/base/vwaddsub-1.c: Require rv64. - -2025-04-03 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/riscv/mcpu-xiangshan-nanhu.c: Skip on non-rv64. - -2025-04-03 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/113281 - * gcc.dg/vect/costmodel/riscv/rvv/pr113281-1.c: XFAIL. - * gcc.dg/vect/costmodel/riscv/rvv/pr113281-2.c: Likewise. - * gcc.dg/vect/costmodel/riscv/rvv/pr113281-5.c: Likewise. - -2025-04-03 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on riscv lp64. - -2025-04-03 Hongyu Wang <hongyu.wang@intel.com> - - PR target/119539 - * gcc.target/i386/apx-nf-pr119539.c: New test. - -2025-04-02 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/zba-shNadd-09.c: New test. - * gcc.target/riscv/zba-shNadd-10.c: New test. - -2025-04-02 John David Anglin <danglin@gcc.gnu.org> - - * g++.dg/modules/pr98893_b.C: xfail __tcf_ZL1b - assembler check on hppa*-*-hpux*. - -2025-04-02 John David Anglin <danglin@gcc.gnu.org> - - * g++.dg/abi/abi-tag18a.C: Skip on hppa*-*-hpux*. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119491 - * g++.dg/opt/musttail3.C: New test. - * g++.dg/opt/musttail4.C: New test. - * g++.dg/opt/musttail5.C: New test. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - PR c/119582 - * gcc.dg/asan/pr119582.c: New test. - -2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118965 - * c-c++-common/gomp/append-args-1.c: Add target/targetsync - modifiers so tests do what they were previously supposed to do. - Adjust expected output. - * c-c++-common/gomp/append-args-7.c: Likewise. - * c-c++-common/gomp/append-args-8.c: Likewise. - * c-c++-common/gomp/append-args-9.c: Likewise. - * c-c++-common/gomp/interop-1.c: Likewise. - * c-c++-common/gomp/interop-2.c: Likewise. - * c-c++-common/gomp/interop-3.c: Likewise. - * c-c++-common/gomp/interop-4.c: Likewise. - * c-c++-common/gomp/pr118965-1.c: New. - * c-c++-common/gomp/pr118965-2.c: New. - * g++.dg/gomp/append-args-1.C: Add target/targetsync modifiers - and adjust expected output. - * g++.dg/gomp/append-args-2.C: Likewise. - * g++.dg/gomp/append-args-6.C: Likewise. - * g++.dg/gomp/append-args-7.C: Likewise. - * g++.dg/gomp/append-args-8.C: Likewise. - * g++.dg/gomp/interop-5.C: Likewise. - * gfortran.dg/gomp/append_args-1.f90: Add target/targetsync - modifiers and adjust expected output. - * gfortran.dg/gomp/append_args-2.f90: Likewise. - * gfortran.dg/gomp/append_args-3.f90: Likewise. - * gfortran.dg/gomp/append_args-4.f90: Likewise. - * gfortran.dg/gomp/interop-1.f90: Likewise. - * gfortran.dg/gomp/interop-2.f90: Likewise. - * gfortran.dg/gomp/interop-3.f90: Likewise. - * gfortran.dg/gomp/interop-4.f90: Likewise. - * gfortran.dg/gomp/pr118965-1.f90: New. - * gfortran.dg/gomp/pr118965-2.f90: New. - -2025-04-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119586 - * gcc.dg/vect/pr119586.c: New testcase. - -2025-04-02 Jonathan Yong <10walls@gmail.com> - - * gcc.dg/analyzer/torture/switch-3.c: Fix llp64 warnings. - -2025-04-02 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * c-c++-common/musttail8.c: Expect a warning rather than error in one - case. - (f4): Add int * argument. - * c-c++-common/musttail15.c: Don't disallow for C++98. - * c-c++-common/musttail16.c: Likewise. - * c-c++-common/musttail17.c: Likewise. - * c-c++-common/musttail18.c: Likewise. - * c-c++-common/musttail19.c: Likewise. Expect a warning rather than - error in one case. - (f4): Add int * argument. - * c-c++-common/musttail20.c: Don't disallow for C++98. - * c-c++-common/musttail21.c: Likewise. - * c-c++-common/musttail28.c: New test. - * c-c++-common/musttail29.c: New test. - * c-c++-common/musttail30.c: New test. - * c-c++-common/musttail31.c: New test. - * g++.dg/ext/musttail1.C: New test. - * g++.dg/ext/musttail2.C: New test. - * g++.dg/ext/musttail3.C: New test. - -2025-04-02 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/119556 - * gcc.target/arm/short-vfp-1.c: Add missing spaces. - -2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119551 - * g++.dg/modules/internal-5_a.C: Add cases that should be - ignored. - * g++.dg/modules/internal-5_b.C: Test these new cases, and make - the testcase more robust. - * g++.dg/modules/internal-11.C: New test. - * g++.dg/modules/internal-12_a.C: New test. - * g++.dg/modules/internal-12_b.C: New test. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119493 - * gcc.dg/pr119493-1.c: New test. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119291 - * gcc.c-torture/execute/pr119291.c: New test. - -2025-04-01 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rv32i_zcmp.c: Tweak testcase for PIE. - * gcc.target/riscv/rv32e_zcmp.c: Likewise. - * gcc.target/riscv/zcmp_stack_alignment.c: Likewise. - * gcc.target/riscv/cm_mv_rv32.c: Likewise. - * gcc.target/riscv/cpymem-64.c: Likewise. - * gcc.target/riscv/fmax-snan.c: Likewise. - * gcc.target/riscv/fmaxf-snan.c: Likewise. - * gcc.target/riscv/fmin-snan.c: Likewise. - * gcc.target/riscv/fminf-snan.c: Likewise. - * gcc.target/riscv/large-model.c: Likewise. - * gcc.target/riscv/predef-1.c: Likewise. - * gcc.target/riscv/predef-4.c: Likewise. - * gcc.target/riscv/predef-7.c: Likewise. - * gcc.target/riscv/predef-9.c: Likewise. - * gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c: Likewise. - * gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c: Likewise. - * gcc.target/riscv/rvv/base/abi-callee-saved-2.c: Likewise. - * gcc.target/riscv/rvv/base/cmpmem-1.c: Likewise. - * gcc.target/riscv/rvv/base/cmpmem-3.c: Likewise. - * gcc.target/riscv/rvv/base/cmpmem-4.c: Likewise. - * gcc.target/riscv/rvv/base/cpymem-1.c: Likewise. - * gcc.target/riscv/rvv/base/movmem-1.c: Likewise. - * gcc.target/riscv/rvv/base/pr114352-3.c: Likewise. - * gcc.target/riscv/rvv/base/setmem-1.c: Likewise. - * gcc.target/riscv/rvv/base/setmem-2.c: Likewise. - * gcc.target/riscv/rvv/base/setmem-3.c: Likewise. - * gcc.target/riscv/rvv/base/spill-9.c: Likewise. - * g++.target/riscv/mv-symbols1.C: Likewise. - * g++.target/riscv/mv-symbols3.C: Likewise. - * g++.target/riscv/mv-symbols4.C: Likewise. - * g++.target/riscv/mv-symbols5.C: Likewise. - * g++.target/riscv/mvc-symbols1.C: Likewise. - * g++.target/riscv/mvc-symbols3.C: Likewise. - -2025-04-01 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119534 - * gcc.dg/vect/pr119534.c: New testcase. - -2025-04-01 Marek Polacek <polacek@redhat.com> - - PR c++/119383 - * g++.dg/cpp0x/temp-extend3.C: New test. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR gcov-profile/119535 - * c-c++-common/pr119535.c: New test. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119493 - * gcc.dg/pr119493-2.c: New test. - -2025-04-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119537 - * c-c++-common/pr119537-1.c: New test. - * c-c++-common/pr119537-2.c: New test. - -2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119369 - * g++.dg/abi/pure-virtual1.C: 'dg-xfail-if' GCN. - * g++.dg/cpp0x/pr84497.C: 'dg-skip-if' GCN. - * g++.dg/ext/weak2.C: Likewise. - * gcc.dg/attr-weakref-1.c: Likewise. - * gcc.dg/weak/weak-1.c: Likewise. - * gcc.dg/weak/weak-12.c: Likewise. - * gcc.dg/weak/weak-15.c: Likewise. - * gcc.dg/weak/weak-16.c: Likewise. - * gcc.dg/weak/weak-2.c: Likewise. - * gcc.dg/weak/weak-3.c: Likewise. - * gcc.dg/weak/weak-4.c: Likewise. - * gcc.dg/weak/weak-5.c: Likewise. - -2025-04-01 Richard Biener <rguenther@suse.de> - - PR target/119549 - * gcc.target/i386/pr119549.c: New testcase. - -2025-04-01 Liao Shihua <shihua@iscas.ac.cn> - - * gcc.target/riscv/cmo-zicbop-1.c: Fix missing { before target . - * gcc.target/riscv/cmo-zicbop-2.c: Likewise. - * gcc.target/riscv/prefetch-zicbop.c:Likewise. - * gcc.target/riscv/prefetch-zihintntl.c:Likewise. - -2025-04-01 Hu, Lin1 <lin1.hu@intel.com> - Hongyu Wang <hongyu.wang@intel.com> - - PR target/119473 - * gcc.target/i386/pr119473.c: New test. - -2025-04-01 Monk Chiang <monk.chiang@sifive.com> - Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/autovec/pr111391-2.c: Update test. - * gcc.target/riscv/rvv/base/abi-14.c: Update test. - * gcc.target/riscv/rvv/base/abi-16.c: Update test. - * gcc.target/riscv/rvv/base/abi-18.c: Update test. - * gcc.target/riscv/rvv/base/vsetvl_zve32-1.c: New test. - * gcc.target/riscv/rvv/base/vsetvl_zve32-2.c: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3613.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3606.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3605.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3614.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3615.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3563.rs: New test. - -2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro43.rs: Adjust test to pass with - name resolution 2.0. - * rust/compile/nr2/exclude: Remove macros/mbe/macro43.rs. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3588.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3552.rs: New test. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/self_import_namespace.rs: New test. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove now passing tests from exclusion - list. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3554-1.rs: New test. - * rust/compile/issue-3554-2.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 puts out a different error multiple times - * rust/compile/issue-3568.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3566-1.rs: New test. - * rust/compile/issue-3566-2.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3553.rs: New test. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3567.rs: New test. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-2905-2.rs: Import from core library into a single - file misses the crate directives. - -2025-03-31 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3242.rs: no longer skip the test - -2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-3541-1.rs: New test. - * rust/compile/issue-3541-2.rs: Likewise. - -2025-03-31 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/cfg-core1.rs: New test. - * rust/compile/cfg-core2.rs: New test. - -2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/issue-3549.rs: New test. - -2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/const_generics_3.rs: Modify test to run with name - resolution 2.0 only and to handle the absence of a bogus - resolution error. - * rust/compile/nr2/exclude: Remove const_generics_3.rs. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove test from exclusion list. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/issue-2330.rs: Use complete path from crate root. - * rust/compile/issue-1901.rs: Likewise. - * rust/compile/issue-1981.rs: Likewise. - * rust/compile/iterators1.rs: Likewise. - * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. - * rust/compile/for-loop1.rs: Likewise. - * rust/compile/for-loop2.rs: Likewise. - * rust/compile/torture/builtin_abort.rs: Likewise. - * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. - -2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/feature_rust_attri0.rs: Add extern - function declaration and change name to printf. - * rust/compile/nr2/exclude: Remove now passing test from exclusion - list. - -2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117002 - * gdc.dg/torture/pr117002.d: New test. - -2025-03-31 Marek Polacek <polacek@redhat.com> - - PR c++/116960 - PR c++/119303 - * g++.dg/cpp2a/lambda-uneval26.C: New test. - * g++.dg/warn/undefined2.C: New test. - -2025-03-31 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com> - - * gcc.target/aarch64/no-sve-with-sme-1.c: New. - * gcc.target/aarch64/no-sve-with-sme-2.c: New. - * gcc.target/aarch64/no-sve-with-sme-3.c: New. - * gcc.target/aarch64/no-sve-with-sme-4.c: New. - * gcc.target/aarch64/pragma_cpp_predefs_4.c: Pass +sve2 to existing - +sme pragma. - * gcc.target/aarch64/sve/acle/general-c/binary_int_opt_single_n_2.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_opt_single_n_2.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_single_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_int_opt_single_1.c: - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_2.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_3.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_4.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_2.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_3.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_uint_opt_single_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/binaryxn_2.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/clamp_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/compare_scalar_count_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_int_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_lane_2.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_uint_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/shift_right_imm_narrowxn_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/storexn_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/ternary_qq_or_011_lane_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_narrow_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_narrowt_1.c: - Likewise. - * gcc.target/aarch64/sve/acle/general-c/unary_za_slice_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/unaryxn_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/write_za_1.c: Likewise. - * gcc.target/aarch64/sve/acle/general-c/write_za_slice_1.c: Likewise. - -2025-03-31 Jason Merrill <jason@redhat.com> - - PR c++/119401 - * g++.dg/cpp2a/lambda-targ11.C: New test. - * g++.dg/cpp2a/lambda-targ12.C: New file. - -2025-03-31 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119532 - * gcc.dg/torture/pr119532.c: New testcase. - -2025-03-31 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/vect-fmaxmin-2.c: New compile test. Split from ... - * gcc.target/arm/vect-fmaxmin.c: ... here. Remove scan-assembler - subtests. For both, add -funsafe-math-optimizations. - -2025-03-31 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR middle-end/119442 - * gcc.target/aarch64/vls_sve_vec_dup_1.c: New test. - -2025-03-31 Jakub Jelinek <jakub@redhat.com> - - PR c++/119518 - * g++.dg/opt/pr119518.C: New test. - -2025-03-30 Jan Hubicka <hubicka@ucw.cz> - - * g++.dg/tree-ssa/pr80331.C: New test. - * g++.dg/tree-ssa/pr87502.C: New test. - -2025-03-30 Jakub Jelinek <jakub@redhat.com> - - * gcc.target/aarch64/atomic-inst-ldlogic.c: Fix another - unbalanced {} directive problem. Add space after all - scan-assembler-times counts. - -2025-03-30 Mariam Arutunian <mariamarutunian@gmail.com> - - * gcc.target/aarch64/crc-crc32c-data16.c: Fix iteration - count to match testname. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - PR target/117759 - * gcc.target/alpha/memclr-a2-o1-c9-ptr.c: Add - `-mno-safe-partial'. - * gcc.target/alpha/memclr-a2-o1-c9-ptr-safe-partial.c: New file. - * gcc.target/alpha/memcpy-di-unaligned-dst.c: New file. - * gcc.target/alpha/memcpy-di-unaligned-dst-safe-partial.c: New - file. - * gcc.target/alpha/memcpy-di-unaligned-dst-safe-partial-bwx.c: - New file. - * gcc.target/alpha/memcpy-si-unaligned-dst.c: New file. - * gcc.target/alpha/memcpy-si-unaligned-dst-safe-partial.c: New - file. - * gcc.target/alpha/memcpy-si-unaligned-dst-safe-partial-bwx.c: - New file. - * gcc.target/alpha/stlx0.c: Add `-mno-safe-partial'. - * gcc.target/alpha/stlx0-safe-partial.c: New file. - * gcc.target/alpha/stlx0-safe-partial-bwx.c: New file. - * gcc.target/alpha/stqx0.c: Add `-mno-safe-partial'. - * gcc.target/alpha/stqx0-safe-partial.c: New file. - * gcc.target/alpha/stqx0-safe-partial-bwx.c: New file. - * gcc.target/alpha/stwx0.c: Add `-mno-safe-partial'. - * gcc.target/alpha/stwx0-bwx.c: Add `-mno-safe-partial'. Refer - to stwx0.c rather than copying its code and also verify no LDQ_U - or STQ_U instructions have been produced. - * gcc.target/alpha/stwx0-safe-partial.c: New file. - * gcc.target/alpha/stwx0-safe-partial-bwx.c: New file. - -2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> - - PR target/117759 - * gcc.target/alpha/stb.c: New file. - * gcc.target/alpha/stb-bwa.c: New file. - * gcc.target/alpha/stb-bwx.c: New file. - * gcc.target/alpha/stba.c: New file. - * gcc.target/alpha/stba-bwa.c: New file. - * gcc.target/alpha/stba-bwx.c: New file. - * gcc.target/alpha/stw.c: New file. - * gcc.target/alpha/stw-bwa.c: New file. - * gcc.target/alpha/stw-bwx.c: New file. - * gcc.target/alpha/stwa.c: New file. - * gcc.target/alpha/stwa-bwa.c: New file. - * gcc.target/alpha/stwa-bwx.c: New file. - -2025-03-30 Tobias Burnus <tburnus@baylibre.com> - - * g++.dg/gomp/append-args-8.C: Remove bogus '3' after \.\[0-9\]+ - pattern. - -2025-03-29 Sam James <sam@gentoo.org> - - * gcc.target/arm/short-vfp-1.c: Add whitespace around brace. - -2025-03-29 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/friend-9_a.C: New test. - * g++.dg/modules/friend-9_b.C: New test. - -2025-03-29 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118961 - * g++.dg/modules/lto-1.h: New test. - * g++.dg/modules/lto-1_a.H: New test. - * g++.dg/modules/lto-1_b.C: New test. - * g++.dg/modules/lto-1_c.C: New test. - * g++.dg/modules/lto-2_a.H: New test. - * g++.dg/modules/lto-2_b.C: New test. - * g++.dg/modules/lto-3_a.H: New test. - * g++.dg/modules/lto-3_b.C: New test. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/opt/musttail2.C (foo): Define the function instead of - just declaring it, add [[gnu::noipa]] attribute to it. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - * lib/gfortran-dg.exp: Don't cycle through the option list if - dg-options or dg-additional-options contains -O after space, tab, - double quote or open curly bracket. - * gfortran.dg/cray_pointers_2.f90: Remove extraneous space between - dg-do and run and remove comment about it. - -2025-03-28 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119504 - * gm2/iso/fail/conststrarray2.mod: New test. - * gm2/iso/run/pass/constarray2.mod: New test. - * gm2/pim/pass/hexstring.mod: New test. - -2025-03-28 Andrew MacLeod <amacleod@redhat.com> - - * gcc.dg/pr110992.c: New. - * gcc.dg/pr119471.c: New. - -2025-03-28 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/119133 - * gcc.dg/torture/pr119133.c: Add options for float16. - -2025-03-28 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group2/Complex_EVALUATE__1_.cob: New EVALUTE testcase. - * cobol.dg/group2/Complex_EVALUATE__2_.cob: Likewise. - * cobol.dg/group2/EVALUATE_WHEN_NEGATIVE.cob: Likewise. - * cobol.dg/group2/EVALUATE_condition__2_.cob: Likewise. - * cobol.dg/group2/EVALUATE_doubled_WHEN.cob: Likewise. - * cobol.dg/group2/EVALUATE_with_WHEN_using_condition-1.cob: Likewise. - * cobol.dg/group2/Complex_EVALUATE__1_.out: Known-good data for testcase. - * cobol.dg/group2/Complex_EVALUATE__2_.out: Likewise. - * cobol.dg/group2/EVALUATE_WHEN_NEGATIVE.out: Likewise. - * cobol.dg/group2/EVALUATE_condition__2_.out: Likewise. - * cobol.dg/group2/EVALUATE_doubled_WHEN.out: Likewise. - * cobol.dg/group2/EVALUATE_with_WHEN_using_condition-1.out: Likewise. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119483 - * c-c++-common/pr119483-1.c: New test. - * c-c++-common/pr119483-2.c: New test. - -2025-03-28 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119484 - * c-c++-common/pr119484.c: New test. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.target/riscv/cmo-zicbop-1.c: Fix missing space before - trailing } in dg-do directive. - * gcc.target/riscv/cmo-zicbop-2.c: Likewise. - * gcc.target/riscv/prefetch-zicbop.c: Likewise. - * gcc.target/riscv/prefetch-zihintntl.c: Likewise. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.target/i386/strub-pr118006.c: Fix ordering of dg-do and - dg-require- directive so that dg-do is first. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.target/arm/cmse/cmse-17.c: Fix missing space before trailing - "}" in dg-options. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * gcc.target/aarch64/saturating_arithmetic_1.c: Fix dg-do compile. - * gcc.target/aarch64/saturating_arithmetic_2.c: Likewise. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * g++.dg/abi/pure-virtual1.C: Fix dg-require-weak directive. - * g++.target/i386/mangling-alias1.C: Fix dg-require-ifunc - directive. - -2025-03-27 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__1_.cob: New testcase. - * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__2_.cob: Likewise. - * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__1_.cob: Likewise. - * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.cob: Likewise. - * cobol.dg/group2/COMP-6_arithmetic.cob: Likewise. - * cobol.dg/group2/COMP-6_numeric_test.cob: Likewise. - * cobol.dg/group2/COMP-6_used_with_DISPLAY.cob: Likewise. - * cobol.dg/group2/COMP-6_used_with_MOVE.cob: Likewise. - * cobol.dg/group2/COMPUTE_multiplication_to_FIX4.cob: Likewise. - * cobol.dg/group2/DISPLAY__Sign_ASCII__2_.cob: Likewise. - * cobol.dg/group2/DISPLAY__Sign_ASCII.cob: Likewise. - * cobol.dg/group2/Floating_continuation_indicator__1_.cob: Likewise. - * cobol.dg/group2/floating-point_ADD_FORMAT_1.cob: Likewise. - * cobol.dg/group2/floating-point_ADD_FORMAT_2.cob: Likewise. - * cobol.dg/group2/floating-point_DIVIDE_FORMAT_1.cob: Likewise. - * cobol.dg/group2/floating-point_DIVIDE_FORMAT_2.cob: Likewise. - * cobol.dg/group2/floating-point_literals.cob: Likewise. - * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_1.cob: Likewise. - * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_2.cob: Likewise. - * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_1.cob: Likewise. - * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_2.cob: Likewise. - * cobol.dg/group2/IBM_dialect_COMP_redefined_by_POINTER_as_64-bit.cob: Likewise. - * cobol.dg/group2/Indicators_______________-____D__.cob: Likewise. - * cobol.dg/group2/MULTIPLY_to_FIX4.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_arithmetic.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__1_.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__2_.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_dump.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_numeric_test__1_.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_numeric_test__2_.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_DISPLAY.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_INITIALIZE.cob: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_MOVE.cob: Likewise. - * cobol.dg/group2/POINTER__display.cob: Likewise. - * cobol.dg/group2/Simple_floating-point_MOVE.cob: Likewise. - * cobol.dg/group2/Simple_floating-point_VALUE_and_MOVE.cob: Likewise. - * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.out: Known-good result. - * cobol.dg/group2/COMP-6_arithmetic.out: Likewise. - * cobol.dg/group2/COMP-6_numeric_test.out: Likewise. - * cobol.dg/group2/COMP-6_used_with_DISPLAY.out: Likewise. - * cobol.dg/group2/COMP-6_used_with_MOVE.out: Likewise. - * cobol.dg/group2/COMPUTE_multiplication_to_FIX4.out: Likewise. - * cobol.dg/group2/DISPLAY__Sign_ASCII__2_.out: Likewise. - * cobol.dg/group2/DISPLAY__Sign_ASCII.out: Likewise. - * cobol.dg/group2/Floating_continuation_indicator__1_.out: Likewise. - * cobol.dg/group2/floating-point_ADD_FORMAT_1.out: Likewise. - * cobol.dg/group2/floating-point_ADD_FORMAT_2.out: Likewise. - * cobol.dg/group2/floating-point_DIVIDE_FORMAT_1.out: Likewise. - * cobol.dg/group2/floating-point_DIVIDE_FORMAT_2.out: Likewise. - * cobol.dg/group2/floating-point_literals.out: Likewise. - * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_1.out: Likewise. - * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_2.out: Likewise. - * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_1.out: Likewise. - * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_2.out: Likewise. - * cobol.dg/group2/IBM_dialect_COMP_redefined_by_POINTER_as_64-bit.out: Likewise. - * cobol.dg/group2/Indicators_______________-____D__.out: Likewise. - * cobol.dg/group2/MULTIPLY_to_FIX4.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_arithmetic.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__1_.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__2_.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_dump.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_numeric_test__1_.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_numeric_test__2_.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_DISPLAY.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_INITIALIZE.out: Likewise. - * cobol.dg/group2/PACKED-DECIMAL_used_with_MOVE.out: Likewise. - * cobol.dg/group2/POINTER__display.out: Likewise. - * cobol.dg/group2/Simple_floating-point_MOVE.out: Likewise. - * cobol.dg/group2/Simple_floating-point_VALUE_and_MOVE.out: Likewise. - -2025-03-27 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/strub-internal-pr112938.C: Add dg-warning for c++20. - -2025-03-27 Marek Polacek <polacek@redhat.com> - - * g++.dg/template/explicit-args6.C: Remove an extra set of {} in - a dg-message. - -2025-03-27 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.misc-tests/gcov-31.c: Require effective target sigsetjmp. - * gcc.misc-tests/gcov-32.c: Ditto. - -2025-03-27 Marek Polacek <polacek@redhat.com> - - * g++.dg/tree-ssa/initlist-opt2.C: Match _M_range_initialize_n - instead of _M_range_initialize. - -2025-03-27 Sam James <sam@gentoo.org> - - * gfortran.dg/cray_pointers_2.f90: Restore whitespace. - -2025-03-27 Edwin Lu <ewlu@rivosinc.com> - - * gcc.target/riscv/rvv/autovec/vls/merge-4.c: Fix typo - -2025-03-27 Sam James <sam@gentoo.org> - - * gcc.target/aarch64/atomic-inst-ldlogic.c: Add another closing brace. - -2025-03-27 Sam James <sam@gentoo.org> - - * gcc.dg/analyzer/fd-datagram-socket.c: Fix 'dg-message' spelling. - * gcc.dg/analyzer/out-of-bounds-zero.c: Fix whitespace in 'dg-additional-options'. - * gcc.dg/analyzer/strchr-1.c: Fix 'dg-message' whitespace. - * gnat.dg/sso/q11.adb: Fix 'dg-output' whitespace. - -2025-03-27 Sam James <sam@gentoo.org> - - * g++.dg/warn/Winvalid-memory-model.C: Fix typo in comment. - * gcc.dg/builtin-dynamic-object-size-19.c: Ditto. - * gcc.dg/builtin-object-size-19.c: Ditto. - * gcc.dg/strlenopt-40.c: Ditto. - * gcc.dg/strlenopt-44.c: Ditto. - * gcc.dg/strlenopt-45.c: Ditto. - * gcc.dg/strlenopt-50.c: Ditto. - * gcc.dg/strlenopt-51.c: Ditto. - * gcc.dg/strlenopt-52.c: Ditto. - * gcc.dg/strlenopt-53.c: Ditto. - * gcc.dg/strlenopt-54.c: Ditto. - * gcc.dg/strlenopt-55.c: Ditto. - * gcc.dg/strlenopt-58.c: Ditto. - * gcc.dg/strlenopt-59.c: Ditto. - * gcc.dg/strlenopt-62.c: Ditto. - * gcc.dg/strlenopt-65.c: Ditto. - * gcc.dg/strlenopt-70.c: Ditto. - * gcc.dg/strlenopt-72.c: Ditto. - * gcc.dg/strlenopt-73.c: Ditto. - * gcc.dg/strlenopt-77.c: Ditto. - * gcc.dg/strlenopt-82.c: Ditto. - * gcc.dg/tree-ssa/builtin-snprintf-4.c: Ditto. - * gcc.dg/tree-ssa/builtin-snprintf-6.c: Ditto. - * gcc.dg/tree-ssa/builtin-snprintf-7.c: Ditto. - * gcc.dg/tree-ssa/builtin-sprintf-10.c: Ditto. - * gcc.dg/tree-ssa/builtin-sprintf-9.c: Ditto. - * gcc.dg/tree-ssa/phi-opt-value-5.c: Ditto. - * lib/multiline.exp: Ditto. - * lib/target-supports.exp: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - * c-c++-common/goacc/pr69916.c: Fix unusual whitespace in dg-*. - * g++.old-deja/g++.abi/vtable2.C: Ditto. - * g++.old-deja/g++.bugs/900330_02.C: Ditto. - * g++.old-deja/g++.bugs/900406_02.C: Ditto. - * g++.old-deja/g++.bugs/900519_13.C: Ditto. - * g++.old-deja/g++.mike/p9068.C: Ditto. - * gcc.dg/20040203-1.c: Ditto. - * gcc.dg/980502-1.c: Ditto. - * gcc.dg/ipa/ipa-sra-14.c: Ditto. - * gcc.dg/pr35468.c: Ditto. - * gcc.dg/pr82597.c: Ditto. - * gcc.dg/tree-ssa/phi-opt-7.c: Ditto. - * gfortran.dg/assumed_charlen_in_main.f90: Ditto. - * gfortran.dg/cray_pointers_2.f90: Ditto. - -2025-03-27 Tobias Burnus <tburnus@baylibre.com> - - * g++.dg/gomp/append-args-1.C: Remove expected dg-sorry. - * g++.dg/gomp/append-args-8.C: New test. - -2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118920 - * g++.dg/modules/attrib-3_a.H: New test. - * g++.dg/modules/attrib-3_b.C: New test. - * g++.dg/modules/pr118920.h: New test. - * g++.dg/modules/pr118920_a.H: New test. - * g++.dg/modules/pr118920_b.H: New test. - * g++.dg/modules/pr118920_c.C: New test. - -2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/118920 - * g++.dg/modules/tpl-friend-17.h: New test. - * g++.dg/modules/tpl-friend-17_a.C: New test. - * g++.dg/modules/tpl-friend-17_b.C: New test. - -2025-03-27 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/fmaxmin.c: Move scan-assembler checks to ... - * gcc.target/arm/fmaxmin-2.c: ... here. New test. - -2025-03-27 Hu, Lin1 <lin1.hu@intel.com> - - PR target/119425 - * gcc.target/i386/pr119425.c: New test. - Co-authered-by: Hongyu Wang <hongyu.wang@intel.com> - -2025-03-27 Martin Uecker <uecker@tugraz.at> - - PR c/118765 - * gcc.dg/pr118765-2.c: New test. - * gcc.dg/pr118765-3.c: New test. - * gcc.dg/typedef-redecl3.c: New test. - -2025-03-27 Lulu Cheng <chenglulu@loongson.cn> - - PR target/119408 - * gcc.target/loongarch/pr119408.c: New test. - -2025-03-27 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/append-args-interop.c: Fix declaration of base - function to be correct for pre-C23 dialects. - -2025-03-27 Sam James <sam@gentoo.org> - - PR testsuite/119489 - * g++.dg/strub-internal-pr112938.C: Adjust pattern. - -2025-03-27 Sam James <sam@gentoo.org> - - * gcc.target/arc/taux-1.c: Add missing brace. - * gcc.target/arc/taux-2.c: Ditto. - * gcc.target/i386/addr-space-1.c: Ditto. - * gcc.target/ia64/mfused-madd-vect.c: Ditto. - * gcc.target/ia64/mfused-madd.c: Ditto. - * gcc.target/ia64/mno-fused-madd-vect.c: Ditto. - * gcc.target/ia64/mno-fused-madd.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls-vlmax/merge-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/merge-4.c: Ditto. - * gcc.target/s390/target-attribute/tattr-1.c: Ditto. - * gcc.target/s390/target-attribute/tattr-2.c: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - PR target/98743 - PR tree-optimization/105820 - * g++.dg/cpp0x/udlit-namespace-ambiguous.C: Fix whitespace. - * g++.dg/cpp2a/constexpr-init21.C: Ditto. - * g++.dg/diagnostic/wrong-tag-1.C: Ditto. - * g++.dg/init/self1.C: Ditto. - * g++.dg/opt/pr98743.C: Add missing '}' to terminate dg directive. - * g++.dg/parse/error8.C: Fix whitespace. - * g++.dg/template/explicit-args6.C: Add missing '{' to begin dg directive. - * g++.dg/template/unify9.C: Fix whitespace. - * g++.dg/tree-ssa/pr105820.C: Ditto. - * g++.dg/warn/Wmismatched-tags-8.C: Add missing braces. - * gcc.dg/cpp/cmdlne-dM-M.c: Ditto. - * gcc.dg/tree-ssa/reassoc-32.c: Ditto. - * gcc.dg/tree-ssa/reassoc-33.c: Ditto. - * gcc.dg/tree-ssa/reassoc-34.c: Ditto. - * gcc.dg/tree-ssa/reassoc-35.c: Ditto. - * gcc.dg/tree-ssa/reassoc-36.c: Ditto. - * gcc.dg/tree-ssa/reassoc-39.c: Ditto. - * gcc.dg/tree-ssa/reassoc-41.c: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - * g++.dg/diagnostic/unclosed-extern-c.C: Fix 'dg-message' typo. - * g++.dg/warn/Wno-attributes-1.C: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - * g++.dg/cpp0x/gen-attrs-6.C: Surround 'target' by whitespace. - * gcc.target/aarch64/atomic-inst-ldlogic.c: Fix 'dg-final' whitespace. - * gcc.target/arm/short-vfp-1.c: Ditto. - * gcc.target/bfin/l2.c: Fix 'dg-bfin-processors' whitespace. - * gcc.target/i386/avx512fp16-vmovw-1b.c: Surround 'target' by whitespace. - * gcc.target/i386/sse2-float16-5.c: Ditto. - * gcc.target/powerpc/fold-vec-perm-longlong.c: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - PR middle-end/93437 - * g++.dg/warn/Wstringop-overflow-5.C: Fix -Wstringop-overflow casing. - -2025-03-27 Sam James <sam@gentoo.org> - - * gfortran.dg/associate_70.f90: Replace parenthesis with '}'. - * gfortran.dg/bessel_3.f90: Drop extraneous parenthesis. - * gfortran.dg/c_funloc_tests_6.f90: Ditto. - * gfortran.dg/parity_2.f90: Ditto. - -2025-03-27 Sam James <sam@gentoo.org> - - PR ipa/98265 - * g++.dg/tree-ssa/pr98265.C: Use -std=c++14. - Use scan-tree-dump instead of scan-tree-dump-times. - -2025-03-27 Sam James <sam@gentoo.org> - - PR tree-optimization/37143 - * g++.dg/vect/pr37143.C: Move to... - * g++.dg/vect/pr37143.cc: ...here. - -2025-03-27 Sam James <sam@gentoo.org> - - PR ipa/98265 - * gcc.dg/tree-ssa/pr98265.C: Move to... - * g++.dg/tree-ssa/pr98265.C: ...here. - -2025-03-27 Sam James <sam@gentoo.org> - - PR middle-end/112938 - * g++.dg/strub-internal-pr112938.cc: Move to... - * g++.dg/strub-internal-pr112938.C: ...here. - -2025-03-26 Jørgen Kvalsvik <j@lambda.is> - - * lib/gcov.exp: Add prime paths test function. - * g++.dg/gcov/gcov-22.C: New test. - * g++.dg/gcov/gcov-23-1.h: New test. - * g++.dg/gcov/gcov-23-2.h: New test. - * g++.dg/gcov/gcov-23.C: New test. - * gcc.misc-tests/gcov-29.c: New test. - * gcc.misc-tests/gcov-30.c: New test. - * gcc.misc-tests/gcov-31.c: New test. - * gcc.misc-tests/gcov-32.c: New test. - * gcc.misc-tests/gcov-33.c: New test. - * gcc.misc-tests/gcov-34.c: New test. - -2025-03-26 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118796 - * gfortran.dg/derived_result_4.f90: New test. - -2025-03-26 David Malcolm <dmalcolm@redhat.com> - - * gcc.target/powerpc/pr70243.c: Fix missing trailing " }" in - dg-do directive. - * gcc.target/powerpc/pr91903.c: Likewise. - -2025-03-26 David Malcolm <dmalcolm@redhat.com> - - * c-c++-common/gomp/metadirective-target-device-2.c: Fix missing - trailing " }" on dg-do directive. - * gcc.dg/gomp/attrs-21.c: Likewise for dg-options. - * gcc.dg/gomp/parallel-2.c: Drop ":" from dg-message. - -2025-03-26 David Malcolm <dmalcolm@redhat.com> - - * gcc.dg/ipa/pr110377.c: Fix missing trailing " }" in dg-do - directive. - * gcc.dg/plugin/infoleak-1.c: Fix dg-bogus directive. - * gcc.dg/pr101364-1.c: Fix missing trailing " }" in dg-options - directive. - * gcc.dg/pr113207.c: Fix dg-do. - * gcc.dg/sarif-output/include-chain-2.c: Fix ordering of dg-do - and dg-require-effective-target. - * gcc.dg/strub-pr118007.c: Likewise. - * gcc.dg/tanhbysinh.c: Fix missing whitespace after opening - brace and before closing brace in 6 dg-final directives. - * gcc.dg/uninit-pred-3_c.c: Fix missing whitespace after opening - brace in 6 dg-final directive. - * gcc.dg/uninit-pred-3_d.c: Likewise. - * gcc.dg/variable-sized-type-flex-array.c: Fix missing space - between dg-bogus and message in 2 places. - -2025-03-26 Jonathan Wakely <jwakely@redhat.com> - - * g++.dg/tree-ssa/initlist-opt1.C: Match _M_range_initialize_n - instead of _M_range_initialize. - -2025-03-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * c-c++-common/gomp/metadirective-device.c - (dg-additional-options): Use on all x86 targets. Restrict to lp64. - * c-c++-common/gomp/metadirective-target-device-1.c: Likewise. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - * gfortran.dg/gomp/append-args-interop.f90: Don't use omp_lib, - instead use iso_c_binding and define omp_interop_kind parameter - locally. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119417 - * gcc.dg/torture/pr119417.c: New test. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - Andi Kleen <ak@gcc.gnu.org> - - PR gcov-profile/118442 - * c-c++-common/pr118442.c: New test. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - PR target/55583 - PR target/119465 - * gcc.target/i386/pr55583.c: Add -mno-sse -mno-mmx to - dg-additional-options. Expect 4 shrdl and 2 shldl instructions on - ia32. - -2025-03-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/pr117946.c: Require dfp support. - * gcc.target/i386/pr118017.c: Likewise. Use - dg-require-effective-target for both this and int128. - -2025-03-26 Jakub Jelinek <jakub@redhat.com> - - PR target/119450 - * gcc.target/i386/pr119450.c: New test. - -2025-03-26 Richard Biener <rguenther@suse.de> - - PR middle-end/118795 - * g++.dg/torture/pr118795.C: New testcase. - -2025-03-26 Sam James <sam@gentoo.org> - Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/119382 - * gcc.dg/ipa/ipa-icf-40.c: New test. - -2025-03-26 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-convert-1.c: Modify function name - to follow the latest version. - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - -2025-03-25 Bob Dubner <rdubner@symas.com> - Richard Biener <rguenth@suse.de> - Jakub Jelinek <jakub@redhat.com> - James K. Lowden <jklowden@cobolworx.com> - Robert Dubner <rdubher@symas.com> - - * cobol.dg/literal1.cob: New testcase. - * cobol.dg/output1.cob: Likewise - * cobol.dg/data1.cob: New file. - -2025-03-25 Marek Polacek <polacek@redhat.com> - - PR c++/101881 - * g++.dg/ext/vector44.C: New test. - -2025-03-25 Simon Martin <simon@nasilyan.com> - - PR c++/114525 - * g++.dg/expr/cond18.C: New test. - -2025-03-25 yxj-github-437 <2457369732@qq.com> - - * g++.dg/cpp2a/lambda-uneval25.C: New test. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/mtp_1.c: Require arm32. - * gcc.target/arm/mtp_2.c: Likewise. - * gcc.target/arm/mtp_3.c: Likewise. - * gcc.target/arm/mtp_4.c: Likewise. - -2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/append-args-1.c: Adjust expected behavior. - * c-c++-common/gomp/append-args-interop.c: New. - * c-c++-common/gomp/dispatch-11.c: Adjust expected behavior. - * g++.dg/gomp/append-args-1.C: Likewise. - * gfortran.dg/gomp/append-args-interop.f90: New. - * gfortran.dg/gomp/declare-variant-mod-2.f90: Adjust expected behavior. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/ftest-armv4t-thumb.c: Expect __ARM_FEATURE_CLZ to be - defined. Remove redundant dg-skip-if rules. - * gcc.target/arm/ftest-armv5t-thumb.c: Likewise. - * gcc.target/arm/ftest-armv5te-thumb.c: Likewise. - * gcc.target/arm/ftest-armv6-thumb.c: Likewise. - * gcc.target/arm/ftest-armv6k-thumb.c: Likewise. - * gcc.target/arm/ftest-armv6z-thumb.c: Likewise. - * gcc.target/arm/ftest-armv7em-thumb.c: Remove redundant dg-skip-if - rules. Add a require-effective-target for armv7em. - * gcc.target/arm/ftest-armv7a-arm.c: Likewise. - * gcc.target/arm/ftest-armv7a-thumb.c: Likewise. - * gcc.target/arm/ftest-armv7r-arm.c: Likewise. - * gcc.target/arm/ftest-armv7r-thumb.c: Likewise. - * gcc.target/arm/ftest-armv7ve-arm.c: Likewise. - * gcc.target/arm/ftest-armv7ve-thumb.c: Likewise. - * gcc.target/arm/ftest-armv8a-arm.c: Likewise. - * gcc.target/arm/ftest-armv8a-thumb.c: Likewise. - * gcc.target/arm/ftest-armv4-arm.c: Remove redundant dg-skip-if rules. - * gcc.target/arm/ftest-armv4t-arm.c: Likewise. - * gcc.target/arm/ftest-armv5t-arm.c: Likewise. - * gcc.target/arm/ftest-armv5te-arm.c: Likewise. - * gcc.target/arm/ftest-armv6-arm.c: Likewise. - * gcc.target/arm/ftest-armv6k-arm.c: Likewise. - * gcc.target/arm/ftest-armv6m-thumb.c: Likewise. - * gcc.target/arm/ftest-armv6t2-arm.c: Likewise. - * gcc.target/arm/ftest-armv6t2-thumb.c: Likewise. - * gcc.target/arm/ftest-armv6z-arm.c: Likewise. - -2025-03-25 Jakub Jelinek <jakub@redhat.com> - - PR target/96226 - PR target/119428 - * gcc.c-torture/execute/pr119428.c: New test. - -2025-03-25 Vineet Gupta <vineetg@rivosinc.com> - - PR target/119224 - * gcc.target/riscv/rvv/autovec/pr117722.c: Adjust output insn. - * gcc.target/riscv/rvv/autovec/pr119224.c: Add new test. - -2025-03-25 Paul-Antoine Arras <parras@baylibre.com> - - * gfortran.dg/gomp/interop-5.f90: Declare omp_interop_kind explicitly - instead of use'ing omp_lib. Update scan-dumps to allow for 4-byte - pointers. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/lto/pr96939_0.c (dg-options): Delete. Move the - options from here ... - (dg-lto-options): ... to here. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/vect-early-break-cbranch.c: Allow BEQ as well as BNE. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/pr65647.c (dg-options): Add -std=gnu17. - -2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/aarch64/advsimd-intrinsics/vabdh_f16_1.c: Remove - dg-do directive. - * gcc.target/aarch64/advsimd-intrinsics/vabsh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vaddh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcageh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcagth_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcaleh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcalth_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vceqh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vceqzh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcgeh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcgezh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcgth_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcgtzh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcleh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vclezh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vclth_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcltzh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s32_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s64_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u32_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u64_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s32_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s64_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u32_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u64_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvth_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u16_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u32_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u64_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vdiv_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vdivh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vduph_lane.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vfmah_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vfmas_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vfmas_n_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vfmash_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vfmsh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vld1x2.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vld1x3.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vld1x4.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmaxh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmaxnmh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmaxnmv_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmaxv_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vminh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vminnmh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vminnmv_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vminv_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmul_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulh_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulx_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulx_n_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulxh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vmulxh_lane_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vnegh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vpminmaxnm_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vqrshrn_high_n.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vqrshrun_high_n.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vqshrn_high_n.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vqshrun_high_n.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrecpeh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrecpsh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrecpxh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndah_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndi_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndih_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndmh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndnh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndph_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrndxh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrsqrteh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vrsqrtsh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vsqrt_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vsqrth_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x2.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x3.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vst1x4.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vsubh_f16_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vtrn_half.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vuzp_half.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/vzip_half.c: Likewise. - -2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/aarch64/advsimd-intrinsics/vmla_float_not_fused.c: - Remove dg-options. - * gcc.target/aarch64/advsimd-intrinsics/vmls_float_not_fused.c: - Likewise. - -2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c: Remove - dg-options. - -2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: - Move to gcc.target/aarch64/simd/. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: Likewise. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: Likewise. - * gcc.target/aarch64/simd/saturating_arithmetic_autovect.inc: New file. - * gcc.target/aarch64/simd/saturating_arithmetic_autovect_1.c: New file. - * gcc.target/aarch64/simd/saturating_arithmetic_autovect_2.c: New file. - * gcc.target/aarch64/simd/saturating_arithmetic_autovect_3.c: New file. - * gcc.target/aarch64/simd/saturating_arithmetic_autovect_4.c: New file. - -2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> - - * lib/target-supports.exp - (check_effective_target_arm_v8_1_lob_ok): Remove duplicate - -mcpu=unset. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/pr42575.c: Skip test if thumb1. - -2025-03-25 Richard Earnshaw <rearnsha@arm.com> - - PR middle-end/117811 - * gcc.dg/torture/pr117811.c: New test. - -2025-03-25 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * g++.dg/torture/musttail1.C: New test. - * g++.dg/opt/musttail2.C: New test. - -2025-03-25 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119449 - * gm2/pim/pass/minmaxreal.mod: New test. - * gm2/pim/pass/minmaxreal2.mod: New test. - * gm2/pim/pass/minmaxreal3.mod: New test. - -2025-03-25 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Modify testcase. - -2025-03-24 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp26/pack-indexing16.C: New test. - -2025-03-24 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/Wbuiltin_declaration_mismatch2.d: Split test into ... - * gdc.dg/Wbuiltin_declaration_mismatch3.d: New test. - * gdc.dg/Wbuiltin_declaration_mismatch4.d: New test. - * gdc.dg/Wbuiltin_declaration_mismatch5.d: New test. - * gdc.dg/Wbuiltin_declaration_mismatch6.d: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/issue-3502.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - * rust/compile/redef_error2.rs: Modify expected error. - * rust/compile/redef_error5.rs: Likewise. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove self-path2.rs - * rust/compile/self-path2.rs: Adjust expected errors. - -2025-03-24 Ryutaro Okada <1015ryu88@gmail.com> - - * rust/compile/extern_generics.rs: New test. - -2025-03-24 Liam Naddell <liamnprg@gmail.com> - - * rust/compile/issue-3315-1.rs: Add test for module with same name - as builtin - * rust/compile/issue-3315-2.rs: Test with utilization of i32 - type - * rust/compile/nr2/exclude: issue-3315-2.rs Does not work with - NR2.0 - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/compile.exp: Adjust to cover tests in the - torture subdirectory. - * rust/compile/nr2/exclude: Add entries. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove two mangling tests from exclusion - file. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove issue-1786 and issue-3033 from - exclusion list. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/issue-3126.rs: New test. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/enum_variant_name.rs: New test. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/execute/crate-metavar1.rs: New test. - * rust/compile/crate-metavar1.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/try-expr1.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro43.rs: Adjust expected errors. - * rust/compile/macros/mbe/macro44.rs: Likewise. - * rust/compile/nested_macro_use2.rs: Likewise. - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/issue-2015.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/additional-trait-bounds2.rs: Adjust expected - errors. - * rust/compile/const_generics_4.rs: Likewise. - * rust/compile/const_generics_7.rs: Likewise. - * rust/compile/generic-default1.rs: Likewise. - * rust/compile/generics5.rs: Likewise. - * rust/compile/generics9.rs: Likewise. - * rust/compile/issue-2423.rs: Likewise. - * rust/compile/method2.rs: Likewise. - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-hash1.rs: New test. - * rust/compile/nr2/exclude: Add testcase to exclusion list. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/macros/mbe/macro-expand-module.rs: New test. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-eq-invalid.rs: Declare StructuralPartialEq. - * rust/compile/derive-partialeq1.rs: Likewise. - * rust/execute/torture/derive-partialeq1.rs: Likewise. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-eq-invalid.rs: Mark PartialEq def as a lang item. - * rust/compile/derive-partialeq1.rs: New test. - * rust/execute/torture/derive-partialeq1.rs: New test. - * rust/compile/nr2/exclude: Exclude all of them. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-eq-invalid.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Benjamin Thos <benjamin.thos@epita.fr> - - * rust/compile/implicit_returns_err3.rs: Change test to be valid. - * rust/compile/torture/if.rs: Likewise. - * rust/compile/if-without-else.rs: New test. - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/generics4.rs: cleanup - * rust/compile/generics6.rs: likewise - * rust/compile/type-bindings1.rs: likewise - * rust/compile/unconstrained_type_param.rs: likewise - * rust/compile/issue-2035.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3022.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3031.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2369.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/enum_intrinsics2.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/enum_intrinsics1.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3403.rs: New test. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/for-loop1.rs: New test. - * rust/compile/for-loop2.rs: New test. - * rust/execute/torture/for-loop1.rs: New test. - * rust/execute/torture/for-loop2.rs: New test. - * rust/compile/nr2/exclude: Exclude for-loop1.rs - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3402-1.rs: New test. - * rust/compile/issue-3402-2.rs: New test. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-default1.rs: New test. - * rust/execute/torture/derive-default1.rs: New test. - * rust/compile/nr2/exclude: Exclude them. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/issue-3381.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this. - * rust/compile/issue-3382.rs: New test. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/reference1.rs: fix error message - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive-debug1.rs: New test. - * rust/compile/nr2/exclude: Exclude it. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/structural-eq-peq.rs: New test. - -2025-03-24 Liam Naddell <liamnprg@gmail.com> - - * rust/compile/macros/builtin/option_env1.rs: Add success case for option_env - * rust/compile/macros/builtin/option_env2.rs: Add failure case for option_env - * rust/execute/torture/builtin_macro_option_env.rs: Add - execution case for option_env - * rust/compile/macros/builtin/option_env3.rs: New file. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3174.rs: New test. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove some tests. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove passing tests. - -2025-03-24 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: these tests now work it seems - -2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Add entries. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/try-trait.rs: New test. - -2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove break-rust3.rs from exclude list. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive_macro6.rs: Add lang item attribute to Copy trait. - -2025-03-24 lishin <lishin1008@gmail.com> - - * rust/compile/issue-2954.rs: New test. - -2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/nr2/exclude: Some parts of nr2.0 can't handle auto traits yet. - * rust/compile/auto_traits3.rs: Removed in favor of... - * rust/compile/auto_traits2.rs: ...this one. - * rust/compile/auto_traits4.rs: New test. - -2025-03-24 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/unaligned-memcpy-4.c: Tighten scan-assembler-not - pattern. - -2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/march-map=sm_30.c: Adjust. - * gcc.target/nvptx/march-map=sm_32.c: Likewise. - * gcc.target/nvptx/march-map=sm_35.c: Likewise. - * gcc.target/nvptx/march-map=sm_37.c: Likewise. - * gcc.target/nvptx/march-map=sm_50.c: Likewise. - * gcc.target/nvptx/march=sm_30.c: Likewise. - * gcc.target/nvptx/march=sm_35.c: Likewise. - * gcc.target/nvptx/march=sm_37.c: Likewise. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10-check.h: Change to avx10.1. - * gcc.target/i386/avx10_1-1.c: Add warning check. - * gcc.target/i386/avx10_1-10.c: Ditto. - * gcc.target/i386/avx10_1-11.c: Ditto. - * gcc.target/i386/avx10_1-12.c: Ditto. - * gcc.target/i386/avx10_1-13.c: Ditto. - * gcc.target/i386/avx10_1-15.c: Ditto. - * gcc.target/i386/avx10_1-16.c: Ditto. - * gcc.target/i386/avx10_1-18.c: Ditto. - * gcc.target/i386/avx10_1-19.c: Ditto. - * gcc.target/i386/avx10_1-2.c: Ditto. - * gcc.target/i386/avx10_1-20.c: Ditto. - * gcc.target/i386/avx10_1-21.c: Ditto. - * gcc.target/i386/avx10_1-22.c: Ditto. - * gcc.target/i386/avx10_1-23.c: Ditto. - * gcc.target/i386/avx10_1-26.c: Ditto. - * gcc.target/i386/avx10_1-3.c: Ditto. - * gcc.target/i386/avx10_1-4.c: Ditto. - * gcc.target/i386/avx10_1-7.c: Ditto. - * gcc.target/i386/avx10_1-8.c: Ditto. - * gcc.target/i386/avx10_1-9.c: Ditto. - * gcc.target/i386/noevex512-1.c: Ditto. - * gcc.target/i386/noevex512-2.c: Ditto. - * gcc.target/i386/pr111068.c: Ditto. - * gcc.target/i386/pr111907.c: Ditto. - * gcc.target/i386/pr117240_avx512f.c: Ditto. - * gcc.target/i386/pr117304-1.c: Ditto. - * gcc.target/i386/pr117946.c: Ditto. - * gcc.target/i386/avx10_1-24.c: Removed. - * gcc.target/i386/avx10_1-25.c: Removed. - * gcc.target/i386/avx10_1-5.c: Removed. - * gcc.target/i386/avx10_1-6.c: Removed. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * g++.dg/other/i386-2.C: Use -mavx10.2. - * g++.dg/other/i386-3.C: Ditto. - * gcc.target/i386/avx-1.c: Ditto. - * gcc.target/i386/avx10_2-512-bf16-1.c: Ditto. - * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: Ditto. - * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: Ditto. - * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: Ditto. - * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: Ditto. - * gcc.target/i386/avx10_2-512-convert-1.c: Ditto. - * gcc.target/i386/avx10_2-512-media-1.c: Ditto. - * gcc.target/i386/avx10_2-512-minmax-1.c: Ditto. - * gcc.target/i386/avx10_2-512-movrs-1.c: Ditto. - * gcc.target/i386/avx10_2-512-satcvt-1.c: Ditto. - * gcc.target/i386/avx10_2-512-vaddbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvt2ps2phx-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvthf82ph-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vdivbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vdpphps-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxph-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxps-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vmpsadbw-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vmulbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbssd-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbssds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbsud-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbuud-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpbuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwsud-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwusd-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwusds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwuud-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vreducebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vsubbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-bf16-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: Ditto. - * gcc.target/i386/avx10_2-builtin-1.c: Ditto. - * gcc.target/i386/avx10_2-builtin-2.c: Ditto. - * gcc.target/i386/avx10_2-comibf-1.c: Ditto. - * gcc.target/i386/avx10_2-comibf-2.c: Ditto. - * gcc.target/i386/avx10_2-comibf-3.c: Ditto. - * gcc.target/i386/avx10_2-comibf-4.c: Ditto. - * gcc.target/i386/avx10_2-compare-1.c: Ditto. - * gcc.target/i386/avx10_2-compare-1b.c: Ditto. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - * gcc.target/i386/avx10_2-media-1.c: Ditto. - * gcc.target/i386/avx10_2-minmax-1.c: Ditto. - * gcc.target/i386/avx10_2-movrs-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: Ditto. - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. - * gcc.target/i386/avx10_2-vaddbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcomisbf16-1.c: Ditto. - * gcc.target/i386/avx10_2-vcomisbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. - * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxsd-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxsh-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxss-2.c: Ditto. - * gcc.target/i386/avx10_2-vmovd-1.c: Ditto. - * gcc.target/i386/avx10_2-vmovd-2.c: Ditto. - * gcc.target/i386/avx10_2-vmovw-1.c: Ditto. - * gcc.target/i386/avx10_2-vmovw-2.c: Ditto. - * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. - * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. - * gcc.target/i386/funcspec-56.inc: Ditto. - * gcc.target/i386/part-vect-vec_cmpbf.c: Ditto. - * gcc.target/i386/pr117495.c: Ditto. - * gcc.target/i386/pr118815.c: Ditto. - * gcc.target/i386/sm4-avx10_2-1.c: Ditto. - * gcc.target/i386/sm4-avx10_2-512-1.c: Ditto. - * gcc.target/i386/sm4key4-avx10_2-512-2.c: Ditto. - * gcc.target/i386/sm4rnds4-avx10_2-512-2.c: Ditto. - * gcc.target/i386/sse-12.c: Ditto. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/vnniint16-auto-vectorize-3.c: Ditto. - * gcc.target/i386/vnniint16-auto-vectorize-4.c: Ditto. - * gcc.target/i386/vnniint8-auto-vectorize-3.c: Ditto. - * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. - * gcc.target/i386/avx10-check.h: Remove avx10.2-512 and - use avx10.2. - * gcc.target/i386/sm4-check.h: Ditto. - * lib/target-supports.exp: Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add -mavx10.2 and new builtin test. - * gcc.target/i386/avx-2.c: Ditto. - * gcc.target/i386/sse-13.c: Add new tests. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: New test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/sse-14.c: Add new macro test. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/sse-14.c: Add new macro test. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-2.c: New test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-2.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-2.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: New test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: New test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: New test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - Revert: - 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx-1.c: Add new builtin test. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Add new macro test. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Add test. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Adjust condition - for rounding test. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx-1.c: Remove rounding tests. - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - -2025-03-24 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx-1.c: Remove rounding tests. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - * gcc.target/i386/avx10_2-minmax-1.c: Ditto. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - -2025-03-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119154 - * g++.dg/modules/pr119154_a.C: Move to... - * g++.dg/modules/gnu-inline-1_a.C: ...here, and add decl. - * g++.dg/modules/pr119154_b.C: Move to... - * g++.dg/modules/gnu-inline-1_b.C: here, and add check. - * g++.dg/modules/gnu-inline-1_c.C: New test. - * g++.dg/modules/gnu-inline-1_d.C: New test. - * g++.dg/modules/gnu-inline-2_a.C: New test. - * g++.dg/modules/gnu-inline-2_b.C: New test. - * g++.dg/modules/extern-tpl-3_a.C: New test. - * g++.dg/modules/extern-tpl-3_b.C: New test. - * g++.dg/modules/extern-tpl-4_a.H: New test. - * g++.dg/modules/extern-tpl-4_b.C: New test. - * g++.dg/modules/extern-tpl-4_c.C: New test. - -2025-03-23 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117621 - * gdc.dg/pr117621.d: New test. - -2025-03-22 Georg-Johann Lay <avr@gjlay.de> - - PR target/119421 - * gcc.target/avr/torture/pr119421-sreg.c: New test. - -2025-03-22 Patrick Palka <ppalka@redhat.com> - - PR c++/119379 - * g++.dg/cpp2a/class-deduction-alias24.C: New test. - -2025-03-21 Surya Kumari Jangala <jskumari@linux.ibm.com> - Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/116028 - PR rtl-optimization/118615 - * gcc.dg/ira-shrinkwrap-prep-1.c: Remove xfail for powerpc. - * gcc.dg/pr10474.c: Remove xfail for powerpc and arm. - * gcc.dg/pr118615.c: New test. - -2025-03-21 Patrick Palka <ppalka@redhat.com> - - PR c++/119378 - * g++.dg/template/friend85.C: New test. - -2025-03-21 Paul-Antoine Arras <parras@baylibre.com> - Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/interop-1.c: Remove dg-prune-output "sorry". - * c-c++-common/gomp/interop-2.c: Likewise. - * c-c++-common/gomp/interop-3.c: Likewise. - * c-c++-common/gomp/interop-4.c: Remove dg-message "not supported". - * g++.dg/gomp/interop-5.C: Likewise. - * gfortran.dg/gomp/interop-4.f90: Likewise. - * c-c++-common/gomp/interop-5.c: New test. - * gfortran.dg/gomp/interop-5.f90: New test. - -2025-03-21 Jason Merrill <jason@redhat.com> - - PR c++/114992 - * g++.target/i386/mangling-alias1.C: New test. - -2025-03-21 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/85836 - * gfortran.dg/reduce_1.f90: New test - * gfortran.dg/reduce_2.f90: New test - -2025-03-21 Richard Earnshaw <rearnsha@arm.com> - - PR target/91614 - * gcc.target/arm/unaligned-memcpy-1.c: Make the test executable. - Only scan for the absence of instructions that cannot access - misaligned data. Remove constraint of having unaligned accesses. - * gcc.target/arm/unaligned-memcpy-2.c: Likewise. - * gcc.target/arm/unaligned-memcpy-3.c: Likewise. - * gcc.target/arm/unaligned-memcpy-4.c: Likewise. - -2025-03-21 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/memcpy-aligned-1.c: Require unaligned accesses. - -2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> - - * g++.target/nvptx/alias-g++.dg_init_dtor2-2.C: New. - -2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/alias-unsupported-1.c: New. - -2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119380 - * gfortran.dg/proc_ptr_comp_54.f90: New test. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/nr2/exclude: Add failing lang item typepaths tests. - * rust/execute/torture/derive_macro4.rs: Mark Clone as lang item. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/nr2/exclude: - * rust/compile/derive_clone_enum1.rs: New test. - * rust/compile/derive_clone_enum2.rs: New test. - * rust/compile/derive_clone_enum3.rs: New test. - * rust/execute/torture/derive_clone_enum1.rs: New test. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive_macro4.rs: Mark Copy and Clone as lang items. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive_macro4.rs: Make PhantomData a lang item. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/derive_macro1.rs: Add #[lang = "clone"] to Clone trait. - * rust/compile/derive_macro3.rs: Likewise. - * rust/compile/derive_macro6.rs: Likewise. - * rust/execute/torture/derive_macro3.rs: Likewise. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3350.rs: New test. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/macros/builtin/eager1.rs: Switch to scan-assembler directive as the - GIMPLE dump does not contain strings on LE. - * rust/compile/macros/builtin/recurse2.rs: Likewise. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/issue-1446.rs: Add swap_bytes function. - * rust/compile/iterators1.rs: Remove unused {to, from}_le functions. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/execute/torture/builtin_macro_include_bytes.rs: needs mut - * rust/compile/mutability_checks1.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 liushuyu <liushuyu011@gmail.com> - - * rust/compile/try-catch-unwind-old.rs: add a test to test the older - try intrinsics from plain old Rust to v1.78.0 - * rust/compile/try-catch-unwind-new.rs: add a test to test the newer - catch_unwind instrinsics since Rust v1.78.0 - -2025-03-21 Nobel <nobel2073@gmail.com> - - * rust/compile/cast_float_as_integer.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/cmp1.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3046.rs: remove old error message - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3140.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/auto_traits2.rs: New test. - * rust/compile/auto_traits3.rs: New test. - * rust/compile/nr2/exclude: Add auto_traits2 test. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/auto_traits1.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Liam Naddell <liamnprg@gmail.com> - - * rust/compile/issue-3304.rs: - Add small test for generics+enums combination for NR2.0 - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/nr2/exclude: Exclude additional-trait-bounds2 for different error message. - * rust/compile/additional-trait-bounds1.rs: New test. - * rust/compile/additional-trait-bounds2.rs: New test. - * rust/compile/additional-trait-bounds2nr2.rs: New test. - -2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/multiline-string.rs: New test. - * rust/execute/torture/multiline-string.rs: New test. - -2025-03-21 Nobel <nobel2073@gmail.com> - - * rust/compile/ptr_int_cast.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2847.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-266.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-2394.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-1525.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 can't handle this - * rust/compile/issue-2423.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3261.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-2907.rs: New test. - -2025-03-21 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove passing tests from exclude list. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/exhaustiveness1.rs: remove bad check - * rust/compile/issue-2567-1.rs: New test. - * rust/compile/issue-2567-2.rs: New test. - * rust/compile/issue-2567-3.rs: New test. - * rust/compile/issue-3231.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-2905-1.rs: New test. - * rust/compile/issue-2905-2.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-1773.rs: new test case - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3242.rs: old test ranamed to match issue. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - * rust/link/generic_function_0.rs: No longer expect failure. - * rust/link/trait_import_0.rs: Likewise. - * rust/link/trait_import_1.rs - (trait Sized): Add. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle these - * rust/compile/issue-2953-1.rs: New test. - * rust/compile/issue-2953-2.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-2323.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3009.rs: New test. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr can't handle this - * rust/compile/issue-3033.rs: New test. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Marc Poulhiès <dkm@kataplop.net> - - * rust/compile/if_let_expr.rs: Adjust. - * rust/compile/if_let_expr_simple.rs: New test. - * rust/compile/iflet.rs: New test. - * rust/execute/torture/iflet.rs: New test. - * rust/compile/nr2/exclude: Add iflet.rs and if_let_expr_simple.rs - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/compile.exp: Handle paths using "file join" - and "file split". - * rust/compile/nr2/exclude: Remove debug-diagnostics-on.rs. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Add trailing newline along with - comment. - -2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-21 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3032-1.rs: New test. - * rust/compile/issue-3032-2.rs: New test. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * c-c++-common/musttail27.c: New test. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * g++.dg/opt/musttail1.C: New test. - -2025-03-21 Jakub Jelinek <jakub@redhat.com> - - PR ipa/119376 - * c-c++-common/musttail26.c: New test. - -2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119349 - * gfortran.dg/class_79.f90: New test. - -2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - Revert: - 2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/20020926-1.c: Deal with deprecation warning. - * gcc.target/s390/dwarfregtable-1.c: Ditto. - * gcc.target/s390/fp2int1.c: Ditto. - * gcc.target/s390/pr102222.c: Ditto. - * gcc.target/s390/pr106355-3.c: Ditto. - * gcc.target/s390/pr61078.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-10.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-12.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-14.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-18.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-2.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-20.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-22.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-24.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-26.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-28.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-30.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-32.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-4.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-6.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-8.c: Ditto. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Fix testcase. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. - -2025-03-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/119370 - * g++.dg/gomp/pr119370.C: New test. - -2025-03-20 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr117452.c: New test. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-satcvt-1.c: Modify intrinsic name. - * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-satcvt-1.c: Add testcase. - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto - * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto - * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto - * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto - * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto - * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto - * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: New file. - -2025-03-20 Hu, Lin1 <lin1.hu@intel.com> - - * gcc.target/i386/avx10_2-512-satcvt-1.c: Modify intrin name. - * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. - * gcc.target/i386/sse-14.c: Ditto. - * gcc.target/i386/sse-22.c: Ditto. - -2025-03-19 Harald Anlauf <anlauf@gmx.de> - - PR fortran/116706 - * gfortran.dg/bounds_check_27.f90: New test. - -2025-03-19 Jason Merrill <jason@redhat.com> - - PR c++/119316 - * g++.dg/abi/mangle-new1.C: New test. - -2025-03-19 David Malcolm <dmalcolm@redhat.com> - - PR c/119366 - * gcc.dg/Wfatal-bad-attr-pr119366.c: New test. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - PR c/119350 - * gcc.dg/pr119350-1.c: New test. - * gcc.dg/pr119350-2.c: New test. - * gcc.dg/pr119350-3.c: New test. - -2025-03-19 Richard Biener <rguenther@suse.de> - - PR testsuite/113634 - * gcc.dg/Wfree-nonheap-object-7.c: Adjust calloc and realloc - declarations, remove -std=gnu17. - -2025-03-19 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/zvector/autovec-double-signaling-eq-z13.c: - Honour sNaNs. - -2025-03-19 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vcond-shift.c: Adapt to new match.pd - rule and change scan-assembler-times for shifts. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove issue-1089.rs. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_parse_operand.rs: - Remove inout, functionality not supported. Remove redundant {} - * rust/execute/torture/inline_asm_mov_x_5_ARM.rs: Add operand in - * rust/execute/torture/inline_asm_mov_x_5_x86_64.rs: Likewise - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove - inline_asm_parse_output_operand.rs. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove type-alias1.rs. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove shadow1.rs. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-2499.rs: New test. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: - * rust/compile/issue-2203.rs: New test. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 is crashing here - * rust/compile/issue-2951.rs: New test. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3036.rs: New test. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/issue-3139-1.rs: New test. - * rust/compile/issue-3139-2.rs: New test. - * rust/compile/issue-3139-3.rs: New test. - * rust/compile/nr2/exclude: these all break nr2 - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove cast_generics.rs, issue-1131.rs, - issue-1383.rs and unsafe10.rs - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/box_syntax_feature_gate.rs: Add box land item - definition. - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/functions_without_body.rs: Add compile step argument. - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/nr2/exclude: Remove working tests from nr2 exclude list. - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/name_resolution21.rs: Move to... - * rust/compile/xfail/name_resolution21.rs: ...here. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3082.rs: New test. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3035.rs: New test. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/exclude: Remove entries. - -2025-03-19 Philip Herron <herron.philip@googlemail.com> - - * rust/compile/nr2/exclude: nr2 cant handle this - * rust/compile/issue-3030.rs: New test. - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/nr2/compile.exp: New test. - * rust/compile/nr2/exclude: New. - -2025-03-19 JoanVC <github-91yu@joanvc.cat> - - * rust/compile/issue-3141.rs: New test. - -2025-03-19 benjamin.thos <benjamin.thos@epita.fr> - - * rust/compile/auto_trait_super_trait.rs: Add feature attribute. - * rust/compile/generic_auto_trait.rs: likewise. - * rust/compile/auto_trait.rs: add test for error without - feature attribute - -2025-03-19 Raiki Tamura <tamaron1203@gmail.com> - - * rust/compile/exhaustiveness1.rs: New test. - * rust/compile/exhaustiveness2.rs: New test. - * rust/compile/exhaustiveness3.rs: New test. - -2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/trait13.rs: - Add test for supertraits of supertraits - * rust/compile/trait14.rs: - Diamond problem with supertraits test - * rust/execute/torture/trait14.rs: - Add test for dynamic dispatch with supertraits - * rust/execute/torture/trait15.rs: - Add test for dynamic dispatch with generics - * rust/execute/torture/trait16.rs: - Add test for dynamic dispatch with lifetime params 1 - * rust/execute/torture/trait17.rs: - Add test for dynamic dispatch with lifetime params 2 - * rust/execute/torture/trait18.rs: - Add test for default implementations with dynamic dispatch and - supertraits - -2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/v0-mangle1.rs: Make v0-mangle test more crate_num - agnostic. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/execute/torture/inline_asm_mov_x_5.rs: Move to... - * rust/execute/torture/inline_asm_mov_x_5_ARM.rs: ...here. - * rust/execute/torture/inline_asm_mov_x_5_x86_64.rs: New test. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_typecheck.rs: Change comments - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/execute/inline_asm_mov_x_5.rs: Move to... - * rust/execute/torture/inline_asm_mov_x_5.rs: ...here. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_parse_operand.rs: Fix format asm - * rust/compile/inline_asm_parse_output_operand.rs: - Fix format asm - * rust/execute/torture/inline_asm_mov_x_5.rs: Move to... - * rust/execute/inline_asm_mov_x_5.rs: ...here. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_typecheck.rs: New test. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/execute/torture/inline_asm_mov_x_5.rs: New test. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_parse_output_operand.rs: New test. - -2025-03-19 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_compile_nop.rs: New test. - -2025-03-19 Raiki Tamura <tamaron1203@gmail.com> - - * rust/compile/issue-2324-2.rs: Fix error message. - * rust/compile/match9.rs: New test. - -2025-03-19 Raiki Tamura <tamaron1203@gmail.com> - - * rust/compile/match8.rs: New test. - -2025-03-19 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/assume.rs: Add missing feature attribute. - * rust/compile/issue-1901.rs: Likewise. - * rust/compile/issue-1981.rs: Likewise. - * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. - * rust/compile/torture/intrinsics-8.rs: Likewise. - * rust/compile/torture/transmute-size-check-1.rs: Likewise. - * rust/compile/torture/transmute1.rs: Likewise. - * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. - * rust/execute/torture/issue-1436.rs: Likewise. - * rust/execute/torture/issue-2583.rs: Likewise. - -2025-03-19 Arthur Cohen <arthur.cohen@embecosm.com> - - * rust/compile/prelude_import.rs: New test. - -2025-03-19 Muhammad Mahad <mahadtxt@gmail.com> - - * rust/compile/nonexistent-field.rs: New test. - -2025-03-19 Kushal Pal <kushalpal109@gmail.com> - - * rust/borrowck/test_move.rs: Test rich-errors related to moves. - * rust/borrowck/test_move_conditional.rs: Likewise. - -2025-03-19 Kushal Pal <kushalpal109@gmail.com> - - * rust/borrowck/subset.rs: Better subset errors. - -2025-03-19 Kushal Pal <kushalpal109@gmail.com> - - * rust/borrowck/test_move.rs: Assigning `a` to `c` is the - correct way to test the behaviour. - -2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/issue-2324-1.rs: - add test for E0532 with tuple enum variant - * rust/compile/issue-2324-2.rs: - add test for E0532 with struct enum variant - -2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/macros/builtin/include1.rs: - add basic include test at global scope - * rust/compile/macros/builtin/include2.rs: - add basic include test at local scope with expression - * rust/compile/macros/builtin/include3.rs: - add eager expansion test at global scope - * rust/compile/macros/builtin/include4.rs: - add eager expansion test at local scope with expression - * rust/compile/macros/builtin/include_bytes.rs: - add eager expansion test at global scope - * rust/compile/macros/builtin/include_rs: - supporting test file with dummy function - * rust/compile/macros/builtin/include_rs2: - supporting test file with dummy string - * rust/compile/macros/builtin/include_str.rs: - add eager expansion test at global scope - * rust/execute/torture/builtin_macro_include_bytes.rs: - clean up old test logic, add permutations for eager expansion - * rust/execute/torture/builtin_macro_include_str.rs: - add eager expansion permutations - -2025-03-19 Kushal Pal <kushalpal109@gmail.com> - - * rust/borrowck/reference.rs: Test rich errors for - borrow-checker. - * rust/borrowck/return_ref_to_local.rs: Likewise. - * rust/borrowck/tmp.rs: Likewise. - * rust/borrowck/use_while_mut.rs: Likewise. - * rust/borrowck/use_while_mut_fr.rs: Likewise. - * rust/borrowck/well_formed_function_inputs.rs: Likewise. - -2025-03-19 badumbatish <tanghocle456@gmail.com> - - * rust/compile/inline_asm_illegal_operands.rs: Test now passing - * rust/compile/inline_asm_parse_operand.rs: Remove _, not - supported right now - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/macro-delim.rs: Move to... - * rust/compile/macros/mbe/macro-delim.rs: ...here. - * rust/compile/macro-issue1053-2.rs: Move to... - * rust/compile/macros/mbe/macro-issue1053-2.rs: ...here. - * rust/compile/macro-issue1053.rs: Move to... - * rust/compile/macros/mbe/macro-issue1053.rs: ...here. - * rust/compile/macro-issue1224.rs: Move to... - * rust/compile/macros/mbe/macro-issue1224.rs: ...here. - * rust/compile/macro-issue1233.rs: Move to... - * rust/compile/macros/mbe/macro-issue1233.rs: ...here. - * rust/compile/macro-issue1395-2.rs: Move to... - * rust/compile/macros/mbe/macro-issue1395-2.rs: ...here. - * rust/compile/macro-issue1395.rs: Move to... - * rust/compile/macros/mbe/macro-issue1395.rs: ...here. - * rust/compile/macro-issue1400-2.rs: Move to... - * rust/compile/macros/mbe/macro-issue1400-2.rs: ...here. - * rust/compile/macro-issue1400.rs: Move to... - * rust/compile/macros/mbe/macro-issue1400.rs: ...here. - * rust/compile/macro-issue2092.rs: Move to... - * rust/compile/macros/mbe/macro-issue2092.rs: ...here. - * rust/compile/macro-issue2192.rs: Move to... - * rust/compile/macros/mbe/macro-issue2192.rs: ...here. - * rust/compile/macro-issue2194.rs: Move to... - * rust/compile/macros/mbe/macro-issue2194.rs: ...here. - * rust/compile/macro-issue2229.rs: Move to... - * rust/compile/macros/mbe/macro-issue2229.rs: ...here. - * rust/compile/macro-issue2264.rs: Move to... - * rust/compile/macros/mbe/macro-issue2264.rs: ...here. - * rust/compile/macro-issue2268.rs: Move to... - * rust/compile/macros/mbe/macro-issue2268.rs: ...here. - * rust/compile/macro-issue2273.rs: Move to... - * rust/compile/macros/mbe/macro-issue2273.rs: ...here. - * rust/compile/macro-issue2653.rs: Move to... - * rust/compile/macros/mbe/macro-issue2653.rs: ...here. - * rust/compile/macro-issue2983_2984.rs: Move to... - * rust/compile/macros/mbe/macro-issue2983_2984.rs: ...here. - * rust/compile/macro1.rs: Move to... - * rust/compile/macros/mbe/macro1.rs: ...here. - * rust/compile/macro10.rs: Move to... - * rust/compile/macros/mbe/macro10.rs: ...here. - * rust/compile/macro11.rs: Move to... - * rust/compile/macros/mbe/macro11.rs: ...here. - * rust/compile/macro12.rs: Move to... - * rust/compile/macros/mbe/macro12.rs: ...here. - * rust/compile/macro13.rs: Move to... - * rust/compile/macros/mbe/macro13.rs: ...here. - * rust/compile/macro14.rs: Move to... - * rust/compile/macros/mbe/macro14.rs: ...here. - * rust/compile/macro15.rs: Move to... - * rust/compile/macros/mbe/macro15.rs: ...here. - * rust/compile/macro16.rs: Move to... - * rust/compile/macros/mbe/macro16.rs: ...here. - * rust/compile/macro17.rs: Move to... - * rust/compile/macros/mbe/macro17.rs: ...here. - * rust/compile/macro18.rs: Move to... - * rust/compile/macros/mbe/macro18.rs: ...here. - * rust/compile/macro19.rs: Move to... - * rust/compile/macros/mbe/macro19.rs: ...here. - * rust/compile/macro2.rs: Move to... - * rust/compile/macros/mbe/macro2.rs: ...here. - * rust/compile/macro20.rs: Move to... - * rust/compile/macros/mbe/macro20.rs: ...here. - * rust/compile/macro21.rs: Move to... - * rust/compile/macros/mbe/macro21.rs: ...here. - * rust/compile/macro22.rs: Move to... - * rust/compile/macros/mbe/macro22.rs: ...here. - * rust/compile/macro23.rs: Move to... - * rust/compile/macros/mbe/macro23.rs: ...here. - * rust/compile/macro25.rs: Move to... - * rust/compile/macros/mbe/macro25.rs: ...here. - * rust/compile/macro26.rs: Move to... - * rust/compile/macros/mbe/macro26.rs: ...here. - * rust/compile/macro27.rs: Move to... - * rust/compile/macros/mbe/macro27.rs: ...here. - * rust/compile/macro28.rs: Move to... - * rust/compile/macros/mbe/macro28.rs: ...here. - * rust/compile/macro29.rs: Move to... - * rust/compile/macros/mbe/macro29.rs: ...here. - * rust/compile/macro3.rs: Move to... - * rust/compile/macros/mbe/macro3.rs: ...here. - * rust/compile/macro30.rs: Move to... - * rust/compile/macros/mbe/macro30.rs: ...here. - * rust/compile/macro31.rs: Move to... - * rust/compile/macros/mbe/macro31.rs: ...here. - * rust/compile/macro32.rs: Move to... - * rust/compile/macros/mbe/macro32.rs: ...here. - * rust/compile/macro33.rs: Move to... - * rust/compile/macros/mbe/macro33.rs: ...here. - * rust/compile/macro34.rs: Move to... - * rust/compile/macros/mbe/macro34.rs: ...here. - * rust/compile/macro35.rs: Move to... - * rust/compile/macros/mbe/macro35.rs: ...here. - * rust/compile/macro36.rs: Move to... - * rust/compile/macros/mbe/macro36.rs: ...here. - * rust/compile/macro37.rs: Move to... - * rust/compile/macros/mbe/macro37.rs: ...here. - * rust/compile/macro38.rs: Move to... - * rust/compile/macros/mbe/macro38.rs: ...here. - * rust/compile/macro39.rs: Move to... - * rust/compile/macros/mbe/macro39.rs: ...here. - * rust/compile/macro4.rs: Move to... - * rust/compile/macros/mbe/macro4.rs: ...here. - * rust/compile/macro40.rs: Move to... - * rust/compile/macros/mbe/macro40.rs: ...here. - * rust/compile/macro41.rs: Move to... - * rust/compile/macros/mbe/macro41.rs: ...here. - * rust/compile/macro42.rs: Move to... - * rust/compile/macros/mbe/macro42.rs: ...here. - * rust/compile/macro43.rs: Move to... - * rust/compile/macros/mbe/macro43.rs: ...here. - * rust/compile/macro44.rs: Move to... - * rust/compile/macros/mbe/macro44.rs: ...here. - * rust/compile/macro45.rs: Move to... - * rust/compile/macros/mbe/macro45.rs: ...here. - * rust/compile/macro46.rs: Move to... - * rust/compile/macros/mbe/macro46.rs: ...here. - * rust/compile/macro47.rs: Move to... - * rust/compile/macros/mbe/macro47.rs: ...here. - * rust/compile/macro48.rs: Move to... - * rust/compile/macros/mbe/macro48.rs: ...here. - * rust/compile/macro49.rs: Move to... - * rust/compile/macros/mbe/macro49.rs: ...here. - * rust/compile/macro5.rs: Move to... - * rust/compile/macros/mbe/macro5.rs: ...here. - * rust/compile/macro50.rs: Move to... - * rust/compile/macros/mbe/macro50.rs: ...here. - * rust/compile/macro51.rs: Move to... - * rust/compile/macros/mbe/macro51.rs: ...here. - * rust/compile/macro52.rs: Move to... - * rust/compile/macros/mbe/macro52.rs: ...here. - * rust/compile/macro53.rs: Move to... - * rust/compile/macros/mbe/macro53.rs: ...here. - * rust/compile/macro54.rs: Move to... - * rust/compile/macros/mbe/macro54.rs: ...here. - * rust/compile/macro55.rs: Move to... - * rust/compile/macros/mbe/macro55.rs: ...here. - * rust/compile/macro56.rs: Move to... - * rust/compile/macros/mbe/macro56.rs: ...here. - * rust/compile/macro57.rs: Move to... - * rust/compile/macros/mbe/macro57.rs: ...here. - * rust/compile/macro6.rs: Move to... - * rust/compile/macros/mbe/macro6.rs: ...here. - * rust/compile/macro7.rs: Move to... - * rust/compile/macros/mbe/macro7.rs: ...here. - * rust/compile/macro8.rs: Move to... - * rust/compile/macros/mbe/macro8.rs: ...here. - * rust/compile/macro9.rs: Move to... - * rust/compile/macros/mbe/macro9.rs: ...here. - * rust/compile/macro_call_statement.rs: Move to... - * rust/compile/macros/mbe/macro_call_statement.rs: ...here. - * rust/compile/macro_export_1.rs: Move to... - * rust/compile/macros/mbe/macro_export_1.rs: ...here. - * rust/compile/macro_return.rs: Move to... - * rust/compile/macros/mbe/macro_return.rs: ...here. - * rust/compile/macro_rules_macro_rules.rs: Move to... - * rust/compile/macros/mbe/macro_rules_macro_rules.rs: ...here. - * rust/compile/macro_use1.rs: Move to... - * rust/compile/macros/mbe/macro_use1.rs: ...here. - * rust/compile/macros/mbe/mbe_macro.exp: New test. - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/builtin_macro_compile_error.rs: Move to... - * rust/compile/macros/builtin/compile_error.rs: ...here. - * rust/compile/builtin_macro_concat.rs: Move to... - * rust/compile/macros/builtin/concat.rs: ...here. - * rust/compile/builtin_macro_eager1.rs: Move to... - * rust/compile/macros/builtin/eager1.rs: ...here. - * rust/compile/builtin_macro_eager2.rs: Move to... - * rust/compile/macros/builtin/eager2.rs: ...here. - * rust/compile/builtin_macro_eager3.rs: Move to... - * rust/compile/macros/builtin/eager3.rs: ...here. - * rust/compile/builtin_macro_env.rs: Move to... - * rust/compile/macros/builtin/env.rs: ...here. - * rust/compile/builtin_macro_include_bytes.rs: Move to... - * rust/compile/macros/builtin/include_bytes.rs: ...here. - * rust/compile/builtin_macro_include_bytes_location_info.rs: Move to... - * rust/compile/macros/builtin/include_bytes_location_info.rs: ...here. - * rust/compile/builtin_macro_include_str.rs: Move to... - * rust/compile/macros/builtin/include_str.rs: ...here. - * rust/compile/builtin_macro_include_str_location_info.rs: Move to... - * rust/compile/macros/builtin/include_str_location_info.rs: ...here. - * rust/compile/builtin_macro_not_found.rs: Move to... - * rust/compile/macros/builtin/not_found.rs: ...here. - * rust/compile/builtin_macro_recurse2.rs: Move to... - * rust/compile/macros/builtin/recurse2.rs: ...here. - * rust/compile/macros/builtin/builtin_macro.exp: New test. - * rust/compile/invalid_utf8: Move invalid-utf8 data to... - * rust/compile/macros/builtin/invalid_utf8: ...here. - -2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/macros/proc/proc_macro.exp: New deja gnu file to execute - proc-macro tests. - * rust/compile/proc_macro_attribute_crate_type.rs: Move to... - * rust/compile/macros/proc/attribute_crate_type.rs: ...here. - * rust/compile/proc_macro_attribute_non_function.rs: Move to... - * rust/compile/macros/proc/attribute_non_function.rs: ...here. - * rust/compile/proc_macro_attribute_non_root_function.rs: Move to... - * rust/compile/macros/proc/attribute_non_root_function.rs: ...here. - * rust/compile/proc_macro_attribute_non_root_method.rs: Move to... - * rust/compile/macros/proc/attribute_non_root_method.rs: ...here. - * rust/compile/proc_macro_attribute_non_root_module.rs: Move to... - * rust/compile/macros/proc/attribute_non_root_module.rs: ...here. - * rust/compile/proc_macro_attribute_private.rs: Move to... - * rust/compile/macros/proc/attribute_private.rs: ...here. - * rust/compile/proc_macro_crate_type.rs: Move to... - * rust/compile/macros/proc/crate_type.rs: ...here. - * rust/compile/proc_macro_derive_crate_type.rs: Move to... - * rust/compile/macros/proc/derive_crate_type.rs: ...here. - * rust/compile/proc_macro_derive_malformed.rs: Move to... - * rust/compile/macros/proc/derive_malformed.rs: ...here. - * rust/compile/proc_macro_derive_non_function.rs: Move to... - * rust/compile/macros/proc/derive_non_function.rs: ...here. - * rust/compile/proc_macro_derive_non_root_function.rs: Move to... - * rust/compile/macros/proc/derive_non_root_function.rs: ...here. - * rust/compile/proc_macro_derive_non_root_module.rs: Move to... - * rust/compile/macros/proc/derive_non_root_module.rs: ...here. - * rust/compile/proc_macro_derive_private.rs: Move to... - * rust/compile/macros/proc/derive_private.rs: ...here. - * rust/compile/proc_macro_non_function.rs: Move to... - * rust/compile/macros/proc/non_function.rs: ...here. - * rust/compile/proc_macro_non_root_function.rs: Move to... - * rust/compile/macros/proc/non_root_function.rs: ...here. - * rust/compile/proc_macro_non_root_method.rs: Move to... - * rust/compile/macros/proc/non_root_method.rs: ...here. - * rust/compile/proc_macro_non_root_module.rs: Move to... - * rust/compile/macros/proc/non_root_module.rs: ...here. - * rust/compile/proc_macro_derive_non_root_method.rs: Move to... - * rust/compile/macros/proc/non_root_trait_method.rs: ...here. - * rust/compile/proc_macro_private.rs: Move to... - * rust/compile/macros/proc/private.rs: ...here. - * rust/compile/proc_macro_pub_function.rs: Move to... - * rust/compile/macros/proc/pub_function.rs: ...here. - * rust/compile/proc_macro_pub_module.rs: Move to... - * rust/compile/macros/proc/pub_module.rs: ...here. - -2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/issue-3045-1.rs: - Add test for #[may_dangle] Generic Type triggering error - * rust/compile/issue-3045-2.rs: - Add test for #[may_dangle] Lifetime triggering error - -2025-03-19 Muhammad Mahad <mahadtxt@gmail.com> - - * rust/rustc/README.md: information about - rustc external directory. - * rust/rustc/rustc.exp: New test. - -2025-03-19 Antonio Gomes <antoniospg100@gmail.com> - - * rust/compile/macro-issue2983_2984.rs: - Add test to check for correct stripped fields - -2025-03-19 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/119272 - * gfortran.dg/associate_74.f90: New test. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - PR target/119357 - * gcc.target/i386/avx512vlbw-pr119357.c: New test. - -2025-03-19 Tamar Christina <tamar.christina@arm.com> - - PR target/119286 - * gcc.dg/vect/bb-slp-41.c: Add pragma novector. - * gcc.dg/vect/vect-early-break_133_pfa11.c: Should never vectorize today - as indexes can be out of range. - * gcc.dg/vect/vect-early-break_128.c: Require load_lanes as well. - * gcc.dg/vect/vect-early-break_133_pfa10.c: Likewise. - * gcc.dg/vect/vect-early-break_133_pfa8.c: Likewise. - * gcc.dg/vect/vect-early-break_133_pfa9.c: Likewise. - * gcc.dg/vect/vect-early-break_22.c: Likewise. - * gcc.dg/vect/vect-early-break_26.c: Likewise. - * gcc.dg/vect/vect-early-break_43.c: Likewise. - * gcc.dg/vect/vect-early-break_44.c: Likewise. - * gcc.dg/vect/vect-early-break_6.c: Likewise. - * gcc.dg/vect/vect-early-break_56.c: Expect failures on group misalign. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/pr: Remove. - -2025-03-19 Jakub Jelinek <jakub@redhat.com> - - PR target/118068 - * g++.target/i386/pr118068.C: New test. - -2025-03-19 Martin Uecker <uecker@tugraz.at> - - PR c/118765 - * gcc.dg/pr118765.c: New test. - -2025-03-19 Martin Uecker <uecker@tugraz.at> - - PR c/118061 - * gcc.dg/pr118061.c: New test. - -2025-03-19 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/generic_inst14.adb: New test. - * gnat.dg/generic_inst14_pkg.ads: New helper. - * gnat.dg/generic_inst14_pkg-child.ads: Likewise. - -2025-03-19 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/regname-float-abi.c: New test. - -2025-03-19 liuhongt <hongtao.liu@intel.com> - - PR target/117069 - * gcc.target/i386/apx-ndd-tls-1b.c: Add xfail. - -2025-03-18 Marek Polacek <polacek@redhat.com> - - PR c++/119344 - * g++.dg/conversion/ptrmem10.C: New test. - -2025-03-18 Jason Merrill <jason@redhat.com> - - PR c++/119194 - * g++.dg/template/linkage7.C: New test. - -2025-03-18 Marek Polacek <polacek@redhat.com> - - PR c++/118104 - * g++.dg/cpp0x/alias-decl-variadic3.C: New test. - -2025-03-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119338 - * gfortran.dg/deferred_character_18.f90: Adjust testcase. - * gfortran.dg/allocate_assumed_charlen_5.f90: New test. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR c/119311 - * c-c++-common/musttail14.c: Use * instead of \* in the regexps. - * c-c++-common/musttail25.c: New test. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR c/116545 - * c-c++-common/attr-fallthrough-2.c: Adjust expected diagnostics - for C++. - * c-c++-common/musttail15.c: New test. - * c-c++-common/musttail16.c: New test. - * c-c++-common/musttail17.c: New test. - * c-c++-common/musttail18.c: New test. - * c-c++-common/musttail19.c: New test. - * c-c++-common/musttail20.c: New test. - * c-c++-common/musttail21.c: New test. - * c-c++-common/musttail22.c: New test. - * c-c++-common/musttail23.c: New test. - * c-c++-common/musttail24.c: New test. - * g++.dg/musttail7.C: New test. - * g++.dg/musttail8.C: New test. - * g++.dg/musttail12.C: New test. - * g++.dg/musttail13.C: New test. - * g++.dg/musttail14.C: New test. - * g++.dg/ext/pr116545.C: New test. - -2025-03-18 Bob Dubner <rdubner@symas.com> - - * cobol.dg/group1/check_88.cob: New testcase. - * cobol.dg/group1/comp5.cob: Likewise. - * cobol.dg/group1/declarative_1.cob: Likewise. - * cobol.dg/group1/display.cob: Likewise. - * cobol.dg/group1/display2.cob: Likewise. - * cobol.dg/group1/line-sequential.cob: Likewise. - * cobol.dg/group1/multiple-compares.cob: Likewise. - * cobol.dg/group1/multiply2.cob: Likewise. - * cobol.dg/group1/packed.cob: Likewise. - * cobol.dg/group1/perform-nested-exit.cob: Likewise. - * cobol.dg/group1/pointer1.cob: Likewise. - * cobol.dg/group1/simple-arithmetic.cob: Likewise. - * cobol.dg/group1/simple-classes.cob: Likewise. - * cobol.dg/group1/simple-if.cob: Likewise. - * cobol.dg/group1/simple-perform.cob: Likewise. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - * lib/gcc-dg.exp (${tool}-load): If output-file is set, compare - combined output against content of the [lindex ${output-file} 1] - file. - (dg-output-file): New directive. - * lib/dg-test-cleanup.exp (cleanup-after-saved-dg-test): Clear - output-file variable. - * gcc.dg/dg-output-file-1.c: New test. - * gcc.dg/dg-output-file-1-lp64.txt: New test. - * gcc.dg/dg-output-file-1-ilp32.txt: New test. - -2025-03-18 Patrick Palka <ppalka@redhat.com> - - PR c++/119233 - * g++.dg/template/fn-ptr5.C: New test. - -2025-03-18 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119307 - * gcc.target/i386/pr119307.c: New test. - -2025-03-18 Richard Biener <rguenther@suse.de> - - PR debug/101533 - * g++.dg/debug/pr101533.C: New testcase. - -2025-03-18 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx512f-pr103750-1.c: Remove XFAIL. - * gcc.target/i386/avx512f-pr103750-2.c: Ditto. - * gcc.target/i386/avx512fp16-pr103750-1.c: Ditto. - * gcc.target/i386/avx512fp16-pr103750-2.c: Ditto. - -2025-03-18 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/redundant-andi-2.c: New test. - -2025-03-17 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/redundant-andi.c: New test. - * gcc.target/riscv/redundant-ori.c: Likewise - -2025-03-17 H.J. Lu <hjl.tools@gmail.com> - - * gcc.dg/pr90838-2.c (ctz4): Replace long with long long. - -2025-03-17 Muhammad Mahad <mahadtxt@gmail.com> - - * rust/compile/unknown-associated-item.rs: New test. - -2025-03-17 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/issue-2987.rs: - Add test for deriving Clone and Copy at the same time - -2025-03-17 Liam Naddell <liam.naddell@mail.utoronto.ca> - - * rust/compile/issue-3046.rs: - Add test for new error message - -2025-03-17 badumbatish <tanghocle456@gmail.com> - - * rust/execute/torture/issue-2187.rs: - Update pattern with \r* for dg-output tests - * rust/execute/xfail/macro1.rs: Likewise - -2025-03-17 Antonio Gomes <antoniospg100@gmail.com> - - * rust/compile/shadow1.rs: Fix test for new error message - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_illegal_options.rs: new test - * rust/compile/inline_asm_illegal_operands.rs: New test. - This is expected to fail but we couldn't resolve parse_expr()'s - general functionality yet - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_outside_unsafe.rs: New test. - -2025-03-17 dave <dave@dmetwo.org> - - * rust/compile/issue-2725.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_parse_operand.rs: fix warnings - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_parse_operand.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_illegal_options.rs: - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_faulty_clobber.rs: compress - the test - * rust/compile/inline_asm_nop.rs: compress - the test - * rust/compile/inline_asm_faulty_clobber_1.rs: Removed. - * rust/compile/inline_asm_faulty_clobber_2.rs: Removed. - * rust/compile/inline_asm_nop_2.rs: Removed. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_faulty_clobber.rs: Likewise. - * rust/compile/inline_asm_faulty_clobber_1.rs: Likewise. - * rust/compile/inline_asm_faulty_clobber_2.rs: Likewise. - * rust/compile/inline_asm_illegal_options.rs: Likewise. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_illegal_options.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_faulty_clobber.rs: - Wraps inline_asm tests in unsafe {} - * rust/compile/inline_asm_faulty_clobber_1.rs: likewise. - * rust/compile/inline_asm_faulty_clobber_2.rs: likewise. - * rust/compile/inline_asm_ident_first.rs: likewise. - * rust/compile/inline_asm_nop.rs: likewise. - * rust/compile/inline_asm_nop_2.rs: likewise. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_legal_options.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_faulty_clobber.rs: New test. - * rust/compile/inline_asm_faulty_clobber_1.rs: New test. - * rust/compile/inline_asm_faulty_clobber_2.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_nop_2.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_ident_first.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/inline_asm_nop.rs: Simple test for asm! - -2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/exclusive_range_pattern.rs: New test. - * rust/compile/exclusive_range_pattern_feature_gate.rs: New test. - -2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/not_raw_ref_op.rs: New test. - * rust/compile/raw_ref_op.rs: New test. - * rust/compile/raw_ref_op_feature_gate.rs: New test. - * rust/compile/raw_ref_op_invalid.rs: New test. - -2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/struct_expr_field_attributes.rs: New test. - -2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/dropck_eyepatch_feature_gate.rs: New test. - * rust/compile/may_dangle.rs: New test. - -2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> - - * rust/compile/box_syntax.rs: New test. - * rust/compile/box_syntax_feature_gate.rs: New test. - -2025-03-17 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/rustc_const_stable.rs: - Enable feature rustc_attrs, expect no errors. - * rust/compile/rustc_const_unstable.rs: New test. - -2025-03-17 jjasmine <tanghocle456@gmail.com> - - * rust/compile/negative_impls.rs: New test. - * rust/compile/negative_impls_2.rs: New test. - -2025-03-17 Owen Avery <powerboat9.gamer@gmail.com> - - * rust/compile/match-struct-path.rs: New test. - -2025-03-17 Nobel Singh <nobel2073@gmail.com> - - * rust/compile/issue-2906.rs: New test. - * rust/execute/torture/issue-2906.rs: New test. - -2025-03-17 Jakub Dupak <dev@jakubdupak.com> - - * rust/borrowck/borrowck.exp: New test. - * rust/borrowck/position_dependant_outlives.rs: New test. - * rust/borrowck/reference.rs: New test. - * rust/borrowck/return_ref_to_local.rs: New test. - * rust/borrowck/subset.rs: New test. - * rust/borrowck/test_move.rs: New test. - * rust/borrowck/test_move_behind_reference.rs: New test. - * rust/borrowck/test_move_conditional.rs: New test. - * rust/borrowck/tmp.rs: New test. - * rust/borrowck/use_while_mut.rs: New test. - * rust/borrowck/use_while_mut_fr.rs: New test. - * rust/borrowck/well_formed_function_inputs.rs: New test. - -2025-03-17 John David Anglin <danglin@gcc.gnu.org> - - PR testsuite/119220 - * gcc.dg/debug/dwarf2/inline2.c: Add -gno-strict-dwarf option. - * gcc.dg/debug/dwarf2/inline6.c: Likewise. - -2025-03-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.dg/vect/bb-slp-77.c: Skip on s390. - -2025-03-17 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/115271 - * gfortran.dg/gomp/declare-variant-mod-1-use.f90: Move to - libgomp/testsuite/libgomp.fortran/. - * gfortran.dg/gomp/declare-variant-mod-1.f90: Likewise. - -2025-03-17 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119114 - * gcc.target/riscv/rvv/autovec/pr119114.c: New test. - -2025-03-17 Ayan Shafqat <ayan.x.shafqat@gmail.com> - - * gcc.target/aarch64/acle/acle_fma.c: New test. - -2025-03-16 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * gcc.target/riscv/pr116256-1.c: New test. - -2025-03-16 Harald Anlauf <anlauf@gmx.de> - - PR fortran/60560 - * gfortran.dg/allocate_error_8.f90: New test. - -2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/pr100967.d: Adjust error message. - -2025-03-16 Robert Dubner <rdubner@symas.com> - - * cobol.dg/dg.exp: modified to recurse into directories without - .exp files and find *.cob files therein. - * cobol.dg/group1/escape.cob: New testcase. - -2025-03-16 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/113546 - * c-c++-common/torture/pr113546-1.c: New test. - -2025-03-16 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/115111 - * gm2/pim/pass/whilestep.mod: New test. - -2025-03-15 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/115271 - * gfortran.dg/gomp/declare-variant-mod-1-use.f90: New test. - * gfortran.dg/gomp/declare-variant-mod-1.f90: New test. - * gfortran.dg/gomp/declare-variant-mod-2-use.f90: New test. - * gfortran.dg/gomp/declare-variant-mod-2.f90: New test. - -2025-03-15 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.c: Removed. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i8.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u16.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u32.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u8.c: New test. - * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.h: New test. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR cobol/119290 - * lib/target-supports.exp (check_compile): Use *.cob extension for - "*> COBOL" comment. - * lib/cobol-dg.exp (check_effective_target_cobol): New procedure. - * cobol.dg/dg.exp: Guard main loop with [check_effective_target_cobol] - test. - -2025-03-14 Martin Jambor <mjambor@suse.cz> - - PR ipa/116572 - * g++.dg/ipa/pr116572.C: New test. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119287 - * gcc.dg/pr119287.c: New test. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR target/119120 - * c-c++-common/pr119120.c: New test. - -2025-03-14 Jakub Jelinek <jakub@redhat.com> - - PR analyzer/119278 - * c-c++-common/analyzer/pr119278.c: New test. - -2025-03-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119274 - * g++.dg/opt/pr119274.C: New testcase. - -2025-03-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119155 - * gcc.dg/vect/pr119155.c: New testcase. - -2025-03-13 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119118 - * gfortran.dg/bounds_check_26.f90: Update test. - -2025-03-13 Iain Sandoe <iain@sandoe.co.uk> - - * lib/gm2.exp: Arrange for a '-B' option to be added for the - libstdc++ paths on targets that need it. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/113965 - * gcc.target/aarch64/sve/mask_struct_load_3_run.c: Use an - input range that is suitable for _Float16. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/pr96357.c: Add -fno-tree-sink. - -2025-03-13 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/117092 - * gcc.target/aarch64/pr109072_1.c: xfail s16x4_2. - -2025-03-13 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (find-dg-do-what): Move... - * lib/target-supports-dg.exp: ... here. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/pointer-arith-11.c: New test. - * gcc.dg/pointer-arith-12.c: Likewise. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/fold-mul-and-lshift-1.c: New test. - * gcc.dg/fold-mul-and-lshift-2.c: Likewise. - -2025-03-13 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/115248 - * gcc.target/aarch64/sve/pre_cond_share_1.c: Delete - -2025-03-13 Robin Dapp <rdapp@ventanamicro.com> - - PR target/119115 - * gcc.target/riscv/rvv/base/pr119115.c: New test. - -2025-03-13 Robin Dapp <rdapp@ventanamicro.com> - - PR target/117955 - * gcc.target/riscv/rvv/base/bug-10.c: Convert to run test. - * gcc.target/riscv/rvv/base/bug-10-2.c: New test. - * gcc.target/riscv/rvv/base/pr117955.c: New test. - -2025-03-13 Richard Biener <rguenther@suse.de> - - PR cobol/119229 - * cobol.dg/pr119229.cob: New testcase. - -2025-03-13 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/117262 - * c-c++-common/analyzer/raw-data-cst-pr117262-1.c: New test. - * c-c++-common/analyzer/raw-data-cst-pr117262-2.c: New test. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR c++/119150 - * g++.dg/cpp2a/consteval41.C: New test. - -2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118799 - * g++.dg/modules/export-6.C: Adjust error message, add check for - no-linkage decls in namespace. - * g++.dg/modules/internal-4_b.C: Allow exposing a namespace with - internal linkage. Type aliases are not entities and so never - exposures. - * g++.dg/modules/using-30_a.C: New test. - * g++.dg/modules/using-30_b.C: New test. - * g++.dg/modules/using-30_c.C: New test. - -2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/119154 - * g++.dg/modules/linkage-3_a.C: New test. - * g++.dg/modules/linkage-3_b.C: New test. - * g++.dg/modules/pr119154_a.C: New test. - * g++.dg/modules/pr119154_b.C: New test. - -2025-03-12 Marek Polacek <polacek@redhat.com> - - PR c++/117512 - * g++.dg/cpp0x/alignas23.C: New test. - * g++.dg/ext/align3.C: New test. - * g++.dg/ext/align4.C: New test. - * g++.dg/ext/align5.C: New test. - -2025-03-12 Simon Martin <simon@nasilyan.com> - - PR c++/110584 - * g++.dg/cpp0x/lambda/lambda-nested10.C: New test. - -2025-03-12 Richard Earnshaw <rearnsha@arm.com> - - PR target/117931 - * gcc.target/arm/lp1243022.c: Delete non-functional test. - -2025-03-12 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119078 - * gfortran.dg/binding_label_tests_26b.f90: Remove bogus dg-error - statements. - -2025-03-12 Marek Polacek <polacek@redhat.com> - - PR c++/119134 - * g++.dg/cpp2a/lambda-uneval24.C: New test. - -2025-03-12 Alex Coplan <alex.coplan@arm.com> - - PR rtl-optimization/116564 - * gcc.target/aarch64/torture/pr116564.c: New test. - -2025-03-12 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/98903 - * gfortran.dg/coarray/coindexed_2.f90: New test. - * gfortran.dg/coarray/coindexed_3.f08: New test. - * gfortran.dg/coarray/coindexed_4.f08: New test. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/119226 - * gcc.c-torture/compile/pr119226.c: New test. - -2025-03-12 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/116901 - * gcc.target/aarch64/sve/reduc_strict_4.c: Turn off costing. - * gcc.target/aarch64/sve/reduc_strict_5.c: Likewise. - -2025-03-12 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/pr110625_1.c: Turn into a positive test for - a vector latency of 2, rather than a negative test for a vector - latency of 8. - -2025-03-12 Richard Biener <rguenther@suse.de> - - * lib/cobol-dg.exp: New, based on gfortran-dg.exp. - * lib/cobol.exp: New, based on gfortran.exp. - * cobol.dg/dg.exp: New. - * cobol.dg/pass.cob: New test. - * cobol.dg/fail.cob: Likewise. - * cobol.dg/error-1.cob: Likewise. - -2025-03-12 Jakub Jelinek <jakub@redhat.com> - - PR c++/119076 - * g++.dg/modules/pr119076-1_a.H: New test. - * g++.dg/modules/pr119076-1_b.C: New test. - * g++.dg/modules/pr119076-2_a.H: New test. - * g++.dg/modules/pr119076-2_b.C: New test. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * gcc.dg/Wunterminated-string-initialization-2.c: New test. - -2025-03-11 Andrew Pinski <quic_apinski@quicinc.com> - - PR target/119131 - * gcc.dg/torture/pr119131-1.c: New test. - -2025-03-11 Jason Merrill <jason@redhat.com> - - PR c++/119162 - * g++.dg/cpp2a/constexpr-new26.C: New test. - -2025-03-11 Sandra Loosemore <sloosemore@baylibre.com> - - PR c/118579 - * c-c++-common/gomp/pr118579.c: New testcase. - -2025-03-11 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/119139 - * gdc.dg/pr119139.d: New test. - -2025-03-11 Oscar Gustafsson <oscar.gustafsson@gmail.com> - - * gcc.dg/builtin-bswap-5.c: Improve test vector to avoid nibble - swaps passing. - -2025-03-11 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119199 - * gfortran.dg/common_30.f90: New test. - * gfortran.dg/common_31.f90: New test. - -2025-03-11 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118956 - * gcc.target/aarch64/sve/pred-not-gen-1.c: Add XFAILs. - * gcc.target/aarch64/sve/pred-not-gen-4.c: Likewise. - -2025-03-11 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119078 - * gfortran.dg/interface_58.f90: New test. - -2025-03-11 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/tbz_2.c: Accept both 32-bit and 64-bit registers. - -2025-03-11 Juergen Christ <jchrist@linux.ibm.com> - - * gcc.target/s390/delegitimize-1.c: New test. - -2025-03-11 H.J. Lu <hjl.tools@gmail.com> - - PR target/119171 - * gcc.target/i386/pr119171-1.c: New test. - * gcc.target/i386/pr119171-2.c: Likewise. - -2025-03-11 Richard Biener <rguenther@suse.de> - - PR middle-end/119204 - * gcc.dg/pr119204.c: New testcase. - -2025-03-11 Richard Earnshaw <rearnsha@arm.com> - - * lib/target-supports.exp - (check_effective_target_arm_neon_h_ok_nocache): Return zero if - check_effective_target_arm_libc_fp_abi_ok reports failure. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - PR c/119183 - * gcc.dg/pr119183.c: New test. - -2025-03-11 Jakub Jelinek <jakub@redhat.com> - - PR debug/119190 - * gfortran.dg/guality/pr119190.f90: New test. - -2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/20020926-1.c: Deal with deprecation warning. - * gcc.target/s390/dwarfregtable-1.c: Ditto. - * gcc.target/s390/fp2int1.c: Ditto. - * gcc.target/s390/pr102222.c: Ditto. - * gcc.target/s390/pr106355-3.c: Ditto. - * gcc.target/s390/pr61078.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-10.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-12.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-14.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-18.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-2.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-20.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-22.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-24.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-26.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-28.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-30.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-32.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-4.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-6.c: Ditto. - * gcc.target/s390/target-attribute/tattr-m31-8.c: Ditto. - -2025-03-10 Richard Sandiford <richard.sandiford@arm.com> - Kugan Vivekanandarajah <kvivekananda@nvidia.com> - - PR target/115258 - * gcc.target/aarch64/pr115258_2.c: New test. - -2025-03-10 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/114991 - * gcc.target/aarch64/pr114991.c: New test. - -2025-03-10 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119192 - * gm2/sets/run/pass/simplepacked.mod: Uncomment asserts. - -2025-03-10 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/internal-10.C: New test. - -2025-03-10 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107143 - * gfortran.dg/forall_20.f90: New test. - -2025-03-10 Jakub Jelinek <jakub@redhat.com> - Michael Leuchtenburg <michael@slashhome.org> - - PR libgcc/119151 - * gcc.dg/pr119151.c: New test. - -2025-03-10 Xi Ruoyao <xry111@xry111.site> - - PR target/119127 - * gcc.target/loongarch/pr119127.c: New file. - -2025-03-10 Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * c-c++-common/attr-nonstring-11.c: Remove xfails. - * c-c++-common/attr-nonstring-12.c (warn_strcmp_cst_1, - warn_strcmp_cst_2): Don't expect any warnings here. - (warn_strcmp_cst_3, warn_strcmp_cst_4): New functions with expected - warnings. - -2025-03-10 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.dg/vect/slp-26.c: Adjust. - -2025-03-10 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.dg/vect/bb-slp-77.c: Add loongarch*-*-* to the list - of expected failing targets. - -2025-03-10 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.dg/vect/pr112325.c: Add the vector compilation - option '-mlsx' for LoongArch. - * gcc.dg/vect/pr117888-1.c: Likewise. - -2025-03-09 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118922 - * gcc.dg/torture/pr118922-1.c: New test. - -2025-03-09 Dimitar Dimitrov <dimitar@dinux.eu> - - PR target/119133 - * gcc.dg/torture/pr119133.c: Require effective target float16. - -2025-03-09 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/118457 - * c-c++-common/gomp/adjust-args-6.c: Remove xfails and adjust - expected output. - * c-c++-common/gomp/append-args-5.c: Adjust expected output. - * c-c++-common/gomp/append-args-dynamic.c: New. - * c-c++-common/gomp/dispatch-11.c: Adjust expected output. - * gfortran.dg/gomp/dispatch-11.f90: Likewise. - -2025-03-08 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119157 - * gfortran.dg/interface_57.f90: New test. - -2025-03-08 Jason Merrill <jason@redhat.com> - Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/114630 - PR c++/114795 - * g++.dg/modules/modules.exp: Run xtreme tests once. - * g++.dg/modules/gmf-3.C: New test. - * g++.dg/modules/gmf-4.C: New test. - * g++.dg/modules/gmf-xtreme.C: New test. - -2025-03-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/119054 - * gfortran.dg/pr95446.f90: Expand test case to literals and - function calls. - Signed-off-by: Peter Hill <peter.hill@york.ac.uk> - -2025-03-07 Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * c-c++-common/attr-nonstring-7.c: Remove one xfail. - * c-c++-common/attr-nonstring-9.c: New test. - * c-c++-common/attr-nonstring-10.c: New test. - * c-c++-common/attr-nonstring-11.c: New test. - * c-c++-common/attr-nonstring-12.c: New test. - * c-c++-common/attr-nonstring-13.c: New test. - * c-c++-common/attr-nonstring-14.c: New test. - * c-c++-common/attr-nonstring-15.c: New test. - * c-c++-common/attr-nonstring-16.c: New test. - -2025-03-07 Kees Cook <kees@kernel.org> - Jakub Jelinek <jakub@redhat.com> - - PR c/117178 - * gcc.dg/Wunterminated-string-initialization.c: Add additional test - coverage. - * gcc.dg/Wcxx-compat-14.c: Check in dg-warning for "for C++" part of - the diagnostics. - * gcc.dg/Wcxx-compat-23.c: New test. - * gcc.dg/Wcxx-compat-24.c: New test. - -2025-03-07 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.dg/Wreturn-mismatch-2a.c: Change dg-warning - for the last -Wreturn-type to dg-bogus. - * gcc.dg/Wreturn-mismatch-6.c: Likewise. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/117477 - * gcc.target/aarch64/callee_save_1.c: New test. - * gcc.target/aarch64/callee_save_2.c: Likewise. - * gcc.target/aarch64/callee_save_3.c: Likewise. - * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. - -2025-03-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR c/60440 - * gcc.dg/Wreturn-mismatch-2.c: Change dg-warning - for the last -Wreturn-type to dg-bogus. - * gcc.dg/pr60440-1.c: New test. - -2025-03-07 Marek Polacek <polacek@redhat.com> - - PR c++/118775 - * g++.dg/cpp2a/constexpr-new24.C: New test. - * g++.dg/cpp2a/constexpr-new25.C: New test. - -2025-03-07 Richard Earnshaw <rearnsha@arm.com> - - * lib/target-supports.exp - (check_effective_target_arm_neon_h_ok_nocache): New function. - (check_effective_target_arm_neon_h_ok): Likewise. - (add_options_for_arm_neon_h): Likewise. - (check_effective_target_arm_libc_fp_abi_ok_nocache): Allow any - Arm target, not just arm32. - * gcc.target/arm/attr-neon-builtin-fail.c: Use it. - * gcc.target/arm/attr-neon-builtin-fail2.c: Likewise. - * gcc.target/arm/attr-neon-fp16.c: Likewise. - * gcc.target/arm/attr-neon2.c: Likewise. - -2025-03-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118464 - PR tree-optimization/116855 - * gcc.dg/vect/bb-slp-pr65935.c: Update, it now vectorizes because the - load type is relaxed later. - * gcc.dg/vect/vect-early-break_121-pr114081.c: Update. - * gcc.dg/vect/vect-early-break_22.c: Require partial vectors. - * gcc.dg/vect/vect-early-break_128.c: Likewise. - * gcc.dg/vect/vect-early-break_26.c: Likewise. - * gcc.dg/vect/vect-early-break_43.c: Likewise. - * gcc.dg/vect/vect-early-break_44.c: Likewise. - * gcc.dg/vect/vect-early-break_2.c: Require load_lanes. - * gcc.dg/vect/vect-early-break_7.c: Likewise. - * gcc.dg/vect/vect-early-break_132-pr118464.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa1.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa11.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa10.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa2.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa3.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa4.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa5.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa6.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa7.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa8.c: New test. - * gcc.dg/vect/vect-early-break_133_pfa9.c: New test. - * gcc.dg/vect/vect-early-break_39.c: Update testcase for misalignment. - * gcc.dg/vect/vect-early-break_18.c: Likewise. - * gcc.dg/vect/vect-early-break_20.c: Likewise. - * gcc.dg/vect/vect-early-break_21.c: Likewise. - * gcc.dg/vect/vect-early-break_38.c: Likewise. - * gcc.dg/vect/vect-early-break_6.c: Likewise. - * gcc.dg/vect/vect-early-break_53.c: Likewise. - * gcc.dg/vect/vect-early-break_56.c: Likewise. - * gcc.dg/vect/vect-early-break_57.c: Likewise. - * gcc.dg/vect/vect-early-break_81.c: Likewise. - -2025-03-07 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119145 - * gcc.dg/vect/pr119145.c: New testcase. - -2025-03-07 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/115485 - * g++.target/arm/pr115485.C: New test. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/116125 - * gcc.dg/vect/pr116125.c: New test. - -2025-03-07 Richard Sandiford <richard.sandiford@arm.com> - - PR target/119133 - * gcc.dg/torture/pr119133.c: New test. - -2025-03-07 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_2-512-convert-1.c: Change function call. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - -2025-03-06 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/119099 - * gcc.dg/torture/pr119099.c: New test. - -2025-03-06 Harald Anlauf <anlauf@gmx.de> - - PR fortran/119118 - * gfortran.dg/bounds_check_23.f90: Generalize test. - * gfortran.dg/bounds_check_26.f90: New test. - -2025-03-06 Simon Martin <simon@nasilyan.com> - - * gcc.target/powerpc/ppc64-abi-1.c: Fix comment typos, paramter - -> parameter. - * gcc.target/powerpc/ppc64-abi-2.c: Likewise. - -2025-03-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/98533 - PR c++/119123 - * g++.dg/cpp0x/pr98533.C: New test. - * g++.dg/cpp0x/pr119123.C: New test. - -2025-03-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/119138 - * g++.dg/template/pr119138.C: New test. - -2025-03-06 Jakub Jelinek <jakub@redhat.com> - - PR fortran/104826 - * gfortran.dg/gomp/pr104826.f90: New test. - -2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - - Revert: - 2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - - PR rtl-optimization/117477 - * gcc.target/aarch64/callee_save_1.c: New test. - * gcc.target/aarch64/callee_save_2.c: Likewise. - * gcc.target/aarch64/callee_save_3.c: Likewise. - * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. - -2025-03-06 Richard Biener <rguenther@suse.de> - - PR lto/114501 - * g++.dg/pr114501_0.C: New testcase. - -2025-03-06 Richard Sandiford <richard.sandiford@arm.com> - Jan Hubicka <hubicka@ucw.cz> - - PR rtl-optimization/117477 - * gcc.target/aarch64/callee_save_1.c: New test. - * gcc.target/aarch64/callee_save_2.c: Likewise. - * gcc.target/aarch64/callee_save_3.c: Likewise. - * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. - -2025-03-06 Richard Biener <rguenther@suse.de> - - PR middle-end/119119 - * g++.dg/torture/pr11911.C: New testcase. - -2025-03-06 Simon Martin <simon@nasilyan.com> - - PR c++/117504 - * g++.dg/cpp2a/constexpr-117504.C: New test. - * g++.dg/cpp2a/constexpr-117504a.C: New test. - -2025-03-06 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_zbb.c: Tweak - the asm check for vsetvl. - -2025-03-06 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/core_list_init.c: Use -fext-dce rather than - -O1. Skip for -O0. - * gcc.target/riscv/pr111384.c: Ditto. - -2025-03-05 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118998 - * gm2/iso/pass/testrotate.mod: New test. - * gm2/pim/fail/tinyconst.mod: New test. - * gm2/sets/run/pass/simplepacked.mod: New test. - -2025-03-05 Marek Polacek <polacek@redhat.com> - - PR c++/115580 - * g++.dg/warn/Wnonnull16.C: New test. - -2025-03-05 Jason Merrill <jason@redhat.com> - Jakub Jelinek <jakub@redhat.com> - - PR c++/117364 - PR c++/118874 - * g++.dg/coroutines/torture/pr118874.C: New test. - -2025-03-05 Hannes Braun <hannes@hannesbraun.net> - - PR target/118942 - * gcc.target/arm/simd/vld1q_base_xN_1.c: Add -Wpointer-sign. - -2025-03-05 Da Xie <xxie_xd@163.com> - - PR c++/100589 - * g++.dg/cpp2a/concepts-pr100589.C: New test. - -2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> - - PR rtl-optimization/119046 - * gcc.target/aarch64/pr119046.c: New test. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118953 - * gcc.dg/torture/pr118953.c: New test. - -2025-03-05 Richard Biener <rguenther@suse.de> - - PR middle-end/97323 - * gcc.dg/pr97323.c: New testcase. - -2025-03-05 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/104684 - * gfortran.dg/coarray/ptr_comp_6.f08: New test. - -2025-03-05 Simon Martin <simon@nasilyan.com> - - PR c++/116740 - * g++.dg/parse/crash80.C: New test. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR c++/119102 - * g++.dg/modules/pr119102_a.H: New test. - * g++.dg/modules/pr119102_b.C: New test. - * g++.dg/modules/omp-3_a.C: New test. - * g++.dg/modules/omp-3_b.C: New test. - * g++.dg/modules/omp-3_c.C: New test. - * g++.dg/modules/omp-3_d.C: New test. - * g++.dg/modules/oacc-1_a.C: New test. - * g++.dg/modules/oacc-1_b.C: New test. - * g++.dg/modules/oacc-1_c.C: New test. - -2025-03-05 Jakub Jelinek <jakub@redhat.com> - - PR c++/118787 - * g++.dg/cpp0x/alignas22.C: New test. - -2025-03-05 Xi Ruoyao <xry111@xry111.site> - - PR target/119084 - * gcc.target/loongarch/pr119084.c: New test. - -2025-03-04 Jason Merrill <jason@redhat.com> - - PR c++/119073 - * g++.dg/cpp0x/range-for39.C: New test. - -2025-03-04 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/119049 - PR fortran/119074 - * gfortran.dg/interface_55.f90: New test. - * gfortran.dg/interface_56.f90: New test. - -2025-03-04 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/pr68674.c: Use effective-target arm_arch_v7a - and arm_libc_fp_abi. - -2025-03-04 Jan Hubicka <hubicka@ucw.cz> - - * gcc.target/i386/blsi.c: New test. - * gcc.target/i386/blsmsk.c: New test. - * gcc.target/i386/blsr.c: New test. - -2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/103391 - * gfortran.dg/assign_12.f90: New test. - -2025-03-04 Marek Polacek <polacek@redhat.com> - - PR c++/109431 - * g++.dg/init/array67.C: New test. - -2025-03-04 Tamar Christina <tamar.christina@arm.com> - - PR target/118892 - * gcc.target/aarch64/copysign-pr118892.c: New test. - -2025-03-04 Richard Sandiford <richard.sandiford@arm.com> - Jakub Jelinek <jakub@redhat.com> - - * gcc.c-torture/execute/ieee/pr119002.c: New test. - * gcc.target/aarch64/pr117186.c: Run at -O2 rather than -O. - -2025-03-04 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/119071 - * gcc.dg/pr119071.c: New test. - * gcc.c-torture/execute/pr119071.c: New test. - -2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/77872 - * gfortran.dg/coarray/class_1.f90: New test. - -2025-03-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119096 - * gcc.dg/vect/pr119096.c: New testcase. - -2025-03-04 Pan Li <pan2.li@intel.com> - - * gcc.target/riscv/rvv/autovec/bug-3.c: Update asm check to - function body check. - -2025-03-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/101577 - * gfortran.dg/empty_derived_type.f90: Adjust dg-options. - * gfortran.dg/empty_derived_type_2.f90: New test. - -2025-03-03 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/unsigned-extend-1.c: Expand check for any - insn suggesting a zero-extend. XFAIL for thumb1 code. - -2025-03-03 Uros Bizjak <ubizjak@gmail.com> - - PR rtl-optimization/118739 - * gcc.target/i386/pr118739.c: New test. - -2025-03-03 Martin Jambor <mjambor@suse.cz> - - PR ipa/118785 - * g++.dg/lto/pr118785_0.C: New test. - -2025-03-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/119057 - * gcc.dg/vect/pr119057.c: New testcase. - -2025-03-03 Richard Biener <rguenther@suse.de> - - PR ipa/119067 - * g++.dg/lto/pr119067_0.C: New testcase. - * g++.dg/lto/pr119067_1.C: Likewise. - -2025-03-03 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118747 - * gfortran.dg/alloc_comp_auto_array_4.f90: New test. - -2025-03-02 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/119088 - * gm2/pim/fail/tinyfor4.mod: New test. - -2025-03-02 Filip Kastl <fkastl@suse.cz> - - PR tree-optimization/117919 - * g++.dg/pr117919.C: New test. - -2025-03-01 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> - - PR target/118906 - * gcc.target/riscv/attribute-zce-1.c: New test. - * gcc.target/riscv/attribute-zce-2.c: New test. - * gcc.target/riscv/attribute-zce-3.c: New test. - * gcc.target/riscv/attribute-zce-4.c: New test. - -2025-03-01 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/115871 - * gcc.dg/gomp/simd-clones-8.c: New test. - -2025-03-01 Xi Ruoyao <xry111@xry111.site> - - * c-c++-common/toplevel-asm-1.c: Use %cc3 %cc4 instead of %c3 - %c4 on LoongArch. - -2025-02-28 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/116961 - * gdc.dg/pr116961.d: New test. - -2025-02-28 Marek Polacek <polacek@redhat.com> - - PR c++/114913 - PR c++/110822 - * g++.dg/cpp0x/constexpr-nsdmi4.C: New test. - * g++.dg/cpp0x/constexpr-nsdmi5.C: New test. - -2025-02-28 Marek Polacek <polacek@redhat.com> - - PR c++/118986 - * g++.dg/cpp2a/constexpr-prvalue1.C: New test. - -2025-02-28 Martin Jambor <mjambor@suse.cz> - - PR ipa/118243 - * g++.dg/ipa/pr118243.C: New test. - -2025-02-28 Patrick Palka <ppalka@redhat.com> - - PR c++/119038 - * g++.dg/cpp23/explicit-obj-lambda15.C: New test. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - PR c++/119045 - * g++.dg/cpp1y/constexpr-complex2.C: New test. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/cpp/embed-1.C: Adjust for pedwarn wording change and don't - expect any error for C++26. - * g++.dg/cpp/embed-2.C: Adjust for pedwarn wording change and don't - expect any warning for C++26. - * g++.dg/cpp26/feat-cxx26.C: Test __cpp_pp_embed value. - * gcc.dg/cpp/embed-17.c: New test. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR lto/91299 - * gcc.dg/lto/pr91299_0.c: New testcase. - * gcc.dg/lto/pr91299_1.c: Likewise. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR ipa/111245 - * g++.dg/torture/pr111245.C: New testcase. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117712 - * gcc.dg/pr117712.c: New test. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/87984 - * gcc.target/i386/pr87984.c: New testcase. - -2025-02-28 Richard Biener <rguenther@suse.de> - - PR middle-end/66279 - * g++.dg/pr66279.C: New testcase. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - * gcc.target/i386/strub-pr118006.c: Remove -m32 from dg-options. - -2025-02-28 Jakub Jelinek <jakub@redhat.com> - - PR target/118940 - * gcc.target/i386/pr118940.c: Drop -w, -g and -m32 from dg-options, move - -march=i386 -mregparm=3 to dg-additional-options for ia32 and -fno-pie - to dg-additional-options for pie. Reduce the test. - -2025-02-28 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118730 - * gfortran.dg/class_array_15.f03: Remove unused variable. - * gfortran.dg/coarray_poly_7.f90: Adapt scan-tree-dump expr. - * gfortran.dg/coarray_poly_8.f90: Same. - * gfortran.dg/finalize_60.f90: New test. - -2025-02-27 Pan Li <pan2.li@intel.com> - - PR target/118931 - * gcc.target/riscv/rvv/base/pr118931-run-1.c: New test. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/119030 - * gcc.c-torture/execute/pr119030.c: New test. - -2025-02-27 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/118860 - * gcc.dg/pr118860.c: New test. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/stack_frame-1.c: Adjust. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/stack_frame-1.c: New. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/alloca-1-O0_-mfake-ptx-alloca.c: New. - * gcc.target/nvptx/alloca-2-O0_-mfake-ptx-alloca.c: Likewise. - * gcc.target/nvptx/alloca-4-O3_-mfake-ptx-alloca.c: Likewise. - * gcc.target/nvptx/vla-1-O0_-mfake-ptx-alloca.c: Likewise. - * gcc.target/nvptx/alloca-4-O3.c: - 'dg-additional-options -mfake-ptx-alloca'. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/alloca-1-unused-O0-sm_30.c: Adjust. - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/alloca-1-dead-O0-sm_30.c: New. - * gcc.target/nvptx/alloca-1-dead-O0.c: Likewise. - * gcc.target/nvptx/alloca-1-dead-O1-sm_30.c: Likewise. - * gcc.target/nvptx/alloca-1-dead-O1.c: Likewise. - * gcc.target/nvptx/alloca-1-unused-O0-sm_30.c: Likewise. - * gcc.target/nvptx/alloca-1-unused-O0.c: Likewise. - * gcc.target/nvptx/alloca-1-unused-O1-sm_30.c: Likewise. - * gcc.target/nvptx/alloca-1-unused-O1.c: Likewise. - * gcc.target/nvptx/vla-1-dead-O0-sm_30.c: Likewise. - * gcc.target/nvptx/vla-1-dead-O0.c: Likewise. - * gcc.target/nvptx/vla-1-dead-O1-sm_30.c: Likewise. - * gcc.target/nvptx/vla-1-dead-O1.c: Likewise. - * gcc.target/nvptx/vla-1-unused-O0-sm_30.c: Likewise. - * gcc.target/nvptx/vla-1-unused-O0.c: Likewise. - * gcc.target/nvptx/vla-1-unused-O1-sm_30.c: Likewise. - * gcc.target/nvptx/vla-1-unused-O1.c: Likewise. - -2025-02-27 Marek Polacek <polacek@redhat.com> - - PR c++/118928 - * g++.dg/cpp0x/constexpr-prvalue5.C: New test. - -2025-02-27 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118940 - * gcc.target/i386/pr118940.c: New test. - -2025-02-27 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/116336 - * gcc.dg/pr116336.c: New test. - -2025-02-27 Marek Polacek <polacek@redhat.com> - - PR c++/118516 - * g++.dg/cpp2a/fn-template11.C: - * g++.dg/template/fn-template1.C: New test. - * g++.dg/template/fn-template2.C: New test. - -2025-02-27 Richard Earnshaw <rearnsha@arm.com> - - * gcc.target/arm/lto/pr61123-enum-size_0.c: (dg-lto-options) Move - linker related options to ... - (dg-extra-ld-options): ... here. Add -flinker-output=nolto-rel. - -2025-02-27 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/118789 - * gfortran.dg/associate_73.f90: New test. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR c/119001 - * gcc.dg/pr119001-1.c: New test. - * gcc.dg/pr119001-2.c: New test. - -2025-02-26 Jakub Jelinek <jakub@redhat.com> - - PR c/114870 - * gcc.dg/c23-stddef-2.c: New test. - -2025-02-26 Alexandre Oliva <oliva@adacore.com> - - * lib/target-supports.exp (check_effective_target_x86): New. - Replace all uses of i?86-*-* and x86_64-*-* in this file. - -2025-02-26 Alexandre Oliva <oliva@adacore.com> - - * lib/target-supports-dg.exp (dg-do-if): New. - * gcc.dg/vect/vect-simd-clone-16f.c: Use -msse4 on x86, and - skip in case execution is enabled but the runtime isn't. - * gcc.dg/vect/vect-simd-clone-17f.c: Likewise. - * gcc.dg/vect/vect-simd-clone-18f.c: Likewise. - * gcc.dg/vect/vect-simd-clone-20.c: Likewise, but only skip - the scan test. - -2025-02-26 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/108233 - * gfortran.dg/coarray/complex_1.f90: New test. - -2025-02-26 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118464 - PR tree-optimization/116855 - * g++.dg/ext/pragma-unroll-lambda-lto.C: Add pragma novector. - * gcc.dg/tree-ssa/gen-vect-2.c: Likewise. - * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. - * gcc.dg/tree-ssa/gen-vect-32.c: Likewise. - * gcc.dg/tree-ssa/ivopt_mult_2g.c: Likewise. - * gcc.dg/tree-ssa/ivopts-5.c: Likewise. - * gcc.dg/tree-ssa/ivopts-6.c: Likewise. - * gcc.dg/tree-ssa/ivopts-7.c: Likewise. - * gcc.dg/tree-ssa/ivopts-8.c: Likewise. - * gcc.dg/tree-ssa/ivopts-9.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-1.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-10.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-11.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-12.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-2.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-3.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-4.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-5.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-6.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-7.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-8.c: Likewise. - * gcc.dg/tree-ssa/predcom-dse-9.c: Likewise. - * gcc.target/i386/pr90178.c: Likewise. - -2025-02-25 Andrew Pinski <quic_apinski@quicinc.com> - - PR testsuite/115028 - * gcc.target/i386/pr101950-2.c: Use a pointer argument instead - of the argument directly. - -2025-02-25 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/115458 - * g++.target/riscv/pr115458.C: New. - -2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/118654 - * gdc.dg/target/i386/i386.exp: New test. - * gdc.dg/target/i386/targetinfo_CET.d: New test. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR c/119000 - * c-c++-common/gomp/pr119000.c: New test. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/118876 - * g++.dg/gomp/pr118876.C: New test. - -2025-02-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/118923 - * g++.dg/cpp0x/pr118923.C: New test. - * g++.dg/cpp1y/pr118923.C: New test. - -2025-02-24 Robin Dapp <rdapp@ventanamicro.com> - - PR target/114516 - * gcc.dg/vect/costmodel/riscv/rvv/pr114516.c: New test. - -2025-02-24 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/118950 - * gcc.target/riscv/rvv/autovec/pr118950.c: New test. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118915 - * gcc.c-torture/execute/pr118915.c: New test. - -2025-02-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118973 - * g++.dg/torture/pr118973.C: New testcase. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/118993 - * c-c++-common/gomp/allocate-18.c: Adjust dg-warning regex for - diagnostics typo fix. - * gfortran.dg/gomp/allocate-clause.f90: Likewise. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR c/117023 - * gcc.dg/builtins-nonnull.c (test_memfuncs, test_memfuncs_chk, - test_strfuncs, test_strfuncs_chk): Add if (n == 0) return; at the - start of the functions. - * gcc.dg/Wnonnull-2.c: Copy __builtin_* call statements where - appropriate 3 times, once with 0 length, once with n and once with - non-zero constant and expect warning only in the third case. - Formatting fixes. - * gcc.dg/Wnonnull-3.c: Copy __builtin_* call statements where - appropriate 3 times, once with 0 length, once with n and once with - n guarded with n != 0 and expect warning only in the third case. - Formatting fixes. - * gcc.dg/nonnull-3.c (foo): Use 16 instead of 0 in the calls added - for PR80936. - * gcc.dg/nonnull-11.c: New test. - * c-c++-common/ubsan/nonnull-1.c: Don't expect runtime diagnostics - for the __builtin_memcpy call. - * gcc.dg/tree-ssa/pr78154.c (f): Add dn argument and return early - if it is NULL. Duplicate cases of builtins which have the first - argument changed from nonnull to nonnull_if_nonzero except stpncpy, - once with dn as first argument instead of d and once with constant - non-zero count rather than n. Disable the stpncpy non-null check. - * gcc.dg/Wbuiltin-declaration-mismatch-14.c (test_builtin_calls): - Triplicate the strncmp calls, once with 1 last argument and expect - warning, once with n last argument and don't expect warning and - once with 0 last argument and don't expect warning. - * gcc.dg/Wbuiltin-declaration-mismatch-15.c (test_builtin_calls_fe): - Likewise. - -2025-02-24 Jakub Jelinek <jakub@redhat.com> - - PR c/117023 - * c-c++-common/analyzer/call-summaries-malloc.c - (test_use_without_check): Pass 4 rather than sz to memset. - * c-c++-common/analyzer/strncpy-1.c (test_null_dst, - test_null_src): Pass 42 rather than count to strncpy. - -2025-02-24 Lino Hsing-Yu Peng <linopeng@andestech.com> - - * gcc.target/riscv/zcmp_push_gpr.c: New test. - -2025-02-23 H.J. Lu <hjl.tools@gmail.com> - - PR tree-optimization/82142 - * gcc.target/i386/pr82142a.c: New file. - * gcc.target/i386/pr82142b.c: Likewise. - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/target-supports.exp (check_effective_target_alloca): - Gracefully handle the case that we've not be called (indirectly) - from 'dg-test'. - * lib/gcc-dg.exp (proc gcc-dg-prune): Turn - 'sorry, unimplemented: dynamic stack allocation not supported' into - UNSUPPORTED. - * c-c++-common/Walloca-larger-than.c: Don't - 'dg-require-effective-target alloca'. - * c-c++-common/Warray-bounds-9.c: Likewise. - * c-c++-common/Warray-bounds.c: Likewise. - * c-c++-common/Wdangling-pointer-2.c: Likewise. - * c-c++-common/Wdangling-pointer-4.c: Likewise. - * c-c++-common/Wdangling-pointer-5.c: Likewise. - * c-c++-common/Wdangling-pointer.c: Likewise. - * c-c++-common/Wimplicit-fallthrough-7.c: Likewise. - * c-c++-common/Wsizeof-pointer-memaccess1.c: Likewise. - * c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise. - * c-c++-common/Wstringop-truncation.c: Likewise. - * c-c++-common/Wunused-var-6.c: Likewise. - * c-c++-common/Wunused-var-8.c: Likewise. - * c-c++-common/analyzer/alloca-leak.c: Likewise. - * c-c++-common/analyzer/allocation-size-multiline-2.c: Likewise. - * c-c++-common/analyzer/allocation-size-multiline-3.c: Likewise. - * c-c++-common/analyzer/capacity-1.c: Likewise. - * c-c++-common/analyzer/capacity-3.c: Likewise. - * c-c++-common/analyzer/imprecise-floating-point-1.c: Likewise. - * c-c++-common/analyzer/infinite-recursion-alloca.c: Likewise. - * c-c++-common/analyzer/malloc-callbacks.c: Likewise. - * c-c++-common/analyzer/malloc-paths-8.c: Likewise. - * c-c++-common/analyzer/out-of-bounds-5.c: Likewise. - * c-c++-common/analyzer/out-of-bounds-diagram-11.c: Likewise. - * c-c++-common/analyzer/uninit-alloca.c: Likewise. - * c-c++-common/analyzer/write-to-string-literal-5.c: Likewise. - * c-c++-common/asan/alloca_loop_unpoisoning.c: Likewise. - * c-c++-common/auto-init-11.c: Likewise. - * c-c++-common/auto-init-12.c: Likewise. - * c-c++-common/auto-init-15.c: Likewise. - * c-c++-common/auto-init-16.c: Likewise. - * c-c++-common/builtins.c: Likewise. - * c-c++-common/dwarf2/vla1.c: Likewise. - * c-c++-common/gomp/pr61486-2.c: Likewise. - * c-c++-common/torture/builtin-clear-padding-4.c: Likewise. - * c-c++-common/torture/strub-run3.c: Likewise. - * c-c++-common/torture/strub-run4.c: Likewise. - * c-c++-common/torture/strub-run4c.c: Likewise. - * c-c++-common/torture/strub-run4d.c: Likewise. - * c-c++-common/torture/strub-run4i.c: Likewise. - * g++.dg/Walloca1.C: Likewise. - * g++.dg/Walloca2.C: Likewise. - * g++.dg/cpp0x/pr70338.C: Likewise. - * g++.dg/cpp1y/lambda-generic-vla1.C: Likewise. - * g++.dg/cpp1y/vla10.C: Likewise. - * g++.dg/cpp1y/vla2.C: Likewise. - * g++.dg/cpp1y/vla6.C: Likewise. - * g++.dg/cpp1y/vla8.C: Likewise. - * g++.dg/debug/debug5.C: Likewise. - * g++.dg/debug/debug6.C: Likewise. - * g++.dg/debug/pr54828.C: Likewise. - * g++.dg/diagnostic/pr70105.C: Likewise. - * g++.dg/eh/cleanup5.C: Likewise. - * g++.dg/eh/spbp.C: Likewise. - * g++.dg/ext/builtin_alloca.C: Likewise. - * g++.dg/ext/tmplattr9.C: Likewise. - * g++.dg/ext/vla10.C: Likewise. - * g++.dg/ext/vla11.C: Likewise. - * g++.dg/ext/vla12.C: Likewise. - * g++.dg/ext/vla15.C: Likewise. - * g++.dg/ext/vla16.C: Likewise. - * g++.dg/ext/vla17.C: Likewise. - * g++.dg/ext/vla23.C: Likewise. - * g++.dg/ext/vla3.C: Likewise. - * g++.dg/ext/vla6.C: Likewise. - * g++.dg/ext/vla7.C: Likewise. - * g++.dg/init/array24.C: Likewise. - * g++.dg/init/new47.C: Likewise. - * g++.dg/init/pr55497.C: Likewise. - * g++.dg/opt/pr78201.C: Likewise. - * g++.dg/template/vla2.C: Likewise. - * g++.dg/torture/Wsizeof-pointer-memaccess1.C: Likewise. - * g++.dg/torture/Wsizeof-pointer-memaccess2.C: Likewise. - * g++.dg/torture/pr62127.C: Likewise. - * g++.dg/torture/pr67055.C: Likewise. - * g++.dg/torture/stackalign/eh-alloca-1.C: Likewise. - * g++.dg/torture/stackalign/eh-inline-2.C: Likewise. - * g++.dg/torture/stackalign/eh-vararg-1.C: Likewise. - * g++.dg/torture/stackalign/eh-vararg-2.C: Likewise. - * g++.dg/warn/Wplacement-new-size-5.C: Likewise. - * g++.dg/warn/Wsizeof-pointer-memaccess-1.C: Likewise. - * g++.dg/warn/Wvla-1.C: Likewise. - * g++.dg/warn/Wvla-3.C: Likewise. - * g++.old-deja/g++.ext/array2.C: Likewise. - * g++.old-deja/g++.ext/constructor.C: Likewise. - * g++.old-deja/g++.law/builtin1.C: Likewise. - * g++.old-deja/g++.other/crash12.C: Likewise. - * g++.old-deja/g++.other/eh3.C: Likewise. - * g++.old-deja/g++.pt/array6.C: Likewise. - * g++.old-deja/g++.pt/dynarray.C: Likewise. - * gcc.c-torture/compile/20000923-1.c: Likewise. - * gcc.c-torture/compile/20030224-1.c: Likewise. - * gcc.c-torture/compile/20071108-1.c: Likewise. - * gcc.c-torture/compile/20071117-1.c: Likewise. - * gcc.c-torture/compile/900313-1.c: Likewise. - * gcc.c-torture/compile/parms.c: Likewise. - * gcc.c-torture/compile/pr17397.c: Likewise. - * gcc.c-torture/compile/pr35006.c: Likewise. - * gcc.c-torture/compile/pr42956.c: Likewise. - * gcc.c-torture/compile/pr51354.c: Likewise. - * gcc.c-torture/compile/pr52714.c: Likewise. - * gcc.c-torture/compile/pr55851.c: Likewise. - * gcc.c-torture/compile/pr77754-1.c: Likewise. - * gcc.c-torture/compile/pr77754-2.c: Likewise. - * gcc.c-torture/compile/pr77754-3.c: Likewise. - * gcc.c-torture/compile/pr77754-4.c: Likewise. - * gcc.c-torture/compile/pr77754-5.c: Likewise. - * gcc.c-torture/compile/pr77754-6.c: Likewise. - * gcc.c-torture/compile/pr78439.c: Likewise. - * gcc.c-torture/compile/pr79413.c: Likewise. - * gcc.c-torture/compile/pr82564.c: Likewise. - * gcc.c-torture/compile/pr87110.c: Likewise. - * gcc.c-torture/compile/pr99787-1.c: Likewise. - * gcc.c-torture/compile/vla-const-1.c: Likewise. - * gcc.c-torture/compile/vla-const-2.c: Likewise. - * gcc.c-torture/execute/20010209-1.c: Likewise. - * gcc.c-torture/execute/20020314-1.c: Likewise. - * gcc.c-torture/execute/20020412-1.c: Likewise. - * gcc.c-torture/execute/20021113-1.c: Likewise. - * gcc.c-torture/execute/20040223-1.c: Likewise. - * gcc.c-torture/execute/20040308-1.c: Likewise. - * gcc.c-torture/execute/20040811-1.c: Likewise. - * gcc.c-torture/execute/20070824-1.c: Likewise. - * gcc.c-torture/execute/20070919-1.c: Likewise. - * gcc.c-torture/execute/built-in-setjmp.c: Likewise. - * gcc.c-torture/execute/pr22061-1.c: Likewise. - * gcc.c-torture/execute/pr43220.c: Likewise. - * gcc.c-torture/execute/pr82210.c: Likewise. - * gcc.c-torture/execute/pr86528.c: Likewise. - * gcc.c-torture/execute/vla-dealloc-1.c: Likewise. - * gcc.dg/20001012-2.c: Likewise. - * gcc.dg/20020415-1.c: Likewise. - * gcc.dg/20030331-2.c: Likewise. - * gcc.dg/20101010-1.c: Likewise. - * gcc.dg/Walloca-1.c: Likewise. - * gcc.dg/Walloca-10.c: Likewise. - * gcc.dg/Walloca-11.c: Likewise. - * gcc.dg/Walloca-12.c: Likewise. - * gcc.dg/Walloca-13.c: Likewise. - * gcc.dg/Walloca-14.c: Likewise. - * gcc.dg/Walloca-15.c: Likewise. - * gcc.dg/Walloca-2.c: Likewise. - * gcc.dg/Walloca-3.c: Likewise. - * gcc.dg/Walloca-4.c: Likewise. - * gcc.dg/Walloca-5.c: Likewise. - * gcc.dg/Walloca-6.c: Likewise. - * gcc.dg/Walloca-7.c: Likewise. - * gcc.dg/Walloca-8.c: Likewise. - * gcc.dg/Walloca-9.c: Likewise. - * gcc.dg/Walloca-larger-than-2.c: Likewise. - * gcc.dg/Walloca-larger-than-3.c: Likewise. - * gcc.dg/Walloca-larger-than-4.c: Likewise. - * gcc.dg/Walloca-larger-than.c: Likewise. - * gcc.dg/Warray-bounds-22.c: Likewise. - * gcc.dg/Warray-bounds-41.c: Likewise. - * gcc.dg/Warray-bounds-46.c: Likewise. - * gcc.dg/Warray-bounds-48-novec.c: Likewise. - * gcc.dg/Warray-bounds-48.c: Likewise. - * gcc.dg/Warray-bounds-50.c: Likewise. - * gcc.dg/Warray-bounds-63.c: Likewise. - * gcc.dg/Warray-bounds-66.c: Likewise. - * gcc.dg/Wdangling-pointer.c: Likewise. - * gcc.dg/Wfree-nonheap-object-2.c: Likewise. - * gcc.dg/Wfree-nonheap-object.c: Likewise. - * gcc.dg/Wrestrict-17.c: Likewise. - * gcc.dg/Wrestrict.c: Likewise. - * gcc.dg/Wreturn-local-addr-2.c: Likewise. - * gcc.dg/Wreturn-local-addr-3.c: Likewise. - * gcc.dg/Wreturn-local-addr-4.c: Likewise. - * gcc.dg/Wreturn-local-addr-6.c: Likewise. - * gcc.dg/Wsizeof-pointer-memaccess1.c: Likewise. - * gcc.dg/Wstack-usage.c: Likewise. - * gcc.dg/Wstrict-aliasing-bogus-vla-1.c: Likewise. - * gcc.dg/Wstrict-overflow-27.c: Likewise. - * gcc.dg/Wstringop-overflow-15.c: Likewise. - * gcc.dg/Wstringop-overflow-23.c: Likewise. - * gcc.dg/Wstringop-overflow-25.c: Likewise. - * gcc.dg/Wstringop-overflow-27.c: Likewise. - * gcc.dg/Wstringop-overflow-3.c: Likewise. - * gcc.dg/Wstringop-overflow-39.c: Likewise. - * gcc.dg/Wstringop-overflow-56.c: Likewise. - * gcc.dg/Wstringop-overflow-57.c: Likewise. - * gcc.dg/Wstringop-overflow-67.c: Likewise. - * gcc.dg/Wstringop-overflow-71.c: Likewise. - * gcc.dg/Wstringop-truncation-3.c: Likewise. - * gcc.dg/Wvla-larger-than-1.c: Likewise. - * gcc.dg/Wvla-larger-than-2.c: Likewise. - * gcc.dg/Wvla-larger-than-3.c: Likewise. - * gcc.dg/Wvla-larger-than-4.c: Likewise. - * gcc.dg/Wvla-larger-than-5.c: Likewise. - * gcc.dg/analyzer/boxed-malloc-1.c: Likewise. - * gcc.dg/analyzer/call-summaries-2.c: Likewise. - * gcc.dg/analyzer/malloc-1.c: Likewise. - * gcc.dg/analyzer/malloc-reuse.c: Likewise. - * gcc.dg/analyzer/out-of-bounds-diagram-12.c: Likewise. - * gcc.dg/analyzer/pr93355-localealias.c: Likewise. - * gcc.dg/analyzer/putenv-1.c: Likewise. - * gcc.dg/analyzer/taint-alloc-1.c: Likewise. - * gcc.dg/analyzer/torture/pr93373.c: Likewise. - * gcc.dg/analyzer/torture/ubsan-1.c: Likewise. - * gcc.dg/analyzer/vla-1.c: Likewise. - * gcc.dg/atomic/stdatomic-vm.c: Likewise. - * gcc.dg/attr-alloc_size-6.c: Likewise. - * gcc.dg/attr-alloc_size-7.c: Likewise. - * gcc.dg/attr-alloc_size-8.c: Likewise. - * gcc.dg/attr-alloc_size-9.c: Likewise. - * gcc.dg/attr-noipa.c: Likewise. - * gcc.dg/auto-init-uninit-36.c: Likewise. - * gcc.dg/auto-init-uninit-9.c: Likewise. - * gcc.dg/auto-type-1.c: Likewise. - * gcc.dg/builtin-alloc-size.c: Likewise. - * gcc.dg/builtin-dynamic-alloc-size.c: Likewise. - * gcc.dg/builtin-dynamic-object-size-1.c: Likewise. - * gcc.dg/builtin-dynamic-object-size-2.c: Likewise. - * gcc.dg/builtin-dynamic-object-size-3.c: Likewise. - * gcc.dg/builtin-dynamic-object-size-4.c: Likewise. - * gcc.dg/builtin-object-size-1.c: Likewise. - * gcc.dg/builtin-object-size-2.c: Likewise. - * gcc.dg/builtin-object-size-3.c: Likewise. - * gcc.dg/builtin-object-size-4.c: Likewise. - * gcc.dg/builtins-64.c: Likewise. - * gcc.dg/builtins-68.c: Likewise. - * gcc.dg/c23-auto-2.c: Likewise. - * gcc.dg/c99-const-expr-13.c: Likewise. - * gcc.dg/c99-vla-1.c: Likewise. - * gcc.dg/fold-alloca-1.c: Likewise. - * gcc.dg/gomp/pr30494.c: Likewise. - * gcc.dg/gomp/vla-2.c: Likewise. - * gcc.dg/gomp/vla-3.c: Likewise. - * gcc.dg/gomp/vla-4.c: Likewise. - * gcc.dg/gomp/vla-5.c: Likewise. - * gcc.dg/graphite/pr99085.c: Likewise. - * gcc.dg/guality/guality.c: Likewise. - * gcc.dg/lto/pr80778_0.c: Likewise. - * gcc.dg/nested-func-10.c: Likewise. - * gcc.dg/nested-func-12.c: Likewise. - * gcc.dg/nested-func-13.c: Likewise. - * gcc.dg/nested-func-14.c: Likewise. - * gcc.dg/nested-func-15.c: Likewise. - * gcc.dg/nested-func-16.c: Likewise. - * gcc.dg/nested-func-17.c: Likewise. - * gcc.dg/nested-func-9.c: Likewise. - * gcc.dg/packed-vla.c: Likewise. - * gcc.dg/pr100225.c: Likewise. - * gcc.dg/pr25682.c: Likewise. - * gcc.dg/pr27301.c: Likewise. - * gcc.dg/pr31507-1.c: Likewise. - * gcc.dg/pr33238.c: Likewise. - * gcc.dg/pr41470.c: Likewise. - * gcc.dg/pr49120.c: Likewise. - * gcc.dg/pr50764.c: Likewise. - * gcc.dg/pr51491-2.c: Likewise. - * gcc.dg/pr51990-2.c: Likewise. - * gcc.dg/pr51990.c: Likewise. - * gcc.dg/pr59011.c: Likewise. - * gcc.dg/pr59523.c: Likewise. - * gcc.dg/pr61561.c: Likewise. - * gcc.dg/pr78468.c: Likewise. - * gcc.dg/pr78902.c: Likewise. - * gcc.dg/pr79972.c: Likewise. - * gcc.dg/pr82875.c: Likewise. - * gcc.dg/pr83844.c: Likewise. - * gcc.dg/pr84131.c: Likewise. - * gcc.dg/pr87099.c: Likewise. - * gcc.dg/pr87320.c: Likewise. - * gcc.dg/pr89045.c: Likewise. - * gcc.dg/pr91014.c: Likewise. - * gcc.dg/pr93986.c: Likewise. - * gcc.dg/pr98721-1.c: Likewise. - * gcc.dg/pr99122-2.c: Likewise. - * gcc.dg/shrink-wrap-alloca.c: Likewise. - * gcc.dg/sso-14.c: Likewise. - * gcc.dg/strlenopt-62.c: Likewise. - * gcc.dg/strlenopt-83.c: Likewise. - * gcc.dg/strlenopt-84.c: Likewise. - * gcc.dg/strlenopt-91.c: Likewise. - * gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise. - * gcc.dg/torture/calleesave-sse.c: Likewise. - * gcc.dg/torture/pr48953.c: Likewise. - * gcc.dg/torture/pr71881.c: Likewise. - * gcc.dg/torture/pr71901.c: Likewise. - * gcc.dg/torture/pr78742.c: Likewise. - * gcc.dg/torture/pr92088-1.c: Likewise. - * gcc.dg/torture/pr92088-2.c: Likewise. - * gcc.dg/torture/pr93124.c: Likewise. - * gcc.dg/torture/pr94479.c: Likewise. - * gcc.dg/torture/stackalign/alloca-1.c: Likewise. - * gcc.dg/torture/stackalign/inline-2.c: Likewise. - * gcc.dg/torture/stackalign/nested-3.c: Likewise. - * gcc.dg/torture/stackalign/vararg-1.c: Likewise. - * gcc.dg/torture/stackalign/vararg-2.c: Likewise. - * gcc.dg/tree-ssa/20030807-2.c: Likewise. - * gcc.dg/tree-ssa/20080530.c: Likewise. - * gcc.dg/tree-ssa/alias-37.c: Likewise. - * gcc.dg/tree-ssa/builtin-sprintf-warn-22.c: Likewise. - * gcc.dg/tree-ssa/builtin-sprintf-warn-25.c: Likewise. - * gcc.dg/tree-ssa/builtin-sprintf-warn-3.c: Likewise. - * gcc.dg/tree-ssa/loop-interchange-15.c: Likewise. - * gcc.dg/tree-ssa/pr23848-1.c: Likewise. - * gcc.dg/tree-ssa/pr23848-2.c: Likewise. - * gcc.dg/tree-ssa/pr23848-3.c: Likewise. - * gcc.dg/tree-ssa/pr23848-4.c: Likewise. - * gcc.dg/uninit-32.c: Likewise. - * gcc.dg/uninit-36.c: Likewise. - * gcc.dg/uninit-39.c: Likewise. - * gcc.dg/uninit-41.c: Likewise. - * gcc.dg/uninit-9-O0.c: Likewise. - * gcc.dg/uninit-9.c: Likewise. - * gcc.dg/uninit-pr100250.c: Likewise. - * gcc.dg/uninit-pr101300.c: Likewise. - * gcc.dg/uninit-pr101494.c: Likewise. - * gcc.dg/uninit-pr98583.c: Likewise. - * gcc.dg/vla-2.c: Likewise. - * gcc.dg/vla-22.c: Likewise. - * gcc.dg/vla-24.c: Likewise. - * gcc.dg/vla-3.c: Likewise. - * gcc.dg/vla-4.c: Likewise. - * gcc.dg/vla-stexp-1.c: Likewise. - * gcc.dg/vla-stexp-2.c: Likewise. - * gcc.dg/vla-stexp-4.c: Likewise. - * gcc.dg/vla-stexp-5.c: Likewise. - * gcc.dg/winline-7.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-1.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-10.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-2.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-3.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-4.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-5.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-6.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-7.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-8.c: Likewise. - * gcc.target/aarch64/stack-check-alloca-9.c: Likewise. - * gcc.target/arc/interrupt-6.c: Likewise. - * gcc.target/i386/pr80969-3.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-1.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-2.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-3.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-4.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-5.c: Likewise. - * gcc.target/loongarch/stack-check-alloca-6.c: Likewise. - * gcc.target/riscv/stack-check-alloca-1.c: Likewise. - * gcc.target/riscv/stack-check-alloca-10.c: Likewise. - * gcc.target/riscv/stack-check-alloca-2.c: Likewise. - * gcc.target/riscv/stack-check-alloca-3.c: Likewise. - * gcc.target/riscv/stack-check-alloca-4.c: Likewise. - * gcc.target/riscv/stack-check-alloca-5.c: Likewise. - * gcc.target/riscv/stack-check-alloca-6.c: Likewise. - * gcc.target/riscv/stack-check-alloca-7.c: Likewise. - * gcc.target/riscv/stack-check-alloca-8.c: Likewise. - * gcc.target/riscv/stack-check-alloca-9.c: Likewise. - * gcc.target/sparc/setjmp-1.c: Likewise. - * gcc.target/x86_64/abi/ms-sysv/ms-sysv.c: Likewise. - * gcc.c-torture/compile/20001221-1.c: Don't 'dg-skip-if' - for '! alloca'. - * gcc.c-torture/compile/20020807-1.c: Likewise. - * gcc.c-torture/compile/20050801-2.c: Likewise. - * gcc.c-torture/compile/920428-4.c: Likewise. - * gcc.c-torture/compile/debugvlafunction-1.c: Likewise. - * gcc.c-torture/compile/pr41469.c: Likewise. - * gcc.c-torture/execute/920721-2.c: Likewise. - * gcc.c-torture/execute/920929-1.c: Likewise. - * gcc.c-torture/execute/921017-1.c: Likewise. - * gcc.c-torture/execute/941202-1.c: Likewise. - * gcc.c-torture/execute/align-nest.c: Likewise. - * gcc.c-torture/execute/alloca-1.c: Likewise. - * gcc.c-torture/execute/pr22061-4.c: Likewise. - * gcc.c-torture/execute/pr36321.c: Likewise. - * gcc.dg/torture/pr8081.c: Likewise. - * gcc.dg/analyzer/data-model-1.c: Don't - 'dg-require-effective-target alloca'. XFAIL relevant - 'dg-warning's for '! alloca'. - * gcc.dg/uninit-38.c: Likewise. - * gcc.dg/uninit-pr98578.c: Likewise. - * gcc.dg/compat/struct-by-value-22_main.c: Comment on - 'dg-require-effective-target alloca'. - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (find-dg-do-what): Gracefully handle the case - that we've not be called (indirectly) from 'dg-test'. - * lib/target-supports.exp (check_effective_target_stack_size) - (check_effective_target_alloca): Catch this. - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (proc find-dg-do-what): New. - * lib/target-supports.exp (check_effective_target_stack_size) - (check_effective_target_alloca): Use it. - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/bpf/diag-alloca-1.c: Adjust 'dg-message'. - * gcc.target/bpf/diag-alloca-2.c: Likewise. - * gcc.target/nvptx/alloca-1-sm_30.c: Likewise. - * gcc.target/nvptx/vla-1-sm_30.c: Likewise. - * lib/target-supports.exp (proc check_effective_target_alloca): - Adjust comment. - -2025-02-22 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118978 - * gm2/pim/fail/badparamtype.mod: New test. - -2025-02-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118954 - * gcc.dg/torture/pr118954.c: New testcase. - -2025-02-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118521 - * g++.dg/torture/pr118521.C: Use dg-bogus properly. - -2025-02-21 Harald Anlauf <anlauf@gmx.de> - - PR fortran/48958 - * gfortran.dg/pointer_init_13.f90: New test. - -2025-02-20 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/malformed-json/empty.sarif: New test. - -2025-02-20 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/2.1.0-invalid/3.11.11-malformed-placeholder.sarif: - Rename to... - * sarif-replay.dg/2.1.0-invalid/3.11.5-unescaped-braces.sarif: - ...this. Update expected subsection in error message, and - expected underline in quoted JSON. - -2025-02-20 Richard Sandiford <richard.sandiford@arm.com> - - PR testsuite/116604 - * gcc.target/aarch64/sve/pcs/args_1.c (callee_pred): Enable scheduling - and use both memory arguments in the same instruction. Expect no - prologue and epilogue code. - -2025-02-20 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/var_stride_2.c: Expect ADD+LSL. - * gcc.target/aarch64/sve/var_stride_4.c: Accept LSL or SBFIZ. - -2025-02-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118521 - * g++.dg/torture/pr118521.C: New testcase. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray_lib_comm_1.f90: Fix up scan_trees. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray/send_char_array_1.f90: Extend test to - catch more cases. - * gfortran.dg/coarray_42.f90: Invert tests use, because no - longer a send is needed when local memory in a coarray is - allocated. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray/coarray_allocated.f90: Adapt to new method - of checking on remote image. - * gfortran.dg/coarray_lib_alloc_4.f90: Same. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray_lib_comm_1.f90: Adapt scan expression. - * gfortran.dg/coarray/get_with_fn_parameter.f90: New test. - * gfortran.dg/coarray/get_with_scalar_fn.f90: New test. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/coarray_lib_comm_1.f90: Adapt to renamed ABI - function. - * gfortran.dg/coarray_stat_function.f90: Same. - * gfortran.dg/coindexed_1.f90: Same. - -2025-02-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/86270 - * gcc.target/i386/pr86270.c: Adjust to check for no reg-reg - copies as well. - -2025-02-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/118936 - * gcc.target/i386/pr118936.c: New test. - -2025-02-20 H.J. Lu <hjl.tools@gmail.com> - - Revert: - 2025-02-20 H.J. Lu <hjl.tools@gmail.com> - - PR target/109780 - PR target/109093 - * g++.target/i386/pr109780-1.C: New test. - * gcc.target/i386/pr109093-1.c: Likewise. - * gcc.target/i386/pr109780-1.c: Likewise. - * gcc.target/i386/pr109780-2.c: Likewise. - * gcc.target/i386/pr109780-3.c: Likewise. - -2025-02-19 Georg-Johann Lay <avr@gjlay.de> - - * gcc.target/avr/torture/isr-04-regs.c: New test. - * gcc.target/avr/isr-test.h: Don't set GPRs to values - that are 0 mod 0x11. - -2025-02-19 Andrew Pinski <quic_apinski@quicinc.com> - - * gcc.target/aarch64/pr112105.c: Change to be -O2 rather - than -O1. - -2025-02-19 David Malcolm <dmalcolm@redhat.com> - - PR analyzer/118300 - * gcc.dg/analyzer/ubsan-pr118300.c: New test. - -2025-02-19 Pan Li <pan2.li@intel.com> - - PR middle-end/116351 - * gcc.target/riscv/rvv/base/pr116351-1.c: New test. - * gcc.target/riscv/rvv/base/pr116351-2.c: New test. - * gcc.target/riscv/rvv/base/pr116351.h: New test. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/vect-shift-imm-round.c: New test. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/wide-mul-reduc-2.c (dg-final): Scan - DOT_PROD_EXPR in optimized tree. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/wide-mul-reduc-1.c: New test. - * gcc.target/loongarch/wide-mul-reduc-2.c: New test. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/vrepli.c: New test. - -2025-02-19 Xi Ruoyao <xry111@xry111.site> - - PR target/115478 - * gcc.target/loongarch/bytepick_shift_128.c: New test. - -2025-02-18 Robin Dapp <rdapp@ventanamicro.com> - - PR target/115703 - * gcc.target/riscv/rvv/autovec/pr115703-run.c: New test. - * gcc.target/riscv/rvv/autovec/pr115703.c: New test. - -2025-02-18 John David Anglin <danglin@gcc.gnu.org> - - PR testsuite/116986 - * gcc.dg/crc-builtin-rev-target32.c: Include stdint.h - instead of stdint-gcc.h. - * gcc.dg/crc-builtin-rev-target64.c: Likewise. - * gcc.dg/crc-builtin-target32.c: Likewise. - * gcc.dg/crc-builtin-target64.c: Likewise. - * gcc.dg/torture/pr115387-2.c: Likewise. - -2025-02-18 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/gomp/metadirective-3.f90: Add xfail when - compiling for offload_nvptx. - -2025-02-18 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/108840 - * gcc.target/aarch64/pr108840.c: Run at -O2 but disable combine. - -2025-02-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/98845 - * gcc.dg/pr98845.c: New testcase. - * gcc.dg/pr81192.c: Adjust. - -2025-02-18 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/rvv/base/bug-9.c: Added new failure check. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-17.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-18.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-19.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-20.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-21.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-22.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-23.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-24.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-25.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-26.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-27.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-28.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-29.c: Likewise. - * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-3.c: Likewise. - -2025-02-18 Pan Li <pan2.li@intel.com> - - PR target/118540 - * gcc.target/riscv/rvv/base/pr118540-1.c: New test. - * gcc.target/riscv/rvv/base/pr118540-2.c: New test. - -2025-02-18 Alexandre Oliva <oliva@adacore.com> - - * lib/scanasm.exp (check-function-bodies): Fix usage comment. - -2025-02-18 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118805 - * gcc.dg/field-merge-26.c: New. - -2025-02-17 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/115271 - * gfortran.dg/gomp/adjust-args-1.f90: Update dg-.* expectations. - * gfortran.dg/gomp/adjust-args-2.f90: Likewise. - * gfortran.dg/gomp/adjust-args-2a.f90: Likewise. - * gfortran.dg/gomp/adjust-args-3.f90: Likewise. - * gfortran.dg/gomp/adjust-args-4.f90: Remove array from c_ptr. - * gfortran.dg/gomp/adjust-args-5.f90: Likewise. - * gfortran.dg/gomp/adjust-args-11.f90: Likewise. Add check that - INTERFACE is now handled in subroutines and in modules. - * gfortran.dg/gomp/adjust-args-13.f90: New test. - * gfortran.dg/gomp/adjust-args-14.f90: New test. - * gfortran.dg/gomp/adjust-args-15.f90: New test. - * gfortran.dg/gomp/declare-variant-21.f90: New test. - -2025-02-17 Uros Bizjak <ubizjak@gmail.com> - - PR middle-end/118288 - * gcc.dg/pr118288.c: New test. - -2025-02-17 Marek Polacek <polacek@redhat.com> - - PR c++/102455 - * g++.dg/ext/vector43.C: New test. - -2025-02-17 Jason Merrill <jason@redhat.com> - - PR c++/118856 - PR c++/118763 - * g++.dg/ext/stmtexpr29.C: New test. - -2025-02-17 Marek Polacek <polacek@redhat.com> - - PR c++/96364 - * g++.dg/cpp0x/gen-attrs-88.C: New test. - -2025-02-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118895 - * gcc.dg/pr118895.c: New testcase. - -2025-02-17 Matthew Malcomson <mmalcomson@nvidia.com> - - PR target/117991 - * g++.dg/template/builtin-speculation-overloads.def: SUCCESS - argument in SPECULATION_ASSERTS now uses a macro `true_def` - instead of the literal `true` for arguments which should work - with `__builtin_speculation_safe_value`. - * g++.dg/template/builtin-speculation-overloads1.C: Define - `true_def` macro on command line to compiler according to the - effective target representing that - `__builtin_speculation_safe_value` does something on this - target. - * g++.dg/template/builtin-speculation-overloads4.C: Likewise. - * lib/target-supports.exp - (check_effective_target_speculation_barrier_defined): New. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: - Add missing avx10_2_512 check. - * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxph-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vminmaxps-2.c: Ditto. - * gcc.target/i386/avx10-check.h: Change avx10.2 to avx10.2-256. - * gcc.target/i386/avx10_2-bf16-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: Ditto. - * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: Ditto. - * gcc.target/i386/avx10_2-builtin-1.c: Ditto. - * gcc.target/i386/avx10_2-builtin-2.c: Ditto. - * gcc.target/i386/avx10_2-comibf-1.c: Ditto. - * gcc.target/i386/avx10_2-comibf-2.c: Ditto. - * gcc.target/i386/avx10_2-comibf-3.c: Ditto. - * gcc.target/i386/avx10_2-comibf-4.c: Ditto. - * gcc.target/i386/avx10_2-compare-1.c: Ditto. - * gcc.target/i386/avx10_2-compare-1b.c: Ditto. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - * gcc.target/i386/avx10_2-media-1.c: Ditto. - * gcc.target/i386/avx10_2-minmax-1.c: Ditto. - * gcc.target/i386/avx10_2-movrs-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: Ditto. - * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: Ditto. - * gcc.target/i386/avx10_2-rounding-1.c: Ditto. - * gcc.target/i386/avx10_2-rounding-2.c: Ditto. - * gcc.target/i386/avx10_2-rounding-3.c: Ditto. - * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. - * gcc.target/i386/avx10_2-vaddbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcomisbf16-1.c: Ditto. - * gcc.target/i386/avx10_2-vcomisbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. - * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. - * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxsd-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxsh-2.c: Ditto. - * gcc.target/i386/avx10_2-vminmaxss-2.c: Ditto. - * gcc.target/i386/avx10_2-vmovd-1.c: Ditto. - * gcc.target/i386/avx10_2-vmovd-2.c: Ditto. - * gcc.target/i386/avx10_2-vmovw-1.c: Ditto. - * gcc.target/i386/avx10_2-vmovw-2.c: Ditto. - * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. - * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. - * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. - * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. - * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. - * gcc.target/i386/funcspec-56.inc: Ditto. - * gcc.target/i386/part-vect-vec_cmpbf.c: Ditto. - * gcc.target/i386/pr117495.c: Ditto. - * gcc.target/i386/sm4-avx10_2-1.c: Ditto. - * gcc.target/i386/sm4-check.h: Ditto. - * gcc.target/i386/vnniint16-auto-vectorize-3.c: Ditto. - * gcc.target/i386/vnniint8-auto-vectorize-3.c: Ditto. - * lib/target-supports.exp: Ditto. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10-check.h: Change to avx10.1-256. - * gcc.target/i386/avx10_1-1.c: Ditto. - * gcc.target/i386/avx10_1-13.c: Ditto. - * gcc.target/i386/avx10_1-14.c: Ditto. - * gcc.target/i386/avx10_1-21.c: Ditto. - * gcc.target/i386/avx10_1-22.c: Ditto. - * gcc.target/i386/avx10_1-23.c: Ditto. - * gcc.target/i386/avx10_1-24.c: Ditto. - * gcc.target/i386/avx10_1-3.c: Ditto. - * gcc.target/i386/avx10_1-5.c: Ditto. - * gcc.target/i386/avx10_1-6.c: Ditto. - * gcc.target/i386/avx10_1-8.c: Ditto. - * gcc.target/i386/pr117946.c: Ditto. - * gcc.target/i386/avx10_1-12.c: Adjust warning message. - * gcc.target/i386/avx10_1-19.c: Ditto. - * gcc.target/i386/avx10_1-17.c: Adjust to no-avx10.1-512. - -2025-02-17 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118815 - * gcc.target/i386/pr118815.c: New test. - -2025-02-16 Jakub Jelinek <jakub@redhat.com> - - PR target/118248 - * gcc.target/riscv/pr118248.c: New test. - -2025-02-16 Simon Martin <simon@nasilyan.com> - - PR c++/117324 - * g++.dg/parse/defarg19.C: New test. - -2025-02-16 H.J. Lu <hjl.tools@gmail.com> - - PR target/109780 - PR target/109093 - * g++.target/i386/pr109780-1.C: New test. - * gcc.target/i386/pr109093-1.c: Likewise. - * gcc.target/i386/pr109780-1.c: Likewise. - * gcc.target/i386/pr109780-2.c: Likewise. - * gcc.target/i386/pr109780-3.c: Likewise. - -2025-02-15 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/98028 - * gcc.dg/tree-ssa/pr98028.c: New test. - -2025-02-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118080 - * gfortran.dg/value_optional_2.f90: New test. - -2025-02-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/117430 - * gfortran.dg/c_loc_test_17.f90: Use an assignment rather than - PRINT. - * gfortran.dg/c_ptr_tests_10.f03: Use a transfer function. - * gfortran.dg/c_ptr_tests_16.f90: Use an assignment. - * gfortran.dg/c_ptr_tests_9.f03: Use a transfer function. - * gfortran.dg/init_flag_17.f90: Likewise. - * gfortran.dg/pr32601_1.f03: Use an assignment. - -2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> - - * gcc.target/riscv/rvv/autovec/pr117722.c: Scan for vminu and - vmaxu. - -2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> - - * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Scan for add. - * gcc.target/riscv/rvv/autovec/reduc/reduc-9.c: Scan for fadd. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-1.sarif: New test. - * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-2.sarif: New test. - * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-3.sarif: New test. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/2.1.0-valid/3.28.6-annotations-1.sarif: Update - expected output to remove trailing " [error]". - * sarif-replay.dg/2.1.0-valid/unlabelled-secondary-locations.sarif: - Likewise. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/2.1.0-valid/unlabelled-secondary-locations.sarif: - New test. - -2025-02-15 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/118881 - * sarif-replay.dg/2.1.0-valid/3.28.6-annotations-1.sarif: New test. - -2025-02-15 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118846 - * g++.dg/modules/pr118846_a.C: New test. - * g++.dg/modules/pr118846_b.C: New test. - -2025-02-15 Jason Merrill <jason@redhat.com> - - PR c++/118053 - * g++.dg/cpp1y/constexpr-lambda1.C: Add -O. - -2025-02-15 Jason Merrill <jason@redhat.com> - - PR c++/118053 - * g++.dg/cpp1y/constexpr-lambda1.C: New test. - -2025-02-15 Thomas Koenig <tkoenig@gcc.gnu.org> - - * gfortran.dg/interface_54.f90: New test. - -2025-02-15 Jin Ma <jinma@linux.alibaba.com> - - PR target/118872 - * gcc.target/riscv/rvv/base/pr118872.c: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/83144 - * g++.dg/cpp0x/constexpr-83144.C: New test. - -2025-02-14 Georg-Johann Lay <avr@gjlay.de> - - PR target/118878 - * gcc.target/avr/torture/pr118878.c: New test. - -2025-02-14 Patrick Palka <ppalka@redhat.com> - - PR c++/86933 - * g++.dg/cpp1z/variadic-nontype1.C: Mention PR number. - * g++.dg/cpp1z/variadic-nontype2.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/82936 - * g++.dg/cpp0x/vt-82936.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/82794 - * g++.dg/cpp2a/concepts-pr82794.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/70037 - * g++.dg/cpp2a/concepts-pr70037.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/66878 - * g++.dg/lookup/using71.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/66519 - * g++.dg/cpp0x/variadic-parm2.C: New test. - -2025-02-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118852 - * gcc.dg/vect/pr118852.c: New testcase. - -2025-02-14 Jason Merrill <jason@redhat.com> - - PR c++/118856 - * g++.dg/eh/ref-temp3.C: New test. - * g++.dg/eh/ref-temp4.C: New test. - -2025-02-14 Marek Polacek <polacek@redhat.com> - - PR c++/116379 - * g++.dg/cpp1y/decltype-auto9.C: New test. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/const-double-zero-stx.c: Add - '-maddr-reg-reg-cost=1'. - * gcc.target/loongarch/stack-check-alloca-1.c: Likewise. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118843 - * gcc.target/loongarch/pr118843.c: New test. - -2025-02-14 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118828 - * gcc.target/loongarch/pr118828.c: New test. - * gcc.target/loongarch/pr118828-2.c: New test. - * gcc.target/loongarch/pr118828-3.c: New test. - * gcc.target/loongarch/pr118828-4.c: New test. - -2025-02-14 Richard Biener <rguenther@suse.de> - - PR tree-optimization/90579 - * gcc.target/i386/pr90579.c: New testcase. - -2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp2a/lambda-uneval22.C: Add check that the primary - specialisation of the lambda is TU-local. - -2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/107741 - * g++.dg/abi/lambda-ctx2-19.C: Add tests for template members. - * g++.dg/abi/lambda-ctx2-19vs20.C: Likewise. - * g++.dg/abi/lambda-ctx2-20.C: Likewise. - * g++.dg/abi/lambda-ctx2.h: Likewise. - * g++.dg/cpp0x/static-member-init-1.C: Likewise. - -2025-02-13 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/118832 - * gcc.target/riscv/rvv/autovec/pr118832.c: New test. - -2025-02-13 Marek Polacek <polacek@redhat.com> - - PR driver/117739 - * c-c++-common/fhardened-16.c: New test. - * c-c++-common/fhardened-17.c: New test. - * c-c++-common/fhardened-18.c: New test. - * c-c++-common/fhardened-19.c: New test. - * c-c++-common/fhardened-20.c: New test. - * c-c++-common/fhardened-21.c: New test. - -2025-02-13 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp2a/nontype-class72.C: Disable -fimplicit-constexpr. - -2025-02-13 Ed Catmur <ed@catmur.uk> - Jason Merrill <jason@redhat.com> - - PR c++/70536 - * g++.dg/debug/dwarf2/template-func-params-7.C: Check for pack names. - -2025-02-13 Jason Merrill <jason@redhat.com> - - * g++.dg/special/initp1.C: Test disabling -Wprio-ctor-dtor. - -2025-02-13 Jason Merrill <jason@redhat.com> - - * g++.dg/gomp/declare-variant-3.C: Adjust diagnostic. - * g++.dg/gomp/declare-variant-5.C: Adjust diagnostic. - -2025-02-13 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/118845 - * gfortran.dg/recursive_check_4.f03: Adjust call so types matche. - * gfortran.dg/recursive_check_6.f03: Likewise. - * gfortran.dg/specifics_2.f90: Adjust calls so types match. - * gfortran.dg/interface_52.f90: New test. - * gfortran.dg/interface_53.f90: New test. - -2025-02-13 Jason Merrill <jason@redhat.com> - - PR c++/118856 - * g++.dg/cpp23/range-for9.C: New test. - -2025-02-13 Marek Polacek <polacek@redhat.com> - - PR c++/113800 - DR 2450 - * g++.dg/cpp26/pack-indexing15.C: New test. - * g++.dg/cpp2a/nontype-class68.C: New test. - * g++.dg/cpp2a/nontype-class69.C: New test. - * g++.dg/cpp2a/nontype-class70.C: New test. - * g++.dg/cpp2a/nontype-class71.C: New test. - * g++.dg/cpp2a/nontype-class72.C: New test. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR debug/118790 - * gfortran.dg/gomp/pr118790.f90: New test. - -2025-02-13 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118849 - * g++.dg/template/linkage6.C: New test. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/118574 - * g++.dg/coroutines/range-for2.C: New test. - -2025-02-13 Jakub Jelinek <jakub@redhat.com> - - PR c++/118822 - PR c++/118833 - * g++.dg/expr/for9.C: New test. - * g++.dg/cpp26/decomp12.C: New test. - -2025-02-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/pr118835.c: New test. - -2025-02-13 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118817 - * gcc.dg/pr118817.c: New testcase. - -2025-02-12 Marek Polacek <polacek@redhat.com> - - PR c++/101740 - * g++.dg/template/dtor12.C: New test. - -2025-02-12 Vineet Gupta <vineetg@rivosinc.com> - - * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-1.c: Change - expected pattern. - * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-4.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-5.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-6.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-7.c: Ditto. - * gcc.target/riscv/rvv/autovec/cond/cond_unary-8.c: Ditto. - * gcc.target/riscv/rvv/autovec/conversions/vncvt-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/conversions/vncvt-rv64gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u16.c: Ditto - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u32.c: Ditto. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u8.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/abs-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/abs-rv64gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/vneg-rv32gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/vneg-rv64gcv.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/abs-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_convert-11.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_convert-12.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_neg-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_trunc-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_trunc-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/cond_trunc-3.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/convert-11.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/convert-12.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/neg-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/trunc-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/trunc-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls/trunc-3.c: Ditto. - * gcc.target/riscv/rvv/base/simplify-vdiv.c: Ditto. - * gcc.target/riscv/rvv/base/unop_v_constraint-1.c: Ditto. - -2025-02-12 Jin Ma <jinma@linux.alibaba.com> - - PR target/118601 - * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Move to... - * gcc.target/riscv/rvv/xtheadvector/pr114194-rv64.c: ...here. - * gcc.target/riscv/rvv/xtheadvector/pr114194-rv32.c: New test. - * gcc.target/riscv/rvv/xtheadvector/pr118601.c: New test. - -2025-02-11 Jeff Law <jlaw@ventanamicro.com> - - PR target/115478 - * gcc.target/aarch64/bitint-args.c: Update expected output. - -2025-02-11 Jason Merrill <jason@redhat.com> - - PR c++/188574 - * g++.dg/cpp23/range-for3.C: Use -frange-for-ext-temps. - * g++.dg/cpp23/range-for4.C: Adjust expected result. - -2025-02-11 Jason Merrill <jason@redhat.com> - - PR c++/118574 - PR c++/107637 - * g++.dg/coroutines/range-for1.C: New test. - -2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/pragma_cpp_predefs_4.c: Adjust expected - defines. - * gcc.target/aarch64/simd/vmla_lane_indices_1.c: Modify target - pragmas. - * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c: - Ditto. - * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c: - Ditto. - * gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c: Ditto. - * gcc.target/aarch64/sve2/acle/asm/dot_mf8.c: Ditto. - -2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> - - * lib/gcc-defs.exp - (gcc_runtest_parallelize_limit_minor): New global variable. - (gcc_parallel_test_run_p): Use new variable for batch size. - -2025-02-11 Simon Martin <simon@nasilyan.com> - - PR c++/118306 - PR c++/118304 - * g++.old-deja/g++.jason/operator.C: Adjust bogus test - expectation (char** vs char*). - * g++.dg/parse/constructor4.C: New test. - * g++.dg/parse/constructor5.C: New test. - * g++.dg/parse/conv_op2.C: New test. - * g++.dg/parse/default_to_int.C: New test. - -2025-02-11 David Malcolm <dmalcolm@redhat.com> - - PR sarif-replay/118792 - * sarif-replay.dg/2.1.0-valid/error-with-note.sarif: Update - expected output to reflect fix to off-by-one error in handling of - "endColumn" property. - * sarif-replay.dg/2.1.0-valid/malloc-vs-local-4.c.sarif: Likewise. - * sarif-replay.dg/2.1.0-valid/signal-1.c.moved.sarif: Likewise. - * sarif-replay.dg/2.1.0-valid/signal-1.c.sarif: Likewise. - -2025-02-11 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118817 - * g++.dg/lto/pr118817_0.C: New testcase. - -2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/adl-5_a.c: Move to... - * g++.dg/modules/adl-5_a.C: ...here. - * g++.dg/modules/adl-5_d.C: Add errors. - -2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118807 - * g++.dg/modules/pr118807.C: New test. - -2025-02-11 Jie Mei <jie.mei@oss.cipunited.com> - Xi Ruoyao <xry111@xry111.site> - - * gcc.target/mips/mips-class.c: New tests for MIPSr6 - * gcc.target/mips/mips-minamaxa.c: Same as above. - * gcc.target/mips/mips-rint.c: Same as above. - -2025-02-11 Xi Ruoyao <xry111@xry111.site> - - * lib/target-supports.exp - (check_effective_target_vect_call_btrunc): Drop LoongArch. - (check_effective_target_vect_call_btruncf): Likewise. - (check_effective_target_vect_call_ceil): Likewise. - (check_effective_target_vect_call_ceilf): Likewise. - (check_effective_target_vect_call_floor): Likewise. - (check_effective_target_vect_call_floorf): Likewise. - (check_effective_target_vect_call_lfloor): Likewise. - (check_effective_target_vect_call_lfloorf): Likewise. - -2025-02-10 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/24878 - * gfortran.dg/interface_51.f90: Adjust expected error message. - -2025-02-10 Harald Anlauf <anlauf@gmx.de> - - PR fortran/56423 - * gfortran.dg/derived_constructor_comps_2.f90: Adjust test. - * gfortran.dg/derived_constructor_comps_8.f90: New test. - -2025-02-10 Martin Jambor <mjambor@suse.cz> - - PR ipa/118097 - * gcc.dg/ipa/pr118097.c: New test. - * gcc.dg/ipa/pr118535.c: Likewise. - * gcc.dg/ipa/ipa-notypes-1.c: Likewise. - -2025-02-10 Richard Earnshaw <rearnsha@arm.com> - - PR target/118089 - * gcc.target/arm/thumb2-pop-loreg.c (dg-require-effective-target): Fix - typo in directive. - -2025-02-10 Jakub Jelinek <jakub@redhat.com> - - PR target/118623 - * gcc.c-torture/execute/pr118623.c: New test. - -2025-02-10 Tamar Christina <tamar.christina@arm.com> - - PR testsuite/118754 - * gcc.dg/vect/vect-tail-nomask-1.c: Add novector. - * gcc.target/i386/pr106010-8c.c: Likewise. - -2025-02-09 Jeff Law <jlaw@ventanamicro.com> - - PR target/115123 - * gcc.target/riscv/rvv/base/pr114352-3.c: Adjust expected output. - * gcc.target/riscv/rvv/vsetvl/avl_multiple-7.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_multiple-8.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-66.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-82.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-83.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-86.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-88.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-90.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-91.c: Likewise. - * gcc.target/riscv/rvv/vsetvl/avl_single-92.c: Likewise. - -2025-02-09 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR fortran/24878 - * gfortran.dg/interface_51.f90: New test. - -2025-02-09 Jeff Law <jlaw@ventanamicro.com> - - PR target/118146 - * gcc.target/riscv/pr118146-1.c: New test. - * gcc.target/riscv/pr118146-2.c: New test. - -2025-02-08 Sandra Loosemore <sloosemore@baylibre.com> - - PR middle-end/107067 - * gfortran.dg/gomp/metadirective-11.f90: Remove the dg-ice, update - for current behavior, and add more tests to exercise the new error - code. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (gcc-dg-prune): Turn - 'sorry, unimplemented: exception handling not supported' into - UNSUPPORTED. - * gcc.dg/pr104464.c: Remove GCN XFAIL. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.dg/cleanup-12.c: Don't 'dg-skip-if "" { ! nonlocal_goto }'. - * gcc.dg/cleanup-13.c: Likewise. - * gcc.dg/cleanup-5.c: Likewise. - * gcc.dg/gimplefe-44.c: Don't - 'dg-require-effective-target nonlocal_goto'. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/target-supports.exp (check_effective_target_exceptions): - 'return 0' for '[istarget nvptx-*-*]'. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/118772 - * lib/target-supports.exp (check_effective_target_exceptions): - 'return 0' for '[istarget bpf-*-*]'. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/gcc-dg.exp (gcc-dg-prune): Clarify effective-target - 'exceptions_enabled'. - * lib/target-supports.exp - (check_effective_target_exceptions_enabled): Don't consider - effective-target 'exceptions'. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.dg/pr88870.c: Don't 'dg-require-effective-target nonlocal_goto'. - -2025-02-08 Jakub Jelinek <jakub@redhat.com> - - PR target/118776 - * gcc.target/i386/pr118776.c: New test. - -2025-02-08 H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/111673 - * gcc.target/i386/pr111673.c: Verify that PUSH/POP can be - skipped. - -2025-02-07 Harald Anlauf <anlauf@gmx.de> - - PR fortran/59252 - * gfortran.dg/allocatable_char_1.f90: New test. - -2025-02-07 Richard Earnshaw <rearnsha@arm.com> - - PR target/118089 - * gcc.target/arm/thumb2-pop-loreg.c: New test. - -2025-02-07 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/116244 - * g++.target/m68k/m68k.exp: New test driver. - * g++.target/m68k/pr116244.C: New test. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/115586 - * g++.dg/cpp26/name-independent-decl9.C: New test. - * g++.dg/cpp26/name-independent-decl10.C: New test. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - Jason Merrill <jason@redhat.com> - - PR c++/86769 - * g++.dg/diagnostic/redeclaration-7.C: New test. - * g++.dg/expr/for3.C: New test. - * g++.dg/expr/for4.C: New test. - * g++.dg/expr/for5.C: New test. - * g++.dg/expr/for6.C: New test. - * g++.dg/expr/for7.C: New test. - * g++.dg/expr/for8.C: New test. - * g++.dg/ext/stmtexpr27.C: New test. - * g++.dg/cpp2a/constexpr-86769.C: New test. - * g++.dg/cpp26/name-independent-decl7.C: New test. - * g++.dg/cpp26/name-independent-decl8.C: New test. - -2025-02-07 Pan Li <pan2.li@intel.com> - - PR target/118103 - * gcc.target/riscv/rvv/base/pr118103-2.c: New test. - * gcc.target/riscv/rvv/base/pr118103-run-2.c: New test. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/108357 - * gcc.dg/tree-ssa/pr108357.c: Tolerate later optimization. - -2025-02-07 Thomas Schwinge <tschwinge@baylibre.com> - - * c-c++-common/goacc/pr92793-1.c: Remove - '-fdump-tree-original-lineno' XFAILs. - -2025-02-07 Marek Polacek <polacek@redhat.com> - - PR c++/117106 - PR c++/118190 - * g++.dg/cpp0x/noexcept89.C: New test. - * g++.dg/cpp0x/noexcept90.C: New test. - -2025-02-07 Simon Martin <simon@nasilyan.com> - - PR c++/118282 - * g++.dg/conversion/op8.C: New test. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118763 - * g++.dg/asan/pr118763.C: New test. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118773 - * g++.dg/cpp0x/gen-attrs-87.C: New test. - * g++.dg/gomp/attrs-3.C: Adjust expected diagnostics. - -2025-02-07 Jakub Jelinek <jakub@redhat.com> - - PR c++/118661 - * g++.dg/cpp0x/constexpr-volatile4.C: New test. - * g++.dg/cpp0x/constexpr-union9.C: New test. - -2025-02-07 Tomáš Trnka <trnka@scm.com> - - PR fortran/116829 - * gfortran.dg/derived_init_7.f90: New test. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118514 - PR tree-optimization/118706 - * gcc.dg/field-merge-25.c: New. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/sparc/vis3move-3.c: Select ultrasparc. Skip with - -mfix-ut699. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/sparc/tls-ld-int16.c: Skip when tls is emulated. - * gcc.target/sparc/tls-ld-int32.c: Likewise. - * gcc.target/sparc/tls-ld-int8.c: Likewise. - * gcc.target/sparc/tls-ld-uint16.c: Likewise. - * gcc.target/sparc/tls-ld-uint32.c: Likewise. - * gcc.target/sparc/tls-ld-uint8.c: Likewise. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/sparc/sparc-ret-1.c: Skip on -mfix-ut699. - -2025-02-07 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/sparc/niagara7-align.c: Use -mtune. - -2025-02-06 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/madd-split2-1.c: Update expected - output. - -2025-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/114618 - * gfortran.dg/pr114618.f90: New test. - -2025-02-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/110345 - * g++.dg/cpp0x/attr-no_unique_address1.C: New test. - -2025-02-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/110345 - * g++.dg/cpp0x/attr-noreturn1.C: New test. - -2025-02-06 Jakub Jelinek <jakub@redhat.com> - - PR c++/110345 - * g++.dg/cpp0x/attr-nodiscard1.C: New test. - -2025-02-06 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/118750 - * gfortran.dg/associate_72.f90: New test. - -2025-02-06 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117506 - * gcc.dg/pr117506.c: New test. - * gcc.target/riscv/pr117506.c: New test. - -2025-02-06 Lulu Cheng <chenglulu@loongson.cn> - - PR target/118561 - * gcc.target/loongarch/pr118561.c: New test. - -2025-02-06 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/110449 - * gcc.target/aarch64/pr110449.c: Expect an increment by 8.0, - but test that there is no MOV. - -2025-02-06 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118749 - * gcc.dg/vect/pr118749.c: New testcase. - -2025-02-05 Simon Martin <simon@nasilyan.com> - - PR c++/118319 - * g++.dg/parse/defarg18.C: New test. - * g++.dg/parse/defarg18a.C: New test. - -2025-02-05 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/115568 - * gcc.target/i386/pr115568.c: New. - -2025-02-05 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118740 - * gfortran.dg/gomp/append_args-2.f90: Update for line change. - -2025-02-05 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/117239 - * gcc.dg/pr117239.c: New test. - -2025-02-05 Xi Ruoyao <xry111@xry111.site> - - PR tree-optimization/118727 - * gcc.dg/pr108692.c: Mention PR 118727 in the comment. - * gcc.dg/pr118727.c: New test case. - -2025-02-05 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/pr100056.c: Restore the original version of - the scan-assemblers. - -2025-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/47485 - * gfortran.dg/dependency_generation_1.f90: New test. - -2025-02-04 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/115112 - * gm2/pim/run/pass/dectest.mod: New test. - * gm2/pim/run/pass/inctest.mod: New test. - -2025-02-04 Marek Polacek <polacek@redhat.com> - - PR c++/94100 - * g++.dg/cpp0x/variadic188.C: New test. - -2025-02-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/118671 - * g++.dg/cpp/embed-25.C: New test. - * g++.dg/cpp0x/pr118671.C: New test. - -2025-02-04 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/riscv/pr118170.c: Ignore for E ABI. - -2025-02-04 Thiago Jung Bauermann <thiago.bauermann@linaro.org> - - PR target/116010 - * gcc.target/arm/simd/mve-vabs.c: Test tree dump and adjust to new - code. - -2025-02-04 Marek Polacek <polacek@redhat.com> - - PR c++/117778 - * g++.dg/cpp1y/lambda-generic-117778.C: New test. - * g++.dg/cpp2a/abbrev-fn2.C: New test. - * g++.dg/cpp2a/abbrev-fn3.C: New test. - -2025-02-04 Marek Polacek <polacek@redhat.com> - - PR c++/118718 - * g++.dg/warn/Wvexing-parse10.C: New test. - -2025-02-04 kelefth <konstantinos.eleftheriou@vrull.eu> - - PR testsuite/116845 - * gcc.dg/pr109393.c: XFAIL on ilp32 targets. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR c/118742 - * gcc.dg/gimplefe-56.c: New testcase. - -2025-02-04 Ilya Leoshkevich <iii@linux.ibm.com> - - * gcc.target/s390/call-z10-pic-nodatarel.c: Adjust - expectations. - * gcc.target/s390/call-z10-pic.c: Likewise. - * gcc.target/s390/call-z10.c: Likewise. - * gcc.target/s390/call-z9-pic-nodatarel.c: Likewise. - * gcc.target/s390/call-z9-pic.c: Likewise. - * gcc.target/s390/call-z9.c: Likewise. - -2025-02-04 Simon Martin <simon@nasilyan.com> - Jason Merrill <jason@redhat.com> - - PR c++/117114 - PR c++/109918 - * g++.dg/warn/Woverloaded-virt1.C: Check that no warning is - emitted for non virtual base methods. - * g++.dg/warn/Woverloaded-virt10.C: New test. - * g++.dg/warn/Woverloaded-virt11.C: New test. - * g++.dg/warn/Woverloaded-virt12.C: New test. - * g++.dg/warn/Woverloaded-virt13.C: New test. - * g++.dg/warn/Woverloaded-virt5.C: New test. - * g++.dg/warn/Woverloaded-virt6.C: New test. - * g++.dg/warn/Woverloaded-virt7.C: New test. - * g++.dg/warn/Woverloaded-virt8.C: New test. - * g++.dg/warn/Woverloaded-virt9.C: New test. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117113 - * gcc.dg/torture/pr117113.c: New testcase. - -2025-02-04 Simon Martin <simon@nasilyan.com> - - PR c++/114619 - * g++.dg/init/no-elide4.C: New test. - -2025-02-04 Jakub Jelinek <jakub@redhat.com> - - PR c++/118719 - * g++.dg/cpp1z/decomp63.C: New test. - -2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> - - * gfortran.dg/unsigned_15.f90: Adjust error messages. - * gfortran.dg/unsigned_43.f90: New test. - * gfortran.dg/unsigned_44.f90: New test. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/117611 - * gcc.dg/fixed-point/pr117611.c: New testcase. - -2025-02-04 Richard Biener <rguenther@suse.de> - - PR lto/113207 - * gcc.dg/pr113207.c: New testcase. - -2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/108205 - * g++.dg/modules/contracts-5_a.C: New test. - * g++.dg/modules/contracts-5_b.C: New test. - -2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/98893 - * g++.dg/modules/pr98893_a.H: New test. - * g++.dg/modules/pr98893_b.C: New test. - -2025-02-03 A J Ryan Solutions Ltd <gcc.gnu.org@ajryansolutions.co.uk> - - PR c++/118265 - * g++.dg/cpp1z/variadic-nontype1.C: New file. - -2025-02-03 Iain Sandoe <iains.gcc@gmail.com> - Jason Merrill <jason@redhat.com> - - PR c++/116506 - PR c++/116880 - * g++.dg/coroutines/pr116506.C: New test. - * g++.dg/coroutines/pr116880.C: New test. - -2025-02-03 Jason Merrill <jason@redhat.com> - - PR c++/116914 - PR c++/117231 - PR c++/118470 - PR c++/118491 - * g++.dg/coroutines/coro-range-for1.C: New test. - -2025-02-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/93289 - * gfortran.dg/unlimited_polymorphic_1.f03: Pad element in character - array constructor to correct length. - * gfortran.dg/char_array_constructor_5.f90: New test. - -2025-02-03 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/sve/acle/general/dupq_12.c: New test. - -2025-02-03 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118717 - * gcc.dg/torture/pr118717.c: New testcase. - -2025-02-02 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/117411 - * gm2/iso/run/pass/except9.mod: New test. - * gm2/iso/run/pass/lazyunique.mod: New test. - -2025-02-02 Lewis Hyatt <lhyatt@gmail.com> - - PR middle-end/115913 - * c-c++-common/cpp/pr115913.c: New test. - -2025-02-01 H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/111673 - * gcc.target/i386/pr111673.c: New file. - -2025-02-01 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118703 - * gm2/builtins/run/pass/testbitfns.mod: New test. - -2025-02-01 H.J. Lu <hjl.tools@gmail.com> - - PR target/118713 - * gcc.target/i386/pr118713-1-x32.c: New test. - * gcc.target/i386/pr118713-1.c: Likewise. - * gcc.target/i386/pr118713-2-x32.c: Likewise. - * gcc.target/i386/pr118713-2.c: Likewise. - * gcc.target/i386/pr118713-3-x32.c: Likewise. - * gcc.target/i386/pr118713-3.c: Likewise. - * gcc.target/i386/pr118713-4-x32.c: Likewise. - * gcc.target/i386/pr118713-4.c: Likewise. - * gcc.target/i386/pr118713-5-x32.c: Likewise. - * gcc.target/i386/pr118713-5.c: Likewise. - * gcc.target/i386/pr118713-6-x32.c: Likewise. - * gcc.target/i386/pr118713-6.c: Likewise. - * gcc.target/i386/pr118713-7-x32.c: Likewise. - * gcc.target/i386/pr118713-7.c: Likewise. - * gcc.target/i386/pr118713-8-x32.c: Likewise. - * gcc.target/i386/pr118713-8.c: Likewise. - * gcc.target/i386/pr118713-9-x32.c: Likewise. - * gcc.target/i386/pr118713-9.c: Likewise. - * gcc.target/i386/pr118713-10-x32.c: Likewise. - * gcc.target/i386/pr118713-10.c: Likewise. - * gcc.target/i386/pr118713-11-x32.c: Likewise. - * gcc.target/i386/pr118713-11.c: Likewise. - * gcc.target/i386/pr118713-12-x32.c: Likewise. - * gcc.target/i386/pr118713-12.c: Likewise. - -2025-02-01 David Malcolm <dmalcolm@redhat.com> - - * sarif-replay.dg/2.1.0-invalid/3.33.3-index-out-of-range.sarif: - New test. - * sarif-replay.dg/2.1.0-valid/spec-example-4.sarif: Update expected - output to reflect that we now find the function name for the - events in the path. - -2025-02-01 Eric Botcazou <ebotcazou@adacore.com> - - * gnat.dg/warn33.adb: New test. - * gnat.dg/warn33_pkg.ads: New helper. - -2025-02-01 H.J. Lu <hjl.tools@gmail.com> - - * gcc.target/i386/ssp-global.c: New file. - -2025-02-01 Jeff Law <jlaw@ventanamicro.com> - - PR tree-optimization/114277 - * gcc.target/i386/pr114277.c: New test. - * gcc.target/riscv/pr114277.c: Likewise. - Co-author: Andrew Pinski <quic_apinski@quicinc.com> - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR ipa/117432 - * gcc.c-torture/execute/pr117432.c: New test. - * gcc.target/i386/pr117432.c: New test. - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR c++/117516 - * g++.dg/ext/flexary9.C: Expect different wording of one of the - warnings and at a different line. - * g++.dg/ext/flexary19.C: Likewise. - * g++.dg/ext/flexary42.C: New test. - * g++.dg/other/pr117516.C: New test. - -2025-01-31 Harald Anlauf <anlauf@gmx.de> - - PR fortran/108454 - * gfortran.dg/common_29.f90: New test. - -2025-01-31 Marek Polacek <polacek@redhat.com> - - PR c++/117501 - * g++.dg/cpp2a/consteval39.C: New test. - * g++.dg/cpp2a/consteval40.C: New test. - -2025-01-31 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/116234 - * gfortran.target/aarch64/aarch64.exp: New. - * gfortran.target/aarch64/pr116234.f: New. - -2025-01-31 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/117498 - * gcc.c-torture/execute/pr117498.c: New test. - -2025-01-31 H.J. Lu <hjl.tools@gmail.com> - - PR target/115673 - * gcc.target/i386/force-indirect-call-2.c: Allow indirect branch - via GOT. - -2025-01-31 Richard Biener <rguenther@suse.de> - - PR debug/100530 - * gcc.target/i386/pr100530.c: New testcase. - -2025-01-30 Alexandre Oliva <oliva@adacore.com> - - PR target/113689 - * gcc.target/i386/pr113689-1.c: Require profiling support. - * gcc.target/i386/pr113689-2.c: Likewise. - * gcc.target/i386/pr113689-3.c: Likewise. - -2025-01-30 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/vect/vect-ifcvt-18.c: Split -Ofast out of - avx_runtime. - -2025-01-30 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Tobias Burnus <tobias@codesourcery.com> - Paul-Antoine Arras <pa@codesourcery.com> - - PR middle-end/112779 - PR middle-end/113904 - * gfortran.dg/gomp/metadirective-1.f90: New. - * gfortran.dg/gomp/metadirective-10.f90: New. - * gfortran.dg/gomp/metadirective-11.f90: New. - * gfortran.dg/gomp/metadirective-12.f90: New. - * gfortran.dg/gomp/metadirective-13.f90: New. - * gfortran.dg/gomp/metadirective-2.f90: New. - * gfortran.dg/gomp/metadirective-3.f90: New. - * gfortran.dg/gomp/metadirective-4.f90: New. - * gfortran.dg/gomp/metadirective-5.f90: New. - * gfortran.dg/gomp/metadirective-6.f90: New. - * gfortran.dg/gomp/metadirective-7.f90: New. - * gfortran.dg/gomp/metadirective-8.f90: New. - * gfortran.dg/gomp/metadirective-9.f90: New. - * gfortran.dg/gomp/metadirective-construct.f90: New. - * gfortran.dg/gomp/metadirective-no-score.f90: New. - * gfortran.dg/gomp/pure-1.f90 (func_metadirective): New. - (func_metadirective_2): New. - (func_metadirective_3): New. - * gfortran.dg/gomp/pure-2.f90 (func_metadirective): Delete. - -2025-01-30 Jakub Jelinek <jakub@redhat.com> - Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - PR target/118696 - * gcc.dg/pr118696.c: New test. - * gcc.target/s390/vector/pr118696.c: New test. - * gcc.target/s390/vector/vec-abs-emu.c: Expect vrepg with 0 as last - operand rather than 1. - * gcc.target/s390/vector/vec-max-emu.c: Likewise. - * gcc.target/s390/vector/vec-min-emu.c: Likewise. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR middle-end/118695 - * gcc.dg/pr118695.c: New testcase. - -2025-01-30 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/append-args-1.c: Update dg-*. - * c-c++-common/gomp/append-args-3.c: Likewise. - * g++.dg/gomp/append-args-1.C: Likewise. - * gfortran.dg/gomp/adjust-args-1.f90: Likewise. - * gfortran.dg/gomp/adjust-args-3.f90: Likewise. - * gfortran.dg/gomp/declare-variant-2.f90: Likewise. - * c-c++-common/gomp/append-args-6.c: New test. - * c-c++-common/gomp/append-args-7.c: New test. - * c-c++-common/gomp/append-args-8.c: New test. - * c-c++-common/gomp/append-args-9.c: New test. - * g++.dg/gomp/append-args-4.C: New test. - * g++.dg/gomp/append-args-5.C: New test. - * g++.dg/gomp/append-args-6.C: New test. - * g++.dg/gomp/append-args-7.C: New test. - * gcc.dg/gomp/append-args-1.c: New test. - * gfortran.dg/gomp/append_args-1.f90: New test. - * gfortran.dg/gomp/append_args-2.f90: New test. - * gfortran.dg/gomp/append_args-3.f90: New test. - * gfortran.dg/gomp/append_args-4.f90: New test. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR middle-end/118692 - * gcc.dg/pr118692.c: New testcase. - -2025-01-30 Richard Biener <rguenther@suse.de> - - PR tree-optimization/114052 - * gcc.dg/pr114052-1.c: New testcase. - -2025-01-30 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118320 - * g++.dg/torture/pr118320.C: New test. - -2025-01-30 Jeff Law <jlaw@ventanamicro.com> - - PR target/116860 - * gcc.dg/tree-ssa/fold-xor-and-or.c: Set logical-op-non-short-circuit. - * gcc.dg/tree-ssa/fold-xor-or.c: Similarly. - -2025-01-29 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118010 - PR modula2/118183 - PR modula2/116073 - * gm2/pim/run/pass/printtypesize.mod: New test. - -2025-01-29 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118429 - * gcc.c-torture/compile/pr118429.c: New test. - -2025-01-29 Marek Polacek <polacek@redhat.com> - - PR c++/57533 - * g++.dg/eh/throw5.C: New test. - -2025-01-29 Siddhesh Poyarekar <siddhesh@gotplt.org> - - PR testsuite/118127 - * lib/target-supports.exp - (check_effective_target_long_double_is_ibm128): New - procedure. - * gfortran.dg/default_format_2.f90: xfail for - long_double_is_ibm128. - * gfortran.dg/default_format_denormal_2.f90: Likewise. - * gfortran.dg/large_real_kind_form_io_2.f90: Likewise. - -2025-01-29 Martin Jambor <mjambor@suse.cz> - Michal Jireš <mjires@suse.cz> - - PR tree-optimization/117892 - * gcc.dg/tree-ssa/pr117892.c: New test. - * gcc.dg/tree-ssa/pr118517.c: Likewise. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * gcc.target/riscv/pr117688.h: Add test helper macros. - * gcc.target/riscv/pr117688-trunc-run-1-s16-to-s8.c: New test. - * gcc.target/riscv/pr117688-trunc-run-1-s32-to-s16.c: New test. - * gcc.target/riscv/pr117688-trunc-run-1-s32-to-s8.c: New test. - * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s16.c: New test. - * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s32.c: New test. - * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s8.c: New test. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * gcc.target/riscv/pr117688.h: Add test helper macro. - * gcc.target/riscv/pr117688-sub-run-1-s16.c: New test. - * gcc.target/riscv/pr117688-sub-run-1-s32.c: New test. - * gcc.target/riscv/pr117688-sub-run-1-s64.c: New test. - * gcc.target/riscv/pr117688-sub-run-1-s8.c: New test. - -2025-01-29 Pan Li <pan2.li@intel.com> - - PR target/117688 - * gcc.target/riscv/pr117688-add-run-1-s16.c: New test. - * gcc.target/riscv/pr117688-add-run-1-s32.c: New test. - * gcc.target/riscv/pr117688-add-run-1-s64.c: New test. - * gcc.target/riscv/pr117688-add-run-1-s8.c: New test. - * gcc.target/riscv/pr117688.h: New test. - -2025-01-29 Richard Biener <rguenther@suse.de> - - PR middle-end/118684 - * gcc.dg/pr118684.c: Require automatic_stack_alignment. - -2025-01-29 Jakub Jelinek <jakub@redhat.com> - - PR c++/118655 - * g++.dg/ext/is_bounded_array.C: Extend. - -2025-01-28 Jason Merrill <jason@redhat.com> - - PR c++/118285 - * g++.dg/cpp0x/initlist-opt7.C: New test. - -2025-01-28 Jason Merrill <jason@redhat.com> - - PR c++/118673 - * g++.dg/cpp0x/initlist-opt6.C: New test. - -2025-01-28 Richard Biener <rguenther@suse.de> - - PR middle-end/118684 - * gcc.dg/pr118684.c: New testcase. - -2025-01-28 David Malcolm <dmalcolm@redhat.com> - - PR other/118675 - * gcc.dg/sarif-output/bad-binary-op.py: Update expected output for - escaping of braces in message text. - * gcc.dg/sarif-output/missing-semicolon.py: Likewise. - * gcc.dg/sarif-output/multiple-outputs.py: Likewise. - -2025-01-28 Patrick Palka <ppalka@redhat.com> - - PR c++/117855 - * g++.dg/cpp23/class-deduction-inherited7.C: New test. - -2025-01-28 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118663 - * gcc.target/powerpc/pr118663.c: New. - -2025-01-28 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117424 - * gcc.dg/tree-ssa/ssa-lim-25.c: New testcase. - -2025-01-28 Thomas Schwinge <tschwinge@baylibre.com> - - * c-c++-common/gomp/defaultmap-4.c: Adjust. - * c-c++-common/gomp/defaultmap-5.c: Likewise. - * c-c++-common/gomp/target-implicit-map-1.c: Likewise. - * c-c++-common/gomp/target-implicit-map-2.c: Likewise. - * gfortran.dg/gomp/defaultmap-8.f90: Likewise. - * gfortran.dg/gomp/defaultmap-9.f90: Likewise. - * gfortran.dg/gomp/map-subarray.f90: Likewise. - * gfortran.dg/gomp/target-enter-exit-data.f90: Likewise. - -2025-01-28 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/118638 - * gcc.c-torture/execute/pr118638.c: New test. - -2025-01-28 Hafiz Abid Qadeer <abidh@codesourcery.com> - - * c-c++-common/goacc/implied-copy-1.c: New test. - * c-c++-common/goacc/implied-copy-2.c: New test. - * g++.dg/goacc/implied-copy.C: New test. - * gcc.dg/goacc/implied-copy.c: New test. - * gfortran.dg/goacc/implied-copy-1.f90: New test. - * gfortran.dg/goacc/implied-copy-2.f90: New test. - -2025-01-28 Jakub Jelinek <jakub@redhat.com> - - PR c/116357 - * gcc.dg/pr116357.c: New test. - -2025-01-27 Jason Merrill <jason@redhat.com> - - PR c++/118632 - * g++.dg/cpp0x/nontype7.C: New test. - -2025-01-27 Vineet Gupta <vineetg@rivosinc.com> - - PR target/118646 - * gfortran.target/riscv/rvv/pr118646.f90 (New Test). - -2025-01-27 Simon Martin <simon@nasilyan.com> - - PR c++/114292 - * g++.dg/cpp1y/lambda-ice4.C: New test. - -2025-01-27 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Remove - VEC_SHL_INSERT check. - * gcc.target/riscv/rvv/autovec/reduc/reduc-9.c: Ditto. - -2025-01-27 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c: - Distinguish between zvfh and !zvfh. - -2025-01-27 Robin Dapp <rdapp@ventanamicro.com> - - PR target/117173 - * gcc.dg/fold-perm-2.c: Run with two-source permutes. - * gcc.dg/pr54346.c: Ditto. - -2025-01-27 Harald Anlauf <anlauf@gmx.de> - - PR fortran/110993 - * gfortran.dg/use_rename_14.f90: New test. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * g++.dg/modules/dr2867-1_a.H: New test. - * g++.dg/modules/dr2867-1_b.C: New test. - * g++.dg/modules/dr2867-2_a.H: New test. - * g++.dg/modules/dr2867-2_b.C: New test. - * g++.dg/modules/dr2867-3_a.H: New test. - * g++.dg/modules/dr2867-3_b.C: New test. - * g++.dg/modules/dr2867-4_a.H: New test. - * g++.dg/modules/dr2867-4_b.C: New test. - * g++.dg/modules/dr2867-1_a.H.jj1: New file. - * g++.dg/modules/dr2867-1_b.C.jj1: New file. - * g++.dg/modules/dr2867-2_a.H.jj1: New file. - * g++.dg/modules/dr2867-2_b.C.jj1: New file. - * g++.dg/modules/dr2867-3_a.H.jj1: New file. - * g++.dg/modules/dr2867-3_b.C.jj1: New file. - * g++.dg/modules/dr2867-4_a.H.jj1: New file. - * g++.dg/modules/dr2867-4_b.C.jj1: New file. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * g++.dg/DRs/dr2867-5.C: New test. - * g++.dg/DRs/dr2867-6.C: New test. - * g++.dg/DRs/dr2867-7.C: New test. - * g++.dg/DRs/dr2867-8.C: New test. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118653 - * gcc.dg/vect/pr118653.c: New testcase. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR rtl-optimization/118662 - * gcc.dg/torture/pr118662.c: New testcase. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR middle-end/118643 - * gcc.dg/pr118643.c: New testcase. - -2025-01-27 Richard Biener <rguenther@suse.de> - - PR tree-optimization/112859 - PR tree-optimization/115347 - * gcc.dg/torture/pr112859.c: New testcase. - * gcc.dg/torture/pr115347.c: Likewise. - -2025-01-27 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/118640 - * gfortran.dg/pr118640.f90: New test. - -2025-01-27 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118637 - * gcc.dg/tree-ssa/pr118637.c: New test. - -2025-01-27 Soumya AR <soumyaa@nvidia.com> - - PR target/118490 - * gcc.dg/pr118490.c: New test. - * gcc.dg/pr: New file. - -2025-01-26 Sandra Loosemore <sloosemore@baylibre.com> - - * gfortran.dg/gomp/atomic-26.f90: Correct expected output after - fixing typo in error message. - -2025-01-26 Pan Li <pan2.li@intel.com> - - PR target/118103 - * gcc.target/riscv/rvv/base/pr118103-1.c: New test. - * gcc.target/riscv/rvv/base/pr118103-run-1.c: New test. - -2025-01-25 Harald Anlauf <anlauf@gmx.de> - - PR fortran/58857 - * gfortran.dg/uncommon_block_data_2.f90: New test. - -2025-01-25 Simon Martin <simon@nasilyan.com> - - PR c++/118239 - * g++.dg/cpp0x/constexpr-base8.C: New test. - -2025-01-25 Jakub Jelinek <jakub@redhat.com> - - PR c/118639 - * c-c++-common/gomp/pr118639.c: New test. - * c-c++-common/goacc/cache-2.c: Remove one xfail for c. - -2025-01-25 Jakub Jelinek <jakub@redhat.com> - - PR c++/117827 - * g++.dg/init/array66.C: New test. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/116568 - * g++.dg/modules/lambda-8.h: New test. - * g++.dg/modules/lambda-8_a.H: New test. - * g++.dg/modules/lambda-8_b.C: New test. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/116568 - * g++.dg/modules/internal-4_b.C: Remove XFAIL, add lambda alias - testcase. - * g++.dg/modules/lambda-9.h: New test. - * g++.dg/modules/lambda-9_a.H: New test. - * g++.dg/modules/lambda-9_b.C: New test. - -2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118245 - * g++.dg/abi/lambda-ctx3.C: New test. - * g++.dg/cpp2a/lambda-uneval22.C: New test. - * g++.dg/cpp2a/lambda-uneval23.C: New test. - -2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118589 - * lib/gm2-dg.exp (gm2.exp): load_lib. - * gm2.dg/pim/fail/badopaque.mod: New test. - * gm2.dg/pim/fail/badopaque2.mod: New test. - * gm2.dg/pim/fail/dg-pim-fail.exp: New test. - * gm2.dg/pim/fail/opaquedefs.def: New test. - * gm2.dg/pim/fail/opaquedefs.mod: New test. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/simd/armv9p5.c: New test. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/crypto-alias-1.c: New test. - -2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/target_attr_crypto_ice_1.c: Prune warning. - * gcc.target/aarch64/target_attr_crypto_ice_2.c: Ditto. - -2025-01-24 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118497 - * gcc.target/i386/pr118497.c: New. - * gcc.target/i386/vartrack-1.c: Modify the regexp. - -2025-01-24 Marek Polacek <polacek@redhat.com> - - PR c++/117153 - * g++.dg/other/anon-union6.C: New test. - * g++.dg/other/anon-union7.C: New test. - -2025-01-24 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/thumb-bitfld1.c: Use -std=c17. - -2025-01-24 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - PR testsuite/116448 - * gcc.target/arm/vfp-1.c: Use -Os -fno-math-errno. - -2025-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/118571 - * gfortran.dg/utf8_3.f03: New test. - -2025-01-24 yxj-github-437 <2457369732@qq.com> - - * g++.dg/modules/builtin-8.C: New test. - -2025-01-24 David Malcolm <dmalcolm@redhat.com> - - PR jit/117886 - * jit.dg/all-non-failing-tests.h: Add - test-pr117886-write-reproducer.c. - * jit.dg/test-pr117886-write-reproducer.c: New test. - -2025-01-24 Richard Biener <rguenther@suse.de> - - PR tree-optimization/116010 - * gfortran.dg/vect/vect-8.f90: Adjust. - -2025-01-24 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/isfinite-isinf-isnormal-signbit-1.c: New test. - * gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c: New test. - * gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c: New test. - * gcc.target/s390/isfinite-isinf-isnormal-signbit.h: New test. - -2025-01-24 Saurabh Jha <saurabh.jha@arm.com> - - * gcc.target/aarch64/sve/faminmax_1.c: Fix test to use the - correct flags. - * gcc.target/aarch64/sve/faminmax_2.c: Fix test to use the - correct flags. - * gcc.target/aarch64/sve/faminmax_3.c: New test. - -2025-01-24 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118572 - * gcc.dg/field-merge-24.c: New. - -2025-01-24 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118514 - * gcc.dg/field-merge-23.c: New. - -2025-01-23 Marek Polacek <polacek@redhat.com> - - PR c++/117602 - * g++.dg/cpp2a/lambda-uneval21.C: New test. - -2025-01-23 Harald Anlauf <anlauf@gmx.de> - - PR fortran/118613 - * gfortran.dg/maxval_arg_eval_count.f90: New test. - -2025-01-23 Georg-Johann Lay <avr@gjlay.de> - - PR tree-optimization/118012 - PR tree-optimization/118360 - * gcc.target/avr/mmcu/pr118012-1.h: New file. - * gcc.target/avr/mmcu/pr118012-1-o2-m128.c: New test. - * gcc.target/avr/mmcu/pr118012-1-os-m128.c: New test. - * gcc.target/avr/mmcu/pr118012-1-o2-m103.c: New test. - * gcc.target/avr/mmcu/pr118012-1-os-m103.c: New test. - * gcc.target/avr/mmcu/pr118012-1-o2-t40.c: New test. - * gcc.target/avr/mmcu/pr118012-1-os-t40.c: New test. - * gcc.target/avr/mmcu/pr118360-1.h: New file. - * gcc.target/avr/mmcu/pr118360-1-o2-m128.c: New test. - * gcc.target/avr/mmcu/pr118360-1-os-m128.c: New test. - * gcc.target/avr/mmcu/pr118360-1-o2-m103.c: New test. - * gcc.target/avr/mmcu/pr118360-1-os-m103.c: New test. - * gcc.target/avr/mmcu/pr118360-1-o2-t40.c: New test. - * gcc.target/avr/mmcu/pr118360-1-os-t40.c: New test. - -2025-01-23 Jan Hubicka <jh@suse.cz> - - PR target/80813 - * g++.dg/tree-ssa/bvector-3.C: New test. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/118562 - * gcc.dg/torture/pr118562.c: New test. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp: Add - cheap_fpmr_write by default. - * gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp: Likewise. - * gcc.target/aarch64/acle/fp8.c: Add cheap_fpmr_write. - * gcc.target/aarch64/acle/fpmr-2.c: Likewise. - * gcc.target/aarch64/simd/vcvt_fpm.c: Likewise. - * gcc.target/aarch64/simd/vdot2_fpm.c: Likewise. - * gcc.target/aarch64/simd/vdot4_fpm.c: Likewise. - * gcc.target/aarch64/simd/vmla_fpm.c: Likewise. - * gcc.target/aarch64/acle/fpmr-6.c: New test. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/acle/fpmr-5.c: New test. - * gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c: Don't expect - a spill slot to be allocated. - * gcc.target/aarch64/sve2/acle/asm/mlalb_lane_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/mlallbb_lane_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/mlallbt_lane_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/mlalltb_lane_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/mlalltt_lane_mf8.c: Likewise. - * gcc.target/aarch64/sve2/acle/asm/mlalt_lane_mf8.c: Likewise. - -2025-01-23 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/acle/fp8.c: Add tests for moving zero into FPMR. - -2025-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * gcc.target/i386/cmov12.c (scan-assembler-times): Allow for - cmovl.g etc. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR c++/118590 - * g++.dg/goacc/pr118590.C: New test. - -2025-01-23 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/114877 - * gcc.dg/torture/builtin-frexp-1.c: Add -Wmaybe-uninitialized as - dg-additional-options. - (bar): New function. - (TESTIT_FREXP2): Rework the macro so that it doesn't test whether - nothing has been stored to what the second argument points to, but - instead that something has been stored there, whatever it is. - (main): Temporarily don't enable the nan tests for -O0. - -2025-01-23 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.dg/pr78185.c: Remove dg-do and replace with - with dg-require-effective-target of signal and alarm. - * gcc.dg/pr116906-1.c: Likewise. - * gcc.dg/pr116906-2.c: Likewise. - * gcc.dg/vect/pr101145inf.c: Use effective-target alarm. - * gcc.dg/vect/pr101145inf_1.c: Likewise. - * lib/target-supports.exp(check_effective_target_alarm): New. - -2025-01-23 Georg-Johann Lay <avr@gjlay.de> - - PR target/117726 - * gcc.target/avr/torture/avr-torture.exp (AVR_TORTURE_OPTIONS): - Turn one option variant into -Oz. - -2025-01-23 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/96087 - * gfortran.dg/pr96087.f90: New test. - -2025-01-23 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118558 - * gcc.dg/vect/pr118558.c: New testcase. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/cpp2a/lambda-generic-mangle1.C: Update mangling. - * g++.dg/cpp2a/lambda-generic-mangle1a.C: Likewise. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/107741 - * g++.dg/abi/macro0.C: Bump ABI version. - * g++.dg/abi/mangle74.C: Remove XFAILs. - * g++.dg/other/fold1.C: Restore originally raised error. - * g++.dg/abi/lambda-ctx2-19.C: New test. - * g++.dg/abi/lambda-ctx2-19vs20.C: New test. - * g++.dg/abi/lambda-ctx2-20.C: New test. - * g++.dg/abi/lambda-ctx2.h: New test. - * g++.dg/cpp0x/static-member-init-1.C: New test. - -2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118582 - * g++.dg/modules/pr118582_a.H: New test. - * g++.dg/modules/pr118582_b.H: New test. - * g++.dg/modules/pr118582_c.H: New test. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/avx10_2-512-convert-1.c: Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: Ditto. - * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. - * gcc.target/i386/avx10_2-convert-1.c: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-satcvt-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-vcvtnebf162ibs-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtnebf162iubs-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvttnebf162ibs-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvttnebf162iubs-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-satcvt-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-vcvtnebf162ibs-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtnebf162iubs-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvttnebf162ibs-2.c: Move to... - * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvttnebf162iubs-2.c: Move to... - * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: ...here. - Adjust intrin call. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-convert-1.c: Adjust output - and intrin call. - * gcc.target/i386/avx10_2-512-vcvtneph2bf8-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtneph2bf8s-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtneph2hf8-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtneph2hf8s-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-convert-1.c: Adjust output - and intrin call. - * gcc.target/i386/avx10_2-vcvtneph2bf8-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtneph2hf8-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtneph2bf8s-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtneph2hf8s-2.c: Move to... - * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: ...here. - Adjust intrin call. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-convert-1.c: Adjust output - and intrin call. - * gcc.target/i386/avx10_2-512-vcvtne2ph2bf8-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtne2ph2bf8s-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtne2ph2hf8-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vcvtne2ph2hf8s-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-convert-1.c: Adjust output - and intrin call. - * gcc.target/i386/avx10_2-vcvtne2ph2bf8-2.c: Move to... - * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtne2ph2hf8-2.c: Move to... - * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtne2ph2bf8s-2.c: Move to... - * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vcvtne2ph2hf8s-2.c: Move to... - * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: ...here. - Adjust intrin call. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-comibf-1.c: Adjust asm check. - * gcc.target/i386/avx10_2-comibf-3.c: Ditto. - * gcc.target/i386/avx10_2-vcomsbf16-1.c: Move to... - * gcc.target/i386/avx10_2-vcomisbf16-1.c: ...here. - Adjust output and intrin call. - * gcc.target/i386/avx10_2-vcomsbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vcomisbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/pr117495.c: Adjust asm check. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-vfpclasspbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vgetexppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-vgetexppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vgetexpbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vfpclasspbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vfpclassbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx-1.c: Adjust builtin call. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and intrin - call. - * gcc.target/i386/avx10_2-512-vrsqrtpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vscalefpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vsqrtnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and intrin - call. - * gcc.target/i386/avx10_2-vrsqrtpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vscalefpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vscalefbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vsqrtnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vsqrtbf16-2.c: ...here. - Adjust intrin call. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-vgetmantpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vreducenepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vreducebf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vrndscalenepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and intrin - call. - * gcc.target/i386/avx10_2-vgetmantpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vgetmantbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vreducenepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vreducebf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vrndscalenepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vrndscalebf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx-1.c: Adjust builtin call. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/sse-14.c: Adjust intrin call. - * gcc.target/i386/sse-22.c: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-minmax-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-vminmaxnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-minmax-1.c: Adjust output and intrin - call. - * gcc.target/i386/avx10_2-vminmaxnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vminmaxbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx-1.c: Adjust builtin call. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - * gcc.target/i386/sse-14.c: Adjust intrin call. - * gcc.target/i386/sse-22.c: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-bf-vector-cmpp-1.c: Move to... - * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-512-bf-vector-smaxmin-1.c: Move to... - * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-512-vcmppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vmaxpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vminpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vminbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-bf-vector-cmpp-1.c: Move to... - * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-bf-vector-smaxmin-1.c: Move to... - * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-partial-bf-vector-smaxmin-1.c: Move to... - * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: ...here. - * gcc.target/i386/avx10_2-vcmppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vcmpbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vmaxpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vmaxbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vminpbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vminbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/part-vect-vec_cmpbf.c: Adjust asm check. - * gcc.target/i386/avx-1.c: Adjust builtin call. - * gcc.target/i386/sse-13.c: Ditto. - * gcc.target/i386/sse-23.c: Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-bf-vector-fma-1.c: Move to... - * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-512-vfmaddXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vfmsubXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vfnmaddXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-512-vfnmsubXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-bf-vector-fma-1.c: Move to... - * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-partial-bf-vector-fma-1.c: Move to... - * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-vfmaddXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vfmsubXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vfnmaddXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: ...here. - Adjust intrin call. - * gcc.target/i386/avx10_2-vfnmsubXXXnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: ...here. - Adjust intrin call. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-512-bf-vector-operations-1.c: Move to ... - * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-512-vaddnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vaddbf16-2.c: ...here. Adjust - intrin call. - * gcc.target/i386/avx10_2-512-vdivnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vdivbf16-2.c: ...here. Adjust - intrin call. - * gcc.target/i386/avx10_2-512-vmulnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vmulbf16-2.c: ...here. Adjust - intrin call. - * gcc.target/i386/avx10_2-512-vrcppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: ...here. Adjust - intrin call. - * gcc.target/i386/avx10_2-512-vsubnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-512-vsubbf16-2.c: ...here. Adjust - intrin call. - * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and - intrin call. - * gcc.target/i386/avx10_2-bf-vector-operations-1.c: Move to .... - * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-partial-bf-vector-fast-math-1.c: Move to... - * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-partial-bf-vector-operations-1.c: Move to... - * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: ...here. - Adjust asm check. - * gcc.target/i386/avx10_2-vaddnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vaddbf16-2.c: ...here. Adjust intrin call. - * gcc.target/i386/avx10_2-vdivnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vdivbf16-2.c: ...here. Adjust intrin call. - * gcc.target/i386/avx10_2-vmulnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vmulbf16-2.c: ...here. Adjust intrin call. - * gcc.target/i386/avx10_2-vrcppbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vrcpbf16-2.c: ...here. Adjust intrin call. - * gcc.target/i386/avx10_2-vsubnepbf16-2.c: Move to... - * gcc.target/i386/avx10_2-vsubbf16-2.c: ...here. Adjust intrin call. - * lib/target-supports.exp (check_effective_target_avx10_2): - Adjust asm usage. - (check_effective_target_avx10_2_512): Ditto. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - PR target/118270 - PR target/118609 - * gcc.target/i386/amxmovrs-t2rpntlvw-2.c: Move to... - * gcc.target/i386/amxmovrs-2rpntlvwrs-2.c: ...here. - * gcc.target/i386/amxtranspose-2rpntlvw-2.c: Add "t1" hint test. - -2025-01-23 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/vnniint16-auto-vectorize-4.c: Append - -march=x86-64-v3. - * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. - -2025-01-22 Arsen Arsenović <arsen@aarsen.me> - - * gcc.dg/driver-nostdlibstar.c: New test. - -2025-01-22 Jakub Jelinek <jakub@redhat.com> - - PR c++/115769 - * g++.dg/DRs/dr2867-3.C: New test. - * g++.dg/DRs/dr2867-4.C: New test. - -2025-01-22 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/acle/rwsr-4.c: New test. - * gcc.target/aarch64/acle/rwsr-armv8p9.c: Avoid read of uninitialized - variable. - -2025-01-22 Georg-Johann Lay <avr@gjlay.de> - - PR rtl-optimization/118591 - * gcc.target/avr/torture/pr118591-1.c: New test. - * gcc.target/avr/torture/pr118591-2.c: New test. - -2025-01-22 Simon Martin <simon@nasilyan.com> - - PR c++/118199 - * g++.dg/init/no-elide3.C: New test. - -2025-01-22 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/bitwise-shift-reassoc-clobber.c: New - test. - -2025-01-22 Patrick Palka <ppalka@redhat.com> - - PR c++/116756 - * g++.dg/cpp1z/constexpr-if-lambda7.C: New test. - -2025-01-21 Jeff Law <jlaw@ventanamicro.com> - - Revert: - 2024-10-29 yulong <shiyulong@iscas.ac.cn> - - * gcc.target/riscv/cmo-32.c: New test. - * gcc.target/riscv/cmo-64.c: New test. - -2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118483 - * gcc.dg/tree-ssa/pr118483-1.c: New test. - * gcc.dg/tree-ssa/pr118483-2.c: New test. - * gcc.dg/tree-ssa/pr118483-3.c: New test. - * gcc.dg/tree-ssa/pr118483-4.c: New test. - -2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/118525 - * g++.dg/cpp2a/consteval38.C: New test. - -2025-01-21 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/torture/pr117546.c: Require effective target int32plus. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - PR objc++/118586 - * objc.dg/embed-1.m: New test. - * obj-c++.dg/embed-1.mm: New test. - * obj-c++.dg/va-meth-2.mm: New test. - -2025-01-21 Jin Ma <jinma@linux.alibaba.com> - - PR target/116593 - * g++.target/riscv/rvv/rvv.exp: Enable testsuite of XTheadVector. - * g++.target/riscv/rvv/xtheadvector/pr116593.C: New test. - -2025-01-21 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/rvv/rvv.exp: Enable testsuite of - XTheadVector. - * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Adjust correctly. - * gcc.target/riscv/rvv/xtheadvector/prefix.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlb-vsb.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlbu-vsb.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlh-vsh.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlhu-vsh.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlw-vsw.c: Likewise. - * gcc.target/riscv/rvv/xtheadvector/vlwu-vsw.c: Likewise. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - PR target/118560 - * gcc.dg/dfp/pr118560.c: New test. - -2025-01-21 Marek Polacek <polacek@redhat.com> - - PR c++/118396 - PR c++/118523 - * g++.dg/cpp0x/constexpr-prvalue4.C: New test. - * g++.dg/cpp1y/constexpr-prvalue3.C: New test. - -2025-01-21 Thomas Schwinge <tschwinge@baylibre.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * gcc.dg/vect/vect-switch-search-line-fast.c: Update for GCN. - -2025-01-21 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118569 - * gcc.dg/torture/pr118569.c: New testcase. - -2025-01-21 Vladimir Miloserdov <vladimir.miloserdov@arm.com> - - * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h: New test - macro. - * lib/target-supports.exp: Add lut flag to the for loop. - * gcc.target/aarch64/sve/acle/general-c/lut_1.c: New test. - * gcc.target/aarch64/sve/acle/general-c/lut_2.c: New test. - * gcc.target/aarch64/sve/acle/general-c/lut_3.c: New test. - * gcc.target/aarch64/sve/acle/general-c/lut_4.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_bf16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_f16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_s16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_s8.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_u16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti2_u8.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_bf16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_bf16_x2.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_f16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_f16_x2.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_s16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_s16_x2.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_s8.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_u16.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_u16_x2.c: New test. - * gcc.target/aarch64/sve2/acle/asm/luti4_u8.c: New test. - -2025-01-21 Simon Martin <simon@nasilyan.com> - - PR c++/118225 - * g++.dg/cpp0x/constexpr-ice21.C: New test. - -2025-01-21 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/118273 - * gcc.target/aarch64/vect-simd-clone-4.c: New test. - -2025-01-21 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/arch-func-attr-1.c: Add '#pragma'. - * gcc.target/loongarch/cmodel-func-attr-1.c: Likewise. - * gcc.target/loongarch/lasx-func-attr-1.c: Likewise. - * gcc.target/loongarch/lsx-func-attr-1.c: Likewise. - * gcc.target/loongarch/strict_align-func-attr-1.c: Likewise. - * gcc.target/loongarch/strict_align-func-attr-2.c: Likewise. - * gcc.target/loongarch/vector-func-attr-1.c: Likewise. - * gcc.target/loongarch/arch-pragma-attr-1.c: Likewise. - * gcc.target/loongarch/cmodel-pragma-attr-1.c: New test. - * gcc.target/loongarch/lasx-pragma-attr-1.c: New test. - * gcc.target/loongarch/lasx-pragma-attr-2.c: New test. - * gcc.target/loongarch/lsx-pragma-attr-1.c: New test. - * gcc.target/loongarch/lsx-pragma-attr-2.c: New test. - * gcc.target/loongarch/strict_align-pragma-attr-1.c: New test. - * gcc.target/loongarch/strict_align-pragma-attr-2.c: New test. - * gcc.target/loongarch/vector-pragma-attr-1.c: New test. - * gcc.target/loongarch/pragma-push-pop.c: New test. - -2025-01-21 Lulu Cheng <chenglulu@loongson.cn> - - * gcc.target/loongarch/arch-func-attr-1.c: New test. - * gcc.target/loongarch/cmodel-func-attr-1.c: New test. - * gcc.target/loongarch/lasx-func-attr-1.c: New test. - * gcc.target/loongarch/lasx-func-attr-2.c: New test. - * gcc.target/loongarch/lsx-func-attr-1.c: New test. - * gcc.target/loongarch/lsx-func-attr-2.c: New test. - * gcc.target/loongarch/strict_align-func-attr-1.c: New test. - * gcc.target/loongarch/strict_align-func-attr-2.c: New test. - * gcc.target/loongarch/vector-func-attr-1.c: New test. - * gcc.target/loongarch/attr-check-error-message.c: New test. - -2025-01-21 Simon Martin <simon@nasilyan.com> - - PR c++/118277 - * g++.dg/cpp1z/constexpr-asm-5.C: Pass -fno-implicit-constexpr. - -2025-01-21 Alfie Richards <alfie.richards@arm.com> - - * g++.target/aarch64/mv-1.C: Add CLI flag. - * g++.target/aarch64/mv-symbols1.C: Add CLI flag. - * g++.target/aarch64/mv-symbols2.C: Add CLI flag. - * g++.target/aarch64/mv-symbols3.C: Add CLI flag. - * g++.target/aarch64/mv-symbols4.C: Add CLI flag. - * g++.target/aarch64/mv-symbols5.C: Add CLI flag. - * g++.target/aarch64/mv-warning1.C: New test. - * g++.target/aarch64/mvc-symbols1.C: Add CLI flag. - * g++.target/aarch64/mvc-symbols2.C: Add CLI flag. - * g++.target/aarch64/mvc-symbols3.C: Add CLI flag. - * g++.target/aarch64/mvc-symbols4.C: Add CLI flag. - * g++.target/aarch64/mv-pragma.C: Add CLI flag. - * g++.target/aarch64/mvc-warning1.C: New test. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/cpp/has-builtin-4.c: New test. - -2025-01-21 Jakub Jelinek <jakub@redhat.com> - - PR c++/118532 - * g++.dg/cpp/embed-22.C: New test. - * g++.dg/cpp/embed-23.C: New test. - * g++.dg/cpp0x/pr118532.C: New test. - * g++.dg/cpp2a/explicit20.C: New test. - -2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> - - * g++.dg/modules/export-6.C: Add structured binding tests. - * g++.dg/modules/hdr-2.H: Likewise. - -2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118101 - * g++.dg/modules/partial-7.h: New test. - * g++.dg/modules/partial-7_a.C: New test. - * g++.dg/modules/partial-7_b.C: New test. - * g++.dg/modules/partial-7_c.C: New test. - -2025-01-20 Jeff Law <jlaw@ventanamicro.com> - - PR target/116256 - * gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-37.c: Update expected - output. - * gcc.target/riscv/rvv/vsetvl/vsetvl-15.c: Likewise. - -2025-01-20 Jeff Law <jlaw@ventanamicro.com> - - PR target/114442 - * gcc.target/riscv/pr114442.c: New test. - -2025-01-20 Harald Anlauf <anlauf@gmx.de> - - PR fortran/107122 - * gfortran.dg/gomp/order-8.f90: Adjust pattern. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118348 - * gcc.target/aarch64/pr118348_1.c: New test. - * gcc.target/aarch64/pr118348_2.c: Likewise. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - Revert: - 2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118384 - * gcc.target/aarch64/pr118384_1.c: New test. - * gcc.target/aarch64/pr118384_2.c: Likewise. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR tree-optimization/118384 - * gcc.target/aarch64/pr118384_1.c: New test. - * gcc.target/aarch64/pr118384_2.c: Likewise. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118501 - * gcc.c-torture/compile/pr118501.c: New test. - -2025-01-20 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.target/aarch64/ins_bitfield_1a.c: New test. - * gcc.target/aarch64/ins_bitfield_3a.c: Likewise. - * gcc.target/aarch64/ins_bitfield_5a.c: Likewise. - -2025-01-20 Harald Anlauf <anlauf@gmx.de> - - PR fortran/81978 - * gfortran.dg/pr81978.f90: New test. - -2025-01-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/118528 - * g++.dg/cpp/embed-21.C: New test. - * g++.dg/cpp2a/class-deduction-aggr16.C: New test. - -2025-01-20 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/xtheadcondmov-bug.c: New test. - -2025-01-20 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118077 - PR tree-optimization/117668 - * g++.dg/opt/devirt6.C: New test. - -2025-01-20 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.dg/vect/complex/fast-math-bb-slp-complex-mla-float.c: Use - arm_v8_3a_complex_neon. - -2025-01-20 Christophe Lyon <christophe.lyon@linaro.org> - - * gcc.dg/vect/complex/complex-operations-run.c: Remove duplicate - dg-add-options arm_v8_3a_complex_neon. - * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c: - Likewise. - -2025-01-20 Xi Ruoyao <xry111@xry111.site> - - PR target/115921 - * gcc.target/loongarch/bstrpick_alsl_paired.c (scan-rtl-dump): - Scan for and_shift_reversedi instead of the removed - bstrpick_alsl_paired. - * gcc.target/loongarch/bitwise-shift-reassoc.c: New test. - -2025-01-20 Xi Ruoyao <xry111@xry111.site> - - * gcc.c-torture/compile/pr116438.c: Rename to ... - * gcc.c-torture/compile/pr116348.c: ... this. - -2025-01-20 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118552 - * gcc.dg/torture/pr118552.c: New testcase. - -2025-01-20 Jakub Jelinek <jakub@redhat.com> - - PR c++/118509 - * g++.dg/expr/pmf-4.C: New test. - -2025-01-20 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118224 - * gcc.dg/pr118224.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vec-shift-10.c: New test. - * gcc.target/s390/vector/vec-shift-11.c: New test. - * gcc.target/s390/vector/vec-shift-12.c: New test. - * gcc.target/s390/vector/vec-shift-3.c: New test. - * gcc.target/s390/vector/vec-shift-4.c: New test. - * gcc.target/s390/vector/vec-shift-5.c: New test. - * gcc.target/s390/vector/vec-shift-6.c: New test. - * gcc.target/s390/vector/vec-shift-7.c: New test. - * gcc.target/s390/vector/vec-shift-8.c: New test. - * gcc.target/s390/vector/vec-shift-9.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vec-max-emu.c: New test. - * gcc.target/s390/vector/vec-min-emu.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vector/vec-abs-emu.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vxe3/vd-1.c: New test. - * gcc.target/s390/vxe3/vd-2.c: New test. - * gcc.target/s390/vxe3/vdl-1.c: New test. - * gcc.target/s390/vxe3/vdl-2.c: New test. - * gcc.target/s390/vxe3/vr-1.c: New test. - * gcc.target/s390/vxe3/vr-2.c: New test. - * gcc.target/s390/vxe3/vrl-1.c: New test. - * gcc.target/s390/vxe3/vrl-2.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/vxe3/veval-1.c: New test. - * gcc.target/s390/vxe3/veval-2.c: New test. - * gcc.target/s390/vxe3/veval-3.c: New test. - * gcc.target/s390/vxe3/veval-4.c: New test. - * gcc.target/s390/vxe3/veval-5.c: New test. - * gcc.target/s390/vxe3/veval-6.c: New test. - * gcc.target/s390/vxe3/veval-7.c: New test. - * gcc.target/s390/vxe3/veval-8.c: New test. - * gcc.target/s390/vxe3/veval-9.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/llxa-1.c: New test. - * gcc.target/s390/llxa-2.c: New test. - * gcc.target/s390/llxa-3.c: New test. - * gcc.target/s390/lxa-1.c: New test. - * gcc.target/s390/lxa-2.c: New test. - * gcc.target/s390/lxa-3.c: New test. - * gcc.target/s390/lxa-4.c: New test. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * lib/target-supports.exp: VXE3 effective target check. - -2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - * gcc.target/s390/s390.exp: Set compiler flags for the vxe3 - subdirectory of the testsuite as done e.g. for vxe2. - -2025-01-20 Hongyu Wang <hongyu.wang@intel.com> - - PR target/118510 - * gcc.target/i386/pr118510.c: New test. - -2025-01-19 Uros Bizjak <ubizjak@gmail.com> - - PR rtl-optimization/118067 - * gcc.target/i386/pr118067.c (dg-compile): Use target int128. - * gcc.target/i386/pr118067-2.c (dg-compile): Ditto. - (dg-options): Use -mtune= instead of deprecated -mcpu= option. - -2025-01-19 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/torture/pr117546.c: Require effective target int32. - (main): Add return statement. - -2025-01-18 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/asm3.d: Adjust test. - -2025-01-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/118513 - * g++.dg/modules/decomp-3_a.H: New test. - * g++.dg/modules/decomp-3_b.C: New test. - -2025-01-18 Jeff Law <jlaw@ventanamicro.com> - - PR target/116308 - * gcc.target/riscv/pr116308.c: New test. - -2025-01-18 Michal Jires <mjires@suse.cz> - - * gcc.dg/live-patching-1.c: Change expected dump id. - * gcc.dg/live-patching-4.c: Likewise. - -2025-01-18 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.target/sparc/20230328-1.c: Pass -mvis3b instead of -mvis3. - * gcc.target/sparc/20230328-4.c: Likewise. - * gcc.target/sparc/fucmp.c: Likewise. - * gcc.target/sparc/vis3misc.c: Likewise. - -2025-01-18 Bohan Lei <garthlei@linux.alibaba.com> - - * gcc.target/riscv/crc-21-rv64-zbc.c: Disallow rv32 targets. - * gcc.target/riscv/crc-21-rv64-zbkc.c: Ditto. - -2025-01-18 Jin Ma <jinma@linux.alibaba.com> - - PR target/118357 - * gcc.target/riscv/rvv/xtheadvector/pr118357.c: New test. - -2025-01-18 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118529 - * gcc.target/sparc/pr118529.c: New testcase. - -2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> - Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: - Template file for unsigned vector saturating arithmetic tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: - 8-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: - 16-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: - 32-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: - 64-bit vector type tests. - * gcc.target/aarch64/saturating_arithmetic.inc: Template file - for scalar saturating arithmetic tests. - * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. - * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. - * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. - * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. - * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. - -2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> - - * gcc.target/aarch64/sve/saturating_arithmetic.inc: - Template file for auto-vectorizer tests. - * gcc.target/aarch64/sve/saturating_arithmetic_1.c: - Instantiate 8-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_2.c: - Instantiate 16-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_3.c: - Instantiate 32-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_4.c: - Instantiate 64-bit vector tests. - -2025-01-18 Tamar Christina <tamar.christina@arm.com> - - Revert: - 2025-01-18 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: - Template file for unsigned vector saturating arithmetic tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: - 8-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: - 16-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: - 32-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: - 64-bit vector type tests. - * gcc.target/aarch64/saturating_arithmetic.inc: Template file - for scalar saturating arithmetic tests. - * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. - * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. - * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. - * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. - * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. - -2025-01-18 Tamar Christina <tamar.christina@arm.com> - - Revert: - 2025-01-18 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/saturating_arithmetic.inc: - Template file for auto-vectorizer tests. - * gcc.target/aarch64/sve/saturating_arithmetic_1.c: - Instantiate 8-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_2.c: - Instantiate 16-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_3.c: - Instantiate 32-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_4.c: - Instantiate 64-bit vector tests. - -2025-01-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/118534 - * g++.dg/cpp/embed-24.C: New test. - * g++.dg/cpp1y/pr118534.C: New test. - -2025-01-18 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/alsl-cost.c: New test. - -2025-01-18 Xi Ruoyao <xry111@xry111.site> - - * gcc.target/loongarch/alsl_wu.c: New test. - -2025-01-17 Harald Anlauf <anlauf@gmx.de> - - PR libfortran/118536 - * gfortran.dg/unsigned_write_2.f90: New test. - -2025-01-17 Vladimir N. Makarov <vmakarov@redhat.com> - - * gcc.target/i386/pr118067-2.c: New. - -2025-01-17 Jakub Jelinek <jakub@redhat.com> - - * c-c++-common/cpp/embed-10.c: Allow a different error wording for - C++. - -2025-01-17 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/117115 - * gdc.dg/pr117115.d: New test. - -2025-01-17 Jakub Jelinek <jakub@redhat.com> - - PR target/118511 - * gcc.target/s390/pr118511.c: New test. - -2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/sve/saturating_arithmetic.inc: - Template file for auto-vectorizer tests. - * gcc.target/aarch64/sve/saturating_arithmetic_1.c: - Instantiate 8-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_2.c: - Instantiate 16-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_3.c: - Instantiate 32-bit vector tests. - * gcc.target/aarch64/sve/saturating_arithmetic_4.c: - Instantiate 64-bit vector tests. - -2025-01-17 Tamar Christina <tamar.christina@arm.com> - - * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: - Template file for unsigned vector saturating arithmetic tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: - 8-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: - 16-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: - 32-bit vector type tests. - * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: - 64-bit vector type tests. - * gcc.target/aarch64/saturating_arithmetic.inc: Template file - for scalar saturating arithmetic tests. - * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. - * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. - * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. - * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. - * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. - -2025-01-17 Carl Love <cel@linux.ibm.com> - - * gcc.target/powerpc/vsx-builtin-3.c: Add vec_perm test cases for - arguments of type vector signed long long int, long long bool, - bool, bool short, bool char and pixel, vector unsigned long long - int, unsigned int, unsigned short int, unsigned char. Cast - arguments for debug prints to unsigned long long. - * gcc.target/powerpc/builtins-4-int128-runnable.c: Add vec_perm - test cases for signed and unsigned int128 arguments. - -2025-01-17 Carl Love <cel@linux.ibm.com> - - * gcc.target/powerpc/builtins-1-p10-runnable.c: Remove #define - DEBUG. Replace vec_i_expected value with correct value. - -2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118049 - * g++.dg/modules/auto-5_a.C: New test. - * g++.dg/modules/auto-5_b.C: New test. - * g++.dg/modules/auto-5_c.C: New test. - * g++.dg/modules/auto-6_a.H: New test. - * g++.dg/modules/auto-6_b.C: New test. - -2025-01-17 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118321 - * g++.dg/gomp/adjust-args-4.C: New test. - -2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/118147 - * g++.dg/cpp0x/nsdmi-defer7.C: New test. - -2025-01-17 Richard Biener <rguenther@suse.de> - - PR testsuite/117958 - * g++.dg/tree-ssa/pr117123.C: XFAIL parts on aarch64-*-*. - -2025-01-17 Georg-Johann Lay <avr@gjlay.de> - - PR target/118329 - * gcc.target/avr/pr115830-add.c (__int24, __uint24): Add __extension__ - to respective typedefs. - * gcc.target/avr/pr115830-sub-ext.c: Same. - * gcc.target/avr/pr115830-sub.c: Same. - * gcc.target/avr/torture/get-mem.c: Same. - * gcc.target/avr/torture/set-mem.c: Same. - * gcc.target/avr/torture/ifelse-c.h: Same. - * gcc.target/avr/torture/ifelse-d.h: Same. - * gcc.target/avr/torture/ifelse-q.h: Same. - * gcc.target/avr/torture/ifelse-r.h: Same. - * gcc.target/avr/torture/int24-mul.c: Same. - * gcc.target/avr/torture/pr109907-2.c: Same. - * gcc.target/avr/torture/pr61443.c: Same. - * gcc.target/avr/torture/pr63633-ice-mult.c: Same. - * gcc.target/avr/torture/shift-l-u24.c: Same. - * gcc.target/avr/torture/shift-r-i24.c: Same. - * gcc.target/avr/torture/shift-r-u24.c: Same. - * gcc.target/avr/torture/add-extend.c: Same. - * gcc.target/avr/torture/sub-extend.c: Same. - * gcc.target/avr/torture/sub-zerox.c: Same. - * gcc.target/avr/torture/test-gprs.h: Same. - -2025-01-17 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118522 - * gcc.dg/bitint-120.c: New test. - -2025-01-17 Simon Martin <simon@nasilyan.com> - - PR c++/118255 - * g++.dg/lookup/pr99116-1.C: Adjust test expectation. - * g++.dg/template/friend84.C: New test. - -2025-01-17 Richard Biener <rguenther@suse.de> - - PR tree-optimization/92539 - * g++.dg/warn/Warray-bounds-pr92539.C: New testcase. - * gcc.dg/tree-ssa/sccp-16.c: New testcase. - * g++.dg/vect/pr87621.cc: Use larger power to avoid - inner loop unrolling. - * gcc.dg/vect/pr89440.c: Use larger loop bound to avoid - inner loop unrolling. - * gcc.dg/pr77975.c: Scan cunrolli dump and adjust. - -2025-01-17 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/metadirective-device.c: Don't add extra options - for target ia32. - * c-c++-common/gomp/metadirective-target-device-1.c: Likewise. - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * c-c++-common/fcf-protection-1.c: Update. - * c-c++-common/fcf-protection-2.c: Update. - * c-c++-common/fcf-protection-3.c: Update. - * c-c++-common/fcf-protection-4.c: Update. - * c-c++-common/fcf-protection-5.c: Update. - * c-c++-common/fcf-protection-6.c: Update. - * c-c++-common/fcf-protection-7.c: Update. - * gcc.target/riscv/ssp-1.c: Update. - * gcc.target/riscv/ssp-2.c: Update. - * gcc.target/riscv/zicfilp-call.c: Update. - * gcc.target/riscv/interrupt-no-lpad.c: Update. - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * gcc.target/riscv/interrupt-no-lpad.c: New test. - * gcc.target/riscv/zicfilp-call.c: New test. - Co-Developed-by: Greg McGary <gkm@rivosinc.com>, - Kito Cheng <kito.cheng@gmail.com> - -2025-01-17 Monk Chiang <monk.chiang@sifive.com> - - * gcc.target/riscv/ssp-1.c: New test. - * gcc.target/riscv/ssp-2.c: New test. - Co-Developed-by: Greg McGary <gkm@rivosinc.com>, - Kito Cheng <kito.cheng@gmail.com> - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/105440 - * g++.dg/cpp2a/constexpr-dtor17.C: New test. - -2025-01-16 Alexandre Oliva <oliva@adacore.com> - - PR target/113560 - * gcc.target/arm/wmul-5.c: Accept other mla instructions. - * gcc.target/arm/wmul-6.c: Likewise. - * gcc.target/arm/wmul-7.c: Likewise. - -2025-01-16 Alexandre Oliva <oliva@adacore.com> - - * gcc.target/arm/multilib.exp: Skip if -mfloat-abi=* or any of - its aliases are used. - -2025-01-16 Alexandre Oliva <oliva@adacore.com> - - PR rtl-optimization/113994 - * g++.dg/torture/pr113994.C: Require hosted libstdc++. - -2025-01-16 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/dfp/pr102674.c: Use the default dg-do. - * gcc.dg/dfp/pr43374.c: Likewise. - -2025-01-16 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/dfp/bitint-1.c: Rewrite requirements to retain dfprt. - * gcc.dg/dfp/bitint-2.c: Likewise. - * gcc.dg/dfp/bitint-3.c: Likewise. - * gcc.dg/dfp/bitint-4.c: Likewise. - * gcc.dg/dfp/bitint-5.c: Likewise. - * gcc.dg/dfp/bitint-6.c: Likewise. - * gcc.dg/dfp/bitint-7.c: Likewise. - * gcc.dg/dfp/bitint-8.c: Likewise. - * gcc.dg/dfp/int128-1.c: Likewise. - * gcc.dg/dfp/int128-2.c: Likewise. - * gcc.dg/dfp/int128-3.c: Likewise. - * gcc.dg/dfp/int128-4.c: Likewise. - -2025-01-16 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118321 - * gfortran.dg/gomp/adjust-args-12.f90: New test. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/107522 - * g++.dg/cpp2a/concepts-explicit-spec7.C: New test. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/118454 - * g++.dg/cpp0x/variadic187.C: New test. - -2025-01-16 Patrick Palka <ppalka@redhat.com> - - PR c++/116417 - * g++.dg/template/pseudodtor7.C: New test. - -2025-01-16 Simon Martin <simon@nasilyan.com> - - PR c++/117775 - * g++.dg/cpp2a/constexpr-117775.C: New test. - -2025-01-16 Harald Anlauf <anlauf@gmx.de> - - PR libfortran/118406 - * gfortran.dg/unsigned_write.f90: New test. - -2025-01-16 Tamar Christina <tamar.christina@arm.com> - Richard Sandiford <richard.sandiford@arm.com> - - PR target/113257 - * gcc.target/aarch64/cpunative/info_34: New test. - * gcc.target/aarch64/cpunative/native_cpu_34.c: New test. - * gcc.target/aarch64/cpunative/info_35: New test. - * gcc.target/aarch64/cpunative/native_cpu_35.c: New test. - -2025-01-16 Tamar Christina <tamar.christina@arm.com> - - PR target/110901 - * gcc.target/aarch64/options_set_29.c: New test. - -2025-01-16 Vladimir N. Makarov <vmakarov@redhat.com> - - PR rtl-optimization/118067 - * gcc.target/i386/pr118067.c: New. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/assume-2.c: Adjust expected diagnostics. - * c-c++-common/gomp/assumes-2.c: Likewise. - * c-c++-common/gomp/begin-assumes-2.c: Likewise. - * gfortran.dg/gomp/allocate-6.f90: Likewise. - * gfortran.dg/gomp/assumes-2.f90: Likewise. - -2025-01-16 Iain Buclaw <ibuclaw@gdcproject.org> - - PR d/116373 - * gdc.dg/pr116373.d: New test. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - - * c-c++-common/gomp/declare-target-indirect-2.c : Adjust - expected output for removal of "omp declare target block". - * c-c++-common/gomp/declare-variant-8.c: Likewise, the variant - call to f20 is now resolved differently. - * c-c++-common/gomp/reverse-offload-1.c: Adjust expected output. - * gfortran.dg/gomp/declare-variant-8.f90: Likewise, both f18 - and f20 now resolve to the variant. Delete obsolete comments. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - - * c-c++-common/gomp/adjust-args-6.c: New. - * c-c++-common/gomp/attrs-metadirective-1.c: New. - * c-c++-common/gomp/attrs-metadirective-2.c: New. - * c-c++-common/gomp/attrs-metadirective-3.c: New. - * c-c++-common/gomp/attrs-metadirective-4.c: New. - * c-c++-common/gomp/attrs-metadirective-5.c: New. - * c-c++-common/gomp/attrs-metadirective-6.c: New. - * c-c++-common/gomp/attrs-metadirective-7.c: New. - * c-c++-common/gomp/attrs-metadirective-8.c: New. - * c-c++-common/gomp/declare-variant-arg-exprs.c: New. - * c-c++-common/gomp/declare-variant-dynamic-1.c: New. - * c-c++-common/gomp/declare-variant-dynamic-2.c: New. - * c-c++-common/gomp/metadirective-1.c: New. - * c-c++-common/gomp/metadirective-2.c: New. - * c-c++-common/gomp/metadirective-3.c: New. - * c-c++-common/gomp/metadirective-4.c: New. - * c-c++-common/gomp/metadirective-5.c: New. - * c-c++-common/gomp/metadirective-6.c: New. - * c-c++-common/gomp/metadirective-7.c: New. - * c-c++-common/gomp/metadirective-8.c: New. - * c-c++-common/gomp/metadirective-construct.c: New. - * c-c++-common/gomp/metadirective-device.c: New. - * c-c++-common/gomp/metadirective-no-score.c: New. - * c-c++-common/gomp/metadirective-target-device-1.c: New. - * c-c++-common/gomp/metadirective-target-device-2.c: New. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - - PR middle-end/112779 - PR middle-end/113904 - * c-c++-common/gomp/declare-variant-2.c: Adjust output for C++. - * g++.dg/gomp/declare-variant-class-1.C: New. - * g++.dg/gomp/declare-variant-class-2.C: New. - * g++.dg/gomp/metadirective-template-1.C: New. - -2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - - PR middle-end/112779 - * c-c++-common/gomp/declare-variant-2.c: Adjust expected output for C. - * gcc.dg/gomp/metadirective-1.c: New. - -2025-01-16 Peter Bergner <bergner@linux.ibm.com> - - * gcc.target/powerpc/mma-builtin-error.c: New test. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - PR c++/118214 - * g++.dg/cpp/embed-17.C: New test. - * g++.dg/cpp0x/pr118214.C: New test. - -2025-01-16 Tamar Christina <tamar.christina@arm.com> - - PR testsuite/118451 - * gcc.dg/vect/vect-switch-search-line-fast.c: Add early_break guards. - -2025-01-16 Thomas Schwinge <thomas@codesourcery.com> - - * c-c++-common/goacc-gomp/nesting-1.c: Extend OpenACC 'serial' - testing. - * c-c++-common/goacc-gomp/nesting-fail-1.c: Likewise. - * c-c++-common/goacc/Wparentheses-1.c: Likewise. - * c-c++-common/goacc/builtin-goacc-parlevel-id-size.c: Likewise. - * c-c++-common/goacc/combined-directives-2.c: Likewise. - * c-c++-common/goacc/combined-directives-3.c: Likewise. - * c-c++-common/goacc/combined-directives.c: Likewise. - * c-c++-common/goacc/combined-reduction.c: Likewise. - * c-c++-common/goacc/data-clause-duplicate-1.c: Likewise. - * c-c++-common/goacc/default-1.c: Likewise. - * c-c++-common/goacc/default-2.c: Likewise. - * c-c++-common/goacc/default-3.c: Likewise. - * c-c++-common/goacc/default-4.c: Likewise. - * c-c++-common/goacc/default-5.c: Likewise. - * c-c++-common/goacc/if-clause-2.c: Likewise. - * c-c++-common/goacc/kernels-1.c: Likewise. - * c-c++-common/goacc/loop-1.c: Likewise. - * c-c++-common/goacc/loop-clauses.c: Likewise. - * c-c++-common/goacc/nesting-1.c: Likewise. - * c-c++-common/goacc/nesting-data-1.c: Likewise. - * c-c++-common/goacc/nesting-fail-1.c: Likewise. - * c-c++-common/goacc/parallel-1.c: Likewise. - * c-c++-common/goacc/private-reduction-1.c: Likewise. - * c-c++-common/goacc/reduction-promotions.c: Likewise. - * c-c++-common/goacc/routine-1.c: Likewise. - * c-c++-common/goacc/sb-1.c: Likewise. - * c-c++-common/goacc/sb-2.c: Likewise. - * c-c++-common/goacc/uninit-firstprivate-clause.c: Likewise. - * c-c++-common/goacc/uninit-if-clause.c: Likewise. - * c-c++-common/goacc/update-if_present-2.c: Likewise. - * g++.dg/goacc/template.C: Likewise. - * gfortran.dg/goacc/array-reduction.f90: Likewise. - * gfortran.dg/goacc/assumed.f95: Likewise. - * gfortran.dg/goacc/branch.f95: Likewise. - * gfortran.dg/goacc/coarray.f95: Likewise. - * gfortran.dg/goacc/coarray_2.f90: Likewise. - * gfortran.dg/goacc/combined-directives-3.f90: Likewise. - * gfortran.dg/goacc/combined-directives.f90: Likewise. - * gfortran.dg/goacc/common-block-1.f90: Likewise. - * gfortran.dg/goacc/common-block-2.f90: Likewise. - * gfortran.dg/goacc/common-block-3.f90: Likewise. - * gfortran.dg/goacc/cray-2.f95: Likewise. - * gfortran.dg/goacc/cray.f95: Likewise. - * gfortran.dg/goacc/critical.f95: Likewise. - * gfortran.dg/goacc/data-clauses.f95: Likewise. - * gfortran.dg/goacc/default-1.f95: Likewise. - * gfortran.dg/goacc/default-2.f: Likewise. - * gfortran.dg/goacc/default-3.f95: Likewise. - * gfortran.dg/goacc/default-4.f: Likewise. - * gfortran.dg/goacc/default-5.f: Likewise. - * gfortran.dg/goacc/default_none.f95: Likewise. - * gfortran.dg/goacc/derived-types.f90: Likewise. - * gfortran.dg/goacc/firstprivate-1.f95: Likewise. - * gfortran.dg/goacc/gang-static.f95: Likewise. - * gfortran.dg/goacc/if.f95: Likewise. - * gfortran.dg/goacc/list.f95: Likewise. - * gfortran.dg/goacc/literal.f95: Likewise. - * gfortran.dg/goacc/loop-1-2.f95: Likewise. - * gfortran.dg/goacc/loop-1.f95: Likewise. - * gfortran.dg/goacc/loop-2-parallel-3.f95: Likewise. - * gfortran.dg/goacc/loop-3-2.f95: Likewise. - * gfortran.dg/goacc/loop-3.f95: Likewise. - * gfortran.dg/goacc/multi-clause.f90: Likewise. - * gfortran.dg/goacc/nested-parallelism.f90: Likewise. - * gfortran.dg/goacc/parameter.f95: Likewise. - * gfortran.dg/goacc/pr71704.f90: Likewise. - * gfortran.dg/goacc/private-3.f95: Likewise. - * gfortran.dg/goacc/pure-elemental-procedures.f95: Likewise. - * gfortran.dg/goacc/reduction-2.f95: Likewise. - * gfortran.dg/goacc/reduction-3.f95: Likewise. - * gfortran.dg/goacc/reduction-promotions.f90: Likewise. - * gfortran.dg/goacc/reduction.f95: Likewise. - * gfortran.dg/goacc/routine-3.f90: Likewise. - * gfortran.dg/goacc/routine-module-1.f90: Likewise. - * gfortran.dg/goacc/routine-module-2.f90: Likewise. - * gfortran.dg/goacc/routine-module-mod-1.f90: Likewise. - * gfortran.dg/goacc/sie.f95: Likewise. - * gfortran.dg/goacc/subarrays.f95: Likewise. - * gfortran.dg/goacc/uninit-firstprivate-clause.f95: Likewise. - * gfortran.dg/goacc/uninit-if-clause.f95: Likewise. - * gfortran.dg/goacc/update-if_present-2.f90: Likewise. - * c-c++-common/goacc/loop-3.c: Rename to... - * c-c++-common/goacc/loop-3-parallel.c: ... this. - * gfortran.dg/goacc/parallel-kernels-clauses.f95: Rename to... - * gfortran.dg/goacc/compute_construct-clauses.f95: ... this. - Extend OpenACC 'serial' testing. - * gfortran.dg/goacc/parallel-kernels-regions.f95: Rename to... - * gfortran.dg/goacc/nesting-fail-1.f95: ... this. Extend OpenACC - 'serial' testing. - * gfortran.dg/goacc/routine-external-level-of-parallelism-1.f: - Rename to... - * gfortran.dg/goacc/routine-external-level-of-parallelism-1-parallel.f: - ... this. - * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: - Rename to... - * gfortran.dg/goacc/routine-external-level-of-parallelism-2-parallel.f: - ... this. - * c-c++-common/goacc/loop-2-serial.c: New. - * c-c++-common/goacc/loop-3-serial.c: Likewise. - * c-c++-common/goacc/nested-reductions-1-serial.c: Likewise. - * c-c++-common/goacc/nested-reductions-2-serial.c: Likewise. - * c-c++-common/goacc/serial-1.c: Likewise. - * gfortran.dg/goacc/loop-2-serial-3.f95: Likewise. - * gfortran.dg/goacc/loop-2-serial-nested.f95: Likewise. - * gfortran.dg/goacc/loop-2-serial-tile.f95: Likewise. - * gfortran.dg/goacc/loop-2-serial.f95: Likewise. - * gfortran.dg/goacc/nested-reductions-1-serial.f90: Likewise. - * gfortran.dg/goacc/nested-reductions-2-serial.f90: Likewise. - * gfortran.dg/goacc/private-explicit-serial-1.f95: Likewise. - * gfortran.dg/goacc/private-predetermined-serial-1.f95: Likewise. - * gfortran.dg/goacc/routine-external-level-of-parallelism-1-serial.f: - Likewise. - * gfortran.dg/goacc/routine-external-level-of-parallelism-2-serial.f: - Likewise. - * gfortran.dg/goacc/serial-tree.f95: Likewise. - -2025-01-16 Thomas Schwinge <thomas@codesourcery.com> - - * gfortran.dg/goacc/assumed.f95: Use relative line numbers for a - few DejaGnu directives. - * gfortran.dg/goacc/list.f95: Likewise. - * gfortran.dg/goacc/loop-1-2.f95: Likewise. - * gfortran.dg/goacc/loop-1.f95: Likewise. - * gfortran.dg/goacc/reduction.f95: Likewise. - -2025-01-16 Tobias Burnus <tburnus@baylibre.com> - - PR fortran/118441 - * gfortran.dg/gomp/intrinsic_pack_7.f90: New test. - -2025-01-16 Liao Shihua <shihua@iscas.ac.cn> - - * gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_x_f_qf.c: Add vsetivli checking. - * gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_xu_f_qf.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmacc_2x8x2.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmacc_4x8x4.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_2x8x2.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_4x8x4.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_2x8x2.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_4x8x4.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_2x8x2.c: Ditto. - * gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_4x8x4.c: Ditto. - -2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> - - PR tree-optimization/118487 - * gcc.dg/tree-ssa/pr118487.c: New test. - -2025-01-16 Richard Biener <rguenther@suse.de> - Mikael Morin <mikael@gcc.gnu.org> - - PR tree-optimization/115494 - * gcc.dg/torture/pr115494.c: New testcase. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118430 - * c-c++-common/musttail14.c: Expect lhs on the must tail call calls. - -2025-01-16 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/118430 - * c-c++-common/musttail14.c: New test. - * c-c++-common/pr118430.c: New test. - -2025-01-16 liuhongt <hongtao.liu@intel.com> - - * gcc.target/i386/pr118489.c: New test. - -2025-01-16 Richard Biener <rguenther@suse.de> - - PR tree-optimization/115895 - * gcc.target/i386/vect-pr115895.c: New testcase. - -2025-01-15 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/102705 - * gcc.dg/tree-ssa/pr105832-2.c: Update testcase. - * gcc.dg/tree-ssa/pr96669-1.c: Likewise. - * gcc.dg/tree-ssa/pr102705-1.c: New test. - * gcc.dg/tree-ssa/pr102705-2.c: New test. - -2025-01-15 Harald Anlauf <anlauf@gmx.de> - - PR fortran/71884 - * gfortran.dg/pr71884.f90: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118390 - * g++.dg/cpp/embed-20.C: New test. - * g++.dg/cpp0x/pr118390.C: New test. - -2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * gcc.target/aarch64/inline-mem-set-pr112804.c: Add -Wno-deprecated. - * gcc.target/aarch64/pr100518.c: Likewise. - * gcc.target/aarch64/pr113114.c: Likewise. - * gcc.target/aarch64/pr80295.c: Likewise. - * gcc.target/aarch64/pr94201.c: Likewise. - * gcc.target/aarch64/pr94577.c: Likewise. - * gcc.target/aarch64/sve/pr108603.c: Likewise. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * gcc.target/bpf/core-builtin-1.c: Correct test. - * gcc.target/bpf/core-builtin-2.c: Correct test. - * gcc.target/bpf/core-builtin-exprlist-1.c: Correct test. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * gcc.target/bpf/core-attr-calls.c: New test. - -2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> - - * gcc.target/bpf/core-attr-const.c: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118278 - * g++.dg/abi/mangle80.C: New test. - * g++.dg/cpp/embed-19.C: New test. - -2025-01-15 Marek Polacek <polacek@redhat.com> - - PR c++/118139 - * g++.dg/diagnostic/decltype1.C: New test. - -2025-01-15 Tamar Christina <tamar.christina@arm.com> - - PR middle-end/118472 - * gcc.dg/pr118472.c: New test. - -2025-01-15 Christoph Müllner <christoph.muellner@vrull.eu> - - PR target/117079 - * gcc.target/i386/pr105493.c: Fix expected vectorization - -2025-01-15 Tobias Burnus <tburnus@baylibre.com> - - PR c++/118486 - * g++.dg/gomp/declare-variant-11.C: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR ipa/116068 - * gcc.dg/graphite/pr116068.c: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118387 - * g++.dg/cpp2a/spaceship-err6.C: Expect another error. - * g++.dg/cpp2a/spaceship-synth17.C: Likewise. - * g++.dg/cpp2a/spaceship-synth-neg6.C: Likewise. - * g++.dg/cpp2a/spaceship-synth-neg7.C: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118124 - * g++.dg/cpp0x/initlist-opt5.C: New test. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118124 - * g++.dg/cpp/embed-15.C: New test. - * g++.dg/cpp/embed-16.C: New test. - * g++.dg/cpp0x/initlist-opt3.C: New test. - * g++.dg/cpp0x/initlist-opt4.C: New test. - -2025-01-15 Kito Cheng <kito.cheng@sifive.com> - - PR target/118182 - * gfortran.target/riscv/rvv/pr118182.f: New. - * gcc.target/riscv/rvv/autovec/pr118182-1.c: New. - * gcc.target/riscv/rvv/autovec/pr118182-2.c: New. - -2025-01-15 Anton Blanchard <antonb@tenstorrent.com> - Jeff Law <jlaw@ventanamicro.com> - - PR target/118170 - * gcc.target/riscv/pr118170.c: New test. - -2025-01-15 Richard Sandiford <richard.sandiford@arm.com> - Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/109592 - * gcc.target/riscv/pr109592.c: New test. - * gcc.target/riscv/sign-extend-rshift.c: Adjust expected output - -2025-01-14 anetczuk <anetczuk@o2.pl> - - * g++.dg/diagnostic/lang-dump-1.C: New test. - -2025-01-14 Marek Polacek <polacek@redhat.com> - - PR c++/118047 - PR c++/118355 - * g++.dg/cpp0x/nsdmi-list10.C: New test. - * g++.dg/cpp0x/nsdmi-list9.C: New test. - -2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> - Kwok Cheung Yeung <kcy@codesourcery.com> - Sandra Loosemore <sandra@codesourcery.com> - Marcel Vollweiler <marcel@codesourcery.com> - - PR middle-end/114596 - PR middle-end/112779 - PR middle-end/113904 - * c-c++-common/gomp/declare-variant-12.c: Adjust expected behavior - per PR114596. - * c-c++-common/gomp/declare-variant-13.c: Test that this is resolvable - after gimplification, not just final resolution. - * c-c++-common/gomp/declare-variant-14.c: Tweak testcase to ensure - that -O causes dead code to be optimized away. - * gfortran.dg/gomp/declare-variant-12.f90: Adjust expected behavior - per PR114596. - * gfortran.dg/gomp/declare-variant-13.f90: Test that this is resolvable - after gimplification, not just final resolution. - * gfortran.dg/gomp/declare-variant-14.f90: Tweak testcase to ensure - that -O causes dead code to be optimized away. - -2025-01-14 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118456 - * gcc.dg/field-merge-21.c: New. - * gcc.dg/field-merge-22.c: New. - -2025-01-14 Robin Dapp <rdapp@ventanamicro.com> - - PR target/118154 - * gcc.target/riscv/rvv/autovec/pr118154-1.c: New test. - * gcc.target/riscv/rvv/autovec/pr118154-2.c: New test. - -2025-01-14 Robin Dapp <rdapp@ventanamicro.com> - - PR middle-end/118140 - * gcc.dg/vect/pr118140.c: New test. - * gcc.target/riscv/rvv/autovec/pr118140.c: New test. - -2025-01-14 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117397 - * g++.dg/modules/dguide-5_a.H: New test. - * g++.dg/modules/dguide-5_b.H: New test. - * g++.dg/modules/dguide-5_c.H: New test. - * g++.dg/modules/dguide-6.h: New test. - * g++.dg/modules/dguide-6_a.C: New test. - * g++.dg/modules/dguide-6_b.C: New test. - * g++.dg/modules/dguide-6_c.C: New test. - -2025-01-14 Anuj Mohite <anujmohite001@gmail.com> - - * gfortran.dg/do_concurrent_10.f90: New test. - * gfortran.dg/do_concurrent_8_f2018.f90: New test. - * gfortran.dg/do_concurrent_8_f2023.f90: New test. - * gfortran.dg/do_concurrent_9.f90: New test. - * gfortran.dg/do_concurrent_all_clauses.f90: New test. - * gfortran.dg/do_concurrent_basic.f90: New test. - * gfortran.dg/do_concurrent_constraints.f90: New test. - * gfortran.dg/do_concurrent_local_init.f90: New test. - * gfortran.dg/do_concurrent_locality_specs.f90: New test. - * gfortran.dg/do_concurrent_multiple_reduce.f90: New test. - * gfortran.dg/do_concurrent_nested.f90: New test. - * gfortran.dg/do_concurrent_parser.f90: New test. - * gfortran.dg/do_concurrent_reduce_max.f90: New test. - * gfortran.dg/do_concurrent_reduce_sum.f90: New test. - * gfortran.dg/do_concurrent_shared.f90: New test. - -2025-01-14 David Malcolm <dmalcolm@redhat.com> - - PR c/116871 - * gcc.dg/c23-mismatching-fn-ptr-a52dec.c: New test. - * gcc.dg/c23-mismatching-fn-ptr-alsatools.c: New test. - * gcc.dg/c23-mismatching-fn-ptr.c: New test. - -2025-01-14 Andrew Pinski <quic_apinski@quicinc.com> - - PR c++/118445 - * g++.target/aarch64/sve/constexpr-add-1.C: New test. - -2025-01-14 Jiufu Guo <guojiufu@linux.ibm.com> - - PR target/116030 - * gcc.target/powerpc/pr116030.c: New test. - -2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> - - PR target/117682 - * gcc.target/riscv/rvv/autovec/pr117682.c: New test. - -2025-01-13 Robin Dapp <rdapp@ventanamicro.com> - - * gcc.target/riscv/stack_save_restore_1.c: Skip for -flto. - * gcc.target/riscv/stack_save_restore_2.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-04.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-05.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-06.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-07.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-08.c: Ditto. - * gcc.target/riscv/zbb-rol-ror-09.c: Ditto. - -2025-01-13 Xi Ruoyao <xry111@xry111.site> - - PR target/115921 - * gcc.target/riscv/zba-shNadd-08.c: New test. - -2025-01-13 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/rvv/base/bug-10.c: New test. - -2025-01-13 Paul-Antoine Arras <parras@baylibre.com> - - * gfortran.dg/gomp/declare-variant-2.f90: Remove error test for a comma - after the directive name. Add tests for other invalid syntaxes (extra - comma and invalid clause). - * c-c++-common/gomp/adjust-args-5.c: New test. - * gfortran.dg/gomp/adjust-args-11.f90: New test. - -2025-01-13 Jin Ma <jinma@linux.alibaba.com> - - * gcc.target/riscv/zbs-bug.c: New test. - -2025-01-13 Gaius Mulley <gaiusmod2@gmail.com> - - PR modula2/118453 - * gm2/pim/fail/badbecomes2.mod: New test. - * gm2/pim/fail/badparamset1.mod: New test. - * gm2/pim/fail/badparamset2.mod: New test. - * gm2/pim/fail/badsyntaxset1.mod: New test. - -2025-01-13 Jeff Law <jlaw@ventanamicro.com> - - PR rtl-optimization/107455 - * gcc.target/riscv/pr107455-1.c: New test. - * gcc.target/riscv/pr107455-2.c: New test. - -2025-01-13 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118409 - * gcc.dg/field-merge-20.c: New. - -2025-01-13 Richard Biener <rguenther@suse.de> - Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> - - PR tree-optimization/117119 - * gcc.dg/torture/pr117119.c: New testcase. - -2025-01-13 Thomas Schwinge <tschwinge@baylibre.com> - - * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: - Un-XFAIL 'dg-note's. - -2025-01-13 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/crc-builtin-target32.c: Add -fdump-rtl-expand-details - as dg-additional-options. Scan expand dump rather than assembly, - adjust the regexps. - * gcc.dg/crc-builtin-target64.c: Likewise. - * gcc.dg/crc-builtin-rev-target32.c: Likewise. - * gcc.dg/crc-builtin-rev-target64.c: Likewise. - * gcc.dg/pr117997.c: New test. - * gcc.dg/pr118415.c: New test. - -2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/asm3.d: Adjust test. - * gdc.dg/torture/pr96435.d: Adjust test. - -2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/copy1.d: New test. - -2025-01-12 David Malcolm <dmalcolm@redhat.com> - - PR c/118112 - * gcc.dg/too-few-arguments.c: New test. - * gcc.dg/too-many-arguments.c: New test. - -2025-01-12 Harald Anlauf <anlauf@gmx.de> - - PR fortran/115788 - * gfortran.dg/ieee/out_of_range.f90: New test. - * gfortran.dg/out_of_range_1.f90: New test. - * gfortran.dg/out_of_range_2.f90: New test. - * gfortran.dg/out_of_range_3.f90: New test. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * gcc.target/alpha/memcpy-hi-unaligned-dst.c: New file. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * gcc.target/alpha/memcpy-si-aligned.c: New file. - * gcc.target/alpha/memcpy-si-unaligned.c: New file. - * gcc.target/alpha/memcpy-si-unaligned-dst.c: New file. - * gcc.target/alpha/memcpy-si-unaligned-src.c: New file. - * gcc.target/alpha/memcpy-si-unaligned-src-bwx.c: New file. - -2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> - - * gcc.target/alpha/target-bwx-1.c: New file. - * gcc.target/alpha/target-bwx-2.c: New file. - * gcc.target/alpha/target-bwx-3.c: New file. - * gcc.target/alpha/target-bwx-4.c: New file. - * gcc.target/alpha/target-cix-1.c: New file. - * gcc.target/alpha/target-cix-2.c: New file. - * gcc.target/alpha/target-cix-3.c: New file. - * gcc.target/alpha/target-cix-4.c: New file. - * gcc.target/alpha/target-fix-1.c: New file. - * gcc.target/alpha/target-fix-2.c: New file. - * gcc.target/alpha/target-fix-3.c: New file. - * gcc.target/alpha/target-fix-4.c: New file. - * gcc.target/alpha/target-max-1.c: New file. - * gcc.target/alpha/target-max-2.c: New file. - * gcc.target/alpha/target-max-3.c: New file. - * gcc.target/alpha/target-max-4.c: New file. - -2025-01-11 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/114630 - * g++.dg/modules/pr114630.h: New test. - * g++.dg/modules/pr114630_a.C: New test. - * g++.dg/modules/pr114630_b.C: New test. - * g++.dg/modules/pr114630_c.C: New test. - -2025-01-11 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: Update - xfail'ed 'dg-bogus' for the better 'declared here' location. - * gfortran.dg/gomp/dispatch-11.f90: New test. - * gfortran.dg/gomp/dispatch-12.f90: New test. - -2025-01-11 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/108434 - * gfortran.dg/pr108434.f90 : Add tests from comment 1. - -2025-01-11 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/attrib-2_a.C: New test. - * g++.dg/modules/attrib-2_b.C: New test. - -2025-01-11 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/attrib-1_a.C: New test. - * g++.dg/modules/attrib-1_b.C: New test. - -2025-01-11 mengqinggang <mengqinggang@loongson.cn> - - * gcc.target/loongarch/imm-load.c: Not generate ">>". - -2025-01-11 Andrew MacLeod <amacleod@redhat.com> - - PR tree-optimization/88575 - * gcc.dg/tree-ssa/minmax-27.c: Disable VRP. - * gcc.dg/tree-ssa/minmax-27e.c: New. - * gcc.dg/tree-ssa/minmax-27f.c: New. - * gcc.dg/tree-ssa/minmax-28.c: Disable VRP. - * gcc.dg/tree-ssa/minmax-28e.c: New. - * gcc.dg/tree-ssa/minmax-28f.c: New. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * gcc.dg/vect/vect-early-break_130.c: New test. - -2025-01-10 Tamar Christina <Tamar.Christina@arm.com> - Alex Coplan <alex.coplan@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * g++.dg/vect/vect-early-break_6.cc: New test. - -2025-01-10 Alex Coplan <alex.coplan@arm.com> - Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/118211 - PR tree-optimization/116126 - * gcc.dg/tree-ssa/cunroll-13.c: Don't vectorize. - * gcc.dg/tree-ssa/cunroll-14.c: Likewise. - * gcc.dg/unroll-6.c: Likewise. - * gcc.dg/tree-ssa/gen-vect-28.c: Likewise. - * gcc.dg/vect/vect-104.c: Expect to vectorize. - * gcc.dg/vect/vect-early-break_108-pr113588.c: Likewise. - * gcc.dg/vect/vect-early-break_109-pr113588.c: Likewise. - * gcc.dg/vect/vect-early-break_110-pr113467.c: Likewise. - * gcc.dg/vect/vect-early-break_3.c: Likewise. - * gcc.dg/vect/vect-early-break_65.c: Likewise. - * gcc.dg/vect/vect-early-break_8.c: Likewise. - * gfortran.dg/vect/vect-5.f90: Likewise. - * gfortran.dg/vect/vect-8.f90: Likewise. - * gcc.dg/vect/vect-switch-search-line-fast.c: - -2025-01-10 Marek Polacek <polacek@redhat.com> - - PR c++/118391 - * g++.dg/cpp2a/lambda-uneval20.C: New test. - -2025-01-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/cmse/cmse-15.c: Added pattern for armv8-m.base. - -2025-01-10 Paul-Antoine Arras <parras@baylibre.com> - - * g++.dg/gomp/dispatch-8.C: New test. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/118387 - * g++.dg/cpp2a/spaceship-synth17.C: New test. - -2025-01-10 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/operator-2_a.C: New test. - * g++.dg/modules/operator-2_b.C: New test. - -2025-01-10 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118017 - * gcc.target/i386/pr118017.c: Check target int128. - -2025-01-10 Marek Polacek <polacek@redhat.com> - - PR c++/117937 - * g++.dg/cpp26/pack-indexing13.C: New test. - * g++.dg/cpp26/pack-indexing14.C: New test. - -2025-01-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * gcc.target/s390/uaddc-1.c: New test. - * gcc.target/s390/uaddc-2.c: New test. - * gcc.target/s390/uaddc-3.c: New test. - * gcc.target/s390/usubc-1.c: New test. - * gcc.target/s390/usubc-2.c: New test. - * gcc.target/s390/usubc-3.c: New test. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/acle/fpmr-1.c: New test. - * gcc.target/aarch64/acle/fpmr-2.c: New test. - * gcc.target/aarch64/acle/fpmr-3.c: New test. - * gcc.target/aarch64/acle/fpmr-4.c: New test. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * g++.target/aarch64/mv-pragma.C: New test. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/cpunative/native_cpu_21.c: Add rcpc2 to - expected feature string instead of rcpc. - * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/cpunative/native_cpu_21.c: Add flagm2 to - expected feature string instead of flagm. - * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/cpunative/native_cpu_21.c: Add frintts to - expected feature string. - * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/cpunative/native_cpu_21.c: Add jscvt to - expected feature string. - * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. - -2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> - - * gcc.target/aarch64/cpunative/info_15: Add fcma to Features. - * gcc.target/aarch64/cpunative/info_16: Ditto. - * gcc.target/aarch64/cpunative/info_17: Ditto. - * gcc.target/aarch64/cpunative/info_8: Ditto. - * gcc.target/aarch64/cpunative/info_9: Ditto. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR c/118376 - * gcc.dg/pr118376.c: New test. - -2025-01-10 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/117186 - * gcc.dg/torture/pr117186.c: New test. - * gcc.target/aarch64/pr117186.c: Likewise. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118344 - * gcc.dg/field-merge-19.c: New. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR tree-optimization/118206 - * gcc.dg/field-merge-18.c: New. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR testsuite/118025 - * gcc.dg/field-merge-1.c: Convert constants to desired types. - * gcc.dg/field-merge-3.c: Likewise. - * gcc.dg/field-merge-4.c: Likewise. - * gcc.dg/field-merge-5.c: Likewise. - * gcc.dg/field-merge-11.c: Likewise. - * gcc.dg/field-merge-17.c: Don't mess with padding bits. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - PR testsuite/118025 - * gcc.dg/field-merge-1.c: Skip BIT_FIELD_REF counting on AVR and PRU. - * gcc.dg/field-merge-3.c: Bypass the test if short doesn't have the - expected size. - * gcc.dg/field-merge-8.c: Likewise. - * gcc.dg/field-merge-9.c: Likewise. Skip optimization counting on - AVR and PRU. - * gcc.dg/field-merge-13.c: Skip optimization counting on AVR and PRU. - * gcc.dg/field-merge-15.c: Likewise. - * gcc.dg/field-merge-17.c: Likewise. - * gcc.dg/field-merge-16.c: Likewise. Drop runtime bypass. Use - smaller types. - * gcc.dg/field-merge-14.c: Add comments. - -2025-01-10 Alexandre Oliva <oliva@adacore.com> - - * gcc.dg/field-merge-17.c: New. - -2025-01-10 Martin Jambor <mjambor@suse.cz> - - PR ipa/118138 - * gcc.dg/ipa/pr118138.c: New test. - -2025-01-10 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/__builtin_frame_address_0-1.c: New. - -2025-01-10 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/__builtin_stack_address-1.c: New. - -2025-01-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/pr59858.c: Use -std=c17 and effective-target - arm_arch_v5te_thumb. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/118277 - * g++.dg/cpp1z/constexpr-asm-4.C: New test. - * g++.dg/cpp1z/constexpr-asm-5.C: New test. - -2025-01-10 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/modules/decomp-2_b.C: New test. - * g++.dg/modules/decomp-2_a.H: New file. - -2025-01-10 Jason Merrill <jason@redhat.com> - - * g++.dg/modules/constexpr-if-1_a.C: New test. - * g++.dg/modules/constexpr-if-1_b.C: New test. - -2025-01-10 chenxiaolong <chenxiaolong@loongson.cn> - Deng Jianbo <dengjianbo@loongson.cn>. - - * gcc.target/loongarch/vect-slp-two-operator.c: New test. - -2025-01-09 Edwin Lu <ewlu@rivosinc.com> - - * lib/target-supports.exp: Fix effective target sync_char_short - for riscv*-*-* - -2025-01-09 Tamar Christina <tamar.christina@arm.com> - - PR target/118188 - * gcc.target/aarch64/sve/gather_load_12.c: New test. - * gcc.target/aarch64/sve/gather_load_13.c: New test. - * gcc.target/aarch64/sve/gather_load_14.c: New test. - -2025-01-09 Vladimir N. Makarov <vmakarov@redhat.com> - - PR target/118017 - * gcc.target/i386/pr118017.c: New. - -2025-01-09 Jason Merrill <jason@redhat.com> - - * g++.dg/cpp0x/noexcept88.C: New test. - -2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/armv8_2-fp16-conv-1.c: Fix typo. - -2025-01-09 Jakub Jelinek <jakub@redhat.com> - - PR target/118362 - * gcc.c-torture/compile/pr118362.c: New test. - * gcc.target/s390/pr118362.c: New test. - -2025-01-09 Martin Uecker <uecker@tugraz.at> - - PR c/117866 - * gcc.dg/pr117866.c: New test. - * gcc.dg/strub-pr118007.c: Adapt. - -2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/memset-inline-8.c: Use -Os and prefix assembler - instructions with a tab to improve test stability. - * gcc.target/arm/memset-inline-8-exe.c: Use -Os. - -2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * gcc.target/arm/armv8_2-fp16-conv-1.c: Convert - scan-assembler-times to check-function-bodies. - -2025-01-09 Jason Merrill <jason@redhat.com> - Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - PR c/116060 - * c-c++-common/analyzer/out-of-bounds-diagram-8.c: Update to - correct type. - * c-c++-common/analyzer/out-of-bounds-diagram-11.c: Likewise. - * gcc.dg/analyzer/out-of-bounds-diagram-10.c: Likewise. - -2025-01-09 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/pr118325.c: Require effective target trampolines. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/118060 - * g++.dg/cpp2a/concepts-requires40.C: New test. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117887 - * g++.dg/cpp2a/concepts-requires39.C: New test. - * g++.dg/cpp2a/lambda-targ10.C: New test. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117925 - * g++.dg/template/non-dependent35.C: New test. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117993 - * g++.dg/template/dependent-base4.C: New test. - * g++.dg/template/dependent-base5.C: New test. - -2025-01-09 Patrick Palka <ppalka@redhat.com> - - PR c++/117792 - * g++.dg/cpp1z/nontype7.C: New test. - -2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.dg/crc-linux-3.c: Move... - * gcc.dg/torture/crc-linux-3.c: ... here. - -2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/alloca-1.c: Evolve into... - * gcc.target/nvptx/alloca-1-O0.c: ... this, ... - * gcc.target/nvptx/alloca-1-O1.c: ... this, and... - * gcc.target/nvptx/alloca-1-sm_30.c: ... this. - * gcc.target/nvptx/vla-1.c: Evolve into... - * gcc.target/nvptx/vla-1-O0.c: ... this, ... - * gcc.target/nvptx/vla-1-O1.c: ... this, and... - * gcc.target/nvptx/vla-1-sm_30.c: ... this. - * gcc.c-torture/execute/pr36321.c: Adjust. - * gcc.target/nvptx/__builtin_alloca_0-1-O0.c: Likewise. - * gcc.target/nvptx/__builtin_alloca_0-1-O1.c: Likewise. - * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: - Likewise. - * gcc.target/nvptx/softstack.c: Likewise. - * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1-sm_30.c: - New. - * gcc.target/nvptx/alloca-2-O0.c: Likewise. - * gcc.target/nvptx/alloca-3-O1.c: Likewise. - * gcc.target/nvptx/alloca-4-O3.c: Likewise. - * gcc.target/nvptx/alloca-5.c: Likewise. - * lib/target-supports.exp (check_effective_target_alloca): Adjust. - (check_nvptx_default_ptx_isa_target_architecture_at_least) - (check_nvptx_runtime_ptx_isa_target_architecture_at_least) - (check_effective_target_nvptx_runtime_alloca_ptx) - (add_options_for_nvptx_alloca_ptx): New. - -2025-01-09 H.J. Lu <hjl.tools@gmail.com> - - PR rtl-optimization/118266 - * gcc.target/i386/pr118266.c: New test. - -2025-01-09 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/117927 - * gcc.dg/tree-ssa/pr117927.c: New test. - -2025-01-09 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/append-args-1.c: Update dg-*. - * c-c++-common/gomp/append-args-3.c: Extend testcase. - * c-c++-common/gomp/dispatch-11.c: Update dg-*. - * c-c++-common/gomp/dispatch-12.c: Update dg-*. - * g++.dg/gomp/append-args-1.C: Update dg-*. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/march-map=sm_52.c: Adjust. - * gcc.target/nvptx/march-map=sm_53.c: Likewise. - * gcc.target/nvptx/march-map=sm_60.c: Likewise. - * gcc.target/nvptx/march-map=sm_61.c: Likewise. - * gcc.target/nvptx/march-map=sm_62.c: Likewise. - * gcc.target/nvptx/march-map=sm_70.c: Likewise. - * gcc.target/nvptx/march-map=sm_72.c: Likewise. - * gcc.target/nvptx/march-map=sm_75.c: Likewise. - * gcc.target/nvptx/march-map=sm_80.c: Likewise. - * gcc.target/nvptx/march-map=sm_86.c: Likewise. - * gcc.target/nvptx/march-map=sm_87.c: Likewise. - * gcc.target/nvptx/march=sm_52.c: Likewise. - * gcc.target/nvptx/march=sm_53.c: Likewise. - * gcc.target/nvptx/march=sm_70.c: Likewise. - * gcc.target/nvptx/march=sm_75.c: Likewise. - * gcc.target/nvptx/march=sm_80.c: Likewise. - * gcc.target/nvptx/mptx=_.c: Use '-march=sm_89'. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - * gcc.target/nvptx/mptx=7.3.c: New. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - * lib/target-supports.exp - (check_effective_target_nvptx_softstack): New. - (check_effective_target_alloca) [nvptx]: Use it. - -2025-01-08 Jakub Jelinek <jakub@redhat.com> - - PR c++/117825 - * g++.dg/warn/pr117825.C: New test. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: - Adjust. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: - Add. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/__builtin_alloca_0-1-O0.c: New. - * gcc.target/nvptx/__builtin_alloca_0-1-O1.c: Likewise. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * g++.dg/gomp/declare-variant-3.C: Update diagnostic. - * g++.dg/gomp/declare-variant-5.C: Likewise. - -2025-01-08 Jason Merrill <jason@redhat.com> - - * g++.dg/gomp/declare-variant-3.C: Don't depend on expr dump. - * g++.dg/gomp/declare-variant-5.C: Likewise. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/alloca-2-O1.c: New. - -2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/65181 - * gcc.target/nvptx/alloca-1.c: New. - * gcc.target/nvptx/vla-1.c: Likewise. - -2025-01-08 Richard Sandiford <richard.sandiford@arm.com> - - PR target/107102 - * gcc.target/aarch64/sve/sibcall_1.c: New test. - -2025-01-08 Tobias Burnus <tburnus@baylibre.com> - - * c-c++-common/gomp/append-args-4.c: New test. - * c-c++-common/gomp/append-args-5.c: New test. - -2025-01-08 Marek Polacek <polacek@redhat.com> - - PR c++/118169 - * g++.dg/cpp1y/constexpr-prvalue2.C: New test. - -2025-01-08 Thomas Schwinge <thomas@codesourcery.com> - - * gcc.dg/torture/stackalign/global-1.c: Re-enable for nvptx. - * gcc.dg/torture/stackalign/inline-1.c: Likewise. - * gcc.dg/torture/stackalign/nested-1.c: Likewise. - * gcc.dg/torture/stackalign/nested-2.c: Likewise. - * gcc.dg/torture/stackalign/nested-4.c: Likewise. - * gcc.dg/torture/stackalign/pr16660-1.c: Likewise. - * gcc.dg/torture/stackalign/pr16660-2.c: Likewise. - * gcc.dg/torture/stackalign/pr16660-3.c: Likewise. - * gcc.dg/torture/stackalign/ret-struct-1.c: Likewise. - * gcc.dg/torture/stackalign/struct-1.c: Likewise. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/117979 - * gcc.dg/torture/pr117979.c: New testcase. - -2025-01-08 Jakub Jelinek <jakub@redhat.com> - - * g++.dg/debug/dwarf2/lang-cpp17.C: Add -gno-strict-dwarf to - dg-options. Check also for DW_AT_language_{name,version} values. - * g++.dg/debug/dwarf2/lang-cpp20.C: Likewise. - * g++.dg/debug/dwarf2/lang-cpp23.C: New test. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR middle-end/118325 - * gcc.dg/pr118325.c: New testcase. - -2025-01-08 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118269 - * gcc.dg/vect/vect-early-break_131-pr118269.c: New testcase. - -2025-01-08 Christophe Lyon <christophe.lyon@linaro.org> - - PR target/118332 - * gcc.target/arm/mve/intrinsics/pr118332.c: New test. - -2025-01-08 Jeevitha <jeevitha@linux.ibm.com> - - * gcc.target/powerpc/amo1.c: Removed powerpc*-*-* from the target and - simplified dg-options. - * gcc.target/powerpc/amo2.c: Simplified dg-options and added powerpc_vsx - target check. - -2025-01-08 Haochen Jiang <haochen.jiang@intel.com> - - * gcc.target/i386/amxavx512-asmatt-1.c: Adjust intrin call. - * gcc.target/i386/amxavx512-asmintel-1.c: Ditto. - * gcc.target/i386/amxavx512-cvtrowps2pbf16-2.c: Rename to... - * gcc.target/i386/amxavx512-cvtrowps2bf16-2.c: ...this. Rename - test functions. - -2025-01-08 Hongyu Wang <hongyu.wang@intel.com> - - * gcc.target/i386/cmov12.c: New test. - -2025-01-07 Vineet Gupta <vineetg@rivosinc.com> - Pan Li <pan2.li@intel.com> - - PR target/117722 - * gcc.target/riscv/rvv/autovec/pr117722.c: New test. - -2025-01-07 Tsung Chun Lin <tclin914@gmail.com> - - * gcc.target/riscv/rvv/autovec/pr113469.c: Update expected output. - * gcc.target/riscv/rvv/base/movqi-1.c: New test. - -2025-01-07 Jeff Law <jlaw@ventanamicro.com> - - * gcc.target/riscv/rvv/vsetvl/vlmax_conflict-3.c: Update expected - output. - * gcc.target/riscv/rvv/vsetvl/vlmax_conflict-12.c: Likewise. - -2025-01-07 Andreas Schwab <schwab@suse.de> - - * lib/target-supports.exp - (check_effective_target_sync_char_short): Enable for riscv*-*-*. - -2025-01-07 Andreas Schwab <schwab@suse.de> - - PR target/118137 - * gcc.dg/atomic/pr118137.c: New. - -2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.dg/pr90838-2.c: Skip if default ABI is E. - * gcc.dg/pr90838.c: Ditto. - * gcc.target/riscv/adddibeq.c: Ditto. - * gcc.target/riscv/adddibfeq.c: Ditto. - * gcc.target/riscv/adddibfge.c: Ditto. - * gcc.target/riscv/adddibfgt.c: Ditto. - * gcc.target/riscv/adddibfle.c: Ditto. - * gcc.target/riscv/adddibflt.c: Ditto. - * gcc.target/riscv/adddibfne.c: Ditto. - * gcc.target/riscv/adddibge.c: Ditto. - * gcc.target/riscv/adddibgeu.c: Ditto. - * gcc.target/riscv/adddibgt.c: Ditto. - * gcc.target/riscv/adddibgtu.c: Ditto. - * gcc.target/riscv/adddible.c: Ditto. - * gcc.target/riscv/adddibleu.c: Ditto. - * gcc.target/riscv/adddiblt.c: Ditto. - * gcc.target/riscv/adddibltu.c: Ditto. - * gcc.target/riscv/adddibne.c: Ditto. - * gcc.target/riscv/adddieq.c: Ditto. - * gcc.target/riscv/adddifeq.c: Ditto. - * gcc.target/riscv/adddifge.c: Ditto. - * gcc.target/riscv/adddifgt.c: Ditto. - * gcc.target/riscv/adddifle.c: Ditto. - * gcc.target/riscv/adddiflt.c: Ditto. - * gcc.target/riscv/adddifne.c: Ditto. - * gcc.target/riscv/adddige.c: Ditto. - * gcc.target/riscv/adddigeu.c: Ditto. - * gcc.target/riscv/adddigt.c: Ditto. - * gcc.target/riscv/adddigtu.c: Ditto. - * gcc.target/riscv/adddile.c: Ditto. - * gcc.target/riscv/adddileu.c: Ditto. - * gcc.target/riscv/adddilt.c: Ditto. - * gcc.target/riscv/adddiltu.c: Ditto. - * gcc.target/riscv/adddine.c: Ditto. - * gcc.target/riscv/addsibeq.c: Ditto. - * gcc.target/riscv/addsibfeq.c: Ditto. - * gcc.target/riscv/addsibfge.c: Ditto. - * gcc.target/riscv/addsibfgt.c: Ditto. - * gcc.target/riscv/addsibfle.c: Ditto. - * gcc.target/riscv/addsibflt.c: Ditto. - * gcc.target/riscv/addsibfne.c: Ditto. - * gcc.target/riscv/addsibge.c: Ditto. - * gcc.target/riscv/addsibgeu.c: Ditto. - * gcc.target/riscv/addsibgt.c: Ditto. - * gcc.target/riscv/addsibgtu.c: Ditto. - * gcc.target/riscv/addsible.c: Ditto. - * gcc.target/riscv/addsibleu.c: Ditto. - * gcc.target/riscv/addsiblt.c: Ditto. - * gcc.target/riscv/addsibltu.c: Ditto. - * gcc.target/riscv/addsibne.c: Ditto. - * gcc.target/riscv/addsieq.c: Ditto. - * gcc.target/riscv/addsifeq.c: Ditto. - * gcc.target/riscv/addsifge.c: Ditto. - * gcc.target/riscv/addsifgt.c: Ditto. - * gcc.target/riscv/addsifle.c: Ditto. - * gcc.target/riscv/addsiflt.c: Ditto. - * gcc.target/riscv/addsifne.c: Ditto. - * gcc.target/riscv/addsige.c: Ditto. - * gcc.target/riscv/addsigeu.c: Ditto. - * gcc.target/riscv/addsigt.c: Ditto. - * gcc.target/riscv/addsigtu.c: Ditto. - * gcc.target/riscv/addsile.c: Ditto. - * gcc.target/riscv/addsileu.c: Ditto. - * gcc.target/riscv/addsilt.c: Ditto. - * gcc.target/riscv/addsiltu.c: Ditto. - * gcc.target/riscv/addsine.c: Ditto. - * gcc.target/riscv/cmo-zicboz-zic64-1.c: Ditto. - * gcc.target/riscv/cmpmemsi-2.c: Ditto. - * gcc.target/riscv/cmpmemsi-3.c: Ditto. - * gcc.target/riscv/cmpmemsi.c: Ditto. - * gcc.target/riscv/cpymemsi-2.c: Ditto. - * gcc.target/riscv/cpymemsi-3.c: Ditto. - * gcc.target/riscv/cpymemsi.c: Ditto. - * gcc.target/riscv/crc-builtin-zbc32.c: Ditto. - * gcc.target/riscv/crc-builtin-zbc64.c: Ditto. - * gcc.target/riscv/cset-sext-rtl.c: Ditto. - * gcc.target/riscv/cset-sext-rtl32.c: Ditto. - * gcc.target/riscv/cset-sext-sfb-rtl.c: Ditto. - * gcc.target/riscv/cset-sext-sfb-rtl32.c: Ditto. - * gcc.target/riscv/cset-sext-sfb.c: Ditto. - * gcc.target/riscv/cset-sext-thead-rtl.c: Ditto. - * gcc.target/riscv/cset-sext-thead.c: Ditto. - * gcc.target/riscv/cset-sext-ventana-rtl.c: Ditto. - * gcc.target/riscv/cset-sext-ventana.c: Ditto. - * gcc.target/riscv/cset-sext-zicond-rtl.c: Ditto. - * gcc.target/riscv/cset-sext-zicond-rtl32.c: Ditto. - * gcc.target/riscv/cset-sext-zicond.c: Ditto. - * gcc.target/riscv/cset-sext.c: Ditto. - * gcc.target/riscv/matrix_add_const.c: Ditto. - * gcc.target/riscv/movdibeq-thead.c: Ditto. - * gcc.target/riscv/movdibeq-ventana.c: Ditto. - * gcc.target/riscv/movdibeq-zicond.c: Ditto. - * gcc.target/riscv/movdibeq.c: Ditto. - * gcc.target/riscv/movdibfeq-ventana.c: Ditto. - * gcc.target/riscv/movdibfeq-zicond.c: Ditto. - * gcc.target/riscv/movdibfeq.c: Ditto. - * gcc.target/riscv/movdibfge-ventana.c: Ditto. - * gcc.target/riscv/movdibfge-zicond.c: Ditto. - * gcc.target/riscv/movdibfge.c: Ditto. - * gcc.target/riscv/movdibfgt-ventana.c: Ditto. - * gcc.target/riscv/movdibfgt-zicond.c: Ditto. - * gcc.target/riscv/movdibfgt.c: Ditto. - * gcc.target/riscv/movdibfle-ventana.c: Ditto. - * gcc.target/riscv/movdibfle-zicond.c: Ditto. - * gcc.target/riscv/movdibfle.c: Ditto. - * gcc.target/riscv/movdibflt-ventana.c: Ditto. - * gcc.target/riscv/movdibflt-zicond.c: Ditto. - * gcc.target/riscv/movdibflt.c: Ditto. - * gcc.target/riscv/movdibfne-ventana.c: Ditto. - * gcc.target/riscv/movdibfne-zicond.c: Ditto. - * gcc.target/riscv/movdibfne.c: Ditto. - * gcc.target/riscv/movdibge-thead.c: Ditto. - * gcc.target/riscv/movdibge-ventana.c: Ditto. - * gcc.target/riscv/movdibge-zicond.c: Ditto. - * gcc.target/riscv/movdibge.c: Ditto. - * gcc.target/riscv/movdibgeu-thead.c: Ditto. - * gcc.target/riscv/movdibgeu-ventana.c: Ditto. - * gcc.target/riscv/movdibgeu-zicond.c: Ditto. - * gcc.target/riscv/movdibgeu.c: Ditto. - * gcc.target/riscv/movdibgt-thead.c: Ditto. - * gcc.target/riscv/movdibgt-ventana.c: Ditto. - * gcc.target/riscv/movdibgt-zicond.c: Ditto. - * gcc.target/riscv/movdibgt.c: Ditto. - * gcc.target/riscv/movdibgtu-thead.c: Ditto. - * gcc.target/riscv/movdibgtu-ventana.c: Ditto. - * gcc.target/riscv/movdibgtu-zicond.c: Ditto. - * gcc.target/riscv/movdibgtu.c: Ditto. - * gcc.target/riscv/movdible-thead.c: Ditto. - * gcc.target/riscv/movdible-ventana.c: Ditto. - * gcc.target/riscv/movdible-zicond.c: Ditto. - * gcc.target/riscv/movdible.c: Ditto. - * gcc.target/riscv/movdibleu-thead.c: Ditto. - * gcc.target/riscv/movdibleu-ventana.c: Ditto. - * gcc.target/riscv/movdibleu-zicond.c: Ditto. - * gcc.target/riscv/movdibleu.c: Ditto. - * gcc.target/riscv/movdiblt-thead.c: Ditto. - * gcc.target/riscv/movdiblt-ventana.c: Ditto. - * gcc.target/riscv/movdiblt-zicond.c: Ditto. - * gcc.target/riscv/movdiblt.c: Ditto. - * gcc.target/riscv/movdibltu-thead.c: Ditto. - * gcc.target/riscv/movdibltu-ventana.c: Ditto. - * gcc.target/riscv/movdibltu-zicond.c: Ditto. - * gcc.target/riscv/movdibltu.c: Ditto. - * gcc.target/riscv/movdibne-thead.c: Ditto. - * gcc.target/riscv/movdibne-ventana.c: Ditto. - * gcc.target/riscv/movdibne-zicond.c: Ditto. - * gcc.target/riscv/movdibne.c: Ditto. - * gcc.target/riscv/movdieq-sfb.c: Ditto. - * gcc.target/riscv/movdieq-thead.c: Ditto. - * gcc.target/riscv/movdieq-ventana.c: Ditto. - * gcc.target/riscv/movdieq-zicond.c: Ditto. - * gcc.target/riscv/movdieq.c: Ditto. - * gcc.target/riscv/movdifeq-sfb.c: Ditto. - * gcc.target/riscv/movdifeq-thead.c: Ditto. - * gcc.target/riscv/movdifeq-ventana.c: Ditto. - * gcc.target/riscv/movdifeq-zicond.c: Ditto. - * gcc.target/riscv/movdifeq.c: Ditto. - * gcc.target/riscv/movdifge-sfb.c: Ditto. - * gcc.target/riscv/movdifge-thead.c: Ditto. - * gcc.target/riscv/movdifge-ventana.c: Ditto. - * gcc.target/riscv/movdifge-zicond.c: Ditto. - * gcc.target/riscv/movdifge.c: Ditto. - * gcc.target/riscv/movdifgt-sfb.c: Ditto. - * gcc.target/riscv/movdifgt-thead.c: Ditto. - * gcc.target/riscv/movdifgt-ventana.c: Ditto. - * gcc.target/riscv/movdifgt-zicond.c: Ditto. - * gcc.target/riscv/movdifgt.c: Ditto. - * gcc.target/riscv/movdifle-sfb.c: Ditto. - * gcc.target/riscv/movdifle-thead.c: Ditto. - * gcc.target/riscv/movdifle-ventana.c: Ditto. - * gcc.target/riscv/movdifle-zicond.c: Ditto. - * gcc.target/riscv/movdifle.c: Ditto. - * gcc.target/riscv/movdiflt-sfb.c: Ditto. - * gcc.target/riscv/movdiflt-thead.c: Ditto. - * gcc.target/riscv/movdiflt-ventana.c: Ditto. - * gcc.target/riscv/movdiflt-zicond.c: Ditto. - * gcc.target/riscv/movdiflt.c: Ditto. - * gcc.target/riscv/movdifne-sfb.c: Ditto. - * gcc.target/riscv/movdifne-thead.c: Ditto. - * gcc.target/riscv/movdifne-ventana.c: Ditto. - * gcc.target/riscv/movdifne-zicond.c: Ditto. - * gcc.target/riscv/movdifne.c: Ditto. - * gcc.target/riscv/movdige-sfb.c: Ditto. - * gcc.target/riscv/movdige-thead.c: Ditto. - * gcc.target/riscv/movdige-ventana.c: Ditto. - * gcc.target/riscv/movdige-zicond.c: Ditto. - * gcc.target/riscv/movdige.c: Ditto. - * gcc.target/riscv/movdigeu-sfb.c: Ditto. - * gcc.target/riscv/movdigeu-thead.c: Ditto. - * gcc.target/riscv/movdigeu-ventana.c: Ditto. - * gcc.target/riscv/movdigeu-zicond.c: Ditto. - * gcc.target/riscv/movdigeu.c: Ditto. - * gcc.target/riscv/movdigt-sfb.c: Ditto. - * gcc.target/riscv/movdigt-thead.c: Ditto. - * gcc.target/riscv/movdigt-ventana.c: Ditto. - * gcc.target/riscv/movdigt-zicond.c: Ditto. - * gcc.target/riscv/movdigt.c: Ditto. - * gcc.target/riscv/movdigtu-sfb.c: Ditto. - * gcc.target/riscv/movdigtu-thead.c: Ditto. - * gcc.target/riscv/movdigtu-ventana.c: Ditto. - * gcc.target/riscv/movdigtu-zicond.c: Ditto. - * gcc.target/riscv/movdigtu.c: Ditto. - * gcc.target/riscv/movdile-sfb.c: Ditto. - * gcc.target/riscv/movdile-thead.c: Ditto. - * gcc.target/riscv/movdile-ventana.c: Ditto. - * gcc.target/riscv/movdile-zicond.c: Ditto. - * gcc.target/riscv/movdile.c: Ditto. - * gcc.target/riscv/movdileu-sfb.c: Ditto. - * gcc.target/riscv/movdileu-thead.c: Ditto. - * gcc.target/riscv/movdileu-ventana.c: Ditto. - * gcc.target/riscv/movdileu-zicond.c: Ditto. - * gcc.target/riscv/movdileu.c: Ditto. - * gcc.target/riscv/movdilt-sfb.c: Ditto. - * gcc.target/riscv/movdilt-thead.c: Ditto. - * gcc.target/riscv/movdilt-ventana.c: Ditto. - * gcc.target/riscv/movdilt-zicond.c: Ditto. - * gcc.target/riscv/movdilt.c: Ditto. - * gcc.target/riscv/movdiltu-sfb.c: Ditto. - * gcc.target/riscv/movdiltu-thead.c: Ditto. - * gcc.target/riscv/movdiltu-ventana.c: Ditto. - * gcc.target/riscv/movdiltu-zicond.c: Ditto. - * gcc.target/riscv/movdiltu.c: Ditto. - * gcc.target/riscv/movdine-sfb.c: Ditto. - * gcc.target/riscv/movdine-thead.c: Ditto. - * gcc.target/riscv/movdine-ventana.c: Ditto. - * gcc.target/riscv/movdine-zicond.c: Ditto. - * gcc.target/riscv/movdine.c: Ditto. - * gcc.target/riscv/movsibeq-thead.c: Ditto. - * gcc.target/riscv/movsibeq-ventana.c: Ditto. - * gcc.target/riscv/movsibeq-zicond.c: Ditto. - * gcc.target/riscv/movsibeq.c: Ditto. - * gcc.target/riscv/movsibfeq-ventana.c: Ditto. - * gcc.target/riscv/movsibfeq-zicond.c: Ditto. - * gcc.target/riscv/movsibfeq.c: Ditto. - * gcc.target/riscv/movsibfge-ventana.c: Ditto. - * gcc.target/riscv/movsibfge-zicond.c: Ditto. - * gcc.target/riscv/movsibfge.c: Ditto. - * gcc.target/riscv/movsibfgt-ventana.c: Ditto. - * gcc.target/riscv/movsibfgt-zicond.c: Ditto. - * gcc.target/riscv/movsibfgt.c: Ditto. - * gcc.target/riscv/movsibfle-ventana.c: Ditto. - * gcc.target/riscv/movsibfle-zicond.c: Ditto. - * gcc.target/riscv/movsibfle.c: Ditto. - * gcc.target/riscv/movsibflt-ventana.c: Ditto. - * gcc.target/riscv/movsibflt-zicond.c: Ditto. - * gcc.target/riscv/movsibflt.c: Ditto. - * gcc.target/riscv/movsibfne-ventana.c: Ditto. - * gcc.target/riscv/movsibfne-zicond.c: Ditto. - * gcc.target/riscv/movsibfne.c: Ditto. - * gcc.target/riscv/movsibge-thead.c: Ditto. - * gcc.target/riscv/movsibge-ventana.c: Ditto. - * gcc.target/riscv/movsibge-zicond.c: Ditto. - * gcc.target/riscv/movsibge.c: Ditto. - * gcc.target/riscv/movsibgeu-thead.c: Ditto. - * gcc.target/riscv/movsibgeu-ventana.c: Ditto. - * gcc.target/riscv/movsibgeu-zicond.c: Ditto. - * gcc.target/riscv/movsibgeu.c: Ditto. - * gcc.target/riscv/movsibgt-thead.c: Ditto. - * gcc.target/riscv/movsibgt-ventana.c: Ditto. - * gcc.target/riscv/movsibgt-zicond.c: Ditto. - * gcc.target/riscv/movsibgt.c: Ditto. - * gcc.target/riscv/movsibgtu-thead.c: Ditto. - * gcc.target/riscv/movsibgtu-ventana.c: Ditto. - * gcc.target/riscv/movsibgtu-zicond.c: Ditto. - * gcc.target/riscv/movsibgtu.c: Ditto. - * gcc.target/riscv/movsible-thead.c: Ditto. - * gcc.target/riscv/movsible-ventana.c: Ditto. - * gcc.target/riscv/movsible-zicond.c: Ditto. - * gcc.target/riscv/movsible.c: Ditto. - * gcc.target/riscv/movsibleu-thead.c: Ditto. - * gcc.target/riscv/movsibleu-ventana.c: Ditto. - * gcc.target/riscv/movsibleu-zicond.c: Ditto. - * gcc.target/riscv/movsibleu.c: Ditto. - * gcc.target/riscv/movsiblt-thead.c: Ditto. - * gcc.target/riscv/movsiblt-ventana.c: Ditto. - * gcc.target/riscv/movsiblt-zicond.c: Ditto. - * gcc.target/riscv/movsiblt.c: Ditto. - * gcc.target/riscv/movsibltu-thead.c: Ditto. - * gcc.target/riscv/movsibltu-ventana.c: Ditto. - * gcc.target/riscv/movsibltu-zicond.c: Ditto. - * gcc.target/riscv/movsibltu.c: Ditto. - * gcc.target/riscv/movsibne-thead.c: Ditto. - * gcc.target/riscv/movsibne-ventana.c: Ditto. - * gcc.target/riscv/movsibne-zicond.c: Ditto. - * gcc.target/riscv/movsibne.c: Ditto. - * gcc.target/riscv/movsieq-sfb.c: Ditto. - * gcc.target/riscv/movsieq-thead.c: Ditto. - * gcc.target/riscv/movsieq-ventana.c: Ditto. - * gcc.target/riscv/movsieq-zicond.c: Ditto. - * gcc.target/riscv/movsieq.c: Ditto. - * gcc.target/riscv/movsifeq-sfb.c: Ditto. - * gcc.target/riscv/movsifeq-thead.c: Ditto. - * gcc.target/riscv/movsifeq-ventana.c: Ditto. - * gcc.target/riscv/movsifeq-zicond.c: Ditto. - * gcc.target/riscv/movsifeq.c: Ditto. - * gcc.target/riscv/movsifge-sfb.c: Ditto. - * gcc.target/riscv/movsifge-thead.c: Ditto. - * gcc.target/riscv/movsifge-ventana.c: Ditto. - * gcc.target/riscv/movsifge-zicond.c: Ditto. - * gcc.target/riscv/movsifge.c: Ditto. - * gcc.target/riscv/movsifgt-sfb.c: Ditto. - * gcc.target/riscv/movsifgt-thead.c: Ditto. - * gcc.target/riscv/movsifgt-ventana.c: Ditto. - * gcc.target/riscv/movsifgt-zicond.c: Ditto. - * gcc.target/riscv/movsifgt.c: Ditto. - * gcc.target/riscv/movsifle-sfb.c: Ditto. - * gcc.target/riscv/movsifle-thead.c: Ditto. - * gcc.target/riscv/movsifle-ventana.c: Ditto. - * gcc.target/riscv/movsifle-zicond.c: Ditto. - * gcc.target/riscv/movsifle.c: Ditto. - * gcc.target/riscv/movsiflt-sfb.c: Ditto. - * gcc.target/riscv/movsiflt-thead.c: Ditto. - * gcc.target/riscv/movsiflt-ventana.c: Ditto. - * gcc.target/riscv/movsiflt-zicond.c: Ditto. - * gcc.target/riscv/movsiflt.c: Ditto. - * gcc.target/riscv/movsifne-sfb.c: Ditto. - * gcc.target/riscv/movsifne-thead.c: Ditto. - * gcc.target/riscv/movsifne-ventana.c: Ditto. - * gcc.target/riscv/movsifne-zicond.c: Ditto. - * gcc.target/riscv/movsifne.c: Ditto. - * gcc.target/riscv/movsige-sfb.c: Ditto. - * gcc.target/riscv/movsige-thead.c: Ditto. - * gcc.target/riscv/movsige-ventana.c: Ditto. - * gcc.target/riscv/movsige-zicond.c: Ditto. - * gcc.target/riscv/movsige.c: Ditto. - * gcc.target/riscv/movsigeu-sfb.c: Ditto. - * gcc.target/riscv/movsigeu-thead.c: Ditto. - * gcc.target/riscv/movsigeu-ventana.c: Ditto. - * gcc.target/riscv/movsigeu-zicond.c: Ditto. - * gcc.target/riscv/movsigeu.c: Ditto. - * gcc.target/riscv/movsigt-sfb.c: Ditto. - * gcc.target/riscv/movsigt-thead.c: Ditto. - * gcc.target/riscv/movsigt-ventana.c: Ditto. - * gcc.target/riscv/movsigt-zicond.c: Ditto. - * gcc.target/riscv/movsigt.c: Ditto. - * gcc.target/riscv/movsigtu-sfb.c: Ditto. - * gcc.target/riscv/movsigtu-thead.c: Ditto. - * gcc.target/riscv/movsigtu-ventana.c: Ditto. - * gcc.target/riscv/movsigtu-zicond.c: Ditto. - * gcc.target/riscv/movsigtu.c: Ditto. - * gcc.target/riscv/movsile-sfb.c: Ditto. - * gcc.target/riscv/movsile-thead.c: Ditto. - * gcc.target/riscv/movsile-ventana.c: Ditto. - * gcc.target/riscv/movsile-zicond.c: Ditto. - * gcc.target/riscv/movsile.c: Ditto. - * gcc.target/riscv/movsileu-sfb.c: Ditto. - * gcc.target/riscv/movsileu-thead.c: Ditto. - * gcc.target/riscv/movsileu-ventana.c: Ditto. - * gcc.target/riscv/movsileu-zicond.c: Ditto. - * gcc.target/riscv/movsileu.c: Ditto. - * gcc.target/riscv/movsilt-sfb.c: Ditto. - * gcc.target/riscv/movsilt-thead.c: Ditto. - * gcc.target/riscv/movsilt-ventana.c: Ditto. - * gcc.target/riscv/movsilt-zicond.c: Ditto. - * gcc.target/riscv/movsilt.c: Ditto. - * gcc.target/riscv/movsiltu-sfb.c: Ditto. - * gcc.target/riscv/movsiltu-thead.c: Ditto. - * gcc.target/riscv/movsiltu-ventana.c: Ditto. - * gcc.target/riscv/movsiltu-zicond.c: Ditto. - * gcc.target/riscv/movsiltu.c: Ditto. - * gcc.target/riscv/movsine-sfb.c: Ditto. - * gcc.target/riscv/movsine-thead.c: Ditto. - * gcc.target/riscv/movsine-ventana.c: Ditto. - * gcc.target/riscv/movsine-zicond.c: Ditto. - * gcc.target/riscv/movsine.c: Ditto. - * gcc.target/riscv/pr111501.c: Ditto. - * gcc.target/riscv/pr115921.c: Ditto. - * gcc.target/riscv/pr116033.c: Ditto. - * gcc.target/riscv/pr116035-1.c: Ditto. - * gcc.target/riscv/pr116035-2.c: Ditto. - * gcc.target/riscv/pr116131.c: Ditto. - * gcc.target/riscv/reg_subreg_costs.c: Ditto. - * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector.c: Ditto. - * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Ditto. - * gcc.target/riscv/sign-extend-rshift-32.c: Ditto. - * gcc.target/riscv/sign-extend-rshift-64.c: Ditto. - * gcc.target/riscv/sign-extend-rshift.c: Ditto. - * gcc.target/riscv/synthesis-1.c: Ditto. - * gcc.target/riscv/synthesis-10.c: Ditto. - * gcc.target/riscv/synthesis-11.c: Ditto. - * gcc.target/riscv/synthesis-12.c: Ditto. - * gcc.target/riscv/synthesis-13.c: Ditto. - * gcc.target/riscv/synthesis-14.c: Ditto. - * gcc.target/riscv/synthesis-15.c: Ditto. - * gcc.target/riscv/synthesis-16.c: Ditto. - * gcc.target/riscv/synthesis-2.c: Ditto. - * gcc.target/riscv/synthesis-3.c: Ditto. - * gcc.target/riscv/synthesis-4.c: Ditto. - * gcc.target/riscv/synthesis-5.c: Ditto. - * gcc.target/riscv/synthesis-6.c: Ditto. - * gcc.target/riscv/synthesis-7.c: Ditto. - * gcc.target/riscv/synthesis-8.c: Ditto. - * gcc.target/riscv/synthesis-9.c: Ditto. - * gcc.target/riscv/target-attr-16.c: Ditto. - * gcc.target/riscv/target-attr-norelax.c: Ditto. - * gcc.target/riscv/xtheadba-addsl.c: Ditto. - * gcc.target/riscv/xtheadba.c: Ditto. - * gcc.target/riscv/xtheadbb-ext-1.c: Ditto. - * gcc.target/riscv/xtheadbb-ext-2.c: Ditto. - * gcc.target/riscv/xtheadbb-ext-3.c: Ditto. - * gcc.target/riscv/xtheadbb-ext.c: Ditto. - * gcc.target/riscv/xtheadbb-extu-1.c: Ditto. - * gcc.target/riscv/xtheadbb-extu-2.c: Ditto. - * gcc.target/riscv/xtheadbb-extu-4.c: Ditto. - * gcc.target/riscv/xtheadbb-extu.c: Ditto. - * gcc.target/riscv/xtheadbb-ff1.c: Ditto. - * gcc.target/riscv/xtheadbb-rev.c: Ditto. - * gcc.target/riscv/xtheadbb-srri.c: Ditto. - * gcc.target/riscv/xtheadbb-strcmp.c: Ditto. - * gcc.target/riscv/xtheadbb-strlen-unaligned.c: Ditto. - * gcc.target/riscv/xtheadbb-strlen.c: Ditto. - * gcc.target/riscv/xtheadbb.c: Ditto. - * gcc.target/riscv/xtheadbs-tst.c: Ditto. - * gcc.target/riscv/xtheadbs.c: Ditto. - * gcc.target/riscv/xtheadcmo.c: Ditto. - * gcc.target/riscv/xtheadcondmov-indirect.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mveqz-imm-eqz.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mveqz-imm-not.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mveqz-reg-eqz.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mveqz-reg-not.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mvnez-imm-cond.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mvnez-imm-nez.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mvnez-reg-cond.c: Ditto. - * gcc.target/riscv/xtheadcondmov-mvnez-reg-nez.c: Ditto. - * gcc.target/riscv/xtheadcondmov.c: Ditto. - * gcc.target/riscv/xtheadfmemidx-without-xtheadmemidx.c: Ditto. - * gcc.target/riscv/xtheadfmemidx.c: Ditto. - * gcc.target/riscv/xtheadfmv.c: Ditto. - * gcc.target/riscv/xtheadint.c: Ditto. - * gcc.target/riscv/xtheadmac-mula-muls.c: Ditto. - * gcc.target/riscv/xtheadmac.c: Ditto. - * gcc.target/riscv/xtheadmemidx-index-update.c: Ditto. - * gcc.target/riscv/xtheadmemidx-index-xtheadbb-update.c: Ditto. - * gcc.target/riscv/xtheadmemidx-index-xtheadbb.c: Ditto. - * gcc.target/riscv/xtheadmemidx-index.c: Ditto. - * gcc.target/riscv/xtheadmemidx-modify-xtheadbb.c: Ditto. - * gcc.target/riscv/xtheadmemidx-modify.c: Ditto. - * gcc.target/riscv/xtheadmemidx-uindex-update.c: Ditto. - * gcc.target/riscv/xtheadmemidx-uindex-xtheadbb-update.c: Ditto. - * gcc.target/riscv/xtheadmemidx-uindex-xtheadbb.c: Ditto. - * gcc.target/riscv/xtheadmemidx-uindex.c: Ditto. - * gcc.target/riscv/xtheadmemidx.c: Ditto. - * gcc.target/riscv/xtheadmempair-1.c: Ditto. - * gcc.target/riscv/xtheadmempair-2.c: Ditto. - * gcc.target/riscv/xtheadmempair-3.c: Ditto. - * gcc.target/riscv/xtheadmempair-4.c: Ditto. - * gcc.target/riscv/xtheadmempair-interrupt-fcsr.c: Ditto. - * gcc.target/riscv/xtheadmempair.c: Ditto. - * gcc.target/riscv/xtheadsync.c: Ditto. - * gcc.target/riscv/za-ext.c: Ditto. - * gcc.target/riscv/zawrs.c: Ditto. - * gcc.target/riscv/zbb-strcmp-disabled-2.c: Ditto. - * gcc.target/riscv/zbb-strcmp-disabled.c: Ditto. - * gcc.target/riscv/zbb-strcmp-limit.c: Ditto. - * gcc.target/riscv/zbb-strcmp-unaligned.c: Ditto. - * gcc.target/riscv/zbb-strcmp.c: Ditto. - * gcc.target/riscv/zbb-strlen-disabled-2.c: Ditto. - * gcc.target/riscv/zbb-strlen-disabled.c: Ditto. - * gcc.target/riscv/zbb-strlen-unaligned.c: Ditto. - * gcc.target/riscv/zbb-strlen.c: Ditto. - * gcc.target/riscv/zero-extend-rshift-32.c: Ditto. - * gcc.target/riscv/zero-extend-rshift-64.c: Ditto. - * gcc.target/riscv/zero-extend-rshift.c: Ditto. - * gcc.target/riscv/zi-ext.c: Ditto. - * gcc.target/riscv/zvbb.c: Ditto. - * gcc.target/riscv/zvbc.c: Ditto. - * gcc.target/riscv/zvkb.c: Ditto. - * gcc.target/riscv/zvkg.c: Ditto. - * gcc.target/riscv/zvkn-1.c: Ditto. - * gcc.target/riscv/zvkn.c: Ditto. - * gcc.target/riscv/zvknc-1.c: Ditto. - * gcc.target/riscv/zvknc-2.c: Ditto. - * gcc.target/riscv/zvknc.c: Ditto. - * gcc.target/riscv/zvkned.c: Ditto. - * gcc.target/riscv/zvkng-1.c: Ditto. - * gcc.target/riscv/zvkng-2.c: Ditto. - * gcc.target/riscv/zvkng.c: Ditto. - * gcc.target/riscv/zvknha.c: Ditto. - * gcc.target/riscv/zvknhb.c: Ditto. - * gcc.target/riscv/zvks-1.c: Ditto. - * gcc.target/riscv/zvks.c: Ditto. - * gcc.target/riscv/zvksc-1.c: Ditto. - * gcc.target/riscv/zvksc-2.c: Ditto. - * gcc.target/riscv/zvksc.c: Ditto. - * gcc.target/riscv/zvksed.c: Ditto. - * gcc.target/riscv/zvksg-1.c: Ditto. - * gcc.target/riscv/zvksg-2.c: Ditto. - * gcc.target/riscv/zvksg.c: Ditto. - * gcc.target/riscv/zvksh.c: Ditto. - * gcc.target/riscv/zvkt.c: Ditto. - -2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/riscv/pr109508.c: Skip for E ABI. - * gcc.target/riscv/pr114139.c: Ditto. - -2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> - - * gcc.target/riscv/rvv/autovec/binop/vandn-1.c: Skip if default - is E ABI. - * gcc.target/riscv/rvv/autovec/binop/vrolr-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vwsll-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/binop/vwsll-template.h: Ditto. - * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/clz-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/ctz-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/popcount-1.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/popcount-2.c: Ditto. - * gcc.target/riscv/rvv/autovec/unop/popcount-3.c: Ditto. - * gcc.target/riscv/rvv/base/cmpmem-1.c: Ditto. - * gcc.target/riscv/rvv/base/cmpmem-3.c: Ditto. - * gcc.target/riscv/rvv/base/cmpmem-4.c: Ditto. - * gcc.target/riscv/rvv/base/cpymem-1.c: Ditto. - * gcc.target/riscv/rvv/base/cpymem-2.c: Ditto. - * gcc.target/riscv/rvv/base/cpymem-3.c: Ditto. - * gcc.target/riscv/rvv/base/movmem-1.c: Ditto. - * gcc.target/riscv/rvv/base/pr115068.c: Ditto. - * gcc.target/riscv/rvv/base/setmem-1.c: Ditto. - * gcc.target/riscv/rvv/base/setmem-2.c: Ditto. - * gcc.target/riscv/rvv/base/setmem-3.c: Ditto. - * gcc.target/riscv/rvv/base/vwaddsub-1.c: Ditto. - -2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> - - * lib/target-supports.exp (check_effective_target_riscv_abi_e): - New procedure. - -2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * gcc.dg/guality/pr36728-3.c: Remove XFAIL. - * gcc.dg/guality/pr68860-1.c: Likewise. - * gcc.dg/guality/pr68860-2.c: Likewise. - * gcc.target/aarch64/ldp_aligned.c: Fix test. - * gcc.target/aarch64/ldp_always.c: Likewise. - * gcc.target/aarch64/ldp_stp_10.c: Add -fschedule-insns. - * gcc.target/aarch64/ldp_stp_12.c: Likewise. - * gcc.target/aarch64/ldp_stp_13.c: Remove test. - * gcc.target/aarch64/ldp_stp_21.c: Add -fschedule-insns. - * gcc.target/aarch64/ldp_stp_8.c: Likewise. - * gcc.target/aarch64/ldp_vec_v2sf.c: Likewise. - * gcc.target/aarch64/ldp_vec_v2si.c: Likewise. - * gcc.target/aarch64/test_frame_16.c: Fix test. - * gcc.target/aarch64/sve/vcond_12.c: Add -fschedule-insns. - * gcc.target/aarch64/sve/acle/general/ldff1_3.c: Likewise. - -2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> - - * gcc.target/aarch64/dbl_mov_immediate_1.c: Add xfail for -0.0. - * gcc.target/aarch64/fmul_scvtf_1.c: Fixup test cases, add xfail, - reduce duplication. - -2025-01-07 Paul-Antoine Arras <parras@baylibre.com> - - * c-c++-common/gomp/adjust-args-4.c: New test. - -2025-01-07 Tamar Christina <tamar.christina@arm.com> - - PR tree-optimization/114932 - * gcc.dg/tree-ssa/pr64705.c: Update dump file scan. - * gcc.target/i386/pr115462.c: The testcase shares 3 IVs which calculates - the same thing but with a slightly different increment offset. The test - checks for 3 complex addressing loads, one for each IV. But with this - change they now all share one IV. That is the loop now only has one - complex addressing. This is ultimately driven by the backend costing - and the current costing says this is preferred so updating the testcase. - * gfortran.dg/addressing-modes_1.f90: New test. - -2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR tree-optimization/105769 - * g++.dg/torture/pr105769-1.C: New test. - -2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> - - PR middle-end/117426 - PR middle-end/111422 - * gcc.dg/torture/pr117426-1.c: New test. - -2025-01-07 Jeff Law <jlaw@ventanamicro.com> - - PR testsuite/118055 - * gcc.dg/tree-ssa/pr83403-1.c: Add m68k*-*-* to targets needing - additional arguments for peeling. - * gcc.dg/tree-ssa/pr83403-2.c: Similarly. - -2025-01-07 Richard Biener <rguenther@suse.de> - - * gcc.dg/torture/convert-dfp-2.c: Skip with -flto. - * gcc.dg/torture/convert-dfp.c: Likewise. - -2025-01-07 Tsung Chun Lin <tclin914@gmail.com> - - * gcc.target/riscv/rvv/rvv.exp: Add dg-runtest to run the - testcase under gcc.target/riscv/rvv/. - -2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/alloc_comp_deep_copy_4.f03: New test. - -2025-01-07 Deng Jianbo <dengjianbo@loongson.cn> - - * gcc.target/loongarch/mov-zero-1.c: New test. - * gcc.target/loongarch/mov-zero-2.c: New test. - -2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> - - * gfortran.dg/class_array_15.f03: Freeing more memory. - * gfortran.dg/recursive_alloc_comp_6.f90: New test. - -2025-01-07 Jennifer Schmitz <jschmitz@nvidia.com> - - * gcc.target/aarch64/sve/strided_load_2.c: Adjust expected outcome. - * gcc.target/aarch64/sve/strided_store_2.c: Likewise. - -2025-01-07 Sam James <sam@gentoo.org> - - PR ipa/98000 - * g++.dg/ipa/pr98000.C: New test. - -2025-01-07 Sam James <sam@gentoo.org> - - PR ipa/117546 - * gcc.dg/torture/pr117546.c: New test. - -2025-01-06 Alexandre Oliva <oliva@adacore.com> - - PR middle-end/118006 - * gcc.target/i386/strub-pr118006.c: New. - -2025-01-06 Akram Ahmad <Akram.Ahmad@arm.com> - - * gcc.target/aarch64/sve/truncated_concatenation_1.c: new test - for the above example and other modes covered by insn - definitions. - -2025-01-06 Jennifer Schmitz <jschmitz@nvidia.com> - - * gcc.target/aarch64/sve/acle/asm/mul_u8.c: Adjust expected outcome. - * gcc.target/aarch64/sve/acle/asm/mul_u16.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u32.c: Likewise. - * gcc.target/aarch64/sve/acle/asm/mul_u64.c: New test and adjust - expected outcome. - -2025-01-06 Tamar Christina <tamar.christina@arm.com> - - PR target/96342 - PR target/118272 - * gcc.target/aarch64/vect-simd-clone-3.c: New test. - -2025-01-06 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/118224 - * gcc.dg/pr118224.c: New test. - * c-c++-common/ubsan/vla-1.c (bar): Use noipa attribute instead - of noinline, noclone. - -2025-01-06 Kito Cheng <kito.cheng@sifive.com> - - * gcc.target/riscv/rvv/fortran/pr111395.f90: Move this file to... - * gfortran.target/riscv/rvv/pr111395.f90: ...here. - * gcc.target/riscv/rvv/fortran/pr111566.f90: Move this file to... - * gfortran.target/riscv/rvv/pr111566.f90: ...here. - * gcc.target/riscv/rvv/rvv-fortran.exp: Move this file to... - * gfortran.target/riscv/rvv/rvv.exp: ...here. - -2025-01-05 Iain Buclaw <ibuclaw@symmetryinvestments.com> - - * gdc.dg/torture/pr96435.d: Add dg-warning. - -2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> - - * gdc.dg/torture/pr110406.d: Add -fno-moduleinfo to dg-options. - -2025-01-04 Hans-Peter Nilsson <hp@axis.com> - - * gcc.dg/tree-ssa/vector-4.c: Replace MMIX adjustments with - TARGET_CALLEE_COPIES-agnostic adjustments. - * gcc.dg/tree-ssa/forwprop-36.c: Ditto. Correct pattern to match a - literal ".". - -2025-01-03 Richard Sandiford <richard.sandiford@arm.com> - - PR rtl-optimization/117938 - * gcc.dg/torture/pr117938.c: New test. - -2025-01-03 Jakub Jelinek <jakub@redhat.com> - - PR c++/118275 - * g++.dg/cpp/embed-18.C: New test. - * g++.dg/ext/flexary41.C: New test. - -2025-01-03 Sam James <sam@gentoo.org> - Andrew Pinski <pinskia@gmail.com> - - * gcc.dg/torture/dse-trivial-auto-var-init.c: New test. - -2025-01-03 Harald Anlauf <anlauf@gmx.de> - - PR fortran/106692 - * gfortran.dg/cray_pointers_13.f90: New test. - -2025-01-03 Jose E. Marchesi <jose.marchesi@oracle.com> - - * gcc.target/bpf/diag-funargs-2.c: Use -ffreestanding. - * gcc.target/bpf/helper-skb-ancestor-cgroup-id.c: Likewise. - * gcc.target/bpf/helper-bind.c: Likewise. - * gcc.target/bpf/diag-funargs-3.c: Likewise. - -2025-01-02 Tobias Burnus <tburnus@baylibre.com> - - * gfortran.dg/gomp/adjust-args-10.f90: New test. - -2025-01-02 Paul-Antoine Arras <parras@baylibre.com> - - * g++.dg/gomp/dispatch-3.C: Update scan dumps. - * gfortran.dg/gomp/declare-variant-2.f90: Update dg-error. - * gfortran.dg/gomp/adjust-args-1.f90: New test. - * gfortran.dg/gomp/adjust-args-2.f90: New test. - * gfortran.dg/gomp/adjust-args-2a.f90: New test. - * gfortran.dg/gomp/adjust-args-3.f90: New test. - * gfortran.dg/gomp/adjust-args-4.f90: New test. - * gfortran.dg/gomp/adjust-args-5.f90: New test. - * gfortran.dg/gomp/adjust-args-6.f90: New test. - * gfortran.dg/gomp/adjust-args-7.f90: New test. - * gfortran.dg/gomp/adjust-args-8.f90: New test. - * gfortran.dg/gomp/adjust-args-9.f90: New test. - * gfortran.dg/gomp/dispatch-1.f90: New test. - * gfortran.dg/gomp/dispatch-2.f90: New test. - * gfortran.dg/gomp/dispatch-3.f90: New test. - * gfortran.dg/gomp/dispatch-4.f90: New test. - * gfortran.dg/gomp/dispatch-5.f90: New test. - * gfortran.dg/gomp/dispatch-6.f90: New test. - * gfortran.dg/gomp/dispatch-7.f90: New test. - * gfortran.dg/gomp/dispatch-8.f90: New test. - * gfortran.dg/gomp/dispatch-9.f90: New test. - * gfortran.dg/gomp/dispatch-9a.f90: New test. - * gfortran.dg/gomp/dispatch-10.f90: New test. - -2025-01-02 David Malcolm <dmalcolm@redhat.com> - - PR c/117629 - * gcc.dg/auto-type-2.c: Update expected output with _Bool. - * gcc.dg/c23-bool-errors-1.c: New test. - * gcc.dg/c23-bool-errors-2.c: New test. - * gcc.dg/c23-bool-errors-3.c: New test. - -2025-01-02 Richard Sandiford <richard.sandiford@arm.com> - - PR target/118184 - * gcc.dg/torture/pr118184.c: Use _Float128 instead of long double. - -2025-01-02 Richard Biener <rguenther@suse.de> - - PR tree-optimization/118171 - * gcc.dg/torture/pr118171.c: New testcase. - -2025-01-02 Richard Sandiford <richard.sandiford@arm.com> - - * gcc.dg/torture/pr118184.c: New test. - -2025-01-02 Jakub Jelinek <jakub@redhat.com> - - * gcc.dg/pr90838-2.c: New test. - -2025-01-02 xuli <xuli1@eswincomputing.com> - - * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add unsigned imm vec sat_sub form2~4. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add data for vec sat_sub. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u8.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u16.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u32.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u64.c: New test. - * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u8.c: New test. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/conditional-move-opt-1.c: New test. - * gcc.target/loongarch/conditional-move-opt-2.c: New test. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/abd-lasx.c: New test. - * gcc.target/loongarch/abd-lsx.c: New test. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/vec_pack_unpack_128.c: New test. - * gcc.target/loongarch/vec_pack_unpack_256.c: New test. - -2025-01-02 Guo Jie <guojie@loongson.cn> - - * gcc.target/loongarch/bstrpick_alsl_paired.c: New test. - * gcc.target/loongarch/bytepick_combine.c: New test. - -2025-01-01 Richard Biener <rguenther@suse.de> - - PR middle-end/118174 - * gcc.dg/torture/pr118174.c: New testcase. -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/gcc/testsuite/ChangeLog-2025 b/gcc/testsuite/ChangeLog-2025 new file mode 100644 index 00000000000..60605fe874b --- /dev/null +++ b/gcc/testsuite/ChangeLog-2025 @@ -0,0 +1,43191 @@ +2025-12-31 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/121485 + * gcc.target/riscv/rvv/vsetvl/pr121485.c: New test. + +2025-12-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR testsuite/123334 + * gcc.dg/pr123295-1.c: Require int128. + +2025-12-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/char-in-string-1.a68: New test. + +2025-12-30 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123318 + * gcc.target/riscv/pr123318.c: New test. + +2025-12-30 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gnat.dg/specs/profile1.ads: New test. + +2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/error-radix-1.a68: New test. + * algol68/compile/radix-hex-upper-1.a68: Likewise. + * algol68/compile/radix-hex-supper-1.a68: Likewise. + * algol68/compile/error-radix-4.a68: Likewise. + * algol68/compile/error-radix-3.a68: Likewise. + * algol68/compile/error-radix-2.a68: Likewise. + * algol68/execute/environment-enquiries-6.a68: Do not use radix 10 + in bits denotations. + +2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/actual-bounds-expected-4.a68: New test. + * algol68/compile/formal-bounds-expected-1.a68: Likewise. + +2025-12-29 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/123080 + * g++.dg/cpp2a/lambda-requires6.C: New test. + * g++.dg/cpp2a/lambda-requires6a.C: New test. + +2025-12-29 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119097 + PR c++/120005 + * g++.dg/cpp0x/constexpr-cast.C: Adjust diagnostics. + * g++.dg/warn/overflow-warn-1.C: Fix diagnostic checks. + * g++.dg/warn/overflow-warn-3.C: Likewise. + * g++.dg/warn/overflow-warn-4.C: Likewise. + * g++.dg/modules/internal-8_a.C: Remove xfails, supplement with + additional testcases. + * g++.dg/modules/internal-8_b.C: New test. + +2025-12-29 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/warning-scope-module-1.a68: New test. + * algol68/compile/warning-scope-module-2.a68: Likewise. + +2025-12-29 Hongyu Wang <hongyu.wang@intel.com> + + * gcc.target/i386/apx-zu-3.c: New test. + +2025-12-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123295 + * gcc.dg/pr123295-1.c: New test. + +2025-12-28 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module24.a68: New file. + * algol68/execute/modules/program-24.a68: New test. + +2025-12-28 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module23bar.a68: New test. + * algol68/execute/modules/module23foo.a68: Likewise. + * algol68/execute/modules/program-23.a68: Likewise. + +2025-12-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/20040112-1.c: Add dg-add-options + check_function_bodies. + * gcc.target/i386/pr122343-1a.c: Likewise. + * gcc.target/i386/pr122343-1b.c: Likewise. + * gcc.target/i386/pr122343-2a.c: Likewise. + * gcc.target/i386/pr122343-2b.c: Likewise. + * gcc.target/i386/pr122343-3.c: Likewise. + * gcc.target/i386/pr122343-4a.c: Likewise. + * gcc.target/i386/pr122343-4b.c: Likewise. + * gcc.target/i386/pr122343-5a.c: Likewise. + * gcc.target/i386/pr122343-5b.c: Likewise. + * gcc.target/i386/pr122343-6a.c: Likewise. + * gcc.target/i386/pr122343-6b.c: Likewise. + * gcc.target/i386/pr122343-7.c: Likewise. + * gcc.target/i386/pr122675-1.c: Likewise. + (dg-options): Add -fomit-frame-pointer. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module22bar.a68: New test. + * algol68/execute/modules/module22foo.a68: Likewise. + * algol68/execute/modules/program-22.a68: Likewise. + * algol68/compile/modules/program-11.a68: Adjust test to + publicized modules. + * algol68/compile/modules/program-error-multiple-delaration-module-1.a68: + Likewise. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/error-loop-1.a68: New test. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/module-2.a68: Expand test a little. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/pack-soids-in-moid-1.a68: New test. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/modules/program-error-multiple-delaration-module-1.a68: + New test. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/modules/module10.a68: New test. + * algol68/execute/modules/program-18.a68: Likewise. + * algol68/execute/modules/module18c.a68: Likewise. + * algol68/execute/modules/module18b.a68: Likewise. + * algol68/execute/modules/module18a.a68: Likewise. + * algol68/compile/modules/program-11.a68: Likewise. + * algol68/compile/modules/program-10.a68: Likewise. + * algol68/compile/modules/module12.a68: Likewise. + * algol68/compile/modules/module11.a68: Likewise. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/error-module-nested-access-1.a68: New test. + * algol68/execute/modules/program-21.a68: Likewise. + +2025-12-27 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module17.a68: New test. + +2025-12-27 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/123114 + * gcc.dg/pr123114.c: New test. + +2025-12-27 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gnat.dg/specs/mutably_tagged1.ads: New test. + +2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gnat.dg/aggr34.adb: New test. + * gnat.dg/aggr34_pkg1.ads, gnat.dg/aggr34_pkg1.adb: New helper. + * gnat.dg/aggr34_pkg2.ads, gnat.dg/aggr34_pkg2.adb: Likewise. + * gnat.dg/aggr34_pkg3.ads: Likewise. + +2025-12-26 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gnat.dg/specs/aggr9.ads: New test. + +2025-12-25 Arsen Arsenović <aarsenovic@baylibre.com> + + * gcc.dg/tree-ssa/sincos-ice-on-ifn_sin-call.c: New test. + * gcc.target/gcn/sincos-ice-on-ifn_sin-call-1.c: New test. + +2025-12-24 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Add asm check + for vmsleu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsleu-run-1-u8.c: New test. + +2025-12-24 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/dot_lane_za16_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_lane_za16_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_lane_za32_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_lane_za32_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_single_za16_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_single_za16_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_single_za32_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_single_za32_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_za16_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_za16_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_za32_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/dot_za32_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/vdot_lane_za16_mf8_vg1x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/vdotb_lane_za32_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/vdott_lane_za32_mf8_vg1x4.c: New test. + * gcc.target/aarch64/sve/acle/general-c/dot_half_za_slice_lane_fpm.c: New test. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme/acle-asm/test_sme_acle.h: (TEST_UNIFORM_ZA): + Add fpm0 parameter. + * gcc.target/aarch64/sve/acle/general-c/binary_za_m_1.c: Add tests for + variants accepting fpm. + * gcc.target/aarch64/sme2/acle-asm/mopa_za16_mf8.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mopa_za32_mf8.c: Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/test_sme2_acle.h: (TEST_ZA_X1, + TEST_ZA_XN, TEST_ZA_SINGLE, TEST_ZA_SINGLE_Z15, TEST_ZA_LANE, + TEST_ZA_LANE_Z15): Add fpm0 parameter. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_1.c: Add + tests for variants accepting fpm. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_1.c: + Likewise. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za16_mf8_vg2x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_lane_za32_mf8_vg4x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za16_mf8_vg2x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/mla_za32_mf8_vg4x4.c: New test. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/pragma_cpp_predefs_4.c: Add tests checking that + sme-f8f16 and sme-f8f32 prefefs are off by default, and checks for + feature dependencies. + * lib/target-supports.exp: Add check_effective_target support for + sme-f8f16 and sme-f8f32. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/scale_f16_x2.c: : Added test file. + * gcc.target/aarch64/sme2/acle-asm/scale_f16_x4.c: : Likewise. + * gcc.target/aarch64/sme2/acle-asm/scale_f32_x2.c: : Added test file. + * gcc.target/aarch64/sme2/acle-asm/scale_f32_x4.c: : Likewise. + * gcc.target/aarch64/sme2/acle-asm/scale_f64_x2.c: : Added test file. + * gcc.target/aarch64/sme2/acle-asm/scale_f64_x4.c: : Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_bf16_x2.c: Added test file. + * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_f16_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_f32_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/cvtn_mf8_f32_x4.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h + (TEST_X2_NARROW): Added fpm0 argument for intrinsics. + (TEST_X4_NARROW): Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * g++.target/aarch64/sme2/aarch64-sme2-acle-asm.exp: Use tuning flag + to reduce churn in testsuites. + * gcc.target/aarch64/sme2/aarch64-sme2-acle-asm.exp: Likewise. + * gcc.target/aarch64/sme2/acle-asm/cvt_mf8_x2.c: Added test file. + * gcc.target/aarch64/sme2/acle-asm/cvtl_mf8_x2.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h (TEST_X2_WIDE): Added + fpm0 argument for intrinsics. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme/acle-asm/revd_mf8.c: Added test file. + * gcc.target/aarch64/sme2/acle-asm/ld1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/ld1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/ldnt1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/ldnt1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_ver_za128.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/sel_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/sel_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/st1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/st1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/stnt1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/stnt1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/uzp_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/uzp_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/uzpq_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/uzpq_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/zip_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/zip_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/zipq_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/zipq_mf8_x4.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/ld1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/ld1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/ldnt1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/ldnt1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/revd_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/stnt1_mf8_x2.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/stnt1_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/read_hor_za128.c: Added mf8 tests. + * gcc.target/aarch64/sme/acle-asm/read_hor_za8.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/read_ver_za128.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/read_ver_za8.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/write_hor_za128.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/write_hor_za8.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/write_ver_za128.c: Likewise. + * gcc.target/aarch64/sme/acle-asm/write_ver_za8.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_hor_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_hor_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_ver_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_ver_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_za8_vg1x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/read_za8_vg1x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_hor_za128.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_hor_za8.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_ver_za8.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_za8_vg1x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/readz_za8_vg1x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_hor_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_hor_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_ver_za8_vg2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_ver_za8_vg4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_za8_vg1x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/write_za8_vg1x4.c: Likewise. + +2025-12-24 Claudio Bantaloukas <claudio.bantaloukas@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c: Likewise. + +2025-12-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * g++.dg/modules/tpl-friend-22.C: New test. + * g++.dg/template/friend88.C: New test. + +2025-12-23 Mohammad-Reza Nabipoor <mnabipoor@gnu.org> + + * algol68/compile/modules/compile.exp (dg-data): New procedure + for writing binary test data to disk. + * algol68/compile/modules/program-m68-lp64.a68: New test which + embeds binary module data. + * algol68/compile/modules/program-m68-llp64.a68: Likewise. + * algol68/compile/modules/program-m68-ilp32.a68: Likewise. + * algol68/compile/modules/program-m68-lp64-be.a68: Likewise. + * algol68/compile/modules/program-m68-llp64-be.a68: Likewise. + +2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123274 + * gcc.target/riscv/pr123274.c: New test. + +2025-12-23 Jeff Law <jeffrey.law@oss.qualcomm.com> + + PR target/123278 + * gcc.target/riscv/pr123278.c: New test. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122550 + * g++.dg/cpp2a/concepts-friend18.C: New test. + * g++.dg/cpp2a/concepts-friend18a.C: New test. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122958 + * g++.dg/cpp2a/partial-spec-redecl.C: New test. + +2025-12-23 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> + + * rust/compile/issue-4245.rs: New test. + +2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/unused-mut-identifier_0.rs: New test. + * rust/compile/unused-mut-struct-field_0.rs: New test. + +2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/static_item_0.rs: Modify warning output. + * rust/compile/template_function_0.rs: Modify warning output. + +2025-12-23 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4260_0.rs: New test. + +2025-12-23 Ryutaro Okada <1015ryu88@gmail.com> + + * rust/compile/static_item_0.rs: New test. + * rust/compile/template_function_0.rs: New test. + +2025-12-23 Harishankar <harishankarpp7@gmail.com> + + * rust/compile/issue-3977.rs: New test. + +2025-12-23 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> + + * rust/compile/issue-4148.rs: Test should produce errors. + +2025-12-23 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/117518 + * g++.dg/cpp2a/lambda-targ19.C: New test. + +2025-12-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR rtl-optimization/123267 + * gcc.dg/torture/pr123267-1.c: New test. + +2025-12-23 Dhruv Chawla <dhruvc@nvidia.com> + + * lib/profopt.exp: Bump GCOV version to 3. + * gcc.dg/tree-prof/afdo-lto_priv-basic-0.c: New test. + * gcc.dg/tree-prof/afdo-lto_priv-basic-1.c: Likewise. + * gcc.dg/tree-prof/afdo-lto_priv-header-0.c: Likewise. + * gcc.dg/tree-prof/afdo-lto_priv-header-0.h: Likewise. + * gcc.dg/tree-prof/afdo-lto_priv-header-1.c: Likewise. + * gcc.dg/tree-prof/afdo-lto_priv-header-1.h: Likewise. + +2025-12-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122994 + * g++.dg/modules/internal-17_b.C: Use functions and internal + types rather than lambdas. + * g++.dg/modules/internal-4_b.C: Correct expected result. + * g++.dg/modules/internal-20_a.C: New test. + * g++.dg/modules/internal-20_b.C: New test. + * g++.dg/modules/internal-20_c.C: New test. + * g++.dg/modules/internal-21_a.C: New test. + * g++.dg/modules/internal-21_b.C: New test. + +2025-12-22 Steve Kargl <kargl@gcc.gnu.org> + + PR fortran/122957 + * gfortran.dg/pr122957.f90: New test. + +2025-12-22 Harald Anlauf <anlauf@gmx.de> + + PR fortran/123253 + * gfortran.dg/associate_76.f90: Extended testcase. + * gfortran.dg/associate_77.f90: New test. + +2025-12-22 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + PR middle-end/123067 + * gcc.dg/licm-self-write-partial-alias.c: New test. + +2025-12-22 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/Modules20.map (module-bar): Add + underscores. + +2025-12-22 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/class_wide1.ads: New test. + +2025-12-22 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/base/spill-7.c: Update expected output. + +2025-12-22 Yuao Ma <c8ef@outlook.com> + + PR c++/123261 + * g++.dg/ext/fimplicit-constexpr2.C: New test. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + + * gcc.target/riscv/zicond_ifcvt_opt.c: Adjust increased czero counts. + +2025-12-22 Vineet Gupta <vineetg@rivosinc.com> + Philipp Tomsich <philipp.tomsich@vrull.eu> + + PR target/122769 + * gcc.target/riscv/pr122769.c: New test. + +2025-12-22 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/base/spill-1.c: Update expected output. + * gcc.target/riscv/rvv/base/spill-2.c: Likewise. + * gcc.target/riscv/rvv/base/spill-3.c: Likewise. + * gcc.target/riscv/rvv/base/spill-4.c: Likewise. + * gcc.target/riscv/rvv/base/spill-5.c: Likewise. + * gcc.target/riscv/rvv/base/spill-6.c: Likewise. + +2025-12-22 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/zvector/vec-addc-u128.c: Honor deprecation + warning. + +2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121472 + * gfortran.dg/pr121472.f90: New test. + +2025-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121475 + * gfortran.dg/pr121475.f90: New test as posted in the PR + from Christopher Albert + +2025-12-21 Antoni Boucher <bouanto@zoho.com> + + * jit.dg/all-non-failing-tests.h: Update comment about + test-cold-attribute.c. + * jit.dg/test-cold-attribute.c: Use -Oz to fix test. + +2025-12-21 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/123089 + * gcc.dg/vect/vect-early-break_141-pr123089.c: New test. + * gcc.target/aarch64/sve/peel_ind_14.c: New test. + * gcc.target/aarch64/sve/peel_ind_14_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_15.c: New test. + * gcc.target/aarch64/sve/peel_ind_15_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_16.c: New test. + * gcc.target/aarch64/sve/peel_ind_16_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_17.c: New test. + * gcc.target/aarch64/sve/peel_ind_17_run.c: New test. + +2025-12-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122712 + * g++.dg/modules/adl-12_a.C: New test. + * g++.dg/modules/adl-12_b.C: New test. + +2025-12-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/122690 + * g++.dg/ext/is_implicit_lifetime2.C: New test. + +2025-12-20 Jakub Jelinek <jakub@redhat.com> + + PR target/123217 + * gcc.target/i386/keylocker-pr123217.c: New test. + * gcc.target/i386/user_msr-pr123217.c: New test. + +2025-12-19 Victor Do Nascimento <victor.donascimento@arm.com> + + * gcc.dg/vect/vect-uncounted-prolog-peel_2.c: New. + * gcc.dg/vect/vect-uncounted-prolog-peel_3.c: Likewise. + * g++.dg/vect/vect-uncounted-prolog-peel_1.cc: Likewise. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * gcc.c-torture/compile/20030323-1.c: Fix comment typo, + statment -> statement. + * gcc.dg/tree-ssa/pr96779.c: Fix comment typo, transfered + -> transferred. + * gcc.dg/tree-ssa/pr96779-disabled.c: Likewise. + * gcc.dg/tree-ssa/ssa-thread-16.c (foo): Fix comment typo, + catched -> caught. + * gcc.target/s390/larl-1.c: Fix comment typo, explicitely + -> explicitly. + * g++.dg/tree-ssa/pr44706.C: Fix comment typo, invokation + -> invocation. + * g++.dg/tree-ssa/pr87502.C: Fix comment typo, explicitely + -> explicitly. + * gfortran.dg/bound_8.f90: Likewise. + * gfortran.dg/coarray_14.f90: Fix comment typo, statment + -> statement. + +2025-12-19 Harald Anlauf <anlauf@gmx.de> + + PR fortran/71565 + * gfortran.dg/protected_8.f90: Adjust patterns. + * gfortran.dg/associate_76.f90: New test. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR target/122970 + * lib/target-supports.exp: Add rvv_zvl128b_ok. + * gcc.target/riscv/rvv/autovec/pr122970.c: New test. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr120378-1.c: Dump "optimized". + * gcc.target/riscv/rvv/autovec/pr121510.c: Add semicolon. + * gcc.target/riscv/rvv/base/pr112431-21.c: Add -Wno-pedantic. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/subreg-extract.c: New test. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: + Adjust test expectation. + * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: Ditto. + * gcc.target/riscv/rvv/autovec/partial/select_vl-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/zve64d-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/zve64f-1.c: Ditto. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR tree-optimization/123118 + * g++.target/riscv/rvv/autovec/pr123118.C: New test. + +2025-12-19 Robin Dapp <rdapp@qti.qualcomm.com> + + PR tree-optimization/123117 + * gcc.target/loongarch/vector/lsx/pr123117.c: New test. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/early-break-3.c: New test. + * gcc.target/riscv/rvv/autovec/early-break-4.c: New test. + * gcc.target/riscv/rvv/autovec/early-break-5.c: New test. + +2025-12-19 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/123097 + * gcc.target/riscv/rvv/autovec/pr123097-run.c: New test. + * gcc.target/riscv/rvv/autovec/pr123097.c: New test. + +2025-12-19 Robin Dapp <rdapp.gcc@gmail.com> + + PR tree-optimization/123192 + * gcc.dg/tree-ssa/ctz-ch.c: Require ctz target. + +2025-12-19 Christopher Albert <albert@tugraz.at> + + PR fortran/92613 + * gfortran.dg/pr92613.f90: New test. + * gfortran.dg/pr92613_2.f90: New test for -E error. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/91388 + * g++.dg/cpp1z/static_assert1.C: New test. + +2025-12-19 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/123205 + * gcc.dg/pr123205.c: New. + +2025-12-19 Jason Merrill <jason@redhat.com> + Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/117034 + * g++.dg/cpp2a/lambda-template-pr117034.C: New test. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + * g++.dg/DRs/dr3061.C: Remove cascading error expectation. + * g++.dg/cpp0x/initlist31.C: Likewise. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/123044 + * g++.dg/template/implicit-func-cast.C: New test. + +2025-12-19 Egas Ribeiro <egas.g.ribeiro@gmail.com> + + PR c++/122509 + * g++.dg/tc1/dr176-2.C: New test. + +2025-12-19 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/uses_allocators-8.c: New test. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/122772 + * g++.dg/cpp1z/eval-order14.C: New test. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR debug/122968 + * g++.dg/guality/decomp1.C: New test. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/122834 + * g++.dg/dfp/pr122834-1.C: New test. + * g++.dg/dfp/pr122834-2.C: New test. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + PR c++/123030 + * g++.dg/cpp0x/deleted18.C: New test. + * g++.dg/cpp0x/new4.C: Expect an error. + +2025-12-19 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp26/expansion-stmt1.C (A::operator *, A::operator !=, + A::operator +, C::operator *, C::operator !=, C::operator +): Add + const qualification. + * g++.dg/cpp26/expansion-stmt2.C (A::operator *, A::operator !=, + A::operator +, C::operator *, C::operator !=, C::operator +): + Likewise. + * g++.dg/cpp26/expansion-stmt3.C (A::operator *, A::operator !=, + A::operator +, C::operator *, C::operator !=, C::operator +): + Likewise. + * g++.dg/cpp26/expansion-stmt18.C (A::operator *, A::operator !=, + A::operator +): Likewise. + +2025-12-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/shift-gf2p8affine-2.c: Require gfni, avx512vl, + avx512bw, avx512f support instead of skipping with Solaris as. + +2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122922 + * g++.dg/modules/pr122922_a.C: New test. + * g++.dg/modules/pr122922_b.C: New test. + +2025-12-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122995 + * g++.dg/modules/namespace-17_a.C: New test. + * g++.dg/modules/namespace-17_b.C: New test. + +2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> + + PR target/55212 + * g++.target/sh/torture/pr55212-c413.C: New. + +2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> + + PR target/55212 + * g++.target/sh/torture/pr55212-c384.C: New. + +2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> + + PR target/55212 + * g++.target/sh/torture/pr55212-c373.C: New. + +2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> + + PR target/55212 + * g++.target/sh/torture/pr55212-c333.C: New. + +2025-12-19 Oleg Endo <olegendo@gcc.gnu.org> + + PR target/55212 + * g++.target/sh/sh.exp: New. + * g++.target/sh/torture/sh-torture.exp: New. + * g++.target/sh/torture/pr55212-c311.C: New + +2025-12-19 Kaz Kojima <kkojima@rr.iij4u.or.jp> + + PR target/55212 + * gcc.target/sh/pr55212-c248.c: New test. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/goacc/update-if_present-2.f90: Update dg-error. + * gfortran.dg/gomp/order-8.f90: Likewise. + * gfortran.dg/gomp/order-9.f90: Likewise. + * c-c++-common/gomp/assume-5.c: New test. + * gfortran.dg/gomp/assume-6.f90: New test. + +2025-12-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/123186 + * g++.dg/template/crash133.C: New test. + +2025-12-18 Egas Ribeiro <egas.g.ribeiro@gmail.com> + Patrick Palka <ppalka@redhat.com> + + PR c++/122070 + * g++.dg/cpp23/class-deduction-inherited10.C: New test. + * g++.dg/cpp23/class-deduction-inherited9.C: New test. + +2025-12-18 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/target-device-type-1.c: New test. + * gfortran.dg/gomp/target-device-type-1.f90: New test. + +2025-12-18 Tejas Belagod <tejas.belagod@arm.com> + + * gcc.target/aarch64/sve/acle/general/attributes_1.c: Update test for + __ARM_FEATURE_SVE_PREDICATE_OPERATORS. + * gcc.target/aarch64/sve/acle/general/attributes_9.c: New. + +2025-12-18 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/pragma_cpp_predefs_5.c: New test. + * gcc.target/aarch64/options_set_30.c: Likewise. + * lib/target-supports.exp (exts): Add sve-sm4, sve-aes, sve-bitperm. + +2025-12-18 WANG Xuerui <git@xen0n.name> + + PR target/123171 + * gcc.target/loongarch/pr123171.c: New test. + +2025-12-18 chenxiaolong <chenxiaolong@loongson.cn> + + * gcc.target/loongarch/vector/lasx/vect-extract-256-128.c: + After supporting the vectorized type corresponding to subreg in + the backend, the cost of rtx becomes 0. In fwprop1 pass, + memory-loaded rtx cannot be propagated to this insn, which leads + to xvld not being optimized into vld instructions. + * gcc.target/loongarch/vect-mode-tieable.c: New test. + +2025-12-18 Richard Biener <rguenther@suse.de> + + PR c/123156 + * gcc.dg/torture/builtin-shufflevector-pr123156.c: New testcase. + +2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122734 + * gcc.dg/tree-ssa/copy-headers-13.c: New test. + +2025-12-18 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.target/i386/pr121572-1a.c: Turn off -freorder-blocks-and-partition + as it interferes with the check-body. + +2025-12-17 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * gcc.dg/pr122343-1.c: New test. + +2025-12-17 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module11.a68: Remove multiple definition + module. + +2025-12-17 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/23178 + * gm2/pim/fail/badprocedure.mod: New test. + +2025-12-17 Ulrich Weigand <ulrich.weigand@de.ibm.com> + + PR testsuite/123166 + * gfortran.dg/bessel_6.f90: Add { dg-do run } annotation. + * gfortran.dg/erf_2.F90: Likewise. + * gfortran.dg/integer_exponentiation_3.F90: Likewise. + * gfortran.dg/integer_exponentiation_5.F90: Likewise. + +2025-12-17 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/123151 + * gm2/pimlib/base/run/pass/FIO.mod: Reimplement. + Copy from gm2-libs/FIO.mod since FIO.def api has changed. + * gm2/pimlib/run/pass/testclose.mod: New test. + +2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/pr120881-1a.c: Restrict to Linux. + * gcc.target/i386/pr120881-1b.c: Likewise. + +2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR c++/112652 + * g++.dg/cpp26/literals2.C: Skip on Solaris. + +2025-12-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.dg/plugin/crash-test-nested-write-through-null-html.py: + Import re. + (test_results): Allow for "Segmentation Fault", too. + * gcc.dg/plugin/crash-test-nested-write-through-null-sarif.py: + Likewise. + * gcc.dg/plugin/crash-test-write-through-null-stderr.c + (test_inject_write_through_null): Likewise. + +2025-12-17 benwu25 <soggysocks206@gmail.com> + + PR c++/121443 + * g++.dg/parse/pr121443.C: New test. + +2025-12-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/123075 + * g++.dg/cpp2a/concepts-lambda25.C: New test. + * g++.dg/modules/lambda-13.h: New test. + * g++.dg/modules/lambda-13_a.H: New test. + * g++.dg/modules/lambda-13_b.C: New test. + +2025-12-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-4301.rs: New test. + +2025-12-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/macros/mbe/macro-issue3608.rs: Update error messages. + +2025-12-17 Umesh Kalvakuntla <umesh.kalvakuntla@amd.com> + + * g++.target/i386/mv29.C: Likewise. + * gcc.target/i386/funcspec-56.inc: Likewise. + * gcc.target/i386/avx512bmm-1.c: New test. + * gcc.target/i386/avx512bmmvl-1.c: New test. + +2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> + + PR algol68/123131 + * algol68/compile/modules/compile.exp: Pass module include path + via extra_flags to algol68-dg-runtest. + * algol68/execute/modules/execute.exp: Pass module include path + via algol68_compile_args. + * lib/algol68-dg.exp (MODULES_OPTIONS): Delete. + (algol68-dg-runtest): Do not use MODULE_OPTIONS. + * lib/algol68-torture.exp (BUILT_MODULES_DIR): Delete. + (algol68-torture-execute): Do not use BUILT_MODULES_DIR. + +2025-12-16 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/123142 + * gcc.dg/plugin/diagnostic-test-graphs-html.c: Add + dg-require-dot directive. + +2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/error-compile-unknown-tag-1.a68: Use a single + module per packet. + * algol68/compile/error-module-coercions-1.a68: Likewise. + * algol68/compile/error-module-ranges-1.a68: Likewise. + * algol68/compile/module-2.a68: Likewise. + * algol68/compile/module-pub-mangling-1.a68: Likewise. + * algol68/compile/module-pub-mangling-2.a68: Likewise. + * algol68/compile/module-pub-mangling-3.a68: Likewise. + * algol68/compile/module-pub-mangling-4.a68: Likewise. + * algol68/compile/module-pub-mangling-5.a68: Likewise. + * algol68/compile/module-pub-mangling-6.a68: Likewise. + * algol68/compile/warning-module-hidding-1.a68: Likewise. + +2025-12-16 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/Modules20.map: New file. + * algol68/execute/modules/module-bar.a68: New file. + * algol68/execute/modules/module-foo.a68: New file. + * algol68/execute/modules/program-19.a68: New file. + * algol68/execute/modules/program-20.a68: New file. + +2025-12-16 Richard Biener <rguenther@suse.de> + + PR testsuite/123137 + * g++.dg/vect/pr64410.cc: Add -mfpmath=sse -msse on x86. + +2025-12-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/shift-gf2p8affine-2.c: Skip on Solaris + without gas. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + Indu Bhagat <indu.bhagat@oracle.com> + + * gcc.target/aarch64/memtag/alloca-1.c: New test. + * gcc.target/aarch64/memtag/alloca-2.c: New test. + * gcc.target/aarch64/memtag/alloca-3.c: New test. + * gcc.target/aarch64/memtag/arguments-1.c: New test. + * gcc.target/aarch64/memtag/arguments-2.c: New test. + * gcc.target/aarch64/memtag/arguments-3.c: New test. + * gcc.target/aarch64/memtag/arguments-4.c: New test. + * gcc.target/aarch64/memtag/arguments.c: New test. + * gcc.target/aarch64/memtag/basic-1.c: New test. + * gcc.target/aarch64/memtag/basic-3.c: New test. + * gcc.target/aarch64/memtag/basic-struct.c: New test. + * gcc.target/aarch64/memtag/large-array.c: New test. + * gcc.target/aarch64/memtag/local-no-escape.c: New test. + * gcc.target/aarch64/memtag/memtag.exp: New file. + * gcc.target/aarch64/memtag/no-sanitize-attribute.c: New test. + * gcc.target/aarch64/memtag/value-init.c: New test. + * gcc.target/aarch64/memtag/vararray-gimple.c: New test. + * gcc.target/aarch64/memtag/vararray.c: New test. + * gcc.target/aarch64/memtag/zero-init.c: New test. + * gcc.target/aarch64/memtag/texec-1.c: New test. + * gcc.target/aarch64/memtag/texec-2.c: New test. + * gcc.target/aarch64/memtag/texec-3.c: New test. + * gcc.target/aarch64/memtag/vla-1.c: New test. + * gcc.target/aarch64/memtag/vla-2.c: New test. + * lib/target-supports.exp (check_effective_target_aarch64_mte): + New function. + * gcc.target/aarch64/memtag/cfi-mte-memtag-frame-1.c: New file. + * gcc.target/aarch64/memtag/mte-sig.h: New file. + +2025-12-16 Claudiu Zissulescu <claudiu.zissulescu-ianculescu@oracle.com> + Indu Bhagat <indu.bhagat@oracle.com> + + * gcc.target/aarch64/acle/memtag_1.c: Update test. + +2025-12-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/123110 + * gcc.dg/pr123110-1.c: New test. + +2025-12-15 Martin Jambor <mjambor@suse.cz> + + * gcc.dg/lto/fnptr-from-rec-1_0.c: New test. + * gcc.dg/lto/fnptr-from-rec-1_1.c: Likewise. + * gcc.dg/lto/fnptr-from-rec-2_0.c: Likewise. + * gcc.dg/lto/fnptr-from-rec-2_1.c: Likewise. + * gcc.dg/lto/fnptr-from-rec-3_0.c: Likewise. + * gcc.dg/lto/fnptr-from-rec-3_1.c: Likewise. + +2025-12-15 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/reduce4.adb: New test. + * gnat.dg/reduce5.adb: Likewise. + +2025-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/122936 + * gfortran.dg/pr122936.f90: New test. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + PR c++/122752 + * g++.dg/template/dependent-name19.C: New test. + +2025-12-15 Patrick Palka <ppalka@redhat.com> + + PR c++/122668 + PR c++/114764 + * g++.dg/cpp0x/noexcept91a.C: New test. + +2025-12-15 Joseph Myers <josmyers@redhat.com> + + * lib/plugin-support.exp (plugin-test-execute): Support installed + testing. + * g++.dg/plugin/plugin.exp, gcc.dg/plugin/plugin.exp, + obj-c++.dg/plugin/plugin.exp, objc.dg/plugin/plugin.exp: Do not + disable for installed testing. + +2025-12-15 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/123085 + * c-c++-common/analyzer/strlen-pr123085.c: New test. + +2025-12-15 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122975 + * c-c++-common/analyzer/arith-1.c: New test. + * c-c++-common/analyzer/infinite-recursion-pr122975.c: New test. + +2025-12-15 Victor Do Nascimento <victor.donascimento@arm.com> + + * gcc.dg/vect/vect-early-break_40.c: Fix. + * gcc.dg/gomp/static-chunk-size-one.c: Likewise. + * gcc.dg/vect/vect-uncounted_1.c: New. + * gcc.dg/vect/vect-uncounted_2.c: Likewise. + * gcc.dg/vect/vect-uncounted_3.c: Likewise. + * gcc.dg/vect/vect-uncounted_4.c: Likewise. + * gcc.dg/vect/vect-uncounted_5.c: Likewise. + * gcc.dg/vect/vect-uncounted_6.c: Likewise. + * gcc.dg/vect/vect-uncounted_7.c: Likewise. + * gcc.dg/vect/vect-uncounted-run_1.c: Likewise. + * gcc.dg/vect/vect-uncounted-run_2.c: Likewise. + * gcc.dg/vect/vect-uncounted-run_3.c: Likewise. + * gcc.dg/vect/vect-uncounted-prolog-peel_1.c: Likewise. + +2025-12-15 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/123032 + * gcc.dg/vect/pr123032.c: New test. + +2025-12-15 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/123043 + * gcc.dg/vect/pr123043.c: New test. + +2025-12-15 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/lto30.ads, gnat.dg/lto30.adb: New test. + +2025-12-14 Lewis Hyatt <lhyatt@gmail.com> + + PR tree-optimization/106409 + * g++.dg/lto/pr106409_0.C: New test. + +2025-12-14 Surya Kumari Jangala <jskumari@linux.ibm.com> + + PR rtl-optimization/122274 + * gcc.dg/rtl/powerpc/test-frame-related.c: New test. + +2025-12-13 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/modules/module1.a68: Also test contracted + forms. + * algol68/execute/modules/module3.a68: Likewise. + * algol68/execute/modules/module5.a68: Likewise. + * algol68/execute/modules/program-1.a68: Likewise. + +2025-12-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122734 + * gcc.dg/tree-ssa/20030711-1.c: Update. + * gcc.dg/tree-ssa/copy-headers-10.c: New test. + * gcc.dg/tree-ssa/copy-headers-11.c: New test. + * gcc.dg/tree-ssa/copy-headers-12.c: New test. + +2025-12-13 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/gomp/deprecate-1.C: New test. + +2025-12-13 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/gomp/52-deps.c: Change locations of 2 warnings for C. + * gcc.dg/gomp/deprecate-1.c: New test. + +2025-12-13 Alexandre Oliva <oliva@adacore.com> + + * lib/gnat.exp (gnat_init): Set gcc_warning_prefix and + gcc_error_prefix. + +2025-12-13 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/119293 + * gcc.dg/vect/vect-121.c: XFAIL on ia32. + +2025-12-12 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/ext/is_constructible9.C: Add to testcase. + +2025-12-12 Chung-Lin Tang <cltang@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * c-c++-common/gomp/uses_allocators-1.c: New test. + * c-c++-common/gomp/uses_allocators-2.c: New test. + * c-c++-common/gomp/uses_allocators-4.c: New test. + * c-c++-common/gomp/uses_allocators-7.c: New test. + * g++.dg/gomp/deprecate-2.C: New test. + * g++.dg/gomp/uses_allocators-1.C: New test. + * gcc.dg/gomp/deprecate-2.c: New test. + +2025-12-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * g++.target/s390/builtin-array-arg-1.C: New test. + * gcc.target/s390/builtin-array-arg-1.c: New test. + +2025-12-12 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122003 + * c-c++-common/analyzer/allocation-size-multiline-1.c: Update for split + of region creation events. + * c-c++-common/analyzer/bzip2-arg-parse-1.c: Drop test for enode + merging. Add -Wno-analyzer-too-complex. + * c-c++-common/analyzer/coreutils-cksum-pr108664.c: Add + -Wno-analyzer-symbol-too-complex. Add dg-bogus for false +ve seen + during patch development. + * c-c++-common/analyzer/coreutils-group_number.c: New test. + * c-c++-common/analyzer/data-model-20.c: Mark warnings as xfail. + * c-c++-common/analyzer/deref-before-check-qemu-qtest_rsp_args.c: + Add xfails. + * c-c++-common/analyzer/dot-output.c: Update for changes to dumps. + * c-c++-common/analyzer/fd-symbolic-socket.c: Update for + improvements to locations of leaks. + * c-c++-common/analyzer/fibonacci.c: Update regex. + * c-c++-common/analyzer/flex-with-call-summaries.c: Add xfail. + * c-c++-common/analyzer/flex-without-call-summaries.c: Add + -Wno-analyzer-symbol-too-complex. Add xfail. + * c-c++-common/analyzer/infinite-recursion-5.c: Disable cases that + now explode the analysis. + * c-c++-common/analyzer/infinite-recursion-pr108524-2.c: Remove + xfail. + * c-c++-common/analyzer/invalid-shift-1.c: Remove xfails with c++26. + * c-c++-common/analyzer/ipa-callbacks-1.c: New test. + * c-c++-common/analyzer/loop-4.c: Expect incorrect UNKNOWN within + loop. Update expected number of enodes. + * c-c++-common/analyzer/loop-n-down-to-1-by-1.c: Expect incorrect + UNKNOWN within loop. + * c-c++-common/analyzer/loop.c: Drop xfail. + * c-c++-common/analyzer/out-of-bounds-coreutils.c: Expect infinite + loop warning. + * c-c++-common/analyzer/paths-4.c: Update expected number of + enodes. + * c-c++-common/analyzer/pr94362-1.c: Drop -Wno-analyzer-too-complex. + * c-c++-common/analyzer/pr94851-2.c: Add xfail. + * c-c++-common/analyzer/pr96650-1-notrans.c: Add + -Wno-analyzer-too-complex. + * c-c++-common/analyzer/pr98628.c: Likewise. + * c-c++-common/analyzer/pr99774-1.c: Likewise. + * c-c++-common/analyzer/pragma-2.c: Expect double-free warning. + * c-c++-common/analyzer/realloc-1.c: Move expected location of + leak from trailing "}" to realloc call. + * c-c++-common/analyzer/sock-1.c: Add -fno-exceptions. + * c-c++-common/analyzer/sprintf-2.c: Add __attribute__ nonnull to + decl. + * c-c++-common/analyzer/sprintf-concat.c: Move expected location + of leak of p from sprintf to trailing "}". + * c-c++-common/analyzer/stdarg-sentinel-1.c: Drop + -Wno-analyzer-too-complex. + * c-c++-common/analyzer/strncpy-1.c: Add __attribute__ nonnull to + decl. + * c-c++-common/analyzer/strstr-1.c: Likewise. + * g++.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. + * g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C: + Update expected messages. + * g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C: + Likewise. + * g++.dg/analyzer/fanalyzer-show-events-in-system-headers.C: Likewise. + * g++.dg/analyzer/pr94028.C: Move expected location of leak + warning to where return value of f is discarded within m. + * g++.dg/analyzer/pr96641.C: Expect infinite recursion warning. + * gcc.dg/analyzer/CWE-131-examples.c: Add + -Wno-analyzer-too-complex. + * gcc.dg/analyzer/abs-1.c (test_2): Fix return type. + * gcc.dg/analyzer/analyzer-decls.h: Reformat. Add + __attribute__ ((nothrow)) to all functions. + * gcc.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. + * gcc.dg/analyzer/boxed-malloc-1.c: Fix return types. + * gcc.dg/analyzer/call-summaries-2.c: Likewise. + * gcc.dg/analyzer/combined-conditionals-1.c: Likewise. + * gcc.dg/analyzer/compound-assignment-2.c: Expect warning about + missing return. + * gcc.dg/analyzer/compound-assignment-3.c: Likewise. + * gcc.dg/analyzer/conditionals-3.c: Fix return type. + * gcc.dg/analyzer/data-model-1.c: Likewise. + * gcc.dg/analyzer/data-model-15.c: Likewise. + * gcc.dg/analyzer/data-model-17.c: Likewise. + * gcc.dg/analyzer/data-model-20a.c: Remove xfail from bogus leak. + * gcc.dg/analyzer/data-model-7.c: Fix return type. + * gcc.dg/analyzer/doom-d_main-IdentifyVersion.c: Add xfail to some + of the leak msgs. + * gcc.dg/analyzer/doom-s_sound-pr108867.c: Add xfail. + * gcc.dg/analyzer/edges-1.c: Update for improvements to location + of leak. + * gcc.dg/analyzer/error-1.c: Fix return type. + * gcc.dg/analyzer/explode-1.c: Drop xfail. Expect uninit and + double-free warnings. + * gcc.dg/analyzer/explode-2.c: Add xfail. + * gcc.dg/analyzer/explode-3.c: Drop xfail. Expect uninit and + double-free warnings. + * gcc.dg/analyzer/fd-datagram-socket.c: Move expected location of + leaks to closing "}"s. + * gcc.dg/analyzer/fd-glibc-byte-stream-connection-server.c: Add + false +ve leak message, due to not considering that program is + about to exit. + * gcc.dg/analyzer/fd-stream-socket.c: Move expected location of + leaks to closing "}"s. + * gcc.dg/analyzer/malloc-1.c: Fix return types. + * gcc.dg/analyzer/malloc-many-paths-2.c: Likewise. + * gcc.dg/analyzer/malloc-paths-10.c: Likewise. + * gcc.dg/analyzer/malloc-vs-local-4.c: Likewise. + * gcc.dg/analyzer/memset-CVE-2017-18549-1.c: Likewise. + * gcc.dg/analyzer/null-deref-pr102671-1.c: Enable + -fanalyzer-call-summaries. + * gcc.dg/analyzer/null-deref-pr102671-2.c: Remove xfail. + * gcc.dg/analyzer/pr101143.c: Fix return type. + * gcc.dg/analyzer/pr101837.c: Fix return type. Add warning about + missing return. + * gcc.dg/analyzer/pr101983-not-main.c: Fix return type. + * gcc.dg/analyzer/pr103892.c: Enable -fanalyzer-call-summaries. + * gcc.dg/analyzer/pr104224.c: Add xfails. + * gcc.dg/analyzer/pr104434-nonconst.c: Likewise. + * gcc.dg/analyzer/pr93032-mztools-signed-char.c: Increase + exploration limits by a factor of 5. + * gcc.dg/analyzer/pr93032-mztools-unsigned-char.c: Likewise. + * gcc.dg/analyzer/pr93355-localealias-feasibility-2.c: Fix return type. + * gcc.dg/analyzer/pr93355-localealias.c: Add xfail. Add expected + leak true +ve and uninit false +ve. + * gcc.dg/analyzer/pr94579.c: Add warning about missing return. + * gcc.dg/analyzer/pr98599-a.c: Add missing return stmts. + * gcc.dg/analyzer/pr99771-1.c: Fix expected locations of leaks. + * gcc.dg/analyzer/pr99774-2.c: Likewise. + * gcc.dg/analyzer/sensitive-1.c: Fix return types. + * gcc.dg/analyzer/state-diagram-1-sarif.py: Update. + * gcc.dg/analyzer/stdarg-1.c + (__analyzer_test_not_enough_args_2_middle): Add test coverage for + wording of call event with variadic args. + * gcc.dg/analyzer/strcmp-1.c: Fix return types. + * gcc.dg/analyzer/strcpy-1.c: Likewise. + * gcc.dg/analyzer/switch-enum-taint-1.c: Add warning about missing + return. + * gcc.dg/analyzer/switch.c: Fix return types. + * gcc.dg/analyzer/taint-assert.c: Likewise. + * gcc.dg/analyzer/taint-write-offset-1.c: Likewise. + * gcc.dg/analyzer/torture/analyzer-torture.exp: Drop + -fanalyzer-call-summaries. + * gcc.dg/analyzer/torture/boxed-ptr-1.c: Fix return type. + * gcc.dg/analyzer/torture/fold-ptr-arith-pr105784.c: Add + -Wno-analyzer-too-complex. + * gcc.dg/analyzer/torture/loop-inc-ptr-1.c: Skip at -O3 to avoid + changes to enode count. + * gcc.dg/analyzer/torture/pr102225.c: Consolidate on one line to + avoid caring about precise location of leak warning. + * gcc.dg/analyzer/torture/pr93379.c: Skip on -fno-fat-lto-objects. + Add warning about uninit. + * gcc.dg/analyzer/torture/stdarg-4.c: Replace UNKNOWN with + symbolic sum of params. + * gcc.dg/analyzer/untracked-1.c: Fix return type. + * gcc.dg/analyzer/use-after-free.c: Likewise. + * gcc.dg/analyzer/zlib-3.c: Add xfails. + * gcc.dg/plugin/analyzer_cpython_plugin.cc + (class refcnt_stmt_finder): Eliminate. + (check_refcnt): ...in favor of a call to + make_ploc_fixer_for_epath_for_leak_diagnostic. + * gcc.dg/plugin/analyzer_gil_plugin.cc: Update for + location-handling changes. + * gcc.dg/plugin/infoleak-CVE-2011-1078-1.c: Add missing + "return 0;". + * gcc.dg/plugin/infoleak-CVE-2011-1078-2.c: Fix return types. + * gcc.dg/plugin/infoleak-CVE-2017-18549-1.c: Likewise. + * gdc.dg/analyzer/analyzer.exp: Drop -fanalyzer-call-summaries. + * gfortran.dg/analyzer/analyzer.exp: Likewise. + * gfortran.dg/analyzer/uninit-pr63311.f90: Add + -Wno-analyzer-too-complex. + +2025-12-12 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/121852 + * gcc.dg/pr121852.c: New test. + +2025-12-12 Tejas Belagod <tejas.belagod@arm.com> + Tamar Christina <tamar.christina@arm.com> + + * g++.target/aarch64/sve/acle/general-c++/svbool_ternary.C: New test. + +2025-12-12 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/123098 + * gcc.dg/debug/dwarf2/omp-fesdr.c: Use #pragma omp masked + instead of #pragma omp master. + * g++.dg/debug/dwarf2/omp-fesdr.C: Likewise. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * gcc.target/loongarch/la64/add-const.c: New test. + * gcc.target/loongarch/la64/alsl-cost.c: New test. + * gcc.target/loongarch/la64/alsl_wu.c: New test. + * gcc.target/loongarch/la64/and-large-immediate-opt.c: New test. + * gcc.target/loongarch/la64/arch-func-attr-1.c: New test. + * gcc.target/loongarch/la64/arch-pragma-attr-1.c: New test. + * gcc.target/loongarch/la64/attr-model-1.c: New test. + * gcc.target/loongarch/la64/attr-model-2.c: New test. + * gcc.target/loongarch/la64/attr-model-3.c: New test. + * gcc.target/loongarch/la64/attr-model-4.c: New test. + * gcc.target/loongarch/la64/attr-model-5.c: New test. + * gcc.target/loongarch/la64/attr-model-diag.c: New test. + * gcc.target/loongarch/la64/attr-model-test.c: New test. + * gcc.target/loongarch/la64/bitint-alignments.c: New test. + * gcc.target/loongarch/la64/bitint-args.c: New test. + * gcc.target/loongarch/la64/bitint-sizes.c: New test. + * gcc.target/loongarch/la64/bitwise-shift-reassoc.c: New test. + * gcc.target/loongarch/la64/bitwise_extend.c: New test. + * gcc.target/loongarch/la64/bstrins-1.c: New test. + * gcc.target/loongarch/la64/bstrins-2.c: New test. + * gcc.target/loongarch/la64/bstrins-3.c: New test. + * gcc.target/loongarch/la64/bstrins-4.c: New test. + * gcc.target/loongarch/la64/bstrpick_alsl_paired.c: New test. + * gcc.target/loongarch/la64/bytepick_combine.c: New test. + * gcc.target/loongarch/la64/bytepick_shift_128.c: New test. + * gcc.target/loongarch/la64/can_inline_1.c: New test. + * gcc.target/loongarch/la64/can_inline_2.c: New test. + * gcc.target/loongarch/la64/can_inline_3.c: New test. + * gcc.target/loongarch/la64/can_inline_4.c: New test. + * gcc.target/loongarch/la64/can_inline_5.c: New test. + * gcc.target/loongarch/la64/can_inline_6.c: New test. + * gcc.target/loongarch/la64/cmodel-extreme-1.c: New test. + * gcc.target/loongarch/la64/cmodel-extreme-2.c: New test. + * gcc.target/loongarch/la64/cmodel-func-attr-1.c: New test. + * gcc.target/loongarch/la64/cmodel-pragma-attr-1.c: New test. + * gcc.target/loongarch/la64/cmov_ii.c: New test. + * gcc.target/loongarch/la64/compare-both-non-zero.c: New test. + * gcc.target/loongarch/la64/conditional-move-opt-1.c: New test. + * gcc.target/loongarch/la64/conditional-move-opt-2.c: New test. + * gcc.target/loongarch/la64/conditional-move-opt-3.c: New test. + * gcc.target/loongarch/la64/const-double-zero-stx.c: New test. + * gcc.target/loongarch/la64/crc-sext.c: New test. + * gcc.target/loongarch/la64/direct-extern-1.c: New test. + * gcc.target/loongarch/la64/div-div32.c: New test. + * gcc.target/loongarch/la64/div-no-div32.c: New test. + * gcc.target/loongarch/la64/divf.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-extreme-tls-desc.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-lto.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-2.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-3.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store-no-anchor.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-single-load-store.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-tls-desc.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-tls-ld-gd.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-auto-tls-le-ie.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-extreme-auto-tls-ld-gd.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-extreme-tls-desc.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-medium-auto-tls-ld-gd.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-medium-call36-auto-tls-ld-gd.c: New test. + * gcc.target/loongarch/la64/explicit-relocs-tls-desc.c: New test. + * gcc.target/loongarch/la64/extendsidi2-combine.c: New test. + * gcc.target/loongarch/la64/fclass-compile.c: New test. + * gcc.target/loongarch/la64/fclass-run.c: New test. + * gcc.target/loongarch/la64/flogb.c: New test. + * gcc.target/loongarch/la64/flt-abi-isa-1.c: New test. + * gcc.target/loongarch/la64/flt-abi-isa-2.c: New test. + * gcc.target/loongarch/la64/flt-abi-isa-3.c: New test. + * gcc.target/loongarch/la64/flt-abi-isa-4.c: New test. + * gcc.target/loongarch/la64/frint.c: New test. + * gcc.target/loongarch/la64/fscaleb.c: New test. + * gcc.target/loongarch/la64/ftint-no-inexact.c: New test. + * gcc.target/loongarch/la64/ftint.c: New test. + * gcc.target/loongarch/la64/func-call-1.c: New test. + * gcc.target/loongarch/la64/func-call-2.c: New test. + * gcc.target/loongarch/la64/func-call-3.c: New test. + * gcc.target/loongarch/la64/func-call-4.c: New test. + * gcc.target/loongarch/la64/func-call-5.c: New test. + * gcc.target/loongarch/la64/func-call-6.c: New test. + * gcc.target/loongarch/la64/func-call-7.c: New test. + * gcc.target/loongarch/la64/func-call-8.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-1.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-2.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-3.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-4.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-5.c: New test. + * gcc.target/loongarch/la64/func-call-extreme-6.c: New test. + * gcc.target/loongarch/la64/func-call-medium-1.c: New test. + * gcc.target/loongarch/la64/func-call-medium-2.c: New test. + * gcc.target/loongarch/la64/func-call-medium-3.c: New test. + * gcc.target/loongarch/la64/func-call-medium-5.c: New test. + * gcc.target/loongarch/la64/func-call-medium-6.c: New test. + * gcc.target/loongarch/la64/func-call-medium-7.c: New test. + * gcc.target/loongarch/la64/func-call-medium-8.c: New test. + * gcc.target/loongarch/la64/func-call-medium-call36-1.c: New test. + * gcc.target/loongarch/la64/func-call-medium-call36.c: New test. + * gcc.target/loongarch/la64/imm-load.c: New test. + * gcc.target/loongarch/la64/imm-load1.c: New test. + * gcc.target/loongarch/la64/invariant-recip.c: New test. + * gcc.target/loongarch/la64/la64.exp: New test. + * gcc.target/loongarch/la64/larch-frecipe-builtin.c: New test. + * gcc.target/loongarch/la64/larch-frecipe-intrinsic.c: New test. + * gcc.target/loongarch/la64/lasx-func-attr-1.c: New test. + * gcc.target/loongarch/la64/lasx-pragma-attr-1.c: New test. + * gcc.target/loongarch/la64/lsx-func-attr-1.c: New test. + * gcc.target/loongarch/la64/lsx-pragma-attr-1.c: New test. + * gcc.target/loongarch/la64/math-float-128.c: New test. + * gcc.target/loongarch/la64/mem-and-mask-opt.c: New test. + * gcc.target/loongarch/la64/memcpy-vec-1.c: New test. + * gcc.target/loongarch/la64/memcpy-vec-2.c: New test. + * gcc.target/loongarch/la64/memcpy-vec-3.c: New test. + * gcc.target/loongarch/la64/mode-tieable-opt.c: New test. + * gcc.target/loongarch/la64/mov-zero-2.c: New test. + * gcc.target/loongarch/la64/movcf2gr-via-fr.c: New test. + * gcc.target/loongarch/la64/movcf2gr.c: New test. + * gcc.target/loongarch/la64/mul-const-reduction.c: New test. + * gcc.target/loongarch/la64/mulh_wu.c: New test. + * gcc.target/loongarch/la64/mulw_d_w.c: New test. + * gcc.target/loongarch/la64/mulw_d_wu.c: New test. + * gcc.target/loongarch/la64/pr109465-1.c: New test. + * gcc.target/loongarch/la64/pr109465-2.c: New test. + * gcc.target/loongarch/la64/pr109465-3.c: New test. + * gcc.target/loongarch/la64/pr113148.c: New test. + * gcc.target/loongarch/la64/pr114861.c: New test. + * gcc.target/loongarch/la64/pr118561.c: New test. + * gcc.target/loongarch/la64/pr118828-2.c: New test. + * gcc.target/loongarch/la64/pr118828-3.c: New test. + * gcc.target/loongarch/la64/pr118828-4.c: New test. + * gcc.target/loongarch/la64/pr118828.c: New test. + * gcc.target/loongarch/la64/pr118843.c: New test. + * gcc.target/loongarch/la64/pr119127.c: New test. + * gcc.target/loongarch/la64/pr121542.c: New test. + * gcc.target/loongarch/la64/pr121634.c: New test. + * gcc.target/loongarch/la64/pr121875.c: New test. + * gcc.target/loongarch/la64/prolog-opt.c: New test. + * gcc.target/loongarch/la64/recip-divf.c: New test. + * gcc.target/loongarch/la64/recip-sqrtf.c: New test. + * gcc.target/loongarch/la64/relocs-symbol-noaddend.c: New test. + * gcc.target/loongarch/la64/revb.c: New test. + * gcc.target/loongarch/la64/rotl-with-rotr.c: New test. + * gcc.target/loongarch/la64/rotrw.c: New test. + * gcc.target/loongarch/la64/sign-extend-1.c: New test. + * gcc.target/loongarch/la64/sign-extend-2.c: New test. + * gcc.target/loongarch/la64/sign-extend-3.c: New test. + * gcc.target/loongarch/la64/sign-extend-4.c: New test. + * gcc.target/loongarch/la64/sign-extend-5.c: New test. + * gcc.target/loongarch/la64/sign-extend-6.c: New test. + * gcc.target/loongarch/la64/sign-extend-bitwise.c: New test. + * gcc.target/loongarch/la64/sign_extend_ashift.c: New test. + * gcc.target/loongarch/la64/slt-sign-extend.c: New test. + * gcc.target/loongarch/la64/smuldi3_highpart.c: New test. + * gcc.target/loongarch/la64/spill-less.c: New test. + * gcc.target/loongarch/la64/sqrtf.c: New test. + * gcc.target/loongarch/la64/switch-qi.c: New test. + * gcc.target/loongarch/la64/tls-extreme-macro.c: New test. + * gcc.target/loongarch/la64/tls-gd-noplt.c: New test. + * gcc.target/loongarch/la64/tls-ie-extreme.c: New test. + * gcc.target/loongarch/la64/tls-ie-norelax.c: New test. + * gcc.target/loongarch/la64/tls-ie-relax.c: New test. + * gcc.target/loongarch/la64/tls-le-relax.c: New test. + * gcc.target/loongarch/la64/widen-mul-rtx-cost-signed.c: New test. + * gcc.target/loongarch/la64/widen-mul-rtx-cost-unsigned.c: New test. + * gcc.target/loongarch/la64/zero-size-field-pass.c: New test. + * gcc.target/loongarch/la64/zero-size-field-ret.c: New test. + * gcc.target/loongarch/vector/lasx/abd-lasx.c: New test. + * gcc.target/loongarch/vector/lasx/avg-ceil-lasx.c: New test. + * gcc.target/loongarch/vector/lasx/avg-floor-lasx.c: New test. + * gcc.target/loongarch/vector/lasx/fnmam4-vec.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-andn-iorn.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-extract-even_odd-opt.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-func-attr-2.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-pragma-attr-2.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-reduc-1.c: New test. + * gcc.target/loongarch/vector/lasx/lasx-xvpermi_q-opt.c: New test. + * gcc.target/loongarch/vector/lasx/pr112476-2.c: New test. + * gcc.target/loongarch/vector/lasx/pr112476-4.c: New test. + * gcc.target/loongarch/vector/lasx/pr113033.c: New test. + * gcc.target/loongarch/vector/lasx/pragma-push-pop.c: New test. + * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-b.c: New test. + * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-d.c: New test. + * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-h.c: New test. + * gcc.target/loongarch/vector/lasx/rotl-with-xvrotr-w.c: New test. + * gcc.target/loongarch/vector/lasx/sad-lasx.c: New test. + * gcc.target/loongarch/vector/lasx/strict-align.c: New test. + * gcc.target/loongarch/vector/lasx/vec_pack_unpack_256.c: New test. + * gcc.target/loongarch/vector/lasx/vec_reduc_half.c: New test. + * gcc.target/loongarch/vector/lasx/vect-extract.c: New test. + * gcc.target/loongarch/vector/lasx/vect-frint-no-inexact.c: New test. + * gcc.target/loongarch/vector/lasx/vect-frint.c: New test. + * gcc.target/loongarch/vector/lasx/vect-ftint-no-inexact.c: New test. + * gcc.target/loongarch/vector/lasx/vect-ftint.c: New test. + * gcc.target/loongarch/vector/lasx/vect-ld-st-imm12.c: New test. + * gcc.target/loongarch/vector/lasx/vect-muh.c: New test. + * gcc.target/loongarch/vector/lasx/vect-rotr.c: New test. + * gcc.target/loongarch/vector/lasx/vect-shuf-fp.c: New test. + * gcc.target/loongarch/vector/lasx/vect-slp-two-operator.c: New test. + * gcc.target/loongarch/vector/lasx/vect-widen-add.c: New test. + * gcc.target/loongarch/vector/lasx/vect-widen-mul.c: New test. + * gcc.target/loongarch/vector/lasx/vect-widen-sub.c: New test. + * gcc.target/loongarch/vector/lasx/vfmax-vfmin.c: New test. + * gcc.target/loongarch/vector/lasx/vrepli.c: New test. + * gcc.target/loongarch/vector/lasx/wide-mul-reduc-1.c: New test. + * gcc.target/loongarch/vector/lasx/wide-mul-reduc-2.c: New test. + * gcc.target/loongarch/vector/lasx/xvfcmp-d.c: New test. + * gcc.target/loongarch/vector/lasx/xvfcmp-f.c: New test. + * gcc.target/loongarch/vector/lsx/abd-lsx.c: New test. + * gcc.target/loongarch/vector/lsx/avg-ceil-lsx.c: New test. + * gcc.target/loongarch/vector/lsx/avg-floor-lsx.c: New test. + * gcc.target/loongarch/vector/lsx/lsx-andn-iorn.c: New test. + * gcc.target/loongarch/vector/lsx/lsx-func-attr-2.c: New test. + * gcc.target/loongarch/vector/lsx/lsx-pragma-attr-2.c: New test. + * gcc.target/loongarch/vector/lsx/mov-zero-1.c: New test. + * gcc.target/loongarch/vector/lsx/popcnt.c: New test. + * gcc.target/loongarch/vector/lsx/popcount.c: New test. + * gcc.target/loongarch/vector/lsx/pr112476-1.c: New test. + * gcc.target/loongarch/vector/lsx/pr112476-3.c: New test. + * gcc.target/loongarch/vector/lsx/pr119084.c: New test. + * gcc.target/loongarch/vector/lsx/pr121064.c: New test. + * gcc.target/loongarch/vector/lsx/pr122097.c: New test. + * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-b.c: New test. + * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-d.c: New test. + * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-h.c: New test. + * gcc.target/loongarch/vector/lsx/rotl-with-vrotr-w.c: New test. + * gcc.target/loongarch/vector/lsx/sad-lsx.c: New test. + * gcc.target/loongarch/vector/lsx/vec_pack_unpack_128.c: New test. + * gcc.target/loongarch/vector/lsx/vect-frint-scalar-no-inexact.c: New test. + * gcc.target/loongarch/vector/lsx/vect-frint-scalar.c: New test. + * gcc.target/loongarch/vector/lsx/vect-shift-imm-round.c: New test. + * gcc.target/loongarch/vector/lsx/vector-func-attr-1.c: New test. + * gcc.target/loongarch/vector/lsx/vector-pragma-attr-1.c: New test. + * gcc.target/loongarch/vector/lsx/vfcmp-d.c: New test. + * gcc.target/loongarch/vector/lsx/vfcmp-f.c: New test. + * gcc.target/loongarch/vector/lsx/xorsign-run.c: New test. + * gcc.target/loongarch/vector/lsx/xorsign.c: New test. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * g++.target/loongarch/bytepick.C: Skip on LA32. + * g++.target/loongarch/got-load.C: Likewise. + * g++.target/loongarch/pr106828.C: Likewise. + * g++.target/loongarch/vect-ashr-lshr.C: Add loongarch_asx check. + * gcc.dg/ifcvt-4.c: Skip on LA32. + * gcc.dg/stack-usage-1.c: Change __loongarch_lp64 to __loongarch__. + * gcc.dg/tree-ssa/gen-vect-2.c: Skip on LoongArch. + * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. + * gcc.dg/tree-ssa/pr83403-1.c: Add dg-additional-options. + * gcc.dg/tree-ssa/pr83403-2.c: Likewise. + * gcc.target/loongarch/float-load.c: Add hard_float check. + * gcc.target/loongarch/larch-builtin.c: Skip some check on LA32. + * gcc.target/loongarch/pr115752.c: Add hard_float check. + * gcc.target/loongarch/vector/loongarch-vector.exp: Add + check_effective_target_loongarch_sx. + * lib/target-supports.exp: Add hard float condition to + check_effective_target_scalar_all_fma. + Disable loongarch for check_effective_target_vect_cmdline_needed. + Add check_effective_target_loongarch_sx condition to + check_vect_support_and_set_flags. + * gcc.target/loongarch/abd-lasx.c: Removed. + * gcc.target/loongarch/abd-lsx.c: Removed. + * gcc.target/loongarch/add-const.c: Removed. + * gcc.target/loongarch/alsl-cost.c: Removed. + * gcc.target/loongarch/alsl_wu.c: Removed. + * gcc.target/loongarch/and-large-immediate-opt.c: Removed. + * gcc.target/loongarch/arch-func-attr-1.c: Removed. + * gcc.target/loongarch/arch-pragma-attr-1.c: Removed. + * gcc.target/loongarch/attr-model-1.c: Removed. + * gcc.target/loongarch/attr-model-2.c: Removed. + * gcc.target/loongarch/attr-model-3.c: Removed. + * gcc.target/loongarch/attr-model-4.c: Removed. + * gcc.target/loongarch/attr-model-5.c: Removed. + * gcc.target/loongarch/attr-model-diag.c: Removed. + * gcc.target/loongarch/attr-model-test.c: Removed. + * gcc.target/loongarch/avg-ceil-lasx.c: Removed. + * gcc.target/loongarch/avg-ceil-lsx.c: Removed. + * gcc.target/loongarch/avg-floor-lasx.c: Removed. + * gcc.target/loongarch/avg-floor-lsx.c: Removed. + * gcc.target/loongarch/bitint-alignments.c: Removed. + * gcc.target/loongarch/bitint-args.c: Removed. + * gcc.target/loongarch/bitint-sizes.c: Removed. + * gcc.target/loongarch/bitwise-shift-reassoc.c: Removed. + * gcc.target/loongarch/bitwise_extend.c: Removed. + * gcc.target/loongarch/bstrins-1.c: Removed. + * gcc.target/loongarch/bstrins-2.c: Removed. + * gcc.target/loongarch/bstrins-3.c: Removed. + * gcc.target/loongarch/bstrins-4.c: Removed. + * gcc.target/loongarch/bstrpick_alsl_paired.c: Removed. + * gcc.target/loongarch/bytepick_combine.c: Removed. + * gcc.target/loongarch/bytepick_shift_128.c: Removed. + * gcc.target/loongarch/can_inline_1.c: Removed. + * gcc.target/loongarch/can_inline_2.c: Removed. + * gcc.target/loongarch/can_inline_3.c: Removed. + * gcc.target/loongarch/can_inline_4.c: Removed. + * gcc.target/loongarch/can_inline_5.c: Removed. + * gcc.target/loongarch/can_inline_6.c: Removed. + * gcc.target/loongarch/cmodel-extreme-1.c: Removed. + * gcc.target/loongarch/cmodel-extreme-2.c: Removed. + * gcc.target/loongarch/cmodel-func-attr-1.c: Removed. + * gcc.target/loongarch/cmodel-pragma-attr-1.c: Removed. + * gcc.target/loongarch/cmov_ii.c: Removed. + * gcc.target/loongarch/compare-both-non-zero.c: Removed. + * gcc.target/loongarch/conditional-move-opt-1.c: Removed. + * gcc.target/loongarch/conditional-move-opt-2.c: Removed. + * gcc.target/loongarch/conditional-move-opt-3.c: Removed. + * gcc.target/loongarch/const-double-zero-stx.c: Removed. + * gcc.target/loongarch/crc-sext.c: Removed. + * gcc.target/loongarch/direct-extern-1.c: Removed. + * gcc.target/loongarch/div-div32.c: Removed. + * gcc.target/loongarch/div-no-div32.c: Removed. + * gcc.target/loongarch/divf.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-extreme-tls-desc.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-lto.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-single-load-store-2.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-single-load-store-3.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-single-load-store-no-anchor.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-single-load-store.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-tls-desc.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-tls-ld-gd.c: Removed. + * gcc.target/loongarch/explicit-relocs-auto-tls-le-ie.c: Removed. + * gcc.target/loongarch/explicit-relocs-extreme-auto-tls-ld-gd.c: Removed. + * gcc.target/loongarch/explicit-relocs-extreme-tls-desc.c: Removed. + * gcc.target/loongarch/explicit-relocs-medium-auto-tls-ld-gd.c: Removed. + * gcc.target/loongarch/explicit-relocs-medium-call36-auto-tls-ld-gd.c: Removed. + * gcc.target/loongarch/explicit-relocs-tls-desc.c: Removed. + * gcc.target/loongarch/extendsidi2-combine.c: Removed. + * gcc.target/loongarch/fclass-compile.c: Removed. + * gcc.target/loongarch/fclass-run.c: Removed. + * gcc.target/loongarch/flogb.c: Removed. + * gcc.target/loongarch/flt-abi-isa-1.c: Removed. + * gcc.target/loongarch/flt-abi-isa-2.c: Removed. + * gcc.target/loongarch/flt-abi-isa-3.c: Removed. + * gcc.target/loongarch/flt-abi-isa-4.c: Removed. + * gcc.target/loongarch/fnmam4-vec.c: Removed. + * gcc.target/loongarch/frint.c: Removed. + * gcc.target/loongarch/fscaleb.c: Removed. + * gcc.target/loongarch/ftint-no-inexact.c: Removed. + * gcc.target/loongarch/ftint.c: Removed. + * gcc.target/loongarch/func-call-1.c: Removed. + * gcc.target/loongarch/func-call-2.c: Removed. + * gcc.target/loongarch/func-call-3.c: Removed. + * gcc.target/loongarch/func-call-4.c: Removed. + * gcc.target/loongarch/func-call-5.c: Removed. + * gcc.target/loongarch/func-call-6.c: Removed. + * gcc.target/loongarch/func-call-7.c: Removed. + * gcc.target/loongarch/func-call-8.c: Removed. + * gcc.target/loongarch/func-call-extreme-1.c: Removed. + * gcc.target/loongarch/func-call-extreme-2.c: Removed. + * gcc.target/loongarch/func-call-extreme-3.c: Removed. + * gcc.target/loongarch/func-call-extreme-4.c: Removed. + * gcc.target/loongarch/func-call-extreme-5.c: Removed. + * gcc.target/loongarch/func-call-extreme-6.c: Removed. + * gcc.target/loongarch/func-call-medium-1.c: Removed. + * gcc.target/loongarch/func-call-medium-2.c: Removed. + * gcc.target/loongarch/func-call-medium-3.c: Removed. + * gcc.target/loongarch/func-call-medium-5.c: Removed. + * gcc.target/loongarch/func-call-medium-6.c: Removed. + * gcc.target/loongarch/func-call-medium-7.c: Removed. + * gcc.target/loongarch/func-call-medium-8.c: Removed. + * gcc.target/loongarch/func-call-medium-call36-1.c: Removed. + * gcc.target/loongarch/func-call-medium-call36.c: Removed. + * gcc.target/loongarch/imm-load.c: Removed. + * gcc.target/loongarch/imm-load1.c: Removed. + * gcc.target/loongarch/invariant-recip.c: Removed. + * gcc.target/loongarch/larch-frecipe-builtin.c: Removed. + * gcc.target/loongarch/larch-frecipe-intrinsic.c: Removed. + * gcc.target/loongarch/lasx-andn-iorn.c: Removed. + * gcc.target/loongarch/lasx-extract-even_odd-opt.c: Removed. + * gcc.target/loongarch/lasx-func-attr-1.c: Removed. + * gcc.target/loongarch/lasx-func-attr-2.c: Removed. + * gcc.target/loongarch/lasx-pragma-attr-1.c: Removed. + * gcc.target/loongarch/lasx-pragma-attr-2.c: Removed. + * gcc.target/loongarch/lasx-reduc-1.c: Removed. + * gcc.target/loongarch/lasx-xvpermi_q-opt.c: Removed. + * gcc.target/loongarch/lsx-andn-iorn.c: Removed. + * gcc.target/loongarch/lsx-func-attr-1.c: Removed. + * gcc.target/loongarch/lsx-func-attr-2.c: Removed. + * gcc.target/loongarch/lsx-pragma-attr-1.c: Removed. + * gcc.target/loongarch/lsx-pragma-attr-2.c: Removed. + * gcc.target/loongarch/math-float-128.c: Removed. + * gcc.target/loongarch/mem-and-mask-opt.c: Removed. + * gcc.target/loongarch/memcpy-vec-1.c: Removed. + * gcc.target/loongarch/memcpy-vec-2.c: Removed. + * gcc.target/loongarch/memcpy-vec-3.c: Removed. + * gcc.target/loongarch/mode-tieable-opt.c: Removed. + * gcc.target/loongarch/mov-zero-1.c: Removed. + * gcc.target/loongarch/mov-zero-2.c: Removed. + * gcc.target/loongarch/movcf2gr-via-fr.c: Removed. + * gcc.target/loongarch/movcf2gr.c: Removed. + * gcc.target/loongarch/mul-const-reduction.c: Removed. + * gcc.target/loongarch/mulh_wu.c: Removed. + * gcc.target/loongarch/mulw_d_w.c: Removed. + * gcc.target/loongarch/mulw_d_wu.c: Removed. + * gcc.target/loongarch/popcnt.c: Removed. + * gcc.target/loongarch/popcount.c: Removed. + * gcc.target/loongarch/pr109465-1.c: Removed. + * gcc.target/loongarch/pr109465-2.c: Removed. + * gcc.target/loongarch/pr109465-3.c: Removed. + * gcc.target/loongarch/pr112476-1.c: Removed. + * gcc.target/loongarch/pr112476-2.c: Removed. + * gcc.target/loongarch/pr112476-3.c: Removed. + * gcc.target/loongarch/pr112476-4.c: Removed. + * gcc.target/loongarch/pr113033.c: Removed. + * gcc.target/loongarch/pr113148.c: Removed. + * gcc.target/loongarch/pr114861.c: Removed. + * gcc.target/loongarch/pr118561.c: Removed. + * gcc.target/loongarch/pr118828-2.c: Removed. + * gcc.target/loongarch/pr118828-3.c: Removed. + * gcc.target/loongarch/pr118828-4.c: Removed. + * gcc.target/loongarch/pr118828.c: Removed. + * gcc.target/loongarch/pr118843.c: Removed. + * gcc.target/loongarch/pr119084.c: Removed. + * gcc.target/loongarch/pr119127.c: Removed. + * gcc.target/loongarch/pr121064.c: Removed. + * gcc.target/loongarch/pr121542.c: Removed. + * gcc.target/loongarch/pr121634.c: Removed. + * gcc.target/loongarch/pr121875.c: Removed. + * gcc.target/loongarch/pr122097.c: Removed. + * gcc.target/loongarch/pragma-push-pop.c: Removed. + * gcc.target/loongarch/prolog-opt.c: Removed. + * gcc.target/loongarch/recip-divf.c: Removed. + * gcc.target/loongarch/recip-sqrtf.c: Removed. + * gcc.target/loongarch/relocs-symbol-noaddend.c: Removed. + * gcc.target/loongarch/revb.c: Removed. + * gcc.target/loongarch/rotl-with-rotr.c: Removed. + * gcc.target/loongarch/rotl-with-vrotr-b.c: Removed. + * gcc.target/loongarch/rotl-with-vrotr-d.c: Removed. + * gcc.target/loongarch/rotl-with-vrotr-h.c: Removed. + * gcc.target/loongarch/rotl-with-vrotr-w.c: Removed. + * gcc.target/loongarch/rotl-with-xvrotr-b.c: Removed. + * gcc.target/loongarch/rotl-with-xvrotr-d.c: Removed. + * gcc.target/loongarch/rotl-with-xvrotr-h.c: Removed. + * gcc.target/loongarch/rotl-with-xvrotr-w.c: Removed. + * gcc.target/loongarch/rotrw.c: Removed. + * gcc.target/loongarch/sad-lasx.c: Removed. + * gcc.target/loongarch/sad-lsx.c: Removed. + * gcc.target/loongarch/sign-extend-1.c: Removed. + * gcc.target/loongarch/sign-extend-2.c: Removed. + * gcc.target/loongarch/sign-extend-3.c: Removed. + * gcc.target/loongarch/sign-extend-4.c: Removed. + * gcc.target/loongarch/sign-extend-5.c: Removed. + * gcc.target/loongarch/sign-extend-6.c: Removed. + * gcc.target/loongarch/sign-extend-bitwise.c: Removed. + * gcc.target/loongarch/sign_extend_ashift.c: Removed. + * gcc.target/loongarch/slt-sign-extend.c: Removed. + * gcc.target/loongarch/smuldi3_highpart.c: Removed. + * gcc.target/loongarch/spill-less.c: Removed. + * gcc.target/loongarch/sqrtf.c: Removed. + * gcc.target/loongarch/strict-align.c: Removed. + * gcc.target/loongarch/switch-qi.c: Removed. + * gcc.target/loongarch/tls-extreme-macro.c: Removed. + * gcc.target/loongarch/tls-gd-noplt.c: Removed. + * gcc.target/loongarch/tls-ie-extreme.c: Removed. + * gcc.target/loongarch/tls-ie-norelax.c: Removed. + * gcc.target/loongarch/tls-ie-relax.c: Removed. + * gcc.target/loongarch/tls-le-relax.c: Removed. + * gcc.target/loongarch/vec_pack_unpack_128.c: Removed. + * gcc.target/loongarch/vec_pack_unpack_256.c: Removed. + * gcc.target/loongarch/vec_reduc_half.c: Removed. + * gcc.target/loongarch/vect-extract.c: Removed. + * gcc.target/loongarch/vect-frint-no-inexact.c: Removed. + * gcc.target/loongarch/vect-frint-scalar-no-inexact.c: Removed. + * gcc.target/loongarch/vect-frint-scalar.c: Removed. + * gcc.target/loongarch/vect-frint.c: Removed. + * gcc.target/loongarch/vect-ftint-no-inexact.c: Removed. + * gcc.target/loongarch/vect-ftint.c: Removed. + * gcc.target/loongarch/vect-ld-st-imm12.c: Removed. + * gcc.target/loongarch/vect-muh.c: Removed. + * gcc.target/loongarch/vect-rotr.c: Removed. + * gcc.target/loongarch/vect-shift-imm-round.c: Removed. + * gcc.target/loongarch/vect-shuf-fp.c: Removed. + * gcc.target/loongarch/vect-slp-two-operator.c: Removed. + * gcc.target/loongarch/vect-widen-add.c: Removed. + * gcc.target/loongarch/vect-widen-mul.c: Removed. + * gcc.target/loongarch/vect-widen-sub.c: Removed. + * gcc.target/loongarch/vector-func-attr-1.c: Removed. + * gcc.target/loongarch/vector-pragma-attr-1.c: Removed. + * gcc.target/loongarch/vfcmp-d.c: Removed. + * gcc.target/loongarch/vfcmp-f.c: Removed. + * gcc.target/loongarch/vfmax-vfmin.c: Removed. + * gcc.target/loongarch/vrepli.c: Removed. + * gcc.target/loongarch/wide-mul-reduc-1.c: Removed. + * gcc.target/loongarch/wide-mul-reduc-2.c: Removed. + * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: Removed. + * gcc.target/loongarch/widen-mul-rtx-cost-unsigned.c: Removed. + * gcc.target/loongarch/xorsign-run.c: Removed. + * gcc.target/loongarch/xorsign.c: Removed. + * gcc.target/loongarch/xvfcmp-d.c: Removed. + * gcc.target/loongarch/xvfcmp-f.c: Removed. + * gcc.target/loongarch/zero-size-field-pass.c: Removed. + * gcc.target/loongarch/zero-size-field-ret.c: Removed. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * gcc.target/loongarch/la32/memcpy.c: New test. + +2025-12-12 Jiajie Chen <c@jia.je> + + * gcc.target/loongarch/la32/trunc_int_for_mode.c: New test. + +2025-12-12 mengqinggang <mengqinggang@loongson.cn> + + * gcc.target/loongarch/la32/and.c: New test. + * gcc.target/loongarch/la32/la32.exp: New test. + +2025-12-12 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/manorboy.a68: New file. + +2025-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/107406 + * gfortran.dg/coarray_lock_3.f90: Remove dg-error on + valid code. + * gfortran.dg/coarray_lock_4.f90: Likewise. + * gfortran.dg/coarray_lock_5.f90: Likwise + Co-Authored by: Andre Vehreschild <vehre@gcc.gnu.org> + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/123098 + * gcc.dg/vect/vect-simd-clone-15.c (foo): Use OpenMP 5.2 + syntax for linear clause. + * g++.dg/vect/simd-clone-6.cc (foo): Likewise. + * c-c++-common/goacc-gomp/pr93465-1.c: Use + #pragma omp begin declare target instead of + #pragma omp declare target. + * c-c++-common/goacc-gomp/nesting-fail-1.c: Use #pragma omp masked + instead of #pragma omp master. + * gfortran.dg/goacc-gomp/pr102330-1.f90 (r1): Use + !$omp masked taskloop simd instead of !$omp master taskloop simd. + * gfortran.dg/vect/pr86421.f90 (foo): Use OpenMP 5.2 syntax for + linear clause. + * gfortran.dg/gomp/allocate-16.f90: Use \\\$ instead of $ in dg-error + and use relative line numbers instead of absolute. + * gfortran.dg/gomp/groupprivate-2.f90: Add -Wno-deprecated-openmp + to dg-additional-options. + * gfortran.dg/gomp/groupprivate-5.f90: Likewise. + * gfortran.dg/goacc/pr93329.f90: Likewise. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/put_image2.ads: New test. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/121114 + * g++.dg/tree-ssa/pr110819.C: Guard scan-tree-dump-not delete on + c++23_down and add comment explaining why C++26 fails that. + * g++.dg/tree-ssa/pr96945.C: Likewise. + * g++.dg/tree-ssa/pr109442.C: Likewise. + * g++.dg/tree-ssa/pr116868.C: Likewise. + * g++.dg/tree-ssa/pr58483.C: Likewise. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + * gfortran.dg/interface_16.f90: Fix comment typo,calll -> call. + +2025-12-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/107142 + * gfortran.dg/pdt_78.f03: New test. + +2025-12-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/110012 + * gfortran.dg/pdt_77.f03: New test. + +2025-12-11 Jason Merrill <jason@redhat.com> + + * lib/g++-dg.exp: Handle "modules" std. + * lib/target-supports.exp (check_effective_target_modules): New. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * gfortran.dg/gomp/allocate-14.f90: Suppress warnings. + * gfortran.dg/gomp/allocate-16.f90: Ditto. + * gfortran.dg/gomp/allocate-5.f90: Ditto. + * gfortran.dg/gomp/allocate-6.f90: Ditto. + * gfortran.dg/gomp/allocate-7.f90: Ditto. + * gfortran.dg/gomp/allocators-3.f90: Ditto. + * gfortran.dg/gomp/declare-simd-2.f90: Ditto. + * gfortran.dg/gomp/declare-simd-6.f90: Ditto. + * gfortran.dg/gomp/declare-target-1.f90: Ditto. + * gfortran.dg/gomp/declare-target-2.f90: Ditto. + * gfortran.dg/gomp/declare-target-4.f90: Ditto. + * gfortran.dg/gomp/declare-target-5.f90: Ditto. + * gfortran.dg/gomp/declare-target-indirect-1.f90: Ditto. + * gfortran.dg/gomp/declare-target-indirect-2.f90: Ditto. + * gfortran.dg/gomp/declare-variant-10.f90: Ditto. + * gfortran.dg/gomp/declare-variant-8.f90: Ditto. + * gfortran.dg/gomp/implicit-save.f90: Ditto. + * gfortran.dg/gomp/linear-1.f90: Ditto. + * gfortran.dg/gomp/linear-2.f90: Ditto. + * gfortran.dg/gomp/linear-3.f90: Ditto. + * gfortran.dg/gomp/linear-4.f90: Ditto. + * gfortran.dg/gomp/linear-6.f90: Ditto. + * gfortran.dg/gomp/map-12.f90: Ditto. + * gfortran.dg/gomp/map-6.f90: Ditto. + * gfortran.dg/gomp/map-7.f90: Ditto. + * gfortran.dg/gomp/map-8.f90: Ditto. + * gfortran.dg/gomp/order-8.f90: Ditto. + * gfortran.dg/gomp/pr83977.f90: Ditto. + * gfortran.dg/gomp/reduction1.f90: Ditto. + * gfortran.dg/gomp/schedule-modifiers-2.f90: Ditto. + * gfortran.dg/gomp/workshare-reduction-55.f90: Ditto. + * gfortran.dg/gomp/workshare-reduction-56.f90: Ditto. + * gfortran.dg/gomp/workshare-reduction-57.f90: Ditto. + * gfortran.dg/gomp/workshare-reduction-58.f90: Ditto. + * gfortran.dg/gomp/52-deps.f90: New test. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * c-c++-common/gomp/Wparentheses-2.c: Suppress warnings. + * c-c++-common/gomp/attrs-metadirective-1.c: Ditto. + * c-c++-common/gomp/attrs-metadirective-2.c: Ditto. + * c-c++-common/gomp/attrs-metadirective-3.c: Ditto. + * c-c++-common/gomp/attrs-metadirective-4.c: Ditto. + * c-c++-common/gomp/attrs-metadirective-5.c: Ditto. + * c-c++-common/gomp/attrs-metadirective-8.c: Ditto. + * c-c++-common/gomp/begin-declare-target-1.c: Ditto. + * c-c++-common/gomp/begin-declare-target-2.c: Ditto. + * c-c++-common/gomp/clauses-3.c: Ditto. + * c-c++-common/gomp/declare-target-1.c: Ditto. + * c-c++-common/gomp/declare-target-2.c: Ditto. + * c-c++-common/gomp/declare-target-3.c: Ditto. + * c-c++-common/gomp/declare-target-4.c: Ditto. + * c-c++-common/gomp/declare-target-5.c: Ditto. + * c-c++-common/gomp/declare-target-7.c: Ditto. + * c-c++-common/gomp/declare-target-indirect-1.c: Ditto. + * c-c++-common/gomp/declare-target-indirect-2.c: Ditto. + * c-c++-common/gomp/declare-variant-10.c: Ditto. + * c-c++-common/gomp/declare-variant-8.c: Ditto. + * c-c++-common/gomp/defaultmap-2.c: Ditto. + * c-c++-common/gomp/defaultmap-3.c: Ditto. + * c-c++-common/gomp/depend-iterator-2.c: Ditto. + * c-c++-common/gomp/depobj-1.c: Ditto. + * c-c++-common/gomp/directive-1.c: Ditto. + * c-c++-common/gomp/distribute-1.c: Ditto. + * c-c++-common/gomp/doacross-1.c: Ditto. + * c-c++-common/gomp/doacross-2.c: Ditto. + * c-c++-common/gomp/doacross-3.c: Ditto. + * c-c++-common/gomp/doacross-4.c: Ditto. + * c-c++-common/gomp/doacross-8.c: Ditto. + * c-c++-common/gomp/linear-1.c: Ditto. + * c-c++-common/gomp/linear-2.c: Ditto. + * c-c++-common/gomp/linear-3.c: Ditto. + * c-c++-common/gomp/loop-6.c: Ditto. + * c-c++-common/gomp/map-1.c: Ditto. + * c-c++-common/gomp/map-3.c: Ditto. + * c-c++-common/gomp/map-6.c: Ditto. + * c-c++-common/gomp/metadirective-1.c: Ditto. + * c-c++-common/gomp/metadirective-2.c: Ditto. + * c-c++-common/gomp/metadirective-3.c: Ditto. + * c-c++-common/gomp/metadirective-4.c: Ditto. + * c-c++-common/gomp/metadirective-5.c: Ditto. + * c-c++-common/gomp/metadirective-8.c: Ditto. + * c-c++-common/gomp/metadirective-construct.c: Ditto. + * c-c++-common/gomp/metadirective-device.c: Ditto. + * c-c++-common/gomp/metadirective-target-device-1.c: Ditto. + * c-c++-common/gomp/metadirective-target-device-2.c: Ditto. + * c-c++-common/gomp/order-2.c: Ditto. + * c-c++-common/gomp/ordered-3.c: Ditto. + * c-c++-common/gomp/ordered-5.c: Ditto. + * c-c++-common/gomp/pr102640.c: Ditto. + * c-c++-common/gomp/pr106836.c: Ditto. + * c-c++-common/gomp/pr120180-1.c: Ditto. + * c-c++-common/gomp/pr88203-1.c: Ditto. + * c-c++-common/gomp/pr88203-2.c: Ditto. + * c-c++-common/gomp/pr88203-3.c: Ditto. + * c-c++-common/gomp/pr91401-2.c: Ditto. + * c-c++-common/gomp/pr91987.c: Ditto. + * c-c++-common/gomp/reverse-offload-1.c: Ditto. + * c-c++-common/gomp/schedule-modifiers-1.c: Ditto. + * c-c++-common/gomp/sink-1.c: Ditto. + * c-c++-common/gomp/sink-2.c: Ditto. + * c-c++-common/gomp/sink-3.c: Ditto. + * c-c++-common/gomp/sink-4.c: Ditto. + * c-c++-common/gomp/sink-5.c: Ditto. + * c-c++-common/gomp/target-teams-1.c: Ditto. + * g++.dg/gomp/attrs-12.C: Ditto. + * g++.dg/gomp/attrs-5.C: Ditto. + * g++.dg/gomp/attrs-9.C: Ditto. + * g++.dg/gomp/clause-3.C: Ditto. + * g++.dg/gomp/declare-simd-3.C: Ditto. + * g++.dg/gomp/declare-simd-4.C: Ditto. + * g++.dg/gomp/declare-simd-6.C: Ditto. + * g++.dg/gomp/declare-simd-7.C: Ditto. + * g++.dg/gomp/declare-simd-8.C: Ditto. + * g++.dg/gomp/declare-target-1.C: Ditto. + * g++.dg/gomp/declare-target-2.C: Ditto. + * g++.dg/gomp/declare-target-3.C: Ditto. + * g++.dg/gomp/declare-target-indirect-1.C: Ditto. + * g++.dg/gomp/depend-iterator-2.C: Ditto. + * g++.dg/gomp/depobj-1.C: Ditto. + * g++.dg/gomp/doacross-2.C: Ditto. + * g++.dg/gomp/linear-1.C: Ditto. + * g++.dg/gomp/linear-2.C: Ditto. + * g++.dg/gomp/linear-3.C: Ditto. + * g++.dg/gomp/linear-5.C: Ditto. + * g++.dg/gomp/map-1.C: Ditto. + * g++.dg/gomp/pr118876.C: Ditto. + * g++.dg/gomp/pr119370.C: Ditto. + * g++.dg/gomp/sink-1.C: Ditto. + * g++.dg/gomp/sink-2.C: Ditto. + * g++.dg/gomp/sink-3.C: Ditto. + * g++.dg/gomp/target-simd-clone-1.C: Ditto. + * g++.dg/gomp/target-simd-clone-2.C: Ditto. + * g++.dg/gomp/target-teams-1.C: Ditto. + * g++.dg/gomp/udr-5.C: Ditto. + * gcc.dg/gomp/attrs-12.c: Ditto. + * gcc.dg/gomp/attrs-5.c: Ditto. + * gcc.dg/gomp/attrs-9.c: Ditto. + * gcc.dg/gomp/clause-1.c: Ditto. + * gcc.dg/gomp/declare-simd-3.c: Ditto. + * gcc.dg/gomp/linear-1.c: Ditto. + * gcc.dg/gomp/metadirective-1.c: Ditto. + * gcc.dg/gomp/pr104757.c: Ditto. + * gcc.dg/gomp/sink-fold-1.c: Ditto. + * gcc.dg/gomp/sink-fold-2.c: Ditto. + * gcc.dg/gomp/sink-fold-3.c: Ditto. + * gcc.dg/gomp/target-simd-clone-1.c: Ditto. + * gcc.dg/gomp/target-simd-clone-2.c: Ditto. + * gcc.dg/gomp/target-simd-clone-3.c: Ditto. + * gcc.dg/gomp/target-simd-clone-4.c: Ditto. + * gcc.dg/gomp/target-simd-clone-5.c: Ditto. + * gcc.dg/gomp/target-simd-clone-6.c: Ditto. + * gcc.dg/gomp/target-simd-clone-7.c: Ditto. + * gcc.dg/gomp/target-simd-clone-8.c: Ditto. + * gcc.dg/gomp/workshare-reduction-55.c: Ditto. + * gcc.dg/gomp/workshare-reduction-56.c: Ditto. + * gcc.dg/gomp/workshare-reduction-57.c: Ditto. + * gcc.dg/gomp/workshare-reduction-58.c: Ditto. + * c-c++-common/gomp/52-deps.c: New test. + * g++.dg/gomp/map-csm-dep.C: New test. + * gcc.dg/gomp/map-csm-dep.c: New test. + +2025-12-11 supers1ngular <supers1ngular@baylibre.com> + + * c-c++-common/cpp/openmp-define-3.c: Bump OMP version. + * c-c++-common/gomp/Wparentheses-1.c: Suppress deprecation + warnings. + * c-c++-common/gomp/Wparentheses-3.c: Ditto. + * c-c++-common/gomp/affinity-3.c: Ditto. + * c-c++-common/gomp/allocate-18.c: Ditto. + * c-c++-common/gomp/cancel-1.c: Ditto. + * c-c++-common/gomp/clause-dups-1.c: Ditto. + * c-c++-common/gomp/clauses-1.c: Suppress deprecation + warnings and fix misspelled directive. Add + '-Wunknown-pragmas'. + * c-c++-common/gomp/clauses-6.c: Suppress deprecation warnings. + * c-c++-common/gomp/declare-variant-1.c: Ditto. + * c-c++-common/gomp/declare-variant-2.c: Ditto. + * c-c++-common/gomp/depend-iterator-1.c: Ditto. + * c-c++-common/gomp/lastprivate-conditional-1.c: Ditto. + * c-c++-common/gomp/loop-1.c: Ditto. + * c-c++-common/gomp/loop-2.c: Ditto. + * c-c++-common/gomp/loop-3.c: Ditto. + * c-c++-common/gomp/loop-4.c: Ditto. + * c-c++-common/gomp/master-combined-1.c: Ditto. + * c-c++-common/gomp/master-combined-2.c: Ditto. + * c-c++-common/gomp/nesting-2.c: Ditto. + * c-c++-common/gomp/pr100902-1.c: Ditto. + * c-c++-common/gomp/pr61486-2.c: Ditto. + * c-c++-common/gomp/pr85696.c: Ditto. + * c-c++-common/gomp/pr85956.c: Ditto. + * c-c++-common/gomp/pr98187.c: Ditto. + * c-c++-common/gomp/pr99928-1.c: Ditto. + * c-c++-common/gomp/pr99928-10.c: Ditto. + * c-c++-common/gomp/pr99928-11.c: Ditto. + * c-c++-common/gomp/pr99928-12.c: Ditto. + * c-c++-common/gomp/pr99928-13.c: Ditto. + * c-c++-common/gomp/pr99928-14.c: Ditto. + * c-c++-common/gomp/pr99928-2.c: Ditto. + * c-c++-common/gomp/pr99928-3.c: Ditto. + * c-c++-common/gomp/pr99928-4.c: Ditto. + * c-c++-common/gomp/pr99928-5.c: Ditto. + * c-c++-common/gomp/pr99928-6.c: Ditto. + * c-c++-common/gomp/pr99928-7.c: Ditto. + * c-c++-common/gomp/pr99928-8.c: Ditto. + * c-c++-common/gomp/pr99928-9.c: Ditto. + * c-c++-common/gomp/task-detach-1.c: Ditto. + * c-c++-common/gomp/teams-2.c: Ditto. + * g++.dg/gomp/attrs-1.C: Ditto. + * g++.dg/gomp/attrs-2.C: Ditto. + * g++.dg/gomp/attrs-4.C: Ditto. + * g++.dg/gomp/block-0.C: Ditto. + * g++.dg/gomp/block-10.C: Ditto. + * g++.dg/gomp/block-5.C: Ditto. + * g++.dg/gomp/block-9.C: Ditto. + * g++.dg/gomp/depend-iterator-1.C: Ditto. + * g++.dg/gomp/master-1.C: Ditto. + * g++.dg/gomp/master-2.C: Ditto. + * g++.dg/gomp/master-3.C: Ditto. + * g++.dg/gomp/method-1.C: Ditto. + * g++.dg/gomp/pr29965-3.C: Ditto. + * g++.dg/gomp/pr29965-9.C: Ditto. + * g++.dg/gomp/pr78363-4.C: Ditto. + * g++.dg/gomp/pr78363-6.C: Ditto. + * g++.dg/gomp/pr79664.C: Ditto. + * g++.dg/gomp/pr94477.C: Ditto. + * g++.dg/gomp/pr94512.C: Ditto. + * g++.dg/gomp/tpl-master-1.C: Ditto. + * gcc.dg/gomp/appendix-a/a.12.1.c: Ditto. + * gcc.dg/gomp/appendix-a/a.33.2.c: Ditto. + * gcc.dg/gomp/attrs-1.c: Ditto. + * gcc.dg/gomp/attrs-2.c: Ditto. + * gcc.dg/gomp/attrs-4.c: Ditto. + * gcc.dg/gomp/block-10.c: Ditto. + * gcc.dg/gomp/block-5.c: Ditto. + * gcc.dg/gomp/block-9.c: Ditto. + * gcc.dg/gomp/master-1.c: Ditto. + * gcc.dg/gomp/master-2.c: Ditto. + * gcc.dg/gomp/master-3.c: Ditto. + * gcc.dg/gomp/nesting-1.c: Ditto. + * gcc.dg/gomp/pr104517.c: Ditto. + * gcc.dg/gomp/pr29965-3.c: Ditto. + * gcc.dg/gomp/pr35818.c: Ditto. + * gcc.dg/gomp/pr91216.c: Ditto. + * gcc.dg/gomp/sharing-2.c: Ditto. + * gfortran.dg/gomp/adjust-args-10.f90: Ditto. + * gfortran.dg/gomp/affinity-1.f90: Ditto. + * gfortran.dg/gomp/allocate-clause.f90: Ditto. + * gfortran.dg/gomp/appendix-a/a.12.1.f90: Ditto. + * gfortran.dg/gomp/appendix-a/a.33.2.f90: Ditto. + * gfortran.dg/gomp/c_ptr_tests_20.f90: Ditto. + * gfortran.dg/gomp/c_ptr_tests_21.f90: Ditto. + * gfortran.dg/gomp/cancel-1.f90: Ditto. + * gfortran.dg/gomp/clauses-1.f90: Ditto. + * gfortran.dg/gomp/declare-variant-1.f90: Ditto. + * gfortran.dg/gomp/depend-iterator-1.f90: Ditto. + * gfortran.dg/gomp/depend-iterator-2.f90: Ditto. + * gfortran.dg/gomp/is_device_ptr-1.f90: Ditto. + * gfortran.dg/gomp/is_device_ptr-2.f90: Ditto. + * gfortran.dg/gomp/is_device_ptr-3.f90: Ditto. + * gfortran.dg/gomp/lastprivate-conditional-1.f90: Ditto. + * gfortran.dg/gomp/loop-4.f90: Ditto. + * gfortran.dg/gomp/loop-exit.f90: Ditto. + * gfortran.dg/gomp/map-3.f90: Ditto. + * gfortran.dg/gomp/nesting-2.f90: Ditto. + * gfortran.dg/gomp/nesting-3.f90: Ditto. + * gfortran.dg/gomp/nowait-2.f90: Ditto. + * gfortran.dg/gomp/nowait-4.f90: Ditto. + * gfortran.dg/gomp/nowait-5.f90: Ditto. + * gfortran.dg/gomp/openmp-simd-2.f90: Ditto. + * gfortran.dg/gomp/openmp-simd-3.f90: Ditto. + * gfortran.dg/gomp/parallel-master-1.f90: Ditto. + * gfortran.dg/gomp/parallel-master-2.f90: Ditto. + * gfortran.dg/gomp/pr107214-8.f90: Ditto. + * gfortran.dg/gomp/pr48117.f90: Ditto. + * gfortran.dg/gomp/pr94672.f90: Ditto. + * gfortran.dg/gomp/pr99928-1.f90: Suppression + fix whitespace. + * gfortran.dg/gomp/pr99928-11.f90: Suppression. + * gfortran.dg/gomp/pr99928-2.f90: Suppression + fix whitespace. + * gfortran.dg/gomp/pr99928-3.f90: Ditto. + * gfortran.dg/gomp/pr99928-4.f90: Ditto. + * gfortran.dg/gomp/pr99928-5.f90: Ditto. + * gfortran.dg/gomp/pr99928-6.f90: Ditto. + * gfortran.dg/gomp/pr99928-8.f90: Ditto. + * gfortran.dg/gomp/sharing-3.f90: Suppress deprecation warnings. + * gfortran.dg/gomp/strictly-structured-block-1.f90: Ditto. + * gfortran.dg/gomp/strictly-structured-block-2.f90: Ditto. + * gfortran.dg/gomp/target1.f90: Ditto. + * gfortran.dg/gomp/taskloop-1.f90: Ditto. + * gfortran.dg/gomp/taskloop-2.f90: Ditto. + * gfortran.dg/openmp-define-3.f90: Bump expected version. + * c-c++-common/gomp/master-construct-dep.c: New test. + * gfortran.dg/gomp/master-construct-dep.f90: New test. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/aggr33.adb: New test. + +2025-12-11 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/tls/struct-2.c: New test. + +2025-12-10 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/i386/lea-3.c: Add -fno-PIE. + * gcc.target/i386/lea-4.c: New, with -fPIE. + +2025-12-10 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/sibcall-12.c: Add -fno-PIE on ia32. + * gcc.target/i386/pr106060-2.c: Likewise. + * gcc.target/i386/pr106060-3.c: Likewise. + * gcc.target/i386/vect-shiftv4qi.c: Likewise. + +2025-12-10 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/123069 + * gcc.c-torture/compile/pr123069.c: New test. + +2025-12-10 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/sign-int-2.a68: New test. + * algol68/execute/sign-real-2.a68: Likewise. + +2025-12-10 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/mult-char-1.a68: Cover int*char cases. + +2025-12-10 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/compile-std1.C: Test <vector> translation. + +2025-12-10 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/compile-std1.C: Add dg-module-cmi lines. + * g++.dg/modules/modules.exp (host_header_path): New. + (munge_cmi): Factor out... + (dg-module-cmi): ...from here. + +2025-12-10 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr123074.C: Move to... + * g++.target/riscv/rvv/autovec/pr123074.C: ...here. + * gcc.target/riscv/rvv/rvv.exp: Remove 'C'. + +2025-12-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * g++.dg/lookup/extern-c-redecl3.C (pid_t): Define. + Use it for fork return type. + terms of __builtin_fork. + * g++.dg/pid_t-1.C: New test. + * gcc.dg/pid_t-1.c: Likewise. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/123074 + * gcc.target/riscv/rvv/rvv.exp: Include *.C. + * gcc.target/riscv/rvv/autovec/pr123074.C: New test. + +2025-12-09 Qing Zhao <qing.zhao@oracle.com> + + PR c/122982 + * gcc.dg/pointer-counted-by-pr122982.c: New test. + +2025-12-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmslt.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmslt-run-1-i8.c: New test. + +2025-12-09 Richard Biener <rguenther@suse.de> + + PR target/121230 + * gcc.target/i386/pr121230.c: New testcase. + +2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + Revert: + 2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * g++.dg/modules/tpl-friend-22.C: New test. + +2025-12-09 Jakub Jelinek <jakub@redhat.com> + + PR c/123018 + * gcc.dg/pr123018.c: New test. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122635 + * gcc.target/aarch64/sve/pfalse-store.c: Expect more elided + stores. + * gcc.target/riscv/rvv/autovec/pr122635-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr122635-2.c: New test. + * gcc.target/powerpc/p9-vec-length-epil-8.c: Expect two lxvl + less. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/max-vect-1.c: New test. + * gcc.target/riscv/rvv/autovec/max-vect-2.c: New test. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR target/123022 + * gcc.target/riscv/rvv/autovec/pr123022-2.c: New test. + * gcc.target/riscv/rvv/autovec/pr123022.c: New test. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + PR target/115325 + * gcc.target/riscv/pragma-target-1.c: New test. + * gcc.target/riscv/pragma-target-2.c: New test. + +2025-12-09 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-1-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-1.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-2-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-2.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-3-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-3.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-4-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-4.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-5-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-5.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-6-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-6.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-7-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-7.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-8-run.c: New test. + * gcc.target/riscv/rvv/autovec/reduc/reduc-bool-8.c: New test. + +2025-12-09 Richard Biener <rguenther@suse.de> + + PR target/123027 + * gcc.target/i386/pr123027.c: New testcase. + * gcc.dg/torture/pr123027.c: Likewise. + +2025-12-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122819 + * g++.dg/modules/tpl-friend-22.C: New test. + +2025-12-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/46555 + * gcc.dg/tree-ssa/pr46555.c: New test. + +2025-12-08 Harald Anlauf <anlauf@gmx.de> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/123025 + * gfortran.dg/assumed_charlen_dummy.f90: These tests failed + with the change because of the default -pedantic option + used by the dg.exp mechanisms. Overide this default. + * gfortran.dg/automatic_char_len_1.f90: Ditto. + * gfortran.dg/entry_23.f: Ditto. + * gfortran.dg/finalize_59.f90: Dito. + * gfortran.dg/g77/f90-intrinsic-bit.f: Ditto. + * gfortran.dg/g77/f90-intrinsic-mathematical.f: Ditto. + * gfortran.dg/g77/f90-intrinsic-numeric.f: Ditto. + * gfortran.dg/g77/intrinsic-unix-bessel.f: Ditto. + * gfortran.dg/g77/intrinsic-unix-erf.f: Ditto. + * gfortran.dg/initialization_9.f90: Ditto. + * gfortran.dg/intrinsic_actual_4.f90: Ditto. + * gfortran.dg/namelist_assumed_char.f90: Ditto. + * gfortran.dg/pr15140.f90: Ditto. + +2025-12-08 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/119343 + * g++.dg/template/sfinae-deleted-pr119343.C: New test. + +2025-12-08 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/tls/data-sections-1.c: New test. + +2025-12-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123040 + * g++.dg/torture/pr123040.C: New testcase. + +2025-12-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123038 + * gcc.dg/vect/pr123038.c: New testcase. + +2025-12-08 Tamar Christina <tamar.christina@arm.com> + + PR target/123026 + * gcc.target/aarch64/pr123026.c: New test. + +2025-12-08 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * gcc.target/i386/avx2-vpcmpgtq-1.c: Compile with + -fno-fuse-ops-with-volatile-access. + +2025-12-07 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/reduce3.adb: New test. + +2025-12-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/122343 + * gcc.target/i386/20040112-1.c: Add -fomit-frame-pointer and use + check-function-bodies to check for loop. + * gcc.target/i386/avx-ne-convert-1.c: Compile with + -fno-fuse-ops-with-volatile-access. + * gcc.target/i386/avx10_2-bf16-1.c: Likewise. + * gcc.target/i386/avx10_2-convert-1.c: Likewise. + * gcc.target/i386/avx10_2-satcvt-1.c: Likewise. + * gcc.target/i386/avx512bf16-vcvtneps2bf16-1.c: Likewise. + * gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1a.c: Likewise. + * gcc.target/i386/avx512bf16vl-vcvtneps2bf16-1b.c: Likewise. + * gcc.target/i386/avx512bitalg-vpshufbitqmb.c: Likewise. + * gcc.target/i386/avx512bw-vpcmpb-1.c: Likewise. + * gcc.target/i386/avx512bw-vpcmpub-1.c: Likewise. + * gcc.target/i386/avx512bw-vpcmpuw-1.c: Likewise. + * gcc.target/i386/avx512bw-vpcmpw-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtps2qq-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtps2uqq-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtqq2pd-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtqq2ps-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvttps2qq-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvttps2uqq-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtuqq2pd-1.c: Likewise. + * gcc.target/i386/avx512dq-vcvtuqq2ps-1.c: Likewise. + * gcc.target/i386/avx512dq-vextractf32x8-1.c: Likewise. + * gcc.target/i386/avx512dq-vextractf64x2-1.c: Likewise. + * gcc.target/i386/avx512dq-vextracti64x2-1.c: Likewise. + * gcc.target/i386/avx512dq-vfpclasspd-1.c: Likewise. + * gcc.target/i386/avx512dq-vfpclassps-1.c: Likewise. + * gcc.target/i386/avx512dq-vfpclasssd-1.c: Likewise. + * gcc.target/i386/avx512dq-vfpclassss-1.c: Likewise. + * gcc.target/i386/avx512dq-vpmullq-1.c: Likewise. + * gcc.target/i386/avx512dq-vpmullq-3.c: Likewise. + * gcc.target/i386/avx512f-pr100267-1.c: Likewise. + * gcc.target/i386/avx512f-vcmppd-1.c: Likewise. + * gcc.target/i386/avx512f-vcmpps-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtps2pd-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtsd2si-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtsd2si64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtsd2usi-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtsd2usi64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtsi2ss-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtss2si-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtss2si64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtss2usi-1.c: Likewise. + * gcc.target/i386/avx512f-vcvtss2usi64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttsd2si-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttsd2si64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttsd2usi-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttsd2usi64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttss2si-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttss2si64-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttss2usi-1.c: Likewise. + * gcc.target/i386/avx512f-vcvttss2usi64-1.c: Likewise. + * gcc.target/i386/avx512f-vextractf32x4-1.c: Likewise. + * gcc.target/i386/avx512f-vextractf64x4-1.c: Likewise. + * gcc.target/i386/avx512f-vextracti64x4-1.c: Likewise. + * gcc.target/i386/avx512f-vmovapd-1.c: Likewise. + * gcc.target/i386/avx512f-vmovaps-1.c: Likewise. + * gcc.target/i386/avx512f-vmovdqa64-1.c: Likewise. + * gcc.target/i386/avx512f-vpandnq-1.c: Likewise. + * gcc.target/i386/avx512f-vpbroadcastd-1.c: Likewise. + * gcc.target/i386/avx512f-vpbroadcastq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpd-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpeqq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpequq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpged-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpgeq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpgeud-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpgeuq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpled-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpleq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpleud-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpleuq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpltd-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpltq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpltud-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpltuq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpneqd-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpneqq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpnequd-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpnequq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpq-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpud-1.c: Likewise. + * gcc.target/i386/avx512f-vpcmpuq-1.c: Likewise. + * gcc.target/i386/avx512f-vrndscalepd-1.c: Likewise. + * gcc.target/i386/avx512f-vrndscaleps-1.c: Likewise. + * gcc.target/i386/avx512fp16-complex-fma.c: Likewise. + * gcc.target/i386/avx512fp16-vaddph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtpd2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2dq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2pd-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2psx-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2qq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2udq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2uqq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2uw-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtph2w-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtps2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtqq2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2dq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2qq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2udq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2uqq-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2uw-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvttph2w-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vcvtuqq2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfcmaddcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfcmulcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfmaddcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfmulcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfpclassph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vfpclasssh-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vmulph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vrcpph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vrsqrtph-1a.c: Likewise. + * gcc.target/i386/avx512fp16-vsqrtph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vaddph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtpd2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2dq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2psx-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2qq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2udq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2uqq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2uw-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtph2w-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtps2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtqq2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvttph2dq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvttph2udq-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvttph2uw-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvttph2w-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vcvtuqq2ph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vfcmaddcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vfcmulcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vfmaddcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vfmulcph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vfpclassph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vmulph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vrcpph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vrsqrtph-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-vsqrtph-1a.c: Likewise. + * gcc.target/i386/avx512vl-pr100267-1.c: Likewise. + * gcc.target/i386/avx512vl-vcmppd-1.c: Likewise. + * gcc.target/i386/avx512vl-vcmpps-1.c: Likewise. + * gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Likewise. + * gcc.target/i386/avx512vl-vcvtpd2udq-1.c: Likewise. + * gcc.target/i386/avx512vl-vcvttpd2udq-1.c: Likewise. + * gcc.target/i386/avx512vl-vcvttps2udq-1.c: Likewise. + * gcc.target/i386/avx512vl-vextractf32x4-1.c: Likewise. + * gcc.target/i386/avx512vl-vmovapd-1.c: Likewise. + * gcc.target/i386/avx512vl-vmovaps-1.c: Likewise. + * gcc.target/i386/avx512vl-vmovdqa64-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpd-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpeqq-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpequq-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpq-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpud-1.c: Likewise. + * gcc.target/i386/avx512vl-vpcmpuq-1.c: Likewise. + * gcc.target/i386/pr122343-1a.c: New test. + * gcc.target/i386/pr122343-1b.c: Likewise. + * gcc.target/i386/pr122343-2a.c: Likewise. + * gcc.target/i386/pr122343-2b.c: Likewise. + * gcc.target/i386/pr122343-3.c: Likewise. + * gcc.target/i386/pr122343-4a.c: Likewise. + * gcc.target/i386/pr122343-4b.c: Likewise. + * gcc.target/i386/pr122343-5a.c: Likewise. + * gcc.target/i386/pr122343-5b.c: Likewise. + * gcc.target/i386/pr122343-6a.c: Likewise. + * gcc.target/i386/pr122343-6b.c: Likewise. + * gcc.target/i386/pr122343-7.c: Likewise. + +2025-12-06 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/122947 + * gcc.dg/pr122947.c: New. + +2025-12-06 Alexandre Oliva <oliva@adacore.com> + + PR target/91420 + * gcc.target/riscv/pr91420.c: New. + +2025-12-06 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122675 + * gcc.target/riscv/pr122675-1.c: Adjust expected output. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/103414 + * gfortran.dg/pdt_76.f03: New test. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122693 + * gfortran.dg/pdt_75.f03: New test. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122670 + * gfortran.dg/pdt_74.f03: New test. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122669 + * gfortran.dg/pdt_73.f03: New test. + +2025-12-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122578 + * gfortran.dg/pdt_72.f03: New test. + +2025-12-06 Dimitar Dimitrov <dimitar@dinux.eu> + + PR rtl-optimization/122675 + * gcc.target/aarch64/pr122675-1.c: New test. + * gcc.target/i386/pr122675-1.c: New test. + * gcc.target/riscv/pr122675-1.c: New test. + +2025-12-06 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/99782 + * gcc.dg/torture/pr99782-1.c: Fix typo, dg-compile -> dg-do compile. + Use int128 effective target directly on that directive. Move PR + comment first. + +2025-12-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/torture/pr99782-1.c: Require intt128 target. + +2025-12-05 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/122215 + * gcc.target/riscv/pr122215.c: New. + * lib/target-supports.exp (check_effective_target_valgrind): New. + +2025-12-05 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122977 + * gfortran.dg/contiguous_16.f90: New test. + +2025-12-05 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/gomp/dyn_groupprivate-1.f90: Fix + scan-tree-dump-times regexp to avoid hard-coded 'D.4680'. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120939 + * gcc.dg/torture/pr113026-1.c: Skip when -ftracer. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123002 + * gcc.dg/vect/vect-pr123002.c: Make global data non-const + and non-static. + +2025-12-05 Denis Mazzucato <mazzucato@adacore.com> + + * gnat.dg/reduce1.adb: Adjust expected error message. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/123002 + * gcc.dg/vect/vect-pr123002.c: New testcase. + +2025-12-05 Richard Biener <rguenther@suse.de> + + * gcc.dg/gimplefe-58.c: New testcase. + +2025-12-05 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/gomp/dyn_groupprivate-1.f90: Add scan-dump test. + * gfortran.dg/gomp/dyn_groupprivate-2.f90: Extend and update. + * c-c++-common/gomp/dyn_groupprivate-1.c: New test. + * c-c++-common/gomp/dyn_groupprivate-2.c: New test. + +2025-12-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122776 + * gcc.dg/vect/vect-simd-clone-24.c: Add -mprefer-vector-width=512. + +2025-12-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/99782 + * gcc.dg/torture/pr99782-1.c: New test. + +2025-12-05 Daniel Barboza <dbarboza@ventanamicro.com> + Jeff Law <jlaw@ventanamicro.com> + + * gcc.dg/torture/pr122615.c: New test. + * gcc.dg/torture/pr122616.c: Likewise. + +2025-12-05 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vmsltu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsltu-run-1-u8.c: New test. + +2025-12-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122776 + * gcc.dg/vect/vect-simd-clone-24.c: New testcase. + * gcc.dg/gomp/pr110485.c: Adjust. + +2025-12-04 Martin Jambor <mjambor@suse.cz> + + * gcc.dg/tree-ssa/vrp-from-cst-agg-1.c: New test. + * gcc.dg/tree-ssa/vrp-from-cst-agg-2.c: Likewise. + * gcc.dg/tree-ssa/vrp-from-cst-agg-3.c: Likewise. + * gcc.dg/tree-ssa/vrp-from-cst-agg-4.c: Likewise. + * gcc.dg/tree-ssa/vrp-from-cst-agg-5.c: Likewise. + * gcc.dg/tree-ssa/vrp-from-cst-agg-6.c: Likewise. + * gcc.dg/tree-ssa/vrp-from-cst-agg-7.c: Likewise. + * gcc.dg/ipa/vrp-from-cst-agg-1.c: Likewise. + +2025-12-04 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/asm-hard-reg-9.c: Restrict to lp64 x86_64. + +2025-12-04 Jakub Jelinek <jakub@redhat.com> + + PR target/122991 + * gcc.dg/pr122991.c: New test. + +2025-12-04 Jakub Jelinek <jakub@redhat.com> + + PR target/122983 + * g++.dg/cpp26/decomp18.C: Add dg-add-options tls and + dg-require-effective-target tls_runtime directives. + +2025-12-04 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/asm-hard-reg-9.c: New test. + +2025-12-03 Joseph Myers <josmyers@redhat.com> + + * lib/gcc-defs.exp (handle-dg-regexps): Also escape \r in output. + +2025-12-03 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122943 + * gcc.c-torture/execute/pr122943.c: New test. + +2025-12-03 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/122898 + * gcc.dg/pr122898.c: New. + +2025-12-03 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122969 + * gcc.dg/vect/pr122969.c: New test. + +2025-12-03 Mathias Krause <minipli@grsecurity.net> + + * gcc.target/i386/nop-mcount-m16.c: New test. + * gcc.target/i386/nop-mcount.c: Adapt to test for 5-byte NOP. + +2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/lang_feature_gate.rs: New test. + +2025-12-03 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/core/core.exp: Change -frust-compile-until=astvalidation + to -frust-compile-until=nameresolution. + +2025-12-03 Raiki Tamura <tamaron1203@gmail.com> + + * rust/borrowck/reference.rs: Add attributes. + * rust/borrowck/tmp.rs: Likewise. + * rust/compile/additional-trait-bounds1.rs: Likewise. + * rust/compile/additional-trait-bounds2.rs: Likewise. + * rust/compile/additional-trait-bounds2nr2.rs: Likewise. + * rust/compile/auto_traits1.rs: Likewise. + * rust/compile/auto_traits2.rs: Likewise. + * rust/compile/bad-rpit1.rs: Likewise. + * rust/compile/black_box.rs: Likewise. + * rust/compile/bounds1.rs: Likewise. + * rust/compile/box_syntax_feature_gate.rs: Likewise. + * rust/compile/bug-with-default-generic.rs: Likewise. + * rust/compile/canonical_paths1.rs: Likewise. + * rust/compile/cast_generics.rs: Likewise. + * rust/compile/closure_no_type_anno.rs: Likewise. + * rust/compile/cmp1.rs: Likewise. + * rust/compile/complex_qualified_path_in_expr.rs: Likewise. + * rust/compile/const-issue1440.rs: Likewise. + * rust/compile/const_generics_1.rs: Likewise. + * rust/compile/const_generics_10.rs: Likewise. + * rust/compile/const_generics_11.rs: Likewise. + * rust/compile/const_generics_12.rs: Likewise. + * rust/compile/const_generics_13.rs: Likewise. + * rust/compile/const_generics_14.rs: Likewise. + * rust/compile/const_generics_15.rs: Likewise. + * rust/compile/const_generics_16.rs: Likewise. + * rust/compile/const_generics_18.rs: Likewise. + * rust/compile/const_generics_19.rs: Likewise. + * rust/compile/const_generics_3.rs: Likewise. + * rust/compile/const_generics_8.rs: Likewise. + * rust/compile/const_generics_9.rs: Likewise. + * rust/compile/derive-debug1.rs: Likewise. + * rust/compile/derive-default1.rs: Likewise. + * rust/compile/derive-eq-invalid.rs: Likewise. + * rust/compile/derive-hash1.rs: Likewise. + * rust/compile/derive-partialeq1.rs: Likewise. + * rust/compile/derive_clone_enum1.rs: Likewise. + * rust/compile/derive_clone_enum2.rs: Likewise. + * rust/compile/derive_clone_enum3.rs: Likewise. + * rust/compile/derive_macro1.rs: Likewise. + * rust/compile/derive_macro3.rs: Likewise. + * rust/compile/derive_macro4.rs: Likewise. + * rust/compile/derive_macro6.rs: Likewise. + * rust/compile/derive_partial_ord1.rs: Likewise. + * rust/compile/expand_macro_qual_path_in_type.rs: Likewise. + * rust/compile/expected_type_args2.rs: Likewise. + * rust/compile/expected_type_args3.rs: Likewise. + * rust/compile/extern_generics.rs: Likewise. + * rust/compile/for-loop1.rs: Likewise. + * rust/compile/for-loop2.rs: Likewise. + * rust/compile/format_args_basic_expansion.rs: Likewise. + * rust/compile/format_args_concat.rs: Likewise. + * rust/compile/format_args_extra_comma.rs: Likewise. + * rust/compile/generics1.rs: Likewise. + * rust/compile/generics11.rs: Likewise. + * rust/compile/generics12.rs: Likewise. + * rust/compile/generics2.rs: Likewise. + * rust/compile/generics3.rs: Likewise. + * rust/compile/generics4.rs: Likewise. + * rust/compile/generics6.rs: Likewise. + * rust/compile/generics7.rs: Likewise. + * rust/compile/generics8.rs: Likewise. + * rust/compile/if_let_expr.rs: Likewise. + * rust/compile/impl_fnptr.rs: Likewise. + * rust/compile/impl_trait_diag.rs: Likewise. + * rust/compile/impl_trait_generic_arg.rs: Likewise. + * rust/compile/issue-1005.rs: Likewise. + * rust/compile/issue-1019.rs: Likewise. + * rust/compile/issue-1031.rs: Likewise. + * rust/compile/issue-1034.rs: Likewise. + * rust/compile/issue-1128.rs: Likewise. + * rust/compile/issue-1129-2.rs: Likewise. + * rust/compile/issue-1130.rs: Likewise. + * rust/compile/issue-1131.rs: Likewise. + * rust/compile/issue-1165.rs: Likewise. + * rust/compile/issue-1173.rs: Likewise. + * rust/compile/issue-1235.rs: Likewise. + * rust/compile/issue-1237.rs: Likewise. + * rust/compile/issue-1289.rs: Likewise. + * rust/compile/issue-1383.rs: Likewise. + * rust/compile/issue-1447.rs: Likewise. + * rust/compile/issue-1483.rs: Likewise. + * rust/compile/issue-1485.rs: Likewise. + * rust/compile/issue-1487.rs: Likewise. + * rust/compile/issue-1589.rs: Likewise. + * rust/compile/issue-1725-1.rs: Likewise. + * rust/compile/issue-1725-2.rs: Likewise. + * rust/compile/issue-1786.rs: Likewise. + * rust/compile/issue-1893.rs: Likewise. + * rust/compile/issue-1901.rs: Likewise. + * rust/compile/issue-1930.rs: Likewise. + * rust/compile/issue-1981.rs: Likewise. + * rust/compile/issue-2015.rs: Likewise. + * rust/compile/issue-2019-1.rs: Likewise. + * rust/compile/issue-2019-2.rs: Likewise. + * rust/compile/issue-2019-3.rs: Likewise. + * rust/compile/issue-2036.rs: Likewise. + * rust/compile/issue-2037.rs: Likewise. + * rust/compile/issue-2070.rs: Likewise. + * rust/compile/issue-2105.rs: Likewise. + * rust/compile/issue-2106.rs: Likewise. + * rust/compile/issue-2135.rs: Likewise. + * rust/compile/issue-2136-1.rs: Likewise. + * rust/compile/issue-2136-2.rs: Likewise. + * rust/compile/issue-2139.rs: Likewise. + * rust/compile/issue-2142.rs: Likewise. + * rust/compile/issue-2165.rs: Likewise. + * rust/compile/issue-2166.rs: Likewise. + * rust/compile/issue-2190-1.rs: Likewise. + * rust/compile/issue-2190-2.rs: Likewise. + * rust/compile/issue-2195.rs: Likewise. + * rust/compile/issue-2238.rs: Likewise. + * rust/compile/issue-2304.rs: Likewise. + * rust/compile/issue-2323.rs: Likewise. + * rust/compile/issue-2330.rs: Likewise. + * rust/compile/issue-2369.rs: Likewise. + * rust/compile/issue-2375.rs: Likewise. + * rust/compile/issue-2478.rs: Likewise. + * rust/compile/issue-2499.rs: Likewise. + * rust/compile/issue-2723-1.rs: Likewise. + * rust/compile/issue-2723-2.rs: Likewise. + * rust/compile/issue-2725.rs: Likewise. + * rust/compile/issue-2747.rs: Likewise. + * rust/compile/issue-2772-1.rs: Likewise. + * rust/compile/issue-2772-2.rs: Likewise. + * rust/compile/issue-2775.rs: Likewise. + * rust/compile/issue-2782.rs: Likewise. + * rust/compile/issue-2907.rs: Likewise. + * rust/compile/issue-2951.rs: Likewise. + * rust/compile/issue-2953-1.rs: Likewise. + * rust/compile/issue-2953-2.rs: Likewise. + * rust/compile/issue-2954.rs: Likewise. + * rust/compile/issue-2987.rs: Likewise. + * rust/compile/issue-3009.rs: Likewise. + * rust/compile/issue-3022.rs: Likewise. + * rust/compile/issue-3030.rs: Likewise. + * rust/compile/issue-3032-1.rs: Likewise. + * rust/compile/issue-3032-2.rs: Likewise. + * rust/compile/issue-3033.rs: Likewise. + * rust/compile/issue-3035.rs: Likewise. + * rust/compile/issue-3036.rs: Likewise. + * rust/compile/issue-3045-1.rs: Likewise. + * rust/compile/issue-3045-2.rs: Likewise. + * rust/compile/issue-3144.rs: Likewise. + * rust/compile/issue-3242.rs: Likewise. + * rust/compile/issue-3304.rs: Likewise. + * rust/compile/issue-3382.rs: Likewise. + * rust/compile/issue-3402-1.rs: Likewise. + * rust/compile/issue-3402-2.rs: Likewise. + * rust/compile/issue-3403.rs: Likewise. + * rust/compile/issue-3454.rs: Likewise. + * rust/compile/issue-3551.rs: Likewise. + * rust/compile/issue-3554-2.rs: Likewise. + * rust/compile/issue-3599.rs: Likewise. + * rust/compile/issue-3642.rs: Likewise. + * rust/compile/issue-3711.rs: Likewise. + * rust/compile/issue-3836.rs: Likewise. + * rust/compile/issue-3898.rs: Likewise. + * rust/compile/issue-3915.rs: Likewise. + * rust/compile/issue-3916.rs: Likewise. + * rust/compile/issue-3969.rs: Likewise. + * rust/compile/issue-402.rs: Likewise. + * rust/compile/issue-4090-1.rs: Likewise. + * rust/compile/issue-4090-2.rs: Likewise. + * rust/compile/issue-850.rs: Likewise. + * rust/compile/issue-855.rs: Likewise. + * rust/compile/issue-925.rs: Likewise. + * rust/compile/iterators1.rs: Likewise. + * rust/compile/macros/builtin/option_env1.rs: Likewise. + * rust/compile/macros/builtin/option_env2.rs: Likewise. + * rust/compile/macros/builtin/option_env3.rs: Likewise. + * rust/compile/macros/mbe/macro-issue1400.rs: Likewise. + * rust/compile/macros/mbe/macro-issue3708.rs: Likewise. + * rust/compile/macros/mbe/macro-issue3709-2.rs: Likewise. + * rust/compile/macros/mbe/macro20.rs: Likewise. + * rust/compile/macros/mbe/macro23.rs: Likewise. + * rust/compile/macros/mbe/macro40.rs: Likewise. + * rust/compile/macros/mbe/macro49.rs: Likewise. + * rust/compile/macros/mbe/macro54.rs: Likewise. + * rust/compile/multiple_bindings1.rs: Likewise. + * rust/compile/name_resolution2.rs: Likewise. + * rust/compile/name_resolution4.rs: Likewise. + * rust/compile/nested_generic.rs: Likewise. + * rust/compile/parse_associated_type_as_generic_arg.rs: Likewise. + * rust/compile/parse_associated_type_as_generic_arg2.rs: Likewise. + * rust/compile/parse_associated_type_as_generic_arg3.rs: Likewise. + * rust/compile/parse_closure_bind.rs: Likewise. + * rust/compile/parse_complex_generic_application.rs: Likewise. + * rust/compile/parse_complex_generic_application2.rs: Likewise. + * rust/compile/path_as_generic_arg.rs: Likewise. + * rust/compile/privacy4.rs: Likewise. + * rust/compile/privacy6.rs: Likewise. + * rust/compile/silly-order-bug.rs: Likewise. + * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. + * rust/compile/stmt_with_block_dot.rs: Likewise. + * rust/compile/structural-eq-peq.rs: Likewise. + * rust/compile/torture/associated_types1.rs: Likewise. + * rust/compile/torture/forward_decl_5.rs: Likewise. + * rust/compile/torture/generics1.rs: Likewise. + * rust/compile/torture/generics10.rs: Likewise. + * rust/compile/torture/generics11.rs: Likewise. + * rust/compile/torture/generics12.rs: Likewise. + * rust/compile/torture/generics13.rs: Likewise. + * rust/compile/torture/generics14.rs: Likewise. + * rust/compile/torture/generics15.rs: Likewise. + * rust/compile/torture/generics16.rs: Likewise. + * rust/compile/torture/generics17.rs: Likewise. + * rust/compile/torture/generics18.rs: Likewise. + * rust/compile/torture/generics19.rs: Likewise. + * rust/compile/torture/generics2.rs: Likewise. + * rust/compile/torture/generics20.rs: Likewise. + * rust/compile/torture/generics21.rs: Likewise. + * rust/compile/torture/generics22.rs: Likewise. + * rust/compile/torture/generics23.rs: Likewise. + * rust/compile/torture/generics24.rs: Likewise. + * rust/compile/torture/generics25.rs: Likewise. + * rust/compile/torture/generics26.rs: Likewise. + * rust/compile/torture/generics27.rs: Likewise. + * rust/compile/torture/generics28.rs: Likewise. + * rust/compile/torture/generics29.rs: Likewise. + * rust/compile/torture/generics3.rs: Likewise. + * rust/compile/torture/generics30.rs: Likewise. + * rust/compile/torture/generics31.rs: Likewise. + * rust/compile/torture/generics32.rs: Likewise. + * rust/compile/torture/generics4.rs: Likewise. + * rust/compile/torture/generics5.rs: Likewise. + * rust/compile/torture/generics6.rs: Likewise. + * rust/compile/torture/generics7.rs: Likewise. + * rust/compile/torture/generics8.rs: Likewise. + * rust/compile/torture/generics9.rs: Likewise. + * rust/compile/torture/intrinsics-2.rs: Likewise. + * rust/compile/torture/intrinsics-4.rs: Likewise. + * rust/compile/torture/intrinsics-5.rs: Likewise. + * rust/compile/torture/intrinsics-6.rs: Likewise. + * rust/compile/torture/intrinsics-7.rs: Likewise. + * rust/compile/torture/intrinsics-8.rs: Likewise. + * rust/compile/torture/issue-1024.rs: Likewise. + * rust/compile/torture/issue-1075.rs: Likewise. + * rust/compile/torture/issue-1432.rs: Likewise. + * rust/compile/torture/issue-1555.rs: Likewise. + * rust/compile/torture/issue-368.rs: Likewise. + * rust/compile/torture/issue-808.rs: Likewise. + * rust/compile/torture/issue-862.rs: Likewise. + * rust/compile/torture/issue-893-2.rs: Likewise. + * rust/compile/torture/issue-893.rs: Likewise. + * rust/compile/torture/must_use2.rs: Likewise. + * rust/compile/torture/nested_fn2.rs: Likewise. + * rust/compile/torture/phantom_data.rs: Likewise. + * rust/compile/torture/range-lang-item1.rs: Likewise. + * rust/compile/torture/traits1.rs: Likewise. + * rust/compile/torture/traits10.rs: Likewise. + * rust/compile/torture/traits11.rs: Likewise. + * rust/compile/torture/traits12.rs: Likewise. + * rust/compile/torture/traits13.rs: Likewise. + * rust/compile/torture/traits14.rs: Likewise. + * rust/compile/torture/traits15.rs: Likewise. + * rust/compile/torture/traits16.rs: Likewise. + * rust/compile/torture/traits17.rs: Likewise. + * rust/compile/torture/traits18.rs: Likewise. + * rust/compile/torture/traits19.rs: Likewise. + * rust/compile/torture/traits2.rs: Likewise. + * rust/compile/torture/traits3.rs: Likewise. + * rust/compile/torture/traits4.rs: Likewise. + * rust/compile/torture/traits5.rs: Likewise. + * rust/compile/torture/traits6.rs: Likewise. + * rust/compile/torture/traits7.rs: Likewise. + * rust/compile/torture/traits8.rs: Likewise. + * rust/compile/torture/traits9.rs: Likewise. + * rust/compile/torture/transmute-size-check-1.rs: Likewise. + * rust/compile/torture/transmute1.rs: Likewise. + * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. + * rust/compile/torture/utf8_identifiers.rs: Likewise. + * rust/compile/traits1.rs: Likewise. + * rust/compile/traits10.rs: Likewise. + * rust/compile/traits11.rs: Likewise. + * rust/compile/traits12.rs: Likewise. + * rust/compile/traits2.rs: Likewise. + * rust/compile/traits3.rs: Likewise. + * rust/compile/traits4.rs: Likewise. + * rust/compile/traits5.rs: Likewise. + * rust/compile/traits6.rs: Likewise. + * rust/compile/traits7.rs: Likewise. + * rust/compile/traits8.rs: Likewise. + * rust/compile/traits9.rs: Likewise. + * rust/compile/try-expr1.rs: Likewise. + * rust/compile/try-trait.rs: Likewise. + * rust/compile/try_block1.rs: Likewise. + * rust/compile/type-bindings1.rs: Likewise. + * rust/compile/unconstrained_type_param.rs: Likewise. + * rust/compile/unify-errors1.rs: Likewise. + * rust/compile/unsafe10.rs: Likewise. + * rust/compile/v0-mangle1.rs: Likewise. + * rust/compile/v0-mangle2.rs: Likewise. + * rust/compile/while_let1.rs: Likewise. + * rust/execute/black_box.rs: Likewise. + * rust/execute/torture/atomic_load.rs: Likewise. + * rust/execute/torture/atomic_store.rs: Likewise. + * rust/execute/torture/basic_partial_ord1.rs: Likewise. + * rust/execute/torture/basic_partial_ord2.rs: Likewise. + * rust/execute/torture/builtin_macro_option_env.rs: Likewise. + * rust/execute/torture/closure1.rs: Likewise. + * rust/execute/torture/closure2.rs: Likewise. + * rust/execute/torture/closure3.rs: Likewise. + * rust/execute/torture/closure4.rs: Likewise. + * rust/execute/torture/coercion1.rs: Likewise. + * rust/execute/torture/coercion2.rs: Likewise. + * rust/execute/torture/coercion3.rs: Likewise. + * rust/execute/torture/const-generics-1.rs: Likewise. + * rust/execute/torture/const-generics-2.rs: Likewise. + * rust/execute/torture/const-generics-3.rs: Likewise. + * rust/execute/torture/const-generics-4.rs: Likewise. + * rust/execute/torture/const-generics-5.rs: Likewise. + * rust/execute/torture/const-generics-6.rs: Likewise. + * rust/execute/torture/const-generics-7.rs: Likewise. + * rust/execute/torture/copy_nonoverlapping1.rs: Likewise. + * rust/execute/torture/derive-default1.rs: Likewise. + * rust/execute/torture/derive-partialeq1.rs: Likewise. + * rust/execute/torture/derive-partialeq2.rs: Likewise. + * rust/execute/torture/derive_clone_enum1.rs: Likewise. + * rust/execute/torture/derive_macro1.rs: Likewise. + * rust/execute/torture/derive_macro3.rs: Likewise. + * rust/execute/torture/derive_macro4.rs: Likewise. + * rust/execute/torture/enum_intrinsics1.rs: Likewise. + * rust/execute/torture/enum_intrinsics2.rs: Likewise. + * rust/execute/torture/for-loop1.rs: Likewise. + * rust/execute/torture/for-loop2.rs: Likewise. + * rust/execute/torture/gat1.rs: Likewise. + * rust/execute/torture/impl_desugar-2.rs: Likewise. + * rust/execute/torture/impl_desugar.rs: Likewise. + * rust/execute/torture/impl_rpit1.rs: Likewise. + * rust/execute/torture/impl_rpit2.rs: Likewise. + * rust/execute/torture/impl_rpit3.rs: Likewise. + * rust/execute/torture/impl_trait1.rs: Likewise. + * rust/execute/torture/impl_trait2.rs: Likewise. + * rust/execute/torture/impl_trait3.rs: Likewise. + * rust/execute/torture/impl_trait4.rs: Likewise. + * rust/execute/torture/index1.rs: Likewise. + * rust/execute/torture/issue-1120.rs: Likewise. + * rust/execute/torture/issue-1133.rs: Likewise. + * rust/execute/torture/issue-1198.rs: Likewise. + * rust/execute/torture/issue-1232.rs: Likewise. + * rust/execute/torture/issue-1249.rs: Likewise. + * rust/execute/torture/issue-1436.rs: Likewise. + * rust/execute/torture/issue-1481.rs: Likewise. + * rust/execute/torture/issue-1482.rs: Likewise. + * rust/execute/torture/issue-1496.rs: Likewise. + * rust/execute/torture/issue-1720-2.rs: Likewise. + * rust/execute/torture/issue-1720.rs: Likewise. + * rust/execute/torture/issue-2005.rs: Likewise. + * rust/execute/torture/issue-2052.rs: Likewise. + * rust/execute/torture/issue-2179.rs: Likewise. + * rust/execute/torture/issue-2180.rs: Likewise. + * rust/execute/torture/issue-2236.rs: Likewise. + * rust/execute/torture/issue-2583.rs: Likewise. + * rust/execute/torture/issue-3126.rs: Likewise. + * rust/execute/torture/issue-3381.rs: Likewise. + * rust/execute/torture/issue-3502.rs: Likewise. + * rust/execute/torture/issue-3836.rs: Likewise. + * rust/execute/torture/issue-647.rs: Likewise. + * rust/execute/torture/issue-845.rs: Likewise. + * rust/execute/torture/issue-851.rs: Likewise. + * rust/execute/torture/issue-858.rs: Likewise. + * rust/execute/torture/iter1.rs: Likewise. + * rust/execute/torture/macros23.rs: Likewise. + * rust/execute/torture/macros28.rs: Likewise. + * rust/execute/torture/method2.rs: Likewise. + * rust/execute/torture/method3.rs: Likewise. + * rust/execute/torture/method4.rs: Likewise. + * rust/execute/torture/min_specialization2.rs: Likewise. + * rust/execute/torture/min_specialization3.rs: Likewise. + * rust/execute/torture/operator_overload_1.rs: Likewise. + * rust/execute/torture/operator_overload_10.rs: Likewise. + * rust/execute/torture/operator_overload_11.rs: Likewise. + * rust/execute/torture/operator_overload_12.rs: Likewise. + * rust/execute/torture/operator_overload_2.rs: Likewise. + * rust/execute/torture/operator_overload_3.rs: Likewise. + * rust/execute/torture/operator_overload_4.rs: Likewise. + * rust/execute/torture/operator_overload_5.rs: Likewise. + * rust/execute/torture/operator_overload_6.rs: Likewise. + * rust/execute/torture/operator_overload_7.rs: Likewise. + * rust/execute/torture/operator_overload_8.rs: Likewise. + * rust/execute/torture/operator_overload_9.rs: Likewise. + * rust/execute/torture/partial-eq-1.rs: Likewise. + * rust/execute/torture/partial-eq-2.rs: Likewise. + * rust/execute/torture/partial-eq-3.rs: Likewise. + * rust/execute/torture/partial-eq-4.rs: Likewise. + * rust/execute/torture/partial-ord-1.rs: Likewise. + * rust/execute/torture/partial-ord-2.rs: Likewise. + * rust/execute/torture/partial-ord-3.rs: Likewise. + * rust/execute/torture/partial-ord-4.rs: Likewise. + * rust/execute/torture/partial-ord-5.rs: Likewise. + * rust/execute/torture/partial-ord-6.rs: Likewise. + * rust/execute/torture/prefetch_data.rs: Likewise. + * rust/execute/torture/ref-pattern2.rs: Likewise. + * rust/execute/torture/sip-hasher.rs: Likewise. + * rust/execute/torture/slice-magic.rs: Likewise. + * rust/execute/torture/slice-magic2.rs: Likewise. + * rust/execute/torture/slice1.rs: Likewise. + * rust/execute/torture/str-layout1.rs: Likewise. + * rust/execute/torture/trait1.rs: Likewise. + * rust/execute/torture/trait10.rs: Likewise. + * rust/execute/torture/trait11.rs: Likewise. + * rust/execute/torture/trait12.rs: Likewise. + * rust/execute/torture/trait13.rs: Likewise. + * rust/execute/torture/trait14.rs: Likewise. + * rust/execute/torture/trait15.rs: Likewise. + * rust/execute/torture/trait2.rs: Likewise. + * rust/execute/torture/trait3.rs: Likewise. + * rust/execute/torture/trait4.rs: Likewise. + * rust/execute/torture/trait5.rs: Likewise. + * rust/execute/torture/trait6.rs: Likewise. + * rust/execute/torture/trait7.rs: Likewise. + * rust/execute/torture/trait8.rs: Likewise. + * rust/execute/torture/trait9.rs: Likewise. + * rust/execute/torture/transmute1.rs: Likewise. + * rust/execute/torture/wrapping_op1.rs: Likewise. + * rust/execute/torture/wrapping_op2.rs: Likewise. + * rust/link/generic_function_1.rs: Likewise. + * rust/link/trait_import_1.rs: Likewise. + +2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/braced_macro_arm.rs: Remove parent errors. + * rust/compile/issue-407-2.rs: Likewise. + * rust/compile/issue-407.rs: Likewise. + * rust/compile/issue-4162.rs: Likewise. + * rust/compile/issue-867.rs: Likewise. + * rust/compile/raw_ref_op_invalid.rs: Likewise. + +2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/macros/mbe/macro-issue3608.rs: Remove error. + +2025-12-03 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/braced_macro_arm.rs: Remove superfluous error message + matching. + * rust/compile/decl_macro6.rs: Likewise. + * rust/compile/decl_macro7.rs: Likewise. + * rust/compile/extern_type_item_missing_semi.rs: Likewise. + * rust/compile/issue-2187.rs: Likewise. + * rust/compile/issue-407-2.rs: Likewise. + * rust/compile/issue-407.rs: Likewise. + * rust/compile/issue-4162.rs: Likewise. + * rust/compile/issue-867.rs: Likewise. + * rust/compile/macros/mbe/macro-issue1053-2.rs: Likewise. + * rust/compile/macros/mbe/macro-issue1395-2.rs: Likewise. + * rust/compile/macros/mbe/macro-issue3608.rs: Likewise. + * rust/compile/macros/mbe/macro27.rs: Likewise. + * rust/compile/macros/mbe/macro28.rs: Likewise. + * rust/compile/macros/mbe/macro29.rs: Likewise. + * rust/compile/macros/mbe/macro30.rs: Likewise. + * rust/compile/macros/mbe/macro31.rs: Likewise. + * rust/compile/macros/mbe/macro33.rs: Likewise. + * rust/compile/macros/mbe/macro35.rs: Likewise. + * rust/compile/macros/mbe/macro37.rs: Likewise. + * rust/compile/macros/mbe/macro38.rs: Likewise. + * rust/compile/macros/mbe/macro39.rs: Likewise. + * rust/compile/macros/mbe/macro48.rs: Likewise. + * rust/compile/parse_invalid_specialization.rs: Likewise. + * rust/compile/parse_simple_path_fail_1.rs: Likewise. + * rust/compile/parse_simple_path_fail_2.rs: Likewise. + * rust/compile/raw-string-loc.rs: Likewise. + * rust/compile/raw-byte-string-loc.rs: Likewise. + * rust/compile/self_const_ptr.rs: Likewise. + * rust/compile/self_mut_ptr.rs: Likewise. + * rust/compile/static_var1.rs: Likewise. + * rust/compile/self_ptr.rs: Likewise. + * rust/compile/torture/identifier-missing-impl-1.rs: Likewise. + +2025-12-03 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/103371 + * gfortran.dg/pdt_71.f03: New test. + +2025-12-03 liuhongt <hongtao.liu@intel.com> + + * g++.target/i386/avx512-pr71921.C: New test. + * g++.target/i386/pr71921.C: New test. + +2025-12-02 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/122656 + * gcc.target/riscv/rvv/base/pr122656-1.c: New test. + * gcc.target/riscv/rvv/base/pr122656-2.c: New test.` + +2025-12-02 Jakub Jelinek <jakub@redhat.com> + + PR c++/122860 + * g++.dg/ext/pr122860.C: New test. + +2025-12-02 Jakub Jelinek <jakub@redhat.com> + + PR c++/122836 + * g++.dg/ext/pr122836.C: New test. + +2025-12-02 Jason Merrill <jason@redhat.com> + + PR c++/122171 + PR c++/112632 + * g++.dg/cpp0x/alias-decl-conv1.C: New test. + +2025-12-02 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122868 + * gcc.dg/vect/vect-early-break_140-pr122868_1.c: New test. + * gcc.dg/vect/vect-early-break_140-pr122868_2.c: New test. + * gcc.dg/vect/vect-early-break_140-pr122868_3.c: New test. + * gcc.dg/vect/vect-early-break_140-pr122868_4.c: New test. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * gcc.target/mips/madd-10.c: New test. + * gcc.target/mips/maddu-5.c: New test. + * gcc.target/mips/msub-9.c: New test. + * gcc.target/mips/msubu-5.c: New test. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * gcc.target/mips/bswap-7.c: New test. + +2025-12-02 David Guillen Fandos <david@davidgf.net> + + * gcc.target/mips/max-1.c: New test. + * gcc.target/mips/min-1.c: New test. + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + Radek Barton <radek.barton@microsoft.com> + + * gcc.target/aarch64/mingw/variadic_hfa.c: New test. + * gcc.target/aarch64/mingw/variadic_hva.c: New test. + * gcc.target/aarch64/mingw/variadic_int.c: New test. + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + Radek Barton <radek.barton@microsoft.com> + Martin Vejbora <mvejbora@microsoft.com> + + * gcc.target/aarch64/mingw/mingw.exp: New test. + * gcc.target/aarch64/mingw/long_double_size.c: New test. + +2025-12-02 Saurabh Jha <saurabh.jha@arm.com> + + * lib/scanasm.exp: Add support for mingw targets. + +2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/friend-12_a.C: New test. + * g++.dg/modules/friend-12_b.C: New test. + +2025-12-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122915 + * g++.dg/modules/namespace-16_a.C: New test. + * g++.dg/modules/namespace-16_b.C: New test. + * g++.dg/modules/namespace-16_c.C: New test. + * g++.dg/modules/namespace-16_d.C: New test. + +2025-12-01 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122858 + * gcc.target/arm/mve/pr122858.c: New test. + +2025-12-01 Christopher Albert <albert@tugraz.at> + Harald Anlauf <anlauf@gcc.gnu.org> + + PR fortran/107721 + PR fortran/102417 + * gfortran.dg/array_constructor_typespec_1.f90: New test. + +2025-12-01 Jakub Jelinek <jakub@redhat.com> + + PR c++/122905 + * g++.dg/lto/pr122905.h: New file. + * g++.dg/lto/pr122905_0.C: New test. + * g++.dg/lto/pr122905_1.C: New test. + +2025-12-01 Robin Dapp <rdapp@ventanamicro.com> + + PR target/122652 + * gcc.target/riscv/rvv/base/pr122652.c: New test. + +2025-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR testsuite/122596 + * gfortran.dg/alloc_comp_deep_copy_5.f90: Restrict + -Wa,--noexecstack, -Wl,-z,noexecstack to gas, gld. + * gfortran.dg/alloc_comp_deep_copy_6.f90: Likewise. + +2025-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR c++/81337 + PR c++/52477 + * g++.dg/gcov/pr16855.C (Test::~Test): xfail on *-*-solaris2* + (dg-final): Likewise. + * g++.dg/gcov/pr16855-priority.C (Test::~Test): Likewise. + (dg-final): Likewise. + +2025-12-01 H.J. Lu <hjl.tools@gmail.com> + + PR target/122906 + * g++.target/i386/pr122906-1.C: New test. + +2025-11-30 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * gcc.dg/vect/tsvc/vect-tsvc-s293.c: Remove xfail. + * gcc.target/aarch64/vect-ld1r-compile.c: Add + -fno-tree-loop-distribute-patterns to prevent memset detection. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + PR fortran/122923 + * gfortran.dg/ISO_Fortran_binding_17.f90: Recognize language + list in warning regexp. + * gfortran.dg/c-interop/allocate-errors.f90: Likewise. + * gfortran.dg/c-interop/establish-errors.f90: Likewise. + * gfortran.dg/c-interop/pr113338.f90: Likewise. + * gfortran.dg/c-interop/section-errors.f90: Likewise. + * gfortran.dg/c-interop/select-errors.f90: Likewise. + * gfortran.dg/c-interop/setpointer-errors.f90: Likewise. + +2025-11-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/122465 + * g++.dg/cpp0x/pr122465.C: New test. + +2025-11-30 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/115120 + PR tree-optimization/119577 + PR tree-optimization/119860 + * gcc.dg/vect/vect-early-break_39.c: Update. + * gcc.dg/vect/vect-early-break_139.c: New testcase. + * gcc.target/aarch64/sve/peel_ind_10.c: Update. + * gcc.target/aarch64/sve/peel_ind_11.c: Update. + * gcc.target/aarch64/sve/peel_ind_12.c: Update. + * gcc.target/aarch64/sve/peel_ind_5.c: Update. + * gcc.target/aarch64/sve/peel_ind_6.c: Update. + * gcc.target/aarch64/sve/peel_ind_7.c: Update. + * gcc.target/aarch64/sve/peel_ind_9.c: Update. + * gcc.target/aarch64/sve/pr119351.c + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/mcgt-1.3b.a68: New file. + * algol68/compile/mcgt-7.1.3a-bis.a68: Likewise. + * algol68/compile/mcgt-7.1.3a.a68: Likewise. + * algol68/execute/mcgt/execute.exp: Likewise. + * algol68/execute/mcgt/mcgt-1.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-1.3c.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.2.1a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.2.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.2.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.3b.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.3c.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.3e.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.4.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.4.2b.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.4.2c.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.4.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.6a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.6b.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.7d.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.7e.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.8a.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.8b.a68: Likewise. + * algol68/execute/mcgt/mcgt-2.9.1a.a68: Likewise. + * algol68/execute/mcgt/mcgt-3.5.1a.a68: Likewise. + * algol68/execute/mcgt/mcgt-3.5d.a68: Likewise. + * algol68/execute/mcgt/mcgt-3.7.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-3.8.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-3.9.1b.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.1.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.1.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.1.6a.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.1.6b.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.1.6c.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.2.6a.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.2.6b.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.2.6d.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.3.1a.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.3.1b.a68: Likewise. + * algol68/execute/mcgt/mcgt-4.3.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-5.1.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-5.1.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-5.1.3c.a68: Likewise. + * algol68/execute/mcgt/mcgt-5.1.5a.a68: Likewise. + * algol68/execute/mcgt/mcgt-6.2.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-6.2.2b.a68: Likewise. + * algol68/execute/mcgt/mcgt-6.2.2c.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.1.1a.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.1.1b.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.1.3a.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.3.2a.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.3.6a.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.3.6b.a68: Likewise. + * algol68/execute/mcgt/mcgt-7.5.3a.a68: Likewise. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/README.mcts: New file. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/compile/a68includes/goodbye-supper.a68 + * algol68/compile/a68includes/goodbye.a68: Likewise. + * algol68/compile/a68includes/hello-supper.a68: Likewise. + * algol68/compile/a68includes/hello.a68: Likewise. + * algol68/compile/actual-bounds-expected-1.a68: Likewise. + * algol68/compile/actual-bounds-expected-2.a68: Likewise. + * algol68/compile/actual-bounds-expected-3.a68: Likewise. + * algol68/compile/balancing-1.a68: Likewise. + * algol68/compile/bold-nestable-comment-1.a68: Likewise. + * algol68/compile/bold-taggle-1.a68: Likewise. + * algol68/compile/brief-nestable-comment-1.a68: Likewise. + * algol68/compile/brief-nestable-comment-2.a68: Likewise. + * algol68/compile/char-break-1.a68: Likewise. + * algol68/compile/compile.exp: Likewise. + * algol68/compile/conditional-clause-1.a68: Likewise. + * algol68/compile/error-bold-taggle-1.a68: Likewise. + * algol68/compile/error-coercion-1.a68: Likewise. + * algol68/compile/error-coercion-2.a68: Likewise. + * algol68/compile/error-coercion-flex-1.a68: Likewise. + * algol68/compile/error-conformance-clause-1.a68: Likewise. + * algol68/compile/error-contraction-1.a68: Likewise. + * algol68/compile/error-contraction-2.a68: Likewise. + * algol68/compile/error-incestuous-union-1.a68: Likewise. + * algol68/compile/error-label-after-decl-1.a68: Likewise. + * algol68/compile/error-nestable-comments-1.a68: Likewise. + * algol68/compile/error-nested-comment-1.a68: Likewise. + * algol68/compile/error-no-bounds-allowed-1.a68: Likewise. + * algol68/compile/error-string-break-1.a68: Likewise. + * algol68/compile/error-string-break-2.a68: Likewise. + * algol68/compile/error-string-break-3.a68: Likewise. + * algol68/compile/error-string-break-4.a68: Likewise. + * algol68/compile/error-string-break-5.a68: Likewise. + * algol68/compile/error-string-break-6.a68: Likewise. + * algol68/compile/error-string-break-7.a68: Likewise. + * algol68/compile/error-supper-1.a68: Likewise. + * algol68/compile/error-supper-2.a68: Likewise. + * algol68/compile/error-supper-3.a68: Likewise. + * algol68/compile/error-supper-4.a68: Likewise. + * algol68/compile/error-supper-5.a68: Likewise. + * algol68/compile/error-supper-6.a68: Likewise. + * algol68/compile/error-underscore-in-mode-1.a68: Likewise. + * algol68/compile/error-underscore-in-tag-1.a68: Likewise. + * algol68/compile/error-upper-1.a68: Likewise. + * algol68/compile/error-widening-1.a68: Likewise. + * algol68/compile/error-widening-2.a68: Likewise. + * algol68/compile/error-widening-3.a68: Likewise. + * algol68/compile/error-widening-4.a68: Likewise. + * algol68/compile/error-widening-5.a68: Likewise. + * algol68/compile/error-widening-6.a68: Likewise. + * algol68/compile/error-widening-7.a68: Likewise. + * algol68/compile/error-widening-8.a68: Likewise. + * algol68/compile/error-widening-9.a68: Likewise. + * algol68/compile/hidden-operators-1.a68: Likewise. + * algol68/compile/implicit-widening-1.a68: Likewise. + * algol68/compile/include-supper.a68: Likewise. + * algol68/compile/include.a68: Likewise. + * algol68/compile/labeled-unit-1.a68: Likewise. + * algol68/compile/nested-comment-1.a68: Likewise. + * algol68/compile/nested-comment-2.a68: Likewise. + * algol68/compile/operators-firmly-related.a68: Likewise. + * algol68/compile/recursive-modes-1.a68: Likewise. + * algol68/compile/recursive-modes-2.a68: Likewise. + * algol68/compile/serial-clause-jump-1.a68: Likewise. + * algol68/compile/snobol.a68: Likewise. + * algol68/compile/supper-1.a68: Likewise. + * algol68/compile/supper-10.a68: Likewise. + * algol68/compile/supper-11.a68: Likewise. + * algol68/compile/supper-12.a68: Likewise. + * algol68/compile/supper-13.a68: Likewise. + * algol68/compile/supper-2.a68: Likewise. + * algol68/compile/supper-3.a68: Likewise. + * algol68/compile/supper-4.a68: Likewise. + * algol68/compile/supper-5.a68: Likewise. + * algol68/compile/supper-6.a68: Likewise. + * algol68/compile/supper-7.a68: Likewise. + * algol68/compile/supper-8.a68: Likewise. + * algol68/compile/supper-9.a68: Likewise. + * algol68/compile/uniting-1.a68: Likewise. + * algol68/compile/upper-1.a68: Likewise. + * algol68/compile/warning-scope-1.a68: Likewise. + * algol68/compile/warning-scope-2.a68: Likewise. + * algol68/compile/warning-scope-3.a68: Likewise. + * algol68/compile/warning-scope-4.a68: Likewise. + * algol68/compile/warning-scope-5.a68: Likewise. + * algol68/compile/warning-scope-6.a68: Likewise. + * algol68/compile/warning-scope-7.a68: Likewise. + * algol68/compile/warning-voiding-1.a68: Likewise. + * algol68/compile/warning-voiding-2.a68: Likewise. + * algol68/compile/error-compile-unknown-tag-1.a68: New file. + * algol68/compile/error-def-1.a68: New file. + * algol68/compile/error-mode-stropping-1.a68: New file. + * algol68/compile/error-mode-stropping-10.a68: New file. + * algol68/compile/error-mode-stropping-11.a68: New file. + * algol68/compile/error-mode-stropping-12.a68: New file. + * algol68/compile/error-mode-stropping-13.a68: New file. + * algol68/compile/error-mode-stropping-14.a68: New file. + * algol68/compile/error-mode-stropping-15.a68: New file. + * algol68/compile/error-mode-stropping-16.a68: New file. + * algol68/compile/error-mode-stropping-17.a68: New file. + * algol68/compile/error-mode-stropping-2.a68: New file. + * algol68/compile/error-mode-stropping-3.a68: New file. + * algol68/compile/error-mode-stropping-4.a68: New file. + * algol68/compile/error-mode-stropping-5.a68: New file. + * algol68/compile/error-mode-stropping-6.a68: New file. + * algol68/compile/error-mode-stropping-8.a68: New file. + * algol68/compile/error-mode-stropping-9.a68: New file. + * algol68/compile/error-module-coercions-1.a68: New file. + * algol68/compile/error-module-not-found-1.a68: New file. + * algol68/compile/error-module-ranges-1.a68: New file. + * algol68/compile/error-pragmat-1.a68: New file. + * algol68/compile/error-pragmat-access-1.a68: New file. + * algol68/compile/error-pragmat-access-2.a68: New file. + * algol68/compile/error-pub-loc-1.a68: New file. + * algol68/compile/error-pub-out-of-def-1.a68: New file. + * algol68/compile/error-pub-out-of-def-2.a68: New file. + * algol68/compile/error-string-break-8.a68: New file. + * algol68/compile/error-stropping-5.a68: New file. + * algol68/compile/error-stropping-6.a68: New file. + * algol68/compile/error-stropping-keyword-1.a68: New file. + * algol68/compile/error-stropping-keyword-2.a68: New file. + * algol68/compile/error-stropping-keyword-3.a68: New file. + * algol68/compile/error-stropping-keyword-4.a68: New file. + * algol68/compile/error-vacuum-1.a68: New file. + * algol68/compile/error-vacuum-2.a68: New file. + * algol68/compile/error-vacuum-3.a68: New file. + * algol68/compile/module-1.a68: New file. + * algol68/compile/module-2.a68: New file. + * algol68/compile/module-extracts-1.a68: New file. + * algol68/compile/module-mode-exports-1.a68: New file. + * algol68/compile/module-mode-exports-2.a68: New file. + * algol68/compile/module-mode-exports-3.a68: New file. + * algol68/compile/module-mode-exports-4.a68: New file. + * algol68/compile/module-mode-exports-5.a68: New file. + * algol68/compile/module-mode-exports-6.a68: New file. + * algol68/compile/module-mode-exports-7.a68: New file. + * algol68/compile/module-mode-exports-8.a68: New file. + * algol68/compile/module-mode-exports-9.a68: New file. + * algol68/compile/module-pub-1.a68: New file. + * algol68/compile/module-pub-mangling-1.a68: New file. + * algol68/compile/module-pub-mangling-10.a68: New file. + * algol68/compile/module-pub-mangling-11.a68: New file. + * algol68/compile/module-pub-mangling-12.a68: New file. + * algol68/compile/module-pub-mangling-13.a68: New file. + * algol68/compile/module-pub-mangling-14.a68: New file. + * algol68/compile/module-pub-mangling-15.a68: New file. + * algol68/compile/module-pub-mangling-16.a68: New file. + * algol68/compile/module-pub-mangling-17.a68: New file. + * algol68/compile/module-pub-mangling-18.a68: New file. + * algol68/compile/module-pub-mangling-19.a68: New file. + * algol68/compile/module-pub-mangling-2.a68: New file. + * algol68/compile/module-pub-mangling-20.a68: New file. + * algol68/compile/module-pub-mangling-21.a68: New file. + * algol68/compile/module-pub-mangling-22.a68: New file. + * algol68/compile/module-pub-mangling-3.a68: New file. + * algol68/compile/module-pub-mangling-4.a68: New file. + * algol68/compile/module-pub-mangling-5.a68: New file. + * algol68/compile/module-pub-mangling-6.a68: New file. + * algol68/compile/module-pub-mangling-7.a68: New file. + * algol68/compile/module-pub-mangling-8.a68: New file. + * algol68/compile/module-pub-mangling-9.a68: New file. + * algol68/compile/module-top-down-1.a68: New file. + * algol68/compile/modules/compile.exp: New file. + * algol68/compile/modules/module1.a68: New file. + * algol68/compile/modules/module2.a68: New file. + * algol68/compile/modules/module3.a68: New file. + * algol68/compile/modules/module4.a68: New file. + * algol68/compile/modules/module5.a68: New file. + * algol68/compile/modules/module6.a68: New file. + * algol68/compile/modules/module7.a68: New file. + * algol68/compile/modules/module8.a68: New file. + * algol68/compile/modules/module9.a68: New file. + * algol68/compile/modules/program-7.a68: New file. + * algol68/compile/modules/program-8.a68: New file. + * algol68/compile/modules/program-9.a68: New file. + * algol68/compile/modules/program-error-no-prio-1.a68: New file. + * algol68/compile/modules/program-error-outside-access-1.a68: New file. + * algol68/compile/modules/program-module-accesses-module-1.a68: New file. + * algol68/compile/modules/program-proc-arg-order-1.a68: New file. + * algol68/compile/warning-hidding-1.a68: New file. + * algol68/compile/warning-hidding-2.a68: New file. + * algol68/compile/warning-hidding-3.a68: New file. + * algol68/compile/warning-hidding-4.a68: New file. + * algol68/compile/warning-hidding-5.a68: New file. + * algol68/compile/warning-hidding-6.a68: New file. + * algol68/compile/warning-hidding-7.a68: New file. + * algol68/compile/warning-module-hidding-1.a68: New file. + * algol68/compile/warning-pub-loc-1.a68: New file. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/loop-7.a68: New file. + * algol68/execute/loop-8.a68: Likewise. + * algol68/execute/loop-9.a68: Likewise. + * algol68/execute/loop-overflow-underflow.a68: Likewise. + * algol68/execute/lt-int-1.a68: Likewise. + * algol68/execute/lt-string-stride-1.a68: Likewise. + * algol68/execute/lwb-1.a68: Likewise. + * algol68/execute/minus-int-1.a68: Likewise. + * algol68/execute/minusab-1.a68: Likewise. + * algol68/execute/minusab-2.a68: Likewise. + * algol68/execute/minusab-3.a68: Likewise. + * algol68/execute/minusab-4.a68: Likewise. + * algol68/execute/mod-int-1.a68: Likewise. + * algol68/execute/modab-1.a68: Likewise. + * algol68/execute/modab-2.a68: Likewise. + * algol68/execute/mode-indication-1.a68: Likewise. + * algol68/execute/mult-char-1.a68: Likewise. + * algol68/execute/mult-int-1.a68: Likewise. + * algol68/execute/mult-string-1.a68: Likewise. + * algol68/execute/mult-string-2.a68: Likewise. + * algol68/execute/mult-string-3.a68: Likewise. + * algol68/execute/mult-string-4.a68: Likewise. + * algol68/execute/multab-1.a68: Likewise. + * algol68/execute/multab-2.a68: Likewise. + * algol68/execute/multab-3.a68: Likewise. + * algol68/execute/mutual-recursion-1.a68: Likewise. + * algol68/execute/ne-bits-1.a68: Likewise. + * algol68/execute/ne-char-char-1.a68: Likewise. + * algol68/execute/ne-int-1.a68: Likewise. + * algol68/execute/ne-string-1.a68: Likewise. + * algol68/execute/neg-int-1.a68: Likewise. + * algol68/execute/not-bits-1.a68: Likewise. + * algol68/execute/odd-1.a68: Likewise. + * algol68/execute/op-1.a68: Likewise. + * algol68/execute/op-2.a68: Likewise. + * algol68/execute/op-3.a68: Likewise. + * algol68/execute/operator-declaration-1.a68: Likewise. + * algol68/execute/or-bits-1.a68: Likewise. + * algol68/execute/orf-1.a68: Likewise. + * algol68/execute/over-int-1.a68: Likewise. + * algol68/execute/overab-1.a68: Likewise. + * algol68/execute/overab-2.a68: Likewise. + * algol68/execute/particular-program-1.a68: Likewise. + * algol68/execute/plus-char-1.a68: Likewise. + * algol68/execute/plus-int-1.a68: Likewise. + * algol68/execute/plus-string-1.a68: Likewise. + * algol68/execute/plus-string-2.a68: Likewise. + * algol68/execute/plus-string-stride-1.a68: Likewise. + * algol68/execute/plusab-1.a68: Likewise. + * algol68/execute/plusab-2.a68: Likewise. + * algol68/execute/plusab-3.a68: Likewise. + * algol68/execute/plusab-4.a68: Likewise. + * algol68/execute/plusab-string-1.a68: Likewise. + * algol68/execute/plusto-char-1.a68: Likewise. + * algol68/execute/plusto-string-1.a68: Likewise. + * algol68/execute/posix-argc-argv-1.a68: Likewise. + * algol68/execute/posix-fopen-1.a68: Likewise. + * algol68/execute/posix-fputc-fputs-1.a68: Likewise. + * algol68/execute/posix-getenv-1.a68: Likewise. + * algol68/execute/posix-perror-1.a68: Likewise. + * algol68/execute/posix-putchar-1.a68: Likewise. + * algol68/execute/posix-stdinouterr-1.a68: Likewise. + * algol68/execute/posix-strerror-1.a68: Likewise. + * algol68/execute/posix-stride-1.a68: Likewise. + * algol68/execute/pow-int-1.a68: Likewise. + * algol68/execute/pow-real-1.a68: Likewise. + * algol68/execute/proc-1.a68: Likewise. + * algol68/execute/proc-10.a68: Likewise. + * algol68/execute/proc-12.a68: Likewise. + * algol68/execute/proc-13.a68: Likewise. + * algol68/execute/proc-14.a68: Likewise. + * algol68/execute/proc-15.a68: Likewise. + * algol68/execute/proc-16.a68: Likewise. + * algol68/execute/proc-17.a68: Likewise. + * algol68/execute/proc-18.a68: Likewise. + * algol68/execute/proc-19.a68: Likewise. + * algol68/execute/proc-2.a68: Likewise. + * algol68/execute/proc-20.a68: Likewise. + * algol68/execute/proc-21.a68: Likewise. + * algol68/execute/proc-22.a68: Likewise. + * algol68/execute/proc-23.a68: Likewise. + * algol68/execute/proc-25.a68: Likewise. + * algol68/execute/proc-26.a68: Likewise. + * algol68/execute/proc-27.a68: Likewise. + * algol68/execute/proc-28.a68: Likewise. + * algol68/execute/proc-29.a68: Likewise. + * algol68/execute/proc-3.a68: Likewise. + * algol68/execute/proc-4.a68: Likewise. + * algol68/execute/proc-5.a68: Likewise. + * algol68/execute/proc-6.a68: Likewise. + * algol68/execute/proc-7.a68: Likewise. + * algol68/execute/proc-8.a68: Likewise. + * algol68/execute/procedured-goto-1.a68: Likewise. + * algol68/execute/quine.a68: Likewise. + * algol68/execute/random-1.a68: Likewise. + * algol68/execute/re-im-1.a68: Likewise. + * algol68/execute/rela-string-1.a68: Likewise. + * algol68/execute/repr-1.a68: Likewise. + * algol68/execute/round-1.a68: Likewise. + * algol68/execute/row-display-1.a68: Likewise. + * algol68/execute/row-display-2.a68: Likewise. + * algol68/execute/row-display-3.a68: Likewise. + * algol68/execute/row-display-4.a68: Likewise. + * algol68/execute/row-display-5.a68: Likewise. + * algol68/execute/rowing-1.a68: Likewise. + * algol68/execute/rowing-10.a68: Likewise. + * algol68/execute/rowing-11.a68: Likewise. + * algol68/execute/rowing-12.a68: Likewise. + * algol68/execute/rowing-13.a68: Likewise. + * algol68/execute/rowing-2.a68: Likewise. + * algol68/execute/rowing-3.a68: Likewise. + * algol68/execute/rowing-4.a68: Likewise. + * algol68/execute/rowing-5.a68: Likewise. + * algol68/execute/rowing-6.a68: Likewise. + * algol68/execute/rowing-7.a68: Likewise. + * algol68/execute/rowing-8.a68: Likewise. + * algol68/execute/rowing-9.a68: Likewise. + * algol68/execute/selection-1.a68: Likewise. + * algol68/execute/selection-2.a68: Likewise. + * algol68/execute/selection-3.a68: Likewise. + * algol68/execute/selection-4.a68: Likewise. + * algol68/execute/selection-5.a68: Likewise. + * algol68/execute/selection-multiple-1.a68: Likewise. + * algol68/execute/selection-multiple-2.a68: Likewise. + * algol68/execute/serial-clause-1.a68: Likewise. + * algol68/execute/serial-clause-10.a68: Likewise. + * algol68/execute/serial-clause-2.a68: Likewise. + * algol68/execute/serial-clause-3.a68: Likewise. + * algol68/execute/serial-clause-4.a68: Likewise. + * algol68/execute/serial-clause-5.a68: Likewise. + * algol68/execute/serial-clause-6.a68: Likewise. + * algol68/execute/serial-clause-7.a68: Likewise. + * algol68/execute/serial-clause-8.a68: Likewise. + * algol68/execute/serial-clause-9.a68: Likewise. + * algol68/execute/serial-dsa-1.a68: Likewise. + * algol68/execute/serial-dsa-2.a68: Likewise. + * algol68/execute/serial-dsa-3.a68: Likewise. + * algol68/execute/serial-dsa-4.a68: Likewise. + * algol68/execute/serial-dsa-5.a68: Likewise. + * algol68/execute/serial-dsa-6.a68: Likewise. + * algol68/execute/sign-int-1.a68: Likewise. + * algol68/execute/sign-real-1.a68: Likewise. + * algol68/execute/sin-1.a68: Likewise. + * algol68/execute/skip-1.a68: Likewise. + * algol68/execute/skip-2.a68: Likewise. + * algol68/execute/skip-struct-1.a68: Likewise. + * algol68/execute/slice-indexing-1.a68: Likewise. + * algol68/execute/slice-indexing-2.a68: Likewise. + * algol68/execute/slice-indexing-3.a68: Likewise. + * algol68/execute/slice-indexing-4.a68: Likewise. + * algol68/execute/slice-indexing-5.a68: Likewise. + * algol68/execute/slice-indexing-6.a68: Likewise. + * algol68/execute/slice-indexing-7.a68: Likewise. + * algol68/execute/sqrt-1.a68: Likewise. + * algol68/execute/string-1.a68: Likewise. + * algol68/execute/string-2.a68: Likewise. + * algol68/execute/string-4.a68: Likewise. + * algol68/execute/string-break-1.a68: Likewise. + * algol68/execute/struct-self-1.a68: Likewise. + * algol68/execute/struct-self-2.a68: Likewise. + * algol68/execute/struct-self-3.a68: Likewise. + * algol68/execute/structure-display-1.a68: Likewise. + * algol68/execute/structure-display-2.a68: Likewise. + * algol68/execute/structure-display-3.a68: Likewise. + * algol68/execute/structure-display-4.a68: Likewise. + * algol68/execute/structure-display-5.a68: Likewise. + * algol68/execute/tan-1.a68: Likewise. + * algol68/execute/timesab-string-1.a68: Likewise. + * algol68/execute/trimmer-1.a68: Likewise. + * algol68/execute/trimmer-10.a68: Likewise. + * algol68/execute/trimmer-2.a68: Likewise. + * algol68/execute/trimmer-3.a68: Likewise. + * algol68/execute/trimmer-4.a68: Likewise. + * algol68/execute/trimmer-5.a68: Likewise. + * algol68/execute/trimmer-6.a68: Likewise. + * algol68/execute/trimmer-7.a68: Likewise. + * algol68/execute/trimmer-8.a68: Likewise. + * algol68/execute/trimmer-9.a68: Likewise. + * algol68/execute/trimmer-matrix-1.a68: Likewise. + * algol68/execute/trimmer-matrix-2.a68: Likewise. + * algol68/execute/trimmer-matrix-3.a68: Likewise. + * algol68/execute/trimmer-matrix-4.a68: Likewise. + * algol68/execute/trimmer-matrix-5.a68: Likewise. + * algol68/execute/trimmer-matrix-6.a68: Likewise. + * algol68/execute/trimmer-name-1.a68: Likewise. + * algol68/execute/undefined-1.a68: Likewise. + * algol68/execute/undefined-2.a68: Likewise. + * algol68/execute/undefined-3.a68: Likewise. + * algol68/execute/undefined-4.a68: Likewise. + * algol68/execute/undefined-5.a68: Likewise. + * algol68/execute/uniting-1.a68: Likewise. + * algol68/execute/uniting-2.a68: Likewise. + * algol68/execute/uniting-3.a68: Likewise. + * algol68/execute/uniting-4.a68: Likewise. + * algol68/execute/up-down-bits-1.a68: Likewise. + * algol68/execute/upb-1.a68: Likewise. + * algol68/execute/vacuum-1.a68: Likewise. + * algol68/execute/variable-declaration-1.a68: Likewise. + * algol68/execute/variable-declaration-2.a68: Likewise. + * algol68/execute/variable-declaration-3.a68: Likewise. + * algol68/execute/variable-declaration-4.a68: Likewise. + * algol68/execute/variable-declaration-5.a68: Likewise. + * algol68/execute/variable-declaration-6.a68: Likewise. + * algol68/execute/variable-declaration-heap-1.a68: Likewise. + * algol68/execute/variable-declaration-heap-2.a68: Likewise. + * algol68/execute/variable-declaration-multiple-1.a68: Likewise. + * algol68/execute/variable-declaration-multiple-2.a68: Likewise. + * algol68/execute/variable-declaration-multiple-3.a68: Likewise. + * algol68/execute/variable-declaration-multiple-4.a68: Likewise. + * algol68/execute/variable-declaration-multiple-5.a68: Likewise. + * algol68/execute/variable-declaration-multiple-6.a68: Likewise. + * algol68/execute/variable-declaration-multiple-7.a68: Likewise. + * algol68/execute/variable-declaration-multiple-8.a68: Likewise. + * algol68/execute/variable-declaration-multiple-9.a68: Likewise. + * algol68/execute/voiding-1.a68: Likewise. + * algol68/execute/widening-1.a68: Likewise. + * algol68/execute/widening-2.a68: Likewise. + * algol68/execute/widening-bits-1.a68: Likewise. + * algol68/execute/widening-bits-2.a68: Likewise. + * algol68/execute/widening-bits-3.a68: Likewise. + * algol68/execute/xor-bits-1.a68: Likewise. + * algol68/execute/environment-enquiries-8.a68: Likewise. + * algol68/execute/modules/README: New file. + * algol68/execute/modules/execute.exp: New file. + * algol68/execute/modules/module1.a68: New file. + * algol68/execute/modules/module10.a68: New file. + * algol68/execute/modules/module11.a68: New file. + * algol68/execute/modules/module12.a68: New file. + * algol68/execute/modules/module13.a68: New file. + * algol68/execute/modules/module14.a68: New file. + * algol68/execute/modules/module15.a68: New file. + * algol68/execute/modules/module16.a68: New file. + * algol68/execute/modules/module17.a68: New file. + * algol68/execute/modules/module3.a68: New file. + * algol68/execute/modules/module4.a68: New file. + * algol68/execute/modules/module5.a68: New file. + * algol68/execute/modules/module6.a68: New file. + * algol68/execute/modules/module7.a68: New file. + * algol68/execute/modules/module8.a68: New file. + * algol68/execute/modules/module9.a68: New file. + * algol68/execute/modules/program-1.a68: New file. + * algol68/execute/modules/program-10.a68: New file. + * algol68/execute/modules/program-11.a68: New file. + * algol68/execute/modules/program-12.a68: New file. + * algol68/execute/modules/program-15.a68: New file. + * algol68/execute/modules/program-16.a68: New file. + * algol68/execute/modules/program-17.a68: New file. + * algol68/execute/modules/program-2.a68: New file. + * algol68/execute/modules/program-3.a68: New file. + * algol68/execute/modules/program-4.a68: New file. + * algol68/execute/modules/program-5.a68: New file. + * algol68/execute/modules/program-6.a68: New file. + * algol68/execute/modules/program-7.a68: New file. + * algol68/execute/modules/program-8.a68: New file. + * algol68/execute/posix-lseek.a68: New file. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * algol68/execute/abs-bits-1.a68: New file. + * algol68/execute/abs-bool-1.a68: Likewise. + * algol68/execute/abs-char-1.a68: Likewise. + * algol68/execute/abs-int-1.a68: Likewise. + * algol68/execute/abs-int-negative-1.a68: Likewise. + * algol68/execute/abs-int-negative-gnu-1.a68: Likewise. + * algol68/execute/acos-1.a68: Likewise. + * algol68/execute/affirm-int-1.a68: Likewise. + * algol68/execute/and-bits-1.a68: Likewise. + * algol68/execute/andf-1.a68: Likewise. + * algol68/execute/ascription-1.a68: Likewise. + * algol68/execute/asin-1.a68: Likewise. + * algol68/execute/assert-1.a68: Likewise. + * algol68/execute/assignation-char-1.a68: Likewise. + * algol68/execute/assignation-int-1.a68: Likewise. + * algol68/execute/assignation-int-2.a68: Likewise. + * algol68/execute/assignation-int-3.a68: Likewise. + * algol68/execute/assignation-int-4.a68: Likewise. + * algol68/execute/assignation-int-5.a68: Likewise. + * algol68/execute/assignation-multiple-1.a68: Likewise. + * algol68/execute/assignation-multiple-2.a68: Likewise. + * algol68/execute/assignation-struct-1.a68: Likewise. + * algol68/execute/assignation-struct-2.a68: Likewise. + * algol68/execute/atan-1.a68: Likewise. + * algol68/execute/balancing-1.a68: Likewise. + * algol68/execute/balancing-rows-1.a68: Likewise. + * algol68/execute/bin-1.a68: Likewise. + * algol68/execute/bin-negative-1.a68: Likewise. + * algol68/execute/bin-negative-gnu-1.a68: Likewise. + * algol68/execute/boolops-1.a68: Likewise. + * algol68/execute/call-1.a68: Likewise. + * algol68/execute/call-2.a68: Likewise. + * algol68/execute/case-clause-1.a68: Likewise. + * algol68/execute/case-clause-2.a68: Likewise. + * algol68/execute/case-clause-3.a68: Likewise. + * algol68/execute/case-clause-4.a68: Likewise. + * algol68/execute/closed-clause-1.a68: Likewise. + * algol68/execute/closed-clause-2.a68: Likewise. + * algol68/execute/collateral-clause-1.a68: Likewise. + * algol68/execute/collateral-clause-2.a68: Likewise. + * algol68/execute/collateral-clause-3.a68: Likewise. + * algol68/execute/collateral-clause-4.a68: Likewise. + * algol68/execute/collateral-clause-5.a68: Likewise. + * algol68/execute/collateral-clause-6.a68: Likewise. + * algol68/execute/completer-1.a68: Likewise. + * algol68/execute/completer-10.a68: Likewise. + * algol68/execute/completer-2.a68: Likewise. + * algol68/execute/completer-3.a68: Likewise. + * algol68/execute/completer-4.a68: Likewise. + * algol68/execute/completer-5.a68: Likewise. + * algol68/execute/completer-6.a68: Likewise. + * algol68/execute/completer-7.a68: Likewise. + * algol68/execute/completer-8.a68: Likewise. + * algol68/execute/completer-9.a68: Likewise. + * algol68/execute/cond-clause-1.a68: Likewise. + * algol68/execute/cond-clause-2.a68: Likewise. + * algol68/execute/cond-clause-3.a68: Likewise. + * algol68/execute/cond-clause-4.a68: Likewise. + * algol68/execute/cond-clause-5.a68: Likewise. + * algol68/execute/cond-clause-6.a68: Likewise. + * algol68/execute/cond-clause-7.a68: Likewise. + * algol68/execute/cond-clause-8.a68: Likewise. + * algol68/execute/cond-clause-9.a68: Likewise. + * algol68/execute/conformity-clause-1.a68: Likewise. + * algol68/execute/conformity-clause-2.a68: Likewise. + * algol68/execute/conformity-clause-3.a68: Likewise. + * algol68/execute/conformity-clause-4.a68: Likewise. + * algol68/execute/conformity-clause-5.a68: Likewise. + * algol68/execute/conformity-clause-6.a68: Likewise. + * algol68/execute/conformity-clause-7.a68: Likewise. + * algol68/execute/conformity-clause-8.a68: Likewise. + * algol68/execute/conformity-clause-9.a68: Likewise. + * algol68/execute/conj-1.a68: Likewise. + * algol68/execute/cos-1.a68: Likewise. + * algol68/execute/declarer-1.a68: Likewise. + * algol68/execute/declarer-2.a68: Likewise. + * algol68/execute/deprocedure-1.a68: Likewise. + * algol68/execute/deprocedure-2.a68: Likewise. + * algol68/execute/deref-1.a68: Likewise. + * algol68/execute/deref-2.a68: Likewise. + * algol68/execute/deref-3.a68: Likewise. + * algol68/execute/deref-4.a68: Likewise. + * algol68/execute/deref-5.a68: Likewise. + * algol68/execute/deref-6.a68: Likewise. + * algol68/execute/deref-7.a68: Likewise. + * algol68/execute/deref-8.a68: Likewise. + * algol68/execute/div-int-1.a68: Likewise. + * algol68/execute/divab-real-1.a68: Likewise. + * algol68/execute/elem-bits-1.a68: Likewise. + * algol68/execute/elems-1.a68: Likewise. + * algol68/execute/elems-2.a68: Likewise. + * algol68/execute/entier-1.a68: Likewise. + * algol68/execute/environment-enquiries-1.a68: Likewise. + * algol68/execute/environment-enquiries-2.a68: Likewise. + * algol68/execute/environment-enquiries-3.a68: Likewise. + * algol68/execute/environment-enquiries-4.a68: Likewise. + * algol68/execute/environment-enquiries-5.a68: Likewise. + * algol68/execute/environment-enquiries-6.a68: Likewise. + * algol68/execute/environment-enquiries-7.a68: Likewise. + * algol68/execute/environment-enquiries-8.a68: Likewise. + * algol68/execute/eq-bits-1.a68: Likewise. + * algol68/execute/eq-char-char-1.a68: Likewise. + * algol68/execute/eq-int-1.a68: Likewise. + * algol68/execute/eq-string-1.a68: Likewise. + * algol68/execute/eq-string-stride-1.a68: Likewise. + * algol68/execute/execute.exp: Likewise. + * algol68/execute/factorial-1.a68: Likewise. + * algol68/execute/flat-assignation-1.a68: Likewise. + * algol68/execute/flat-assignation-2.a68: Likewise. + * algol68/execute/flex-1.a68: Likewise. + * algol68/execute/flex-2.a68: Likewise. + * algol68/execute/flex-3.a68: Likewise. + * algol68/execute/flex-4.a68: Likewise. + * algol68/execute/flex-5.a68: Likewise. + * algol68/execute/formula-1.a68: Likewise. + * algol68/execute/formula-2.a68: Likewise. + * algol68/execute/fsize-1.a68: Likewise. + * algol68/execute/ge-int-1.a68: Likewise. + * algol68/execute/ge-string-stride-1.a68: Likewise. + * algol68/execute/gen-flex-1.a68: Likewise. + * algol68/execute/gen-heap-1.a68: Likewise. + * algol68/execute/gen-heap-2.a68: Likewise. + * algol68/execute/gen-heap-3.a68: Likewise. + * algol68/execute/gen-heap-bool-1.a68: Likewise. + * algol68/execute/gen-heap-int-1.a68: Likewise. + * algol68/execute/gen-heap-real-1.a68: Likewise. + * algol68/execute/gen-heap-struct-1.a68: Likewise. + * algol68/execute/gen-heap-struct-2.a68: Likewise. + * algol68/execute/gen-heap-struct-3.a68: Likewise. + * algol68/execute/gen-loc-1.a68: Likewise. + * algol68/execute/gen-loc-2.a68: Likewise. + * algol68/execute/gen-loc-3.a68: Likewise. + * algol68/execute/gen-loc-4.a68: Likewise. + * algol68/execute/gen-multiple-1.a68: Likewise. + * algol68/execute/gen-union-1.a68: Likewise. + * algol68/execute/gen-union-2.a68: Likewise. + * algol68/execute/gen-union-3.a68: Likewise. + * algol68/execute/goto-1.a68: Likewise. + * algol68/execute/goto-2.a68: Likewise. + * algol68/execute/goto-3.a68: Likewise. + * algol68/execute/goto-4.a68: Likewise. + * algol68/execute/goto-5.a68: Likewise. + * algol68/execute/gt-int-1.a68: Likewise. + * algol68/execute/gt-string-stride-1.a68: Likewise. + * algol68/execute/i-1.a68: Likewise. + * algol68/execute/i-2.a68: Likewise. + * algol68/execute/identification-1.a68: Likewise. + * algol68/execute/identification-2.a68: Likewise. + * algol68/execute/identity-declaration-1.a68: Likewise. + * algol68/execute/identity-declaration-2.a68: Likewise. + * algol68/execute/identity-declaration-3.a68: Likewise. + * algol68/execute/identity-declaration-4.a68: Likewise. + * algol68/execute/identity-declaration-5.a68: Likewise. + * algol68/execute/identity-declaration-multiple-1.a68: Likewise. + * algol68/execute/identity-declaration-multiple-2.a68: Likewise. + * algol68/execute/identity-declaration-multiple-3.a68: Likewise. + * algol68/execute/identity-declaration-multiple-5.a68: Likewise. + * algol68/execute/identity-declaration-multiple-empty-1.a68: Likewise. + * algol68/execute/identity-declaration-multiple-empty-2.a68: Likewise. + * algol68/execute/identity-declaration-multiple-empty-3.a68: Likewise. + * algol68/execute/identity-declaration-multiple-empty-4.a68: Likewise. + * algol68/execute/identity-declaration-struct-1.a68: Likewise. + * algol68/execute/infinity-1.a68: Likewise. + * algol68/execute/le-ge-bits-1.a68: Likewise. + * algol68/execute/le-int-1.a68: Likewise. + * algol68/execute/le-string-stride-1.a68: Likewise. + * algol68/execute/leng-shorten-bits-1.a68: Likewise. + * algol68/execute/leng-shorten-ints-1.a68: Likewise. + * algol68/execute/leng-shorten-reals-1.a68: Likewise. + * algol68/execute/lengths-shorths-1.a68: Likewise. + * algol68/execute/lisp-1.a68: Likewise. + * algol68/execute/lisp-2.a68: Likewise. + * algol68/execute/ln-1.a68: Likewise. + * algol68/execute/log-1.a68: Likewise. + * algol68/execute/loop-1.a68: Likewise. + * algol68/execute/loop-10.a68: Likewise. + * algol68/execute/loop-11.a68: Likewise. + * algol68/execute/loop-12.a68: Likewise. + * algol68/execute/loop-13.a68: Likewise. + * algol68/execute/loop-14.a68: Likewise. + * algol68/execute/loop-2.a68: Likewise. + * algol68/execute/loop-3.a68: Likewise. + * algol68/execute/loop-4.a68: Likewise. + * algol68/execute/loop-5.a68: Likewise. + * algol68/execute/loop-6.a68: Likewise. + +2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com> + + * lib/algol68-dg.exp: New file. + * lib/algol68-torture.exp: Likewise. + * lib/algol68.exp: Likewise. + +2025-11-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119864 + * g++.dg/modules/omp-4_a.C: New test. + * g++.dg/modules/omp-4_b.C: New test. + +2025-11-29 Eczbek <eczbek.void@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/116952 + * g++.dg/cpp2a/lambda-uneval14.C: Revise incorrect test. + * g++.dg/cpp2a/lambda-uneval29.C: New test. + +2025-11-29 Jakub Jelinek <jakub@redhat.com> + + PR c++/122758 + * g++.dg/cpp26/erroneous5.C: New test. + * g++.dg/cpp26/erroneous6.C: New test. + +2025-11-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122844 + * gcc.dg/vect/vect-pr122844.c: New testcase. + +2025-11-28 Tobias Burnus <tburnus@baylibre.com> + + PR c/122892 + * gfortran.dg/gomp/allocate-15.f90: Use another allocator as + omp_{cgroup,pteam}_mem_alloc is invalid for non-local static vars. + * gfortran.dg/gomp/allocate-7.f90: Likewise. + * gfortran.dg/gomp/allocate-static-3.f90: New test. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/119969 + * g++.dg/torture/pr119969.C: New test. + +2025-11-28 Mark Zhuang <mark.zhuang@spacemit.com> + + * gcc.target/riscv/predef-smt-1.c: New test. + +2025-11-28 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122733 + * gcc.dg/match-shift-cmp-4.c: New test. + * gcc.dg/match-shift-cmp-5.c: New test. + +2025-11-28 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122890 + * g++.target/aarch64/pr122890.C: New test. + +2025-11-27 Jakub Jelinek <jakub@redhat.com> + + PR c/121506 + * gcc.dg/pr121506.c: New test. + +2025-11-27 Matthieu Longo <matthieu.longo@arm.com> + + * gcc.target/aarch64/build-attributes/build-attribute-define-nok.c: New test. + * gcc.target/aarch64/build-attributes/build-attribute-define-ok.c: New test. + +2025-11-27 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * gcc.target/aarch64/ffs.c: Improve test. + +2025-11-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * c-c++-common/Wstringop-overflow.c: Xfail, PR 122881. + +2025-11-27 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122855 + PR tree-optimization/122850 + * gcc.dg/vect/pr122850.c: New test. + * gcc.dg/vect/pr122855.c: New test. + +2025-11-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/pr121959-run-1.c: Update + the reference for run test. + +2025-11-27 Dhruv Chawla <dhruvc@nvidia.com> + + PR tree-optimization/122733 + * gcc.dg/match-shift-cmp-1.c: Update test to only check + equality. + * gcc.dg/match-shift-cmp-2.c: Likewise. + * gcc.dg/match-shift-cmp-3.c: Likewise. + * gcc.dg/match-shift-cmp-4.c: Removed. + +2025-11-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122885 + * gcc.dg/torture/pr122873.c: New testcase. + +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-25 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/gat1.rs: New test. + * rust/execute/torture/gat1.rs: New test. + +2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-3971.rs: New test. + +2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4226.rs: New test. + +2025-11-25 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/e0579-neg-float-fail.rs: New file. + * rust/compile/e0579-neg-float.rs: New file. + +2025-11-25 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4262.rs: New test. + +2025-11-25 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> + + * rust/compile/issue-4140-1.rs: Fixes test. + * rust/compile/issue-4140-2.rs: Likewise. + +2025-11-25 lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr> + + * rust/compile/issue-4140-1.rs: New test. + * rust/compile/issue-4140-2.rs: Likewise. + +2025-11-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/analyzer/strchr-1.c: Drop include of <string.h>, and use + __builtin_strchr throughout rather than strchr to avoid const + correctness issues when the header implements strchr with a C23 + const-preserving macro. Drop "const" from two vars. + +2025-11-25 Tamar Christina <tamar.christina@arm.com> + + PR target/118974 + * gcc.target/aarch64/sve/pr119351.c: Update codegen. + * gcc.target/aarch64/sve/vect-early-break-cbranch.c: Likewise. + * gcc.target/aarch64/vect-early-break-cbranch.c: Likewise. + * gcc.target/aarch64/sve/vect-early-break-cbranch_2.c: New test. + * gcc.target/aarch64/sve/vect-early-break-cbranch_3.c: New test. + * gcc.target/aarch64/sve/vect-early-break-cbranch_4.c: New test. + * gcc.target/aarch64/sve/vect-early-break-cbranch_5.c: New test. + * gcc.target/aarch64/sve/vect-early-break-cbranch_7.c: New test. + * gcc.target/aarch64/sve/vect-early-break-cbranch_8.c: New test. + * gcc.target/aarch64/vect-early-break-cbranch_2.c: New test. + * gcc.target/aarch64/vect-early-break-cbranch_3.c: New test. + +2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122699 + * g++.dg/modules/tpl-friend-21_a.C: New test. + * g++.dg/modules/tpl-friend-21_b.C: New test. + +2025-11-25 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.dg/Wstringop-overflow-47.c: Adjust warnings to allow for 32-bit + stores. + +2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122789 + * g++.dg/modules/concept-12_a.C: New test. + * g++.dg/modules/concept-12_b.C: New test. + +2025-11-25 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/compile-std1.C: New test. + * g++.dg/modules/modules.exp: Only run it once. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120052 + * c-c++-common/gomp/pr120052.c: New test. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/119931 + * gcc.dg/vla-1.c (main): Hide x value from optimizers and use it after + the call as well. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * g++.dg/DRs/dr2581-1.C (__STDC_ISO_10646__): xfail on non-Linux. + * g++.dg/DRs/dr2581-2.C: Likewise. + (__STDC_VERSION__): Expect error instead of warning on Solaris. + +2025-11-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120564 + * c-c++-common/gomp/pr120564.c: New test. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/pr120936-1.c: Restrict to *-*-linux*. + * gcc.target/i386/pr120936-2.c: Likewise. + * gcc.target/i386/pr120936-4.c: Likewise. + * gcc.target/i386/pr120936-5.c: Likewise. + * gcc.target/i386/pr120936-9.c: Likewise. + * gcc.target/i386/pr120936-11.c: Likewise. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/pr120936-3.c: Restrict to *-*-linux*. + * gcc.target/i386/pr120936-6.c: Likewise. + * gcc.target/i386/pr120936-10.c: Likewise. + * gcc.target/i386/pr120936-12.c: Likewise. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * lib/target-supports.exp (add_options_for_check_function_bodies): + New proc. + * g++.target/i386/cf_check-3.C: Add dg-add-options + check_function_bodies. + * g++.target/i386/cf_check-4.C: Likewise. + * gcc.target/i386/builtin-copysign-2.c: Likewise. + * gcc.target/i386/builtin-copysign-3.c: Likewise. + * gcc.target/i386/builtin-copysign-4.c: Likewise. + * gcc.target/i386/builtin-copysign-5.c: Likewise. + * gcc.target/i386/builtin-copysign-6.c: Likewise. + * gcc.target/i386/builtin-copysign-7.c: Likewise. + * gcc.target/i386/builtin-copysign-8a.c: Likewise. + * gcc.target/i386/builtin-copysign-8b.c: Likewise. + * gcc.target/i386/builtin-fabs-1.c: Likewise. + * gcc.target/i386/builtin-memmove-10.c: Likewise. + * gcc.target/i386/builtin-memmove-11a.c: Likewise. + * gcc.target/i386/builtin-memmove-11b.c: Likewise. + * gcc.target/i386/builtin-memmove-11c.c: Likewise. + * gcc.target/i386/builtin-memmove-12.c: Likewise. + * gcc.target/i386/builtin-memmove-13.c: Likewise. + * gcc.target/i386/builtin-memmove-14.c: Likewise. + * gcc.target/i386/builtin-memmove-15.c: Likewise. + * gcc.target/i386/builtin-memmove-1a.c: Likewise. + * gcc.target/i386/builtin-memmove-1b.c: Likewise. + * gcc.target/i386/builtin-memmove-1c.c: Likewise. + * gcc.target/i386/builtin-memmove-1d.c: Likewise. + * gcc.target/i386/builtin-memmove-2a.c: Likewise. + * gcc.target/i386/builtin-memmove-2b.c: Likewise. + * gcc.target/i386/builtin-memmove-2c.c: Likewise. + * gcc.target/i386/builtin-memmove-2d.c: Likewise. + * gcc.target/i386/builtin-memmove-3a.c: Likewise. + * gcc.target/i386/builtin-memmove-3b.c: Likewise. + * gcc.target/i386/builtin-memmove-3c.c: Likewise. + * gcc.target/i386/builtin-memmove-4a.c: Likewise. + * gcc.target/i386/builtin-memmove-4b.c: Likewise. + * gcc.target/i386/builtin-memmove-4c.c: Likewise. + * gcc.target/i386/builtin-memmove-5a.c: Likewise. + * gcc.target/i386/builtin-memmove-5b.c: Likewise. + * gcc.target/i386/builtin-memmove-5c.c: Likewise. + * gcc.target/i386/builtin-memmove-6.c: Likewise. + * gcc.target/i386/builtin-memmove-7.c: Likewise. + * gcc.target/i386/builtin-memmove-8.c: Likewise. + * gcc.target/i386/builtin-memmove-9.c: Likewise. + * gcc.target/i386/cf_check-11.c: Likewise. + * gcc.target/i386/cf_check-7.c: Likewise. + * gcc.target/i386/pr120936-1.c: Likewise. + * gcc.target/i386/pr120936-11.c: Likewise. + * gcc.target/i386/pr120936-2.c: Likewise. + * gcc.target/i386/pr120936-4.c: Likewise. + * gcc.target/i386/pr120936-5.c: Likewise. + * gcc.target/i386/pr120936-9.c: Likewise. + * g++.target/i386/memset-pr101366-1.C: Switch to dg-add-options + check_function_bodies. + * g++.target/i386/memset-pr101366-2.C: Likewise. + * g++.target/i386/memset-pr108585-1a.C: Likewise. + * g++.target/i386/memset-pr108585-1b.C: Likewise. + * g++.target/i386/memset-pr118276-1a.C: Likewise. + * g++.target/i386/memset-pr118276-1b.C: Likewise. + * g++.target/i386/memset-pr118276-1c.C: Likewise. + * gcc.target/i386/memcpy-pr120683-1.c: Likewise. + * gcc.target/i386/memcpy-pr120683-2.c: Likewise. + * gcc.target/i386/memcpy-pr120683-3.c: Likewise. + * gcc.target/i386/memcpy-pr120683-4.c: Likewise. + * gcc.target/i386/memcpy-pr120683-5.c: Likewise. + * gcc.target/i386/memcpy-pr120683-6.c: Likewise. + * gcc.target/i386/memcpy-pr120683-7.c: Likewise. + * gcc.target/i386/memcpy-strategy-12.c: Likewise. + * gcc.target/i386/memset-pr120683-1.c: Likewise. + * gcc.target/i386/memset-pr120683-10.c: Likewise. + * gcc.target/i386/memset-pr120683-11.c: Likewise. + * gcc.target/i386/memset-pr120683-12.c: Likewise. + * gcc.target/i386/memset-pr120683-13.c: Likewise. + * gcc.target/i386/memset-pr120683-14.c: Likewise. + * gcc.target/i386/memset-pr120683-15.c: Likewise. + * gcc.target/i386/memset-pr120683-16.c: Likewise. + * gcc.target/i386/memset-pr120683-17.c: Likewise. + * gcc.target/i386/memset-pr120683-18.c: Likewise. + * gcc.target/i386/memset-pr120683-19.c: Likewise. + * gcc.target/i386/memset-pr120683-2.c: Likewise. + * gcc.target/i386/memset-pr120683-20.c: Likewise. + * gcc.target/i386/memset-pr120683-21.c: Likewise. + * gcc.target/i386/memset-pr120683-22.c: Likewise. + * gcc.target/i386/memset-pr120683-23.c: Likewise. + * gcc.target/i386/memset-pr120683-3.c: Likewise. + * gcc.target/i386/memset-pr120683-4.c: Likewise. + * gcc.target/i386/memset-pr120683-5.c: Likewise. + * gcc.target/i386/memset-pr120683-6.c: Likewise. + * gcc.target/i386/memset-pr120683-7.c: Likewise. + * gcc.target/i386/memset-pr120683-8.c: Likewise. + * gcc.target/i386/memset-pr120683-9.c: Likewise. + * gcc.target/i386/memset-pr70308-1a.c: Likewise. + * gcc.target/i386/memset-pr70308-1b.c: Likewise. + * gcc.target/i386/memset-strategy-10.c: Likewise. + * gcc.target/i386/memset-strategy-13.c: Likewise. + * gcc.target/i386/memset-strategy-25.c: Likewise. + * gcc.target/i386/memset-strategy-28.c: Likewise. + * gcc.target/i386/memset-strategy-29.c: Likewise. + * gcc.target/i386/memset-strategy-30.c: Likewise. + * gcc.target/i386/pr111673.c: Likewise. + * gcc.target/i386/pr82142a.c: Likewise. + * gcc.target/i386/pr82142b.c: Likewise. + * gcc.target/i386/pr92080-17.c: Likewise. + +2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-1.c + (scan-assembler-times): Switch to brace quotes. + Allow for alternative assembler syntax. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-1.c: Likewise. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-10.c: Likewise. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-2.c: Likewise. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-4.c: Likewise. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-5.c: Likewise. + +2025-11-24 Robin Dapp <rdapp.gcc@gmail.com> + + * gcc.target/riscv/rvv/autovec/pr121582.c: New test. + +2025-11-24 Robin Dapp <rdapp@ventanamicro.com> + + PR tree-optimization/122797 + * gcc.dg/vect/pr122797.c: New test. + +2025-11-24 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/powerpc/builtins-1.c: Adjust test expectation. + * gcc.target/riscv/rvv/autovec/pr118019-3.c: New test. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + Richard Biener <rguenther@suse.de> + + PR tree-optimization/116835 + * gcc.dg/torture/pr116835.c: New test. + * gcc.dg/tree-ssa/phiprop-6.c: New test. + * gcc.dg/tree-ssa/phiprop-7.c: New test. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/60183 + * gcc.dg/tree-ssa/phiprop-5.c: New test. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/60183 + * gcc.dg/tree-ssa/phiprop-3.c: New test. + * gcc.dg/tree-ssa/phiprop-4.c: New test. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * g++.dg/tree-ssa/simple-dse-3.C: un-xfail. + +2025-11-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122633 + * g++.dg/tree-ssa/simple-dse-1.C: New test. + * g++.dg/tree-ssa/simple-dse-2.C: New test. + * g++.dg/tree-ssa/simple-dse-3.C: New test. + * g++.dg/tree-ssa/simple-dse-4.C: New test. + +2025-11-24 Marek Polacek <polacek@redhat.com> + + PR c++/119964 + * g++.dg/cpp1y/defaulted1.C: New test. + * g++.dg/cpp1y/defaulted2.C: New test. + +2025-11-24 Yury Khrustalev <yury.khrustalev@arm.com> + + PR debug/121964 + * g++.target/aarch64/dwarf-bit-stride-func.C: New test. + * g++.target/aarch64/dwarf-bit-stride-pragma.C: New test. + * g++.target/aarch64/dwarf-bit-stride-pragma-sme.C: New test. + * g++.target/aarch64/sve/dwarf-bit-stride.C: New test. + * gcc.target/aarch64/dwarf-bit-stride-func.c: New test. + * gcc.target/aarch64/dwarf-bit-stride-pragma.c: New test. + * gcc.target/aarch64/dwarf-bit-stride-pragma-sme.c: New test. + * gcc.target/aarch64/sve/dwarf-bit-stride.c: New test. + +2025-11-24 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122766 + * gfortran.dg/pdt_69.f03: New test. + +2025-11-24 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/bb-slp-41.c: Adjust dump scan. + +2025-11-24 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/object_overflow6.adb: New test. + +2025-11-24 liuhongt <hongtao.liu@intel.com> + + PR target/122503 + * g++.target/i386/pr116896-1.C: Add -mtune=generic to + dg-options. + * gcc.target/i386/pr116896.c: Ditto. + +2025-11-23 Pan Li <pan2.li@intel.com> + + * gcc.dg/tree-ssa/bit_op_cvt.1.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.2.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.3.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.4.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.5.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.6.c: New test. + * gcc.dg/tree-ssa/bit_op_cvt.h: New test. + +2025-11-23 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * gcc.dg/vect/vect-licm-hoist-1.c: New. + * gcc.dg/vect/vect-licm-hoist-2.c: Likewise. + +2025-11-23 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/delim-declare-variant-6.c (f3): Use "x86" + instead of "x86_64" in the arch selector, to match both 64- and + 32-bit targets. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122636 + * g++.dg/modules/internal-19_a.C: New test. + * g++.dg/modules/internal-19_b.C: New test. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp2a/is-pointer-interconvertible-base-of2.C: New test. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp2a/is-layout-compatible4.C: New test. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp1z/has-unique-obj-representations5.C: New test. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/ext/is_destructible3.C: Add test for function type. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/ext/is_virtual_base_of_diagnostic2.C: Adjust + diagnostic. + +2025-11-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp2a/is-layout-compatible3.C: Adjust expected results. + +2025-11-22 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122701 + * gcc.dg/torture/pr122701.c: New test. + +2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/delim-declare-variant-1.c: New. + * c-c++-common/gomp/delim-declare-variant-2.c: New. + * c-c++-common/gomp/delim-declare-variant-3.c: New. + * c-c++-common/gomp/delim-declare-variant-4.c: New. + * c-c++-common/gomp/delim-declare-variant-5.c: New. + * c-c++-common/gomp/delim-declare-variant-6.c: New. + * c-c++-common/gomp/delim-declare-variant-7.c: New. + * c-c++-common/gomp/delim-declare-variant-8.c: New. + * c-c++-common/gomp/delim-declare-variant-9.c: New. + +2025-11-22 Sandra Loosemore <sloosemore@baylibre.com> + Julian Brown <julian@codesourcery.com> + waffl3x <waffl3x@baylibre.com> + + * g++.dg/gomp/delim-declare-variant-1.C: New. + * g++.dg/gomp/delim-declare-variant-2.C: New. + * g++.dg/gomp/delim-declare-variant-3.C: New. + * g++.dg/gomp/delim-declare-variant-4.C: New. + * g++.dg/gomp/delim-declare-variant-5.C: New. + * g++.dg/gomp/delim-declare-variant-6.C: New. + * g++.dg/gomp/delim-declare-variant-7.C: New. + * g++.dg/gomp/delim-declare-variant-40.C: New. + * g++.dg/gomp/delim-declare-variant-41.C: New. + * g++.dg/gomp/delim-declare-variant-50.C: New. + * g++.dg/gomp/delim-declare-variant-51.C: New. + * g++.dg/gomp/delim-declare-variant-52.C: New. + * g++.dg/gomp/delim-declare-variant-70.C: New. + * g++.dg/gomp/delim-declare-variant-71.C: New. + +2025-11-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/122788 + * g++.dg/cpp26/expansion-stmt27.C: New test. + +2025-11-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/122185 + * g++.dg/cpp1z/pr122185.C: New test. + +2025-11-22 zhaozhou <zhaozhou@loongson.cn> + + * gcc.target/loongarch/vector/lasx/lasx-struct-move.c: New test. + +2025-11-22 Deng Jianbo <dengjianbo@loongson.cn> + + * gcc.target/loongarch/bstrins-5.c: New test. + * gcc.target/loongarch/bstrins-6.c: New test. + +2025-11-22 zhaozhou <zhaozhou@loongson.cn> + + * gcc.target/loongarch/vector/lsx/lsx-vec-construct-opt.c: + +2025-11-22 Daniele Sahebi <daniele@mkryss.me> + Jakub Jelinek <jakub@redhat.com> + + PR c++/122658 + * g++.dg/cpp2a/consteval42.C: New test. + +2025-11-21 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118358 + * gcc.target/xstormy16/pr118358.c: New. + +2025-11-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122762 + PR tree-optimization/122736 + PR tree-optimization/122790 + * gcc.dg/vect/vect-simd-clone-23.c: New testcase. + +2025-11-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122778 + * gcc.dg/vect/vect-simd-clone-22.c: New testcase. + * gcc.dg/vect/vect-simd-clone-22a.c: Likewise. + +2025-11-21 Marek Polacek <polacek@redhat.com> + + PR c++/120529 + * g++.dg/ext/reference_xes_from_temporary1.C: New test. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/121445 + * g++.dg/cpp1y/constexpr-121445.C: New test. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR target/122598 + * gcc.target/i386/pr122598.c: New test. + +2025-11-21 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/122773 + * gcc.dg/pr122773.c: New test. + +2025-11-21 Loeka Rogge <loeka@synopsys.com> + Keith Packard <keithp@keithp.com> + + PR target/120375 + * gcc.target/arc/no-barrel-shifter.c: New test. + +2025-11-21 Claudiu Zissulescu <claziss@gmail.com> + Michiel Derhaeg <michiel@synopsys.com> + + * gcc.target/arc/extvsi-3.c: New test. + +2025-11-21 Deng Jianbo <dengjianbo@loongson.cn> + + * gcc.target/loongarch/vector/lasx/lasx-builtin.c: Replace xvrepli + with xvldi. + * gcc.target/loongarch/vector/lasx/lasx-vec-init-2.c: Fix test. + * gcc.target/loongarch/vector/lsx/lsx-builtin.c: Repalce vrepli with + vldi. + * gcc.target/loongarch/vrepli.c: Ditto. + * gcc.target/loongarch/vector/lasx/lasx-xvldi-2.c: New test. + * gcc.target/loongarch/vector/lsx/lsx-vldi-2.c: New test. + +2025-11-20 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/pr113715.c: New test. + * gcc.target/riscv/rv32e_zcmp.c: Update expected output for + test_popretz. + * gcc.target/riscv/rv32i_zcmp.c: Likewise. + +2025-11-20 Pan Li <pan2.li@intel.com> + + PR target/122692 + * g++.target/riscv/pr122692-run-1.C: New test. + * g++.target/riscv/pr122692-run-2.C: New test. + +2025-11-20 Xi Ruoyao <xry111@xry111.site> + + PR target/122695 + * gcc.target/loongarch/pr122695-1.c: New test. + * gcc.target/loongarch/pr122695-2.c: New test. + +2025-11-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/120876 + * g++.dg/parse/crash81.C: New test. + +2025-11-19 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/122756 + * gcc.dg/pr122756.c: New. + +2025-11-19 Marek Polacek <polacek@redhat.com> + + PR c++/119580 + * g++.dg/template/crash106.C: Adjust expected diagnostics. + * g++.dg/template/crash112.C: Likewise. + * g++.dg/template/dependent-args1.C: Likewise. + * g++.dg/cpp0x/pr119580.C: New test. + +2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122754 + * g++.dg/tree-ssa/string-strlen-1.C: New test. + +2025-11-19 Alfie Richards <alfie.richards@arm.com> + + PR target/122763 + * gcc.target/aarch64/pr122763.c: New test. + +2025-11-19 Patrick Palka <ppalka@redhat.com> + + PR c++/122668 + PR c++/114764 + * g++.dg/cpp0x/noexcept91.C: New test. + +2025-11-19 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/simd/fold_to_highpart_6.c: Update codegen. + * gcc.target/aarch64/sve/fold_to_highpart_1.c: New test. + * gcc.target/aarch64/sve/fold_to_highpart_2.c: New test. + +2025-11-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122722 + * gcc.dg/vect/slp-reduc-14.c: New testcase. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121519 + * gcc.dg/pr121519.c: Add testcase for already fixed PR. + +2025-11-19 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/arm/mve/intrinsics/vgetq_lane_f16.c: Add missing + extern "C". Remove dg-skip-if. + * gcc.target/arm/mve/intrinsics/vgetq_lane_f32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s8.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u8.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s64.c: Likewise. Add + check-function-bodies. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u64.c: Likewise. + +2025-11-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122747 + * gcc.target/i386/vect-epilogues-10.c: New testcase. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/DRs/dr1670-1.C: New test. + * g++.dg/DRs/dr1670-2.C: New test. + * g++.dg/DRs/dr1670-3.C: New test. + * g++.dg/modules/auto-1_a.H: Use dg-options instead of + dg-additional-options. + * g++.dg/modules/auto-1_b.C: Likewise. + * g++.dg/cpp1y/auto-fn12.C: Likewise. + * g++.dg/cpp1y/auto-fn13.C: Add empty dg-options. + * g++.dg/cpp1y/auto-fn22.C: Likewise. + * g++.dg/cpp1y/constexpr-assert2.C: Likewise. + * g++.dg/cpp1y/auto-fn44.C: Add dg-options -Wpedantic and expect + further warnings. + * g++.dg/cpp1y/auto-fn50.C: Likewise. + * g++.dg/cpp0x/auto9.C: Expect two errors always rather than just + for C++11. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/122671 + * g++.dg/cpp26/constexpr-eh17.C: New test. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122184 + * g++.dg/opt/pr122184-1.C: New test. + * g++.dg/opt/pr122184-2.C: New test. + +2025-11-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * c-c++-common/asan/pr59063-2.c: Enable on Solaris. + +2025-11-19 Avinash Jayakar <avinashd@linux.ibm.com> + + PR target/119130 + * gcc.target/powerpc/builtins-1-p9-runnable.c: Use same expected + results for both endian format. + +2025-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/32365 + * gfortran.dg/goacc/routine-1.f90: Adjust dg-error format. + * gfortran.dg/goacc/routine-2.f90: Adjust dg-error format. + * gfortran.dg/gomp/declare-variant-17.f90: Adjust dg-error format. + * gfortran.dg/gomp/order-2.f90: Adjust dg-error format. + * gfortran.dg/gomp/pr78026.f03: Adjust dg-error format. + * gfortran.dg/gomp/requires-4.f90: Adjust dg-error format. + * gfortran.dg/gomp/requires-6.f90: Adjust dg-error format. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/arm/mve/intrinsics/vsetq_lane_f16_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_f32_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_s16_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_s32_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_s64_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_s8_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_u16_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_u32_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_u64_bounds.c: New test. + * gcc.target/arm/mve/intrinsics/vsetq_lane_u8_bounds.c: New test. + +2025-11-18 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/117814 + * gcc.target/arm/mve/intrinsics/pr117814-f16.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-2-f16.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-3-f16.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-4-f16.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-f32.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-2-f32.c: New test. + * gcc.target/arm/mve/intrinsics/pr117814-3-f32.c: New test. + * gcc.target/arm/fp16-compile-none-1.c: Delete. + * g++.target/arm/mve/general-c++/nomve_fp_1.c: Fix expected error + message. + * lib/target-supports.exp + (check_effective_target_arm_v8_1m_mve_nofp_ok_nocache): New. + (check_effective_target_arm_v8_1m_mve_nofp_ok): New. + (add_options_for_arm_v8_1m_mve_nofp): New. + +2025-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/32365 + * gfortran.dg/common_22.f90: Update. + * gfortran.dg/common_24.f: Update. + * gfortran.dg/goacc/routine-1.f90: Update. + * gfortran.dg/goacc/routine-2.f90: Update. + * gfortran.dg/gomp/declare-variant-17.f90: Update. + * gfortran.dg/gomp/interop-1.f90: Update. + * gfortran.dg/gomp/order-2.f90: Update. + * gfortran.dg/gomp/pr78026.f03: Update. + * gfortran.dg/gomp/requires-4.f90: Update. + * gfortran.dg/gomp/requires-6.f90: Update. + * gfortran.dg/pr61669.f90: Update. + * gfortran.dg/spec_statement_in_exec.f90: New test exercises + data/common/namelist/OpenMP directives with -fopenmp. + +2025-11-18 Uros Bizjak <ubizjak@gmail.com> + + * gcc.dg/pr116815.c: Require target int32. + +2025-11-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122736 + * gcc.target/i386/vect-pr122736.c: New testcase. + +2025-11-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122723 + * gcc.dg/vect/vect-reduc-cond-add-1.c: New generic functional + testcase. + * gcc.target/i386/vect-epilogues-6.c: New testcase. + * gcc.target/i386/vect-epilogues-7.c: Likewise. + * gcc.target/i386/vect-epilogues-8.c: Likewise. + * gcc.target/i386/vect-epilogues-9.c: Likewise. + +2025-11-18 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx512vl-pr103750-2.c: New test. + +2025-11-17 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122709 + * gfortran.dg/select_contiguous.f90: New test. + +2025-11-17 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122626 + * g++.dg/analyzer/malloc.C: Add sarif output to verify the fix for + PR analyzer/122626. + +2025-11-17 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-4188.rs: New test. + +2025-11-17 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/const-generics-5.rs: New test. + * rust/execute/torture/const-generics-6.rs: New test. + * rust/execute/torture/const-generics-7.rs: New test. + +2025-11-17 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/const_generics_18.rs: New test. + * rust/compile/const_generics_19.rs: New test. + * rust/execute/torture/const-generics-3.rs: New test. + * rust/execute/torture/const-generics-4.rs: New test. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4212.rs: + * rust/compile/issue-4219.rs: New test. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4162.rs: New test. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4222.rs: New test. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4261.rs: New test. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.com> + + * rust/compile/issue-4267.rs: New test. + +2025-11-17 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/const-generics-2.rs: New test. + +2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-3659.rs: New file. + +2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-4242.rs: New file. + * rust/execute/torture/issue-4242.rs: New file. + +2025-11-17 vishruth-thimmaiah <vishruththimmaiah@gmail.com> + + * rust/compile/const_generics_17.rs: New test. + * rust/compile/generics14.rs: New test. + +2025-11-17 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/execute/torture/literalpattern_neg.rs: New file. + +2025-11-17 Lucas Ly Ba <lucas.ly-ba@outlook.fr> + + * rust/compile/issue-3617.rs: New test. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/DRs/dr3079.C: New test. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/DRs/dr3061.C: New test. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/DRs/dr3045.C: New test. + +2025-11-17 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/slp-9.c: Use noipa function attribute, drop + -fno-early-inlining option. + * c-c++-common/restrict-2.c: Explicitly look for hoisted loads. + * gfortran.dg/pr104466.f90: Adjust. + +2025-11-17 Artemiy Volkov <artemiy.volkov@arm.com> + + * gcc.target/aarch64/simd/usubl2.c: New test. + +2025-11-17 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/goacc/cache-3-1.c: Add dg-skip-if for c++26. + * g++.dg/goacc/data-clause-2.C: Likewise. + * g++.dg/gomp/allocate-3.C: Likewise. + * c-c++-common/gomp/affinity-2.c: Use { c || c++23_down } effective + target. + * c-c++-common/goacc/cache-3-2.c: Replace [: in OpenMP or OpenACC + pragmas or attributes with [ : and :] with : ]. + * c-c++-common/goacc/data-clause-1.c: Likewise. + * c-c++-common/goacc/data-clause-2.c: Likewise. + * c-c++-common/goacc/data-clause-duplicate-1.c: Likewise. + * c-c++-common/goacc/mdc-2.c: Likewise. + * c-c++-common/goacc/readonly-1.c: Likewise. + * c-c++-common/gomp/allocate-4.c: Likewise. + * c-c++-common/gomp/clauses-3.c: Likewise. + * c-c++-common/gomp/declare-mapper-3.c: Likewise. + * c-c++-common/gomp/depend-1.c: Likewise. + * c-c++-common/gomp/depend-2.c: Likewise. + * c-c++-common/gomp/depend-3.c: Likewise. + * c-c++-common/gomp/depend-4.c: Likewise. + * c-c++-common/gomp/depend-5.c: Likewise. + * c-c++-common/gomp/depend-6.c: Likewise. + * c-c++-common/gomp/dispatch-1.c: Likewise. + * c-c++-common/gomp/loop-5.c: Likewise. + * c-c++-common/gomp/map-1.c: Likewise. + * c-c++-common/gomp/map-2.c: Likewise. + * c-c++-common/gomp/map-4.c: Likewise. + * c-c++-common/gomp/map-7.c: Likewise. + * c-c++-common/gomp/pr100902-1.c: Likewise. + * c-c++-common/gomp/pr103642.c: Likewise. + * c-c++-common/gomp/pr120180-1.c: Likewise. + * c-c++-common/gomp/pr61486-1.c: Likewise. + * c-c++-common/gomp/pr81006.c: Likewise. + * c-c++-common/gomp/pr91920.c: Likewise. + * c-c++-common/gomp/pr96867.c: Likewise. + * c-c++-common/gomp/pr99928-16.c: Likewise. + * c-c++-common/gomp/reduction-1.c: Likewise. + * c-c++-common/gomp/scan-1.c: Likewise. + * c-c++-common/gomp/target-data-1.c: Likewise. + * c-c++-common/gomp/target-enter-data-1.c: Likewise. + * c-c++-common/gomp/target-has-device-addr-1.c: Likewise. + * c-c++-common/gomp/target-implicit-map-2.c: Likewise. + * c-c++-common/gomp/target-map-iterators-1.c: Likewise. + * c-c++-common/gomp/target-map-iterators-3.c: Likewise. + * c-c++-common/gomp/target-update-iterators-1.c: Likewise. + * c-c++-common/gomp/target-update-iterators-3.c: Likewise. + * g++.dg/goacc/cache-3-1.C: Likewise. + * g++.dg/goacc/cache-3-2.C: Likewise. + * g++.dg/goacc/data-clause-1.C: Likewise. + * g++.dg/goacc/mdc.C: Likewise. + * g++.dg/gomp/array-section-2.C: Likewise. + * g++.dg/gomp/bad-array-section-10.C: Likewise. + * g++.dg/gomp/bad-array-section-11.C: Likewise. + * g++.dg/gomp/bad-array-section-9.C: Likewise. + * g++.dg/gomp/declare-mapper-1.C: Likewise. + * g++.dg/gomp/declare-mapper-2.C: Likewise. + * g++.dg/gomp/depend-1.C: Likewise. + * g++.dg/gomp/depend-2.C: Likewise. + * g++.dg/gomp/ind-base-3.C: Likewise. + * g++.dg/gomp/map-1.C: Likewise. + * g++.dg/gomp/map-2.C: Likewise. + * g++.dg/gomp/map-ptrmem-1.C: Likewise. + * g++.dg/gomp/map-ptrmem-2.C: Likewise. + * g++.dg/gomp/member-array-2.C: Likewise. + * g++.dg/gomp/target-this-3.C: Likewise. + * g++.dg/gomp/target-this-4.C: Likewise. + +2025-11-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122573 + * gcc.dg/vect/costmodel/x86_64/costmodel-pr122573.c: New testcase. + +2025-11-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vmsne.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add the helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-u8.c: New test. + +2025-11-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmsne.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsne-run-1-i8.c: New test. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121345 + * g++.dg/pr121345.C: New. + +2025-11-16 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/pr102983.c: Adjust final check. + +2025-11-16 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122625 + * g++.dg/modules/inst-7_a.C: New test. + * g++.dg/modules/inst-7_b.C: New test. + +2025-11-16 Lewis Hyatt <lhyatt@gmail.com> + + * gcc.dg/plugin/location-overflow-test-3.c: New test. + * gcc.dg/plugin/plugin.exp: Add the new test. + +2025-11-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * g++.dg/tree-ssa/pr117123.C: un-xfail. + +2025-11-16 Sam James <sam@gentoo.org> + + * gcc.target/aarch64/crc-crc32-data16.c: Fix iteration + count to match testname. + +2025-11-15 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/asan/asan-stack-small.c (pa, pb, pc): Make these + vars volatile. + (uintptr_t): New typedef. + (main): Use access of b using pa pointer with offset depending on + how exactly the 3 variables are laid out in the frame. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/using-33_a.C: New test. + * g++.dg/modules/using-33_b.C: New test. + +2025-11-15 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/friend-11_a.C: New test. + * g++.dg/modules/friend-11_b.C: New test. + +2025-11-15 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/cmpbr-4.c: New test. + * gcc.target/aarch64/cmpbr-5.c: New test. + +2025-11-14 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Drop unnecessary output + test(s). + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-1.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-2.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-3.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-4.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-5.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-6.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-7.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-8.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-9.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-10.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-11.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-12.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-13.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-14.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-15.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-16.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-17.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-18.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-19.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-20.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-21.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-22.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-23.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-24.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-25.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-26.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-27.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_phi-28.c: Likewise. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/arm/mve/intrinsics/sqshl_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/srshr_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/uqshl_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/urshr_check_shift.c: New test. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/arm/mve/intrinsics/sqshll_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/srshrl_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/uqshll_check_shift.c: New test. + * gcc.target/arm/mve/intrinsics/urshrl_check_shift.c: New test. + +2025-11-14 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/value_optional_3.f90: New test. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR ipa/122663 + * g++.dg/torture/pr122663.C: New testcase. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122573 + * gcc.dg/vect/slp-58.c: New testcase. + +2025-11-14 Harald Anlauf <anlauf@gmx.de> + + PR fortran/117070 + * gfortran.dg/proc_target_1.f90: New test. + +2025-11-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122680 + * gcc.dg/vect/pr122680.c: New testcase. + +2025-11-14 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122216 + * gcc.target/arm/mve/intrinsics/asrl-various-ranges.c: New test. + * gcc.target/arm/mve/intrinsics/lsll-various-ranges.c: New test. + +2025-11-14 zhaozhou <zhaozhou@loongson.cn> + + * gcc.target/loongarch/vec_reduc_half.c: New test. + +2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/96255 + * gfortran.dg/do_concurrent_typespec_1.f90: Delete three + dg-bogus directives not needed. + +2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122646 + * g++.dg/modules/friend-10_a.C: New test. + * g++.dg/modules/friend-10_b.C: New test. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122493 + * gcc.target/i386/pr121062-1.c: Update count. + * gcc.dg/uninit-pred-7_a.c: xfail line 23. + * g++.dg/uninit-pred-5.C: Change dg-warning to dg-bogus. + * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Update count of jump thread. + +2025-11-13 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122637 + * gcc.dg/torture/pr122637-1.c: New test. + +2025-11-13 Michal Jires <mjires@suse.cz> + + PR lto/122603 + * gcc.dg/lto/pr122603_0.c: New test. + +2025-11-13 Artemiy Volkov <artemiy.volkov@arm.com> + + * gcc.dg/tree-ssa/forwprop-43.c: Adjust. + +2025-11-13 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122627 + * gcc.target/riscv/rvv/autovec/pr122627.c: New test. + +2025-11-13 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/kortest_ccz-1.c: New test. + +2025-11-13 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122551 + * g++.dg/modules/tpl-friend-20_a.C: New test. + * g++.dg/modules/tpl-friend-20_b.C: New test. + * g++.dg/modules/tpl-friend-20_c.C: New test. + +2025-11-13 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.target/aarch64/eor3-opt.c: New test. + +2025-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/96255 + * gfortran.dg/do_concurrent_typespec_1.f90: Update testcase to check + for bugus warnings. + +2025-11-12 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122175 + * gcc.target/arm/mve/intrinsics/vbicq_m_n_s16.c: Adjust expected + output. + * gcc.target/arm/mve/intrinsics/vbicq_m_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vbicq_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vbicq_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_m_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_m_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_x_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vmvnq_x_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vorrq_m_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vorrq_m_n_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vorrq_n_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vorrq_n_u16.c: Likewise. + +2025-11-12 Antoni Boucher <bouanto@zoho.com> + + * jit.dg/all-non-failing-tests.h: Mention new test. + * jit.dg/test-abi.c: New test. + +2025-11-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122653 + * gcc.dg/tree-ssa/scev-16.c: New testcase. + +2025-11-12 Christophe Lyon <christophe.lyon@linaro.org> + Richard Earnshaw <rearnsha@arm.com> + + PR target/122175 + * gcc.target/arm/mve/intrinsics/pr122175.c: New test. + +2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.target/arm/cmse/mainline/8m/hard/union-fp.c: New. + * gcc.target/arm/cmse/baseline/union-4.c: New. + * gcc.target/arm/cmse/mainline/8m/hard/union-4.c: New. + * gcc.target/arm/cmse/mainline/8m/soft/union-4.c: New. + * gcc.target/arm/cmse/mainline/8m/softfp/union-4.c: New. + * gcc.target/arm/cmse/union-4.x: New. + +2025-11-12 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.target/arm/cmse/union-3.x: New test. + * gcc.target/arm/cmse/baseline/union-3.c: New test. + * gcc.target/arm/cmse/mainline/8m/union-3.c: New test. + * gcc.target/arm/cmse/mainline/8_1m/union-3.c: New test. + +2025-11-12 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/stack-protector-guard-global-1.c: New test. + * gcc.target/s390/stack-protector-guard-global-2.c: New test. + * gcc.target/s390/stack-protector-guard-global-3.c: New test. + * gcc.target/s390/stack-protector-guard-global-4.c: New test. + +2025-11-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122647 + * g++.dg/vect/pr122647.cc: New testcase. + +2025-11-12 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/warn34.adb: New test. + +2025-11-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/36725 + * gfortran.dg/fmt_g0_4.f08: Change test case from + compile only to compile and run. Adjust test conditions. + +2025-11-11 Christopher Albert <albert@tugraz.at> + + PR fortran/90519 + * gfortran.dg/finalizer_recursive_alloc_1.f90: New test for ICE fix. + * gfortran.dg/finalizer_recursive_alloc_2.f90: New execution test. + * gfortran.dg/finalizer_self_assign.f90: New test for self-assignment + including a = a, a = (a), and a = (((a))) cases using if/stop pattern. + * gfortran.dg/pr112459.f90: Update to expect 6 _final calls instead + of 12, reflecting corrected self-assignment behavior. + +2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + Steve Kargl <kargl@gcc.gnu.org> + + PR fortran/96255 + * gfortran.dg/do_concurrent_typespec_1.f90: New test covering all + shadowing scenarios: undeclared variable, same kind shadowing, and + different kind shadowing. + +2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/90374 + PR libfortran/90374 + * gfortran.dg/fmt_error_10.f: Update test case to pass. + * gfortran.dg/fmt_zero_width.f90: Likewise. + * gfortran.dg/pr111022.f90: Likewise. + * gfortran.dg/pr96436_4.f90: Likewise. + * gfortran.dg/pr96436_5.f90: Likewise. + +2025-11-11 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vmseq.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-u8.c: New test. + +2025-11-11 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmseq.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmseq-run-1-i8.c: New test. + +2025-11-11 Dhruv Chawla <dhruvc@nvidia.com> + + * gcc.dg/match-shift-cmp-1.c: New test. + * gcc.dg/match-shift-cmp-2.c: Likewise. + * gcc.dg/match-shift-cmp-3.c: Likewise. + * gcc.dg/match-shift-cmp-4.c: Likewise. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * g++.target/loongarch/mv-symbols1.C: New test. + * g++.target/loongarch/mv-symbols2.C: New test. + * g++.target/loongarch/mv-symbols3.C: New test. + * g++.target/loongarch/mv-symbols4.C: New test. + * g++.target/loongarch/mv-symbols5.C: New test. + * g++.target/loongarch/mv-symbols6.C: New test. + * g++.target/loongarch/mvc-symbols1.C: New test. + * g++.target/loongarch/mvc-symbols2.C: New test. + * g++.target/loongarch/mvc-symbols3.C: New test. + * g++.target/loongarch/mvc-symbols4.C: New test. + * g++.target/loongarch/mvc-symbols5.C: New test. + * gcc.target/loongarch/attr-check-error-message1.c: New test. + * gcc.target/loongarch/attr-check-error-message2.c: New test. + * gcc.target/loongarch/attr-check-error-message3.c: New test. + * gcc.target/loongarch/attr-check-error-message4.c: New test. + * gcc.target/loongarch/attr-check-error-message5.c: New test. + * gcc.target/loongarch/attr-check-error-message6.c: New test. + * gcc.target/loongarch/attr-check-error-message7.c: New test. + * gcc.target/loongarch/attr-check-error-message8.c: New test. + * gcc.target/loongarch/attr-check-error-message9.c: New test. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/pragma-la64V1_1.c: New test. + * gcc.target/loongarch/pragma-la64V1_1-2.c: New test. + +2025-11-11 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/attr-check-error-message.c: Add tests. + +2025-11-11 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122629 + * gcc.dg/torture/pr122629-1.c: New test. + * gcc.dg/torture/pr122629-2.c: New test. + * gcc.dg/tree-ssa/pr122629-1.c: New test. + +2025-11-11 Hu, Lin1 <lin1.hu@intel.com> + + PR target/122446 + * gcc.target/i386/amxbf16-asmintel-1.c: Modify dg-final to check intel + form. + * gcc.target/i386/amxcomplex-asmintel-1.c: Ditto. + * gcc.target/i386/amxfp16-asmintel-1.c: Ditto. + * gcc.target/i386/amxfp8-asmintel-1.c: Ditto. + * gcc.target/i386/amxint8-asmintel-1.c: Ditto. + * gcc.target/i386/amxmovrs-asmintel-1.c: Ditto. + * gcc.target/i386/amxtf32-asmintel-1.c: Ditto. + * gcc.target/i386/amxtile-asmintel-1.c: Ditto. + * g++.target/i386/pr122446-1.C: New test. + * g++.target/i386/pr122446-amxavx512.C: Ditto. + * g++.target/i386/pr122446-amxbf16.C: Ditto. + * g++.target/i386/pr122446-amxcomplex.C: Ditto. + * g++.target/i386/pr122446-amxfp16.C: Ditto. + * g++.target/i386/pr122446-amxfp8.C: Ditto. + * g++.target/i386/pr122446-amxint8.C: Ditto. + * g++.target/i386/pr122446-amxmovrs.C: Ditto. + * g++.target/i386/pr122446-amxtf32.C: Ditto. + * g++.target/i386/pr122446-amxtile.C: Ditto. + +2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122628 + * g++.dg/modules/internal-18.C: New test. + +2025-11-10 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/tpl-friend-8_a.H: Add testcase. + * g++.dg/modules/tpl-friend-8_b.C: Add testcase. + +2025-11-10 Alejandro Colomar <alx@kernel.org> + + PR c/122591 + * gcc.dg/countof-compile.c (type): Test return type of _Countof. + +2025-11-10 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/122415 + * gcc.target/pru/pr122415-1.c: New test. + * gcc.target/pru/pr122415-2.c: New test. + +2025-11-10 Tejas Belagod <tejas.belagod@arm.com> + + * gcc.target/aarch64/sve/acle/general-c/svcount_1.c: Update message. + +2025-11-10 Tejas Belagod <tejas.belagod@arm.com> + + * g++.dg/ext/sve-sizeless-1.C: Add new tests. + * g++.dg/ext/sve-sizeless-2.C: Add new tests. + * g++.target/aarch64/sve/acle/general-c++/gnu_vectors_1.C: Add new tests. + * g++.target/aarch64/sve/acle/general-c++/gnu_vectors_2.C: Add new tests. + * gcc.target/aarch64/sve/acle/general-c/gnu_vectors_1.c: Add new tests. + * gcc.target/aarch64/sve/acle/general-c/gnu_vectors_2.c: Add new tests. + * gcc.target/aarch64/sve/acle/general-c/sizeless-1.c: Add new tests. + * gcc.target/aarch64/sve/acle/general-c/sizeless-2.c : Add new tests. + +2025-11-10 Tejas Belagod <tejas.belagod@arm.com> + + * gcc.target/aarch64/sve/acle/general/cops_bool.c: New. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr121985.c: New test. + +2025-11-10 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr118019-2.c: + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/119064 + * g++.dg/cpp26/feat-cxx26.C: Revert 2025-07-11 changes. + * g++.dg/DRs/dr2581-1.C (__cpp_trivial_relocatability): Remove test. + * g++.dg/DRs/dr2581-2.C (__cpp_trivial_relocatability): Likewise. + * g++.dg/warn/Wkeyword-macro-1.C: Don't expect any diagnostics on + #define or #undef of trivially_relocatable_if_eligible or + replaceable_if_eligible. + * g++.dg/warn/Wkeyword-macro-2.C: Likewise. + * g++.dg/warn/Wkeyword-macro-4.C: Likewise. + * g++.dg/warn/Wkeyword-macro-5.C: Likewise. + * g++.dg/warn/Wkeyword-macro-7.C: Likewise. + * g++.dg/warn/Wkeyword-macro-8.C: Likewise. + * g++.dg/cpp26/trivially-relocatable1.C: Remove. + * g++.dg/cpp26/trivially-relocatable2.C: Remove. + * g++.dg/cpp26/trivially-relocatable3.C: Remove. + * g++.dg/cpp26/trivially-relocatable4.C: Remove. + * g++.dg/cpp26/trivially-relocatable5.C: Remove. + * g++.dg/cpp26/trivially-relocatable6.C: Remove. + * g++.dg/cpp26/trivially-relocatable7.C: Remove. + * g++.dg/cpp26/trivially-relocatable8.C: Remove. + * g++.dg/cpp26/trivially-relocatable9.C: Remove. + * g++.dg/cpp26/trivially-relocatable10.C: Remove. + * g++.dg/cpp26/trivially-relocatable11.C: Remove. + * g++.dg/modules/class-11_a.H: Remove trivial relocatability + related parts. + * g++.dg/modules/class-11_b.C: Likewise. + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/warn/Wkeyword-macro-1.C: Expect diagnostics on define/undef + of indeterminate. + * g++.dg/warn/Wkeyword-macro-2.C: Likewise. + * g++.dg/warn/Wkeyword-macro-4.C: Likewise. + * g++.dg/warn/Wkeyword-macro-5.C: Likewise. + * g++.dg/warn/Wkeyword-macro-7.C: Likewise. + * g++.dg/warn/Wkeyword-macro-8.C: Likewise. + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/warn/Wkeyword-macro-4.C: Don't diagnose for #undef likely + or #undef unlikely. + * g++.dg/warn/Wkeyword-macro-5.C: Likewise. + * g++.dg/warn/Wkeyword-macro-9.C: Likewise. + * g++.dg/warn/Wkeyword-macro-8.C: Likewise. + * g++.dg/warn/Wkeyword-macro-10.C: Likewise. + +2025-11-10 Lewis Hyatt <lhyatt@gmail.com> + + PR preprocessor/105608 + * g++.dg/pch/line-map-3.C: Remove xfails. + * g++.dg/pch/line-map-4.C: New test. + * g++.dg/pch/line-map-4.Hs: New test. + +2025-11-09 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/apx-ndd-tls-1b.c: Change to xfail for ! ia32. + +2025-11-09 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/indirect-thunk-5.c: Drop x32 scan. + * gcc.target/i386/indirect-thunk-6.c: Likewise. + * gcc.target/i386/indirect-thunk-extern-5.c: Likewise. + * gcc.target/i386/indirect-thunk-extern-6.c: Likewise. + * gcc.target/i386/indirect-thunk-inline-5.c: Likewise. + * gcc.target/i386/indirect-thunk-inline-6.c: Likewise. + +2025-11-09 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/cmov12.c: Limit to lp64. + +2025-11-09 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/shrink_wrap_1.c: Limit to lp64. + +2025-11-09 H.J. Lu <hjl.tools@gmail.com> + + * gcc.dg/pr90838.c: Adjust for x32 + +2025-11-08 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/limited_with4.ads: Rename to... + * gnat.dg/specs/limited_with1.ads: ...this. + * gnat.dg/specs/limited_with4_pkg.ads: Rename to... + * gnat.dg/specs/limited_with1_pkg.ads: ...this. + * gnat.dg/specs/limited_with2-child1.ads: New test. + * gnat.dg/specs/limited_with2-child2.ads: Likewise. + * gnat.dg/specs/limited_with2.ads: New helper. + +2025-11-08 Philipp Tomsich <philipp.tomsich@vrull.eu> + + * gcc.target/riscv/snez.c: New test. + +2025-11-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/113338 + * gfortran.dg/c-interop/pr113338-c.c: New test. + * gfortran.dg/c-interop/pr113338.f90: New test. + +2025-11-08 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/122126 + * gcc.dg/pr122126_vextr.c: New test. + * gcc.dg/pr122126_vset.c: New test. + +2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * gfortran.dg/alloc_comp_deep_copy_7.f90: New test. + +2025-11-08 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122599 + * gcc.dg/torture/pr122599-1.c: New test. + +2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122588 + * gcc.c-torture/compile/pr122588-1.c: New test. + * gcc.dg/tree-ssa/pr122588-1.c: New test. + +2025-11-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR testsuite/122602 + * gcc.dg/vect/complex/complex-operations-run.c: Move to... + * gcc.dg/vect/complex/vect-complex-operations-run.c: ...here. + +2025-11-07 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/class_wide6.ads, gnat.dg/class_wide6.adb: New test. + * gnat.dg/class_wide6_pkg.ads: New helper. + +2025-11-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122577 + * gcc.dg/vect/vect-bool-3.c: New testcase. + +2025-11-07 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/pr121959-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959-2.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959-3.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959-4.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959-5.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959-run-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr121959.h: New test. + +2025-11-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122589 + PR middle-end/122594 + * g++.dg/torture/pr122589.C: New testcase. + +2025-11-07 Alfie Richards <alfie.richards@arm.com> + + PR target/118328 + * gcc.target/aarch64/preserve_none_1.c: New test. + * gcc.target/aarch64/preserve_none_mingw_1.c: New test. + * gcc.target/aarch64/preserve_none_2.c: New test. + * gcc.target/aarch64/preserve_none_3.c: New test. + * gcc.target/aarch64/preserve_none_4.c: New test. + * gcc.target/aarch64/preserve_none_5.c: New test. + * gcc.target/aarch64/preserve_none_6.c: New test. + +2025-11-07 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwmaccu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwmaccu-run-1-u64.c: New test. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/sign-extend-4.c: New test. + * gcc.target/loongarch/sign-extend-5.c: New test. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/sign-extend-3.c: New test. + +2025-11-07 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/sign-extend-6.c: New test. + +2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * gfortran.dg/alloc_comp_deep_copy_5.f90: New test for recursive + allocatable array deep copy. + * gfortran.dg/alloc_comp_deep_copy_6.f90: New test for multi-level + recursive allocatable deep copy. + * gfortran.dg/array_memcpy_2.f90: Fix test with proper allocation. + Signed-off-by: Christopher Albert <albert@tugraz.at> + +2025-11-06 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/prefix3.adb: New test. + * gnat.dg/prefix3_pkg.ads: New helper. + * gnat.dg/prefix3_pkg.adb: Likewise. + +2025-11-06 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/czero-bext.c: New test. + +2025-11-06 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/renaming19.adb: New test. + * gnat.dg/renaming19_pkg.ads: New helper. + * gnat.dg/renaming19_pkg.adb: Likewise. + +2025-11-06 Your Name <jlaw@ventanamicro.com> + + PR rtl-optimization/121136 + * gcc.target/riscv/pr121136.c: New test. + * gcc.dg/cmp-mem-const-1.c: Skip for risc-v. + * gcc.dg/cmp-mem-const-2.c: Likewise. + +2025-11-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122502 + * gcc.dg/torture/pr122502-2.c: New testcase. + +2025-11-06 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/113632 + * gcc.dg/pr113632.c: New. + +2025-11-06 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp + (check_effective_target_arm_v8_vfp_ok_nocache): New. + (check_effective_target_arm_v8_vfp_ok): Call the above helper, and + use global flags. + (add_options_for_arm_v8_vfp): Use et_arm_v8_vfp_flags. + * gcc.target/arm/lceil-vcvt_1.c: Remove -march=armv8-a. + * gcc.target/arm/lfloor-vcvt_1.c: Likewise. + * gcc.target/arm/lround-vcvt_1.c: Likewise. + * gcc.target/arm/vrinta-ce.c: Likewise. + +2025-11-06 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/vect-frint-no-inexact.c (dg-options): Add + -mcmodel=normal. + * gcc.target/loongarch/vect-frint-scalar-no-inexact.c: Likewise. + * gcc.target/loongarch/vect-frint-scalar.c: Likewise. + * gcc.target/loongarch/vect-frint.c: Likewise. + * gcc.target/loongarch/vect-ftint-no-inexact.c: Likewise. + * gcc.target/loongarch/vect-ftint.c: Likewise. + +2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121574 + * g++.dg/modules/internal-17_b.C: Check for diagnostics when + instantiating imported TU-local entities. + +2025-11-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121574 + * g++.dg/modules/internal-17_a.C: New test. + * g++.dg/modules/internal-17_b.C: New test. + +2025-11-05 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/discr8.ads: New test. + +2025-11-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122566 + * gfortran.dg/pdt_68.f03: New test. + +2025-11-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122501 + PR fortran/122524 + * gfortran.dg/pdt_66.f03: New test. + * gfortran.dg/pdt_67.f03: New test. + +2025-11-05 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/122570 + * gfortran.dg/gomp/pr122570.f: New test. + +2025-11-05 Artemiy Volkov <artemiy.volkov@arm.com> + + * gcc.dg/tree-ssa/forwprop-43.c: New test. + * gcc.target/aarch64/simd/combine_ext.c: New test. + +2025-11-05 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: Update. + +2025-11-04 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/protected_subtype1.adb: New test. + +2025-11-04 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst9.ads: New test. + * gnat.dg/specs/generic_inst9_pkg1.ads: New helper. + * gnat.dg/specs/generic_inst9_pkg2.ads: Likewise. + * gnat.dg/specs/generic_inst9_pkg2-g.ads: Likewise. + +2025-11-04 Uros Bizjak <ubizjak@gmail.com> + + PR target/122390 + * gcc.target/i386/pr122390.c: New test. + * gcc.target/i386/pr122390-1.c: New test. + +2025-11-04 Kees Cook <kees@kernel.org> + + * gcc.target/arc/builtin_fls_const.c: New test. Verify that + const attribute enables CSE optimization for mathematical ARC + builtins by checking that duplicate calls are eliminated and + results are optimized to shift operations. + +2025-11-04 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/122369 + PR fortran/122508 + * gfortran.dg/gomp/pr122369-1.f90: New test. + * gfortran.dg/gomp/pr122369-2.f90: New test. + * gfortran.dg/gomp/pr122369-3.f90: New test. + * gfortran.dg/gomp/pr122369-4.f90: New test. + * gfortran.dg/gomp/pr122508-1.f90: New test. + * gfortran.dg/gomp/pr122508-2.f90: New test. + +2025-11-04 Siddhesh Poyarekar <siddhesh@gotplt.org> + + PR lto/122515 + * lib/lto.exp (lto-build-archive): New procedure. + (lto-execute-1): Use it. + (lto-link-and-maybe-run, lto-get-options-main): Handle ar-link. + * gcc.dg/lto/pr122515_0.c: New test case. + * gcc.dg/lto/pr122515_1.c: New file. + * gcc.dg/lto/pr122515_2.c: Likewise. + * gcc.dg/lto/pr122515_3.c: Likewise. + * gcc.dg/lto/pr122515_4.c: Likewise. + * gcc.dg/lto/pr122515_5.c: Likewise. + * gcc.dg/lto/pr122515_6.c: Likewise. + * gcc.dg/lto/pr122515_7.c: Likewise. + * gcc.dg/lto/pr122515_8.c: Likewise. + * gcc.dg/lto/pr122515_9.c: Likewise. + +2025-11-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122253 + * g++.dg/modules/internal-16.C: New test. + +2025-11-04 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/122513 + * gfortran.dg/pr122513-2.f90: New test. + +2025-11-04 Kishan Parmar <kishan@linux.ibm.com> + + PR rtl-optimization/93738 + * gcc.target/powerpc/rlwimi-2.c: Update expected rldicl count. + +2025-11-04 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/122544 + * g++.dg/analyzer/exception-path-1-sarif.py: New test script. + * g++.dg/analyzer/exception-path-1.C: Add SARIF output, and use + the above to check it. + * g++.dg/analyzer/exception-path-unwind-multiple-2-sarif.py: New + test script. + * g++.dg/analyzer/exception-path-unwind-multiple-2.C: Add SARIF + output, and use the above to check it. + * gcc.dg/analyzer/setjmp-3-sarif.py: New test script. + * gcc.dg/analyzer/setjmp-3.c: Add SARIF output, and use + the above to check it. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/generic_inst15.adb: New test. + * gnat.dg/generic_inst15_pkg-g.ads: New helper. + * gnat.dg/generic_inst15_pkg.ads: Likewise. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/abstract1.ads: New test. + +2025-11-03 Uros Bizjak <ubizjak@gmail.com> + + PR target/122534 + * gcc.target/i386/pr122534.c: New test. + +2025-11-03 Robin Dapp <rdapp.gcc@gmail.com> + + * gcc.target/riscv/rvv/base/pr119115.c: Add -std=gnu99. + +2025-11-03 Steve Kargl <kargls@comcast.net> + + PR fortran/122513 + * gfortran.dg/pr122513.f90: New test. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * g++.dg/lookup/koenig16.C: New test. + * g++.dg/modules/adl-11_a.C: New file. + * g++.dg/modules/adl-11_b.C: New file. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/builtin-9_a.C: New test. + * g++.dg/modules/builtin-9_b.C: New test. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/clone-5_a.C: New test. + * g++.dg/modules/clone-5_b.C: New test. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/namespace-15_a.C: New test. + * g++.dg/modules/namespace-15_b.C: New test. + +2025-11-03 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/torture/pr92606.c: Use LPM even if LPMx + is available. + +2025-11-03 Loeka Rogge <loeka@synopsys.com> + + * gcc.target/arc/movv2hi-be.c: New test. + +2025-11-03 Kito Cheng <kito.cheng@sifive.com> + + * g++.dg/abi/param2.C: Add -Wno-psabi option for RISC-V. + * g++.target/riscv/abi/empty-struct+union-1.cc: New test. + * g++.target/riscv/abi/empty-struct+union-2.cc: New test. + * g++.target/riscv/abi/empty-struct+union-3.cc: New test. + * g++.target/riscv/abi/empty-struct+union-4.cc: New test. + * g++.target/riscv/abi/empty-struct-1.cc: New test. + * g++.target/riscv/abi/empty-struct-2.cc: New test. + * g++.target/riscv/abi/empty-struct-3.cc: New test. + * g++.target/riscv/abi/empty-struct-4.cc: New test. + * g++.target/riscv/abi/empty-struct-5.cc: New test. + * g++.target/riscv/abi/empty-struct-6.cc: New test. + * g++.target/riscv/abi/empty-struct-7.cc: New test. + * g++.target/riscv/abi/empty-struct-8.cc: New test. + * g++.target/riscv/abi/empty-struct-9.cc: New test. + * g++.target/riscv/abi/empty-struct-10.cc: New test. + * g++.target/riscv/abi/empty-struct-11.cc: New test. + * g++.target/riscv/abi/empty-struct-12.cc: New test. + * g++.target/riscv/abi/empty-union-1.cc: New test. + * g++.target/riscv/abi/empty-union-2.cc: New test. + * g++.target/riscv/abi/empty-union-3.cc: New test. + * g++.target/riscv/abi/empty-union-4.cc: New test. + * g++.target/riscv/riscv.exp: Add abi subdirectory. + * gcc.dg/compat/pr83487-1_x.c: Add -Wno-psabi option for RISC-V. + * gcc.dg/compat/pr83487-1_y.c: Likewise. + * gcc.dg/compat/pr83487-2_x.c: Likewise. + * gcc.dg/compat/pr83487-2_y.c: Likewise. + * gcc.dg/torture/pr28814.c: Likewise. + * gcc.target/riscv/abi/empty-struct+union-1.c: New test. + * gcc.target/riscv/abi/empty-struct+union-2.c: New test. + * gcc.target/riscv/abi/empty-struct+union-3.c: New test. + * gcc.target/riscv/abi/empty-struct+union-4.c: New test. + * gcc.target/riscv/abi/empty-struct-1.c: New test. + * gcc.target/riscv/abi/empty-struct-2.c: New test. + * gcc.target/riscv/abi/empty-struct-3.c: New test. + * gcc.target/riscv/abi/empty-struct-4.c: New test. + * gcc.target/riscv/abi/empty-struct-5.c: New test. + * gcc.target/riscv/abi/empty-struct-6.c: New test. + * gcc.target/riscv/abi/empty-struct-7.c: New test. + * gcc.target/riscv/abi/empty-struct-8.c: New test. + * gcc.target/riscv/abi/empty-struct-9.c: New test. + * gcc.target/riscv/abi/empty-struct-10.c: New test. + * gcc.target/riscv/abi/empty-struct-11.c: New test. + * gcc.target/riscv/abi/empty-struct-12.c: New test. + * gcc.target/riscv/abi/empty-union-1.c: New test. + * gcc.target/riscv/abi/empty-union-2.c: New test. + * gcc.target/riscv/abi/empty-union-3.c: New test. + * gcc.target/riscv/abi/empty-union-4.c: New test. + * gcc.target/riscv/riscv.exp: Add abi subdirectory. + +2025-11-03 Alfie Richards <alfie.richards@arm.com> + + PR target/122405 + * g++.target/aarch64/mv-cpu-features.C: Add HWCAP_ATOMICS and + HWCAP2_RNG defines. + +2025-11-03 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/fmv_priority.in: Update for new features. + * gcc.target/aarch64/fmv_priority1.c: Ditto. + * gcc.target/aarch64/fmv_priority2.c: Ditto. + +2025-11-03 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/vect19.ads, gnat.dg/vect19.adb: New test. + * gnat.dg/vect19_pkg.ads, gnat.dg/vect19_pkg.adb: New helper. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/mode-tieable-opt.c: New test. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/mem-and-mask-opt.c: New test. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/vec_pack_unpack_256.c: Adjust to changed + lasx_xvpermi_q_<LASX:mode> template. + * gcc.target/loongarch/vector/lasx/lasx-builtin.c: Ditto. + * gcc.target/loongarch/lasx-xvpermi_q-opt.c: New test. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/and-large-immediate-opt.c: New test. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/extendsidi2-combine.c: New test. + * gcc.target/loongarch/spill-less.c: New test. + +2025-11-03 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/mulh_wu.c: New test. + +2025-11-03 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122475 + * gcc.dg/vect/pr122475.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-19.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-20.c: New test. + +2025-11-03 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/builtin-memmove-1a.c: New test. + * gcc.target/i386/builtin-memmove-1b.c: Likewise. + * gcc.target/i386/builtin-memmove-1c.c: Likewise. + * gcc.target/i386/builtin-memmove-1d.c: Likewise. + * gcc.target/i386/builtin-memmove-2a.c: Likewise. + * gcc.target/i386/builtin-memmove-2b.c: Likewise. + * gcc.target/i386/builtin-memmove-2c.c: Likewise. + * gcc.target/i386/builtin-memmove-2d.c: Likewise. + * gcc.target/i386/builtin-memmove-3a.c: Likewise. + * gcc.target/i386/builtin-memmove-3b.c: Likewise. + * gcc.target/i386/builtin-memmove-3c.c: Likewise. + * gcc.target/i386/builtin-memmove-4a.c: Likewise. + * gcc.target/i386/builtin-memmove-4b.c: Likewise. + * gcc.target/i386/builtin-memmove-4c.c: Likewise. + * gcc.target/i386/builtin-memmove-5a.c: Likewise. + * gcc.target/i386/builtin-memmove-5b.c: Likewise. + * gcc.target/i386/builtin-memmove-5c.c: Likewise. + * gcc.target/i386/builtin-memmove-6.c: Likewise. + * gcc.target/i386/builtin-memmove-7.c: Likewise. + * gcc.target/i386/builtin-memmove-8.c: Likewise. + * gcc.target/i386/builtin-memmove-9.c: Likewise. + * gcc.target/i386/builtin-memmove-10.c: Likewise. + * gcc.target/i386/builtin-memmove-11a.c: Likewise. + * gcc.target/i386/builtin-memmove-11b.c: Likewise. + * gcc.target/i386/builtin-memmove-11c.c: Likewise. + * gcc.target/i386/builtin-memmove-12.c: Likewise. + * gcc.target/i386/builtin-memmove-13.c: Likewise. + * gcc.target/i386/builtin-memmove-14.c: Likewise. + * gcc.target/i386/builtin-memmove-15.c: Likewise. + +2025-11-03 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/52345 + * gcc.target/riscv/pr52345.c: Add new test cases. + +2025-11-03 chenxiaolong <chenxiaolong@loongson.cn> + + * gcc.target/loongarch/vector/lasx/vect-concat-128-256-result.c: New test. + * gcc.target/loongarch/vector/lasx/vect-concat-128-256.c: New test. + * gcc.target/loongarch/vector/lasx/vect-extract-256-128-result.c: New test. + * gcc.target/loongarch/vector/lasx/vect-extract-256-128.c: New test. + * gcc.target/loongarch/vector/lasx/vect-insert-128-256-result.c: New test. + * gcc.target/loongarch/vector/lasx/vect-insert-128-256.c: New test. + +2025-11-03 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/imm-load.c: Modify. + +2025-11-02 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/122499 + * gm2.dg/spell/iso/fail/badimport2.mod: New test. + * gm2.dg/spell/iso/fail/badimport3.mod: New test. + * gm2.dg/spell/iso/fail/badimport4.mod: New test. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.target/sparc/small-struct-1.c: Run only on Solaris. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.target/sparc/cbcond-1.c: Accept reverse branches. + * gcc.target/sparc/cbcond-2.c: Likewise. + * gcc.target/sparc/overflow-3.c: Likewise. + * gcc.target/sparc/overflow-4.c: Likewise. + * gcc.target/sparc/overflow-5.c: Likewise. + +2025-11-02 Uros Bizjak <ubizjak@gmail.com> + + PR target/122518 + * gcc.target/i386/pr122518.c: New test. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/unknown_discr1.ads: New test. + * gnat.dg/specs/unknown_discr1_pkg.ads: New helper. + * gnat.dg/specs/unknown_discr1_pkg-child.ads: Likewise. + * gnat.dg/specs/unknown_discr1_pkg-g.ads: Likewise. + * gnat.dg/specs/unknown_discr1_pkg-inst.ads: Likewise. + +2025-11-02 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/use_type4.adb: New test. + +2025-11-02 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/torture/pr84211-fuse-move-1.c: Add -fno-lto. + +2025-11-02 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122421 + * g++.dg/modules/inst-6_a.C: New test. + * g++.dg/modules/inst-6_b.C: New test. + +2025-11-01 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/67731 + * gcc.target/riscv/pr67731.c: New test. + * gcc.target/sh/pr67731.c: New test. + +2025-11-01 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/122321 + * gcc.target/riscv/rvv/autovec/pr122321.c: New test. + +2025-11-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/78640 + * gfortran.dg/pure_result.f90: New test. + +2025-11-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122381 + * g++.dg/modules/convop-2_a.H: New test. + * g++.dg/modules/convop-2_b.C: New test. + +2025-11-01 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/gnu-compoundlit-1.c: New test. + * gcc.dg/gnu-compoundlit-2.c: New test. + * gcc.dg/pr68090.c: Adapt. + * gcc.dg/vla-init-4.c: Adapt. + * gcc.dg/vla-init-5.c: Adapt. + +2025-11-01 Martin Uecker <uecker@tugraz.at> + + PR c/97986 + * gcc.dg/pr97986-1.c: New test. + * gcc.dg/pr97986-2.c: New test. + +2025-11-01 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/fold-vecperm-1.c: Test at forwprop3. + +2025-10-31 Tamar Christina <tamar.christina@arm.com> + + PR target/121853 + * gcc.target/aarch64/pr121853_1.c: New test. + * gcc.target/aarch64/pr121853_2.c: New test. + +2025-10-31 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122452 + * gfortran.dg/pdt_65.f03: New test. + +2025-10-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122502 + * gcc.dg/torture/pr122502.c: New testcase. + +2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/tree-ssa/pr122478.c: Swap `1` and `"optimized"`. + +2025-10-31 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122497 + * gcc.dg/torture/pr122497-1.c: New test. + +2025-10-31 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.dg/vect/slp-widen-mult-half.c: Remove '-mlasx'. + * gcc.dg/vect/tree-vect.h: Check whether the runtime + environment supports LSX instructions. + * gcc.dg/vect/vect-widen-mult-const-s16.c: Dito. + * gcc.dg/vect/vect-widen-mult-const-u16.c: Dito. + * gcc.dg/vect/vect-widen-mult-half-u8.c: Dito. + * gcc.dg/vect/vect-widen-mult-half.c: Dito. + * gcc.dg/vect/vect-widen-mult-u16.c: Dito. + * gcc.dg/vect/vect-widen-mult-u8-s16-s32.c: Dito. + * gcc.dg/vect/vect-widen-mult-u8-u32.c: Dito. + * gcc.dg/vect/vect-widen-mult-u8.c: Dito. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/tuplepattern-restpattern-typecheck-err.rs: New file. + +2025-10-30 Ryo Yoshida <low.ryoshida@gmail.com> + + * rust/compile/match-tuplestructpattern-non-variant.rs: New test. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-4231.rs: New file. + +2025-10-30 Lucas Ly Ba <lucas.ly-ba@outlook.fr> + + * rust/compile/issue-4212.rs: New test. + +2025-10-30 lishin <lishin1008@gmail.com> + + * rust/compile/issue-3556.rs: New test. + +2025-10-30 Ryo Yoshida <low.ryoshida@gmail.com> + + * rust/compile/tuple_index_on_non_tuple.rs: New test. + +2025-10-30 0xllx0 <github+elle@weathered-steel.dev> + + * rust/compile/issue-4145.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/attr_malformed_doc.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/attr_malformed_path.rs: New test. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-tuplestructpattern-err.rs: New file. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-tuplestructpattern-rest.rs: New file. + * rust/execute/torture/match-tuplestructpattern-rest-1.rs: New file. + * rust/execute/torture/match-tuplestructpattern-rest-2.rs: New file. + +2025-10-30 0xllx0 <github+elle@weathered-steel.dev> + + * rust/compile/issue-4148.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/core/core.exp: New test. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-3929-1.rs: New file. + * rust/compile/issue-3929-2.rs: New file. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/torture/link-name.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/macros/mbe/macro58.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3538.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3592.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-4165.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-4090-1.rs: New test. + * rust/compile/issue-4090-2.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-4168.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2394.rs: Update test case + * rust/compile/issue-4146.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-4139.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-4155.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-3922.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-3924.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3969.rs: New test. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3965-1.rs: New test. + * rust/compile/issue-3965-2.rs: New test. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/tuplepattern-rest-readonly.rs: New file. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-3930.rs: New file. + +2025-10-30 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-1725-2.rs: remove bad error message + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/use_self_alone_in_list.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/use_self_alone.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/primitive-import.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/parse_float_dot.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/format_args_concat.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/global-path-array.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/impl_fnptr.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/parse_closure_bind.rs: New test. + +2025-10-30 lishin <lishin1008@gmail.com> + + * rust/compile/issue-3645.rs: New test. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/slice_rest_pattern.rs: Removed -fsyntax-only. + * rust/execute/torture/match-slicepattern-array-2.rs: New file. + * rust/execute/torture/match-slicepattern-slice-2.rs: New file. + +2025-10-30 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/execute/torture/let-identifierpattern-subpattern.rs: New file. + +2025-10-30 lishin <lishin1008@gmail.com> + + * rust/compile/issue-3958.rs: New test. + +2025-10-30 lishin <lishin1008@gmail.com> + + * rust/compile/issue-3947.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-3966.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/use_3.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-3974.rs: New test. + +2025-10-30 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/issue-3726.rs: New test. + * rust/compile/issue-3898.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro-issue4054.rs: New test. + +2025-10-30 Ryutaro Okada <1015ryu88@gmail.com> + + * rust/compile/enum_discriminant3.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/cfg-test.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/import_wildcards.rs: New test. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro49.rs: Add missing lang items. + +2025-10-30 lishin <lishin1008@gmail.com> + + * rust/compile/issue-3928.rs: New test. + +2025-10-30 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/execute/inline_asm_inout_ident.rs: Add arch filter on test. + * rust/execute/inline_asm_inout_var.rs: Likewise. + +2025-10-30 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/attr-macro.rs: New test. + +2025-10-30 David Faust <david.faust@oracle.com> + + PR debug/122248 + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-4.c: New. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-5.c: New. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-6.c: New. + +2025-10-30 David Faust <david.faust@oracle.com> + + * gcc.dg/debug/btf/btf-prune-4.c: New. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/cpp/escape-3.i: Remove parentheses in dg-scan directive. + +2025-10-30 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/pointer-counted-by.c: Update for void pointers. + * gcc.dg/pointer-counted-by-10.c: New test. + * gcc.dg/pointer-counted-by-4-void.c: New test. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/116075 + * gcc.target/aarch64/sve/dup-insr-1.c: New test. + * gcc.target/aarch64/sve/dup-insr-2.c: New test. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122247 + * g++.dg/tree-ssa/copy-prop-aggregate-sra-2.C: New test. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122247 + * g++.dg/tree-ssa/copy-prop-aggregate-sra-1.C: New test. + +2025-10-30 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.dg/tree-ssa/ctz-char.c: Remove -fno-tree-ch. + * gcc.dg/tree-ssa/ctz-complement-char.c: Ditto. + * gcc.dg/tree-ssa/ctz-complement-int.c: Ditto. + * gcc.dg/tree-ssa/ctz-complement-long-long.c: Ditto. + * gcc.dg/tree-ssa/ctz-complement-long.c: Ditto. + * gcc.dg/tree-ssa/ctz-int.c: Ditto. + * gcc.dg/tree-ssa/ctz-long-long.c: Ditto. + * gcc.dg/tree-ssa/ctz-long.c: Ditto. + * gcc.dg/tree-ssa/ctz-ch.c: New test. + * gcc.dg/pr41488.c: Add -fno-tree-scev-cprop. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst7.ads: New test. + * gnat.dg/specs/generic_inst8.ads: New test. + +2025-10-30 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/122445 + * gcc.target/riscv/rvv/autovec/pr122445.c: New test. + +2025-10-30 Artemiy Volkov <artemiy.volkov@arm.com> + + PR tree-optimization/122478 + * gcc.dg/tree-ssa/pr122478.c: New test. + +2025-10-30 Richard Biener <rguenther@suse.de> + + * gcc.dg/tree-ssa/pr92834.c: Scan phiopt1 instead of optimized. + +2025-10-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR rtl-optimization/121198 + * gcc.target/avr/pr121198.c: New test. + +2025-10-30 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/122485 + * gm2.dg/spell/iso/fail/badimport.mod: New test. + +2025-10-30 Richard Biener <rguenther@suse.de> + Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/vect/slp-reduc-13.c: New testcase. + +2025-10-30 Uros Bizjak <ubizjak@gmail.com> + + PR target/116815 + * gcc.dg/pr116815.c: New test. + * gcc.target/i386/pr116815.c: New test. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * c-c++-common/ubsan/align-5.c: Xfail. + * gcc.dg/pr107389.c: Move to... + * gcc.dg/torture/pr107389.c: ...here. Skip for lto. + * gcc.dg/builtin-assume-aligned-1.c: Instead of + testing for deleting of assume-align, test for + the alignment/misalignment. Also disable the + vectorizer. + +2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + Revert: + 2025-10-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/107389 + PR tree-optimization/122086 + * gcc.dg/pr107389.c: Move to... + * gcc.dg/torture/pr107389.c: ...here. Skip for lto. + Use dg-additional-options rather than dg-options. + * c-c++-common/ubsan/align-5.c: xfail. + +2025-10-30 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr122457.c: New test. + +2025-10-30 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/fnmam4-vec.c: New test. + +2025-10-30 Jinyang He <hejinyang@loongson.cn> + Peng Fan <fanpeng@loongson.cn> + + * gcc.target/loongarch/conditional-move-opt-1.c: Remove mul. + * gcc.target/loongarch/conditional-move-opt-2.c: Remove and. + * gcc.target/loongarch/conditional-move-opt-3.c: New test. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/aggr32.adb: New test. + * gnat.dg/aggr32_pkg.ads: New helper. + * gnat.dg/aggr32_pkg-child.ads: Likewise. + +2025-10-30 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst6.ads: New test. + * gnat.dg/specs/generic_inst6_pkg1-child.ads: New helper. + * gnat.dg/specs/generic_inst6_pkg1-child-grand1.ads: Likewise. + * gnat.dg/specs/generic_inst6_pkg1-child-grand2.ads: Likewise. + * gnat.dg/specs/generic_inst6_pkg1.ads: Likewise. + * gnat.dg/specs/generic_inst6_pkg2.ads: Likewise. + * gnat.dg/specs/generic_inst6_pkg3.ads: Likewise. + +2025-10-29 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/91191 + * gcc.dg/pr91191.c: New. + +2025-10-29 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122165 + * gfortran.dg/pdt_64.f03: New test. + +2025-10-29 Richard Biener <rguenther@suse.de> + + PR tree-optimization/70102 + * gfortran.dg/vect/pr70102.f: New testcase. + +2025-10-29 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122433 + PR fortran/122434 + * gfortran.dg/pdt_62.f03: New test. + * gfortran.dg/pdt_63.f03: New test. + +2025-10-29 Lulu Cheng <chenglulu@loongson.cn> + + PR target/122097 + * gcc.target/loongarch/pr122097.c: New test. + +2025-10-29 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/trap-default.c: New test. + * gcc.target/loongarch/trap-1.c: New test. + +2025-10-28 Yuao Ma <c8ef@outlook.com> + + PR fortran/122342 + * gfortran.dg/coarray_atomic_5.f90: Update testcase. + * gfortran.dg/team_form_3.f90: Likewise. + +2025-10-28 Artemiy Volkov <artemiy.volkov@arm.com> + + * gcc.dg/tree-ssa/forwprop-42.c: New test. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst5.ads: New test. + * gnat.dg/specs/generic_inst5_pkg1.ads: New helper. + * gnat.dg/specs/generic_inst5_pkg2.ads: Likewise. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst4-child2.ads: New test. + * gnat.dg/specs/generic_inst4.ads: New helper. + * gnat.dg/specs/generic_inst4-child1.ads: Likewise. + +2025-10-28 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst3.ads: Add dg-do directive. + +2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122422 + * g++.dg/modules/merge-20.h: New test. + * g++.dg/modules/merge-20_a.H: New test. + * g++.dg/modules/merge-20_b.C: New test. + +2025-10-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122310 + * g++.dg/modules/lambda-12.h: New test. + * g++.dg/modules/lambda-12_a.H: New test. + * g++.dg/modules/lambda-12_b.C: New test. + +2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/105749 + PR tree-optimization/80635 + * g++.dg/warn/pr80635-3.C: New test. + * g++.dg/warn/pr80635-4.C: New test. + +2025-10-27 H.J. Lu <hjl.tools@gmail.com> + + PR c/122427 + * g++.target/i386/cf_check-1.C: New test. + * g++.target/i386/cf_check-2.C: Likewise. + * g++.target/i386/cf_check-3.C: Likewise. + * g++.target/i386/cf_check-4.C: Likewise. + * gcc.target/i386/cf_check-7.c: Likewise. + * gcc.target/i386/cf_check-8.c: Likewise. + * gcc.target/i386/cf_check-9.c: Likewise. + * gcc.target/i386/cf_check-10.c: Likewise. + * gcc.target/i386/cf_check-11.c: Likewise. + * gcc.target/i386/no-callee-saved-12.c: Remove dg-error. + * gcc.target/i386/preserve-none-17.c: Likewise. + +2025-10-27 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/private3-child.ads: New test. + * gnat.dg/specs/private3.ads: New helper. + +2025-10-27 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/generic_inst3.ads: New test. + * gnat.dg/specs/generic_inst3_pkg1.ads: New helper. + * gnat.dg/specs/generic_inst3_pkg1.adb: New helper. + * gnat.dg/specs/generic_inst3_pkg2.ads: Likewise. + * gnat.dg/specs/generic_inst3_pkg3.ads: Likewise. + * gnat.dg/specs/generic_inst3_pkg3-child.ads: Likewise. + +2025-10-27 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/122408 + * gfortran.target/aarch64/pr122408_1.f90: New test. + * gfortran.target/aarch64/pr122408_2.f90: New test. + +2025-10-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122394 + * g++.dg/opt/pr122394.C: New test. + +2025-10-27 Olivier Hainque <hainque@adacore.com> + + * g++.target/riscv/rvv/xtheadvector/pr116593.C: Skip if !hostedlib. + +2025-10-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/95541 + * gfortran.dg/pdt_61.f03: New test. + +2025-10-27 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/111003 + * gcc.dg/tree-ssa/pr111003.c: XFAIL. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR middle-end/122325 + * gcc.dg/complex-8.c: New testcase. + * gcc.dg/complex-9.c: Likewise. + +2025-10-27 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_equivalent_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-32/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_equivalent_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-32-xlen-64/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-32/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-512-xlen-64/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_equivalent_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_fp_vs_int_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-32/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_128bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_256bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_32bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_64bit_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_all_mixed.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_equivalent_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_four_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_fp_vs_int_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_args.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_int_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_struct.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_unions.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_vectors.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_simple_union.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_single_register.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_two_registers.c: New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-64-xlen-64/test_vector_array_struct.c: + New test. + +2025-10-27 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_128bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_256bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_32bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_64bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_all_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_four_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_args.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_int_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_unions.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_simple_union.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_single_register.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_two_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-32/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_128bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_256bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_32bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_64bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_all_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_four_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_args.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_int_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_unions.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_simple_union.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_single_register.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_two_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-128-xlen-64/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_128bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_256bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_32bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_64bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_all_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_four_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_args.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_int_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_unions.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_simple_union.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_single_register.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_two_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-32/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_128bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_256bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_32bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_64bit_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_all_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_call_mixed_function.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_vector_elements.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_different_width_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_equivalent_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_four_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_fp_vs_int_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_large_vector_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_args.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_float_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_int_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_struct_advanced.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_mixed_vector_types_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_unions.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_multiple_with_small_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_exhaustion.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_exhaustion_mixed.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_register_pressure_scenarios.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_same_vectors_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_simple_union.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_single_register.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_single_vector_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_different_abi_vlen.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_eight_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_five_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_four_256bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_struct_nine_128bit_vectors.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_two_registers.c: + New test. + * gcc.target/riscv/rvv/vls-cc/abi-vlen-256-xlen-64/test_vector_array_struct.c: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_128bit_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_256bit_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_32bit_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_64bit_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_all_mixed.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_call_mixed_function.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_different_vector_elements.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_different_vectors_struct.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_different_width_vectors_struct.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_equivalent_struct.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_four_registers.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_fp_vs_int_vectors.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_large_vector_small_abi_vlen.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_args.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_float_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_int_vector.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_struct.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_struct_advanced.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_mixed_vector_types_struct.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_multiple_unions.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_multiple_vectors.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_multiple_with_small_abi_vlen.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_register_exhaustion.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_register_exhaustion_mixed.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_register_pressure_scenarios.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_same_vectors_struct.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_simple_union.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_single_register.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_single_vector_struct.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_struct_different_abi_vlen.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_struct_eight_128bit_vectors.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_struct_five_256bit_vectors.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_struct_four_256bit_vectors.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_struct_nine_128bit_vectors.h: + New test. + * gcc.target/riscv/rvv/vls-cc/common/test_two_registers.h: New test. + * gcc.target/riscv/rvv/vls-cc/common/test_vector_array_struct.h: New test. + * gcc.target/riscv/rvv/vls-cc/riscv-vls-cc.exp: New test. + * gcc.target/riscv/rvv/vls-cc/test_128_abi_vlen_large_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_128_abi_vlen_medium_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_256_abi_vlen_large_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_256_abi_vlen_very_large_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_32_abi_vlen_medium_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_32_abi_vlen_small_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/test_64_abi_vlen_medium_vector.c: + New test. + * gcc.target/riscv/rvv/vls-cc/test_64_abi_vlen_small_vector.c: New test. + * gcc.target/riscv/rvv/vls-cc/vls-cc-common.h: New test. + +2025-10-27 Jeff Law <jlaw@ventanamicro.com> + + PR target/64345 + PR tree-optimization/80770 + * gcc.target/riscv/pr120553-2.c: Update expected output. + * gcc.target/riscv/pr64345.c: New test. + * gcc.target/riscv/zbb-andn-orn-01.c: Skip when peephole2 isn't run. + * gcc.target/riscv/zbb-andn-orn-02.c: Likewise. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122419 + * gcc.dg/vect/pr122419.c: New testcase. + +2025-10-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122435 + * gcc.dg/tree-ssa/ssa-fre-111.c: New testcase. + +2025-10-27 H.J. Lu <hjl.tools@gmail.com> + + PR target/122323 + * gcc.target/i386/builtin-copysign-8b.c: Add -mtune=generic. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/widen-mul-rtx-cost-signed.c: New test. + * gcc.target/loongarch/widen-mul-rtx-cost-unsigned.c: New test. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/compare-both-non-zero.c: New test. + +2025-10-27 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/sign_extend_ashift.c: New test. + +2025-10-27 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/one_cmpl_abs.c: Remove. + +2025-10-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/107389 + PR tree-optimization/122086 + * gcc.dg/pr107389.c: Move to... + * gcc.dg/torture/pr107389.c: ...here. Skip for lto. + Use dg-additional-options rather than dg-options. + * c-c++-common/ubsan/align-5.c: xfail. + +2025-10-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/122270 + * gcc.target/riscv/rvv/base/pr122270-1.c: New test. + +2025-10-26 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/rvv/autovec/pr111391-2.c: Add expected asm. + +2025-10-26 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/machine_attr3.ads, gnat.dg/machine_attr3.adb: New test. + +2025-10-26 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122290 + * gfortran.dg/pdt_60.f03: New test. + +2025-10-26 Alexandre Oliva <oliva@adacore.com> + + PR target/121599 + * gcc.target/aarch64/sve2/pr121599.c: Tolerate alterate insn + selection. + +2025-10-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/114023 + * gfortran.dg/is_contiguous_5.f90: New test. + +2025-10-25 Jiahao Xu <xujiahao@loongson.cn> + + * gcc.target/loongarch/lasx-reduc-1.c: New test. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/pr110405.c: New. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/114025 + * g++.dg/pr114025.C: New. + +2025-10-24 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/122407 + * gm2.dg/spell/iso/fail/badspellabs.mod: New test. + * gm2.dg/spell/iso/fail/badspelladr.mod: New test. + * gm2.dg/spell/iso/fail/badspellcap.mod: New test. + * gm2.dg/spell/iso/fail/badspellchr.mod: New test. + * gm2.dg/spell/iso/fail/badspellchr2.mod: New test. + * gm2.dg/spell/iso/fail/badspelldec.mod: New test. + * gm2.dg/spell/iso/fail/badspellexcl.mod: New test. + * gm2.dg/spell/iso/fail/badspellinc.mod: New test. + * gm2.dg/spell/iso/fail/badspellincl.mod: New test. + * gm2.dg/spell/iso/fail/badspellnew.mod: New test. + * gm2.dg/spell/iso/fail/badspellsize.mod: New test. + * gm2.dg/spell/iso/fail/dg-spell-iso-fail.exp: New test. + +2025-10-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR target/122402 + * gcc.target/aarch64/auto-init-padding-2.c: Turn off SRA. + * gcc.target/aarch64/auto-init-padding-4.c: Likewise. + +2025-10-24 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122386 + * gfortran.dg/transfer_array_subref_2.f90: New test. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/pr114725.c: New. + +2025-10-24 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/118254 + PR tree-optimization/114331 + * gcc.dg/pr114331.c: New. + * gcc.dg/pr118254.c: New. + +2025-10-24 Alex Coplan <alex.coplan@arm.com> + + * gcc.dg/torture/vect-permute-ice.c: New test. + +2025-10-24 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/vect-pr122406-1.c: Adjust to expect reduction + chain vectorization. + * gcc.dg/vect/vect-pr122406-2.c: Likewise. + +2025-10-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122406 + * gcc.dg/vect/vect-pr122406-1.c: New testcase. + * gcc.dg/vect/vect-pr122406-2.c: Likewise. + +2025-10-24 Paul-Antoine Arras <parras@baylibre.com> + + PR fortran/121452 + * c-c++-common/gomp/pr121452-1.c: New test. + * c-c++-common/gomp/pr121452-2.c: New test. + * gfortran.dg/gomp/pr121452-1.f90: New test. + * gfortran.dg/gomp/pr121452-2.f90: New test. + * gfortran.dg/gomp/pr121452-3.f90: New test. + +2025-10-24 H.J. Lu <hjl.tools@gmail.com> + + PR target/122323 + * gcc.target/i386/builtin-fabs-2.c: Also scan (%edi)for x32. + +2025-10-24 Pengfei Li <Pengfei.Li2@arm.com> + + * gcc.dg/fold-vecperm-1.c: New test. + +2025-10-24 Olivier Hainque <hainque@adacore.com> + + * lib/target-supports.exp (check_weak_available): + Return 1 for VxWorks7. + +2025-10-24 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c23-static-assert-5.c, gcc.dg/c23-static-assert-6.c, + gcc.dg/c23-static-assert-7.c, gcc.dg/c23-static-assert-8.c, + gcc.dg/c2y-static-assert-2.c, gcc.dg/c2y-static-assert-3.c, + gcc.dg/c2y-static-assert-4.c: New tests. + +2025-10-23 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/Length_overflow__2_.out: Updated test result. + * cobol.dg/group2/Length_overflow_with_offset__1_.out: Likewise. + * cobol.dg/group2/Offset_overflow.out: Likewise. + * cobol.dg/group2/CALL_with_OCCURS_DEPENDING_ON.cob: New test. + * cobol.dg/group2/CALL_with_OCCURS_DEPENDING_ON.out: New test. + * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_ASCII.cob: New test. + * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_ASCII.out: New test. + * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_EBCDIC.cob: New test. + * cobol.dg/group2/CHAR_and_ORD_with_COLLATING_sequence_-_EBCDIC.out: New test. + * cobol.dg/group2/EC-BOUND-REF-MOD_checking_process_termination.cob: New test. + * cobol.dg/group2/EC-BOUND-REF-MOD_checking_process_termination.out: New test. + * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__3_.cob: New test. + * cobol.dg/group2/Occurs_DEPENDING_ON__source_and_dest.cob: New test. + * cobol.dg/group2/Occurs_DEPENDING_ON__source_and_dest.out: New test. + * cobol.dg/group2/Recursive_subscripts.cob: New test. + * cobol.dg/group2/Recursive_subscripts.out: New test. + * cobol.dg/group2/SEARCH_ALL_with_OCCURS_DEPENDING_ON.cob: New test. + * cobol.dg/group2/SEARCH_ALL_with_OCCURS_DEPENDING_ON.out: New test. + * cobol.dg/group2/Subscript_by_arithmetic_expression.cob: New test. + * cobol.dg/group2/Subscript_out_of_bounds__1_.cob: New test. + * cobol.dg/group2/Subscript_out_of_bounds__1_.out: New test. + * cobol.dg/group2/Subscript_out_of_bounds__2_.cob: New test. + * cobol.dg/group2/Subscript_out_of_bounds__2_.out: New test. + * cobol.dg/group2/Subscripted_refmods.cob: New test. + * cobol.dg/group2/Subscripted_refmods.out: New test. + * cobol.dg/group2/length_of_ODO_Rules_7__8A__and_8B.cob: New test. + * cobol.dg/group2/length_of_ODO_Rules_7__8A__and_8B.out: New test. + * cobol.dg/group2/length_of_ODO_w_-_reference_modification.cob: New test. + +2025-10-23 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/tree-ssa/bool-12.c: Update based on when BIT_AND/BIT_IOR + is created and no longer MIN/MAX. + +2025-10-23 Robert Dubner <rdubner@symas.com> + James K. Lowden <jklowden@cobolworx.com> + + * cobol.dg/typo-1.cob: New test for squiggles and carets. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/fmv_priority1.c: New test. + * gcc.target/aarch64/fmv_priority2.c: New test. + * gcc.target/aarch64/fmv_priority.in: Support file. + +2025-10-23 Alfie Richards <alfie.richards@arm.com> + + PR target/122190 + * gcc.target/aarch64/pr122190.c: New test + +2025-10-23 zhaozhou <zhaozhou@loongson.cn> + + * gcc.dg/fold-round-1.c: New test. + +2025-10-23 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122223 + * gcc.target/arm/mve/intrinsics/pr122223.c: Relax expected code. + +2025-10-23 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr101639_reduc_mask_vdi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_vqi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_vsi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_ior_vqi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_and_vqi.c: New test. + +2025-10-23 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr101639_reduc_mask_di.c: New test. + * gcc.target/i386/pr101639_reduc_mask_hi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_qi.c: New test. + * gcc.target/i386/pr101639_reduc_mask_si.c: New test. + +2025-10-22 Paul-Antoine Arras <parras@baylibre.com> + + PR middle-end/122378 + * c-c++-common/gomp/attrs-metadirective-2.c: Uncomment local label + declaration. + * c-c++-common/gomp/metadirective-2.c: Likewise. + +2025-10-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/122302 + * g++.dg/cpp0x/pr122302.C: New test. + * g++.dg/cpp/embed-27.C: New test. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/vect-reduc-bool-10.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-11.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-12.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-13.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-14.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-15.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-16.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-17.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-18.c: New test. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/vect-reduc-bool-1.c: New test. + * gcc.target/aarch64/vect-reduc-bool-2.c: New test. + * gcc.target/aarch64/vect-reduc-bool-3.c: New test. + * gcc.target/aarch64/vect-reduc-bool-4.c: New test. + * gcc.target/aarch64/vect-reduc-bool-5.c: New test. + * gcc.target/aarch64/vect-reduc-bool-6.c: New test. + * gcc.target/aarch64/vect-reduc-bool-7.c: New test. + * gcc.target/aarch64/vect-reduc-bool-8.c: New test. + * gcc.target/aarch64/vect-reduc-bool-9.c: New test. + +2025-10-22 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/vect-reduc-bool-1.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-2.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-3.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-4.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-5.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-6.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-7.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-8.c: New test. + * gcc.target/aarch64/sve/vect-reduc-bool-9.c: New test. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122364 + * gcc.dg/vect/vect-reduc-chain-5.c: New testcase. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122370 + * gcc.dg/vect/vect-pr122370.c: New testcase. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122371 + * gcc.dg/vect/vect-pr122371.c: New testcase. + +2025-10-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122365 + * gcc.dg/vect/vect-reduc-bool-9.c: New testcase. + +2025-10-22 Haochen Jiang <haochen.jiang@intel.com> + + * g++.target/i386/mv16.C: Ditto. + * gcc.target/i386/funcspec-56.inc: Handle new march. + +2025-10-22 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr122320-mask16.c: New test. + * gcc.target/i386/pr122320-mask2.c: New test. + * gcc.target/i386/pr122320-mask32.c: New test. + * gcc.target/i386/pr122320-mask4.c: New test. + * gcc.target/i386/pr122320-mask64.c: New test. + * gcc.target/i386/pr122320-mask8.c: New test. + +2025-10-22 Antoni Boucher <bouanto@zoho.com> + + * jit.dg/all-non-failing-tests.h: Mention new test. + * jit.dg/test-sized-float.c: New test. + +2025-10-21 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/c2y-generic-6.c: New test. + * gcc.dg/c2y-generic-7.c: New test. + +2025-10-21 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/ext/is_implicit_lifetime.C: New test. + +2025-10-21 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122189 + * gcc.target/arm/mve/intrinsics/vadcq_m_s32.c + * gcc.target/arm/mve/intrinsics/vadcq_m_u32.c + * gcc.target/arm/mve/intrinsics/vsbcq_m_s32.c + * gcc.target/arm/mve/intrinsics/vsbcq_m_u32.c + +2025-10-21 Paul-Antoine Arras <parras@baylibre.com> + + PR c/120180 + PR fortran/122306 + * c-c++-common/gomp/imperfect1.c: Adjust dg-error. + * c-c++-common/gomp/imperfect4.c: Likewise. + * c-c++-common/gomp/pr120180.c: Move to... + * c-c++-common/gomp/pr120180-1.c: ...here. Remove dg-error. + * g++.dg/gomp/attrs-imperfect1.C: Adjust dg-error. + * g++.dg/gomp/attrs-imperfect4.C: Likewise. + * gfortran.dg/gomp/declare-variant-2.f90: Adjust dg-error. + * gfortran.dg/gomp/declare-variant-20.f90: Likewise. + * c-c++-common/gomp/pr120180-2.c: New test. + * g++.dg/gomp/pr120180-1.C: New test. + * gfortran.dg/gomp/pr120180-1.f90: New test. + * gfortran.dg/gomp/pr120180-2.f90: New test. + * gfortran.dg/gomp/pr122306-1.f90: New file. + * gfortran.dg/gomp/pr122306-2.f90: New file. + +2025-10-21 Roger Sayle <roger@nextmovesoftware.com> + + * gcc.target/i386/sse4_1-stv-10.c: New test case. + * gcc.target/i386/sse4_1-stv-11.c: Likewise. + * gcc.target/i386/sse4_1-stv-12.c: Likewise. + +2025-10-21 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/assumes-2.c: Change for 'invalid' + to 'unknown' change for end directives. + * c-c++-common/gomp/begin-assumes-2.c: Likewise. + * c-c++-common/gomp/assume-2.c: Likewise. Check 'declare + mapper'. + +2025-10-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * gcc.dg/vect/vect-reduc-chain-4.c: New testcase. + +2025-10-21 Avinash Jayakar <avinashd@linux.ibm.com> + + PR target/104116 + * gcc.dg/vect/pr104116-ceil-div-2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-div-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-div.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-mod-2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-mod-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-mod.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-udiv-2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-udiv-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-udiv.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-umod-2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-umod-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-ceil-umod.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-div-2.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-div-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-div.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-mod-2.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-mod-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-floor-mod.c: disable vectorization. + * gcc.dg/vect/pr104116-round-div-2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-div-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-div.c: disable vectorization. + * gcc.dg/vect/pr104116-round-mod-2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-mod-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-mod.c: disable vectorization. + * gcc.dg/vect/pr104116-round-udiv-2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-udiv-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-udiv.c: disable vectorization. + * gcc.dg/vect/pr104116-round-umod-2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-umod-pow2.c: disable vectorization. + * gcc.dg/vect/pr104116-round-umod.c: disable vectorization. + * gcc.dg/vect/pr104116.h (init_arr): use std idiom, correct + indentation. + (init_uarr): use std idiom. + +2025-10-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/95699 + PR tree-optimization/101024 + PR tree-optimization/110068 + * gcc.dg/tree-ssa/pr101024-1.c: New test. + * gcc.dg/tree-ssa/pr110068-1.c: New test. + +2025-10-20 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Adjust expected output. + +2025-10-20 Antoni Boucher <bouanto@zoho.com> + + * jit.dg/all-non-failing-tests.h: Add test-arrays-u64.c. + * jit.dg/test-arrays-u64.c: New test. + +2025-10-20 Josef Melcr <jmelcr02@gmail.com> + + * gcc.dg/ipa/ipcp-cb-spec1.c: Moved to libgomp/testsuite/libgomp.c/. + * gcc.dg/ipa/ipcp-cb-spec2.c: Likewise. + * gcc.dg/ipa/ipcp-cb1.c: Likewise. + +2025-10-20 Antoni Boucher <bouanto@zoho.com> + + * jit.dg/test-error-array-bounds.c: Fix test. + +2025-10-20 Thomas Schwinge <tschwinge@baylibre.com> + + PR c++/114457 + * c-c++-common/goacc/kernels-decompose-pr100280-1.c: Skip for + c++26 until PR121975 is fixed. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/component_value1.adb: New test. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/use_type3.adb: New test. + +2025-10-20 Srinath Parvathaneni <srinath.parvathaneni@arm.com> + + * gcc.target/aarch64/acle/asm-inlined-sysreg-1.c: New test. + * gcc.target/aarch64/acle/asm-inlined-sysreg-2.c: Likewise. + * gcc.target/aarch64/acle/rwsr-gated-1.c: Likewise. + * gcc.target/aarch64/acle/rwsr-gated-2.c: Likewise. + * lib/target-supports.exp + (check_effective_target_aarch64_sysreg_guarding_ok): Check + assembler support of -menable-sysreg-checking flag. + +2025-10-20 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/vsetvl/imm_switch-6.c: Skip scan-asm test for -O1 too. + * gcc.target/riscv/rvv/vsetvl/imm_switch-7.c: Likewise. + * gcc.target/riscv/shrink-wrap-1.c: Likewise. Skip for -Og as well. + * gcc.target/riscv/xandes/xandesperf-1.c: Adjust expected output. + +2025-10-20 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/renaming18.adb: New test. + +2025-10-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/101639 + PR tree-optimization/103495 + * gcc.dg/vect/vect-reduc-bool-1.c: New testcase. + * gcc.dg/vect/vect-reduc-bool-2.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-3.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-4.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-5.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-6.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-7.c: Likewise. + * gcc.dg/vect/vect-reduc-bool-8.c: Likewise. + +2025-10-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/99930 + PR target/122323 + * gcc.target/i386/builtin-copysign-2.c: New test. + * gcc.target/i386/builtin-copysign-3.c: Likewise. + * gcc.target/i386/builtin-copysign-4.c: Likewise. + * gcc.target/i386/builtin-copysign-5.c: Likewise. + * gcc.target/i386/builtin-copysign-6.c: Likewise. + * gcc.target/i386/builtin-copysign-7.c: Likewise. + * gcc.target/i386/builtin-copysign-8a.c: Likewise. + * gcc.target/i386/builtin-copysign-8b.c: Likewise. + * gcc.target/i386/builtin-fabs-1.c: Likewise. + * gcc.target/i386/builtin-fabs-2.c: Likewise. + +2025-10-19 Georg-Johann Lay <avr@gjlay.de> + + PR testsuite/122212 + PR testsuite/52641 + * gcc.dg/torture/pr122212.c: Pass 0xffffffff instead of -1u + for all bits set in uint32_t. + +2025-10-19 Georg-Johann Lay <avr@gjlay.de> + + PR testsuite/122016 + PR testsuite/52641 + * gcc.dg/torture/pr122016.c (strncmp): Use __SIZE_TYPE__ instead + of long as type of the size argument. + +2025-10-19 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u16-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u32-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-7-u8-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-7-u8-from-u64.c: New test. + +2025-10-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119060 + * g++.dg/cpp26/observable-checkpoint.C: New test. + +2025-10-18 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122279 + * g++.dg/modules/namespace-13_b.C: Adjust expected results. + * g++.dg/modules/namespace-13_c.C: Test non-exported + using-directive is not used. + * g++.dg/modules/namespace-14_a.C: New test. + * g++.dg/modules/namespace-14_b.C: New test. + * g++.dg/modules/namespace-14_c.C: New test. + * g++.dg/modules/namespace-14_d.C: New test. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * gcc.target/aarch64/sve2/pr122069_3.c: New test. + * gcc.target/aarch64/sve2/pr122069_4.c: New test. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * gcc.target/aarch64/sve2/pr122069_1.c: New test. + * gcc.target/aarch64/sve2/pr122069_2.c: New test. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * gcc.target/aarch64/sve/pr122069_1.c: New test. + * gcc.target/aarch64/sve/pr122069_2.c: New test. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * gcc.target/aarch64/pr122069_3.c: New test. + * gcc.target/aarch64/pr122069_4.c: New test. + +2025-10-18 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/122069 + * gcc.target/aarch64/pr122069_1.c: New test. + * gcc.target/aarch64/pr122069_2.c: New test. + +2025-10-18 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/conditional_1.f90: Test character type. + * gfortran.dg/conditional_2.f90: Test print constants. + * gfortran.dg/conditional_4.f90: Test diagnostic message. + * gfortran.dg/conditional_6.f90: Test character cond-arg. + +2025-10-18 Linsen Zhou <i@lin.moe> + + PR tree-optimization/122012 + * gcc.dg/torture/pr122012.c: New test. + +2025-10-17 David Faust <david.faust@oracle.com> + + PR target/122139 + * gcc.target/bpf/memset-3.c: New. + * gcc.target/bpf/memset-4.c: New. + +2025-10-17 Tamar Christina <tamar.christina@arm.com> + Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121604 + * gcc.target/aarch64/sve/pr121604_brk.c: New test. + * gcc.target/aarch64/sve2/pr121604_pmov.c: New test. + +2025-10-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122308 + * gcc.dg/vect/vect-pr122308.c: New testcase. + +2025-10-17 Josef Melcr <jmelcr02@gmail.com> + + * gcc.dg/ipa/ipcp-cb-spec1.c: New test. + * gcc.dg/ipa/ipcp-cb-spec2.c: New test. + * gcc.dg/ipa/ipcp-cb1.c: New test. + +2025-10-17 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/style1.ads: New test. + +2025-10-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122301 + * gcc.dg/vect/vect-pr122301.c: New testcase. + +2025-10-17 Avinash Jayakar <avinashd@linux.ibm.com> + + PR tree-optimization/104116 + * gcc.dg/vect/pr104116-ceil-div-2.c: New test. + * gcc.dg/vect/pr104116-ceil-div-pow2.c: New test. + * gcc.dg/vect/pr104116-ceil-div.c: New test. + * gcc.dg/vect/pr104116-ceil-mod-2.c: New test. + * gcc.dg/vect/pr104116-ceil-mod-pow2.c: New test. + * gcc.dg/vect/pr104116-ceil-mod.c: New test. + * gcc.dg/vect/pr104116-ceil-udiv-2.c: New test. + * gcc.dg/vect/pr104116-ceil-udiv-pow2.c: New test. + * gcc.dg/vect/pr104116-ceil-udiv.c: New test. + * gcc.dg/vect/pr104116-ceil-umod-2.c: New test. + * gcc.dg/vect/pr104116-ceil-umod-pow2.c: New test. + * gcc.dg/vect/pr104116-ceil-umod.c: New test. + * gcc.dg/vect/pr104116-floor-div-2.c: New test. + * gcc.dg/vect/pr104116-floor-div-pow2.c: New test. + * gcc.dg/vect/pr104116-floor-div.c: New test. + * gcc.dg/vect/pr104116-floor-mod-2.c: New test. + * gcc.dg/vect/pr104116-floor-mod-pow2.c: New test. + * gcc.dg/vect/pr104116-floor-mod.c: New test. + * gcc.dg/vect/pr104116-round-div-2.c: New test. + * gcc.dg/vect/pr104116-round-div-pow2.c: New test. + * gcc.dg/vect/pr104116-round-div.c: New test. + * gcc.dg/vect/pr104116-round-mod-2.c: New test. + * gcc.dg/vect/pr104116-round-mod-pow2.c: New test. + * gcc.dg/vect/pr104116-round-mod.c: New test. + * gcc.dg/vect/pr104116-round-udiv-2.c: New test. + * gcc.dg/vect/pr104116-round-udiv-pow2.c: New test. + * gcc.dg/vect/pr104116-round-udiv.c: New test. + * gcc.dg/vect/pr104116-round-umod-2.c: New test. + * gcc.dg/vect/pr104116-round-umod-pow2.c: New test. + * gcc.dg/vect/pr104116-round-umod.c: New test. + * gcc.dg/vect/pr104116.h: New test. + +2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122296 + * gcc.dg/torture/int-bwise-opt-1.c: New test. + +2025-10-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122296 + * gcc.dg/tree-ssa/int-bwise-opt-vect01.c: New test. + +2025-10-16 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc + (report_diag_with_graphs): Port from set_attr to set_property. + +2025-10-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121468 + PR tree-optimization/121206 + PR tree-optimization/122200 + * gcc.dg/pr121468.c: New. + * gcc.dg/pr122200.c: New. + +2025-10-15 Richard Earnshaw <rearnsha@arm.com> + + PR target/118460 + * gcc.target/arm/armv8_2-fp16-move-1.c: Adjust expected output. + * gcc.target/arm/armv8_2-fp16-move-2.c: Likewise. + +2025-10-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122037 + * gcc.dg/tree-ssa/vla-1.c: New test. + +2025-10-15 Alice Carlotti <alice.carlotti@arm.com> + + * gcc.target/aarch64/acle/rwsr-armv8p9.c: Fix incorrect encoding. + +2025-10-15 Sebastian Pop <spop@nvidia.com> + + * gcc.dg/autopar/runtime-auto.c: New test. + +2025-10-15 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122189 + * gcc.target/arm/mve/intrinsics/vadcq-check-carry.c: New test. + * gcc.target/arm/mve/intrinsics/vadcq_m_s32.c: Adjust instructions + order. + * gcc.target/arm/mve/intrinsics/vadcq_m_u32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vsbcq_m_s32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vsbcq_m_u32.c: Likewise. + +2025-10-15 Roger Sayle <roger@nextmovesoftware.com> + + PR rtl-optimization/122266 + * gcc.target/i386/pr122266.c: New test case. + +2025-10-14 Patrick Palka <ppalka@redhat.com> + + PR c++/122192 + * g++.dg/template/dependent-base6.C: Verify mem-initializer-id + qualified name lookup is type-only too. + +2025-10-14 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/121949 + * gcc.dg/vect/pr121949_1.c: New test. + * gcc.dg/vect/pr121949_2.c: New test. + * gcc.dg/vect/pr121949_3.c: New test. + +2025-10-14 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/pr120687-1.c: Adjust. + * gcc.dg/vect/pr120687-2.c: Likewise. + * gcc.dg/vect/pr120687-3.c: Likewise. + +2025-10-14 Haochen Jiang <haochen.jiang@intel.com> + + * g++.dg/other/i386-2.C: Remove AMX-TRANSPOSE test. + * g++.dg/other/i386-3.C: Ditto. + * gcc.target/i386/amx-check.h: Ditto. + * gcc.target/i386/amxmovrs-asmatt-1.c: Ditto. + * gcc.target/i386/amxmovrs-asmintel-1.c: Ditto. + * gcc.target/i386/funcspec-56.inc: Ditto. + * gcc.target/i386/sse-12.c: Ditto. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * lib/target-supports.exp: Ditto. + * gcc.target/i386/amxmovrs-2rpntlvwrs-2.c: Removed. + * gcc.target/i386/amxtranspose-2rpntlvw-2.c: Removed. + * gcc.target/i386/amxtranspose-asmatt-1.c: Removed. + * gcc.target/i386/amxtranspose-asmintel-1.c: Removed. + * gcc.target/i386/amxtranspose-conjtcmmimfp16ps-2.c: Removed. + * gcc.target/i386/amxtranspose-conjtfp16-2.c: Removed. + * gcc.target/i386/amxtranspose-tcmmimfp16ps-2.c: Removed. + * gcc.target/i386/amxtranspose-tcmmrlfp16ps-2.c: Removed. + * gcc.target/i386/amxtranspose-tdpbf16ps-2.c: Removed. + * gcc.target/i386/amxtranspose-tdpfp16ps-2.c: Removed. + * gcc.target/i386/amxtranspose-tmmultf32ps-2.c: Removed. + * gcc.target/i386/amxtranspose-transposed-2.c: Removed. + +2025-10-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122178 + * g++.dg/tree-ssa/cselim-1.C: New test. + +2025-10-14 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-10-13 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.dg/cpp/cpp.exp: Process .i files. + * gcc.dg/cpp/pr36674.i: Pass -Wno-implicit-int. + * gcc.dg/cpp/escape-3.i: New test. + +2025-10-13 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR target/120811 + * gcc.target/riscv/add-synthesis-1.c: Adjust const to fit in range. + * gcc.target/riscv/pr120811.c: Add new test case. + * gcc.target/riscv/sum-of-two-s12-const-1.c: Adjust const to fit in range. + +2025-10-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/120674 + * gcc.target/riscv/pr120674.c: New test. + +2025-10-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/122228 + * g++.dg/cpp1y/func_constexpr3.C: New test. + +2025-10-13 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/122241 + * gm2/iso/fail/badconst.mod: New test. + * gm2/iso/fail/badtype.mod: New test. + * gm2/iso/fail/badvar.mod: New test. + +2025-10-13 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/121772 + * gcc.target/aarch64/torture/pr121772.c: Add -fchecking to + dg-options. + +2025-10-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/118019 + * gcc.target/riscv/rvv/autovec/pr118019-2.c: New test. + +2025-10-13 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121191 + * gfortran.dg/pdt_59.f03: New test. + +2025-10-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122163 + * g++.dg/cpp0x/lambda/lambda-ref3.C: New test. + +2025-10-12 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/95543 + PR fortran/103748 + * gfortran.dg/pdt_17.f03: Change error message. + * gfortran.dg/pdt_57.f03: New test. + * gfortran.dg/pdt_58.f03: New test. + +2025-10-11 Gaius Mulley <gaiusmod2@gmail.com> + + * gm2/iso/fail/badfield.mod: New test. + * gm2/iso/fail/badfield2.mod: New test. + * gm2/iso/fail/badprocedure.mod: New test. + * gm2/iso/fail/badprocedure2.mod: New test. + * gm2/iso/fail/badset4.mod: New test. + +2025-10-11 Bohan Lei <garthlei@linux.alibaba.com> + + PR target/119587 + * gcc.target/riscv/xtheadmemidx-bug.c: New test. + +2025-10-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/50377 + * gfortran.dg/pr41011.f: Fix invalid testcase. + * gfortran.dg/actual_procedure_2.f: New test. + +2025-10-10 David Faust <david.faust@oracle.com> + + PR target/122141 + * gcc.target/bpf/pr122141-1.c: New. + * gcc.target/bpf/pr122141-2.c: New. + +2025-10-10 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group1/check_88.cob: Likewise. + +2025-10-10 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gfortran.dg/intent_optimize_10.f90: Update so -g won't fail. + * gcc.dg/tree-ssa/copy-prop-aggregate-sra-1.c: New testcase. + +2025-10-10 Patrick Palka <ppalka@redhat.com> + + PR c++/122192 + * g++.dg/template/dependent-base6.C: New test. + +2025-10-10 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwsubu.wx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/wx_vwsubu-run-1-u64.c: New test. + +2025-10-10 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/fminmax-1.c: Disable for signaling NaNs. + * gcc.target/s390/fminmax-2.c: Ditto. + * gcc.target/s390/vector/reduc-minmax-1.c: Ditto. + +2025-10-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR testsuite/116421 + * c-c++-common/vector-subscript-4.c: Check for vectors prior + ISEL. + +2025-10-10 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.dg/vect/vect-reduc-chain-1.c: Adjust expected + dump. + +2025-10-10 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/122223 + * gcc.target/arm/mve/intrinsics/pr122223.c: New test. + +2025-10-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122111 + * gcc.target/arm/pr122111.c: New test. + +2025-10-10 YunQiang Su <yunqiang@isrc.iscas.ac.cn> + + Revert: + 2025-10-10 Jie Mei <jie.mei@oss.cipunited.com> + + * gcc.target/mips/mips16e2-cache.c: Use isa_rev>=2 instead of + -mips32r2 and remove -mips16 option. + * gcc.target/mips/mips16e2-cmov.c: Add isa_rev>=2 and remove + -mips16 option. + * gcc.target/mips/mips16e2-gp.c: Same as above. + * gcc.target/mips/mips16e2.c: Same as above. + +2025-10-10 YunQiang Su <yunqiang@isrc.iscas.ac.cn> + + Revert: + 2025-09-27 YunQiang Su <syq@gcc.gnu.org> + + * gcc.target/mips/mips16e2.c: Use isa_rev=2 instead of >=2. + * gcc.target/mips/mips16e2-cache.c: Ditto. + * gcc.target/mips/mips16e2-cmov.c: Ditto. + * gcc.target/mips/mips16e2-gp.c: Ditto. + +2025-10-09 David Faust <david.faust@oracle.com> + + * gcc.target/bpf/core-btf-tag-1.c: New test. + * gcc.target/bpf/core-btf-tag-2.c: New test. + +2025-10-09 David Faust <david.faust@oracle.com> + + * gcc.dg/debug/btf/btf-decl-tag-1.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-2.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-3.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-4.c: New test. + * gcc.dg/debug/btf/btf-type-tag-1.c: New test. + * gcc.dg/debug/btf/btf-type-tag-2.c: New test. + * gcc.dg/debug/btf/btf-type-tag-3.c: New test. + * gcc.dg/debug/btf/btf-type-tag-4.c: New test. + * gcc.dg/debug/btf/btf-type-tag-c2x-1.c: New test. + +2025-10-09 David Faust <david.faust@oracle.com> + + * gcc.dg/debug/ctf/ctf-decl-tag-1.c: New test. + * gcc.dg/debug/ctf/ctf-type-tag-1.c: New test. + +2025-10-09 David Faust <david.faust@oracle.com> + + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-1.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-2.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-3.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-1.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-2.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-3.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-4.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-5.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-6.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-7.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-8.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-9.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-10.c: New test. + +2025-10-09 David Faust <david.faust@oracle.com> + + * gcc.dg/attr-btf-decl-tag-1.c: New test. + * gcc.dg/attr-btf-decl-tag-2.c: New test. + * gcc.dg/attr-btf-type-tag-1.c: New test. + * gcc.dg/attr-btf-type-tag-2.c: New test. + * gcc.dg/attr-btf-type-tag-3.c: New test. + +2025-10-09 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/cpp/has-builtin-4.c: Expect + __has_builtin (__builtin_c23_va_start) == 1 also for C++26. + * c-c++-common/Wvarargs.c (foo3): Don't expect undefined behavior + warning for C++26. + * g++.dg/cpp26/stdarg1.C: New test. + * g++.dg/cpp26/stdarg2.C: New test. + * g++.dg/cpp26/stdarg3.C: New test. + * g++.dg/cpp26/stdarg4.C: New test. + * g++.dg/cpp26/stdarg5.C: New test. + * g++.dg/cpp26/stdarg6.C: New test. + * g++.dg/cpp26/stdarg7.C: New test. + * g++.dg/cpp26/stdarg8.C: New test. + * g++.dg/cpp26/stdarg9.C: New test. + * g++.dg/opt/pr60849.C (foo): Add explicit cast. + +2025-10-09 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/116477 + * g++.dg/cpp2a/concepts-pr116477.C: New test. + +2025-10-09 Georg-Johann Lay <avr@gjlay.de> + + PR target/122222 + * gcc.target/avr/pr122222-sitod.c: New test. + +2025-10-09 Georg-Johann Lay <avr@gjlay.de> + + PR target/122220 + * gcc.target/avr/pr122220.c: New test. + +2025-10-09 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Replace INCLUDE_ + defines with include of include "analyzer/common.h". Update + for changes to binding_pair. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + +2025-10-09 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/tree-ssa/cselim-2.c: Pass -ftree-cselim option. + +2025-10-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122206 + * gfortran.dg/interface_abstract_6.f90: New test. + +2025-10-09 Jakub Jelinek <jakub@redhat.com> + + PR c/122188 + * gcc.dg/torture/pr122188.c: New test. + +2025-10-09 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_group_plugin.cc: Define INCLUDE_VECTOR. + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/constsynth_2insns.c, + gcc.target/xtensa/constsynth_3insns.c, + gcc.target/xtensa/constsynth_double.c: Remove due to outdated. + * gcc.target/xtensa/constsynthV2_O2_costs0.c, + gcc.target/xtensa/constsynthV2_O2_costs5.c, + gcc.target/xtensa/constsynthV2_Os.c: New. + +2025-10-09 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/BGEUI-BLTUI-32k-64k.c: + Disable optimizations and modify to also verify RTL dump in the + "expand" pass. + +2025-10-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122212 + * gcc.dg/torture/pr122212.c: New testcase. + +2025-10-09 Georg-Johann Lay <avr@gjlay.de> + + PR target/122210 + * gcc.target/avr/dtofx.c: New test. + +2025-10-09 Georg-Johann Lay <avr@gjlay.de> + + PR target/122210 + * gcc.target/avr/fxtod.c: New test. + +2025-10-09 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/vls-type-rvv-max-lmul.c: New test. + * gcc.target/riscv/rvv/vls-type-rvv-max-lmul-autovec.c: New + test. + +2025-10-08 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c11-generic-4.c, gcc.dg/c23-generic-5.c, + gcc.dg/c2y-generic-5.c: New tests. + +2025-10-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/49111 + * gfortran.dg/binding_label_tests_9.f03: Adjust test. + * gfortran.dg/module_private_2.f90: Likewise. + * gfortran.dg/public_private_module_2.f90: Likewise. + * gfortran.dg/binding_label_tests_35.f90: New test. + +2025-10-08 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/c11-generic-2.c: Adapt error message. + * gcc.dg/c2y-generic-3.c: Adapt test. + * gcc.dg/c2y-generic-4.c: New test. + +2025-10-08 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/cpp/named-universal-char-escape-1.c: Add test for + \N{CJK UNIFIED IDEOGRAPH-3340E}. + +2025-10-08 Jason Merrill <jason@redhat.com> + + * g++.dg/analyzer/new-2.C: Adjust diags. + * g++.dg/analyzer/noexcept-new.C: Adjust diags. + * g++.dg/warn/Warray-bounds-23.C: Add warnings. + * g++.dg/warn/Warray-bounds-24.C: Add warnings. + * g++.dg/cpp26/constexpr-new4a.C: New test. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/110223 + PR tree-optimization/122128 + * gcc.dg/vect/vect-bool-2.c: New testcase. + * gcc.dg/vect/vect-bool-cmp-3.c: Likewise. + * gcc.dg/vect/vect-bool-cmp-4.c: Likewise. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR testsuite/120100 + * g++.dg/vect/pr64410.cc: Adjust. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR target/120091 + * gcc.target/i386/pr119919.c: Only check for vectorization + when !ia32. + +2025-10-08 Alfie Richards <alfie.richards@arm.com> + + PR target/122180 + * gcc.target/i386/pr122180.c: New test. + +2025-10-08 Jakub Jelinek <jakub@redhat.com> + + PR c/122188 + * c-c++-common/pr122188.c: New test. + +2025-10-08 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121206 + * gcc.dg/pr121987.c (main): Use unsigned long long type for e instead + of unsigned long and use ULL suffix on the initializer. + +2025-10-08 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/93175 + PR fortran/102240 + PR fortran/102686 + * gfortran.dg/pdt_55.f03: New test. + +2025-10-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/105490 + * gcc.dg/vect/vect-cond-14.c: New testcase. + +2025-10-08 Antoni Boucher <bouanto@zoho.com> + + PR jit/112466 + * jit.dg/all-non-failing-tests.h: Mention + test-target-info.c. + * jit.dg/test-target-info.c: New test. + * jit.dg/test-error-target-info.c: New test. + +2025-10-07 Joseph Myers <josmyers@redhat.com> + + PR c/26581 + * gcc.dg/c23-incomplete-2.c, gcc.dg/c23-incomplete-3.c, + gcc.dg/c23-incomplete-4.c, gcc.dg/c2y-incomplete-4.c, + gcc.dg/c2y-incomplete-5.c: New tests. + * gcc.dg/c23-thread-local-2.c, gcc.dg/c2y-incomplete-1.c: Update + expected errors. + +2025-10-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120691 + * gcc.target/i386/pr120691.c: New test. + +2025-10-07 Jason Merrill <jason@redhat.com> + + * g++.dg/warn/Warray-bounds-20.C: Remove xfails, add diags. + +2025-10-07 Georg-Johann Lay <avr@gjlay.de> + + PR target/122187 + * gcc.target/avr/torture/pr122187.c: New test. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * gfortran.dg/dynamic_dispatch_9.f03: Fix spelling in comment. + * gfortran.dg/use_only_3.inc: Likewise + +2025-10-07 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/121845 + * gcc.target/riscv/rvv/autovec/pr121845.c: New test. + +2025-10-07 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + PR target/122124 + * gcc.target/riscv/rvv/autovec/pr122124.c: New test. + +2025-10-07 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/102901 + * gfortran.dg/pdt_56.f03: Copy of pdt_13.f03 compiled with + -fcheck=all. + +2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121921 + * gcc.dg/pr121921-1.c: New test. + +2025-10-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122083 + * gcc.dg/tree-ssa/ssa-pre-19.c: Disable phiopt and cselim. + * g++.dg/opt/pr122083-1.C: New test. + * gcc.dg/tree-ssa/cselim-1.c: New test. + * gcc.dg/tree-ssa/cselim-2.c: New test. + +2025-10-07 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/122122 + * gcc.target/i386/memcpy-pr120683-2.c: Swap %edx/%rdx with + %eax/%rax after + * gcc.target/i386/memcpy-pr120683-3.c: Likewise. + * gcc.target/i386/memcpy-pr120683-4.c: Likewise. + * gcc.target/i386/memcpy-pr120683-5.c: Likewise. + * gcc.target/i386/memcpy-pr120683-6.c: Likewise. + * gcc.target/i386/memcpy-pr120683-7.c: Likewise. + * gcc.target/i386/pr111657-1.c: Likewise. + +2025-10-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122155 + * gcc.dg/tree-ssa/cselim-3.c: New test. + +2025-10-06 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/sincos-1.c: New test. + +2025-10-06 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/121206 + * gcc.dg/pr121987.c: New. + +2025-10-06 Georg-Johann Lay <avr@gjlay.de> + + PR target/122177 + * gcc.target/avr/fminfmax-1.c: New test. + +2025-10-06 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/cmpdi-1.c: New test. + +2025-10-06 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121599 + * gcc.target/aarch64/sve2/pr121599.c: New test. + +2025-10-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122131 + * gcc.target/powerpc/altivec-39.c: New testcase. + +2025-10-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122158 + * gcc.dg/vect/pr122158.c: New testcase. + +2025-10-06 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/122133 + * c-c++-common/toplevel-asm-9.c: New test. + +2025-10-05 H.J. Lu <hjl.tools@gmail.com> + + PR target/122150 + * gcc.target/i386/pr122150.c: New test. + +2025-10-05 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * c-c++-common/torture/asm-inline.c: Disable at -Og. + * gcc.dg/torture/restrict-8.c: Likewise. + +2025-10-05 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwaddu.wx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test + helper macros and data. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_wx_run.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/wx_vwaddu-run-1-u64.c: New test. + +2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122053 + * g++.dg/modules/pr122053_a.C: New test. + * g++.dg/modules/pr122053_b.C: New test. + +2025-10-05 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/namespace-1_c.C: Adjust to expect errors. + * g++.dg/modules/namespace-2_b.C: Likewise. + * g++.dg/modules/namespace-3_a.C: Removed. + * g++.dg/modules/namespace-3_b.C: Removed. + +2025-10-05 Franck Behaghel <franckbehaghel_gcc@protonmail.com> + + * gnat.dg/allocator3.adb: New test. + +2025-10-05 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/113536 + * gnat.dg/reduce2.adb: New test. + +2025-10-04 Harald Anlauf <anlauf@gmx.de> + + PR fortran/107968 + * gfortran.dg/implied_do_io_9.f90: New test. + +2025-10-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122153 + * gcc.dg/tree-ssa/pr122153-1.c: New test. + +2025-10-04 Matteo Nicoli <matteo.nicoli001@gmail.com> + + PR tree-optimization/117760 + * gcc.dg/int-bwise-opt-1.c: New test. + * gcc.dg/int-bwise-opt-2.c: New test. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/122104 + * gcc.target/i386/pr122104.c: New test. + +2025-10-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + PR target/122114 + * gcc.target/riscv/pr122114.c: New test. + +2025-10-04 Jeff Law <jlaw@ventanamicro.com> + + PR target/122147 + * gcc.target/riscv/pr122147.c: New test. + +2025-10-04 Zhongyao Chen <chenzhongyao.hit@gmail.com> + + PR target/118945 + * gcc.target/riscv/rvv/autovec/pr118945-1.c: New file. + * gcc.target/riscv/rvv/autovec/pr118945-2.c: New file. + +2025-10-04 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/use_type1.adb: New test. + * gnat.dg/use_type2.adb: Likewise. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp2a/constexpr-new28.C: New test. + * g++.dg/cpp2a/constexpr-new29.C: New test. + +2025-10-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/114457 + * g++.dg/cpp1y/vla-initlist1.C: Remove dg-skip-if for powerpc. + Initialize i to 43 for ctor from initializer_list and expect value + 43 instead of 42. + * g++.dg/cpp26/attr-indeterminate1.C: New test. + * g++.dg/cpp26/attr-indeterminate2.C: New test. + * g++.dg/cpp26/attr-indeterminate3.C: New test. + * g++.dg/cpp26/attr-indeterminate4.C: New test. + * g++.dg/cpp26/erroneous1.C: New test. + * g++.dg/cpp26/erroneous2.C: New test. + * g++.dg/cpp26/erroneous3.C: New test. + * g++.dg/cpp26/erroneous4.C: New test. + * g++.dg/opt/store-merging-1.C: Add + -ftrivial-auto-var-init=uninitialized to dg-options. + * g++.dg/uninit-pred-loop-1_b.C: Expect a warning for C++26. + * g++.dg/warn/Wuninitialized-13.C: Expect warning on a different + line. + * c-c++-common/ubsan/vla-1.c: Add + -ftrivial-auto-var-init=uninitialized to dg-options. + * c-c++-common/uninit-17.c: For c++26 expect warning on a different + line. + * g++.dg/warn/Warray-bounds-20.C: Expect warning on a different line. + * c-c++-common/analyzer/invalid-shift-1.c: Xfail for c++26 until + PR122044 is fixed. + * g++.dg/analyzer/exception-value-2.C: Skip for c++26 until PR122044 + is fixed. + * c-c++-common/goacc-gomp/nesting-1.c: Skip for c++26 until PR121975 + is fixed. + * c-c++-common/goacc/kernels-decompose-2.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr100400-1-1.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr100400-1-3.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104061-1-1.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104061-1-3.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104061-1-4.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104132-1.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104133-1.c: Likewise. + * c-c++-common/goacc/kernels-decompose-pr104774-1.c: Likewise. + * c-c++-common/goacc/mdc-1.c: Likewise. + +2025-10-04 Jason Merrill <jason@redhat.com> + + PR c++/122127 + PR c++/112632 + * g++.dg/cpp0x/lambda/lambda-template18.C: New test. + +2025-10-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117658 + * g++.dg/modules/adl-6_c.C: Adjust diagnostics. + * g++.dg/modules/internal-14_c.C: Likewise. + * g++.dg/modules/internal-15_a.C: New test. + * g++.dg/modules/internal-15_b.C: New test. + +2025-10-03 Egas Ribeiro <egas.g.ribeiro@tecnico.ulisboa.pt> + + PR c++/122112 + * g++.dg/parse/auto-struct-param.C: New test. + +2025-10-03 David Malcolm <dmalcolm@redhat.com> + + Revert: + 2025-10-03 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc + (report_diag_with_graphs): Port from set_attr to set_property. + +2025-10-03 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/121937 + * gcc.target/riscv/pr121937.c: New test. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * gcc.dg/tree-ssa/builtin-fprintf-1.c: Update to scan optimized. + * gcc.dg/tree-ssa/builtin-fprintf-chk-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-printf-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-printf-chk-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-vfprintf-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-vfprintf-chk-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-vprintf-1.c: Likewise. + * gcc.dg/tree-ssa/builtin-vprintf-chk-1.c: Likewise. + * gcc.dg/tree-ssa/ssa-ccp-10.c: Likewise. + * gcc.dg/builtin-unreachable-5.c: Likewise. + * gcc.dg/builtin-unreachable-6.c: Likewise. + * gcc.dg/builtin-unreachable-6a.c: Likewise. + * gcc.dg/builtin-unreachable-7.c: Likewise. + * gcc.dg/pr78408-2.c: Change fab1 to forwprop1 as that + optimization was moved there a while back. + * gcc.dg/tree-ssa/pr79691.c: Udpate scanning for 9 + constant to return. + +2025-10-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/122033 + * gcc.dg/tree-ssa/pr122033-1.c: New test. + * gcc.dg/tree-ssa/pr122033-2.c: New test. + +2025-10-03 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/aarch64/asm-flag-1.c: Scan for lt. + * gcc.target/aarch64/vector-compare-5.c: Use scan-tree-dump-times. + * gcc.target/aarch64/simd/fold_to_highpart_5.c: Scan for sabal2 + and uabal2. + * gcc.target/aarch64/sve/mixed_size_6.c: Scan for absence of + index with 2. + * gcc.target/aarch64/declare-simd-2.c: Scan for _ZGVnM4ul2v_f05 + and_ZGVnN8ul2v_f05 + * gcc.target/aarch64/sve/arith_1.c: Remove duplicate + scan-assembler patterns. + * gcc.target/aarch64/sve/cond_fmaxnm_1.c: Likewise. + * gcc.target/aarch64/sve/cond_fmaxnm_5.c: Likewise. + * gcc.target/aarch64/sve/cond_fminnm_1.c: Likewise. + * gcc.target/aarch64/sve/cond_fminnm_5.c: Likewise + * gcc.target/aarch64/sve/pcs/annotate_1.c: Likewise. + * gcc.target/aarch64/sve/uzp1_1.c: Likewise. + * gcc.target/aarch64/sve/uzp2_1.c: Likewise. + * gcc.target/aarch64/scalar_intrinsics.c: Scan for ursra. + * gcc.target/aarch64/singleton_intrinsics_1.c: Likewise. + * gcc.target/aarch64/sve/cond_fmaxnm_3.c: Fix register modifiers in + scan patterns. + * gcc.target/aarch64/sve/cond_fmaxnm_7.c: Likewise. + * gcc.target/aarch64/sve/cond_fminnm_3.c: Likewise. + * gcc.target/aarch64/sve/cond_fminnm_7.c: Likewise. + * gcc.target/aarch64/sve/cond_fmul_3.c: Likewise. + * gcc.target/aarch64/sve/cond_fsubr_3.c: Likewise. + * gcc.target/aarch64/ldp_stp_18.c: Fix typos in scan patterns. + * gcc.target/aarch64/sve/pcs/return_6.c: Likewise. + * gcc.target/aarch64/ror_2.c: Adjust constants to ensure + scan-assembler patterns are unique. + * gcc.target/aarch64/sve/struct_move_3.c: Likewise. + * gcc.target/aarch64/sve/struct_move_6.c: Likewise. + * gcc.target/aarch64/builtin_pld_pli.c: Use check-function-bodies + * gcc.target/aarch64/csinc-1.c: Likewise. + * gcc.target/aarch64/csneg-1.c: Likewise. + * gcc.target/aarch64/flt_mov_immediate_1.c: Likewise. + * gcc.target/aarch64/scalar_shift_1.c: Likewise. + +2025-10-03 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122089 + * gfortran.dg/pdt_52.f03: New test. + * gfortran.dg/pdt_53.f03: New test. + * gfortran.dg/pdt_54.f03: New test. + +2025-10-02 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc + (report_diag_with_graphs): Port from set_attr to set_property. + +2025-10-02 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c2y-init-2.c, gcc.dg/c2y-init-3.c: New tests. + +2025-10-02 Aurelien Jarno <aurelien@aurel32.net> + + PR target/121652 + * gcc.target/riscv/rvv/autovec/vls/math-nearbyint-1.c: Adjust + scan pattern for fewer instances of frflags/fsrflags. + +2025-10-02 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/start_unit_plugin.cc: Fix typo in comment. + +2025-10-02 Jeff Law <jlaw@ventanamicro.com> + + PR target/122051 + * gcc.target/riscv/pr122051.c: New test. + +2025-10-02 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/mv-error11.c: New test. + * gcc.target/aarch64/mv-error12.c: New test. + +2025-10-02 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/mv-and-mvc-error1.c: New test. + * gcc.target/aarch64/mv-and-mvc-error2.c: New test. + * gcc.target/aarch64/mv-and-mvc-error3.c: New test. + * gcc.target/aarch64/mv-error1.c: New test. + * gcc.target/aarch64/mv-error2.c: New test. + * gcc.target/aarch64/mv-error3.c: New test. + * gcc.target/aarch64/mv-error4.c: New test. + * gcc.target/aarch64/mv-error5.c: New test. + * gcc.target/aarch64/mv-error6.c: New test. + * gcc.target/aarch64/mv-error7.c: New test. + * gcc.target/aarch64/mv-error8.c: New test. + * gcc.target/aarch64/mv-error9.c: New test. + * gcc.target/aarch64/mv-error10.c: New test. + * gcc.target/aarch64/mvc-error1.c: New test. + * gcc.target/aarch64/mvc-error2.c: New test. + * gcc.target/aarch64/mvc-warning1.c: New test. + +2025-10-02 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/mv-1.c: New test. + * gcc.target/aarch64/mv-and-mvc1.c: New test. + * gcc.target/aarch64/mv-and-mvc2.c: New test. + * gcc.target/aarch64/mv-and-mvc3.c: New test. + * gcc.target/aarch64/mv-and-mvc4.c: New test. + * gcc.target/aarch64/mv-symbols1.c: New test. + * gcc.target/aarch64/mv-symbols10.c: New test. + * gcc.target/aarch64/mv-symbols11.c: New test. + * gcc.target/aarch64/mv-symbols12.c: New test. + * gcc.target/aarch64/mv-symbols13.c: New test. + * gcc.target/aarch64/mv-symbols14.c: New test. + * gcc.target/aarch64/mv-symbols2.c: New test. + * gcc.target/aarch64/mv-symbols3.c: New test. + * gcc.target/aarch64/mv-symbols4.c: New test. + * gcc.target/aarch64/mv-symbols5.c: New test. + * gcc.target/aarch64/mv-symbols6.c: New test. + * gcc.target/aarch64/mv-symbols7.c: New test. + * gcc.target/aarch64/mv-symbols8.c: New test. + * gcc.target/aarch64/mv-symbols9.c: New test. + * gcc.target/aarch64/mvc-symbols1.c: New test. + * gcc.target/aarch64/mvc-symbols2.c: New test. + * gcc.target/aarch64/mvc-symbols3.c: New test. + * gcc.target/aarch64/mvc-symbols4.c: New test. + +2025-10-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122079 + * gcc.dg/torture/pr122079-2.c: New testcase. + * gcc.dg/torture/pr122079-3.c: Likewise. + +2025-10-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122079 + * gcc.dg/torture/pr122079-1.c: New testcase. + +2025-10-01 Jeff Law <jlaw@ventanamicro.com> + + PR target/122106 + * gcc.target/riscv/pr122106.c: New test. + +2025-10-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/122080 + * gfortran.dg/ubsan/missing_optional_dummy_9.f90: New test. + +2025-10-01 Andreas Schwab <schwab@linux-m68k.org> + + PR target/122066 + * gcc.c-torture/compile/pr122066.c: New test. + +2025-10-01 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120560 + * gcc.dg/pr120560.c: New. + +2025-10-01 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/122089 + * gfortran.dg/pdt_51.f03: New test. + +2025-09-30 David Malcolm <dmalcolm@redhat.com> + + * lib/sarif.py: Remove import of ET. + +2025-09-30 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/fmv-selection1.C: New test. + * g++.target/aarch64/fmv-selection2.C: New test. + * g++.target/aarch64/fmv-selection3.C: New test. + * g++.target/aarch64/fmv-selection4.C: New test. + * g++.target/aarch64/fmv-selection5.C: New test. + * g++.target/aarch64/fmv-selection6.C: New test. + * g++.target/aarch64/fmv-selection7.C: New test. + +2025-09-30 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/vect/tsvc/vect-tsvc-s1244.c (s1244): Fix comment typo, + ture -> true. + * gcc.dg/vect/tsvc/vect-tsvc-s2244.c (s2244): Likewise. + +2025-09-30 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/reduce1.adb: New test. + +2025-09-30 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/105380 + PR fortran/102241 + * gfortran.dg/pdt_49.f03: New test. + * gfortran.dg/pdt_11.f03: Deallocate 'o_fdef'. + * gfortran.dg/pdt_15.f03: Reinstate final 'pop_8' and update + the tree dump counts. + * gfortran.dg/pdt_20.f03: Deallocate 'x'. + * gfortran.dg/pdt_23.f03: Deallocate 'x'. + * gfortran.dg/pdt_3.f03: Eliminate the temporary 'matrix' and + use w%d directly in the allocation. Change the TODO comment and + comment on memory leak in allocation. + * gfortran.dg/pdt_39.f03: Comments on memory leaks. + * gfortran.dg/pdt_40.f03: Deallocate 'foo' and bar%x. + * gfortran.dg/pdt_50.f03: New test. + +2025-09-29 YunQiang Su <yunqiang@isrc.iscas.ac.cn> + + * gcc.target/mips/pr99217-2.c: New test. + +2025-09-28 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pieces-memcmp-2.c: Remove mstore-max. + * gcc.target/i386/pieces-memcpy-19.c: Ditto. + * gcc.target/i386/pieces-memcpy-20.c: Ditto. + * gcc.target/i386/pr104610.c: Ditto. + * gcc.target/i386/pieces-memset-47.c: Scan warning for + mstore-max deprecation. + * gcc.target/i386/pieces-memset-48.c: Change mstore-max to mmove-max. + * gcc.target/i386/pr121410.c: Ditto. + * gcc.target/i386/pieces-memset-11.c: Change + avx256_store_by_pieces to avx256_move_by_pieces. + * gcc.target/i386/pieces-memset-14.c: Ditto. + * gcc.target/i386/pieces-memset-2.c: Ditto. + * gcc.target/i386/pieces-memset-20.c: Ditto. + * gcc.target/i386/pieces-memset-23.c: Ditto. + * gcc.target/i386/pieces-memset-29.c: Ditto. + * gcc.target/i386/pieces-memset-30.c: Ditto. + * gcc.target/i386/pieces-memset-33.c: Ditto. + * gcc.target/i386/pieces-memset-34.c: Ditto. + * gcc.target/i386/pieces-memset-37.c: Ditto. + * gcc.target/i386/pieces-memset-44.c: Ditto. + * gcc.target/i386/pieces-memset-5.c: Ditto. + * gcc.target/i386/pr100865-10a.c: Ditto. + * gcc.target/i386/pr100865-4a.c: Ditto. + * gcc.target/i386/pr90773-20.c: Ditto. + * gcc.target/i386/pr90773-21.c: Ditto. + * gcc.target/i386/pr90773-22.c: Ditto. + * gcc.target/i386/pr90773-23.c: Ditto. + * g++.target/i386/pr80566-1.C: Ditto. + * gcc.target/i386/pieces-memset-45.c: Change + avx512_store_by_pieces to avx512_move_by_pieces. + +2025-09-27 YunQiang Su <syq@gcc.gnu.org> + + * gcc.target/mips/mips16e2.c: Use isa_rev=2 instead of >=2. + * gcc.target/mips/mips16e2-cache.c: Ditto. + * gcc.target/mips/mips16e2-cmov.c: Ditto. + * gcc.target/mips/mips16e2-gp.c: Ditto. + +2025-09-27 ChengLulu <chenglulu@loongson.cn> + + PR target/99217 + * gcc.target/mips/pr99217.c: New test. + +2025-09-27 Jason Merrill <jason@redhat.com> + + PR c++/112632 + * g++.dg/cpp2a/concepts-conv4.C: New test. + +2025-09-27 Jason Merrill <jason@redhat.com> + + PR c++/121854 + * g++.dg/cpp23/explicit-obj-lambda19.C: New test. + +2025-09-27 Jason Merrill <jason@redhat.com> + + PR c++/122048 + * g++.dg/cpp1y/lambda-generic-this6.C: New test. + +2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> + + * gcc.target/mips/mips16e2-cache.c: Use isa_rev>=2 instead of + -mips32r2 and remove -mips16 option. + * gcc.target/mips/mips16e2-cmov.c: Add isa_rev>=2 and remove + -mips16 option. + * gcc.target/mips/mips16e2-gp.c: Same as above. + * gcc.target/mips/mips16e2.c: Same as above. + +2025-09-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87908 + * gfortran.dg/pr87908.f90: Delete. + +2025-09-27 Jie Mei <jie.mei@oss.cipunited.com> + + * gcc.target/mips/mips-msubf.c: New tests for MIPSr6. + +2025-09-26 Alejandro Colomar <alx@kernel.org> + + * gcc.dg/Wmultiple-parameter-fwd-decl-lists.c: New test. + +2025-09-26 Harald Anlauf <anlauf@gmx.de> + + * gfortran.dg/pdt_48.f03: + +2025-09-26 Joseph Myers <josmyers@redhat.com> + + PR c/88642 + * gcc.dg/c2y-init-1.c: New test. + +2025-09-26 Lulu Cheng <chenglulu@loongson.cn> + + PR target/121875 + * gcc.target/loongarch/can_inline_1.c: New test. + * gcc.target/loongarch/can_inline_2.c: New test. + * gcc.target/loongarch/can_inline_3.c: New test. + * gcc.target/loongarch/can_inline_4.c: New test. + * gcc.target/loongarch/can_inline_5.c: New test. + * gcc.target/loongarch/can_inline_6.c: New test. + * gcc.target/loongarch/pr121875.c: New test. + +2025-09-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121939 + * gfortran.dg/deferred_character_39.f90: Disable temporary + workaround for character(kind=4) deferred-length bug. + +2025-09-24 Dusan Stojkovic <Dusan.Stojkovic@rt-rk.com> + + PR target/121778 + * gcc.target/riscv/pr121778-1.c: New test. + * gcc.target/riscv/pr121778-2.c: New test. + +2025-09-24 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c23-complit-9.c: New test. + +2025-09-24 Mikael Morin <morin-mikael@orange.fr> + + PR fortran/122046 + * gfortran.dg/submodule_34.f90: New test. + +2025-09-24 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121762 + * c-c++-common/ubsan/align-5.c: Update as __builtin_assume_aligned + is no longer taked into account. + * c-c++-common/ubsan/align-5a.c: New test. + +2025-09-24 Xi Ruoyao <xry111@xry111.site> + + PR middle-end/66462 + * gcc.target/loongarch/fclass-compile.c: Update test. + * gcc.target/loongarch/fclass-run.c: Likewise. + +2025-09-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122019 + * g++.dg/modules/lang-4_a.C: New test. + * g++.dg/modules/lang-4_b.C: New test. + +2025-09-24 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87908 + * gfortran.dg/pr87908.f90: New test. + +2025-09-24 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u64.c: New test. + +2025-09-23 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/121986 + * gcc.dg/sarif-output/extra-semicolon.c: New test. + * gcc.dg/sarif-output/extra-semicolon.py: New test. + * gcc.dg/sarif-output/missing-semicolon.py: Verify the description + of the insertion fix-it hint. + * libgdiagnostics.dg/test-fix-it-hint-c.py: Verify the description + of the replacement fix-it hint. + +2025-09-23 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/acle/simd32.c (test_sadd16): Scan for sadd16. + * gcc.target/arm/armv8_2-fp16-neon-1.c (vcgtz, 128-bit): Scan for vcgt. + * gcc.target/arm/armv8_2-fp16-neon-2.c (vcgtz, 128-bit): Scan for vcgt. + (vmul, vmul N): Use check function bodies to avoid ambiguity. + * gcc.target/arm/armv8_2-fp16-scalar-1.c (vrndm): Scan for vrintm. + (vrndn): Scan for vrintn. + (vrndp): Scan for vrintp. + (vrndx): Scan for vrintx. + * gcc.target/arm/asm-flag-1.c: Scan for movlt. + * gcc.target/arm/csneg.c: Convert to check-function-bodies. + * gcc.target/arm/mve/dlstp-compile-asm-2.c (test10): Fix comment that caused test9 scan + to be run twice. + * gcc.target/arm/mve/intrinsics/vgetq_lane_f16.c: Convert to check-function-bodies. + * gcc.target/arm/mve/intrinsics/vgetq_lane_f32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_s8.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u16.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u32.c: Likewise. + * gcc.target/arm/mve/intrinsics/vgetq_lane_u8.c: Likewise. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/mv-1.C: Remove option. + * g++.target/aarch64/mv-and-mvc-error1.C: Ditto. + * g++.target/aarch64/mv-and-mvc-error2.C: Ditto. + * g++.target/aarch64/mv-and-mvc-error3.C: Ditto. + * g++.target/aarch64/mv-and-mvc1.C: Ditto. + * g++.target/aarch64/mv-and-mvc2.C: Ditto. + * g++.target/aarch64/mv-and-mvc3.C: Ditto. + * g++.target/aarch64/mv-and-mvc4.C: Ditto. + * g++.target/aarch64/mv-error1.C: Ditto. + * g++.target/aarch64/mv-error2.C: Ditto. + * g++.target/aarch64/mv-error3.C: Ditto. + * g++.target/aarch64/mv-error4.C: Ditto. + * g++.target/aarch64/mv-error5.C: Ditto. + * g++.target/aarch64/mv-error6.C: Ditto. + * g++.target/aarch64/mv-error7.C: Ditto. + * g++.target/aarch64/mv-error8.C: Ditto. + * g++.target/aarch64/mv-pragma.C: Ditto. + * g++.target/aarch64/mv-symbols1.C: Ditto. + * g++.target/aarch64/mv-symbols10.C: Ditto. + * g++.target/aarch64/mv-symbols11.C: Ditto. + * g++.target/aarch64/mv-symbols12.C: Ditto. + * g++.target/aarch64/mv-symbols13.C: Ditto. + * g++.target/aarch64/mv-symbols2.C: Ditto. + * g++.target/aarch64/mv-symbols3.C: Ditto. + * g++.target/aarch64/mv-symbols4.C: Ditto. + * g++.target/aarch64/mv-symbols5.C: Ditto. + * g++.target/aarch64/mv-symbols6.C: Ditto. + * g++.target/aarch64/mv-symbols7.C: Ditto. + * g++.target/aarch64/mv-symbols8.C: Ditto. + * g++.target/aarch64/mv-symbols9.C: Ditto. + * g++.target/aarch64/mvc-error1.C: Ditto. + * g++.target/aarch64/mvc-error2.C: Ditto. + * g++.target/aarch64/mvc-symbols1.C: Ditto. + * g++.target/aarch64/mvc-symbols2.C: Ditto. + * g++.target/aarch64/mvc-symbols3.C: Ditto. + * g++.target/aarch64/mvc-symbols4.C: Ditto. + * g++.target/aarch64/mv-warning1.C: Removed. + * g++.target/aarch64/mvc-warning1.C: Removed. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/mv-and-mvc-error1.C: New test. + * g++.target/aarch64/mv-and-mvc-error2.C: New test. + * g++.target/aarch64/mv-and-mvc-error3.C: New test. + * g++.target/aarch64/mv-error1.C: New test. + * g++.target/aarch64/mv-error2.C: New test. + * g++.target/aarch64/mv-error3.C: New test. + * g++.target/aarch64/mv-error4.C: New test. + * g++.target/aarch64/mv-error5.C: New test. + * g++.target/aarch64/mv-error6.C: New test. + * g++.target/aarch64/mv-error7.C: New test. + * g++.target/aarch64/mv-error8.C: New test. + * g++.target/aarch64/mvc-error1.C: New test. + * g++.target/aarch64/mvc-error2.C: New test. + * g++.target/aarch64/mvc-warning1.C: Modified test. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/mv-and-mvc1.C: New test. + * g++.target/aarch64/mv-and-mvc2.C: New test. + * g++.target/aarch64/mv-and-mvc3.C: New test. + * g++.target/aarch64/mv-and-mvc4.C: New test. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/mv-1.C: Change for target_version semantics. + * g++.target/aarch64/mv-symbols2.C: Ditto. + * g++.target/aarch64/mv-symbols3.C: Ditto. + * g++.target/aarch64/mv-symbols4.C: Ditto. + * g++.target/aarch64/mv-symbols5.C: Ditto. + * g++.target/aarch64/mvc-symbols3.C: Ditto. + * g++.target/riscv/mv-symbols2.C: Ditto. + * g++.target/riscv/mv-symbols3.C: Ditto. + * g++.target/riscv/mv-symbols4.C: Ditto. + * g++.target/riscv/mv-symbols5.C: Ditto. + * g++.target/riscv/mvc-symbols3.C: Ditto. + * g++.target/aarch64/mv-symbols10.C: New test. + * g++.target/aarch64/mv-symbols11.C: New test. + * g++.target/aarch64/mv-symbols12.C: New test. + * g++.target/aarch64/mv-symbols13.C: New test. + * g++.target/aarch64/mv-symbols6.C: New test. + * g++.target/aarch64/mv-symbols7.C: New test. + * g++.target/aarch64/mv-symbols8.C: New test. + * g++.target/aarch64/mv-symbols9.C: New test. + +2025-09-23 Alfie Richards <alfie.richards@arm.com> + + * g++.target/i386/mv-symbols1.C: Update x86 FMV mangling. + * g++.target/i386/mv-symbols3.C: Ditto. + * g++.target/i386/mv-symbols4.C: Ditto. + * g++.target/i386/mv-symbols5.C: Ditto. + +2025-09-22 Peter Bergner <bergner@tenstorrent.com> + + PR target/121982 + * gcc.target/riscv/pr121982.c: New test. + +2025-09-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/122015 + * g++.dg/modules/lambda-11.h: New test. + * g++.dg/modules/lambda-11_a.H: New test. + * g++.dg/modules/lambda-11_b.C: New test. + +2025-09-22 Pan Li <pan2.li@intel.com> + + PR middle-end/122021 + * gcc.target/i386/pr122021-0.c: New test. + +2025-09-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122016 + * gcc.dg/torture/pr122016.c: New testcase. + +2025-09-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/122023 + * gcc.dg/vect/pr122023.c: New testcase. + +2025-09-22 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/116205 + * gcc.target/pru/mabi-ti-1.c: Adjust diagnostic location. + * gcc.target/pru/mabi-ti-2.c: Ditto. + * gcc.target/pru/mabi-ti-3.c: Ditto. + * gcc.target/pru/mabi-ti-5.c: Ditto. + * gcc.target/pru/mabi-ti-6.c: Ditto. + * gcc.target/pru/mabi-ti-7.c: Adjust diagnostic locations and + add global variables for checking. + * gcc.target/pru/mabi-ti-11.c: New test. + * gcc.target/pru/mabi-ti-12.c: New test. + * gcc.target/pru/mabi-ti-8.c: New test. + * gcc.target/pru/mabi-ti-9.c: New test. + +2025-09-22 Steve Kargl <pault@gcc.gnu.org> + + PR fortran/103508 + * gfortran.dg/pr103508.f90: New test. + +2025-09-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/builtin-unreachable-7.c: New test. + +2025-09-21 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/121161 + * gfortran.dg/matmul_blas_3.f90: Add effective target lp64. + +2025-09-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/108581 + * gfortran.dg/deferred_character_39.f90: New test. + +2025-09-20 Patrick Palka <ppalka@redhat.com> + + PR c++/121981 + * g++.dg/cpp2a/concepts-placeholder15.C: New test. + +2025-09-20 Eczbek <eczbek.void@gmail.com> + + PR c++/119048 + * g++.dg/cpp23/static-operator-call8.C: New test. + +2025-09-20 Jan Hubicka <jh@suse.cz> + + * g++.dg/ipa/devirt-2.C: Update template. + * g++.dg/ipa/devirt-42.C: Update template. + * g++.dg/lto/devirt-2_0.C: Update template. + +2025-09-20 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c11-atomic-6.c, gcc.dg/c23-incomplete-1.c, + gcc.dg/c2y-incomplete-3.c: New tests. + +2025-09-19 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83746 + * gfortran.dg/pdt_48.f03: New test. + +2025-09-19 Gaius Mulley <gaiusmod2@gmail.com> + + * gm2/errors/fail/testbit2.mod: Rewrite. + * gm2/iso/run/pass/shift4.mod: Rewrite adding more internal + tests. + * gm2/iso/run/pass/testsystem.mod (FindFirstElement): Add + bounds check. + * gm2/sets/run/pass/multisetrotate4.mod: Add more runtime + error messages. + * gm2/sets/run/pass/simplepacked.mod (testpset): Correct + setname. + * lib/gm2.exp (gm2_init_minx): Add -fno-wideset. + * gm2/iso/run/pass/assigncons.mod: New test. + * gm2/iso/run/pass/constructor3.mod: New test. + * gm2/iso/run/pass/proc_test.mod: New test. + * gm2/iso/run/pass/simplelarge2.mod: New test. + * gm2/iso/run/pass/simplelarge3.mod: New test. + * gm2/iso/run/pass/simplelarge4.mod: New test. + * gm2/pimlib/wideset/run/pass/bitset.mod: New test. + * gm2/pimlib/wideset/run/pass/bitset2.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset2.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset3.mod: New test. + * gm2/pimlib/wideset/run/pass/highbit.mod: New test. + * gm2/pimlib/wideset/run/pass/highbit2.mod: New test. + * gm2/sets/run/pass/multisetrotate5.mod: New test. + * gm2/sets/run/pass/setcard.mod: New test. + * gm2/sets/run/pass/setincl.mod: New test. + +2025-09-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/121983 + * gcc.target/riscv/pr121983.c: New test. + +2025-09-19 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/shuffle-slide-run.h: + New test. + * gcc.target/riscv/rvv/autovec/shuffle-slidedown-run.c: + Likewise. + * gcc.target/riscv/rvv/autovec/shuffle-slideup-run.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.h: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-1.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-2.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-perm.h: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-1.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-2.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-perm.h: + Likewise. + +2025-09-19 Jim Lin <jim@andestech.com> + + * gcc.target/riscv/save-restore-cfi-3.c: New test. + * gcc.target/riscv/pr120811.c: New file. + +2025-09-19 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/bclr-lowest-set-bit-1.c: New test. + +2025-09-18 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c2y-anon-init-1.c, gcc.dg/c2y-incomplete-2.c: + gcc.dg/c2y-linkage-1.c, gcc.dg/c2y-linkage-2.c, + gcc.dg/c2y-linkage-3.c, gcc.dg/c2y-linkage-4.c, + gcc.dg/c2y-static-assert-1.c: New tests. + * gcc.dg/c2y-linkage-1.c: New file. + * gcc.dg/c2y-linkage-2.c: New file. + * gcc.dg/c2y-linkage-3.c: New file. + * gcc.dg/c2y-linkage-4.c: New file. + * gcc.dg/c2y-static-assert-1.c: New file. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/constexpr-98122.C: Adjust diagnostic. + * g++.dg/cpp26/constexpr-new6a.C: New test. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * g++.dg/analyzer/pr97116.C: Adjust diagnostic. + * g++.dg/warn/Warray-bounds-20.C: Likewise. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * g++.dg/init/pr25811.C: Tweak diagnostic. + * g++.dg/warn/Warray-bounds-12.C: Likewise. + * g++.dg/warn/Warray-bounds-13.C: Likewise. + * g++.dg/cpp26/constexpr-new6.C: New test. + +2025-09-18 Jason Merrill <jason@redhat.com> + + * g++.dg/warn/Wmismatched-new-delete-2.C: Remove xfail. + +2025-09-18 Qing Zhao <qing.zhao@oracle.com> + + PR tree-optimization/121894 + * g++.dg/opt/auto-init-sra-pr121894.C: New test. + +2025-09-18 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121948 + * gfortran.dg/pdt_3.f03: Add missing deallocation of 'matrix'. + * gfortran.dg/pdt_17.f03: Change dg-error text. + * gfortran.dg/pdt_47.f03: New test. + +2025-09-18 Zhongyao Chen <chenzhongyao.hit@gmail.com> + + PR target/121910 + * gcc.target/riscv/rvv/autovec/pr121910.c: New file. + +2025-09-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/121977 + * g++.dg/gomp/pr121977.C: New test. + +2025-09-18 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/svluti4_zt_1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/svwrite_lane_zt_1.c: New test. + * gcc.target/aarch64/sme2/acle-asm/svwrite_zt_1.c: New test. + * gcc.target/aarch64/sve/acle/general-c/svluti4_zt_1.c: New test. + * gcc.target/aarch64/sve/acle/general-c/svwrite_lane_zt_1.c: New test. + * gcc.target/aarch64/sve/acle/general-c/svwrite_zt_1.c: New test. + +2025-09-18 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_mul-6-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-6-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-6-u8-from-u128.c: New test. + +2025-09-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121720 + * gcc.dg/tree-ssa/ssa-pre-36.c: New testcase. + +2025-09-18 hongtao.liu <hongtao.liu@intel.com> + + * gcc.target/i386/pieces-memcpy-18.c: Use -mtune=znver5 + instead of -mtune=sapphirerapids. + * gcc.target/i386/pieces-memcpy-21.c: Ditto. + * gcc.target/i386/pieces-memset-46.c: Ditto. + * gcc.target/i386/pieces-memset-49.c: Ditto. + +2025-09-17 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/analyzer/unique_ptr-1.C: Rename to... + * g++.dg/analyzer/std-unique_ptr-1.C: ...this. + * g++.dg/analyzer/unique_ptr-2.C: Rename to... + * g++.dg/analyzer/std-unique_ptr-2.C: ...this. + +2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121962 + * gcc.dg/torture/pr121962-1.c: New test. + +2025-09-17 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * gcc.dg/tree-ssa/copy-prop-aggregate-arg-2.c: New test. + +2025-09-17 Thomas Koenig <tkoenig@gcc.gnu.org> + + * gfortran.dg/matmul_blas_3.f90: New test. + +2025-09-17 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR tree-optimization/58727 + * gcc.target/riscv/pr58727.c: New test. + +2025-09-17 Richard Biener <rguenther@suse.de> + + * gcc.dg/torture/pr84830.c: Turn into GIMPLE unit test for PRE. + +2025-09-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/arch13/bitops-1.c: Do not return a 32bit value + but write it to memory. + * gcc.target/s390/arch13/bitops-2.c: Ditto. + * gcc.target/s390/md/andc-splitter-2.c: Adjust scan assembler + directive because sign extends are folded, now. + +2025-09-17 Iain Sandoe <iain@sandoe.co.uk> + + * objc.dg/special/load-category-1.m: Add second source. + * objc.dg/special/load-category-2.m: Likewise. + * objc.dg/special/load-category-3.m: Likewise. + * objc.dg/special/unclaimed-category-1.m: Likewise. + * objc.dg/special/special.exp: Rewrite to make use of generic + testsuite facilities. + +2025-09-17 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/fp16-aapcs.c: New test. + * gcc.target/arm/fp16-aapcs-1.c: Removed. + * gcc.target/arm/fp16-aapcs-2.c: Likewise. + * gcc.target/arm/fp16-aapcs-3.c: Likewise. + * gcc.target/arm/fp16-aapcs-4.c: Likewise. + +2025-09-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwmulu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Add test helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test + data for vwmulu.vx run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwmulu-run-1-u64.c: New test. + +2025-09-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwsubu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwsubu-run-1-u64.c: New test. + +2025-09-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vwaddu.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vwaddu-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_data.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_widen_vx_run.h: New test. + +2025-09-17 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx512bw-vpmovuswb-2.c: Correct res_ref2 + array size. + * gcc.target/i386/avx512bw-vpmovwb-2.c: Ditto. + +2025-09-17 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/vect-epilogues-4.c: Fix for epilogue + vect tree dump. + +2025-09-16 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR c/121421 + * gcc.dg/gimplefe-error-16.c: New test. + +2025-09-16 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * gcc.target/aarch64/pr66462.c: Update test. + +2025-09-16 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/121602 + * gcc.target/aarch64/sve/acle/asm/mul_s16.c: New test. + * gcc.target/aarch64/sve/acle/asm/mul_s32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_s64.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_s8.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u16.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u64.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u8.c: Likewise. + +2025-09-16 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx512bw-vpackssdw-1.c: + Fix xmm/ymm mask tests. + * gcc.target/i386/avx512bw-vpacksswb-1.c: Ditto. + * gcc.target/i386/avx512bw-vpackusdw-1.c: Ditto. + * gcc.target/i386/avx512bw-vpackuswb-1.c: Ditto. + * gcc.target/i386/avx512bw-vpermw-1.c: Test xmm. + * gcc.target/i386/avx512bw-vpmulhw-1.c: + Fix xmm/ymm mask tests. + * gcc.target/i386/avx512f-vec-init.c: Remove duplicate test. + * gcc.target/i386/avx512fp16-13.c: Fix test for aligned load. + * gcc.target/i386/avx512fp16-conjugation-1.c: Revise the test + to test more precisely on masks. + * gcc.target/i386/avx512fp16vl-conjugation-1.c: Ditto. + * gcc.target/i386/avx512vbmi-vpermb-1.c: Test xmm. + * gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Fix scan asm. + * gcc.target/i386/avx512vl-vinsert-1.c: Fix typo. + * gcc.target/i386/avx512vl-vpmulld-1.c: + Fix xmm/ymm mask tests. + * gcc.target/i386/avx512vl-vptestmd-1.c: Ditto. + * gcc.target/i386/bitwise_mask_op-1.c: Fix typo. + * gcc.target/i386/cond_op_shift_q-1.c: Test both vpsra{,v} + and vpsll{,v}. + * gcc.target/i386/cond_op_shift_ud-1.c: Ditto. + * gcc.target/i386/cond_op_shift_uq-1.c: Ditto. + * gcc.target/i386/memcpy-pr95886.c: Fix the wrong const int. + * gcc.target/i386/part-vect-sqrtph-1.c: Remove duplicate test. + * gcc.target/i386/pr107432-7.c: Test vpmov{s,z}xbw instead of + vpmov{s,z}xbd. + * gcc.target/i386/pr88828-0.c: Fix pblendw scan asm. + +2025-09-16 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx_vbroadcastf128.c: New test. + +2025-09-15 Clément Chigot <chigot@adacore.com> + + * gcc.target/aarch64/pr113356.C: Move to ... + * g++.target/aarch64/pr113356.C: ... here. + +2025-09-15 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/widen-mul-0.c: New test. + * gcc.target/riscv/sat/widen-mul-1.c: New test. + * gcc.target/riscv/sat/widen-mul-2.c: New test. + * gcc.target/riscv/sat/widen-mul-3.c: New test. + * gcc.target/riscv/sat/widen-mul.h: New test. + +2025-09-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121751 + PR tree-optimization/121418 + PR tree-optimization/121417 + * gcc.dg/tree-ssa/copy-prop-aggregate-1.c: New test. + * gcc.dg/tree-ssa/copy-prop-aggregate-memcpy-1.c: New test. + * gcc.dg/tree-ssa/copy-prop-aggregate-memcpy-2.c: New test. + +2025-09-15 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/121772 + * gcc.target/aarch64/torture/pr121772.c: New test. + +2025-09-15 H.J. Lu <hjl.tools@gmail.com> + + PR target/121934 + * gcc.target/i386/pr121934-1a.c: New test. + * gcc.target/i386/pr121934-1b.c: Likewise. + * gcc.target/i386/pr121934-2a.c: Likewise. + * gcc.target/i386/pr121934-2b.c: Likewise. + * gcc.target/i386/pr121934-3a.c: Likewise. + * gcc.target/i386/pr121934-3b.c: Likewise. + * gcc.target/i386/pr121934-4a.c: Likewise. + * gcc.target/i386/pr121934-4b.c: Likewise. + * gcc.target/i386/pr121934-5a.c: Likewise. + * gcc.target/i386/pr121934-5b.c: Likewise. + +2025-09-15 Xi Ruoyao <xry111@xry111.site> + + PR target/121906 + * gcc.target/loongarch/pr121906.c: New test. + +2025-09-15 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/andes_vector.h: New file. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c + (#include): Use local andes_vector.h instead of system header. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c + (#include): Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/andes_vector.h: New file. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c + (#include): Use local andes_vector.h instead of system header. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c + (#include): Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/andes_vector.h: New file. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c + (#include): Use local andes_vector.h instead of system header. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c + (#include): Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/andes_vector.h: New file. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c + (#include): Use local andes_vector.h instead of system header. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c + (#include): Likewise. + * gcc.target/riscv/rvv/xsfvector/sifive_vector.h: New file. + * gcc.target/riscv/rvv/xtheadvector/riscv_th_vector.h: New file. + * gcc.target/riscv/rvv/xtheadvector/riscv_vector.h: New file. + +2025-09-15 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/pr121391-1.c: New test. + * gcc.dg/pr121391-2.c: New test. + +2025-09-15 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83763 + * gfortran.dg/pdt_46.f03: New test. + +2025-09-14 Richard Biener <rguenther@suse.de> + + PR lto/121935 + * g++.dg/lto/pr121935_0.C: New testcase. + +2025-09-14 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/conditional_1.f90: New test. + * gfortran.dg/conditional_2.f90: New test. + * gfortran.dg/conditional_3.f90: New test. + * gfortran.dg/conditional_4.f90: New test. + * gfortran.dg/conditional_5.f90: New test. + * gfortran.dg/conditional_6.f90: New test. + * gfortran.dg/conditional_7.f90: New test. + * gfortran.dg/conditional_8.f90: New test. + * gfortran.dg/conditional_9.f90: New test. + +2025-09-14 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/vect-reduc-chain-2.c: Adjust. + * gcc.dg/vect/vect-reduc-chain-3.c: Likewise. + +2025-09-13 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/asm-hard-reg-error-1.c: Enable test for PRU, and define + registers for PRU. + * gcc.dg/asm-hard-reg-error-4.c: Define hard regs for PRU. + * gcc.dg/asm-hard-reg-error-5.c: Ditto. + +2025-09-13 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c23-array-negative-1.c, gcc.dg/c23-register-array-1.c, + gcc.dg/c23-register-array-2.c, gcc.dg/c23-register-array-3.c, + gcc.dg/c23-register-array-4.c, gcc.dg/c2y-array-negative-1.c, + gcc.dg/c2y-register-array-2.c, gcc.dg/c2y-register-array-3.c: New + tests. + +2025-09-12 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/121532 + * ada/acats-4/tests/cxa/cxai034.a: Use Long_Switch_To_New_Task + constant instead of Switch_To_New_Task in delay statements. + * ada/acats-4/tests/cxa/cxai035.a: Likewise. + * ada/acats-4/tests/cxa/cxai036.a: Likewise. + +2025-09-12 Patrick Palka <ppalka@redhat.com> + + PR c++/121795 + * g++.dg/cpp26/pack-indexing17.C: New test. + * g++.dg/cpp26/pack-indexing17a.C: New test. + +2025-09-12 Edwin Lu <ewlu@rivosinc.com> + + PR target/120378 + * gcc.target/riscv/rvv/autovec/pr120378-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr120378-2.c: New test. + * gcc.target/riscv/rvv/autovec/pr120378-3.c: New test. + * gcc.target/riscv/rvv/autovec/pr120378-4.c: New test. + +2025-09-12 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121888 + * gcc.target/sparc/tls-ld-int16.c: Compile with -fPIC. + * gcc.target/sparc/tls-ld-int32.c: Likewise. + * gcc.target/sparc/tls-ld-int64.c: Likewise. + * gcc.target/sparc/tls-ld-int8.c: Likewise. + * gcc.target/sparc/tls-ld-uint16.c: Likewise. + * gcc.target/sparc/tls-ld-uint32.c: Likewise. + * gcc.target/sparc/tls-ld-uint8.c: Likewise. + +2025-09-12 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/120063 + * gcc.dg/fatal-error.c: New test. + * gcc.dg/fatal-error-html.py: New test. + * gcc.dg/fatal-error-sarif.py: New test. + +2025-09-12 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/121876 + * gcc.dg/plugin/crash-test-nested-ice-html.py: New test. + * gcc.dg/plugin/crash-test-nested-ice-sarif.py: New test. + * gcc.dg/plugin/crash-test-nested-ice.c: New test. + * gcc.dg/plugin/crash-test-nested-write-through-null-html.py: New test. + * gcc.dg/plugin/crash-test-nested-write-through-null-sarif.py: New test. + * gcc.dg/plugin/crash-test-nested-write-through-null.c: New test. + * gcc.dg/plugin/crash_test_plugin.cc: Add "nested" argument, and when + set, inject the problem within a nested diagnostic. + * gcc.dg/plugin/plugin.exp: Add crash-test-nested-ice.c and + crash-test-nested-write-through-null.c. + +2025-09-12 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/crash-test-write-though-null-sarif.c: Rename to... + * gcc.dg/plugin/crash-test-write-through-null-sarif.c: ...this. + * gcc.dg/plugin/crash-test-write-though-null-stderr.c: Rename to... + * gcc.dg/plugin/crash-test-write-through-null-stderr.c: ...this. + * gcc.dg/plugin/plugin.exp: Update for above renamings. Sort the + test files for crash_test_plugin.cc alphabetically. + +2025-09-12 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dots.c: + Adjust ABI specification. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotsu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadb.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadt.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vln8.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dots.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotsu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadb.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadt.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vln8.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dots.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotsu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadb.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadt.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vln8.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dots.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotsu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotu.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadb.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadt.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c: + Likewise. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vln8.c: + Likewise. + +2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121893 + * g++.dg/modules/adl-10_a.C: New test. + * g++.dg/modules/adl-10_b.C: New test. + +2025-09-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121865 + * g++.dg/lto/pr101396_0.C: Ensure A will be walked into (and + isn't constant-folded out of the GIMPLE for the function). + * g++.dg/lto/pr101396_1.C: Add message. + * g++.dg/modules/lto-4_a.C: New test. + * g++.dg/modules/lto-4_b.C: New test. + +2025-09-12 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/vect-early-break-addhn_1.c: New test. + * gcc.target/aarch64/vect-early-break-addhn_2.c: New test. + * gcc.target/aarch64/vect-early-break-addhn_3.c: New test. + * gcc.target/aarch64/vect-early-break-addhn_4.c: New test. + +2025-09-12 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/vect-addhn_1.c: New test. + +2025-09-11 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121616 + * gfortran.dg/alloc_comp_assign_17.f90: New test. + +2025-09-11 H.J. Lu <hjl.tools@gmail.com> + + PR fortran/107421 + PR testsuite/121848 + * gfortran.dg/gomp/pr107421.f90: Require PIE and pass -fPIE for + non-x86 targets. + +2025-09-11 H.J. Lu <hjl.tools@gmail.com> + + PR c/107419 + PR c++/107393 + * c-c++-common/tls-attr-common.c: New test. + * c-c++-common/tls-attr-le-pic.c: Likewise. + * c-c++-common/tls-attr-le-pie.c: Likewise. + +2025-09-11 H.J. Lu <hjl.tools@gmail.com> + + PR c++/121889 + * g++.dg/tls/pr121889.C: New test. + +2025-09-11 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * gcc.target/aarch64/pr66462.c: Add tests for isfinite. + +2025-09-11 Matteo Nicoli <matteo.nicoli001@gmail.com> + + PR tree-optimization/121595 + * gcc.dg/fabs-plus-zero-1.c: New testcase. + * gcc.dg/fabs-plus-zero-2.c: Likewise. + +2025-09-11 Xi Ruoyao <xry111@xry111.site> + + * lib/target-supports.exp + (check_effective_target_loongarch_scq_hw): New. + (check_effective_target_sync_int_128_runtime): Return 1 on + loongarch64-*-* if hardware supports both LSX and SCQ. + * gcc.dg/atomic-compare-exchange-5.c: Pass -mlsx -mscq for + loongarch64-*-*. + * gcc.dg/atomic-exchange-5.c: Likewise. + * gcc.dg/atomic-load-5.c: Likewise. + * gcc.dg/atomic-op-5.c: Likewise. + * gcc.dg/atomic-store-5.c: Likewise. + * gcc.dg/atomic-store-6.c: Likewise. + * gcc.dg/simulate-thread/atomic-load-int128.c: Likewise. + * gcc.dg/simulate-thread/atomic-other-int128.c: Likewise. + (dg-final): xfail on loongarch64-*-* because gdb does not + handle sc.q properly yet. + +2025-09-11 Tsukasa OI <research_trasio@irq.a4lg.com> + + * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall.c: New test. + * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall-indirect-1.c: Ditto. + * gcc.target/riscv/rvv/base/abi-call-variant_cc-sibcall-indirect-2.c: Ditto. + +2025-09-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * gcc.dg/torture/pr121829.c: New testcase. + +2025-09-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121870 + * g++.dg/torture/pr121870.C: New testcase. + +2025-09-11 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/zbb-min-max-04.c: New test. + +2025-09-11 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/addsieq.c: Remove xfail and expect conversion + through noce_convert_multiple_sets. + * gcc.target/riscv/addsifeq.c: Ditto. + * gcc.target/riscv/addsifge.c: Ditto. + * gcc.target/riscv/addsifgt.c: Ditto. + * gcc.target/riscv/addsifle.c: Ditto. + * gcc.target/riscv/addsiflt.c: Ditto. + * gcc.target/riscv/addsifne.c: Ditto. + * gcc.target/riscv/addsige.c: Ditto. + * gcc.target/riscv/addsigeu.c: Ditto. + * gcc.target/riscv/addsigt.c: Ditto. + * gcc.target/riscv/addsigtu.c: Ditto. + * gcc.target/riscv/addsile.c: Ditto. + * gcc.target/riscv/addsileu.c: Ditto. + * gcc.target/riscv/addsilt.c: Ditto. + * gcc.target/riscv/addsiltu.c: Ditto. + +2025-09-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/asm-hard-reg-error-4.c: Limit the test to LRA targets. + Use registers r20 and r21 for hppa. Likewise, for AVR use r20 + and r24 instead. + * gcc.dg/asm-hard-reg-error-5.c: Ditto. + +2025-09-11 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/autovec/zve32f-1.c: Update expected + vectorization count from 2 to 3. + * gcc.target/riscv/rvv/autovec/zve32f_zvl256b-1.c: Add + -mrvv-max-lmul=m2 option. + * gcc.target/riscv/rvv/autovec/zve32x_zvl256b-1.c: Add + -mrvv-max-lmul=m2 option. + +2025-09-11 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/cmodel-extreme-1.c: Add -fPIC. + * gcc.target/loongarch/cmodel-extreme-2.c: Likewise. + * gcc.target/loongarch/tls-gd-noplt.c: Likewise. + * gcc.target/loongarch/tls-extreme-macro.c: Likewise. + * gcc.target/loongarch/func-call-medium-2.c: Modify. + * gcc.target/loongarch/func-call-medium-3.c: Modify. + * gcc.target/loongarch/func-call-medium-4.c: Removed. + +2025-09-10 Joseph Myers <josmyers@redhat.com> + + * gcc.dg/c2y-function-qual-1.c, gcc.dg/c2y-incomplete-1.c, + gcc.dg/c2y-inline-1.c, gcc.dg/c2y-pointer-1.c, + gcc.dg/c2y-register-array-1.c, gcc.dg/c2y-storage-class-1.c, + gcc.dg/c2y-struct-empty-1.c: New tests. + +2025-09-10 Peter Bergner <bergner@tenstorrent.com> + + PR target/121878 + * gcc.target/riscv/pr121878.c: New test. + +2025-09-10 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.dg/vect/nodump-extractlast-1.c: New test. + +2025-09-10 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/Wreturn-nested-1.c: New test. + * gcc.dg/Wreturn-nested-2.c: New test. + * gcc.dg/Wtrampolines-2.c: New test. + * gcc.dg/Wtrampolines-3.c: New test. + +2025-09-10 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwsub.wf. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h + (DEF_VF_BINOP_WIDEN_CASE_2, DEF_VF_BINOP_WIDEN_CASE_3): Swap operands. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-2-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-2-f32.c: New test. + +2025-09-10 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121859 + * g++.dg/cpp2a/concepts-traits5.C: New test. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + * lib/lto.exp (lto-execute-1): Search for _1.* etc. files + only with a list of known extensions. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121828 + * gcc.dg/bitint-126.c: New test. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121831 + * g++.dg/lto/pr121831_0.C: New test. + * g++.dg/lto/pr121831_1.C: New test. + +2025-09-10 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.dg/vect/pr109011-2.c: Fix expected outcome. + * gcc.dg/vect/pr109011-4.c: Fix expected outcome. + * gcc.target/s390/ffs-1.c: New test. + +2025-09-10 Jakub Jelinek <jakub@redhat.com> + + * g++.target/i386/mangle-ldbl-1.C: New test. + * g++.target/i386/mangle-ldbl-2.C: New test. + * g++.target/m68k/mangle-ldbl-1.C: New test. + * g++.target/m68k/mangle-ldbl-2.C: New test. + +2025-09-10 Maximilian Immanuel Brandtner <maxbr@linux.ibm.com> + + * gcc.target/s390/vector/vec-extract-3.c: New test. + +2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/99682 + PR c++/121808 + * g++.dg/modules/circ-1_c.C: Adjust diagnostic. + * g++.dg/modules/mod-decl-1.C: Likewise. + * g++.dg/modules/mod-decl-2_b.C: Likewise. + * g++.dg/modules/pr99174.H: Likewise. + * g++.dg/modules/import-3_a.C: New test. + * g++.dg/modules/import-3_b.C: New test. + * g++.dg/modules/import-3_c.C: New test. + * g++.dg/modules/mod-decl-9.C: New test. + * g++.dg/modules/part-10_a.C: New test. + * g++.dg/modules/part-10_b.C: New test. + * g++.dg/modules/part-10_c.C: New test. + * g++.dg/modules/part-10_d.C: New test. + +2025-09-09 Nathaniel Shead <nathanieloshead@gmail.com> + + PR testsuite/121872 + * g++.dg/modules/default-arg-4_b.C: Change run to compile. + +2025-09-09 Patrick Palka <ppalka@redhat.com> + + PR c++/121779 + * g++.dg/lookup/operator-8.C: Remove outdated comment about + this test failing. + * g++.dg/lookup/operator-8a.C: New test. + +2025-09-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/82480 + * gfortran.dg/stat_3.f90: Extend argument checking. + * gfortran.dg/stat_4.f90: New test. + +2025-09-09 David Faust <david.faust@oracle.com> + + PR debug/121411 + * gcc.dg/debug/ctf/ctf-struct-3.c: New test. + +2025-09-09 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwsub.vf. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h + (DEF_VF_BINOP_WIDEN_CASE_0, DEF_VF_BINOP_WIDEN_CASE_1): Swap operands. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwsub-run-1-f32.c: New test. + +2025-09-09 Jakub Jelinek <jakub@redhat.com> + + PR c++/121678 + * g++.dg/ext/pr121678.C: New test. + * gcc.dg/pr121678.c: New test. + +2025-09-09 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwadd.wf. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for single + widening variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: Add support + for single widening variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-2-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-2-f32.c: New test. + +2025-09-09 Kyrylo Tkachov <ktkachov@nvidia.com> + + Revert: + 2025-09-09 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/bcax_d.c: Add tests for DImode arguments. + +2025-09-09 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-09-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * gcc.dg/torture/pr121829.c: New testcase. + +2025-09-09 Matthias Kretz <m.kretz@gsi.de> + + PR c++/121801 + * g++.dg/abi/pr121801.C: New test. + +2025-09-09 H.J. Lu <hjl.tools@gmail.com> + + PR target/121861 + * gcc.target/i386/pr121861-1a.c: New file. + * gcc.target/i386/pr121861-1b.c: Likewise. + +2025-09-09 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx256_avoid_vec_perm-3.c: New test. + * gcc.target/i386/avx256_avoid_vec_perm-4.c: New test. + * gcc.target/i386/avx512bw-vpalignr-4.c: Adjust testcase. + * gcc.target/i386/avx512vl-vpalignr-4.c: Ditto. + +2025-09-09 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx256_avoid_vec_perm.c: Adjust testcase. + * gcc.target/i386/avx256_avoid_vec_perm-2.c: New test. + * gcc.target/i386/avx256_avoid_vec_perm-5.c: New test. + +2025-09-08 Eric Botcazou <ebotcazou@adacore.com> + + PR ada/121532 + * ada/acats-4/tests/cxa/cxai033.a: Use Long_Switch_To_New_Task + constant instead of Switch_To_New_Task in delay statements. + +2025-09-08 Xi Ruoyao <xry111@xry111.site> + + * gcc.dg/fixed-point/bitint-1.c (dg-options): Use -std=gnu23 + instead of -std=c23. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/107997 + PR tree-optimization/121844 + * gcc.dg/torture/pr121844.c: New testcase. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwadd. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h + (DEF_VF_BINOP_WIDEN_CASE_0): Fix OP. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwadd-run-1-f32.c: New test. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121830 + * gcc.dg/vect/pr121830.c: New testcase. + +2025-09-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121829 + * gcc.dg/torture/pr121829.c: New testcase. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfrsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + vfrsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrsub-run-1-f64.c: New test. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vls/floating-point-sub-2.c: Adjust scan + dumps. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + vfsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfsub-run-1-f64.c: New test. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vls/floating-point-add-2.c: Adjust scan + dump. + * gcc.target/riscv/rvv/autovec/vls/floating-point-add-3.c: Likewise. + * gcc.target/riscv/rvv/autovec/vls/floating-point-sub-3.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfadd. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + vfadd. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfadd-run-1-f64.c: New test. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwmul. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for + widening variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_widen_run.h: New test + helper. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmul-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmul-run-1-f32.c: New test. + +2025-09-08 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f16.c: Add vfmax. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f16.c: Add vfmax. Also add + missing -fno-fast-math. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f64.c: Likewise. + +2025-09-08 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84008 + * gfortran.dg/pdt_45.f03: New test. + +2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87900 + * gcc.dg/tree-ssa/calloc-10.c: New test. + * gcc.dg/tree-ssa/calloc-11.c: New test. + * gcc.dg/tree-ssa/calloc-12.c: New test. + +2025-09-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/83022 + * gcc.dg/tree-ssa/calloc-6.c: New test. + * gcc.dg/tree-ssa/calloc-7.c: New test. + * gcc.dg/tree-ssa/calloc-8.c: New test. + * gcc.dg/tree-ssa/calloc-9.c: New test. + +2025-09-07 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121841 + * gcc.dg/tree-ssa/copy-prop-aggregate-struct-1.c: New test. + +2025-09-07 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dots.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotsu.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vd4dotu.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dots.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotsu.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vd4dotu.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dots.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotsu.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vd4dotu.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dots.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotsu.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vd4dotu.c: New test. + +2025-09-07 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadb.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfpmadt.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadb.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfpmadt.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadb.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfpmadt.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadb.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfpmadt.c: New test. + * gcc.target/riscv/rvv/autovec/vls/J: New file. + +2025-09-07 H.J. Lu <hjl.tools@gmail.com> + + PR c++/107393 + * g++.dg/tls/pr107393-1.C: New test. + * g++.dg/tls/pr107393-2.C: Likewise. + +2025-09-07 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vnmsub.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-u8.c: New test. + +2025-09-07 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vnmsub.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsub-run-1-i8.c: New test. + +2025-09-06 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vln8.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vln8.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vln8.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vln8.c: New test. + +2025-09-06 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/rvv/rvv.exp: Add regression for xandesvector. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfncvtbf16s.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/non-overloaded/nds_vfwcvtsbf16.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfncvtbf16s.c: New test. + * gcc.target/riscv/rvv/xandesvector/non-policy/overloaded/nds_vfwcvtsbf16.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfncvtbf16s.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/non-overloaded/nds_vfwcvtsbf16.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfncvtbf16s.c: New test. + * gcc.target/riscv/rvv/xandesvector/policy/overloaded/nds_vfwcvtsbf16.c: New test. + +2025-09-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84119 + * gfortran.dg/pdt_20.f03: Modify to deal with scalar type parm. + +2025-09-06 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/108466 + * gcc.dg/uninit-pr108466-1.c: New test. + +2025-09-06 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/zbb-sext.c: Include stdint-gcc.h instead of + stdint.h. + +2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121702 + * g++.dg/modules/namespace-10_c.C: Add check for log dump. + * g++.dg/modules/namespace-13_a.C: New test. + * g++.dg/modules/namespace-13_b.C: New test. + * g++.dg/modules/namespace-13_c.C: New test. + +2025-09-06 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121705 + PR c++/117658 + * g++.dg/modules/default-arg-4_a.C: XFAIL bogus errors. + * g++.dg/modules/default-arg-4_b.C: Likewise. + * g++.dg/modules/default-arg-5_a.C: Remove duplicate test. + * g++.dg/modules/default-arg-5_b.C: Likewise. + * g++.dg/modules/adl-9_a.C: New test. + * g++.dg/modules/adl-9_b.C: New test. + * g++.dg/modules/gmf-5.C: New test. + +2025-09-05 Sam James <sam@gentoo.org> + + PR rtl-optimization/121757 + * g++.dg/pr121757.C: Add dg-require-effective-target for lto. + +2025-09-05 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121510 + * gcc.target/riscv/rvv/autovec/pr121510.c: New test. + +2025-09-05 Richard Sandiford <rdsandiford@googlemail.com> + + PR rtl-optimization/121757 + * g++.dg/pr121757.C: New test. + +2025-09-05 Georg-Johann Lay <avr@gjlay.de> + + PR testsuite/121695 + PR testsuite/52641 + * gcc.dg/torture/pr121695-1.c: int -> int32_t etc. + +2025-09-05 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/fixed-point/bitint-1.c: Expect also error about _Sat used + without _Fract/_Accum. + +2025-09-05 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/118567 + * gcc.target/powerpc/vsx-vectorize-9.c: New test. + * gcc.target/powerpc/vsx-vectorize-10.c: New test. + * gcc.target/powerpc/vsx-vectorize-11.c: New test. + * gcc.target/powerpc/vsx-vectorize-12.c: New test. + * gcc.target/powerpc/vsx-vectorize-13.c: New test. + * gcc.target/powerpc/vsx-vectorize-14.c: New test. + * gcc.target/powerpc/vsx-vectorize-15.c: New test. + * gcc.target/powerpc/vsx-vectorize-16.c: New test. + +2025-09-05 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/118567 + * gcc.target/powerpc/vsx-vectorize-1.c: Remove includes, checking + part of main1 and main. + * gcc.target/powerpc/vsx-vectorize-2.c: Remove includes, replace + bar definition with declaration, remove main. + * gcc.target/powerpc/vsx-vectorize-3.c: Likewise. + * gcc.target/powerpc/vsx-vectorize-4.c: Likewise. + * gcc.target/powerpc/vsx-vectorize-5.c: Likewise. + * gcc.target/powerpc/vsx-vectorize-6.c: Likewise. + * gcc.target/powerpc/vsx-vectorize-7.c: Likewise. + * gcc.target/powerpc/vsx-vectorize-8.c: Likewise. + +2025-09-05 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/sve/usminmax_di.c: New test. + +2025-09-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84432 + PR fortran/114815 + * gfortran.dg/pdt_26.f03: Update with default no initializer. + * gfortran.dg/pdt_27.f03: Change to test non-conforming + initializers. + +2025-09-05 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/83762 + PR fortran/102457 + * gfortran.dg/pdt_44.f03: New test. + * gfortran.dg/pr95090.f90: Give the PDT parameter a value to + suppress the type error. + +2025-09-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vmadd.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-u8.c: New test. + +2025-09-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmadd.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmadd-run-1-i8.c: New test. + +2025-09-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Adjust the + vmacc.vx to avoid generating vmadd. + +2025-09-04 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/121732 + PR target/117013 + * g++.target/aarch64/spaceship_1.C: Adjust expected fn bodies + for _Z8ss_floatff and _Z9ss_doubledd. + +2025-09-04 Richard Earnshaw <rearnsha@arm.com> + + PR target/121775 + * gcc.target/arm/simd/vset_lane_u8.c: New test. + +2025-09-04 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121742 + PR target/121780 + PR target/121781 + * gcc.target/riscv/rvv/autovec/pr121780.c: New test. + * gcc.target/riscv/rvv/autovec/pr121781.c: New test. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121768 + * gcc.dg/vect/pr121768.c: New testcase. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121685 + * g++.dg/vect/pr121685-1.cc: New testcase. + +2025-09-04 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/107051 + * gcc.dg/tree-ssa/copy-prop-aggregate-union-1.c: New test. + +2025-09-04 Kito Cheng <kito.cheng@sifive.com> + + PR target/110812 + * gcc.target/riscv/lto/pr110812_0.c: New test. + * gcc.target/riscv/lto/pr110812_1.c: New test. + * gcc.target/riscv/lto/riscv-lto.exp: New test driver. + * gcc.target/riscv/lto/riscv_vector.h: New header wrapper. + +2025-09-04 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/can_inline_p_test-01.c: New test. + * gcc.target/riscv/can_inline_p_test-02.c: New test. + * gcc.target/riscv/can_inline_p_test-03.c: New test. + * gcc.target/riscv/can_inline_p_test-04.c: New test. + * gcc.target/riscv/riscv_vector.h: New header wrapper for vector + tests. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/61247 + * gcc.dg/vect/vect-pr61247.c: New testcase. + +2025-09-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121740 + * gcc.dg/tree-ssa/ssa-fre-104.c: Un-XFAIL. + * gcc.dg/tree-ssa/ssa-fre-110.c: New testcase. + +2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117658 + * g++.dg/modules/adl-4_a.C: Test should pass. + * g++.dg/modules/adl-4_b.C: Test should pass. + * g++.dg/modules/adl-6_a.C: New test. + * g++.dg/modules/adl-6_b.C: New test. + * g++.dg/modules/adl-6_c.C: New test. + * g++.dg/modules/adl-7_a.C: New test. + * g++.dg/modules/adl-7_b.C: New test. + * g++.dg/modules/adl-7_c.C: New test. + * g++.dg/modules/adl-8_a.C: New test. + * g++.dg/modules/adl-8_b.C: New test. + * g++.dg/modules/adl-8_c.C: New test. + +2025-09-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121724 + * g++.dg/modules/namespace-12_a.C: New test. + * g++.dg/modules/namespace-12_b.C: New test. + +2025-09-04 Iain Sandoe <iain@sandoe.co.uk> + + PR testsuite/112728 + * gcc.dg/scantest-lto.c: Omit unwind frames. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/xandes/xandesbfhcvt-1.c: New test. + * gcc.target/riscv/xandes/xandesbfhcvt-2.c: New test. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/riscv.exp: Add runtest for subdir xandes. + * gcc.target/riscv/xandes/xandesperf-1.c: New test. + * gcc.target/riscv/xandes/xandesperf-10.c: New test. + * gcc.target/riscv/xandes/xandesperf-2.c: New test. + * gcc.target/riscv/xandes/xandesperf-3.c: New test. + * gcc.target/riscv/xandes/xandesperf-4.c: New test. + * gcc.target/riscv/xandes/xandesperf-5.c: New test. + * gcc.target/riscv/xandes/xandesperf-6.c: New test. + * gcc.target/riscv/xandes/xandesperf-7.c: New test. + * gcc.target/riscv/xandes/xandesperf-8.c: New test. + * gcc.target/riscv/xandes/xandesperf-9.c: New test. + * gcc.target/riscv/xandes/xandesperf-11.c: New file. + +2025-09-03 Kuan-Lin Chen <rufus@andestech.com> + + * gcc.target/riscv/xandes/xandes-predef-1.c: New test. + * gcc.target/riscv/xandes/xandes-predef-2.c: New test. + * gcc.target/riscv/xandes/xandes-predef-3.c: New test. + * gcc.target/riscv/xandes/xandes-predef-4.c: New test. + * gcc.target/riscv/xandes/xandes-predef-5.c: New test. + * gcc.target/riscv/xandes/xandes-predef-6.c: New test. + Co-author: Lino Hsing-Yu Peng (linopeng@andestech.com) + Co-author: Kai Kai-Yi Weng (kaiweng@andestech.com). + +2025-09-03 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vls/floating-point-max-2.c: Adjust scan + dump. + * gcc.target/riscv/rvv/autovec/vls/floating-point-max-4.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmax. Also add + missing scan-dump for vfmul. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Add vfmax. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add max functions. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + vfmax. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmax-run-1-f64.c: New test. + +2025-09-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121263 + * gfortran.dg/transfer_class_5.f90: New test. + +2025-09-03 Austin Law <austinklaw@gmail.com> + + PR target/121213 + * gcc.target/riscv/amo/pr121213.c: Remove xfail. + +2025-09-03 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR target/121749 + * gcc.target/aarch64/simd/pr121749.c: Use dg-assemble directive. + +2025-09-03 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR target/121749 + * gcc.target/aarch64/simd/pr121749.c: New test. + +2025-09-03 Patrick Palka <ppalka@redhat.com> + + PR c++/97740 + * g++.dg/cpp0x/constexpr-97740a.C: New test. + * g++.dg/cpp0x/constexpr-97740b.C: New test. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121756 + * gcc.dg/torture/pr121756.c: New testcase. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121767 + * gcc.dg/vect/pr121767.c: New testcase. + +2025-09-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121758 + * gcc.dg/vect/pr121758.c: New testcase. + +2025-09-03 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121355 + * gcc.dg/tree-ssa/ptrdiff-1.c: New test. + +2025-09-02 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/89707 + * gfortran.dg/pdt_43.f03: New test. + +2025-09-02 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87669 + * gfortran.dg/pdt_42.f03: New test. + +2025-09-02 Richard Earnshaw <rearnsha@arm.com> + + * gcc.dg/asm-hard-reg-4.c: On Arm, unset the CPU before + setting the arch. + * gcc.dg/asm-hard-reg-error-3.c: Similarly. Also add + floating-point instructions to aid hard-float variants. + Match on arm* not just arm. + +2025-09-02 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121742 + * gcc.target/riscv/rvv/autovec/pr121742.c: New test. + +2025-09-02 Jakub Jelinek <jakub@redhat.com> + + * gcc.target/s390/spaceship-fp-1.c: Expect .SPACESHIP call with + -128 as last argument instead of 2. + (TEST): Use -128 instead of 2. + * gcc.target/s390/spaceship-fp-2.c: Expect .SPACESHIP call with + -128 as last argument instead of 2. + (TEST): Use -128 instead of 2. + +2025-09-02 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/zbb-sext.c: New test. + +2025-09-02 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/zba-shadd.c: New test functions. + +2025-09-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/memset-strategy-10.c (dg-options): Add + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. + * gcc.target/i386/memset-strategy-13.c: Likewise. + +2025-09-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121754 + * gcc.dg/vect/pr121754.c: New testcase. + * gcc.target/aarch64/vect-pr121754.c: Likewise. + +2025-09-02 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121663 + * gcc.dg/pr121663.c: New test. + +2025-09-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.dg/tree-ssa/cswtch-6.c (dg-final): xfail on + sparc*-*-solaris2* && !gas. + * gcc.dg/tree-ssa/cswtch-7.c: Likewise. + +2025-09-02 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * g++.dg/tree-ssa/vector-compare-1.C: Restrict to + non_strict_align targets. + +2025-09-01 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/cpp/c2y-counter-1.c: New test. + +2025-09-01 Jakub Jelinek <jakub@redhat.com> + + * gcc.c-torture/execute/builtins/lib/abs.c (uimaxabs): Rename to ... + (umaxabs): ... this. + * gcc.c-torture/execute/builtins/uabs-2.c (uimaxabs): Rename to ... + (umaxabs): ... this. + (main_test): Use umaxabs instead of uimaxabs. + * gcc.c-torture/execute/builtins/uabs-3.c (main_test): Use umaxabs + instead of uimaxabs. + +2025-09-01 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121727 + * gfortran.dg/value_10.f90: New test. + +2025-09-01 Yoshinori Sato <yoshinori.sato@nifty.com> + + PR target/89828 + * gcc.dg/pr89828.c: New. + +2025-09-01 Andi Kleen <ak@gcc.gnu.org> + + * gcc.target/i386/shift-gf2p8affine-1.c: Use -march=x86-64 + -mtune-generic. + * gcc.target/i386/shift-gf2p8affine-2.c: Dito. + * gcc.target/i386/shift-gf2p8affine-3.c: Dito. + * gcc.target/i386/shift-gf2p8affine-5.c: Dito. + * gcc.target/i386/shift-gf2p8affine-6.c: Dito. + * gcc.target/i386/shift-gf2p8affine-7.c: Dito. + +2025-09-01 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp + (check_effective_target_arm_v8_neon_ok_nocache): Add "-mcpu=unset + -march=armv8-a" to et_arm_v8_neon_flags. + (add_options_for_vect_early_break): Remove useless "-mcpu=unset + -march=armv8-a". + (add_options_for_arm_v8_neon): Likewise. + +2025-09-01 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp + (check_effective_target_arm_neon_ok_nocache): Remove arm32 check. + Add istarget arm*-*-* check. + (check_effective_target_arm_neon_fp16_ok_nocache): Likewise. + (check_effective_target_arm_neon_softfp_fp16_ok_nocache): Likewise. + (check_effective_target_arm_v8_neon_ok_nocache): Likewise. + (check_effective_target_arm_neonv2_ok_nocache): Likewise. + (check_effective_target_vect_pack_trunc): Remove istarget arm*-*-* + check. + (check_effective_target_vect_unpack): Likewise. + (check_effective_target_vect_condition): Likewise. + (check_effective_target_vect_cond_mixed): Likewise. + (available_vector_sizes): Likewise. + +2025-09-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121744 + * gcc.dg/vect/pr121744-1.c: New testcase. + +2025-09-01 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr121699.c: New test. + +2025-08-31 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/99709 + * gfortran.dg/pdt_41.f03: New test. + +2025-08-31 Shreya Munnangi <smunnangi1@ventanamicro.com> + + * gcc.target/riscv/add-synthesis-2.c: New test. + +2025-08-31 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u16-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u32-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-5-u8-from-u64.rv64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-5-u8-from-u64.c: New test. + +2025-08-30 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121698 + * gcc.dg/pr94589-2.c: Adjust for expected unordered value -128 + rather than 2 and negations in unsigned char instead of and with + ~1 and comparison against original value. + * gcc.dg/pr94589-4.c: Likewise. + * gcc.dg/pr94589-5.c: Likewise. + * gcc.dg/pr94589-6.c: Likewise. + +2025-08-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/121725 + * gcc.target/i386/pr121725-1a.c: New test. + * gcc.target/i386/pr121725-1b.c: Likewise. + +2025-08-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/116651 + PR tree-optimization/93265 + PR tree-optimization/103647 + PR tree-optimization/52171 + * gcc.target/i386/pr44130.c: Add an inline-asm clobber. + * g++.dg/tree-ssa/vector-compare-1.C: New test. + +2025-08-30 liuhongt <hongtao.liu@intel.com> + + Revert: + 2025-08-30 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr120691.c: New test. + +2025-08-29 Sirui Mu <msrlancern@gmail.com> + + * g++.dg/cpp1z/array-condition-expr.C: New test. + +2025-08-29 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/bswap-SSAI8.c: New. + +2025-08-29 Harald Anlauf <anlauf@gmx.de> + + PR fortran/93330 + * gfortran.dg/argument_checking_15.f90: Adjust dg-pattern. + * gfortran.dg/bounds_check_strlen_7.f90: Add dg-pattern. + * gfortran.dg/char_length_3.f90: Adjust options. + * gfortran.dg/whole_file_24.f90: Add dg-pattern. + * gfortran.dg/whole_file_29.f90: Likewise. + * gfortran.dg/argument_checking_27.f90: New test. + +2025-08-29 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Add vfmin. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-5-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-6-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-7-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-8-f64.c: New test. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121096 + * gcc.target/i386/memcpy-strategy-14.c: New test. + * gcc.target/i386/memcpy-strategy-15.c: Likewise. + * gcc.target/i386/memset-strategy-10.c: Likewise. + * gcc.target/i386/memset-strategy-11.c: Likewise. + * gcc.target/i386/memset-strategy-12.c: Likewise. + * gcc.target/i386/memset-strategy-13.c: Likewise. + * gcc.target/i386/memset-strategy-14.c: Likewise. + * gcc.target/i386/memset-strategy-15.c: Likewise. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121108 + * gcc.target/i386/memset-strategy-16.c: New test. + +2025-08-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121694 + * gcc.target/i386/pr121668-1b.c: New test. + * gcc.target/i386/pr121694-1a.c: Likewise. + * gcc.target/i386/pr121694-1b.c: Likewise. + +2025-08-29 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp26/decomp26.C: Add -fimplicit-constexpr. + +2025-08-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR testsuite/120643 + * gcc.target/i386/vect-pragma-target-1.c: Add `-mno-sse3 -mtune=generic` + to the options. + * gcc.target/i386/vect-pragma-target-2.c: Likewise. + +2025-08-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR testsuite/121713 + * gcc.target/aarch64/vld2-1.c: Update the number of "after previous" + checks. + +2025-08-29 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vnmsac.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-u8.c: New test. + +2025-08-29 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vnmsac.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vnmsac-run-1-i8.c: New test. + +2025-08-29 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr120691.c: New test. + +2025-08-28 Jason Merrill <jason@redhat.com> + + PR c++/107953 + * g++.dg/cpp2a/lambda-targ18.C: New test. + +2025-08-28 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vls/floating-point-min-2.c: Adjust scan + dump. + * gcc.target/riscv/rvv/autovec/vls/floating-point-min-4.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmin. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for + function variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + vfmin. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmin-run-1-f64.c: New test. + +2025-08-28 Wilco Dijkstra <wilco.dijkstra@arm.com> + + PR middle-end/66462 + * gcc.target/aarch64/pr66462.c: Add new test. + +2025-08-28 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119844 + * g++.dg/modules/pr119844_a.C: New test. + * g++.dg/modules/pr119844_b.C: New test. + * g++.dg/template/incomplete13.C: New file. + +2025-08-28 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121629 + * gm2/switches/pathnameroot/pass/switches-pathnameroot-pass.exp: New test. + * gm2/switches/pathnameroot/pass/test.mod: New test. + * gm2/switches/pathnameroot/pass/testlib/m2/foo.def: New test. + * gm2/switches/pathnameroot/pass/testlib/m2/foo.mod: New test. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/121583 + * g++.dg/cpp26/expansion-stmt23.C: New test. + * g++.dg/cpp26/expansion-stmt24.C: New test. + +2025-08-28 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c++/121575 + * g++.dg/cpp26/expansion-stmt20.C: New test. + +2025-08-28 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/82843 + * gfortran.dg/pdt_40.f03: New test. + +2025-08-28 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/82205 + * gfortran.dg/pdt_22.f03: Use the correct for PDT constructors. + * gfortran.dg/pdt_23.f03: Likewise. + * gfortran.dg/pdt_3.f03: Likewise. + +2025-08-27 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/nozicond-2.c: Remove xfails. + +2025-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/114611 + * gfortran.dg/aliasing_dummy_1.f90: Accommodate errors + and warnings as needed. + * gfortran.dg/eoshift_8.f90: Likewise. + * gfortran.dg/g77/f77-edit-h-out.f: Likewise. + * gfortran.dg/hollerith_1.f90: Likewise. + * gfortran.dg/io_constraints_1.f90: Likewise. + * gfortran.dg/io_constraints_2.f90: Likewise. + * gfortran.dg/longline.f: Likewise. + * gfortran.dg/pr20086.f90: Likewise. + * gfortran.dg/unused_artificial_dummies_1.f90: Likewise. + * gfortran.dg/x_slash_1.f: Likewise. + +2025-08-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121695 + * gcc.dg/torture/pr121695-1.c: New test. + +2025-08-27 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f64.c: Fix type. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f32.c: Remove + useless dg directives. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f64.c: Likewise. + +2025-08-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121686 + * gcc.dg/vect/pr121686.c: New testcase. + +2025-08-27 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR testsuite/121684 + * c-c++-common/hwasan/unprotected-allocas-0.c: Mark + using_vararray and using_alloca as noclone too. + +2025-08-27 H.J. Lu <hjl.tools@gmail.com> + + PR target/121668 + * gcc.target/i386/pr121668-1a.c: New test. + +2025-08-27 H.J. Lu <hjl.tools@gmail.com> + + PR tree-optimization/121656 + * gcc.dg/pr121656.c: Moved to ... + * gcc.dg/torture/pr121656.c: Here. + (dg-options): Removed. + (foo): Replace weak attribute with noipa attribute. + +2025-08-27 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/mcpu-xt-c908v.c: Drop xtheadvdot. + * gcc.target/riscv/mcpu-xt-c920v2.c: Drop xtheadvdot. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118839 + * gcc.dg/gomp/declare-variant-3.c: New. + * gfortran.dg/gomp/declare-variant-22.f90: New. + +2025-08-26 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/append-args-1.c: Adjust expected output. + * g++.dg/gomp/adjust-args-1.C: Likewise. + * g++.dg/gomp/adjust-args-3.C: Likewise. + * gcc.dg/gomp/adjust-args-1.c: Likewise: + * gcc.dg/gomp/append-args-1.c: Likewise. + * gcc.dg/gomp/unprototyped-variant.c: New. + * gfortran.dg/gomp/adjust-args-1.f90: Adjust expected output. + * gfortran.dg/gomp/append_args-1.f90: Likewise. + +2025-08-26 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/arch-25.c: Use wildcards to simplify/eliminate + dg-error directives. + * gcc.target/riscv/arch-ss-2.c: Similarly. + * gcc.target/riscv/arch-zilsd-2.c: Similarly. + * gcc.target/riscv/arch-zilsd-3.c: Similarly. + +2025-08-26 David Faust <david.faust@oracle.com> + + PR debug/121411 + * gcc.dg/debug/ctf/ctf-array-7.c: Restrict to lp64,llp64 + targets. + +2025-08-26 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/unsigned-extend-2.c: Disable sched2 and sched3 + and update function body to match. + +2025-08-26 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/vect_unroll-1.c: New test. + * gcc.target/i386/vect_unroll-2.c: New test. + * gcc.target/i386/vect_unroll-3.c: New test. + * gcc.target/i386/vect_unroll-4.c: New test. + * gcc.target/i386/vect_unroll-5.c: New test. + * gcc.target/i386/vect_unroll-6.c: New file. + +2025-08-26 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfrdiv. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: Add support for reverse + variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: Add data for + reverse variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfrdiv-run-1-f64.c: New test. + +2025-08-26 Tamar Christina <tamar.christina@arm.com> + + PR target/121290 + * gcc.target/aarch64/pr121290.c: New test. + +2025-08-26 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmul. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_data.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_binop_run.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmul-run-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vls/floating-point-mul-2.c: Adjust scan + dump. + * gcc.target/riscv/rvv/autovec/vls/floating-point-mul-3.c: Likewise. + +2025-08-26 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/bics_3.c: Add some additional tests that + cannot be folded to a bit manipulation. + +2025-08-26 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121659 + * gcc.dg/vect/pr121659.c: New testcase. + +2025-08-26 Jakub Jelinek <jakub@redhat.com> + + PR target/121658 + * gcc.target/i386/pr121658.c: New test. + +2025-08-26 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-u8.c: New test. + +2025-08-26 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_data.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_ternary_run.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmacc-run-1-i8.c: New test. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121453 + * gcc.dg/gomp/pr121453.c: New test. + +2025-08-25 H.J. Lu <hjl.tools@gmail.com> + + PR tree-optimization/121656 + * gcc.dg/pr121656.c: New file. + +2025-08-25 David Faust <david.faust@oracle.com> + + PR debug/121411 + * gcc.dg/debug/ctf/ctf-array-7.c: New test. + +2025-08-25 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR tree-optimization/121279 + * gcc.dg/torture/pr121279-1.c: New test. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp26/expansion-stmt15.C: Don't expect error on + destructuring expansion stmts with structured binding size 0. + * g++.dg/cpp26/expansion-stmt21.C: New test. + * g++.dg/cpp26/expansion-stmt22.C: New test. + +2025-08-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/121601 + * g++.dg/cpp26/constexpr-eh16.C: New test. + +2025-08-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121638 + * gcc.dg/vect/pr121638.c: New testcase. + +2025-08-25 Andi Kleen <ak@gcc.gnu.org> + + * gcc.target/i386/shift-gf2p8affine-1.c: New test + * gcc.target/i386/shift-gf2p8affine-2.c: New test + * gcc.target/i386/shift-gf2p8affine-3.c: New test + * gcc.target/i386/shift-v16qi-4.c: New test + * gcc.target/i386/shift-gf2p8affine-5.c: New test + * gcc.target/i386/shift-gf2p8affine-6.c: New test + * gcc.target/i386/shift-gf2p8affine-7.c: New test + +2025-08-25 Xi Ruoyao <xry111@xry111.site> + + PR target/121634 + * gcc.target/loongarch/pr121634.c: New test. + +2025-08-25 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/arm/bics_3.c: Adjust expected output + +2025-08-23 Eczbek <eczbek.void@gmail.com> + + PR c++/116928 + * g++.dg/parse/template33.C: New test. + +2025-08-23 H.J. Lu <hjl.tools@gmail.com> + + PR target/120933 + * gcc.target/i386/noplt-gd-1.c (dg-options): Add + -mtls-dialect=gnu. + * gcc.target/i386/noplt-ld-1.c (dg-options): Likewise. + +2025-08-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120499 + * g++.dg/modules/imp-member-4_a.C: New test. + * g++.dg/modules/imp-member-4_b.C: New test. + * g++.dg/modules/imp-member-4_c.C: New test. + +2025-08-22 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120553 + * gcc.target/riscv/pr120553-1.c: New test. + * gcc.target/riscv/pr120553-2.c: New test. + * gcc.target/riscv/pr120553-3.c: New test. + * gcc.target/riscv/pr120553-4.c: New test. + * gcc.target/riscv/pr120553-5.c: New test. + * gcc.target/riscv/pr120553-6.c: New test. + * gcc.target/riscv/pr120553-7.c: New test. + * gcc.target/riscv/pr120553-8.c: New test. + +2025-08-22 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u16-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u32-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-4-u8-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u16-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u32-from-u64.rv32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-4-u8-from-u64.rv32.c: New test. + +2025-08-22 H.J. Lu <hjl.tools@gmail.com> + + PR target/121635 + * gcc.target/i386/pr121635-1a.c: New test. + * gcc.target/i386/pr121635-1b.c: Likewise. + +2025-08-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/abi/mangle83.C: Disable implicit enum test for + -fshort-enums. + +2025-08-22 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + * lib/target-supports.exp (arm arches): Add arm_arch_v7. + * g++.target/arm/pr120424.C: Require armv7 support. Use + dg-add-options arm_arch_v7 instead of explicit -march=armv7. + +2025-08-21 Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/121627 + * gfortran.dg/pr121627.f90: New test. + +2025-08-21 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR c/121478 + * gcc.dg/torture/pr121478-1.c: New test. + +2025-08-21 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * g++.dg/cpp2a/constexpr-dtor18.C: New test. + +2025-08-21 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: Call + check_effective_target_riscv_zvfh_ok rather than + check_effective_target_riscv_zvfh. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: Likewise. + * lib/target-supports.exp (check_effective_target_riscv_zvfh_ok): Append + zvfh instead of v to march. + (remove_options_for_riscv_zvfh): Remove duplicate and + call remove_ rather than add_options_for_riscv_z_ext. + +2025-08-21 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/121619 + * gcc.dg/pr121619.c: New test. + +2025-08-21 H.J. Lu <hjl.tools@gmail.com> + + PR target/121607 + * gcc.target/i386/pr121607-1a.c: New test. + * gcc.target/i386/pr121607-1b.c: Likewise. + +2025-08-21 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/84122 + PR fortran/85942 + * gfortran.dg/pdt_38.f03: New test. + * gfortran.dg/pdt_39.f03: New test. + +2025-08-21 Jason Merrill <jason@redhat.com> + + PR c++/120757 + * g++.dg/cpp1y/auto-fn66.C: New test. + +2025-08-20 Marek Polacek <polacek@redhat.com> + + PR c++/121553 + * g++.dg/warn/Wshadow-19.C: Revert P2036 changes. + * g++.dg/warn/Wshadow-6.C: Likewise. + * g++.dg/warn/Wshadow-20.C: New test. + * g++.dg/warn/Wshadow-21.C: New test. + +2025-08-20 Qing Zhao <qing.zhao@oracle.com> + + PR tree-optimization/109071 + PR tree-optimization/85788 + PR tree-optimization/88771 + PR tree-optimization/106762 + PR tree-optimization/108770 + PR tree-optimization/115274 + PR tree-optimization/117179 + * gcc.dg/pr109071.c: New test. + * gcc.dg/pr109071_1.c: New test. + * gcc.dg/pr109071_10.c: New test. + * gcc.dg/pr109071_11.c: New test. + * gcc.dg/pr109071_12.c: New test. + * gcc.dg/pr109071_2.c: New test. + * gcc.dg/pr109071_3.c: New test. + * gcc.dg/pr109071_4.c: New test. + * gcc.dg/pr109071_5.c: New test. + * gcc.dg/pr109071_6.c: New test. + * gcc.dg/pr109071_7.c: New test. + * gcc.dg/pr109071_8.c: New test. + * gcc.dg/pr109071_9.c: New test. + * gcc.dg/pr117375.c: New test. + +2025-08-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/121572 + * gcc.target/i386/pr121572-1a.c: New test. + * gcc.target/i386/pr121572-1b.c: Likewise. + * gcc.target/i386/pr121572-2a.c: Likewise. + * gcc.target/i386/pr121572-2b.c: Likewise. + +2025-08-19 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp26/expansion-stmt16.C: Add -fno-implicit-constexpr. + +2025-08-19 Ben Wu <soggysocks206@gmail.com> + + PR c++/120618 + * g++.dg/cpp2a/concepts-requires5.C: Don't require + redundant diagnostic in static assertion. + * g++.dg/concepts/pr120618.C: New test. + +2025-08-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + PR middle-end/120024 + * gcc.dg/torture/malloc-1.c: New test. + * gcc.dg/torture/malloc-2.c: New test. + +2025-08-19 Patrick Palka <ppalka@redhat.com> + + PR c++/121351 + * g++.dg/cpp2a/concepts-using7.C: New test. + +2025-08-19 Tamar Christina <tamar.christina@arm.com> + + PR target/121536 + * g++.target/aarch64/sve/pr121536.cc: New test. + +2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121578 + * g++.dg/abi/mangle83.C: Requires C++17. + +2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120195 + * g++.dg/modules/using-32_a.C: New test. + * g++.dg/modules/using-32_b.C: New test. + +2025-08-19 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/108080 + PR c++/121396 + * g++.dg/modules/pr108080.H: Also allow target warnings. + +2025-08-17 Austin Law <austinklaw@gmail.com> + + PR target/121213 + * gcc.target/riscv/amo/pr121213.c: New test. + +2025-08-17 dragan.mladjenovic <dragan.mladjenovic@rt-rk.com> + + * gcc.target/mips/tls-1.c: New file. + +2025-08-17 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.target/mips/call-clobbered-1.c: Use HAS_LDC ghost + option instead of isa>=2. + +2025-08-17 Andrew Bennett <andrew.bennett@imgtec.com> + + * gcc.target/mips/near-far-1.c: Fix tests properly for + compact-branches (jals and balc). + * gcc.target/mips/near-far-2.c: Likewise. + * gcc.target/mips/near-far-3.c: Likewise. + * gcc.target/mips/near-far-4.c: Likewise. + +2025-08-17 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/mips/call-clobbered-2.c: Add a NOMIPS16 attribute. + * gcc.target/mips/call-clobbered-3.c: Likewise. + * gcc.target/mips/call-clobbered-5.c: Likewise. + * gcc.target/mips/ds-schedule-2.c: Add an -mno-mips16 option. + * gcc.target/mips/interrupt_handler-bug-1.c: Same as + call-clobbered-*.c tests. + * gcc.target/mips/movdf-1.c: Likewise. + * gcc.target/mips/movdf-2.c: Likewise. + * gcc.target/mips/movdf-3.c: Likewise. + * gcc.target/mips/msa-builtins.c: Same as ds-schedule-2.c. + Remove a NOMIPS16 attribute from builtins. + * gcc.target/mips/msa.c: Likewise. + +2025-08-17 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.target/mips/insn-casesi.c: Require mips16 support but + not the command line option. + * gcc.target/mips/insn-tablejump.c: Force o32 ABI as + we do not really support n32/n64 microMIPS. Require micromips + support but not the command line option. + +2025-08-17 H.J. Lu <hjl.tools@gmail.com> + + PR target/121541 + * gcc.target/i386/pr121541-1a.c: New test. + * gcc.target/i386/pr121541-1b.c: Likewise. + * gcc.target/i386/pr121541-2.c: Likewise. + * gcc.target/i386/pr121541-3.c: Likewise. + * gcc.target/i386/pr121541-4.c: Likewise. + * gcc.target/i386/pr121541-5a.c: Likewise. + * gcc.target/i386/pr121541-5b.c: Likewise. + +2025-08-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120503 + PR c++/120824 + * g++.dg/abi/mangle32.C: Remove enumerator list. + * g++.dg/cpp0x/linkage2.C: Likewise. + * g++.dg/ext/vector26.C: Likewise. + * g++.dg/other/anon3.C: Likewise. + * g++.dg/abi/mangle83.C: New test. + * g++.dg/modules/enum-15_a.C: New test. + * g++.dg/modules/enum-15_b.C: New test. + +2025-08-16 H.J. Lu <hjl.tools@gmail.com> + + PR fortran/107421 + * gfortran.dg/gomp/pr107421.f90: New test. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp26/expansion-stmt15.C: Expect different diagnostics + for zero size destructuring expansion statement. + * g++.dg/ext/builtin-structured-binding-size1.C: New test. + * g++.dg/ext/builtin-structured-binding-size2.C: New test. + * g++.dg/ext/builtin-structured-binding-size3.C: New test. + * g++.dg/ext/builtin-structured-binding-size4.C: New test. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121552 + * g++.dg/parse/defarg21.C: New test. + * g++.dg/template/defarg24.C: New test. + * g++.dg/modules/default-arg-4_a.C: New test. + * g++.dg/modules/default-arg-4_b.C: New test. + * g++.dg/modules/default-arg-5_a.C: New test. + * g++.dg/modules/default-arg-5_b.C: New test. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121552 + * g++.dg/cpp2a/typedef1.C: New test. + * g++.dg/debug/dwarf2/typedef5.C: Add -Wno-non-c-typedef-for-linkage + to dg-options. + * g++.dg/inherit/typeinfo1.C: Add -Wno-non-c-typedef-for-linkage + to dg-additional-options. + * g++.dg/parse/ctor2.C: Likewise. + * g++.dg/ext/anon-struct9.C: Add -Wno-non-c-typedef-for-linkage to + dg-options. + * g++.dg/ext/visibility/anon11.C: Add -Wno-non-c-typedef-for-linkage + to dg-additional-options. + * g++.dg/lto/pr69137_0.C: Add -Wno-non-c-typedef-for-linkage + to dg-lto-options. + * g++.dg/other/anon8.C: Add -Wno-non-c-typedef-for-linkage + to dg-additional-options. + * g++.dg/template/pr84973.C: Likewise. + * g++.dg/template/pr84973-2.C: Likewise. + * g++.dg/template/pr84973-3.C: Likewise. + * g++.dg/abi/anon2.C: Likewise. + * g++.dg/abi/anon3.C: Likewise. + * g++.old-deja/g++.oliva/linkage1.C: Likewise. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/121539 + * g++.dg/parse/defarg20.C: New test. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + PR target/121520 + * g++.dg/DRs/dr2581-1.C: New test. + * g++.dg/DRs/dr2581-2.C: New test. + * c-c++-common/cpp/pr92296-2.c: Expect warnings also on defining + special macros after undefining them. + +2025-08-15 Vineet Gupta <vineetg@rivosinc.com> + + PR target/121534 + * gcc.target/riscv/rvv/autovec/vls/math-nearbyint-1.c: Adjust + scan pattern for additional instances of frflags/fsrflags. + +2025-08-15 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/flex-array-counted-by-2.c: Adjust testing case. + +2025-08-15 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. + +2025-08-15 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/pointer-counted-by-4-char.c: New test. + * gcc.dg/pointer-counted-by-4-float.c: New test. + * gcc.dg/pointer-counted-by-4-struct.c: New test. + * gcc.dg/pointer-counted-by-4-union.c: New test. + * gcc.dg/pointer-counted-by-4.c: New test. + * gcc.dg/pointer-counted-by-5.c: New test. + * gcc.dg/pointer-counted-by-6.c: New test. + * gcc.dg/pointer-counted-by-7.c: New test. + * gcc.dg/pr120929.c: New test. + +2025-08-15 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/flex-array-counted-by.c: Update test. + * gcc.dg/pointer-counted-by-1.c: New test. + * gcc.dg/pointer-counted-by-2.c: New test. + * gcc.dg/pointer-counted-by-3.c: New test. + * gcc.dg/pointer-counted-by-8.c: New test. + * gcc.dg/pointer-counted-by-9.c: New test. + * gcc.dg/pointer-counted-by.c: New test. + +2025-08-15 Umesh Kalappa <ukalappa.mips@gmail.com> + + * gcc.target/riscv/mipsprefetch.c: Test file for mips.pref. + +2025-08-15 Richard Sandiford <richard.sandiford@arm.com> + + PR target/119156 + * gcc.target/aarch64/sve/pr119156_1.c: New test. + +2025-08-15 Lulu Cheng <chenglulu@loongson.cn> + + PR target/121542 + * gcc.target/loongarch/pr121542.c: New test. + +2025-08-14 Jakub Jelinek <jakub@redhat.com> + + PR c++/121524 + * g++.dg/cpp0x/gen-attrs-89.C: New test. + +2025-08-14 Jeff Law <jlaw@ventanamicro.com> + + PR target/119275 + * gcc.target/riscv/pr119275.c: New test. + +2025-08-14 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.dg/tree-ssa/copy-prop-aggregate-arg-1.c: New test. + +2025-08-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vlgv-zero-extend-1.c: Require target + s390_mvx. + * gcc.target/s390/vector/vlgv-zero-extend-2.c: New test. + +2025-08-14 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/121511 + * gcc.dg/asm-hard-reg-error-3.c: Add additional option -marm for + target arm. + +2025-08-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/121540 + * gcc.target/i386/no-callee-saved-19a.c (dg-options): Add + "-mno-avx -mno-mmx -mno-80387" + * gcc.target/i386/no-callee-saved-19b.c: Likewise. + * gcc.target/i386/no-callee-saved-19c.c: Likewise. + * gcc.target/i386/no-callee-saved-19d.c: Likewise. + * gcc.target/i386/no-callee-saved-19e.c: Likewise. + * gcc.target/i386/pr121208-1a.c: Likewise. + * gcc.target/i386/pr121208-1b.c: Likewise. + * gcc.target/i386/pr121540-1.c: New test. + * gcc.target/i386/pr121540-2.c: Likewise. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121531 + * gcc.target/riscv/pr121531.c: New test. + +2025-08-13 Marek Polacek <polacek@redhat.com> + + PR c++/102610 + * g++.dg/cpp0x/lambda/lambda-decltype3.C: Remove xfail. + * g++.dg/warn/Wshadow-19.C: Add -Wpedantic. Adjust a dg-warning. + * g++.dg/warn/Wshadow-6.C: Adjust expected diagnostics. + * g++.dg/cpp23/lambda-scope1.C: New test. + * g++.dg/cpp23/lambda-scope2.C: New test. + * g++.dg/cpp23/lambda-scope3.C: New test. + * g++.dg/cpp23/lambda-scope4.C: New test. + * g++.dg/cpp23/lambda-scope4b.C: New test. + * g++.dg/cpp23/lambda-scope5.C: New test. + * g++.dg/cpp23/lambda-scope6.C: New test. + * g++.dg/cpp23/lambda-scope7.C: New test. + * g++.dg/cpp23/lambda-scope8.C: New test. + * g++.dg/cpp23/lambda-scope9.C: New test. + +2025-08-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/120776 + * g++.dg/cpp1z/decomp64.C: New test. + * g++.dg/cpp26/expansion-stmt1.C: New test. + * g++.dg/cpp26/expansion-stmt2.C: New test. + * g++.dg/cpp26/expansion-stmt3.C: New test. + * g++.dg/cpp26/expansion-stmt4.C: New test. + * g++.dg/cpp26/expansion-stmt5.C: New test. + * g++.dg/cpp26/expansion-stmt6.C: New test. + * g++.dg/cpp26/expansion-stmt7.C: New test. + * g++.dg/cpp26/expansion-stmt8.C: New test. + * g++.dg/cpp26/expansion-stmt9.C: New test. + * g++.dg/cpp26/expansion-stmt10.C: New test. + * g++.dg/cpp26/expansion-stmt11.C: New test. + * g++.dg/cpp26/expansion-stmt12.C: New test. + * g++.dg/cpp26/expansion-stmt13.C: New test. + * g++.dg/cpp26/expansion-stmt14.C: New test. + * g++.dg/cpp26/expansion-stmt15.C: New test. + * g++.dg/cpp26/expansion-stmt16.C: New test. + * g++.dg/cpp26/expansion-stmt17.C: New test. + * g++.dg/cpp26/expansion-stmt18.C: New test. + * g++.dg/cpp26/expansion-stmt19.C: New test. + * g++.dg/cpp26/feat-cxx26.C: Add __cpp_expansion_statements + tests. + +2025-08-13 H.J. Lu <hjl.tools@gmail.com> + + PR target/81501 + * g++.target/i386/pr81501-1.C: New test. + * gcc.target/i386/pr81501-1a.c: Likewise. + * gcc.target/i386/pr81501-1b.c: Likewise. + * gcc.target/i386/pr81501-2a.c: Likewise. + * gcc.target/i386/pr81501-2b.c: Likewise. + * gcc.target/i386/pr81501-3.c: Likewise. + * gcc.target/i386/pr81501-4a.c: Likewise. + * gcc.target/i386/pr81501-4b.c: Likewise. + * gcc.target/i386/pr81501-5.c: Likewise. + * gcc.target/i386/pr81501-6a.c: Likewise. + * gcc.target/i386/pr81501-6b.c: Likewise. + * gcc.target/i386/pr81501-7.c: Likewise. + * gcc.target/i386/pr81501-8a.c: Likewise. + * gcc.target/i386/pr81501-8b.c: Likewise. + * gcc.target/i386/pr81501-9a.c: Likewise. + * gcc.target/i386/pr81501-9b.c: Likewise. + * gcc.target/i386/pr81501-10a.c: Likewise. + * gcc.target/i386/pr81501-10b.c: Likewise. + +2025-08-13 Iain Sandoe <iain@sandoe.co.uk> + + * gcc.dg/torture/darwin-cfstring-3.c: Adjust for amended + string labels. + * g++.dg/torture/darwin-cfstring-3.C: Likewise. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121160 + * gcc.target/riscv/pr121160.c: New test. + +2025-08-13 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/89092 + * gfortran.dg/pr89092.f90: New test. + +2025-08-13 Yang Yujie <yangyujie@loongson.cn> + + PR target/117599 + * gcc.target/loongarch/bitint-alignments.c: New test. + * gcc.target/loongarch/bitint-args.c: New test. + * gcc.target/loongarch/bitint-sizes.c: New test. + +2025-08-13 Jeff Law <jlaw@ventanamicro.com> + + PR target/121113 + * gcc.target/riscv/pr121113.c: New test. + +2025-08-13 David Malcolm <dmalcolm@redhat.com> + + PR testsuite/119783 + jit.dg/test-error-impossible-must-tail-call.c + * jit.dg/test-error-impossible-must-tail-call.c (verify_code): + Check that we get a suitable-looking error message, but don't + try to specify exactly what the message is. + +2025-08-13 H.J. Lu <hjl.tools@gmail.com> + Liu, Hongtao <hongtao.liu@intel.com> + + PR target/121497 + * gcc.target/i386/pr121497.c: New test. + +2025-08-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-2-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-merge-3-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmerge-run-1-i8.c: New test. + +2025-08-12 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/121334 + * gcc.target/riscv/rvv/autovec/pr121334.c: New test. + +2025-08-12 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/121253 + * gcc.target/aarch64/pr121253.c: New test. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121509 + * gcc.dg/vect/pr121509.c: New testcase. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121514 + * gcc.dg/torture/pr121514.c: New testcase. + +2025-08-12 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121493 + * gcc.dg/tree-ssa/ssa-fre-109.c: New testcase. + +2025-08-12 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/c_f_pointer_shape_tests_7.f90: New test. + * gfortran.dg/c_f_pointer_shape_tests_8.f90: New test. + * gfortran.dg/c_f_pointer_shape_tests_9.f90: New test. + +2025-08-12 Shreya Munnangi <smunnangi1@ventanamicro.com> + Jeff Law <jlaw@ventanamicro.com> + Philipp Tomsich <philipp.tomsich@vrull.eu> + + * gcc.target/riscv/add-synthesis-1.c: New test. + +2025-08-12 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: + Change test for updated handling of Numeric Display variables. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * gcc.target/aarch64/cmpbr-3.c: New. + * gcc.target/aarch64/ifcvt_multiple_sets_rewire.c: Simplify + test for csel by ignoring the actual registers used. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + PR target/121388 + * gcc.target/aarch64/cmpbr.c (u32_x0_ult_64): XFAIL. + (i32_x0_slt_64, u64_x0_ult_64, i64_x0_slt_64): XFAIL. + * gcc.target/aarch64/cmpbr-2.c: New. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * gcc.target/aarch64/cmpbr.c: Only compile, not assemble, + since we want to scan the assembly. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + PR target/121385 + * gcc.target/aarch64/cmpbr-1.c: New. + +2025-08-11 Richard Henderson <richard.henderson@linaro.org> + + * gcc.target/aarch64/gcs-nonlocal-3.c: Match cbnz. + +2025-08-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121398 + * gfortran.dg/pdt_generic_1.f90: New test. + +2025-08-11 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.dg/torture/copy-prop-aggr-zero-1.c: New test. + * gcc.dg/torture/copy-prop-aggr-zero-2.c: New test. + * gcc.dg/tree-ssa/copy-prop-aggregate-zero-1.c: New test. + * gcc.dg/tree-ssa/copy-prop-aggregate-zero-2.c: New test. + * gcc.dg/tree-ssa/copy-prop-aggregate-zero-3.c: New test. + +2025-08-11 Jeff Law <jlaw@ventanamicro.com> + + * lib/target-supports.exp (check_effective_target_riscv_b_ok): New. + * gcc.target/riscv/pr116085.c: Use new target selector. + * gcc.target/riscv/pr117690.c: Use new target selector. + * gcc.target/riscv/pr120333.c: Use new target selector. + * gcc.target/riscv/zba-shNadd-10.c: Use new target selector. + +2025-08-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121488 + * gcc.dg/tree-ssa/ssa-fre-108.c: New testcase. + +2025-08-11 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_mul-3-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-3-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-3-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-3-u8.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-3-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-3-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-3-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-3-u8.c: New test. + +2025-08-11 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv-nofm.c: Update + asm check due to above change. + * gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vmul-rv32gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vmul-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv64gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fadd-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fadd-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fadd-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fadd-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-5.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-6.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-5.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-6.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmul-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmul-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmul-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmul-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_fmul-5.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-08-11 Andre Vieira <andre.simoesdiasvieira@arm.com> + + PR target/121464 + * gcc.target/arm/acle/mcrr.c: Update testcase. + * gcc.target/arm/acle/mcrr2.c: Likewise. + * gcc.target/arm/acle/mrrc.c: Likewise. + * gcc.target/arm/acle/mrrc2.c: Likewise. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/warn/template-1.C: Fix comment typo, unsinged -> unsigned. + * gcc.target/powerpc/builtins-2-p9-runnable.c (main): Likewise. + * gcc.dg/graphite/id-30.c: Likewise. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * g++.dg/cpp26/name-independent-decl11.C: New test. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * g++.dg/cpp26/decomp19.C: Don't expect sorry on tuple static + structured bindings with a pack. + * g++.dg/cpp26/decomp26.C: New test. + +2025-08-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/121442 + * g++.dg/cpp1z/decomp65.C: New test. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.dg/asm-hard-reg-6.c: Adjust scan for x86 with ia32, lp64 and + x32. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.dg/asm-hard-reg-5.c: Compile for x86 !ia32. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.dg/asm-hard-reg-4.c: Compile with -msse2 for x86 and scan + x86. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.dg/asm-hard-reg-2.c: Compile for x86 !ia32 and scan x86. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.dg/asm-hard-reg-1.c: Adjust scan for x86 with ia32, x32 and + lp64. + +2025-08-10 Harish Sadineni <Harish.Sadineni@windriver.com> + + PR target/118885 + * gcc.target/i386/pr90579.c: add -fno-pie to dg-options + to fix tests when PIE is enabled. + +2025-08-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * lib/multiline.exp: Added pruning of .exe. + +2025-08-09 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/121205 + * gcc.target/i386/asm-hard-reg-2.c (z): Use long long for -m32 + to trigger RA error. + +2025-08-09 Dimitar Dimitrov <dimitar@dinux.eu> + + * g++.dg/modules/class-11_a.H: Skip test for effective + default_packed targets. + * g++.dg/modules/class-11_b.C: Ditto. + +2025-08-09 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121182 + * gfortran.dg/generic_stmt_1.f90: New test. + * gfortran.dg/generic_stmt_2.f90: New test. + * gfortran.dg/generic_stmt_3.f90: New test. + * gfortran.dg/generic_stmt_4.f90: New test. + +2025-08-09 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/torture/hardbool-ai.c: Require target that supports + atomic operations on int types. + +2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120599 + * g++.dg/torture/noncall-eh-1.C: New test. + +2025-08-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118946 + PR tree-optimization/121422 + * gcc.dg/pr118946-1.c: New test. + * gcc.dg/torture/pr121422-1.c: New test. + * gcc.dg/torture/pr121422-2.c: New test. + +2025-08-08 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116253 + * g++.dg/concepts/nested-diagnostics-1-truncated.C: Update for + renamed keys to -fdiagnostics-set-output=text + * g++.dg/concepts/nested-diagnostics-1.C: Likewise. + * g++.dg/concepts/nested-diagnostics-2.C: Likewise. + * gcc.dg/plugin/diagnostic-test-nesting-no-show-nesting.c: New + test. + * gcc.dg/plugin/diagnostic-test-nesting-show-nesting.c: New test. + * gcc.dg/plugin/diagnostic-test-nesting-text-indented-show-levels.c: + Update for renamed keys to -fdiagnostics-set-output=text. + * gcc.dg/plugin/diagnostic-test-nesting-text-indented-unicode.c: + Likewise. + * gcc.dg/plugin/diagnostic-test-nesting-text-indented.c: Likewise. + * gcc.dg/plugin/plugin.exp: Add the new tests. + +2025-08-08 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/120977 + * gcc.target/arm/cmse/cmse-18.c: Check only the case when FPCXT is + not enabled. + * gcc.target/arm/cmse/cmse-19.c: New test. + +2025-08-08 Pengfei Li <Pengfei.Li2@arm.com> + + PR target/121449 + * g++.target/aarch64/sve/pr121449.C: New test. + +2025-08-08 Alex Coplan <alex.coplan@arm.com> + + PR target/120986 + * gcc.target/aarch64/torture/pr120986-2.c: New test. + +2025-08-08 Alex Coplan <alex.coplan@arm.com> + + PR target/120986 + * gcc.target/aarch64/pr120986-1.c: New test. + +2025-08-08 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121389 + * c-c++-common/asan/pr121389-1.c: New test. + * c-c++-common/asan/pr121389-2.c: New test. + * c-c++-common/asan/pr121389-3.c: New test. + * c-c++-common/asan/pr121389-4.c: New test. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/117783 + * g++.dg/cpp26/decomp13.C: New test. + * g++.dg/cpp26/decomp14.C: New test. + * g++.dg/cpp26/decomp15.C: New test. + * g++.dg/cpp26/decomp16.C: New test. + * g++.dg/cpp26/decomp17.C: New test. + * g++.dg/cpp26/decomp18.C: New test. + * g++.dg/cpp26/decomp19.C: New test. + * g++.dg/cpp26/decomp20.C: New test. + * g++.dg/cpp26/decomp21.C: New test. + * g++.dg/cpp26/feat-cxx26.C (__cpp_structured_bindings): Expect + 202411 rather than 202403. + +2025-08-07 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121414 + * gcc.target/aarch64/sme/pr121414_1.c: New test. + +2025-08-07 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120718 + * gcc.target/aarch64/sve/acle/general/pr120718.c: New test. + +2025-08-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121405 + * gcc.dg/tree-ssa/ssa-fre-107.c: New testcase. + * gcc.target/i386/pr90579.c: Adjust. + +2025-08-07 Pengfei Li <Pengfei.Li2@arm.com> + + * gcc.target/aarch64/sve/peel_ind_11.c: New test. + * gcc.target/aarch64/sve/peel_ind_11_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_12.c: New test. + * gcc.target/aarch64/sve/peel_ind_12_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_13.c: New test. + * gcc.target/aarch64/sve/peel_ind_13_run.c: New test. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2577-1.C: New test. + * g++.dg/DRs/dr2577-2.C: New test. + * g++.dg/DRs/dr2577-2.h: New file. + * g++.dg/DRs/dr2577-3.C: New test. + * g++.dg/DRs/dr2577-3.h: New file. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2575.C: New test. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2576.C: New test. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * gcc.dg/Wkeyword-macro-1.c: New test. + * gcc.dg/Wkeyword-macro-2.c: New test. + * gcc.dg/Wkeyword-macro-3.c: New test. + * gcc.dg/Wkeyword-macro-4.c: New test. + * gcc.dg/Wkeyword-macro-5.c: New test. + * gcc.dg/Wkeyword-macro-6.c: New test. + * gcc.dg/Wkeyword-macro-7.c: New test. + * gcc.dg/Wkeyword-macro-8.c: New test. + * gcc.dg/Wkeyword-macro-9.c: New test. + * g++.dg/warn/Wkeyword-macro-1.C: New test. + * g++.dg/warn/Wkeyword-macro-2.C: New test. + * g++.dg/warn/Wkeyword-macro-3.C: New test. + * g++.dg/warn/Wkeyword-macro-4.C: New test. + * g++.dg/warn/Wkeyword-macro-5.C: New test. + * g++.dg/warn/Wkeyword-macro-6.C: New test. + * g++.dg/warn/Wkeyword-macro-7.C: New test. + * g++.dg/warn/Wkeyword-macro-8.C: New test. + * g++.dg/warn/Wkeyword-macro-9.C: New test. + * g++.dg/warn/Wkeyword-macro-10.C: New test. + * g++.dg/opt/pr82577.C: Don't #define register to nothing for + C++17 and later. Instead define reg macro to nothing for C++17 + and later or to register and use it instead of register. + * g++.dg/modules/atom-preamble-3.C: Add -Wno-keyword-macro to + dg-additional-options. + * g++.dg/template/sfinae17.C (static_assert): Rename macro to ... + (my_static_assert): ... this. + (main): Use my_static_assert instead of static_assert. + +2025-08-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/bitint-1.c: New test. + * gcc.target/s390/bitint-2.c: New test. + * gcc.target/s390/bitint-3.c: New test. + * gcc.target/s390/bitint-4.c: New test. + +2025-08-06 Sam James <sam@gentoo.org> + + * g++.dg/cpp26/constexpr-new3.C: Escape '[' and ']'. + +2025-08-06 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/torture/hardbool-ai.c: New. + * gcc.dg/torture/hardbool-vi.c: New. + * gcc.dg/torture/hardbool.c: Handle NO_BITFIELDS. + (add1, preinc, postinc, sub1, predec, postdec): New. + (main): Exercise them. + +2025-08-06 Martin Uecker <uecker@tugraz.at> + + PR c/108931 + * gcc.dg/vla-tert-1.c: New test. + +2025-08-06 Patrick Palka <ppalka@redhat.com> + + PR c++/121231 + PR c++/119688 + PR c++/94511 + * g++.dg/abi/mangle82.C: New test. + * g++.dg/cpp2a/nontype-class73.C: New test. + +2025-08-06 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp26/constexpr-new3.C: Tweak diagnostic. + +2025-08-06 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/vect-gather-1.c: Adjust to hide N. + +2025-08-06 Tejas Belagod <tejas.belagod@arm.com> + + * gcc.target/aarch64/sve/acle/general/cops.c: Fix test. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * gcc.dg/torture/bitint-84.c: New test. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * gcc.dg/torture/bitint-83.c: New test. + +2025-08-06 Yang Yujie <yangyujie@loongson.cn> + + * gcc.dg/bitintext.h (BEXTC1): Define. Convert the copied + object back to the original type before comparison. + (BEXTC): Use BEXTC1 for both the signed and the unsigned case. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121413 + * gcc.dg/torture/bitint-85.c: New test. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121127 + * gcc.dg/bitint-125.c: New test. + +2025-08-06 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/c_f_pointer_shape_tests_2.f03: Use the new driver. + * gfortran.dg/c_f_pointer_shape_tests_4.f03: Ditto. + * gfortran.dg/c_f_pointer_shape_tests_4_driver.c: Removed. + * gfortran.dg/c_f_pointer_shape_tests_2_driver.c: Renamed to ... + * gfortran.dg/c_f_pointer_shape_tests_driver.c: ... this; format + with gcc style. + +2025-08-06 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * c-c++-common/cpp/comment-ff-1.c: New test. + * c-c++-common/cpp/comment-vtab-1.c: New test. + +2025-08-06 Martin Uecker <uecker@tugraz.at> + + PR c/121217 + * gcc.dg/pr121217.c: New test. + +2025-08-06 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/arch-unset-1.c: New test. + * gcc.target/riscv/arch-unset-2.c: New test. + * gcc.target/riscv/arch-unset-3.c: New test. + * gcc.target/riscv/arch-unset-4.c: New test. + * gcc.target/riscv/arch-unset-5.c: New test. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + + * c-c++-common/gomp/target-update-iterators-1.c: New. + * c-c++-common/gomp/target-update-iterators-2.c: New. + * c-c++-common/gomp/target-update-iterators-3.c: New. + +2025-08-06 Kwok Cheung Yeung <kcyeung@baylibre.com> + Andrew Stubbs <ams@baylibre.com> + + * c-c++-common/gomp/map-6.c (foo): Amend expected error message. + * c-c++-common/gomp/target-map-iterators-1.c: New. + * c-c++-common/gomp/target-map-iterators-2.c: New. + * c-c++-common/gomp/target-map-iterators-3.c: New. + * c-c++-common/gomp/target-map-iterators-4.c: New. + +2025-08-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/121234 + * gfortran.dg/pr121234.f90: New test. + +2025-08-05 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * g++.dg/cpp26/constexpr-new5.C: New test. + +2025-08-05 Mikael Morin <morin-mikael@orange.fr> + + * gfortran.dg/pointer_assign_16.f90: New test. + +2025-08-05 H.J. Lu <hjl.tools@gmail.com> + + PR target/121410 + * gcc.target/i386/pr121410.c: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/offset_of1.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/const-generics-1.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/generics8.rs: extra error message + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3546.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3885.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/const_generics_3.rs: this works now + * rust/compile/const_generics_5.rs: likewise + * rust/compile/const_generics_8.rs: move the failure to another test case + * rust/compile/const_generics_10.rs: New test. + * rust/compile/const_generics_11.rs: New test. + * rust/compile/const_generics_12.rs: New test. + * rust/compile/const_generics_13.rs: New test. + * rust/compile/const_generics_14.rs: New test. + * rust/compile/const_generics_15.rs: New test. + * rust/compile/const_generics_16.rs: New test. + * rust/compile/const_generics_9.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3960.rs: New test. + +2025-08-05 Ryutaro Okada <1015ryu88@gmail.com> + + * rust/compile/auto_traits2.rs: + emove warning for unused `self` parameter + * rust/compile/derive-debug1.rs: + emove warning for unused `self` parameter + * rust/compile/derive_macro1.rs: + Remove warning for unused `self` parameter + * rust/compile/format_args_basic_expansion.rs: + Remove warning for unused `self` parameter + * rust/compile/format_args_extra_comma.rs: + Remove warning for unused `self` parameter + * rust/compile/issue-2043.rs: + Remove warning for unused `self` parameter + * rust/compile/issue-2166.rs: + Remove warning for unused `self` parameter + * rust/compile/issue-2238.rs: + Remove warning for unused `self` parameter + * rust/compile/issue-2907.rs: + Remove warning for unused `self` parameter + * rust/compile/min_specialization1.rs: + Remove warning for unused `self` parameter + * rust/compile/name_resolution2.rs: + Remove warning for unused `self` parameter + * rust/compile/name_resolution4.rs: + Remove warning for unused `self` parameter + * rust/compile/torture/generics29.rs: + Remove warning for unused `self` parameter + * rust/compile/torture/generics30.rs: + Remove warning for unused `self` parameter + * rust/compile/torture/traits3.rs: + Remove warning for unused `self` parameter + * rust/compile/torture/traits7.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/impl_trait3.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/min_specialization2.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/trait10.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/trait11.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/trait12.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/trait13.rs: + Remove warning for unused `self` parameter + * rust/execute/torture/trait9.rs: + Remove warning for unused `self` parameter + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/while_let1.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/offset_of2.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/offset_of1.rs: New test. + +2025-08-05 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-4006.rs: New test. + +2025-08-05 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/execute/inline_asm_inout_ident.rs: New test. + * rust/execute/inline_asm_inout_var.rs: New test. + +2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-slicepattern-slice.rs: New file. + * rust/execute/torture/match-slicepattern-slice-1.rs: New file. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/try_block1.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/deferred_const_inference.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/glob_import_enum.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3915.rs: New test. + * rust/execute/torture/sip-hasher.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3916.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3978.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/parse_simple_path_fail_1.rs: New test. + * rust/compile/parse_simple_path_fail_2.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3524.rs: New test. + +2025-08-05 lishin <lishin1008@gmail.com> + + * rust/compile/loop_constant_context.rs: New test. + * rust/compile/issue-3618.rs: + +2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-slicepattern-array.rs: New file. + * rust/execute/torture/match-slicepattern-array-1.rs: New file. + +2025-08-05 Yap Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/slicepattern-size-mismatch.rs: New file. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/issue-2005.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-1048.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3144.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3599.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3876.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2680.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/derive_partial_ord1.rs: this is now fully supported + * rust/execute/torture/basic_partial_ord1.rs: add missing i32 impl + * rust/execute/torture/basic_partial_ord2.rs: likewise + * rust/compile/issue-3836.rs: New test. + * rust/execute/torture/issue-3836.rs: New test. + * rust/execute/torture/partial-ord-6.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3874.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/all-cast.rs: shows array capacity now + * rust/compile/arrays2.rs: likewise + * rust/compile/const3.rs: fix error message + * rust/compile/const_generics_3.rs: disable until typecheck we get proper errors now! + * rust/compile/usize1.rs: proper capacity error message + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/while_let_without_label.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/additional-trait-bounds2nr2.rs: Remove + -frust-name-resolution-2.0 usage. + * rust/compile/const_generics_3.rs: Likewise. + * rust/compile/enum_variant_name.rs: Likewise. + * rust/compile/generics9.rs: Likewise. + * rust/compile/invalid_label_name.rs: Likewise. + * rust/compile/issue-3304.rs: Likewise. + * rust/compile/macros/mbe/macro-issue3708.rs: Likewise. + * rust/compile/macros/mbe/macro-issue3709-2.rs: Likewise. + * rust/compile/name_resolution10.rs: Likewise. + * rust/compile/name_resolution11.rs: Likewise. + * rust/compile/name_resolution12.rs: Likewise. + * rust/compile/name_resolution13.rs: Likewise. + * rust/compile/name_resolution14.rs: Likewise. + * rust/compile/name_resolution15.rs: Likewise. + * rust/compile/name_resolution16.rs: Likewise. + * rust/compile/name_resolution17.rs: Likewise. + * rust/compile/name_resolution18.rs: Likewise. + * rust/compile/name_resolution20.rs: Likewise. + * rust/compile/name_resolution22.rs: Likewise. + * rust/compile/name_resolution23.rs: Likewise. + * rust/compile/name_resolution24.rs: Likewise. + * rust/compile/name_resolution25.rs: Likewise. + * rust/compile/name_resolution6.rs: Likewise. + * rust/compile/name_resolution7.rs: Likewise. + * rust/compile/name_resolution8.rs: Likewise. + * rust/compile/name_resolution9.rs: Likewise. + * rust/compile/nested_macro_definition.rs: Likewise. + * rust/compile/pub_restricted_1.rs: Likewise. + * rust/compile/pub_restricted_2.rs: Likewise. + * rust/compile/self-in-impl.rs: Likewise. + * rust/compile/self_import_namespace.rs: Likewise. + * rust/compile/use_1.rs: Likewise. + * rust/compile/xfail/name_resolution21.rs: Likewise. + * rust/execute/torture/name_resolution.rs: Likewise. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/compile.exp: Removed. + * rust/compile/nr2/exclude: Removed. + +2025-08-05 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-restpattern-tuple-1.rs: New file. + * rust/compile/match-restpattern-tuple-2.rs: New file. + * rust/execute/torture/match-restpattern-tuple.rs: New file. + +2025-08-05 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/tuple_mismatch.rs: Include RestPattern in test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove issue-3315-2.rs. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove torture/alt_patterns1.rs. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/builtin/recurse2.rs: Match "abheyho\0" as + well as "abheyho", to handle slight differences in assembly + output for null-terminated strings. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3525.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3551.rs: New test. + +2025-08-05 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-tuplestructpattern.rs: New file. + * rust/execute/torture/match-tuplestructpattern.rs: New file. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove issue-3642.rs. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/silly-order-bug.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/issue-1481.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 puts out an extra error + * rust/compile/issue-3642.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/black_box.rs: Return 0 from main. + * rust/execute/match-identifierpattern-enum.rs: Move to... + * rust/execute/xfail/match-identifierpattern-enum.rs: ...here. + * rust/execute/execute.exp: New file. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/bug-with-default-generic.rs: New test. + * rust/execute/torture/partial-eq-1.rs: New test. + * rust/execute/torture/partial-eq-2.rs: New test. + * rust/execute/torture/partial-eq-3.rs: New test. + * rust/execute/torture/partial-eq-4.rs: New test. + * rust/execute/torture/partial-ord-1.rs: New test. + * rust/execute/torture/partial-ord-2.rs: New test. + * rust/execute/torture/partial-ord-3.rs: New test. + * rust/execute/torture/partial-ord-4.rs: New test. + * rust/execute/torture/partial-ord-5.rs: New test. + +2025-08-05 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-identifierpattern-enum.rs: New file. + * rust/execute/match-identifierpattern-enum.rs: New file. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive_partial_ord1.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/derive-partialeq2.rs: Add declaration for + discriminant_value. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/basic_partial_ord1.rs: New test. + * rust/execute/torture/basic_partial_ord2.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/const_generics_3.rs: + * rust/compile/issue-3660.rs: New test. + +2025-08-05 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/match-identifierpattern.rs: New file. + * rust/execute/torture/match-identifierpattern.rs: New file. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + * rust/compile/pub_restricted_1.rs: Adjust expected error + messages and only run with name resolution 2.0 enabled. + * rust/compile/pub_restricted_2.rs: Likewise. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove canonical_paths1.rs. + +2025-08-05 Vishruth-Thimmaiah <vishruththimmaiah@gmail.com> + + * rust/compile/torture/unended-raw-byte-string.rs: + New test to ensure correct error message for unended raw byte string. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-3671.rs: Remove usage of Self. + * rust/compile/nr2/exclude: Remove issue-3671.rs. + * rust/compile/self-in-impl.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-08-05 Vishruth-Thimmaiah <vishruththimmaiah@gmail.com> + + * rust/compile/torture/extern_mod2.rs: + New test to ensure an error is emitted for empty path attributes. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/const_block1.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/traits9.rs: update errors + * rust/compile/unify-errors1.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/bad-rpit1.rs: New test. + * rust/execute/torture/impl_rpit1.rs: New test. + * rust/execute/torture/impl_rpit2.rs: New test. + * rust/execute/torture/impl_rpit3.rs: New test. + +2025-08-05 Parthib <parthibdutta02@gmail.com> + + * lib/rust.exp: Remove timeout. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/torture/for-loop1.rs: Adjust paths. + * rust/execute/torture/for-loop2.rs: Likewise. + * rust/execute/torture/iter1.rs: Likewise. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/torture/builtin_abort.rs: Fix path to + intrinsics::abort. + +2025-08-05 Tom Schollenberger <tss2344@g.rit.edu> + + * rust/compile/issue-3661.rs: Test NR2 has expected behavior + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/meta-param.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/same_field_name.rs: Move to... + * rust/compile/same_field_name.rs: ...here and adjust expected + errors. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: these are fixed now + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-08-05 Tom Schollenberger <tss2344@g.rit.edu> + + * rust/compile/issue-3618.rs: Test empty loops error properly. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/impl_trait_generic_arg.rs: New test. + +2025-08-05 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/execute/torture/struct-pattern-match.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2015.rs: fully supported now + * rust/compile/nr2/exclude: nr2 cant handle some of these + * rust/compile/issue-1487.rs: New test. + * rust/compile/issue-3454.rs: New test. + * rust/execute/torture/impl_desugar-2.rs: New test. + * rust/execute/torture/impl_desugar.rs: New test. + * rust/execute/torture/impl_trait1.rs: New test. + * rust/execute/torture/impl_trait2.rs: New test. + * rust/execute/torture/impl_trait3.rs: New test. + * rust/execute/torture/impl_trait4.rs: New test. + * rust/execute/torture/issue-1482.rs: New test. + +2025-08-05 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/impl_trait_diag.rs: New test. + * rust/compile/issue-1485.rs: New test. + +2025-08-05 CohenArthur <cohenarthur.dev@gmail.com> + Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/execute/torture/derive-partialeq2.rs: Add missing terminating nul char. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/derive-partialeq2.rs: New test. + +2025-08-05 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/struct_pattern1.rs: New test. + +2025-08-05 Georg-Johann Lay <avr@gjlay.de> + + PR target/121359 + * gcc.target/avr/torture/pr118591-1.c: Remove -mlra. + * gcc.target/avr/torture/pr118591-2.c: Same. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121395 + * gcc.dg/vect/pr59984.c: Adjust. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121382 + * gcc.dg/torture/pr121382.c: New testcase. + +2025-08-05 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121370 + * gcc.dg/torture/pr121370.c: New testcase. + +2025-08-05 Yang Yujie <yangyujie@loongson.cn> + + * gcc.dg/bitintext.h (S, CEIL, PROMOTED_SIZE): Define. + (BEXTC): Generalize to only check extension within PROMOTED_SIZE bits. + +2025-08-05 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2579.C: New test. + * c-c++-common/cpp/va-opt-6.c: Expect ' rather than \" around + tokens in incorrect pasting diagnostics. + * gcc.dg/c23-attr-syntax-6.c: Likewise. + * gcc.dg/cpp/paste12.c: Likewise. + * gcc.dg/cpp/paste12-2.c: Likewise. + * gcc.dg/cpp/paste14.c: Likewise. + * gcc.dg/cpp/paste14-2.c: Likewise. + +2025-08-05 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u64.c: Add mulhu + asm check. + * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: Ditto. + +2025-08-04 Patrick Palka <ppalka@redhat.com> + + PR c++/121351 + * g++.dg/cpp2a/concepts-using6.C: New test. + +2025-08-04 Patrick Palka <ppalka@redhat.com> + + PR c++/121351 + PR c++/119859 + * g++.dg/cpp2a/concepts-using5.C: New test. + * g++.dg/cpp2a/concepts-using5a.C: New test. + +2025-08-04 Patrick Palka <ppalka@redhat.com> + + PR c++/120620 + * g++.dg/cpp2a/constexpr-dynamic19.C: New test. + * g++.dg/cpp2a/constexpr-dynamic1a.C: New test. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116253 + * gcc.dg/plugin/diagnostic-test-nesting-html.c: New test. + * gcc.dg/plugin/diagnostic-test-nesting-html.py: New test script. + * gcc.dg/plugin/plugin.exp: Add it. + * libgdiagnostics.dg/test-multiple-lines.c: Update expected output + to show fix-it hint. + * sarif-replay.dg/2.1.0-valid/nested-diagnostics-1.sarif: New test. + +2025-08-04 David Malcolm <dmalcolm@redhat.com> + + PR diagnostics/116792 + * gcc.dg/plugin/diagnostic-test-graphs-html.py: Remove trailing + space from expected text of message. + * sarif-replay.dg/2.1.0-valid/embedded-links-check-html.py: + Likewise. + * sarif-replay.dg/2.1.0-valid/graphs-check-html.py: Likewise. + +2025-08-04 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/121303 + * gcc.target/i386/pr121303.c: New test. + +2025-08-04 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2580.C: New test. + +2025-08-04 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr2578.C: New test. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/dupq_13.c: New test. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/dup_1.c: New test. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/pnext_3.c: New test. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve2/acle/general/match_4.c: New test. + * gcc.target/aarch64/sve2/acle/general/nmatch_1.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/acge_1.c: New test. + * gcc.target/aarch64/sve/acle/general/acgt_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/acle_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/aclt_1.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/cmpeq_6.c: New test. + * gcc.target/aarch64/sve/acle/general/cmpge_9.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_9.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_9.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_9.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpne_5.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpuo_1.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/cmpeq_5.c: New test. + * gcc.target/aarch64/sve/acle/general/cmpge_7.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpge_8.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_7.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_8.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_7.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_8.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_7.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_8.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpne_4.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/cmpeq_1.c: Check the number + of PTRUEs. + * gcc.target/aarch64/sve/acle/general/cmpge_5.c: New test. + * gcc.target/aarch64/sve/acle/general/cmpge_6.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_5.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_6.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_5.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_6.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_5.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_6.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpne_3.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/cmpeq_1.c: Add more tests. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/pred_clobber_1.c: Disable combine. + * gcc.target/aarch64/sve/pred_clobber_2.c: Likewise. + * gcc.target/aarch64/sve/pred_clobber_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpeq_2.c: Add more cases. + * gcc.target/aarch64/sve/acle/general/cmpeq_4.c: New test. + * gcc.target/aarch64/sve/acle/general/cmpge_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpge_2.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpge_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpge_4.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_2.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpgt_4.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_2.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmple_4.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_2.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmplt_4.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpne_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general/cmpne_2.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/unpkhi_1.c: New test. + * gcc.target/aarch64/sve/acle/general/unpklo_1.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121294 + * gcc.target/aarch64/sve/acle/general/rev_2.c: New test. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121294 + * gcc.target/aarch64/sve/acle/general/perm_2.c: New test. + * gcc.target/aarch64/sve/acle/general/perm_3.c: Likewise. + * gcc.target/aarch64/sve/acle/general/perm_4.c: Likewise. + * gcc.target/aarch64/sve/acle/general/perm_5.c: Likewise. + * gcc.target/aarch64/sve/acle/general/perm_6.c: Likewise. + * gcc.target/aarch64/sve/acle/general/perm_7.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/121118 + * gcc.target/aarch64/sve/acle/general/pr121118_1.c: New test. + * gcc.target/aarch64/sve/acle/general/whilele_13.c: Likewise. + * gcc.target/aarch64/sve/acle/general/whilelt_6.c: Likewise. + * gcc.target/aarch64/sve2/acle/general/whilege_1.c: Likewise. + * gcc.target/aarch64/sve2/acle/general/whilegt_1.c: Likewise. + * gcc.target/aarch64/sve2/acle/general/whilerw_5.c: Likewise. + * gcc.target/aarch64/sve2/acle/general/whilewr_5.c: Likewise. + +2025-08-04 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121293 + * gcc.target/aarch64/sve/acle/general/dupq_lane_9.c: New test. + +2025-08-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121362 + * gcc.dg/tree-ssa/ssa-fre-105.c: New testcase. + * gcc.dg/tree-ssa/ssa-fre-106.c: Likewise. + +2025-08-04 H.J. Lu <hjl.tools@gmail.com> + + PR target/120941 + * gcc.target/i386/pr120941-1.c: New test. + +2025-08-03 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * g++.dg/DRs/dr1709.C: New test. + +2025-08-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/120845 + * g++.dg/modules/cpp-21.C: New test. + +2025-08-02 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/Warray-parameter-11.c: Change Warray-parameter to + -Wvla-parameter as these are VLAs. + * gcc.dg/Warray-parameter.c: Remove xfail. + +2025-08-01 Artemiy Granat <a.granat@ispras.ru> + + * gcc.target/i386/attributes-error.c: Change incorrect + sseregparm,fastcall combination to cdecl,fastcall. + +2025-08-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121322 + * gcc.dg/pr121322.c: New test. + +2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/108080 + * g++.dg/modules/pr108080.H: New test. + +2025-08-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121238 + * g++.dg/modules/merge-19.h: New test. + * g++.dg/modules/merge-19_a.H: New test. + * g++.dg/modules/merge-19_b.C: New test. + +2025-07-31 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121314 + * gm2/errors/fail/badindrtype.mod: New test. + * gm2/errors/fail/badindrtype2.mod: New test. + +2025-07-31 Mikael Morin <morin-mikael@orange.fr> + + PR fortran/121342 + * gfortran.dg/class_elemental_1.f90: New test. + +2025-07-31 Jason Merrill <jason@redhat.com> + + PR c++/120800 + * g++.dg/cpp0x/constexpr-array30.C: New test. + +2025-07-31 Marek Polacek <polacek@redhat.com> + + PR c++/120775 + * g++.dg/cpp26/consteval-block1.C: New test. + * g++.dg/cpp26/consteval-block2.C: New test. + * g++.dg/cpp26/consteval-block3.C: New test. + * g++.dg/cpp26/consteval-block4.C: New test. + * g++.dg/cpp26/consteval-block5.C: New test. + * g++.dg/cpp26/consteval-block6.C: New test. + * g++.dg/cpp26/consteval-block7.C: New test. + * g++.dg/cpp26/consteval-block8.C: New test. + +2025-07-31 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for signed avg ceil. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add + test data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-i8.c: New test. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * gcc.target/i386/attributes-error.c: Add more attributes + combinations. + +2025-07-31 Artemiy Granat <a.granat@ispras.ru> + + * g++.dg/abi/regparm1.C: Require ia32 target. + * gcc.target/i386/20020224-1.c: Likewise. + * gcc.target/i386/pr103785.c: Use regparm attribute only if + not in 64-bit mode. + * gcc.target/i386/pr36533.c: Likewise. + * gcc.target/i386/pr59099.c: Likewise. + * gcc.target/i386/sibcall-8.c: Likewise. + * gcc.target/i386/sw-1.c: Likewise. + * gcc.target/i386/pr15184-2.c: Fix invalid comment. + * gcc.target/i386/attributes-ignore.c: New test. + +2025-07-31 Yury Khrustalev <yury.khrustalev@arm.com> + + * g++.target/aarch64/mv-cpu-features.C: new test. + +2025-07-31 Yury Khrustalev <yury.khrustalev@arm.com> + + * gcc.target/aarch64/ifunc-resolver.in: add core test functions. + * gcc.target/aarch64/ifunc-resolver-0.c: new test. + * gcc.target/aarch64/ifunc-resolver-1.c: ditto. + * gcc.target/aarch64/ifunc-resolver-2.c: ditto. + * gcc.target/aarch64/ifunc-resolver-3.c: ditto. + * gcc.target/aarch64/ifunc-resolver-4.c: as above. + +2025-07-31 Spencer Abson <spencer.abson@arm.com> + + PR target/121028 + * gcc.target/aarch64/sme/call_sm_switch_1.c: Tell check-function + -bodies not to ignore .inst directives, and replace the test for + "smstart sm" with one for it's encoding. + * gcc.target/aarch64/sme/call_sm_switch_11.c: Likewise. + * gcc.target/aarch64/sme/pr121028.c: New test. + +2025-07-31 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121264 + * gcc.dg/tree-ssa/pr121264.c: New test. + +2025-07-31 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/amax_f16_x2.c: Gate do-assemble on + assembler support for +faminmax and +sme2. + * gcc.target/aarch64/sme2/acle-asm/amax_f16_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amax_f32_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amax_f32_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amax_f64_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amax_f64_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f16_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f16_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f32_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f32_x4.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f64_x2.c: Likewise. + * gcc.target/aarch64/sme2/acle-asm/amin_f64_x4.c: Likewise. + * lib/target-supports.exp: Split the extensions that require SME into + a separate set, and use armv9-a as their baseline. + +2025-07-31 Jakub Jelinek <jakub@redhat.com> + + * gcc.target/i386/apx-1.c (apx_hanlder): Rename to ... + (apx_handler): ... this. + * gcc.target/i386/uintr-2.c (UINTR_hanlder): Rename to ... + (UINTR_handler): ... this. + * gcc.target/i386/uintr-5.c (UINTR_hanlder): Rename to ... + (UINTR_handler): ... this. + +2025-07-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/121291 + * g++.dg/ext/is_invocable7.C: New test. + * g++.dg/ext/is_nothrow_convertible5.C: New test. + +2025-07-30 Jason Merrill <jason@redhat.com> + + * g++.dg/tc1/dr49.C: Adjust diagnostic. + * g++.dg/template/func2.C: Likewise. + * g++.dg/cpp1z/nontype8.C: New test. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + PR tree-optimization/121295 + * gcc.dg/torture/pr121236-1.c: New test. + * gcc.dg/torture/pr121295-1.c: New test. + +2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + Revert: + 2025-07-30 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + * gcc.dg/torture/pr121236-1.c: New test. + +2025-07-30 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/spaceship-fp-1.c: New test. + * gcc.target/s390/spaceship-fp-2.c: New test. + * gcc.target/s390/spaceship-fp-3.c: New test. + * gcc.target/s390/spaceship-fp-4.c: New test. + * gcc.target/s390/spaceship-int-1.c: New test. + * gcc.target/s390/spaceship-int-2.c: New test. + * gcc.target/s390/spaceship-int-3.c: New test. + +2025-07-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/120427 + * gcc.target/i386/pr120427-5.c: New test. + +2025-07-30 Jan Hubicka <jh@suse.cz> + + * g++.dg/tree-prof/eh1.C: New test. + +2025-07-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121130 + * gcc.dg/vect/vect-simd-pr121130.c: New testcase. + +2025-07-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/121133 + * g++.dg/warn/pr121133-1.C: New test. + * g++.dg/warn/pr121133-2.C: New test. + * g++.dg/warn/pr121133-3.C: New test. + * g++.dg/warn/pr121133-4.C: New test. + +2025-07-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/120778 + * g++.dg/cpp/if-comma-1.C: New test. + +2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> + + PR tree-optimization/121020 + * gcc.dg/vect/vect-early-break_138-pr121020.c: New test. + +2025-07-30 Pengfei Li <Pengfei.Li2@arm.com> + + PR tree-optimization/121190 + * gcc.dg/vect/vect-early-break_52.c: Update an unsafe test. + * gcc.dg/vect/vect-early-break_137-pr121190.c: New test. + +2025-07-30 Alfie Richards <alfie.richards@arm.com> + + PR target/121300 + * gcc.target/aarch64/pr121300.c: New test. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_cond_fmla_1.c: Add test cases + for merging with multiplcand. + * gcc.target/aarch64/sve/unpacked_cond_fmls_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fnmla_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fnmls_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fmla_2.c: New test. + * gcc.target/aarch64/sve/unpacked_cond_fmls_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fnmla_2.c: Likewise.. + * gcc.target/aarch64/sve/unpacked_cond_fnmls_2.c: Likewise. + * g++.target/aarch64/sve/unpacked_cond_ternary_bf16_1.C: Likewise. + * g++.target/aarch64/sve/unpacked_cond_ternary_bf16_2.C: Likewise. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_cond_fmla_1.c: New test. + * gcc.target/aarch64/sve/unpacked_cond_fmls_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fnmla_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fnmls_1.c: Likewise. + +2025-07-30 Yuao Ma <c8ef@outlook.com> + + * gfortran.dg/split_1.f90: New test. + * gfortran.dg/split_2.f90: New test. + * gfortran.dg/split_3.f90: New test. + * gfortran.dg/split_4.f90: New test. + +2025-07-30 Spencer Abson <spencer.abson@arm.com> + + * g++.target/aarch64/sve/unpacked_ternary_bf16_1.C: New test. + * g++.target/aarch64/sve/unpacked_ternary_bf16_2.C: Likewise. + * gcc.target/aarch64/sve/unpacked_fmla_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmla_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmls_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmls_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fnmla_1.c: Likeiwse. + * gcc.target/aarch64/sve/unpacked_fnmla_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fnmls_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fnmls_2.c: Likewise. + +2025-07-30 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr121274.c: New test. + +2025-07-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Add asm check + for unsigned avg ceil. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add + test data. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-2-u8.c: New test. + +2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/121215 + * lib/profopt.exp (profopt-execute): Call cleanup-after-saved-dg-test + if returning early for the -fauto-profile case failing case. + +2025-07-29 Spencer Abson <spencer.abson@arm.com> + + * g++.target/aarch64/sve/unpacked_cond_binary_bf16_2.C: New test. + * gcc.target/aarch64/sve/unpacked_cond_builtin_fmax_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_builtin_fmin_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fadd_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fdiv_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fmaxnm_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fminnm_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fmul_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fsubr_2.c: Likewise. + +2025-07-29 H.J. Lu <hjl.tools@gmail.com> + + PR target/121208 + * gcc.target/i386/pr121208-1a.c (dg-options): Add -mno-80387. + * gcc.target/i386/pr121208-1b.c (dg-options): Likewise. + +2025-07-29 Juergen Christ <jchrist@linux.ibm.com> + + PR testsuite/121286 + PR testsuite/121288 + * gcc.dg/vect/pr112325.c: Adjust parameters for s390. + * gcc.dg/vect/pr117888-1.c: Ditto. + +2025-07-29 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/saturating_arithmetic_1.c: Allow w0 and w1 + to be duplicated in either order. + * gcc.target/aarch64/saturating_arithmetic_2.c: Likewise. + +2025-07-29 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/cmpbr.c: Support both operand orders + for 8-bit and 16-bit comparisons. + +2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/120660 + * gcc.dg/pr120660.c: New test. + +2025-07-29 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119795 + * gcc.target/i386/pr119795.c: New test. + +2025-07-29 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u64.c: Add rv64 + target for run. + * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-2-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-2-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-2-u8-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u32.c: New test. + +2025-07-29 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * gcc.dg/vect/pr120687-3.c: New testcase. + +2025-07-29 Nathaniel Shead <nathanieloshead@gmail.com> + + PR testsuite/121285 + * g++.dg/modules/class-11_a.H: Make static_asserts valid for + C++14. + +2025-07-29 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120687 + * gcc.dg/vect/pr120687-1.c: New testcase. + * gcc.dg/vect/pr120687-2.c: Likewise. + +2025-07-29 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121289 + * gm2/warnings/style/fail/badvarname.mod: New test. + * gm2/warnings/style/fail/warnings-style-fail.exp: New test. + +2025-07-29 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.dg/pr116906-1.c: Add 'dg-do run'. + * gcc.dg/pr116906-2.c: Likewise. + * gcc.dg/pr78185.c: Likewise. + +2025-07-29 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/121159 + * c-c++-common/pr121159.c: New test. + * gcc.dg/plugin/must-tail-call-2.c (test_5): Don't expect an error. + +2025-07-29 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120523 + * gcc.dg/tree-ssa/cswtch-7.c: New test. + +2025-07-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/121236 + * gcc.dg/torture/pr121236-1.c: New test. + +2025-07-28 H.J. Lu <hjl.tools@gmail.com> + + PR target/121208 + * gcc.target/i386/pr121208-1a.c: New test. + * gcc.target/i386/pr121208-1b.c: Likewise. + * gcc.target/i386/pr121208-2a.c: Likewise. + * gcc.target/i386/pr121208-2b.c: Likewise. + * gcc.target/i386/pr121208-3a.c: Likewise. + * gcc.target/i386/pr121208-3b.c: Likewise. + +2025-07-28 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/march-map=sm_100.c: New. + * gcc.target/nvptx/march-map=sm_100a.c: Likewise. + * gcc.target/nvptx/march-map=sm_100f.c: Likewise. + * gcc.target/nvptx/march-map=sm_101.c: Likewise. + * gcc.target/nvptx/march-map=sm_101a.c: Likewise. + * gcc.target/nvptx/march-map=sm_101f.c: Likewise. + * gcc.target/nvptx/march-map=sm_103.c: Likewise. + * gcc.target/nvptx/march-map=sm_103a.c: Likewise. + * gcc.target/nvptx/march-map=sm_103f.c: Likewise. + * gcc.target/nvptx/march-map=sm_120.c: Likewise. + * gcc.target/nvptx/march-map=sm_120a.c: Likewise. + * gcc.target/nvptx/march-map=sm_120f.c: Likewise. + * gcc.target/nvptx/march-map=sm_121.c: Likewise. + * gcc.target/nvptx/march-map=sm_121a.c: Likewise. + * gcc.target/nvptx/march-map=sm_121f.c: Likewise. + +2025-07-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121256 + * gcc.dg/vect/vect-recurr-pr121256.c: New testcase. + * gcc.dg/vect/vect-recurr-pr121256-2.c: Likewise. + +2025-07-27 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/121185 + * gfortran.dg/assign_14.f90: New test. + +2025-07-27 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/121185 + * gfortran.dg/assign_13.f90: New test. + +2025-07-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-i8.c: New test. + +2025-07-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-07-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper + macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-i8.c: New test. + +2025-07-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: + Add zvfh requirements and options. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: + Ditto. + +2025-07-27 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/class-11_a.H: New test. + * g++.dg/modules/class-11_b.C: New test. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Eliminate + digraphs::lazy_digraph and digraphs::lazy_digraphs in favor of + lazily_created template. + * gcc.dg/plugin/diagnostic_plugin_test_metadata.cc: Define + INCLUDE_VECTOR since diagnostics/metadata.h now requires it. + * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_show_trees.cc: Make + diagnostics::context::m_source_printing private. + * gcc.dg/plugin/diagnostic_plugin_test_inlining.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_string_literals.cc: + Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_tree_expression_range.cc: + Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/expensive_selftests_plugin.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/plugin/show_template_tree_color_plugin.cc: Update usage + of "diagnostic_info" to explicitly refer to + "diagnostics::diagnostic_info". + * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update for + file_cache and char_span moving from input.h to + diagnostics/file-cache.h and into the "diagnostics::" namespace. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update for + diagnostic_t becoming enum class diagnostics::kind. + * gcc.dg/plugin/expensive_selftests_plugin.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + * lib/gcc-dg.exp: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for change + from edit-context.h to changes.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for move of + selftest::test_diagnostic_context to + diagnostics::selftest::test_context. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Update for move of + diagnostic-color.h to diagnostics/color.h. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/expensive_selftests_plugin.cc: Update for move of + selftest-diagnostic.h to diagnostics/selftest-context.h. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/plugin/show_template_tree_color_plugin.cc: Update for + moves to namespace diagnostics. + * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Update to + add "m_" prefix to fields of diagnostic_info throughout. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/plugin/show-template-tree-color-labels.C: Update for + moves to "source-printing". + * gcc.dg/plugin/diagnostic-test-show-locus.py: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_group_plugin.cc: Update for move of + diagnostics output formats into namespace "diagnostics" as + "sinks". + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_gil_plugin.cc: Update #include for + "diagnostic-path.h" moving to "diagnostics/paths.h", + diagnostic_thread_id_t to diagnostics::paths::thread_id_t, + diagnostic_event_id_t to diagnostics::paths::event_id_t, + diagnostic_path to diagnostics::paths::path, and + diagnostic_thread to diagnostics::paths::thread, and + diagnostic_event to diagnostics::paths::event. + * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. + * lib/sarif.py (get_state_graph): Update property prefix for + threadFlowLocations from "gcc/diagnostic_event/" to + "gcc/diagnostics/paths/event/". + * gcc.dg/sarif-output/include-chain-2.h: Update comment. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/expensive_selftests_plugin.cc: Update #include for + move of edit-context.h to diagnostics subdir. Update + for move of edit_context to diagnostics::edit_context. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_text_art.cc: Update + #include for move of "diagnostic-diagram.h" to + "diagnostics/diagram.h". Update for move of diagnostic_diagram to + diagnostics::diagram. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: : Update #include for + move of "diagnostic-metadata.h" to "diagnostics/metadata.h" + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Likewise. Also + update for move of diagnostic_metadata to diagnostics::metadata. + * gcc.dg/plugin/diagnostic_plugin_test_metadata.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Likewise. + +2025-07-25 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: Update #include + for move of "diagnostic-digraphs.h" to "diagnostics/digraphs.h". + +2025-07-25 Patrick Palka <ppalka@redhat.com> + + * g++.dg/lookup/operator-8.C: Remove XFAILs and properly + suppress all -Wunused-result warnings. + +2025-07-25 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/121219 + * g++.dg/coroutines/torture/pr121219.C: New test. + +2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + * gcc.target/riscv/interrupt-conflict-mode.c: Remove "user" + interrupts. + * gcc.target/riscv/xtheadint-push-pop.c: Likewise. + * gcc.target/riscv/interrupt-umode.c: Removed. + +2025-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + * gcc.target/riscv/interrupt-rnmi.c: New test. + +2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117294 + PR c++/113854 + * g++.dg/cpp2a/concepts-traits3.C: Adjust diagnostics. + * g++.dg/cpp2a/concepts-traits4.C: New test. + * g++.dg/diagnostic/static_assert5.C: New test. + * g++.dg/ext/has_virtual_destructor2.C: New test. + * g++.dg/ext/is_assignable2.C: New test. + * g++.dg/ext/is_constructible9.C: New test. + * g++.dg/ext/is_convertible7.C: New test. + * g++.dg/ext/is_destructible3.C: New test. + * g++.dg/ext/is_invocable6.C: New test. + * g++.dg/ext/is_virtual_base_of_diagnostic2.C: New test. + +2025-07-24 Jason Merrill <jason@redhat.com> + + PR c++/114632 + PR c++/101233 + * g++.dg/cpp23/explicit-obj-lambda18.C: New test. + * g++.dg/cpp23/static-operator-call7.C: New test. + +2025-07-24 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/_-static__compilation.cob: Modify for -static warning. + * cobol.dg/group2/_-static__compilation.out: Removed. + +2025-07-24 Robin Dapp <rdapp@ventanamicro.com> + + * lib/target-supports.exp: Fix misalignment check. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * g++.target/aarch64/sve/unpacked_cond_binary_bf16_1.C: New test. + * gcc.target/aarch64/sve/unpacked_cond_builtin_fmax_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_builtin_fmin_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fadd_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fdiv_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fmaxnm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fminnm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fmul_1.c: Likewise.. + * gcc.target/aarch64/sve/unpacked_cond_fsubr_1.c: Likewise. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_fdiv_1.c: New test. + * gcc.target/aarch64/sve/unpacked_fdiv_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fdiv_3.c: Likewise. + +2025-07-24 Spencer Abson <spencer.abson@arm.com> + + * g++.target/aarch64/sve/unpacked_binary_bf16_1.C: New test. + * g++.target/aarch64/sve/unpacked_binary_bf16_2.C: Likewise. + * gcc.target/aarch64/sve/unpacked_builtin_fmax_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_builtin_fmax_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_builtin_fmin_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_builtin_fmin_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fadd_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fadd_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmaxnm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmaxnm_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fminnm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fminnm_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmul_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fmul_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fsubr_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fsubr_2.c: Likewise. + +2025-07-24 Jeevitha Palanisamy <jeevitha@linux.ibm.com> + + PR testsuite/119382 + * gcc.target/powerpc/vsx-builtin-7.c: Add '-fno-ipa-icf' to dg-options. + +2025-07-24 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm-1-u8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-fixed-vxrm.h: New test. + +2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120412 + * g++.dg/modules/internal-14_a.C: New test. + * g++.dg/modules/internal-14_b.C: New test. + * g++.dg/modules/internal-14_c.C: New test. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_cond_fabs_1.c: New test. + * gcc.target/aarch64/sve/unpacked_cond_fneg_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frinta_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frinta_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frinti_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frintm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frintp_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frintx_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_frintz_1.c: Likewise. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_fabs_1.c: New test. + * gcc.target/aarch64/sve/unpacked_fneg_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frinta_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frinta_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frinti_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frinti_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintm_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintm_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintp_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintp_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintx_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintx_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintz_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_frintz_2.c: Likewise. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_cond_cvtf_1.c: New test. + * gcc.target/aarch64/sve/unpacked_cond_fcvt_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cond_fcvtz_1.c: Likewise. + +2025-07-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121203 + * gfortran.dg/function_charlen_4.f90: New test. + +2025-07-23 Robin Dapp <rdapp@ventanamicro.com> + + PR target/121073 + * gcc.target/riscv/rvv/autovec/vls-vlmax/repeat-6.c: Adjust test + expectation. + * gcc.target/riscv/rvv/base/scalar_move-5.c: Ditto. + * gcc.target/riscv/rvv/base/scalar_move-6.c: Ditto. + * gcc.target/riscv/rvv/base/scalar_move-7.c: Ditto. + * gcc.target/riscv/rvv/base/scalar_move-8.c: Ditto. + * gcc.target/riscv/rvv/base/scalar_move-9.c: Ditto. + * gcc.target/riscv/rvv/pr121073.c: New test. + +2025-07-23 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: + Add zvfh requirements and options. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: + Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: + Ditto. + * lib/target-supports.exp: Add zvfh options. + +2025-07-23 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/120119 + * g++.dg/torture/pr120119-1.C: New test. + +2025-07-23 Patrick Palka <ppalka@redhat.com> + + PR c++/121179 + * g++.dg/lookup/operator-8.C: Strengthen test and remove one + XFAIL. + +2025-07-23 Patrick Palka <ppalka@redhat.com> + + PR c++/121055 + * g++.dg/ext/is_invocable5.C: New test. + +2025-07-23 Spencer Abson <spencer.abson@arm.com> + + * lib/gcc-defs.exp (aarch64-arg-dg-options): Split add_tune into + add_tune and add_override, so that specifying -moverride does not + change the baseline tuning from the testuite's default (generic). + +2025-07-23 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121220 + * gcc.dg/tree-ssa/ssa-sink-23.c: New testcase. + +2025-07-23 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/119085 + * gcc.dg/tree-ssa/pr119085.c: New test. + +2025-07-23 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/121164 + * gm2/switches/pedantic-params/fail/arrayofchar.def: New test. + * gm2/switches/pedantic-params/fail/arrayofchar.mod: New test. + +2025-07-23 Richard Biener <rguenther@suse.de> + + PR middle-end/121216 + * gcc.dg/pr121216.c: New testcase. + +2025-07-23 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/120101 + * gcc.dg/tree-ssa/pr81627.c (fn1): Mark as noinline. + +2025-07-23 Siddhesh Poyarekar <siddhesh@gotplt.org> + + * gcc.dg/vect/pr116125.c (mem_overlap): Expand A to 10 members. + +2025-07-22 Jason Merrill <jason@redhat.com> + + PR c++/121068 + * g++.dg/cpp2a/constexpr-union6.C: Expect x5 to work. + * g++.dg/cpp26/constexpr-new4.C: New test. + +2025-07-22 Jason Merrill <jason@redhat.com> + + * g++.dg/warn/Wmismatched-new-delete-5.C: Fix allocation. + +2025-07-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/109267 + * lib/target-supports.exp (check_effective_target_trap): New proc. + * g++.dg/missing-return.C: Update testcase for the !trap case. + * gcc.dg/pr109267-1.c: New test. + * gcc.dg/pr109267-2.c: New test. + +2025-07-22 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/sve/mask_load_2.c: Update tests. + +2025-07-22 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/sve/mask_load_2.c: New test. + +2025-07-22 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121202 + * gcc.dg/pr121202.c: New testcase. + +2025-07-22 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/slp-28.c: Adjust. + +2025-07-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/110949 + PR tree-optimization/95906 + * gcc.dg/tree-ssa/cmp-2.c: New test. + * gcc.dg/tree-ssa/max-bitcmp-1.c: New test. + +2025-07-21 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u64.c: New test. + +2025-07-21 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-07-21 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vaadd-run-1-u8.c: New test. + +2025-07-21 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/mf8_data_1.c (test_set_lane4, + test_setq_lane4): Relax allowed assembly. + * gcc.target/aarch64/vec-set-zero.c: Use -Os in flags. + * gcc.target/aarch64/inszero_split_1.c: New test. + +2025-07-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121194 + * gcc.dg/torture/pr121194.c: New testcase. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/pr87600-2.c: Split test into two files since errors for + functions test{0,1} are thrown during expand, and for + test{2,3} during gimplification. + * lib/scanasm.exp: On s390, skip lines beginning with #. + * gcc.dg/asm-hard-reg-error-1.c: New test. + * gcc.dg/asm-hard-reg-error-2.c: New test. + * gcc.dg/asm-hard-reg-error-3.c: New test. + * gcc.dg/asm-hard-reg-error-4.c: New test. + * gcc.dg/asm-hard-reg-error-5.c: New test. + * gcc.dg/pr87600-3.c: New test. + * gcc.target/aarch64/asm-hard-reg-2.c: New test. + * gcc.target/s390/asm-hard-reg-7.c: New test. + +2025-07-21 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/asm-hard-reg-1.c: New test. + * gcc.dg/asm-hard-reg-2.c: New test. + * gcc.dg/asm-hard-reg-3.c: New test. + * gcc.dg/asm-hard-reg-4.c: New test. + * gcc.dg/asm-hard-reg-5.c: New test. + * gcc.dg/asm-hard-reg-6.c: New test. + * gcc.dg/asm-hard-reg-7.c: New test. + * gcc.dg/asm-hard-reg-8.c: New test. + * gcc.target/aarch64/asm-hard-reg-1.c: New test. + * gcc.target/i386/asm-hard-reg-1.c: New test. + * gcc.target/i386/asm-hard-reg-2.c: New test. + * gcc.target/s390/asm-hard-reg-1.c: New test. + * gcc.target/s390/asm-hard-reg-2.c: New test. + * gcc.target/s390/asm-hard-reg-3.c: New test. + * gcc.target/s390/asm-hard-reg-4.c: New test. + * gcc.target/s390/asm-hard-reg-5.c: New test. + * gcc.target/s390/asm-hard-reg-6.c: New test. + * gcc.target/s390/asm-hard-reg-longdouble.h: New test. + +2025-07-21 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/vect-127.c: New testcase. + +2025-07-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119106 + * gfortran.dg/array_constructor_58.f90: New test. + +2025-07-21 panciyan <panciyan@eswincomputing.com> + + * gcc.target/riscv/sat/sat_arith.h: Unsigned testcase form8 form9. + * gcc.target/riscv/sat/sat_u_add-8-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-8-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-8-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-8-u8.c: New test. + * gcc.target/riscv/sat/sat_u_add-9-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-9-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-9-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-9-u8.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-8-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-8-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-8-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-8-u8.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-9-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-9-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-9-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-9-u8.c: New test. + +2025-07-20 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/120859 + * gcc.dg/tree-prof/afdo-crossmodule-1b.c: Add some dg-* + commands like what is in afdo-crossmodule-1.c + +2025-07-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i32.c: + Leverage DEF_AVG_0_WRAP to generate the correct func name. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i32-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i64-from-i128.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i32-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i64-from-i128.c: Ditto. + +2025-07-19 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/121124 + * gcc.target/pru/pragma-ctable_entry-2.c: New test. + +2025-07-19 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwnmacc and + vfwnmsac. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmacc-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwnmsac-run-1-f32.c: New test. + +2025-07-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/121145 + * gfortran.dg/pointer_check_15.f90: New test. + +2025-07-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/121153 + * gcc.dg/vect/vect-reduc-cond-1.c: Require vect_condition. + * gcc.dg/vect/vect-reduc-cond-2.c: Likewise. + +2025-07-18 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/avg_data.h: Adjust the test data. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i64-from-i128.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i64-from-i128.c: New test. + +2025-07-18 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/117423 + * gcc.dg/tree-ssa/pr117423.c: New test. + +2025-07-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121126 + * gcc.dg/vect/pr121126.c: New testcase. + +2025-07-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120924 + * gcc.dg/uninit-pr120924.c: New testcase. + +2025-07-18 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/121131 + * gcc.dg/bitint-124.c: New test. + +2025-07-17 Jason Merrill <jason@redhat.com> + + PR c++/87097 + * g++.dg/cpp0x/constexpr-array29.C: New test. + +2025-07-17 Richard Sandiford <richard.sandiford@arm.com> + Yury Khrustalev <yury.khrustalev@arm.com> + + * lib/target-supports.exp (add_options_for_aarch64_sme) + (check_effective_target_aarch64_sme_hw): New procedures. + * g++.target/aarch64/sme/sme_throw_1.C: New test. + * g++.target/aarch64/sme/sme_throw_2.C: Likewise. + +2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c: Adapt + scan assembler directives. + * gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c: Ditto. + * gcc.target/s390/signbit-1.c: New test. + * gcc.target/s390/signbit-2.c: New test. + * gcc.target/s390/signbit-3.c: New test. + * gcc.target/s390/signbit-4.c: New test. + * gcc.target/s390/signbit-5.c: New test. + * gcc.target/s390/signbit.h: New test. + +2025-07-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vlgv-zero-extend-1.c: New test. + +2025-07-17 Xi Ruoyao <xry111@xry111.site> + + PR target/121064 + * gcc.target/loongarch/pr121064.c: New test. + +2025-07-17 Richard Biener <rguenther@suse.de> + + * gcc.dg/vect/bb-slp-39.c: Adjust. + +2025-07-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121035 + * gcc.dg/pr121035.c: New testcase. + +2025-07-16 Uros Bizjak <ubizjak@gmail.com> + + PR target/121062 + * gcc.target/i386/pr121062-1.c: New test. + * gcc.target/i386/pr121062-2.c: Likewise. + * gcc.target/i386/pr121062-3a.c: Likewise. + * gcc.target/i386/pr121062-3b.c: Likewise. + * gcc.target/i386/pr121062-3c.c: Likewise. + * gcc.target/i386/pr121062-4.c: Likewise. + * gcc.target/i386/pr121062-5.c: Likewise. + * gcc.target/i386/pr121062-6.c: Likewise. + * gcc.target/i386/pr121062-7.c: Likewise. + +2025-07-16 H.J. Lu <hjl.tools@gmail.com> + + PR target/120881 + PR testsuite/121078 + * gcc.dg/20021014-1.c (dg-additional-options): Add -mfentry + -fno-pic only on gnu/x86 targets. + * gcc.dg/aru-2.c (dg-additional-options): Likewise. + * gcc.dg/nest.c (dg-additional-options): Likewise. + * gcc.dg/pr32450.c (dg-additional-options): Likewise. + * gcc.dg/pr43643.c (dg-additional-options): Likewise. + * gcc.target/i386/pr104447.c (dg-additional-options): Likewise. + * gcc.target/i386/pr113122-3.c(dg-additional-options): Likewise. + * gcc.target/i386/pr119386-1.c (dg-additional-options): Add + -mfentry only on gnu targets. + * gcc.target/i386/pr119386-2.c (dg-additional-options): Likewise. + +2025-07-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121049 + * gcc.dg/vect/pr121049.c: New testcase. + +2025-07-16 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/119920 + PR tree-optimization/112324 + PR tree-optimization/110015 + * gcc.dg/vect/vect-reduc-cond-1.c: New test. + * gcc.dg/vect/vect-reduc-cond-2.c: New test. + * gcc.dg/vect/vect-reduc-cond-3.c: New test. + +2025-07-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121116 + * gcc.dg/torture/pr121116.c: New testcase. + +2025-07-16 Spencer Abson <spencer.abson@arm.com> + + PR target/117850 + * gcc.target/aarch64/simd/vabal_combine.c: Removed. This is + covered by fold_to_highpart_1.c + * gcc.target/aarch64/simd/fold_to_highpart_1.c: New test. + * gcc.target/aarch64/simd/fold_to_highpart_2.c: Likewise. + * gcc.target/aarch64/simd/fold_to_highpart_3.c: Likewise. + * gcc.target/aarch64/simd/fold_to_highpart_4.c: Likewise. + * gcc.target/aarch64/simd/fold_to_highpart_5.c: Likewise. + * gcc.target/aarch64/simd/fold_to_highpart_6.c: Likewise. + +2025-07-16 Alfie Richards <alfie.richards@arm.com> + + * g++.dg/warn/Wformat-gcc_diag-1.C: Add string_slice "%B" format tests. + +2025-07-16 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/121065 + * gcc.target/arm/pr121065.c: New test. + +2025-07-16 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120297 + * gcc.target/riscv/rvv/pr120297.c: New test. + +2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/sve2/eon_bsl2n.c: New test. + +2025-07-16 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/sve2/nbsl_nor_nand_neon.c: New test. + +2025-07-16 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/121060 + * gfortran.dg/associate_75.f90: New test. + +2025-07-16 Steve Kargl <sgk@troutmask.apl.washington.edu> + + * gfortran.dg/import13.f90: New test. + +2025-07-16 Jeremy Rifkin <jeremy@rifkin.dev> + + PR c/82134 + * c-c++-common/attr-warn-unused-result-2.c: New test. + +2025-07-16 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/amxavx512-cvtrowd2ps-2.c: Add -mavx512fp16 to + use FP16 related intrins for convert. + * gcc.target/i386/amxavx512-cvtrowps2bf16-2.c: Ditto. + * gcc.target/i386/amxavx512-cvtrowps2ph-2.c: Ditto. + * gcc.target/i386/amxavx512-movrow-2.c: Ditto. + +2025-07-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_s_add-1-i16.c: Remove function-body + check and add no jmp label asm check. + * gcc.target/riscv/sat/sat_s_add-1-i32.c: + * gcc.target/riscv/sat/sat_s_add-1-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-1-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-2-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-2-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-2-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-2-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-3-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-3-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-3-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-3-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-4-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-4-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-4-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-4-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-1-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-1-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-1-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-1-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-2-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-2-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-2-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add_imm-2-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-1-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-1-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-1-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-1-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-2-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-2-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-2-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-2-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-3-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-3-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-3-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-3-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-4-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-4-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-4-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-4-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-1-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-2-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-3-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-4-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-5-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-6-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-7-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-8-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-6-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u16-from-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u16-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u32-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-10-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-10-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-10-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-10-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-11-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-11-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-11-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-11-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-12-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-12-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-12-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-12-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-6-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-7-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-7-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-7-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-7-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-8-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-8-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-8-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-8-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-9-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-9-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-9-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-9-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u16-4.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u32-4.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u64-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u64-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u8-4.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u16-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u32-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u64-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u8-3.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u16-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u16-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u32-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u32-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u8-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u8-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u16-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u16-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u32-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u32-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u8-1.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u8-2.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-6-u8.c: Ditto. + +2025-07-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/avg.h: Add int128 type when + xlen == 64. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i32.c: + Suppress __int128 warning for run test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i32-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_data.h: Fix one incorrect + test data. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i32-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i64-from-i128.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i64-from-i128.c: New test. + +2025-07-15 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/120792 + * libgdiagnostics.dg/sarif.py: Delete duplicate script. + * libgdiagnostics.dg/test-message-buffer-c.py: New test script. + * libgdiagnostics.dg/test-message-buffer.c: New test. + * libgdiagnostics.dg/test-warning-with-path-c.py: Update expected + output to reflect that SARIF for event messages now contains JSON + pointers when referring to other events by ID. + * sarif-replay.dg/2.1.0-valid/3.11.6-embedded-links.sarif: Add + HTML and SARIF output, and call out to Python scripts to verify + the output. Add example of a result with a link in its message. + * sarif-replay.dg/2.1.0-valid/embedded-links-check-html.py: New + test script. + * sarif-replay.dg/2.1.0-valid/embedded-links-check-sarif-roundtrip.py: + New test script. + +2025-07-15 Umesh Kalappa <ukalappa.mips@gmail.com> + + * gcc.target/riscv/mipscondmov.c: Test file for mips.ccmov insn. + +2025-07-15 Jason Merrill <jason@redhat.com> + + PR c++/120577 + * g++.dg/cpp2a/constexpr-union9.C: New test. + +2025-07-15 Jason Merrill <jason@redhat.com> + + PR c++/117784 + * g++.dg/cpp26/decomp25.C: Add -fno-implicit-constexpr. + +2025-07-15 Kwok Cheung Yeung <kcyeung@baylibre.com> + + PR fortran/104428 + * gfortran.dg/gomp/pr104428.f90: New. + +2025-07-15 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + * gcc.target/aarch64/avoid-store-forwarding-be.c: New test. + +2025-07-15 Soumya AR <soumyaa@nvidia.com> + + * gcc.target/aarch64/ldapr-sext.c: Update expected output to include + offsets. + * gcc.target/aarch64/ldapur.c: New test for LDAPUR. + * gcc.target/aarch64/ldapur_avoid.c: New test for AVOID_LDAPUR flag. + +2025-07-15 Richard Biener <rguenther@suse.de> + Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/121059 + * gcc.dg/vect/pr121059.c: New testcase. + +2025-07-15 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c/44677 + * c-c++-common/Wunused-parm-1.c: New test. + * c-c++-common/Wunused-parm-2.c: New test. + * c-c++-common/Wunused-parm-3.c: New test. + * c-c++-common/Wunused-parm-4.c: New test. + * c-c++-common/Wunused-parm-5.c: New test. + * c-c++-common/Wunused-parm-6.c: New test. + * c-c++-common/Wunused-var-7.c (bar, baz): Expect warning on a. + * c-c++-common/Wunused-var-19.c: New test. + * c-c++-common/Wunused-var-20.c: New test. + * c-c++-common/Wunused-var-21.c: New test. + * c-c++-common/Wunused-var-22.c: New test. + * c-c++-common/Wunused-var-23.c: New test. + * c-c++-common/Wunused-var-24.c: New test. + * g++.dg/cpp26/name-independent-decl1.C (foo): Expect one + set but not used warning. + * g++.dg/warn/Wunused-parm-12.C: New test. + * g++.dg/warn/Wunused-parm-13.C: New test. + * g++.dg/warn/Wunused-var-2.C (f2): Expect set but not used warning + on parameter x and variable a. + * g++.dg/warn/Wunused-var-40.C: New test. + * g++.dg/warn/Wunused-var-41.C: New test. + * gcc.dg/memchr-3.c (test_find): Change return type from void to int, + and add return n; statement. + * gcc.dg/unused-9.c (g): Move dg-bogus to the correct line and expect + a warning on i. + +2025-07-15 Kyrylo Tkachov <ktkachov@nvidia.com> + + Revert: + 2025-07-15 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/eor3_d.c: Add tests for DImode operands. + +2025-07-15 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_fcm_combines_1.c: New test. + * gcc.target/aarch64/sve/unpacked_fcm_combines_2.c: Likewise. + +2025-07-14 Richard Biener <rguenther@suse.de> + + Revert: + 2025-07-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121059 + * gcc.dg/vect/pr121059.c: New testcase. + +2025-07-14 Juergen Christ <jchrist@linux.ibm.com> + + * lib/target-supports.exp: Add s390 to vect_logical_reduc targets. + * gcc.target/s390/vector/reduc-binops-1.c: New test. + * gcc.target/s390/vector/reduc-minmax-1.c: New test. + * gcc.target/s390/vector/reduc-plus-1.c: New test. + +2025-07-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121059 + * gcc.dg/vect/pr121059.c: New testcase. + +2025-07-14 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u64.c: New test. + +2025-07-14 Uros Bizjak <ubizjak@gmail.com> + + PR target/121015 + * gcc.target/i386/pr121015.c: New test. + +2025-07-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/120881 + * gcc.dg/20021014-1.c: Add additional -mfentry -fno-pic options + for x86. + * gcc.dg/aru-2.c: Likewise. + * gcc.dg/nest.c: Likewise. + * gcc.dg/pr32450.c: Likewise. + * gcc.dg/pr43643.c: Likewise. + * gcc.target/i386/pr104447.c: Likewise. + * gcc.target/i386/pr113122-3.c: Likewise. + * gcc.target/i386/pr119386-1.c: Add additional -mfentry if not + ia32. + * gcc.target/i386/pr119386-2.c: Likewise. + * gcc.target/i386/pr120881-1a.c: New test. + * gcc.target/i386/pr120881-1b.c: Likewise. + * gcc.target/i386/pr120881-1c.c: Likewise. + * gcc.target/i386/pr120881-1d.c: Likewise. + * gcc.target/i386/pr120881-2a.c: Likewise. + * gcc.target/i386/pr120881-2b.c: Likewise. + * gcc.target/i386/pr82699-1.c: Add additional -mfentry. + * lib/target-supports.exp (check_effective_target_fentry): New. + +2025-07-14 François-Xavier Coudert <fxcoudert@gcc.gnu.org> + + * gcc.dg/darwin-minversion-link.c: Account for macOS 26. + +2025-07-14 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfwmacc and + vfwmsac. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. Also check + for fcvt and vfmv. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Add vfwmacc and + vfwmsac. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. Also check + for fcvt and vfmv. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for + widening variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_widen_run.h: New test + helper. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmacc-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfwmsac-run-1-f32.c: New test. + +2025-07-14 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/deref4.adb: New test. + * gnat.dg/deref4_pkg.ads: New helper. + +2025-07-14 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/sme2/acle-asm/amax_f16_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amax_f16_x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amax_f32_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amax_f32_x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amax_f64_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amax_f64_x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f16_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f16_x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f32_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f32_x4.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f64_x2.c: New test. + * gcc.target/aarch64/sme2/acle-asm/amin_f64_x4.c: New test. + +2025-07-14 panciyan <panciyan@eswincomputing.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Unsigned vector SAT_SUB form11 form12. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u16.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u32.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u64.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u8.c: Use ussub instead of usub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-11-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-12-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-11-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-12-u8.c: New test. + +2025-07-12 Xi Ruoyao <xry111@xry111.site> + + PR rtl-optimization/87600 + PR rtl-optimization/120983 + * gcc.dg/pr87600.h [__loongarch__]: Define REG0 and REG1. + * gcc.dg/pr87600-1.c (dg-do): Add loongarch. + * gcc.dg/pr87600-2.c (dg-do): Likewise. + +2025-07-12 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/goacc/parameter.f95: Add -Wsurprising flag + and update expected diagnostic. + * gfortran.dg/goacc/parameter-3.f90: New test. + * gfortran.dg/goacc/parameter-4.f90: New test. + +2025-07-11 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/analyzer/state-diagram-1-sarif.py (test_xml_state): + Rename to... + (test_state_graph): ...this. Port from XML to SARIF graphs. + * gcc.dg/analyzer/state-diagram-1.c: Update sink option + from "sarif:xml-state=yes" to "sarif:state-graphs=yes". + * gcc.dg/analyzer/state-diagram-5-sarif.c: Likewise. + * gcc.dg/analyzer/state-diagram-5-sarif.py: Drop import of ET. + (test_nested_types_in_xml_state): Rename to... + (test_nested_types_in_state_graph): ...this. Port from XML to + SARIF graphs. + * gcc.dg/plugin/diagnostic-test-graphs-html.c: New test. + * gcc.dg/plugin/diagnostic-test-graphs-html.py: New test script. + * gcc.dg/plugin/diagnostic-test-graphs-sarif.c: New test. + * gcc.dg/plugin/diagnostic-test-graphs-sarif.py: New test script. + * gcc.dg/plugin/diagnostic-test-graphs.c: New test. + * gcc.dg/plugin/diagnostic_plugin_test_graphs.cc: New test plugin. + * gcc.dg/plugin/plugin.exp (plugin_test_list): Add the above. + * lib/sarif.py (get_xml_state): Delete. + (get_state_graph): New. + (def get_state_node_attr): New. + (get_state_node_kind): New. + (get_state_node_name): New. + (get_state_node_type): New. + (get_state_node_value): New. + * sarif-replay.dg/2.1.0-invalid/3.40.2-duplicate-node-id.sarif: + New test. + * sarif-replay.dg/2.1.0-invalid/3.41.4-unrecognized-node-id.sarif: + New test. + * sarif-replay.dg/2.1.0-valid/graphs-check-html.py: New test + script. + * sarif-replay.dg/2.1.0-valid/graphs-check-sarif-roundtrip.py: New + test script. + * sarif-replay.dg/2.1.0-valid/graphs.sarif: New test. + +2025-07-11 Vladimir N. Makarov <vmakarov@redhat.com> + + * gcc.target/powerpc/pr121007.c: New. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/119064 + * g++.dg/cpp26/feat-cxx26.C: Add test for + __cpp_trivial_relocatability. + * g++.dg/cpp26/trivially-relocatable1.C: New test. + * g++.dg/cpp26/trivially-relocatable2.C: New test. + * g++.dg/cpp26/trivially-relocatable3.C: New test. + * g++.dg/cpp26/trivially-relocatable4.C: New test. + * g++.dg/cpp26/trivially-relocatable5.C: New test. + * g++.dg/cpp26/trivially-relocatable6.C: New test. + * g++.dg/cpp26/trivially-relocatable7.C: New test. + * g++.dg/cpp26/trivially-relocatable8.C: New test. + * g++.dg/cpp26/trivially-relocatable9.C: New test. + * g++.dg/cpp26/trivially-relocatable10.C: New test. + * g++.dg/cpp26/trivially-relocatable11.C: New test. + +2025-07-11 Richard Sandiford <richard.sandiford@arm.com> + + PR target/121027 + * gcc.target/aarch64/sve/acle/general/perm_1.c: New test. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/eor3_d.c: Add tests for DImode operands. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/bcax_d.c: Add tests for DImode arguments. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/eor3_d.c: New test. + +2025-07-11 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/simd/bcax_d.c: New test. + +2025-07-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/121034 + * gcc.dg/vect/pr121034.c: New testcase. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + + PR c++/120954 + * c-c++-common/Warray-bounds-11.c: New test. + +2025-07-11 Jan Hubicka <hubicka@ucw.cz> + + * g++.dg/lto/pr114790_0.C: New test. + * g++.dg/lto/pr114790_1.C: New test. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + Martin Jambor <mjambor@suse.cz> + + PR ipa/121023 + * c-c++-common/musttail32.c: New test. + +2025-07-11 Hu, Lin1 <lin1.hu@intel.com> + + PR target/91384 + * gcc.target/i386/pr91384-1.c: New test. + +2025-07-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/106035 + * gfortran.dg/import3.f90: Use -std=f2008 and comment on change + in error message texts with f2018. + * gfortran.dg/import12.f90: New test. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/120628 + * g++.dg/cpp0x/final1.C: New test. + * g++.dg/cpp0x/final2.C: New test. + * g++.dg/cpp0x/override6.C: New test. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/120569 + * g++.dg/cpp0x/override2.C: Expect different diagnostics with + override or duplicate final. + * g++.dg/cpp0x/override5.C: New test. + * g++.dg/cpp0x/duplicate1.C: Expect different diagnostics with + duplicate final. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/117785 + * g++.dg/cpp0x/constexpr-ellipsis2.C: Expect different diagnostics for + C++26. + * g++.dg/cpp0x/constexpr-throw.C: Likewise. + * g++.dg/cpp1y/constexpr-84192.C: Expect different diagnostics. + * g++.dg/cpp1y/constexpr-throw.C: Expect different diagnostics for + C++26. + * g++.dg/cpp1z/constexpr-asm-5.C: Likewise. + * g++.dg/cpp26/constexpr-eh1.C: New test. + * g++.dg/cpp26/constexpr-eh2.C: New test. + * g++.dg/cpp26/constexpr-eh3.C: New test. + * g++.dg/cpp26/constexpr-eh4.C: New test. + * g++.dg/cpp26/constexpr-eh5.C: New test. + * g++.dg/cpp26/constexpr-eh6.C: New test. + * g++.dg/cpp26/constexpr-eh7.C: New test. + * g++.dg/cpp26/constexpr-eh8.C: New test. + * g++.dg/cpp26/constexpr-eh9.C: New test. + * g++.dg/cpp26/constexpr-eh10.C: New test. + * g++.dg/cpp26/constexpr-eh11.C: New test. + * g++.dg/cpp26/constexpr-eh12.C: New test. + * g++.dg/cpp26/constexpr-eh13.C: New test. + * g++.dg/cpp26/constexpr-eh14.C: New test. + * g++.dg/cpp26/constexpr-eh15.C: New test. + * g++.dg/cpp26/feat-cxx26.C: Change formatting in __cpp_pack_indexing + and __cpp_pp_embed test. Add __cpp_constexpr_exceptions test. + * g++.dg/cpp26/static_assert1.C: Expect different diagnostics for + C++26. + * g++.dg/cpp2a/consteval34.C: Likewise. + * g++.dg/cpp2a/consteval-memfn1.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic4.C: For C++26 add std::exception and + std::bad_cast definitions and expect different diagnostics. + * g++.dg/cpp2a/constexpr-dynamic6.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic7.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic8.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic9.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic11.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic14.C: Likewise. + * g++.dg/cpp2a/constexpr-dynamic18.C: Likewise. + * g++.dg/cpp2a/constexpr-new27.C: New test. + * g++.dg/cpp2a/constexpr-typeid5.C: New test. + +2025-07-10 Qing Zhao <qing.zhao@oracle.com> + + PR middle-end/121000 + * gcc.dg/flex-array-counted-by-pr121000.c: New test. + +2025-07-10 Mikael Morin <mikael@gcc.gnu.org> + + * gfortran.dg/asan/array_constructor_1.f90: Allocate array + before using it. + +2025-07-10 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-inline.c: Add user symbol names. + +2025-07-10 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/pfalse-binary.c: Add -funwind-tables. + * gcc.target/aarch64/sve/pfalse-binary_int_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binary_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binary_opt_single_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binary_rotate.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binary_uint64_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binary_uint_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-binaryxn.c: Likewise. + * gcc.target/aarch64/sve/pfalse-clast.c: Likewise. + * gcc.target/aarch64/sve/pfalse-compare_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-compare_wide_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-count_pred.c: Likewise. + * gcc.target/aarch64/sve/pfalse-fold_left.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_ext.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_ext_gather_index.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_ext_gather_offset.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_gather_sv.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_gather_vs.c: Likewise. + * gcc.target/aarch64/sve/pfalse-load_replicate.c: Likewise. + * gcc.target/aarch64/sve/pfalse-prefetch.c: Likewise. + * gcc.target/aarch64/sve/pfalse-prefetch_gather_index.c: Likewise. + * gcc.target/aarch64/sve/pfalse-prefetch_gather_offset.c: Likewise. + * gcc.target/aarch64/sve/pfalse-ptest.c: Likewise. + * gcc.target/aarch64/sve/pfalse-rdffr.c: Likewise. + * gcc.target/aarch64/sve/pfalse-reduction.c: Likewise. + * gcc.target/aarch64/sve/pfalse-reduction_wide.c: Likewise. + * gcc.target/aarch64/sve/pfalse-shift_right_imm.c: Likewise. + * gcc.target/aarch64/sve/pfalse-store.c: Likewise. + * gcc.target/aarch64/sve/pfalse-store_scatter_index.c: Likewise. + * gcc.target/aarch64/sve/pfalse-store_scatter_offset.c: Likewise. + * gcc.target/aarch64/sve/pfalse-storexn.c: Likewise. + * gcc.target/aarch64/sve/pfalse-ternary_opt_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-ternary_rotate.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary_convert_narrowt.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary_convertxn.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary_n.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary_pred.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unary_to_uint.c: Likewise. + * gcc.target/aarch64/sve/pfalse-unaryxn.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_int_opt_n.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_int_opt_single_n.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_opt_n.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_opt_single_n.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_to_uint.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_uint_opt_n.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-binary_wide.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-compare.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-load_ext_gather_index_restricted.c, + * gcc.target/aarch64/sve2/pfalse-load_ext_gather_offset_restricted.c, + * gcc.target/aarch64/sve2/pfalse-load_gather_sv_restricted.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-load_gather_vs.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-shift_left_imm_to_uint.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-shift_right_imm.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-store_scatter_index_restricted.c, + * gcc.target/aarch64/sve2/pfalse-store_scatter_offset_restricted.c, + * gcc.target/aarch64/sve2/pfalse-unary.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-unary_convert.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-unary_convert_narrowt.c: Likewise. + * gcc.target/aarch64/sve2/pfalse-unary_to_int.c: Likewise. + +2025-07-10 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR target/120999 + * gcc.target/aarch64/sve2/pr120999.c: New test. + +2025-07-10 Richard Sandiford <richard.sandiford@arm.com> + + * lib/target-supports.exp (check_effective_target_aarch64_sve2p1_hw): + New proc. + * gcc.target/aarch64/sve2/dupq_1.c: Extend to big-endian. Add + noipa attributes. + * gcc.target/aarch64/sve2/extq_1.c: Likewise. + * gcc.target/aarch64/sve2/uzpq_1.c: Likewise. + * gcc.target/aarch64/sve2/zipq_1.c: Likewise. + * gcc.target/aarch64/sve2/dupq_1_run.c: New test. + * gcc.target/aarch64/sve2/extq_1_run.c: Likewise. + * gcc.target/aarch64/sve2/uzpq_1_run.c: Likewise. + * gcc.target/aarch64/sve2/zipq_1_run.c: Likewise. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * gfortran.dg/g77/980310-3.f: Comment spelling fix: bellow -> below. + * jit.dg/test-debuginfo.c: Likewise. + +2025-07-10 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_s_add-run-1-i16.c: Take rv32 || rv64 + instead of riscv_v for scalar run test. + * gcc.target/riscv/sat/sat_s_add-run-1-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-1-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-1-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-2-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-2-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-2-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-2-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-3-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-3-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-3-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-3-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-4-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-4-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-4-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_add-run-4-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-1-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-1-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-1-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-1-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-2-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-2-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-2-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-2-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-3-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-3-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-3-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-3-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-4-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-4-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-4-i64.c: Ditto. + * gcc.target/riscv/sat/sat_s_sub-run-4-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-1-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-2-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-3-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-4-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-5-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-6-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-7-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i16-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i32-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i32-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i16.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i32.c: Ditto. + * gcc.target/riscv/sat/sat_s_trunc-run-8-i64-to-i8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-6-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_add_imm-run-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-10-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-10-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-10-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-10-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-11-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-11-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-11-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-11-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-12-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-12-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-12-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-12-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-6-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-7-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-7-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-7-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-7-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-8-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-8-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-8-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-8-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-9-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-9-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-9-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub-run-9-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_sub_imm-run-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-1-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-1-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-1-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-1-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-2-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-2-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-2-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-2-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-3-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-3-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-3-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-3-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-4-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-4-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-4-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-4-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-5-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-5-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-5-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-5-u8.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-6-u16.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-6-u32.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-6-u64.c: Ditto. + * gcc.target/riscv/sat/sat_u_trunc-run-6-u8.c: Ditto. + +2025-07-09 Jason Merrill <jason@redhat.com> + + PR c++/120243 + * g++.dg/coroutines/torture/pr120243-unhandled-1.C: New test. + * g++.dg/coroutines/torture/pr120243-unhandled-2.C: New test. + +2025-07-09 Jason Merrill <jason@redhat.com> + + PR c++/121012 + PR c++/120917 + * g++.dg/cpp2a/lambda-targ17.C: New test. + +2025-07-09 Jason Merrill <jason@redhat.com> + + PR c++/121008 + PR c++/113563 + * g++.dg/cpp2a/lambda-uneval28.C: New test. + +2025-07-09 Marek Polacek <polacek@redhat.com> + + PR c++/119838 + * g++.dg/parse/template32.C: New test. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/rtl/aarch64/vec-series-1.c: New test. + * gcc.dg/rtl/aarch64/vec-series-2.c: Likewise. + * gcc.target/aarch64/sve/acle/general/dupq_2.c: Fix expected + output for this big-endian test. + * gcc.target/aarch64/sve/acle/general/dupq_4.c: Likewise. + * gcc.target/aarch64/sve/vec_init_3.c: Restrict to little-endian + targets and add more tests. + * gcc.target/aarch64/sve/vec_init_4.c: New big-endian version + of vec_init_3.c. + +2025-07-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-07-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-i8.c: New test. + +2025-07-09 Paul-Antoine Arras <parras@baylibre.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Set + MAX_RELATIVE_DIFF depending on type. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: Enable zvfh. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. + +2025-07-09 Ciyan Pan <panciyan@eswincomputing.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Add vec_sat_u_sub_fmt wrap define. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: Add vec_sat_u_sub test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-1-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-10-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-2-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-3-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-4-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-5-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-6-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-7-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-8-u8.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u16.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u32.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u64.c: Remove test data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub-run-9-u8.c: Remove test data. + +2025-07-09 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pr118348_1.c: Require fstack_protector. + * gcc.target/aarch64/pr118348_2.c: Likewise. + +2025-07-09 Icen Zeyada <Icen.Zeyada2@arm.com> + + * gcc.target/aarch64/vector-compare-5.c: Add new test for vector compare simplification. + +2025-07-09 Jeff Law <jlaw@ventanamicro.com> + + PR target/120642 + * gcc.target/riscv/rvv/xtheadvector/pr120642.c: New test. + +2025-07-09 Richard Biener <rguenther@suse.de> + + PR testsuite/120093 + * gcc.dg/vect/pr101145.c: Use noipa instead of noinline + attribute. + +2025-07-09 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/pattern-avg-1.c: Fix on -m31. + * gcc.target/s390/vector/pattern-mulh-1.c: Fix on -m31. + * gcc.target/s390/vector/pattern-mulh-2.c: Fix on -m31. + +2025-07-09 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.dg/builtin-dynamic-object-size-pr120780.c: Fix 'main' function. + +2025-07-09 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/120922 + * gcc.dg/vect/pr120922.c: New test. + +2025-07-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add xlen check for + uint128_t. + * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u128.c: Enable + run test for rv64 only. + * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-run-1-u64-from-u128.c: Ditto. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u128.c: Ditto. + +2025-07-08 Marek Polacek <polacek@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/83469 + PR c++/93809 + * g++.dg/template/error45.C: Adjust dg-error. + * g++.dg/warn/Wredundant-tags-3.C: Remove xfail. + * g++.dg/parse/union1.C: New test. + * g++.dg/parse/union2.C: New test. + * g++.dg/parse/union3.C: New test. + * g++.dg/parse/union4.C: New test. + * g++.dg/parse/union5.C: New test. + * g++.dg/parse/union6.C: New test. + +2025-07-08 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/BGEUI-BLTUI-32k-64k.c: New. + +2025-07-08 Jakub Jelinek <jakub@redhat.com> + + PR c++/117784 + * g++.dg/cpp1z/decomp3.C (test): For constexpr structured binding + initialize from constexpr var instead of non-constexpr and expect + just a pedwarn for C++23 and older instead of error always. + * g++.dg/cpp26/decomp9.C (foo): Likewise. + * g++.dg/cpp26/decomp22.C: New test. + * g++.dg/cpp26/decomp23.C: New test. + * g++.dg/cpp26/decomp24.C: New test. + * g++.dg/cpp26/decomp25.C: New test. + +2025-07-08 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/stack-protector-guard-tls-1.c: New test. + +2025-07-08 Richard Biener <rguenther@suse.de> + + * gcc.dg/guality/guality.h (guality_main): Declare noipa. + (guality_check): Likewise. + +2025-07-08 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120461 + * gcc.target/riscv/rvv/xtheadvector/pr120461.c: New test. + +2025-07-08 Robin Dapp <rdapp@ventanamicro.com> + + PR target/113829 + * gcc.target/riscv/rvv/base/pr113829.c: New test. + +2025-07-08 Andreas Schwab <schwab@suse.de> + + PR target/120995 + * gcc.target/riscv/amo/zabha-zacas-atomic-cas.c: New test. + +2025-07-08 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp1y/lambda-generic-variadic.C: Change to 'compile'. + +2025-07-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/memcpy-pr120683-1.c (dg-options): Add + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. + * gcc.target/i386/memcpy-pr120683-2.c: Likewise. + * gcc.target/i386/memcpy-pr120683-3.c: Likewise. + * gcc.target/i386/memcpy-pr120683-4.c: Likewise. + * gcc.target/i386/memcpy-pr120683-5.c: Likewise. + * gcc.target/i386/memcpy-pr120683-6.c: Likewise. + * gcc.target/i386/memcpy-pr120683-7.c: Likewise. + * gcc.target/i386/memcpy-strategy-12.c: Likewise. + * gcc.target/i386/memset-pr120683-1.c: Likewise. + * gcc.target/i386/memset-pr120683-10.c: Likewise. + * gcc.target/i386/memset-pr120683-11.c: Likewise. + * gcc.target/i386/memset-pr120683-12.c: Likewise. + * gcc.target/i386/memset-pr120683-13.c: Likewise. + * gcc.target/i386/memset-pr120683-14.c: Likewise. + * gcc.target/i386/memset-pr120683-15.c: Likewise. + * gcc.target/i386/memset-pr120683-16.c: Likewise. + * gcc.target/i386/memset-pr120683-17.c: Likewise. + * gcc.target/i386/memset-pr120683-18.c: Likewise. + * gcc.target/i386/memset-pr120683-19.c: Likewise. + * gcc.target/i386/memset-pr120683-2.c: Likewise. + * gcc.target/i386/memset-pr120683-20.c: Likewise. + * gcc.target/i386/memset-pr120683-21.c: Likewise. + * gcc.target/i386/memset-pr120683-22.c: Likewise. + * gcc.target/i386/memset-pr120683-23.c: Likewise. + * gcc.target/i386/memset-pr120683-3.c: Likewise. + * gcc.target/i386/memset-pr120683-4.c: Likewise. + * gcc.target/i386/memset-pr120683-5.c: Likewise. + * gcc.target/i386/memset-pr120683-6.c: Likewise. + * gcc.target/i386/memset-pr120683-7.c: Likewise. + * gcc.target/i386/memset-pr120683-8.c: Likewise. + * gcc.target/i386/memset-pr120683-9.c: Likewise. + +2025-07-08 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/pattern-avg-1.c: Split test. + * gcc.target/s390/vector/pattern-mulh-1.c: Split test. + * gcc.target/s390/vector/pattern-avg-2.c: New test. + * gcc.target/s390/vector/pattern-mulh-2.c: New test. + +2025-07-08 Richard Biener <rguenther@suse.de> + + * gcc.target/i386/vect-mask-epilogue-1.c: New testcase. + * gcc.target/i386/vect-mask-epilogue-2.c: Likewise. + * gcc.target/i386/vect-epilogues-3.c: Adjust. + +2025-07-08 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120637 + * gfortran.dg/asan/finalize_1.f90: New test. + +2025-07-08 Jeff Law <jlaw@ventanamicro.com> + + * gcc.dg/torture/pr120654.c: Use __builtin variants of malloc and free. + +2025-07-08 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/amo/zalrsc-rvwmo-amo-add-int.c: Adjust expected + output. + * gcc.target/riscv/amo/zalrsc-ztso-amo-add-int.c: Likewise. + +2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + Revert: + 2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/flex-array-counted-by.c: Update test. + * gcc.dg/pointer-counted-by-1.c: New test. + * gcc.dg/pointer-counted-by-2.c: New test. + * gcc.dg/pointer-counted-by-3.c: New test. + * gcc.dg/pointer-counted-by.c: New test. + +2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + Revert: + 2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/pointer-counted-by-4-char.c: New test. + * gcc.dg/pointer-counted-by-4-float.c: New test. + * gcc.dg/pointer-counted-by-4-struct.c: New test. + * gcc.dg/pointer-counted-by-4-union.c: New test. + * gcc.dg/pointer-counted-by-4.c: New test. + * gcc.dg/pointer-counted-by-5.c: New test. + * gcc.dg/pointer-counted-by-6.c: New test. + * gcc.dg/pointer-counted-by-7.c: New test. + +2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + Revert: + 2025-07-07 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. + +2025-07-07 H.J. Lu <hjl.tools@gmail.com> + + PR testsuite/120881 + * lib/scanasm.exp (check-function-bodies): Allow "^[0-9]+:". + +2025-07-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120888 + * gcc.target/xtensa/pr120888-1.c: New test. + * gcc.target/xtensa/pr120888-2.c: Likewise. + +2025-07-07 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/fminmax-1.c: New test. + * gcc.target/s390/fminmax-2.c: New test. + +2025-07-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/120817 + * gcc.dg/vect/pr120817.c: Add SVE HW check. + +2025-07-07 Alfie Richards <alfie.richards@arm.com> + + PR c++/119498 + * g++.target/aarch64/pr119498.C: New test. + +2025-07-07 Jason Merrill <jason@redhat.com> + + PR c++/120917 + * g++.dg/concepts/auto7a.C: Add diagnostic. + * g++.dg/concepts/auto7b.C: New test. + * g++.dg/concepts/auto7c.C: New test. + * g++.dg/cpp1y/pr85076.C: Expect 'auto' error. + * g++.dg/concepts/pr67249.C: Likewise. + * g++.dg/cpp1y/lambda-generic-variadic.C: Likewise. + * g++.dg/cpp2a/concepts-pr67210.C: Likewise. + * g++.dg/concepts/pr67249a.C: New test. + * g++.dg/cpp1y/lambda-generic-variadic-a.C: New test. + * g++.dg/cpp2a/concepts-pr67210a.C: New test. + +2025-07-07 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.target/aarch64/popcnt9.c: Add +nosve to target pragma. + * gcc.target/aarch64/popcnt13.c: New test. + +2025-07-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120817 + * gcc.dg/vect/pr120817.c: New testcase. + +2025-07-07 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_arith_data.h: Add test data for + run test. + * gcc.target/riscv/sat/sat_u_mul-1-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-1-u8-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u16-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u32-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u64-from-u128.c: New test. + * gcc.target/riscv/sat/sat_u_mul-run-1-u8-from-u128.c: New test. + +2025-07-07 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats-3/tests/c9/c94001c.ada: Tweak delay statements. + * ada/acats-4/tests/c9/c94001c.ada: Likewise. + * ada/acats-4/tests/c9/c94006a.ada: Likewise. + * ada/acats-4/tests/c9/c94008c.ada: Likewise. + * ada/acats-4/tests/c9/c951002.a: Likewise. + * ada/acats-4/tests/c9/c954a01.a: Likewise. + * ada/acats-4/tests/c9/c940005.a: Tweak duration constants. + * ada/acats-4/tests/c9/c940007.a: Likewise. + * ada/acats-4/tests/c9/c96001a.ada: Likewise. + +2025-07-07 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/pattern-avg-1.c: New test. + * gcc.target/s390/vector/pattern-mulh-1.c: New test. + +2025-07-07 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/unpacked_fcm_1.c: New test. + * gcc.target/aarch64/sve/unpacked_fcm_2.c: Likewise. + +2025-07-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120670 + PR target/120683 + * gcc.target/i386/auto-init-padding-9.c: Updated. + * gcc.target/i386/memcpy-strategy-12.c: Likewise. + * gcc.target/i386/memset-strategy-25.c: Likewise. + * gcc.target/i386/memset-strategy-29.c: Likewise. + * gcc.target/i386/memset-strategy-30.c: Likewise. + * gcc.target/i386/memset-strategy-31.c: Likewise. + * gcc.target/i386/memcpy-pr120683-1.c: New test. + * gcc.target/i386/memcpy-pr120683-2.c: Likewise. + * gcc.target/i386/memcpy-pr120683-3.c: Likewise. + * gcc.target/i386/memcpy-pr120683-4.c: Likewise. + * gcc.target/i386/memcpy-pr120683-5.c: Likewise. + * gcc.target/i386/memcpy-pr120683-6.c: Likewise. + * gcc.target/i386/memcpy-pr120683-7.c: Likewise. + * gcc.target/i386/memset-pr120683-1.c: Likewise. + * gcc.target/i386/memset-pr120683-2.c: Likewise. + * gcc.target/i386/memset-pr120683-3.c: Likewise. + * gcc.target/i386/memset-pr120683-4.c: Likewise. + * gcc.target/i386/memset-pr120683-5.c: Likewise. + * gcc.target/i386/memset-pr120683-6.c: Likewise. + * gcc.target/i386/memset-pr120683-7.c: Likewise. + * gcc.target/i386/memset-pr120683-8.c: Likewise. + * gcc.target/i386/memset-pr120683-9.c: Likewise. + * gcc.target/i386/memset-pr120683-10.c: Likewise. + * gcc.target/i386/memset-pr120683-11.c: Likewise. + * gcc.target/i386/memset-pr120683-12.c: Likewise. + * gcc.target/i386/memset-pr120683-13.c: Likewise. + * gcc.target/i386/memset-pr120683-14.c: Likewise. + * gcc.target/i386/memset-pr120683-15.c: Likewise. + * gcc.target/i386/memset-pr120683-16.c: Likewise. + * gcc.target/i386/memset-pr120683-17.c: Likewise. + * gcc.target/i386/memset-pr120683-18.c: Likewise. + * gcc.target/i386/memset-pr120683-19.c: Likewise. + * gcc.target/i386/memset-pr120683-20.c: Likewise. + * gcc.target/i386/memset-pr120683-21.c: Likewise. + * gcc.target/i386/memset-pr120683-22.c: Likewise. + * gcc.target/i386/memset-pr120683-23.c: Likewise. + +2025-07-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/84009 + * g++.dg/cpp0x/range-for40.C: New test. + * g++.dg/cpp0x/range-for41.C: New test. + * g++.dg/cpp0x/range-for42.C: New test. + * g++.dg/cpp0x/range-for43.C: New test. + +2025-07-07 Mikael Morin <mikael@gcc.gnu.org> + + * gfortran.dg/move_alloc_20.f03: New test. + +2025-07-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120709 + * gcc.dg/crc-non-cst-poly-1.c: New test. + +2025-07-06 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120951 + * gcc.dg/torture/pr120951-1.c: New test. + +2025-07-06 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/clone-merge-1.c: + +2025-07-04 Vineet Gupta <vineetg@rivosinc.com> + + PR target/118241 + * gcc.target/riscv/pr118241-b.cc: New test. + +2025-07-04 Raphael Moreira Zinsly <rzinsly@ventanamicro.com> + + * gcc.target/sh/pr54236-2.c: Fix comments and expected output + +2025-07-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR c/118948 + * gcc.dg/pr118948-1.c: New test. + +2025-07-04 Jason Merrill <jason@redhat.com> + + PR c++/120575 + PR c++/116064 + * g++.dg/template/permissive-error3.C: New test. + +2025-07-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-07-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-i8.c: New test. + +2025-07-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120944 + * gcc.dg/torture/pr120944.c: New testcase. + +2025-07-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120927 + * gcc.dg/vect/vect-pr120927.c: New testcase. + * gcc.dg/vect/vect-pr120927-2.c: Likewise. + +2025-07-04 Jakub Jelinek <jakub@redhat.com> + + PR c/120837 + * gcc.dg/ubsan/pr120837.c: New test. + +2025-07-04 Xi Ruoyao <xry111@xry111.site> + + PR target/120807 + * gcc.c-torture/compile/pr120708.c: Rename to ... + * gcc.c-torture/compile/pr120807.c: ... here. + +2025-07-04 Xi Ruoyao <xry111@xry111.site> + + * gcc.c-torture/compile/pr120708.c: New test. + +2025-07-04 panciyan <panciyan@eswincomputing.com> + + * gcc.target/riscv/sat/sat_arith.h: Add signed scalar SAT_ADD IMM form2. + * gcc.target/riscv/sat/sat_s_add_imm-2-i16.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-2-i32.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-2-i64.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-2-i8.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-run-2-i16.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-run-2-i32.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-run-2-i64.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm-run-2-i8.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i16.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i32.c: New test. + * gcc.target/riscv/sat/sat_s_add_imm_type_check-2-i8.c: New test. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120716 + * g++.dg/cpp0x/lambda/lambda-constexpr3.C: New test. + * g++.dg/cpp0x/lambda/lambda-constexpr3a.C: New test. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120748 + * g++.dg/cpp2a/lambda-targ16.C: New test. + * g++.dg/cpp0x/this1.C: Adjust diagnostics. + +2025-07-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/120940 + * g++.dg/parse/pr120940.C: New test. + * g++.dg/warn/Wduplicated-branches9.C: New test. + +2025-07-03 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/vec-perm-merge-1.c: New test. + * gcc.target/s390/vector/vec-perm-pack-1.c: New test. + +2025-07-03 Thomas Schwinge <tschwinge@baylibre.com> + + * c-c++-common/gomp/omp_get_num_devices_initial_device.c: Fix. + * gfortran.dg/gomp/omp_get_num_devices_initial_device.f90: Likewise. + +2025-07-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.dg/ipa/pr120295.c (glob): Rename to glob_. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/cmpbr.c: Update tests. + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * gcc.target/aarch64/cmpbr.c: + +2025-07-03 Karl Meakin <karl.meakin@arm.com> + + * lib/target-supports.exp: Add `cmpbr` to the list of extensions. + * gcc.target/aarch64/cmpbr.c: New test. + +2025-07-03 Siddhesh Poyarekar <siddhesh@gotplt.org> + + PR tree-optimization/120780 + * gcc.dg/builtin-dynamic-object-size-pr120780.c: New test case. + +2025-07-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/120936 + * gcc.target/i386/pr120936-1.c: New test + * gcc.target/i386/pr120936-2.c: Likewise. + * gcc.target/i386/pr120936-3.c: Likewise. + * gcc.target/i386/pr120936-4.c: Likewise. + * gcc.target/i386/pr120936-5.c: Likewise. + * gcc.target/i386/pr120936-6.c: Likewise. + * gcc.target/i386/pr120936-7.c: Likewise. + * gcc.target/i386/pr120936-8.c: Likewise. + * gcc.target/i386/pr120936-9.c: Likewise. + * gcc.target/i386/pr120936-10.c: Likewise. + * gcc.target/i386/pr120936-11.c: Likewise. + * gcc.target/i386/pr120936-12.c: Likewise. + * gcc.target/i386/pr93492-3.c: Updated. + * gcc.target/i386/pr93492-5.c: Likewise. + +2025-07-03 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120843 + * gfortran.dg/coarray/coindexed_6.f90: Enhance test to have + coarray components covered. + +2025-07-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/120908 + * gcc.target/i386/pr120908.c: New test. + +2025-07-03 Jason Merrill <jason@redhat.com> + + PR c++/120684 + PR c++/118856 + * g++.dg/cpp23/range-for10.C: New test. + +2025-07-02 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/riscv/mcpu-xt-c908.c: Disable for E ABI variants. + * gcc.target/riscv/mcpu-xt-c908v.c: Ditto. + * gcc.target/riscv/mcpu-xt-c910.c: Ditto. + * gcc.target/riscv/mcpu-xt-c910v2.c: Ditto. + * gcc.target/riscv/mcpu-xt-c920.c: Ditto. + * gcc.target/riscv/mcpu-xt-c920v2.c: Ditto. + * gcc.target/riscv/pr118241.c: Ditto. + * gcc.target/riscv/pr120223.c: Ditto. + * gcc.target/riscv/rvv/base/pr119164.c: Disable for E ABI variants + and for 32-bit ISA. + +2025-07-02 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR target/120356 + * gcc.target/riscv/rvv/autovec/pr120356.c: New test. + +2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/ubsan/pointer-counted-by-bounds-2.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-3.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-4.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds-5.c: New test. + * gcc.dg/ubsan/pointer-counted-by-bounds.c: New test. + +2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/pointer-counted-by-4-char.c: New test. + * gcc.dg/pointer-counted-by-4-float.c: New test. + * gcc.dg/pointer-counted-by-4-struct.c: New test. + * gcc.dg/pointer-counted-by-4-union.c: New test. + * gcc.dg/pointer-counted-by-4.c: New test. + * gcc.dg/pointer-counted-by-5.c: New test. + * gcc.dg/pointer-counted-by-6.c: New test. + * gcc.dg/pointer-counted-by-7.c: New test. + +2025-07-01 Qing Zhao <qing.zhao@oracle.com> + + * gcc.dg/flex-array-counted-by.c: Update test. + * gcc.dg/pointer-counted-by-1.c: New test. + * gcc.dg/pointer-counted-by-2.c: New test. + * gcc.dg/pointer-counted-by-3.c: New test. + * gcc.dg/pointer-counted-by.c: New test. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR testsuite/120919 + * gcc.target/powerpc/builtin_altivec_tr_stxvr_runnable.c (main): Change + sc, ss, si and sll vars from scalars to arrays of 2 elements, + initialize and test just the first one though. + +2025-07-01 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/finalizable2.ads: New test. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + * gcc.target/s390/vector/vec-abs-emu.c: Add -fno-stack-protector + to dg-options. + * gcc.target/s390/vector/vec-max-emu.c: Likewise. + * gcc.target/s390/vector/vec-min-emu.c: Likewise. + +2025-07-01 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__2_.cob: + Append INTRINSIC keyword. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR c++/120471 + * g++.dg/ubsan/pr120471.C: New test. + * g++.dg/parse/pr120471.C: New test. + +2025-07-01 Remi Machet <rmachet@nvidia.com> + + * gcc.target/aarch64/simd/shrn2subhn.c: New test. + +2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120847 + * gfortran.dg/coarray/coindexed_7.f90: New test. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119318 + PR testsuite/120082 + * gcc.dg/ipa/pr119318.c (main): Expect different result on big endian + from little endian, on unexpected endianness or int/int128 sizes don't + test anything. Formatting fixes. + +2025-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/preserve-none-1.c (dg-options): Add + -fomit-frame-pointer. + +2025-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * g++.target/i386/memset-pr101366-1.C (dg-options): Add + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. + * g++.target/i386/memset-pr101366-2.C: Likewise. + * g++.target/i386/memset-pr118276-1a.C: Likewise. + * g++.target/i386/memset-pr118276-1b.C: Likewise. + * g++.target/i386/memset-pr118276-1c.C: Likewise. + * gcc.target/i386/memset-pr70308-1a.c: Likewise. + * gcc.target/i386/memset-strategy-25.c: Likewise. + * gcc.target/i386/memset-strategy-28.c: Likewise. + * gcc.target/i386/memset-strategy-29.c: Likewise. + * gcc.target/i386/memset-strategy-30.c: Likewise. + * gcc.target/i386/pr92080-17.c: Likewise. + * gcc.target/i386/memset-pr70308-1b.c: Likewise. Also add + -fomit-frame-pointer. + * g++.target/i386/memset-pr108585-1a.C: (dg-options): Add + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. Also add + -mno-stackrealign -fomit-frame-pointer. + * g++.target/i386/memset-pr108585-1b.C: Likewise. + +2025-07-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * c-c++-common/asan/pr120608-3.c: New test. + * c-c++-common/asan/pr120608-4.c: New test. + * g++.dg/asan/pr120608-3.C: New test. + * g++.dg/asan/pr120608-4.C: New test. + +2025-07-01 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120843 + * gfortran.dg/coarray/coindexed_6.f90: New test. + +2025-07-01 Yuao Ma <c8ef@outlook.com> + + * lib/target-supports.exp (foldable_pi_based_trigonometry): New + effective target. + * gcc.dg/torture/builtin-math-9.c: New test. + +2025-07-01 Alexandre Oliva <oliva@adacore.com> + + PR middle-end/120631 + * gcc.dg/dfp/pr120631.c: Drop overrider of dg-do default action. + * gcc.dg/dfp/bitint-9.c: Likewise. + * gcc.dg/dfp/bitint-10.c: Likewise. + +2025-06-30 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/120242 + PR rtl-optimization/120627 + PR rtl-optimization/120736 + PR rtl-optimization/120813 + * gcc.dg/torture/pr120242.c: New test. + * gcc.dg/torture/pr120627.c: Likewise. + * gcc.dg/torture/pr120736.c: Likewise. + * gcc.dg/torture/pr120813.c: Likewise. + +2025-06-30 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR target/120714 + * gcc.target/riscv/pr120714.c: New test. + +2025-06-30 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_gil_plugin.cc + (gil_diagnostic::get_meaning_for_state_change): Convert + diagnostic_event::meaning enums to enum class. + +2025-06-30 David Malcolm <dmalcolm@redhat.com> + + * c-c++-common/analyzer/out-of-bounds-diagram-1-json.c: Deleted test. + * c-c++-common/diagnostic-format-json-1.c: Deleted test. + * c-c++-common/diagnostic-format-json-2.c: Deleted test. + * c-c++-common/diagnostic-format-json-3.c: Deleted test. + * c-c++-common/diagnostic-format-json-4.c: Deleted test. + * c-c++-common/diagnostic-format-json-5.c: Deleted test. + * c-c++-common/diagnostic-format-json-file-1.c: Deleted test. + * c-c++-common/diagnostic-format-json-stderr-1.c: Deleted test. + * c-c++-common/pr106133.c: Deleted test. + * g++.dg/pr90462.C: Deleted test. + * gcc.dg/plugin/diagnostic-test-paths-3.c: Deleted test. + * gcc.dg/plugin/plugin.exp (plugin_test_list): Remove deleted + test. + * gfortran.dg/diagnostic-format-json-1.F90: Deleted test. + * gfortran.dg/diagnostic-format-json-2.F90: Deleted test. + * gfortran.dg/diagnostic-format-json-3.F90: Deleted test. + * gfortran.dg/diagnostic-format-json-pr105916.F90: Deleted test. + +2025-06-30 Christopher Bazley <chris.bazley@arm.com> + + * gcc.target/aarch64/sve/adr_7.c: Fix regular expressions. + +2025-06-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vssubu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vssub-run-1-u8.c: New test. + +2025-06-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u16.c: + Update the asm check due to cost model change. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u32.c: + Diito. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u8.c: + Ditto. + +2025-06-30 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/vsetvl/avl_single-21.c: Ignore -Oz. + * gcc.target/riscv/rvv/vsetvl/avl_single-26.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/avl_single-36.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/avl_single-39.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/avl_single-41.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvl-22.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvlmax-15.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvlmax-2.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvlmax-4.c: Ditto. + +2025-06-30 Kito Cheng <kito.cheng@sifive.com> + + PR target/120659 + * gcc.target/riscv/pr120659.c: New test. + +2025-06-30 Richard Biener <rguenther@suse.de> + + * gcc.target/i386/vect-pr82426.c: Pass explicit -ffp-contract=fast. + * gcc.target/i386/vect-pr82426-2.c: New testcase variant with + -ffp-contract=on. + +2025-06-30 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfnmacc and + vfnmsac. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h (DEF_VF_MULOP_CASE_1): + Fix return type. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmacc-run-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsac-run-1-f64.c: New test. + +2025-06-30 Jakub Jelinek <jakub@redhat.com> + + PR c/120520 + PR c/117023 + * gcc.dg/nonnull-9.c: Tweak for 3 argument nonnull_if_nonzero + attribute support, add further tests. + * gcc.dg/nonnull-12.c: New test. + * gcc.dg/nonnull-13.c: New test. + * gcc.dg/nonnull-14.c: New test. + * c-c++-common/ubsan/nonnull-8.c: New test. + * c-c++-common/ubsan/nonnull-9.c: New test. + +2025-06-30 H.J. Lu <hjl.tools@gmail.com> + + PR target/120840 + * gcc.target/i386/no-callee-saved-1.c: Updated. + * gcc.target/i386/no-callee-saved-2.c: Likewise. + * gcc.target/i386/no-callee-saved-7.c: Likewise. + * gcc.target/i386/no-callee-saved-8.c: Likewise. + * gcc.target/i386/no-callee-saved-9.c: Likewise. + * gcc.target/i386/no-callee-saved-10.c: Likewise. + * gcc.target/i386/no-callee-saved-18.c: Likewise. + * gcc.target/i386/no-callee-saved-19a.c: Likewise. + * gcc.target/i386/no-callee-saved-19c.c: Likewise. + * gcc.target/i386/no-callee-saved-19d.c: Likewise. + * gcc.target/i386/pr119784a.c: Likewise. + * gcc.target/i386/preserve-none-6.c: Likewise. + * gcc.target/i386/preserve-none-7.c: Likewise. + * gcc.target/i386/preserve-none-12.c: Likewise. + * gcc.target/i386/preserve-none-13.c: Likewise. + * gcc.target/i386/preserve-none-14.c: Likewise. + * gcc.target/i386/preserve-none-15.c: Likewise. + * gcc.target/i386/preserve-none-23.c: Likewise. + * gcc.target/i386/pr120840-1a.c: New test. + * gcc.target/i386/pr120840-1b.c: Likewise. + * gcc.target/i386/pr120840-1c.c: Likewise. + * gcc.target/i386/pr120840-1d.c: Likewise. + +2025-06-29 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/117203 + * gm2/isolib/run/pass/testdelete2.mod: New test. + * gm2/pimlib/logitech/run/pass/testdelete2.mod: New test. + * gm2/pimlib/run/pass/testdelete.mod: New test. + +2025-06-29 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/shrink_wrap_separate_check_lea.c: Scan + "lea(l|q)", instead of "leaq". + +2025-06-28 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/concat6.adb: New test. + +2025-06-28 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120644 + * g++.dg/modules/auto-7.h: New test. + * g++.dg/modules/auto-7_a.H: New test. + * g++.dg/modules/auto-7_b.C: New test. + +2025-06-28 Lili Cui <lili.cui@intel.com> + + PR target/120818 + * g++.target/i386/shrink_wrap_separate.C: Relax the check. + +2025-06-28 Jan Hubicka <hubicka@ucw.cz> + Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * gcc.dg/tree-prof/clone-test.c: New test. + * gcc.dg/tree-prof/clone-merge-1.c: Updae template. + +2025-06-27 Marek Polacek <polacek@redhat.com> + + PR c++/120756 + * g++.dg/warn/deprecated-22.C: New test. + +2025-06-27 Jason Merrill <jason@redhat.com> + + * g++.dg/abi/mangle81.C: Add -fno-implicit-constexpr. + * g++.dg/init/vbase1.C: Likewise. + * g++.dg/ipa/ipa-icf-4.C: Likewise. + +2025-06-27 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/sso20.adb: New test. + +2025-06-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/120777 + * g++.dg/cpp26/constexpr-virt-inherit1.C: New test. + * g++.dg/cpp26/constexpr-virt-inherit2.C: New test. + * g++.dg/cpp26/constexpr-virt-inherit3.C: New test. + * g++.dg/cpp26/feat-cxx26.C: Add __cpp_constexpr_virtual_inheritance + tersts. + * g++.dg/cpp2a/constexpr-dtor3.C: Don't expect one error for C++26. + * g++.dg/cpp2a/constexpr-dtor16.C: Don't expect errors for C++26. + * g++.dg/cpp2a/constexpr-dynamic10.C: Likewise. + * g++.dg/cpp0x/constexpr-ice21.C: Likewise. + * g++.dg/cpp0x/constexpr-ice4.C: Likewise. + * g++.dg/abi/mangle1.C: Guard the test on c++23_down. + * g++.dg/abi/mangle81.C: New test. + * g++.dg/ipa/ipa-icf-4.C (A::A): For + __cpp_constexpr_virtual_inheritance >= 202506L add user provided + non-constexpr constructor. + +2025-06-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120784 + * gfortran.dg/interface_63.f90: Extend testcase. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98735 + PR c++/118904 + * g++.dg/modules/src-loc-1.h: New test. + * g++.dg/modules/src-loc-1_a.H: New test. + * g++.dg/modules/src-loc-1_b.C: New test. + * g++.dg/modules/src-loc-1_c.C: New test. + * g++.dg/modules/ubsan-1_a.C: New test. + * g++.dg/modules/ubsan-1_b.C: New test. + * g++.dg/ubsan/module-1-aux.cc: New test. + * g++.dg/ubsan/module-1.C: New test. + +2025-06-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120040 + * g++.dg/modules/pr120040_a.C: New test. + * g++.dg/modules/pr120040_b.C: New test. + +2025-06-27 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-crossmodule-1.c: Update template. + +2025-06-27 Jeff Law <jlaw@ventanamicro.com> + + PR target/119971 + * gcc.target/riscv/pr119971.c: Fix typo. + +2025-06-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120808 + * gcc.dg/vect/bb-slp-pr120808.c: Now also expect FMADDSUB + patterns to be matched. + +2025-06-27 H.J. Lu <hjl.tools@gmail.com> + + PR target/120830 + * g++.target/i386/pr120830.C: New test. + +2025-06-26 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/pru/mov64-subreg-1.c: New test. + * gcc.target/pru/mov64-subreg-2.c: New test. + +2025-06-26 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/120809 + * gcc.dg/analyzer/state-diagram-5.c: Split out into... + * gcc.dg/analyzer/state-diagram-5-html.c: ...this, adding + dg-require-dot... + * gcc.dg/analyzer/state-diagram-5-sarif.c: ...and this. + +2025-06-26 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp26/type-order1.C: New test. + * g++.dg/cpp26/type-order2.C: New test. + * g++.dg/cpp26/type-order3.C: New test. + +2025-06-26 Uros Bizjak <ubizjak@gmail.com> + + PR target/120719 + * gcc.target/i386/crc-builtin-crc32.c: New test. + +2025-06-26 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-crossmodule-1.c: New test. + * gcc.dg/tree-prof/afdo-crossmodule-1b.c: New test. + +2025-06-26 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120711 + * gfortran.dg/asan/array_constructor_1.f90: New test. + +2025-06-26 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/indir-call-prof-2.c: Update template. + +2025-06-26 H.J. Lu <hjl.tools@gmail.com> + + PR target/120819 + * g++.target/i386/pr120819.C: New test. + +2025-06-26 H.J. Lu <hjl.tools@gmail.com> + + PR target/119628 + * gcc.target/i386/no-callee-saved-3.c: Adjust error location. + * gcc.target/i386/no-callee-saved-19a.c: New test. + * gcc.target/i386/no-callee-saved-19b.c: Likewise. + * gcc.target/i386/no-callee-saved-19c.c: Likewise. + * gcc.target/i386/no-callee-saved-19d.c: Likewise. + * gcc.target/i386/no-callee-saved-19e.c: Likewise. + * gcc.target/i386/preserve-none-1.c: Likewise. + * gcc.target/i386/preserve-none-2.c: Likewise. + * gcc.target/i386/preserve-none-3.c: Likewise. + * gcc.target/i386/preserve-none-4.c: Likewise. + * gcc.target/i386/preserve-none-5.c: Likewise. + * gcc.target/i386/preserve-none-6.c: Likewise. + * gcc.target/i386/preserve-none-7.c: Likewise. + * gcc.target/i386/preserve-none-8.c: Likewise. + * gcc.target/i386/preserve-none-9.c: Likewise. + * gcc.target/i386/preserve-none-10.c: Likewise. + * gcc.target/i386/preserve-none-11.c: Likewise. + * gcc.target/i386/preserve-none-12.c: Likewise. + * gcc.target/i386/preserve-none-13.c: Likewise. + * gcc.target/i386/preserve-none-14.c: Likewise. + * gcc.target/i386/preserve-none-15.c: Likewise. + * gcc.target/i386/preserve-none-16.c: Likewise. + * gcc.target/i386/preserve-none-17.c: Likewise. + * gcc.target/i386/preserve-none-18.c: Likewise. + * gcc.target/i386/preserve-none-19.c: Likewise. + * gcc.target/i386/preserve-none-20.c: Likewise. + * gcc.target/i386/preserve-none-21.c: Likewise. + * gcc.target/i386/preserve-none-22.c: Likewise. + * gcc.target/i386/preserve-none-23.c: Likewise. + * gcc.target/i386/preserve-none-24.c: Likewise. + * gcc.target/i386/preserve-none-25.c: Likewise. + * gcc.target/i386/preserve-none-26.c: Likewise. + * gcc.target/i386/preserve-none-27.c: Likewise. + * gcc.target/i386/preserve-none-28.c: Likewise. + * gcc.target/i386/preserve-none-29.c: Likewise. + * gcc.target/i386/preserve-none-30a.c: Likewise. + * gcc.target/i386/preserve-none-30b.c: Likewise. + +2025-06-25 Luis Silva <luiss@synopsys.com> + + * gcc.target/arc/mult-cmp0.c: New test. + +2025-06-25 Luis Silva <luiss@synopsys.com> + + * gcc.target/arc/overflow-1.c: Replace mov.hs with rlc. + +2025-06-25 Shahab Vahedi <shahab@synopsys.com> + + * gcc.target/arc/overflow-2.c: New file. + +2025-06-25 Shahab Vahedi <shahab@synopsys.com> + + * gcc.target/arc/overflow-1.c: New file + +2025-06-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/109892 + * gcc.dg/vect/vect-reduc-fma-1.c: New testcase. + * gcc.dg/vect/vect-reduc-fma-2.c: Likewise. + * gcc.dg/vect/vect-reduc-fma-3.c: Likewise. + +2025-06-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120808 + * gcc.dg/vect/bb-slp-pr120808.c: New testcase. + +2025-06-25 Alfie Richards <alfie.richards@arm.com> + + * gcc.target/aarch64/sve/adr_7.c: New test. + +2025-06-25 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-rva23s.c: New test. + * gcc.target/riscv/arch-rvb23s.c: New test. + +2025-06-24 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfmacc and vfmsac. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for acc + variants. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Define + TEST_OUT. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmacc-run-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsac-run-1-f64.c: New test. + +2025-06-24 Harald Anlauf <anlauf@gmx.de> + Jerry DeLisle <jvdelisle@gcc.gnu.org> + Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/120743 + * gfortran.dg/pr120743.f90: New test. + +2025-06-24 Jakub Jelinek <jakub@redhat.com> + + PR c++/120773 + * g++.dg/parse/linkage5.C: Don't expect error on + extern "C++" int main ();. + * g++.dg/parse/linkage7.C: New test. + * g++.dg/parse/linkage8.C: New test. + * g++.dg/modules/main-2.C: New test. + * g++.dg/modules/main-3.C: New test. + +2025-06-24 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/vec-extract-1.c: Fix test on arch11. + * gcc.target/s390/vector/vec-set-1.c: Run test on arch11. + * gcc.target/s390/vector/vec-extract-2.c: New test. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/autovec_param_asimd-only_2.c: New test. + * gcc.target/aarch64/autovec_param_default_2.c: New test. + * gcc.target/aarch64/autovec_param_prefer-asimd_2.c: New test. + * gcc.target/aarch64/autovec_param_prefer-sve_2.c: New test. + * gcc.target/aarch64/autovec_param_sve-only_2.c: New test. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/cost_model_17.c: New test. + * gcc.target/aarch64/sve/cost_model_18.c: New test. + +2025-06-24 Mikael Morin <morin-mikael@orange.fr> + + * gfortran.dg/select_type_51.f90: New test. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/unroll-vect.c: New test. + +2025-06-24 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/i386/pr64110.c: Update testcase. + +2025-06-24 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/keylocker-aesdecwide128kl.c: Updated to expect + movdqa instead pxor. + * gcc.target/i386/keylocker-aesdecwide256kl.c: Likewise. + * gcc.target/i386/keylocker-aesencwide128kl.c: Likewise. + * gcc.target/i386/keylocker-aesencwide256kl.c: Likewise. + * gcc.target/i386/pr92080-4.c: New test. + * gcc.target/i386/pr92080-5.c: Likewise. + * gcc.target/i386/pr92080-6.c: Likewise. + * gcc.target/i386/pr92080-7.c: Likewise. + * gcc.target/i386/pr92080-8.c: Likewise. + * gcc.target/i386/pr92080-9.c: Likewise. + * gcc.target/i386/pr92080-10.c: Likewise. + * gcc.target/i386/pr92080-11.c: Likewise. + * gcc.target/i386/pr92080-12.c: Likewise. + * gcc.target/i386/pr92080-13.c: Likewise. + * gcc.target/i386/pr92080-14.c: Likewise. + * gcc.target/i386/pr92080-15.c: Likewise. + * gcc.target/i386/pr92080-16.c: Likewise. + * gcc.target/i386/pr92080-17.c: Likewise. + * gcc.target/i386/pr92080-18.c: Likewise. + * gcc.target/i386/pr92080-19.c: Likewise. + * gcc.target/i386/pr92080-20.c: Likewise. + +2025-06-24 H.J. Lu <hjl.tools@gmail.com> + + PR target/70308 + PR target/101366 + PR target/102294 + PR target/108585 + PR target/118276 + PR target/119596 + PR target/119703 + PR target/119704 + * g++.target/i386/memset-pr101366-1.C: New test. + * g++.target/i386/memset-pr101366-2.C: Likewise. + * g++.target/i386/memset-pr108585-1a.C: Likewise. + * g++.target/i386/memset-pr108585-1b.C: Likewise. + * g++.target/i386/memset-pr118276-1a.C: Likewise. + * g++.target/i386/memset-pr118276-1b.C: Likewise. + * g++.target/i386/memset-pr118276-1c.C: Likewise. + * gcc.target/i386/memcpy-strategy-12.c: Likewise. + * gcc.target/i386/memcpy-strategy-13.c: Likewise. + * gcc.target/i386/memset-pr70308-1a.c: Likewise. + * gcc.target/i386/memset-pr70308-1b.c: Likewise. + * gcc.target/i386/memset-strategy-25.c: Likewise. + * gcc.target/i386/memset-strategy-26.c: Likewise. + * gcc.target/i386/memset-strategy-27.c: Likewise. + * gcc.target/i386/memset-strategy-28.c: Likewise. + * gcc.target/i386/memset-strategy-29.c: Likewise. + * gcc.target/i386/memset-strategy-30.c: Likewise. + * gcc.target/i386/memset-strategy-31.c: Likewise. + * gcc.target/i386/auto-init-padding-3.c: Expect XMM stores. + * gcc.target/i386/auto-init-padding-9.c: Likewise. + * gcc.target/i386/mvc17.c: Fail with "rep mov" + * gcc.target/i386/pr111657-1.c: Scan for unrolled loop. Fail + with "rep mov". + * gcc.target/i386/shrink_wrap_1.c: Also pass + -mmemset-strategy=rep_8byte:-1:align. + * gcc.target/i386/sw-1.c: Also pass -mstringop-strategy=rep_byte. + +2025-06-24 Lili Cui <lili.cui@intel.com> + + PR target/120741 + * gcc.target/i386/pr120741.c: New test. + * gcc.target/i386/shrink-wrap-separate-mingw.c: Likewise. + +2025-06-23 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + PR testsuite/116163 + PR sarif-replay/120792 + * sarif-replay.dg/2.1.0-valid/signal-1-check-html.py: New test + script. + * sarif-replay.dg/2.1.0-valid/signal-1.c.sarif: Add html and sarif + generation to options. Invoke the new script to verify that HTML + and SARIF is generated. + * sarif-replay.dg/2.1.0-valid/signal-1-check-sarif-roundtrip.py: New file. + +2025-06-23 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/goacc/acc-wait-1.c: New test. + * gfortran.dg/goacc/acc-wait-1.f90: New test. + +2025-06-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120784 + * gfortran.dg/interface_63.f90: New test. + +2025-06-23 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * g++.dg/analyzer/state-diagram.C: New test. + * gcc.dg/analyzer/analyzer-decls.h (__analyzer_dump_dot): New + decl. + (__analyzer_dump_xml): New decl. + * gcc.dg/analyzer/state-diagram-1-sarif.py: New test script. + * gcc.dg/analyzer/state-diagram-1.c: New test. + * gcc.dg/analyzer/state-diagram-2.c: New test. + * gcc.dg/analyzer/state-diagram-3.c: New test. + * gcc.dg/analyzer/state-diagram-4.c: New test. + * gcc.dg/analyzer/state-diagram-5-html.py: New test script. + * gcc.dg/analyzer/state-diagram-5-sarif.py: New test script. + * gcc.dg/analyzer/state-diagram-5.c: New test. + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Define INCLUDE_STRING. + * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + * lib/htmltest.py (ns): Add SVG namespace. + * lib/sarif.py (get_result_by_index): New. + (get_xml_state): New. + +2025-06-23 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vsaddu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-23 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsadd-run-1-u8.c: New test. + +2025-06-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * c-c++-common/asan/pr120608-1.c: New test. + * c-c++-common/asan/pr120608-2.c: New test. + +2025-06-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120608 + * g++.dg/asan/pr120608.C: New test. + +2025-06-23 Pengfei Li <Pengfei.Li2@arm.com> + + * gcc.dg/vect/vect-early-break_133_pfa6.c: Adjust test. + +2025-06-23 Mikael Morin <morin-mikael@orange.fr> + + * gfortran.dg/non_lvalue_1.f90: New test. + +2025-06-23 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120721 + * g++.dg/torture/pr120721.C: New test. + +2025-06-23 H.J. Lu <hjl.tools@gmail.com> + + PR target/120728 + * gcc.target/i386/avx512bw-vmovdqu16-1.c: Scan vmovdqu for + non-EVEX register operands. + * gcc.target/i386/avx512bw-vmovdqu8-1.c: Likewise. + * gcc.target/i386/avx512fp16-13.c: Likewise. + * gcc.target/i386/pr100865-10b.c: Likewise. + * gcc.target/i386/pr100865-3.c: Likewise. + * gcc.target/i386/pr100865-4b.c: Likewise. + * gcc.target/i386/pr100865-5b.c: Likewise. + * gcc.target/i386/pr90773-15.c: Likewise. + * gcc.target/i386/pr90773-16.c: Likewise. + * gcc.target/i386/pr90773-17.c: Likewise. + * gcc.target/i386/pr95483-5.c: Likewise. + * gcc.target/i386/pr120728.c: New test. + +2025-06-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/119830 + * gcc.target/riscv/pr119830.c: New test. + +2025-06-22 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120731 + * gm2/pimlib/logitech/run/pass/teststrings.mod: New test. + +2025-06-21 Jeff Law <jlaw@ventanamicro.com> + + PR target/118241 + * gcc.target/riscv/pr118241.c: New test. + +2025-06-21 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: Update template. + * gcc.dg/tree-prof/indir-call-prof-2.c: Update template. + +2025-06-21 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: Update template. + * gcc.dg/tree-prof/indir-call-prof-2.c: Likewise. + * gcc.dg/tree-prof/afdo-inline.c: New test. + +2025-06-21 Pan Li <pan2.li@intel.com> + + PR target/120652 + * gcc.target/riscv/rvv/autovec/pr120652-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr120652-2.c: New test. + * gcc.target/riscv/rvv/autovec/pr120652-3.c: New test. + * gcc.target/riscv/rvv/autovec/pr120652.h: New test. + +2025-06-20 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120701 + * gcc.dg/pr120701.c: New. + +2025-06-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120654 + * gcc.dg/torture/pr120654.c: New testcase. + +2025-06-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/120708 + * gcc.target/i386/memcpy-pr120708-1.c: New test. + * gcc.target/i386/memcpy-pr120708-2.c: Likewise. + * gcc.target/i386/memcpy-pr120708-3.c: Likewise. + * gcc.target/i386/memcpy-pr120708-4.c: Likewise. + * gcc.target/i386/memcpy-pr120708-5.c: Likewise. + * gcc.target/i386/memcpy-pr120708-6.c: Likewise. + * gcc.target/i386/memset-pr120708-1.c: Likewise. + * gcc.target/i386/memset-pr120708-2.c: Likewise. + * gcc.target/i386/memcpy-strategy-1.c: Drop dg-skip-if. Replace + -march=atom with -mno-avx -msse2 -mtune=generic + -mtune-ctrl=^sse_typeless_stores. + * gcc.target/i386/memcpy-strategy-2.c: Likewise. + * gcc.target/i386/memcpy-vector_loop-1.c: Likewise. + * gcc.target/i386/memcpy-vector_loop-2.c: Likewise. + * gcc.target/i386/memset-vector_loop-1.c: Likewise. + * gcc.target/i386/memset-vector_loop-2.c: Likewise. + +2025-06-20 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Force rocket tuning. + * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-17.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-18.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-19.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-20.c: Likewise. + +2025-06-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vminu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macors. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add + test data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-u8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-u8.c: New test. + +2025-06-19 Jakub Jelinek <jakub@redhat.com> + + PR target/120689 + * gcc.target/i386/pr120689.c: New test. + +2025-06-19 Mikael Morin <mikael@gcc.gnu.org> + + PR fortran/120713 + * gfortran.dg/save_alloc_character_1.f90: New test. + +2025-06-19 H.J. Lu <hjl.tools@gmail.com> + + PR target/120427 + * gcc.target/i386/cold-attribute-4.c: Compile with -Oz. + * gcc.target/i386/pr120427-1.c: New test. + * gcc.target/i386/pr120427-2.c: Likewise. + * gcc.target/i386/pr120427-3.c: Likewise. + * gcc.target/i386/pr120427-4.c: Likewise. + +2025-06-19 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/zicond-primitiveSemantics_compare_reg_reg_return_reg_reg.c: New test. + +2025-06-19 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120631 + * gcc.dg/dfp/bitint-10.c: New test. + * gcc.dg/dfp/pr120631.c: New test. + +2025-06-19 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/zilsd-code-gen-split-subreg-1.c: New test. + * gcc.target/riscv/zilsd-code-gen-split-subreg-2.c: New test. + +2025-06-19 Lili Cui <lili.cui@intel.com> + + PR target/120697 + * gcc.target/i386/stack-clash-protection.c: New test. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/pr119039-1.c: Add space in search criteria. + +2025-06-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/115908 + PR c++/118074 + PR c++/95615 + * g++.dg/coroutines/pr115908.C: Move to... + * g++.dg/coroutines/torture/pr115908.C: ...here. + * g++.dg/coroutines/torture/pr95615-02.C: Move to... + * g++.dg/coroutines/torture/pr95615-01-promise-ctor-throws.C: ...here. + * g++.dg/coroutines/torture/pr95615-03.C: Move to... + * g++.dg/coroutines/torture/pr95615-02-get-return-object-throws.C: ...here. + * g++.dg/coroutines/torture/pr95615-01.C: Move to... + * g++.dg/coroutines/torture/pr95615-03-initial-suspend-throws.C: ...here. + * g++.dg/coroutines/torture/pr95615-04.C: Move to... + * g++.dg/coroutines/torture/pr95615-04-initial-await-ready-throws.C: ...here. + * g++.dg/coroutines/torture/pr95615-05.C: Move to... + * g++.dg/coroutines/torture/pr95615-05-initial-await-suspend-throws.C: ...here. + * g++.dg/coroutines/torture/pr95615.inc: Add more cases and ensure that the + code completes properly when no exceptions are thrown. + * g++.dg/coroutines/torture/pr95615-00-nothing-throws.C: New test. + * g++.dg/coroutines/torture/pr95615-06-initial-await-resume-throws.C: New test. + * g++.dg/coroutines/torture/pr95615-07-body-throws.C: New test. + * g++.dg/coroutines/torture/pr95615-08-initial-suspend-throws-uhe-throws.C: New test. + * g++.dg/coroutines/torture/pr95615-09-body-throws-uhe-throws.C: New test. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119039 + * gcc.dg/pr119039-2.c: New. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119039 + * gcc.dg/pr119039-1.c: New. + * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust thread counts. + +2025-06-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/82480 + * gfortran.dg/stat_3.f90: New test. + +2025-06-18 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120631 + * gcc.dg/dfp/bitint-9.c: New test. + +2025-06-18 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vmin.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-06-18 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmin-run-2-i8.c: New test. + +2025-06-18 Lili Cui <lili.cui@intel.com> + Michael Matz <matz@suse.de> + + * gcc.target/x86_64/abi/callabi/leaf-2.c: Adjust the test. + * gcc.target/i386/interrupt-16.c: Likewise. + * gfortran.dg/guality/arg1.f90: Likewise. + * gcc.target/i386/avx10_2-comibf-1.c: Likewise. + * g++.target/i386/shrink_wrap_separate.C: New test. + * gcc.target/i386/shrink_wrap_separate_check_lea.c: Likewise. + +2025-06-18 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120661 + * gcc.dg/pr120661-1.c: New. + * gcc.dg/pr120661-2.c: New. + +2025-06-17 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/aggr8.ads: New test. + +2025-06-17 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120673 + * gm2/pim/fail/badmodvar.mod: New test. + * gm2/pim/fail/cyclictypes.mod: New test. + * gm2/pim/fail/cyclictypes2.mod: New test. + * gm2/pim/fail/cyclictypes4.mod: New test. + +2025-06-17 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/tree-prof/afdo-vpt-earlyinline.c: New test. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + * g++.dg/coroutines/assume.C: New test. + +2025-06-17 Umesh Kalappa <ukalappa.mips@gmail.com> + + * gcc.target/riscv/zalrsc.c: New test. + +2025-06-17 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/warn-spec-3_a.C: New test. + * g++.dg/modules/warn-spec-3_b.C: New test. + * g++.dg/modules/warn-spec-3_c.C: New test. + +2025-06-17 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120677 + * gcc.c-torture/execute/pr120677.c: New test. + +2025-06-17 Richard Sandiford <richard.sandiford@arm.com> + + PR target/113027 + * gcc.target/aarch64/pr113027-1.c: New test. + * gcc.target/aarch64/pr113027-2.c: Likewise. + * gcc.target/aarch64/pr113027-3.c: Likewise. + * gcc.target/aarch64/pr113027-4.c: Likewise. + * gcc.target/aarch64/pr113027-5.c: Likewise. + * gcc.target/aarch64/pr113027-6.c: Likewise. + * gcc.target/aarch64/pr113027-7.c: Likewise. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + * g++.dg/coroutines/unevaluated.C: New test. + +2025-06-17 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120273 + * g++.dg/coroutines/pr120273.C: New test. + +2025-06-17 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/jump-table-large-code-model.c: Adding + -fno-pie. + * gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv-nofm.c: Ditto. + +2025-06-16 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/pack_fcvt_signed_1.c: Disable the aarch64 vector + cost model to preserve this test. + * gcc.target/aarch64/sve/pack_fcvt_unsigned_1.c: Likewise. + * gcc.target/aarch64/sve/pack_float_1.c: Likewise. + * gcc.target/aarch64/sve/unpack_float_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cvtf_1.c: New test. + * gcc.target/aarch64/sve/unpacked_cvtf_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_cvtf_3.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fcvt_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fcvt_2.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fcvtz_1.c: Likewise. + * gcc.target/aarch64/sve/unpacked_fcvtz_2.c: Likewise. + +2025-06-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/51961 + * gfortran.dg/allocate_with_mold_5.f90: New test. + +2025-06-16 Jason Merrill <jason@redhat.com> + + * g++.dg/template/friend87.C + * g++.dg/cpp2a/concepts-complete1.C + * g++.dg/cpp2a/concepts-complete2.C + * g++.dg/cpp2a/concepts-complete3.C + * g++.dg/cpp2a/concepts-complete4.C: Expect -Wsfinae-incomplete. + +2025-06-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Leverage + helper macros to avoid code duplication. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add + signed and unsigned vx combine test macros. + +2025-06-16 Matthieu Longo <matthieu.longo@arm.com> + Srinath Parvathaneni <srinath.parvathaneni@arm.com> + + * lib/target-supports.exp: + (check_effective_target_aarch64_gas_has_build_attributes): New checker. + * gcc.target/aarch64/build-attributes/aarch64-build-attributes.exp: New DejaGNU file. + * gcc.target/aarch64/build-attributes/build-attribute-bti.c: New test. + * gcc.target/aarch64/build-attributes/build-attribute-gcs.c: New test. + * gcc.target/aarch64/build-attributes/build-attribute-pac.c: New test. + * gcc.target/aarch64/build-attributes/build-attribute-standard.c: New test. + * gcc.target/aarch64/build-attributes/no-build-attribute-bti.c: New test. + * gcc.target/aarch64/build-attributes/no-build-attribute-gcs.c: New test. + * gcc.target/aarch64/build-attributes/no-build-attribute-pac.c: New test. + * gcc.target/aarch64/build-attributes/no-build-attribute-standard.c: New test. + +2025-06-16 yxj-github-437 <2457369732@qq.com> + + * g++.dg/cpp0x/variadic-crash7.C: New test. + +2025-06-16 Matthieu Longo <matthieu.longo@arm.com> + + * gcc.target/aarch64/bti-1.c: Emit assembly comments, and update + test assertion. + +2025-06-16 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-53.c: Update testcase. + +2025-06-16 Takayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp> + + * gcc.target/xtensa/elim_GP_regmove_0.c: Remove. + * gcc.target/xtensa/elim_GP_regmove_1.c: Remove. + +2025-06-15 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vmaxu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-15 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vmaxu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-u8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-u8.c: New test. + +2025-06-14 Georg-Johann Lay <avr@gjlay.de> + + Backported from master: + 2025-06-14 Georg-Johann Lay <avr@gjlay.de> + + PR rtl-optimization/120423 + PR rtl-optimization/116389 + * gcc.target/avr/torture/pr120423-1.c: New test. + * gcc.target/avr/torture/pr120423-2.c: New test. + * gcc.target/avr/torture/pr120423-116389.c: New test. + +2025-06-14 Iain Sandoe <iain@sandoe.co.uk> + + * g++.dg/coroutines/coro1-missing-await-method.C: Adjust for + improved diagnostics. + * g++.dg/coroutines/coro-missing-final-suspend.C: Likewise. + * g++.dg/coroutines/pr104051.C: Move to... + * g++.dg/coroutines/pr104051-0.C: ...here. + * g++.dg/coroutines/pr104051-1.C: New test. + +2025-06-13 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/116775 + * g++.dg/coroutines/pr116775.C: New test. + +2025-06-13 Spencer Abson <spencer.abson@arm.com> + + PR target/118150 + * gcc.target/aarch64/sve/acle/general/not_1.c: New test. + +2025-06-13 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR testsuite/119862 + * gcc.dg/pr119160.c: Added empty definitions for + `__cyg_profile_func_enter` and `__cyg_profile_func_exit` + functions. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120638 + * gcc.dg/pr120638.c: New test. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120630 + * gcc.dg/pr120630.c: New test. + * gcc.c-torture/execute/pr120630.c: New test. + +2025-06-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120629 + * g++.dg/opt/pr120629.C: New test. + +2025-06-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vmax.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-06-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vmax.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-06-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for max func 1 vmax.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-2-i8.c: New test. + +2025-06-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for max func 1 vmax.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmax-run-1-i8.c: New test. + +2025-06-12 Richard Sandiford <richard.sandiford@arm.com> + + PR target/120624 + * gcc.target/aarch64/sme/za_state_7.c: New test. + +2025-06-12 Georg-Johann Lay <avr@gjlay.de> + + PR middle-end/117811 + PR testsuite/52641 + * gcc.dg/torture/pr117811.c: Fix for int < 32 bit. + +2025-06-12 Gwenole Beauchesne <gb.devel@gmail.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/41201 + PR c++/48026 + * c-c++-common/pragma-optimize-1.c: New test. + * g++.target/i386/vect-pragma-target-1.C: New test. + * g++.target/i386/vect-pragma-target-2.C: New test. + * gcc.target/i386/vect-pragma-target-1.c: New test. + * gcc.target/i386/vect-pragma-target-2.c: New test. + +2025-06-11 Martin Uecker <uecker@tugraz.at> + + PR c/120510 + * gcc.dg/old-style-prom-4.c: New test. + +2025-06-11 Edwin Lu <ewlu@rivosinc.com> + + * gcc.target/riscv/rvv/vsetvl/pr117974.c: New test. + +2025-06-11 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: Add vfnmadd and + vfnmsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: Add support for neg + variants. Fix sign for sub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_data.h: Add data for neg + variants. Fix data for sub. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: Rename x to f. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: Add neg + argument. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: Likewise. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmadd-run-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfnmsub-run-1-f64.c: New test. + +2025-06-11 Martin Uecker <uecker@tugraz.at> + + PR c/120303 + * gcc.dg/pr120303.c: New test. + +2025-06-11 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/90693 + * gcc.target/i386/pr90693-3.c: New test. + * gcc.target/i386/pr90693-4.c: New test. + * gcc.target/i386/pr90693-5.c: New test. + * gcc.target/i386/pr90693-6.c: New test. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/html-output/missing-semicolon.py: Update for changes + to diagnostic elements. + * gcc.dg/format/diagnostic-ranges-html.py: Likewise. + * gcc.dg/plugin/diagnostic-test-metadata-html.py: Likewise. Drop + out-of-date comment. + * gcc.dg/plugin/diagnostic-test-paths-2.py: Likewise. + * gcc.dg/plugin/diagnostic-test-paths-4.py: Likewise. Drop + out-of-date comment. + * gcc.dg/plugin/diagnostic-test-show-locus.py: Likewise. + * lib/htmltest.py (get_diag_by_index): Update to use search by id. + (get_message_within_diag): Update to use search by class. + +2025-06-11 David Malcolm <dmalcolm@redhat.com> + + PR other/120610 + * gcc.dg/format/diagnostic-ranges-html.py: Remove out-of-date + comment. + +2025-06-10 Vineet Gupta <vineetg@rivosinc.com> + + * gcc.target/riscv/rvv/vtype-call-clobbered.c: Fix -mabi. + +2025-06-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * gcc.target/i386/pr120434-2.c: New test. + +2025-06-10 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120434 + * gcc.target/i386/pr120434-1.c: New test. + +2025-06-10 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/ventana-16122.c: New test. + +2025-06-10 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vremu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-10 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vremu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-u8.c: New test. + +2025-06-10 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/binop/vrem-rv32gcv.c: Adjust the + asm check for vremu. + * gcc.target/riscv/rvv/autovec/binop/vrem-rv64gcv.c: Ditto. + +2025-06-09 Martin Uecker <uecker@tugraz.at> + + PR c/120510 + * gcc.dg/pr120510.c + +2025-06-09 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120495 + PR c++/115605 + * g++.dg/coroutines/pr120495.C: New test. + * g++.dg/pr115605.C: New test. + +2025-06-09 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120606 + * gm2/pim/pass/forarray.mod: New test. + +2025-06-09 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119779 + * gm2.dg/doc/examples/run/pass/doc-examples-run-pass.exp: New test. + * gm2.dg/doc/examples/run/pass/exampleadd2.mod: New test. + +2025-06-09 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/html-output/missing-semicolon.py: Update expected <title> + text. Drop out-of-date comment. + +2025-06-09 Alfie Richards <alfie.richards@arm.com> + + PR testsuite/120519 + * g++.target/powerpc/mvc-symbols1.C: Modify tests. + * g++.target/powerpc/mvc-symbols2.C: Ditto. + * g++.target/powerpc/mvc-symbols3.C: Ditto. + * g++.target/powerpc/mvc-symbols4.C: Ditto. + +2025-06-09 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/cost_model_16.c: New test. + +2025-06-09 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx512f-pr103750-3.c: New test. + +2025-06-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vrem.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-06-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vrem.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrem-run-1-i8.c: New test. + +2025-06-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/binop/vrem-rv32gcv.c: Adjust the + asm check for vrem. + * gcc.target/riscv/rvv/autovec/binop/vrem-rv64gcv.c: Ditto. + +2025-06-08 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * gcc.dg/tree-prof/clone-merge-1.c: Enable only for + -fauto-profile. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + PR target/120203 + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-74.c: Expect + an additional FRRM. + +2025-06-08 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119164 + * gcc.target/riscv/rvv/base/pr119164.c: New test. + +2025-06-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120533 + * gcc.dg/tree-ssa/pr35286.c: Add -fno-ssa-phiopt. + * gcc.dg/tree-ssa/split-path-6.c: Likewise. + * gcc.dg/tree-ssa/split-path-7.c: Likewise. + * gcc.dg/tree-ssa/phiprop-2.c: Move the check for MIN_EXPR to phiopt1. + +2025-06-07 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119650 + * gm2/iso/fail/CHAR.mod: New test. + * gm2/iso/run/pass/CHAR.mod: New test. + * gm2/iso/run/pass/importself.mod: New test. + * gm2/pimlib/run/pass/testwrite.mod: New test. + * gm2/pimlib/run/pass/testwritechar.mod: New test. + +2025-06-06 Jason Merrill <jason@redhat.com> + + PR c++/120555 + * g++.dg/cpp1z/constexpr-if39.C: New test. + +2025-06-06 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/arc/fma-1.c: Make "a" extern so the optimizers can + see any value and optimize away the key computation. + +2025-06-06 Tobias Burnus <tburnus@baylibre.com> + Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/omp_get_num_devices_initial_device-2.c: New test. + * c-c++-common/gomp/omp_get_num_devices_initial_device.c: New test. + * gfortran.dg/gomp/omp_get_num_devices_initial_device-2.f90: New test. + * gfortran.dg/gomp/omp_get_num_devices_initial_device.f90: New test. + +2025-06-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c: Adjust + the asm check for vdivu. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv.c: Ditto. + +2025-06-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Add asm check + for vdivu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-06-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check + for vdivu.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-u8.c: New test. + +2025-06-06 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120542 + * gm2/iso/fail/badreturn.mod: New test. + * gm2/iso/fail/badreturn2.mod: New test. + * gm2/iso/pass/modulereturn.mod: New test. + * gm2/iso/pass/modulereturn2.mod: New test. + +2025-06-06 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/aggr7.ads: New test. + +2025-06-06 Jiawei <jiawei@iscas.ac.cn> + Jiawei Chen <jiawei@iscas.ac.cn> + Yangyu Chen <cyy@cyyself.name> + Tang Haojin <tanghaojin@outlook.com> + + * gcc.target/riscv/mcpu-xiangshan-kunminghu.c: New test. + +2025-06-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120032 + * gcc.target/i386/pr120032-3.c: New testcase. + +2025-06-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120032 + * gcc.target/i386/pr120032-1.c: New testcase. + * gcc.target/i386/pr120032-2.c: Likewise. + +2025-06-05 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/nozicond-3.c: New test. + +2025-06-05 Uros Bizjak <ubizjak@gmail.com> + + PR target/120553 + * gcc.target/i386/pr120553.c: New test. + +2025-06-05 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120231 + * gcc.dg/tree-ssa/pr120231-2.c: New test. + * gcc.dg/tree-ssa/pr120231-3.c: New test. + * gfortran.dg/inline_matmul_16.f90: Don't expect any _gfortran_matmul + strings in optimized dump. + * gfortran.dg/inline_matmul_26.f90: New test. + * g++.dg/tree-ssa/loop-split-1.C (d): New variable. + (main): Use std::log (i + d) instead of std::log (i). + +2025-06-05 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/89606 + * gcc.target/aarch64/vld2-1.c: New test. + +2025-06-05 Patrick Palka <ppalka@redhat.com> + + PR c++/120224 + * g++.dg/cpp0x/alias-decl-80.C: New test. + +2025-06-05 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/120547 + * gcc.dg/bitint-123.c: New test. + +2025-06-05 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/nozicond-1.c: New test. + * gcc.target/riscv/nozicond-2.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-ssu64xl.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-sstvecd.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-sstvala.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-sscounterenw.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-ssccptr.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-smrnmi.c: New test. + +2025-06-05 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-smcsrind.c: New test. + +2025-06-05 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/opt7.ads: New test. + * gnat.dg/specs/opt7_pkg.ads: New helper. + * gnat.dg/specs/opt7_pkg.adb: Likewise. + +2025-06-05 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/sve/pr96357.c: Change to avoid producing + a conditional FIX_TRUNC_EXPR, whilst still reproducing the bug + in PR96357. + * gcc.dg/tree-ssa/ifcvt-fix-trunc-1.c: New test. + * gcc.dg/tree-ssa/ifcvt-fix-trunc-2.c: Likewise. + +2025-06-05 Hongyu Wang <hongyu.wang@intel.com> + + * g++.target/i386/pr112824-2.C: New test. + +2025-06-04 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * gcc.dg/tree-prof/clone-merge-1.c: New test. + +2025-06-04 Jason Merrill <jason@redhat.com> + + PR c++/120502 + * g++.dg/cpp2a/constexpr-prvalue2.C: New test. + +2025-06-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/14295 + PR tree-optimization/108358 + PR tree-optimization/114169 + * gcc.dg/tree-ssa/20031106-6.c: Un-xfail. Add scan for forwprop1. + * g++.dg/opt/pr66119.C: Disable forwprop since that does + the copy prop now. + * gcc.dg/tree-ssa/pr108358-a.c: New test. + * gcc.dg/tree-ssa/pr114169-1.c: New test. + * gcc.c-torture/execute/builtins/pr22237-1-lib.c: New test. + * gcc.c-torture/execute/builtins/pr22237-1.c: New test. + * gcc.dg/tree-ssa/pr57361.c: Disable forwprop1. + * gcc.dg/tree-ssa/pr57361-1.c: New test. + +2025-06-04 Pengfei Li <Pengfei.Li2@arm.com> + + * gcc.target/aarch64/acle/uhadd_1.c: New test. + +2025-06-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120231 + * gcc.dg/tree-ssa/pr120231-1.c: New test. + +2025-06-04 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-60.c: New test. + +2025-06-04 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120447 + * gcc.dg/pr120447.c: New test. + +2025-06-04 H.J. Lu <hjl.tools@gmail.com> + + PR debug/120525 + * gcc.dg/pr120525.c: New test. + +2025-06-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/120483 + * gfortran.dg/save_8.f90: New test. + +2025-06-04 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-shlocofideleg.c: New test. + +2025-06-04 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/pr49095-2.c: New test. + +2025-06-04 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/pr79173-13.c: New test. + * gcc.target/i386/pr79173-14.c: Ditto. + * gcc.target/i386/pr79173-15.c: Ditto. + * gcc.target/i386/pr79173-16.c: Ditto. + * gcc.target/i386/pr79173-17.c: Ditto. + * gcc.target/i386/pr79173-18.c: Ditto. + +2025-06-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/99838 + * gfortran.dg/coarray_data_2.f90: New test. + +2025-06-03 Martin Uecker <uecker@tugraz.at> + + PR c/120078 + * gcc.dg/Wjump-misses-init-3.c: New test. + +2025-06-03 Martin Uecker <uecker@tugraz.at> + + * gcc.dg/gnu23-tag-composite-6.c: Update. + +2025-06-03 Martin Uecker <uecker@tugraz.at> + + PR c/116892 + * gcc.dg/pr116892.c: New test. + +2025-06-03 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/cpp-1.C + * g++.dg/modules/cpp-3.C + * g++.dg/modules/cpp-4.C: Specify -fno-modules. + +2025-06-03 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c: Adjust + the asm check for vdiv. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv.c: Ditto. + +2025-06-03 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + check for vdiv.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-06-03 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vdiv.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vdiv run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vdiv-run-1-i8.c: New test. + +2025-06-03 Paul-Antoine Arras <parras@baylibre.com> + + PR target/119100 + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-2-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-3-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf-4-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_data.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_mulop_run.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmadd-run-1-f64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vf_vfmsub-run-1-f64.c: New test. + +2025-06-03 H.J. Lu <hjl.tools@gmail.com> + + PR target/103750 + * g++.target/i386/pr103750.C: New test. + +2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/116824 + * gcc.dg/tree-ssa/phiprop-2.c: New test. + +2025-06-03 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120451 + * gcc.dg/tree-ssa/cswtch-6.c: New test. + +2025-06-02 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/120424 + PR middle-end/118939 + * g++.target/arm/pr120424.C: New. + * gnat.dg/controlled9.adb: New. + * gnat.dg/controlled9_pkg.ads: New. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * g++.dg/ext/is_destructible2.C: Add more cases. + +2025-06-02 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-59.c: New test. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/120506 + * g++.dg/cpp2a/constinit21.C: New test. + +2025-06-02 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/118903 + * g++.dg/coroutines/pr118903.C: New test. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * g++.dg/ext/is_destructible2.C: New test. + +2025-06-02 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * g++.dg/ext/has_trivial_destructor-3.C: New test. + +2025-06-02 Stafford Horne <shorne@gmail.com> + + * gcc.target/or1k/return-2.c: Fix test. + +2025-06-02 Stafford Horne <shorne@gmail.com> + + * gcc.target/or1k/call-1.c: New test. + * gcc.target/or1k/got-1.c: New test. + +2025-06-02 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp (check_effective_target_tls_link): New. + * g++.dg/tls/pr102496-1.C: Require tls_link. + * g++.dg/tls/pr77285-1.C: Likewise. + +2025-06-02 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/declare-variant-2.c: Update expected output. + * c-c++-common/gomp/metadirective-condition-constexpr.c: New. + * c-c++-common/gomp/metadirective-condition.c: New. + * c-c++-common/gomp/metadirective-error-recovery.c: Update expected + output. + * g++.dg/gomp/metadirective-condition-class.C: New. + * g++.dg/gomp/metadirective-condition-template.C: New. + +2025-06-02 Liao Shihua <shihua@iscas.ac.cn> + + * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: Change + `autovec-mode` to `riscv-autovec-mode` in dg-options. + +2025-06-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/119856 + * gfortran.dg/pr119856.f90: New test. + +2025-06-01 Martin Uecker <uecker@tugraz.at> + + PR c/120380 + * gcc.dg/pr120380.c: New test. + +2025-06-01 Jason Merrill <jason@redhat.com> + + PR c++/120123 + * g++.dg/cpp23/explicit-obj-lambda18.C: Move to... + * g++.dg/cpp2a/concepts-lambda24.C: ...here. + +2025-06-01 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120497 + * gm2/pim/pass/ReturnType.mod: New test. + * gm2/pim/pass/ReturnType2.mod: New test. + +2025-05-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120357 + * gcc.dg/vect/vect-early-break_136-pr120357.c: New testcase. + +2025-05-31 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120389 + * gm2/pim/fail/testcharint.mod: New test. + * gm2/pim/fail/testindrx.mod: New test. + * gm2/pim/pass/testxindr.mod: New test. + * gm2/pim/pass/testxindr2.mod: New test. + * gm2/pim/pass/testxindr3.mod: New test. + +2025-05-30 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/format/diagnostic-ranges-html.py: New test script. + * gcc.dg/format/diagnostic-ranges.c: Add HTML generation to + options, and invoke the new script to check the HTML output. + +2025-05-30 Jason Merrill <jason@redhat.com> + + PR c++/120123 + * g++.dg/cpp23/explicit-obj-lambda18.C: New test. + +2025-05-30 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102599 + PR fortran/114022 + * gfortran.dg/inquiry_type_ref_8.f90: New test. + +2025-05-30 Jason Merrill <jason@redhat.com> + + PR c++/113563 + * g++.dg/cpp23/explicit-obj-lambda17.C: New test. + +2025-05-30 Qing Zhao <qing.zhao@oracle.com> + + PR c/120354 + * gcc.dg/pr120354.c: New test. + +2025-05-30 Qing Zhao <qing.zhao@oracle.com> + + PR c/120353 + * gcc.dg/pr120353.c: New test. + +2025-05-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/avg.h: Add test helper macros. + * gcc.target/riscv/rvv/autovec/avg_data.h: Add test data for + avg_ceil. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i16-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i32-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i16.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-1-i8-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i16-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i32-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i16.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_ceil-run-1-i8-from-i64.c: New test. + +2025-05-30 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vls/avg-4.c: Update asm check + to vaadd. + * gcc.target/riscv/rvv/autovec/vls/avg-5.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/avg-6.c: Ditto. + * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv64gcv.c: Ditto. + +2025-05-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120341 + * gcc.dg/torture/pr120341-1.c: New testcase. + * gcc.dg/torture/pr120341-2.c: Likewise. + +2025-05-30 Jakub Jelinek <jakub@redhat.com> + + PR target/120480 + * gcc.dg/pr120480.c: New test. + +2025-05-30 Julian Brown <julian@codesourcery.com> + + * c-c++-common/gomp/declare-mapper-3.c: Enable for C. + * c-c++-common/gomp/declare-mapper-4.c: Likewise. + * c-c++-common/gomp/declare-mapper-5.c: Likewise. + * c-c++-common/gomp/declare-mapper-6.c: Likewise. + * c-c++-common/gomp/declare-mapper-7.c: Likewise. + * c-c++-common/gomp/declare-mapper-8.c: Likewise. + * c-c++-common/gomp/declare-mapper-9.c: Likewise. + * c-c++-common/gomp/declare-mapper-10.c: Likewise. + * c-c++-common/gomp/declare-mapper-12.c: Likewise. + * c-c++-common/gomp/map-6.c: Update dg-error. + * gcc.dg/gomp/udr-3.c: Update for change to dg-note. + * c-c++-common/gomp/declare-mapper-11.c: New. + * gcc.dg/gomp/declare-mapper-10.c: New test. + * gcc.dg/gomp/declare-mapper-11.c: New test. + * gcc.dg/gomp/declare-mapper-13.c: New test. + +2025-05-30 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120355 + * gfortran.dg/interface_62.f90: New test. + +2025-05-30 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/diagnostic/bad-binary-ops-highlight-colors.C: Update + expected multiline output for quoted source and underlines to + reflect emitting color codes when changes happen, rather than + per character. + * g++.dg/diagnostic/long-short-colorization.C: Likewise. + * g++.dg/plugin/show-template-tree-color-labels.C: Likewise. + * gcc.dg/bad-binary-ops-highlight-colors.c: Likewise. + * gcc.dg/format/colors.c: Likewise. + +2025-05-30 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/120347 + * gcc.dg/torture/pr120347.c: New test. + +2025-05-30 Julian Brown <julian@codesourcery.com> + Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/map-6.c: Update error scan output. + * c-c++-common/gomp/declare-mapper-3.c: New test (only enabled for C++ + for now). + * c-c++-common/gomp/declare-mapper-4.c: Likewise. + * c-c++-common/gomp/declare-mapper-5.c: Likewise. + * c-c++-common/gomp/declare-mapper-6.c: Likewise. + * c-c++-common/gomp/declare-mapper-7.c: Likewise. + * c-c++-common/gomp/declare-mapper-8.c: Likewise. + * c-c++-common/gomp/declare-mapper-9.c: Likewise. + * c-c++-common/gomp/declare-mapper-10.c: Likewise. + * c-c++-common/gomp/declare-mapper-12.c: Likewise. + * g++.dg/gomp/declare-mapper-1.C: New test. + * g++.dg/gomp/declare-mapper-2.C: New test. + * g++.dg/gomp/declare-mapper-3.C: New test. + +2025-05-30 Martin Uecker <uecker@tugraz.at> + + PR c/120381 + * gcc.dg/pr120381.c: New test. + * gcc.dg/gnu23-tag-composite-6.c: New test. + +2025-05-29 Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + * lib/target-supports.exp: Enable autofdo tests for aarch64. + +2025-05-29 Jason Merrill <jason@redhat.com> + + PR c++/113563 + * g++.dg/cpp23/explicit-obj-lambda16.C: New test. + +2025-05-29 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/109283 + * g++.dg/coroutines/pr109283.C: New test. + +2025-05-29 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp1z/constexpr-lambda29.C: New test. + +2025-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * gfortran.dg/c_f_pointer_tests_6.f90: Adjust dg-error + directive. + +2025-05-29 Alice Carlotti <alice.carlotti@arm.com> + Alfie Richards <alfie.richards@arm.com> + + * g++.target/i386/mv-symbols1.C: New test. + * g++.target/i386/mv-symbols2.C: New test. + * g++.target/i386/mv-symbols3.C: New test. + * g++.target/i386/mv-symbols4.C: New test. + * g++.target/i386/mv-symbols5.C: New test. + * g++.target/i386/mvc-symbols1.C: New test. + * g++.target/i386/mvc-symbols2.C: New test. + * g++.target/i386/mvc-symbols3.C: New test. + * g++.target/i386/mvc-symbols4.C: New test. + +2025-05-29 Alice Carlotti <alice.carlotti@arm.com> + Alfie Richards <alfie.richards@arm.com> + + * g++.target/powerpc/mvc-symbols1.C: New test. + * g++.target/powerpc/mvc-symbols2.C: New test. + * g++.target/powerpc/mvc-symbols3.C: New test. + * g++.target/powerpc/mvc-symbols4.C: New test. + +2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/declare-variant-2.c: Adjust patterns now that + C and C++ now behave similarly. + * c-c++-common/gomp/metadirective-error-recovery.c: New. + +2025-05-29 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/120180 + * c-c++-common/gomp/pr120180.c: New. + +2025-05-29 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/120453 + * g++.dg/coroutines/pr120453.C: New test. + +2025-05-29 Martin Jambor <mjambor@suse.cz> + + PR ipa/120295 + * gcc.dg/ipa/pr120295.c: New test. + +2025-05-29 Pranav Gorantla <Pranav.Gorantla@amd.com> + + * gcc.target/i386/reduc-pshuf.c: New test. + +2025-05-29 Jerry Zhang Jian <jerry.zhangjian@sifive.com> + + * gcc.target/riscv/arch-57.c: New test + * gcc.target/riscv/arch-58.c: New test + +2025-05-29 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm + check for vmul.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + +2025-05-29 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmul.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vmul run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmul-run-1-i8.c: New test. + +2025-05-29 Jason Merrill <jason@redhat.com> + + PR c++/107600 + * g++.dg/ext/is_destructible1.C: New test. + +2025-05-28 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119586 + * gfortran.dg/comma_format_extension_1.f: Update dg-options to + "-std=legacy". + * gfortran.dg/comma_format_extension_3.f: Likewise. + * gfortran.dg/continuation_13.f90: Likewise. + +2025-05-28 Yuao Ma <c8ef@outlook.com> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/113152 + * gfortran.dg/dec_math_3.f90: Test invalid input. + * gfortran.dg/dec_math_5.f90: Test valid output. + * gfortran.dg/dec_math_6.f90: New test. + +2025-05-28 Robin Dapp <rdapp@ventanamicro.com> + + PR target/120436 + * gcc.target/riscv/rvv/base/pr120436.c: New test. + +2025-05-28 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/namespace-8_a.C: New test. + * g++.dg/modules/namespace-8_b.C: New test. + * g++.dg/modules/namespace-9_a.C: New test. + * g++.dg/modules/namespace-9_b.C: New test. + * g++.dg/modules/namespace-10_a.C: New test. + * g++.dg/modules/namespace-10_b.C: New test. + * g++.dg/modules/namespace-10_c.C: New test. + * g++.dg/modules/namespace-11_a.C: New test. + * g++.dg/modules/namespace-11_b.C: New test. + * g++.dg/modules/namespace-11_c.C: New test. + +2025-05-28 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/avg.h: New test. + * gcc.target/riscv/rvv/autovec/avg_data.h: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i16-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i32-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i16.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-1-i8-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i16-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i32-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i16.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i32.c: New test. + * gcc.target/riscv/rvv/autovec/avg_floor-run-1-i8-from-i64.c: New test. + * gcc.target/riscv/rvv/autovec/avg_run.h: New test. + +2025-05-28 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vls/avg-1.c: Update asm check + to vaadd. + * gcc.target/riscv/rvv/autovec/vls/avg-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/avg-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/widen/vec-avg-rv64gcv.c: Ditto. + +2025-05-28 liuhongt <hongtao.liu@intel.com> + + * gcc.dg/vect/bb-slp-pr119181.c: New test. + +2025-05-27 Alejandro Colomar <alx@kernel.org> + + PR c/117025 + * gcc.dg/countof-compat.c: New test. + * gcc.dg/countof-no-compat.c: New test. + * gcc.dg/countof-pedantic.c: New test. + * gcc.dg/countof-pedantic-errors.c: New test. + +2025-05-27 Alejandro Colomar <alx@kernel.org> + + PR c/117025 + * gcc.dg/countof-stdcountof.c: New test. + +2025-05-27 Alejandro Colomar <alx@kernel.org> + Martin Uecker <uecker@tugraz.at> + + PR c/117025 + * gcc.dg/countof-compile.c: New test. + * gcc.dg/countof-vla.c: New test. + * gcc.dg/countof-vmt.c: New test. + * gcc.dg/countof-zero-compile.c: New test. + * gcc.dg/countof-zero.c: New test. + * gcc.dg/countof.c: New test. + +2025-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * gfortran.dg/pr120049_a.f90: Update test directives. + * gfortran.dg/pr120049_b.f90: Update test directives + * gfortran.dg/pr120049_2.f90: New test. + Co-Authored-By: Steve Kargl <kargl@gcc.gnu.org> + +2025-05-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/101735 + * gfortran.dg/inquiry_type_ref_7.f90: New test. + +2025-05-27 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/sso19.adb: New test. + * gnat.dg/sso19_pkg.ads, gnat.dg/sso19_pkg.adb: New helper. + +2025-05-27 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/html-output/missing-semicolon.c: Add ":javascript=no" to + html output. + * gcc.dg/html-output/missing-semicolon.py: Move repeated + definitions into lib/htmltest.py. + * gcc.dg/plugin/diagnostic_group_plugin.cc: Update for template + changes. + * gcc.dg/plugin/diagnostic-test-metadata-html.c: Add + ":javascript=no" to html output. Add + "-fdiagnostics-show-line-numbers". + * gcc.dg/plugin/diagnostic-test-metadata-html.py: Move repeated + definitions into lib/htmltest.py. Add checks of annotated source. + * gcc.dg/plugin/diagnostic-test-paths-2.c: Add ":javascript=no" to + html output. + * gcc.dg/plugin/diagnostic-test-paths-2.py: Move repeated + definitions into lib/htmltest.py. Add checks of execution path. + * gcc.dg/plugin/diagnostic-test-paths-4.c: Add + -fdiagnostics-add-output=experimental-html:javascript=no. Add + invocation ot diagnostic-test-paths-4.py. + * gcc.dg/plugin/diagnostic-test-paths-4.py: New test script. + * gcc.dg/plugin/diagnostic-test-show-locus-bw-line-numbers.c: Add + -fdiagnostics-add-output=experimental-html:javascript=no. Add + invocation of diagnostic-test-show-locus.py. + * gcc.dg/plugin/diagnostic-test-show-locus.py: New test script. + * lib/htmltest.py: New test support script. + +2025-05-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117965 + * g++.dg/tree-ssa/pr117965-1.C: New testcase. + * g++.dg/tree-ssa/pr117965-2.C: Likewise. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119884 + * gcc.target/i386/pr119884.c: New test. + +2025-05-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vxor.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-27 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vxor.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vxor run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u8.c: New test. + +2025-05-27 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/vector/vec-extract-1.c: New test. + * gcc.target/s390/vector/vec-set-1.c: New test. + +2025-05-27 xuli <xuli1@eswincomputing.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add signed vec SAT_ADD IMM form1. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add sat_s_add_imm data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i8.c: New test. + +2025-05-27 xuli <xuli1@eswincomputing.com> + + * gcc.target/riscv/sat/sat_s_add_imm-2.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-3.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-4.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i64.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i8.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-2.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-3.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-4.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i64.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i8.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-2-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-3-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-1-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i8.c: ...here. + +2025-05-26 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/118694 + * c-c++-common/gomp/attrs-metadirective-3.c: Change to never + expect 'omp metadirective' in the dump. If !offload_nvptx, check + that no 'teams' shows up in the dump; for offload_nvptx, expect + OMP_NEXT_VARIANT and an error about directive between 'target' + and 'teams'. + * c-c++-common/gomp/metadirective-3.c: Likewise. + +2025-05-26 Tobias Burnus <tburnus@baylibre.com> + + PR c++/120413 + * g++.dg/gomp/target-4.C: New test. + +2025-05-26 Richard Biener <rguenther@suse.de> + + * gcc.target/i386/vect-epilogues-5.c: Adjust. + +2025-05-24 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats-4/elabd.lst: New file. + * ada/acats-4/floatstore.lst: Likewise. + * ada/acats-4/norun.lst: Likewise. + * ada/acats-4/run_acats.sh: Likewise. + * ada/acats-4/run_all.sh: Likewise. + * ada/acats-4/run_test.exp: Likewise. + * ada/acats-4/stackcheck.lst: Likewise. + * ada/acats-4/support/acats42.lst: Likewise. + * ada/acats-4/support/checkfil.ada: Likewise. + * ada/acats-4/support/enumchek.ada: Likewise. + * ada/acats-4/support/f340a000.a: Likewise. + * ada/acats-4/support/f340a001.a: Likewise. + * ada/acats-4/support/f341a00.a: Likewise. + * ada/acats-4/support/f350a00.a: Likewise. + * ada/acats-4/support/f350b00.a: Likewise. + * ada/acats-4/support/f360a00.a: Likewise. + * ada/acats-4/support/f360b00.a: Likewise. + * ada/acats-4/support/f390a00.a: Likewise. + * ada/acats-4/support/f392a00.a: Likewise. + * ada/acats-4/support/f392c00.a: Likewise. + * ada/acats-4/support/f392d00.a: Likewise. + * ada/acats-4/support/f393a00.a: Likewise. + * ada/acats-4/support/f393b00.a: Likewise. + * ada/acats-4/support/f394a00.a: Likewise. + * ada/acats-4/support/f3a1a00.a: Likewise. + * ada/acats-4/support/f3a2a00.a: Likewise. + * ada/acats-4/support/f416a00.a: Likewise. + * ada/acats-4/support/f431a00.a: Likewise. + * ada/acats-4/support/f433a00.a: Likewise. + * ada/acats-4/support/f452a00.a: Likewise. + * ada/acats-4/support/f458a00.a: Likewise. + * ada/acats-4/support/f460a00.a: Likewise. + * ada/acats-4/support/f552a00.a: Likewise. + * ada/acats-4/support/f611a00.a: Likewise. + * ada/acats-4/support/f611b00.a: Likewise. + * ada/acats-4/support/f650a00.a: Likewise. + * ada/acats-4/support/f650b00.a: Likewise. + * ada/acats-4/support/f730a000.a: Likewise. + * ada/acats-4/support/f730a001.a: Likewise. + * ada/acats-4/support/f731a00.a: Likewise. + * ada/acats-4/support/f732a00.a: Likewise. + * ada/acats-4/support/f732b00.a: Likewise. + * ada/acats-4/support/f732c00.a: Likewise. + * ada/acats-4/support/f750a00.a: Likewise. + * ada/acats-4/support/f760a00.a: Likewise. + * ada/acats-4/support/f940a00.a: Likewise. + * ada/acats-4/support/f954a00.a: Likewise. + * ada/acats-4/support/fa11a00.a: Likewise. + * ada/acats-4/support/fa11b00.a: Likewise. + * ada/acats-4/support/fa11c00.a: Likewise. + * ada/acats-4/support/fa11d00.a: Likewise. + * ada/acats-4/support/fa13a00.a: Likewise. + * ada/acats-4/support/fa13b00.a: Likewise. + * ada/acats-4/support/fa21a00.a: Likewise. + * ada/acats-4/support/fb20a00.a: Likewise. + * ada/acats-4/support/fb40a00.a: Likewise. + * ada/acats-4/support/fc50a00.a: Likewise. + * ada/acats-4/support/fc51a00.a: Likewise. + * ada/acats-4/support/fc51b00.a: Likewise. + * ada/acats-4/support/fc51c00.a: Likewise. + * ada/acats-4/support/fc51d00.a: Likewise. + * ada/acats-4/support/fc54a00.a: Likewise. + * ada/acats-4/support/fc70a00.a: Likewise. + * ada/acats-4/support/fc70b00.a: Likewise. + * ada/acats-4/support/fc70c00.a: Likewise. + * ada/acats-4/support/fcndecl.ada: Likewise. + * ada/acats-4/support/fd72a00.a: Likewise. + * ada/acats-4/support/fdb0a00.a: Likewise. + * ada/acats-4/support/fdb3a00.a: Likewise. + * ada/acats-4/support/fdd2a00.a: Likewise. + * ada/acats-4/support/fdd2b00.a: Likewise. + * ada/acats-4/support/fxa5a00.a: Likewise. + * ada/acats-4/support/fxaca00.a: Likewise. + * ada/acats-4/support/fxacb00.a: Likewise. + * ada/acats-4/support/fxacc00.a: Likewise. + * ada/acats-4/support/fxaia00.a: Likewise. + * ada/acats-4/support/fxaib00.a: Likewise. + * ada/acats-4/support/fxc6a00.a: Likewise. + * ada/acats-4/support/fxe2a00.a: Likewise. + * ada/acats-4/support/fxf2a00.a: Likewise. + * ada/acats-4/support/fxf3a00.a: Likewise. + * ada/acats-4/support/grade.a: Likewise. + * ada/acats-4/support/grd_data.a: Likewise. + * ada/acats-4/support/impbit.adb: Likewise. + * ada/acats-4/support/impdef.a: Likewise. + * ada/acats-4/support/impdefc.a: Likewise. + * ada/acats-4/support/impdefd.a: Likewise. + * ada/acats-4/support/impdefe.a: Likewise. + * ada/acats-4/support/impdefg.a: Likewise. + * ada/acats-4/support/impdefh.a: Likewise. + * ada/acats-4/support/lencheck.ada: Likewise. + * ada/acats-4/support/macro.dfs: Likewise. + * ada/acats-4/support/macrodef.adb: Likewise. + * ada/acats-4/support/macrosub.ada: Likewise. + * ada/acats-4/support/report.a: Likewise. + * ada/acats-4/support/special.a: Likewise. + * ada/acats-4/support/spprt13s.tst: Likewise. + * ada/acats-4/support/summary.a: Likewise. + * ada/acats-4/support/tctouch.ada: Likewise. + * ada/acats-4/support/trace.a: Likewise. + * ada/acats-4/support/tst_sum.a: Likewise. + * ada/acats-4/support/tsttests.dat: Likewise. + * ada/acats-4/support/version.a: Likewise. + * ada/acats-4/tests/a/a22006b.ada: Likewise. + * ada/acats-4/tests/a/a22006c.ada: Likewise. + * ada/acats-4/tests/a/a22006d.ada: Likewise. + * ada/acats-4/tests/a/a26007a.tst: Likewise. + * ada/acats-4/tests/a/a27003a.ada: Likewise. + * ada/acats-4/tests/a/a29003a.ada: Likewise. + * ada/acats-4/tests/a/a2a031a.ada: Likewise. + * ada/acats-4/tests/a/a33003a.ada: Likewise. + * ada/acats-4/tests/a/a34017c.ada: Likewise. + * ada/acats-4/tests/a/a35101b.ada: Likewise. + * ada/acats-4/tests/a/a35402a.ada: Likewise. + * ada/acats-4/tests/a/a35801f.ada: Likewise. + * ada/acats-4/tests/a/a35902c.ada: Likewise. + * ada/acats-4/tests/a/a38106d.ada: Likewise. + * ada/acats-4/tests/a/a38106e.ada: Likewise. + * ada/acats-4/tests/a/a49027a.ada: Likewise. + * ada/acats-4/tests/a/a49027b.ada: Likewise. + * ada/acats-4/tests/a/a49027c.ada: Likewise. + * ada/acats-4/tests/a/a54b01a.ada: Likewise. + * ada/acats-4/tests/a/a54b02a.ada: Likewise. + * ada/acats-4/tests/a/a55b12a.ada: Likewise. + * ada/acats-4/tests/a/a55b13a.ada: Likewise. + * ada/acats-4/tests/a/a55b14a.ada: Likewise. + * ada/acats-4/tests/a/a71004a.ada: Likewise. + * ada/acats-4/tests/a/a73001i.ada: Likewise. + * ada/acats-4/tests/a/a73001j.ada: Likewise. + * ada/acats-4/tests/a/a74105b.ada: Likewise. + * ada/acats-4/tests/a/a74106a.ada: Likewise. + * ada/acats-4/tests/a/a74106b.ada: Likewise. + * ada/acats-4/tests/a/a74106c.ada: Likewise. + * ada/acats-4/tests/a/a74205e.ada: Likewise. + * ada/acats-4/tests/a/a74205f.ada: Likewise. + * ada/acats-4/tests/a/a83009a.ada: Likewise. + * ada/acats-4/tests/a/a83009b.ada: Likewise. + * ada/acats-4/tests/a/a83a02a.ada: Likewise. + * ada/acats-4/tests/a/a83a02b.ada: Likewise. + * ada/acats-4/tests/a/a83a06a.ada: Likewise. + * ada/acats-4/tests/a/a83a08a.ada: Likewise. + * ada/acats-4/tests/a/a83c01c.ada: Likewise. + * ada/acats-4/tests/a/a83c01h.ada: Likewise. + * ada/acats-4/tests/a/a83c01i.ada: Likewise. + * ada/acats-4/tests/a/a85007d.ada: Likewise. + * ada/acats-4/tests/a/a85013b.ada: Likewise. + * ada/acats-4/tests/a/a87b59a.ada: Likewise. + * ada/acats-4/tests/a/a95001c.ada: Likewise. + * ada/acats-4/tests/a/a95074d.ada: Likewise. + * ada/acats-4/tests/a/a97106a.ada: Likewise. + * ada/acats-4/tests/a/a99006a.ada: Likewise. + * ada/acats-4/tests/a/aa2010a.ada: Likewise. + * ada/acats-4/tests/a/aa2012a.ada: Likewise. + * ada/acats-4/tests/a/ac1015b.ada: Likewise. + * ada/acats-4/tests/a/ac3106a.ada: Likewise. + * ada/acats-4/tests/a/ac3206a.ada: Likewise. + * ada/acats-4/tests/a/ac3207a.ada: Likewise. + * ada/acats-4/tests/a/ad7001b.ada: Likewise. + * ada/acats-4/tests/a/ad7001c0.ada: Likewise. + * ada/acats-4/tests/a/ad7001c1.ada: Likewise. + * ada/acats-4/tests/a/ad7001d0.ada: Likewise. + * ada/acats-4/tests/a/ad7001d1.ada: Likewise. + * ada/acats-4/tests/a/ad7006a.ada: Likewise. + * ada/acats-4/tests/a/ad7101a.ada: Likewise. + * ada/acats-4/tests/a/ad7101c.ada: Likewise. + * ada/acats-4/tests/a/ad7102a.ada: Likewise. + * ada/acats-4/tests/a/ad7103a.ada: Likewise. + * ada/acats-4/tests/a/ad7103c.ada: Likewise. + * ada/acats-4/tests/a/ad7104a.ada: Likewise. + * ada/acats-4/tests/a/ad7201a.ada: Likewise. + * ada/acats-4/tests/a/ad7203b.ada: Likewise. + * ada/acats-4/tests/a/ad7205b.ada: Likewise. + * ada/acats-4/tests/a/ad8011a.tst: Likewise. + * ada/acats-4/tests/a/ada101a.ada: Likewise. + * ada/acats-4/tests/a/ae2113a.ada: Likewise. + * ada/acats-4/tests/a/ae2113b.ada: Likewise. + * ada/acats-4/tests/a/ae3002g.ada: Likewise. + * ada/acats-4/tests/a/ae3101a.ada: Likewise. + * ada/acats-4/tests/a/ae3702a.ada: Likewise. + * ada/acats-4/tests/a/ae3709a.ada: Likewise. + * ada/acats-4/tests/c2/c23001a.ada: Likewise. + * ada/acats-4/tests/c2/c23003a.tst: Likewise. + * ada/acats-4/tests/c2/c23003b.tst: Likewise. + * ada/acats-4/tests/c2/c23003g.tst: Likewise. + * ada/acats-4/tests/c2/c23003i.tst: Likewise. + * ada/acats-4/tests/c2/c23006a.ada: Likewise. + * ada/acats-4/tests/c2/c23006b.ada: Likewise. + * ada/acats-4/tests/c2/c23006c.ada: Likewise. + * ada/acats-4/tests/c2/c23006d.ada: Likewise. + * ada/acats-4/tests/c2/c23006e.ada: Likewise. + * ada/acats-4/tests/c2/c23006f.ada: Likewise. + * ada/acats-4/tests/c2/c23006g.ada: Likewise. + * ada/acats-4/tests/c2/c24002d.ada: Likewise. + * ada/acats-4/tests/c2/c24003a.ada: Likewise. + * ada/acats-4/tests/c2/c24003b.ada: Likewise. + * ada/acats-4/tests/c2/c24003c.ada: Likewise. + * ada/acats-4/tests/c2/c24106a.ada: Likewise. + * ada/acats-4/tests/c2/c24202d.ada: Likewise. + * ada/acats-4/tests/c2/c24203a.ada: Likewise. + * ada/acats-4/tests/c2/c24203b.ada: Likewise. + * ada/acats-4/tests/c2/c24207a.ada: Likewise. + * ada/acats-4/tests/c2/c24211a.ada: Likewise. + * ada/acats-4/tests/c2/c250001.au: Likewise. + * ada/acats-4/tests/c2/c250002.au: Likewise. + * ada/acats-4/tests/c2/c25001a.ada: Likewise. + * ada/acats-4/tests/c2/c25001b.ada: Likewise. + * ada/acats-4/tests/c2/c26006a.ada: Likewise. + * ada/acats-4/tests/c2/c26008a.ada: Likewise. + * ada/acats-4/tests/c2/c2a001a.ada: Likewise. + * ada/acats-4/tests/c2/c2a001b.ada: Likewise. + * ada/acats-4/tests/c2/c2a001c.ada: Likewise. + * ada/acats-4/tests/c2/c2a002a.ada: Likewise. + * ada/acats-4/tests/c2/c2a008a.ada: Likewise. + * ada/acats-4/tests/c2/c2a021b.ada: Likewise. + * ada/acats-4/tests/c3/c32001a.ada: Likewise. + * ada/acats-4/tests/c3/c32001b.ada: Likewise. + * ada/acats-4/tests/c3/c32001c.ada: Likewise. + * ada/acats-4/tests/c3/c32001d.ada: Likewise. + * ada/acats-4/tests/c3/c32001e.ada: Likewise. + * ada/acats-4/tests/c3/c32107a.ada: Likewise. + * ada/acats-4/tests/c3/c32107c.ada: Likewise. + * ada/acats-4/tests/c3/c32108a.ada: Likewise. + * ada/acats-4/tests/c3/c32108b.ada: Likewise. + * ada/acats-4/tests/c3/c32111a.ada: Likewise. + * ada/acats-4/tests/c3/c32111b.ada: Likewise. + * ada/acats-4/tests/c3/c32112b.ada: Likewise. + * ada/acats-4/tests/c3/c32113a.ada: Likewise. + * ada/acats-4/tests/c3/c32115a.ada: Likewise. + * ada/acats-4/tests/c3/c32115b.ada: Likewise. + * ada/acats-4/tests/c3/c324001.a: Likewise. + * ada/acats-4/tests/c3/c324002.a: Likewise. + * ada/acats-4/tests/c3/c324003.a: Likewise. + * ada/acats-4/tests/c3/c324004.a: Likewise. + * ada/acats-4/tests/c3/c324005.a: Likewise. + * ada/acats-4/tests/c3/c324006.a: Likewise. + * ada/acats-4/tests/c3/c330001.a: Likewise. + * ada/acats-4/tests/c3/c330002.a: Likewise. + * ada/acats-4/tests/c3/c332001.a: Likewise. + * ada/acats-4/tests/c3/c340001.a: Likewise. + * ada/acats-4/tests/c3/c34001a.ada: Likewise. + * ada/acats-4/tests/c3/c34001c.ada: Likewise. + * ada/acats-4/tests/c3/c34001d.ada: Likewise. + * ada/acats-4/tests/c3/c34001f.ada: Likewise. + * ada/acats-4/tests/c3/c34002a.ada: Likewise. + * ada/acats-4/tests/c3/c34002c.ada: Likewise. + * ada/acats-4/tests/c3/c34003a.ada: Likewise. + * ada/acats-4/tests/c3/c34003c.ada: Likewise. + * ada/acats-4/tests/c3/c34004a.ada: Likewise. + * ada/acats-4/tests/c3/c34004c.ada: Likewise. + * ada/acats-4/tests/c3/c34005a.ada: Likewise. + * ada/acats-4/tests/c3/c34005c.ada: Likewise. + * ada/acats-4/tests/c3/c34005d.ada: Likewise. + * ada/acats-4/tests/c3/c34005f.ada: Likewise. + * ada/acats-4/tests/c3/c34005g.ada: Likewise. + * ada/acats-4/tests/c3/c34005i.ada: Likewise. + * ada/acats-4/tests/c3/c34005j.ada: Likewise. + * ada/acats-4/tests/c3/c34005l.ada: Likewise. + * ada/acats-4/tests/c3/c34005m.ada: Likewise. + * ada/acats-4/tests/c3/c34005o.ada: Likewise. + * ada/acats-4/tests/c3/c34005p.ada: Likewise. + * ada/acats-4/tests/c3/c34005r.ada: Likewise. + * ada/acats-4/tests/c3/c34005s.ada: Likewise. + * ada/acats-4/tests/c3/c34005u.ada: Likewise. + * ada/acats-4/tests/c3/c34005v.ada: Likewise. + * ada/acats-4/tests/c3/c34006a.ada: Likewise. + * ada/acats-4/tests/c3/c34006d.ada: Likewise. + * ada/acats-4/tests/c3/c34006f.ada: Likewise. + * ada/acats-4/tests/c3/c34006g.ada: Likewise. + * ada/acats-4/tests/c3/c34006j.ada: Likewise. + * ada/acats-4/tests/c3/c34006l.ada: Likewise. + * ada/acats-4/tests/c3/c34007a.ada: Likewise. + * ada/acats-4/tests/c3/c34007d.ada: Likewise. + * ada/acats-4/tests/c3/c34007f.ada: Likewise. + * ada/acats-4/tests/c3/c34007g.ada: Likewise. + * ada/acats-4/tests/c3/c34007i.ada: Likewise. + * ada/acats-4/tests/c3/c34007j.ada: Likewise. + * ada/acats-4/tests/c3/c34007m.ada: Likewise. + * ada/acats-4/tests/c3/c34007p.ada: Likewise. + * ada/acats-4/tests/c3/c34007r.ada: Likewise. + * ada/acats-4/tests/c3/c34007s.ada: Likewise. + * ada/acats-4/tests/c3/c34007u.ada: Likewise. + * ada/acats-4/tests/c3/c34007v.ada: Likewise. + * ada/acats-4/tests/c3/c34008a.ada: Likewise. + * ada/acats-4/tests/c3/c34009a.ada: Likewise. + * ada/acats-4/tests/c3/c34009d.ada: Likewise. + * ada/acats-4/tests/c3/c34009f.ada: Likewise. + * ada/acats-4/tests/c3/c34009g.ada: Likewise. + * ada/acats-4/tests/c3/c34009j.ada: Likewise. + * ada/acats-4/tests/c3/c34009l.ada: Likewise. + * ada/acats-4/tests/c3/c34011b.ada: Likewise. + * ada/acats-4/tests/c3/c34012a.ada: Likewise. + * ada/acats-4/tests/c3/c34014a.ada: Likewise. + * ada/acats-4/tests/c3/c34014c.ada: Likewise. + * ada/acats-4/tests/c3/c34014e.ada: Likewise. + * ada/acats-4/tests/c3/c34014g.ada: Likewise. + * ada/acats-4/tests/c3/c34014h.ada: Likewise. + * ada/acats-4/tests/c3/c34014n.ada: Likewise. + * ada/acats-4/tests/c3/c34014p.ada: Likewise. + * ada/acats-4/tests/c3/c34014r.ada: Likewise. + * ada/acats-4/tests/c3/c34014t.ada: Likewise. + * ada/acats-4/tests/c3/c34014u.ada: Likewise. + * ada/acats-4/tests/c3/c34018a.ada: Likewise. + * ada/acats-4/tests/c3/c340a01.a: Likewise. + * ada/acats-4/tests/c3/c340a02.a: Likewise. + * ada/acats-4/tests/c3/c341a01.a: Likewise. + * ada/acats-4/tests/c3/c341a02.a: Likewise. + * ada/acats-4/tests/c3/c341a03.a: Likewise. + * ada/acats-4/tests/c3/c341a04.a: Likewise. + * ada/acats-4/tests/c3/c350001.a: Likewise. + * ada/acats-4/tests/c3/c35003a.ada: Likewise. + * ada/acats-4/tests/c3/c35003b.ada: Likewise. + * ada/acats-4/tests/c3/c35003d.ada: Likewise. + * ada/acats-4/tests/c3/c350a01.a: Likewise. + * ada/acats-4/tests/c3/c350a02.a: Likewise. + * ada/acats-4/tests/c3/c350b01.a: Likewise. + * ada/acats-4/tests/c3/c350b02.a: Likewise. + * ada/acats-4/tests/c3/c35102a.ada: Likewise. + * ada/acats-4/tests/c3/c352001.a: Likewise. + * ada/acats-4/tests/c3/c354002.a: Likewise. + * ada/acats-4/tests/c3/c354003.a: Likewise. + * ada/acats-4/tests/c3/c354004.a: Likewise. + * ada/acats-4/tests/c3/c35502a.ada: Likewise. + * ada/acats-4/tests/c3/c35502b.ada: Likewise. + * ada/acats-4/tests/c3/c35502c.ada: Likewise. + * ada/acats-4/tests/c3/c35502d.tst: Likewise. + * ada/acats-4/tests/c3/c35502e.ada: Likewise. + * ada/acats-4/tests/c3/c35502f.tst: Likewise. + * ada/acats-4/tests/c3/c35502g.ada: Likewise. + * ada/acats-4/tests/c3/c35502h.ada: Likewise. + * ada/acats-4/tests/c3/c35502i.ada: Likewise. + * ada/acats-4/tests/c3/c35502j.ada: Likewise. + * ada/acats-4/tests/c3/c35502k.ada: Likewise. + * ada/acats-4/tests/c3/c35502l.ada: Likewise. + * ada/acats-4/tests/c3/c35502m.ada: Likewise. + * ada/acats-4/tests/c3/c35502n.ada: Likewise. + * ada/acats-4/tests/c3/c35502o.ada: Likewise. + * ada/acats-4/tests/c3/c35502p.ada: Likewise. + * ada/acats-4/tests/c3/c35503a.ada: Likewise. + * ada/acats-4/tests/c3/c35503b.ada: Likewise. + * ada/acats-4/tests/c3/c35503c.ada: Likewise. + * ada/acats-4/tests/c3/c35503d.tst: Likewise. + * ada/acats-4/tests/c3/c35503e.ada: Likewise. + * ada/acats-4/tests/c3/c35503f.tst: Likewise. + * ada/acats-4/tests/c3/c35503g.ada: Likewise. + * ada/acats-4/tests/c3/c35503h.ada: Likewise. + * ada/acats-4/tests/c3/c35503k.ada: Likewise. + * ada/acats-4/tests/c3/c35503l.ada: Likewise. + * ada/acats-4/tests/c3/c35503o.ada: Likewise. + * ada/acats-4/tests/c3/c35503p.ada: Likewise. + * ada/acats-4/tests/c3/c35504a.ada: Likewise. + * ada/acats-4/tests/c3/c35504b.ada: Likewise. + * ada/acats-4/tests/c3/c35505c.ada: Likewise. + * ada/acats-4/tests/c3/c35505e.ada: Likewise. + * ada/acats-4/tests/c3/c35505f.ada: Likewise. + * ada/acats-4/tests/c3/c35507a.ada: Likewise. + * ada/acats-4/tests/c3/c35507b.ada: Likewise. + * ada/acats-4/tests/c3/c35507c.ada: Likewise. + * ada/acats-4/tests/c3/c35507e.ada: Likewise. + * ada/acats-4/tests/c3/c35507g.ada: Likewise. + * ada/acats-4/tests/c3/c35507h.ada: Likewise. + * ada/acats-4/tests/c3/c35507i.ada: Likewise. + * ada/acats-4/tests/c3/c35507j.ada: Likewise. + * ada/acats-4/tests/c3/c35507k.ada: Likewise. + * ada/acats-4/tests/c3/c35507l.ada: Likewise. + * ada/acats-4/tests/c3/c35507m.ada: Likewise. + * ada/acats-4/tests/c3/c35507n.ada: Likewise. + * ada/acats-4/tests/c3/c35507o.ada: Likewise. + * ada/acats-4/tests/c3/c35507p.ada: Likewise. + * ada/acats-4/tests/c3/c35508a.ada: Likewise. + * ada/acats-4/tests/c3/c35508b.ada: Likewise. + * ada/acats-4/tests/c3/c35508c.ada: Likewise. + * ada/acats-4/tests/c3/c35508e.ada: Likewise. + * ada/acats-4/tests/c3/c35508g.ada: Likewise. + * ada/acats-4/tests/c3/c35508h.ada: Likewise. + * ada/acats-4/tests/c3/c35508k.ada: Likewise. + * ada/acats-4/tests/c3/c35508l.ada: Likewise. + * ada/acats-4/tests/c3/c35508o.ada: Likewise. + * ada/acats-4/tests/c3/c35508p.ada: Likewise. + * ada/acats-4/tests/c3/c35703a.ada: Likewise. + * ada/acats-4/tests/c3/c35704a.ada: Likewise. + * ada/acats-4/tests/c3/c35704b.ada: Likewise. + * ada/acats-4/tests/c3/c35704c.ada: Likewise. + * ada/acats-4/tests/c3/c35704d.ada: Likewise. + * ada/acats-4/tests/c3/c35801d.ada: Likewise. + * ada/acats-4/tests/c3/c35902d.ada: Likewise. + * ada/acats-4/tests/c3/c35904a.ada: Likewise. + * ada/acats-4/tests/c3/c35904b.ada: Likewise. + * ada/acats-4/tests/c3/c35a001.a: Likewise. + * ada/acats-4/tests/c3/c35a02a.ada: Likewise. + * ada/acats-4/tests/c3/c35a05a.ada: Likewise. + * ada/acats-4/tests/c3/c35a05d.ada: Likewise. + * ada/acats-4/tests/c3/c35a05n.ada: Likewise. + * ada/acats-4/tests/c3/c35a05q.ada: Likewise. + * ada/acats-4/tests/c3/c35a07a.ada: Likewise. + * ada/acats-4/tests/c3/c35a07d.ada: Likewise. + * ada/acats-4/tests/c3/c35a08b.ada: Likewise. + * ada/acats-4/tests/c3/c360002.a: Likewise. + * ada/acats-4/tests/c3/c360a01.a: Likewise. + * ada/acats-4/tests/c3/c360a02.a: Likewise. + * ada/acats-4/tests/c3/c360b01.a: Likewise. + * ada/acats-4/tests/c3/c360b02.a: Likewise. + * ada/acats-4/tests/c3/c36104a.ada: Likewise. + * ada/acats-4/tests/c3/c36104b.ada: Likewise. + * ada/acats-4/tests/c3/c36172a.ada: Likewise. + * ada/acats-4/tests/c3/c36172b.ada: Likewise. + * ada/acats-4/tests/c3/c36172c.ada: Likewise. + * ada/acats-4/tests/c3/c36174a.ada: Likewise. + * ada/acats-4/tests/c3/c36180a.ada: Likewise. + * ada/acats-4/tests/c3/c36202c.ada: Likewise. + * ada/acats-4/tests/c3/c36203a.ada: Likewise. + * ada/acats-4/tests/c3/c36204a.ada: Likewise. + * ada/acats-4/tests/c3/c36204b.ada: Likewise. + * ada/acats-4/tests/c3/c36204c.ada: Likewise. + * ada/acats-4/tests/c3/c36204d.ada: Likewise. + * ada/acats-4/tests/c3/c36205a.ada: Likewise. + * ada/acats-4/tests/c3/c36205b.ada: Likewise. + * ada/acats-4/tests/c3/c36205c.ada: Likewise. + * ada/acats-4/tests/c3/c36205d.ada: Likewise. + * ada/acats-4/tests/c3/c36205e.ada: Likewise. + * ada/acats-4/tests/c3/c36205f.ada: Likewise. + * ada/acats-4/tests/c3/c36205g.ada: Likewise. + * ada/acats-4/tests/c3/c36205h.ada: Likewise. + * ada/acats-4/tests/c3/c36205i.ada: Likewise. + * ada/acats-4/tests/c3/c36205j.ada: Likewise. + * ada/acats-4/tests/c3/c36205k.ada: Likewise. + * ada/acats-4/tests/c3/c36205l.ada: Likewise. + * ada/acats-4/tests/c3/c36301a.ada: Likewise. + * ada/acats-4/tests/c3/c36301b.ada: Likewise. + * ada/acats-4/tests/c3/c36302a.ada: Likewise. + * ada/acats-4/tests/c3/c36304a.ada: Likewise. + * ada/acats-4/tests/c3/c36305a.ada: Likewise. + * ada/acats-4/tests/c3/c37002a.ada: Likewise. + * ada/acats-4/tests/c3/c37003a.ada: Likewise. + * ada/acats-4/tests/c3/c37003b.ada: Likewise. + * ada/acats-4/tests/c3/c37005a.ada: Likewise. + * ada/acats-4/tests/c3/c37006a.ada: Likewise. + * ada/acats-4/tests/c3/c37008a.ada: Likewise. + * ada/acats-4/tests/c3/c37008b.ada: Likewise. + * ada/acats-4/tests/c3/c37009a.ada: Likewise. + * ada/acats-4/tests/c3/c37010a.ada: Likewise. + * ada/acats-4/tests/c3/c37010b.ada: Likewise. + * ada/acats-4/tests/c3/c371001.a: Likewise. + * ada/acats-4/tests/c3/c371002.a: Likewise. + * ada/acats-4/tests/c3/c371003.a: Likewise. + * ada/acats-4/tests/c3/c37102b.ada: Likewise. + * ada/acats-4/tests/c3/c37103a.ada: Likewise. + * ada/acats-4/tests/c3/c37105a.ada: Likewise. + * ada/acats-4/tests/c3/c37107a.ada: Likewise. + * ada/acats-4/tests/c3/c37108b.ada: Likewise. + * ada/acats-4/tests/c3/c37206a.ada: Likewise. + * ada/acats-4/tests/c3/c37207a.ada: Likewise. + * ada/acats-4/tests/c3/c37208a.ada: Likewise. + * ada/acats-4/tests/c3/c37208b.ada: Likewise. + * ada/acats-4/tests/c3/c37209a.ada: Likewise. + * ada/acats-4/tests/c3/c37209b.ada: Likewise. + * ada/acats-4/tests/c3/c37210a.ada: Likewise. + * ada/acats-4/tests/c3/c37211a.ada: Likewise. + * ada/acats-4/tests/c3/c37211b.ada: Likewise. + * ada/acats-4/tests/c3/c37211c.ada: Likewise. + * ada/acats-4/tests/c3/c37211d.ada: Likewise. + * ada/acats-4/tests/c3/c37211e.ada: Likewise. + * ada/acats-4/tests/c3/c37213b.ada: Likewise. + * ada/acats-4/tests/c3/c37213d.ada: Likewise. + * ada/acats-4/tests/c3/c37213f.ada: Likewise. + * ada/acats-4/tests/c3/c37213h.ada: Likewise. + * ada/acats-4/tests/c3/c37213j.ada: Likewise. + * ada/acats-4/tests/c3/c37213k.ada: Likewise. + * ada/acats-4/tests/c3/c37213l.ada: Likewise. + * ada/acats-4/tests/c3/c37215b.ada: Likewise. + * ada/acats-4/tests/c3/c37215d.ada: Likewise. + * ada/acats-4/tests/c3/c37215f.ada: Likewise. + * ada/acats-4/tests/c3/c37215h.ada: Likewise. + * ada/acats-4/tests/c3/c37217a.ada: Likewise. + * ada/acats-4/tests/c3/c37217b.ada: Likewise. + * ada/acats-4/tests/c3/c37217c.ada: Likewise. + * ada/acats-4/tests/c3/c37304a.ada: Likewise. + * ada/acats-4/tests/c3/c37305a.ada: Likewise. + * ada/acats-4/tests/c3/c37306a.ada: Likewise. + * ada/acats-4/tests/c3/c37309a.ada: Likewise. + * ada/acats-4/tests/c3/c37310a.ada: Likewise. + * ada/acats-4/tests/c3/c37312a.ada: Likewise. + * ada/acats-4/tests/c3/c37402a.ada: Likewise. + * ada/acats-4/tests/c3/c37403a.ada: Likewise. + * ada/acats-4/tests/c3/c37404a.ada: Likewise. + * ada/acats-4/tests/c3/c37404b.ada: Likewise. + * ada/acats-4/tests/c3/c37405a.ada: Likewise. + * ada/acats-4/tests/c3/c37411a.ada: Likewise. + * ada/acats-4/tests/c3/c380001.a: Likewise. + * ada/acats-4/tests/c3/c380002.a: Likewise. + * ada/acats-4/tests/c3/c380003.a: Likewise. + * ada/acats-4/tests/c3/c380004.a: Likewise. + * ada/acats-4/tests/c3/c38002a.ada: Likewise. + * ada/acats-4/tests/c3/c38002b.ada: Likewise. + * ada/acats-4/tests/c3/c38005a.ada: Likewise. + * ada/acats-4/tests/c3/c38005b.ada: Likewise. + * ada/acats-4/tests/c3/c38005c.ada: Likewise. + * ada/acats-4/tests/c3/c38102a.ada: Likewise. + * ada/acats-4/tests/c3/c38102b.ada: Likewise. + * ada/acats-4/tests/c3/c38102c.ada: Likewise. + * ada/acats-4/tests/c3/c38102d.ada: Likewise. + * ada/acats-4/tests/c3/c38102e.ada: Likewise. + * ada/acats-4/tests/c3/c38104a.ada: Likewise. + * ada/acats-4/tests/c3/c38107a.ada: Likewise. + * ada/acats-4/tests/c3/c38107b.ada: Likewise. + * ada/acats-4/tests/c3/c38108a.ada: Likewise. + * ada/acats-4/tests/c3/c38108b.ada: Likewise. + * ada/acats-4/tests/c3/c38108c0.ada: Likewise. + * ada/acats-4/tests/c3/c38108c1.ada: Likewise. + * ada/acats-4/tests/c3/c38108c2.ada: Likewise. + * ada/acats-4/tests/c3/c38108d0.ada: Likewise. + * ada/acats-4/tests/c3/c38108d1.ada: Likewise. + * ada/acats-4/tests/c3/c3900010.a: Likewise. + * ada/acats-4/tests/c3/c3900011.am: Likewise. + * ada/acats-4/tests/c3/c390002.a: Likewise. + * ada/acats-4/tests/c3/c390003.a: Likewise. + * ada/acats-4/tests/c3/c390004.a: Likewise. + * ada/acats-4/tests/c3/c3900050.a: Likewise. + * ada/acats-4/tests/c3/c3900051.a: Likewise. + * ada/acats-4/tests/c3/c3900052.a: Likewise. + * ada/acats-4/tests/c3/c3900053.am: Likewise. + * ada/acats-4/tests/c3/c3900060.a: Likewise. + * ada/acats-4/tests/c3/c3900061.a: Likewise. + * ada/acats-4/tests/c3/c3900062.a: Likewise. + * ada/acats-4/tests/c3/c3900063.am: Likewise. + * ada/acats-4/tests/c3/c390007.a: Likewise. + * ada/acats-4/tests/c3/c390010.a: Likewise. + * ada/acats-4/tests/c3/c390011.a: Likewise. + * ada/acats-4/tests/c3/c390012.a: Likewise. + * ada/acats-4/tests/c3/c39006a.ada: Likewise. + * ada/acats-4/tests/c3/c39006b.ada: Likewise. + * ada/acats-4/tests/c3/c39006c0.ada: Likewise. + * ada/acats-4/tests/c3/c39006c1.ada: Likewise. + * ada/acats-4/tests/c3/c39006d.ada: Likewise. + * ada/acats-4/tests/c3/c39006e.ada: Likewise. + * ada/acats-4/tests/c3/c39006f0.ada: Likewise. + * ada/acats-4/tests/c3/c39006f1.ada: Likewise. + * ada/acats-4/tests/c3/c39006f2.ada: Likewise. + * ada/acats-4/tests/c3/c39006f3.ada: Likewise. + * ada/acats-4/tests/c3/c39006g.ada: Likewise. + * ada/acats-4/tests/c3/c39007a.ada: Likewise. + * ada/acats-4/tests/c3/c39007b.ada: Likewise. + * ada/acats-4/tests/c3/c39008a.ada: Likewise. + * ada/acats-4/tests/c3/c39008b.ada: Likewise. + * ada/acats-4/tests/c3/c39008c.ada: Likewise. + * ada/acats-4/tests/c3/c390a010.a: Likewise. + * ada/acats-4/tests/c3/c390a011.am: Likewise. + * ada/acats-4/tests/c3/c390a020.a: Likewise. + * ada/acats-4/tests/c3/c390a021.a: Likewise. + * ada/acats-4/tests/c3/c390a022.am: Likewise. + * ada/acats-4/tests/c3/c390a030.a: Likewise. + * ada/acats-4/tests/c3/c390a031.am: Likewise. + * ada/acats-4/tests/c3/c391001.a: Likewise. + * ada/acats-4/tests/c3/c391002.a: Likewise. + * ada/acats-4/tests/c3/c391003.a: Likewise. + * ada/acats-4/tests/c3/c392002.a: Likewise. + * ada/acats-4/tests/c3/c392003.a: Likewise. + * ada/acats-4/tests/c3/c392004.a: Likewise. + * ada/acats-4/tests/c3/c392005.a: Likewise. + * ada/acats-4/tests/c3/c392008.a: Likewise. + * ada/acats-4/tests/c3/c392010.a: Likewise. + * ada/acats-4/tests/c3/c392011.a: Likewise. + * ada/acats-4/tests/c3/c392013.a: Likewise. + * ada/acats-4/tests/c3/c392014.a: Likewise. + * ada/acats-4/tests/c3/c392015.a: Likewise. + * ada/acats-4/tests/c3/c392a01.a: Likewise. + * ada/acats-4/tests/c3/c392c05.a: Likewise. + * ada/acats-4/tests/c3/c392c07.a: Likewise. + * ada/acats-4/tests/c3/c392d01.a: Likewise. + * ada/acats-4/tests/c3/c392d02.a: Likewise. + * ada/acats-4/tests/c3/c392d03.a: Likewise. + * ada/acats-4/tests/c3/c393001.a: Likewise. + * ada/acats-4/tests/c3/c393007.a: Likewise. + * ada/acats-4/tests/c3/c393008.a: Likewise. + * ada/acats-4/tests/c3/c393009.a: Likewise. + * ada/acats-4/tests/c3/c393010.a: Likewise. + * ada/acats-4/tests/c3/c393011.a: Likewise. + * ada/acats-4/tests/c3/c393012.a: Likewise. + * ada/acats-4/tests/c3/c393013.a: Likewise. + * ada/acats-4/tests/c3/c393a02.a: Likewise. + * ada/acats-4/tests/c3/c393a03.a: Likewise. + * ada/acats-4/tests/c3/c393a05.a: Likewise. + * ada/acats-4/tests/c3/c393a06.a: Likewise. + * ada/acats-4/tests/c3/c393b12.a: Likewise. + * ada/acats-4/tests/c3/c393b13.a: Likewise. + * ada/acats-4/tests/c3/c393b14.a: Likewise. + * ada/acats-4/tests/c3/c394001.a: Likewise. + * ada/acats-4/tests/c3/c394002.a: Likewise. + * ada/acats-4/tests/c3/c394003.a: Likewise. + * ada/acats-4/tests/c3/c3a0001.a: Likewise. + * ada/acats-4/tests/c3/c3a0002.a: Likewise. + * ada/acats-4/tests/c3/c3a0003.a: Likewise. + * ada/acats-4/tests/c3/c3a0004.a: Likewise. + * ada/acats-4/tests/c3/c3a0005.a: Likewise. + * ada/acats-4/tests/c3/c3a0006.a: Likewise. + * ada/acats-4/tests/c3/c3a0007.a: Likewise. + * ada/acats-4/tests/c3/c3a0008.a: Likewise. + * ada/acats-4/tests/c3/c3a0009.a: Likewise. + * ada/acats-4/tests/c3/c3a0010.a: Likewise. + * ada/acats-4/tests/c3/c3a0011.a: Likewise. + * ada/acats-4/tests/c3/c3a00120.a: Likewise. + * ada/acats-4/tests/c3/c3a00121.a: Likewise. + * ada/acats-4/tests/c3/c3a00122.am: Likewise. + * ada/acats-4/tests/c3/c3a0013.a: Likewise. + * ada/acats-4/tests/c3/c3a0014.a: Likewise. + * ada/acats-4/tests/c3/c3a0015.a: Likewise. + * ada/acats-4/tests/c3/c3a0016.a: Likewise. + * ada/acats-4/tests/c3/c3a0017.a: Likewise. + * ada/acats-4/tests/c3/c3a0018.a: Likewise. + * ada/acats-4/tests/c3/c3a0019.a: Likewise. + * ada/acats-4/tests/c3/c3a0020.a: Likewise. + * ada/acats-4/tests/c3/c3a0021.a: Likewise. + * ada/acats-4/tests/c3/c3a0022.a: Likewise. + * ada/acats-4/tests/c3/c3a0023.a: Likewise. + * ada/acats-4/tests/c3/c3a0024.a: Likewise. + * ada/acats-4/tests/c3/c3a0025.a: Likewise. + * ada/acats-4/tests/c3/c3a0026.a: Likewise. + * ada/acats-4/tests/c3/c3a0027.a: Likewise. + * ada/acats-4/tests/c3/c3a0028.a: Likewise. + * ada/acats-4/tests/c3/c3a0029.a: Likewise. + * ada/acats-4/tests/c3/c3a0030.a: Likewise. + * ada/acats-4/tests/c3/c3a1001.a: Likewise. + * ada/acats-4/tests/c3/c3a1002.a: Likewise. + * ada/acats-4/tests/c3/c3a10030.a: Likewise. + * ada/acats-4/tests/c3/c3a10031.a: Likewise. + * ada/acats-4/tests/c3/c3a10032.am: Likewise. + * ada/acats-4/tests/c3/c3a10040.a: Likewise. + * ada/acats-4/tests/c3/c3a10041.a: Likewise. + * ada/acats-4/tests/c3/c3a10042.am: Likewise. + * ada/acats-4/tests/c3/c3a1005.a: Likewise. + * ada/acats-4/tests/c3/c3a2001.a: Likewise. + * ada/acats-4/tests/c3/c3a2002.a: Likewise. + * ada/acats-4/tests/c3/c3a2003.a: Likewise. + * ada/acats-4/tests/c3/c3a2004.a: Likewise. + * ada/acats-4/tests/c3/c3a2a01.a: Likewise. + * ada/acats-4/tests/c3/c3a2a02.a: Likewise. + * ada/acats-4/tests/c4/c410001.a: Likewise. + * ada/acats-4/tests/c4/c41101d.ada: Likewise. + * ada/acats-4/tests/c4/c41103a.ada: Likewise. + * ada/acats-4/tests/c4/c41103b.ada: Likewise. + * ada/acats-4/tests/c4/c41104a.ada: Likewise. + * ada/acats-4/tests/c4/c41105a.ada: Likewise. + * ada/acats-4/tests/c4/c41107a.ada: Likewise. + * ada/acats-4/tests/c4/c41201d.ada: Likewise. + * ada/acats-4/tests/c4/c41203a.ada: Likewise. + * ada/acats-4/tests/c4/c41203b.ada: Likewise. + * ada/acats-4/tests/c4/c41204a.ada: Likewise. + * ada/acats-4/tests/c4/c41205a.ada: Likewise. + * ada/acats-4/tests/c4/c41206a.ada: Likewise. + * ada/acats-4/tests/c4/c41207a.ada: Likewise. + * ada/acats-4/tests/c4/c413001.a: Likewise. + * ada/acats-4/tests/c4/c413002.a: Likewise. + * ada/acats-4/tests/c4/c413003.a: Likewise. + * ada/acats-4/tests/c4/c413004.a: Likewise. + * ada/acats-4/tests/c4/c413005.a: Likewise. + * ada/acats-4/tests/c4/c413006.a: Likewise. + * ada/acats-4/tests/c4/c413007.a: Likewise. + * ada/acats-4/tests/c4/c41301a.ada: Likewise. + * ada/acats-4/tests/c4/c41303a.ada: Likewise. + * ada/acats-4/tests/c4/c41303b.ada: Likewise. + * ada/acats-4/tests/c4/c41303c.ada: Likewise. + * ada/acats-4/tests/c4/c41303e.ada: Likewise. + * ada/acats-4/tests/c4/c41303f.ada: Likewise. + * ada/acats-4/tests/c4/c41303g.ada: Likewise. + * ada/acats-4/tests/c4/c41303i.ada: Likewise. + * ada/acats-4/tests/c4/c41303j.ada: Likewise. + * ada/acats-4/tests/c4/c41303k.ada: Likewise. + * ada/acats-4/tests/c4/c41303m.ada: Likewise. + * ada/acats-4/tests/c4/c41303n.ada: Likewise. + * ada/acats-4/tests/c4/c41303o.ada: Likewise. + * ada/acats-4/tests/c4/c41303q.ada: Likewise. + * ada/acats-4/tests/c4/c41303r.ada: Likewise. + * ada/acats-4/tests/c4/c41303s.ada: Likewise. + * ada/acats-4/tests/c4/c41303u.ada: Likewise. + * ada/acats-4/tests/c4/c41303v.ada: Likewise. + * ada/acats-4/tests/c4/c41303w.ada: Likewise. + * ada/acats-4/tests/c4/c41304a.ada: Likewise. + * ada/acats-4/tests/c4/c41304b.ada: Likewise. + * ada/acats-4/tests/c4/c41306b.ada: Likewise. + * ada/acats-4/tests/c4/c41306c.ada: Likewise. + * ada/acats-4/tests/c4/c41307d.ada: Likewise. + * ada/acats-4/tests/c4/c41309a.ada: Likewise. + * ada/acats-4/tests/c4/c41320a.ada: Likewise. + * ada/acats-4/tests/c4/c41321a.ada: Likewise. + * ada/acats-4/tests/c4/c41322a.ada: Likewise. + * ada/acats-4/tests/c4/c41323a.ada: Likewise. + * ada/acats-4/tests/c4/c41324a.ada: Likewise. + * ada/acats-4/tests/c4/c41325a.ada: Likewise. + * ada/acats-4/tests/c4/c41326a.ada: Likewise. + * ada/acats-4/tests/c4/c41327a.ada: Likewise. + * ada/acats-4/tests/c4/c41328a.ada: Likewise. + * ada/acats-4/tests/c4/c41401a.ada: Likewise. + * ada/acats-4/tests/c4/c41402a.ada: Likewise. + * ada/acats-4/tests/c4/c41404a.ada: Likewise. + * ada/acats-4/tests/c4/c416a01.a: Likewise. + * ada/acats-4/tests/c4/c416a02.a: Likewise. + * ada/acats-4/tests/c4/c420001.a: Likewise. + * ada/acats-4/tests/c4/c42006a.ada: Likewise. + * ada/acats-4/tests/c4/c42007e.ada: Likewise. + * ada/acats-4/tests/c4/c43003a.ada: Likewise. + * ada/acats-4/tests/c4/c43004a.ada: Likewise. + * ada/acats-4/tests/c4/c43004c.ada: Likewise. + * ada/acats-4/tests/c4/c431001.a: Likewise. + * ada/acats-4/tests/c4/c431002.a: Likewise. + * ada/acats-4/tests/c4/c431003.a: Likewise. + * ada/acats-4/tests/c4/c431004.a: Likewise. + * ada/acats-4/tests/c4/c43103a.ada: Likewise. + * ada/acats-4/tests/c4/c43103b.ada: Likewise. + * ada/acats-4/tests/c4/c43104a.ada: Likewise. + * ada/acats-4/tests/c4/c43105a.ada: Likewise. + * ada/acats-4/tests/c4/c43105b.ada: Likewise. + * ada/acats-4/tests/c4/c43106a.ada: Likewise. + * ada/acats-4/tests/c4/c43107a.ada: Likewise. + * ada/acats-4/tests/c4/c43108a.ada: Likewise. + * ada/acats-4/tests/c4/c431a01.a: Likewise. + * ada/acats-4/tests/c4/c431a02.a: Likewise. + * ada/acats-4/tests/c4/c431a03.a: Likewise. + * ada/acats-4/tests/c4/c432001.a: Likewise. + * ada/acats-4/tests/c4/c432002.a: Likewise. + * ada/acats-4/tests/c4/c432003.a: Likewise. + * ada/acats-4/tests/c4/c432004.a: Likewise. + * ada/acats-4/tests/c4/c432005.a: Likewise. + * ada/acats-4/tests/c4/c43204a.ada: Likewise. + * ada/acats-4/tests/c4/c43204c.ada: Likewise. + * ada/acats-4/tests/c4/c43204e.ada: Likewise. + * ada/acats-4/tests/c4/c43204f.ada: Likewise. + * ada/acats-4/tests/c4/c43204g.ada: Likewise. + * ada/acats-4/tests/c4/c43204h.ada: Likewise. + * ada/acats-4/tests/c4/c43204i.ada: Likewise. + * ada/acats-4/tests/c4/c43205a.ada: Likewise. + * ada/acats-4/tests/c4/c43205b.ada: Likewise. + * ada/acats-4/tests/c4/c43205c.ada: Likewise. + * ada/acats-4/tests/c4/c43205d.ada: Likewise. + * ada/acats-4/tests/c4/c43205e.ada: Likewise. + * ada/acats-4/tests/c4/c43205g.ada: Likewise. + * ada/acats-4/tests/c4/c43205h.ada: Likewise. + * ada/acats-4/tests/c4/c43205i.ada: Likewise. + * ada/acats-4/tests/c4/c43205j.ada: Likewise. + * ada/acats-4/tests/c4/c43205k.ada: Likewise. + * ada/acats-4/tests/c4/c43206a.ada: Likewise. + * ada/acats-4/tests/c4/c43207b.ada: Likewise. + * ada/acats-4/tests/c4/c43207d.ada: Likewise. + * ada/acats-4/tests/c4/c43208a.ada: Likewise. + * ada/acats-4/tests/c4/c43208b.ada: Likewise. + * ada/acats-4/tests/c4/c43209a.ada: Likewise. + * ada/acats-4/tests/c4/c43210a.ada: Likewise. + * ada/acats-4/tests/c4/c43211a.ada: Likewise. + * ada/acats-4/tests/c4/c43212a.ada: Likewise. + * ada/acats-4/tests/c4/c43212c.ada: Likewise. + * ada/acats-4/tests/c4/c43214a.ada: Likewise. + * ada/acats-4/tests/c4/c43214b.ada: Likewise. + * ada/acats-4/tests/c4/c43214c.ada: Likewise. + * ada/acats-4/tests/c4/c43214d.ada: Likewise. + * ada/acats-4/tests/c4/c43214e.ada: Likewise. + * ada/acats-4/tests/c4/c43214f.ada: Likewise. + * ada/acats-4/tests/c4/c43215a.ada: Likewise. + * ada/acats-4/tests/c4/c43215b.ada: Likewise. + * ada/acats-4/tests/c4/c43222a.ada: Likewise. + * ada/acats-4/tests/c4/c43224a.ada: Likewise. + * ada/acats-4/tests/c4/c433001.a: Likewise. + * ada/acats-4/tests/c4/c433002.a: Likewise. + * ada/acats-4/tests/c4/c433003.a: Likewise. + * ada/acats-4/tests/c4/c433004.a: Likewise. + * ada/acats-4/tests/c4/c433005.a: Likewise. + * ada/acats-4/tests/c4/c433006.a: Likewise. + * ada/acats-4/tests/c4/c433007.a: Likewise. + * ada/acats-4/tests/c4/c433008.a: Likewise. + * ada/acats-4/tests/c4/c433a01.a: Likewise. + * ada/acats-4/tests/c4/c433a02.a: Likewise. + * ada/acats-4/tests/c4/c433a03.a: Likewise. + * ada/acats-4/tests/c4/c433a04.a: Likewise. + * ada/acats-4/tests/c4/c44003d.ada: Likewise. + * ada/acats-4/tests/c4/c44003f.ada: Likewise. + * ada/acats-4/tests/c4/c44003g.ada: Likewise. + * ada/acats-4/tests/c4/c450001.a: Likewise. + * ada/acats-4/tests/c4/c45112a.ada: Likewise. + * ada/acats-4/tests/c4/c45112b.ada: Likewise. + * ada/acats-4/tests/c4/c45113a.ada: Likewise. + * ada/acats-4/tests/c4/c45114b.ada: Likewise. + * ada/acats-4/tests/c4/c452001.a: Likewise. + * ada/acats-4/tests/c4/c452002.a: Likewise. + * ada/acats-4/tests/c4/c452003.a: Likewise. + * ada/acats-4/tests/c4/c452004.a: Likewise. + * ada/acats-4/tests/c4/c452005.a: Likewise. + * ada/acats-4/tests/c4/c452006.a: Likewise. + * ada/acats-4/tests/c4/c45201a.ada: Likewise. + * ada/acats-4/tests/c4/c45201b.ada: Likewise. + * ada/acats-4/tests/c4/c45202b.ada: Likewise. + * ada/acats-4/tests/c4/c45210a.ada: Likewise. + * ada/acats-4/tests/c4/c45211a.ada: Likewise. + * ada/acats-4/tests/c4/c45220a.ada: Likewise. + * ada/acats-4/tests/c4/c45220b.ada: Likewise. + * ada/acats-4/tests/c4/c45220c.ada: Likewise. + * ada/acats-4/tests/c4/c45220d.ada: Likewise. + * ada/acats-4/tests/c4/c45220e.ada: Likewise. + * ada/acats-4/tests/c4/c45220f.ada: Likewise. + * ada/acats-4/tests/c4/c45231a.ada: Likewise. + * ada/acats-4/tests/c4/c45231b.dep: Likewise. + * ada/acats-4/tests/c4/c45231c.dep: Likewise. + * ada/acats-4/tests/c4/c45231d.tst: Likewise. + * ada/acats-4/tests/c4/c45232b.ada: Likewise. + * ada/acats-4/tests/c4/c45242b.ada: Likewise. + * ada/acats-4/tests/c4/c45251a.ada: Likewise. + * ada/acats-4/tests/c4/c45252a.ada: Likewise. + * ada/acats-4/tests/c4/c45252b.ada: Likewise. + * ada/acats-4/tests/c4/c45253a.ada: Likewise. + * ada/acats-4/tests/c4/c45262a.ada: Likewise. + * ada/acats-4/tests/c4/c45262b.ada: Likewise. + * ada/acats-4/tests/c4/c45262c.ada: Likewise. + * ada/acats-4/tests/c4/c45262d.ada: Likewise. + * ada/acats-4/tests/c4/c45264a.ada: Likewise. + * ada/acats-4/tests/c4/c45264b.ada: Likewise. + * ada/acats-4/tests/c4/c45264c.ada: Likewise. + * ada/acats-4/tests/c4/c45265a.ada: Likewise. + * ada/acats-4/tests/c4/c45271a.ada: Likewise. + * ada/acats-4/tests/c4/c45272a.ada: Likewise. + * ada/acats-4/tests/c4/c45273a.ada: Likewise. + * ada/acats-4/tests/c4/c45274a.ada: Likewise. + * ada/acats-4/tests/c4/c45274b.ada: Likewise. + * ada/acats-4/tests/c4/c45274c.ada: Likewise. + * ada/acats-4/tests/c4/c45281a.ada: Likewise. + * ada/acats-4/tests/c4/c45282a.ada: Likewise. + * ada/acats-4/tests/c4/c45282b.ada: Likewise. + * ada/acats-4/tests/c4/c45291a.ada: Likewise. + * ada/acats-4/tests/c4/c452a01.a: Likewise. + * ada/acats-4/tests/c4/c452a02.a: Likewise. + * ada/acats-4/tests/c4/c452a03.a: Likewise. + * ada/acats-4/tests/c4/c453001.a: Likewise. + * ada/acats-4/tests/c4/c45303a.ada: Likewise. + * ada/acats-4/tests/c4/c45304a.ada: Likewise. + * ada/acats-4/tests/c4/c45304b.dep: Likewise. + * ada/acats-4/tests/c4/c45304c.dep: Likewise. + * ada/acats-4/tests/c4/c45322a.ada: Likewise. + * ada/acats-4/tests/c4/c45323a.ada: Likewise. + * ada/acats-4/tests/c4/c45331a.ada: Likewise. + * ada/acats-4/tests/c4/c45342a.ada: Likewise. + * ada/acats-4/tests/c4/c45343a.ada: Likewise. + * ada/acats-4/tests/c4/c45344a.ada: Likewise. + * ada/acats-4/tests/c4/c45345b.ada: Likewise. + * ada/acats-4/tests/c4/c45347a.ada: Likewise. + * ada/acats-4/tests/c4/c45347b.ada: Likewise. + * ada/acats-4/tests/c4/c45347c.ada: Likewise. + * ada/acats-4/tests/c4/c45347d.ada: Likewise. + * ada/acats-4/tests/c4/c45411a.ada: Likewise. + * ada/acats-4/tests/c4/c45411b.dep: Likewise. + * ada/acats-4/tests/c4/c45411c.dep: Likewise. + * ada/acats-4/tests/c4/c45411d.ada: Likewise. + * ada/acats-4/tests/c4/c45413a.ada: Likewise. + * ada/acats-4/tests/c4/c45431a.ada: Likewise. + * ada/acats-4/tests/c4/c455001.a: Likewise. + * ada/acats-4/tests/c4/c45502b.dep: Likewise. + * ada/acats-4/tests/c4/c45502c.dep: Likewise. + * ada/acats-4/tests/c4/c45503a.ada: Likewise. + * ada/acats-4/tests/c4/c45503b.dep: Likewise. + * ada/acats-4/tests/c4/c45503c.dep: Likewise. + * ada/acats-4/tests/c4/c45504a.ada: Likewise. + * ada/acats-4/tests/c4/c45504b.dep: Likewise. + * ada/acats-4/tests/c4/c45504c.dep: Likewise. + * ada/acats-4/tests/c4/c45504d.ada: Likewise. + * ada/acats-4/tests/c4/c45504e.dep: Likewise. + * ada/acats-4/tests/c4/c45504f.dep: Likewise. + * ada/acats-4/tests/c4/c45505a.ada: Likewise. + * ada/acats-4/tests/c4/c45523a.ada: Likewise. + * ada/acats-4/tests/c4/c45531a.ada: Likewise. + * ada/acats-4/tests/c4/c45531b.ada: Likewise. + * ada/acats-4/tests/c4/c45531c.ada: Likewise. + * ada/acats-4/tests/c4/c45531d.ada: Likewise. + * ada/acats-4/tests/c4/c45531e.ada: Likewise. + * ada/acats-4/tests/c4/c45531f.ada: Likewise. + * ada/acats-4/tests/c4/c45531g.ada: Likewise. + * ada/acats-4/tests/c4/c45531h.ada: Likewise. + * ada/acats-4/tests/c4/c45531i.ada: Likewise. + * ada/acats-4/tests/c4/c45531j.ada: Likewise. + * ada/acats-4/tests/c4/c45531k.ada: Likewise. + * ada/acats-4/tests/c4/c45531l.ada: Likewise. + * ada/acats-4/tests/c4/c45531m.dep: Likewise. + * ada/acats-4/tests/c4/c45531n.dep: Likewise. + * ada/acats-4/tests/c4/c45531o.dep: Likewise. + * ada/acats-4/tests/c4/c45531p.dep: Likewise. + * ada/acats-4/tests/c4/c45532a.ada: Likewise. + * ada/acats-4/tests/c4/c45532b.ada: Likewise. + * ada/acats-4/tests/c4/c45532c.ada: Likewise. + * ada/acats-4/tests/c4/c45532d.ada: Likewise. + * ada/acats-4/tests/c4/c45532e.ada: Likewise. + * ada/acats-4/tests/c4/c45532f.ada: Likewise. + * ada/acats-4/tests/c4/c45532g.ada: Likewise. + * ada/acats-4/tests/c4/c45532h.ada: Likewise. + * ada/acats-4/tests/c4/c45532i.ada: Likewise. + * ada/acats-4/tests/c4/c45532j.ada: Likewise. + * ada/acats-4/tests/c4/c45532k.ada: Likewise. + * ada/acats-4/tests/c4/c45532l.ada: Likewise. + * ada/acats-4/tests/c4/c45532m.dep: Likewise. + * ada/acats-4/tests/c4/c45532n.dep: Likewise. + * ada/acats-4/tests/c4/c45532o.dep: Likewise. + * ada/acats-4/tests/c4/c45532p.dep: Likewise. + * ada/acats-4/tests/c4/c45534b.ada: Likewise. + * ada/acats-4/tests/c4/c45536a.dep: Likewise. + * ada/acats-4/tests/c4/c456001.a: Likewise. + * ada/acats-4/tests/c4/c45611a.ada: Likewise. + * ada/acats-4/tests/c4/c45611b.dep: Likewise. + * ada/acats-4/tests/c4/c45611c.dep: Likewise. + * ada/acats-4/tests/c4/c45613a.ada: Likewise. + * ada/acats-4/tests/c4/c45613b.dep: Likewise. + * ada/acats-4/tests/c4/c45613c.dep: Likewise. + * ada/acats-4/tests/c4/c45614a.ada: Likewise. + * ada/acats-4/tests/c4/c45614b.dep: Likewise. + * ada/acats-4/tests/c4/c45614c.dep: Likewise. + * ada/acats-4/tests/c4/c45631a.ada: Likewise. + * ada/acats-4/tests/c4/c45631b.dep: Likewise. + * ada/acats-4/tests/c4/c45631c.dep: Likewise. + * ada/acats-4/tests/c4/c45632a.ada: Likewise. + * ada/acats-4/tests/c4/c45632b.dep: Likewise. + * ada/acats-4/tests/c4/c45632c.dep: Likewise. + * ada/acats-4/tests/c4/c45651a.ada: Likewise. + * ada/acats-4/tests/c4/c45662a.ada: Likewise. + * ada/acats-4/tests/c4/c45662b.ada: Likewise. + * ada/acats-4/tests/c4/c45672a.ada: Likewise. + * ada/acats-4/tests/c4/c457001.a: Likewise. + * ada/acats-4/tests/c4/c457002.a: Likewise. + * ada/acats-4/tests/c4/c457003.a: Likewise. + * ada/acats-4/tests/c4/c457004.a: Likewise. + * ada/acats-4/tests/c4/c457005.a: Likewise. + * ada/acats-4/tests/c4/c457006.a: Likewise. + * ada/acats-4/tests/c4/c457007.a: Likewise. + * ada/acats-4/tests/c4/c458001.a: Likewise. + * ada/acats-4/tests/c4/c458002.a: Likewise. + * ada/acats-4/tests/c4/c458003.a: Likewise. + * ada/acats-4/tests/c4/c458a01.a: Likewise. + * ada/acats-4/tests/c4/c458a02.a: Likewise. + * ada/acats-4/tests/c4/c460001.a: Likewise. + * ada/acats-4/tests/c4/c460002.a: Likewise. + * ada/acats-4/tests/c4/c460004.a: Likewise. + * ada/acats-4/tests/c4/c460005.a: Likewise. + * ada/acats-4/tests/c4/c460006.a: Likewise. + * ada/acats-4/tests/c4/c460007.a: Likewise. + * ada/acats-4/tests/c4/c460008.a: Likewise. + * ada/acats-4/tests/c4/c460009.a: Likewise. + * ada/acats-4/tests/c4/c460010.a: Likewise. + * ada/acats-4/tests/c4/c460011.a: Likewise. + * ada/acats-4/tests/c4/c460012.a: Likewise. + * ada/acats-4/tests/c4/c460013.a: Likewise. + * ada/acats-4/tests/c4/c460014.a: Likewise. + * ada/acats-4/tests/c4/c460015.a: Likewise. + * ada/acats-4/tests/c4/c46011a.ada: Likewise. + * ada/acats-4/tests/c4/c46013a.ada: Likewise. + * ada/acats-4/tests/c4/c46014a.ada: Likewise. + * ada/acats-4/tests/c4/c46021a.ada: Likewise. + * ada/acats-4/tests/c4/c46024a.ada: Likewise. + * ada/acats-4/tests/c4/c46031a.ada: Likewise. + * ada/acats-4/tests/c4/c46032a.ada: Likewise. + * ada/acats-4/tests/c4/c46033a.ada: Likewise. + * ada/acats-4/tests/c4/c46041a.ada: Likewise. + * ada/acats-4/tests/c4/c46042a.ada: Likewise. + * ada/acats-4/tests/c4/c46043b.ada: Likewise. + * ada/acats-4/tests/c4/c46044b.ada: Likewise. + * ada/acats-4/tests/c4/c46051a.ada: Likewise. + * ada/acats-4/tests/c4/c46051b.ada: Likewise. + * ada/acats-4/tests/c4/c46051c.ada: Likewise. + * ada/acats-4/tests/c4/c46052a.ada: Likewise. + * ada/acats-4/tests/c4/c46053a.ada: Likewise. + * ada/acats-4/tests/c4/c46054a.ada: Likewise. + * ada/acats-4/tests/c4/c460a01.a: Likewise. + * ada/acats-4/tests/c4/c460a02.a: Likewise. + * ada/acats-4/tests/c4/c470001.a: Likewise. + * ada/acats-4/tests/c4/c47002a.ada: Likewise. + * ada/acats-4/tests/c4/c47002b.ada: Likewise. + * ada/acats-4/tests/c4/c47002c.ada: Likewise. + * ada/acats-4/tests/c4/c47002d.ada: Likewise. + * ada/acats-4/tests/c4/c47003a.ada: Likewise. + * ada/acats-4/tests/c4/c47004a.ada: Likewise. + * ada/acats-4/tests/c4/c47005a.ada: Likewise. + * ada/acats-4/tests/c4/c47006a.ada: Likewise. + * ada/acats-4/tests/c4/c47007a.ada: Likewise. + * ada/acats-4/tests/c4/c47008a.ada: Likewise. + * ada/acats-4/tests/c4/c47009a.ada: Likewise. + * ada/acats-4/tests/c4/c47009b.ada: Likewise. + * ada/acats-4/tests/c4/c480001.a: Likewise. + * ada/acats-4/tests/c4/c48004a.ada: Likewise. + * ada/acats-4/tests/c4/c48004b.ada: Likewise. + * ada/acats-4/tests/c4/c48004c.ada: Likewise. + * ada/acats-4/tests/c4/c48004d.ada: Likewise. + * ada/acats-4/tests/c4/c48004e.ada: Likewise. + * ada/acats-4/tests/c4/c48004f.ada: Likewise. + * ada/acats-4/tests/c4/c48005a.ada: Likewise. + * ada/acats-4/tests/c4/c48005b.ada: Likewise. + * ada/acats-4/tests/c4/c48006a.ada: Likewise. + * ada/acats-4/tests/c4/c48006b.ada: Likewise. + * ada/acats-4/tests/c4/c48007a.ada: Likewise. + * ada/acats-4/tests/c4/c48007b.ada: Likewise. + * ada/acats-4/tests/c4/c48007c.ada: Likewise. + * ada/acats-4/tests/c4/c48008a.ada: Likewise. + * ada/acats-4/tests/c4/c48008c.ada: Likewise. + * ada/acats-4/tests/c4/c48009a.ada: Likewise. + * ada/acats-4/tests/c4/c48009b.ada: Likewise. + * ada/acats-4/tests/c4/c48009c.ada: Likewise. + * ada/acats-4/tests/c4/c48009d.ada: Likewise. + * ada/acats-4/tests/c4/c48009e.ada: Likewise. + * ada/acats-4/tests/c4/c48009f.ada: Likewise. + * ada/acats-4/tests/c4/c48009g.ada: Likewise. + * ada/acats-4/tests/c4/c48009h.ada: Likewise. + * ada/acats-4/tests/c4/c48009i.ada: Likewise. + * ada/acats-4/tests/c4/c48009j.ada: Likewise. + * ada/acats-4/tests/c4/c48010a.ada: Likewise. + * ada/acats-4/tests/c4/c48011a.ada: Likewise. + * ada/acats-4/tests/c4/c48012a.ada: Likewise. + * ada/acats-4/tests/c4/c490001.a: Likewise. + * ada/acats-4/tests/c4/c490002.a: Likewise. + * ada/acats-4/tests/c4/c490003.a: Likewise. + * ada/acats-4/tests/c4/c49020a.ada: Likewise. + * ada/acats-4/tests/c4/c49021a.ada: Likewise. + * ada/acats-4/tests/c4/c49022a.ada: Likewise. + * ada/acats-4/tests/c4/c49022b.ada: Likewise. + * ada/acats-4/tests/c4/c49022c.ada: Likewise. + * ada/acats-4/tests/c4/c49023a.ada: Likewise. + * ada/acats-4/tests/c4/c49024a.ada: Likewise. + * ada/acats-4/tests/c4/c49025a.ada: Likewise. + * ada/acats-4/tests/c4/c49026a.ada: Likewise. + * ada/acats-4/tests/c4/c4a005b.ada: Likewise. + * ada/acats-4/tests/c4/c4a006a.ada: Likewise. + * ada/acats-4/tests/c4/c4a007a.tst: Likewise. + * ada/acats-4/tests/c4/c4a010a.ada: Likewise. + * ada/acats-4/tests/c4/c4a010b.ada: Likewise. + * ada/acats-4/tests/c4/c4a011a.ada: Likewise. + * ada/acats-4/tests/c4/c4a012b.ada: Likewise. + * ada/acats-4/tests/c4/c4a013a.ada: Likewise. + * ada/acats-4/tests/c4/c4a014a.ada: Likewise. + * ada/acats-4/tests/c5/c51004a.ada: Likewise. + * ada/acats-4/tests/c5/c52005a.ada: Likewise. + * ada/acats-4/tests/c5/c52005b.ada: Likewise. + * ada/acats-4/tests/c5/c52005c.ada: Likewise. + * ada/acats-4/tests/c5/c52005d.ada: Likewise. + * ada/acats-4/tests/c5/c52005e.ada: Likewise. + * ada/acats-4/tests/c5/c52005f.ada: Likewise. + * ada/acats-4/tests/c5/c52008a.ada: Likewise. + * ada/acats-4/tests/c5/c52008b.ada: Likewise. + * ada/acats-4/tests/c5/c52009a.ada: Likewise. + * ada/acats-4/tests/c5/c52009b.ada: Likewise. + * ada/acats-4/tests/c5/c52010a.ada: Likewise. + * ada/acats-4/tests/c5/c52011a.ada: Likewise. + * ada/acats-4/tests/c5/c52011b.ada: Likewise. + * ada/acats-4/tests/c5/c52101a.ada: Likewise. + * ada/acats-4/tests/c5/c52102a.ada: Likewise. + * ada/acats-4/tests/c5/c52102b.ada: Likewise. + * ada/acats-4/tests/c5/c52102c.ada: Likewise. + * ada/acats-4/tests/c5/c52102d.ada: Likewise. + * ada/acats-4/tests/c5/c52103a.ada: Likewise. + * ada/acats-4/tests/c5/c52103b.ada: Likewise. + * ada/acats-4/tests/c5/c52103c.ada: Likewise. + * ada/acats-4/tests/c5/c52103f.ada: Likewise. + * ada/acats-4/tests/c5/c52103g.ada: Likewise. + * ada/acats-4/tests/c5/c52103h.ada: Likewise. + * ada/acats-4/tests/c5/c52103k.ada: Likewise. + * ada/acats-4/tests/c5/c52103l.ada: Likewise. + * ada/acats-4/tests/c5/c52103m.ada: Likewise. + * ada/acats-4/tests/c5/c52103p.ada: Likewise. + * ada/acats-4/tests/c5/c52103q.ada: Likewise. + * ada/acats-4/tests/c5/c52103r.ada: Likewise. + * ada/acats-4/tests/c5/c52103x.ada: Likewise. + * ada/acats-4/tests/c5/c52104a.ada: Likewise. + * ada/acats-4/tests/c5/c52104b.ada: Likewise. + * ada/acats-4/tests/c5/c52104c.ada: Likewise. + * ada/acats-4/tests/c5/c52104f.ada: Likewise. + * ada/acats-4/tests/c5/c52104g.ada: Likewise. + * ada/acats-4/tests/c5/c52104h.ada: Likewise. + * ada/acats-4/tests/c5/c52104k.ada: Likewise. + * ada/acats-4/tests/c5/c52104l.ada: Likewise. + * ada/acats-4/tests/c5/c52104m.ada: Likewise. + * ada/acats-4/tests/c5/c52104p.ada: Likewise. + * ada/acats-4/tests/c5/c52104q.ada: Likewise. + * ada/acats-4/tests/c5/c52104r.ada: Likewise. + * ada/acats-4/tests/c5/c52104x.ada: Likewise. + * ada/acats-4/tests/c5/c52104y.ada: Likewise. + * ada/acats-4/tests/c5/c53007a.ada: Likewise. + * ada/acats-4/tests/c5/c540001.a: Likewise. + * ada/acats-4/tests/c5/c540002.a: Likewise. + * ada/acats-4/tests/c5/c540003.a: Likewise. + * ada/acats-4/tests/c5/c54a03a.ada: Likewise. + * ada/acats-4/tests/c5/c54a04a.ada: Likewise. + * ada/acats-4/tests/c5/c54a07a.ada: Likewise. + * ada/acats-4/tests/c5/c54a13a.ada: Likewise. + * ada/acats-4/tests/c5/c54a13b.ada: Likewise. + * ada/acats-4/tests/c5/c54a13c.ada: Likewise. + * ada/acats-4/tests/c5/c54a13d.ada: Likewise. + * ada/acats-4/tests/c5/c54a22a.ada: Likewise. + * ada/acats-4/tests/c5/c54a23a.ada: Likewise. + * ada/acats-4/tests/c5/c54a24a.ada: Likewise. + * ada/acats-4/tests/c5/c54a24b.ada: Likewise. + * ada/acats-4/tests/c5/c54a42a.ada: Likewise. + * ada/acats-4/tests/c5/c54a42b.ada: Likewise. + * ada/acats-4/tests/c5/c54a42c.ada: Likewise. + * ada/acats-4/tests/c5/c54a42d.ada: Likewise. + * ada/acats-4/tests/c5/c54a42e.ada: Likewise. + * ada/acats-4/tests/c5/c54a42f.ada: Likewise. + * ada/acats-4/tests/c5/c54a42g.ada: Likewise. + * ada/acats-4/tests/c5/c550001.a: Likewise. + * ada/acats-4/tests/c5/c552001.a: Likewise. + * ada/acats-4/tests/c5/c552002.a: Likewise. + * ada/acats-4/tests/c5/c552a01.a: Likewise. + * ada/acats-4/tests/c5/c552a02.a: Likewise. + * ada/acats-4/tests/c5/c55b03a.ada: Likewise. + * ada/acats-4/tests/c5/c55b04a.ada: Likewise. + * ada/acats-4/tests/c5/c55b05a.ada: Likewise. + * ada/acats-4/tests/c5/c55b06a.ada: Likewise. + * ada/acats-4/tests/c5/c55b06b.ada: Likewise. + * ada/acats-4/tests/c5/c55b07a.dep: Likewise. + * ada/acats-4/tests/c5/c55b07b.dep: Likewise. + * ada/acats-4/tests/c5/c55b10a.ada: Likewise. + * ada/acats-4/tests/c5/c55b11a.ada: Likewise. + * ada/acats-4/tests/c5/c55b11b.ada: Likewise. + * ada/acats-4/tests/c5/c55b15a.ada: Likewise. + * ada/acats-4/tests/c5/c55b16a.ada: Likewise. + * ada/acats-4/tests/c5/c55c02a.ada: Likewise. + * ada/acats-4/tests/c5/c55c02b.ada: Likewise. + * ada/acats-4/tests/c5/c56002a.ada: Likewise. + * ada/acats-4/tests/c5/c57003a.ada: Likewise. + * ada/acats-4/tests/c5/c57004a.ada: Likewise. + * ada/acats-4/tests/c5/c57004b.ada: Likewise. + * ada/acats-4/tests/c5/c58004c.ada: Likewise. + * ada/acats-4/tests/c5/c58004d.ada: Likewise. + * ada/acats-4/tests/c5/c58004g.ada: Likewise. + * ada/acats-4/tests/c5/c58005a.ada: Likewise. + * ada/acats-4/tests/c5/c58005b.ada: Likewise. + * ada/acats-4/tests/c5/c58005h.ada: Likewise. + * ada/acats-4/tests/c5/c58006a.ada: Likewise. + * ada/acats-4/tests/c5/c58006b.ada: Likewise. + * ada/acats-4/tests/c5/c59002a.ada: Likewise. + * ada/acats-4/tests/c5/c59002b.ada: Likewise. + * ada/acats-4/tests/c5/c59002c.ada: Likewise. + * ada/acats-4/tests/c6/c61008a.ada: Likewise. + * ada/acats-4/tests/c6/c61009a.ada: Likewise. + * ada/acats-4/tests/c6/c61010a.ada: Likewise. + * ada/acats-4/tests/c6/c611001.a: Likewise. + * ada/acats-4/tests/c6/c611a01.a: Likewise. + * ada/acats-4/tests/c6/c611a020.a: Likewise. + * ada/acats-4/tests/c6/c611a021.a: Likewise. + * ada/acats-4/tests/c6/c611a022.am: Likewise. + * ada/acats-4/tests/c6/c611a030.a: Likewise. + * ada/acats-4/tests/c6/c611a031.a: Likewise. + * ada/acats-4/tests/c6/c611a032.am: Likewise. + * ada/acats-4/tests/c6/c611a040.a: Likewise. + * ada/acats-4/tests/c6/c611a041.a: Likewise. + * ada/acats-4/tests/c6/c611a042.a: Likewise. + * ada/acats-4/tests/c6/c611a043.am: Likewise. + * ada/acats-4/tests/c6/c611b010.a: Likewise. + * ada/acats-4/tests/c6/c611b011.a: Likewise. + * ada/acats-4/tests/c6/c611b012.am: Likewise. + * ada/acats-4/tests/c6/c611b020.a: Likewise. + * ada/acats-4/tests/c6/c611b021.a: Likewise. + * ada/acats-4/tests/c6/c611b022.am: Likewise. + * ada/acats-4/tests/c6/c611b030.a: Likewise. + * ada/acats-4/tests/c6/c611b031.a: Likewise. + * ada/acats-4/tests/c6/c611b032.a: Likewise. + * ada/acats-4/tests/c6/c611b033.am: Likewise. + * ada/acats-4/tests/c6/c620001.a: Likewise. + * ada/acats-4/tests/c6/c620002.a: Likewise. + * ada/acats-4/tests/c6/c62002a.ada: Likewise. + * ada/acats-4/tests/c6/c62003b.ada: Likewise. + * ada/acats-4/tests/c6/c62004a.ada: Likewise. + * ada/acats-4/tests/c6/c62006a.ada: Likewise. + * ada/acats-4/tests/c6/c631001.a: Likewise. + * ada/acats-4/tests/c6/c640001.a: Likewise. + * ada/acats-4/tests/c6/c640002.a: Likewise. + * ada/acats-4/tests/c6/c64002b.ada: Likewise. + * ada/acats-4/tests/c6/c64004g.ada: Likewise. + * ada/acats-4/tests/c6/c64005a.ada: Likewise. + * ada/acats-4/tests/c6/c64005b.ada: Likewise. + * ada/acats-4/tests/c6/c64005c.ada: Likewise. + * ada/acats-4/tests/c6/c64005d0.ada: Likewise. + * ada/acats-4/tests/c6/c64005da.ada: Likewise. + * ada/acats-4/tests/c6/c64005db.ada: Likewise. + * ada/acats-4/tests/c6/c64005dc.ada: Likewise. + * ada/acats-4/tests/c6/c641001.a: Likewise. + * ada/acats-4/tests/c6/c641002.a: Likewise. + * ada/acats-4/tests/c6/c641003.a: Likewise. + * ada/acats-4/tests/c6/c64103b.ada: Likewise. + * ada/acats-4/tests/c6/c64103c.ada: Likewise. + * ada/acats-4/tests/c6/c64103d.ada: Likewise. + * ada/acats-4/tests/c6/c64103e.ada: Likewise. + * ada/acats-4/tests/c6/c64103f.ada: Likewise. + * ada/acats-4/tests/c6/c64104a.ada: Likewise. + * ada/acats-4/tests/c6/c64104b.ada: Likewise. + * ada/acats-4/tests/c6/c64104c.ada: Likewise. + * ada/acats-4/tests/c6/c64104d.ada: Likewise. + * ada/acats-4/tests/c6/c64104e.ada: Likewise. + * ada/acats-4/tests/c6/c64104f.ada: Likewise. + * ada/acats-4/tests/c6/c64104g.ada: Likewise. + * ada/acats-4/tests/c6/c64104h.ada: Likewise. + * ada/acats-4/tests/c6/c64104i.ada: Likewise. + * ada/acats-4/tests/c6/c64104j.ada: Likewise. + * ada/acats-4/tests/c6/c64104k.ada: Likewise. + * ada/acats-4/tests/c6/c64104l.ada: Likewise. + * ada/acats-4/tests/c6/c64104m.ada: Likewise. + * ada/acats-4/tests/c6/c64104n.ada: Likewise. + * ada/acats-4/tests/c6/c64104o.ada: Likewise. + * ada/acats-4/tests/c6/c64105a.ada: Likewise. + * ada/acats-4/tests/c6/c64105b.ada: Likewise. + * ada/acats-4/tests/c6/c64105c.ada: Likewise. + * ada/acats-4/tests/c6/c64105d.ada: Likewise. + * ada/acats-4/tests/c6/c64106a.ada: Likewise. + * ada/acats-4/tests/c6/c64106b.ada: Likewise. + * ada/acats-4/tests/c6/c64106c.ada: Likewise. + * ada/acats-4/tests/c6/c64106d.ada: Likewise. + * ada/acats-4/tests/c6/c64107a.ada: Likewise. + * ada/acats-4/tests/c6/c64108a.ada: Likewise. + * ada/acats-4/tests/c6/c64109a.ada: Likewise. + * ada/acats-4/tests/c6/c64109b.ada: Likewise. + * ada/acats-4/tests/c6/c64109c.ada: Likewise. + * ada/acats-4/tests/c6/c64109d.ada: Likewise. + * ada/acats-4/tests/c6/c64109e.ada: Likewise. + * ada/acats-4/tests/c6/c64109f.ada: Likewise. + * ada/acats-4/tests/c6/c64109g.ada: Likewise. + * ada/acats-4/tests/c6/c64109h.ada: Likewise. + * ada/acats-4/tests/c6/c64109i.ada: Likewise. + * ada/acats-4/tests/c6/c64109j.ada: Likewise. + * ada/acats-4/tests/c6/c64109k.ada: Likewise. + * ada/acats-4/tests/c6/c64109l.ada: Likewise. + * ada/acats-4/tests/c6/c64201b.ada: Likewise. + * ada/acats-4/tests/c6/c64201c.ada: Likewise. + * ada/acats-4/tests/c6/c64202a.ada: Likewise. + * ada/acats-4/tests/c6/c650002.a: Likewise. + * ada/acats-4/tests/c6/c650003.a: Likewise. + * ada/acats-4/tests/c6/c65003a.ada: Likewise. + * ada/acats-4/tests/c6/c65003b.ada: Likewise. + * ada/acats-4/tests/c6/c650a01.a: Likewise. + * ada/acats-4/tests/c6/c650a02.a: Likewise. + * ada/acats-4/tests/c6/c650b01.a: Likewise. + * ada/acats-4/tests/c6/c650b02.a: Likewise. + * ada/acats-4/tests/c6/c650b03.a: Likewise. + * ada/acats-4/tests/c6/c650b04.a: Likewise. + * ada/acats-4/tests/c6/c651001.a: Likewise. + * ada/acats-4/tests/c6/c651002.a: Likewise. + * ada/acats-4/tests/c6/c660001.a: Likewise. + * ada/acats-4/tests/c6/c66002a.ada: Likewise. + * ada/acats-4/tests/c6/c66002c.ada: Likewise. + * ada/acats-4/tests/c6/c66002d.ada: Likewise. + * ada/acats-4/tests/c6/c66002e.ada: Likewise. + * ada/acats-4/tests/c6/c66002f.ada: Likewise. + * ada/acats-4/tests/c6/c66002g.ada: Likewise. + * ada/acats-4/tests/c6/c67002a.ada: Likewise. + * ada/acats-4/tests/c6/c67002b.ada: Likewise. + * ada/acats-4/tests/c6/c67002c.ada: Likewise. + * ada/acats-4/tests/c6/c67002d.ada: Likewise. + * ada/acats-4/tests/c6/c67002e.ada: Likewise. + * ada/acats-4/tests/c6/c67003f.ada: Likewise. + * ada/acats-4/tests/c6/c67005a.ada: Likewise. + * ada/acats-4/tests/c6/c67005b.ada: Likewise. + * ada/acats-4/tests/c6/c67005c.ada: Likewise. + * ada/acats-4/tests/c6/c67005d.ada: Likewise. + * ada/acats-4/tests/c6/c680001.a: Likewise. + * ada/acats-4/tests/c7/c72001b.ada: Likewise. + * ada/acats-4/tests/c7/c72002a.ada: Likewise. + * ada/acats-4/tests/c7/c730001.a: Likewise. + * ada/acats-4/tests/c7/c730002.a: Likewise. + * ada/acats-4/tests/c7/c730003.a: Likewise. + * ada/acats-4/tests/c7/c730004.a: Likewise. + * ada/acats-4/tests/c7/c73002a.ada: Likewise. + * ada/acats-4/tests/c7/c730a01.a: Likewise. + * ada/acats-4/tests/c7/c730a02.a: Likewise. + * ada/acats-4/tests/c7/c731001.a: Likewise. + * ada/acats-4/tests/c7/c7320010.a: Likewise. + * ada/acats-4/tests/c7/c7320011.a: Likewise. + * ada/acats-4/tests/c7/c7320012.am: Likewise. + * ada/acats-4/tests/c7/c732002.a: Likewise. + * ada/acats-4/tests/c7/c732a01.a: Likewise. + * ada/acats-4/tests/c7/c732a02.a: Likewise. + * ada/acats-4/tests/c7/c732b01.a: Likewise. + * ada/acats-4/tests/c7/c732b02.a: Likewise. + * ada/acats-4/tests/c7/c732c01.a: Likewise. + * ada/acats-4/tests/c7/c74004a.ada: Likewise. + * ada/acats-4/tests/c7/c74203a.ada: Likewise. + * ada/acats-4/tests/c7/c74206a.ada: Likewise. + * ada/acats-4/tests/c7/c74207b.ada: Likewise. + * ada/acats-4/tests/c7/c74208a.ada: Likewise. + * ada/acats-4/tests/c7/c74208b.ada: Likewise. + * ada/acats-4/tests/c7/c74209a.ada: Likewise. + * ada/acats-4/tests/c7/c74210a.ada: Likewise. + * ada/acats-4/tests/c7/c74211a.ada: Likewise. + * ada/acats-4/tests/c7/c74211b.ada: Likewise. + * ada/acats-4/tests/c7/c74302a.ada: Likewise. + * ada/acats-4/tests/c7/c74302b.ada: Likewise. + * ada/acats-4/tests/c7/c74305a.ada: Likewise. + * ada/acats-4/tests/c7/c74305b.ada: Likewise. + * ada/acats-4/tests/c7/c74306a.ada: Likewise. + * ada/acats-4/tests/c7/c74307a.ada: Likewise. + * ada/acats-4/tests/c7/c74401d.ada: Likewise. + * ada/acats-4/tests/c7/c74401e.ada: Likewise. + * ada/acats-4/tests/c7/c74401k.ada: Likewise. + * ada/acats-4/tests/c7/c74401q.ada: Likewise. + * ada/acats-4/tests/c7/c74402a.ada: Likewise. + * ada/acats-4/tests/c7/c74402b.ada: Likewise. + * ada/acats-4/tests/c7/c74406a.ada: Likewise. + * ada/acats-4/tests/c7/c74407b.ada: Likewise. + * ada/acats-4/tests/c7/c74409b.ada: Likewise. + * ada/acats-4/tests/c7/c760001.a: Likewise. + * ada/acats-4/tests/c7/c760002.a: Likewise. + * ada/acats-4/tests/c7/c760007.a: Likewise. + * ada/acats-4/tests/c7/c760009.a: Likewise. + * ada/acats-4/tests/c7/c760010.a: Likewise. + * ada/acats-4/tests/c7/c760011.a: Likewise. + * ada/acats-4/tests/c7/c760012.a: Likewise. + * ada/acats-4/tests/c7/c760013.a: Likewise. + * ada/acats-4/tests/c7/c760014.a: Likewise. + * ada/acats-4/tests/c7/c760015.a: Likewise. + * ada/acats-4/tests/c7/c760a01.a: Likewise. + * ada/acats-4/tests/c7/c760a02.a: Likewise. + * ada/acats-4/tests/c7/c760a03.a: Likewise. + * ada/acats-4/tests/c7/c761001.a: Likewise. + * ada/acats-4/tests/c7/c761002.a: Likewise. + * ada/acats-4/tests/c7/c761003.a: Likewise. + * ada/acats-4/tests/c7/c761004.a: Likewise. + * ada/acats-4/tests/c7/c761005.a: Likewise. + * ada/acats-4/tests/c7/c761006.a: Likewise. + * ada/acats-4/tests/c7/c761007.a: Likewise. + * ada/acats-4/tests/c7/c761010.a: Likewise. + * ada/acats-4/tests/c7/c761011.a: Likewise. + * ada/acats-4/tests/c7/c761012.a: Likewise. + * ada/acats-4/tests/c7/c761013.a: Likewise. + * ada/acats-4/tests/c8/c83007a.ada: Likewise. + * ada/acats-4/tests/c8/c83012d.ada: Likewise. + * ada/acats-4/tests/c8/c83022a.ada: Likewise. + * ada/acats-4/tests/c8/c83022g0.ada: Likewise. + * ada/acats-4/tests/c8/c83022g1.ada: Likewise. + * ada/acats-4/tests/c8/c83023a.ada: Likewise. + * ada/acats-4/tests/c8/c83024a.ada: Likewise. + * ada/acats-4/tests/c8/c83024e0.ada: Likewise. + * ada/acats-4/tests/c8/c83024e1.ada: Likewise. + * ada/acats-4/tests/c8/c83025a.ada: Likewise. + * ada/acats-4/tests/c8/c83025c.ada: Likewise. + * ada/acats-4/tests/c8/c83027a.ada: Likewise. + * ada/acats-4/tests/c8/c83027c.ada: Likewise. + * ada/acats-4/tests/c8/c83028a.ada: Likewise. + * ada/acats-4/tests/c8/c83029a.ada: Likewise. + * ada/acats-4/tests/c8/c83030a.ada: Likewise. + * ada/acats-4/tests/c8/c83030c.ada: Likewise. + * ada/acats-4/tests/c8/c83031a.ada: Likewise. + * ada/acats-4/tests/c8/c83031c.ada: Likewise. + * ada/acats-4/tests/c8/c83031e.ada: Likewise. + * ada/acats-4/tests/c8/c83032a.ada: Likewise. + * ada/acats-4/tests/c8/c83033a.ada: Likewise. + * ada/acats-4/tests/c8/c83051a.ada: Likewise. + * ada/acats-4/tests/c8/c831001.a: Likewise. + * ada/acats-4/tests/c8/c83b02a.ada: Likewise. + * ada/acats-4/tests/c8/c83b02b.ada: Likewise. + * ada/acats-4/tests/c8/c83e02a.ada: Likewise. + * ada/acats-4/tests/c8/c83e02b.ada: Likewise. + * ada/acats-4/tests/c8/c83e03a.ada: Likewise. + * ada/acats-4/tests/c8/c83f01a.ada: Likewise. + * ada/acats-4/tests/c8/c83f01b.ada: Likewise. + * ada/acats-4/tests/c8/c83f01c0.ada: Likewise. + * ada/acats-4/tests/c8/c83f01c1.ada: Likewise. + * ada/acats-4/tests/c8/c83f01c2.ada: Likewise. + * ada/acats-4/tests/c8/c83f01d0.ada: Likewise. + * ada/acats-4/tests/c8/c83f01d1.ada: Likewise. + * ada/acats-4/tests/c8/c83f03a.ada: Likewise. + * ada/acats-4/tests/c8/c83f03b.ada: Likewise. + * ada/acats-4/tests/c8/c83f03c0.ada: Likewise. + * ada/acats-4/tests/c8/c83f03c1.ada: Likewise. + * ada/acats-4/tests/c8/c83f03c2.ada: Likewise. + * ada/acats-4/tests/c8/c83f03d0.ada: Likewise. + * ada/acats-4/tests/c8/c83f03d1.ada: Likewise. + * ada/acats-4/tests/c8/c840001.a: Likewise. + * ada/acats-4/tests/c8/c840002.a: Likewise. + * ada/acats-4/tests/c8/c84002a.ada: Likewise. + * ada/acats-4/tests/c8/c84005a.ada: Likewise. + * ada/acats-4/tests/c8/c84008a.ada: Likewise. + * ada/acats-4/tests/c8/c84009a.ada: Likewise. + * ada/acats-4/tests/c8/c85004b.ada: Likewise. + * ada/acats-4/tests/c8/c85005a.ada: Likewise. + * ada/acats-4/tests/c8/c85005b.ada: Likewise. + * ada/acats-4/tests/c8/c85005c.ada: Likewise. + * ada/acats-4/tests/c8/c85005d.ada: Likewise. + * ada/acats-4/tests/c8/c85005e.ada: Likewise. + * ada/acats-4/tests/c8/c85005f.ada: Likewise. + * ada/acats-4/tests/c8/c85005g.ada: Likewise. + * ada/acats-4/tests/c8/c85006a.ada: Likewise. + * ada/acats-4/tests/c8/c85006b.ada: Likewise. + * ada/acats-4/tests/c8/c85006c.ada: Likewise. + * ada/acats-4/tests/c8/c85006d.ada: Likewise. + * ada/acats-4/tests/c8/c85006e.ada: Likewise. + * ada/acats-4/tests/c8/c85006f.ada: Likewise. + * ada/acats-4/tests/c8/c85006g.ada: Likewise. + * ada/acats-4/tests/c8/c85007a.ada: Likewise. + * ada/acats-4/tests/c8/c85007e.ada: Likewise. + * ada/acats-4/tests/c8/c85009a.ada: Likewise. + * ada/acats-4/tests/c8/c85011a.ada: Likewise. + * ada/acats-4/tests/c8/c85013a.ada: Likewise. + * ada/acats-4/tests/c8/c85014a.ada: Likewise. + * ada/acats-4/tests/c8/c85014b.ada: Likewise. + * ada/acats-4/tests/c8/c85014c.ada: Likewise. + * ada/acats-4/tests/c8/c85017a.ada: Likewise. + * ada/acats-4/tests/c8/c85018a.ada: Likewise. + * ada/acats-4/tests/c8/c85018b.ada: Likewise. + * ada/acats-4/tests/c8/c85019a.ada: Likewise. + * ada/acats-4/tests/c8/c851001.a: Likewise. + * ada/acats-4/tests/c8/c851002.a: Likewise. + * ada/acats-4/tests/c8/c854001.a: Likewise. + * ada/acats-4/tests/c8/c854002.a: Likewise. + * ada/acats-4/tests/c8/c854003.a: Likewise. + * ada/acats-4/tests/c8/c86003a.ada: Likewise. + * ada/acats-4/tests/c8/c86004a.ada: Likewise. + * ada/acats-4/tests/c8/c86004b0.ada: Likewise. + * ada/acats-4/tests/c8/c86004b1.ada: Likewise. + * ada/acats-4/tests/c8/c86004b2.ada: Likewise. + * ada/acats-4/tests/c8/c86004c0.ada: Likewise. + * ada/acats-4/tests/c8/c86004c1.ada: Likewise. + * ada/acats-4/tests/c8/c86004c2.ada: Likewise. + * ada/acats-4/tests/c8/c86006i.ada: Likewise. + * ada/acats-4/tests/c8/c86007a.ada: Likewise. + * ada/acats-4/tests/c8/c87a05a.ada: Likewise. + * ada/acats-4/tests/c8/c87a05b.ada: Likewise. + * ada/acats-4/tests/c8/c87b02a.ada: Likewise. + * ada/acats-4/tests/c8/c87b02b.ada: Likewise. + * ada/acats-4/tests/c8/c87b03a.ada: Likewise. + * ada/acats-4/tests/c8/c87b04a.ada: Likewise. + * ada/acats-4/tests/c8/c87b04b.ada: Likewise. + * ada/acats-4/tests/c8/c87b04c.ada: Likewise. + * ada/acats-4/tests/c8/c87b05a.ada: Likewise. + * ada/acats-4/tests/c8/c87b06a.ada: Likewise. + * ada/acats-4/tests/c8/c87b07a.ada: Likewise. + * ada/acats-4/tests/c8/c87b07b.ada: Likewise. + * ada/acats-4/tests/c8/c87b07c.ada: Likewise. + * ada/acats-4/tests/c8/c87b07d.ada: Likewise. + * ada/acats-4/tests/c8/c87b07e.ada: Likewise. + * ada/acats-4/tests/c8/c87b08a.ada: Likewise. + * ada/acats-4/tests/c8/c87b09a.ada: Likewise. + * ada/acats-4/tests/c8/c87b09c.ada: Likewise. + * ada/acats-4/tests/c8/c87b10a.ada: Likewise. + * ada/acats-4/tests/c8/c87b11a.ada: Likewise. + * ada/acats-4/tests/c8/c87b11b.ada: Likewise. + * ada/acats-4/tests/c8/c87b13a.ada: Likewise. + * ada/acats-4/tests/c8/c87b14a.ada: Likewise. + * ada/acats-4/tests/c8/c87b14b.ada: Likewise. + * ada/acats-4/tests/c8/c87b14c.ada: Likewise. + * ada/acats-4/tests/c8/c87b14d.ada: Likewise. + * ada/acats-4/tests/c8/c87b15a.ada: Likewise. + * ada/acats-4/tests/c8/c87b16a.ada: Likewise. + * ada/acats-4/tests/c8/c87b17a.ada: Likewise. + * ada/acats-4/tests/c8/c87b18a.ada: Likewise. + * ada/acats-4/tests/c8/c87b18b.ada: Likewise. + * ada/acats-4/tests/c8/c87b19a.ada: Likewise. + * ada/acats-4/tests/c8/c87b23a.ada: Likewise. + * ada/acats-4/tests/c8/c87b24a.ada: Likewise. + * ada/acats-4/tests/c8/c87b24b.ada: Likewise. + * ada/acats-4/tests/c8/c87b26b.ada: Likewise. + * ada/acats-4/tests/c8/c87b27a.ada: Likewise. + * ada/acats-4/tests/c8/c87b28a.ada: Likewise. + * ada/acats-4/tests/c8/c87b29a.ada: Likewise. + * ada/acats-4/tests/c8/c87b30a.ada: Likewise. + * ada/acats-4/tests/c8/c87b31a.ada: Likewise. + * ada/acats-4/tests/c8/c87b32a.ada: Likewise. + * ada/acats-4/tests/c8/c87b33a.ada: Likewise. + * ada/acats-4/tests/c8/c87b34a.ada: Likewise. + * ada/acats-4/tests/c8/c87b34b.ada: Likewise. + * ada/acats-4/tests/c8/c87b34c.ada: Likewise. + * ada/acats-4/tests/c8/c87b35c.ada: Likewise. + * ada/acats-4/tests/c8/c87b38a.ada: Likewise. + * ada/acats-4/tests/c8/c87b39a.ada: Likewise. + * ada/acats-4/tests/c8/c87b40a.ada: Likewise. + * ada/acats-4/tests/c8/c87b41a.ada: Likewise. + * ada/acats-4/tests/c8/c87b42a.ada: Likewise. + * ada/acats-4/tests/c8/c87b43a.ada: Likewise. + * ada/acats-4/tests/c8/c87b44a.ada: Likewise. + * ada/acats-4/tests/c8/c87b45a.ada: Likewise. + * ada/acats-4/tests/c8/c87b45c.ada: Likewise. + * ada/acats-4/tests/c8/c87b47a.ada: Likewise. + * ada/acats-4/tests/c8/c87b48a.ada: Likewise. + * ada/acats-4/tests/c8/c87b48b.ada: Likewise. + * ada/acats-4/tests/c8/c87b50a.ada: Likewise. + * ada/acats-4/tests/c8/c87b54a.ada: Likewise. + * ada/acats-4/tests/c8/c87b57a.ada: Likewise. + * ada/acats-4/tests/c8/c87b62a.ada: Likewise. + * ada/acats-4/tests/c8/c87b62b.ada: Likewise. + * ada/acats-4/tests/c8/c87b62c.ada: Likewise. + * ada/acats-4/tests/c8/c87b62d.tst: Likewise. + * ada/acats-4/tests/c9/c910001.a: Likewise. + * ada/acats-4/tests/c9/c910002.a: Likewise. + * ada/acats-4/tests/c9/c910003.a: Likewise. + * ada/acats-4/tests/c9/c91004b.ada: Likewise. + * ada/acats-4/tests/c9/c91004c.ada: Likewise. + * ada/acats-4/tests/c9/c91006a.ada: Likewise. + * ada/acats-4/tests/c9/c91007a.ada: Likewise. + * ada/acats-4/tests/c9/c920001.a: Likewise. + * ada/acats-4/tests/c9/c92002a.ada: Likewise. + * ada/acats-4/tests/c9/c92003a.ada: Likewise. + * ada/acats-4/tests/c9/c92005a.ada: Likewise. + * ada/acats-4/tests/c9/c92005b.ada: Likewise. + * ada/acats-4/tests/c9/c92006a.ada: Likewise. + * ada/acats-4/tests/c9/c930001.a: Likewise. + * ada/acats-4/tests/c9/c93001a.ada: Likewise. + * ada/acats-4/tests/c9/c93002a.ada: Likewise. + * ada/acats-4/tests/c9/c93003a.ada: Likewise. + * ada/acats-4/tests/c9/c93004a.ada: Likewise. + * ada/acats-4/tests/c9/c93004b.ada: Likewise. + * ada/acats-4/tests/c9/c93004c.ada: Likewise. + * ada/acats-4/tests/c9/c93004d.ada: Likewise. + * ada/acats-4/tests/c9/c93004f.ada: Likewise. + * ada/acats-4/tests/c9/c93005a.ada: Likewise. + * ada/acats-4/tests/c9/c93005b.ada: Likewise. + * ada/acats-4/tests/c9/c93005c.ada: Likewise. + * ada/acats-4/tests/c9/c93005d.ada: Likewise. + * ada/acats-4/tests/c9/c93005e.ada: Likewise. + * ada/acats-4/tests/c9/c93005f.ada: Likewise. + * ada/acats-4/tests/c9/c93005g.ada: Likewise. + * ada/acats-4/tests/c9/c93005h.ada: Likewise. + * ada/acats-4/tests/c9/c93006a.ada: Likewise. + * ada/acats-4/tests/c9/c93007a.ada: Likewise. + * ada/acats-4/tests/c9/c93008a.ada: Likewise. + * ada/acats-4/tests/c9/c93008b.ada: Likewise. + * ada/acats-4/tests/c9/c940001.a: Likewise. + * ada/acats-4/tests/c9/c940002.a: Likewise. + * ada/acats-4/tests/c9/c940004.a: Likewise. + * ada/acats-4/tests/c9/c940005.a: Likewise. + * ada/acats-4/tests/c9/c940006.a: Likewise. + * ada/acats-4/tests/c9/c940007.a: Likewise. + * ada/acats-4/tests/c9/c940010.a: Likewise. + * ada/acats-4/tests/c9/c940011.a: Likewise. + * ada/acats-4/tests/c9/c940012.a: Likewise. + * ada/acats-4/tests/c9/c940013.a: Likewise. + * ada/acats-4/tests/c9/c940014.a: Likewise. + * ada/acats-4/tests/c9/c940015.a: Likewise. + * ada/acats-4/tests/c9/c940016.a: Likewise. + * ada/acats-4/tests/c9/c940017.a: Likewise. + * ada/acats-4/tests/c9/c94001a.ada: Likewise. + * ada/acats-4/tests/c9/c94001b.ada: Likewise. + * ada/acats-4/tests/c9/c94001c.ada: Likewise. + * ada/acats-4/tests/c9/c94001e.ada: Likewise. + * ada/acats-4/tests/c9/c94001f.ada: Likewise. + * ada/acats-4/tests/c9/c94001g.ada: Likewise. + * ada/acats-4/tests/c9/c94002a.ada: Likewise. + * ada/acats-4/tests/c9/c94002b.ada: Likewise. + * ada/acats-4/tests/c9/c94002d.ada: Likewise. + * ada/acats-4/tests/c9/c94002e.ada: Likewise. + * ada/acats-4/tests/c9/c94002f.ada: Likewise. + * ada/acats-4/tests/c9/c94002g.ada: Likewise. + * ada/acats-4/tests/c9/c94004a.ada: Likewise. + * ada/acats-4/tests/c9/c94004b.ada: Likewise. + * ada/acats-4/tests/c9/c94004c.ada: Likewise. + * ada/acats-4/tests/c9/c94005a.ada: Likewise. + * ada/acats-4/tests/c9/c94005b.ada: Likewise. + * ada/acats-4/tests/c9/c94006a.ada: Likewise. + * ada/acats-4/tests/c9/c94007a.ada: Likewise. + * ada/acats-4/tests/c9/c94007b.ada: Likewise. + * ada/acats-4/tests/c9/c94008a.ada: Likewise. + * ada/acats-4/tests/c9/c94008b.ada: Likewise. + * ada/acats-4/tests/c9/c94008c.ada: Likewise. + * ada/acats-4/tests/c9/c94008d.ada: Likewise. + * ada/acats-4/tests/c9/c94010a.ada: Likewise. + * ada/acats-4/tests/c9/c94011a.ada: Likewise. + * ada/acats-4/tests/c9/c94020a.ada: Likewise. + * ada/acats-4/tests/c9/c940a03.a: Likewise. + * ada/acats-4/tests/c9/c950001.a: Likewise. + * ada/acats-4/tests/c9/c95008a.ada: Likewise. + * ada/acats-4/tests/c9/c95009a.ada: Likewise. + * ada/acats-4/tests/c9/c95010a.ada: Likewise. + * ada/acats-4/tests/c9/c95011a.ada: Likewise. + * ada/acats-4/tests/c9/c95012a.ada: Likewise. + * ada/acats-4/tests/c9/c95021a.ada: Likewise. + * ada/acats-4/tests/c9/c95022a.ada: Likewise. + * ada/acats-4/tests/c9/c95022b.ada: Likewise. + * ada/acats-4/tests/c9/c95033a.ada: Likewise. + * ada/acats-4/tests/c9/c95033b.ada: Likewise. + * ada/acats-4/tests/c9/c95034a.ada: Likewise. + * ada/acats-4/tests/c9/c95034b.ada: Likewise. + * ada/acats-4/tests/c9/c95035a.ada: Likewise. + * ada/acats-4/tests/c9/c95040a.ada: Likewise. + * ada/acats-4/tests/c9/c95040b.ada: Likewise. + * ada/acats-4/tests/c9/c95040c.ada: Likewise. + * ada/acats-4/tests/c9/c95040d.ada: Likewise. + * ada/acats-4/tests/c9/c95041a.ada: Likewise. + * ada/acats-4/tests/c9/c95065a.ada: Likewise. + * ada/acats-4/tests/c9/c95065b.ada: Likewise. + * ada/acats-4/tests/c9/c95065c.ada: Likewise. + * ada/acats-4/tests/c9/c95065d.ada: Likewise. + * ada/acats-4/tests/c9/c95065e.ada: Likewise. + * ada/acats-4/tests/c9/c95065f.ada: Likewise. + * ada/acats-4/tests/c9/c95066a.ada: Likewise. + * ada/acats-4/tests/c9/c95067a.ada: Likewise. + * ada/acats-4/tests/c9/c95071a.ada: Likewise. + * ada/acats-4/tests/c9/c95072b.ada: Likewise. + * ada/acats-4/tests/c9/c95073a.ada: Likewise. + * ada/acats-4/tests/c9/c95074c.ada: Likewise. + * ada/acats-4/tests/c9/c95076a.ada: Likewise. + * ada/acats-4/tests/c9/c95078a.ada: Likewise. + * ada/acats-4/tests/c9/c95080b.ada: Likewise. + * ada/acats-4/tests/c9/c95082g.ada: Likewise. + * ada/acats-4/tests/c9/c95085a.ada: Likewise. + * ada/acats-4/tests/c9/c95085b.ada: Likewise. + * ada/acats-4/tests/c9/c95085c.ada: Likewise. + * ada/acats-4/tests/c9/c95085d.ada: Likewise. + * ada/acats-4/tests/c9/c95085e.ada: Likewise. + * ada/acats-4/tests/c9/c95085f.ada: Likewise. + * ada/acats-4/tests/c9/c95085g.ada: Likewise. + * ada/acats-4/tests/c9/c95085h.ada: Likewise. + * ada/acats-4/tests/c9/c95085i.ada: Likewise. + * ada/acats-4/tests/c9/c95085j.ada: Likewise. + * ada/acats-4/tests/c9/c95085k.ada: Likewise. + * ada/acats-4/tests/c9/c95085l.ada: Likewise. + * ada/acats-4/tests/c9/c95085m.ada: Likewise. + * ada/acats-4/tests/c9/c95085n.ada: Likewise. + * ada/acats-4/tests/c9/c95085o.ada: Likewise. + * ada/acats-4/tests/c9/c95086a.ada: Likewise. + * ada/acats-4/tests/c9/c95086b.ada: Likewise. + * ada/acats-4/tests/c9/c95086c.ada: Likewise. + * ada/acats-4/tests/c9/c95086d.ada: Likewise. + * ada/acats-4/tests/c9/c95086e.ada: Likewise. + * ada/acats-4/tests/c9/c95086f.ada: Likewise. + * ada/acats-4/tests/c9/c95087a.ada: Likewise. + * ada/acats-4/tests/c9/c95087b.ada: Likewise. + * ada/acats-4/tests/c9/c95087c.ada: Likewise. + * ada/acats-4/tests/c9/c95087d.ada: Likewise. + * ada/acats-4/tests/c9/c95088a.ada: Likewise. + * ada/acats-4/tests/c9/c95089a.ada: Likewise. + * ada/acats-4/tests/c9/c95090a.ada: Likewise. + * ada/acats-4/tests/c9/c95092a.ada: Likewise. + * ada/acats-4/tests/c9/c95093a.ada: Likewise. + * ada/acats-4/tests/c9/c95095a.ada: Likewise. + * ada/acats-4/tests/c9/c95095b.ada: Likewise. + * ada/acats-4/tests/c9/c95095c.ada: Likewise. + * ada/acats-4/tests/c9/c95095d.ada: Likewise. + * ada/acats-4/tests/c9/c95095e.ada: Likewise. + * ada/acats-4/tests/c9/c951001.a: Likewise. + * ada/acats-4/tests/c9/c951002.a: Likewise. + * ada/acats-4/tests/c9/c953001.a: Likewise. + * ada/acats-4/tests/c9/c953002.a: Likewise. + * ada/acats-4/tests/c9/c953003.a: Likewise. + * ada/acats-4/tests/c9/c954001.a: Likewise. + * ada/acats-4/tests/c9/c954010.a: Likewise. + * ada/acats-4/tests/c9/c954011.a: Likewise. + * ada/acats-4/tests/c9/c954012.a: Likewise. + * ada/acats-4/tests/c9/c954013.a: Likewise. + * ada/acats-4/tests/c9/c954014.a: Likewise. + * ada/acats-4/tests/c9/c954015.a: Likewise. + * ada/acats-4/tests/c9/c954016.a: Likewise. + * ada/acats-4/tests/c9/c954017.a: Likewise. + * ada/acats-4/tests/c9/c954018.a: Likewise. + * ada/acats-4/tests/c9/c954019.a: Likewise. + * ada/acats-4/tests/c9/c954020.a: Likewise. + * ada/acats-4/tests/c9/c954021.a: Likewise. + * ada/acats-4/tests/c9/c954022.a: Likewise. + * ada/acats-4/tests/c9/c954023.a: Likewise. + * ada/acats-4/tests/c9/c954024.a: Likewise. + * ada/acats-4/tests/c9/c954025.a: Likewise. + * ada/acats-4/tests/c9/c954026.a: Likewise. + * ada/acats-4/tests/c9/c954027.a: Likewise. + * ada/acats-4/tests/c9/c954a01.a: Likewise. + * ada/acats-4/tests/c9/c954a02.a: Likewise. + * ada/acats-4/tests/c9/c954a03.a: Likewise. + * ada/acats-4/tests/c9/c960001.a: Likewise. + * ada/acats-4/tests/c9/c960002.a: Likewise. + * ada/acats-4/tests/c9/c960004.a: Likewise. + * ada/acats-4/tests/c9/c96001a.ada: Likewise. + * ada/acats-4/tests/c9/c96004a.ada: Likewise. + * ada/acats-4/tests/c9/c96005a.ada: Likewise. + * ada/acats-4/tests/c9/c96005b.tst: Likewise. + * ada/acats-4/tests/c9/c96005d.ada: Likewise. + * ada/acats-4/tests/c9/c96005f.ada: Likewise. + * ada/acats-4/tests/c9/c96006a.ada: Likewise. + * ada/acats-4/tests/c9/c96007a.ada: Likewise. + * ada/acats-4/tests/c9/c96008a.ada: Likewise. + * ada/acats-4/tests/c9/c96008b.ada: Likewise. + * ada/acats-4/tests/c9/c961001.a: Likewise. + * ada/acats-4/tests/c9/c97112a.ada: Likewise. + * ada/acats-4/tests/c9/c97113a.ada: Likewise. + * ada/acats-4/tests/c9/c97114a.ada: Likewise. + * ada/acats-4/tests/c9/c97115a.ada: Likewise. + * ada/acats-4/tests/c9/c97116a.ada: Likewise. + * ada/acats-4/tests/c9/c97117a.ada: Likewise. + * ada/acats-4/tests/c9/c97117b.ada: Likewise. + * ada/acats-4/tests/c9/c97117c.ada: Likewise. + * ada/acats-4/tests/c9/c97118a.ada: Likewise. + * ada/acats-4/tests/c9/c97120a.ada: Likewise. + * ada/acats-4/tests/c9/c97120b.ada: Likewise. + * ada/acats-4/tests/c9/c97201a.ada: Likewise. + * ada/acats-4/tests/c9/c97201b.ada: Likewise. + * ada/acats-4/tests/c9/c97201c.ada: Likewise. + * ada/acats-4/tests/c9/c97201d.ada: Likewise. + * ada/acats-4/tests/c9/c97201e.ada: Likewise. + * ada/acats-4/tests/c9/c97201g.ada: Likewise. + * ada/acats-4/tests/c9/c97201h.ada: Likewise. + * ada/acats-4/tests/c9/c97201x.ada: Likewise. + * ada/acats-4/tests/c9/c97202a.ada: Likewise. + * ada/acats-4/tests/c9/c97203a.ada: Likewise. + * ada/acats-4/tests/c9/c97203b.ada: Likewise. + * ada/acats-4/tests/c9/c97203c.ada: Likewise. + * ada/acats-4/tests/c9/c97204a.ada: Likewise. + * ada/acats-4/tests/c9/c97204b.ada: Likewise. + * ada/acats-4/tests/c9/c97205a.ada: Likewise. + * ada/acats-4/tests/c9/c97205b.ada: Likewise. + * ada/acats-4/tests/c9/c97301a.ada: Likewise. + * ada/acats-4/tests/c9/c97301b.ada: Likewise. + * ada/acats-4/tests/c9/c97301c.ada: Likewise. + * ada/acats-4/tests/c9/c97301d.ada: Likewise. + * ada/acats-4/tests/c9/c97301e.ada: Likewise. + * ada/acats-4/tests/c9/c97302a.ada: Likewise. + * ada/acats-4/tests/c9/c97303a.ada: Likewise. + * ada/acats-4/tests/c9/c97303b.ada: Likewise. + * ada/acats-4/tests/c9/c97303c.ada: Likewise. + * ada/acats-4/tests/c9/c97304a.ada: Likewise. + * ada/acats-4/tests/c9/c97304b.ada: Likewise. + * ada/acats-4/tests/c9/c97305a.ada: Likewise. + * ada/acats-4/tests/c9/c97305b.ada: Likewise. + * ada/acats-4/tests/c9/c97305c.ada: Likewise. + * ada/acats-4/tests/c9/c97305d.ada: Likewise. + * ada/acats-4/tests/c9/c97307a.ada: Likewise. + * ada/acats-4/tests/c9/c974001.a: Likewise. + * ada/acats-4/tests/c9/c974002.a: Likewise. + * ada/acats-4/tests/c9/c974003.a: Likewise. + * ada/acats-4/tests/c9/c974004.a: Likewise. + * ada/acats-4/tests/c9/c974005.a: Likewise. + * ada/acats-4/tests/c9/c974006.a: Likewise. + * ada/acats-4/tests/c9/c974007.a: Likewise. + * ada/acats-4/tests/c9/c974008.a: Likewise. + * ada/acats-4/tests/c9/c974009.a: Likewise. + * ada/acats-4/tests/c9/c974010.a: Likewise. + * ada/acats-4/tests/c9/c974011.a: Likewise. + * ada/acats-4/tests/c9/c974012.a: Likewise. + * ada/acats-4/tests/c9/c974013.a: Likewise. + * ada/acats-4/tests/c9/c974014.a: Likewise. + * ada/acats-4/tests/c9/c980001.a: Likewise. + * ada/acats-4/tests/c9/c980002.a: Likewise. + * ada/acats-4/tests/c9/c980003.a: Likewise. + * ada/acats-4/tests/c9/c990001.a: Likewise. + * ada/acats-4/tests/c9/c99005a.ada: Likewise. + * ada/acats-4/tests/c9/c9a003a.ada: Likewise. + * ada/acats-4/tests/c9/c9a004a.ada: Likewise. + * ada/acats-4/tests/c9/c9a007a.ada: Likewise. + * ada/acats-4/tests/c9/c9a009a.ada: Likewise. + * ada/acats-4/tests/c9/c9a009c.ada: Likewise. + * ada/acats-4/tests/c9/c9a009f.ada: Likewise. + * ada/acats-4/tests/c9/c9a009g.ada: Likewise. + * ada/acats-4/tests/c9/c9a009h.ada: Likewise. + * ada/acats-4/tests/c9/c9a010a.ada: Likewise. + * ada/acats-4/tests/c9/c9a011a.ada: Likewise. + * ada/acats-4/tests/c9/c9a011b.ada: Likewise. + * ada/acats-4/tests/ca/ca1003a.ada: Likewise. + * ada/acats-4/tests/ca/ca1004a.ada: Likewise. + * ada/acats-4/tests/ca/ca1005a.ada: Likewise. + * ada/acats-4/tests/ca/ca1006a.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a3.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a4.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a5.ada: Likewise. + * ada/acats-4/tests/ca/ca1011a6.ada: Likewise. + * ada/acats-4/tests/ca/ca1012a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1012a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1012a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1012a3.ada: Likewise. + * ada/acats-4/tests/ca/ca1012a4.ada: Likewise. + * ada/acats-4/tests/ca/ca1012b0.ada: Likewise. + * ada/acats-4/tests/ca/ca1012b2.ada: Likewise. + * ada/acats-4/tests/ca/ca1012b4.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a3.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a4.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a5.ada: Likewise. + * ada/acats-4/tests/ca/ca1013a6.ada: Likewise. + * ada/acats-4/tests/ca/ca1014a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1014a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1014a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1014a3.ada: Likewise. + * ada/acats-4/tests/ca/ca1020e0.ada: Likewise. + * ada/acats-4/tests/ca/ca1020e1.ada: Likewise. + * ada/acats-4/tests/ca/ca1020e2.ada: Likewise. + * ada/acats-4/tests/ca/ca1020e3.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a3.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a4.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a5.ada: Likewise. + * ada/acats-4/tests/ca/ca1022a6.ada: Likewise. + * ada/acats-4/tests/ca/ca11001.a: Likewise. + * ada/acats-4/tests/ca/ca11002.a: Likewise. + * ada/acats-4/tests/ca/ca11003.a: Likewise. + * ada/acats-4/tests/ca/ca110040.a: Likewise. + * ada/acats-4/tests/ca/ca110041.a: Likewise. + * ada/acats-4/tests/ca/ca110042.am: Likewise. + * ada/acats-4/tests/ca/ca110050.a: Likewise. + * ada/acats-4/tests/ca/ca110051.am: Likewise. + * ada/acats-4/tests/ca/ca11006.a: Likewise. + * ada/acats-4/tests/ca/ca11007.a: Likewise. + * ada/acats-4/tests/ca/ca11008.a: Likewise. + * ada/acats-4/tests/ca/ca11009.a: Likewise. + * ada/acats-4/tests/ca/ca11010.a: Likewise. + * ada/acats-4/tests/ca/ca11011.a: Likewise. + * ada/acats-4/tests/ca/ca11012.a: Likewise. + * ada/acats-4/tests/ca/ca11013.a: Likewise. + * ada/acats-4/tests/ca/ca11014.a: Likewise. + * ada/acats-4/tests/ca/ca11015.a: Likewise. + * ada/acats-4/tests/ca/ca11016.a: Likewise. + * ada/acats-4/tests/ca/ca11017.a: Likewise. + * ada/acats-4/tests/ca/ca11018.a: Likewise. + * ada/acats-4/tests/ca/ca11019.a: Likewise. + * ada/acats-4/tests/ca/ca11020.a: Likewise. + * ada/acats-4/tests/ca/ca11021.a: Likewise. + * ada/acats-4/tests/ca/ca11022.a: Likewise. + * ada/acats-4/tests/ca/ca110230.a: Likewise. + * ada/acats-4/tests/ca/ca110231.a: Likewise. + * ada/acats-4/tests/ca/ca110232.am: Likewise. + * ada/acats-4/tests/ca/ca1102a0.ada: Likewise. + * ada/acats-4/tests/ca/ca1102a1.ada: Likewise. + * ada/acats-4/tests/ca/ca1102a2.ada: Likewise. + * ada/acats-4/tests/ca/ca1106a.ada: Likewise. + * ada/acats-4/tests/ca/ca1108a.ada: Likewise. + * ada/acats-4/tests/ca/ca1108b.ada: Likewise. + * ada/acats-4/tests/ca/ca11a01.a: Likewise. + * ada/acats-4/tests/ca/ca11a02.a: Likewise. + * ada/acats-4/tests/ca/ca11b01.a: Likewise. + * ada/acats-4/tests/ca/ca11b02.a: Likewise. + * ada/acats-4/tests/ca/ca11c01.a: Likewise. + * ada/acats-4/tests/ca/ca11c02.a: Likewise. + * ada/acats-4/tests/ca/ca11c03.a: Likewise. + * ada/acats-4/tests/ca/ca11d010.a: Likewise. + * ada/acats-4/tests/ca/ca11d011.a: Likewise. + * ada/acats-4/tests/ca/ca11d012.a: Likewise. + * ada/acats-4/tests/ca/ca11d013.am: Likewise. + * ada/acats-4/tests/ca/ca11d02.a: Likewise. + * ada/acats-4/tests/ca/ca11d03.a: Likewise. + * ada/acats-4/tests/ca/ca120010.a: Likewise. + * ada/acats-4/tests/ca/ca120011.a: Likewise. + * ada/acats-4/tests/ca/ca120012.am: Likewise. + * ada/acats-4/tests/ca/ca12002.a: Likewise. + * ada/acats-4/tests/ca/ca13001.a: Likewise. + * ada/acats-4/tests/ca/ca13002.a: Likewise. + * ada/acats-4/tests/ca/ca13003.a: Likewise. + * ada/acats-4/tests/ca/ca13a01.a: Likewise. + * ada/acats-4/tests/ca/ca13a02.a: Likewise. + * ada/acats-4/tests/ca/ca140230.a: Likewise. + * ada/acats-4/tests/ca/ca140231.a: Likewise. + * ada/acats-4/tests/ca/ca140232.am: Likewise. + * ada/acats-4/tests/ca/ca140233.a: Likewise. + * ada/acats-4/tests/ca/ca140280.a: Likewise. + * ada/acats-4/tests/ca/ca140281.a: Likewise. + * ada/acats-4/tests/ca/ca140282.a: Likewise. + * ada/acats-4/tests/ca/ca140283.am: Likewise. + * ada/acats-4/tests/ca/ca15003.a: Likewise. + * ada/acats-4/tests/ca/ca200020.a: Likewise. + * ada/acats-4/tests/ca/ca200021.a: Likewise. + * ada/acats-4/tests/ca/ca200022.am: Likewise. + * ada/acats-4/tests/ca/ca200030.a: Likewise. + * ada/acats-4/tests/ca/ca200031.am: Likewise. + * ada/acats-4/tests/ca/ca2001h0.ada: Likewise. + * ada/acats-4/tests/ca/ca2001h1.ada: Likewise. + * ada/acats-4/tests/ca/ca2001h2.ada: Likewise. + * ada/acats-4/tests/ca/ca2001h3.ada: Likewise. + * ada/acats-4/tests/ca/ca2002a0.ada: Likewise. + * ada/acats-4/tests/ca/ca2002a1.ada: Likewise. + * ada/acats-4/tests/ca/ca2002a2.ada: Likewise. + * ada/acats-4/tests/ca/ca2003a0.ada: Likewise. + * ada/acats-4/tests/ca/ca2003a1.ada: Likewise. + * ada/acats-4/tests/ca/ca2004a0.ada: Likewise. + * ada/acats-4/tests/ca/ca2004a1.ada: Likewise. + * ada/acats-4/tests/ca/ca2004a2.ada: Likewise. + * ada/acats-4/tests/ca/ca2004a3.ada: Likewise. + * ada/acats-4/tests/ca/ca2004a4.ada: Likewise. + * ada/acats-4/tests/ca/ca2007a0.ada: Likewise. + * ada/acats-4/tests/ca/ca2007a1.ada: Likewise. + * ada/acats-4/tests/ca/ca2007a2.ada: Likewise. + * ada/acats-4/tests/ca/ca2007a3.ada: Likewise. + * ada/acats-4/tests/ca/ca2008a0.ada: Likewise. + * ada/acats-4/tests/ca/ca2008a1.ada: Likewise. + * ada/acats-4/tests/ca/ca2008a2.ada: Likewise. + * ada/acats-4/tests/ca/ca2009a.ada: Likewise. + * ada/acats-4/tests/ca/ca2009c0.ada: Likewise. + * ada/acats-4/tests/ca/ca2009c1.ada: Likewise. + * ada/acats-4/tests/ca/ca2009d.ada: Likewise. + * ada/acats-4/tests/ca/ca2009f0.ada: Likewise. + * ada/acats-4/tests/ca/ca2009f1.ada: Likewise. + * ada/acats-4/tests/ca/ca2009f2.ada: Likewise. + * ada/acats-4/tests/ca/ca2011b.ada: Likewise. + * ada/acats-4/tests/ca/ca21001.a: Likewise. + * ada/acats-4/tests/ca/ca21002.a: Likewise. + * ada/acats-4/tests/ca/ca3011a0.ada: Likewise. + * ada/acats-4/tests/ca/ca3011a1.ada: Likewise. + * ada/acats-4/tests/ca/ca3011a2.ada: Likewise. + * ada/acats-4/tests/ca/ca3011a3.ada: Likewise. + * ada/acats-4/tests/ca/ca3011a4.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a0.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a1.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a2.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a3.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a4.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a5.ada: Likewise. + * ada/acats-4/tests/ca/ca5003a6.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b0.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b1.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b2.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b3.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b4.ada: Likewise. + * ada/acats-4/tests/ca/ca5003b5.ada: Likewise. + * ada/acats-4/tests/ca/ca5004a.ada: Likewise. + * ada/acats-4/tests/ca/ca5004b0.ada: Likewise. + * ada/acats-4/tests/ca/ca5004b1.ada: Likewise. + * ada/acats-4/tests/ca/ca5004b2.ada: Likewise. + * ada/acats-4/tests/ca/ca5006a.ada: Likewise. + * ada/acats-4/tests/cb/cb10002.a: Likewise. + * ada/acats-4/tests/cb/cb1001a.ada: Likewise. + * ada/acats-4/tests/cb/cb1004a.ada: Likewise. + * ada/acats-4/tests/cb/cb1005a.ada: Likewise. + * ada/acats-4/tests/cb/cb1010a.ada: Likewise. + * ada/acats-4/tests/cb/cb1010c.ada: Likewise. + * ada/acats-4/tests/cb/cb1010d.ada: Likewise. + * ada/acats-4/tests/cb/cb20001.a: Likewise. + * ada/acats-4/tests/cb/cb20003.a: Likewise. + * ada/acats-4/tests/cb/cb20004.a: Likewise. + * ada/acats-4/tests/cb/cb20005.a: Likewise. + * ada/acats-4/tests/cb/cb20006.a: Likewise. + * ada/acats-4/tests/cb/cb20007.a: Likewise. + * ada/acats-4/tests/cb/cb2004a.ada: Likewise. + * ada/acats-4/tests/cb/cb2005a.ada: Likewise. + * ada/acats-4/tests/cb/cb2006a.ada: Likewise. + * ada/acats-4/tests/cb/cb2007a.ada: Likewise. + * ada/acats-4/tests/cb/cb20a02.a: Likewise. + * ada/acats-4/tests/cb/cb30001.a: Likewise. + * ada/acats-4/tests/cb/cb30002.a: Likewise. + * ada/acats-4/tests/cb/cb3003a.ada: Likewise. + * ada/acats-4/tests/cb/cb3003b.ada: Likewise. + * ada/acats-4/tests/cb/cb3004a.ada: Likewise. + * ada/acats-4/tests/cb/cb40005.a: Likewise. + * ada/acats-4/tests/cb/cb4001a.ada: Likewise. + * ada/acats-4/tests/cb/cb4002a.ada: Likewise. + * ada/acats-4/tests/cb/cb4003a.ada: Likewise. + * ada/acats-4/tests/cb/cb4004a.ada: Likewise. + * ada/acats-4/tests/cb/cb4005a.ada: Likewise. + * ada/acats-4/tests/cb/cb4006a.ada: Likewise. + * ada/acats-4/tests/cb/cb4007a.ada: Likewise. + * ada/acats-4/tests/cb/cb4008a.ada: Likewise. + * ada/acats-4/tests/cb/cb4009a.ada: Likewise. + * ada/acats-4/tests/cb/cb4013a.ada: Likewise. + * ada/acats-4/tests/cb/cb40a01.a: Likewise. + * ada/acats-4/tests/cb/cb40a020.a: Likewise. + * ada/acats-4/tests/cb/cb40a021.am: Likewise. + * ada/acats-4/tests/cb/cb40a030.a: Likewise. + * ada/acats-4/tests/cb/cb40a031.am: Likewise. + * ada/acats-4/tests/cb/cb40a04.a: Likewise. + * ada/acats-4/tests/cb/cb41001.a: Likewise. + * ada/acats-4/tests/cb/cb41002.a: Likewise. + * ada/acats-4/tests/cb/cb41003.a: Likewise. + * ada/acats-4/tests/cb/cb41004.a: Likewise. + * ada/acats-4/tests/cb/cb42001.a: Likewise. + * ada/acats-4/tests/cb/cb42002.a: Likewise. + * ada/acats-4/tests/cb/cb42003.a: Likewise. + * ada/acats-4/tests/cb/cb50001.a: Likewise. + * ada/acats-4/tests/cb/cb5001a.ada: Likewise. + * ada/acats-4/tests/cb/cb5001b.ada: Likewise. + * ada/acats-4/tests/cb/cb5002a.ada: Likewise. + * ada/acats-4/tests/cc/cc1004a.ada: Likewise. + * ada/acats-4/tests/cc/cc1005b.ada: Likewise. + * ada/acats-4/tests/cc/cc1010a.ada: Likewise. + * ada/acats-4/tests/cc/cc1010b.ada: Likewise. + * ada/acats-4/tests/cc/cc1018a.ada: Likewise. + * ada/acats-4/tests/cc/cc1104c.ada: Likewise. + * ada/acats-4/tests/cc/cc1107b.ada: Likewise. + * ada/acats-4/tests/cc/cc1111a.ada: Likewise. + * ada/acats-4/tests/cc/cc1204a.ada: Likewise. + * ada/acats-4/tests/cc/cc1207b.ada: Likewise. + * ada/acats-4/tests/cc/cc1220a.ada: Likewise. + * ada/acats-4/tests/cc/cc1221a.ada: Likewise. + * ada/acats-4/tests/cc/cc1221b.ada: Likewise. + * ada/acats-4/tests/cc/cc1221c.ada: Likewise. + * ada/acats-4/tests/cc/cc1221d.ada: Likewise. + * ada/acats-4/tests/cc/cc1222a.ada: Likewise. + * ada/acats-4/tests/cc/cc1223a.ada: Likewise. + * ada/acats-4/tests/cc/cc1224a.ada: Likewise. + * ada/acats-4/tests/cc/cc1225a.tst: Likewise. + * ada/acats-4/tests/cc/cc1226b.ada: Likewise. + * ada/acats-4/tests/cc/cc1227a.ada: Likewise. + * ada/acats-4/tests/cc/cc1301a.ada: Likewise. + * ada/acats-4/tests/cc/cc1302a.ada: Likewise. + * ada/acats-4/tests/cc/cc1304a.ada: Likewise. + * ada/acats-4/tests/cc/cc1304b.ada: Likewise. + * ada/acats-4/tests/cc/cc1307a.ada: Likewise. + * ada/acats-4/tests/cc/cc1307b.ada: Likewise. + * ada/acats-4/tests/cc/cc1308a.ada: Likewise. + * ada/acats-4/tests/cc/cc1310a.ada: Likewise. + * ada/acats-4/tests/cc/cc1311a.ada: Likewise. + * ada/acats-4/tests/cc/cc1311b.ada: Likewise. + * ada/acats-4/tests/cc/cc2002a.ada: Likewise. + * ada/acats-4/tests/cc/cc30001.a: Likewise. + * ada/acats-4/tests/cc/cc30002.a: Likewise. + * ada/acats-4/tests/cc/cc30003.a: Likewise. + * ada/acats-4/tests/cc/cc30004.a: Likewise. + * ada/acats-4/tests/cc/cc3004a.ada: Likewise. + * ada/acats-4/tests/cc/cc3007a.ada: Likewise. + * ada/acats-4/tests/cc/cc3007b.ada: Likewise. + * ada/acats-4/tests/cc/cc3011a.ada: Likewise. + * ada/acats-4/tests/cc/cc3011d.ada: Likewise. + * ada/acats-4/tests/cc/cc3012a.ada: Likewise. + * ada/acats-4/tests/cc/cc3015a.ada: Likewise. + * ada/acats-4/tests/cc/cc3016b.ada: Likewise. + * ada/acats-4/tests/cc/cc3016c.ada: Likewise. + * ada/acats-4/tests/cc/cc3016f.ada: Likewise. + * ada/acats-4/tests/cc/cc3016i.ada: Likewise. + * ada/acats-4/tests/cc/cc3017b.ada: Likewise. + * ada/acats-4/tests/cc/cc3019a.ada: Likewise. + * ada/acats-4/tests/cc/cc3019b0.ada: Likewise. + * ada/acats-4/tests/cc/cc3019b1.ada: Likewise. + * ada/acats-4/tests/cc/cc3019b2.ada: Likewise. + * ada/acats-4/tests/cc/cc3019c0.ada: Likewise. + * ada/acats-4/tests/cc/cc3019c1.ada: Likewise. + * ada/acats-4/tests/cc/cc3019c2.ada: Likewise. + * ada/acats-4/tests/cc/cc3106b.ada: Likewise. + * ada/acats-4/tests/cc/cc3120a.ada: Likewise. + * ada/acats-4/tests/cc/cc3120b.ada: Likewise. + * ada/acats-4/tests/cc/cc3121a.ada: Likewise. + * ada/acats-4/tests/cc/cc3123a.ada: Likewise. + * ada/acats-4/tests/cc/cc3125a.ada: Likewise. + * ada/acats-4/tests/cc/cc3125b.ada: Likewise. + * ada/acats-4/tests/cc/cc3125c.ada: Likewise. + * ada/acats-4/tests/cc/cc3125d.ada: Likewise. + * ada/acats-4/tests/cc/cc3126a.ada: Likewise. + * ada/acats-4/tests/cc/cc3127a.ada: Likewise. + * ada/acats-4/tests/cc/cc3128a.ada: Likewise. + * ada/acats-4/tests/cc/cc3203a.ada: Likewise. + * ada/acats-4/tests/cc/cc3207b.ada: Likewise. + * ada/acats-4/tests/cc/cc3220a.ada: Likewise. + * ada/acats-4/tests/cc/cc3221a.ada: Likewise. + * ada/acats-4/tests/cc/cc3222a.ada: Likewise. + * ada/acats-4/tests/cc/cc3223a.ada: Likewise. + * ada/acats-4/tests/cc/cc3224a.ada: Likewise. + * ada/acats-4/tests/cc/cc3225a.ada: Likewise. + * ada/acats-4/tests/cc/cc3230a.ada: Likewise. + * ada/acats-4/tests/cc/cc3231a.ada: Likewise. + * ada/acats-4/tests/cc/cc3232a.ada: Likewise. + * ada/acats-4/tests/cc/cc3233a.ada: Likewise. + * ada/acats-4/tests/cc/cc3234a.ada: Likewise. + * ada/acats-4/tests/cc/cc3235a.ada: Likewise. + * ada/acats-4/tests/cc/cc3236a.ada: Likewise. + * ada/acats-4/tests/cc/cc3240a.ada: Likewise. + * ada/acats-4/tests/cc/cc3305a.ada: Likewise. + * ada/acats-4/tests/cc/cc3305b.ada: Likewise. + * ada/acats-4/tests/cc/cc3305c.ada: Likewise. + * ada/acats-4/tests/cc/cc3305d.ada: Likewise. + * ada/acats-4/tests/cc/cc3601a.ada: Likewise. + * ada/acats-4/tests/cc/cc3601c.ada: Likewise. + * ada/acats-4/tests/cc/cc3602a.ada: Likewise. + * ada/acats-4/tests/cc/cc3603a.ada: Likewise. + * ada/acats-4/tests/cc/cc3605a.ada: Likewise. + * ada/acats-4/tests/cc/cc3606a.ada: Likewise. + * ada/acats-4/tests/cc/cc3606b.ada: Likewise. + * ada/acats-4/tests/cc/cc3607b.ada: Likewise. + * ada/acats-4/tests/cc/cc40001.a: Likewise. + * ada/acats-4/tests/cc/cc50001.a: Likewise. + * ada/acats-4/tests/cc/cc50a01.a: Likewise. + * ada/acats-4/tests/cc/cc50a02.a: Likewise. + * ada/acats-4/tests/cc/cc51001.a: Likewise. + * ada/acats-4/tests/cc/cc51002.a: Likewise. + * ada/acats-4/tests/cc/cc51003.a: Likewise. + * ada/acats-4/tests/cc/cc51004.a: Likewise. + * ada/acats-4/tests/cc/cc51006.a: Likewise. + * ada/acats-4/tests/cc/cc51007.a: Likewise. + * ada/acats-4/tests/cc/cc51008.a: Likewise. + * ada/acats-4/tests/cc/cc51009.a: Likewise. + * ada/acats-4/tests/cc/cc510100.a: Likewise. + * ada/acats-4/tests/cc/cc510101.a: Likewise. + * ada/acats-4/tests/cc/cc510102.a: Likewise. + * ada/acats-4/tests/cc/cc510103.am: Likewise. + * ada/acats-4/tests/cc/cc51011.a: Likewise. + * ada/acats-4/tests/cc/cc51a01.a: Likewise. + * ada/acats-4/tests/cc/cc51b03.a: Likewise. + * ada/acats-4/tests/cc/cc51d01.a: Likewise. + * ada/acats-4/tests/cc/cc51d02.a: Likewise. + * ada/acats-4/tests/cc/cc54001.a: Likewise. + * ada/acats-4/tests/cc/cc54002.a: Likewise. + * ada/acats-4/tests/cc/cc54003.a: Likewise. + * ada/acats-4/tests/cc/cc54004.a: Likewise. + * ada/acats-4/tests/cc/cc60001.a: Likewise. + * ada/acats-4/tests/cc/cc70001.a: Likewise. + * ada/acats-4/tests/cc/cc70002.a: Likewise. + * ada/acats-4/tests/cc/cc70003.a: Likewise. + * ada/acats-4/tests/cc/cc70a01.a: Likewise. + * ada/acats-4/tests/cc/cc70a02.a: Likewise. + * ada/acats-4/tests/cc/cc70b01.a: Likewise. + * ada/acats-4/tests/cc/cc70b02.a: Likewise. + * ada/acats-4/tests/cc/cc70c01.a: Likewise. + * ada/acats-4/tests/cc/cc70c02.a: Likewise. + * ada/acats-4/tests/cd/cd10001.a: Likewise. + * ada/acats-4/tests/cd/cd10002.a: Likewise. + * ada/acats-4/tests/cd/cd1009d.ada: Likewise. + * ada/acats-4/tests/cd/cd1009e.ada: Likewise. + * ada/acats-4/tests/cd/cd1009f.ada: Likewise. + * ada/acats-4/tests/cd/cd1009g.ada: Likewise. + * ada/acats-4/tests/cd/cd1009h.ada: Likewise. + * ada/acats-4/tests/cd/cd1009i.ada: Likewise. + * ada/acats-4/tests/cd/cd1009j.ada: Likewise. + * ada/acats-4/tests/cd/cd1009k.tst: Likewise. + * ada/acats-4/tests/cd/cd1009n.ada: Likewise. + * ada/acats-4/tests/cd/cd1009o.ada: Likewise. + * ada/acats-4/tests/cd/cd1009p.ada: Likewise. + * ada/acats-4/tests/cd/cd1009q.ada: Likewise. + * ada/acats-4/tests/cd/cd1009r.ada: Likewise. + * ada/acats-4/tests/cd/cd1009s.ada: Likewise. + * ada/acats-4/tests/cd/cd1009t.tst: Likewise. + * ada/acats-4/tests/cd/cd1009u.tst: Likewise. + * ada/acats-4/tests/cd/cd1009v.ada: Likewise. + * ada/acats-4/tests/cd/cd1009w.ada: Likewise. + * ada/acats-4/tests/cd/cd1009x.ada: Likewise. + * ada/acats-4/tests/cd/cd1009y.ada: Likewise. + * ada/acats-4/tests/cd/cd1009z.ada: Likewise. + * ada/acats-4/tests/cd/cd11001.a: Likewise. + * ada/acats-4/tests/cd/cd1c03a.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03b.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03c.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03e.tst: Likewise. + * ada/acats-4/tests/cd/cd1c03f.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03g.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03h.ada: Likewise. + * ada/acats-4/tests/cd/cd1c03i.ada: Likewise. + * ada/acats-4/tests/cd/cd1c04a.ada: Likewise. + * ada/acats-4/tests/cd/cd1c04d.ada: Likewise. + * ada/acats-4/tests/cd/cd1c04e.ada: Likewise. + * ada/acats-4/tests/cd/cd1c06a.tst: Likewise. + * ada/acats-4/tests/cd/cd20001.a: Likewise. + * ada/acats-4/tests/cd/cd2a21a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a21e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a22a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a22e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a22i.ada: Likewise. + * ada/acats-4/tests/cd/cd2a22j.ada: Likewise. + * ada/acats-4/tests/cd/cd2a23a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a23e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a24a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a24e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a24i.ada: Likewise. + * ada/acats-4/tests/cd/cd2a24j.ada: Likewise. + * ada/acats-4/tests/cd/cd2a31a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a31e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32c.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32g.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32i.ada: Likewise. + * ada/acats-4/tests/cd/cd2a32j.ada: Likewise. + * ada/acats-4/tests/cd/cd2a51a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a53a.ada: Likewise. + * ada/acats-4/tests/cd/cd2a53e.ada: Likewise. + * ada/acats-4/tests/cd/cd2a83c.tst: Likewise. + * ada/acats-4/tests/cd/cd2a91c.tst: Likewise. + * ada/acats-4/tests/cd/cd2b11b.ada: Likewise. + * ada/acats-4/tests/cd/cd2b11d.ada: Likewise. + * ada/acats-4/tests/cd/cd2b11e.ada: Likewise. + * ada/acats-4/tests/cd/cd2b11f.ada: Likewise. + * ada/acats-4/tests/cd/cd2b16a.ada: Likewise. + * ada/acats-4/tests/cd/cd2c11a.tst: Likewise. + * ada/acats-4/tests/cd/cd2c11d.tst: Likewise. + * ada/acats-4/tests/cd/cd2d11a.ada: Likewise. + * ada/acats-4/tests/cd/cd2d13a.ada: Likewise. + * ada/acats-4/tests/cd/cd30001.a: Likewise. + * ada/acats-4/tests/cd/cd30002.a: Likewise. + * ada/acats-4/tests/cd/cd30003.a: Likewise. + * ada/acats-4/tests/cd/cd30004.a: Likewise. + * ada/acats-4/tests/cd/cd300050.am: Likewise. + * ada/acats-4/tests/cd/cd300051.c: Likewise. + * ada/acats-4/tests/cd/cd30006.a: Likewise. + * ada/acats-4/tests/cd/cd30007.a: Likewise. + * ada/acats-4/tests/cd/cd30008.a: Likewise. + * ada/acats-4/tests/cd/cd30009.a: Likewise. + * ada/acats-4/tests/cd/cd30010.a: Likewise. + * ada/acats-4/tests/cd/cd30011.a: Likewise. + * ada/acats-4/tests/cd/cd30012.a: Likewise. + * ada/acats-4/tests/cd/cd30013.a: Likewise. + * ada/acats-4/tests/cd/cd30014.a: Likewise. + * ada/acats-4/tests/cd/cd3014a.ada: Likewise. + * ada/acats-4/tests/cd/cd3014c.ada: Likewise. + * ada/acats-4/tests/cd/cd3014d.ada: Likewise. + * ada/acats-4/tests/cd/cd3014f.ada: Likewise. + * ada/acats-4/tests/cd/cd3015a.ada: Likewise. + * ada/acats-4/tests/cd/cd3015c.ada: Likewise. + * ada/acats-4/tests/cd/cd3015e.ada: Likewise. + * ada/acats-4/tests/cd/cd3015f.ada: Likewise. + * ada/acats-4/tests/cd/cd3015g.ada: Likewise. + * ada/acats-4/tests/cd/cd3015h.ada: Likewise. + * ada/acats-4/tests/cd/cd3015i.ada: Likewise. + * ada/acats-4/tests/cd/cd3015k.ada: Likewise. + * ada/acats-4/tests/cd/cd3021a.ada: Likewise. + * ada/acats-4/tests/cd/cd40001.a: Likewise. + * ada/acats-4/tests/cd/cd4031a.ada: Likewise. + * ada/acats-4/tests/cd/cd4041a.tst: Likewise. + * ada/acats-4/tests/cd/cd4051a.ada: Likewise. + * ada/acats-4/tests/cd/cd4051b.ada: Likewise. + * ada/acats-4/tests/cd/cd4051c.ada: Likewise. + * ada/acats-4/tests/cd/cd4051d.ada: Likewise. + * ada/acats-4/tests/cd/cd5003a.ada: Likewise. + * ada/acats-4/tests/cd/cd5003b.ada: Likewise. + * ada/acats-4/tests/cd/cd5003c.ada: Likewise. + * ada/acats-4/tests/cd/cd5003d.ada: Likewise. + * ada/acats-4/tests/cd/cd5003e.ada: Likewise. + * ada/acats-4/tests/cd/cd5003f.ada: Likewise. + * ada/acats-4/tests/cd/cd5003g.ada: Likewise. + * ada/acats-4/tests/cd/cd5003h.ada: Likewise. + * ada/acats-4/tests/cd/cd5003i.ada: Likewise. + * ada/acats-4/tests/cd/cd5011a.ada: Likewise. + * ada/acats-4/tests/cd/cd5011c.ada: Likewise. + * ada/acats-4/tests/cd/cd5011e.ada: Likewise. + * ada/acats-4/tests/cd/cd5011g.ada: Likewise. + * ada/acats-4/tests/cd/cd5011i.ada: Likewise. + * ada/acats-4/tests/cd/cd5011k.ada: Likewise. + * ada/acats-4/tests/cd/cd5011m.ada: Likewise. + * ada/acats-4/tests/cd/cd5011q.ada: Likewise. + * ada/acats-4/tests/cd/cd5011s.ada: Likewise. + * ada/acats-4/tests/cd/cd5012a.ada: Likewise. + * ada/acats-4/tests/cd/cd5012b.ada: Likewise. + * ada/acats-4/tests/cd/cd5012e.ada: Likewise. + * ada/acats-4/tests/cd/cd5012f.ada: Likewise. + * ada/acats-4/tests/cd/cd5012i.ada: Likewise. + * ada/acats-4/tests/cd/cd5012m.ada: Likewise. + * ada/acats-4/tests/cd/cd5013a.ada: Likewise. + * ada/acats-4/tests/cd/cd5013c.ada: Likewise. + * ada/acats-4/tests/cd/cd5013e.ada: Likewise. + * ada/acats-4/tests/cd/cd5013g.ada: Likewise. + * ada/acats-4/tests/cd/cd5013i.ada: Likewise. + * ada/acats-4/tests/cd/cd5013k.ada: Likewise. + * ada/acats-4/tests/cd/cd5013m.ada: Likewise. + * ada/acats-4/tests/cd/cd5013o.ada: Likewise. + * ada/acats-4/tests/cd/cd5014a.ada: Likewise. + * ada/acats-4/tests/cd/cd5014c.ada: Likewise. + * ada/acats-4/tests/cd/cd5014e.ada: Likewise. + * ada/acats-4/tests/cd/cd5014g.ada: Likewise. + * ada/acats-4/tests/cd/cd5014i.ada: Likewise. + * ada/acats-4/tests/cd/cd5014k.ada: Likewise. + * ada/acats-4/tests/cd/cd5014m.ada: Likewise. + * ada/acats-4/tests/cd/cd5014o.ada: Likewise. + * ada/acats-4/tests/cd/cd5014t.ada: Likewise. + * ada/acats-4/tests/cd/cd5014v.ada: Likewise. + * ada/acats-4/tests/cd/cd5014x.ada: Likewise. + * ada/acats-4/tests/cd/cd5014y.ada: Likewise. + * ada/acats-4/tests/cd/cd5014z.ada: Likewise. + * ada/acats-4/tests/cd/cd70001.a: Likewise. + * ada/acats-4/tests/cd/cd7002a.ada: Likewise. + * ada/acats-4/tests/cd/cd7007b.ada: Likewise. + * ada/acats-4/tests/cd/cd7101d.ada: Likewise. + * ada/acats-4/tests/cd/cd7101e.dep: Likewise. + * ada/acats-4/tests/cd/cd7101f.dep: Likewise. + * ada/acats-4/tests/cd/cd7101g.tst: Likewise. + * ada/acats-4/tests/cd/cd7103d.ada: Likewise. + * ada/acats-4/tests/cd/cd7202a.ada: Likewise. + * ada/acats-4/tests/cd/cd7204b.ada: Likewise. + * ada/acats-4/tests/cd/cd7204c.ada: Likewise. + * ada/acats-4/tests/cd/cd72a01.a: Likewise. + * ada/acats-4/tests/cd/cd72a02.a: Likewise. + * ada/acats-4/tests/cd/cd7305a.ada: Likewise. + * ada/acats-4/tests/cd/cd90001.a: Likewise. + * ada/acats-4/tests/cd/cd92001.a: Likewise. + * ada/acats-4/tests/cd/cda201a.ada: Likewise. + * ada/acats-4/tests/cd/cda201b.ada: Likewise. + * ada/acats-4/tests/cd/cda201c.ada: Likewise. + * ada/acats-4/tests/cd/cda201e.ada: Likewise. + * ada/acats-4/tests/cd/cdb0001.a: Likewise. + * ada/acats-4/tests/cd/cdb0002.a: Likewise. + * ada/acats-4/tests/cd/cdb0a01.a: Likewise. + * ada/acats-4/tests/cd/cdb0a02.a: Likewise. + * ada/acats-4/tests/cd/cdb3a01.a: Likewise. + * ada/acats-4/tests/cd/cdb4001.a: Likewise. + * ada/acats-4/tests/cd/cdd1001.a: Likewise. + * ada/acats-4/tests/cd/cdd2001.a: Likewise. + * ada/acats-4/tests/cd/cdd2a01.a: Likewise. + * ada/acats-4/tests/cd/cdd2a02.a: Likewise. + * ada/acats-4/tests/cd/cdd2a03.a: Likewise. + * ada/acats-4/tests/cd/cdd2b01.a: Likewise. + * ada/acats-4/tests/cd/cdd2b02.a: Likewise. + * ada/acats-4/tests/cd/cdd2b03.a: Likewise. + * ada/acats-4/tests/cd/cdd2b04.a: Likewise. + * ada/acats-4/tests/cd/cde0001.a: Likewise. + * ada/acats-4/tests/cd/cde0002.a: Likewise. + * ada/acats-4/tests/cd/cde0003.a: Likewise. + * ada/acats-4/tests/ce/ce2102a.ada: Likewise. + * ada/acats-4/tests/ce/ce2102b.ada: Likewise. + * ada/acats-4/tests/ce/ce2102c.tst: Likewise. + * ada/acats-4/tests/ce/ce2102d.ada: Likewise. + * ada/acats-4/tests/ce/ce2102e.ada: Likewise. + * ada/acats-4/tests/ce/ce2102f.ada: Likewise. + * ada/acats-4/tests/ce/ce2102g.ada: Likewise. + * ada/acats-4/tests/ce/ce2102h.tst: Likewise. + * ada/acats-4/tests/ce/ce2102i.ada: Likewise. + * ada/acats-4/tests/ce/ce2102j.ada: Likewise. + * ada/acats-4/tests/ce/ce2102k.ada: Likewise. + * ada/acats-4/tests/ce/ce2102l.ada: Likewise. + * ada/acats-4/tests/ce/ce2102m.ada: Likewise. + * ada/acats-4/tests/ce/ce2102n.ada: Likewise. + * ada/acats-4/tests/ce/ce2102o.ada: Likewise. + * ada/acats-4/tests/ce/ce2102p.ada: Likewise. + * ada/acats-4/tests/ce/ce2102q.ada: Likewise. + * ada/acats-4/tests/ce/ce2102r.ada: Likewise. + * ada/acats-4/tests/ce/ce2102s.ada: Likewise. + * ada/acats-4/tests/ce/ce2102t.ada: Likewise. + * ada/acats-4/tests/ce/ce2102u.ada: Likewise. + * ada/acats-4/tests/ce/ce2102v.ada: Likewise. + * ada/acats-4/tests/ce/ce2102w.ada: Likewise. + * ada/acats-4/tests/ce/ce2102x.ada: Likewise. + * ada/acats-4/tests/ce/ce2102y.ada: Likewise. + * ada/acats-4/tests/ce/ce2103a.tst: Likewise. + * ada/acats-4/tests/ce/ce2103b.tst: Likewise. + * ada/acats-4/tests/ce/ce2103c.ada: Likewise. + * ada/acats-4/tests/ce/ce2103d.ada: Likewise. + * ada/acats-4/tests/ce/ce2104a.ada: Likewise. + * ada/acats-4/tests/ce/ce2104b.ada: Likewise. + * ada/acats-4/tests/ce/ce2104c.ada: Likewise. + * ada/acats-4/tests/ce/ce2104d.ada: Likewise. + * ada/acats-4/tests/ce/ce2106a.ada: Likewise. + * ada/acats-4/tests/ce/ce2106b.ada: Likewise. + * ada/acats-4/tests/ce/ce2108e.ada: Likewise. + * ada/acats-4/tests/ce/ce2108f.ada: Likewise. + * ada/acats-4/tests/ce/ce2108g.ada: Likewise. + * ada/acats-4/tests/ce/ce2108h.ada: Likewise. + * ada/acats-4/tests/ce/ce2109a.ada: Likewise. + * ada/acats-4/tests/ce/ce2109b.ada: Likewise. + * ada/acats-4/tests/ce/ce2109c.ada: Likewise. + * ada/acats-4/tests/ce/ce2110a.ada: Likewise. + * ada/acats-4/tests/ce/ce2110c.ada: Likewise. + * ada/acats-4/tests/ce/ce2111a.ada: Likewise. + * ada/acats-4/tests/ce/ce2111b.ada: Likewise. + * ada/acats-4/tests/ce/ce2111c.ada: Likewise. + * ada/acats-4/tests/ce/ce2111e.ada: Likewise. + * ada/acats-4/tests/ce/ce2111f.ada: Likewise. + * ada/acats-4/tests/ce/ce2111g.ada: Likewise. + * ada/acats-4/tests/ce/ce2111i.ada: Likewise. + * ada/acats-4/tests/ce/ce2201a.ada: Likewise. + * ada/acats-4/tests/ce/ce2201b.ada: Likewise. + * ada/acats-4/tests/ce/ce2201c.ada: Likewise. + * ada/acats-4/tests/ce/ce2201d.dep: Likewise. + * ada/acats-4/tests/ce/ce2201e.dep: Likewise. + * ada/acats-4/tests/ce/ce2201f.ada: Likewise. + * ada/acats-4/tests/ce/ce2201g.ada: Likewise. + * ada/acats-4/tests/ce/ce2201h.ada: Likewise. + * ada/acats-4/tests/ce/ce2201i.ada: Likewise. + * ada/acats-4/tests/ce/ce2201j.ada: Likewise. + * ada/acats-4/tests/ce/ce2201k.ada: Likewise. + * ada/acats-4/tests/ce/ce2201l.ada: Likewise. + * ada/acats-4/tests/ce/ce2201m.ada: Likewise. + * ada/acats-4/tests/ce/ce2201n.ada: Likewise. + * ada/acats-4/tests/ce/ce2202a.ada: Likewise. + * ada/acats-4/tests/ce/ce2203a.tst: Likewise. + * ada/acats-4/tests/ce/ce2204a.ada: Likewise. + * ada/acats-4/tests/ce/ce2204b.ada: Likewise. + * ada/acats-4/tests/ce/ce2204c.ada: Likewise. + * ada/acats-4/tests/ce/ce2204d.ada: Likewise. + * ada/acats-4/tests/ce/ce2205a.ada: Likewise. + * ada/acats-4/tests/ce/ce2206a.ada: Likewise. + * ada/acats-4/tests/ce/ce2208b.ada: Likewise. + * ada/acats-4/tests/ce/ce2401a.ada: Likewise. + * ada/acats-4/tests/ce/ce2401b.ada: Likewise. + * ada/acats-4/tests/ce/ce2401c.ada: Likewise. + * ada/acats-4/tests/ce/ce2401e.ada: Likewise. + * ada/acats-4/tests/ce/ce2401f.ada: Likewise. + * ada/acats-4/tests/ce/ce2401h.ada: Likewise. + * ada/acats-4/tests/ce/ce2401i.ada: Likewise. + * ada/acats-4/tests/ce/ce2401j.ada: Likewise. + * ada/acats-4/tests/ce/ce2401k.ada: Likewise. + * ada/acats-4/tests/ce/ce2401l.ada: Likewise. + * ada/acats-4/tests/ce/ce2402a.ada: Likewise. + * ada/acats-4/tests/ce/ce2403a.tst: Likewise. + * ada/acats-4/tests/ce/ce2404a.ada: Likewise. + * ada/acats-4/tests/ce/ce2404b.ada: Likewise. + * ada/acats-4/tests/ce/ce2405b.ada: Likewise. + * ada/acats-4/tests/ce/ce2406a.ada: Likewise. + * ada/acats-4/tests/ce/ce2407a.ada: Likewise. + * ada/acats-4/tests/ce/ce2407b.ada: Likewise. + * ada/acats-4/tests/ce/ce2408a.ada: Likewise. + * ada/acats-4/tests/ce/ce2408b.ada: Likewise. + * ada/acats-4/tests/ce/ce2409a.ada: Likewise. + * ada/acats-4/tests/ce/ce2409b.ada: Likewise. + * ada/acats-4/tests/ce/ce2410a.ada: Likewise. + * ada/acats-4/tests/ce/ce2410b.ada: Likewise. + * ada/acats-4/tests/ce/ce2411a.ada: Likewise. + * ada/acats-4/tests/ce/ce3002b.tst: Likewise. + * ada/acats-4/tests/ce/ce3002c.tst: Likewise. + * ada/acats-4/tests/ce/ce3002d.ada: Likewise. + * ada/acats-4/tests/ce/ce3002f.ada: Likewise. + * ada/acats-4/tests/ce/ce3102a.ada: Likewise. + * ada/acats-4/tests/ce/ce3102b.tst: Likewise. + * ada/acats-4/tests/ce/ce3102d.ada: Likewise. + * ada/acats-4/tests/ce/ce3102e.ada: Likewise. + * ada/acats-4/tests/ce/ce3102f.ada: Likewise. + * ada/acats-4/tests/ce/ce3102g.ada: Likewise. + * ada/acats-4/tests/ce/ce3102h.ada: Likewise. + * ada/acats-4/tests/ce/ce3102i.ada: Likewise. + * ada/acats-4/tests/ce/ce3102j.ada: Likewise. + * ada/acats-4/tests/ce/ce3102k.ada: Likewise. + * ada/acats-4/tests/ce/ce3103a.ada: Likewise. + * ada/acats-4/tests/ce/ce3104a.ada: Likewise. + * ada/acats-4/tests/ce/ce3104b.ada: Likewise. + * ada/acats-4/tests/ce/ce3104c.ada: Likewise. + * ada/acats-4/tests/ce/ce3106a.ada: Likewise. + * ada/acats-4/tests/ce/ce3106b.ada: Likewise. + * ada/acats-4/tests/ce/ce3107a.tst: Likewise. + * ada/acats-4/tests/ce/ce3107b.ada: Likewise. + * ada/acats-4/tests/ce/ce3108a.ada: Likewise. + * ada/acats-4/tests/ce/ce3108b.ada: Likewise. + * ada/acats-4/tests/ce/ce3110a.ada: Likewise. + * ada/acats-4/tests/ce/ce3112c.ada: Likewise. + * ada/acats-4/tests/ce/ce3112d.ada: Likewise. + * ada/acats-4/tests/ce/ce3114a.ada: Likewise. + * ada/acats-4/tests/ce/ce3115a.ada: Likewise. + * ada/acats-4/tests/ce/ce3201a.ada: Likewise. + * ada/acats-4/tests/ce/ce3202a.ada: Likewise. + * ada/acats-4/tests/ce/ce3206a.ada: Likewise. + * ada/acats-4/tests/ce/ce3207a.ada: Likewise. + * ada/acats-4/tests/ce/ce3301a.ada: Likewise. + * ada/acats-4/tests/ce/ce3302a.ada: Likewise. + * ada/acats-4/tests/ce/ce3303a.ada: Likewise. + * ada/acats-4/tests/ce/ce3304a.tst: Likewise. + * ada/acats-4/tests/ce/ce3305a.ada: Likewise. + * ada/acats-4/tests/ce/ce3306a.ada: Likewise. + * ada/acats-4/tests/ce/ce3401a.ada: Likewise. + * ada/acats-4/tests/ce/ce3402a.ada: Likewise. + * ada/acats-4/tests/ce/ce3402c.ada: Likewise. + * ada/acats-4/tests/ce/ce3402d.ada: Likewise. + * ada/acats-4/tests/ce/ce3402e.ada: Likewise. + * ada/acats-4/tests/ce/ce3403a.ada: Likewise. + * ada/acats-4/tests/ce/ce3403b.ada: Likewise. + * ada/acats-4/tests/ce/ce3403c.ada: Likewise. + * ada/acats-4/tests/ce/ce3403d.ada: Likewise. + * ada/acats-4/tests/ce/ce3403e.ada: Likewise. + * ada/acats-4/tests/ce/ce3403f.ada: Likewise. + * ada/acats-4/tests/ce/ce3404a.ada: Likewise. + * ada/acats-4/tests/ce/ce3404b.ada: Likewise. + * ada/acats-4/tests/ce/ce3404c.ada: Likewise. + * ada/acats-4/tests/ce/ce3404d.ada: Likewise. + * ada/acats-4/tests/ce/ce3405a.ada: Likewise. + * ada/acats-4/tests/ce/ce3405c.ada: Likewise. + * ada/acats-4/tests/ce/ce3405d.ada: Likewise. + * ada/acats-4/tests/ce/ce3406a.ada: Likewise. + * ada/acats-4/tests/ce/ce3406b.ada: Likewise. + * ada/acats-4/tests/ce/ce3406c.ada: Likewise. + * ada/acats-4/tests/ce/ce3406d.ada: Likewise. + * ada/acats-4/tests/ce/ce3407a.ada: Likewise. + * ada/acats-4/tests/ce/ce3407b.ada: Likewise. + * ada/acats-4/tests/ce/ce3407c.ada: Likewise. + * ada/acats-4/tests/ce/ce3408a.ada: Likewise. + * ada/acats-4/tests/ce/ce3408b.ada: Likewise. + * ada/acats-4/tests/ce/ce3408c.ada: Likewise. + * ada/acats-4/tests/ce/ce3409a.ada: Likewise. + * ada/acats-4/tests/ce/ce3409b.ada: Likewise. + * ada/acats-4/tests/ce/ce3409c.ada: Likewise. + * ada/acats-4/tests/ce/ce3409d.ada: Likewise. + * ada/acats-4/tests/ce/ce3409e.ada: Likewise. + * ada/acats-4/tests/ce/ce3410a.ada: Likewise. + * ada/acats-4/tests/ce/ce3410b.ada: Likewise. + * ada/acats-4/tests/ce/ce3410c.ada: Likewise. + * ada/acats-4/tests/ce/ce3410d.ada: Likewise. + * ada/acats-4/tests/ce/ce3410e.ada: Likewise. + * ada/acats-4/tests/ce/ce3411a.ada: Likewise. + * ada/acats-4/tests/ce/ce3411c.ada: Likewise. + * ada/acats-4/tests/ce/ce3412a.ada: Likewise. + * ada/acats-4/tests/ce/ce3413a.ada: Likewise. + * ada/acats-4/tests/ce/ce3413b.ada: Likewise. + * ada/acats-4/tests/ce/ce3413c.ada: Likewise. + * ada/acats-4/tests/ce/ce3414a.ada: Likewise. + * ada/acats-4/tests/ce/ce3601a.ada: Likewise. + * ada/acats-4/tests/ce/ce3602a.ada: Likewise. + * ada/acats-4/tests/ce/ce3602b.ada: Likewise. + * ada/acats-4/tests/ce/ce3602c.ada: Likewise. + * ada/acats-4/tests/ce/ce3602d.ada: Likewise. + * ada/acats-4/tests/ce/ce3603a.ada: Likewise. + * ada/acats-4/tests/ce/ce3604a.ada: Likewise. + * ada/acats-4/tests/ce/ce3604b.ada: Likewise. + * ada/acats-4/tests/ce/ce3605a.ada: Likewise. + * ada/acats-4/tests/ce/ce3605b.ada: Likewise. + * ada/acats-4/tests/ce/ce3605c.ada: Likewise. + * ada/acats-4/tests/ce/ce3605d.ada: Likewise. + * ada/acats-4/tests/ce/ce3605e.ada: Likewise. + * ada/acats-4/tests/ce/ce3606a.ada: Likewise. + * ada/acats-4/tests/ce/ce3606b.ada: Likewise. + * ada/acats-4/tests/ce/ce3701a.ada: Likewise. + * ada/acats-4/tests/ce/ce3704a.ada: Likewise. + * ada/acats-4/tests/ce/ce3704b.ada: Likewise. + * ada/acats-4/tests/ce/ce3704c.ada: Likewise. + * ada/acats-4/tests/ce/ce3704d.ada: Likewise. + * ada/acats-4/tests/ce/ce3704e.ada: Likewise. + * ada/acats-4/tests/ce/ce3704f.ada: Likewise. + * ada/acats-4/tests/ce/ce3704m.ada: Likewise. + * ada/acats-4/tests/ce/ce3704n.ada: Likewise. + * ada/acats-4/tests/ce/ce3704o.ada: Likewise. + * ada/acats-4/tests/ce/ce3705a.ada: Likewise. + * ada/acats-4/tests/ce/ce3705b.ada: Likewise. + * ada/acats-4/tests/ce/ce3705c.ada: Likewise. + * ada/acats-4/tests/ce/ce3705d.ada: Likewise. + * ada/acats-4/tests/ce/ce3705e.ada: Likewise. + * ada/acats-4/tests/ce/ce3706c.ada: Likewise. + * ada/acats-4/tests/ce/ce3706d.ada: Likewise. + * ada/acats-4/tests/ce/ce3706f.ada: Likewise. + * ada/acats-4/tests/ce/ce3706g.ada: Likewise. + * ada/acats-4/tests/ce/ce3707a.ada: Likewise. + * ada/acats-4/tests/ce/ce3708a.ada: Likewise. + * ada/acats-4/tests/ce/ce3801a.ada: Likewise. + * ada/acats-4/tests/ce/ce3801b.ada: Likewise. + * ada/acats-4/tests/ce/ce3804a.ada: Likewise. + * ada/acats-4/tests/ce/ce3804b.ada: Likewise. + * ada/acats-4/tests/ce/ce3804c.ada: Likewise. + * ada/acats-4/tests/ce/ce3804d.ada: Likewise. + * ada/acats-4/tests/ce/ce3804e.ada: Likewise. + * ada/acats-4/tests/ce/ce3804f.ada: Likewise. + * ada/acats-4/tests/ce/ce3804g.ada: Likewise. + * ada/acats-4/tests/ce/ce3804h.ada: Likewise. + * ada/acats-4/tests/ce/ce3804i.ada: Likewise. + * ada/acats-4/tests/ce/ce3804j.ada: Likewise. + * ada/acats-4/tests/ce/ce3804m.ada: Likewise. + * ada/acats-4/tests/ce/ce3804o.ada: Likewise. + * ada/acats-4/tests/ce/ce3804p.ada: Likewise. + * ada/acats-4/tests/ce/ce3805a.ada: Likewise. + * ada/acats-4/tests/ce/ce3805b.ada: Likewise. + * ada/acats-4/tests/ce/ce3806a.ada: Likewise. + * ada/acats-4/tests/ce/ce3806b.ada: Likewise. + * ada/acats-4/tests/ce/ce3806c.ada: Likewise. + * ada/acats-4/tests/ce/ce3806d.ada: Likewise. + * ada/acats-4/tests/ce/ce3806e.ada: Likewise. + * ada/acats-4/tests/ce/ce3806f.ada: Likewise. + * ada/acats-4/tests/ce/ce3806g.ada: Likewise. + * ada/acats-4/tests/ce/ce3806h.ada: Likewise. + * ada/acats-4/tests/ce/ce3809a.ada: Likewise. + * ada/acats-4/tests/ce/ce3809b.ada: Likewise. + * ada/acats-4/tests/ce/ce3810a.ada: Likewise. + * ada/acats-4/tests/ce/ce3810b.ada: Likewise. + * ada/acats-4/tests/ce/ce3815a.ada: Likewise. + * ada/acats-4/tests/ce/ce3901a.ada: Likewise. + * ada/acats-4/tests/ce/ce3902b.ada: Likewise. + * ada/acats-4/tests/ce/ce3904a.ada: Likewise. + * ada/acats-4/tests/ce/ce3904b.ada: Likewise. + * ada/acats-4/tests/ce/ce3905a.ada: Likewise. + * ada/acats-4/tests/ce/ce3905b.ada: Likewise. + * ada/acats-4/tests/ce/ce3905c.ada: Likewise. + * ada/acats-4/tests/ce/ce3905l.ada: Likewise. + * ada/acats-4/tests/ce/ce3906a.ada: Likewise. + * ada/acats-4/tests/ce/ce3906b.ada: Likewise. + * ada/acats-4/tests/ce/ce3906c.ada: Likewise. + * ada/acats-4/tests/ce/ce3906d.ada: Likewise. + * ada/acats-4/tests/ce/ce3906e.ada: Likewise. + * ada/acats-4/tests/ce/ce3906f.ada: Likewise. + * ada/acats-4/tests/ce/ce3907a.ada: Likewise. + * ada/acats-4/tests/ce/ce3908a.ada: Likewise. + * ada/acats-4/tests/cxa/cxa3001.a: Likewise. + * ada/acats-4/tests/cxa/cxa3002.a: Likewise. + * ada/acats-4/tests/cxa/cxa3003.a: Likewise. + * ada/acats-4/tests/cxa/cxa3004.a: Likewise. + * ada/acats-4/tests/cxa/cxa3005.a: Likewise. + * ada/acats-4/tests/cxa/cxa3006.a: Likewise. + * ada/acats-4/tests/cxa/cxa3007.a: Likewise. + * ada/acats-4/tests/cxa/cxa3008.a: Likewise. + * ada/acats-4/tests/cxa/cxa4001.a: Likewise. + * ada/acats-4/tests/cxa/cxa4002.a: Likewise. + * ada/acats-4/tests/cxa/cxa4003.a: Likewise. + * ada/acats-4/tests/cxa/cxa4004.a: Likewise. + * ada/acats-4/tests/cxa/cxa4005.a: Likewise. + * ada/acats-4/tests/cxa/cxa4006.a: Likewise. + * ada/acats-4/tests/cxa/cxa4007.a: Likewise. + * ada/acats-4/tests/cxa/cxa4008.a: Likewise. + * ada/acats-4/tests/cxa/cxa4009.a: Likewise. + * ada/acats-4/tests/cxa/cxa4010.a: Likewise. + * ada/acats-4/tests/cxa/cxa4011.a: Likewise. + * ada/acats-4/tests/cxa/cxa4012.a: Likewise. + * ada/acats-4/tests/cxa/cxa4013.a: Likewise. + * ada/acats-4/tests/cxa/cxa4014.a: Likewise. + * ada/acats-4/tests/cxa/cxa4015.a: Likewise. + * ada/acats-4/tests/cxa/cxa4016.a: Likewise. + * ada/acats-4/tests/cxa/cxa4017.a: Likewise. + * ada/acats-4/tests/cxa/cxa4018.a: Likewise. + * ada/acats-4/tests/cxa/cxa4019.a: Likewise. + * ada/acats-4/tests/cxa/cxa4020.a: Likewise. + * ada/acats-4/tests/cxa/cxa4021.a: Likewise. + * ada/acats-4/tests/cxa/cxa4022.a: Likewise. + * ada/acats-4/tests/cxa/cxa4023.a: Likewise. + * ada/acats-4/tests/cxa/cxa4024.a: Likewise. + * ada/acats-4/tests/cxa/cxa4025.a: Likewise. + * ada/acats-4/tests/cxa/cxa4026.a: Likewise. + * ada/acats-4/tests/cxa/cxa4027.a: Likewise. + * ada/acats-4/tests/cxa/cxa4028.a: Likewise. + * ada/acats-4/tests/cxa/cxa4029.a: Likewise. + * ada/acats-4/tests/cxa/cxa4030.a: Likewise. + * ada/acats-4/tests/cxa/cxa4031.a: Likewise. + * ada/acats-4/tests/cxa/cxa4032.a: Likewise. + * ada/acats-4/tests/cxa/cxa4033.a: Likewise. + * ada/acats-4/tests/cxa/cxa4035.a: Likewise. + * ada/acats-4/tests/cxa/cxa4036.a: Likewise. + * ada/acats-4/tests/cxa/cxa4037.a: Likewise. + * ada/acats-4/tests/cxa/cxa4038.a: Likewise. + * ada/acats-4/tests/cxa/cxa4039.a: Likewise. + * ada/acats-4/tests/cxa/cxa5011.a: Likewise. + * ada/acats-4/tests/cxa/cxa5012.a: Likewise. + * ada/acats-4/tests/cxa/cxa5013.a: Likewise. + * ada/acats-4/tests/cxa/cxa5015.a: Likewise. + * ada/acats-4/tests/cxa/cxa5016.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a01.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a02.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a03.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a04.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a05.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a06.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a07.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a08.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a09.a: Likewise. + * ada/acats-4/tests/cxa/cxa5a10.a: Likewise. + * ada/acats-4/tests/cxa/cxa8001.a: Likewise. + * ada/acats-4/tests/cxa/cxa8002.a: Likewise. + * ada/acats-4/tests/cxa/cxa8003.a: Likewise. + * ada/acats-4/tests/cxa/cxa9001.a: Likewise. + * ada/acats-4/tests/cxa/cxa9002.a: Likewise. + * ada/acats-4/tests/cxa/cxaa001.a: Likewise. + * ada/acats-4/tests/cxa/cxaa002.a: Likewise. + * ada/acats-4/tests/cxa/cxaa003.a: Likewise. + * ada/acats-4/tests/cxa/cxaa004.a: Likewise. + * ada/acats-4/tests/cxa/cxaa005.a: Likewise. + * ada/acats-4/tests/cxa/cxaa006.a: Likewise. + * ada/acats-4/tests/cxa/cxaa007.a: Likewise. + * ada/acats-4/tests/cxa/cxaa008.a: Likewise. + * ada/acats-4/tests/cxa/cxaa009.a: Likewise. + * ada/acats-4/tests/cxa/cxaa010.a: Likewise. + * ada/acats-4/tests/cxa/cxaa011.a: Likewise. + * ada/acats-4/tests/cxa/cxaa012.a: Likewise. + * ada/acats-4/tests/cxa/cxaa013.a: Likewise. + * ada/acats-4/tests/cxa/cxaa014.a: Likewise. + * ada/acats-4/tests/cxa/cxaa015.a: Likewise. + * ada/acats-4/tests/cxa/cxaa016.a: Likewise. + * ada/acats-4/tests/cxa/cxaa017.a: Likewise. + * ada/acats-4/tests/cxa/cxaa018.a: Likewise. + * ada/acats-4/tests/cxa/cxaa019.a: Likewise. + * ada/acats-4/tests/cxa/cxaa020.a: Likewise. + * ada/acats-4/tests/cxa/cxaa021.a: Likewise. + * ada/acats-4/tests/cxa/cxaa022.a: Likewise. + * ada/acats-4/tests/cxa/cxab001.a: Likewise. + * ada/acats-4/tests/cxa/cxab002.au: Likewise. + * ada/acats-4/tests/cxa/cxab003.au: Likewise. + * ada/acats-4/tests/cxa/cxab004.au: Likewise. + * ada/acats-4/tests/cxa/cxab005.au: Likewise. + * ada/acats-4/tests/cxa/cxac001.a: Likewise. + * ada/acats-4/tests/cxa/cxac002.a: Likewise. + * ada/acats-4/tests/cxa/cxac003.a: Likewise. + * ada/acats-4/tests/cxa/cxac004.a: Likewise. + * ada/acats-4/tests/cxa/cxac005.a: Likewise. + * ada/acats-4/tests/cxa/cxac006.a: Likewise. + * ada/acats-4/tests/cxa/cxac007.a: Likewise. + * ada/acats-4/tests/cxa/cxac008.a: Likewise. + * ada/acats-4/tests/cxa/cxac009.a: Likewise. + * ada/acats-4/tests/cxa/cxaca01.a: Likewise. + * ada/acats-4/tests/cxa/cxaca02.a: Likewise. + * ada/acats-4/tests/cxa/cxacb01.a: Likewise. + * ada/acats-4/tests/cxa/cxacb02.a: Likewise. + * ada/acats-4/tests/cxa/cxacc01.a: Likewise. + * ada/acats-4/tests/cxa/cxaf001.a: Likewise. + * ada/acats-4/tests/cxa/cxag001.a: Likewise. + * ada/acats-4/tests/cxa/cxag002.a: Likewise. + * ada/acats-4/tests/cxa/cxag003.a: Likewise. + * ada/acats-4/tests/cxa/cxah001.a: Likewise. + * ada/acats-4/tests/cxa/cxah002.a: Likewise. + * ada/acats-4/tests/cxa/cxah003.a: Likewise. + * ada/acats-4/tests/cxa/cxai001.a: Likewise. + * ada/acats-4/tests/cxa/cxai002.a: Likewise. + * ada/acats-4/tests/cxa/cxai003.a: Likewise. + * ada/acats-4/tests/cxa/cxai004.a: Likewise. + * ada/acats-4/tests/cxa/cxai005.a: Likewise. + * ada/acats-4/tests/cxa/cxai006.a: Likewise. + * ada/acats-4/tests/cxa/cxai007.a: Likewise. + * ada/acats-4/tests/cxa/cxai008.a: Likewise. + * ada/acats-4/tests/cxa/cxai009.a: Likewise. + * ada/acats-4/tests/cxa/cxai010.a: Likewise. + * ada/acats-4/tests/cxa/cxai011.a: Likewise. + * ada/acats-4/tests/cxa/cxai012.a: Likewise. + * ada/acats-4/tests/cxa/cxai013.a: Likewise. + * ada/acats-4/tests/cxa/cxai014.a: Likewise. + * ada/acats-4/tests/cxa/cxai015.a: Likewise. + * ada/acats-4/tests/cxa/cxai016.a: Likewise. + * ada/acats-4/tests/cxa/cxai017.a: Likewise. + * ada/acats-4/tests/cxa/cxai018.a: Likewise. + * ada/acats-4/tests/cxa/cxai019.a: Likewise. + * ada/acats-4/tests/cxa/cxai020.a: Likewise. + * ada/acats-4/tests/cxa/cxai021.a: Likewise. + * ada/acats-4/tests/cxa/cxai022.a: Likewise. + * ada/acats-4/tests/cxa/cxai023.a: Likewise. + * ada/acats-4/tests/cxa/cxai024.a: Likewise. + * ada/acats-4/tests/cxa/cxai025.a: Likewise. + * ada/acats-4/tests/cxa/cxai026.a: Likewise. + * ada/acats-4/tests/cxa/cxai027.a: Likewise. + * ada/acats-4/tests/cxa/cxai028.a: Likewise. + * ada/acats-4/tests/cxa/cxai029.a: Likewise. + * ada/acats-4/tests/cxa/cxai030.a: Likewise. + * ada/acats-4/tests/cxa/cxai031.a: Likewise. + * ada/acats-4/tests/cxa/cxai032.a: Likewise. + * ada/acats-4/tests/cxa/cxai033.a: Likewise. + * ada/acats-4/tests/cxa/cxai034.a: Likewise. + * ada/acats-4/tests/cxa/cxai035.a: Likewise. + * ada/acats-4/tests/cxa/cxai036.a: Likewise. + * ada/acats-4/tests/cxa/cxaia01.a: Likewise. + * ada/acats-4/tests/cxa/cxaia02.a: Likewise. + * ada/acats-4/tests/cxa/cxaia03.a: Likewise. + * ada/acats-4/tests/cxa/cxaia04.a: Likewise. + * ada/acats-4/tests/cxa/cxaia05.a: Likewise. + * ada/acats-4/tests/cxa/cxaia06.a: Likewise. + * ada/acats-4/tests/cxa/cxaia07.a: Likewise. + * ada/acats-4/tests/cxa/cxaia08.a: Likewise. + * ada/acats-4/tests/cxa/cxaia09.a: Likewise. + * ada/acats-4/tests/cxa/cxaia10.a: Likewise. + * ada/acats-4/tests/cxa/cxaia11.a: Likewise. + * ada/acats-4/tests/cxa/cxaia12.a: Likewise. + * ada/acats-4/tests/cxa/cxaia13.a: Likewise. + * ada/acats-4/tests/cxa/cxaia14.a: Likewise. + * ada/acats-4/tests/cxa/cxaib01.a: Likewise. + * ada/acats-4/tests/cxa/cxaib02.a: Likewise. + * ada/acats-4/tests/cxa/cxaib03.a: Likewise. + * ada/acats-4/tests/cxa/cxaib04.a: Likewise. + * ada/acats-4/tests/cxa/cxaib05.a: Likewise. + * ada/acats-4/tests/cxa/cxaib06.a: Likewise. + * ada/acats-4/tests/cxa/cxaib07.a: Likewise. + * ada/acats-4/tests/cxa/cxaib08.a: Likewise. + * ada/acats-4/tests/cxa/cxaj001.a: Likewise. + * ada/acats-4/tests/cxb/cxb2001.a: Likewise. + * ada/acats-4/tests/cxb/cxb2002.a: Likewise. + * ada/acats-4/tests/cxb/cxb2003.a: Likewise. + * ada/acats-4/tests/cxb/cxb3001.a: Likewise. + * ada/acats-4/tests/cxb/cxb3002.a: Likewise. + * ada/acats-4/tests/cxb/cxb3003.a: Likewise. + * ada/acats-4/tests/cxb/cxb30040.c: Likewise. + * ada/acats-4/tests/cxb/cxb30041.am: Likewise. + * ada/acats-4/tests/cxb/cxb3005.a: Likewise. + * ada/acats-4/tests/cxb/cxb30060.c: Likewise. + * ada/acats-4/tests/cxb/cxb30061.am: Likewise. + * ada/acats-4/tests/cxb/cxb3007.a: Likewise. + * ada/acats-4/tests/cxb/cxb3008.a: Likewise. + * ada/acats-4/tests/cxb/cxb3009.a: Likewise. + * ada/acats-4/tests/cxb/cxb3010.a: Likewise. + * ada/acats-4/tests/cxb/cxb3011.a: Likewise. + * ada/acats-4/tests/cxb/cxb3012.a: Likewise. + * ada/acats-4/tests/cxb/cxb30130.c: Likewise. + * ada/acats-4/tests/cxb/cxb30131.c: Likewise. + * ada/acats-4/tests/cxb/cxb30132.am: Likewise. + * ada/acats-4/tests/cxb/cxb3014.a: Likewise. + * ada/acats-4/tests/cxb/cxb3015.a: Likewise. + * ada/acats-4/tests/cxb/cxb3016.a: Likewise. + * ada/acats-4/tests/cxb/cxb30170.c: Likewise. + * ada/acats-4/tests/cxb/cxb30171.a: Likewise. + * ada/acats-4/tests/cxb/cxb30172.am: Likewise. + * ada/acats-4/tests/cxb/cxb30180.c: Likewise. + * ada/acats-4/tests/cxb/cxb30181.a: Likewise. + * ada/acats-4/tests/cxb/cxb30182.am: Likewise. + * ada/acats-4/tests/cxb/cxb3019.a: Likewise. + * ada/acats-4/tests/cxb/cxb3020.a: Likewise. + * ada/acats-4/tests/cxb/cxb3021.a: Likewise. + * ada/acats-4/tests/cxb/cxb3022.a: Likewise. + * ada/acats-4/tests/cxb/cxb30230.c: Likewise. + * ada/acats-4/tests/cxb/cxb30231.am: Likewise. + * ada/acats-4/tests/cxb/cxb30240.c: Likewise. + * ada/acats-4/tests/cxb/cxb30241.am: Likewise. + * ada/acats-4/tests/cxb/cxb4001.a: Likewise. + * ada/acats-4/tests/cxb/cxb4002.a: Likewise. + * ada/acats-4/tests/cxb/cxb4003.a: Likewise. + * ada/acats-4/tests/cxb/cxb4004.a: Likewise. + * ada/acats-4/tests/cxb/cxb4005.a: Likewise. + * ada/acats-4/tests/cxb/cxb4006.a: Likewise. + * ada/acats-4/tests/cxb/cxb4007.a: Likewise. + * ada/acats-4/tests/cxb/cxb4008.a: Likewise. + * ada/acats-4/tests/cxb/cxb5001.a: Likewise. + * ada/acats-4/tests/cxb/cxb5002.a: Likewise. + * ada/acats-4/tests/cxb/cxb5003.a: Likewise. + * ada/acats-4/tests/cxf/cxf1001.a: Likewise. + * ada/acats-4/tests/cxf/cxf2001.a: Likewise. + * ada/acats-4/tests/cxf/cxf2002.a: Likewise. + * ada/acats-4/tests/cxf/cxf2003.a: Likewise. + * ada/acats-4/tests/cxf/cxf2004.a: Likewise. + * ada/acats-4/tests/cxf/cxf2005.a: Likewise. + * ada/acats-4/tests/cxf/cxf2a01.a: Likewise. + * ada/acats-4/tests/cxf/cxf2a02.a: Likewise. + * ada/acats-4/tests/cxf/cxf3001.a: Likewise. + * ada/acats-4/tests/cxf/cxf3002.a: Likewise. + * ada/acats-4/tests/cxf/cxf3003.a: Likewise. + * ada/acats-4/tests/cxf/cxf3004.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a01.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a02.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a03.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a04.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a05.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a06.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a07.a: Likewise. + * ada/acats-4/tests/cxf/cxf3a08.a: Likewise. + * ada/acats-4/tests/cxg/cxg1001.a: Likewise. + * ada/acats-4/tests/cxg/cxg1002.a: Likewise. + * ada/acats-4/tests/cxg/cxg1003.a: Likewise. + * ada/acats-4/tests/cxg/cxg1004.a: Likewise. + * ada/acats-4/tests/cxg/cxg1005.a: Likewise. + * ada/acats-4/tests/cxg/cxg2001.a: Likewise. + * ada/acats-4/tests/cxg/cxg2002.a: Likewise. + * ada/acats-4/tests/cxg/cxg2003.a: Likewise. + * ada/acats-4/tests/cxg/cxg2004.a: Likewise. + * ada/acats-4/tests/cxg/cxg2005.a: Likewise. + * ada/acats-4/tests/cxg/cxg2006.a: Likewise. + * ada/acats-4/tests/cxg/cxg2007.a: Likewise. + * ada/acats-4/tests/cxg/cxg2008.a: Likewise. + * ada/acats-4/tests/cxg/cxg2009.a: Likewise. + * ada/acats-4/tests/cxg/cxg2010.a: Likewise. + * ada/acats-4/tests/cxg/cxg2011.a: Likewise. + * ada/acats-4/tests/cxg/cxg2012.a: Likewise. + * ada/acats-4/tests/cxg/cxg2013.a: Likewise. + * ada/acats-4/tests/cxg/cxg2014.a: Likewise. + * ada/acats-4/tests/cxg/cxg2015.a: Likewise. + * ada/acats-4/tests/cxg/cxg2016.a: Likewise. + * ada/acats-4/tests/cxg/cxg2017.a: Likewise. + * ada/acats-4/tests/cxg/cxg2018.a: Likewise. + * ada/acats-4/tests/cxg/cxg2019.a: Likewise. + * ada/acats-4/tests/cxg/cxg2020.a: Likewise. + * ada/acats-4/tests/cxg/cxg2021.a: Likewise. + * ada/acats-4/tests/cxg/cxg2022.a: Likewise. + * ada/acats-4/tests/cxg/cxg2023.a: Likewise. + * ada/acats-4/tests/cxg/cxg2024.a: Likewise. + * ada/acats-4/tests/cxh/cxh3001.a: Likewise. + * ada/acats-4/tests/cxh/cxh3002.a: Likewise. + * ada/acats-4/tests/cxh/cxh30030.a: Likewise. + * ada/acats-4/tests/cxh/cxh30031.am: Likewise. + * ada/acats-4/tests/cz/cz1101a.ada: Likewise. + * ada/acats-4/tests/cz/cz1102a.ada: Likewise. + * ada/acats-4/tests/cz/cz1103a.ada: Likewise. + * ada/acats-4/tests/d/d4a002a.ada: Likewise. + * ada/acats-4/tests/d/d4a002b.ada: Likewise. + * ada/acats-4/tests/d/d4a004a.ada: Likewise. + * ada/acats-4/tests/d/d4a004b.ada: Likewise. + * ada/acats-4/tests/e/e28002b.ada: Likewise. + * ada/acats-4/tests/e/e28005d.ada: Likewise. + * ada/acats-4/tests/e/e52103y.ada: Likewise. + * ada/acats-4/tests/e/eb4011a.ada: Likewise. + * ada/acats-4/tests/e/eb4012a.ada: Likewise. + * ada/acats-4/tests/e/eb4014a.ada: Likewise. + * ada/acats-4/tests/e/ee3203a.ada: Likewise. + * ada/acats-4/tests/e/ee3204a.ada: Likewise. + * ada/acats-4/tests/e/ee3402b.ada: Likewise. + * ada/acats-4/tests/e/ee3409f.ada: Likewise. + * ada/acats-4/tests/e/ee3412c.ada: Likewise. + * ada/acats-4/tests/l/la140010.a: Likewise. + * ada/acats-4/tests/l/la140011.am: Likewise. + * ada/acats-4/tests/l/la140012.a: Likewise. + * ada/acats-4/tests/l/la140020.a: Likewise. + * ada/acats-4/tests/l/la140021.am: Likewise. + * ada/acats-4/tests/l/la140022.a: Likewise. + * ada/acats-4/tests/l/la140030.a: Likewise. + * ada/acats-4/tests/l/la140031.a: Likewise. + * ada/acats-4/tests/l/la140032.am: Likewise. + * ada/acats-4/tests/l/la140033.a: Likewise. + * ada/acats-4/tests/l/la140040.a: Likewise. + * ada/acats-4/tests/l/la140041.am: Likewise. + * ada/acats-4/tests/l/la140042.a: Likewise. + * ada/acats-4/tests/l/la140050.a: Likewise. + * ada/acats-4/tests/l/la140051.a: Likewise. + * ada/acats-4/tests/l/la140052.am: Likewise. + * ada/acats-4/tests/l/la140053.a: Likewise. + * ada/acats-4/tests/l/la140060.a: Likewise. + * ada/acats-4/tests/l/la140061.a: Likewise. + * ada/acats-4/tests/l/la140062.am: Likewise. + * ada/acats-4/tests/l/la140063.a: Likewise. + * ada/acats-4/tests/l/la140070.a: Likewise. + * ada/acats-4/tests/l/la140071.a: Likewise. + * ada/acats-4/tests/l/la140072.am: Likewise. + * ada/acats-4/tests/l/la140073.a: Likewise. + * ada/acats-4/tests/l/la140080.a: Likewise. + * ada/acats-4/tests/l/la140081.a: Likewise. + * ada/acats-4/tests/l/la140082.am: Likewise. + * ada/acats-4/tests/l/la140083.a: Likewise. + * ada/acats-4/tests/l/la140090.a: Likewise. + * ada/acats-4/tests/l/la140091.a: Likewise. + * ada/acats-4/tests/l/la140092.am: Likewise. + * ada/acats-4/tests/l/la140093.a: Likewise. + * ada/acats-4/tests/l/la140100.a: Likewise. + * ada/acats-4/tests/l/la140101.a: Likewise. + * ada/acats-4/tests/l/la140102.am: Likewise. + * ada/acats-4/tests/l/la140103.a: Likewise. + * ada/acats-4/tests/l/la140110.a: Likewise. + * ada/acats-4/tests/l/la140111.a: Likewise. + * ada/acats-4/tests/l/la140112.am: Likewise. + * ada/acats-4/tests/l/la140113.a: Likewise. + * ada/acats-4/tests/l/la140120.a: Likewise. + * ada/acats-4/tests/l/la140121.a: Likewise. + * ada/acats-4/tests/l/la140122.am: Likewise. + * ada/acats-4/tests/l/la140123.a: Likewise. + * ada/acats-4/tests/l/la140130.a: Likewise. + * ada/acats-4/tests/l/la140131.a: Likewise. + * ada/acats-4/tests/l/la140132.am: Likewise. + * ada/acats-4/tests/l/la140133.a: Likewise. + * ada/acats-4/tests/l/la140140.a: Likewise. + * ada/acats-4/tests/l/la140141.a: Likewise. + * ada/acats-4/tests/l/la140142.am: Likewise. + * ada/acats-4/tests/l/la140143.a: Likewise. + * ada/acats-4/tests/l/la140150.a: Likewise. + * ada/acats-4/tests/l/la140151.a: Likewise. + * ada/acats-4/tests/l/la140152.am: Likewise. + * ada/acats-4/tests/l/la140153.a: Likewise. + * ada/acats-4/tests/l/la140160.a: Likewise. + * ada/acats-4/tests/l/la140161.a: Likewise. + * ada/acats-4/tests/l/la140162.am: Likewise. + * ada/acats-4/tests/l/la140163.a: Likewise. + * ada/acats-4/tests/l/la140170.a: Likewise. + * ada/acats-4/tests/l/la140171.a: Likewise. + * ada/acats-4/tests/l/la140172.am: Likewise. + * ada/acats-4/tests/l/la140173.a: Likewise. + * ada/acats-4/tests/l/la140180.a: Likewise. + * ada/acats-4/tests/l/la140181.a: Likewise. + * ada/acats-4/tests/l/la140182.am: Likewise. + * ada/acats-4/tests/l/la140183.a: Likewise. + * ada/acats-4/tests/l/la140190.a: Likewise. + * ada/acats-4/tests/l/la140191.a: Likewise. + * ada/acats-4/tests/l/la140192.am: Likewise. + * ada/acats-4/tests/l/la140193.a: Likewise. + * ada/acats-4/tests/l/la140200.a: Likewise. + * ada/acats-4/tests/l/la140201.a: Likewise. + * ada/acats-4/tests/l/la140202.am: Likewise. + * ada/acats-4/tests/l/la140203.a: Likewise. + * ada/acats-4/tests/l/la140210.a: Likewise. + * ada/acats-4/tests/l/la140211.am: Likewise. + * ada/acats-4/tests/l/la140212.a: Likewise. + * ada/acats-4/tests/l/la140220.a: Likewise. + * ada/acats-4/tests/l/la140221.am: Likewise. + * ada/acats-4/tests/l/la140222.a: Likewise. + * ada/acats-4/tests/l/la140240.a: Likewise. + * ada/acats-4/tests/l/la140241.a: Likewise. + * ada/acats-4/tests/l/la140242.am: Likewise. + * ada/acats-4/tests/l/la140243.a: Likewise. + * ada/acats-4/tests/l/la140250.a: Likewise. + * ada/acats-4/tests/l/la140251.am: Likewise. + * ada/acats-4/tests/l/la140252.a: Likewise. + * ada/acats-4/tests/l/la140260.a: Likewise. + * ada/acats-4/tests/l/la140261.a: Likewise. + * ada/acats-4/tests/l/la140262.am: Likewise. + * ada/acats-4/tests/l/la140263.a: Likewise. + * ada/acats-4/tests/l/la140270.a: Likewise. + * ada/acats-4/tests/l/la140271.a: Likewise. + * ada/acats-4/tests/l/la140272.am: Likewise. + * ada/acats-4/tests/l/la140273.a: Likewise. + +2025-05-24 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats-3/elabd.lst: New file. + * ada/acats-3/floatstore.lst: Likewise. + * ada/acats-3/norun.lst: Likewise. + * ada/acats-3/run_acats.sh: Likewise. + * ada/acats-3/run_all.sh: Likewise. + * ada/acats-3/run_test.exp: Likewise. + * ada/acats-3/stackcheck.lst: Likewise. + * ada/acats-3/support/acats31.lst: Likewise. + * ada/acats-3/support/checkfil.ada: Likewise. + * ada/acats-3/support/enumchek.ada: Likewise. + * ada/acats-3/support/f340a000.a: Likewise. + * ada/acats-3/support/f340a001.a: Likewise. + * ada/acats-3/support/f341a00.a: Likewise. + * ada/acats-3/support/f390a00.a: Likewise. + * ada/acats-3/support/f392a00.a: Likewise. + * ada/acats-3/support/f392c00.a: Likewise. + * ada/acats-3/support/f392d00.a: Likewise. + * ada/acats-3/support/f393a00.a: Likewise. + * ada/acats-3/support/f393b00.a: Likewise. + * ada/acats-3/support/f394a00.a: Likewise. + * ada/acats-3/support/f3a1a00.a: Likewise. + * ada/acats-3/support/f3a2a00.a: Likewise. + * ada/acats-3/support/f431a00.a: Likewise. + * ada/acats-3/support/f433a00.a: Likewise. + * ada/acats-3/support/f452a00.a: Likewise. + * ada/acats-3/support/f460a00.a: Likewise. + * ada/acats-3/support/f650a00.a: Likewise. + * ada/acats-3/support/f730a000.a: Likewise. + * ada/acats-3/support/f730a001.a: Likewise. + * ada/acats-3/support/f731a00.a: Likewise. + * ada/acats-3/support/f750a00.a: Likewise. + * ada/acats-3/support/f750b00.a: Likewise. + * ada/acats-3/support/f760a00.a: Likewise. + * ada/acats-3/support/f940a00.a: Likewise. + * ada/acats-3/support/f954a00.a: Likewise. + * ada/acats-3/support/fa11a00.a: Likewise. + * ada/acats-3/support/fa11b00.a: Likewise. + * ada/acats-3/support/fa11c00.a: Likewise. + * ada/acats-3/support/fa11d00.a: Likewise. + * ada/acats-3/support/fa13a00.a: Likewise. + * ada/acats-3/support/fa13b00.a: Likewise. + * ada/acats-3/support/fa21a00.a: Likewise. + * ada/acats-3/support/fb20a00.a: Likewise. + * ada/acats-3/support/fb40a00.a: Likewise. + * ada/acats-3/support/fc50a00.a: Likewise. + * ada/acats-3/support/fc51a00.a: Likewise. + * ada/acats-3/support/fc51b00.a: Likewise. + * ada/acats-3/support/fc51c00.a: Likewise. + * ada/acats-3/support/fc51d00.a: Likewise. + * ada/acats-3/support/fc54a00.a: Likewise. + * ada/acats-3/support/fc70a00.a: Likewise. + * ada/acats-3/support/fc70b00.a: Likewise. + * ada/acats-3/support/fc70c00.a: Likewise. + * ada/acats-3/support/fcndecl.ada: Likewise. + * ada/acats-3/support/fd72a00.a: Likewise. + * ada/acats-3/support/fdb0a00.a: Likewise. + * ada/acats-3/support/fdd2a00.a: Likewise. + * ada/acats-3/support/fdd2b00.a: Likewise. + * ada/acats-3/support/fxa5a00.a: Likewise. + * ada/acats-3/support/fxaca00.a: Likewise. + * ada/acats-3/support/fxacb00.a: Likewise. + * ada/acats-3/support/fxacc00.a: Likewise. + * ada/acats-3/support/fxaia00.a: Likewise. + * ada/acats-3/support/fxc6a00.a: Likewise. + * ada/acats-3/support/fxe2a00.a: Likewise. + * ada/acats-3/support/fxf2a00.a: Likewise. + * ada/acats-3/support/fxf3a00.a: Likewise. + * ada/acats-3/support/impbit.adb: Likewise. + * ada/acats-3/support/impdef.a: Likewise. + * ada/acats-3/support/impdefc.a: Likewise. + * ada/acats-3/support/impdefd.a: Likewise. + * ada/acats-3/support/impdefe.a: Likewise. + * ada/acats-3/support/impdefg.a: Likewise. + * ada/acats-3/support/impdefh.a: Likewise. + * ada/acats-3/support/lencheck.ada: Likewise. + * ada/acats-3/support/macro.dfs: Likewise. + * ada/acats-3/support/macrodef.adb: Likewise. + * ada/acats-3/support/macrosub.ada: Likewise. + * ada/acats-3/support/repbody.ada: Likewise. + * ada/acats-3/support/repspec.ada: Likewise. + * ada/acats-3/support/spprt13s.tst: Likewise. + * ada/acats-3/support/tctouch.ada: Likewise. + * ada/acats-3/support/tsttests.dat: Likewise. + * ada/acats-3/tests/a/a22006b.ada: Likewise. + * ada/acats-3/tests/a/a22006c.ada: Likewise. + * ada/acats-3/tests/a/a22006d.ada: Likewise. + * ada/acats-3/tests/a/a26007a.tst: Likewise. + * ada/acats-3/tests/a/a27003a.ada: Likewise. + * ada/acats-3/tests/a/a29003a.ada: Likewise. + * ada/acats-3/tests/a/a2a031a.ada: Likewise. + * ada/acats-3/tests/a/a33003a.ada: Likewise. + * ada/acats-3/tests/a/a34017c.ada: Likewise. + * ada/acats-3/tests/a/a35101b.ada: Likewise. + * ada/acats-3/tests/a/a35402a.ada: Likewise. + * ada/acats-3/tests/a/a35801f.ada: Likewise. + * ada/acats-3/tests/a/a35902c.ada: Likewise. + * ada/acats-3/tests/a/a38106d.ada: Likewise. + * ada/acats-3/tests/a/a38106e.ada: Likewise. + * ada/acats-3/tests/a/a49027a.ada: Likewise. + * ada/acats-3/tests/a/a49027b.ada: Likewise. + * ada/acats-3/tests/a/a49027c.ada: Likewise. + * ada/acats-3/tests/a/a54b01a.ada: Likewise. + * ada/acats-3/tests/a/a54b02a.ada: Likewise. + * ada/acats-3/tests/a/a55b12a.ada: Likewise. + * ada/acats-3/tests/a/a55b13a.ada: Likewise. + * ada/acats-3/tests/a/a55b14a.ada: Likewise. + * ada/acats-3/tests/a/a71004a.ada: Likewise. + * ada/acats-3/tests/a/a73001i.ada: Likewise. + * ada/acats-3/tests/a/a73001j.ada: Likewise. + * ada/acats-3/tests/a/a74105b.ada: Likewise. + * ada/acats-3/tests/a/a74106a.ada: Likewise. + * ada/acats-3/tests/a/a74106b.ada: Likewise. + * ada/acats-3/tests/a/a74106c.ada: Likewise. + * ada/acats-3/tests/a/a74205e.ada: Likewise. + * ada/acats-3/tests/a/a74205f.ada: Likewise. + * ada/acats-3/tests/a/a83009a.ada: Likewise. + * ada/acats-3/tests/a/a83009b.ada: Likewise. + * ada/acats-3/tests/a/a83a02a.ada: Likewise. + * ada/acats-3/tests/a/a83a02b.ada: Likewise. + * ada/acats-3/tests/a/a83a06a.ada: Likewise. + * ada/acats-3/tests/a/a83a08a.ada: Likewise. + * ada/acats-3/tests/a/a83c01c.ada: Likewise. + * ada/acats-3/tests/a/a83c01h.ada: Likewise. + * ada/acats-3/tests/a/a83c01i.ada: Likewise. + * ada/acats-3/tests/a/a85007d.ada: Likewise. + * ada/acats-3/tests/a/a85013b.ada: Likewise. + * ada/acats-3/tests/a/a87b59a.ada: Likewise. + * ada/acats-3/tests/a/a95001c.ada: Likewise. + * ada/acats-3/tests/a/a95074d.ada: Likewise. + * ada/acats-3/tests/a/a97106a.ada: Likewise. + * ada/acats-3/tests/a/a99006a.ada: Likewise. + * ada/acats-3/tests/a/aa2010a.ada: Likewise. + * ada/acats-3/tests/a/aa2012a.ada: Likewise. + * ada/acats-3/tests/a/ac1015b.ada: Likewise. + * ada/acats-3/tests/a/ac3106a.ada: Likewise. + * ada/acats-3/tests/a/ac3206a.ada: Likewise. + * ada/acats-3/tests/a/ac3207a.ada: Likewise. + * ada/acats-3/tests/a/ad7001b.ada: Likewise. + * ada/acats-3/tests/a/ad7001c0.ada: Likewise. + * ada/acats-3/tests/a/ad7001c1.ada: Likewise. + * ada/acats-3/tests/a/ad7001d0.ada: Likewise. + * ada/acats-3/tests/a/ad7001d1.ada: Likewise. + * ada/acats-3/tests/a/ad7006a.ada: Likewise. + * ada/acats-3/tests/a/ad7101a.ada: Likewise. + * ada/acats-3/tests/a/ad7101c.ada: Likewise. + * ada/acats-3/tests/a/ad7102a.ada: Likewise. + * ada/acats-3/tests/a/ad7103a.ada: Likewise. + * ada/acats-3/tests/a/ad7103c.ada: Likewise. + * ada/acats-3/tests/a/ad7104a.ada: Likewise. + * ada/acats-3/tests/a/ad7201a.ada: Likewise. + * ada/acats-3/tests/a/ad7203b.ada: Likewise. + * ada/acats-3/tests/a/ad7205b.ada: Likewise. + * ada/acats-3/tests/a/ad8011a.tst: Likewise. + * ada/acats-3/tests/a/ada101a.ada: Likewise. + * ada/acats-3/tests/a/ae2113a.ada: Likewise. + * ada/acats-3/tests/a/ae2113b.ada: Likewise. + * ada/acats-3/tests/a/ae3002g.ada: Likewise. + * ada/acats-3/tests/a/ae3101a.ada: Likewise. + * ada/acats-3/tests/a/ae3702a.ada: Likewise. + * ada/acats-3/tests/a/ae3709a.ada: Likewise. + * ada/acats-3/tests/c2/c23001a.ada: Likewise. + * ada/acats-3/tests/c2/c23003a.tst: Likewise. + * ada/acats-3/tests/c2/c23003b.tst: Likewise. + * ada/acats-3/tests/c2/c23003g.tst: Likewise. + * ada/acats-3/tests/c2/c23003i.tst: Likewise. + * ada/acats-3/tests/c2/c23006a.ada: Likewise. + * ada/acats-3/tests/c2/c23006b.ada: Likewise. + * ada/acats-3/tests/c2/c23006c.ada: Likewise. + * ada/acats-3/tests/c2/c23006d.ada: Likewise. + * ada/acats-3/tests/c2/c23006e.ada: Likewise. + * ada/acats-3/tests/c2/c23006f.ada: Likewise. + * ada/acats-3/tests/c2/c23006g.ada: Likewise. + * ada/acats-3/tests/c2/c24002d.ada: Likewise. + * ada/acats-3/tests/c2/c24003a.ada: Likewise. + * ada/acats-3/tests/c2/c24003b.ada: Likewise. + * ada/acats-3/tests/c2/c24003c.ada: Likewise. + * ada/acats-3/tests/c2/c24106a.ada: Likewise. + * ada/acats-3/tests/c2/c24202d.ada: Likewise. + * ada/acats-3/tests/c2/c24203a.ada: Likewise. + * ada/acats-3/tests/c2/c24203b.ada: Likewise. + * ada/acats-3/tests/c2/c24207a.ada: Likewise. + * ada/acats-3/tests/c2/c24211a.ada: Likewise. + * ada/acats-3/tests/c2/c250001.au: Likewise. + * ada/acats-3/tests/c2/c250002.au: Likewise. + * ada/acats-3/tests/c2/c25001a.ada: Likewise. + * ada/acats-3/tests/c2/c25001b.ada: Likewise. + * ada/acats-3/tests/c2/c26006a.ada: Likewise. + * ada/acats-3/tests/c2/c26008a.ada: Likewise. + * ada/acats-3/tests/c2/c2a001a.ada: Likewise. + * ada/acats-3/tests/c2/c2a001b.ada: Likewise. + * ada/acats-3/tests/c2/c2a001c.ada: Likewise. + * ada/acats-3/tests/c2/c2a002a.ada: Likewise. + * ada/acats-3/tests/c2/c2a008a.ada: Likewise. + * ada/acats-3/tests/c2/c2a021b.ada: Likewise. + * ada/acats-3/tests/c3/c32001a.ada: Likewise. + * ada/acats-3/tests/c3/c32001b.ada: Likewise. + * ada/acats-3/tests/c3/c32001c.ada: Likewise. + * ada/acats-3/tests/c3/c32001d.ada: Likewise. + * ada/acats-3/tests/c3/c32001e.ada: Likewise. + * ada/acats-3/tests/c3/c32107a.ada: Likewise. + * ada/acats-3/tests/c3/c32107c.ada: Likewise. + * ada/acats-3/tests/c3/c32108a.ada: Likewise. + * ada/acats-3/tests/c3/c32108b.ada: Likewise. + * ada/acats-3/tests/c3/c32111a.ada: Likewise. + * ada/acats-3/tests/c3/c32111b.ada: Likewise. + * ada/acats-3/tests/c3/c32112b.ada: Likewise. + * ada/acats-3/tests/c3/c32113a.ada: Likewise. + * ada/acats-3/tests/c3/c32115a.ada: Likewise. + * ada/acats-3/tests/c3/c32115b.ada: Likewise. + * ada/acats-3/tests/c3/c330001.a: Likewise. + * ada/acats-3/tests/c3/c330002.a: Likewise. + * ada/acats-3/tests/c3/c332001.a: Likewise. + * ada/acats-3/tests/c3/c340001.a: Likewise. + * ada/acats-3/tests/c3/c34001a.ada: Likewise. + * ada/acats-3/tests/c3/c34001c.ada: Likewise. + * ada/acats-3/tests/c3/c34001d.ada: Likewise. + * ada/acats-3/tests/c3/c34001f.ada: Likewise. + * ada/acats-3/tests/c3/c34002a.ada: Likewise. + * ada/acats-3/tests/c3/c34002c.ada: Likewise. + * ada/acats-3/tests/c3/c34003a.ada: Likewise. + * ada/acats-3/tests/c3/c34003c.ada: Likewise. + * ada/acats-3/tests/c3/c34004a.ada: Likewise. + * ada/acats-3/tests/c3/c34004c.ada: Likewise. + * ada/acats-3/tests/c3/c34005a.ada: Likewise. + * ada/acats-3/tests/c3/c34005c.ada: Likewise. + * ada/acats-3/tests/c3/c34005d.ada: Likewise. + * ada/acats-3/tests/c3/c34005f.ada: Likewise. + * ada/acats-3/tests/c3/c34005g.ada: Likewise. + * ada/acats-3/tests/c3/c34005i.ada: Likewise. + * ada/acats-3/tests/c3/c34005j.ada: Likewise. + * ada/acats-3/tests/c3/c34005l.ada: Likewise. + * ada/acats-3/tests/c3/c34005m.ada: Likewise. + * ada/acats-3/tests/c3/c34005o.ada: Likewise. + * ada/acats-3/tests/c3/c34005p.ada: Likewise. + * ada/acats-3/tests/c3/c34005r.ada: Likewise. + * ada/acats-3/tests/c3/c34005s.ada: Likewise. + * ada/acats-3/tests/c3/c34005u.ada: Likewise. + * ada/acats-3/tests/c3/c34005v.ada: Likewise. + * ada/acats-3/tests/c3/c34006a.ada: Likewise. + * ada/acats-3/tests/c3/c34006d.ada: Likewise. + * ada/acats-3/tests/c3/c34006f.ada: Likewise. + * ada/acats-3/tests/c3/c34006g.ada: Likewise. + * ada/acats-3/tests/c3/c34006j.ada: Likewise. + * ada/acats-3/tests/c3/c34006l.ada: Likewise. + * ada/acats-3/tests/c3/c34007a.ada: Likewise. + * ada/acats-3/tests/c3/c34007d.ada: Likewise. + * ada/acats-3/tests/c3/c34007f.ada: Likewise. + * ada/acats-3/tests/c3/c34007g.ada: Likewise. + * ada/acats-3/tests/c3/c34007i.ada: Likewise. + * ada/acats-3/tests/c3/c34007j.ada: Likewise. + * ada/acats-3/tests/c3/c34007m.ada: Likewise. + * ada/acats-3/tests/c3/c34007p.ada: Likewise. + * ada/acats-3/tests/c3/c34007r.ada: Likewise. + * ada/acats-3/tests/c3/c34007s.ada: Likewise. + * ada/acats-3/tests/c3/c34007u.ada: Likewise. + * ada/acats-3/tests/c3/c34007v.ada: Likewise. + * ada/acats-3/tests/c3/c34008a.ada: Likewise. + * ada/acats-3/tests/c3/c34009a.ada: Likewise. + * ada/acats-3/tests/c3/c34009d.ada: Likewise. + * ada/acats-3/tests/c3/c34009f.ada: Likewise. + * ada/acats-3/tests/c3/c34009g.ada: Likewise. + * ada/acats-3/tests/c3/c34009j.ada: Likewise. + * ada/acats-3/tests/c3/c34009l.ada: Likewise. + * ada/acats-3/tests/c3/c34011b.ada: Likewise. + * ada/acats-3/tests/c3/c34012a.ada: Likewise. + * ada/acats-3/tests/c3/c34014a.ada: Likewise. + * ada/acats-3/tests/c3/c34014c.ada: Likewise. + * ada/acats-3/tests/c3/c34014e.ada: Likewise. + * ada/acats-3/tests/c3/c34014g.ada: Likewise. + * ada/acats-3/tests/c3/c34014h.ada: Likewise. + * ada/acats-3/tests/c3/c34014n.ada: Likewise. + * ada/acats-3/tests/c3/c34014p.ada: Likewise. + * ada/acats-3/tests/c3/c34014r.ada: Likewise. + * ada/acats-3/tests/c3/c34014t.ada: Likewise. + * ada/acats-3/tests/c3/c34014u.ada: Likewise. + * ada/acats-3/tests/c3/c34018a.ada: Likewise. + * ada/acats-3/tests/c3/c340a01.a: Likewise. + * ada/acats-3/tests/c3/c340a02.a: Likewise. + * ada/acats-3/tests/c3/c341a01.a: Likewise. + * ada/acats-3/tests/c3/c341a02.a: Likewise. + * ada/acats-3/tests/c3/c341a03.a: Likewise. + * ada/acats-3/tests/c3/c341a04.a: Likewise. + * ada/acats-3/tests/c3/c35003a.ada: Likewise. + * ada/acats-3/tests/c3/c35003b.ada: Likewise. + * ada/acats-3/tests/c3/c35003d.ada: Likewise. + * ada/acats-3/tests/c3/c35102a.ada: Likewise. + * ada/acats-3/tests/c3/c352001.a: Likewise. + * ada/acats-3/tests/c3/c354002.a: Likewise. + * ada/acats-3/tests/c3/c354003.a: Likewise. + * ada/acats-3/tests/c3/c354004.a: Likewise. + * ada/acats-3/tests/c3/c35502a.ada: Likewise. + * ada/acats-3/tests/c3/c35502b.ada: Likewise. + * ada/acats-3/tests/c3/c35502c.ada: Likewise. + * ada/acats-3/tests/c3/c35502d.tst: Likewise. + * ada/acats-3/tests/c3/c35502e.ada: Likewise. + * ada/acats-3/tests/c3/c35502f.tst: Likewise. + * ada/acats-3/tests/c3/c35502g.ada: Likewise. + * ada/acats-3/tests/c3/c35502h.ada: Likewise. + * ada/acats-3/tests/c3/c35502i.ada: Likewise. + * ada/acats-3/tests/c3/c35502j.ada: Likewise. + * ada/acats-3/tests/c3/c35502k.ada: Likewise. + * ada/acats-3/tests/c3/c35502l.ada: Likewise. + * ada/acats-3/tests/c3/c35502m.ada: Likewise. + * ada/acats-3/tests/c3/c35502n.ada: Likewise. + * ada/acats-3/tests/c3/c35502o.ada: Likewise. + * ada/acats-3/tests/c3/c35502p.ada: Likewise. + * ada/acats-3/tests/c3/c35503a.ada: Likewise. + * ada/acats-3/tests/c3/c35503b.ada: Likewise. + * ada/acats-3/tests/c3/c35503c.ada: Likewise. + * ada/acats-3/tests/c3/c35503d.tst: Likewise. + * ada/acats-3/tests/c3/c35503e.ada: Likewise. + * ada/acats-3/tests/c3/c35503f.tst: Likewise. + * ada/acats-3/tests/c3/c35503g.ada: Likewise. + * ada/acats-3/tests/c3/c35503h.ada: Likewise. + * ada/acats-3/tests/c3/c35503k.ada: Likewise. + * ada/acats-3/tests/c3/c35503l.ada: Likewise. + * ada/acats-3/tests/c3/c35503o.ada: Likewise. + * ada/acats-3/tests/c3/c35503p.ada: Likewise. + * ada/acats-3/tests/c3/c35504a.ada: Likewise. + * ada/acats-3/tests/c3/c35504b.ada: Likewise. + * ada/acats-3/tests/c3/c35505c.ada: Likewise. + * ada/acats-3/tests/c3/c35505e.ada: Likewise. + * ada/acats-3/tests/c3/c35505f.ada: Likewise. + * ada/acats-3/tests/c3/c35507a.ada: Likewise. + * ada/acats-3/tests/c3/c35507b.ada: Likewise. + * ada/acats-3/tests/c3/c35507c.ada: Likewise. + * ada/acats-3/tests/c3/c35507e.ada: Likewise. + * ada/acats-3/tests/c3/c35507g.ada: Likewise. + * ada/acats-3/tests/c3/c35507h.ada: Likewise. + * ada/acats-3/tests/c3/c35507i.ada: Likewise. + * ada/acats-3/tests/c3/c35507j.ada: Likewise. + * ada/acats-3/tests/c3/c35507k.ada: Likewise. + * ada/acats-3/tests/c3/c35507l.ada: Likewise. + * ada/acats-3/tests/c3/c35507m.ada: Likewise. + * ada/acats-3/tests/c3/c35507n.ada: Likewise. + * ada/acats-3/tests/c3/c35507o.ada: Likewise. + * ada/acats-3/tests/c3/c35507p.ada: Likewise. + * ada/acats-3/tests/c3/c35508a.ada: Likewise. + * ada/acats-3/tests/c3/c35508b.ada: Likewise. + * ada/acats-3/tests/c3/c35508c.ada: Likewise. + * ada/acats-3/tests/c3/c35508e.ada: Likewise. + * ada/acats-3/tests/c3/c35508g.ada: Likewise. + * ada/acats-3/tests/c3/c35508h.ada: Likewise. + * ada/acats-3/tests/c3/c35508k.ada: Likewise. + * ada/acats-3/tests/c3/c35508l.ada: Likewise. + * ada/acats-3/tests/c3/c35508o.ada: Likewise. + * ada/acats-3/tests/c3/c35508p.ada: Likewise. + * ada/acats-3/tests/c3/c35703a.ada: Likewise. + * ada/acats-3/tests/c3/c35704a.ada: Likewise. + * ada/acats-3/tests/c3/c35704b.ada: Likewise. + * ada/acats-3/tests/c3/c35704c.ada: Likewise. + * ada/acats-3/tests/c3/c35704d.ada: Likewise. + * ada/acats-3/tests/c3/c35801d.ada: Likewise. + * ada/acats-3/tests/c3/c35902d.ada: Likewise. + * ada/acats-3/tests/c3/c35904a.ada: Likewise. + * ada/acats-3/tests/c3/c35904b.ada: Likewise. + * ada/acats-3/tests/c3/c35a02a.ada: Likewise. + * ada/acats-3/tests/c3/c35a05a.ada: Likewise. + * ada/acats-3/tests/c3/c35a05d.ada: Likewise. + * ada/acats-3/tests/c3/c35a05n.ada: Likewise. + * ada/acats-3/tests/c3/c35a05q.ada: Likewise. + * ada/acats-3/tests/c3/c35a07a.ada: Likewise. + * ada/acats-3/tests/c3/c35a07d.ada: Likewise. + * ada/acats-3/tests/c3/c35a08b.ada: Likewise. + * ada/acats-3/tests/c3/c360002.a: Likewise. + * ada/acats-3/tests/c3/c36104a.ada: Likewise. + * ada/acats-3/tests/c3/c36104b.ada: Likewise. + * ada/acats-3/tests/c3/c36172a.ada: Likewise. + * ada/acats-3/tests/c3/c36172b.ada: Likewise. + * ada/acats-3/tests/c3/c36172c.ada: Likewise. + * ada/acats-3/tests/c3/c36174a.ada: Likewise. + * ada/acats-3/tests/c3/c36180a.ada: Likewise. + * ada/acats-3/tests/c3/c36202c.ada: Likewise. + * ada/acats-3/tests/c3/c36203a.ada: Likewise. + * ada/acats-3/tests/c3/c36204a.ada: Likewise. + * ada/acats-3/tests/c3/c36204b.ada: Likewise. + * ada/acats-3/tests/c3/c36204c.ada: Likewise. + * ada/acats-3/tests/c3/c36204d.ada: Likewise. + * ada/acats-3/tests/c3/c36205a.ada: Likewise. + * ada/acats-3/tests/c3/c36205b.ada: Likewise. + * ada/acats-3/tests/c3/c36205c.ada: Likewise. + * ada/acats-3/tests/c3/c36205d.ada: Likewise. + * ada/acats-3/tests/c3/c36205e.ada: Likewise. + * ada/acats-3/tests/c3/c36205f.ada: Likewise. + * ada/acats-3/tests/c3/c36205g.ada: Likewise. + * ada/acats-3/tests/c3/c36205h.ada: Likewise. + * ada/acats-3/tests/c3/c36205i.ada: Likewise. + * ada/acats-3/tests/c3/c36205j.ada: Likewise. + * ada/acats-3/tests/c3/c36205k.ada: Likewise. + * ada/acats-3/tests/c3/c36205l.ada: Likewise. + * ada/acats-3/tests/c3/c36301a.ada: Likewise. + * ada/acats-3/tests/c3/c36301b.ada: Likewise. + * ada/acats-3/tests/c3/c36302a.ada: Likewise. + * ada/acats-3/tests/c3/c36304a.ada: Likewise. + * ada/acats-3/tests/c3/c36305a.ada: Likewise. + * ada/acats-3/tests/c3/c37002a.ada: Likewise. + * ada/acats-3/tests/c3/c37003a.ada: Likewise. + * ada/acats-3/tests/c3/c37003b.ada: Likewise. + * ada/acats-3/tests/c3/c37005a.ada: Likewise. + * ada/acats-3/tests/c3/c37006a.ada: Likewise. + * ada/acats-3/tests/c3/c37008a.ada: Likewise. + * ada/acats-3/tests/c3/c37008b.ada: Likewise. + * ada/acats-3/tests/c3/c37009a.ada: Likewise. + * ada/acats-3/tests/c3/c37010a.ada: Likewise. + * ada/acats-3/tests/c3/c37010b.ada: Likewise. + * ada/acats-3/tests/c3/c371001.a: Likewise. + * ada/acats-3/tests/c3/c371002.a: Likewise. + * ada/acats-3/tests/c3/c371003.a: Likewise. + * ada/acats-3/tests/c3/c37102b.ada: Likewise. + * ada/acats-3/tests/c3/c37103a.ada: Likewise. + * ada/acats-3/tests/c3/c37105a.ada: Likewise. + * ada/acats-3/tests/c3/c37107a.ada: Likewise. + * ada/acats-3/tests/c3/c37108b.ada: Likewise. + * ada/acats-3/tests/c3/c37206a.ada: Likewise. + * ada/acats-3/tests/c3/c37207a.ada: Likewise. + * ada/acats-3/tests/c3/c37208a.ada: Likewise. + * ada/acats-3/tests/c3/c37208b.ada: Likewise. + * ada/acats-3/tests/c3/c37209a.ada: Likewise. + * ada/acats-3/tests/c3/c37209b.ada: Likewise. + * ada/acats-3/tests/c3/c37210a.ada: Likewise. + * ada/acats-3/tests/c3/c37211a.ada: Likewise. + * ada/acats-3/tests/c3/c37211b.ada: Likewise. + * ada/acats-3/tests/c3/c37211c.ada: Likewise. + * ada/acats-3/tests/c3/c37211d.ada: Likewise. + * ada/acats-3/tests/c3/c37211e.ada: Likewise. + * ada/acats-3/tests/c3/c37213b.ada: Likewise. + * ada/acats-3/tests/c3/c37213d.ada: Likewise. + * ada/acats-3/tests/c3/c37213f.ada: Likewise. + * ada/acats-3/tests/c3/c37213h.ada: Likewise. + * ada/acats-3/tests/c3/c37213j.ada: Likewise. + * ada/acats-3/tests/c3/c37213k.ada: Likewise. + * ada/acats-3/tests/c3/c37213l.ada: Likewise. + * ada/acats-3/tests/c3/c37215b.ada: Likewise. + * ada/acats-3/tests/c3/c37215d.ada: Likewise. + * ada/acats-3/tests/c3/c37215f.ada: Likewise. + * ada/acats-3/tests/c3/c37215h.ada: Likewise. + * ada/acats-3/tests/c3/c37217a.ada: Likewise. + * ada/acats-3/tests/c3/c37217b.ada: Likewise. + * ada/acats-3/tests/c3/c37217c.ada: Likewise. + * ada/acats-3/tests/c3/c37304a.ada: Likewise. + * ada/acats-3/tests/c3/c37305a.ada: Likewise. + * ada/acats-3/tests/c3/c37306a.ada: Likewise. + * ada/acats-3/tests/c3/c37309a.ada: Likewise. + * ada/acats-3/tests/c3/c37310a.ada: Likewise. + * ada/acats-3/tests/c3/c37312a.ada: Likewise. + * ada/acats-3/tests/c3/c37402a.ada: Likewise. + * ada/acats-3/tests/c3/c37403a.ada: Likewise. + * ada/acats-3/tests/c3/c37404a.ada: Likewise. + * ada/acats-3/tests/c3/c37404b.ada: Likewise. + * ada/acats-3/tests/c3/c37405a.ada: Likewise. + * ada/acats-3/tests/c3/c37411a.ada: Likewise. + * ada/acats-3/tests/c3/c380001.a: Likewise. + * ada/acats-3/tests/c3/c380002.a: Likewise. + * ada/acats-3/tests/c3/c380003.a: Likewise. + * ada/acats-3/tests/c3/c380004.a: Likewise. + * ada/acats-3/tests/c3/c38002a.ada: Likewise. + * ada/acats-3/tests/c3/c38002b.ada: Likewise. + * ada/acats-3/tests/c3/c38005a.ada: Likewise. + * ada/acats-3/tests/c3/c38005b.ada: Likewise. + * ada/acats-3/tests/c3/c38005c.ada: Likewise. + * ada/acats-3/tests/c3/c38102a.ada: Likewise. + * ada/acats-3/tests/c3/c38102b.ada: Likewise. + * ada/acats-3/tests/c3/c38102c.ada: Likewise. + * ada/acats-3/tests/c3/c38102d.ada: Likewise. + * ada/acats-3/tests/c3/c38102e.ada: Likewise. + * ada/acats-3/tests/c3/c38104a.ada: Likewise. + * ada/acats-3/tests/c3/c38107a.ada: Likewise. + * ada/acats-3/tests/c3/c38107b.ada: Likewise. + * ada/acats-3/tests/c3/c38108a.ada: Likewise. + * ada/acats-3/tests/c3/c38108b.ada: Likewise. + * ada/acats-3/tests/c3/c38108c0.ada: Likewise. + * ada/acats-3/tests/c3/c38108c1.ada: Likewise. + * ada/acats-3/tests/c3/c38108c2.ada: Likewise. + * ada/acats-3/tests/c3/c38108d0.ada: Likewise. + * ada/acats-3/tests/c3/c38108d1.ada: Likewise. + * ada/acats-3/tests/c3/c3900010.a: Likewise. + * ada/acats-3/tests/c3/c3900011.am: Likewise. + * ada/acats-3/tests/c3/c390002.a: Likewise. + * ada/acats-3/tests/c3/c390003.a: Likewise. + * ada/acats-3/tests/c3/c390004.a: Likewise. + * ada/acats-3/tests/c3/c3900050.a: Likewise. + * ada/acats-3/tests/c3/c3900051.a: Likewise. + * ada/acats-3/tests/c3/c3900052.a: Likewise. + * ada/acats-3/tests/c3/c3900053.am: Likewise. + * ada/acats-3/tests/c3/c3900060.a: Likewise. + * ada/acats-3/tests/c3/c3900061.a: Likewise. + * ada/acats-3/tests/c3/c3900062.a: Likewise. + * ada/acats-3/tests/c3/c3900063.am: Likewise. + * ada/acats-3/tests/c3/c390007.a: Likewise. + * ada/acats-3/tests/c3/c390010.a: Likewise. + * ada/acats-3/tests/c3/c390011.a: Likewise. + * ada/acats-3/tests/c3/c390012.a: Likewise. + * ada/acats-3/tests/c3/c39006a.ada: Likewise. + * ada/acats-3/tests/c3/c39006b.ada: Likewise. + * ada/acats-3/tests/c3/c39006c0.ada: Likewise. + * ada/acats-3/tests/c3/c39006c1.ada: Likewise. + * ada/acats-3/tests/c3/c39006d.ada: Likewise. + * ada/acats-3/tests/c3/c39006e.ada: Likewise. + * ada/acats-3/tests/c3/c39006f0.ada: Likewise. + * ada/acats-3/tests/c3/c39006f1.ada: Likewise. + * ada/acats-3/tests/c3/c39006f2.ada: Likewise. + * ada/acats-3/tests/c3/c39006f3.ada: Likewise. + * ada/acats-3/tests/c3/c39006g.ada: Likewise. + * ada/acats-3/tests/c3/c39007a.ada: Likewise. + * ada/acats-3/tests/c3/c39007b.ada: Likewise. + * ada/acats-3/tests/c3/c39008a.ada: Likewise. + * ada/acats-3/tests/c3/c39008b.ada: Likewise. + * ada/acats-3/tests/c3/c39008c.ada: Likewise. + * ada/acats-3/tests/c3/c390a010.a: Likewise. + * ada/acats-3/tests/c3/c390a011.am: Likewise. + * ada/acats-3/tests/c3/c390a020.a: Likewise. + * ada/acats-3/tests/c3/c390a021.a: Likewise. + * ada/acats-3/tests/c3/c390a022.am: Likewise. + * ada/acats-3/tests/c3/c390a030.a: Likewise. + * ada/acats-3/tests/c3/c390a031.am: Likewise. + * ada/acats-3/tests/c3/c391001.a: Likewise. + * ada/acats-3/tests/c3/c391002.a: Likewise. + * ada/acats-3/tests/c3/c391003.a: Likewise. + * ada/acats-3/tests/c3/c392002.a: Likewise. + * ada/acats-3/tests/c3/c392003.a: Likewise. + * ada/acats-3/tests/c3/c392004.a: Likewise. + * ada/acats-3/tests/c3/c392005.a: Likewise. + * ada/acats-3/tests/c3/c392008.a: Likewise. + * ada/acats-3/tests/c3/c392010.a: Likewise. + * ada/acats-3/tests/c3/c392011.a: Likewise. + * ada/acats-3/tests/c3/c392013.a: Likewise. + * ada/acats-3/tests/c3/c392014.a: Likewise. + * ada/acats-3/tests/c3/c392015.a: Likewise. + * ada/acats-3/tests/c3/c392a01.a: Likewise. + * ada/acats-3/tests/c3/c392c05.a: Likewise. + * ada/acats-3/tests/c3/c392c07.a: Likewise. + * ada/acats-3/tests/c3/c392d01.a: Likewise. + * ada/acats-3/tests/c3/c392d02.a: Likewise. + * ada/acats-3/tests/c3/c392d03.a: Likewise. + * ada/acats-3/tests/c3/c393001.a: Likewise. + * ada/acats-3/tests/c3/c393007.a: Likewise. + * ada/acats-3/tests/c3/c393008.a: Likewise. + * ada/acats-3/tests/c3/c393009.a: Likewise. + * ada/acats-3/tests/c3/c393010.a: Likewise. + * ada/acats-3/tests/c3/c393011.a: Likewise. + * ada/acats-3/tests/c3/c393012.a: Likewise. + * ada/acats-3/tests/c3/c393013.a: Likewise. + * ada/acats-3/tests/c3/c393a02.a: Likewise. + * ada/acats-3/tests/c3/c393a03.a: Likewise. + * ada/acats-3/tests/c3/c393a05.a: Likewise. + * ada/acats-3/tests/c3/c393a06.a: Likewise. + * ada/acats-3/tests/c3/c393b12.a: Likewise. + * ada/acats-3/tests/c3/c393b13.a: Likewise. + * ada/acats-3/tests/c3/c393b14.a: Likewise. + * ada/acats-3/tests/c3/c394001.a: Likewise. + * ada/acats-3/tests/c3/c394002.a: Likewise. + * ada/acats-3/tests/c3/c394003.a: Likewise. + * ada/acats-3/tests/c3/c3a0001.a: Likewise. + * ada/acats-3/tests/c3/c3a0002.a: Likewise. + * ada/acats-3/tests/c3/c3a0003.a: Likewise. + * ada/acats-3/tests/c3/c3a0004.a: Likewise. + * ada/acats-3/tests/c3/c3a0005.a: Likewise. + * ada/acats-3/tests/c3/c3a0006.a: Likewise. + * ada/acats-3/tests/c3/c3a0007.a: Likewise. + * ada/acats-3/tests/c3/c3a0008.a: Likewise. + * ada/acats-3/tests/c3/c3a0009.a: Likewise. + * ada/acats-3/tests/c3/c3a0010.a: Likewise. + * ada/acats-3/tests/c3/c3a0011.a: Likewise. + * ada/acats-3/tests/c3/c3a00120.a: Likewise. + * ada/acats-3/tests/c3/c3a00121.a: Likewise. + * ada/acats-3/tests/c3/c3a00122.am: Likewise. + * ada/acats-3/tests/c3/c3a0013.a: Likewise. + * ada/acats-3/tests/c3/c3a0014.a: Likewise. + * ada/acats-3/tests/c3/c3a0015.a: Likewise. + * ada/acats-3/tests/c3/c3a0016.a: Likewise. + * ada/acats-3/tests/c3/c3a0017.a: Likewise. + * ada/acats-3/tests/c3/c3a0018.a: Likewise. + * ada/acats-3/tests/c3/c3a0019.a: Likewise. + * ada/acats-3/tests/c3/c3a0020.a: Likewise. + * ada/acats-3/tests/c3/c3a0021.a: Likewise. + * ada/acats-3/tests/c3/c3a0022.a: Likewise. + * ada/acats-3/tests/c3/c3a0023.a: Likewise. + * ada/acats-3/tests/c3/c3a0024.a: Likewise. + * ada/acats-3/tests/c3/c3a0025.a: Likewise. + * ada/acats-3/tests/c3/c3a0026.a: Likewise. + * ada/acats-3/tests/c3/c3a0027.a: Likewise. + * ada/acats-3/tests/c3/c3a0028.a: Likewise. + * ada/acats-3/tests/c3/c3a0029.a: Likewise. + * ada/acats-3/tests/c3/c3a0030.a: Likewise. + * ada/acats-3/tests/c3/c3a1001.a: Likewise. + * ada/acats-3/tests/c3/c3a1002.a: Likewise. + * ada/acats-3/tests/c3/c3a10030.a: Likewise. + * ada/acats-3/tests/c3/c3a10031.a: Likewise. + * ada/acats-3/tests/c3/c3a10032.am: Likewise. + * ada/acats-3/tests/c3/c3a10040.a: Likewise. + * ada/acats-3/tests/c3/c3a10041.a: Likewise. + * ada/acats-3/tests/c3/c3a10042.am: Likewise. + * ada/acats-3/tests/c3/c3a2001.a: Likewise. + * ada/acats-3/tests/c3/c3a2002.a: Likewise. + * ada/acats-3/tests/c3/c3a2003.a: Likewise. + * ada/acats-3/tests/c3/c3a2004.a: Likewise. + * ada/acats-3/tests/c3/c3a2a01.a: Likewise. + * ada/acats-3/tests/c3/c3a2a02.a: Likewise. + * ada/acats-3/tests/c4/c410001.a: Likewise. + * ada/acats-3/tests/c4/c41101d.ada: Likewise. + * ada/acats-3/tests/c4/c41103a.ada: Likewise. + * ada/acats-3/tests/c4/c41103b.ada: Likewise. + * ada/acats-3/tests/c4/c41104a.ada: Likewise. + * ada/acats-3/tests/c4/c41105a.ada: Likewise. + * ada/acats-3/tests/c4/c41107a.ada: Likewise. + * ada/acats-3/tests/c4/c41201d.ada: Likewise. + * ada/acats-3/tests/c4/c41203a.ada: Likewise. + * ada/acats-3/tests/c4/c41203b.ada: Likewise. + * ada/acats-3/tests/c4/c41204a.ada: Likewise. + * ada/acats-3/tests/c4/c41205a.ada: Likewise. + * ada/acats-3/tests/c4/c41206a.ada: Likewise. + * ada/acats-3/tests/c4/c41207a.ada: Likewise. + * ada/acats-3/tests/c4/c413001.a: Likewise. + * ada/acats-3/tests/c4/c413002.a: Likewise. + * ada/acats-3/tests/c4/c413003.a: Likewise. + * ada/acats-3/tests/c4/c413004.a: Likewise. + * ada/acats-3/tests/c4/c413005.a: Likewise. + * ada/acats-3/tests/c4/c413006.a: Likewise. + * ada/acats-3/tests/c4/c41301a.ada: Likewise. + * ada/acats-3/tests/c4/c41303a.ada: Likewise. + * ada/acats-3/tests/c4/c41303b.ada: Likewise. + * ada/acats-3/tests/c4/c41303c.ada: Likewise. + * ada/acats-3/tests/c4/c41303e.ada: Likewise. + * ada/acats-3/tests/c4/c41303f.ada: Likewise. + * ada/acats-3/tests/c4/c41303g.ada: Likewise. + * ada/acats-3/tests/c4/c41303i.ada: Likewise. + * ada/acats-3/tests/c4/c41303j.ada: Likewise. + * ada/acats-3/tests/c4/c41303k.ada: Likewise. + * ada/acats-3/tests/c4/c41303m.ada: Likewise. + * ada/acats-3/tests/c4/c41303n.ada: Likewise. + * ada/acats-3/tests/c4/c41303o.ada: Likewise. + * ada/acats-3/tests/c4/c41303q.ada: Likewise. + * ada/acats-3/tests/c4/c41303r.ada: Likewise. + * ada/acats-3/tests/c4/c41303s.ada: Likewise. + * ada/acats-3/tests/c4/c41303u.ada: Likewise. + * ada/acats-3/tests/c4/c41303v.ada: Likewise. + * ada/acats-3/tests/c4/c41303w.ada: Likewise. + * ada/acats-3/tests/c4/c41304a.ada: Likewise. + * ada/acats-3/tests/c4/c41304b.ada: Likewise. + * ada/acats-3/tests/c4/c41306b.ada: Likewise. + * ada/acats-3/tests/c4/c41306c.ada: Likewise. + * ada/acats-3/tests/c4/c41307d.ada: Likewise. + * ada/acats-3/tests/c4/c41309a.ada: Likewise. + * ada/acats-3/tests/c4/c41320a.ada: Likewise. + * ada/acats-3/tests/c4/c41321a.ada: Likewise. + * ada/acats-3/tests/c4/c41322a.ada: Likewise. + * ada/acats-3/tests/c4/c41323a.ada: Likewise. + * ada/acats-3/tests/c4/c41324a.ada: Likewise. + * ada/acats-3/tests/c4/c41325a.ada: Likewise. + * ada/acats-3/tests/c4/c41326a.ada: Likewise. + * ada/acats-3/tests/c4/c41327a.ada: Likewise. + * ada/acats-3/tests/c4/c41328a.ada: Likewise. + * ada/acats-3/tests/c4/c41401a.ada: Likewise. + * ada/acats-3/tests/c4/c41402a.ada: Likewise. + * ada/acats-3/tests/c4/c41404a.ada: Likewise. + * ada/acats-3/tests/c4/c420001.a: Likewise. + * ada/acats-3/tests/c4/c42006a.ada: Likewise. + * ada/acats-3/tests/c4/c42007e.ada: Likewise. + * ada/acats-3/tests/c4/c43003a.ada: Likewise. + * ada/acats-3/tests/c4/c43004a.ada: Likewise. + * ada/acats-3/tests/c4/c43004c.ada: Likewise. + * ada/acats-3/tests/c4/c431001.a: Likewise. + * ada/acats-3/tests/c4/c43103a.ada: Likewise. + * ada/acats-3/tests/c4/c43103b.ada: Likewise. + * ada/acats-3/tests/c4/c43104a.ada: Likewise. + * ada/acats-3/tests/c4/c43105a.ada: Likewise. + * ada/acats-3/tests/c4/c43105b.ada: Likewise. + * ada/acats-3/tests/c4/c43106a.ada: Likewise. + * ada/acats-3/tests/c4/c43107a.ada: Likewise. + * ada/acats-3/tests/c4/c43108a.ada: Likewise. + * ada/acats-3/tests/c4/c431a01.a: Likewise. + * ada/acats-3/tests/c4/c431a02.a: Likewise. + * ada/acats-3/tests/c4/c431a03.a: Likewise. + * ada/acats-3/tests/c4/c432001.a: Likewise. + * ada/acats-3/tests/c4/c432002.a: Likewise. + * ada/acats-3/tests/c4/c432003.a: Likewise. + * ada/acats-3/tests/c4/c432004.a: Likewise. + * ada/acats-3/tests/c4/c432005.a: Likewise. + * ada/acats-3/tests/c4/c43204a.ada: Likewise. + * ada/acats-3/tests/c4/c43204c.ada: Likewise. + * ada/acats-3/tests/c4/c43204e.ada: Likewise. + * ada/acats-3/tests/c4/c43204f.ada: Likewise. + * ada/acats-3/tests/c4/c43204g.ada: Likewise. + * ada/acats-3/tests/c4/c43204h.ada: Likewise. + * ada/acats-3/tests/c4/c43204i.ada: Likewise. + * ada/acats-3/tests/c4/c43205a.ada: Likewise. + * ada/acats-3/tests/c4/c43205b.ada: Likewise. + * ada/acats-3/tests/c4/c43205c.ada: Likewise. + * ada/acats-3/tests/c4/c43205d.ada: Likewise. + * ada/acats-3/tests/c4/c43205e.ada: Likewise. + * ada/acats-3/tests/c4/c43205g.ada: Likewise. + * ada/acats-3/tests/c4/c43205h.ada: Likewise. + * ada/acats-3/tests/c4/c43205i.ada: Likewise. + * ada/acats-3/tests/c4/c43205j.ada: Likewise. + * ada/acats-3/tests/c4/c43205k.ada: Likewise. + * ada/acats-3/tests/c4/c43206a.ada: Likewise. + * ada/acats-3/tests/c4/c43207b.ada: Likewise. + * ada/acats-3/tests/c4/c43207d.ada: Likewise. + * ada/acats-3/tests/c4/c43208a.ada: Likewise. + * ada/acats-3/tests/c4/c43208b.ada: Likewise. + * ada/acats-3/tests/c4/c43209a.ada: Likewise. + * ada/acats-3/tests/c4/c43210a.ada: Likewise. + * ada/acats-3/tests/c4/c43211a.ada: Likewise. + * ada/acats-3/tests/c4/c43212a.ada: Likewise. + * ada/acats-3/tests/c4/c43212c.ada: Likewise. + * ada/acats-3/tests/c4/c43214a.ada: Likewise. + * ada/acats-3/tests/c4/c43214b.ada: Likewise. + * ada/acats-3/tests/c4/c43214c.ada: Likewise. + * ada/acats-3/tests/c4/c43214d.ada: Likewise. + * ada/acats-3/tests/c4/c43214e.ada: Likewise. + * ada/acats-3/tests/c4/c43214f.ada: Likewise. + * ada/acats-3/tests/c4/c43215a.ada: Likewise. + * ada/acats-3/tests/c4/c43215b.ada: Likewise. + * ada/acats-3/tests/c4/c43222a.ada: Likewise. + * ada/acats-3/tests/c4/c43224a.ada: Likewise. + * ada/acats-3/tests/c4/c433001.a: Likewise. + * ada/acats-3/tests/c4/c433a01.a: Likewise. + * ada/acats-3/tests/c4/c433a02.a: Likewise. + * ada/acats-3/tests/c4/c433a03.a: Likewise. + * ada/acats-3/tests/c4/c433a04.a: Likewise. + * ada/acats-3/tests/c4/c44003d.ada: Likewise. + * ada/acats-3/tests/c4/c44003f.ada: Likewise. + * ada/acats-3/tests/c4/c44003g.ada: Likewise. + * ada/acats-3/tests/c4/c450001.a: Likewise. + * ada/acats-3/tests/c4/c45112a.ada: Likewise. + * ada/acats-3/tests/c4/c45112b.ada: Likewise. + * ada/acats-3/tests/c4/c45113a.ada: Likewise. + * ada/acats-3/tests/c4/c45114b.ada: Likewise. + * ada/acats-3/tests/c4/c452001.a: Likewise. + * ada/acats-3/tests/c4/c45201a.ada: Likewise. + * ada/acats-3/tests/c4/c45201b.ada: Likewise. + * ada/acats-3/tests/c4/c45202b.ada: Likewise. + * ada/acats-3/tests/c4/c45210a.ada: Likewise. + * ada/acats-3/tests/c4/c45211a.ada: Likewise. + * ada/acats-3/tests/c4/c45220a.ada: Likewise. + * ada/acats-3/tests/c4/c45220b.ada: Likewise. + * ada/acats-3/tests/c4/c45220c.ada: Likewise. + * ada/acats-3/tests/c4/c45220d.ada: Likewise. + * ada/acats-3/tests/c4/c45220e.ada: Likewise. + * ada/acats-3/tests/c4/c45220f.ada: Likewise. + * ada/acats-3/tests/c4/c45231a.ada: Likewise. + * ada/acats-3/tests/c4/c45231b.dep: Likewise. + * ada/acats-3/tests/c4/c45231c.dep: Likewise. + * ada/acats-3/tests/c4/c45231d.tst: Likewise. + * ada/acats-3/tests/c4/c45232b.ada: Likewise. + * ada/acats-3/tests/c4/c45242b.ada: Likewise. + * ada/acats-3/tests/c4/c45251a.ada: Likewise. + * ada/acats-3/tests/c4/c45252a.ada: Likewise. + * ada/acats-3/tests/c4/c45252b.ada: Likewise. + * ada/acats-3/tests/c4/c45253a.ada: Likewise. + * ada/acats-3/tests/c4/c45262a.ada: Likewise. + * ada/acats-3/tests/c4/c45262b.ada: Likewise. + * ada/acats-3/tests/c4/c45262c.ada: Likewise. + * ada/acats-3/tests/c4/c45262d.ada: Likewise. + * ada/acats-3/tests/c4/c45264a.ada: Likewise. + * ada/acats-3/tests/c4/c45264b.ada: Likewise. + * ada/acats-3/tests/c4/c45264c.ada: Likewise. + * ada/acats-3/tests/c4/c45265a.ada: Likewise. + * ada/acats-3/tests/c4/c45271a.ada: Likewise. + * ada/acats-3/tests/c4/c45272a.ada: Likewise. + * ada/acats-3/tests/c4/c45273a.ada: Likewise. + * ada/acats-3/tests/c4/c45274a.ada: Likewise. + * ada/acats-3/tests/c4/c45274b.ada: Likewise. + * ada/acats-3/tests/c4/c45274c.ada: Likewise. + * ada/acats-3/tests/c4/c45281a.ada: Likewise. + * ada/acats-3/tests/c4/c45282a.ada: Likewise. + * ada/acats-3/tests/c4/c45282b.ada: Likewise. + * ada/acats-3/tests/c4/c45291a.ada: Likewise. + * ada/acats-3/tests/c4/c452a01.a: Likewise. + * ada/acats-3/tests/c4/c452a02.a: Likewise. + * ada/acats-3/tests/c4/c452a03.a: Likewise. + * ada/acats-3/tests/c4/c453001.a: Likewise. + * ada/acats-3/tests/c4/c45303a.ada: Likewise. + * ada/acats-3/tests/c4/c45304a.ada: Likewise. + * ada/acats-3/tests/c4/c45304b.dep: Likewise. + * ada/acats-3/tests/c4/c45304c.dep: Likewise. + * ada/acats-3/tests/c4/c45322a.ada: Likewise. + * ada/acats-3/tests/c4/c45323a.ada: Likewise. + * ada/acats-3/tests/c4/c45331a.ada: Likewise. + * ada/acats-3/tests/c4/c45342a.ada: Likewise. + * ada/acats-3/tests/c4/c45343a.ada: Likewise. + * ada/acats-3/tests/c4/c45344a.ada: Likewise. + * ada/acats-3/tests/c4/c45345b.ada: Likewise. + * ada/acats-3/tests/c4/c45347a.ada: Likewise. + * ada/acats-3/tests/c4/c45347b.ada: Likewise. + * ada/acats-3/tests/c4/c45347c.ada: Likewise. + * ada/acats-3/tests/c4/c45347d.ada: Likewise. + * ada/acats-3/tests/c4/c45411a.ada: Likewise. + * ada/acats-3/tests/c4/c45411b.dep: Likewise. + * ada/acats-3/tests/c4/c45411c.dep: Likewise. + * ada/acats-3/tests/c4/c45411d.ada: Likewise. + * ada/acats-3/tests/c4/c45413a.ada: Likewise. + * ada/acats-3/tests/c4/c45431a.ada: Likewise. + * ada/acats-3/tests/c4/c455001.a: Likewise. + * ada/acats-3/tests/c4/c45502b.dep: Likewise. + * ada/acats-3/tests/c4/c45502c.dep: Likewise. + * ada/acats-3/tests/c4/c45503a.ada: Likewise. + * ada/acats-3/tests/c4/c45503b.dep: Likewise. + * ada/acats-3/tests/c4/c45503c.dep: Likewise. + * ada/acats-3/tests/c4/c45504a.ada: Likewise. + * ada/acats-3/tests/c4/c45504b.dep: Likewise. + * ada/acats-3/tests/c4/c45504c.dep: Likewise. + * ada/acats-3/tests/c4/c45504d.ada: Likewise. + * ada/acats-3/tests/c4/c45504e.dep: Likewise. + * ada/acats-3/tests/c4/c45504f.dep: Likewise. + * ada/acats-3/tests/c4/c45505a.ada: Likewise. + * ada/acats-3/tests/c4/c45523a.ada: Likewise. + * ada/acats-3/tests/c4/c45531a.ada: Likewise. + * ada/acats-3/tests/c4/c45531b.ada: Likewise. + * ada/acats-3/tests/c4/c45531c.ada: Likewise. + * ada/acats-3/tests/c4/c45531d.ada: Likewise. + * ada/acats-3/tests/c4/c45531e.ada: Likewise. + * ada/acats-3/tests/c4/c45531f.ada: Likewise. + * ada/acats-3/tests/c4/c45531g.ada: Likewise. + * ada/acats-3/tests/c4/c45531h.ada: Likewise. + * ada/acats-3/tests/c4/c45531i.ada: Likewise. + * ada/acats-3/tests/c4/c45531j.ada: Likewise. + * ada/acats-3/tests/c4/c45531k.ada: Likewise. + * ada/acats-3/tests/c4/c45531l.ada: Likewise. + * ada/acats-3/tests/c4/c45531m.dep: Likewise. + * ada/acats-3/tests/c4/c45531n.dep: Likewise. + * ada/acats-3/tests/c4/c45531o.dep: Likewise. + * ada/acats-3/tests/c4/c45531p.dep: Likewise. + * ada/acats-3/tests/c4/c45532a.ada: Likewise. + * ada/acats-3/tests/c4/c45532b.ada: Likewise. + * ada/acats-3/tests/c4/c45532c.ada: Likewise. + * ada/acats-3/tests/c4/c45532d.ada: Likewise. + * ada/acats-3/tests/c4/c45532e.ada: Likewise. + * ada/acats-3/tests/c4/c45532f.ada: Likewise. + * ada/acats-3/tests/c4/c45532g.ada: Likewise. + * ada/acats-3/tests/c4/c45532h.ada: Likewise. + * ada/acats-3/tests/c4/c45532i.ada: Likewise. + * ada/acats-3/tests/c4/c45532j.ada: Likewise. + * ada/acats-3/tests/c4/c45532k.ada: Likewise. + * ada/acats-3/tests/c4/c45532l.ada: Likewise. + * ada/acats-3/tests/c4/c45532m.dep: Likewise. + * ada/acats-3/tests/c4/c45532n.dep: Likewise. + * ada/acats-3/tests/c4/c45532o.dep: Likewise. + * ada/acats-3/tests/c4/c45532p.dep: Likewise. + * ada/acats-3/tests/c4/c45534b.ada: Likewise. + * ada/acats-3/tests/c4/c45536a.dep: Likewise. + * ada/acats-3/tests/c4/c456001.a: Likewise. + * ada/acats-3/tests/c4/c45611a.ada: Likewise. + * ada/acats-3/tests/c4/c45611b.dep: Likewise. + * ada/acats-3/tests/c4/c45611c.dep: Likewise. + * ada/acats-3/tests/c4/c45613a.ada: Likewise. + * ada/acats-3/tests/c4/c45613b.dep: Likewise. + * ada/acats-3/tests/c4/c45613c.dep: Likewise. + * ada/acats-3/tests/c4/c45614a.ada: Likewise. + * ada/acats-3/tests/c4/c45614b.dep: Likewise. + * ada/acats-3/tests/c4/c45614c.dep: Likewise. + * ada/acats-3/tests/c4/c45631a.ada: Likewise. + * ada/acats-3/tests/c4/c45631b.dep: Likewise. + * ada/acats-3/tests/c4/c45631c.dep: Likewise. + * ada/acats-3/tests/c4/c45632a.ada: Likewise. + * ada/acats-3/tests/c4/c45632b.dep: Likewise. + * ada/acats-3/tests/c4/c45632c.dep: Likewise. + * ada/acats-3/tests/c4/c45651a.ada: Likewise. + * ada/acats-3/tests/c4/c45662a.ada: Likewise. + * ada/acats-3/tests/c4/c45662b.ada: Likewise. + * ada/acats-3/tests/c4/c45672a.ada: Likewise. + * ada/acats-3/tests/c4/c460001.a: Likewise. + * ada/acats-3/tests/c4/c460002.a: Likewise. + * ada/acats-3/tests/c4/c460004.a: Likewise. + * ada/acats-3/tests/c4/c460005.a: Likewise. + * ada/acats-3/tests/c4/c460006.a: Likewise. + * ada/acats-3/tests/c4/c460007.a: Likewise. + * ada/acats-3/tests/c4/c460008.a: Likewise. + * ada/acats-3/tests/c4/c460009.a: Likewise. + * ada/acats-3/tests/c4/c460010.a: Likewise. + * ada/acats-3/tests/c4/c460011.a: Likewise. + * ada/acats-3/tests/c4/c460012.a: Likewise. + * ada/acats-3/tests/c4/c460013.a: Likewise. + * ada/acats-3/tests/c4/c460014.a: Likewise. + * ada/acats-3/tests/c4/c460015.a: Likewise. + * ada/acats-3/tests/c4/c46011a.ada: Likewise. + * ada/acats-3/tests/c4/c46013a.ada: Likewise. + * ada/acats-3/tests/c4/c46014a.ada: Likewise. + * ada/acats-3/tests/c4/c46021a.ada: Likewise. + * ada/acats-3/tests/c4/c46024a.ada: Likewise. + * ada/acats-3/tests/c4/c46031a.ada: Likewise. + * ada/acats-3/tests/c4/c46032a.ada: Likewise. + * ada/acats-3/tests/c4/c46033a.ada: Likewise. + * ada/acats-3/tests/c4/c46041a.ada: Likewise. + * ada/acats-3/tests/c4/c46042a.ada: Likewise. + * ada/acats-3/tests/c4/c46043b.ada: Likewise. + * ada/acats-3/tests/c4/c46044b.ada: Likewise. + * ada/acats-3/tests/c4/c46051a.ada: Likewise. + * ada/acats-3/tests/c4/c46051b.ada: Likewise. + * ada/acats-3/tests/c4/c46051c.ada: Likewise. + * ada/acats-3/tests/c4/c46052a.ada: Likewise. + * ada/acats-3/tests/c4/c46053a.ada: Likewise. + * ada/acats-3/tests/c4/c46054a.ada: Likewise. + * ada/acats-3/tests/c4/c460a01.a: Likewise. + * ada/acats-3/tests/c4/c460a02.a: Likewise. + * ada/acats-3/tests/c4/c47002a.ada: Likewise. + * ada/acats-3/tests/c4/c47002b.ada: Likewise. + * ada/acats-3/tests/c4/c47002c.ada: Likewise. + * ada/acats-3/tests/c4/c47002d.ada: Likewise. + * ada/acats-3/tests/c4/c47003a.ada: Likewise. + * ada/acats-3/tests/c4/c47004a.ada: Likewise. + * ada/acats-3/tests/c4/c47005a.ada: Likewise. + * ada/acats-3/tests/c4/c47006a.ada: Likewise. + * ada/acats-3/tests/c4/c47007a.ada: Likewise. + * ada/acats-3/tests/c4/c47008a.ada: Likewise. + * ada/acats-3/tests/c4/c47009a.ada: Likewise. + * ada/acats-3/tests/c4/c47009b.ada: Likewise. + * ada/acats-3/tests/c4/c480001.a: Likewise. + * ada/acats-3/tests/c4/c48004a.ada: Likewise. + * ada/acats-3/tests/c4/c48004b.ada: Likewise. + * ada/acats-3/tests/c4/c48004c.ada: Likewise. + * ada/acats-3/tests/c4/c48004d.ada: Likewise. + * ada/acats-3/tests/c4/c48004e.ada: Likewise. + * ada/acats-3/tests/c4/c48004f.ada: Likewise. + * ada/acats-3/tests/c4/c48005a.ada: Likewise. + * ada/acats-3/tests/c4/c48005b.ada: Likewise. + * ada/acats-3/tests/c4/c48006a.ada: Likewise. + * ada/acats-3/tests/c4/c48006b.ada: Likewise. + * ada/acats-3/tests/c4/c48007a.ada: Likewise. + * ada/acats-3/tests/c4/c48007b.ada: Likewise. + * ada/acats-3/tests/c4/c48007c.ada: Likewise. + * ada/acats-3/tests/c4/c48008a.ada: Likewise. + * ada/acats-3/tests/c4/c48008c.ada: Likewise. + * ada/acats-3/tests/c4/c48009a.ada: Likewise. + * ada/acats-3/tests/c4/c48009b.ada: Likewise. + * ada/acats-3/tests/c4/c48009c.ada: Likewise. + * ada/acats-3/tests/c4/c48009d.ada: Likewise. + * ada/acats-3/tests/c4/c48009e.ada: Likewise. + * ada/acats-3/tests/c4/c48009f.ada: Likewise. + * ada/acats-3/tests/c4/c48009g.ada: Likewise. + * ada/acats-3/tests/c4/c48009h.ada: Likewise. + * ada/acats-3/tests/c4/c48009i.ada: Likewise. + * ada/acats-3/tests/c4/c48009j.ada: Likewise. + * ada/acats-3/tests/c4/c48010a.ada: Likewise. + * ada/acats-3/tests/c4/c48011a.ada: Likewise. + * ada/acats-3/tests/c4/c48012a.ada: Likewise. + * ada/acats-3/tests/c4/c490001.a: Likewise. + * ada/acats-3/tests/c4/c490002.a: Likewise. + * ada/acats-3/tests/c4/c490003.a: Likewise. + * ada/acats-3/tests/c4/c49020a.ada: Likewise. + * ada/acats-3/tests/c4/c49021a.ada: Likewise. + * ada/acats-3/tests/c4/c49022a.ada: Likewise. + * ada/acats-3/tests/c4/c49022b.ada: Likewise. + * ada/acats-3/tests/c4/c49022c.ada: Likewise. + * ada/acats-3/tests/c4/c49023a.ada: Likewise. + * ada/acats-3/tests/c4/c49024a.ada: Likewise. + * ada/acats-3/tests/c4/c49025a.ada: Likewise. + * ada/acats-3/tests/c4/c49026a.ada: Likewise. + * ada/acats-3/tests/c4/c4a005b.ada: Likewise. + * ada/acats-3/tests/c4/c4a006a.ada: Likewise. + * ada/acats-3/tests/c4/c4a007a.tst: Likewise. + * ada/acats-3/tests/c4/c4a010a.ada: Likewise. + * ada/acats-3/tests/c4/c4a010b.ada: Likewise. + * ada/acats-3/tests/c4/c4a011a.ada: Likewise. + * ada/acats-3/tests/c4/c4a012b.ada: Likewise. + * ada/acats-3/tests/c4/c4a013a.ada: Likewise. + * ada/acats-3/tests/c4/c4a014a.ada: Likewise. + * ada/acats-3/tests/c5/c51004a.ada: Likewise. + * ada/acats-3/tests/c5/c52005a.ada: Likewise. + * ada/acats-3/tests/c5/c52005b.ada: Likewise. + * ada/acats-3/tests/c5/c52005c.ada: Likewise. + * ada/acats-3/tests/c5/c52005d.ada: Likewise. + * ada/acats-3/tests/c5/c52005e.ada: Likewise. + * ada/acats-3/tests/c5/c52005f.ada: Likewise. + * ada/acats-3/tests/c5/c52008a.ada: Likewise. + * ada/acats-3/tests/c5/c52008b.ada: Likewise. + * ada/acats-3/tests/c5/c52009a.ada: Likewise. + * ada/acats-3/tests/c5/c52009b.ada: Likewise. + * ada/acats-3/tests/c5/c52010a.ada: Likewise. + * ada/acats-3/tests/c5/c52011a.ada: Likewise. + * ada/acats-3/tests/c5/c52011b.ada: Likewise. + * ada/acats-3/tests/c5/c52101a.ada: Likewise. + * ada/acats-3/tests/c5/c52102a.ada: Likewise. + * ada/acats-3/tests/c5/c52102b.ada: Likewise. + * ada/acats-3/tests/c5/c52102c.ada: Likewise. + * ada/acats-3/tests/c5/c52102d.ada: Likewise. + * ada/acats-3/tests/c5/c52103a.ada: Likewise. + * ada/acats-3/tests/c5/c52103b.ada: Likewise. + * ada/acats-3/tests/c5/c52103c.ada: Likewise. + * ada/acats-3/tests/c5/c52103f.ada: Likewise. + * ada/acats-3/tests/c5/c52103g.ada: Likewise. + * ada/acats-3/tests/c5/c52103h.ada: Likewise. + * ada/acats-3/tests/c5/c52103k.ada: Likewise. + * ada/acats-3/tests/c5/c52103l.ada: Likewise. + * ada/acats-3/tests/c5/c52103m.ada: Likewise. + * ada/acats-3/tests/c5/c52103p.ada: Likewise. + * ada/acats-3/tests/c5/c52103q.ada: Likewise. + * ada/acats-3/tests/c5/c52103r.ada: Likewise. + * ada/acats-3/tests/c5/c52103x.ada: Likewise. + * ada/acats-3/tests/c5/c52104a.ada: Likewise. + * ada/acats-3/tests/c5/c52104b.ada: Likewise. + * ada/acats-3/tests/c5/c52104c.ada: Likewise. + * ada/acats-3/tests/c5/c52104f.ada: Likewise. + * ada/acats-3/tests/c5/c52104g.ada: Likewise. + * ada/acats-3/tests/c5/c52104h.ada: Likewise. + * ada/acats-3/tests/c5/c52104k.ada: Likewise. + * ada/acats-3/tests/c5/c52104l.ada: Likewise. + * ada/acats-3/tests/c5/c52104m.ada: Likewise. + * ada/acats-3/tests/c5/c52104p.ada: Likewise. + * ada/acats-3/tests/c5/c52104q.ada: Likewise. + * ada/acats-3/tests/c5/c52104r.ada: Likewise. + * ada/acats-3/tests/c5/c52104x.ada: Likewise. + * ada/acats-3/tests/c5/c52104y.ada: Likewise. + * ada/acats-3/tests/c5/c53007a.ada: Likewise. + * ada/acats-3/tests/c5/c540001.a: Likewise. + * ada/acats-3/tests/c5/c540002.a: Likewise. + * ada/acats-3/tests/c5/c54a03a.ada: Likewise. + * ada/acats-3/tests/c5/c54a04a.ada: Likewise. + * ada/acats-3/tests/c5/c54a07a.ada: Likewise. + * ada/acats-3/tests/c5/c54a13a.ada: Likewise. + * ada/acats-3/tests/c5/c54a13b.ada: Likewise. + * ada/acats-3/tests/c5/c54a13c.ada: Likewise. + * ada/acats-3/tests/c5/c54a13d.ada: Likewise. + * ada/acats-3/tests/c5/c54a22a.ada: Likewise. + * ada/acats-3/tests/c5/c54a23a.ada: Likewise. + * ada/acats-3/tests/c5/c54a24a.ada: Likewise. + * ada/acats-3/tests/c5/c54a24b.ada: Likewise. + * ada/acats-3/tests/c5/c54a42a.ada: Likewise. + * ada/acats-3/tests/c5/c54a42b.ada: Likewise. + * ada/acats-3/tests/c5/c54a42c.ada: Likewise. + * ada/acats-3/tests/c5/c54a42d.ada: Likewise. + * ada/acats-3/tests/c5/c54a42e.ada: Likewise. + * ada/acats-3/tests/c5/c54a42f.ada: Likewise. + * ada/acats-3/tests/c5/c54a42g.ada: Likewise. + * ada/acats-3/tests/c5/c55b03a.ada: Likewise. + * ada/acats-3/tests/c5/c55b04a.ada: Likewise. + * ada/acats-3/tests/c5/c55b05a.ada: Likewise. + * ada/acats-3/tests/c5/c55b06a.ada: Likewise. + * ada/acats-3/tests/c5/c55b06b.ada: Likewise. + * ada/acats-3/tests/c5/c55b07a.dep: Likewise. + * ada/acats-3/tests/c5/c55b07b.dep: Likewise. + * ada/acats-3/tests/c5/c55b10a.ada: Likewise. + * ada/acats-3/tests/c5/c55b11a.ada: Likewise. + * ada/acats-3/tests/c5/c55b11b.ada: Likewise. + * ada/acats-3/tests/c5/c55b15a.ada: Likewise. + * ada/acats-3/tests/c5/c55b16a.ada: Likewise. + * ada/acats-3/tests/c5/c55c02a.ada: Likewise. + * ada/acats-3/tests/c5/c55c02b.ada: Likewise. + * ada/acats-3/tests/c5/c56002a.ada: Likewise. + * ada/acats-3/tests/c5/c57003a.ada: Likewise. + * ada/acats-3/tests/c5/c57004a.ada: Likewise. + * ada/acats-3/tests/c5/c57004b.ada: Likewise. + * ada/acats-3/tests/c5/c58004c.ada: Likewise. + * ada/acats-3/tests/c5/c58004d.ada: Likewise. + * ada/acats-3/tests/c5/c58004g.ada: Likewise. + * ada/acats-3/tests/c5/c58005a.ada: Likewise. + * ada/acats-3/tests/c5/c58005b.ada: Likewise. + * ada/acats-3/tests/c5/c58005h.ada: Likewise. + * ada/acats-3/tests/c5/c58006a.ada: Likewise. + * ada/acats-3/tests/c5/c58006b.ada: Likewise. + * ada/acats-3/tests/c5/c59002a.ada: Likewise. + * ada/acats-3/tests/c5/c59002b.ada: Likewise. + * ada/acats-3/tests/c5/c59002c.ada: Likewise. + * ada/acats-3/tests/c6/c61008a.ada: Likewise. + * ada/acats-3/tests/c6/c61009a.ada: Likewise. + * ada/acats-3/tests/c6/c61010a.ada: Likewise. + * ada/acats-3/tests/c6/c620001.a: Likewise. + * ada/acats-3/tests/c6/c620002.a: Likewise. + * ada/acats-3/tests/c6/c62002a.ada: Likewise. + * ada/acats-3/tests/c6/c62003a.ada: Likewise. + * ada/acats-3/tests/c6/c62003b.ada: Likewise. + * ada/acats-3/tests/c6/c62004a.ada: Likewise. + * ada/acats-3/tests/c6/c62006a.ada: Likewise. + * ada/acats-3/tests/c6/c631001.a: Likewise. + * ada/acats-3/tests/c6/c640001.a: Likewise. + * ada/acats-3/tests/c6/c640002.a: Likewise. + * ada/acats-3/tests/c6/c64002b.ada: Likewise. + * ada/acats-3/tests/c6/c64004g.ada: Likewise. + * ada/acats-3/tests/c6/c64005a.ada: Likewise. + * ada/acats-3/tests/c6/c64005b.ada: Likewise. + * ada/acats-3/tests/c6/c64005c.ada: Likewise. + * ada/acats-3/tests/c6/c64005d0.ada: Likewise. + * ada/acats-3/tests/c6/c64005da.ada: Likewise. + * ada/acats-3/tests/c6/c64005db.ada: Likewise. + * ada/acats-3/tests/c6/c64005dc.ada: Likewise. + * ada/acats-3/tests/c6/c641001.a: Likewise. + * ada/acats-3/tests/c6/c64103b.ada: Likewise. + * ada/acats-3/tests/c6/c64103c.ada: Likewise. + * ada/acats-3/tests/c6/c64103d.ada: Likewise. + * ada/acats-3/tests/c6/c64103e.ada: Likewise. + * ada/acats-3/tests/c6/c64103f.ada: Likewise. + * ada/acats-3/tests/c6/c64104a.ada: Likewise. + * ada/acats-3/tests/c6/c64104b.ada: Likewise. + * ada/acats-3/tests/c6/c64104c.ada: Likewise. + * ada/acats-3/tests/c6/c64104d.ada: Likewise. + * ada/acats-3/tests/c6/c64104e.ada: Likewise. + * ada/acats-3/tests/c6/c64104f.ada: Likewise. + * ada/acats-3/tests/c6/c64104g.ada: Likewise. + * ada/acats-3/tests/c6/c64104h.ada: Likewise. + * ada/acats-3/tests/c6/c64104i.ada: Likewise. + * ada/acats-3/tests/c6/c64104j.ada: Likewise. + * ada/acats-3/tests/c6/c64104k.ada: Likewise. + * ada/acats-3/tests/c6/c64104l.ada: Likewise. + * ada/acats-3/tests/c6/c64104m.ada: Likewise. + * ada/acats-3/tests/c6/c64104n.ada: Likewise. + * ada/acats-3/tests/c6/c64104o.ada: Likewise. + * ada/acats-3/tests/c6/c64105a.ada: Likewise. + * ada/acats-3/tests/c6/c64105b.ada: Likewise. + * ada/acats-3/tests/c6/c64105c.ada: Likewise. + * ada/acats-3/tests/c6/c64105d.ada: Likewise. + * ada/acats-3/tests/c6/c64106a.ada: Likewise. + * ada/acats-3/tests/c6/c64106b.ada: Likewise. + * ada/acats-3/tests/c6/c64106c.ada: Likewise. + * ada/acats-3/tests/c6/c64106d.ada: Likewise. + * ada/acats-3/tests/c6/c64107a.ada: Likewise. + * ada/acats-3/tests/c6/c64108a.ada: Likewise. + * ada/acats-3/tests/c6/c64109a.ada: Likewise. + * ada/acats-3/tests/c6/c64109b.ada: Likewise. + * ada/acats-3/tests/c6/c64109c.ada: Likewise. + * ada/acats-3/tests/c6/c64109d.ada: Likewise. + * ada/acats-3/tests/c6/c64109e.ada: Likewise. + * ada/acats-3/tests/c6/c64109f.ada: Likewise. + * ada/acats-3/tests/c6/c64109g.ada: Likewise. + * ada/acats-3/tests/c6/c64109h.ada: Likewise. + * ada/acats-3/tests/c6/c64109i.ada: Likewise. + * ada/acats-3/tests/c6/c64109j.ada: Likewise. + * ada/acats-3/tests/c6/c64109k.ada: Likewise. + * ada/acats-3/tests/c6/c64109l.ada: Likewise. + * ada/acats-3/tests/c6/c64201b.ada: Likewise. + * ada/acats-3/tests/c6/c64201c.ada: Likewise. + * ada/acats-3/tests/c6/c64202a.ada: Likewise. + * ada/acats-3/tests/c6/c650002.a: Likewise. + * ada/acats-3/tests/c6/c650003.a: Likewise. + * ada/acats-3/tests/c6/c65003a.ada: Likewise. + * ada/acats-3/tests/c6/c65003b.ada: Likewise. + * ada/acats-3/tests/c6/c650a01.a: Likewise. + * ada/acats-3/tests/c6/c651001.a: Likewise. + * ada/acats-3/tests/c6/c660001.a: Likewise. + * ada/acats-3/tests/c6/c66002a.ada: Likewise. + * ada/acats-3/tests/c6/c66002c.ada: Likewise. + * ada/acats-3/tests/c6/c66002d.ada: Likewise. + * ada/acats-3/tests/c6/c66002e.ada: Likewise. + * ada/acats-3/tests/c6/c66002f.ada: Likewise. + * ada/acats-3/tests/c6/c66002g.ada: Likewise. + * ada/acats-3/tests/c6/c67002a.ada: Likewise. + * ada/acats-3/tests/c6/c67002b.ada: Likewise. + * ada/acats-3/tests/c6/c67002c.ada: Likewise. + * ada/acats-3/tests/c6/c67002d.ada: Likewise. + * ada/acats-3/tests/c6/c67002e.ada: Likewise. + * ada/acats-3/tests/c6/c67003f.ada: Likewise. + * ada/acats-3/tests/c6/c67005a.ada: Likewise. + * ada/acats-3/tests/c6/c67005b.ada: Likewise. + * ada/acats-3/tests/c6/c67005c.ada: Likewise. + * ada/acats-3/tests/c6/c67005d.ada: Likewise. + * ada/acats-3/tests/c7/c72001b.ada: Likewise. + * ada/acats-3/tests/c7/c72002a.ada: Likewise. + * ada/acats-3/tests/c7/c730001.a: Likewise. + * ada/acats-3/tests/c7/c730002.a: Likewise. + * ada/acats-3/tests/c7/c730003.a: Likewise. + * ada/acats-3/tests/c7/c730004.a: Likewise. + * ada/acats-3/tests/c7/c73002a.ada: Likewise. + * ada/acats-3/tests/c7/c730a01.a: Likewise. + * ada/acats-3/tests/c7/c730a02.a: Likewise. + * ada/acats-3/tests/c7/c731001.a: Likewise. + * ada/acats-3/tests/c7/c74004a.ada: Likewise. + * ada/acats-3/tests/c7/c74203a.ada: Likewise. + * ada/acats-3/tests/c7/c74206a.ada: Likewise. + * ada/acats-3/tests/c7/c74207b.ada: Likewise. + * ada/acats-3/tests/c7/c74208a.ada: Likewise. + * ada/acats-3/tests/c7/c74208b.ada: Likewise. + * ada/acats-3/tests/c7/c74209a.ada: Likewise. + * ada/acats-3/tests/c7/c74210a.ada: Likewise. + * ada/acats-3/tests/c7/c74211a.ada: Likewise. + * ada/acats-3/tests/c7/c74211b.ada: Likewise. + * ada/acats-3/tests/c7/c74302a.ada: Likewise. + * ada/acats-3/tests/c7/c74302b.ada: Likewise. + * ada/acats-3/tests/c7/c74305a.ada: Likewise. + * ada/acats-3/tests/c7/c74305b.ada: Likewise. + * ada/acats-3/tests/c7/c74306a.ada: Likewise. + * ada/acats-3/tests/c7/c74307a.ada: Likewise. + * ada/acats-3/tests/c7/c74401d.ada: Likewise. + * ada/acats-3/tests/c7/c74401e.ada: Likewise. + * ada/acats-3/tests/c7/c74401k.ada: Likewise. + * ada/acats-3/tests/c7/c74401q.ada: Likewise. + * ada/acats-3/tests/c7/c74402a.ada: Likewise. + * ada/acats-3/tests/c7/c74402b.ada: Likewise. + * ada/acats-3/tests/c7/c74406a.ada: Likewise. + * ada/acats-3/tests/c7/c74407b.ada: Likewise. + * ada/acats-3/tests/c7/c74409b.ada: Likewise. + * ada/acats-3/tests/c7/c750b01.a: Likewise. + * ada/acats-3/tests/c7/c760001.a: Likewise. + * ada/acats-3/tests/c7/c760002.a: Likewise. + * ada/acats-3/tests/c7/c760007.a: Likewise. + * ada/acats-3/tests/c7/c760009.a: Likewise. + * ada/acats-3/tests/c7/c760010.a: Likewise. + * ada/acats-3/tests/c7/c760011.a: Likewise. + * ada/acats-3/tests/c7/c760012.a: Likewise. + * ada/acats-3/tests/c7/c760013.a: Likewise. + * ada/acats-3/tests/c7/c760015.a: Likewise. + * ada/acats-3/tests/c7/c760a02.a: Likewise. + * ada/acats-3/tests/c7/c761001.a: Likewise. + * ada/acats-3/tests/c7/c761002.a: Likewise. + * ada/acats-3/tests/c7/c761003.a: Likewise. + * ada/acats-3/tests/c7/c761004.a: Likewise. + * ada/acats-3/tests/c7/c761005.a: Likewise. + * ada/acats-3/tests/c7/c761006.a: Likewise. + * ada/acats-3/tests/c7/c761007.a: Likewise. + * ada/acats-3/tests/c7/c761010.a: Likewise. + * ada/acats-3/tests/c7/c761011.a: Likewise. + * ada/acats-3/tests/c7/c761012.a: Likewise. + * ada/acats-3/tests/c7/c761013.a: Likewise. + * ada/acats-3/tests/c8/c83007a.ada: Likewise. + * ada/acats-3/tests/c8/c83012d.ada: Likewise. + * ada/acats-3/tests/c8/c83022a.ada: Likewise. + * ada/acats-3/tests/c8/c83022g0.ada: Likewise. + * ada/acats-3/tests/c8/c83022g1.ada: Likewise. + * ada/acats-3/tests/c8/c83023a.ada: Likewise. + * ada/acats-3/tests/c8/c83024a.ada: Likewise. + * ada/acats-3/tests/c8/c83024e0.ada: Likewise. + * ada/acats-3/tests/c8/c83024e1.ada: Likewise. + * ada/acats-3/tests/c8/c83025a.ada: Likewise. + * ada/acats-3/tests/c8/c83025c.ada: Likewise. + * ada/acats-3/tests/c8/c83027a.ada: Likewise. + * ada/acats-3/tests/c8/c83027c.ada: Likewise. + * ada/acats-3/tests/c8/c83028a.ada: Likewise. + * ada/acats-3/tests/c8/c83029a.ada: Likewise. + * ada/acats-3/tests/c8/c83030a.ada: Likewise. + * ada/acats-3/tests/c8/c83030c.ada: Likewise. + * ada/acats-3/tests/c8/c83031a.ada: Likewise. + * ada/acats-3/tests/c8/c83031c.ada: Likewise. + * ada/acats-3/tests/c8/c83031e.ada: Likewise. + * ada/acats-3/tests/c8/c83032a.ada: Likewise. + * ada/acats-3/tests/c8/c83033a.ada: Likewise. + * ada/acats-3/tests/c8/c83051a.ada: Likewise. + * ada/acats-3/tests/c8/c83b02a.ada: Likewise. + * ada/acats-3/tests/c8/c83b02b.ada: Likewise. + * ada/acats-3/tests/c8/c83e02a.ada: Likewise. + * ada/acats-3/tests/c8/c83e02b.ada: Likewise. + * ada/acats-3/tests/c8/c83e03a.ada: Likewise. + * ada/acats-3/tests/c8/c83f01a.ada: Likewise. + * ada/acats-3/tests/c8/c83f01b.ada: Likewise. + * ada/acats-3/tests/c8/c83f01c0.ada: Likewise. + * ada/acats-3/tests/c8/c83f01c1.ada: Likewise. + * ada/acats-3/tests/c8/c83f01c2.ada: Likewise. + * ada/acats-3/tests/c8/c83f01d0.ada: Likewise. + * ada/acats-3/tests/c8/c83f01d1.ada: Likewise. + * ada/acats-3/tests/c8/c83f03a.ada: Likewise. + * ada/acats-3/tests/c8/c83f03b.ada: Likewise. + * ada/acats-3/tests/c8/c83f03c0.ada: Likewise. + * ada/acats-3/tests/c8/c83f03c1.ada: Likewise. + * ada/acats-3/tests/c8/c83f03c2.ada: Likewise. + * ada/acats-3/tests/c8/c83f03d0.ada: Likewise. + * ada/acats-3/tests/c8/c83f03d1.ada: Likewise. + * ada/acats-3/tests/c8/c840001.a: Likewise. + * ada/acats-3/tests/c8/c84002a.ada: Likewise. + * ada/acats-3/tests/c8/c84005a.ada: Likewise. + * ada/acats-3/tests/c8/c84008a.ada: Likewise. + * ada/acats-3/tests/c8/c84009a.ada: Likewise. + * ada/acats-3/tests/c8/c85004b.ada: Likewise. + * ada/acats-3/tests/c8/c85005a.ada: Likewise. + * ada/acats-3/tests/c8/c85005b.ada: Likewise. + * ada/acats-3/tests/c8/c85005c.ada: Likewise. + * ada/acats-3/tests/c8/c85005d.ada: Likewise. + * ada/acats-3/tests/c8/c85005e.ada: Likewise. + * ada/acats-3/tests/c8/c85005f.ada: Likewise. + * ada/acats-3/tests/c8/c85005g.ada: Likewise. + * ada/acats-3/tests/c8/c85006a.ada: Likewise. + * ada/acats-3/tests/c8/c85006b.ada: Likewise. + * ada/acats-3/tests/c8/c85006c.ada: Likewise. + * ada/acats-3/tests/c8/c85006d.ada: Likewise. + * ada/acats-3/tests/c8/c85006e.ada: Likewise. + * ada/acats-3/tests/c8/c85006f.ada: Likewise. + * ada/acats-3/tests/c8/c85006g.ada: Likewise. + * ada/acats-3/tests/c8/c85007a.ada: Likewise. + * ada/acats-3/tests/c8/c85007e.ada: Likewise. + * ada/acats-3/tests/c8/c85009a.ada: Likewise. + * ada/acats-3/tests/c8/c85011a.ada: Likewise. + * ada/acats-3/tests/c8/c85013a.ada: Likewise. + * ada/acats-3/tests/c8/c85014a.ada: Likewise. + * ada/acats-3/tests/c8/c85014b.ada: Likewise. + * ada/acats-3/tests/c8/c85014c.ada: Likewise. + * ada/acats-3/tests/c8/c85017a.ada: Likewise. + * ada/acats-3/tests/c8/c85018a.ada: Likewise. + * ada/acats-3/tests/c8/c85018b.ada: Likewise. + * ada/acats-3/tests/c8/c85019a.ada: Likewise. + * ada/acats-3/tests/c8/c851001.a: Likewise. + * ada/acats-3/tests/c8/c851002.a: Likewise. + * ada/acats-3/tests/c8/c854001.a: Likewise. + * ada/acats-3/tests/c8/c854002.a: Likewise. + * ada/acats-3/tests/c8/c854003.a: Likewise. + * ada/acats-3/tests/c8/c86003a.ada: Likewise. + * ada/acats-3/tests/c8/c86004a.ada: Likewise. + * ada/acats-3/tests/c8/c86004b0.ada: Likewise. + * ada/acats-3/tests/c8/c86004b1.ada: Likewise. + * ada/acats-3/tests/c8/c86004b2.ada: Likewise. + * ada/acats-3/tests/c8/c86004c0.ada: Likewise. + * ada/acats-3/tests/c8/c86004c1.ada: Likewise. + * ada/acats-3/tests/c8/c86004c2.ada: Likewise. + * ada/acats-3/tests/c8/c86006i.ada: Likewise. + * ada/acats-3/tests/c8/c86007a.ada: Likewise. + * ada/acats-3/tests/c8/c87a05a.ada: Likewise. + * ada/acats-3/tests/c8/c87a05b.ada: Likewise. + * ada/acats-3/tests/c8/c87b02a.ada: Likewise. + * ada/acats-3/tests/c8/c87b02b.ada: Likewise. + * ada/acats-3/tests/c8/c87b03a.ada: Likewise. + * ada/acats-3/tests/c8/c87b04a.ada: Likewise. + * ada/acats-3/tests/c8/c87b04b.ada: Likewise. + * ada/acats-3/tests/c8/c87b04c.ada: Likewise. + * ada/acats-3/tests/c8/c87b05a.ada: Likewise. + * ada/acats-3/tests/c8/c87b06a.ada: Likewise. + * ada/acats-3/tests/c8/c87b07a.ada: Likewise. + * ada/acats-3/tests/c8/c87b07b.ada: Likewise. + * ada/acats-3/tests/c8/c87b07c.ada: Likewise. + * ada/acats-3/tests/c8/c87b07d.ada: Likewise. + * ada/acats-3/tests/c8/c87b07e.ada: Likewise. + * ada/acats-3/tests/c8/c87b08a.ada: Likewise. + * ada/acats-3/tests/c8/c87b09a.ada: Likewise. + * ada/acats-3/tests/c8/c87b09c.ada: Likewise. + * ada/acats-3/tests/c8/c87b10a.ada: Likewise. + * ada/acats-3/tests/c8/c87b11a.ada: Likewise. + * ada/acats-3/tests/c8/c87b11b.ada: Likewise. + * ada/acats-3/tests/c8/c87b13a.ada: Likewise. + * ada/acats-3/tests/c8/c87b14a.ada: Likewise. + * ada/acats-3/tests/c8/c87b14b.ada: Likewise. + * ada/acats-3/tests/c8/c87b14c.ada: Likewise. + * ada/acats-3/tests/c8/c87b14d.ada: Likewise. + * ada/acats-3/tests/c8/c87b15a.ada: Likewise. + * ada/acats-3/tests/c8/c87b16a.ada: Likewise. + * ada/acats-3/tests/c8/c87b17a.ada: Likewise. + * ada/acats-3/tests/c8/c87b18a.ada: Likewise. + * ada/acats-3/tests/c8/c87b18b.ada: Likewise. + * ada/acats-3/tests/c8/c87b19a.ada: Likewise. + * ada/acats-3/tests/c8/c87b23a.ada: Likewise. + * ada/acats-3/tests/c8/c87b24a.ada: Likewise. + * ada/acats-3/tests/c8/c87b24b.ada: Likewise. + * ada/acats-3/tests/c8/c87b26b.ada: Likewise. + * ada/acats-3/tests/c8/c87b27a.ada: Likewise. + * ada/acats-3/tests/c8/c87b28a.ada: Likewise. + * ada/acats-3/tests/c8/c87b29a.ada: Likewise. + * ada/acats-3/tests/c8/c87b30a.ada: Likewise. + * ada/acats-3/tests/c8/c87b31a.ada: Likewise. + * ada/acats-3/tests/c8/c87b32a.ada: Likewise. + * ada/acats-3/tests/c8/c87b33a.ada: Likewise. + * ada/acats-3/tests/c8/c87b34a.ada: Likewise. + * ada/acats-3/tests/c8/c87b34b.ada: Likewise. + * ada/acats-3/tests/c8/c87b34c.ada: Likewise. + * ada/acats-3/tests/c8/c87b35c.ada: Likewise. + * ada/acats-3/tests/c8/c87b38a.ada: Likewise. + * ada/acats-3/tests/c8/c87b39a.ada: Likewise. + * ada/acats-3/tests/c8/c87b40a.ada: Likewise. + * ada/acats-3/tests/c8/c87b41a.ada: Likewise. + * ada/acats-3/tests/c8/c87b42a.ada: Likewise. + * ada/acats-3/tests/c8/c87b43a.ada: Likewise. + * ada/acats-3/tests/c8/c87b44a.ada: Likewise. + * ada/acats-3/tests/c8/c87b45a.ada: Likewise. + * ada/acats-3/tests/c8/c87b45c.ada: Likewise. + * ada/acats-3/tests/c8/c87b47a.ada: Likewise. + * ada/acats-3/tests/c8/c87b48a.ada: Likewise. + * ada/acats-3/tests/c8/c87b48b.ada: Likewise. + * ada/acats-3/tests/c8/c87b50a.ada: Likewise. + * ada/acats-3/tests/c8/c87b54a.ada: Likewise. + * ada/acats-3/tests/c8/c87b57a.ada: Likewise. + * ada/acats-3/tests/c8/c87b62a.ada: Likewise. + * ada/acats-3/tests/c8/c87b62b.ada: Likewise. + * ada/acats-3/tests/c8/c87b62c.ada: Likewise. + * ada/acats-3/tests/c8/c87b62d.tst: Likewise. + * ada/acats-3/tests/c9/c910001.a: Likewise. + * ada/acats-3/tests/c9/c910002.a: Likewise. + * ada/acats-3/tests/c9/c910003.a: Likewise. + * ada/acats-3/tests/c9/c91004b.ada: Likewise. + * ada/acats-3/tests/c9/c91004c.ada: Likewise. + * ada/acats-3/tests/c9/c91006a.ada: Likewise. + * ada/acats-3/tests/c9/c91007a.ada: Likewise. + * ada/acats-3/tests/c9/c920001.a: Likewise. + * ada/acats-3/tests/c9/c92002a.ada: Likewise. + * ada/acats-3/tests/c9/c92003a.ada: Likewise. + * ada/acats-3/tests/c9/c92005a.ada: Likewise. + * ada/acats-3/tests/c9/c92005b.ada: Likewise. + * ada/acats-3/tests/c9/c92006a.ada: Likewise. + * ada/acats-3/tests/c9/c930001.a: Likewise. + * ada/acats-3/tests/c9/c93001a.ada: Likewise. + * ada/acats-3/tests/c9/c93002a.ada: Likewise. + * ada/acats-3/tests/c9/c93003a.ada: Likewise. + * ada/acats-3/tests/c9/c93004a.ada: Likewise. + * ada/acats-3/tests/c9/c93004b.ada: Likewise. + * ada/acats-3/tests/c9/c93004c.ada: Likewise. + * ada/acats-3/tests/c9/c93004d.ada: Likewise. + * ada/acats-3/tests/c9/c93004f.ada: Likewise. + * ada/acats-3/tests/c9/c93005a.ada: Likewise. + * ada/acats-3/tests/c9/c93005b.ada: Likewise. + * ada/acats-3/tests/c9/c93005c.ada: Likewise. + * ada/acats-3/tests/c9/c93005d.ada: Likewise. + * ada/acats-3/tests/c9/c93005e.ada: Likewise. + * ada/acats-3/tests/c9/c93005f.ada: Likewise. + * ada/acats-3/tests/c9/c93005g.ada: Likewise. + * ada/acats-3/tests/c9/c93005h.ada: Likewise. + * ada/acats-3/tests/c9/c93006a.ada: Likewise. + * ada/acats-3/tests/c9/c93007a.ada: Likewise. + * ada/acats-3/tests/c9/c93008a.ada: Likewise. + * ada/acats-3/tests/c9/c93008b.ada: Likewise. + * ada/acats-3/tests/c9/c940001.a: Likewise. + * ada/acats-3/tests/c9/c940002.a: Likewise. + * ada/acats-3/tests/c9/c940004.a: Likewise. + * ada/acats-3/tests/c9/c940005.a: Likewise. + * ada/acats-3/tests/c9/c940006.a: Likewise. + * ada/acats-3/tests/c9/c940007.a: Likewise. + * ada/acats-3/tests/c9/c940010.a: Likewise. + * ada/acats-3/tests/c9/c940011.a: Likewise. + * ada/acats-3/tests/c9/c940012.a: Likewise. + * ada/acats-3/tests/c9/c940013.a: Likewise. + * ada/acats-3/tests/c9/c940014.a: Likewise. + * ada/acats-3/tests/c9/c940015.a: Likewise. + * ada/acats-3/tests/c9/c940016.a: Likewise. + * ada/acats-3/tests/c9/c940017.a: Likewise. + * ada/acats-3/tests/c9/c94001a.ada: Likewise. + * ada/acats-3/tests/c9/c94001b.ada: Likewise. + * ada/acats-3/tests/c9/c94001c.ada: Likewise. + * ada/acats-3/tests/c9/c94001e.ada: Likewise. + * ada/acats-3/tests/c9/c94001f.ada: Likewise. + * ada/acats-3/tests/c9/c94001g.ada: Likewise. + * ada/acats-3/tests/c9/c94002a.ada: Likewise. + * ada/acats-3/tests/c9/c94002b.ada: Likewise. + * ada/acats-3/tests/c9/c94002d.ada: Likewise. + * ada/acats-3/tests/c9/c94002e.ada: Likewise. + * ada/acats-3/tests/c9/c94002f.ada: Likewise. + * ada/acats-3/tests/c9/c94002g.ada: Likewise. + * ada/acats-3/tests/c9/c94004a.ada: Likewise. + * ada/acats-3/tests/c9/c94004b.ada: Likewise. + * ada/acats-3/tests/c9/c94004c.ada: Likewise. + * ada/acats-3/tests/c9/c94005a.ada: Likewise. + * ada/acats-3/tests/c9/c94005b.ada: Likewise. + * ada/acats-3/tests/c9/c94006a.ada: Likewise. + * ada/acats-3/tests/c9/c94007a.ada: Likewise. + * ada/acats-3/tests/c9/c94007b.ada: Likewise. + * ada/acats-3/tests/c9/c94008a.ada: Likewise. + * ada/acats-3/tests/c9/c94008b.ada: Likewise. + * ada/acats-3/tests/c9/c94008c.ada: Likewise. + * ada/acats-3/tests/c9/c94008d.ada: Likewise. + * ada/acats-3/tests/c9/c94010a.ada: Likewise. + * ada/acats-3/tests/c9/c94011a.ada: Likewise. + * ada/acats-3/tests/c9/c94020a.ada: Likewise. + * ada/acats-3/tests/c9/c940a03.a: Likewise. + * ada/acats-3/tests/c9/c95008a.ada: Likewise. + * ada/acats-3/tests/c9/c95009a.ada: Likewise. + * ada/acats-3/tests/c9/c95010a.ada: Likewise. + * ada/acats-3/tests/c9/c95011a.ada: Likewise. + * ada/acats-3/tests/c9/c95012a.ada: Likewise. + * ada/acats-3/tests/c9/c95021a.ada: Likewise. + * ada/acats-3/tests/c9/c95022a.ada: Likewise. + * ada/acats-3/tests/c9/c95022b.ada: Likewise. + * ada/acats-3/tests/c9/c95033a.ada: Likewise. + * ada/acats-3/tests/c9/c95033b.ada: Likewise. + * ada/acats-3/tests/c9/c95034a.ada: Likewise. + * ada/acats-3/tests/c9/c95034b.ada: Likewise. + * ada/acats-3/tests/c9/c95035a.ada: Likewise. + * ada/acats-3/tests/c9/c95040a.ada: Likewise. + * ada/acats-3/tests/c9/c95040b.ada: Likewise. + * ada/acats-3/tests/c9/c95040c.ada: Likewise. + * ada/acats-3/tests/c9/c95040d.ada: Likewise. + * ada/acats-3/tests/c9/c95041a.ada: Likewise. + * ada/acats-3/tests/c9/c95065a.ada: Likewise. + * ada/acats-3/tests/c9/c95065b.ada: Likewise. + * ada/acats-3/tests/c9/c95065c.ada: Likewise. + * ada/acats-3/tests/c9/c95065d.ada: Likewise. + * ada/acats-3/tests/c9/c95065e.ada: Likewise. + * ada/acats-3/tests/c9/c95065f.ada: Likewise. + * ada/acats-3/tests/c9/c95066a.ada: Likewise. + * ada/acats-3/tests/c9/c95067a.ada: Likewise. + * ada/acats-3/tests/c9/c95071a.ada: Likewise. + * ada/acats-3/tests/c9/c95072a.ada: Likewise. + * ada/acats-3/tests/c9/c95072b.ada: Likewise. + * ada/acats-3/tests/c9/c95073a.ada: Likewise. + * ada/acats-3/tests/c9/c95074c.ada: Likewise. + * ada/acats-3/tests/c9/c95076a.ada: Likewise. + * ada/acats-3/tests/c9/c95078a.ada: Likewise. + * ada/acats-3/tests/c9/c95080b.ada: Likewise. + * ada/acats-3/tests/c9/c95082g.ada: Likewise. + * ada/acats-3/tests/c9/c95085a.ada: Likewise. + * ada/acats-3/tests/c9/c95085b.ada: Likewise. + * ada/acats-3/tests/c9/c95085c.ada: Likewise. + * ada/acats-3/tests/c9/c95085d.ada: Likewise. + * ada/acats-3/tests/c9/c95085e.ada: Likewise. + * ada/acats-3/tests/c9/c95085f.ada: Likewise. + * ada/acats-3/tests/c9/c95085g.ada: Likewise. + * ada/acats-3/tests/c9/c95085h.ada: Likewise. + * ada/acats-3/tests/c9/c95085i.ada: Likewise. + * ada/acats-3/tests/c9/c95085j.ada: Likewise. + * ada/acats-3/tests/c9/c95085k.ada: Likewise. + * ada/acats-3/tests/c9/c95085l.ada: Likewise. + * ada/acats-3/tests/c9/c95085m.ada: Likewise. + * ada/acats-3/tests/c9/c95085n.ada: Likewise. + * ada/acats-3/tests/c9/c95085o.ada: Likewise. + * ada/acats-3/tests/c9/c95086a.ada: Likewise. + * ada/acats-3/tests/c9/c95086b.ada: Likewise. + * ada/acats-3/tests/c9/c95086c.ada: Likewise. + * ada/acats-3/tests/c9/c95086d.ada: Likewise. + * ada/acats-3/tests/c9/c95086e.ada: Likewise. + * ada/acats-3/tests/c9/c95086f.ada: Likewise. + * ada/acats-3/tests/c9/c95087a.ada: Likewise. + * ada/acats-3/tests/c9/c95087b.ada: Likewise. + * ada/acats-3/tests/c9/c95087c.ada: Likewise. + * ada/acats-3/tests/c9/c95087d.ada: Likewise. + * ada/acats-3/tests/c9/c95088a.ada: Likewise. + * ada/acats-3/tests/c9/c95089a.ada: Likewise. + * ada/acats-3/tests/c9/c95090a.ada: Likewise. + * ada/acats-3/tests/c9/c95092a.ada: Likewise. + * ada/acats-3/tests/c9/c95093a.ada: Likewise. + * ada/acats-3/tests/c9/c95095a.ada: Likewise. + * ada/acats-3/tests/c9/c95095b.ada: Likewise. + * ada/acats-3/tests/c9/c95095c.ada: Likewise. + * ada/acats-3/tests/c9/c95095d.ada: Likewise. + * ada/acats-3/tests/c9/c95095e.ada: Likewise. + * ada/acats-3/tests/c9/c951001.a: Likewise. + * ada/acats-3/tests/c9/c951002.a: Likewise. + * ada/acats-3/tests/c9/c953001.a: Likewise. + * ada/acats-3/tests/c9/c953002.a: Likewise. + * ada/acats-3/tests/c9/c953003.a: Likewise. + * ada/acats-3/tests/c9/c954001.a: Likewise. + * ada/acats-3/tests/c9/c954010.a: Likewise. + * ada/acats-3/tests/c9/c954011.a: Likewise. + * ada/acats-3/tests/c9/c954012.a: Likewise. + * ada/acats-3/tests/c9/c954013.a: Likewise. + * ada/acats-3/tests/c9/c954014.a: Likewise. + * ada/acats-3/tests/c9/c954015.a: Likewise. + * ada/acats-3/tests/c9/c954016.a: Likewise. + * ada/acats-3/tests/c9/c954017.a: Likewise. + * ada/acats-3/tests/c9/c954018.a: Likewise. + * ada/acats-3/tests/c9/c954019.a: Likewise. + * ada/acats-3/tests/c9/c954020.a: Likewise. + * ada/acats-3/tests/c9/c954021.a: Likewise. + * ada/acats-3/tests/c9/c954022.a: Likewise. + * ada/acats-3/tests/c9/c954023.a: Likewise. + * ada/acats-3/tests/c9/c954024.a: Likewise. + * ada/acats-3/tests/c9/c954025.a: Likewise. + * ada/acats-3/tests/c9/c954026.a: Likewise. + * ada/acats-3/tests/c9/c954a01.a: Likewise. + * ada/acats-3/tests/c9/c954a02.a: Likewise. + * ada/acats-3/tests/c9/c954a03.a: Likewise. + * ada/acats-3/tests/c9/c960001.a: Likewise. + * ada/acats-3/tests/c9/c960002.a: Likewise. + * ada/acats-3/tests/c9/c960004.a: Likewise. + * ada/acats-3/tests/c9/c96001a.ada: Likewise. + * ada/acats-3/tests/c9/c96004a.ada: Likewise. + * ada/acats-3/tests/c9/c96005a.ada: Likewise. + * ada/acats-3/tests/c9/c96005b.tst: Likewise. + * ada/acats-3/tests/c9/c96005d.ada: Likewise. + * ada/acats-3/tests/c9/c96005f.ada: Likewise. + * ada/acats-3/tests/c9/c96006a.ada: Likewise. + * ada/acats-3/tests/c9/c96007a.ada: Likewise. + * ada/acats-3/tests/c9/c96008a.ada: Likewise. + * ada/acats-3/tests/c9/c96008b.ada: Likewise. + * ada/acats-3/tests/c9/c97112a.ada: Likewise. + * ada/acats-3/tests/c9/c97113a.ada: Likewise. + * ada/acats-3/tests/c9/c97114a.ada: Likewise. + * ada/acats-3/tests/c9/c97115a.ada: Likewise. + * ada/acats-3/tests/c9/c97116a.ada: Likewise. + * ada/acats-3/tests/c9/c97117a.ada: Likewise. + * ada/acats-3/tests/c9/c97117b.ada: Likewise. + * ada/acats-3/tests/c9/c97117c.ada: Likewise. + * ada/acats-3/tests/c9/c97118a.ada: Likewise. + * ada/acats-3/tests/c9/c97120a.ada: Likewise. + * ada/acats-3/tests/c9/c97120b.ada: Likewise. + * ada/acats-3/tests/c9/c97201a.ada: Likewise. + * ada/acats-3/tests/c9/c97201b.ada: Likewise. + * ada/acats-3/tests/c9/c97201c.ada: Likewise. + * ada/acats-3/tests/c9/c97201d.ada: Likewise. + * ada/acats-3/tests/c9/c97201e.ada: Likewise. + * ada/acats-3/tests/c9/c97201g.ada: Likewise. + * ada/acats-3/tests/c9/c97201h.ada: Likewise. + * ada/acats-3/tests/c9/c97201x.ada: Likewise. + * ada/acats-3/tests/c9/c97202a.ada: Likewise. + * ada/acats-3/tests/c9/c97203a.ada: Likewise. + * ada/acats-3/tests/c9/c97203b.ada: Likewise. + * ada/acats-3/tests/c9/c97203c.ada: Likewise. + * ada/acats-3/tests/c9/c97204a.ada: Likewise. + * ada/acats-3/tests/c9/c97204b.ada: Likewise. + * ada/acats-3/tests/c9/c97205a.ada: Likewise. + * ada/acats-3/tests/c9/c97205b.ada: Likewise. + * ada/acats-3/tests/c9/c97301a.ada: Likewise. + * ada/acats-3/tests/c9/c97301b.ada: Likewise. + * ada/acats-3/tests/c9/c97301c.ada: Likewise. + * ada/acats-3/tests/c9/c97301d.ada: Likewise. + * ada/acats-3/tests/c9/c97301e.ada: Likewise. + * ada/acats-3/tests/c9/c97302a.ada: Likewise. + * ada/acats-3/tests/c9/c97303a.ada: Likewise. + * ada/acats-3/tests/c9/c97303b.ada: Likewise. + * ada/acats-3/tests/c9/c97303c.ada: Likewise. + * ada/acats-3/tests/c9/c97304a.ada: Likewise. + * ada/acats-3/tests/c9/c97304b.ada: Likewise. + * ada/acats-3/tests/c9/c97305a.ada: Likewise. + * ada/acats-3/tests/c9/c97305b.ada: Likewise. + * ada/acats-3/tests/c9/c97305c.ada: Likewise. + * ada/acats-3/tests/c9/c97305d.ada: Likewise. + * ada/acats-3/tests/c9/c97307a.ada: Likewise. + * ada/acats-3/tests/c9/c974001.a: Likewise. + * ada/acats-3/tests/c9/c974002.a: Likewise. + * ada/acats-3/tests/c9/c974003.a: Likewise. + * ada/acats-3/tests/c9/c974004.a: Likewise. + * ada/acats-3/tests/c9/c974005.a: Likewise. + * ada/acats-3/tests/c9/c974006.a: Likewise. + * ada/acats-3/tests/c9/c974007.a: Likewise. + * ada/acats-3/tests/c9/c974008.a: Likewise. + * ada/acats-3/tests/c9/c974009.a: Likewise. + * ada/acats-3/tests/c9/c974010.a: Likewise. + * ada/acats-3/tests/c9/c974011.a: Likewise. + * ada/acats-3/tests/c9/c974012.a: Likewise. + * ada/acats-3/tests/c9/c974013.a: Likewise. + * ada/acats-3/tests/c9/c974014.a: Likewise. + * ada/acats-3/tests/c9/c980001.a: Likewise. + * ada/acats-3/tests/c9/c980002.a: Likewise. + * ada/acats-3/tests/c9/c980003.a: Likewise. + * ada/acats-3/tests/c9/c990001.a: Likewise. + * ada/acats-3/tests/c9/c99005a.ada: Likewise. + * ada/acats-3/tests/c9/c9a003a.ada: Likewise. + * ada/acats-3/tests/c9/c9a004a.ada: Likewise. + * ada/acats-3/tests/c9/c9a007a.ada: Likewise. + * ada/acats-3/tests/c9/c9a009a.ada: Likewise. + * ada/acats-3/tests/c9/c9a009c.ada: Likewise. + * ada/acats-3/tests/c9/c9a009f.ada: Likewise. + * ada/acats-3/tests/c9/c9a009g.ada: Likewise. + * ada/acats-3/tests/c9/c9a009h.ada: Likewise. + * ada/acats-3/tests/c9/c9a010a.ada: Likewise. + * ada/acats-3/tests/c9/c9a011a.ada: Likewise. + * ada/acats-3/tests/c9/c9a011b.ada: Likewise. + * ada/acats-3/tests/ca/ca1003a.ada: Likewise. + * ada/acats-3/tests/ca/ca1004a.ada: Likewise. + * ada/acats-3/tests/ca/ca1005a.ada: Likewise. + * ada/acats-3/tests/ca/ca1006a.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a3.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a4.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a5.ada: Likewise. + * ada/acats-3/tests/ca/ca1011a6.ada: Likewise. + * ada/acats-3/tests/ca/ca1012a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1012a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1012a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1012a3.ada: Likewise. + * ada/acats-3/tests/ca/ca1012a4.ada: Likewise. + * ada/acats-3/tests/ca/ca1012b0.ada: Likewise. + * ada/acats-3/tests/ca/ca1012b2.ada: Likewise. + * ada/acats-3/tests/ca/ca1012b4.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a3.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a4.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a5.ada: Likewise. + * ada/acats-3/tests/ca/ca1013a6.ada: Likewise. + * ada/acats-3/tests/ca/ca1014a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1014a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1014a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1014a3.ada: Likewise. + * ada/acats-3/tests/ca/ca1020e0.ada: Likewise. + * ada/acats-3/tests/ca/ca1020e1.ada: Likewise. + * ada/acats-3/tests/ca/ca1020e2.ada: Likewise. + * ada/acats-3/tests/ca/ca1020e3.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a3.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a4.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a5.ada: Likewise. + * ada/acats-3/tests/ca/ca1022a6.ada: Likewise. + * ada/acats-3/tests/ca/ca11001.a: Likewise. + * ada/acats-3/tests/ca/ca11002.a: Likewise. + * ada/acats-3/tests/ca/ca11003.a: Likewise. + * ada/acats-3/tests/ca/ca110040.a: Likewise. + * ada/acats-3/tests/ca/ca110041.a: Likewise. + * ada/acats-3/tests/ca/ca110042.am: Likewise. + * ada/acats-3/tests/ca/ca110050.a: Likewise. + * ada/acats-3/tests/ca/ca110051.am: Likewise. + * ada/acats-3/tests/ca/ca11006.a: Likewise. + * ada/acats-3/tests/ca/ca11007.a: Likewise. + * ada/acats-3/tests/ca/ca11008.a: Likewise. + * ada/acats-3/tests/ca/ca11009.a: Likewise. + * ada/acats-3/tests/ca/ca11010.a: Likewise. + * ada/acats-3/tests/ca/ca11011.a: Likewise. + * ada/acats-3/tests/ca/ca11012.a: Likewise. + * ada/acats-3/tests/ca/ca11013.a: Likewise. + * ada/acats-3/tests/ca/ca11014.a: Likewise. + * ada/acats-3/tests/ca/ca11015.a: Likewise. + * ada/acats-3/tests/ca/ca11016.a: Likewise. + * ada/acats-3/tests/ca/ca11017.a: Likewise. + * ada/acats-3/tests/ca/ca11018.a: Likewise. + * ada/acats-3/tests/ca/ca11019.a: Likewise. + * ada/acats-3/tests/ca/ca11020.a: Likewise. + * ada/acats-3/tests/ca/ca11021.a: Likewise. + * ada/acats-3/tests/ca/ca11022.a: Likewise. + * ada/acats-3/tests/ca/ca110230.a: Likewise. + * ada/acats-3/tests/ca/ca110231.a: Likewise. + * ada/acats-3/tests/ca/ca110232.am: Likewise. + * ada/acats-3/tests/ca/ca1102a0.ada: Likewise. + * ada/acats-3/tests/ca/ca1102a1.ada: Likewise. + * ada/acats-3/tests/ca/ca1102a2.ada: Likewise. + * ada/acats-3/tests/ca/ca1106a.ada: Likewise. + * ada/acats-3/tests/ca/ca1108a.ada: Likewise. + * ada/acats-3/tests/ca/ca1108b.ada: Likewise. + * ada/acats-3/tests/ca/ca11a01.a: Likewise. + * ada/acats-3/tests/ca/ca11a02.a: Likewise. + * ada/acats-3/tests/ca/ca11b01.a: Likewise. + * ada/acats-3/tests/ca/ca11b02.a: Likewise. + * ada/acats-3/tests/ca/ca11c01.a: Likewise. + * ada/acats-3/tests/ca/ca11c02.a: Likewise. + * ada/acats-3/tests/ca/ca11c03.a: Likewise. + * ada/acats-3/tests/ca/ca11d010.a: Likewise. + * ada/acats-3/tests/ca/ca11d011.a: Likewise. + * ada/acats-3/tests/ca/ca11d012.a: Likewise. + * ada/acats-3/tests/ca/ca11d013.am: Likewise. + * ada/acats-3/tests/ca/ca11d02.a: Likewise. + * ada/acats-3/tests/ca/ca11d03.a: Likewise. + * ada/acats-3/tests/ca/ca120010.a: Likewise. + * ada/acats-3/tests/ca/ca120011.a: Likewise. + * ada/acats-3/tests/ca/ca120012.am: Likewise. + * ada/acats-3/tests/ca/ca12002.a: Likewise. + * ada/acats-3/tests/ca/ca13001.a: Likewise. + * ada/acats-3/tests/ca/ca13002.a: Likewise. + * ada/acats-3/tests/ca/ca13003.a: Likewise. + * ada/acats-3/tests/ca/ca13a01.a: Likewise. + * ada/acats-3/tests/ca/ca13a02.a: Likewise. + * ada/acats-3/tests/ca/ca140230.a: Likewise. + * ada/acats-3/tests/ca/ca140231.a: Likewise. + * ada/acats-3/tests/ca/ca140232.am: Likewise. + * ada/acats-3/tests/ca/ca140233.a: Likewise. + * ada/acats-3/tests/ca/ca140280.a: Likewise. + * ada/acats-3/tests/ca/ca140281.a: Likewise. + * ada/acats-3/tests/ca/ca140282.a: Likewise. + * ada/acats-3/tests/ca/ca140283.am: Likewise. + * ada/acats-3/tests/ca/ca15003.a: Likewise. + * ada/acats-3/tests/ca/ca200020.a: Likewise. + * ada/acats-3/tests/ca/ca200021.a: Likewise. + * ada/acats-3/tests/ca/ca200022.am: Likewise. + * ada/acats-3/tests/ca/ca200030.a: Likewise. + * ada/acats-3/tests/ca/ca200031.am: Likewise. + * ada/acats-3/tests/ca/ca2001h0.ada: Likewise. + * ada/acats-3/tests/ca/ca2001h1.ada: Likewise. + * ada/acats-3/tests/ca/ca2001h2.ada: Likewise. + * ada/acats-3/tests/ca/ca2001h3.ada: Likewise. + * ada/acats-3/tests/ca/ca2002a0.ada: Likewise. + * ada/acats-3/tests/ca/ca2002a1.ada: Likewise. + * ada/acats-3/tests/ca/ca2002a2.ada: Likewise. + * ada/acats-3/tests/ca/ca2003a0.ada: Likewise. + * ada/acats-3/tests/ca/ca2003a1.ada: Likewise. + * ada/acats-3/tests/ca/ca2004a0.ada: Likewise. + * ada/acats-3/tests/ca/ca2004a1.ada: Likewise. + * ada/acats-3/tests/ca/ca2004a2.ada: Likewise. + * ada/acats-3/tests/ca/ca2004a3.ada: Likewise. + * ada/acats-3/tests/ca/ca2004a4.ada: Likewise. + * ada/acats-3/tests/ca/ca2007a0.ada: Likewise. + * ada/acats-3/tests/ca/ca2007a1.ada: Likewise. + * ada/acats-3/tests/ca/ca2007a2.ada: Likewise. + * ada/acats-3/tests/ca/ca2007a3.ada: Likewise. + * ada/acats-3/tests/ca/ca2008a0.ada: Likewise. + * ada/acats-3/tests/ca/ca2008a1.ada: Likewise. + * ada/acats-3/tests/ca/ca2008a2.ada: Likewise. + * ada/acats-3/tests/ca/ca2009a.ada: Likewise. + * ada/acats-3/tests/ca/ca2009c0.ada: Likewise. + * ada/acats-3/tests/ca/ca2009c1.ada: Likewise. + * ada/acats-3/tests/ca/ca2009d.ada: Likewise. + * ada/acats-3/tests/ca/ca2009f0.ada: Likewise. + * ada/acats-3/tests/ca/ca2009f1.ada: Likewise. + * ada/acats-3/tests/ca/ca2009f2.ada: Likewise. + * ada/acats-3/tests/ca/ca2011b.ada: Likewise. + * ada/acats-3/tests/ca/ca21001.a: Likewise. + * ada/acats-3/tests/ca/ca3011a0.ada: Likewise. + * ada/acats-3/tests/ca/ca3011a1.ada: Likewise. + * ada/acats-3/tests/ca/ca3011a2.ada: Likewise. + * ada/acats-3/tests/ca/ca3011a3.ada: Likewise. + * ada/acats-3/tests/ca/ca3011a4.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a0.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a1.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a2.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a3.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a4.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a5.ada: Likewise. + * ada/acats-3/tests/ca/ca5003a6.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b0.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b1.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b2.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b3.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b4.ada: Likewise. + * ada/acats-3/tests/ca/ca5003b5.ada: Likewise. + * ada/acats-3/tests/ca/ca5004a.ada: Likewise. + * ada/acats-3/tests/ca/ca5004b0.ada: Likewise. + * ada/acats-3/tests/ca/ca5004b1.ada: Likewise. + * ada/acats-3/tests/ca/ca5004b2.ada: Likewise. + * ada/acats-3/tests/ca/ca5006a.ada: Likewise. + * ada/acats-3/tests/cb/cb10002.a: Likewise. + * ada/acats-3/tests/cb/cb1001a.ada: Likewise. + * ada/acats-3/tests/cb/cb1004a.ada: Likewise. + * ada/acats-3/tests/cb/cb1005a.ada: Likewise. + * ada/acats-3/tests/cb/cb1010a.ada: Likewise. + * ada/acats-3/tests/cb/cb1010c.ada: Likewise. + * ada/acats-3/tests/cb/cb1010d.ada: Likewise. + * ada/acats-3/tests/cb/cb20001.a: Likewise. + * ada/acats-3/tests/cb/cb20003.a: Likewise. + * ada/acats-3/tests/cb/cb20004.a: Likewise. + * ada/acats-3/tests/cb/cb20005.a: Likewise. + * ada/acats-3/tests/cb/cb20006.a: Likewise. + * ada/acats-3/tests/cb/cb20007.a: Likewise. + * ada/acats-3/tests/cb/cb2004a.ada: Likewise. + * ada/acats-3/tests/cb/cb2005a.ada: Likewise. + * ada/acats-3/tests/cb/cb2006a.ada: Likewise. + * ada/acats-3/tests/cb/cb2007a.ada: Likewise. + * ada/acats-3/tests/cb/cb20a02.a: Likewise. + * ada/acats-3/tests/cb/cb30001.a: Likewise. + * ada/acats-3/tests/cb/cb3003a.ada: Likewise. + * ada/acats-3/tests/cb/cb3003b.ada: Likewise. + * ada/acats-3/tests/cb/cb3004a.ada: Likewise. + * ada/acats-3/tests/cb/cb40005.a: Likewise. + * ada/acats-3/tests/cb/cb4001a.ada: Likewise. + * ada/acats-3/tests/cb/cb4002a.ada: Likewise. + * ada/acats-3/tests/cb/cb4003a.ada: Likewise. + * ada/acats-3/tests/cb/cb4004a.ada: Likewise. + * ada/acats-3/tests/cb/cb4005a.ada: Likewise. + * ada/acats-3/tests/cb/cb4006a.ada: Likewise. + * ada/acats-3/tests/cb/cb4007a.ada: Likewise. + * ada/acats-3/tests/cb/cb4008a.ada: Likewise. + * ada/acats-3/tests/cb/cb4009a.ada: Likewise. + * ada/acats-3/tests/cb/cb4013a.ada: Likewise. + * ada/acats-3/tests/cb/cb40a01.a: Likewise. + * ada/acats-3/tests/cb/cb40a020.a: Likewise. + * ada/acats-3/tests/cb/cb40a021.am: Likewise. + * ada/acats-3/tests/cb/cb40a030.a: Likewise. + * ada/acats-3/tests/cb/cb40a031.am: Likewise. + * ada/acats-3/tests/cb/cb40a04.a: Likewise. + * ada/acats-3/tests/cb/cb41001.a: Likewise. + * ada/acats-3/tests/cb/cb41002.a: Likewise. + * ada/acats-3/tests/cb/cb41003.a: Likewise. + * ada/acats-3/tests/cb/cb41004.a: Likewise. + * ada/acats-3/tests/cb/cb42001.a: Likewise. + * ada/acats-3/tests/cb/cb42002.a: Likewise. + * ada/acats-3/tests/cb/cb42003.a: Likewise. + * ada/acats-3/tests/cb/cb5001a.ada: Likewise. + * ada/acats-3/tests/cb/cb5001b.ada: Likewise. + * ada/acats-3/tests/cb/cb5002a.ada: Likewise. + * ada/acats-3/tests/cc/cc1004a.ada: Likewise. + * ada/acats-3/tests/cc/cc1005b.ada: Likewise. + * ada/acats-3/tests/cc/cc1010a.ada: Likewise. + * ada/acats-3/tests/cc/cc1010b.ada: Likewise. + * ada/acats-3/tests/cc/cc1018a.ada: Likewise. + * ada/acats-3/tests/cc/cc1104c.ada: Likewise. + * ada/acats-3/tests/cc/cc1107b.ada: Likewise. + * ada/acats-3/tests/cc/cc1111a.ada: Likewise. + * ada/acats-3/tests/cc/cc1204a.ada: Likewise. + * ada/acats-3/tests/cc/cc1207b.ada: Likewise. + * ada/acats-3/tests/cc/cc1220a.ada: Likewise. + * ada/acats-3/tests/cc/cc1221a.ada: Likewise. + * ada/acats-3/tests/cc/cc1221b.ada: Likewise. + * ada/acats-3/tests/cc/cc1221c.ada: Likewise. + * ada/acats-3/tests/cc/cc1221d.ada: Likewise. + * ada/acats-3/tests/cc/cc1222a.ada: Likewise. + * ada/acats-3/tests/cc/cc1223a.ada: Likewise. + * ada/acats-3/tests/cc/cc1224a.ada: Likewise. + * ada/acats-3/tests/cc/cc1225a.tst: Likewise. + * ada/acats-3/tests/cc/cc1226b.ada: Likewise. + * ada/acats-3/tests/cc/cc1227a.ada: Likewise. + * ada/acats-3/tests/cc/cc1301a.ada: Likewise. + * ada/acats-3/tests/cc/cc1302a.ada: Likewise. + * ada/acats-3/tests/cc/cc1304a.ada: Likewise. + * ada/acats-3/tests/cc/cc1304b.ada: Likewise. + * ada/acats-3/tests/cc/cc1307a.ada: Likewise. + * ada/acats-3/tests/cc/cc1307b.ada: Likewise. + * ada/acats-3/tests/cc/cc1308a.ada: Likewise. + * ada/acats-3/tests/cc/cc1310a.ada: Likewise. + * ada/acats-3/tests/cc/cc1311a.ada: Likewise. + * ada/acats-3/tests/cc/cc1311b.ada: Likewise. + * ada/acats-3/tests/cc/cc2002a.ada: Likewise. + * ada/acats-3/tests/cc/cc30001.a: Likewise. + * ada/acats-3/tests/cc/cc30002.a: Likewise. + * ada/acats-3/tests/cc/cc30003.a: Likewise. + * ada/acats-3/tests/cc/cc30004.a: Likewise. + * ada/acats-3/tests/cc/cc3004a.ada: Likewise. + * ada/acats-3/tests/cc/cc3007a.ada: Likewise. + * ada/acats-3/tests/cc/cc3007b.ada: Likewise. + * ada/acats-3/tests/cc/cc3011a.ada: Likewise. + * ada/acats-3/tests/cc/cc3011d.ada: Likewise. + * ada/acats-3/tests/cc/cc3012a.ada: Likewise. + * ada/acats-3/tests/cc/cc3015a.ada: Likewise. + * ada/acats-3/tests/cc/cc3016b.ada: Likewise. + * ada/acats-3/tests/cc/cc3016c.ada: Likewise. + * ada/acats-3/tests/cc/cc3016f.ada: Likewise. + * ada/acats-3/tests/cc/cc3016i.ada: Likewise. + * ada/acats-3/tests/cc/cc3017b.ada: Likewise. + * ada/acats-3/tests/cc/cc3017c.ada: Likewise. + * ada/acats-3/tests/cc/cc3019a.ada: Likewise. + * ada/acats-3/tests/cc/cc3019b0.ada: Likewise. + * ada/acats-3/tests/cc/cc3019b1.ada: Likewise. + * ada/acats-3/tests/cc/cc3019b2.ada: Likewise. + * ada/acats-3/tests/cc/cc3019c0.ada: Likewise. + * ada/acats-3/tests/cc/cc3019c1.ada: Likewise. + * ada/acats-3/tests/cc/cc3019c2.ada: Likewise. + * ada/acats-3/tests/cc/cc3106b.ada: Likewise. + * ada/acats-3/tests/cc/cc3120a.ada: Likewise. + * ada/acats-3/tests/cc/cc3120b.ada: Likewise. + * ada/acats-3/tests/cc/cc3121a.ada: Likewise. + * ada/acats-3/tests/cc/cc3123a.ada: Likewise. + * ada/acats-3/tests/cc/cc3125a.ada: Likewise. + * ada/acats-3/tests/cc/cc3125b.ada: Likewise. + * ada/acats-3/tests/cc/cc3125c.ada: Likewise. + * ada/acats-3/tests/cc/cc3125d.ada: Likewise. + * ada/acats-3/tests/cc/cc3126a.ada: Likewise. + * ada/acats-3/tests/cc/cc3127a.ada: Likewise. + * ada/acats-3/tests/cc/cc3128a.ada: Likewise. + * ada/acats-3/tests/cc/cc3203a.ada: Likewise. + * ada/acats-3/tests/cc/cc3207b.ada: Likewise. + * ada/acats-3/tests/cc/cc3220a.ada: Likewise. + * ada/acats-3/tests/cc/cc3221a.ada: Likewise. + * ada/acats-3/tests/cc/cc3222a.ada: Likewise. + * ada/acats-3/tests/cc/cc3223a.ada: Likewise. + * ada/acats-3/tests/cc/cc3224a.ada: Likewise. + * ada/acats-3/tests/cc/cc3225a.ada: Likewise. + * ada/acats-3/tests/cc/cc3230a.ada: Likewise. + * ada/acats-3/tests/cc/cc3231a.ada: Likewise. + * ada/acats-3/tests/cc/cc3232a.ada: Likewise. + * ada/acats-3/tests/cc/cc3233a.ada: Likewise. + * ada/acats-3/tests/cc/cc3234a.ada: Likewise. + * ada/acats-3/tests/cc/cc3235a.ada: Likewise. + * ada/acats-3/tests/cc/cc3236a.ada: Likewise. + * ada/acats-3/tests/cc/cc3240a.ada: Likewise. + * ada/acats-3/tests/cc/cc3305a.ada: Likewise. + * ada/acats-3/tests/cc/cc3305b.ada: Likewise. + * ada/acats-3/tests/cc/cc3305c.ada: Likewise. + * ada/acats-3/tests/cc/cc3305d.ada: Likewise. + * ada/acats-3/tests/cc/cc3601a.ada: Likewise. + * ada/acats-3/tests/cc/cc3601c.ada: Likewise. + * ada/acats-3/tests/cc/cc3602a.ada: Likewise. + * ada/acats-3/tests/cc/cc3603a.ada: Likewise. + * ada/acats-3/tests/cc/cc3605a.ada: Likewise. + * ada/acats-3/tests/cc/cc3606a.ada: Likewise. + * ada/acats-3/tests/cc/cc3606b.ada: Likewise. + * ada/acats-3/tests/cc/cc3607b.ada: Likewise. + * ada/acats-3/tests/cc/cc40001.a: Likewise. + * ada/acats-3/tests/cc/cc50001.a: Likewise. + * ada/acats-3/tests/cc/cc50a01.a: Likewise. + * ada/acats-3/tests/cc/cc50a02.a: Likewise. + * ada/acats-3/tests/cc/cc51001.a: Likewise. + * ada/acats-3/tests/cc/cc51002.a: Likewise. + * ada/acats-3/tests/cc/cc51003.a: Likewise. + * ada/acats-3/tests/cc/cc51004.a: Likewise. + * ada/acats-3/tests/cc/cc51006.a: Likewise. + * ada/acats-3/tests/cc/cc51007.a: Likewise. + * ada/acats-3/tests/cc/cc51008.a: Likewise. + * ada/acats-3/tests/cc/cc51a01.a: Likewise. + * ada/acats-3/tests/cc/cc51b03.a: Likewise. + * ada/acats-3/tests/cc/cc51d01.a: Likewise. + * ada/acats-3/tests/cc/cc51d02.a: Likewise. + * ada/acats-3/tests/cc/cc54001.a: Likewise. + * ada/acats-3/tests/cc/cc54002.a: Likewise. + * ada/acats-3/tests/cc/cc54003.a: Likewise. + * ada/acats-3/tests/cc/cc54004.a: Likewise. + * ada/acats-3/tests/cc/cc60001.a: Likewise. + * ada/acats-3/tests/cc/cc70001.a: Likewise. + * ada/acats-3/tests/cc/cc70002.a: Likewise. + * ada/acats-3/tests/cc/cc70003.a: Likewise. + * ada/acats-3/tests/cc/cc70a01.a: Likewise. + * ada/acats-3/tests/cc/cc70a02.a: Likewise. + * ada/acats-3/tests/cc/cc70b01.a: Likewise. + * ada/acats-3/tests/cc/cc70b02.a: Likewise. + * ada/acats-3/tests/cc/cc70c01.a: Likewise. + * ada/acats-3/tests/cc/cc70c02.a: Likewise. + * ada/acats-3/tests/cd/cd10001.a: Likewise. + * ada/acats-3/tests/cd/cd10002.a: Likewise. + * ada/acats-3/tests/cd/cd1009a.ada: Likewise. + * ada/acats-3/tests/cd/cd1009b.ada: Likewise. + * ada/acats-3/tests/cd/cd1009d.ada: Likewise. + * ada/acats-3/tests/cd/cd1009e.ada: Likewise. + * ada/acats-3/tests/cd/cd1009f.ada: Likewise. + * ada/acats-3/tests/cd/cd1009g.ada: Likewise. + * ada/acats-3/tests/cd/cd1009h.ada: Likewise. + * ada/acats-3/tests/cd/cd1009i.ada: Likewise. + * ada/acats-3/tests/cd/cd1009j.ada: Likewise. + * ada/acats-3/tests/cd/cd1009k.tst: Likewise. + * ada/acats-3/tests/cd/cd1009l.ada: Likewise. + * ada/acats-3/tests/cd/cd1009m.ada: Likewise. + * ada/acats-3/tests/cd/cd1009n.ada: Likewise. + * ada/acats-3/tests/cd/cd1009o.ada: Likewise. + * ada/acats-3/tests/cd/cd1009p.ada: Likewise. + * ada/acats-3/tests/cd/cd1009q.ada: Likewise. + * ada/acats-3/tests/cd/cd1009r.ada: Likewise. + * ada/acats-3/tests/cd/cd1009s.ada: Likewise. + * ada/acats-3/tests/cd/cd1009t.tst: Likewise. + * ada/acats-3/tests/cd/cd1009u.tst: Likewise. + * ada/acats-3/tests/cd/cd1009v.ada: Likewise. + * ada/acats-3/tests/cd/cd1009w.ada: Likewise. + * ada/acats-3/tests/cd/cd1009x.ada: Likewise. + * ada/acats-3/tests/cd/cd1009y.ada: Likewise. + * ada/acats-3/tests/cd/cd1009z.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03a.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03b.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03c.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03e.tst: Likewise. + * ada/acats-3/tests/cd/cd1c03f.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03g.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03h.ada: Likewise. + * ada/acats-3/tests/cd/cd1c03i.ada: Likewise. + * ada/acats-3/tests/cd/cd1c04a.ada: Likewise. + * ada/acats-3/tests/cd/cd1c04d.ada: Likewise. + * ada/acats-3/tests/cd/cd1c04e.ada: Likewise. + * ada/acats-3/tests/cd/cd1c06a.tst: Likewise. + * ada/acats-3/tests/cd/cd20001.a: Likewise. + * ada/acats-3/tests/cd/cd2a21a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a21c.ada: Likewise. + * ada/acats-3/tests/cd/cd2a21e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a22a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a22e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a22i.ada: Likewise. + * ada/acats-3/tests/cd/cd2a22j.ada: Likewise. + * ada/acats-3/tests/cd/cd2a23a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a23e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a24a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a24e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a24i.ada: Likewise. + * ada/acats-3/tests/cd/cd2a24j.ada: Likewise. + * ada/acats-3/tests/cd/cd2a31a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a31c.ada: Likewise. + * ada/acats-3/tests/cd/cd2a31e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32c.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32g.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32i.ada: Likewise. + * ada/acats-3/tests/cd/cd2a32j.ada: Likewise. + * ada/acats-3/tests/cd/cd2a51a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a53a.ada: Likewise. + * ada/acats-3/tests/cd/cd2a53e.ada: Likewise. + * ada/acats-3/tests/cd/cd2a83c.tst: Likewise. + * ada/acats-3/tests/cd/cd2a91c.tst: Likewise. + * ada/acats-3/tests/cd/cd2b11b.ada: Likewise. + * ada/acats-3/tests/cd/cd2b11d.ada: Likewise. + * ada/acats-3/tests/cd/cd2b11e.ada: Likewise. + * ada/acats-3/tests/cd/cd2b11f.ada: Likewise. + * ada/acats-3/tests/cd/cd2b16a.ada: Likewise. + * ada/acats-3/tests/cd/cd2c11a.tst: Likewise. + * ada/acats-3/tests/cd/cd2c11d.tst: Likewise. + * ada/acats-3/tests/cd/cd2d11a.ada: Likewise. + * ada/acats-3/tests/cd/cd2d13a.ada: Likewise. + * ada/acats-3/tests/cd/cd30001.a: Likewise. + * ada/acats-3/tests/cd/cd30002.a: Likewise. + * ada/acats-3/tests/cd/cd30003.a: Likewise. + * ada/acats-3/tests/cd/cd30004.a: Likewise. + * ada/acats-3/tests/cd/cd300050.am: Likewise. + * ada/acats-3/tests/cd/cd300051.c: Likewise. + * ada/acats-3/tests/cd/cd30008.a: Likewise. + * ada/acats-3/tests/cd/cd30009.a: Likewise. + * ada/acats-3/tests/cd/cd30011.a: Likewise. + * ada/acats-3/tests/cd/cd30012.a: Likewise. + * ada/acats-3/tests/cd/cd3014a.ada: Likewise. + * ada/acats-3/tests/cd/cd3014c.ada: Likewise. + * ada/acats-3/tests/cd/cd3014d.ada: Likewise. + * ada/acats-3/tests/cd/cd3014f.ada: Likewise. + * ada/acats-3/tests/cd/cd3015a.ada: Likewise. + * ada/acats-3/tests/cd/cd3015c.ada: Likewise. + * ada/acats-3/tests/cd/cd3015e.ada: Likewise. + * ada/acats-3/tests/cd/cd3015f.ada: Likewise. + * ada/acats-3/tests/cd/cd3015g.ada: Likewise. + * ada/acats-3/tests/cd/cd3015h.ada: Likewise. + * ada/acats-3/tests/cd/cd3015i.ada: Likewise. + * ada/acats-3/tests/cd/cd3015k.ada: Likewise. + * ada/acats-3/tests/cd/cd3021a.ada: Likewise. + * ada/acats-3/tests/cd/cd33001.a: Likewise. + * ada/acats-3/tests/cd/cd33002.a: Likewise. + * ada/acats-3/tests/cd/cd40001.a: Likewise. + * ada/acats-3/tests/cd/cd4031a.ada: Likewise. + * ada/acats-3/tests/cd/cd4041a.tst: Likewise. + * ada/acats-3/tests/cd/cd4051a.ada: Likewise. + * ada/acats-3/tests/cd/cd4051b.ada: Likewise. + * ada/acats-3/tests/cd/cd4051c.ada: Likewise. + * ada/acats-3/tests/cd/cd4051d.ada: Likewise. + * ada/acats-3/tests/cd/cd5003a.ada: Likewise. + * ada/acats-3/tests/cd/cd5003b.ada: Likewise. + * ada/acats-3/tests/cd/cd5003c.ada: Likewise. + * ada/acats-3/tests/cd/cd5003d.ada: Likewise. + * ada/acats-3/tests/cd/cd5003e.ada: Likewise. + * ada/acats-3/tests/cd/cd5003f.ada: Likewise. + * ada/acats-3/tests/cd/cd5003g.ada: Likewise. + * ada/acats-3/tests/cd/cd5003h.ada: Likewise. + * ada/acats-3/tests/cd/cd5003i.ada: Likewise. + * ada/acats-3/tests/cd/cd5011a.ada: Likewise. + * ada/acats-3/tests/cd/cd5011c.ada: Likewise. + * ada/acats-3/tests/cd/cd5011e.ada: Likewise. + * ada/acats-3/tests/cd/cd5011g.ada: Likewise. + * ada/acats-3/tests/cd/cd5011i.ada: Likewise. + * ada/acats-3/tests/cd/cd5011k.ada: Likewise. + * ada/acats-3/tests/cd/cd5011m.ada: Likewise. + * ada/acats-3/tests/cd/cd5011q.ada: Likewise. + * ada/acats-3/tests/cd/cd5011s.ada: Likewise. + * ada/acats-3/tests/cd/cd5012a.ada: Likewise. + * ada/acats-3/tests/cd/cd5012b.ada: Likewise. + * ada/acats-3/tests/cd/cd5012e.ada: Likewise. + * ada/acats-3/tests/cd/cd5012f.ada: Likewise. + * ada/acats-3/tests/cd/cd5012i.ada: Likewise. + * ada/acats-3/tests/cd/cd5012m.ada: Likewise. + * ada/acats-3/tests/cd/cd5013a.ada: Likewise. + * ada/acats-3/tests/cd/cd5013c.ada: Likewise. + * ada/acats-3/tests/cd/cd5013e.ada: Likewise. + * ada/acats-3/tests/cd/cd5013g.ada: Likewise. + * ada/acats-3/tests/cd/cd5013i.ada: Likewise. + * ada/acats-3/tests/cd/cd5013k.ada: Likewise. + * ada/acats-3/tests/cd/cd5013m.ada: Likewise. + * ada/acats-3/tests/cd/cd5013o.ada: Likewise. + * ada/acats-3/tests/cd/cd5014a.ada: Likewise. + * ada/acats-3/tests/cd/cd5014c.ada: Likewise. + * ada/acats-3/tests/cd/cd5014e.ada: Likewise. + * ada/acats-3/tests/cd/cd5014g.ada: Likewise. + * ada/acats-3/tests/cd/cd5014i.ada: Likewise. + * ada/acats-3/tests/cd/cd5014k.ada: Likewise. + * ada/acats-3/tests/cd/cd5014m.ada: Likewise. + * ada/acats-3/tests/cd/cd5014o.ada: Likewise. + * ada/acats-3/tests/cd/cd5014t.ada: Likewise. + * ada/acats-3/tests/cd/cd5014v.ada: Likewise. + * ada/acats-3/tests/cd/cd5014x.ada: Likewise. + * ada/acats-3/tests/cd/cd5014y.ada: Likewise. + * ada/acats-3/tests/cd/cd5014z.ada: Likewise. + * ada/acats-3/tests/cd/cd70001.a: Likewise. + * ada/acats-3/tests/cd/cd7002a.ada: Likewise. + * ada/acats-3/tests/cd/cd7007b.ada: Likewise. + * ada/acats-3/tests/cd/cd7101d.ada: Likewise. + * ada/acats-3/tests/cd/cd7101e.dep: Likewise. + * ada/acats-3/tests/cd/cd7101f.dep: Likewise. + * ada/acats-3/tests/cd/cd7101g.tst: Likewise. + * ada/acats-3/tests/cd/cd7103d.ada: Likewise. + * ada/acats-3/tests/cd/cd7202a.ada: Likewise. + * ada/acats-3/tests/cd/cd7204b.ada: Likewise. + * ada/acats-3/tests/cd/cd7204c.ada: Likewise. + * ada/acats-3/tests/cd/cd72a01.a: Likewise. + * ada/acats-3/tests/cd/cd72a02.a: Likewise. + * ada/acats-3/tests/cd/cd7305a.ada: Likewise. + * ada/acats-3/tests/cd/cd90001.a: Likewise. + * ada/acats-3/tests/cd/cd92001.a: Likewise. + * ada/acats-3/tests/cd/cda201a.ada: Likewise. + * ada/acats-3/tests/cd/cda201b.ada: Likewise. + * ada/acats-3/tests/cd/cda201c.ada: Likewise. + * ada/acats-3/tests/cd/cda201e.ada: Likewise. + * ada/acats-3/tests/cd/cdb0001.a: Likewise. + * ada/acats-3/tests/cd/cdb0002.a: Likewise. + * ada/acats-3/tests/cd/cdb0a01.a: Likewise. + * ada/acats-3/tests/cd/cdb0a02.a: Likewise. + * ada/acats-3/tests/cd/cdd1001.a: Likewise. + * ada/acats-3/tests/cd/cdd2001.a: Likewise. + * ada/acats-3/tests/cd/cdd2a01.a: Likewise. + * ada/acats-3/tests/cd/cdd2a02.a: Likewise. + * ada/acats-3/tests/cd/cdd2a03.a: Likewise. + * ada/acats-3/tests/cd/cdd2b01.a: Likewise. + * ada/acats-3/tests/cd/cdd2b03.a: Likewise. + * ada/acats-3/tests/cd/cde0001.a: Likewise. + * ada/acats-3/tests/ce/ce2102a.ada: Likewise. + * ada/acats-3/tests/ce/ce2102b.ada: Likewise. + * ada/acats-3/tests/ce/ce2102c.tst: Likewise. + * ada/acats-3/tests/ce/ce2102d.ada: Likewise. + * ada/acats-3/tests/ce/ce2102e.ada: Likewise. + * ada/acats-3/tests/ce/ce2102f.ada: Likewise. + * ada/acats-3/tests/ce/ce2102g.ada: Likewise. + * ada/acats-3/tests/ce/ce2102h.tst: Likewise. + * ada/acats-3/tests/ce/ce2102i.ada: Likewise. + * ada/acats-3/tests/ce/ce2102j.ada: Likewise. + * ada/acats-3/tests/ce/ce2102k.ada: Likewise. + * ada/acats-3/tests/ce/ce2102l.ada: Likewise. + * ada/acats-3/tests/ce/ce2102m.ada: Likewise. + * ada/acats-3/tests/ce/ce2102n.ada: Likewise. + * ada/acats-3/tests/ce/ce2102o.ada: Likewise. + * ada/acats-3/tests/ce/ce2102p.ada: Likewise. + * ada/acats-3/tests/ce/ce2102q.ada: Likewise. + * ada/acats-3/tests/ce/ce2102r.ada: Likewise. + * ada/acats-3/tests/ce/ce2102s.ada: Likewise. + * ada/acats-3/tests/ce/ce2102t.ada: Likewise. + * ada/acats-3/tests/ce/ce2102u.ada: Likewise. + * ada/acats-3/tests/ce/ce2102v.ada: Likewise. + * ada/acats-3/tests/ce/ce2102w.ada: Likewise. + * ada/acats-3/tests/ce/ce2102x.ada: Likewise. + * ada/acats-3/tests/ce/ce2102y.ada: Likewise. + * ada/acats-3/tests/ce/ce2103a.tst: Likewise. + * ada/acats-3/tests/ce/ce2103b.tst: Likewise. + * ada/acats-3/tests/ce/ce2103c.ada: Likewise. + * ada/acats-3/tests/ce/ce2103d.ada: Likewise. + * ada/acats-3/tests/ce/ce2104a.ada: Likewise. + * ada/acats-3/tests/ce/ce2104b.ada: Likewise. + * ada/acats-3/tests/ce/ce2104c.ada: Likewise. + * ada/acats-3/tests/ce/ce2104d.ada: Likewise. + * ada/acats-3/tests/ce/ce2106a.ada: Likewise. + * ada/acats-3/tests/ce/ce2106b.ada: Likewise. + * ada/acats-3/tests/ce/ce2108e.ada: Likewise. + * ada/acats-3/tests/ce/ce2108f.ada: Likewise. + * ada/acats-3/tests/ce/ce2108g.ada: Likewise. + * ada/acats-3/tests/ce/ce2108h.ada: Likewise. + * ada/acats-3/tests/ce/ce2109a.ada: Likewise. + * ada/acats-3/tests/ce/ce2109b.ada: Likewise. + * ada/acats-3/tests/ce/ce2109c.ada: Likewise. + * ada/acats-3/tests/ce/ce2110a.ada: Likewise. + * ada/acats-3/tests/ce/ce2110c.ada: Likewise. + * ada/acats-3/tests/ce/ce2111a.ada: Likewise. + * ada/acats-3/tests/ce/ce2111b.ada: Likewise. + * ada/acats-3/tests/ce/ce2111c.ada: Likewise. + * ada/acats-3/tests/ce/ce2111e.ada: Likewise. + * ada/acats-3/tests/ce/ce2111f.ada: Likewise. + * ada/acats-3/tests/ce/ce2111g.ada: Likewise. + * ada/acats-3/tests/ce/ce2111i.ada: Likewise. + * ada/acats-3/tests/ce/ce2201a.ada: Likewise. + * ada/acats-3/tests/ce/ce2201b.ada: Likewise. + * ada/acats-3/tests/ce/ce2201c.ada: Likewise. + * ada/acats-3/tests/ce/ce2201d.dep: Likewise. + * ada/acats-3/tests/ce/ce2201e.dep: Likewise. + * ada/acats-3/tests/ce/ce2201f.ada: Likewise. + * ada/acats-3/tests/ce/ce2201g.ada: Likewise. + * ada/acats-3/tests/ce/ce2201h.ada: Likewise. + * ada/acats-3/tests/ce/ce2201i.ada: Likewise. + * ada/acats-3/tests/ce/ce2201j.ada: Likewise. + * ada/acats-3/tests/ce/ce2201k.ada: Likewise. + * ada/acats-3/tests/ce/ce2201l.ada: Likewise. + * ada/acats-3/tests/ce/ce2201m.ada: Likewise. + * ada/acats-3/tests/ce/ce2201n.ada: Likewise. + * ada/acats-3/tests/ce/ce2202a.ada: Likewise. + * ada/acats-3/tests/ce/ce2203a.tst: Likewise. + * ada/acats-3/tests/ce/ce2204a.ada: Likewise. + * ada/acats-3/tests/ce/ce2204b.ada: Likewise. + * ada/acats-3/tests/ce/ce2204c.ada: Likewise. + * ada/acats-3/tests/ce/ce2204d.ada: Likewise. + * ada/acats-3/tests/ce/ce2205a.ada: Likewise. + * ada/acats-3/tests/ce/ce2206a.ada: Likewise. + * ada/acats-3/tests/ce/ce2208b.ada: Likewise. + * ada/acats-3/tests/ce/ce2401a.ada: Likewise. + * ada/acats-3/tests/ce/ce2401b.ada: Likewise. + * ada/acats-3/tests/ce/ce2401c.ada: Likewise. + * ada/acats-3/tests/ce/ce2401e.ada: Likewise. + * ada/acats-3/tests/ce/ce2401f.ada: Likewise. + * ada/acats-3/tests/ce/ce2401h.ada: Likewise. + * ada/acats-3/tests/ce/ce2401i.ada: Likewise. + * ada/acats-3/tests/ce/ce2401j.ada: Likewise. + * ada/acats-3/tests/ce/ce2401k.ada: Likewise. + * ada/acats-3/tests/ce/ce2401l.ada: Likewise. + * ada/acats-3/tests/ce/ce2402a.ada: Likewise. + * ada/acats-3/tests/ce/ce2403a.tst: Likewise. + * ada/acats-3/tests/ce/ce2404a.ada: Likewise. + * ada/acats-3/tests/ce/ce2404b.ada: Likewise. + * ada/acats-3/tests/ce/ce2405b.ada: Likewise. + * ada/acats-3/tests/ce/ce2406a.ada: Likewise. + * ada/acats-3/tests/ce/ce2407a.ada: Likewise. + * ada/acats-3/tests/ce/ce2407b.ada: Likewise. + * ada/acats-3/tests/ce/ce2408a.ada: Likewise. + * ada/acats-3/tests/ce/ce2408b.ada: Likewise. + * ada/acats-3/tests/ce/ce2409a.ada: Likewise. + * ada/acats-3/tests/ce/ce2409b.ada: Likewise. + * ada/acats-3/tests/ce/ce2410a.ada: Likewise. + * ada/acats-3/tests/ce/ce2410b.ada: Likewise. + * ada/acats-3/tests/ce/ce2411a.ada: Likewise. + * ada/acats-3/tests/ce/ce3002b.tst: Likewise. + * ada/acats-3/tests/ce/ce3002c.tst: Likewise. + * ada/acats-3/tests/ce/ce3002d.ada: Likewise. + * ada/acats-3/tests/ce/ce3002f.ada: Likewise. + * ada/acats-3/tests/ce/ce3102a.ada: Likewise. + * ada/acats-3/tests/ce/ce3102b.tst: Likewise. + * ada/acats-3/tests/ce/ce3102d.ada: Likewise. + * ada/acats-3/tests/ce/ce3102e.ada: Likewise. + * ada/acats-3/tests/ce/ce3102f.ada: Likewise. + * ada/acats-3/tests/ce/ce3102g.ada: Likewise. + * ada/acats-3/tests/ce/ce3102h.ada: Likewise. + * ada/acats-3/tests/ce/ce3102i.ada: Likewise. + * ada/acats-3/tests/ce/ce3102j.ada: Likewise. + * ada/acats-3/tests/ce/ce3102k.ada: Likewise. + * ada/acats-3/tests/ce/ce3103a.ada: Likewise. + * ada/acats-3/tests/ce/ce3104a.ada: Likewise. + * ada/acats-3/tests/ce/ce3104b.ada: Likewise. + * ada/acats-3/tests/ce/ce3104c.ada: Likewise. + * ada/acats-3/tests/ce/ce3106a.ada: Likewise. + * ada/acats-3/tests/ce/ce3106b.ada: Likewise. + * ada/acats-3/tests/ce/ce3107a.tst: Likewise. + * ada/acats-3/tests/ce/ce3107b.ada: Likewise. + * ada/acats-3/tests/ce/ce3108a.ada: Likewise. + * ada/acats-3/tests/ce/ce3108b.ada: Likewise. + * ada/acats-3/tests/ce/ce3110a.ada: Likewise. + * ada/acats-3/tests/ce/ce3112c.ada: Likewise. + * ada/acats-3/tests/ce/ce3112d.ada: Likewise. + * ada/acats-3/tests/ce/ce3114a.ada: Likewise. + * ada/acats-3/tests/ce/ce3115a.ada: Likewise. + * ada/acats-3/tests/ce/ce3201a.ada: Likewise. + * ada/acats-3/tests/ce/ce3202a.ada: Likewise. + * ada/acats-3/tests/ce/ce3206a.ada: Likewise. + * ada/acats-3/tests/ce/ce3207a.ada: Likewise. + * ada/acats-3/tests/ce/ce3301a.ada: Likewise. + * ada/acats-3/tests/ce/ce3302a.ada: Likewise. + * ada/acats-3/tests/ce/ce3303a.ada: Likewise. + * ada/acats-3/tests/ce/ce3304a.tst: Likewise. + * ada/acats-3/tests/ce/ce3305a.ada: Likewise. + * ada/acats-3/tests/ce/ce3306a.ada: Likewise. + * ada/acats-3/tests/ce/ce3401a.ada: Likewise. + * ada/acats-3/tests/ce/ce3402a.ada: Likewise. + * ada/acats-3/tests/ce/ce3402c.ada: Likewise. + * ada/acats-3/tests/ce/ce3402d.ada: Likewise. + * ada/acats-3/tests/ce/ce3402e.ada: Likewise. + * ada/acats-3/tests/ce/ce3403a.ada: Likewise. + * ada/acats-3/tests/ce/ce3403b.ada: Likewise. + * ada/acats-3/tests/ce/ce3403c.ada: Likewise. + * ada/acats-3/tests/ce/ce3403d.ada: Likewise. + * ada/acats-3/tests/ce/ce3403e.ada: Likewise. + * ada/acats-3/tests/ce/ce3403f.ada: Likewise. + * ada/acats-3/tests/ce/ce3404a.ada: Likewise. + * ada/acats-3/tests/ce/ce3404b.ada: Likewise. + * ada/acats-3/tests/ce/ce3404c.ada: Likewise. + * ada/acats-3/tests/ce/ce3404d.ada: Likewise. + * ada/acats-3/tests/ce/ce3405a.ada: Likewise. + * ada/acats-3/tests/ce/ce3405c.ada: Likewise. + * ada/acats-3/tests/ce/ce3405d.ada: Likewise. + * ada/acats-3/tests/ce/ce3406a.ada: Likewise. + * ada/acats-3/tests/ce/ce3406b.ada: Likewise. + * ada/acats-3/tests/ce/ce3406c.ada: Likewise. + * ada/acats-3/tests/ce/ce3406d.ada: Likewise. + * ada/acats-3/tests/ce/ce3407a.ada: Likewise. + * ada/acats-3/tests/ce/ce3407b.ada: Likewise. + * ada/acats-3/tests/ce/ce3407c.ada: Likewise. + * ada/acats-3/tests/ce/ce3408a.ada: Likewise. + * ada/acats-3/tests/ce/ce3408b.ada: Likewise. + * ada/acats-3/tests/ce/ce3408c.ada: Likewise. + * ada/acats-3/tests/ce/ce3409a.ada: Likewise. + * ada/acats-3/tests/ce/ce3409b.ada: Likewise. + * ada/acats-3/tests/ce/ce3409c.ada: Likewise. + * ada/acats-3/tests/ce/ce3409d.ada: Likewise. + * ada/acats-3/tests/ce/ce3409e.ada: Likewise. + * ada/acats-3/tests/ce/ce3410a.ada: Likewise. + * ada/acats-3/tests/ce/ce3410b.ada: Likewise. + * ada/acats-3/tests/ce/ce3410c.ada: Likewise. + * ada/acats-3/tests/ce/ce3410d.ada: Likewise. + * ada/acats-3/tests/ce/ce3410e.ada: Likewise. + * ada/acats-3/tests/ce/ce3411a.ada: Likewise. + * ada/acats-3/tests/ce/ce3411c.ada: Likewise. + * ada/acats-3/tests/ce/ce3412a.ada: Likewise. + * ada/acats-3/tests/ce/ce3413a.ada: Likewise. + * ada/acats-3/tests/ce/ce3413b.ada: Likewise. + * ada/acats-3/tests/ce/ce3413c.ada: Likewise. + * ada/acats-3/tests/ce/ce3414a.ada: Likewise. + * ada/acats-3/tests/ce/ce3601a.ada: Likewise. + * ada/acats-3/tests/ce/ce3602a.ada: Likewise. + * ada/acats-3/tests/ce/ce3602b.ada: Likewise. + * ada/acats-3/tests/ce/ce3602c.ada: Likewise. + * ada/acats-3/tests/ce/ce3602d.ada: Likewise. + * ada/acats-3/tests/ce/ce3603a.ada: Likewise. + * ada/acats-3/tests/ce/ce3604a.ada: Likewise. + * ada/acats-3/tests/ce/ce3604b.ada: Likewise. + * ada/acats-3/tests/ce/ce3605a.ada: Likewise. + * ada/acats-3/tests/ce/ce3605b.ada: Likewise. + * ada/acats-3/tests/ce/ce3605c.ada: Likewise. + * ada/acats-3/tests/ce/ce3605d.ada: Likewise. + * ada/acats-3/tests/ce/ce3605e.ada: Likewise. + * ada/acats-3/tests/ce/ce3606a.ada: Likewise. + * ada/acats-3/tests/ce/ce3606b.ada: Likewise. + * ada/acats-3/tests/ce/ce3701a.ada: Likewise. + * ada/acats-3/tests/ce/ce3704a.ada: Likewise. + * ada/acats-3/tests/ce/ce3704b.ada: Likewise. + * ada/acats-3/tests/ce/ce3704c.ada: Likewise. + * ada/acats-3/tests/ce/ce3704d.ada: Likewise. + * ada/acats-3/tests/ce/ce3704e.ada: Likewise. + * ada/acats-3/tests/ce/ce3704f.ada: Likewise. + * ada/acats-3/tests/ce/ce3704m.ada: Likewise. + * ada/acats-3/tests/ce/ce3704n.ada: Likewise. + * ada/acats-3/tests/ce/ce3704o.ada: Likewise. + * ada/acats-3/tests/ce/ce3705a.ada: Likewise. + * ada/acats-3/tests/ce/ce3705b.ada: Likewise. + * ada/acats-3/tests/ce/ce3705c.ada: Likewise. + * ada/acats-3/tests/ce/ce3705d.ada: Likewise. + * ada/acats-3/tests/ce/ce3705e.ada: Likewise. + * ada/acats-3/tests/ce/ce3706c.ada: Likewise. + * ada/acats-3/tests/ce/ce3706d.ada: Likewise. + * ada/acats-3/tests/ce/ce3706f.ada: Likewise. + * ada/acats-3/tests/ce/ce3706g.ada: Likewise. + * ada/acats-3/tests/ce/ce3707a.ada: Likewise. + * ada/acats-3/tests/ce/ce3708a.ada: Likewise. + * ada/acats-3/tests/ce/ce3801a.ada: Likewise. + * ada/acats-3/tests/ce/ce3801b.ada: Likewise. + * ada/acats-3/tests/ce/ce3804a.ada: Likewise. + * ada/acats-3/tests/ce/ce3804b.ada: Likewise. + * ada/acats-3/tests/ce/ce3804c.ada: Likewise. + * ada/acats-3/tests/ce/ce3804d.ada: Likewise. + * ada/acats-3/tests/ce/ce3804e.ada: Likewise. + * ada/acats-3/tests/ce/ce3804f.ada: Likewise. + * ada/acats-3/tests/ce/ce3804g.ada: Likewise. + * ada/acats-3/tests/ce/ce3804h.ada: Likewise. + * ada/acats-3/tests/ce/ce3804i.ada: Likewise. + * ada/acats-3/tests/ce/ce3804j.ada: Likewise. + * ada/acats-3/tests/ce/ce3804m.ada: Likewise. + * ada/acats-3/tests/ce/ce3804o.ada: Likewise. + * ada/acats-3/tests/ce/ce3804p.ada: Likewise. + * ada/acats-3/tests/ce/ce3805a.ada: Likewise. + * ada/acats-3/tests/ce/ce3805b.ada: Likewise. + * ada/acats-3/tests/ce/ce3806a.ada: Likewise. + * ada/acats-3/tests/ce/ce3806b.ada: Likewise. + * ada/acats-3/tests/ce/ce3806c.ada: Likewise. + * ada/acats-3/tests/ce/ce3806d.ada: Likewise. + * ada/acats-3/tests/ce/ce3806e.ada: Likewise. + * ada/acats-3/tests/ce/ce3806f.ada: Likewise. + * ada/acats-3/tests/ce/ce3806g.ada: Likewise. + * ada/acats-3/tests/ce/ce3806h.ada: Likewise. + * ada/acats-3/tests/ce/ce3809a.ada: Likewise. + * ada/acats-3/tests/ce/ce3809b.ada: Likewise. + * ada/acats-3/tests/ce/ce3810a.ada: Likewise. + * ada/acats-3/tests/ce/ce3810b.ada: Likewise. + * ada/acats-3/tests/ce/ce3815a.ada: Likewise. + * ada/acats-3/tests/ce/ce3901a.ada: Likewise. + * ada/acats-3/tests/ce/ce3902b.ada: Likewise. + * ada/acats-3/tests/ce/ce3904a.ada: Likewise. + * ada/acats-3/tests/ce/ce3904b.ada: Likewise. + * ada/acats-3/tests/ce/ce3905a.ada: Likewise. + * ada/acats-3/tests/ce/ce3905b.ada: Likewise. + * ada/acats-3/tests/ce/ce3905c.ada: Likewise. + * ada/acats-3/tests/ce/ce3905l.ada: Likewise. + * ada/acats-3/tests/ce/ce3906a.ada: Likewise. + * ada/acats-3/tests/ce/ce3906b.ada: Likewise. + * ada/acats-3/tests/ce/ce3906c.ada: Likewise. + * ada/acats-3/tests/ce/ce3906d.ada: Likewise. + * ada/acats-3/tests/ce/ce3906e.ada: Likewise. + * ada/acats-3/tests/ce/ce3906f.ada: Likewise. + * ada/acats-3/tests/ce/ce3907a.ada: Likewise. + * ada/acats-3/tests/ce/ce3908a.ada: Likewise. + * ada/acats-3/tests/cxa/cxa3001.a: Likewise. + * ada/acats-3/tests/cxa/cxa3002.a: Likewise. + * ada/acats-3/tests/cxa/cxa3003.a: Likewise. + * ada/acats-3/tests/cxa/cxa3004.a: Likewise. + * ada/acats-3/tests/cxa/cxa4001.a: Likewise. + * ada/acats-3/tests/cxa/cxa4002.a: Likewise. + * ada/acats-3/tests/cxa/cxa4003.a: Likewise. + * ada/acats-3/tests/cxa/cxa4004.a: Likewise. + * ada/acats-3/tests/cxa/cxa4005.a: Likewise. + * ada/acats-3/tests/cxa/cxa4006.a: Likewise. + * ada/acats-3/tests/cxa/cxa4007.a: Likewise. + * ada/acats-3/tests/cxa/cxa4008.a: Likewise. + * ada/acats-3/tests/cxa/cxa4009.a: Likewise. + * ada/acats-3/tests/cxa/cxa4010.a: Likewise. + * ada/acats-3/tests/cxa/cxa4011.a: Likewise. + * ada/acats-3/tests/cxa/cxa4012.a: Likewise. + * ada/acats-3/tests/cxa/cxa4013.a: Likewise. + * ada/acats-3/tests/cxa/cxa4014.a: Likewise. + * ada/acats-3/tests/cxa/cxa4015.a: Likewise. + * ada/acats-3/tests/cxa/cxa4016.a: Likewise. + * ada/acats-3/tests/cxa/cxa4017.a: Likewise. + * ada/acats-3/tests/cxa/cxa4018.a: Likewise. + * ada/acats-3/tests/cxa/cxa4019.a: Likewise. + * ada/acats-3/tests/cxa/cxa4020.a: Likewise. + * ada/acats-3/tests/cxa/cxa4021.a: Likewise. + * ada/acats-3/tests/cxa/cxa4022.a: Likewise. + * ada/acats-3/tests/cxa/cxa4023.a: Likewise. + * ada/acats-3/tests/cxa/cxa4024.a: Likewise. + * ada/acats-3/tests/cxa/cxa4025.a: Likewise. + * ada/acats-3/tests/cxa/cxa4026.a: Likewise. + * ada/acats-3/tests/cxa/cxa4027.a: Likewise. + * ada/acats-3/tests/cxa/cxa4028.a: Likewise. + * ada/acats-3/tests/cxa/cxa4029.a: Likewise. + * ada/acats-3/tests/cxa/cxa4030.a: Likewise. + * ada/acats-3/tests/cxa/cxa4031.a: Likewise. + * ada/acats-3/tests/cxa/cxa4032.a: Likewise. + * ada/acats-3/tests/cxa/cxa4033.a: Likewise. + * ada/acats-3/tests/cxa/cxa4034.a: Likewise. + * ada/acats-3/tests/cxa/cxa4037.a: Likewise. + * ada/acats-3/tests/cxa/cxa5011.a: Likewise. + * ada/acats-3/tests/cxa/cxa5012.a: Likewise. + * ada/acats-3/tests/cxa/cxa5013.a: Likewise. + * ada/acats-3/tests/cxa/cxa5015.a: Likewise. + * ada/acats-3/tests/cxa/cxa5016.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a01.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a02.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a03.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a04.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a05.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a06.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a07.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a08.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a09.a: Likewise. + * ada/acats-3/tests/cxa/cxa5a10.a: Likewise. + * ada/acats-3/tests/cxa/cxa8001.a: Likewise. + * ada/acats-3/tests/cxa/cxa8002.a: Likewise. + * ada/acats-3/tests/cxa/cxa8003.a: Likewise. + * ada/acats-3/tests/cxa/cxa9001.a: Likewise. + * ada/acats-3/tests/cxa/cxa9002.a: Likewise. + * ada/acats-3/tests/cxa/cxaa001.a: Likewise. + * ada/acats-3/tests/cxa/cxaa002.a: Likewise. + * ada/acats-3/tests/cxa/cxaa003.a: Likewise. + * ada/acats-3/tests/cxa/cxaa004.a: Likewise. + * ada/acats-3/tests/cxa/cxaa005.a: Likewise. + * ada/acats-3/tests/cxa/cxaa006.a: Likewise. + * ada/acats-3/tests/cxa/cxaa007.a: Likewise. + * ada/acats-3/tests/cxa/cxaa008.a: Likewise. + * ada/acats-3/tests/cxa/cxaa009.a: Likewise. + * ada/acats-3/tests/cxa/cxaa010.a: Likewise. + * ada/acats-3/tests/cxa/cxaa011.a: Likewise. + * ada/acats-3/tests/cxa/cxaa012.a: Likewise. + * ada/acats-3/tests/cxa/cxaa013.a: Likewise. + * ada/acats-3/tests/cxa/cxaa014.a: Likewise. + * ada/acats-3/tests/cxa/cxaa015.a: Likewise. + * ada/acats-3/tests/cxa/cxaa016.a: Likewise. + * ada/acats-3/tests/cxa/cxaa017.a: Likewise. + * ada/acats-3/tests/cxa/cxaa018.a: Likewise. + * ada/acats-3/tests/cxa/cxaa019.a: Likewise. + * ada/acats-3/tests/cxa/cxaa020.a: Likewise. + * ada/acats-3/tests/cxa/cxaa021.a: Likewise. + * ada/acats-3/tests/cxa/cxaa022.a: Likewise. + * ada/acats-3/tests/cxa/cxab001.a: Likewise. + * ada/acats-3/tests/cxa/cxab002.au: Likewise. + * ada/acats-3/tests/cxa/cxab003.au: Likewise. + * ada/acats-3/tests/cxa/cxab004.au: Likewise. + * ada/acats-3/tests/cxa/cxab005.au: Likewise. + * ada/acats-3/tests/cxa/cxac001.a: Likewise. + * ada/acats-3/tests/cxa/cxac002.a: Likewise. + * ada/acats-3/tests/cxa/cxac003.a: Likewise. + * ada/acats-3/tests/cxa/cxac004.a: Likewise. + * ada/acats-3/tests/cxa/cxac005.a: Likewise. + * ada/acats-3/tests/cxa/cxac006.a: Likewise. + * ada/acats-3/tests/cxa/cxac008.a: Likewise. + * ada/acats-3/tests/cxa/cxaca01.a: Likewise. + * ada/acats-3/tests/cxa/cxaca02.a: Likewise. + * ada/acats-3/tests/cxa/cxacb01.a: Likewise. + * ada/acats-3/tests/cxa/cxacb02.a: Likewise. + * ada/acats-3/tests/cxa/cxacc01.a: Likewise. + * ada/acats-3/tests/cxa/cxaf001.a: Likewise. + * ada/acats-3/tests/cxa/cxag001.a: Likewise. + * ada/acats-3/tests/cxa/cxah001.a: Likewise. + * ada/acats-3/tests/cxa/cxah002.a: Likewise. + * ada/acats-3/tests/cxa/cxai001.a: Likewise. + * ada/acats-3/tests/cxa/cxai002.a: Likewise. + * ada/acats-3/tests/cxa/cxai003.a: Likewise. + * ada/acats-3/tests/cxa/cxai004.a: Likewise. + * ada/acats-3/tests/cxa/cxai005.a: Likewise. + * ada/acats-3/tests/cxa/cxai006.a: Likewise. + * ada/acats-3/tests/cxa/cxaia01.a: Likewise. + * ada/acats-3/tests/cxa/cxaia02.a: Likewise. + * ada/acats-3/tests/cxa/cxaia03.a: Likewise. + * ada/acats-3/tests/cxa/cxaia04.a: Likewise. + * ada/acats-3/tests/cxa/cxaia05.a: Likewise. + * ada/acats-3/tests/cxa/cxaia06.a: Likewise. + * ada/acats-3/tests/cxb/cxb2001.a: Likewise. + * ada/acats-3/tests/cxb/cxb2002.a: Likewise. + * ada/acats-3/tests/cxb/cxb2003.a: Likewise. + * ada/acats-3/tests/cxb/cxb3001.a: Likewise. + * ada/acats-3/tests/cxb/cxb3002.a: Likewise. + * ada/acats-3/tests/cxb/cxb3003.a: Likewise. + * ada/acats-3/tests/cxb/cxb30040.c: Likewise. + * ada/acats-3/tests/cxb/cxb30041.am: Likewise. + * ada/acats-3/tests/cxb/cxb3005.a: Likewise. + * ada/acats-3/tests/cxb/cxb30060.c: Likewise. + * ada/acats-3/tests/cxb/cxb30061.am: Likewise. + * ada/acats-3/tests/cxb/cxb3007.a: Likewise. + * ada/acats-3/tests/cxb/cxb3008.a: Likewise. + * ada/acats-3/tests/cxb/cxb3009.a: Likewise. + * ada/acats-3/tests/cxb/cxb3010.a: Likewise. + * ada/acats-3/tests/cxb/cxb3011.a: Likewise. + * ada/acats-3/tests/cxb/cxb3012.a: Likewise. + * ada/acats-3/tests/cxb/cxb30130.c: Likewise. + * ada/acats-3/tests/cxb/cxb30131.c: Likewise. + * ada/acats-3/tests/cxb/cxb30132.am: Likewise. + * ada/acats-3/tests/cxb/cxb3014.a: Likewise. + * ada/acats-3/tests/cxb/cxb3015.a: Likewise. + * ada/acats-3/tests/cxb/cxb3016.a: Likewise. + * ada/acats-3/tests/cxb/cxb30170.c: Likewise. + * ada/acats-3/tests/cxb/cxb30171.a: Likewise. + * ada/acats-3/tests/cxb/cxb30172.am: Likewise. + * ada/acats-3/tests/cxb/cxb30230.c: Likewise. + * ada/acats-3/tests/cxb/cxb30231.am: Likewise. + * ada/acats-3/tests/cxb/cxb4001.a: Likewise. + * ada/acats-3/tests/cxb/cxb4002.a: Likewise. + * ada/acats-3/tests/cxb/cxb4003.a: Likewise. + * ada/acats-3/tests/cxb/cxb4004.a: Likewise. + * ada/acats-3/tests/cxb/cxb4005.a: Likewise. + * ada/acats-3/tests/cxb/cxb4006.a: Likewise. + * ada/acats-3/tests/cxb/cxb4007.a: Likewise. + * ada/acats-3/tests/cxb/cxb4008.a: Likewise. + * ada/acats-3/tests/cxb/cxb5001.a: Likewise. + * ada/acats-3/tests/cxb/cxb5002.a: Likewise. + * ada/acats-3/tests/cxb/cxb5003.a: Likewise. + * ada/acats-3/tests/cxf/cxf1001.a: Likewise. + * ada/acats-3/tests/cxf/cxf2001.a: Likewise. + * ada/acats-3/tests/cxf/cxf2002.a: Likewise. + * ada/acats-3/tests/cxf/cxf2003.a: Likewise. + * ada/acats-3/tests/cxf/cxf2004.a: Likewise. + * ada/acats-3/tests/cxf/cxf2005.a: Likewise. + * ada/acats-3/tests/cxf/cxf2a01.a: Likewise. + * ada/acats-3/tests/cxf/cxf2a02.a: Likewise. + * ada/acats-3/tests/cxf/cxf3001.a: Likewise. + * ada/acats-3/tests/cxf/cxf3002.a: Likewise. + * ada/acats-3/tests/cxf/cxf3003.a: Likewise. + * ada/acats-3/tests/cxf/cxf3004.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a01.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a02.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a03.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a04.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a05.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a06.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a07.a: Likewise. + * ada/acats-3/tests/cxf/cxf3a08.a: Likewise. + * ada/acats-3/tests/cxg/cxg1001.a: Likewise. + * ada/acats-3/tests/cxg/cxg1002.a: Likewise. + * ada/acats-3/tests/cxg/cxg1003.a: Likewise. + * ada/acats-3/tests/cxg/cxg1004.a: Likewise. + * ada/acats-3/tests/cxg/cxg1005.a: Likewise. + * ada/acats-3/tests/cxg/cxg2001.a: Likewise. + * ada/acats-3/tests/cxg/cxg2002.a: Likewise. + * ada/acats-3/tests/cxg/cxg2003.a: Likewise. + * ada/acats-3/tests/cxg/cxg2004.a: Likewise. + * ada/acats-3/tests/cxg/cxg2005.a: Likewise. + * ada/acats-3/tests/cxg/cxg2006.a: Likewise. + * ada/acats-3/tests/cxg/cxg2007.a: Likewise. + * ada/acats-3/tests/cxg/cxg2008.a: Likewise. + * ada/acats-3/tests/cxg/cxg2009.a: Likewise. + * ada/acats-3/tests/cxg/cxg2010.a: Likewise. + * ada/acats-3/tests/cxg/cxg2011.a: Likewise. + * ada/acats-3/tests/cxg/cxg2012.a: Likewise. + * ada/acats-3/tests/cxg/cxg2013.a: Likewise. + * ada/acats-3/tests/cxg/cxg2014.a: Likewise. + * ada/acats-3/tests/cxg/cxg2015.a: Likewise. + * ada/acats-3/tests/cxg/cxg2016.a: Likewise. + * ada/acats-3/tests/cxg/cxg2017.a: Likewise. + * ada/acats-3/tests/cxg/cxg2018.a: Likewise. + * ada/acats-3/tests/cxg/cxg2019.a: Likewise. + * ada/acats-3/tests/cxg/cxg2020.a: Likewise. + * ada/acats-3/tests/cxg/cxg2021.a: Likewise. + * ada/acats-3/tests/cxg/cxg2022.a: Likewise. + * ada/acats-3/tests/cxg/cxg2023.a: Likewise. + * ada/acats-3/tests/cxg/cxg2024.a: Likewise. + * ada/acats-3/tests/cxh/cxh3001.a: Likewise. + * ada/acats-3/tests/cxh/cxh3002.a: Likewise. + * ada/acats-3/tests/cxh/cxh30030.a: Likewise. + * ada/acats-3/tests/cxh/cxh30031.am: Likewise. + * ada/acats-3/tests/cz/cz1101a.ada: Likewise. + * ada/acats-3/tests/cz/cz1102a.ada: Likewise. + * ada/acats-3/tests/cz/cz1103a.ada: Likewise. + * ada/acats-3/tests/d/d4a002a.ada: Likewise. + * ada/acats-3/tests/d/d4a002b.ada: Likewise. + * ada/acats-3/tests/d/d4a004a.ada: Likewise. + * ada/acats-3/tests/d/d4a004b.ada: Likewise. + * ada/acats-3/tests/e/e28002b.ada: Likewise. + * ada/acats-3/tests/e/e28005d.ada: Likewise. + * ada/acats-3/tests/e/e52103y.ada: Likewise. + * ada/acats-3/tests/e/eb4011a.ada: Likewise. + * ada/acats-3/tests/e/eb4012a.ada: Likewise. + * ada/acats-3/tests/e/eb4014a.ada: Likewise. + * ada/acats-3/tests/e/ee3203a.ada: Likewise. + * ada/acats-3/tests/e/ee3204a.ada: Likewise. + * ada/acats-3/tests/e/ee3402b.ada: Likewise. + * ada/acats-3/tests/e/ee3409f.ada: Likewise. + * ada/acats-3/tests/e/ee3412c.ada: Likewise. + * ada/acats-3/tests/l/la140010.a: Likewise. + * ada/acats-3/tests/l/la140011.am: Likewise. + * ada/acats-3/tests/l/la140012.a: Likewise. + * ada/acats-3/tests/l/la140020.a: Likewise. + * ada/acats-3/tests/l/la140021.am: Likewise. + * ada/acats-3/tests/l/la140022.a: Likewise. + * ada/acats-3/tests/l/la140030.a: Likewise. + * ada/acats-3/tests/l/la140031.a: Likewise. + * ada/acats-3/tests/l/la140032.am: Likewise. + * ada/acats-3/tests/l/la140033.a: Likewise. + * ada/acats-3/tests/l/la140040.a: Likewise. + * ada/acats-3/tests/l/la140041.am: Likewise. + * ada/acats-3/tests/l/la140042.a: Likewise. + * ada/acats-3/tests/l/la140050.a: Likewise. + * ada/acats-3/tests/l/la140051.a: Likewise. + * ada/acats-3/tests/l/la140052.am: Likewise. + * ada/acats-3/tests/l/la140053.a: Likewise. + * ada/acats-3/tests/l/la140060.a: Likewise. + * ada/acats-3/tests/l/la140061.a: Likewise. + * ada/acats-3/tests/l/la140062.am: Likewise. + * ada/acats-3/tests/l/la140063.a: Likewise. + * ada/acats-3/tests/l/la140070.a: Likewise. + * ada/acats-3/tests/l/la140071.a: Likewise. + * ada/acats-3/tests/l/la140072.am: Likewise. + * ada/acats-3/tests/l/la140073.a: Likewise. + * ada/acats-3/tests/l/la140080.a: Likewise. + * ada/acats-3/tests/l/la140081.a: Likewise. + * ada/acats-3/tests/l/la140082.am: Likewise. + * ada/acats-3/tests/l/la140083.a: Likewise. + * ada/acats-3/tests/l/la140090.a: Likewise. + * ada/acats-3/tests/l/la140091.a: Likewise. + * ada/acats-3/tests/l/la140092.am: Likewise. + * ada/acats-3/tests/l/la140093.a: Likewise. + * ada/acats-3/tests/l/la140100.a: Likewise. + * ada/acats-3/tests/l/la140101.a: Likewise. + * ada/acats-3/tests/l/la140102.am: Likewise. + * ada/acats-3/tests/l/la140103.a: Likewise. + * ada/acats-3/tests/l/la140110.a: Likewise. + * ada/acats-3/tests/l/la140111.a: Likewise. + * ada/acats-3/tests/l/la140112.am: Likewise. + * ada/acats-3/tests/l/la140113.a: Likewise. + * ada/acats-3/tests/l/la140120.a: Likewise. + * ada/acats-3/tests/l/la140121.a: Likewise. + * ada/acats-3/tests/l/la140122.am: Likewise. + * ada/acats-3/tests/l/la140123.a: Likewise. + * ada/acats-3/tests/l/la140130.a: Likewise. + * ada/acats-3/tests/l/la140131.a: Likewise. + * ada/acats-3/tests/l/la140132.am: Likewise. + * ada/acats-3/tests/l/la140133.a: Likewise. + * ada/acats-3/tests/l/la140140.a: Likewise. + * ada/acats-3/tests/l/la140141.a: Likewise. + * ada/acats-3/tests/l/la140142.am: Likewise. + * ada/acats-3/tests/l/la140143.a: Likewise. + * ada/acats-3/tests/l/la140150.a: Likewise. + * ada/acats-3/tests/l/la140151.a: Likewise. + * ada/acats-3/tests/l/la140152.am: Likewise. + * ada/acats-3/tests/l/la140153.a: Likewise. + * ada/acats-3/tests/l/la140160.a: Likewise. + * ada/acats-3/tests/l/la140161.a: Likewise. + * ada/acats-3/tests/l/la140162.am: Likewise. + * ada/acats-3/tests/l/la140163.a: Likewise. + * ada/acats-3/tests/l/la140170.a: Likewise. + * ada/acats-3/tests/l/la140171.a: Likewise. + * ada/acats-3/tests/l/la140172.am: Likewise. + * ada/acats-3/tests/l/la140173.a: Likewise. + * ada/acats-3/tests/l/la140180.a: Likewise. + * ada/acats-3/tests/l/la140181.a: Likewise. + * ada/acats-3/tests/l/la140182.am: Likewise. + * ada/acats-3/tests/l/la140183.a: Likewise. + * ada/acats-3/tests/l/la140190.a: Likewise. + * ada/acats-3/tests/l/la140191.a: Likewise. + * ada/acats-3/tests/l/la140192.am: Likewise. + * ada/acats-3/tests/l/la140193.a: Likewise. + * ada/acats-3/tests/l/la140200.a: Likewise. + * ada/acats-3/tests/l/la140201.a: Likewise. + * ada/acats-3/tests/l/la140202.am: Likewise. + * ada/acats-3/tests/l/la140203.a: Likewise. + * ada/acats-3/tests/l/la140210.a: Likewise. + * ada/acats-3/tests/l/la140211.am: Likewise. + * ada/acats-3/tests/l/la140212.a: Likewise. + * ada/acats-3/tests/l/la140220.a: Likewise. + * ada/acats-3/tests/l/la140221.am: Likewise. + * ada/acats-3/tests/l/la140222.a: Likewise. + * ada/acats-3/tests/l/la140240.a: Likewise. + * ada/acats-3/tests/l/la140241.a: Likewise. + * ada/acats-3/tests/l/la140242.am: Likewise. + * ada/acats-3/tests/l/la140243.a: Likewise. + * ada/acats-3/tests/l/la140250.a: Likewise. + * ada/acats-3/tests/l/la140251.am: Likewise. + * ada/acats-3/tests/l/la140252.a: Likewise. + * ada/acats-3/tests/l/la140260.a: Likewise. + * ada/acats-3/tests/l/la140261.a: Likewise. + * ada/acats-3/tests/l/la140262.am: Likewise. + * ada/acats-3/tests/l/la140263.a: Likewise. + * ada/acats-3/tests/l/la140270.a: Likewise. + * ada/acats-3/tests/l/la140271.a: Likewise. + * ada/acats-3/tests/l/la140272.am: Likewise. + * ada/acats-3/tests/l/la140273.a: Likewise. + +2025-05-24 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats-2/run_all.sh: Minor tweaks in comments. + * ada/acats-2/tests/cd/cd300050.am: Upgrade to 2.6K revision. + * ada/acats-2/tests/cd/cd300051.c: Likewise. + * ada/acats-2/tests/cxa/cxa4001.a: Likewise. + * ada/acats-2/tests/cxb/cxb30131.c: Likewise. + +2025-05-24 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats/*: Rename into ada/acats-2/*. + * ada/acats-2/run_all.sh: Adjust to above renaming. + * ada/acats-2/support/impdefc.a: New file. + * ada/acats-2/elabd.lst: New file. + * ada/acats-2/floatstore.lst: New file. + * ada/acats-2/norun.lst: New file. + * ada/acats-2/run_acats.sh: New file. + * ada/acats-2/run_test.exp: New file. + * ada/acats-2/stackcheck.lst: New file. + * ada/acats-2/support/acats26.lst: New file. + * ada/acats-2/support/checkfil.ada: New file. + * ada/acats-2/support/enumchek.ada: New file. + * ada/acats-2/support/f340a000.a: New file. + * ada/acats-2/support/f340a001.a: New file. + * ada/acats-2/support/f341a00.a: New file. + * ada/acats-2/support/f390a00.a: New file. + * ada/acats-2/support/f392a00.a: New file. + * ada/acats-2/support/f392c00.a: New file. + * ada/acats-2/support/f392d00.a: New file. + * ada/acats-2/support/f393a00.a: New file. + * ada/acats-2/support/f393b00.a: New file. + * ada/acats-2/support/f3a2a00.a: New file. + * ada/acats-2/support/f460a00.a: New file. + * ada/acats-2/support/f730a000.a: New file. + * ada/acats-2/support/f730a001.a: New file. + * ada/acats-2/support/f731a00.a: New file. + * ada/acats-2/support/f940a00.a: New file. + * ada/acats-2/support/f954a00.a: New file. + * ada/acats-2/support/fa11a00.a: New file. + * ada/acats-2/support/fa11b00.a: New file. + * ada/acats-2/support/fa11c00.a: New file. + * ada/acats-2/support/fa11d00.a: New file. + * ada/acats-2/support/fa13a00.a: New file. + * ada/acats-2/support/fa13b00.a: New file. + * ada/acats-2/support/fa21a00.a: New file. + * ada/acats-2/support/fb20a00.a: New file. + * ada/acats-2/support/fb40a00.a: New file. + * ada/acats-2/support/fc50a00.a: New file. + * ada/acats-2/support/fc51a00.a: New file. + * ada/acats-2/support/fc51b00.a: New file. + * ada/acats-2/support/fc51c00.a: New file. + * ada/acats-2/support/fc51d00.a: New file. + * ada/acats-2/support/fc54a00.a: New file. + * ada/acats-2/support/fc70a00.a: New file. + * ada/acats-2/support/fc70b00.a: New file. + * ada/acats-2/support/fc70c00.a: New file. + * ada/acats-2/support/fcndecl.ada: New file. + * ada/acats-2/support/fd72a00.a: New file. + * ada/acats-2/support/fdb0a00.a: New file. + * ada/acats-2/support/fdd2a00.a: New file. + * ada/acats-2/support/fxa5a00.a: New file. + * ada/acats-2/support/fxaca00.a: New file. + * ada/acats-2/support/fxacb00.a: New file. + * ada/acats-2/support/fxacc00.a: New file. + * ada/acats-2/support/fxc6a00.a: New file. + * ada/acats-2/support/fxe2a00.a: New file. + * ada/acats-2/support/fxf2a00.a: New file. + * ada/acats-2/support/fxf3a00.a: New file. + * ada/acats-2/support/impbit.adb: New file. + * ada/acats-2/support/impdef.a: New file. + * ada/acats-2/support/impdefd.a: New file. + * ada/acats-2/support/impdefe.a: New file. + * ada/acats-2/support/impdefg.a: New file. + * ada/acats-2/support/impdefh.a: New file. + * ada/acats-2/support/lencheck.ada: New file. + * ada/acats-2/support/macro.dfs: New file. + * ada/acats-2/support/macrodef.adb: New file. + * ada/acats-2/support/macrosub.ada: New file. + * ada/acats-2/support/repbody.ada: New file. + * ada/acats-2/support/repspec.ada: New file. + * ada/acats-2/support/spprt13s.tst: New file. + * ada/acats-2/support/tctouch.ada: New file. + * ada/acats-2/support/tsttests.dat: New file. + * ada/acats-2/support/widechr.a: New file. + * ada/acats-2/tests/a/a22006b.ada: New file. + * ada/acats-2/tests/a/a22006c.ada: New file. + * ada/acats-2/tests/a/a22006d.ada: New file. + * ada/acats-2/tests/a/a26007a.tst: New file. + * ada/acats-2/tests/a/a27003a.ada: New file. + * ada/acats-2/tests/a/a29003a.ada: New file. + * ada/acats-2/tests/a/a2a031a.ada: New file. + * ada/acats-2/tests/a/a33003a.ada: New file. + * ada/acats-2/tests/a/a34017c.ada: New file. + * ada/acats-2/tests/a/a35101b.ada: New file. + * ada/acats-2/tests/a/a35402a.ada: New file. + * ada/acats-2/tests/a/a35801f.ada: New file. + * ada/acats-2/tests/a/a35902c.ada: New file. + * ada/acats-2/tests/a/a38106d.ada: New file. + * ada/acats-2/tests/a/a38106e.ada: New file. + * ada/acats-2/tests/a/a49027a.ada: New file. + * ada/acats-2/tests/a/a49027b.ada: New file. + * ada/acats-2/tests/a/a49027c.ada: New file. + * ada/acats-2/tests/a/a54b01a.ada: New file. + * ada/acats-2/tests/a/a54b02a.ada: New file. + * ada/acats-2/tests/a/a55b12a.ada: New file. + * ada/acats-2/tests/a/a55b13a.ada: New file. + * ada/acats-2/tests/a/a55b14a.ada: New file. + * ada/acats-2/tests/a/a71004a.ada: New file. + * ada/acats-2/tests/a/a73001i.ada: New file. + * ada/acats-2/tests/a/a73001j.ada: New file. + * ada/acats-2/tests/a/a74105b.ada: New file. + * ada/acats-2/tests/a/a74106a.ada: New file. + * ada/acats-2/tests/a/a74106b.ada: New file. + * ada/acats-2/tests/a/a74106c.ada: New file. + * ada/acats-2/tests/a/a74205e.ada: New file. + * ada/acats-2/tests/a/a74205f.ada: New file. + * ada/acats-2/tests/a/a83009a.ada: New file. + * ada/acats-2/tests/a/a83009b.ada: New file. + * ada/acats-2/tests/a/a83a02a.ada: New file. + * ada/acats-2/tests/a/a83a02b.ada: New file. + * ada/acats-2/tests/a/a83a06a.ada: New file. + * ada/acats-2/tests/a/a83a08a.ada: New file. + * ada/acats-2/tests/a/a83c01c.ada: New file. + * ada/acats-2/tests/a/a83c01h.ada: New file. + * ada/acats-2/tests/a/a83c01i.ada: New file. + * ada/acats-2/tests/a/a85007d.ada: New file. + * ada/acats-2/tests/a/a85013b.ada: New file. + * ada/acats-2/tests/a/a87b59a.ada: New file. + * ada/acats-2/tests/a/a95001c.ada: New file. + * ada/acats-2/tests/a/a95074d.ada: New file. + * ada/acats-2/tests/a/a97106a.ada: New file. + * ada/acats-2/tests/a/a99006a.ada: New file. + * ada/acats-2/tests/a/aa2010a.ada: New file. + * ada/acats-2/tests/a/aa2012a.ada: New file. + * ada/acats-2/tests/a/ac1015b.ada: New file. + * ada/acats-2/tests/a/ac3106a.ada: New file. + * ada/acats-2/tests/a/ac3206a.ada: New file. + * ada/acats-2/tests/a/ac3207a.ada: New file. + * ada/acats-2/tests/a/ad7001b.ada: New file. + * ada/acats-2/tests/a/ad7001c0.ada: New file. + * ada/acats-2/tests/a/ad7001c1.ada: New file. + * ada/acats-2/tests/a/ad7001d0.ada: New file. + * ada/acats-2/tests/a/ad7001d1.ada: New file. + * ada/acats-2/tests/a/ad7006a.ada: New file. + * ada/acats-2/tests/a/ad7101a.ada: New file. + * ada/acats-2/tests/a/ad7101c.ada: New file. + * ada/acats-2/tests/a/ad7102a.ada: New file. + * ada/acats-2/tests/a/ad7103a.ada: New file. + * ada/acats-2/tests/a/ad7103c.ada: New file. + * ada/acats-2/tests/a/ad7104a.ada: New file. + * ada/acats-2/tests/a/ad7201a.ada: New file. + * ada/acats-2/tests/a/ad7203b.ada: New file. + * ada/acats-2/tests/a/ad7205b.ada: New file. + * ada/acats-2/tests/a/ad8011a.tst: New file. + * ada/acats-2/tests/a/ada101a.ada: New file. + * ada/acats-2/tests/a/ae2113a.ada: New file. + * ada/acats-2/tests/a/ae2113b.ada: New file. + * ada/acats-2/tests/a/ae3002g.ada: New file. + * ada/acats-2/tests/a/ae3101a.ada: New file. + * ada/acats-2/tests/a/ae3702a.ada: New file. + * ada/acats-2/tests/a/ae3709a.ada: New file. + * ada/acats-2/tests/c2/c23001a.ada: New file. + * ada/acats-2/tests/c2/c23003a.tst: New file. + * ada/acats-2/tests/c2/c23003b.tst: New file. + * ada/acats-2/tests/c2/c23003g.tst: New file. + * ada/acats-2/tests/c2/c23003i.tst: New file. + * ada/acats-2/tests/c2/c23006a.ada: New file. + * ada/acats-2/tests/c2/c23006b.ada: New file. + * ada/acats-2/tests/c2/c23006c.ada: New file. + * ada/acats-2/tests/c2/c23006d.ada: New file. + * ada/acats-2/tests/c2/c23006e.ada: New file. + * ada/acats-2/tests/c2/c23006f.ada: New file. + * ada/acats-2/tests/c2/c23006g.ada: New file. + * ada/acats-2/tests/c2/c24002d.ada: New file. + * ada/acats-2/tests/c2/c24003a.ada: New file. + * ada/acats-2/tests/c2/c24003b.ada: New file. + * ada/acats-2/tests/c2/c24003c.ada: New file. + * ada/acats-2/tests/c2/c24106a.ada: New file. + * ada/acats-2/tests/c2/c24202d.ada: New file. + * ada/acats-2/tests/c2/c24203a.ada: New file. + * ada/acats-2/tests/c2/c24203b.ada: New file. + * ada/acats-2/tests/c2/c24207a.ada: New file. + * ada/acats-2/tests/c2/c24211a.ada: New file. + * ada/acats-2/tests/c2/c250001.aw: New file. + * ada/acats-2/tests/c2/c250002.aw: New file. + * ada/acats-2/tests/c2/c25001a.ada: New file. + * ada/acats-2/tests/c2/c25001b.ada: New file. + * ada/acats-2/tests/c2/c26006a.ada: New file. + * ada/acats-2/tests/c2/c26008a.ada: New file. + * ada/acats-2/tests/c2/c2a001a.ada: New file. + * ada/acats-2/tests/c2/c2a001b.ada: New file. + * ada/acats-2/tests/c2/c2a001c.ada: New file. + * ada/acats-2/tests/c2/c2a002a.ada: New file. + * ada/acats-2/tests/c2/c2a008a.ada: New file. + * ada/acats-2/tests/c2/c2a021b.ada: New file. + * ada/acats-2/tests/c3/c32001a.ada: New file. + * ada/acats-2/tests/c3/c32001b.ada: New file. + * ada/acats-2/tests/c3/c32001c.ada: New file. + * ada/acats-2/tests/c3/c32001d.ada: New file. + * ada/acats-2/tests/c3/c32001e.ada: New file. + * ada/acats-2/tests/c3/c32107a.ada: New file. + * ada/acats-2/tests/c3/c32107c.ada: New file. + * ada/acats-2/tests/c3/c32108a.ada: New file. + * ada/acats-2/tests/c3/c32108b.ada: New file. + * ada/acats-2/tests/c3/c32111a.ada: New file. + * ada/acats-2/tests/c3/c32111b.ada: New file. + * ada/acats-2/tests/c3/c32112b.ada: New file. + * ada/acats-2/tests/c3/c32113a.ada: New file. + * ada/acats-2/tests/c3/c32115a.ada: New file. + * ada/acats-2/tests/c3/c32115b.ada: New file. + * ada/acats-2/tests/c3/c330001.a: New file. + * ada/acats-2/tests/c3/c330002.a: New file. + * ada/acats-2/tests/c3/c332001.a: New file. + * ada/acats-2/tests/c3/c340001.a: New file. + * ada/acats-2/tests/c3/c34001a.ada: New file. + * ada/acats-2/tests/c3/c34001c.ada: New file. + * ada/acats-2/tests/c3/c34001d.ada: New file. + * ada/acats-2/tests/c3/c34001f.ada: New file. + * ada/acats-2/tests/c3/c34002a.ada: New file. + * ada/acats-2/tests/c3/c34002c.ada: New file. + * ada/acats-2/tests/c3/c34003a.ada: New file. + * ada/acats-2/tests/c3/c34003c.ada: New file. + * ada/acats-2/tests/c3/c34004a.ada: New file. + * ada/acats-2/tests/c3/c34004c.ada: New file. + * ada/acats-2/tests/c3/c34005a.ada: New file. + * ada/acats-2/tests/c3/c34005c.ada: New file. + * ada/acats-2/tests/c3/c34005d.ada: New file. + * ada/acats-2/tests/c3/c34005f.ada: New file. + * ada/acats-2/tests/c3/c34005g.ada: New file. + * ada/acats-2/tests/c3/c34005i.ada: New file. + * ada/acats-2/tests/c3/c34005j.ada: New file. + * ada/acats-2/tests/c3/c34005l.ada: New file. + * ada/acats-2/tests/c3/c34005m.ada: New file. + * ada/acats-2/tests/c3/c34005o.ada: New file. + * ada/acats-2/tests/c3/c34005p.ada: New file. + * ada/acats-2/tests/c3/c34005r.ada: New file. + * ada/acats-2/tests/c3/c34005s.ada: New file. + * ada/acats-2/tests/c3/c34005u.ada: New file. + * ada/acats-2/tests/c3/c34005v.ada: New file. + * ada/acats-2/tests/c3/c34006a.ada: New file. + * ada/acats-2/tests/c3/c34006d.ada: New file. + * ada/acats-2/tests/c3/c34006f.ada: New file. + * ada/acats-2/tests/c3/c34006g.ada: New file. + * ada/acats-2/tests/c3/c34006j.ada: New file. + * ada/acats-2/tests/c3/c34006l.ada: New file. + * ada/acats-2/tests/c3/c34007a.ada: New file. + * ada/acats-2/tests/c3/c34007d.ada: New file. + * ada/acats-2/tests/c3/c34007f.ada: New file. + * ada/acats-2/tests/c3/c34007g.ada: New file. + * ada/acats-2/tests/c3/c34007i.ada: New file. + * ada/acats-2/tests/c3/c34007j.ada: New file. + * ada/acats-2/tests/c3/c34007m.ada: New file. + * ada/acats-2/tests/c3/c34007p.ada: New file. + * ada/acats-2/tests/c3/c34007r.ada: New file. + * ada/acats-2/tests/c3/c34007s.ada: New file. + * ada/acats-2/tests/c3/c34007u.ada: New file. + * ada/acats-2/tests/c3/c34007v.ada: New file. + * ada/acats-2/tests/c3/c34008a.ada: New file. + * ada/acats-2/tests/c3/c34009a.ada: New file. + * ada/acats-2/tests/c3/c34009d.ada: New file. + * ada/acats-2/tests/c3/c34009f.ada: New file. + * ada/acats-2/tests/c3/c34009g.ada: New file. + * ada/acats-2/tests/c3/c34009j.ada: New file. + * ada/acats-2/tests/c3/c34009l.ada: New file. + * ada/acats-2/tests/c3/c34011b.ada: New file. + * ada/acats-2/tests/c3/c34012a.ada: New file. + * ada/acats-2/tests/c3/c34014a.ada: New file. + * ada/acats-2/tests/c3/c34014c.ada: New file. + * ada/acats-2/tests/c3/c34014e.ada: New file. + * ada/acats-2/tests/c3/c34014g.ada: New file. + * ada/acats-2/tests/c3/c34014h.ada: New file. + * ada/acats-2/tests/c3/c34014n.ada: New file. + * ada/acats-2/tests/c3/c34014p.ada: New file. + * ada/acats-2/tests/c3/c34014r.ada: New file. + * ada/acats-2/tests/c3/c34014t.ada: New file. + * ada/acats-2/tests/c3/c34014u.ada: New file. + * ada/acats-2/tests/c3/c34018a.ada: New file. + * ada/acats-2/tests/c3/c340a01.a: New file. + * ada/acats-2/tests/c3/c340a02.a: New file. + * ada/acats-2/tests/c3/c341a01.a: New file. + * ada/acats-2/tests/c3/c341a02.a: New file. + * ada/acats-2/tests/c3/c341a03.a: New file. + * ada/acats-2/tests/c3/c341a04.a: New file. + * ada/acats-2/tests/c3/c35003a.ada: New file. + * ada/acats-2/tests/c3/c35003b.ada: New file. + * ada/acats-2/tests/c3/c35003d.ada: New file. + * ada/acats-2/tests/c3/c35102a.ada: New file. + * ada/acats-2/tests/c3/c352001.a: New file. + * ada/acats-2/tests/c3/c354002.a: New file. + * ada/acats-2/tests/c3/c354003.a: New file. + * ada/acats-2/tests/c3/c35502a.ada: New file. + * ada/acats-2/tests/c3/c35502b.ada: New file. + * ada/acats-2/tests/c3/c35502c.ada: New file. + * ada/acats-2/tests/c3/c35502d.tst: New file. + * ada/acats-2/tests/c3/c35502e.ada: New file. + * ada/acats-2/tests/c3/c35502f.tst: New file. + * ada/acats-2/tests/c3/c35502g.ada: New file. + * ada/acats-2/tests/c3/c35502h.ada: New file. + * ada/acats-2/tests/c3/c35502i.ada: New file. + * ada/acats-2/tests/c3/c35502j.ada: New file. + * ada/acats-2/tests/c3/c35502k.ada: New file. + * ada/acats-2/tests/c3/c35502l.ada: New file. + * ada/acats-2/tests/c3/c35502m.ada: New file. + * ada/acats-2/tests/c3/c35502n.ada: New file. + * ada/acats-2/tests/c3/c35502o.ada: New file. + * ada/acats-2/tests/c3/c35502p.ada: New file. + * ada/acats-2/tests/c3/c35503a.ada: New file. + * ada/acats-2/tests/c3/c35503b.ada: New file. + * ada/acats-2/tests/c3/c35503c.ada: New file. + * ada/acats-2/tests/c3/c35503d.tst: New file. + * ada/acats-2/tests/c3/c35503e.ada: New file. + * ada/acats-2/tests/c3/c35503f.tst: New file. + * ada/acats-2/tests/c3/c35503g.ada: New file. + * ada/acats-2/tests/c3/c35503h.ada: New file. + * ada/acats-2/tests/c3/c35503k.ada: New file. + * ada/acats-2/tests/c3/c35503l.ada: New file. + * ada/acats-2/tests/c3/c35503o.ada: New file. + * ada/acats-2/tests/c3/c35503p.ada: New file. + * ada/acats-2/tests/c3/c35504a.ada: New file. + * ada/acats-2/tests/c3/c35504b.ada: New file. + * ada/acats-2/tests/c3/c35505c.ada: New file. + * ada/acats-2/tests/c3/c35505e.ada: New file. + * ada/acats-2/tests/c3/c35505f.ada: New file. + * ada/acats-2/tests/c3/c35507a.ada: New file. + * ada/acats-2/tests/c3/c35507b.ada: New file. + * ada/acats-2/tests/c3/c35507c.ada: New file. + * ada/acats-2/tests/c3/c35507e.ada: New file. + * ada/acats-2/tests/c3/c35507g.ada: New file. + * ada/acats-2/tests/c3/c35507h.ada: New file. + * ada/acats-2/tests/c3/c35507i.ada: New file. + * ada/acats-2/tests/c3/c35507j.ada: New file. + * ada/acats-2/tests/c3/c35507k.ada: New file. + * ada/acats-2/tests/c3/c35507l.ada: New file. + * ada/acats-2/tests/c3/c35507m.ada: New file. + * ada/acats-2/tests/c3/c35507n.ada: New file. + * ada/acats-2/tests/c3/c35507o.ada: New file. + * ada/acats-2/tests/c3/c35507p.ada: New file. + * ada/acats-2/tests/c3/c35508a.ada: New file. + * ada/acats-2/tests/c3/c35508b.ada: New file. + * ada/acats-2/tests/c3/c35508c.ada: New file. + * ada/acats-2/tests/c3/c35508e.ada: New file. + * ada/acats-2/tests/c3/c35508g.ada: New file. + * ada/acats-2/tests/c3/c35508h.ada: New file. + * ada/acats-2/tests/c3/c35508k.ada: New file. + * ada/acats-2/tests/c3/c35508l.ada: New file. + * ada/acats-2/tests/c3/c35508o.ada: New file. + * ada/acats-2/tests/c3/c35508p.ada: New file. + * ada/acats-2/tests/c3/c35703a.ada: New file. + * ada/acats-2/tests/c3/c35704a.ada: New file. + * ada/acats-2/tests/c3/c35704b.ada: New file. + * ada/acats-2/tests/c3/c35704c.ada: New file. + * ada/acats-2/tests/c3/c35704d.ada: New file. + * ada/acats-2/tests/c3/c35801d.ada: New file. + * ada/acats-2/tests/c3/c35902d.ada: New file. + * ada/acats-2/tests/c3/c35904a.ada: New file. + * ada/acats-2/tests/c3/c35904b.ada: New file. + * ada/acats-2/tests/c3/c35a02a.ada: New file. + * ada/acats-2/tests/c3/c35a05a.ada: New file. + * ada/acats-2/tests/c3/c35a05d.ada: New file. + * ada/acats-2/tests/c3/c35a05n.ada: New file. + * ada/acats-2/tests/c3/c35a05q.ada: New file. + * ada/acats-2/tests/c3/c35a07a.ada: New file. + * ada/acats-2/tests/c3/c35a07d.ada: New file. + * ada/acats-2/tests/c3/c35a08b.ada: New file. + * ada/acats-2/tests/c3/c360002.a: New file. + * ada/acats-2/tests/c3/c36104a.ada: New file. + * ada/acats-2/tests/c3/c36104b.ada: New file. + * ada/acats-2/tests/c3/c36172a.ada: New file. + * ada/acats-2/tests/c3/c36172b.ada: New file. + * ada/acats-2/tests/c3/c36172c.ada: New file. + * ada/acats-2/tests/c3/c36174a.ada: New file. + * ada/acats-2/tests/c3/c36180a.ada: New file. + * ada/acats-2/tests/c3/c36202c.ada: New file. + * ada/acats-2/tests/c3/c36203a.ada: New file. + * ada/acats-2/tests/c3/c36204a.ada: New file. + * ada/acats-2/tests/c3/c36204b.ada: New file. + * ada/acats-2/tests/c3/c36204c.ada: New file. + * ada/acats-2/tests/c3/c36204d.ada: New file. + * ada/acats-2/tests/c3/c36205a.ada: New file. + * ada/acats-2/tests/c3/c36205b.ada: New file. + * ada/acats-2/tests/c3/c36205c.ada: New file. + * ada/acats-2/tests/c3/c36205d.ada: New file. + * ada/acats-2/tests/c3/c36205e.ada: New file. + * ada/acats-2/tests/c3/c36205f.ada: New file. + * ada/acats-2/tests/c3/c36205g.ada: New file. + * ada/acats-2/tests/c3/c36205h.ada: New file. + * ada/acats-2/tests/c3/c36205i.ada: New file. + * ada/acats-2/tests/c3/c36205j.ada: New file. + * ada/acats-2/tests/c3/c36205k.ada: New file. + * ada/acats-2/tests/c3/c36205l.ada: New file. + * ada/acats-2/tests/c3/c36301a.ada: New file. + * ada/acats-2/tests/c3/c36301b.ada: New file. + * ada/acats-2/tests/c3/c36302a.ada: New file. + * ada/acats-2/tests/c3/c36304a.ada: New file. + * ada/acats-2/tests/c3/c36305a.ada: New file. + * ada/acats-2/tests/c3/c37002a.ada: New file. + * ada/acats-2/tests/c3/c37003a.ada: New file. + * ada/acats-2/tests/c3/c37003b.ada: New file. + * ada/acats-2/tests/c3/c37005a.ada: New file. + * ada/acats-2/tests/c3/c37006a.ada: New file. + * ada/acats-2/tests/c3/c37008a.ada: New file. + * ada/acats-2/tests/c3/c37008b.ada: New file. + * ada/acats-2/tests/c3/c37009a.ada: New file. + * ada/acats-2/tests/c3/c37010a.ada: New file. + * ada/acats-2/tests/c3/c37010b.ada: New file. + * ada/acats-2/tests/c3/c371001.a: New file. + * ada/acats-2/tests/c3/c371002.a: New file. + * ada/acats-2/tests/c3/c371003.a: New file. + * ada/acats-2/tests/c3/c37102b.ada: New file. + * ada/acats-2/tests/c3/c37103a.ada: New file. + * ada/acats-2/tests/c3/c37105a.ada: New file. + * ada/acats-2/tests/c3/c37107a.ada: New file. + * ada/acats-2/tests/c3/c37108b.ada: New file. + * ada/acats-2/tests/c3/c37206a.ada: New file. + * ada/acats-2/tests/c3/c37207a.ada: New file. + * ada/acats-2/tests/c3/c37208a.ada: New file. + * ada/acats-2/tests/c3/c37208b.ada: New file. + * ada/acats-2/tests/c3/c37209a.ada: New file. + * ada/acats-2/tests/c3/c37209b.ada: New file. + * ada/acats-2/tests/c3/c37210a.ada: New file. + * ada/acats-2/tests/c3/c37211a.ada: New file. + * ada/acats-2/tests/c3/c37211b.ada: New file. + * ada/acats-2/tests/c3/c37211c.ada: New file. + * ada/acats-2/tests/c3/c37211d.ada: New file. + * ada/acats-2/tests/c3/c37211e.ada: New file. + * ada/acats-2/tests/c3/c37213b.ada: New file. + * ada/acats-2/tests/c3/c37213d.ada: New file. + * ada/acats-2/tests/c3/c37213f.ada: New file. + * ada/acats-2/tests/c3/c37213h.ada: New file. + * ada/acats-2/tests/c3/c37213j.ada: New file. + * ada/acats-2/tests/c3/c37213k.ada: New file. + * ada/acats-2/tests/c3/c37213l.ada: New file. + * ada/acats-2/tests/c3/c37215b.ada: New file. + * ada/acats-2/tests/c3/c37215d.ada: New file. + * ada/acats-2/tests/c3/c37215f.ada: New file. + * ada/acats-2/tests/c3/c37215h.ada: New file. + * ada/acats-2/tests/c3/c37217a.ada: New file. + * ada/acats-2/tests/c3/c37217b.ada: New file. + * ada/acats-2/tests/c3/c37217c.ada: New file. + * ada/acats-2/tests/c3/c37304a.ada: New file. + * ada/acats-2/tests/c3/c37305a.ada: New file. + * ada/acats-2/tests/c3/c37306a.ada: New file. + * ada/acats-2/tests/c3/c37309a.ada: New file. + * ada/acats-2/tests/c3/c37310a.ada: New file. + * ada/acats-2/tests/c3/c37312a.ada: New file. + * ada/acats-2/tests/c3/c37402a.ada: New file. + * ada/acats-2/tests/c3/c37403a.ada: New file. + * ada/acats-2/tests/c3/c37404a.ada: New file. + * ada/acats-2/tests/c3/c37404b.ada: New file. + * ada/acats-2/tests/c3/c37405a.ada: New file. + * ada/acats-2/tests/c3/c37411a.ada: New file. + * ada/acats-2/tests/c3/c380001.a: New file. + * ada/acats-2/tests/c3/c380002.a: New file. + * ada/acats-2/tests/c3/c380003.a: New file. + * ada/acats-2/tests/c3/c380004.a: New file. + * ada/acats-2/tests/c3/c38002a.ada: New file. + * ada/acats-2/tests/c3/c38002b.ada: New file. + * ada/acats-2/tests/c3/c38005a.ada: New file. + * ada/acats-2/tests/c3/c38005b.ada: New file. + * ada/acats-2/tests/c3/c38005c.ada: New file. + * ada/acats-2/tests/c3/c38006a.ada: New file. + * ada/acats-2/tests/c3/c38102a.ada: New file. + * ada/acats-2/tests/c3/c38102b.ada: New file. + * ada/acats-2/tests/c3/c38102c.ada: New file. + * ada/acats-2/tests/c3/c38102d.ada: New file. + * ada/acats-2/tests/c3/c38102e.ada: New file. + * ada/acats-2/tests/c3/c38104a.ada: New file. + * ada/acats-2/tests/c3/c38107a.ada: New file. + * ada/acats-2/tests/c3/c38107b.ada: New file. + * ada/acats-2/tests/c3/c38108a.ada: New file. + * ada/acats-2/tests/c3/c38108b.ada: New file. + * ada/acats-2/tests/c3/c38108c0.ada: New file. + * ada/acats-2/tests/c3/c38108c1.ada: New file. + * ada/acats-2/tests/c3/c38108c2.ada: New file. + * ada/acats-2/tests/c3/c38108d0.ada: New file. + * ada/acats-2/tests/c3/c38108d1.ada: New file. + * ada/acats-2/tests/c3/c38202a.ada: New file. + * ada/acats-2/tests/c3/c3900010.a: New file. + * ada/acats-2/tests/c3/c3900011.am: New file. + * ada/acats-2/tests/c3/c390002.a: New file. + * ada/acats-2/tests/c3/c390003.a: New file. + * ada/acats-2/tests/c3/c390004.a: New file. + * ada/acats-2/tests/c3/c3900050.a: New file. + * ada/acats-2/tests/c3/c3900051.a: New file. + * ada/acats-2/tests/c3/c3900052.a: New file. + * ada/acats-2/tests/c3/c3900053.am: New file. + * ada/acats-2/tests/c3/c3900060.a: New file. + * ada/acats-2/tests/c3/c3900061.a: New file. + * ada/acats-2/tests/c3/c3900062.a: New file. + * ada/acats-2/tests/c3/c3900063.am: New file. + * ada/acats-2/tests/c3/c390007.a: New file. + * ada/acats-2/tests/c3/c390010.a: New file. + * ada/acats-2/tests/c3/c390011.a: New file. + * ada/acats-2/tests/c3/c39006a.ada: New file. + * ada/acats-2/tests/c3/c39006b.ada: New file. + * ada/acats-2/tests/c3/c39006c0.ada: New file. + * ada/acats-2/tests/c3/c39006c1.ada: New file. + * ada/acats-2/tests/c3/c39006d.ada: New file. + * ada/acats-2/tests/c3/c39006e.ada: New file. + * ada/acats-2/tests/c3/c39006f0.ada: New file. + * ada/acats-2/tests/c3/c39006f1.ada: New file. + * ada/acats-2/tests/c3/c39006f2.ada: New file. + * ada/acats-2/tests/c3/c39006f3.ada: New file. + * ada/acats-2/tests/c3/c39006g.ada: New file. + * ada/acats-2/tests/c3/c39007a.ada: New file. + * ada/acats-2/tests/c3/c39007b.ada: New file. + * ada/acats-2/tests/c3/c39008a.ada: New file. + * ada/acats-2/tests/c3/c39008b.ada: New file. + * ada/acats-2/tests/c3/c39008c.ada: New file. + * ada/acats-2/tests/c3/c390a010.a: New file. + * ada/acats-2/tests/c3/c390a011.am: New file. + * ada/acats-2/tests/c3/c390a020.a: New file. + * ada/acats-2/tests/c3/c390a021.a: New file. + * ada/acats-2/tests/c3/c390a022.am: New file. + * ada/acats-2/tests/c3/c390a030.a: New file. + * ada/acats-2/tests/c3/c390a031.am: New file. + * ada/acats-2/tests/c3/c391001.a: New file. + * ada/acats-2/tests/c3/c391002.a: New file. + * ada/acats-2/tests/c3/c392002.a: New file. + * ada/acats-2/tests/c3/c392003.a: New file. + * ada/acats-2/tests/c3/c392004.a: New file. + * ada/acats-2/tests/c3/c392005.a: New file. + * ada/acats-2/tests/c3/c392008.a: New file. + * ada/acats-2/tests/c3/c392010.a: New file. + * ada/acats-2/tests/c3/c392011.a: New file. + * ada/acats-2/tests/c3/c392013.a: New file. + * ada/acats-2/tests/c3/c392014.a: New file. + * ada/acats-2/tests/c3/c392a01.a: New file. + * ada/acats-2/tests/c3/c392c05.a: New file. + * ada/acats-2/tests/c3/c392c07.a: New file. + * ada/acats-2/tests/c3/c392d01.a: New file. + * ada/acats-2/tests/c3/c392d02.a: New file. + * ada/acats-2/tests/c3/c392d03.a: New file. + * ada/acats-2/tests/c3/c393001.a: New file. + * ada/acats-2/tests/c3/c393007.a: New file. + * ada/acats-2/tests/c3/c393008.a: New file. + * ada/acats-2/tests/c3/c393009.a: New file. + * ada/acats-2/tests/c3/c393010.a: New file. + * ada/acats-2/tests/c3/c393011.a: New file. + * ada/acats-2/tests/c3/c393012.a: New file. + * ada/acats-2/tests/c3/c393a02.a: New file. + * ada/acats-2/tests/c3/c393a03.a: New file. + * ada/acats-2/tests/c3/c393a05.a: New file. + * ada/acats-2/tests/c3/c393a06.a: New file. + * ada/acats-2/tests/c3/c393b12.a: New file. + * ada/acats-2/tests/c3/c393b13.a: New file. + * ada/acats-2/tests/c3/c393b14.a: New file. + * ada/acats-2/tests/c3/c3a0001.a: New file. + * ada/acats-2/tests/c3/c3a0002.a: New file. + * ada/acats-2/tests/c3/c3a0003.a: New file. + * ada/acats-2/tests/c3/c3a0004.a: New file. + * ada/acats-2/tests/c3/c3a0005.a: New file. + * ada/acats-2/tests/c3/c3a0006.a: New file. + * ada/acats-2/tests/c3/c3a0007.a: New file. + * ada/acats-2/tests/c3/c3a0008.a: New file. + * ada/acats-2/tests/c3/c3a0009.a: New file. + * ada/acats-2/tests/c3/c3a0010.a: New file. + * ada/acats-2/tests/c3/c3a0011.a: New file. + * ada/acats-2/tests/c3/c3a00120.a: New file. + * ada/acats-2/tests/c3/c3a00121.a: New file. + * ada/acats-2/tests/c3/c3a00122.am: New file. + * ada/acats-2/tests/c3/c3a0013.a: New file. + * ada/acats-2/tests/c3/c3a0014.a: New file. + * ada/acats-2/tests/c3/c3a0015.a: New file. + * ada/acats-2/tests/c3/c3a1001.a: New file. + * ada/acats-2/tests/c3/c3a1002.a: New file. + * ada/acats-2/tests/c3/c3a2001.a: New file. + * ada/acats-2/tests/c3/c3a2002.a: New file. + * ada/acats-2/tests/c3/c3a2003.a: New file. + * ada/acats-2/tests/c3/c3a2a01.a: New file. + * ada/acats-2/tests/c3/c3a2a02.a: New file. + * ada/acats-2/tests/c4/c410001.a: New file. + * ada/acats-2/tests/c4/c41101d.ada: New file. + * ada/acats-2/tests/c4/c41103a.ada: New file. + * ada/acats-2/tests/c4/c41103b.ada: New file. + * ada/acats-2/tests/c4/c41104a.ada: New file. + * ada/acats-2/tests/c4/c41105a.ada: New file. + * ada/acats-2/tests/c4/c41107a.ada: New file. + * ada/acats-2/tests/c4/c41201d.ada: New file. + * ada/acats-2/tests/c4/c41203a.ada: New file. + * ada/acats-2/tests/c4/c41203b.ada: New file. + * ada/acats-2/tests/c4/c41204a.ada: New file. + * ada/acats-2/tests/c4/c41205a.ada: New file. + * ada/acats-2/tests/c4/c41206a.ada: New file. + * ada/acats-2/tests/c4/c41207a.ada: New file. + * ada/acats-2/tests/c4/c41301a.ada: New file. + * ada/acats-2/tests/c4/c41303a.ada: New file. + * ada/acats-2/tests/c4/c41303b.ada: New file. + * ada/acats-2/tests/c4/c41303c.ada: New file. + * ada/acats-2/tests/c4/c41303e.ada: New file. + * ada/acats-2/tests/c4/c41303f.ada: New file. + * ada/acats-2/tests/c4/c41303g.ada: New file. + * ada/acats-2/tests/c4/c41303i.ada: New file. + * ada/acats-2/tests/c4/c41303j.ada: New file. + * ada/acats-2/tests/c4/c41303k.ada: New file. + * ada/acats-2/tests/c4/c41303m.ada: New file. + * ada/acats-2/tests/c4/c41303n.ada: New file. + * ada/acats-2/tests/c4/c41303o.ada: New file. + * ada/acats-2/tests/c4/c41303q.ada: New file. + * ada/acats-2/tests/c4/c41303r.ada: New file. + * ada/acats-2/tests/c4/c41303s.ada: New file. + * ada/acats-2/tests/c4/c41303u.ada: New file. + * ada/acats-2/tests/c4/c41303v.ada: New file. + * ada/acats-2/tests/c4/c41303w.ada: New file. + * ada/acats-2/tests/c4/c41304a.ada: New file. + * ada/acats-2/tests/c4/c41304b.ada: New file. + * ada/acats-2/tests/c4/c41306a.ada: New file. + * ada/acats-2/tests/c4/c41306b.ada: New file. + * ada/acats-2/tests/c4/c41306c.ada: New file. + * ada/acats-2/tests/c4/c41307d.ada: New file. + * ada/acats-2/tests/c4/c41309a.ada: New file. + * ada/acats-2/tests/c4/c41320a.ada: New file. + * ada/acats-2/tests/c4/c41321a.ada: New file. + * ada/acats-2/tests/c4/c41322a.ada: New file. + * ada/acats-2/tests/c4/c41323a.ada: New file. + * ada/acats-2/tests/c4/c41324a.ada: New file. + * ada/acats-2/tests/c4/c41325a.ada: New file. + * ada/acats-2/tests/c4/c41326a.ada: New file. + * ada/acats-2/tests/c4/c41327a.ada: New file. + * ada/acats-2/tests/c4/c41328a.ada: New file. + * ada/acats-2/tests/c4/c41401a.ada: New file. + * ada/acats-2/tests/c4/c41402a.ada: New file. + * ada/acats-2/tests/c4/c41404a.ada: New file. + * ada/acats-2/tests/c4/c420001.a: New file. + * ada/acats-2/tests/c4/c42006a.ada: New file. + * ada/acats-2/tests/c4/c42007e.ada: New file. + * ada/acats-2/tests/c4/c43003a.ada: New file. + * ada/acats-2/tests/c4/c43004a.ada: New file. + * ada/acats-2/tests/c4/c43004c.ada: New file. + * ada/acats-2/tests/c4/c431001.a: New file. + * ada/acats-2/tests/c4/c43103a.ada: New file. + * ada/acats-2/tests/c4/c43103b.ada: New file. + * ada/acats-2/tests/c4/c43104a.ada: New file. + * ada/acats-2/tests/c4/c43105a.ada: New file. + * ada/acats-2/tests/c4/c43105b.ada: New file. + * ada/acats-2/tests/c4/c43106a.ada: New file. + * ada/acats-2/tests/c4/c43107a.ada: New file. + * ada/acats-2/tests/c4/c43108a.ada: New file. + * ada/acats-2/tests/c4/c432001.a: New file. + * ada/acats-2/tests/c4/c432002.a: New file. + * ada/acats-2/tests/c4/c432003.a: New file. + * ada/acats-2/tests/c4/c432004.a: New file. + * ada/acats-2/tests/c4/c43204a.ada: New file. + * ada/acats-2/tests/c4/c43204c.ada: New file. + * ada/acats-2/tests/c4/c43204e.ada: New file. + * ada/acats-2/tests/c4/c43204f.ada: New file. + * ada/acats-2/tests/c4/c43204g.ada: New file. + * ada/acats-2/tests/c4/c43204h.ada: New file. + * ada/acats-2/tests/c4/c43204i.ada: New file. + * ada/acats-2/tests/c4/c43205a.ada: New file. + * ada/acats-2/tests/c4/c43205b.ada: New file. + * ada/acats-2/tests/c4/c43205c.ada: New file. + * ada/acats-2/tests/c4/c43205d.ada: New file. + * ada/acats-2/tests/c4/c43205e.ada: New file. + * ada/acats-2/tests/c4/c43205g.ada: New file. + * ada/acats-2/tests/c4/c43205h.ada: New file. + * ada/acats-2/tests/c4/c43205i.ada: New file. + * ada/acats-2/tests/c4/c43205j.ada: New file. + * ada/acats-2/tests/c4/c43205k.ada: New file. + * ada/acats-2/tests/c4/c43206a.ada: New file. + * ada/acats-2/tests/c4/c43207b.ada: New file. + * ada/acats-2/tests/c4/c43207d.ada: New file. + * ada/acats-2/tests/c4/c43208a.ada: New file. + * ada/acats-2/tests/c4/c43208b.ada: New file. + * ada/acats-2/tests/c4/c43209a.ada: New file. + * ada/acats-2/tests/c4/c43210a.ada: New file. + * ada/acats-2/tests/c4/c43211a.ada: New file. + * ada/acats-2/tests/c4/c43212a.ada: New file. + * ada/acats-2/tests/c4/c43212c.ada: New file. + * ada/acats-2/tests/c4/c43214a.ada: New file. + * ada/acats-2/tests/c4/c43214b.ada: New file. + * ada/acats-2/tests/c4/c43214c.ada: New file. + * ada/acats-2/tests/c4/c43214d.ada: New file. + * ada/acats-2/tests/c4/c43214e.ada: New file. + * ada/acats-2/tests/c4/c43214f.ada: New file. + * ada/acats-2/tests/c4/c43215a.ada: New file. + * ada/acats-2/tests/c4/c43215b.ada: New file. + * ada/acats-2/tests/c4/c43222a.ada: New file. + * ada/acats-2/tests/c4/c43224a.ada: New file. + * ada/acats-2/tests/c4/c433001.a: New file. + * ada/acats-2/tests/c4/c44003d.ada: New file. + * ada/acats-2/tests/c4/c44003f.ada: New file. + * ada/acats-2/tests/c4/c44003g.ada: New file. + * ada/acats-2/tests/c4/c450001.a: New file. + * ada/acats-2/tests/c4/c45112a.ada: New file. + * ada/acats-2/tests/c4/c45112b.ada: New file. + * ada/acats-2/tests/c4/c45113a.ada: New file. + * ada/acats-2/tests/c4/c45114b.ada: New file. + * ada/acats-2/tests/c4/c452001.a: New file. + * ada/acats-2/tests/c4/c45201a.ada: New file. + * ada/acats-2/tests/c4/c45201b.ada: New file. + * ada/acats-2/tests/c4/c45202b.ada: New file. + * ada/acats-2/tests/c4/c45210a.ada: New file. + * ada/acats-2/tests/c4/c45211a.ada: New file. + * ada/acats-2/tests/c4/c45220a.ada: New file. + * ada/acats-2/tests/c4/c45220b.ada: New file. + * ada/acats-2/tests/c4/c45220c.ada: New file. + * ada/acats-2/tests/c4/c45220d.ada: New file. + * ada/acats-2/tests/c4/c45220e.ada: New file. + * ada/acats-2/tests/c4/c45220f.ada: New file. + * ada/acats-2/tests/c4/c45231a.ada: New file. + * ada/acats-2/tests/c4/c45231b.dep: New file. + * ada/acats-2/tests/c4/c45231c.dep: New file. + * ada/acats-2/tests/c4/c45231d.tst: New file. + * ada/acats-2/tests/c4/c45232b.ada: New file. + * ada/acats-2/tests/c4/c45242b.ada: New file. + * ada/acats-2/tests/c4/c45251a.ada: New file. + * ada/acats-2/tests/c4/c45252a.ada: New file. + * ada/acats-2/tests/c4/c45252b.ada: New file. + * ada/acats-2/tests/c4/c45253a.ada: New file. + * ada/acats-2/tests/c4/c45262a.ada: New file. + * ada/acats-2/tests/c4/c45262b.ada: New file. + * ada/acats-2/tests/c4/c45262c.ada: New file. + * ada/acats-2/tests/c4/c45262d.ada: New file. + * ada/acats-2/tests/c4/c45264a.ada: New file. + * ada/acats-2/tests/c4/c45264b.ada: New file. + * ada/acats-2/tests/c4/c45264c.ada: New file. + * ada/acats-2/tests/c4/c45265a.ada: New file. + * ada/acats-2/tests/c4/c45271a.ada: New file. + * ada/acats-2/tests/c4/c45272a.ada: New file. + * ada/acats-2/tests/c4/c45273a.ada: New file. + * ada/acats-2/tests/c4/c45274a.ada: New file. + * ada/acats-2/tests/c4/c45274b.ada: New file. + * ada/acats-2/tests/c4/c45274c.ada: New file. + * ada/acats-2/tests/c4/c45281a.ada: New file. + * ada/acats-2/tests/c4/c45282a.ada: New file. + * ada/acats-2/tests/c4/c45282b.ada: New file. + * ada/acats-2/tests/c4/c45291a.ada: New file. + * ada/acats-2/tests/c4/c453001.a: New file. + * ada/acats-2/tests/c4/c45303a.ada: New file. + * ada/acats-2/tests/c4/c45304a.ada: New file. + * ada/acats-2/tests/c4/c45304b.dep: New file. + * ada/acats-2/tests/c4/c45304c.dep: New file. + * ada/acats-2/tests/c4/c45322a.ada: New file. + * ada/acats-2/tests/c4/c45323a.ada: New file. + * ada/acats-2/tests/c4/c45331a.ada: New file. + * ada/acats-2/tests/c4/c45342a.ada: New file. + * ada/acats-2/tests/c4/c45343a.ada: New file. + * ada/acats-2/tests/c4/c45344a.ada: New file. + * ada/acats-2/tests/c4/c45345b.ada: New file. + * ada/acats-2/tests/c4/c45347a.ada: New file. + * ada/acats-2/tests/c4/c45347b.ada: New file. + * ada/acats-2/tests/c4/c45347c.ada: New file. + * ada/acats-2/tests/c4/c45347d.ada: New file. + * ada/acats-2/tests/c4/c45411a.ada: New file. + * ada/acats-2/tests/c4/c45411b.dep: New file. + * ada/acats-2/tests/c4/c45411c.dep: New file. + * ada/acats-2/tests/c4/c45411d.ada: New file. + * ada/acats-2/tests/c4/c45413a.ada: New file. + * ada/acats-2/tests/c4/c45431a.ada: New file. + * ada/acats-2/tests/c4/c455001.a: New file. + * ada/acats-2/tests/c4/c45502b.dep: New file. + * ada/acats-2/tests/c4/c45502c.dep: New file. + * ada/acats-2/tests/c4/c45503a.ada: New file. + * ada/acats-2/tests/c4/c45503b.dep: New file. + * ada/acats-2/tests/c4/c45503c.dep: New file. + * ada/acats-2/tests/c4/c45504a.ada: New file. + * ada/acats-2/tests/c4/c45504b.dep: New file. + * ada/acats-2/tests/c4/c45504c.dep: New file. + * ada/acats-2/tests/c4/c45504d.ada: New file. + * ada/acats-2/tests/c4/c45504e.dep: New file. + * ada/acats-2/tests/c4/c45504f.dep: New file. + * ada/acats-2/tests/c4/c45505a.ada: New file. + * ada/acats-2/tests/c4/c45523a.ada: New file. + * ada/acats-2/tests/c4/c45531a.ada: New file. + * ada/acats-2/tests/c4/c45531b.ada: New file. + * ada/acats-2/tests/c4/c45531c.ada: New file. + * ada/acats-2/tests/c4/c45531d.ada: New file. + * ada/acats-2/tests/c4/c45531e.ada: New file. + * ada/acats-2/tests/c4/c45531f.ada: New file. + * ada/acats-2/tests/c4/c45531g.ada: New file. + * ada/acats-2/tests/c4/c45531h.ada: New file. + * ada/acats-2/tests/c4/c45531i.ada: New file. + * ada/acats-2/tests/c4/c45531j.ada: New file. + * ada/acats-2/tests/c4/c45531k.ada: New file. + * ada/acats-2/tests/c4/c45531l.ada: New file. + * ada/acats-2/tests/c4/c45531m.dep: New file. + * ada/acats-2/tests/c4/c45531n.dep: New file. + * ada/acats-2/tests/c4/c45531o.dep: New file. + * ada/acats-2/tests/c4/c45531p.dep: New file. + * ada/acats-2/tests/c4/c45532a.ada: New file. + * ada/acats-2/tests/c4/c45532b.ada: New file. + * ada/acats-2/tests/c4/c45532c.ada: New file. + * ada/acats-2/tests/c4/c45532d.ada: New file. + * ada/acats-2/tests/c4/c45532e.ada: New file. + * ada/acats-2/tests/c4/c45532f.ada: New file. + * ada/acats-2/tests/c4/c45532g.ada: New file. + * ada/acats-2/tests/c4/c45532h.ada: New file. + * ada/acats-2/tests/c4/c45532i.ada: New file. + * ada/acats-2/tests/c4/c45532j.ada: New file. + * ada/acats-2/tests/c4/c45532k.ada: New file. + * ada/acats-2/tests/c4/c45532l.ada: New file. + * ada/acats-2/tests/c4/c45532m.dep: New file. + * ada/acats-2/tests/c4/c45532n.dep: New file. + * ada/acats-2/tests/c4/c45532o.dep: New file. + * ada/acats-2/tests/c4/c45532p.dep: New file. + * ada/acats-2/tests/c4/c45534b.ada: New file. + * ada/acats-2/tests/c4/c45536a.dep: New file. + * ada/acats-2/tests/c4/c456001.a: New file. + * ada/acats-2/tests/c4/c45611a.ada: New file. + * ada/acats-2/tests/c4/c45611b.dep: New file. + * ada/acats-2/tests/c4/c45611c.dep: New file. + * ada/acats-2/tests/c4/c45613a.ada: New file. + * ada/acats-2/tests/c4/c45613b.dep: New file. + * ada/acats-2/tests/c4/c45613c.dep: New file. + * ada/acats-2/tests/c4/c45614a.ada: New file. + * ada/acats-2/tests/c4/c45614b.dep: New file. + * ada/acats-2/tests/c4/c45614c.dep: New file. + * ada/acats-2/tests/c4/c45631a.ada: New file. + * ada/acats-2/tests/c4/c45631b.dep: New file. + * ada/acats-2/tests/c4/c45631c.dep: New file. + * ada/acats-2/tests/c4/c45632a.ada: New file. + * ada/acats-2/tests/c4/c45632b.dep: New file. + * ada/acats-2/tests/c4/c45632c.dep: New file. + * ada/acats-2/tests/c4/c45651a.ada: New file. + * ada/acats-2/tests/c4/c45662a.ada: New file. + * ada/acats-2/tests/c4/c45662b.ada: New file. + * ada/acats-2/tests/c4/c45672a.ada: New file. + * ada/acats-2/tests/c4/c460001.a: New file. + * ada/acats-2/tests/c4/c460002.a: New file. + * ada/acats-2/tests/c4/c460004.a: New file. + * ada/acats-2/tests/c4/c460005.a: New file. + * ada/acats-2/tests/c4/c460006.a: New file. + * ada/acats-2/tests/c4/c460007.a: New file. + * ada/acats-2/tests/c4/c460008.a: New file. + * ada/acats-2/tests/c4/c460009.a: New file. + * ada/acats-2/tests/c4/c460010.a: New file. + * ada/acats-2/tests/c4/c460011.a: New file. + * ada/acats-2/tests/c4/c460012.a: New file. + * ada/acats-2/tests/c4/c460013.a: New file. + * ada/acats-2/tests/c4/c460014.a: New file. + * ada/acats-2/tests/c4/c46011a.ada: New file. + * ada/acats-2/tests/c4/c46013a.ada: New file. + * ada/acats-2/tests/c4/c46014a.ada: New file. + * ada/acats-2/tests/c4/c46021a.ada: New file. + * ada/acats-2/tests/c4/c46024a.ada: New file. + * ada/acats-2/tests/c4/c46031a.ada: New file. + * ada/acats-2/tests/c4/c46032a.ada: New file. + * ada/acats-2/tests/c4/c46033a.ada: New file. + * ada/acats-2/tests/c4/c46041a.ada: New file. + * ada/acats-2/tests/c4/c46042a.ada: New file. + * ada/acats-2/tests/c4/c46043b.ada: New file. + * ada/acats-2/tests/c4/c46044b.ada: New file. + * ada/acats-2/tests/c4/c46051a.ada: New file. + * ada/acats-2/tests/c4/c46051b.ada: New file. + * ada/acats-2/tests/c4/c46051c.ada: New file. + * ada/acats-2/tests/c4/c46052a.ada: New file. + * ada/acats-2/tests/c4/c46053a.ada: New file. + * ada/acats-2/tests/c4/c46054a.ada: New file. + * ada/acats-2/tests/c4/c460a01.a: New file. + * ada/acats-2/tests/c4/c460a02.a: New file. + * ada/acats-2/tests/c4/c47002a.ada: New file. + * ada/acats-2/tests/c4/c47002b.ada: New file. + * ada/acats-2/tests/c4/c47002c.ada: New file. + * ada/acats-2/tests/c4/c47002d.ada: New file. + * ada/acats-2/tests/c4/c47003a.ada: New file. + * ada/acats-2/tests/c4/c47004a.ada: New file. + * ada/acats-2/tests/c4/c47005a.ada: New file. + * ada/acats-2/tests/c4/c47006a.ada: New file. + * ada/acats-2/tests/c4/c47007a.ada: New file. + * ada/acats-2/tests/c4/c47008a.ada: New file. + * ada/acats-2/tests/c4/c47009a.ada: New file. + * ada/acats-2/tests/c4/c47009b.ada: New file. + * ada/acats-2/tests/c4/c48004a.ada: New file. + * ada/acats-2/tests/c4/c48004b.ada: New file. + * ada/acats-2/tests/c4/c48004c.ada: New file. + * ada/acats-2/tests/c4/c48004d.ada: New file. + * ada/acats-2/tests/c4/c48004e.ada: New file. + * ada/acats-2/tests/c4/c48004f.ada: New file. + * ada/acats-2/tests/c4/c48005a.ada: New file. + * ada/acats-2/tests/c4/c48005b.ada: New file. + * ada/acats-2/tests/c4/c48006a.ada: New file. + * ada/acats-2/tests/c4/c48006b.ada: New file. + * ada/acats-2/tests/c4/c48007a.ada: New file. + * ada/acats-2/tests/c4/c48007b.ada: New file. + * ada/acats-2/tests/c4/c48007c.ada: New file. + * ada/acats-2/tests/c4/c48008a.ada: New file. + * ada/acats-2/tests/c4/c48008c.ada: New file. + * ada/acats-2/tests/c4/c48009a.ada: New file. + * ada/acats-2/tests/c4/c48009b.ada: New file. + * ada/acats-2/tests/c4/c48009c.ada: New file. + * ada/acats-2/tests/c4/c48009d.ada: New file. + * ada/acats-2/tests/c4/c48009e.ada: New file. + * ada/acats-2/tests/c4/c48009f.ada: New file. + * ada/acats-2/tests/c4/c48009g.ada: New file. + * ada/acats-2/tests/c4/c48009h.ada: New file. + * ada/acats-2/tests/c4/c48009i.ada: New file. + * ada/acats-2/tests/c4/c48009j.ada: New file. + * ada/acats-2/tests/c4/c48010a.ada: New file. + * ada/acats-2/tests/c4/c48011a.ada: New file. + * ada/acats-2/tests/c4/c48012a.ada: New file. + * ada/acats-2/tests/c4/c490001.a: New file. + * ada/acats-2/tests/c4/c490002.a: New file. + * ada/acats-2/tests/c4/c490003.a: New file. + * ada/acats-2/tests/c4/c49020a.ada: New file. + * ada/acats-2/tests/c4/c49021a.ada: New file. + * ada/acats-2/tests/c4/c49022a.ada: New file. + * ada/acats-2/tests/c4/c49022b.ada: New file. + * ada/acats-2/tests/c4/c49022c.ada: New file. + * ada/acats-2/tests/c4/c49023a.ada: New file. + * ada/acats-2/tests/c4/c49024a.ada: New file. + * ada/acats-2/tests/c4/c49025a.ada: New file. + * ada/acats-2/tests/c4/c49026a.ada: New file. + * ada/acats-2/tests/c4/c4a005b.ada: New file. + * ada/acats-2/tests/c4/c4a006a.ada: New file. + * ada/acats-2/tests/c4/c4a007a.tst: New file. + * ada/acats-2/tests/c4/c4a010a.ada: New file. + * ada/acats-2/tests/c4/c4a010b.ada: New file. + * ada/acats-2/tests/c4/c4a011a.ada: New file. + * ada/acats-2/tests/c4/c4a012b.ada: New file. + * ada/acats-2/tests/c4/c4a013a.ada: New file. + * ada/acats-2/tests/c4/c4a014a.ada: New file. + * ada/acats-2/tests/c5/c51004a.ada: New file. + * ada/acats-2/tests/c5/c52005a.ada: New file. + * ada/acats-2/tests/c5/c52005b.ada: New file. + * ada/acats-2/tests/c5/c52005c.ada: New file. + * ada/acats-2/tests/c5/c52005d.ada: New file. + * ada/acats-2/tests/c5/c52005e.ada: New file. + * ada/acats-2/tests/c5/c52005f.ada: New file. + * ada/acats-2/tests/c5/c52008a.ada: New file. + * ada/acats-2/tests/c5/c52008b.ada: New file. + * ada/acats-2/tests/c5/c52009a.ada: New file. + * ada/acats-2/tests/c5/c52009b.ada: New file. + * ada/acats-2/tests/c5/c52010a.ada: New file. + * ada/acats-2/tests/c5/c52011a.ada: New file. + * ada/acats-2/tests/c5/c52011b.ada: New file. + * ada/acats-2/tests/c5/c52101a.ada: New file. + * ada/acats-2/tests/c5/c52102a.ada: New file. + * ada/acats-2/tests/c5/c52102b.ada: New file. + * ada/acats-2/tests/c5/c52102c.ada: New file. + * ada/acats-2/tests/c5/c52102d.ada: New file. + * ada/acats-2/tests/c5/c52103a.ada: New file. + * ada/acats-2/tests/c5/c52103b.ada: New file. + * ada/acats-2/tests/c5/c52103c.ada: New file. + * ada/acats-2/tests/c5/c52103f.ada: New file. + * ada/acats-2/tests/c5/c52103g.ada: New file. + * ada/acats-2/tests/c5/c52103h.ada: New file. + * ada/acats-2/tests/c5/c52103k.ada: New file. + * ada/acats-2/tests/c5/c52103l.ada: New file. + * ada/acats-2/tests/c5/c52103m.ada: New file. + * ada/acats-2/tests/c5/c52103p.ada: New file. + * ada/acats-2/tests/c5/c52103q.ada: New file. + * ada/acats-2/tests/c5/c52103r.ada: New file. + * ada/acats-2/tests/c5/c52103x.ada: New file. + * ada/acats-2/tests/c5/c52104a.ada: New file. + * ada/acats-2/tests/c5/c52104b.ada: New file. + * ada/acats-2/tests/c5/c52104c.ada: New file. + * ada/acats-2/tests/c5/c52104f.ada: New file. + * ada/acats-2/tests/c5/c52104g.ada: New file. + * ada/acats-2/tests/c5/c52104h.ada: New file. + * ada/acats-2/tests/c5/c52104k.ada: New file. + * ada/acats-2/tests/c5/c52104l.ada: New file. + * ada/acats-2/tests/c5/c52104m.ada: New file. + * ada/acats-2/tests/c5/c52104p.ada: New file. + * ada/acats-2/tests/c5/c52104q.ada: New file. + * ada/acats-2/tests/c5/c52104r.ada: New file. + * ada/acats-2/tests/c5/c52104x.ada: New file. + * ada/acats-2/tests/c5/c52104y.ada: New file. + * ada/acats-2/tests/c5/c53007a.ada: New file. + * ada/acats-2/tests/c5/c540001.a: New file. + * ada/acats-2/tests/c5/c54a03a.ada: New file. + * ada/acats-2/tests/c5/c54a04a.ada: New file. + * ada/acats-2/tests/c5/c54a07a.ada: New file. + * ada/acats-2/tests/c5/c54a13a.ada: New file. + * ada/acats-2/tests/c5/c54a13b.ada: New file. + * ada/acats-2/tests/c5/c54a13c.ada: New file. + * ada/acats-2/tests/c5/c54a13d.ada: New file. + * ada/acats-2/tests/c5/c54a22a.ada: New file. + * ada/acats-2/tests/c5/c54a23a.ada: New file. + * ada/acats-2/tests/c5/c54a24a.ada: New file. + * ada/acats-2/tests/c5/c54a24b.ada: New file. + * ada/acats-2/tests/c5/c54a42a.ada: New file. + * ada/acats-2/tests/c5/c54a42b.ada: New file. + * ada/acats-2/tests/c5/c54a42c.ada: New file. + * ada/acats-2/tests/c5/c54a42d.ada: New file. + * ada/acats-2/tests/c5/c54a42e.ada: New file. + * ada/acats-2/tests/c5/c54a42f.ada: New file. + * ada/acats-2/tests/c5/c54a42g.ada: New file. + * ada/acats-2/tests/c5/c55b03a.ada: New file. + * ada/acats-2/tests/c5/c55b04a.ada: New file. + * ada/acats-2/tests/c5/c55b05a.ada: New file. + * ada/acats-2/tests/c5/c55b06a.ada: New file. + * ada/acats-2/tests/c5/c55b06b.ada: New file. + * ada/acats-2/tests/c5/c55b07a.dep: New file. + * ada/acats-2/tests/c5/c55b07b.dep: New file. + * ada/acats-2/tests/c5/c55b10a.ada: New file. + * ada/acats-2/tests/c5/c55b11a.ada: New file. + * ada/acats-2/tests/c5/c55b11b.ada: New file. + * ada/acats-2/tests/c5/c55b15a.ada: New file. + * ada/acats-2/tests/c5/c55b16a.ada: New file. + * ada/acats-2/tests/c5/c55c02a.ada: New file. + * ada/acats-2/tests/c5/c55c02b.ada: New file. + * ada/acats-2/tests/c5/c56002a.ada: New file. + * ada/acats-2/tests/c5/c57003a.ada: New file. + * ada/acats-2/tests/c5/c57004a.ada: New file. + * ada/acats-2/tests/c5/c57004b.ada: New file. + * ada/acats-2/tests/c5/c58004c.ada: New file. + * ada/acats-2/tests/c5/c58004d.ada: New file. + * ada/acats-2/tests/c5/c58004g.ada: New file. + * ada/acats-2/tests/c5/c58005a.ada: New file. + * ada/acats-2/tests/c5/c58005b.ada: New file. + * ada/acats-2/tests/c5/c58005h.ada: New file. + * ada/acats-2/tests/c5/c58006a.ada: New file. + * ada/acats-2/tests/c5/c58006b.ada: New file. + * ada/acats-2/tests/c5/c59002a.ada: New file. + * ada/acats-2/tests/c5/c59002b.ada: New file. + * ada/acats-2/tests/c5/c59002c.ada: New file. + * ada/acats-2/tests/c6/c61008a.ada: New file. + * ada/acats-2/tests/c6/c61009a.ada: New file. + * ada/acats-2/tests/c6/c61010a.ada: New file. + * ada/acats-2/tests/c6/c620001.a: New file. + * ada/acats-2/tests/c6/c620002.a: New file. + * ada/acats-2/tests/c6/c62002a.ada: New file. + * ada/acats-2/tests/c6/c62003a.ada: New file. + * ada/acats-2/tests/c6/c62003b.ada: New file. + * ada/acats-2/tests/c6/c62004a.ada: New file. + * ada/acats-2/tests/c6/c62006a.ada: New file. + * ada/acats-2/tests/c6/c631001.a: New file. + * ada/acats-2/tests/c6/c640001.a: New file. + * ada/acats-2/tests/c6/c64002b.ada: New file. + * ada/acats-2/tests/c6/c64004g.ada: New file. + * ada/acats-2/tests/c6/c64005a.ada: New file. + * ada/acats-2/tests/c6/c64005b.ada: New file. + * ada/acats-2/tests/c6/c64005c.ada: New file. + * ada/acats-2/tests/c6/c64005d0.ada: New file. + * ada/acats-2/tests/c6/c64005da.ada: New file. + * ada/acats-2/tests/c6/c64005db.ada: New file. + * ada/acats-2/tests/c6/c64005dc.ada: New file. + * ada/acats-2/tests/c6/c641001.a: New file. + * ada/acats-2/tests/c6/c64103b.ada: New file. + * ada/acats-2/tests/c6/c64103c.ada: New file. + * ada/acats-2/tests/c6/c64103d.ada: New file. + * ada/acats-2/tests/c6/c64103e.ada: New file. + * ada/acats-2/tests/c6/c64103f.ada: New file. + * ada/acats-2/tests/c6/c64104a.ada: New file. + * ada/acats-2/tests/c6/c64104b.ada: New file. + * ada/acats-2/tests/c6/c64104c.ada: New file. + * ada/acats-2/tests/c6/c64104d.ada: New file. + * ada/acats-2/tests/c6/c64104e.ada: New file. + * ada/acats-2/tests/c6/c64104f.ada: New file. + * ada/acats-2/tests/c6/c64104g.ada: New file. + * ada/acats-2/tests/c6/c64104h.ada: New file. + * ada/acats-2/tests/c6/c64104i.ada: New file. + * ada/acats-2/tests/c6/c64104j.ada: New file. + * ada/acats-2/tests/c6/c64104k.ada: New file. + * ada/acats-2/tests/c6/c64104l.ada: New file. + * ada/acats-2/tests/c6/c64104m.ada: New file. + * ada/acats-2/tests/c6/c64104n.ada: New file. + * ada/acats-2/tests/c6/c64104o.ada: New file. + * ada/acats-2/tests/c6/c64105a.ada: New file. + * ada/acats-2/tests/c6/c64105b.ada: New file. + * ada/acats-2/tests/c6/c64105c.ada: New file. + * ada/acats-2/tests/c6/c64105d.ada: New file. + * ada/acats-2/tests/c6/c64106a.ada: New file. + * ada/acats-2/tests/c6/c64106b.ada: New file. + * ada/acats-2/tests/c6/c64106c.ada: New file. + * ada/acats-2/tests/c6/c64106d.ada: New file. + * ada/acats-2/tests/c6/c64107a.ada: New file. + * ada/acats-2/tests/c6/c64108a.ada: New file. + * ada/acats-2/tests/c6/c64109a.ada: New file. + * ada/acats-2/tests/c6/c64109b.ada: New file. + * ada/acats-2/tests/c6/c64109c.ada: New file. + * ada/acats-2/tests/c6/c64109d.ada: New file. + * ada/acats-2/tests/c6/c64109e.ada: New file. + * ada/acats-2/tests/c6/c64109f.ada: New file. + * ada/acats-2/tests/c6/c64109g.ada: New file. + * ada/acats-2/tests/c6/c64109h.ada: New file. + * ada/acats-2/tests/c6/c64109i.ada: New file. + * ada/acats-2/tests/c6/c64109j.ada: New file. + * ada/acats-2/tests/c6/c64109k.ada: New file. + * ada/acats-2/tests/c6/c64109l.ada: New file. + * ada/acats-2/tests/c6/c64201b.ada: New file. + * ada/acats-2/tests/c6/c64201c.ada: New file. + * ada/acats-2/tests/c6/c64202a.ada: New file. + * ada/acats-2/tests/c6/c650001.a: New file. + * ada/acats-2/tests/c6/c65003a.ada: New file. + * ada/acats-2/tests/c6/c65003b.ada: New file. + * ada/acats-2/tests/c6/c66002a.ada: New file. + * ada/acats-2/tests/c6/c66002c.ada: New file. + * ada/acats-2/tests/c6/c66002d.ada: New file. + * ada/acats-2/tests/c6/c66002e.ada: New file. + * ada/acats-2/tests/c6/c66002f.ada: New file. + * ada/acats-2/tests/c6/c66002g.ada: New file. + * ada/acats-2/tests/c6/c67002a.ada: New file. + * ada/acats-2/tests/c6/c67002b.ada: New file. + * ada/acats-2/tests/c6/c67002c.ada: New file. + * ada/acats-2/tests/c6/c67002d.ada: New file. + * ada/acats-2/tests/c6/c67002e.ada: New file. + * ada/acats-2/tests/c6/c67003f.ada: New file. + * ada/acats-2/tests/c6/c67005a.ada: New file. + * ada/acats-2/tests/c6/c67005b.ada: New file. + * ada/acats-2/tests/c6/c67005c.ada: New file. + * ada/acats-2/tests/c6/c67005d.ada: New file. + * ada/acats-2/tests/c7/c72001b.ada: New file. + * ada/acats-2/tests/c7/c72002a.ada: New file. + * ada/acats-2/tests/c7/c730001.a: New file. + * ada/acats-2/tests/c7/c730002.a: New file. + * ada/acats-2/tests/c7/c730003.a: New file. + * ada/acats-2/tests/c7/c730004.a: New file. + * ada/acats-2/tests/c7/c73002a.ada: New file. + * ada/acats-2/tests/c7/c730a01.a: New file. + * ada/acats-2/tests/c7/c730a02.a: New file. + * ada/acats-2/tests/c7/c731001.a: New file. + * ada/acats-2/tests/c7/c74004a.ada: New file. + * ada/acats-2/tests/c7/c74203a.ada: New file. + * ada/acats-2/tests/c7/c74206a.ada: New file. + * ada/acats-2/tests/c7/c74207b.ada: New file. + * ada/acats-2/tests/c7/c74208a.ada: New file. + * ada/acats-2/tests/c7/c74208b.ada: New file. + * ada/acats-2/tests/c7/c74209a.ada: New file. + * ada/acats-2/tests/c7/c74210a.ada: New file. + * ada/acats-2/tests/c7/c74211a.ada: New file. + * ada/acats-2/tests/c7/c74211b.ada: New file. + * ada/acats-2/tests/c7/c74302a.ada: New file. + * ada/acats-2/tests/c7/c74302b.ada: New file. + * ada/acats-2/tests/c7/c74305a.ada: New file. + * ada/acats-2/tests/c7/c74305b.ada: New file. + * ada/acats-2/tests/c7/c74306a.ada: New file. + * ada/acats-2/tests/c7/c74307a.ada: New file. + * ada/acats-2/tests/c7/c74401d.ada: New file. + * ada/acats-2/tests/c7/c74401e.ada: New file. + * ada/acats-2/tests/c7/c74401k.ada: New file. + * ada/acats-2/tests/c7/c74401q.ada: New file. + * ada/acats-2/tests/c7/c74402a.ada: New file. + * ada/acats-2/tests/c7/c74402b.ada: New file. + * ada/acats-2/tests/c7/c74406a.ada: New file. + * ada/acats-2/tests/c7/c74407b.ada: New file. + * ada/acats-2/tests/c7/c74409b.ada: New file. + * ada/acats-2/tests/c7/c760001.a: New file. + * ada/acats-2/tests/c7/c760002.a: New file. + * ada/acats-2/tests/c7/c760007.a: New file. + * ada/acats-2/tests/c7/c760009.a: New file. + * ada/acats-2/tests/c7/c760010.a: New file. + * ada/acats-2/tests/c7/c760011.a: New file. + * ada/acats-2/tests/c7/c760012.a: New file. + * ada/acats-2/tests/c7/c760013.a: New file. + * ada/acats-2/tests/c7/c761001.a: New file. + * ada/acats-2/tests/c7/c761002.a: New file. + * ada/acats-2/tests/c7/c761003.a: New file. + * ada/acats-2/tests/c7/c761004.a: New file. + * ada/acats-2/tests/c7/c761005.a: New file. + * ada/acats-2/tests/c7/c761006.a: New file. + * ada/acats-2/tests/c7/c761007.a: New file. + * ada/acats-2/tests/c7/c761010.a: New file. + * ada/acats-2/tests/c7/c761011.a: New file. + * ada/acats-2/tests/c7/c761012.a: New file. + * ada/acats-2/tests/c8/c83007a.ada: New file. + * ada/acats-2/tests/c8/c83012d.ada: New file. + * ada/acats-2/tests/c8/c83022a.ada: New file. + * ada/acats-2/tests/c8/c83022g0.ada: New file. + * ada/acats-2/tests/c8/c83022g1.ada: New file. + * ada/acats-2/tests/c8/c83023a.ada: New file. + * ada/acats-2/tests/c8/c83024a.ada: New file. + * ada/acats-2/tests/c8/c83024e0.ada: New file. + * ada/acats-2/tests/c8/c83024e1.ada: New file. + * ada/acats-2/tests/c8/c83025a.ada: New file. + * ada/acats-2/tests/c8/c83025c.ada: New file. + * ada/acats-2/tests/c8/c83027a.ada: New file. + * ada/acats-2/tests/c8/c83027c.ada: New file. + * ada/acats-2/tests/c8/c83028a.ada: New file. + * ada/acats-2/tests/c8/c83029a.ada: New file. + * ada/acats-2/tests/c8/c83030a.ada: New file. + * ada/acats-2/tests/c8/c83030c.ada: New file. + * ada/acats-2/tests/c8/c83031a.ada: New file. + * ada/acats-2/tests/c8/c83031c.ada: New file. + * ada/acats-2/tests/c8/c83031e.ada: New file. + * ada/acats-2/tests/c8/c83032a.ada: New file. + * ada/acats-2/tests/c8/c83033a.ada: New file. + * ada/acats-2/tests/c8/c83051a.ada: New file. + * ada/acats-2/tests/c8/c83b02a.ada: New file. + * ada/acats-2/tests/c8/c83b02b.ada: New file. + * ada/acats-2/tests/c8/c83e02a.ada: New file. + * ada/acats-2/tests/c8/c83e02b.ada: New file. + * ada/acats-2/tests/c8/c83e03a.ada: New file. + * ada/acats-2/tests/c8/c83f01a.ada: New file. + * ada/acats-2/tests/c8/c83f01b.ada: New file. + * ada/acats-2/tests/c8/c83f01c0.ada: New file. + * ada/acats-2/tests/c8/c83f01c1.ada: New file. + * ada/acats-2/tests/c8/c83f01c2.ada: New file. + * ada/acats-2/tests/c8/c83f01d0.ada: New file. + * ada/acats-2/tests/c8/c83f01d1.ada: New file. + * ada/acats-2/tests/c8/c83f03a.ada: New file. + * ada/acats-2/tests/c8/c83f03b.ada: New file. + * ada/acats-2/tests/c8/c83f03c0.ada: New file. + * ada/acats-2/tests/c8/c83f03c1.ada: New file. + * ada/acats-2/tests/c8/c83f03c2.ada: New file. + * ada/acats-2/tests/c8/c83f03d0.ada: New file. + * ada/acats-2/tests/c8/c83f03d1.ada: New file. + * ada/acats-2/tests/c8/c840001.a: New file. + * ada/acats-2/tests/c8/c84002a.ada: New file. + * ada/acats-2/tests/c8/c84005a.ada: New file. + * ada/acats-2/tests/c8/c84008a.ada: New file. + * ada/acats-2/tests/c8/c84009a.ada: New file. + * ada/acats-2/tests/c8/c85004b.ada: New file. + * ada/acats-2/tests/c8/c85005a.ada: New file. + * ada/acats-2/tests/c8/c85005b.ada: New file. + * ada/acats-2/tests/c8/c85005c.ada: New file. + * ada/acats-2/tests/c8/c85005d.ada: New file. + * ada/acats-2/tests/c8/c85005e.ada: New file. + * ada/acats-2/tests/c8/c85005f.ada: New file. + * ada/acats-2/tests/c8/c85005g.ada: New file. + * ada/acats-2/tests/c8/c85006a.ada: New file. + * ada/acats-2/tests/c8/c85006b.ada: New file. + * ada/acats-2/tests/c8/c85006c.ada: New file. + * ada/acats-2/tests/c8/c85006d.ada: New file. + * ada/acats-2/tests/c8/c85006e.ada: New file. + * ada/acats-2/tests/c8/c85006f.ada: New file. + * ada/acats-2/tests/c8/c85006g.ada: New file. + * ada/acats-2/tests/c8/c85007a.ada: New file. + * ada/acats-2/tests/c8/c85007e.ada: New file. + * ada/acats-2/tests/c8/c85009a.ada: New file. + * ada/acats-2/tests/c8/c85011a.ada: New file. + * ada/acats-2/tests/c8/c85013a.ada: New file. + * ada/acats-2/tests/c8/c85014a.ada: New file. + * ada/acats-2/tests/c8/c85014b.ada: New file. + * ada/acats-2/tests/c8/c85014c.ada: New file. + * ada/acats-2/tests/c8/c85017a.ada: New file. + * ada/acats-2/tests/c8/c85018a.ada: New file. + * ada/acats-2/tests/c8/c85018b.ada: New file. + * ada/acats-2/tests/c8/c85019a.ada: New file. + * ada/acats-2/tests/c8/c854001.a: New file. + * ada/acats-2/tests/c8/c854002.a: New file. + * ada/acats-2/tests/c8/c854003.a: New file. + * ada/acats-2/tests/c8/c86003a.ada: New file. + * ada/acats-2/tests/c8/c86004a.ada: New file. + * ada/acats-2/tests/c8/c86004b0.ada: New file. + * ada/acats-2/tests/c8/c86004b1.ada: New file. + * ada/acats-2/tests/c8/c86004b2.ada: New file. + * ada/acats-2/tests/c8/c86004c0.ada: New file. + * ada/acats-2/tests/c8/c86004c1.ada: New file. + * ada/acats-2/tests/c8/c86004c2.ada: New file. + * ada/acats-2/tests/c8/c86006i.ada: New file. + * ada/acats-2/tests/c8/c86007a.ada: New file. + * ada/acats-2/tests/c8/c87a05a.ada: New file. + * ada/acats-2/tests/c8/c87a05b.ada: New file. + * ada/acats-2/tests/c8/c87b02a.ada: New file. + * ada/acats-2/tests/c8/c87b02b.ada: New file. + * ada/acats-2/tests/c8/c87b03a.ada: New file. + * ada/acats-2/tests/c8/c87b04a.ada: New file. + * ada/acats-2/tests/c8/c87b04b.ada: New file. + * ada/acats-2/tests/c8/c87b04c.ada: New file. + * ada/acats-2/tests/c8/c87b05a.ada: New file. + * ada/acats-2/tests/c8/c87b06a.ada: New file. + * ada/acats-2/tests/c8/c87b07a.ada: New file. + * ada/acats-2/tests/c8/c87b07b.ada: New file. + * ada/acats-2/tests/c8/c87b07c.ada: New file. + * ada/acats-2/tests/c8/c87b07d.ada: New file. + * ada/acats-2/tests/c8/c87b07e.ada: New file. + * ada/acats-2/tests/c8/c87b08a.ada: New file. + * ada/acats-2/tests/c8/c87b09a.ada: New file. + * ada/acats-2/tests/c8/c87b09c.ada: New file. + * ada/acats-2/tests/c8/c87b10a.ada: New file. + * ada/acats-2/tests/c8/c87b11a.ada: New file. + * ada/acats-2/tests/c8/c87b11b.ada: New file. + * ada/acats-2/tests/c8/c87b13a.ada: New file. + * ada/acats-2/tests/c8/c87b14a.ada: New file. + * ada/acats-2/tests/c8/c87b14b.ada: New file. + * ada/acats-2/tests/c8/c87b14c.ada: New file. + * ada/acats-2/tests/c8/c87b14d.ada: New file. + * ada/acats-2/tests/c8/c87b15a.ada: New file. + * ada/acats-2/tests/c8/c87b16a.ada: New file. + * ada/acats-2/tests/c8/c87b17a.ada: New file. + * ada/acats-2/tests/c8/c87b18a.ada: New file. + * ada/acats-2/tests/c8/c87b18b.ada: New file. + * ada/acats-2/tests/c8/c87b19a.ada: New file. + * ada/acats-2/tests/c8/c87b23a.ada: New file. + * ada/acats-2/tests/c8/c87b24a.ada: New file. + * ada/acats-2/tests/c8/c87b24b.ada: New file. + * ada/acats-2/tests/c8/c87b26b.ada: New file. + * ada/acats-2/tests/c8/c87b27a.ada: New file. + * ada/acats-2/tests/c8/c87b28a.ada: New file. + * ada/acats-2/tests/c8/c87b29a.ada: New file. + * ada/acats-2/tests/c8/c87b30a.ada: New file. + * ada/acats-2/tests/c8/c87b31a.ada: New file. + * ada/acats-2/tests/c8/c87b32a.ada: New file. + * ada/acats-2/tests/c8/c87b33a.ada: New file. + * ada/acats-2/tests/c8/c87b34a.ada: New file. + * ada/acats-2/tests/c8/c87b34b.ada: New file. + * ada/acats-2/tests/c8/c87b34c.ada: New file. + * ada/acats-2/tests/c8/c87b35c.ada: New file. + * ada/acats-2/tests/c8/c87b38a.ada: New file. + * ada/acats-2/tests/c8/c87b39a.ada: New file. + * ada/acats-2/tests/c8/c87b40a.ada: New file. + * ada/acats-2/tests/c8/c87b41a.ada: New file. + * ada/acats-2/tests/c8/c87b42a.ada: New file. + * ada/acats-2/tests/c8/c87b43a.ada: New file. + * ada/acats-2/tests/c8/c87b44a.ada: New file. + * ada/acats-2/tests/c8/c87b45a.ada: New file. + * ada/acats-2/tests/c8/c87b45c.ada: New file. + * ada/acats-2/tests/c8/c87b47a.ada: New file. + * ada/acats-2/tests/c8/c87b48a.ada: New file. + * ada/acats-2/tests/c8/c87b48b.ada: New file. + * ada/acats-2/tests/c8/c87b50a.ada: New file. + * ada/acats-2/tests/c8/c87b54a.ada: New file. + * ada/acats-2/tests/c8/c87b57a.ada: New file. + * ada/acats-2/tests/c8/c87b62a.ada: New file. + * ada/acats-2/tests/c8/c87b62b.ada: New file. + * ada/acats-2/tests/c8/c87b62c.ada: New file. + * ada/acats-2/tests/c8/c87b62d.tst: New file. + * ada/acats-2/tests/c9/c910001.a: New file. + * ada/acats-2/tests/c9/c910002.a: New file. + * ada/acats-2/tests/c9/c910003.a: New file. + * ada/acats-2/tests/c9/c91004b.ada: New file. + * ada/acats-2/tests/c9/c91004c.ada: New file. + * ada/acats-2/tests/c9/c91006a.ada: New file. + * ada/acats-2/tests/c9/c91007a.ada: New file. + * ada/acats-2/tests/c9/c92002a.ada: New file. + * ada/acats-2/tests/c9/c92003a.ada: New file. + * ada/acats-2/tests/c9/c92005a.ada: New file. + * ada/acats-2/tests/c9/c92005b.ada: New file. + * ada/acats-2/tests/c9/c92006a.ada: New file. + * ada/acats-2/tests/c9/c930001.a: New file. + * ada/acats-2/tests/c9/c93001a.ada: New file. + * ada/acats-2/tests/c9/c93002a.ada: New file. + * ada/acats-2/tests/c9/c93003a.ada: New file. + * ada/acats-2/tests/c9/c93004a.ada: New file. + * ada/acats-2/tests/c9/c93004b.ada: New file. + * ada/acats-2/tests/c9/c93004c.ada: New file. + * ada/acats-2/tests/c9/c93004d.ada: New file. + * ada/acats-2/tests/c9/c93004f.ada: New file. + * ada/acats-2/tests/c9/c93005a.ada: New file. + * ada/acats-2/tests/c9/c93005b.ada: New file. + * ada/acats-2/tests/c9/c93005c.ada: New file. + * ada/acats-2/tests/c9/c93005d.ada: New file. + * ada/acats-2/tests/c9/c93005e.ada: New file. + * ada/acats-2/tests/c9/c93005f.ada: New file. + * ada/acats-2/tests/c9/c93005g.ada: New file. + * ada/acats-2/tests/c9/c93005h.ada: New file. + * ada/acats-2/tests/c9/c93006a.ada: New file. + * ada/acats-2/tests/c9/c93007a.ada: New file. + * ada/acats-2/tests/c9/c93008a.ada: New file. + * ada/acats-2/tests/c9/c93008b.ada: New file. + * ada/acats-2/tests/c9/c940001.a: New file. + * ada/acats-2/tests/c9/c940002.a: New file. + * ada/acats-2/tests/c9/c940004.a: New file. + * ada/acats-2/tests/c9/c940005.a: New file. + * ada/acats-2/tests/c9/c940006.a: New file. + * ada/acats-2/tests/c9/c940007.a: New file. + * ada/acats-2/tests/c9/c940010.a: New file. + * ada/acats-2/tests/c9/c940011.a: New file. + * ada/acats-2/tests/c9/c940012.a: New file. + * ada/acats-2/tests/c9/c940013.a: New file. + * ada/acats-2/tests/c9/c940014.a: New file. + * ada/acats-2/tests/c9/c940015.a: New file. + * ada/acats-2/tests/c9/c940016.a: New file. + * ada/acats-2/tests/c9/c94001a.ada: New file. + * ada/acats-2/tests/c9/c94001b.ada: New file. + * ada/acats-2/tests/c9/c94001c.ada: New file. + * ada/acats-2/tests/c9/c94001e.ada: New file. + * ada/acats-2/tests/c9/c94001f.ada: New file. + * ada/acats-2/tests/c9/c94001g.ada: New file. + * ada/acats-2/tests/c9/c94002a.ada: New file. + * ada/acats-2/tests/c9/c94002b.ada: New file. + * ada/acats-2/tests/c9/c94002d.ada: New file. + * ada/acats-2/tests/c9/c94002e.ada: New file. + * ada/acats-2/tests/c9/c94002f.ada: New file. + * ada/acats-2/tests/c9/c94002g.ada: New file. + * ada/acats-2/tests/c9/c94004a.ada: New file. + * ada/acats-2/tests/c9/c94004b.ada: New file. + * ada/acats-2/tests/c9/c94004c.ada: New file. + * ada/acats-2/tests/c9/c94005a.ada: New file. + * ada/acats-2/tests/c9/c94005b.ada: New file. + * ada/acats-2/tests/c9/c94006a.ada: New file. + * ada/acats-2/tests/c9/c94007a.ada: New file. + * ada/acats-2/tests/c9/c94007b.ada: New file. + * ada/acats-2/tests/c9/c94008a.ada: New file. + * ada/acats-2/tests/c9/c94008b.ada: New file. + * ada/acats-2/tests/c9/c94008c.ada: New file. + * ada/acats-2/tests/c9/c94008d.ada: New file. + * ada/acats-2/tests/c9/c94010a.ada: New file. + * ada/acats-2/tests/c9/c94011a.ada: New file. + * ada/acats-2/tests/c9/c94020a.ada: New file. + * ada/acats-2/tests/c9/c940a03.a: New file. + * ada/acats-2/tests/c9/c95008a.ada: New file. + * ada/acats-2/tests/c9/c95009a.ada: New file. + * ada/acats-2/tests/c9/c95010a.ada: New file. + * ada/acats-2/tests/c9/c95011a.ada: New file. + * ada/acats-2/tests/c9/c95012a.ada: New file. + * ada/acats-2/tests/c9/c95021a.ada: New file. + * ada/acats-2/tests/c9/c95022a.ada: New file. + * ada/acats-2/tests/c9/c95022b.ada: New file. + * ada/acats-2/tests/c9/c95033a.ada: New file. + * ada/acats-2/tests/c9/c95033b.ada: New file. + * ada/acats-2/tests/c9/c95034a.ada: New file. + * ada/acats-2/tests/c9/c95034b.ada: New file. + * ada/acats-2/tests/c9/c95035a.ada: New file. + * ada/acats-2/tests/c9/c95040a.ada: New file. + * ada/acats-2/tests/c9/c95040b.ada: New file. + * ada/acats-2/tests/c9/c95040c.ada: New file. + * ada/acats-2/tests/c9/c95040d.ada: New file. + * ada/acats-2/tests/c9/c95041a.ada: New file. + * ada/acats-2/tests/c9/c95065a.ada: New file. + * ada/acats-2/tests/c9/c95065b.ada: New file. + * ada/acats-2/tests/c9/c95065c.ada: New file. + * ada/acats-2/tests/c9/c95065d.ada: New file. + * ada/acats-2/tests/c9/c95065e.ada: New file. + * ada/acats-2/tests/c9/c95065f.ada: New file. + * ada/acats-2/tests/c9/c95066a.ada: New file. + * ada/acats-2/tests/c9/c95067a.ada: New file. + * ada/acats-2/tests/c9/c95071a.ada: New file. + * ada/acats-2/tests/c9/c95072a.ada: New file. + * ada/acats-2/tests/c9/c95072b.ada: New file. + * ada/acats-2/tests/c9/c95073a.ada: New file. + * ada/acats-2/tests/c9/c95074c.ada: New file. + * ada/acats-2/tests/c9/c95076a.ada: New file. + * ada/acats-2/tests/c9/c95078a.ada: New file. + * ada/acats-2/tests/c9/c95080b.ada: New file. + * ada/acats-2/tests/c9/c95082g.ada: New file. + * ada/acats-2/tests/c9/c95085a.ada: New file. + * ada/acats-2/tests/c9/c95085b.ada: New file. + * ada/acats-2/tests/c9/c95085c.ada: New file. + * ada/acats-2/tests/c9/c95085d.ada: New file. + * ada/acats-2/tests/c9/c95085e.ada: New file. + * ada/acats-2/tests/c9/c95085f.ada: New file. + * ada/acats-2/tests/c9/c95085g.ada: New file. + * ada/acats-2/tests/c9/c95085h.ada: New file. + * ada/acats-2/tests/c9/c95085i.ada: New file. + * ada/acats-2/tests/c9/c95085j.ada: New file. + * ada/acats-2/tests/c9/c95085k.ada: New file. + * ada/acats-2/tests/c9/c95085l.ada: New file. + * ada/acats-2/tests/c9/c95085m.ada: New file. + * ada/acats-2/tests/c9/c95085n.ada: New file. + * ada/acats-2/tests/c9/c95085o.ada: New file. + * ada/acats-2/tests/c9/c95086a.ada: New file. + * ada/acats-2/tests/c9/c95086b.ada: New file. + * ada/acats-2/tests/c9/c95086c.ada: New file. + * ada/acats-2/tests/c9/c95086d.ada: New file. + * ada/acats-2/tests/c9/c95086e.ada: New file. + * ada/acats-2/tests/c9/c95086f.ada: New file. + * ada/acats-2/tests/c9/c95087a.ada: New file. + * ada/acats-2/tests/c9/c95087b.ada: New file. + * ada/acats-2/tests/c9/c95087c.ada: New file. + * ada/acats-2/tests/c9/c95087d.ada: New file. + * ada/acats-2/tests/c9/c95088a.ada: New file. + * ada/acats-2/tests/c9/c95089a.ada: New file. + * ada/acats-2/tests/c9/c95090a.ada: New file. + * ada/acats-2/tests/c9/c95092a.ada: New file. + * ada/acats-2/tests/c9/c95093a.ada: New file. + * ada/acats-2/tests/c9/c95095a.ada: New file. + * ada/acats-2/tests/c9/c95095b.ada: New file. + * ada/acats-2/tests/c9/c95095c.ada: New file. + * ada/acats-2/tests/c9/c95095d.ada: New file. + * ada/acats-2/tests/c9/c95095e.ada: New file. + * ada/acats-2/tests/c9/c951001.a: New file. + * ada/acats-2/tests/c9/c951002.a: New file. + * ada/acats-2/tests/c9/c953001.a: New file. + * ada/acats-2/tests/c9/c953002.a: New file. + * ada/acats-2/tests/c9/c953003.a: New file. + * ada/acats-2/tests/c9/c954001.a: New file. + * ada/acats-2/tests/c9/c954010.a: New file. + * ada/acats-2/tests/c9/c954011.a: New file. + * ada/acats-2/tests/c9/c954012.a: New file. + * ada/acats-2/tests/c9/c954013.a: New file. + * ada/acats-2/tests/c9/c954014.a: New file. + * ada/acats-2/tests/c9/c954015.a: New file. + * ada/acats-2/tests/c9/c954016.a: New file. + * ada/acats-2/tests/c9/c954017.a: New file. + * ada/acats-2/tests/c9/c954018.a: New file. + * ada/acats-2/tests/c9/c954019.a: New file. + * ada/acats-2/tests/c9/c954020.a: New file. + * ada/acats-2/tests/c9/c954021.a: New file. + * ada/acats-2/tests/c9/c954022.a: New file. + * ada/acats-2/tests/c9/c954023.a: New file. + * ada/acats-2/tests/c9/c954024.a: New file. + * ada/acats-2/tests/c9/c954025.a: New file. + * ada/acats-2/tests/c9/c954026.a: New file. + * ada/acats-2/tests/c9/c954a01.a: New file. + * ada/acats-2/tests/c9/c954a02.a: New file. + * ada/acats-2/tests/c9/c954a03.a: New file. + * ada/acats-2/tests/c9/c960001.a: New file. + * ada/acats-2/tests/c9/c960002.a: New file. + * ada/acats-2/tests/c9/c960004.a: New file. + * ada/acats-2/tests/c9/c96001a.ada: New file. + * ada/acats-2/tests/c9/c96004a.ada: New file. + * ada/acats-2/tests/c9/c96005a.ada: New file. + * ada/acats-2/tests/c9/c96005b.tst: New file. + * ada/acats-2/tests/c9/c96005d.ada: New file. + * ada/acats-2/tests/c9/c96005f.ada: New file. + * ada/acats-2/tests/c9/c96006a.ada: New file. + * ada/acats-2/tests/c9/c96007a.ada: New file. + * ada/acats-2/tests/c9/c96008a.ada: New file. + * ada/acats-2/tests/c9/c96008b.ada: New file. + * ada/acats-2/tests/c9/c97112a.ada: New file. + * ada/acats-2/tests/c9/c97113a.ada: New file. + * ada/acats-2/tests/c9/c97114a.ada: New file. + * ada/acats-2/tests/c9/c97115a.ada: New file. + * ada/acats-2/tests/c9/c97116a.ada: New file. + * ada/acats-2/tests/c9/c97117a.ada: New file. + * ada/acats-2/tests/c9/c97117b.ada: New file. + * ada/acats-2/tests/c9/c97117c.ada: New file. + * ada/acats-2/tests/c9/c97118a.ada: New file. + * ada/acats-2/tests/c9/c97120a.ada: New file. + * ada/acats-2/tests/c9/c97120b.ada: New file. + * ada/acats-2/tests/c9/c97201a.ada: New file. + * ada/acats-2/tests/c9/c97201b.ada: New file. + * ada/acats-2/tests/c9/c97201c.ada: New file. + * ada/acats-2/tests/c9/c97201d.ada: New file. + * ada/acats-2/tests/c9/c97201e.ada: New file. + * ada/acats-2/tests/c9/c97201g.ada: New file. + * ada/acats-2/tests/c9/c97201h.ada: New file. + * ada/acats-2/tests/c9/c97201x.ada: New file. + * ada/acats-2/tests/c9/c97202a.ada: New file. + * ada/acats-2/tests/c9/c97203a.ada: New file. + * ada/acats-2/tests/c9/c97203b.ada: New file. + * ada/acats-2/tests/c9/c97203c.ada: New file. + * ada/acats-2/tests/c9/c97204a.ada: New file. + * ada/acats-2/tests/c9/c97204b.ada: New file. + * ada/acats-2/tests/c9/c97205a.ada: New file. + * ada/acats-2/tests/c9/c97205b.ada: New file. + * ada/acats-2/tests/c9/c97301a.ada: New file. + * ada/acats-2/tests/c9/c97301b.ada: New file. + * ada/acats-2/tests/c9/c97301c.ada: New file. + * ada/acats-2/tests/c9/c97301d.ada: New file. + * ada/acats-2/tests/c9/c97301e.ada: New file. + * ada/acats-2/tests/c9/c97302a.ada: New file. + * ada/acats-2/tests/c9/c97303a.ada: New file. + * ada/acats-2/tests/c9/c97303b.ada: New file. + * ada/acats-2/tests/c9/c97303c.ada: New file. + * ada/acats-2/tests/c9/c97304a.ada: New file. + * ada/acats-2/tests/c9/c97304b.ada: New file. + * ada/acats-2/tests/c9/c97305a.ada: New file. + * ada/acats-2/tests/c9/c97305b.ada: New file. + * ada/acats-2/tests/c9/c97305c.ada: New file. + * ada/acats-2/tests/c9/c97305d.ada: New file. + * ada/acats-2/tests/c9/c97307a.ada: New file. + * ada/acats-2/tests/c9/c974001.a: New file. + * ada/acats-2/tests/c9/c974002.a: New file. + * ada/acats-2/tests/c9/c974003.a: New file. + * ada/acats-2/tests/c9/c974004.a: New file. + * ada/acats-2/tests/c9/c974005.a: New file. + * ada/acats-2/tests/c9/c974006.a: New file. + * ada/acats-2/tests/c9/c974007.a: New file. + * ada/acats-2/tests/c9/c974008.a: New file. + * ada/acats-2/tests/c9/c974009.a: New file. + * ada/acats-2/tests/c9/c974010.a: New file. + * ada/acats-2/tests/c9/c974011.a: New file. + * ada/acats-2/tests/c9/c974012.a: New file. + * ada/acats-2/tests/c9/c974013.a: New file. + * ada/acats-2/tests/c9/c974014.a: New file. + * ada/acats-2/tests/c9/c980001.a: New file. + * ada/acats-2/tests/c9/c980002.a: New file. + * ada/acats-2/tests/c9/c980003.a: New file. + * ada/acats-2/tests/c9/c99004a.ada: New file. + * ada/acats-2/tests/c9/c99005a.ada: New file. + * ada/acats-2/tests/c9/c9a003a.ada: New file. + * ada/acats-2/tests/c9/c9a004a.ada: New file. + * ada/acats-2/tests/c9/c9a007a.ada: New file. + * ada/acats-2/tests/c9/c9a009a.ada: New file. + * ada/acats-2/tests/c9/c9a009c.ada: New file. + * ada/acats-2/tests/c9/c9a009f.ada: New file. + * ada/acats-2/tests/c9/c9a009g.ada: New file. + * ada/acats-2/tests/c9/c9a009h.ada: New file. + * ada/acats-2/tests/c9/c9a010a.ada: New file. + * ada/acats-2/tests/c9/c9a011a.ada: New file. + * ada/acats-2/tests/c9/c9a011b.ada: New file. + * ada/acats-2/tests/ca/ca1003a.ada: New file. + * ada/acats-2/tests/ca/ca1004a.ada: New file. + * ada/acats-2/tests/ca/ca1005a.ada: New file. + * ada/acats-2/tests/ca/ca1006a.ada: New file. + * ada/acats-2/tests/ca/ca1011a0.ada: New file. + * ada/acats-2/tests/ca/ca1011a1.ada: New file. + * ada/acats-2/tests/ca/ca1011a2.ada: New file. + * ada/acats-2/tests/ca/ca1011a3.ada: New file. + * ada/acats-2/tests/ca/ca1011a4.ada: New file. + * ada/acats-2/tests/ca/ca1011a5.ada: New file. + * ada/acats-2/tests/ca/ca1011a6.ada: New file. + * ada/acats-2/tests/ca/ca1012a0.ada: New file. + * ada/acats-2/tests/ca/ca1012a1.ada: New file. + * ada/acats-2/tests/ca/ca1012a2.ada: New file. + * ada/acats-2/tests/ca/ca1012a3.ada: New file. + * ada/acats-2/tests/ca/ca1012a4.ada: New file. + * ada/acats-2/tests/ca/ca1012b0.ada: New file. + * ada/acats-2/tests/ca/ca1012b2.ada: New file. + * ada/acats-2/tests/ca/ca1012b4.ada: New file. + * ada/acats-2/tests/ca/ca1013a0.ada: New file. + * ada/acats-2/tests/ca/ca1013a1.ada: New file. + * ada/acats-2/tests/ca/ca1013a2.ada: New file. + * ada/acats-2/tests/ca/ca1013a3.ada: New file. + * ada/acats-2/tests/ca/ca1013a4.ada: New file. + * ada/acats-2/tests/ca/ca1013a5.ada: New file. + * ada/acats-2/tests/ca/ca1013a6.ada: New file. + * ada/acats-2/tests/ca/ca1014a0.ada: New file. + * ada/acats-2/tests/ca/ca1014a1.ada: New file. + * ada/acats-2/tests/ca/ca1014a2.ada: New file. + * ada/acats-2/tests/ca/ca1014a3.ada: New file. + * ada/acats-2/tests/ca/ca1020e0.ada: New file. + * ada/acats-2/tests/ca/ca1020e1.ada: New file. + * ada/acats-2/tests/ca/ca1020e2.ada: New file. + * ada/acats-2/tests/ca/ca1020e3.ada: New file. + * ada/acats-2/tests/ca/ca1022a0.ada: New file. + * ada/acats-2/tests/ca/ca1022a1.ada: New file. + * ada/acats-2/tests/ca/ca1022a2.ada: New file. + * ada/acats-2/tests/ca/ca1022a3.ada: New file. + * ada/acats-2/tests/ca/ca1022a4.ada: New file. + * ada/acats-2/tests/ca/ca1022a5.ada: New file. + * ada/acats-2/tests/ca/ca1022a6.ada: New file. + * ada/acats-2/tests/ca/ca11001.a: New file. + * ada/acats-2/tests/ca/ca11002.a: New file. + * ada/acats-2/tests/ca/ca11003.a: New file. + * ada/acats-2/tests/ca/ca110040.a: New file. + * ada/acats-2/tests/ca/ca110041.a: New file. + * ada/acats-2/tests/ca/ca110042.am: New file. + * ada/acats-2/tests/ca/ca110050.a: New file. + * ada/acats-2/tests/ca/ca110051.am: New file. + * ada/acats-2/tests/ca/ca11006.a: New file. + * ada/acats-2/tests/ca/ca11007.a: New file. + * ada/acats-2/tests/ca/ca11008.a: New file. + * ada/acats-2/tests/ca/ca11009.a: New file. + * ada/acats-2/tests/ca/ca11010.a: New file. + * ada/acats-2/tests/ca/ca11011.a: New file. + * ada/acats-2/tests/ca/ca11012.a: New file. + * ada/acats-2/tests/ca/ca11013.a: New file. + * ada/acats-2/tests/ca/ca11014.a: New file. + * ada/acats-2/tests/ca/ca11015.a: New file. + * ada/acats-2/tests/ca/ca11016.a: New file. + * ada/acats-2/tests/ca/ca11017.a: New file. + * ada/acats-2/tests/ca/ca11018.a: New file. + * ada/acats-2/tests/ca/ca11019.a: New file. + * ada/acats-2/tests/ca/ca11020.a: New file. + * ada/acats-2/tests/ca/ca11021.a: New file. + * ada/acats-2/tests/ca/ca11022.a: New file. + * ada/acats-2/tests/ca/ca1102a0.ada: New file. + * ada/acats-2/tests/ca/ca1102a1.ada: New file. + * ada/acats-2/tests/ca/ca1102a2.ada: New file. + * ada/acats-2/tests/ca/ca1106a.ada: New file. + * ada/acats-2/tests/ca/ca1108a.ada: New file. + * ada/acats-2/tests/ca/ca1108b.ada: New file. + * ada/acats-2/tests/ca/ca11a01.a: New file. + * ada/acats-2/tests/ca/ca11a02.a: New file. + * ada/acats-2/tests/ca/ca11b01.a: New file. + * ada/acats-2/tests/ca/ca11b02.a: New file. + * ada/acats-2/tests/ca/ca11c01.a: New file. + * ada/acats-2/tests/ca/ca11c02.a: New file. + * ada/acats-2/tests/ca/ca11c03.a: New file. + * ada/acats-2/tests/ca/ca11d010.a: New file. + * ada/acats-2/tests/ca/ca11d011.a: New file. + * ada/acats-2/tests/ca/ca11d012.a: New file. + * ada/acats-2/tests/ca/ca11d013.am: New file. + * ada/acats-2/tests/ca/ca11d02.a: New file. + * ada/acats-2/tests/ca/ca11d03.a: New file. + * ada/acats-2/tests/ca/ca13001.a: New file. + * ada/acats-2/tests/ca/ca13002.a: New file. + * ada/acats-2/tests/ca/ca13003.a: New file. + * ada/acats-2/tests/ca/ca13a01.a: New file. + * ada/acats-2/tests/ca/ca13a02.a: New file. + * ada/acats-2/tests/ca/ca140230.a: New file. + * ada/acats-2/tests/ca/ca140231.a: New file. + * ada/acats-2/tests/ca/ca140232.am: New file. + * ada/acats-2/tests/ca/ca140233.a: New file. + * ada/acats-2/tests/ca/ca140280.a: New file. + * ada/acats-2/tests/ca/ca140281.a: New file. + * ada/acats-2/tests/ca/ca140282.a: New file. + * ada/acats-2/tests/ca/ca140283.am: New file. + * ada/acats-2/tests/ca/ca15003.a: New file. + * ada/acats-2/tests/ca/ca200020.a: New file. + * ada/acats-2/tests/ca/ca200021.a: New file. + * ada/acats-2/tests/ca/ca200022.am: New file. + * ada/acats-2/tests/ca/ca2001h0.ada: New file. + * ada/acats-2/tests/ca/ca2001h1.ada: New file. + * ada/acats-2/tests/ca/ca2001h2.ada: New file. + * ada/acats-2/tests/ca/ca2001h3.ada: New file. + * ada/acats-2/tests/ca/ca2002a0.ada: New file. + * ada/acats-2/tests/ca/ca2002a1.ada: New file. + * ada/acats-2/tests/ca/ca2002a2.ada: New file. + * ada/acats-2/tests/ca/ca2003a0.ada: New file. + * ada/acats-2/tests/ca/ca2003a1.ada: New file. + * ada/acats-2/tests/ca/ca2004a0.ada: New file. + * ada/acats-2/tests/ca/ca2004a1.ada: New file. + * ada/acats-2/tests/ca/ca2004a2.ada: New file. + * ada/acats-2/tests/ca/ca2004a3.ada: New file. + * ada/acats-2/tests/ca/ca2004a4.ada: New file. + * ada/acats-2/tests/ca/ca2007a0.ada: New file. + * ada/acats-2/tests/ca/ca2007a1.ada: New file. + * ada/acats-2/tests/ca/ca2007a2.ada: New file. + * ada/acats-2/tests/ca/ca2007a3.ada: New file. + * ada/acats-2/tests/ca/ca2008a0.ada: New file. + * ada/acats-2/tests/ca/ca2008a1.ada: New file. + * ada/acats-2/tests/ca/ca2008a2.ada: New file. + * ada/acats-2/tests/ca/ca2009a.ada: New file. + * ada/acats-2/tests/ca/ca2009c0.ada: New file. + * ada/acats-2/tests/ca/ca2009c1.ada: New file. + * ada/acats-2/tests/ca/ca2009d.ada: New file. + * ada/acats-2/tests/ca/ca2009f0.ada: New file. + * ada/acats-2/tests/ca/ca2009f1.ada: New file. + * ada/acats-2/tests/ca/ca2009f2.ada: New file. + * ada/acats-2/tests/ca/ca2011b.ada: New file. + * ada/acats-2/tests/ca/ca21001.a: New file. + * ada/acats-2/tests/ca/ca3011a0.ada: New file. + * ada/acats-2/tests/ca/ca3011a1.ada: New file. + * ada/acats-2/tests/ca/ca3011a2.ada: New file. + * ada/acats-2/tests/ca/ca3011a3.ada: New file. + * ada/acats-2/tests/ca/ca3011a4.ada: New file. + * ada/acats-2/tests/ca/ca5003a0.ada: New file. + * ada/acats-2/tests/ca/ca5003a1.ada: New file. + * ada/acats-2/tests/ca/ca5003a2.ada: New file. + * ada/acats-2/tests/ca/ca5003a3.ada: New file. + * ada/acats-2/tests/ca/ca5003a4.ada: New file. + * ada/acats-2/tests/ca/ca5003a5.ada: New file. + * ada/acats-2/tests/ca/ca5003a6.ada: New file. + * ada/acats-2/tests/ca/ca5003b0.ada: New file. + * ada/acats-2/tests/ca/ca5003b1.ada: New file. + * ada/acats-2/tests/ca/ca5003b2.ada: New file. + * ada/acats-2/tests/ca/ca5003b3.ada: New file. + * ada/acats-2/tests/ca/ca5003b4.ada: New file. + * ada/acats-2/tests/ca/ca5003b5.ada: New file. + * ada/acats-2/tests/ca/ca5004a.ada: New file. + * ada/acats-2/tests/ca/ca5004b0.ada: New file. + * ada/acats-2/tests/ca/ca5004b1.ada: New file. + * ada/acats-2/tests/ca/ca5004b2.ada: New file. + * ada/acats-2/tests/ca/ca5006a.ada: New file. + * ada/acats-2/tests/cb/cb10002.a: New file. + * ada/acats-2/tests/cb/cb1001a.ada: New file. + * ada/acats-2/tests/cb/cb1004a.ada: New file. + * ada/acats-2/tests/cb/cb1005a.ada: New file. + * ada/acats-2/tests/cb/cb1010a.ada: New file. + * ada/acats-2/tests/cb/cb1010c.ada: New file. + * ada/acats-2/tests/cb/cb1010d.ada: New file. + * ada/acats-2/tests/cb/cb20001.a: New file. + * ada/acats-2/tests/cb/cb20003.a: New file. + * ada/acats-2/tests/cb/cb20004.a: New file. + * ada/acats-2/tests/cb/cb20005.a: New file. + * ada/acats-2/tests/cb/cb20006.a: New file. + * ada/acats-2/tests/cb/cb20007.a: New file. + * ada/acats-2/tests/cb/cb2004a.ada: New file. + * ada/acats-2/tests/cb/cb2005a.ada: New file. + * ada/acats-2/tests/cb/cb2006a.ada: New file. + * ada/acats-2/tests/cb/cb2007a.ada: New file. + * ada/acats-2/tests/cb/cb20a02.a: New file. + * ada/acats-2/tests/cb/cb3003a.ada: New file. + * ada/acats-2/tests/cb/cb3003b.ada: New file. + * ada/acats-2/tests/cb/cb3004a.ada: New file. + * ada/acats-2/tests/cb/cb40005.a: New file. + * ada/acats-2/tests/cb/cb4001a.ada: New file. + * ada/acats-2/tests/cb/cb4002a.ada: New file. + * ada/acats-2/tests/cb/cb4003a.ada: New file. + * ada/acats-2/tests/cb/cb4004a.ada: New file. + * ada/acats-2/tests/cb/cb4005a.ada: New file. + * ada/acats-2/tests/cb/cb4006a.ada: New file. + * ada/acats-2/tests/cb/cb4007a.ada: New file. + * ada/acats-2/tests/cb/cb4008a.ada: New file. + * ada/acats-2/tests/cb/cb4009a.ada: New file. + * ada/acats-2/tests/cb/cb4013a.ada: New file. + * ada/acats-2/tests/cb/cb40a01.a: New file. + * ada/acats-2/tests/cb/cb40a020.a: New file. + * ada/acats-2/tests/cb/cb40a021.am: New file. + * ada/acats-2/tests/cb/cb40a030.a: New file. + * ada/acats-2/tests/cb/cb40a031.am: New file. + * ada/acats-2/tests/cb/cb40a04.a: New file. + * ada/acats-2/tests/cb/cb41001.a: New file. + * ada/acats-2/tests/cb/cb41002.a: New file. + * ada/acats-2/tests/cb/cb41003.a: New file. + * ada/acats-2/tests/cb/cb41004.a: New file. + * ada/acats-2/tests/cb/cb5001a.ada: New file. + * ada/acats-2/tests/cb/cb5001b.ada: New file. + * ada/acats-2/tests/cb/cb5002a.ada: New file. + * ada/acats-2/tests/cc/cc1004a.ada: New file. + * ada/acats-2/tests/cc/cc1005b.ada: New file. + * ada/acats-2/tests/cc/cc1010a.ada: New file. + * ada/acats-2/tests/cc/cc1010b.ada: New file. + * ada/acats-2/tests/cc/cc1018a.ada: New file. + * ada/acats-2/tests/cc/cc1104c.ada: New file. + * ada/acats-2/tests/cc/cc1107b.ada: New file. + * ada/acats-2/tests/cc/cc1111a.ada: New file. + * ada/acats-2/tests/cc/cc1204a.ada: New file. + * ada/acats-2/tests/cc/cc1207b.ada: New file. + * ada/acats-2/tests/cc/cc1220a.ada: New file. + * ada/acats-2/tests/cc/cc1221a.ada: New file. + * ada/acats-2/tests/cc/cc1221b.ada: New file. + * ada/acats-2/tests/cc/cc1221c.ada: New file. + * ada/acats-2/tests/cc/cc1221d.ada: New file. + * ada/acats-2/tests/cc/cc1222a.ada: New file. + * ada/acats-2/tests/cc/cc1223a.ada: New file. + * ada/acats-2/tests/cc/cc1224a.ada: New file. + * ada/acats-2/tests/cc/cc1225a.tst: New file. + * ada/acats-2/tests/cc/cc1226b.ada: New file. + * ada/acats-2/tests/cc/cc1227a.ada: New file. + * ada/acats-2/tests/cc/cc1301a.ada: New file. + * ada/acats-2/tests/cc/cc1302a.ada: New file. + * ada/acats-2/tests/cc/cc1304a.ada: New file. + * ada/acats-2/tests/cc/cc1304b.ada: New file. + * ada/acats-2/tests/cc/cc1307a.ada: New file. + * ada/acats-2/tests/cc/cc1307b.ada: New file. + * ada/acats-2/tests/cc/cc1308a.ada: New file. + * ada/acats-2/tests/cc/cc1310a.ada: New file. + * ada/acats-2/tests/cc/cc1311a.ada: New file. + * ada/acats-2/tests/cc/cc1311b.ada: New file. + * ada/acats-2/tests/cc/cc2002a.ada: New file. + * ada/acats-2/tests/cc/cc30001.a: New file. + * ada/acats-2/tests/cc/cc30002.a: New file. + * ada/acats-2/tests/cc/cc3004a.ada: New file. + * ada/acats-2/tests/cc/cc3007a.ada: New file. + * ada/acats-2/tests/cc/cc3007b.ada: New file. + * ada/acats-2/tests/cc/cc3011a.ada: New file. + * ada/acats-2/tests/cc/cc3011d.ada: New file. + * ada/acats-2/tests/cc/cc3012a.ada: New file. + * ada/acats-2/tests/cc/cc3015a.ada: New file. + * ada/acats-2/tests/cc/cc3016b.ada: New file. + * ada/acats-2/tests/cc/cc3016c.ada: New file. + * ada/acats-2/tests/cc/cc3016f.ada: New file. + * ada/acats-2/tests/cc/cc3016i.ada: New file. + * ada/acats-2/tests/cc/cc3017b.ada: New file. + * ada/acats-2/tests/cc/cc3017c.ada: New file. + * ada/acats-2/tests/cc/cc3019a.ada: New file. + * ada/acats-2/tests/cc/cc3019b0.ada: New file. + * ada/acats-2/tests/cc/cc3019b1.ada: New file. + * ada/acats-2/tests/cc/cc3019b2.ada: New file. + * ada/acats-2/tests/cc/cc3019c0.ada: New file. + * ada/acats-2/tests/cc/cc3019c1.ada: New file. + * ada/acats-2/tests/cc/cc3019c2.ada: New file. + * ada/acats-2/tests/cc/cc3106b.ada: New file. + * ada/acats-2/tests/cc/cc3120a.ada: New file. + * ada/acats-2/tests/cc/cc3120b.ada: New file. + * ada/acats-2/tests/cc/cc3121a.ada: New file. + * ada/acats-2/tests/cc/cc3123a.ada: New file. + * ada/acats-2/tests/cc/cc3125a.ada: New file. + * ada/acats-2/tests/cc/cc3125b.ada: New file. + * ada/acats-2/tests/cc/cc3125c.ada: New file. + * ada/acats-2/tests/cc/cc3125d.ada: New file. + * ada/acats-2/tests/cc/cc3126a.ada: New file. + * ada/acats-2/tests/cc/cc3127a.ada: New file. + * ada/acats-2/tests/cc/cc3128a.ada: New file. + * ada/acats-2/tests/cc/cc3203a.ada: New file. + * ada/acats-2/tests/cc/cc3207b.ada: New file. + * ada/acats-2/tests/cc/cc3220a.ada: New file. + * ada/acats-2/tests/cc/cc3221a.ada: New file. + * ada/acats-2/tests/cc/cc3222a.ada: New file. + * ada/acats-2/tests/cc/cc3223a.ada: New file. + * ada/acats-2/tests/cc/cc3224a.ada: New file. + * ada/acats-2/tests/cc/cc3225a.ada: New file. + * ada/acats-2/tests/cc/cc3230a.ada: New file. + * ada/acats-2/tests/cc/cc3231a.ada: New file. + * ada/acats-2/tests/cc/cc3232a.ada: New file. + * ada/acats-2/tests/cc/cc3233a.ada: New file. + * ada/acats-2/tests/cc/cc3234a.ada: New file. + * ada/acats-2/tests/cc/cc3235a.ada: New file. + * ada/acats-2/tests/cc/cc3236a.ada: New file. + * ada/acats-2/tests/cc/cc3240a.ada: New file. + * ada/acats-2/tests/cc/cc3305a.ada: New file. + * ada/acats-2/tests/cc/cc3305b.ada: New file. + * ada/acats-2/tests/cc/cc3305c.ada: New file. + * ada/acats-2/tests/cc/cc3305d.ada: New file. + * ada/acats-2/tests/cc/cc3601a.ada: New file. + * ada/acats-2/tests/cc/cc3601c.ada: New file. + * ada/acats-2/tests/cc/cc3602a.ada: New file. + * ada/acats-2/tests/cc/cc3603a.ada: New file. + * ada/acats-2/tests/cc/cc3605a.ada: New file. + * ada/acats-2/tests/cc/cc3606a.ada: New file. + * ada/acats-2/tests/cc/cc3606b.ada: New file. + * ada/acats-2/tests/cc/cc3607b.ada: New file. + * ada/acats-2/tests/cc/cc40001.a: New file. + * ada/acats-2/tests/cc/cc50001.a: New file. + * ada/acats-2/tests/cc/cc50a01.a: New file. + * ada/acats-2/tests/cc/cc50a02.a: New file. + * ada/acats-2/tests/cc/cc51001.a: New file. + * ada/acats-2/tests/cc/cc51002.a: New file. + * ada/acats-2/tests/cc/cc51003.a: New file. + * ada/acats-2/tests/cc/cc51004.a: New file. + * ada/acats-2/tests/cc/cc51006.a: New file. + * ada/acats-2/tests/cc/cc51007.a: New file. + * ada/acats-2/tests/cc/cc51008.a: New file. + * ada/acats-2/tests/cc/cc51a01.a: New file. + * ada/acats-2/tests/cc/cc51b03.a: New file. + * ada/acats-2/tests/cc/cc51d01.a: New file. + * ada/acats-2/tests/cc/cc51d02.a: New file. + * ada/acats-2/tests/cc/cc54001.a: New file. + * ada/acats-2/tests/cc/cc54002.a: New file. + * ada/acats-2/tests/cc/cc54003.a: New file. + * ada/acats-2/tests/cc/cc54004.a: New file. + * ada/acats-2/tests/cc/cc70001.a: New file. + * ada/acats-2/tests/cc/cc70002.a: New file. + * ada/acats-2/tests/cc/cc70003.a: New file. + * ada/acats-2/tests/cc/cc70a01.a: New file. + * ada/acats-2/tests/cc/cc70a02.a: New file. + * ada/acats-2/tests/cc/cc70b01.a: New file. + * ada/acats-2/tests/cc/cc70b02.a: New file. + * ada/acats-2/tests/cc/cc70c01.a: New file. + * ada/acats-2/tests/cc/cc70c02.a: New file. + * ada/acats-2/tests/cd/cd10001.a: New file. + * ada/acats-2/tests/cd/cd10002.a: New file. + * ada/acats-2/tests/cd/cd1009a.ada: New file. + * ada/acats-2/tests/cd/cd1009b.ada: New file. + * ada/acats-2/tests/cd/cd1009d.ada: New file. + * ada/acats-2/tests/cd/cd1009e.ada: New file. + * ada/acats-2/tests/cd/cd1009f.ada: New file. + * ada/acats-2/tests/cd/cd1009g.ada: New file. + * ada/acats-2/tests/cd/cd1009h.ada: New file. + * ada/acats-2/tests/cd/cd1009i.ada: New file. + * ada/acats-2/tests/cd/cd1009j.ada: New file. + * ada/acats-2/tests/cd/cd1009k.tst: New file. + * ada/acats-2/tests/cd/cd1009l.ada: New file. + * ada/acats-2/tests/cd/cd1009m.ada: New file. + * ada/acats-2/tests/cd/cd1009n.ada: New file. + * ada/acats-2/tests/cd/cd1009o.ada: New file. + * ada/acats-2/tests/cd/cd1009p.ada: New file. + * ada/acats-2/tests/cd/cd1009q.ada: New file. + * ada/acats-2/tests/cd/cd1009r.ada: New file. + * ada/acats-2/tests/cd/cd1009s.ada: New file. + * ada/acats-2/tests/cd/cd1009t.tst: New file. + * ada/acats-2/tests/cd/cd1009u.tst: New file. + * ada/acats-2/tests/cd/cd1009v.ada: New file. + * ada/acats-2/tests/cd/cd1009w.ada: New file. + * ada/acats-2/tests/cd/cd1009x.ada: New file. + * ada/acats-2/tests/cd/cd1009y.ada: New file. + * ada/acats-2/tests/cd/cd1009z.ada: New file. + * ada/acats-2/tests/cd/cd1c03a.ada: New file. + * ada/acats-2/tests/cd/cd1c03b.ada: New file. + * ada/acats-2/tests/cd/cd1c03c.ada: New file. + * ada/acats-2/tests/cd/cd1c03e.tst: New file. + * ada/acats-2/tests/cd/cd1c03f.ada: New file. + * ada/acats-2/tests/cd/cd1c03g.ada: New file. + * ada/acats-2/tests/cd/cd1c03h.ada: New file. + * ada/acats-2/tests/cd/cd1c03i.ada: New file. + * ada/acats-2/tests/cd/cd1c04a.ada: New file. + * ada/acats-2/tests/cd/cd1c04d.ada: New file. + * ada/acats-2/tests/cd/cd1c04e.ada: New file. + * ada/acats-2/tests/cd/cd1c06a.tst: New file. + * ada/acats-2/tests/cd/cd20001.a: New file. + * ada/acats-2/tests/cd/cd2a21a.ada: New file. + * ada/acats-2/tests/cd/cd2a21c.ada: New file. + * ada/acats-2/tests/cd/cd2a21e.ada: New file. + * ada/acats-2/tests/cd/cd2a22a.ada: New file. + * ada/acats-2/tests/cd/cd2a22e.ada: New file. + * ada/acats-2/tests/cd/cd2a22i.ada: New file. + * ada/acats-2/tests/cd/cd2a22j.ada: New file. + * ada/acats-2/tests/cd/cd2a23a.ada: New file. + * ada/acats-2/tests/cd/cd2a23e.ada: New file. + * ada/acats-2/tests/cd/cd2a24a.ada: New file. + * ada/acats-2/tests/cd/cd2a24e.ada: New file. + * ada/acats-2/tests/cd/cd2a24i.ada: New file. + * ada/acats-2/tests/cd/cd2a24j.ada: New file. + * ada/acats-2/tests/cd/cd2a31a.ada: New file. + * ada/acats-2/tests/cd/cd2a31c.ada: New file. + * ada/acats-2/tests/cd/cd2a31e.ada: New file. + * ada/acats-2/tests/cd/cd2a32a.ada: New file. + * ada/acats-2/tests/cd/cd2a32c.ada: New file. + * ada/acats-2/tests/cd/cd2a32e.ada: New file. + * ada/acats-2/tests/cd/cd2a32g.ada: New file. + * ada/acats-2/tests/cd/cd2a32i.ada: New file. + * ada/acats-2/tests/cd/cd2a32j.ada: New file. + * ada/acats-2/tests/cd/cd2a51a.ada: New file. + * ada/acats-2/tests/cd/cd2a53a.ada: New file. + * ada/acats-2/tests/cd/cd2a53e.ada: New file. + * ada/acats-2/tests/cd/cd2a83c.tst: New file. + * ada/acats-2/tests/cd/cd2a91c.tst: New file. + * ada/acats-2/tests/cd/cd2b11a.ada: New file. + * ada/acats-2/tests/cd/cd2b11b.ada: New file. + * ada/acats-2/tests/cd/cd2b11d.ada: New file. + * ada/acats-2/tests/cd/cd2b11e.ada: New file. + * ada/acats-2/tests/cd/cd2b11f.ada: New file. + * ada/acats-2/tests/cd/cd2b15c.ada: New file. + * ada/acats-2/tests/cd/cd2b16a.ada: New file. + * ada/acats-2/tests/cd/cd2c11a.tst: New file. + * ada/acats-2/tests/cd/cd2c11d.tst: New file. + * ada/acats-2/tests/cd/cd2d11a.ada: New file. + * ada/acats-2/tests/cd/cd2d13a.ada: New file. + * ada/acats-2/tests/cd/cd30001.a: New file. + * ada/acats-2/tests/cd/cd30002.a: New file. + * ada/acats-2/tests/cd/cd30003.a: New file. + * ada/acats-2/tests/cd/cd30004.a: New file. + * ada/acats-2/tests/cd/cd300050.am: New file. + * ada/acats-2/tests/cd/cd300051.c: New file. + * ada/acats-2/tests/cd/cd30011.a: New file. + * ada/acats-2/tests/cd/cd30012.a: New file. + * ada/acats-2/tests/cd/cd3014a.ada: New file. + * ada/acats-2/tests/cd/cd3014c.ada: New file. + * ada/acats-2/tests/cd/cd3014d.ada: New file. + * ada/acats-2/tests/cd/cd3014f.ada: New file. + * ada/acats-2/tests/cd/cd3015a.ada: New file. + * ada/acats-2/tests/cd/cd3015c.ada: New file. + * ada/acats-2/tests/cd/cd3015e.ada: New file. + * ada/acats-2/tests/cd/cd3015f.ada: New file. + * ada/acats-2/tests/cd/cd3015g.ada: New file. + * ada/acats-2/tests/cd/cd3015h.ada: New file. + * ada/acats-2/tests/cd/cd3015i.ada: New file. + * ada/acats-2/tests/cd/cd3015k.ada: New file. + * ada/acats-2/tests/cd/cd3021a.ada: New file. + * ada/acats-2/tests/cd/cd33001.a: New file. + * ada/acats-2/tests/cd/cd33002.a: New file. + * ada/acats-2/tests/cd/cd40001.a: New file. + * ada/acats-2/tests/cd/cd4031a.ada: New file. + * ada/acats-2/tests/cd/cd4041a.tst: New file. + * ada/acats-2/tests/cd/cd4051a.ada: New file. + * ada/acats-2/tests/cd/cd4051b.ada: New file. + * ada/acats-2/tests/cd/cd4051c.ada: New file. + * ada/acats-2/tests/cd/cd4051d.ada: New file. + * ada/acats-2/tests/cd/cd5003a.ada: New file. + * ada/acats-2/tests/cd/cd5003b.ada: New file. + * ada/acats-2/tests/cd/cd5003c.ada: New file. + * ada/acats-2/tests/cd/cd5003d.ada: New file. + * ada/acats-2/tests/cd/cd5003e.ada: New file. + * ada/acats-2/tests/cd/cd5003f.ada: New file. + * ada/acats-2/tests/cd/cd5003g.ada: New file. + * ada/acats-2/tests/cd/cd5003h.ada: New file. + * ada/acats-2/tests/cd/cd5003i.ada: New file. + * ada/acats-2/tests/cd/cd5011a.ada: New file. + * ada/acats-2/tests/cd/cd5011c.ada: New file. + * ada/acats-2/tests/cd/cd5011e.ada: New file. + * ada/acats-2/tests/cd/cd5011g.ada: New file. + * ada/acats-2/tests/cd/cd5011i.ada: New file. + * ada/acats-2/tests/cd/cd5011k.ada: New file. + * ada/acats-2/tests/cd/cd5011m.ada: New file. + * ada/acats-2/tests/cd/cd5011q.ada: New file. + * ada/acats-2/tests/cd/cd5011s.ada: New file. + * ada/acats-2/tests/cd/cd5012a.ada: New file. + * ada/acats-2/tests/cd/cd5012b.ada: New file. + * ada/acats-2/tests/cd/cd5012e.ada: New file. + * ada/acats-2/tests/cd/cd5012f.ada: New file. + * ada/acats-2/tests/cd/cd5012i.ada: New file. + * ada/acats-2/tests/cd/cd5012m.ada: New file. + * ada/acats-2/tests/cd/cd5013a.ada: New file. + * ada/acats-2/tests/cd/cd5013c.ada: New file. + * ada/acats-2/tests/cd/cd5013e.ada: New file. + * ada/acats-2/tests/cd/cd5013g.ada: New file. + * ada/acats-2/tests/cd/cd5013i.ada: New file. + * ada/acats-2/tests/cd/cd5013k.ada: New file. + * ada/acats-2/tests/cd/cd5013m.ada: New file. + * ada/acats-2/tests/cd/cd5013o.ada: New file. + * ada/acats-2/tests/cd/cd5014a.ada: New file. + * ada/acats-2/tests/cd/cd5014c.ada: New file. + * ada/acats-2/tests/cd/cd5014e.ada: New file. + * ada/acats-2/tests/cd/cd5014g.ada: New file. + * ada/acats-2/tests/cd/cd5014i.ada: New file. + * ada/acats-2/tests/cd/cd5014k.ada: New file. + * ada/acats-2/tests/cd/cd5014m.ada: New file. + * ada/acats-2/tests/cd/cd5014o.ada: New file. + * ada/acats-2/tests/cd/cd5014t.ada: New file. + * ada/acats-2/tests/cd/cd5014v.ada: New file. + * ada/acats-2/tests/cd/cd5014x.ada: New file. + * ada/acats-2/tests/cd/cd5014y.ada: New file. + * ada/acats-2/tests/cd/cd5014z.ada: New file. + * ada/acats-2/tests/cd/cd70001.a: New file. + * ada/acats-2/tests/cd/cd7002a.ada: New file. + * ada/acats-2/tests/cd/cd7007b.ada: New file. + * ada/acats-2/tests/cd/cd7101d.ada: New file. + * ada/acats-2/tests/cd/cd7101e.dep: New file. + * ada/acats-2/tests/cd/cd7101f.dep: New file. + * ada/acats-2/tests/cd/cd7101g.tst: New file. + * ada/acats-2/tests/cd/cd7103d.ada: New file. + * ada/acats-2/tests/cd/cd7202a.ada: New file. + * ada/acats-2/tests/cd/cd7204b.ada: New file. + * ada/acats-2/tests/cd/cd7204c.ada: New file. + * ada/acats-2/tests/cd/cd72a01.a: New file. + * ada/acats-2/tests/cd/cd72a02.a: New file. + * ada/acats-2/tests/cd/cd7305a.ada: New file. + * ada/acats-2/tests/cd/cd90001.a: New file. + * ada/acats-2/tests/cd/cd92001.a: New file. + * ada/acats-2/tests/cd/cda201a.ada: New file. + * ada/acats-2/tests/cd/cda201b.ada: New file. + * ada/acats-2/tests/cd/cda201c.ada: New file. + * ada/acats-2/tests/cd/cda201e.ada: New file. + * ada/acats-2/tests/cd/cdb0a01.a: New file. + * ada/acats-2/tests/cd/cdb0a02.a: New file. + * ada/acats-2/tests/cd/cdd1001.a: New file. + * ada/acats-2/tests/cd/cdd2001.a: New file. + * ada/acats-2/tests/cd/cdd2a01.a: New file. + * ada/acats-2/tests/cd/cdd2a02.a: New file. + * ada/acats-2/tests/cd/cdd2a03.a: New file. + * ada/acats-2/tests/cd/cde0001.a: New file. + * ada/acats-2/tests/ce/ce2102a.ada: New file. + * ada/acats-2/tests/ce/ce2102b.ada: New file. + * ada/acats-2/tests/ce/ce2102c.tst: New file. + * ada/acats-2/tests/ce/ce2102d.ada: New file. + * ada/acats-2/tests/ce/ce2102e.ada: New file. + * ada/acats-2/tests/ce/ce2102f.ada: New file. + * ada/acats-2/tests/ce/ce2102g.ada: New file. + * ada/acats-2/tests/ce/ce2102h.tst: New file. + * ada/acats-2/tests/ce/ce2102i.ada: New file. + * ada/acats-2/tests/ce/ce2102j.ada: New file. + * ada/acats-2/tests/ce/ce2102k.ada: New file. + * ada/acats-2/tests/ce/ce2102l.ada: New file. + * ada/acats-2/tests/ce/ce2102m.ada: New file. + * ada/acats-2/tests/ce/ce2102n.ada: New file. + * ada/acats-2/tests/ce/ce2102o.ada: New file. + * ada/acats-2/tests/ce/ce2102p.ada: New file. + * ada/acats-2/tests/ce/ce2102q.ada: New file. + * ada/acats-2/tests/ce/ce2102r.ada: New file. + * ada/acats-2/tests/ce/ce2102s.ada: New file. + * ada/acats-2/tests/ce/ce2102t.ada: New file. + * ada/acats-2/tests/ce/ce2102u.ada: New file. + * ada/acats-2/tests/ce/ce2102v.ada: New file. + * ada/acats-2/tests/ce/ce2102w.ada: New file. + * ada/acats-2/tests/ce/ce2102x.ada: New file. + * ada/acats-2/tests/ce/ce2102y.ada: New file. + * ada/acats-2/tests/ce/ce2103a.tst: New file. + * ada/acats-2/tests/ce/ce2103b.tst: New file. + * ada/acats-2/tests/ce/ce2103c.ada: New file. + * ada/acats-2/tests/ce/ce2103d.ada: New file. + * ada/acats-2/tests/ce/ce2104a.ada: New file. + * ada/acats-2/tests/ce/ce2104b.ada: New file. + * ada/acats-2/tests/ce/ce2104c.ada: New file. + * ada/acats-2/tests/ce/ce2104d.ada: New file. + * ada/acats-2/tests/ce/ce2106a.ada: New file. + * ada/acats-2/tests/ce/ce2106b.ada: New file. + * ada/acats-2/tests/ce/ce2108e.ada: New file. + * ada/acats-2/tests/ce/ce2108f.ada: New file. + * ada/acats-2/tests/ce/ce2108g.ada: New file. + * ada/acats-2/tests/ce/ce2108h.ada: New file. + * ada/acats-2/tests/ce/ce2109a.ada: New file. + * ada/acats-2/tests/ce/ce2109b.ada: New file. + * ada/acats-2/tests/ce/ce2109c.ada: New file. + * ada/acats-2/tests/ce/ce2110a.ada: New file. + * ada/acats-2/tests/ce/ce2110c.ada: New file. + * ada/acats-2/tests/ce/ce2111a.ada: New file. + * ada/acats-2/tests/ce/ce2111b.ada: New file. + * ada/acats-2/tests/ce/ce2111c.ada: New file. + * ada/acats-2/tests/ce/ce2111e.ada: New file. + * ada/acats-2/tests/ce/ce2111f.ada: New file. + * ada/acats-2/tests/ce/ce2111g.ada: New file. + * ada/acats-2/tests/ce/ce2111i.ada: New file. + * ada/acats-2/tests/ce/ce2201a.ada: New file. + * ada/acats-2/tests/ce/ce2201b.ada: New file. + * ada/acats-2/tests/ce/ce2201c.ada: New file. + * ada/acats-2/tests/ce/ce2201d.dep: New file. + * ada/acats-2/tests/ce/ce2201e.dep: New file. + * ada/acats-2/tests/ce/ce2201f.ada: New file. + * ada/acats-2/tests/ce/ce2201g.ada: New file. + * ada/acats-2/tests/ce/ce2201h.ada: New file. + * ada/acats-2/tests/ce/ce2201i.ada: New file. + * ada/acats-2/tests/ce/ce2201j.ada: New file. + * ada/acats-2/tests/ce/ce2201k.ada: New file. + * ada/acats-2/tests/ce/ce2201l.ada: New file. + * ada/acats-2/tests/ce/ce2201m.ada: New file. + * ada/acats-2/tests/ce/ce2201n.ada: New file. + * ada/acats-2/tests/ce/ce2202a.ada: New file. + * ada/acats-2/tests/ce/ce2203a.tst: New file. + * ada/acats-2/tests/ce/ce2204a.ada: New file. + * ada/acats-2/tests/ce/ce2204b.ada: New file. + * ada/acats-2/tests/ce/ce2204c.ada: New file. + * ada/acats-2/tests/ce/ce2204d.ada: New file. + * ada/acats-2/tests/ce/ce2205a.ada: New file. + * ada/acats-2/tests/ce/ce2206a.ada: New file. + * ada/acats-2/tests/ce/ce2208b.ada: New file. + * ada/acats-2/tests/ce/ce2401a.ada: New file. + * ada/acats-2/tests/ce/ce2401b.ada: New file. + * ada/acats-2/tests/ce/ce2401c.ada: New file. + * ada/acats-2/tests/ce/ce2401e.ada: New file. + * ada/acats-2/tests/ce/ce2401f.ada: New file. + * ada/acats-2/tests/ce/ce2401h.ada: New file. + * ada/acats-2/tests/ce/ce2401i.ada: New file. + * ada/acats-2/tests/ce/ce2401j.ada: New file. + * ada/acats-2/tests/ce/ce2401k.ada: New file. + * ada/acats-2/tests/ce/ce2401l.ada: New file. + * ada/acats-2/tests/ce/ce2402a.ada: New file. + * ada/acats-2/tests/ce/ce2403a.tst: New file. + * ada/acats-2/tests/ce/ce2404a.ada: New file. + * ada/acats-2/tests/ce/ce2404b.ada: New file. + * ada/acats-2/tests/ce/ce2405b.ada: New file. + * ada/acats-2/tests/ce/ce2406a.ada: New file. + * ada/acats-2/tests/ce/ce2407a.ada: New file. + * ada/acats-2/tests/ce/ce2407b.ada: New file. + * ada/acats-2/tests/ce/ce2408a.ada: New file. + * ada/acats-2/tests/ce/ce2408b.ada: New file. + * ada/acats-2/tests/ce/ce2409a.ada: New file. + * ada/acats-2/tests/ce/ce2409b.ada: New file. + * ada/acats-2/tests/ce/ce2410a.ada: New file. + * ada/acats-2/tests/ce/ce2410b.ada: New file. + * ada/acats-2/tests/ce/ce2411a.ada: New file. + * ada/acats-2/tests/ce/ce3002b.tst: New file. + * ada/acats-2/tests/ce/ce3002c.tst: New file. + * ada/acats-2/tests/ce/ce3002d.ada: New file. + * ada/acats-2/tests/ce/ce3002f.ada: New file. + * ada/acats-2/tests/ce/ce3102a.ada: New file. + * ada/acats-2/tests/ce/ce3102b.tst: New file. + * ada/acats-2/tests/ce/ce3102d.ada: New file. + * ada/acats-2/tests/ce/ce3102e.ada: New file. + * ada/acats-2/tests/ce/ce3102f.ada: New file. + * ada/acats-2/tests/ce/ce3102g.ada: New file. + * ada/acats-2/tests/ce/ce3102h.ada: New file. + * ada/acats-2/tests/ce/ce3102i.ada: New file. + * ada/acats-2/tests/ce/ce3102j.ada: New file. + * ada/acats-2/tests/ce/ce3102k.ada: New file. + * ada/acats-2/tests/ce/ce3103a.ada: New file. + * ada/acats-2/tests/ce/ce3104a.ada: New file. + * ada/acats-2/tests/ce/ce3104b.ada: New file. + * ada/acats-2/tests/ce/ce3104c.ada: New file. + * ada/acats-2/tests/ce/ce3106a.ada: New file. + * ada/acats-2/tests/ce/ce3106b.ada: New file. + * ada/acats-2/tests/ce/ce3107a.tst: New file. + * ada/acats-2/tests/ce/ce3107b.ada: New file. + * ada/acats-2/tests/ce/ce3108a.ada: New file. + * ada/acats-2/tests/ce/ce3108b.ada: New file. + * ada/acats-2/tests/ce/ce3110a.ada: New file. + * ada/acats-2/tests/ce/ce3112c.ada: New file. + * ada/acats-2/tests/ce/ce3112d.ada: New file. + * ada/acats-2/tests/ce/ce3114a.ada: New file. + * ada/acats-2/tests/ce/ce3115a.ada: New file. + * ada/acats-2/tests/ce/ce3201a.ada: New file. + * ada/acats-2/tests/ce/ce3202a.ada: New file. + * ada/acats-2/tests/ce/ce3206a.ada: New file. + * ada/acats-2/tests/ce/ce3207a.ada: New file. + * ada/acats-2/tests/ce/ce3301a.ada: New file. + * ada/acats-2/tests/ce/ce3302a.ada: New file. + * ada/acats-2/tests/ce/ce3303a.ada: New file. + * ada/acats-2/tests/ce/ce3304a.tst: New file. + * ada/acats-2/tests/ce/ce3305a.ada: New file. + * ada/acats-2/tests/ce/ce3306a.ada: New file. + * ada/acats-2/tests/ce/ce3401a.ada: New file. + * ada/acats-2/tests/ce/ce3402a.ada: New file. + * ada/acats-2/tests/ce/ce3402c.ada: New file. + * ada/acats-2/tests/ce/ce3402d.ada: New file. + * ada/acats-2/tests/ce/ce3402e.ada: New file. + * ada/acats-2/tests/ce/ce3403a.ada: New file. + * ada/acats-2/tests/ce/ce3403b.ada: New file. + * ada/acats-2/tests/ce/ce3403c.ada: New file. + * ada/acats-2/tests/ce/ce3403d.ada: New file. + * ada/acats-2/tests/ce/ce3403e.ada: New file. + * ada/acats-2/tests/ce/ce3403f.ada: New file. + * ada/acats-2/tests/ce/ce3404a.ada: New file. + * ada/acats-2/tests/ce/ce3404b.ada: New file. + * ada/acats-2/tests/ce/ce3404c.ada: New file. + * ada/acats-2/tests/ce/ce3404d.ada: New file. + * ada/acats-2/tests/ce/ce3405a.ada: New file. + * ada/acats-2/tests/ce/ce3405c.ada: New file. + * ada/acats-2/tests/ce/ce3405d.ada: New file. + * ada/acats-2/tests/ce/ce3406a.ada: New file. + * ada/acats-2/tests/ce/ce3406b.ada: New file. + * ada/acats-2/tests/ce/ce3406c.ada: New file. + * ada/acats-2/tests/ce/ce3406d.ada: New file. + * ada/acats-2/tests/ce/ce3407a.ada: New file. + * ada/acats-2/tests/ce/ce3407b.ada: New file. + * ada/acats-2/tests/ce/ce3407c.ada: New file. + * ada/acats-2/tests/ce/ce3408a.ada: New file. + * ada/acats-2/tests/ce/ce3408b.ada: New file. + * ada/acats-2/tests/ce/ce3408c.ada: New file. + * ada/acats-2/tests/ce/ce3409a.ada: New file. + * ada/acats-2/tests/ce/ce3409b.ada: New file. + * ada/acats-2/tests/ce/ce3409c.ada: New file. + * ada/acats-2/tests/ce/ce3409d.ada: New file. + * ada/acats-2/tests/ce/ce3409e.ada: New file. + * ada/acats-2/tests/ce/ce3410a.ada: New file. + * ada/acats-2/tests/ce/ce3410b.ada: New file. + * ada/acats-2/tests/ce/ce3410c.ada: New file. + * ada/acats-2/tests/ce/ce3410d.ada: New file. + * ada/acats-2/tests/ce/ce3410e.ada: New file. + * ada/acats-2/tests/ce/ce3411a.ada: New file. + * ada/acats-2/tests/ce/ce3411c.ada: New file. + * ada/acats-2/tests/ce/ce3412a.ada: New file. + * ada/acats-2/tests/ce/ce3413a.ada: New file. + * ada/acats-2/tests/ce/ce3413b.ada: New file. + * ada/acats-2/tests/ce/ce3413c.ada: New file. + * ada/acats-2/tests/ce/ce3414a.ada: New file. + * ada/acats-2/tests/ce/ce3601a.ada: New file. + * ada/acats-2/tests/ce/ce3602a.ada: New file. + * ada/acats-2/tests/ce/ce3602b.ada: New file. + * ada/acats-2/tests/ce/ce3602c.ada: New file. + * ada/acats-2/tests/ce/ce3602d.ada: New file. + * ada/acats-2/tests/ce/ce3603a.ada: New file. + * ada/acats-2/tests/ce/ce3604a.ada: New file. + * ada/acats-2/tests/ce/ce3604b.ada: New file. + * ada/acats-2/tests/ce/ce3605a.ada: New file. + * ada/acats-2/tests/ce/ce3605b.ada: New file. + * ada/acats-2/tests/ce/ce3605c.ada: New file. + * ada/acats-2/tests/ce/ce3605d.ada: New file. + * ada/acats-2/tests/ce/ce3605e.ada: New file. + * ada/acats-2/tests/ce/ce3606a.ada: New file. + * ada/acats-2/tests/ce/ce3606b.ada: New file. + * ada/acats-2/tests/ce/ce3701a.ada: New file. + * ada/acats-2/tests/ce/ce3704a.ada: New file. + * ada/acats-2/tests/ce/ce3704b.ada: New file. + * ada/acats-2/tests/ce/ce3704c.ada: New file. + * ada/acats-2/tests/ce/ce3704d.ada: New file. + * ada/acats-2/tests/ce/ce3704e.ada: New file. + * ada/acats-2/tests/ce/ce3704f.ada: New file. + * ada/acats-2/tests/ce/ce3704m.ada: New file. + * ada/acats-2/tests/ce/ce3704n.ada: New file. + * ada/acats-2/tests/ce/ce3704o.ada: New file. + * ada/acats-2/tests/ce/ce3705a.ada: New file. + * ada/acats-2/tests/ce/ce3705b.ada: New file. + * ada/acats-2/tests/ce/ce3705c.ada: New file. + * ada/acats-2/tests/ce/ce3705d.ada: New file. + * ada/acats-2/tests/ce/ce3705e.ada: New file. + * ada/acats-2/tests/ce/ce3706c.ada: New file. + * ada/acats-2/tests/ce/ce3706d.ada: New file. + * ada/acats-2/tests/ce/ce3706f.ada: New file. + * ada/acats-2/tests/ce/ce3706g.ada: New file. + * ada/acats-2/tests/ce/ce3707a.ada: New file. + * ada/acats-2/tests/ce/ce3708a.ada: New file. + * ada/acats-2/tests/ce/ce3801a.ada: New file. + * ada/acats-2/tests/ce/ce3801b.ada: New file. + * ada/acats-2/tests/ce/ce3804a.ada: New file. + * ada/acats-2/tests/ce/ce3804b.ada: New file. + * ada/acats-2/tests/ce/ce3804c.ada: New file. + * ada/acats-2/tests/ce/ce3804d.ada: New file. + * ada/acats-2/tests/ce/ce3804e.ada: New file. + * ada/acats-2/tests/ce/ce3804f.ada: New file. + * ada/acats-2/tests/ce/ce3804g.ada: New file. + * ada/acats-2/tests/ce/ce3804h.ada: New file. + * ada/acats-2/tests/ce/ce3804i.ada: New file. + * ada/acats-2/tests/ce/ce3804j.ada: New file. + * ada/acats-2/tests/ce/ce3804m.ada: New file. + * ada/acats-2/tests/ce/ce3804o.ada: New file. + * ada/acats-2/tests/ce/ce3804p.ada: New file. + * ada/acats-2/tests/ce/ce3805a.ada: New file. + * ada/acats-2/tests/ce/ce3805b.ada: New file. + * ada/acats-2/tests/ce/ce3806a.ada: New file. + * ada/acats-2/tests/ce/ce3806b.ada: New file. + * ada/acats-2/tests/ce/ce3806c.ada: New file. + * ada/acats-2/tests/ce/ce3806d.ada: New file. + * ada/acats-2/tests/ce/ce3806e.ada: New file. + * ada/acats-2/tests/ce/ce3806f.ada: New file. + * ada/acats-2/tests/ce/ce3806g.ada: New file. + * ada/acats-2/tests/ce/ce3806h.ada: New file. + * ada/acats-2/tests/ce/ce3809a.ada: New file. + * ada/acats-2/tests/ce/ce3809b.ada: New file. + * ada/acats-2/tests/ce/ce3810a.ada: New file. + * ada/acats-2/tests/ce/ce3810b.ada: New file. + * ada/acats-2/tests/ce/ce3815a.ada: New file. + * ada/acats-2/tests/ce/ce3901a.ada: New file. + * ada/acats-2/tests/ce/ce3902b.ada: New file. + * ada/acats-2/tests/ce/ce3904a.ada: New file. + * ada/acats-2/tests/ce/ce3904b.ada: New file. + * ada/acats-2/tests/ce/ce3905a.ada: New file. + * ada/acats-2/tests/ce/ce3905b.ada: New file. + * ada/acats-2/tests/ce/ce3905c.ada: New file. + * ada/acats-2/tests/ce/ce3905l.ada: New file. + * ada/acats-2/tests/ce/ce3906a.ada: New file. + * ada/acats-2/tests/ce/ce3906b.ada: New file. + * ada/acats-2/tests/ce/ce3906c.ada: New file. + * ada/acats-2/tests/ce/ce3906d.ada: New file. + * ada/acats-2/tests/ce/ce3906e.ada: New file. + * ada/acats-2/tests/ce/ce3906f.ada: New file. + * ada/acats-2/tests/ce/ce3907a.ada: New file. + * ada/acats-2/tests/ce/ce3908a.ada: New file. + * ada/acats-2/tests/cxa/cxa3001.a: New file. + * ada/acats-2/tests/cxa/cxa3002.a: New file. + * ada/acats-2/tests/cxa/cxa3003.a: New file. + * ada/acats-2/tests/cxa/cxa3004.a: New file. + * ada/acats-2/tests/cxa/cxa4001.a: New file. + * ada/acats-2/tests/cxa/cxa4002.a: New file. + * ada/acats-2/tests/cxa/cxa4003.a: New file. + * ada/acats-2/tests/cxa/cxa4004.a: New file. + * ada/acats-2/tests/cxa/cxa4005.a: New file. + * ada/acats-2/tests/cxa/cxa4006.a: New file. + * ada/acats-2/tests/cxa/cxa4007.a: New file. + * ada/acats-2/tests/cxa/cxa4008.a: New file. + * ada/acats-2/tests/cxa/cxa4009.a: New file. + * ada/acats-2/tests/cxa/cxa4010.a: New file. + * ada/acats-2/tests/cxa/cxa4011.a: New file. + * ada/acats-2/tests/cxa/cxa4012.a: New file. + * ada/acats-2/tests/cxa/cxa4013.a: New file. + * ada/acats-2/tests/cxa/cxa4014.a: New file. + * ada/acats-2/tests/cxa/cxa4015.a: New file. + * ada/acats-2/tests/cxa/cxa4016.a: New file. + * ada/acats-2/tests/cxa/cxa4017.a: New file. + * ada/acats-2/tests/cxa/cxa4018.a: New file. + * ada/acats-2/tests/cxa/cxa4019.a: New file. + * ada/acats-2/tests/cxa/cxa4020.a: New file. + * ada/acats-2/tests/cxa/cxa4021.a: New file. + * ada/acats-2/tests/cxa/cxa4022.a: New file. + * ada/acats-2/tests/cxa/cxa4023.a: New file. + * ada/acats-2/tests/cxa/cxa4024.a: New file. + * ada/acats-2/tests/cxa/cxa4025.a: New file. + * ada/acats-2/tests/cxa/cxa4026.a: New file. + * ada/acats-2/tests/cxa/cxa4027.a: New file. + * ada/acats-2/tests/cxa/cxa4028.a: New file. + * ada/acats-2/tests/cxa/cxa4029.a: New file. + * ada/acats-2/tests/cxa/cxa4030.a: New file. + * ada/acats-2/tests/cxa/cxa4031.a: New file. + * ada/acats-2/tests/cxa/cxa4032.a: New file. + * ada/acats-2/tests/cxa/cxa4033.a: New file. + * ada/acats-2/tests/cxa/cxa4034.a: New file. + * ada/acats-2/tests/cxa/cxa5011.a: New file. + * ada/acats-2/tests/cxa/cxa5012.a: New file. + * ada/acats-2/tests/cxa/cxa5013.a: New file. + * ada/acats-2/tests/cxa/cxa5015.a: New file. + * ada/acats-2/tests/cxa/cxa5a01.a: New file. + * ada/acats-2/tests/cxa/cxa5a02.a: New file. + * ada/acats-2/tests/cxa/cxa5a03.a: New file. + * ada/acats-2/tests/cxa/cxa5a04.a: New file. + * ada/acats-2/tests/cxa/cxa5a05.a: New file. + * ada/acats-2/tests/cxa/cxa5a06.a: New file. + * ada/acats-2/tests/cxa/cxa5a07.a: New file. + * ada/acats-2/tests/cxa/cxa5a08.a: New file. + * ada/acats-2/tests/cxa/cxa5a09.a: New file. + * ada/acats-2/tests/cxa/cxa5a10.a: New file. + * ada/acats-2/tests/cxa/cxa8001.a: New file. + * ada/acats-2/tests/cxa/cxa8002.a: New file. + * ada/acats-2/tests/cxa/cxa8003.a: New file. + * ada/acats-2/tests/cxa/cxa9001.a: New file. + * ada/acats-2/tests/cxa/cxa9002.a: New file. + * ada/acats-2/tests/cxa/cxaa001.a: New file. + * ada/acats-2/tests/cxa/cxaa002.a: New file. + * ada/acats-2/tests/cxa/cxaa003.a: New file. + * ada/acats-2/tests/cxa/cxaa004.a: New file. + * ada/acats-2/tests/cxa/cxaa005.a: New file. + * ada/acats-2/tests/cxa/cxaa006.a: New file. + * ada/acats-2/tests/cxa/cxaa007.a: New file. + * ada/acats-2/tests/cxa/cxaa008.a: New file. + * ada/acats-2/tests/cxa/cxaa009.a: New file. + * ada/acats-2/tests/cxa/cxaa010.a: New file. + * ada/acats-2/tests/cxa/cxaa011.a: New file. + * ada/acats-2/tests/cxa/cxaa012.a: New file. + * ada/acats-2/tests/cxa/cxaa013.a: New file. + * ada/acats-2/tests/cxa/cxaa014.a: New file. + * ada/acats-2/tests/cxa/cxaa015.a: New file. + * ada/acats-2/tests/cxa/cxaa016.a: New file. + * ada/acats-2/tests/cxa/cxaa017.a: New file. + * ada/acats-2/tests/cxa/cxaa018.a: New file. + * ada/acats-2/tests/cxa/cxaa019.a: New file. + * ada/acats-2/tests/cxa/cxab001.a: New file. + * ada/acats-2/tests/cxa/cxac001.a: New file. + * ada/acats-2/tests/cxa/cxac002.a: New file. + * ada/acats-2/tests/cxa/cxac003.a: New file. + * ada/acats-2/tests/cxa/cxac004.a: New file. + * ada/acats-2/tests/cxa/cxac005.a: New file. + * ada/acats-2/tests/cxa/cxaca01.a: New file. + * ada/acats-2/tests/cxa/cxaca02.a: New file. + * ada/acats-2/tests/cxa/cxacb01.a: New file. + * ada/acats-2/tests/cxa/cxacb02.a: New file. + * ada/acats-2/tests/cxa/cxacc01.a: New file. + * ada/acats-2/tests/cxa/cxaf001.a: New file. + * ada/acats-2/tests/cxb/cxb2001.a: New file. + * ada/acats-2/tests/cxb/cxb2002.a: New file. + * ada/acats-2/tests/cxb/cxb2003.a: New file. + * ada/acats-2/tests/cxb/cxb3001.a: New file. + * ada/acats-2/tests/cxb/cxb3002.a: New file. + * ada/acats-2/tests/cxb/cxb3003.a: New file. + * ada/acats-2/tests/cxb/cxb30040.c: New file. + * ada/acats-2/tests/cxb/cxb30041.am: New file. + * ada/acats-2/tests/cxb/cxb3005.a: New file. + * ada/acats-2/tests/cxb/cxb30060.c: New file. + * ada/acats-2/tests/cxb/cxb30061.am: New file. + * ada/acats-2/tests/cxb/cxb3007.a: New file. + * ada/acats-2/tests/cxb/cxb3008.a: New file. + * ada/acats-2/tests/cxb/cxb3009.a: New file. + * ada/acats-2/tests/cxb/cxb3010.a: New file. + * ada/acats-2/tests/cxb/cxb3011.a: New file. + * ada/acats-2/tests/cxb/cxb3012.a: New file. + * ada/acats-2/tests/cxb/cxb30130.c: New file. + * ada/acats-2/tests/cxb/cxb30131.c: New file. + * ada/acats-2/tests/cxb/cxb30132.am: New file. + * ada/acats-2/tests/cxb/cxb3014.a: New file. + * ada/acats-2/tests/cxb/cxb3015.a: New file. + * ada/acats-2/tests/cxb/cxb3016.a: New file. + * ada/acats-2/tests/cxb/cxb4001.a: New file. + * ada/acats-2/tests/cxb/cxb4002.a: New file. + * ada/acats-2/tests/cxb/cxb4003.a: New file. + * ada/acats-2/tests/cxb/cxb4004.a: New file. + * ada/acats-2/tests/cxb/cxb4005.a: New file. + * ada/acats-2/tests/cxb/cxb4006.a: New file. + * ada/acats-2/tests/cxb/cxb4007.a: New file. + * ada/acats-2/tests/cxb/cxb4008.a: New file. + * ada/acats-2/tests/cxb/cxb5001.a: New file. + * ada/acats-2/tests/cxb/cxb5002.a: New file. + * ada/acats-2/tests/cxb/cxb5003.a: New file. + * ada/acats-2/tests/cxf/cxf1001.a: New file. + * ada/acats-2/tests/cxf/cxf2001.a: New file. + * ada/acats-2/tests/cxf/cxf2002.a: New file. + * ada/acats-2/tests/cxf/cxf2003.a: New file. + * ada/acats-2/tests/cxf/cxf2004.a: New file. + * ada/acats-2/tests/cxf/cxf2005.a: New file. + * ada/acats-2/tests/cxf/cxf2a01.a: New file. + * ada/acats-2/tests/cxf/cxf2a02.a: New file. + * ada/acats-2/tests/cxf/cxf3001.a: New file. + * ada/acats-2/tests/cxf/cxf3002.a: New file. + * ada/acats-2/tests/cxf/cxf3003.a: New file. + * ada/acats-2/tests/cxf/cxf3004.a: New file. + * ada/acats-2/tests/cxf/cxf3a01.a: New file. + * ada/acats-2/tests/cxf/cxf3a02.a: New file. + * ada/acats-2/tests/cxf/cxf3a03.a: New file. + * ada/acats-2/tests/cxf/cxf3a04.a: New file. + * ada/acats-2/tests/cxf/cxf3a05.a: New file. + * ada/acats-2/tests/cxf/cxf3a06.a: New file. + * ada/acats-2/tests/cxf/cxf3a07.a: New file. + * ada/acats-2/tests/cxf/cxf3a08.a: New file. + * ada/acats-2/tests/cxg/cxg1001.a: New file. + * ada/acats-2/tests/cxg/cxg1002.a: New file. + * ada/acats-2/tests/cxg/cxg1003.a: New file. + * ada/acats-2/tests/cxg/cxg1004.a: New file. + * ada/acats-2/tests/cxg/cxg1005.a: New file. + * ada/acats-2/tests/cxg/cxg2001.a: New file. + * ada/acats-2/tests/cxg/cxg2002.a: New file. + * ada/acats-2/tests/cxg/cxg2003.a: New file. + * ada/acats-2/tests/cxg/cxg2004.a: New file. + * ada/acats-2/tests/cxg/cxg2005.a: New file. + * ada/acats-2/tests/cxg/cxg2006.a: New file. + * ada/acats-2/tests/cxg/cxg2007.a: New file. + * ada/acats-2/tests/cxg/cxg2008.a: New file. + * ada/acats-2/tests/cxg/cxg2009.a: New file. + * ada/acats-2/tests/cxg/cxg2010.a: New file. + * ada/acats-2/tests/cxg/cxg2011.a: New file. + * ada/acats-2/tests/cxg/cxg2012.a: New file. + * ada/acats-2/tests/cxg/cxg2013.a: New file. + * ada/acats-2/tests/cxg/cxg2014.a: New file. + * ada/acats-2/tests/cxg/cxg2015.a: New file. + * ada/acats-2/tests/cxg/cxg2016.a: New file. + * ada/acats-2/tests/cxg/cxg2017.a: New file. + * ada/acats-2/tests/cxg/cxg2018.a: New file. + * ada/acats-2/tests/cxg/cxg2019.a: New file. + * ada/acats-2/tests/cxg/cxg2020.a: New file. + * ada/acats-2/tests/cxg/cxg2021.a: New file. + * ada/acats-2/tests/cxg/cxg2022.a: New file. + * ada/acats-2/tests/cxg/cxg2023.a: New file. + * ada/acats-2/tests/cxg/cxg2024.a: New file. + * ada/acats-2/tests/cxh/cxh3001.a: New file. + * ada/acats-2/tests/cxh/cxh3002.a: New file. + * ada/acats-2/tests/cxh/cxh30030.a: New file. + * ada/acats-2/tests/cxh/cxh30031.am: New file. + * ada/acats-2/tests/cz/cz1101a.ada: New file. + * ada/acats-2/tests/cz/cz1102a.ada: New file. + * ada/acats-2/tests/cz/cz1103a.ada: New file. + * ada/acats-2/tests/d/d4a002a.ada: New file. + * ada/acats-2/tests/d/d4a002b.ada: New file. + * ada/acats-2/tests/d/d4a004a.ada: New file. + * ada/acats-2/tests/d/d4a004b.ada: New file. + * ada/acats-2/tests/e/e28002b.ada: New file. + * ada/acats-2/tests/e/e28005d.ada: New file. + * ada/acats-2/tests/e/e52103y.ada: New file. + * ada/acats-2/tests/e/eb4011a.ada: New file. + * ada/acats-2/tests/e/eb4012a.ada: New file. + * ada/acats-2/tests/e/eb4014a.ada: New file. + * ada/acats-2/tests/e/ee3203a.ada: New file. + * ada/acats-2/tests/e/ee3204a.ada: New file. + * ada/acats-2/tests/e/ee3402b.ada: New file. + * ada/acats-2/tests/e/ee3409f.ada: New file. + * ada/acats-2/tests/e/ee3412c.ada: New file. + * ada/acats-2/tests/l/la140010.a: New file. + * ada/acats-2/tests/l/la140011.am: New file. + * ada/acats-2/tests/l/la140012.a: New file. + * ada/acats-2/tests/l/la140020.a: New file. + * ada/acats-2/tests/l/la140021.am: New file. + * ada/acats-2/tests/l/la140022.a: New file. + * ada/acats-2/tests/l/la140030.a: New file. + * ada/acats-2/tests/l/la140031.a: New file. + * ada/acats-2/tests/l/la140032.am: New file. + * ada/acats-2/tests/l/la140033.a: New file. + * ada/acats-2/tests/l/la140040.a: New file. + * ada/acats-2/tests/l/la140041.am: New file. + * ada/acats-2/tests/l/la140042.a: New file. + * ada/acats-2/tests/l/la140050.a: New file. + * ada/acats-2/tests/l/la140051.a: New file. + * ada/acats-2/tests/l/la140052.am: New file. + * ada/acats-2/tests/l/la140053.a: New file. + * ada/acats-2/tests/l/la140060.a: New file. + * ada/acats-2/tests/l/la140061.a: New file. + * ada/acats-2/tests/l/la140062.am: New file. + * ada/acats-2/tests/l/la140063.a: New file. + * ada/acats-2/tests/l/la140070.a: New file. + * ada/acats-2/tests/l/la140071.a: New file. + * ada/acats-2/tests/l/la140072.am: New file. + * ada/acats-2/tests/l/la140073.a: New file. + * ada/acats-2/tests/l/la140080.a: New file. + * ada/acats-2/tests/l/la140081.a: New file. + * ada/acats-2/tests/l/la140082.am: New file. + * ada/acats-2/tests/l/la140083.a: New file. + * ada/acats-2/tests/l/la140090.a: New file. + * ada/acats-2/tests/l/la140091.a: New file. + * ada/acats-2/tests/l/la140092.am: New file. + * ada/acats-2/tests/l/la140093.a: New file. + * ada/acats-2/tests/l/la140100.a: New file. + * ada/acats-2/tests/l/la140101.a: New file. + * ada/acats-2/tests/l/la140102.am: New file. + * ada/acats-2/tests/l/la140103.a: New file. + * ada/acats-2/tests/l/la140110.a: New file. + * ada/acats-2/tests/l/la140111.a: New file. + * ada/acats-2/tests/l/la140112.am: New file. + * ada/acats-2/tests/l/la140113.a: New file. + * ada/acats-2/tests/l/la140120.a: New file. + * ada/acats-2/tests/l/la140121.a: New file. + * ada/acats-2/tests/l/la140122.am: New file. + * ada/acats-2/tests/l/la140123.a: New file. + * ada/acats-2/tests/l/la140130.a: New file. + * ada/acats-2/tests/l/la140131.a: New file. + * ada/acats-2/tests/l/la140132.am: New file. + * ada/acats-2/tests/l/la140133.a: New file. + * ada/acats-2/tests/l/la140140.a: New file. + * ada/acats-2/tests/l/la140141.a: New file. + * ada/acats-2/tests/l/la140142.am: New file. + * ada/acats-2/tests/l/la140143.a: New file. + * ada/acats-2/tests/l/la140150.a: New file. + * ada/acats-2/tests/l/la140151.a: New file. + * ada/acats-2/tests/l/la140152.am: New file. + * ada/acats-2/tests/l/la140153.a: New file. + * ada/acats-2/tests/l/la140160.a: New file. + * ada/acats-2/tests/l/la140161.a: New file. + * ada/acats-2/tests/l/la140162.am: New file. + * ada/acats-2/tests/l/la140163.a: New file. + * ada/acats-2/tests/l/la140170.a: New file. + * ada/acats-2/tests/l/la140171.a: New file. + * ada/acats-2/tests/l/la140172.am: New file. + * ada/acats-2/tests/l/la140173.a: New file. + * ada/acats-2/tests/l/la140180.a: New file. + * ada/acats-2/tests/l/la140181.a: New file. + * ada/acats-2/tests/l/la140182.am: New file. + * ada/acats-2/tests/l/la140183.a: New file. + * ada/acats-2/tests/l/la140190.a: New file. + * ada/acats-2/tests/l/la140191.a: New file. + * ada/acats-2/tests/l/la140192.am: New file. + * ada/acats-2/tests/l/la140193.a: New file. + * ada/acats-2/tests/l/la140200.a: New file. + * ada/acats-2/tests/l/la140201.a: New file. + * ada/acats-2/tests/l/la140202.am: New file. + * ada/acats-2/tests/l/la140203.a: New file. + * ada/acats-2/tests/l/la140210.a: New file. + * ada/acats-2/tests/l/la140211.am: New file. + * ada/acats-2/tests/l/la140212.a: New file. + * ada/acats-2/tests/l/la140220.a: New file. + * ada/acats-2/tests/l/la140221.am: New file. + * ada/acats-2/tests/l/la140222.a: New file. + * ada/acats-2/tests/l/la140240.a: New file. + * ada/acats-2/tests/l/la140241.a: New file. + * ada/acats-2/tests/l/la140242.am: New file. + * ada/acats-2/tests/l/la140243.a: New file. + * ada/acats-2/tests/l/la140250.a: New file. + * ada/acats-2/tests/l/la140251.am: New file. + * ada/acats-2/tests/l/la140252.a: New file. + * ada/acats-2/tests/l/la140260.a: New file. + * ada/acats-2/tests/l/la140261.a: New file. + * ada/acats-2/tests/l/la140262.am: New file. + * ada/acats-2/tests/l/la140263.a: New file. + * ada/acats-2/tests/l/la140270.a: New file. + * ada/acats-2/tests/l/la140271.a: New file. + * ada/acats-2/tests/l/la140272.am: New file. + * ada/acats-2/tests/l/la140273.a: New file. + +2025-05-24 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vor.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-24 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add test cases + for vor vx combine case 0 on GR2VR cost. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vor.vx run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vor-run-1-u8.c: New test. + +2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120363 + * g++.dg/modules/pr113292_a.H: Move to... + * g++.dg/modules/tls-1_a.H: ...here. + * g++.dg/modules/pr113292_b.C: Move to... + * g++.dg/modules/tls-1_b.C: ...here. + * g++.dg/modules/pr113292_c.C: Move to... + * g++.dg/modules/tls-1_c.C: ...here. + * g++.dg/modules/tls-2_a.C: New test. + * g++.dg/modules/tls-2_b.C: New test. + * g++.dg/modules/tls-2_c.C: New test. + * g++.dg/modules/tls-3.h: New test. + * g++.dg/modules/tls-3_a.H: New test. + * g++.dg/modules/tls-3_b.C: New test. + +2025-05-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120414 + * g++.dg/modules/using-31_a.C: New test. + * g++.dg/modules/using-31_b.C: New test. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/arch-56.c: New test. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/param-autovec-mode.c: New test. + +2025-05-23 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-3.c: Adjust + expectations. + * gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-9.c: Ditto. + +2025-05-23 Dhruv Chawla <dhruvc@nvidia.com> + Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/shift_rev_1.c: New test. + * gcc.target/aarch64/sve/shift_rev_2.c: Likewise. + * gcc.target/aarch64/sve/shift_rev_3.c: Likewise. + +2025-05-22 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120389 + * gm2/iso/fail/badarray3.mod: New test. + +2025-05-22 Eric Botcazou <ebotcazou@adacore.com> + + * ada/acats/overflow.lst: Delete. + * ada/acats/run_all.sh: Do not process overflow.lst. + +2025-05-22 Jason Merrill <jason@redhat.com> + + * g++.dg/opt/always_inline2.C: Correct PR number. + +2025-05-22 Jason Merrill <jason@redhat.com> + + PR c++/120935 + * g++.dg/opt/always_inline2.C: New test. + * g++.dg/debug/dwarf2/pubnames-2.C: Suppress -fimplicit-constexpr. + * g++.dg/debug/dwarf2/pubnames-3.C: Likewise. + +2025-05-22 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/cwsc1.c (CHAIN, aarch64): x9 instead x18 for __vxworks. + * gcc.target/aarch64/reg-alloc-4.c: Drop x18-assigned asm + operand on vxworks. + * gcc.target/aarch64/shadow_call_stack_1.c: Don't expect + -ffixed-x18 error on vxworks, but rather the sorry message. + * gcc.target/aarch64/shadow_call_stack_2.c: Skip on vxworks. + * gcc.target/aarch64/shadow_call_stack_3.c: Likewise. + * gcc.target/aarch64/shadow_call_stack_4.c: Likewise. + * gcc.target/aarch64/shadow_call_stack_5.c: Likewise. + * gcc.target/aarch64/shadow_call_stack_6.c: Likewise. + * gcc.target/aarch64/shadow_call_stack_7.c: Likewise. + * gcc.target/aarch64/shadow_call_stack_8.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-19.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-20.c: Likewise. + +2025-05-22 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/120372 + * gcc.target/aarch64/imm_choice_comparison-2.c: New test. + +2025-05-22 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/bitintext.h: New file. + * gcc.dg/torture/bitint-82.c: New test. + +2025-05-22 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp (check_effective_target_arm_v8_1a_neon_ok_nocache): Use + -mcpu=unset on arm only. + (check_effective_target_arm_v8_2a_fp16_scalar_ok_nocache): Likewise. + (check_effective_target_arm_v8_2a_fp16_neon_ok_nocache): Likewise. + (check_effective_target_arm_v8_2a_dotprod_neon_ok_nocache): Likewise. + (check_effective_target_arm_v8_2a_i8mm_ok_nocache): Likewise. + (check_effective_target_arm_v8_2a_bf16_neon_ok_nocache): Likewise. + (check_effective_target_arm_v8_3a_complex_neon_ok_nocache): Likewise. + (check_effective_target_arm_v8_3a_fp16_complex_neon_ok_nocache): Likewise. + +2025-05-22 Jakub Jelinek <jakub@redhat.com> + + PR target/120360 + * gcc.target/i386/pr120360.c: New test. + +2025-05-22 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/cset-sext-sfb.c: Skip for -Oz. + * gcc.target/riscv/zba-slliuw.c: Skip for -Og. + +2025-05-21 Jeff Law <jlaw@ventanamicro.com> + + PR target/120368 + * gcc.target/riscv/pr120368.c: New test. + +2025-05-21 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vand.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-21 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add test cases + for vand vx combine case 0 on GR2VR cost. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vand.vx run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vand-run-1-u8.c: New test. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/vect/vect-simd-clone-16e.c: Expect fewer calls on ia32. + * gcc.dg/vect/vect-simd-clone-17e.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18e.c: Likewise. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/i386/pr31985.c: Add -fomit-frame-pointer. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/i386/pr108938-3.c: Add -msse2. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/i386/no-callee-saved-16.c: Add -fomit-frame-pointer. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/vect/tsvc/vect-tsvc-s332.c: Require vect_early_break_hw. + * gcc.dg/vect/tsvc/vect-tsvc-s481.c: Likewise. + * gcc.dg/vect/tsvc/vect-tsvc-s482.c: Likewise. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/tree-ssa/forwprop-41.c: Add -msse on x86. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/strlenopt-80.c: Bump to -msse2. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/memcpy-6.c: Bump to -msse2. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/fold-copysign-1.c: Bump to sse2 on ia32. + * gcc.dg/pr55152-2.c: Likewise. + * gcc.dg/tree-ssa/abs-4.c: Likewise. + * gcc.dg/tree-ssa/backprop-6.c: Likewise. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/aarch64/sme/nonlocal_goto_1.c: Match + vxworks cache-clearing function as well. + * gcc.target/aarch64/sme/nonlocal_goto_2.c: Likewise. + * gcc.target/aarch64/sme/nonlocal_goto_3.c: Likewise. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/aarch64/acle/rwsr.c: Use uint64_t. + * gcc.target/aarch64/acle/rwsr-2.c: Likewise. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * c-c++-common/analyzer/strtok-cppreference.c + (__STDC_WANT_LIB_EXT1__): Define to 1. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * c-c++-common/analyzer/fd-glibc-byte-stream-socket.c: Skip on + vxworks with C++ < 11. + +2025-05-21 Iain Sandoe <iain@sandoe.co.uk> + + * g++.dg/coroutines/pr115908.C: Count promise construction + and destruction. Run the test and XFAIL it. + +2025-05-21 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119916 + * g++.dg/coroutines/torture/special-termination-00-sync-completion.C: + Amend for CWG2563 expected behaviour. + * g++.dg/coroutines/torture/special-termination-01-self-destruct.C: + Likewise. + * g++.dg/coroutines/torture/pr119916.C: New test. + +2025-05-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/120369 + * gcc.dg/torture/pr120369-1.c: New test. + +2025-05-21 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr118994-1.c: New test. + * gcc.target/i386/pr118994-2.c: New test. + +2025-05-20 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/FUNCTION_SQRT__2_.cob: Testcase. + * cobol.dg/group2/FUNCTION_SQRT__2_.out: Known-good for the testcase. + +2025-05-20 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/torture/bitint-78.c: New test. + * gcc.dg/torture/bitint-79.c: New test. + * gcc.dg/torture/bitint-80.c: New test. + * gcc.dg/torture/bitint-81.c: New test. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120349 + * g++.dg/modules/vtt-3_a.C: New test. + * g++.dg/modules/vtt-3_b.C: New test. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120013 + * g++.dg/modules/partial-8.h: New test. + * g++.dg/modules/partial-8_a.C: New test. + * g++.dg/modules/partial-8_b.C: New test. + * g++.dg/modules/partial-8_c.C: New test. + * g++.dg/modules/partial-8_d.C: New test. + +2025-05-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120350 + * g++.dg/modules/tinfo-3_a.H: New test. + * g++.dg/modules/tinfo-3_b.C: New test. + +2025-05-20 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr103771-5.c: New test. + * gcc.target/i386/pr103771-6.c: New test. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Extract + define T as type for testing. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Add asm check + for vrsub with GR2VR cost 2. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Add asm check + for vrsub with GR2VR cost 1. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vrsub case 1 with GR2VR cost 0. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Add asm check + for vrsub with GR2VR cost is 15. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Add vrsub asm + dump check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto. + +2025-05-20 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add vrsub asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper + macros for vx binary reversed. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vrsub. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vrsub-run-1-u8.c: New test. + +2025-05-19 Jeff Law <jlaw@ventanamicro.com> + + PR target/120333 + * gcc.target/riscv/pr114512.c: Update expected output. + * gcc.target/riscv/pr120333.c: New test. + +2025-05-19 Thomas Schwinge <tschwinge@baylibre.com> + + PR lto/120308 + * gcc.target/nvptx/abi-struct-arg.c: Add empty structure testing. + * gcc.target/nvptx/abi-struct-ret.c: Likewise. + +2025-05-19 Richard Earnshaw <rearnsha@arm.com> + + PR target/120351 + * gcc.target/arm/pr120351.c: New test. + +2025-05-19 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/zilsd-code-gen.c: New test. + +2025-05-19 Jennifer Schmitz <jschmitz@nvidia.com> + + PR middle-end/120276 + * gcc.dg/torture/pr120276.c: New test. + +2025-05-19 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/constraint-cR-pair.c: New test case. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_2-512-bf16-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-bf16-1.c: ... to this. + * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: Removed and + combined ... + * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c:... to this. + * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: Removed and + combined ... + * gcc.target/i386/avx10_2-bf16-vector-fma-1.c:... to this. + * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: Removed + and combined ... + * gcc.target/i386/avx10_2-bf16-vector-operations-1.c:... to this. + * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: Removed + and combined ... + * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c:... to this. + * gcc.target/i386/avx10_2-512-convert-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-convert-1.c:... to this. + * gcc.target/i386/avx10_2-512-media-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-media-1.c:... to this. + * gcc.target/i386/avx10_2-512-minmax-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-minmax-1.c:... to this. + * gcc.target/i386/avx10_2-512-movrs-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-movrs-1.c:... to this. + * gcc.target/i386/avx10_2-512-satcvt-1.c: Removed and combined ... + * gcc.target/i386/avx10_2-satcvt-1.c:... to this. + * gcc.target/i386/sm4-avx10_2-512-1.c: Move to... + * gcc.target/i386/sm4-avx10_2-1b.c: ...here. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10-check.h: Remove AVX10_512BIT. + * gcc.target/i386/avx10-minmax-helper.h: Ditto. + * gcc.target/i386/avx10_2-vaddbf16-2.c: Add 512 test. + * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. + * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. + * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. + * gcc.target/i386/avx512f-helper.h: Remove AVX10_512BIT. + * gcc.target/i386/sm4-check.h: Use AVX10_2. + * gcc.target/i386/avx10_2-512-vaddbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vaddbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcmpbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvt2ps2phx-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvt2ps2phx-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbf162ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbf162iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvthf82ph-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvthf82ph-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2bf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2bf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2hf8-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2hf8s-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtph2iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtps2ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvtps2iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttbf162ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttbf162iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttpd2dqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttpd2qqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttpd2udqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttph2ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttph2iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2dqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2ibs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2iubs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2qqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2udqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vcvttps2uqqs-2.h: ...here. + * gcc.target/i386/avx10_2-512-vdivbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vdivbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vdpphps-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vdpphps-2.h: ...here. + * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vfpclassbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vgetexpbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vgetmantbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vmaxbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vminbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vminbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vminmaxbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vminmaxpd-2.h: ...here. + * gcc.target/i386/avx10_2-512-vminmaxph-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vminmaxph-2.h: ...here. + * gcc.target/i386/avx10_2-512-vminmaxps-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vminmaxps-2.h: ...here. + * gcc.target/i386/avx10_2-512-vmpsadbw-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vmpsadbw-2.h: ...here. + * gcc.target/i386/avx10_2-512-vmulbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vmulbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbssd-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbssd-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbssds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbssds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbsud-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbsud-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbsuds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbsuds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbuud-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbuud-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpbuuds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpbuuds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwsud-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwsud-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwsuds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwusd-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwusd-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwusds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwusds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwuud-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwuud-2.h: ...here. + * gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vpdpwuuds-2.h: ...here. + * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vrcpbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vreducebf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vreducebf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vrndscalebf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vrsqrtbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vscalefbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vsqrtbf16-2.h: ...here. + * gcc.target/i386/avx10_2-512-vsubbf16-2.c: + Remove 512 test. Move to... + * gcc.target/i386/avx10_2-vsubbf16-2.h: ...here. + * gcc.target/i386/sm4key4-avx10_2-512-2.c: + Remove 512 test. Move to... + * gcc.target/i386/sm4key4-avx10_2-2.c: ...here. + * gcc.target/i386/sm4rnds4-avx10_2-512-2.c: + Remove 512 test. Move to... + * gcc.target/i386/sm4rnds4-avx10_2-2.c: ...here. + * gcc.target/i386/vnniint16-auto-vectorize-4.c: Use AVX10_SCALAR + for 512 bit test. + * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx-1.c: Combine tests and change + intrin file name. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_1-1.c: Remove warning. + * gcc.target/i386/avx10_1-2.c: Ditto. + * gcc.target/i386/avx10_1-3.c: Ditto. + * gcc.target/i386/avx10_1-4.c: Ditto. + * gcc.target/i386/pr111068.c: Ditto. + * gcc.target/i386/pr117946.c: Ditto. + * gcc.target/i386/pr117240_avx512f.c: Remove -mevex512 and + warning. + * gcc.target/i386/avx10_1-11.c: Rename to ... + * gcc.target/i386/avx10_1-5.c: ... this. Remove warning. + * gcc.target/i386/avx10_1-12.c: Rename to ... + * gcc.target/i386/avx10_1-6.c: ... this. Remove warning. + * gcc.target/i386/avx10_1-26.c: Rename to ... + * gcc.target/i386/avx10_1-7.c: ... this. Remove warning. + The origin avx10_1-7.c is removed. + * gcc.target/i386/avx10_1-10.c: Removed. + * gcc.target/i386/avx10_1-13.c: Removed. + * gcc.target/i386/avx10_1-14.c: Removed. + * gcc.target/i386/avx10_1-15.c: Removed. + * gcc.target/i386/avx10_1-16.c: Removed. + * gcc.target/i386/avx10_1-17.c: Removed. + * gcc.target/i386/avx10_1-18.c: Removed. + * gcc.target/i386/avx10_1-19.c: Removed. + * gcc.target/i386/avx10_1-20.c: Removed. + * gcc.target/i386/avx10_1-21.c: Removed. + * gcc.target/i386/avx10_1-22.c: Removed. + * gcc.target/i386/avx10_1-23.c: Removed. + * gcc.target/i386/avx10_1-8.c: Removed. + * gcc.target/i386/avx10_1-9.c: Removed. + * gcc.target/i386/noevex512-1.c: Removed. + * gcc.target/i386/noevex512-2.c: Removed. + * gcc.target/i386/noevex512-3.c: Removed. + * gcc.target/i386/pr111889.c: Removed. + * gcc.target/i386/pr111907.c: Removed. + +2025-05-19 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/pr90096.c: Adjust error message. + * gcc.target/i386/pr117304-1.c: Removed. + +2025-05-17 Yuao Ma <c8ef@outlook.com> + + * gcc.dg/builtins-1.c: Builtin codegen test. + * gcc.dg/c23-builtins-1.c: Builtin signature test. + +2025-05-17 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add more helper macros. + * gcc.target/riscv/sat/sat_arith_data.h: Add the test data + for scalar unsigned SAT_ADD. + * gcc.target/riscv/sat/sat_u_add-run-1-u16.c: Leverage the test + data from the shared header file. + * gcc.target/riscv/sat/sat_u_add-run-1-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-1-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-1-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-2-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-2-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-2-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-2-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-3-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-3-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-3-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-3-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-4-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-4-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-4-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-4-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-5-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-5-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-5-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-5-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-6-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-6-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-6-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-6-u8.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: Ditto + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: Ditto + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + PR target/100165 + * gcc.target/aarch64/fmov-3-be.c: New test. + * gcc.target/aarch64/fmov-3-le.c: New test. + * gcc.target/aarch64/fmov-4-be.c: New test. + * gcc.target/aarch64/fmov-4-le.c: New test. + * gcc.target/aarch64/fmov-5-be.c: New test. + * gcc.target/aarch64/fmov-5-le.c: New test. + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + PR target/100165 + * gcc.target/aarch64/fmov-1-be.c: New test. + * gcc.target/aarch64/fmov-1-le.c: New test. + * gcc.target/aarch64/fmov-2-be.c: New test. + * gcc.target/aarch64/fmov-2-le.c: New test. + +2025-05-16 Pengxuan Zheng <quic_pzheng@quicinc.com> + + PR target/100165 + * gcc.target/aarch64/and-be.c: New test. + * gcc.target/aarch64/and-le.c: New test. + +2025-05-16 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group1/declarative_1.cob: Handle modified exception handling. + +2025-05-16 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.dg/pr78408-1.c: Update scan to forwprop1 only. + +2025-05-16 Jason Merrill <jason@redhat.com> + + * g++.dg/coroutines/pr94760-mismatched-traits-and-promise-prev.C: + Remove { target c++17 }. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Take + test name for the vx combine test data. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Leverage + the test name to identify the test data. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u8.c: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Add test cases + for vsub vx combine case 1 with GR2VR cost 2. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Add test cases + for vsub vx combine case 1 with GR2VR cost 1. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add test cases + for vsub vx combine case 1 with GR2VR cost 0. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Add test cases + for vsub vx combine with GR2VR cost 15. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Add test cases + for vsub vx combine with GR2VR cost 1. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Diito. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Diito. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add vector sub + vx combine asm check. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vector sub vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vsub-run-1-u8.c: New test. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add + type and op name to generate test function name. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Refine the + test helper macros to avoid conflict. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_run.h: Ditto. + +2025-05-16 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u16.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u32.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u64.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: ...here. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u8.c: Move to... + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: ...here. + +2025-05-15 Jason Merrill <jason@redhat.com> + + * g++.dg/coroutines/co-await-syntax-09-convert.C: Add -fcoroutines. + * g++.dg/coroutines/co-await-syntax-10.C + * g++.dg/coroutines/co-await-syntax-11.C + * g++.dg/coroutines/co-await-void_type.C + * g++.dg/coroutines/co-return-warning-1.C + * g++.dg/coroutines/ramp-return-a.C + * g++.dg/coroutines/ramp-return-c.C: Likewise. + * g++.dg/coroutines/coroutines.exp: Removed. + * lib/g++-dg.exp: Start at C++20 for coroutines/ + +2025-05-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/85750 + * gfortran.dg/alloc_comp_auto_array_3.f90: Adjust scan counts. + * gfortran.dg/alloc_comp_class_3.f03: Remove bogus warnings. + * gfortran.dg/alloc_comp_class_4.f03: Likewise. + * gfortran.dg/allocate_with_source_14.f03: Adjust scan count. + * gfortran.dg/derived_constructor_comps_6.f90: Likewise. + * gfortran.dg/derived_result_5.f90: New test. + +2025-05-15 Robert Dubner <rdubner@symas.com> + + PR cobol/120251 + * cobol.dg/group1/check_88.cob: One final regex "." instead of "ß" + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/116546 + * gcc.dg/pr116546.c: New. + +2025-05-15 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120277 + * gcc.dg/pr120277.c: New. + +2025-05-15 Robert Dubner <rdubner@symas.com> + + PR cobol/120251 + * cobol.dg/group1/check_88.cob: Ignore characters above 0x80. + * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.cob: + Output HIGH-VALUE as hex, rather than as characters. + * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: + Likewise. + * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.cob: Typo. + * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_1.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_2.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_3.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_4.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5-f.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_6.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_7.cob: Likewise. + * cobol.dg/group2/Multiple_INDEXED_BY_variables_with_the_same_name.cob: New test. + * cobol.dg/group2/Multiple_INDEXED_BY_variables_with_the_same_name.out: New test. + +2025-05-15 Jeff Law <jlaw@ventanamicro.com> + + PR target/120223 + * gcc.target/riscv/pr120223.c: New test. + +2025-05-15 Patrick Palka <ppalka@redhat.com> + + PR c++/120161 + * g++.dg/template/unify13.C: New test. + +2025-05-15 Jason Merrill <jason@redhat.com> + + * lib/g++-dg.exp (g++-std-flags): Factor out of g++-dg-runtest. + * g++.dg/modules/modules.exp: Use it instead of a copy. + +2025-05-15 Richard Biener <rguenther@suse.de> + + * gcc.target/i386/pr110310.c: Adjust. + +2025-05-15 Richard Biener <rguenther@suse.de> + + * gcc.target/i386/vect-epilogues-1.c: New testcase. + * gcc.target/i386/vect-epilogues-2.c: Likewise. + * gcc.target/i386/vect-epilogues-3.c: Likewise. + * gcc.target/i386/vect-epilogues-4.c: Likewise. + * gcc.target/i386/vect-epilogues-5.c: Likewise. + +2025-05-14 Simon Martin <simon@nasilyan.com> + + PR c++/120126 + * g++.dg/cpp0x/lambda/lambda-ice33.C: New test. + +2025-05-14 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-55.c: New test. + +2025-05-14 Martin Jambor <mjambor@suse.cz> + + * gcc.dg/ipa/pr120044-1.c: New test. + * gcc.dg/ipa/pr120044-2.c: Likewise. + * gcc.dg/tree-ssa/pr114864.c: Likewise. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120125 + * g++.dg/modules/clone-4_a.C: New test. + * g++.dg/modules/clone-4_b.C: New test. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119864 + * g++.dg/modules/openmp-1.C: New test. + +2025-05-14 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/tpl-friend-19_a.C: New test. + * g++.dg/modules/tpl-friend-19_b.C: New test. + +2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> + + * g++.dg/opt/pr96780_cpp23.C: New. + +2025-05-14 Owen Avery <powerboat9.gamer@gmail.com> + Jason Merrill <jason@redhat.com> + + * g++.dg/warn/ignore-virtual-move-assign.C: New test. + +2025-05-14 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr103771-4.c: New test. + +2025-05-13 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/113413 + * gfortran.dg/dec_math.f90: Add comment that degree + functions are part of F2023. + +2025-05-13 Yuao Ma <c8ef@outlook.com> + Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/113413 + * gfortran.dg/dec_math.f90: Add atand(y, x) testcase. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/119903 + * g++.dg/tree-ssa/pr119903-1.C: New test. + +2025-05-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/118868 + * c-c++-common/pr118868-1.c: New test. + +2025-05-13 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120188 + * gm2.dg/doc/examples/plugin/fail/doc-examples-plugin-fail.exp: + Remove call to gm2-dg-frontend-configure-check and replace with + tests for whether plugin variables exist. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120196 + * gfortran.dg/pr120196.f90: New test. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120191 + * gfortran.dg/pr120191_3.f90: New test. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120191 + * gfortran.dg/pr120191_2.f90: New test. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + Daniil Kochergin <daniil2472s@gmail.com> + Tobias Burnus <tburnus@baylibre.com> + + PR fortran/120191 + * gfortran.dg/pr120191_1.f90: New test. + +2025-05-13 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/html-output/missing-semicolon.py: Verify that we don't + have an empty "gcc-annotated-source" and we do have a + "gcc-generated-patch". + * gcc.dg/plugin/diagnostic-test-metadata-html.c: New test. + * gcc.dg/plugin/diagnostic-test-metadata-html.py: New test script. + * gcc.dg/plugin/diagnostic-test-paths-2.c: Add + "-fdiagnostics-add-output=experimental-html" to options. Add + invocation of diagnostic-test-paths-2.py. + * gcc.dg/plugin/diagnostic-test-paths-2.py: New test script. + * gcc.dg/plugin/plugin.exp (plugin_test_list): Add + diagnostic-test-metadata-html.c. + +2025-05-13 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/tree-ssa/vrp124.c: New. + +2025-05-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: Add test helper macros. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u16-from-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u16-from-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u32-from-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-9-u8-from-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u16-from-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u16-from-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u32-from-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_add-run-9-u8-from-u64.c: New test. + +2025-05-12 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/sat/sat_arith.h: Add test helper macros. + * gcc.target/riscv/sat/sat_u_add-7-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-7-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-7-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-7-u8-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u16-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u32-from-u64.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u16.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u32.c: New test. + * gcc.target/riscv/sat/sat_u_add-run-7-u8-from-u64.c: New test. + +2025-05-12 Jason Merrill <jason@redhat.com> + + PR c++/120012 + * g++.dg/abi/base-defaulted2.C: New test. + +2025-05-12 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120188 + * lib/gm2-dg.exp (gm2-dg-frontend-configure-check): New function. + (gm2-dg-runtest): Add -O2 to the option_list. + * gm2.dg/doc/examples/plugin/fail/assignvalue.mod: New test. + * gm2.dg/doc/examples/plugin/fail/doc-examples-plugin-fail.exp: New test. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/march-map=sm_61.c: Adjust. + * gcc.target/nvptx/march-map=sm_62.c: Likewise. + * gcc.target/nvptx/march=sm_61.c: New. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/mptx=5.0.c: New. + +2025-05-12 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/116445 + * gcc.target/arm/unsigned-extend-2.c: Fix dg directives. + +2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-ss-1.c: New test. + * gcc.target/riscv/arch-ss-2.c: New test. + +2025-05-12 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-zilsd-1.c: New. + * gcc.target/riscv/arch-zilsd-2.c: New. + * gcc.target/riscv/arch-zilsd-3.c: New. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/ivopts.c: Remove test for iwmmxt + * lib/target-supports.exp + (check_effective_target_arm_iwmmxt_ok): Delete. + +2025-05-12 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/mmx-1.c: Removed. + * gcc.target/arm/mmx-2.c: Removed. + * gcc.target/arm/pr64208.c: Removed. + * gcc.target/arm/pr79145.c: Removed. + * gcc.target/arm/pr99724.c: Removed. + * gcc.target/arm/pr99786.c: Removed. + +2025-05-12 Richard Biener <rguenther@suse.de> + + PR testsuite/120222 + * gcc.dg/tree-ssa/gen-vect-28.c: Use noipa on main_1. + +2025-05-12 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-52.c: Fix regular expression. + +2025-05-12 Chao-ying Fu <cfu@wavecomp.com> + + * gcc.target/mips/pr54240.c: Scan phiopt2. + +2025-05-11 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/pr91446.c: xfail. + * gcc.target/i386/pr99881.c: remove xfail. + +2025-05-11 Max Filippov <jcmvbkbc@gmail.com> + + * lib/target-supports.exp + (check_effective_target_xtensa_atomic): New function. + (check_effective_target_sync_int_long) + (check_effective_target_sync_char_short): Add test for xtensa. + +2025-05-11 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/258_Nested_PERFORM.cob: New testcase. + * cobol.dg/group2/259_PERFORM_VARYING_BY_-0.2.cob: Likewise. + * cobol.dg/group2/338_Default_Arithmetic__1_.cob: Likewise. + * cobol.dg/group2/access_to_OPTIONAL_LINKAGE_item_not_passed.cob: Likewise. + * cobol.dg/group2/ALLOCATE___FREE_basic_default_versions.cob: Likewise. + * cobol.dg/group2/ALLOCATE___FREE_with_BASED_item__1_.cob: Likewise. + * cobol.dg/group2/ALLOCATE___FREE_with_BASED_item__2_.cob: Likewise. + * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.cob: Likewise. + * cobol.dg/group2/Alphanumeric_and_binary_numeric.cob: Likewise. + * cobol.dg/group2/Alphanumeric_MOVE_with_truncation.cob: Likewise. + * cobol.dg/group2/ANY_LENGTH__1_.cob: Likewise. + * cobol.dg/group2/ANY_LENGTH__2_.cob: Likewise. + * cobol.dg/group2/ANY_LENGTH__3_.cob: Likewise. + * cobol.dg/group2/ANY_LENGTH__4_.cob: Likewise. + * cobol.dg/group2/ANY_LENGTH__5_.cob: Likewise. + * cobol.dg/group2/CALL_with_OMITTED_parameter.cob: Likewise. + * cobol.dg/group2/Class_check_with_reference_modification.cob: Likewise. + * cobol.dg/group2/Complex_HEX__VALUE_and_MOVE.cob: Likewise. + * cobol.dg/group2/Complex_IF.cob: Likewise. + * cobol.dg/group2/Concatenation_operator.cob: Likewise. + * cobol.dg/group2/CONTINUE_AFTER_1_SECONDS.cob: Likewise. + * cobol.dg/group2/CURRENCY_SIGN.cob: Likewise. + * cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__1_.cob: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__2_.cob: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__3_.cob: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__4_.cob: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__5_.cob: Likewise. + * cobol.dg/group2/EC-SIZE-TRUNCATION_EC-SIZE-OVERFLOW.cob: Likewise. + * cobol.dg/group2/EC-SIZE-ZERO-DIVIDE__fixed_and_float.cob: Likewise. + * cobol.dg/group2/EXIT_PARAGRAPH.cob: Likewise. + * cobol.dg/group2/EXIT_PERFORM.cob: Likewise. + * cobol.dg/group2/EXIT_PERFORM_CYCLE.cob: Likewise. + * cobol.dg/group2/EXIT_SECTION.cob: Likewise. + * cobol.dg/group2/Fixed_continuation_indicator.cob: Likewise. + * cobol.dg/group2/FLOAT-LONG_with_SIZE_ERROR.cob: Likewise. + * cobol.dg/group2/FLOAT-SHORT___FLOAT-LONG_w_o_SIZE_ERROR.cob: Likewise. + * cobol.dg/group2/FLOAT-SHORT_with_SIZE_ERROR.cob: Likewise. + * cobol.dg/group2/Index_and_parenthesized_expression.cob: Likewise. + * cobol.dg/group2/LENGTH_OF_omnibus.cob: Likewise. + * cobol.dg/group2/LOCAL-STORAGE__3__with_recursive_PROGRAM-ID.cob: Likewise. + * cobol.dg/group2/LOCAL-STORAGE__4__with_recursive_PROGRAM-ID_..._USING.cob: Likewise. + * cobol.dg/group2/MOVE_indexes.cob: Likewise. + * cobol.dg/group2/MOVE_integer_literal_to_alphanumeric.cob: Likewise. + * cobol.dg/group2/MOVE_to_edited_item__1_.cob: Likewise. + * cobol.dg/group2/MOVE_to_edited_item__2_.cob: Likewise. + * cobol.dg/group2/MOVE_to_item_with_simple_and_floating_insertion.cob: Likewise. + * cobol.dg/group2/MOVE_to_itself.cob: Likewise. + * cobol.dg/group2/MOVE_to_JUSTIFIED_item.cob: Likewise. + * cobol.dg/group2/MOVE_with_group_refmod.cob: Likewise. + * cobol.dg/group2/MOVE_with_refmod.cob: Likewise. + * cobol.dg/group2/MOVE_with_refmod__variable_.cob: Likewise. + * cobol.dg/group2/MOVE_Z_literal_.cob: Likewise. + * cobol.dg/group2/Multi-target_MOVE_with_subscript_re-evaluation.cob: Likewise. + * cobol.dg/group2/Non-numeric_data_in_numeric_items__1_.cob: Likewise. + * cobol.dg/group2/Non-numeric_data_in_numeric_items__2_.cob: Likewise. + * cobol.dg/group2/Non-overflow_after_overflow.cob: Likewise. + * cobol.dg/group2/OCCURS_clause_with_1_entry.cob: Likewise. + * cobol.dg/group2/OSVS_Arithmetic_Test__2_.cob: Likewise. + * cobol.dg/group2/PERFORM_..._CONTINUE.cob: Likewise. + * cobol.dg/group2/PERFORM_inline__1_.cob: Likewise. + * cobol.dg/group2/PERFORM_inline__2_.cob: Likewise. + * cobol.dg/group2/PERFORM_type_OSVS.cob: Likewise. + * cobol.dg/group2/PIC_ZZZ-__ZZZ_.cob: Likewise. + * cobol.dg/group2/Quick_check_of_PIC_XX_COMP-5.cob: Likewise. + * cobol.dg/group2/Quote_marks_in_comment_paragraphs.cob: Likewise. + * cobol.dg/group2/Recursive_PERFORM_paragraph.cob: Likewise. + * cobol.dg/group2/REDEFINES_values_on_FILLER_and_INITIALIZE.cob: Likewise. + * cobol.dg/group2/SORT__EBCDIC_table_sort__1_.cob: Likewise. + * cobol.dg/group2/SORT__EBCDIC_table_sort__2_.cob: Likewise. + * cobol.dg/group2/SORT__table_sort__2_.cob: Likewise. + * cobol.dg/group2/SORT__table_sort__3A_.cob: Likewise. + * cobol.dg/group2/SORT__table_sort__3B_.cob: Likewise. + * cobol.dg/group2/SORT__table_sort.cob: Likewise. + * cobol.dg/group2/SOURCE_FIXED_FREE_directives.cob: Likewise. + * cobol.dg/group2/Static_CALL_with_ON_EXCEPTION__with_-fno-static-call_.cob: Likewise. + * cobol.dg/group2/_-static__compilation.cob: Likewise. + * cobol.dg/group2/STOP_RUN_WITH_ERROR_STATUS.cob: Likewise. + * cobol.dg/group2/STOP_RUN_WITH_NORMAL_STATUS.cob: Likewise. + * cobol.dg/group2/STRING___UNSTRING__NOT__ON_OVERFLOW.cob: Likewise. + * cobol.dg/group2/STRING_with_subscript_reference.cob: Likewise. + * cobol.dg/group2/UNSTRING_DELIMITED_ALL_LOW-VALUE.cob: Likewise. + * cobol.dg/group2/UNSTRING_DELIMITED_ALL_SPACE-2.cob: Likewise. + * cobol.dg/group2/UNSTRING_DELIMITED_POINTER.cob: Likewise. + * cobol.dg/group2/UNSTRING_DELIMITER_IN.cob: Likewise. + * cobol.dg/group2/UNSTRING_with_FUNCTION___literal.cob: Likewise. + * cobol.dg/group2/258_Nested_PERFORM.out: Known-good results file. + * cobol.dg/group2/259_PERFORM_VARYING_BY_-0.2.out: Likewise. + * cobol.dg/group2/338_Default_Arithmetic__1_.out: Likewise. + * cobol.dg/group2/access_to_OPTIONAL_LINKAGE_item_not_passed.out: Likewise. + * cobol.dg/group2/ALLOCATE___FREE_basic_default_versions.out: Likewise. + * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: Likewise. + * cobol.dg/group2/Alphanumeric_MOVE_with_truncation.out: Likewise. + * cobol.dg/group2/ANY_LENGTH__1_.out: Likewise. + * cobol.dg/group2/ANY_LENGTH__2_.out: Likewise. + * cobol.dg/group2/ANY_LENGTH__3_.out: Likewise. + * cobol.dg/group2/ANY_LENGTH__5_.out: Likewise. + * cobol.dg/group2/CALL_with_OMITTED_parameter.out: Likewise. + * cobol.dg/group2/Complex_HEX__VALUE_and_MOVE.out: Likewise. + * cobol.dg/group2/Complex_IF.out: Likewise. + * cobol.dg/group2/Concatenation_operator.out: Likewise. + * cobol.dg/group2/CONTINUE_AFTER_1_SECONDS.out: Likewise. + * cobol.dg/group2/CURRENCY_SIGN.out: Likewise. + * cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.out: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__1_.out: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__2_.out: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__3_.out: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__4_.out: Likewise. + * cobol.dg/group2/DECIMAL-POINT_is_COMMA__5_.out: Likewise. + * cobol.dg/group2/EC-SIZE-TRUNCATION_EC-SIZE-OVERFLOW.out: Likewise. + * cobol.dg/group2/EC-SIZE-ZERO-DIVIDE__fixed_and_float.out: Likewise. + * cobol.dg/group2/EXIT_PERFORM_CYCLE.out: Likewise. + * cobol.dg/group2/EXIT_PERFORM.out: Likewise. + * cobol.dg/group2/Fixed_continuation_indicator.out: Likewise. + * cobol.dg/group2/FLOAT-LONG_with_SIZE_ERROR.out: Likewise. + * cobol.dg/group2/FLOAT-SHORT___FLOAT-LONG_w_o_SIZE_ERROR.out: Likewise. + * cobol.dg/group2/FLOAT-SHORT_with_SIZE_ERROR.out: Likewise. + * cobol.dg/group2/Index_and_parenthesized_expression.out: Likewise. + * cobol.dg/group2/LENGTH_OF_omnibus.out: Likewise. + * cobol.dg/group2/LOCAL-STORAGE__3__with_recursive_PROGRAM-ID.out: Likewise. + * cobol.dg/group2/LOCAL-STORAGE__4__with_recursive_PROGRAM-ID_..._USING.out: Likewise. + * cobol.dg/group2/MOVE_integer_literal_to_alphanumeric.out: Likewise. + * cobol.dg/group2/MOVE_to_edited_item__1_.out: Likewise. + * cobol.dg/group2/MOVE_to_edited_item__2_.out: Likewise. + * cobol.dg/group2/MOVE_to_item_with_simple_and_floating_insertion.out: Likewise. + * cobol.dg/group2/MOVE_to_JUSTIFIED_item.out: Likewise. + * cobol.dg/group2/MOVE_Z_literal_.out: Likewise. + * cobol.dg/group2/Multi-target_MOVE_with_subscript_re-evaluation.out: Likewise. + * cobol.dg/group2/Non-numeric_data_in_numeric_items__1_.out: Likewise. + * cobol.dg/group2/Non-numeric_data_in_numeric_items__2_.out: Likewise. + * cobol.dg/group2/OSVS_Arithmetic_Test__2_.out: Likewise. + * cobol.dg/group2/Quick_check_of_PIC_XX_COMP-5.out: Likewise. + * cobol.dg/group2/Quote_marks_in_comment_paragraphs.out: Likewise. + * cobol.dg/group2/Recursive_PERFORM_paragraph.out: Likewise. + * cobol.dg/group2/REDEFINES_values_on_FILLER_and_INITIALIZE.out: Likewise. + * cobol.dg/group2/SORT__table_sort__2_.out: Likewise. + * cobol.dg/group2/SORT__table_sort__3A_.out: Likewise. + * cobol.dg/group2/SORT__table_sort__3B_.out: Likewise. + * cobol.dg/group2/SOURCE_FIXED_FREE_directives.out: Likewise. + * cobol.dg/group2/Static_CALL_with_ON_EXCEPTION__with_-fno-static-call_.out: Likewise. + * cobol.dg/group2/_-static__compilation.out: Likewise. + * cobol.dg/group2/STRING___UNSTRING__NOT__ON_OVERFLOW.out: Likewise. + * cobol.dg/group2/UNSTRING_with_FUNCTION___literal.out: Likewise. + +2025-05-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120211 + * gcc.dg/vect/vect-early-break_135-pr120211.c: New testcase. + * gcc.dg/torture/pr120211-1.c: Likewise. + +2025-05-11 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/120163 + * gfortran.dg/interface_61.f90: New test. + +2025-05-11 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-53.c: New test. + * gcc.target/riscv/arch-54.c: New test. + +2025-05-11 Jiawei <jiawei@iscas.ac.cn> + + * gcc.target/riscv/arch-49.c: New test. + * gcc.target/riscv/arch-50.c: New test. + * gcc.target/riscv/arch-51.c: New test. + * gcc.target/riscv/arch-52.c: New test. + +2025-05-11 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/119909 + * gcc.dg/torture/pr119131-1.c: Add -Wno-psabi. + +2025-05-10 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group1/simple-if.cob: Make explicitly >>SOURCE FREE + +2025-05-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102891 + * gfortran.dg/transfer_array_subref.f90: New test. + +2025-05-10 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/minmax-6.c: xfail test that pmax is used. + * gcc.target/i386/minmax-7.c: xfall test that pmin is used. + +2025-05-10 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120193 + * gfortran.dg/guality/pr120193.f90: New test. + +2025-05-10 Filip Kastl <fkastl@suse.cz> + + * gcc.target/aarch64/pr99988.c: Add -fno-bit-tests. + +2025-05-10 Filip Kastl <fkastl@suse.cz> + + PR tree-optimization/120080 + * gcc.dg/tree-ssa/pr120080.c: New test. + +2025-05-10 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/ior-synthesis-1.c: New test. + * gcc.target/riscv/ior-synthesis-2.c: New test. + * gcc.target/riscv/xor-synthesis-1.c: New test. + * gcc.target/riscv/xor-synthesis-2.c: New test. + * gcc.target/riscv/xor-synthesis-3.c: New test. + +2025-05-10 Anton Blanchard <antonb@tenstorrent.com> + + * gcc.target/riscv/rvv/base/crc-builtin-zvbc.c: New test. + +2025-05-10 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/pr87600.h (REG1, REG2): Test for __PPC__ as well. + * gcc.dg/pr89313.c (REG): Likewise. + +2025-05-10 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/powerpc/block-cmp-8.c: Require powerpc64 + instruction execution support. + +2025-05-10 Jason Merrill <jason@redhat.com> + + PR c++/120204 + * g++.dg/cpp1y/constexpr-recursion3.C: New test. + +2025-05-09 Jason Merrill <jason@redhat.com> + + PR c++/99599 + PR c++/120185 + * g++.dg/cpp2a/concepts-nondep6.C: New test. + +2025-05-09 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/opt106.adb: New test. + * gnat.dg/opt106_pkg1.ads, gnat.dg/opt106_pkg1.adb: New helper. + * gnat.dg/opt106_pkg2.ads, gnat.dg/opt106_pkg2.adb: Likewise. + +2025-05-09 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/120182 + * gcc.dg/torture/pr120182.c: New testcase. + +2025-05-09 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. + +2025-05-09 Christophe Lyon <christophe.lyon@linaro.org> + + * g++.dg/cpp2a/constinit16.C: Require tls. + +2025-05-09 Christophe Lyon <christophe.lyon@linaro.org> + + * g++.dg/cpp2a/decomp2.C: Require tls_runtime. + +2025-05-09 Jiawei <jiawei@iscas.ac.cn> + + * gcc.dg/pr119160.c: Limit backends. + +2025-05-09 Jennifer Schmitz <jschmitz@nvidia.com> + + * gcc.target/aarch64/sve/ptrue_ldr_str.c: New test. + * gcc.target/aarch64/sve/acle/general/attributes_6.c: Adjust + expected outcome. + * gcc.target/aarch64/sve/cost_model_14.c: Adjust expected outcome. + * gcc.target/aarch64/sve/cost_model_4.c: Adjust expected outcome. + * gcc.target/aarch64/sve/cost_model_5.c: Adjust expected outcome. + * gcc.target/aarch64/sve/cost_model_6.c: Adjust expected outcome. + * gcc.target/aarch64/sve/cost_model_7.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_f16.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_f32.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_f64.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_mf8.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_s16.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_s32.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_s64.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_s8.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_u16.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_u32.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_u64.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/varargs_2_u8.c: Adjust expected outcome. + * gcc.target/aarch64/sve/peel_ind_2.c: Adjust expected outcome. + * gcc.target/aarch64/sve/single_1.c: Adjust expected outcome. + * gcc.target/aarch64/sve/single_2.c: Adjust expected outcome. + * gcc.target/aarch64/sve/single_3.c: Adjust expected outcome. + * gcc.target/aarch64/sve/single_4.c: Adjust expected outcome. + +2025-05-09 David Malcolm <dmalcolm@redhat.com> + + PR other/116792 + * gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc: Move to + gcc/diagnostic-format-html.cc. + * gcc.dg/html-output/html-output.exp: New support script. + * gcc.dg/html-output/missing-semicolon.c: New test. + * gcc.dg/html-output/missing-semicolon.py: New test script. + * gcc.dg/plugin/diagnostic-test-xhtml-1.c: Deleted test. + * gcc.dg/plugin/plugin.exp (plugin_test_list): Drop moved plugin + and its deleted test. + * lib/gcc-dg.exp (load_lib): Add load_lib of scanhtml.exp. + * lib/htmltest.py: New support script. + * lib/scanhtml.exp: New support script, based on scansarif.exp. + +2025-05-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-6-u8.c: New test. + +2025-05-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-5-u8.c: New test. + +2025-05-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-4-u8.c: New test. + +2025-05-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Rename VX_BINARY + to VX_BINARY_CASE_0 for underlying case 1. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: Take the + new name for test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: Ditto + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: Ditto + +2025-05-09 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/rvv.exp: Separate test running of + rvv vx_vf. + +2025-05-08 Harald Anlauf <anlauf@gmx.de> + + PR fortran/120179 + * gfortran.dg/do_concurrent_basic.f90: Extend testcase. + +2025-05-08 Jason Merrill <jason@redhat.com> + + PR c++/99599 + * g++.dg/cpp2a/concepts-recursive-sat4.C: Adjust again. + * g++.dg/cpp2a/concepts-nondep5.C: New test. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/120168 + * gcc.dg/tree-ssa/pr31261.c: Use `signed char` instead + of plain char. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120043 + * gcc.dg/torture/pr120043.c: New testcase. + +2025-05-08 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120152 + PR libfortran/120153 + PR libfortran/120158 + * gfortran.dg/pr120152_1.f90: New test. + * gfortran.dg/pr120152_2.f90: New test. + * gfortran.dg/pr120153.f90: New test. + * gfortran.dg/pr120158.f90: New test. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/116938 + * gcc.dg/tree-ssa/phi-opt-40.c: Update to expect ABSU_EXPR. + * gcc.dg/tree-ssa/phi-opt-41.c: Likewise. + +2025-05-08 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/120122 + PR tree-optimization/116939 + * gcc.dg/torture/pr120122-1.c: New test. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR ipa/120146 + * g++.dg/ipa/pr120146.C: New testcase. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120143 + * gcc.dg/vect/vect-early-break_135-pr120143.c: New testcase. + +2025-05-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120089 + * gcc.dg/vect/vect-early-break_134-pr120089.c: New testcase. + +2025-05-07 Jeff Law <jlaw@ventanamicro.com> + + PR target/120137 + PR target/120154 + * gcc.target/riscv/pr120137.c: New test. + * gcc.target/riscv/pr120154.c: New test. + +2025-05-07 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-48.c: New test. + +2025-05-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/110796 + PR target/118446 + * gcc.target/arm/armv8_2-fp16-arith-1.c: Adjust due to no-longer + emitting VCMPE when -ffast-math.. + +2025-05-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/108900 + PR preprocessor/116047 + PR preprocessor/120061 + * gcc.dg/plugin/plugin.exp: Add location-overflow-test-pr116047.c + and location-overflow-test-pr120061.c. + * gcc.dg/plugin/location_overflow_plugin.cc (plugin_init): Don't error + on unknown values, instead just break. Handle 0x4fHHHHHH arguments + differently. + * gcc.dg/plugin/location-overflow-test-pr116047.c: New test. + * gcc.dg/plugin/location-overflow-test-pr116047-1.h: New test. + * gcc.dg/plugin/location-overflow-test-pr116047-2.h: New test. + * gcc.dg/plugin/location-overflow-test-pr120061.c: New test. + * gcc.dg/plugin/location-overflow-test-pr120061-1.h: New test. + * gcc.dg/plugin/location-overflow-test-pr120061-2.h: New test. + +2025-05-07 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/pr119919.c: Add -mtune=znver1 + +2025-05-07 Jennifer Schmitz <jschmitz@nvidia.com> + + PR target/117978 + * gcc.target/aarch64/sve/acle/general/whilelt_5.c: Adjust expected + outcome. + * gcc.target/aarch64/sve/ldst_ptrue_pat_128_to_neon.c: New test. + * gcc.target/aarch64/sve/while_7.c: Adjust expected outcome. + * gcc.target/aarch64/sve/while_9.c: Adjust expected outcome. + +2025-05-07 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/cstoreti-1.c: New test. + * gcc.target/s390/vector/cstoreti-2.c: New test. + +2025-05-07 H.J. Lu <hjl.tools@gmail.com> + + PR target/120036 + * g++.target/i386/pr120036.C: New test. + * gcc.target/i386/pr117839-3a.c: Likewise. + * gcc.target/i386/pr117839-3b.c: Likewise. + +2025-05-07 Paul Thomas <pault@gcc.gnu.org> + and Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/119948 + * gfortran.dg/pr119948.f90: Update to incorporate failing test, + where module procedure is the result. Test submodule cases. + +2025-05-07 Jeff Law <jlaw@ventanamicro.com> + + * g++.target/riscv/redundant-andi.C: New test. + +2025-05-06 Dongyan Chen <chendongyan@isrc.iscas.ac.cn> + + * gcc.target/riscv/arch-47.c: New test. + +2025-05-06 Mingzhu Yan <yanmingzhu@iscas.ac.cn> + + * gcc.target/riscv/arch-45.c: New test. + * gcc.target/riscv/arch-46.c: New test. + +2025-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/120049 + * gfortran.dg/pr120049_a.f90: New test. + * gfortran.dg/pr120049_b.f90: New test. + +2025-05-06 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119928 + * gfortran.dg/interface_60.f90: New test. + +2025-05-06 Martin Jambor <mjambor@suse.cz> + + PR ipa/119852 + * gcc.dg/ipa/pr119852.c: New test. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/117988 + * sarif-replay.dg/2.1.0-invalid/3.1-not-an-object.sarif: Add + expected logical location. + * sarif-replay.dg/2.1.0-invalid/3.11.11-missing-arguments-for-placeholders.sarif: + Likewise. + * sarif-replay.dg/2.1.0-invalid/3.11.11-not-enough-arguments-for-placeholders.sarif: + Likewise. + * sarif-replay.dg/2.1.0-invalid/3.11.5-unescaped-braces.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.13.2-no-version.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.13.2-version-not-a-string.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.13.4-bad-runs.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.13.4-no-runs.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.13.4-non-object-in-runs.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.27.10-bad-level.sarif: Likewise. + * sarif-replay.dg/2.1.0-invalid/3.33.3-index-out-of-range.sarif: Likewise. + * sarif-replay.dg/2.1.0-unhandled/3.27.10-none-level.sarif: Likewise. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * libgdiagnostics.dg/test-nested-logical-locations-json-c.py: New test. + * libgdiagnostics.dg/test-nested-logical-locations-json.c: New test. + * sarif-replay.dg/2.1.0-valid/3.33.7-json-example.sarif: New test. + * sarif-replay.dg/2.1.0-valid/3.33.7-xml-example.sarif: New test. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + PR other/116176 + * g++.dg/sarif-output/logical-locations-1.C: New test. + * g++.dg/sarif-output/logical-locations-1.py: New test script. + * g++.dg/sarif-output/logical-locations-2.C: New test. + * g++.dg/sarif-output/logical-locations-2.py: New test script. + * g++.dg/sarif-output/logical-locations-3.C: New test. + * g++.dg/sarif-output/logical-locations-3.py: New test script. + * g++.dg/sarif-output/sarif-output.exp: New script, adapted + from gcc.dg/sarif-output/sarif-output.exp. + * libgdiagnostics.dg/test-logical-location-c.py: Update for using + theRun.logicalLocations. + * libgdiagnostics.dg/test-warning-with-path-c.py: Likewise. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/diagnostic_plugin_test_paths.cc: Update for + changes to simple_diagnostic_path. + +2025-05-06 David Malcolm <dmalcolm@redhat.com> + + * libgdiagnostics.dg/test-logical-location.c: Include + <string.h>. + (main): Verify that the accessors work. + * libgdiagnostics.dg/test-logical-location.cc: New test. + +2025-05-06 Shreya Munnangi <smunnangi1@ventanamicro.com> + + PR middle-end/114512 + * gcc.target/riscv/pr114512.c: New test. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-3-u8.c: New test. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-2-u8.c: New test. + +2025-05-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/rvv.exp: Add new folder vx_vf for all + vec_dup + vv to vx testcases. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_run.h: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-1-u8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vadd-run-1-u8.c: New test. + +2025-05-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/1157777 + * gcc.dg/vect/bb-slp-pr115777.c: New testcase. + +2025-05-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/120074 + * gcc.dg/pr120074.c: New test. + +2025-05-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120031 + * gcc.target/i386/pr120031.c: New testcase. + +2025-05-05 Jeff Law <jlaw@ventanamicro.com> + + PR target/119971 + * gcc.target/riscv/pr119971.c: New test. + * gcc.target/riscv/zbb-rol-ror-03.c: Adjust test slightly. + +2025-05-05 Uros Bizjak <ubizjak@gmail.com> + Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + PR target/120019 + * gcc.target/i386/pr111657-1.c (dg-do): Change to "assemble". + (dg-options): Remove -masm=att and add -save-temps. + (dg-final): Update scan-assembler and scan-assembler-not strings. + +2025-05-05 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/120117 + * gm2/pim/pass/highbit.mod: New test. + * gm2/pim/pass/highbit2.mod: New test. + +2025-05-05 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/120048 + * gcc.dg/pr120048.c: New. + +2025-05-05 Kito Cheng <kito.cheng@sifive.com> + + PR target/120054 + * gcc.target/riscv/predef-19.c: Adjust testcase. + +2025-05-05 John David Anglin <danglin@gcc.gnu.org> + + PR testsuite/120085 + * gcc.dg/lto/modref-2_0.c: Link test with libm. + +2025-05-05 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/specs/finalizable1.ads: New test. + +2025-05-05 Thomas Schwinge <tschwinge@baylibre.com> + + PR middle-end/112877 + * gcc.dg/vect/vect-simd-clone-16c.c: Fix target selector syntax. + * gcc.dg/vect/vect-simd-clone-16d.c: Likewise. + * gcc.dg/vect/vect-simd-clone-17c.c: Likewise. + * gcc.dg/vect/vect-simd-clone-17d.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18c.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18d.c: Likewise. + +2025-05-05 Simon Martin <simon@nasilyan.com> + + PR c++/118163 + PR c++/118392 + * g++.dg/diagnostic/incomplete-type-2.C: New test. + * g++.dg/diagnostic/incomplete-type-2a.C: New test. + * g++.dg/diagnostic/inhibit-warn-3.C: New test. + +2025-05-05 Richard Biener <rguenther@suse.de> + + PR testsuite/120084 + * gcc.dg/lto/pr60779_0.c: Require linker-plugin. + +2025-05-04 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119986 + * gfortran.dg/actual_array_subref.f90: New test. + +2025-05-04 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/vsetvl/avl_prop-2.c: Disable jump threading + and adjust number of expected vsetvls as needed. + * gcc.target/riscv/rvv/vsetvl/avl_single-56.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-67.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-68.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-71.c: Likewise. + +2025-05-04 Jin Ma <jinma@linux.alibaba.com> + Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/riscv/modifier-H-error-1.c: New test. + * gcc.target/riscv/modifier-H-error-2.c: New test. + * gcc.target/riscv/modifier-H.c: New test. + +2025-05-04 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/xtheadfmemidx-xtheadfmv-medany.c: Adjust expected + output. + * gcc.target/riscv/xtheadfmemidx-zfa-medany.c: Likewise. + * gcc.target/riscv/xtheadfmv-fmv.c: Skip for -Os and -Oz. + * gcc.target/riscv/zfa-fmovh-fmovp.c: Use sifive-p400 tuning. + +2025-05-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-49.c: Adjust + the asm dump check times. + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-50.c: Ditto. + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-52.c: Ditto. + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-74.c: Ditto. + * gcc.target/riscv/rvv/base/float-point-dynamic-frm-75.c: Ditto. + +2025-05-03 Jason Merrill <jason@redhat.com> + + PR c++/85944 + * g++.dg/cpp0x/constexpr-temp3.C: New test. + +2025-05-02 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/120059 + * gcc.dg/torture/pr120059-1.c: New test. + +2025-05-02 Jakub Jelinek <jakub@redhat.com> + + PR c/120057 + * gcc.dg/cpp/embed-18.c: New test. + * gcc.dg/pr120057-1.c: New test. + * gcc.dg/pr120057-2.c: New test. + +2025-05-02 Jakub Jelinek <jakub@redhat.com> + Andrew MacLeod <amacleod@redhat.com> + + PR c/117023 + * gcc.dg/tree-ssa/pr78154-2.c: New test. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/115207 + * g++.dg/cpp1z/class-deduction118.C: New test. + +2025-05-02 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp1y/constexpr-89285.C: Always diagnose reinterpret_cast. + * g++.dg/cpp23/constexpr-nonlit19.C: Remove ~A body. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/120012 + * g++.dg/abi/base-defaulted1.C: New test. + * g++.dg/abi/base-defaulted1a.C: New test. + +2025-05-02 Jason Merrill <jason@redhat.com> + + PR c++/60336 + * g++.dg/abi/pr60336-8a.C: New test. + +2025-05-02 Filip Kastl <fkastl@suse.cz> + + * gcc.dg/tree-ssa/switch-5.c: New test. + * gcc.dg/tree-ssa/switch-6.c: New test. + +2025-05-02 Florian Weimer <fweimer@redhat.com> + + * gcc.dg/Wdeprecated-non-prototype-6.c: New test. + +2025-05-02 Jennifer Schmitz <jschmitz@nvidia.com> + + * gcc.target/aarch64/sve/extract_last_128.c: New test. + * gcc.target/aarch64/sve/extract_1.c: Adjust expected outcome. + * gcc.target/aarch64/sve/extract_2.c: Likewise. + * gcc.target/aarch64/sve/extract_3.c: Likewise. + * gcc.target/aarch64/sve/extract_4.c: Likewise. + +2025-05-01 Christopher Bazley <chris.bazley@arm.com> + + PR c/119317 + * gcc.dg/c2y-named-loops-8.c: New test. + +2025-05-01 Florian Weimer <fweimer@redhat.com> + + * gcc.dg/Wdeprecated-non-prototype-5.c: New test. + +2025-05-01 Patrick Palka <ppalka@redhat.com> + + * g++.dg/cpp23/constexpr-nonlit19.C: New test. + +2025-05-01 Patrick Palka <ppalka@redhat.com> + + PR c++/119034 + PR c++/68942 + * g++.dg/template/koenig13.C: New test. + +2025-05-01 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/119948 + * gfortran.dg/pr119948.f90: New test. + +2025-05-01 Ayan Shafqat <ayan.x.shafqat@gmail.com> + + * gcc.target/aarch64/acle/acle_sqrt.c: New test. + +2025-05-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120003 + * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust aarch64 expected + thread2 number of threads. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/120023 + * g++.dg/modules/dguide-7_a.C: New test. + * g++.dg/modules/dguide-7_b.C: New test. + * g++.dg/modules/dguide-7_c.C: New test. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119938 + * g++.dg/modules/tpl-nttp-2_a.H: New test. + * g++.dg/modules/tpl-nttp-2_b.C: New test. + +2025-04-30 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119551 + PR c++/119996 + * g++.dg/modules/internal-13.C: New test. + +2025-04-30 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/107017 + * c-c++-common/analyzer/sprintf-3.c: New test, covering use of + sprintf with specific format strings. Doesn't yet find problems + as the analyzer doesn't yet understand the format strings. + +2025-04-30 David Malcolm <dmalcolm@redhat.com> + + * c-c++-common/analyzer/data-model-path-1.c: Check for + "using NULL here" message. + * c-c++-common/analyzer/null-deref-pr108251-smp_fetch_ssl_fc_has_early.c: + Likewise. Check for "return of NULL" message. + * c-c++-common/analyzer/null-deref-pr108400-SoftEtherVPN-WebUi.c: + Likewise. + * gcc.dg/analyzer/data-model-5.c: Likewise. + * gcc.dg/analyzer/data-model-5b.c: Likewise. + * gcc.dg/analyzer/data-model-5c.c: Likewise. + * gcc.dg/analyzer/torture/pr93647.c: Likewise. + +2025-04-30 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pr115258.c: Add -mcmodel=small. + +2025-04-30 Patrick Palka <ppalka@redhat.com> + + PR c++/119981 + PR c++/119378 + * g++.dg/cpp2a/lambda-targ15.C: New test. + +2025-04-30 Richard Biener <rguenther@suse.de> + + Revert: + 2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119960 + * gcc.dg/vect/bb-slp-pr119960-1.c: New testcase. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR ipa/120006 + * gcc.dg/torture/pr120006.c: New testcase. + +2025-04-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/120003 + * gcc.dg/tree-ssa/ssa-thread-23.c: New testcase. + * gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust. + +2025-04-30 Georg-Johann Lay <avr@gjlay.de> + + Backported from master: + 2025-04-30 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/torture/pr119989.h: New file. + * gcc.target/avr/torture/pr119989-memx-1.c: New test. + * gcc.target/avr/torture/pr119989-memx-2.c: New test. + * gcc.target/avr/torture/pr119989-memx-3.c: New test. + * gcc.target/avr/torture/pr119989-memx-4.c: New test. + * gcc.target/avr/torture/pr119989-flashx-1.c: New test. + * gcc.target/avr/torture/pr119989-flashx-2.c: New test. + * gcc.target/avr/torture/pr119989-flashx-3.c: New test. + * gcc.target/avr/torture/pr119989-flashx-4.c: New test. + +2025-04-30 Kito Cheng <kito.cheng@sifive.com> + + PR target/119832 + * g++.target/riscv/pr119832.C: New test. + +2025-04-30 Jerry Zhang Jian <jerry.zhangjian@sifive.com> + + * gcc.target/riscv/predef-19.c: set the march to rv64im_zve32x + instead of rv64gc_zve32x to avoid Zicsr implied by g. Extra m is + added to avoid current 'V' extension requires 'M' extension + +2025-04-30 Jennifer Schmitz <jschmitz@nvidia.com> + + * gcc.target/aarch64/sve/ldst_ptrue_128_to_neon.c: New test. + * gcc.target/aarch64/sve/cond_arith_6.c: Adjust expected outcome. + * gcc.target/aarch64/sve/pcs/return_4_128.c: Likewise. + * gcc.target/aarch64/sve/pcs/return_5_128.c: Likewise. + * gcc.target/aarch64/sve/pcs/struct_3_128.c: Likewise. + +2025-04-30 yulong <shiyulong@iscas.ac.cn> + + * gcc.target/riscv/rvv/xsfvector/sf_vc_f.c: New test. + * gcc.target/riscv/rvv/xsfvector/sf_vc_i.c: New test. + * gcc.target/riscv/rvv/xsfvector/sf_vc_v.c: New test. + * gcc.target/riscv/rvv/xsfvector/sf_vc_x.c: New test. + +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 + * c-c++-common/analyzer/hard-reg-1.c: New test. + * g++.dg/analyzer/nrvo-1.C: New test. + * g++.dg/analyzer/nrvo-2.C: New test. + * g++.dg/analyzer/nrvo-pr111536-1.C: New test. + * g++.dg/analyzer/nrvo-pr111536-1b.C: New test. + * g++.dg/analyzer/nrvo-pr111536-2.C: New test. + * g++.dg/analyzer/nrvo-pr111536-2b.C: New test. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/109366 + * g++.dg/analyzer/unique_ptr-1.C: New test. + * g++.dg/analyzer/unique_ptr-2.C: New test. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/97111 + * c-c++-common/analyzer/analyzer-verbosity-2a.c: Add + -fno-exceptions. + * c-c++-common/analyzer/analyzer-verbosity-3a.c: Likewise. + * c-c++-common/analyzer/attr-const-2.c: Add + __attribute__((nothrow)). + * c-c++-common/analyzer/attr-malloc-4.c: Likewise. + * c-c++-common/analyzer/attr-malloc-5.c: Likewise. + * c-c++-common/analyzer/attr-malloc-6.c: Add -fno-exceptions. + * c-c++-common/analyzer/attr-malloc-CVE-2019-19078-usb-leak.c: + Likewise. + * c-c++-common/analyzer/attr-malloc-exception.c: New test. + * c-c++-common/analyzer/call-summaries-pr107158-2.c: Add + -fno-exceptions. + * c-c++-common/analyzer/call-summaries-pr107158.c: Likewise. + * c-c++-common/analyzer/capacity-2.c: Likewise. + * c-c++-common/analyzer/coreutils-sum-pr108666.c: Likewise. + * c-c++-common/analyzer/data-model-22.c: Likewise. + * c-c++-common/analyzer/data-model-5d.c: Likewise. + * c-c++-common/analyzer/deref-before-check-pr108455-git-pack-revindex.c: + Likewise. + * c-c++-common/analyzer/deref-before-check-pr108475-haproxy-tcpcheck.c: + Likewise. + * c-c++-common/analyzer/edges-2.c: Likewise. + * c-c++-common/analyzer/fd-2.c: Likewise. + * c-c++-common/analyzer/fd-3.c: Likewise. + * c-c++-common/analyzer/fd-meaning.c: Likewise. + * c-c++-common/analyzer/file-1.c: Likewise. + * c-c++-common/analyzer/file-3.c: Likewise. + * c-c++-common/analyzer/file-meaning-1.c: Likewise. + * c-c++-common/analyzer/infinite-recursion.c: Likewise. + * c-c++-common/analyzer/leak-3.c: Likewise. + * c-c++-common/analyzer/malloc-dedupe-1.c: Likewise. + * c-c++-common/analyzer/malloc-in-loop.c: Likewise. + * c-c++-common/analyzer/malloc-many-paths-3.c: Likewise. + * c-c++-common/analyzer/malloc-paths-5.c: Likewise. + * c-c++-common/analyzer/malloc-paths-7.c: Likewise. + * c-c++-common/analyzer/malloc-paths-8.c: Likewise. + * c-c++-common/analyzer/malloc-vs-local-1a.c: Likewise. + * c-c++-common/analyzer/malloc-vs-local-2.c: Likewise. + * c-c++-common/analyzer/malloc-vs-local-3.c: Likewise. + * c-c++-common/analyzer/paths-7.c: Likewise. + * c-c++-common/analyzer/pr110830.c: Likewise. + * c-c++-common/analyzer/pr93032-mztools-simplified.c: Likewise. + * c-c++-common/analyzer/pr93355-localealias-feasibility-3.c: + Likewise. + * c-c++-common/analyzer/pr93355-localealias-simplified.c: + Likewise. + * c-c++-common/analyzer/pr96650-1-trans.c: Likewise. + * c-c++-common/analyzer/pr97072.c: Add __attribute__((nothrow)). + * c-c++-common/analyzer/pr98575-1.c: Likewise. + * c-c++-common/analyzer/pr99716-1.c: Add -fno-exceptions. + * c-c++-common/analyzer/pr99716-2.c: Likewise. + * c-c++-common/analyzer/pr99716-3.c: Likewise. + * c-c++-common/analyzer/pragma-2.c: Likewise. + * c-c++-common/analyzer/rhbz1878600.c: Likewise. + * c-c++-common/analyzer/strndup-1.c: Likewise. + * c-c++-common/analyzer/write-to-string-literal-4-disabled.c: + Likewise. + * c-c++-common/analyzer/write-to-string-literal-4.c: Likewise. + * c-c++-common/analyzer/write-to-string-literal-5.c: Likewise. + * c-c++-common/analyzer/zlib-5.c: Likewise. + * g++.dg/analyzer/exception-could-throw-1.C: New test. + * g++.dg/analyzer/exception-could-throw-2.C: New test. + * g++.dg/analyzer/exception-dynamic-spec.C: New test. + * g++.dg/analyzer/exception-leak-1.C: New test. + * g++.dg/analyzer/exception-leak-2.C: New test. + * g++.dg/analyzer/exception-leak-3.C: New test. + * g++.dg/analyzer/exception-leak-4.C: New test. + * g++.dg/analyzer/exception-leak-5.C: New test. + * g++.dg/analyzer/exception-leak-6.C: New test. + * g++.dg/analyzer/exception-nothrow.C: New test. + * g++.dg/analyzer/exception-path-1.C: New test. + * g++.dg/analyzer/exception-path-catch-all-1.C: New test. + * g++.dg/analyzer/exception-path-catch-all-2.C: New test. + * g++.dg/analyzer/exception-path-unwind-multiple-2.C: New test. + * g++.dg/analyzer/exception-path-unwind-multiple.C: New test. + * g++.dg/analyzer/exception-path-unwind-single.C: New test. + * g++.dg/analyzer/exception-path-with-cleanups.C: New test. + * g++.dg/analyzer/exception-rethrow-1.C: New test. + * g++.dg/analyzer/exception-rethrow-2.C: New test. + * g++.dg/analyzer/exception-stack-1.C: New test. + * g++.dg/analyzer/exception-stack-2.C: New test. + * g++.dg/analyzer/exception-subclass-1.C: New test. + * g++.dg/analyzer/exception-subclass-2.C: New test. + * g++.dg/analyzer/exception-value-1.C: New test. + * g++.dg/analyzer/exception-value-2.C: New test. + * g++.dg/analyzer/fno-exception.C: New test. + * g++.dg/analyzer/pr94028.C: Drop xfail. + * g++.dg/analyzer/std-unexpected.C: New test. + * g++.dg/coroutines/pr105287.C: Drop dg-excess-errors. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Drop include of + "make-unique.h". Replace uses of ::make_unique with + std::make_unique. + * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + * gcc.dg/plugin/diagnostic_group_plugin.cc: Likewise. + * gcc.dg/plugin/diagnostic_plugin_xhtml_format.cc: Likewise. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_gil_plugin.cc: Convert gcall * to gcall & + where we know the pointer must be non-null. + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Convert + enum poison_kind to "enum class". + +2025-04-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Update for renaming + of analyzer/analyzer.h to analyzer/common.h. + * gcc.dg/plugin/analyzer_gil_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/95801 + * gcc.dg/tree-ssa/pr95801.c: New. + +2025-04-28 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/119712 + * gcc.dg/pr119712.c: New. + * gcc.dg/pr83072-2.c: Adjust. + * gcc.dg/tree-ssa/phi-opt-value-5.c: Adjust. + * gcc.dg/tree-ssa/vrp122.c: Adjust + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/67797 + * gcc.dg/tree-ssa/tailcall-14.c: New test. + * gcc.dg/tree-ssa/tailcall-15.c: New test. + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR c/119432 + * gcc.dg/gimplefe-57.c: New test. + +2025-04-28 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/100038 + * g++.dg/tree-ssa/pr100038.C: New test. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove now passing test from exclusion + list. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove passing test from exclusion list. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/multiple_bindings1.rs: Add missing lang items. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove test from exclusion list. + * rust/compile/use_1.rs: Change expected output and remove test from + nr1. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/generics9.rs: Change expected error message. + * rust/compile/nr2/exclude: Remove test from exclusion list. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove passing test from exclusion list. + +2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entry. + +2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/derive-debug1.rs: Adjust a path. + * rust/compile/nr2/exclude: Remove derive-debug1.rs. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 is missing error for this + * rust/compile/issue-3649.rs: New test. + +2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-3568.rs: Adjust expected errors. + * rust/compile/name_resolution9.rs: Likewise. + * rust/compile/self-path2.rs: Likewise. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nonexistent-field.rs: fix bad error message + * rust/compile/issue-3581-1.rs: New test. + * rust/compile/issue-3581-2.rs: New test. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 does not error on the T it should require Self::T + * rust/compile/issue-3652.rs: New test. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/macros/mbe/macro-issue2983_2984.rs: cleanup error diagnotics + * rust/compile/struct_init1.rs: likewise + * rust/compile/issue-3628.rs: New test. + +2025-04-28 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entry. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3662.rs: New test. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3711.rs: New test. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/black_box.rs: New test. + +2025-04-28 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/execute/black_box.rs: New test. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-402.rs: New test. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3664.rs: New test. + +2025-04-28 Zhi Heng <yapzhhg@gmail.com> + + * rust/compile/issue-3530-1.rs: New file. + * rust/compile/issue-3530-2.rs: New file. + +2025-04-28 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3612.rs: New test. + +2025-04-28 H.J. Lu <hjl.tools@gmail.com> + Uros Bizjak <ubizjak@gmail.com> + + PR target/109780 + PR target/109093 + * g++.target/i386/pr109780-1.C: New test. + * gcc.target/i386/pr109093-1.c: Likewise. + * gcc.target/i386/pr109780-1.c: Likewise. + * gcc.target/i386/pr109780-2.c: Likewise. + * gcc.target/i386/pr109780-3.c: Likewise. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR ipa/119973 + * gcc.dg/torture/pr119973.c: New testcase. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119103 + * gcc.target/i386/pr119103.c: New testcase. + +2025-04-28 Richard Biener <rguenther@suse.de> + + PR middle-end/60779 + * gcc.dg/lto/pr60779_0.c: New testcase. + * gcc.dg/lto/pr60779_1.c: Likewise. + +2025-04-28 Lewis Hyatt <lhyatt@gmail.com> + + PR c/118838 + * c-c++-common/cpp/pragma-diagnostic-loc-2.c: New test. + * g++.dg/gomp/macro-4.C: Adjust expected output. + * gcc.dg/gomp/macro-4.c: Likewise. + * gcc.dg/cpp/Wunknown-pragmas-1.c: Likewise. + +2025-04-28 Jonathan Yong <10walls@gmail.com> + + * gcc.dg/graphite/id-15.c: Use __SIZE_TYPE__ instead of + unsigned long. + * gcc.dg/plugin/infoleak-net-ethtool-ioctl.c: ditto. + +2025-04-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119939 + * g++.dg/modules/concept-11_a.H: New test. + * g++.dg/modules/concept-11_b.C: New test. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gcc.dg/tree-ssa/ssa-fre-4.c: Enable for all targets and adjust + scan match. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gcc.dg/tree-ssa/scev-cast.c: Enable for all targets and adjust + scan match. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gcc.dg/vect/vect-simd-clone-16c.c: Expect in-branch clones for + x86. + * gcc.dg/vect/vect-simd-clone-16d.c: Likewise. + * gcc.dg/vect/vect-simd-clone-17c.c: Likewise. + * gcc.dg/vect/vect-simd-clone-17d.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18c.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18d.c: Likewise. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gcc.target/i386/apx-ndd.c: Adjusted. + +2025-04-27 H.J. Lu <hjl.tools@gmail.com> + + PR middle-end/112877 + * gfortran.dg/pr112877-1.f90: New test. + +2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> + + * g++.dg/ipa/pr83549.C: Require effective target + variadic_mi_thunk. + * g++.dg/ipa/pr83667.C: Ditto. + * g++.dg/torture/pr81812.C: Ditto. + * g++.old-deja/g++.jason/thunk3.C: Ditto. + * lib/target-supports.exp + (check_effective_target_variadic_mi_thunk): New function. + +2025-04-25 Dimitar Dimitrov <dimitar@dinux.eu> + + * c-c++-common/musttail14.c: Disable test if effective target + using_sjlj_exceptions. + * c-c++-common/musttail22.c: Ditto. + * g++.dg/musttail8.C: Ditto. + * g++.dg/musttail9.C: Ditto. + * g++.dg/opt/musttail3.C: Ditto. + * g++.dg/opt/musttail4.C: Ditto. + * g++.dg/opt/musttail5.C: Ditto. + * g++.dg/opt/pr119613.C: Ditto. + * lib/target-supports.exp + (check_effective_target_using_sjlj_exceptions): New check. + +2025-04-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/102900 + * gfortran.dg/proc_ptr_52.f90: Add -fcheck=pointer to options. + * gfortran.dg/proc_ptr_57.f90: New test. + +2025-04-25 Jason Merrill <jason@redhat.com> + + PR c++/119764 + PR c++/87185 + * g++.dg/cpp0x/lambda/lambda-noexcept1.C: New test. + +2025-04-25 Jason Merrill <jason@redhat.com> + + * g++.dg/abi/macro0.C: Update for -fabi-version=21. + +2025-04-25 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group2/88_level_with_FALSE_IS_clause.cob: New testcase. + * cobol.dg/group2/88_level_with_FILLER.cob: Likewise. + * cobol.dg/group2/88_level_with_THRU.cob: Likewise. + * cobol.dg/group2/ADD_CORRESPONDING.cob: Likewise. + * cobol.dg/group2/ADD_SUBTRACT_CORR_mixed_fix___float.cob: Likewise. + * cobol.dg/group2/ALPHABETIC-LOWER_test.cob: Likewise. + * cobol.dg/group2/ALPHABETIC_test.cob: Likewise. + * cobol.dg/group2/ALPHABETIC-UPPER_test.cob: Likewise. + * cobol.dg/group2/BLANK_WHEN_ZERO.cob: Likewise. + * cobol.dg/group2/Check_for_equality_of_COMP-1___COMP-2.cob: Likewise. + * cobol.dg/group2/Compare_COMP-2_with_floating-point_literal.cob: Likewise. + * cobol.dg/group2/Contained_program_visibility__3_.cob: Likewise. + * cobol.dg/group2/Contained_program_visibility__4_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__1_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__2_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__3_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__4_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__5_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__6_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__7_.cob: Likewise. + * cobol.dg/group2/Context_sensitive_words__8_.cob: Likewise. + * cobol.dg/group2/debugging_lines__not_active_.cob: Likewise. + * cobol.dg/group2/debugging_lines__WITH_DEBUGGING_MODE_.cob: Likewise. + * cobol.dg/group2/DEBUG_Line.cob: Likewise. + * cobol.dg/group2/DISPLAY_and_assignment_NumericDisplay.cob: Likewise. + * cobol.dg/group2/DISPLAY_data_items_with_MOVE_statement.cob: Likewise. + * cobol.dg/group2/DISPLAY_data_items_with_VALUE_clause.cob: Likewise. + * cobol.dg/group2/DISPLAY_literals__DECIMAL-POINT_is_COMMA.cob: Likewise. + * cobol.dg/group2/GLOBAL_at_lower_level.cob: Likewise. + * cobol.dg/group2/GLOBAL_at_same_level.cob: Likewise. + * cobol.dg/group2/GLOBAL_FD__1_.cob: Likewise. + * cobol.dg/group2/GLOBAL_FD__2_.cob: Likewise. + * cobol.dg/group2/GLOBAL_FD__3_.cob: Likewise. + * cobol.dg/group2/GLOBAL_FD__4_.cob: Likewise. + * cobol.dg/group2/Hexadecimal_literal.cob: Likewise. + * cobol.dg/group2/integer_arithmetic_on_floating-point_var.cob: Likewise. + * cobol.dg/group2/MULTIPLY_BY_literal_in_INITIAL_program.cob: Likewise. + * cobol.dg/group2/Named_conditionals_-_fixed__float__and_alphabetic.cob: Likewise. + * cobol.dg/group2/Numeric_operations__1_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__2_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__3_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__4_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__5_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__7_.cob: Likewise. + * cobol.dg/group2/Numeric_operations__8_.cob: Likewise. + * cobol.dg/group2/ROUNDED_AWAY-FROM-ZERO.cob: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-AWAY-FROM-ZERO.cob: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-EVEN.cob: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-TOWARD-ZERO.cob: Likewise. + * cobol.dg/group2/ROUNDED_TOWARD-GREATER.cob: Likewise. + * cobol.dg/group2/ROUNDED_TOWARD-LESSER.cob: Likewise. + * cobol.dg/group2/ROUNDED_TRUNCATION.cob: Likewise. + * cobol.dg/group2/ROUNDING_omnibus_Floating-Point_from_COMPUTE.cob: Likewise. + * cobol.dg/group2/ROUNDING_omnibus_NumericDisplay_from_COMPUTE.cob: Likewise. + * cobol.dg/group2/Separate_sign_positions__1_.cob: Likewise. + * cobol.dg/group2/Separate_sign_positions__2_.cob: Likewise. + * cobol.dg/group2/Simple_p-scaling.cob: Likewise. + * cobol.dg/group2/Simple_TYPEDEF.cob: Likewise. + * cobol.dg/group2/ADD_SUBTRACT_CORR_mixed_fix___float.out: New known-good result. + * cobol.dg/group2/BLANK_WHEN_ZERO.out: Likewise. + * cobol.dg/group2/Contained_program_visibility__4_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__1_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__2_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__3_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__4_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__5_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__6_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__7_.out: Likewise. + * cobol.dg/group2/Context_sensitive_words__8_.out: Likewise. + * cobol.dg/group2/debugging_lines__not_active_.out: Likewise. + * cobol.dg/group2/debugging_lines__WITH_DEBUGGING_MODE_.out: Likewise. + * cobol.dg/group2/DEBUG_Line.out: Likewise. + * cobol.dg/group2/DISPLAY_and_assignment_NumericDisplay.out: Likewise. + * cobol.dg/group2/DISPLAY_data_items_with_MOVE_statement.out: Likewise. + * cobol.dg/group2/DISPLAY_data_items_with_VALUE_clause.out: Likewise. + * cobol.dg/group2/DISPLAY_literals__DECIMAL-POINT_is_COMMA.out: Likewise. + * cobol.dg/group2/GLOBAL_at_lower_level.out: Likewise. + * cobol.dg/group2/GLOBAL_at_same_level.out: Likewise. + * cobol.dg/group2/Hexadecimal_literal.out: Likewise. + * cobol.dg/group2/Named_conditionals_-_fixed__float__and_alphabetic.out: Likewise. + * cobol.dg/group2/ROUNDED_AWAY-FROM-ZERO.out: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-AWAY-FROM-ZERO.out: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-EVEN.out: Likewise. + * cobol.dg/group2/ROUNDED_NEAREST-TOWARD-ZERO.out: Likewise. + * cobol.dg/group2/ROUNDED_TOWARD-GREATER.out: Likewise. + * cobol.dg/group2/ROUNDED_TOWARD-LESSER.out: Likewise. + * cobol.dg/group2/ROUNDED_TRUNCATION.out: Likewise. + * cobol.dg/group2/ROUNDING_omnibus_Floating-Point_from_COMPUTE.out: Likewise. + * cobol.dg/group2/ROUNDING_omnibus_NumericDisplay_from_COMPUTE.out: Likewise. + * cobol.dg/group2/Separate_sign_positions__1_.out: Likewise. + * cobol.dg/group2/Separate_sign_positions__2_.out: Likewise. + * cobol.dg/group2/Simple_p-scaling.out: Likewise. + +2025-04-25 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.dg/pr116479.c: New test. + +2025-04-25 Jakub Jelinek <jakub@redhat.com> + + PR target/119873 + * gcc.target/s390/pr119873-5.c: New test. + +2025-04-25 Jason Merrill <jason@redhat.com> + + * g++.dg/template/recurse5.C: New test. + +2025-04-25 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> + + PR target/119122 + * gcc.target/riscv/arch-25.c: Fix dg-error expectation. + * gcc.target/riscv/attribute-c-1.c: New test. + * gcc.target/riscv/attribute-c-2.c: New test. + * gcc.target/riscv/attribute-c-3.c: New test. + * gcc.target/riscv/attribute-c-4.c: New test. + * gcc.target/riscv/attribute-c-5.c: New test. + * gcc.target/riscv/attribute-c-6.c: New test. + * gcc.target/riscv/attribute-c-7.c: New test. + * gcc.target/riscv/attribute-c-8.c: New test. + * gcc.target/riscv/attribute-zce-1.c: Update Zce tests. + * gcc.target/riscv/attribute-zce-2.c: Likewise. + * gcc.target/riscv/attribute-zce-3.c: Likewise + * gcc.target/riscv/attribute-zce-4.c: Likewise. + +2025-04-24 Jakub Jelinek <jakub@redhat.com> + Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/119873 + * gcc.target/s390/pr119873-1.c: New test. + * gcc.target/s390/pr119873-2.c: New test. + * gcc.target/s390/pr119873-3.c: New test. + * gcc.target/s390/pr119873-4.c: New test. + +2025-04-24 Robert Dubner <rdubner@symas.com> + + * cobol.dg/group1/declarative_1.cob: Adjust for repaired exception logic. + +2025-04-24 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/pr119919.c: New test. + +2025-04-24 Richard Sandiford <richard.sandiford@arm.com> + + PR target/119610 + * g++.dg/torture/pr119610.C: New test. + * g++.target/aarch64/sve/pr119610-sve.C: Likewise. + +2025-04-24 Jakub Jelinek <jakub@redhat.com> + + PR c++/110343 + * gcc.dg/raw-string-1.c: New test. + +2025-04-24 Kyrylo Tkachov <ktkachov@nvidia.com> + + * gcc.dg/completion-2.c: Remove check for default. + +2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119915 + * gm2/pimlib/run/pass/format2.mod: New test. + +2025-04-24 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/avx512vl-pr103750-1.c: New test. + * gcc.target/i386/avx512f-pr96891-3.c: Adjust testcase. + * gcc.target/i386/avx512f-vpcmpgtuq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpeqq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpequq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpgeq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpgeuq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpgtq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpgtuq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpleq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpleuq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpltq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpltuq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpneqq-1.c: Ditto. + * gcc.target/i386/avx512vl-vpcmpnequq-1.c: Ditto. + +2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119914 + * gm2/pim/fail/constintarraybyte.mod: New test. + +2025-04-23 Dimitar Dimitrov <dimitar@dinux.eu> + + * g++.dg/no-stack-protector-attr-3.C: Require effective target + fstack_protector. + +2025-04-23 Jan Hubicka <hubicka@ucw.cz> + + * gcc.dg/ipa/ipa-clone-4.c: New file. + * gcc.dg/tree-prof/ipa-cp-1.c: New file. + +2025-04-23 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/71233 + * gcc.target/aarch64/advsimd-intrinsics/vld1x2.c: Enable on arm. + * gcc.target/aarch64/advsimd-intrinsics/vld1x3.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vld1x4.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x2.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x3.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x4.c: Likewise. + +2025-04-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * g++.dg/eh/pr119507.C: Skip on sparc*-*-solaris2* && !gas. + +2025-04-23 Tamar Christina <tamar.christina@arm.com> + + PR target/119286 + * gcc.dg/vect/vect-early-break_38.c: Force -march=gfx908 for amdgcn. + +2025-04-23 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/blendv-to-maxmin.c: New test. + * gcc.target/i386/blendv-to-pand.c: New test. + +2025-04-22 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/pr89618-2.c: XFAIL. + +2025-04-22 Jakub Jelinek <jakub@redhat.com> + + PR target/119327 + * g++.dg/opt/pr119327.C: New test. + +2025-04-22 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pragma_cpp_predefs_4.c: Test + __ARM_FEATURE_FAMINMAX. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/_Float16_cmp_1.c: New test. + * gcc.target/aarch64/_Float16_cmp_2.c: New (negative) test. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + PR target/117013 + * g++.target/aarch64/spaceship_1.C: New test. + * g++.target/aarch64/spaceship_2.C: New test. + * g++.target/aarch64/spaceship_3.C: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray/coindexed_3.f08: Add minimal test for + get_team(). + * gfortran.dg/team_change_2.f90: Add test for change team with + label and exiting out of it. + * gfortran.dg/team_end_2.f90: Check parsing to labeled team + blocks is correct now. + * gfortran.dg/team_end_3.f90: Check that end_team call is + generated for labeled end_teams, too. + * gfortran.dg/coarray/coindexed_5.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray_49.f90: Adapt to changed error message. + * gfortran.dg/coarray_collectives_12.f90: Adapt to changed + function signature of num_images. + * gfortran.dg/coarray_collectives_16.f90: Same. + * gfortran.dg/coarray_lib_this_image_1.f90: Same. + * gfortran.dg/coarray_lib_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_1.f90: Adapt tests for + num_images. + * gfortran.dg/coarray_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_3.f90: Same. + * gfortran.dg/num_images_1.f90: Check that deprecated syntax is + no longer supported. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + * gfortran.dg/coarray_10.f90: Update error messages. + * gfortran.dg/coarray_lib_this_image_1.f90: Same. + * gfortran.dg/coarray_lib_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_1.f90: Add more tests and + remove incorrect ones. + * gfortran.dg/coarray_this_image_2.f90: Test more features. + * gfortran.dg/coarray_this_image_3.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/88154 + PR fortran/88960 + PR fortran/97210 + PR fortran/103001 + * gfortran.dg/coarray/image_status_1.f08: Correct check for + team_type. + * gfortran.dg/pr102458.f90: Adapt to multiple errors. + * gfortran.dg/coarray/get_team_1.f90: New test. + * gfortran.dg/team_get_1.f90: New test. + * gfortran.dg/team_number_1.f90: Correct Fortran syntax. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + PR fortran/87556 + PR fortran/88254 + PR fortran/103796 + * gfortran.dg/team_change_2.f90: New test. + * gfortran.dg/team_change_3.f90: New test. + * gfortran.dg/team_end_2.f90: New test. + * gfortran.dg/team_end_3.f90: New test. + * gfortran.dg/team_form_2.f90: New test. + * gfortran.dg/team_form_3.f90: New test. + * gfortran.dg/team_sync_2.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87939 + * gfortran.dg/coarray_critical_2.f90: New test. + * gfortran.dg/coarray_critical_3.f90: New test. + * gfortran.dg/team_sync_1.f90: New test. + * gfortran.dg/move_alloc_11.f90: New test. + +2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> + + * gcc.target/riscv/mcpu-xt-c908.c: test -mcpu=xt-c908. + * gcc.target/riscv/mcpu-xt-c910.c: test -mcpu=xt-c910. + * gcc.target/riscv/mcpu-xt-c920v2.c: test -mcpu=xt-c920v2. + * gcc.target/riscv/mcpu-xt-c908v.c: test -mcpu=xt-c908v. + * gcc.target/riscv/mcpu-xt-c910v2.c: test -mcpu=xt-c910v2. + * gcc.target/riscv/mcpu-xt-c920.c: test -mcpu=xt-c920. + +2025-04-22 Christophe Lyon <christophe.lyon@linaro.org> + + * g++.dg/gcov/gcov.exp: Handle GCOV_UNDER_TEST. + * gcc.misc-tests/gcov.exp: Likewise. + * gdc.dg/gcov.exp: Likewise. + * gnat.dg/gcov/gcov.exp: Likewise. + +2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.misc-tests/gcov-31.c (run_pending_traps): Use sigsetjmp + instead of __sigsetjmp. + +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119863 + * g++.dg/modules/tpl-friend-18_a.C: New test. + * g++.dg/modules/tpl-friend-18_b.C: New test. + * g++.dg/modules/tpl-friend-18_c.C: New test. + +2025-04-22 Andrew Pinski <quic_apinski@quicinc.com> + + * g++.dg/eh/pr119507.C: Skip for arm eabi. + +2025-04-22 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/powerpc/power11-3.c: Require ifunc support. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/118775 + * g++.dg/cpp2a/constexpr-new24.C: Adjust diagnostic. + +2025-04-21 Andrew Bennett <andrew.bennett@imgtec.com> + + * gcc.dg/memcpy-4.c: Remove mips specific code. + * gcc.target/mips/memcpy-2.c: New test. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.target/mips/clear-cache-1.c: Also allow jrc. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.dg/tree-ssa/ssa-dom-cse-2.c: Do not check output for + MIPS lp64 abi. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/119507 + * g++.dg/eh/pr119507.C: New test. + +2025-04-21 hongtao.liu <hongtao.liu@intel.com> + + * gcc.target/i386/recip-vec-divf-fma.c: New test. + +2025-04-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/117863 + * gcc.dg/rtl/i386/vector_eq-2.c: New test. + * gcc.dg/rtl/i386/vector_eq-3.c: Likewise. + +2025-04-19 Thomas Schwinge <tschwinge@baylibre.com> + + PR testsuite/119508 + * rust/compile/nr2/compile.exp: Disable parallel testing. + +2025-04-19 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + PR target/118410 + * gcc.target/riscv/pr118410-1.c: New test. + * gcc.target/riscv/pr118410-2.c: Likewise. + +2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.dg/pr118947-1.c: Use 1025 as the size of the buf. + * gcc.dg/pr78408-3.c: Likewise. + +2025-04-19 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/111949 + * gcc.target/aarch64/bic-1.c: New test. + +2025-04-19 Jiaxun Yang <jiaxun.yang@flygoat.com> + + PR target/111814 + * gcc.target/sh/pr111814.c: New test. + +2025-04-19 Maciej W. Rozycki <macro@orcam.me.uk> + + * gcc.target/alpha/memcpy-nested-offset-long.c: New file. + * gcc.target/alpha/memcpy-nested-offset-quad.c: New file. + +2025-04-19 Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/119836 + * gfortran.dg/do_concurrent_all_clauses.f90: Remove invalid + dg-error test. + * gfortran.dg/pr119836_1.f90: New test. + * gfortran.dg/pr119836_2.f90: New test. + * gfortran.dg/pr119836_3.f90: New test. + * gfortran.dg/pr119836_4.f90: New test. + +2025-04-18 Thomas Schwinge <tschwinge@baylibre.com> + + PR cobol/119818 + * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: + 'dg-set-target-env-var TZ UTC0'. + +2025-04-18 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/bext-ext-2.c: New test + +2025-04-18 Jonathan Yong <10walls@gmail.com> + + * g++.dg/abi/ref-temp1.C: Replicate some test based on + PE expectations. + * lib/target-supports.exp: New check_effective_target_pe. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87901 + * gcc.dg/tree-ssa/ssa-dse-53.c: New test. + * gcc.dg/tree-ssa/ssa-dse-54.c: New test. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/87901 + * gcc.dg/tree-ssa/ssa-dse-52.c: New test. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118902 + * gcc.dg/tree-ssa/pr118902-1.c: New test. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118947 + * gcc.dg/pr118947-1.c: New test. + +2025-04-18 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/78408 + PR tree-optimization/118947 + * gcc.dg/pr78408-3.c: New test. + +2025-04-18 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/pr116357.c: Use sizeof(int) instead of alignof(int). + +2025-04-18 Alexey Merzlyakov <alexey.merzlyakov@samsung.com> + + PR middle-end/108016 + * gcc.target/riscv/pr108016.c: New test. + +2025-04-18 kelefth <konstantinos.eleftheriou@vrull.eu> + + PR rtl-optimization/119160 + * gcc.dg/pr119160.c: New test. + +2025-04-18 Xing Li <lixing@loongson.cn> + + * gcc.target/loongarch/vector/loongarch-vector.exp: Change + {dg-do-what-default} save and restore logical. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/constexpr-dtor16.C: Adjust diagnostic. + * g++.dg/cpp2a/constexpr-dynamic10.C: Likewise. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp1y/constexpr-new.C: Adjust diagnostics. + * g++.dg/cpp1z/constexpr-asm-5.C: Likewise. + * g++.dg/cpp26/static_assert1.C: Likewise. + * g++.dg/cpp2a/constexpr-dtor7.C: Likewise. + * g++.dg/cpp2a/constexpr-new26.C: Likewise. + * g++.dg/cpp2a/constexpr-new3.C: Likewise. + * g++.dg/cpp2a/constinit14.C: Likewise. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp26/pack-indexing2.C: Adjust diagnostics. + * g++.dg/ext/type_pack_element2.C: Likewise. + * g++.dg/ext/type_pack_element4.C: Likewise. + +2025-04-17 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/119351 + * gcc.target/aarch64/sve/pr119351.c: New test. + * gcc.target/aarch64/sve/pr119351_run.c: New test. + +2025-04-17 Jakub Jelinek <jakub@redhat.com> + + PR target/119834 + * g++.target/s390/pr119834.C: New test. + +2025-04-17 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.test/fail_compilation/test21247.d: New test. + * gdc.test/fail_compilation/test21247b.d: New test. + +2025-04-17 Jason Merrill <jason@redhat.com> + + PR c++/113360 + * g++.dg/cpp23/constexpr-nonlit18.C: Remove redundant message. + * g++.dg/cpp1y/constexpr-diag2.C: New test. + * g++.dg/cpp1y/pr63996.C: Adjust expected errors. + * g++.dg/template/explicit-args6.C: Likewise. + * g++.dg/cpp0x/constexpr-ice21.C: Likewise. + +2025-04-16 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/ipa/ipa-sra-19.c: Add -Wno-psabi on ppc-elf too. + +2025-04-16 Peter Bergner <bergner@linux.ibm.com> + + PR tree-optimization/112822 + * g++.dg/pr112822.C: Replace altivec vector attribute with a generic + vector attribute. + +2025-04-16 Eric Botcazou <ebotcazou@gcc.gnu.org> + + * gnat.dg/opt105.adb: New test. + * gnat.dg/opt105_pkg.ads, gnat.dg/opt105_pkg.adb: New helper. + +2025-04-16 Jason Merrill <jason@redhat.com> + + PR c++/114772 + PR c++/101180 + * g++.dg/ext/pragma-target2.C: New test. + +2025-04-16 Jason Merrill <jason@redhat.com> + + PR c++/116954 + * g++.dg/warn/Wformat-3.C: New test. + +2025-04-16 Ard Biesheuvel <ardb@kernel.org> + + PR target/119386 + * gcc.target/i386/pr119386-3.c: New test. + +2025-04-16 Ard Biesheuvel <ardb@kernel.org> + + PR target/119386 + * gcc.target/i386/pr119386-1.c: New test. + * gcc.target/i386/pr119386-2.c: New test. + +2025-04-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/106948 + * gfortran.dg/pure_formal_proc_4.f90: New test. + +2025-04-16 Jan Hubicka <hubicka@ucw.cz> + + * g++.dg/lto/pr119614_0.C: New test. + +2025-04-16 Tamar Christina <tamar.christina@arm.com> + + PR target/119286 + * gcc.dg/vect/vect-early-break_18.c: Force -march=gfx908 for amdgcn. + +2025-04-16 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/119351 + * gcc.target/aarch64/sve/peel_ind_10.c: New test. + * gcc.target/aarch64/sve/peel_ind_10_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_5.c: New test. + * gcc.target/aarch64/sve/peel_ind_5_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_6.c: New test. + * gcc.target/aarch64/sve/peel_ind_6_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_7.c: New test. + * gcc.target/aarch64/sve/peel_ind_7_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_8.c: New test. + * gcc.target/aarch64/sve/peel_ind_8_run.c: New test. + * gcc.target/aarch64/sve/peel_ind_9.c: New test. + * gcc.target/aarch64/sve/peel_ind_9_run.c: New test. + +2025-04-16 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119808 + * gcc.dg/bitint-121.c: New test. + +2025-04-16 Jesse Huang <jesse.huang@sifive.com> + + * gcc.target/riscv/gnu-property-align-rv32.c: New file. + * gcc.target/riscv/gnu-property-align-rv64.c: New file. + +2025-04-16 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/jump-table-large-code-model.c: New test. + +2025-04-16 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/116093 + * gcc.dg/bitint-122.c: New test. + +2025-04-16 Alice Carlotti <alice.carlotti@arm.com> + + * gcc.target/aarch64/acle/rwsr-ungated.c: New test. + +2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119826 + * gdc.dg/debug/imports/pr119826b.d: New test. + * gdc.dg/debug/pr119826.d: New test. + +2025-04-15 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119755 + * g++.dg/modules/lambda-10_a.H: New test. + * g++.dg/modules/lambda-10_b.C: New test. + +2025-04-15 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/completion-2.c: Expect also -flto-partition=default line. + +2025-04-15 Qing Zhao <qing.zhao@oracle.com> + + PR c/119717 + * gcc.dg/pr119717.c: New test. + +2025-04-15 H.J. Lu <hjl.tools@gmail.com> + + PR target/119784 + * gcc.target/i386/apx-interrupt-1.c: Expect 31 .cfi_restore + directives. + +2025-04-15 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119533 + * go.dg/pr119533-riscv.go: New test. + * go.dg/pr119533-riscv-2.go: New test. + +2025-04-15 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119547 + * gcc.target/riscv/rvv/vsetvl/avl_single-68.c: xfail. + * g++.target/riscv/rvv/autovec/pr119547.C: New test. + * g++.target/riscv/rvv/autovec/pr119547-2.C: New test. + * gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-10.c: Adjust. + +2025-04-15 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/gomp/map-alloc-comp-1.f90: Remove dg-error. + * gfortran.dg/gomp/polymorphic-mapping-2.f90: Update warn wording. + * gfortran.dg/gomp/polymorphic-mapping.f90: Change expected + diagnostic; some tests moved to ... + * gfortran.dg/gomp/polymorphic-mapping-1.f90: ... here as new test. + * gfortran.dg/gomp/polymorphic-mapping-3.f90: New test. + * gfortran.dg/gomp/polymorphic-mapping-4.f90: New test. + * gfortran.dg/gomp/polymorphic-mapping-5.f90: New test. + +2025-04-15 Martin Jambor <mjambor@suse.cz> + Jakub Jelinek <jakub@redhat.com> + + PR ipa/119803 + * gcc.dg/ipa/pr119803.c: New test. + +2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119799 + * gdc.dg/import-c/pr119799.d: New test. + * gdc.dg/import-c/pr119799c.c: New test. + +2025-04-15 Patrick Palka <ppalka@redhat.com> + + PR c++/119807 + PR c++/112288 + * g++.dg/template/friend86.C: New test. + * g++.dg/template/friend87.C: New test. + +2025-04-15 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119817 + * gdc.dg/debug/imports/m119817/a.d: New test. + * gdc.dg/debug/imports/m119817/b.d: New test. + * gdc.dg/debug/imports/m119817/package.d: New test. + * gdc.dg/debug/pr119817.d: New test. + +2025-04-15 Jakub Jelinek <jakub@redhat.com> + + PR sanitizer/119801 + * c-c++-common/tsan/pr119801.c: New test. + +2025-04-15 Jonathan Yong <10walls@gmail.com> + + * gcc.dg/Wbuiltin-declaration-mismatch-4.c: Make diagnostic + accept long long. + +2025-04-15 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119318 + * gcc.dg/ipa/pr119318.c: Remove dg-additional-options, add -w to + dg-options. + +2025-04-15 Jason Merrill <jason@redhat.com> + + PR c++/113835 + * g++.dg/cpp2a/constexpr-vector1.C: New test. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/118794 + * g++.target/gcn/exceptions-bad_cast-2.C: Set + '-mno-fake-exceptions'. + * g++.target/gcn/exceptions-pr118794-1.C: Likewise. + * g++.target/gcn/exceptions-throw-2.C: Likewise. + * g++.target/nvptx/exceptions-bad_cast-2.C: Likewise. + * g++.target/nvptx/exceptions-pr118794-1.C: Likewise. + * g++.target/nvptx/exceptions-throw-2.C: Likewise. + * g++.target/gcn/exceptions-bad_cast-2_-mfake-exceptions.C: New. + * g++.target/gcn/exceptions-pr118794-1_-mfake-exceptions.C: + Likewise. + * g++.target/gcn/exceptions-throw-2_-mfake-exceptions.C: Likewise. + * g++.target/nvptx/exceptions-bad_cast-2_-mfake-exceptions.C: + Likewise. + * g++.target/nvptx/exceptions-pr118794-1_-mfake-exceptions.C: + Likewise. + * g++.target/nvptx/exceptions-throw-2_-mfake-exceptions.C: + Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-throw-3.C: New. + * g++.target/nvptx/exceptions-throw-3.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-throw-2.C: New. + * g++.target/nvptx/exceptions-throw-2.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-throw-1.C: New. + * g++.target/nvptx/exceptions-throw-1.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-bad_cast-3.C: New. + * g++.target/nvptx/exceptions-bad_cast-3.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-bad_cast-2.C: New. + * g++.target/nvptx/exceptions-bad_cast-2.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/exceptions-bad_cast-1.C: New. + * g++.target/nvptx/exceptions-bad_cast-1.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/118794 + * g++.target/gcn/exceptions-pr118794-1.C: New. + * g++.target/nvptx/exceptions-pr118794-1.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR c++/119692 + * g++.target/gcn/pr119692-1-1.C: New. + * g++.target/nvptx/pr119692-1-1.C: Likewise. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/gcn/gcn.exp: New. + +2025-04-14 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (${tool}_load): Polish 'dg-output-file' test + logs. + +2025-04-14 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119318 + * gcc.dg/ipa/pr119530.c (d): Change type from char to signed char. + (e): Change argument type from long to long long. + +2025-04-14 beamandala <mandalapubhavesh@gmail.com> + + * rust/compile/track_caller.rs: New test. + +2025-04-14 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/enum_discriminant2.rs: New test. + +2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/format_args_extra_comma.rs: New test. + +2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/macros/mbe/macro-issue3709-1.rs: New test. + * rust/compile/macros/mbe/macro-issue3709-2.rs: New test. + * rust/compile/macros/mbe/macro-issue3693.rs: New file. + +2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/macros/mbe/macro-issue3708.rs: New test. + +2025-04-14 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/torture/min_specialization2.rs: New test. + * rust/execute/torture/min_specialization3.rs: New test. + +2025-04-14 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118476 + * gcc.dg/torture/pr118476-1.c: New test. + +2025-04-14 Patrick Palka <ppalka@redhat.com> + + PR c++/99214 + * g++.dg/concepts/diagnostic20.C: New test. + +2025-04-14 H.J. Lu <hjl.tools@gmail.com> + + PR target/119784 + * gcc.target/i386/pr119784a.c: New test. + * gcc.target/i386/pr119784b.c: Likewise. + +2025-04-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/119318 + * gcc.dg/ipa/pr119318.c: New test. + * gcc.dg/ipa/pr119530.c: Likwise. + +2025-04-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119757 + * gcc.dg/vect/pr119757.c: New testcase. + +2025-04-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119778 + * g++.dg/torture/pr119778.C: New testcase. + +2025-04-14 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119779 + * gm2.dg/doc/examples/pass/doc-examples-pass.exp: New test. + * gm2.dg/doc/examples/pass/exampleadd.mod: New test. + * gm2.dg/doc/examples/pass/exampleadd2.mod: New test. + * gm2.dg/doc/examples/pass/hello.mod: New test. + * gm2.dg/doc/examples/pass/hellopim.mod: New test. + +2025-04-14 Eric Botcazou <ebotcazou@adacore.com> + + PR lto/119792 + * gnat.dg/lto29.adb: New test. + * gnat.dg/lto29_pkg.ads: New helper. + +2025-04-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/119502 + * gfortran.dg/pr119502.f90: New test. + +2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/noexcept-4_a.H: New test. + * g++.dg/modules/noexcept-4_b.C: New test. + +2025-04-13 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/lambda-8_b.C: Adjust error. + * g++.dg/modules/leg-merge-4_c.C: Likewise. + +2025-04-13 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119669 + * gfortran.dg/interface_59.f90: New test. + +2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119761 + * gdc.dg/import-c/import-c.exp: New test. + * gdc.dg/import-c/pr119761.d: New test. + * gdc.dg/import-c/pr119761c.c: New test. + +2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/109023 + * gdc.dg/torture/imports/pr109023.d: New test. + * gdc.dg/torture/pr109023.d: New test. + +2025-04-12 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119758 + * gdc.dg/driver_fonly1.d: New test. + * gdc.dg/driver_fonly2.d: New test. + * gdc.dg/driver_fonly3.d: New test. + * gdc.dg/imports/fonly.d: New test. + +2025-04-12 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/117706 + * gcc.dg/ira-shrinkwrap-prep-1.c: Unxfail for i?68-*-* and x86_64-*-*. + * gcc.dg/ira-shrinkwrap-prep-2.c: Likewise. + +2025-04-12 Patrick Palka <ppalka@redhat.com> + + PR c++/116416 + * g++.dg/cpp1y/constexpr-prvalue1.C: Adjust to instead inspect + the 'original' dump. + * g++.dg/cpp1y/constexpr-prvalue1a.C: New test. + +2025-04-12 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119722 + * gcc.dg/torture/bitint-77.c: New test. + +2025-04-12 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/renaming17.adb: New test. + +2025-04-12 Bob Dubner <rdubner@symas.com> + + PR cobol/119694 + * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__2_.cob: GCOBOL_CURRENT_DATE. + * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.cob: Likewise + * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: Likewise + +2025-04-11 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp: Rename arm_v8_1_lob_ok into + arm_v8_1m_lob_hw. + Rename arm_thumb2_no_arm_v8_1_lob into + arm_thumb2_no_arm_v8_1m_lob. + Rename arm_thumb2_ok_no_arm_v8_1_lob into + arm_thumb2_ok_no_arm_v8_1m_lob. + * gcc.target/arm/lob1.c: Likewise. + * gcc.target/arm/lob6.c: Likewise. + * gcc.target/arm/ivopts.c: Likewise. + * gcc.target/arm/unsigned-extend-2.c: Likewise. + +2025-04-11 Andrew Pinski <quic_apinski@quicinc.com> + + PR rtl-optimization/118502 + * g++.dg/opt/shrink-wrapping-vector-1.C: New test. + +2025-04-11 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/base/pr115068-run.c: Turn off pedantic diagnostics. + * gcc.target/riscv/rvv/base/pr115068.c: Likewise. + * gcc.target/riscv/rvv/base/vwaddsub-1.c: Likewise. + +2025-04-11 Jason Merrill <jason@redhat.com> + + PR c++/114970 + * g++.dg/opt/is_constant_evaluated4.C: New test. + +2025-04-11 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119707 + * gcc.dg/torture/bitint-76.c: New test. + +2025-04-11 Jennifer Schmitz <jschmitz@nvidia.com> + + PR tree-optimization/119706 + * g++.target/aarch64/sve/pr119706.C: New test. + +2025-04-11 Jonathan Yong <10walls@gmail.com> + + PR target/113633 + * gcc.dg/bf-ms-attrib.c: Fix expected __ms_struct__ layout + size. + +2025-04-11 Jonathan Yong <10walls@gmail.com> + + * c-c++-common/analyzer/realloc-1.c: Make diagnostic accept + long long for __builtin_realloc warning. + +2025-04-10 Jason Merrill <jason@redhat.com> + + PR c++/119345 + * g++.dg/cpp2a/lambda-targ14.C: New test. + +2025-04-10 Patrick Palka <ppalka@redhat.com> + + PR c++/119687 + * g++.dg/cpp23/class-deduction-inherited8.C: New test. + +2025-04-10 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group2/Dynamic_reference_modification.cob: New testcase. + * cobol.dg/group2/Length_overflow__1_.cob: Likewise. + * cobol.dg/group2/Length_overflow__2_.cob: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__1_.cob: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__2_.cob: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__3_.cob: Likewise. + * cobol.dg/group2/Offset_overflow.cob: Likewise. + * cobol.dg/group2/Offset_underflow.cob: Likewise. + * cobol.dg/group2/Refmod__comparisons_inside_numeric-display.cob: Likewise. + * cobol.dg/group2/Refmod_sources_are_figurative_constants.cob: Likewise. + * cobol.dg/group2/Static_reference_modification.cob: Likewise. + * cobol.dg/group2/Dynamic_reference_modification.out: New known-good result. + * cobol.dg/group2/Length_overflow__1_.out: Likewise. + * cobol.dg/group2/Length_overflow__2_.out: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__1_.out: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__2_.out: Likewise. + * cobol.dg/group2/Length_overflow_with_offset__3_.out: Likewise. + * cobol.dg/group2/Offset_overflow.out: Likewise. + * cobol.dg/group2/Offset_underflow.out: Likewise. + * cobol.dg/group2/Refmod__comparisons_inside_numeric-display.out: Likewise. + * cobol.dg/group2/Refmod_sources_are_figurative_constants.out: Likewise. + * cobol.dg/group2/Static_reference_modification.out: Likewise. + +2025-04-10 Jason Merrill <jason@redhat.com> + + PR c++/119175 + * g++.dg/cpp2a/concepts-lambda23.C: New test. + +2025-04-10 Iain Sandoe <iain@sandoe.co.uk> + + * lib/cobol.exp: Add libquadmath paths. + +2025-04-10 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/119399 + * gcc.dg/vect/pr119399.c: New test. + +2025-04-10 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-1.c: Include local + riscv_vector.h. + * gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-2.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-1-save-restore.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-1-zcmp.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-1.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c: Ditto. + * gcc.target/riscv/rvv/base/abi-callee-saved-2.c: Ditto. + * gcc.target/riscv/rvv/base/bug-10-2.c: Ditto. + * gcc.target/riscv/rvv/base/bug-10.c: Ditto. + * gcc.target/riscv/rvv/base/bug-7.c: Ditto. + * gcc.target/riscv/rvv/base/bug-8.c: Ditto. + * gcc.target/riscv/rvv/base/bug-9.c: Ditto. + * gcc.target/riscv/rvv/base/pr110943.c: Ditto. + * gcc.target/riscv/rvv/base/pr112431-21.c: Ditto. + * gcc.target/riscv/rvv/base/pr114639-1.c: Ditto. + * gcc.target/riscv/rvv/base/pr115068.c: Ditto. + * gcc.target/riscv/rvv/base/pr117286.c: Ditto. + * gcc.target/riscv/rvv/base/pr117544.c: Ditto. + * gcc.target/riscv/rvv/base/pr117955.c: Ditto. + * gcc.target/riscv/rvv/base/pr118872.c: Ditto. + * gcc.target/riscv/rvv/base/vlmul_ext-1.c: Ditto. + * gcc.target/riscv/rvv/base/vssubu-1.c: Ditto. + * gcc.target/riscv/rvv/base/vssubu-2.c: Ditto. + * gcc.target/riscv/rvv/base/vwaddsub-1.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/pr111234.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/pr115214.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvl-24.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvl_bug-3.c: Ditto. + * gcc.target/riscv/rvv/vsetvl/vsetvl_bug-4.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/pr116591.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/pr116592.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/pr118357.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/vsext.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/vzext.c: Ditto. + +2025-04-09 Patrick Palka <ppalka@redhat.com> + + PR c++/119574 + * g++.dg/cpp2a/lambda-targ13.C: New test. + * g++.dg/cpp2a/lambda-targ13a.C: New test. + * g++.dg/cpp2a/lambda-targ13b.C: New test. + +2025-04-09 Jakub Jelinek <jakub@redhat.com> + + PR target/119664 + * gcc.dg/pr119664.c: New test. + +2025-04-09 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/116595 + * g++.target/aarch64/sve/pr116595.C: New test. + +2025-04-09 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118309 + * gdc.dg/debug/dwarf2/pr118309.d: New test. + +2025-04-09 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119656 + * gfortran.dg/optional_absent_13.f90: New test. + +2025-04-09 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/sat/sat_s_sub-1-i64.c: Update expected output. + * gcc.target/riscv/sat/sat_s_sub-2-i64.c: Likewise. + * gcc.target/riscv/sat/sat_s_sub-3-i64.c: Likewise. + * gcc.target/riscv/sat/sat_s_sub-4-i64.c: Likewise. + +2025-04-09 Uros Bizjak <ubizjak@gmail.com> + + * gcc.target/i386/pr67215-1.c: Correctly escape + asterisk in scan-assembler dirctive. + * gcc.target/i386/pr67215-2.c: Ditto. + +2025-04-09 Jonathan Yong <10walls@gmail.com> + + PR analyzer/113253 + * gcc.dg/analyzer/deref-before-check-pr113253.c: + (ptrdiff_t): use stddef.h type. + (uintptr_t): ditto. + (EMACS_INT): ditto. + (set_marker_internal): Add dummy 0 to suppress -Wreturn-type. + +2025-04-09 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/pr117722.c: Adjust expected output. + +2025-04-09 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/119689 + PR rtl-optimization/115568 + * g++.target/i386/pr119689.C: New testcase. + +2025-04-09 Pan Li <pan2.li@intel.com> + + Revert: + 2025-03-15 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.c: Removed. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i8.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u8.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.h: New test. + +2025-04-09 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/118674 + * gcc.dg/cpp/pr118674.c: New test. + +2025-04-09 Robin Dapp <rdapp@ventanamicro.com> + + * g++.target/riscv/rvv/autovec/pr116595.C: Add -mabi. + +2025-04-09 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/116595 + * g++.target/riscv/rvv/autovec/pr116595.C: New test. + +2025-04-09 Paul Thomas <pault@gcc.gnu.org> + and Harald Anlauf <anlauf@gcc.gnu.org> + + PR fortran/119460 + * gfortran.dg/reduce_2.f90: Add test to check that deferred len + characters cannot slip through. + * gfortran.dg/reduce_3.f90: New test + * gfortran.dg/reduce_4.f90: New test + +2025-04-09 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/101602 + * gfortran.dg/do_concurrent_8_f2023.f90: Update for removed 'sorry, + unimplemented'. + * gfortran.dg/do_concurrent_9.f90: Likewise. + * gfortran.dg/do_concurrent_all_clauses.f90: Likewise. + * gfortran.dg/do_concurrent_local_init.f90: Likewise. + * gfortran.dg/do_concurrent_locality_specs.f90: Likewise. + * gfortran.dg/do_concurrent_11.f90: New test. + * gfortran.dg/do_concurrent_12.f90: New test. + * gfortran.dg/do_concurrent_13.f90: New test. + * gfortran.dg/do_concurrent_14.f90: New test. + * gfortran.dg/do_concurrent_15.f90: New test. + +2025-04-09 Jason Merrill <jason@redhat.com> + + PR c++/118698 + * g++.dg/cpp2a/concepts-lambda22.C: New test. + +2025-04-08 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/guality/pr36728-3.c: Update XFAILs for aarch64. + * gcc.dg/guality/pr41353-1.c: Likewise. + * gcc.dg/guality/pr54693-2.c: Likewise. + * gcc.dg/guality/pr68860-1.c: Likewise. + * gcc.dg/guality/pr68860-2.c: Likewise. + * gcc.dg/guality/sra-1.c: Likewise. + * gcc.dg/guality/vla-1.c: Likewise. + +2025-04-08 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/vect/pr99102.c: Force SVE when forcing the vector length. + +2025-04-08 Martin Uecker <uecker@tugraz.at> + + PR c/119612 + * gcc.dg/gnu23-tag-6.c: New test. + * gcc.dg/pr119612.c: New test. + +2025-04-08 Tobias Burnus <tburnus@baylibre.com> + + PR middle-end/119662 + * c-c++-common/gomp/append-args-interop.c: Update for fixed + GOMP_interop call. + * g++.dg/gomp/append-args-8.C: Likewise. + * gfortran.dg/gomp/append-args-interop.f90: Likewise. + +2025-04-08 Jason Merrill <jason@redhat.com> + + PR c++/117530 + * g++.dg/cpp2a/lambda-uneval27.C: New test. + +2025-04-08 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119594 + * gcc.dg/pr119594.c: New test. + +2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro6.rs: Remove call of undefined + function. + * rust/compile/nr2/exclude: Remove macros/mbe/macro6.rs. + +2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-2812.rs: Avoid multiple definition error. + * rust/compile/nr2/exclude: Remove issue-2812.rs. + +2025-04-08 Matty Kuhn <matty.kuhn.1@gmail.com> + + * rust/compile/feature.rs: add an invalid empty feature to produce an error + +2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/invalid_label_name.rs: Adapt test to nr2. + +2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove test. + +2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/undeclared_label.rs: Change test + expected string. + +2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove test from exclusion list. + +2025-04-08 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove passing test. + +2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/compile.exp: Avoid absolute paths in output, + adjust phrasing of output, and avoid false XPASS output when + tests are run in parallel. + +2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entry. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3647.rs: New test. + +2025-04-08 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/min_specialization1.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 is missing type path error + * rust/compile/issue-3643.rs: New test. + * rust/compile/issue-3646.rs: New test. + * rust/compile/issue-3654.rs: New test. + * rust/compile/issue-3663.rs: New test. + * rust/compile/issue-3671.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3667.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3656.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3625.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3648.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3657.rs: New test. + +2025-04-08 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3665.rs: New test. + +2025-04-08 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-04-08 Ryutaro Okada <1015ryu88@gmail.com> + + * rust/compile/enum_discriminant1.rs: New test. + +2025-04-08 Tejas Belagod <tejas.belagod@arm.com> + + * gcc.target/aarch64/sve/gomp/gomp.exp: Test driver. + * gcc.target/aarch64/sve/gomp/target-device.c: New test. + * gcc.target/aarch64/sve/gomp/target-link.c: Likewise. + * gcc.target/aarch64/sve/gomp/target.c: Likewise. + +2025-04-08 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/rvv/xtheadvector/vsext.c: New test. + * gcc.target/riscv/rvv/xtheadvector/vzext.c: New test. + +2025-04-07 Jason Merrill <jason@redhat.com> + + PR c++/119652 + * g++.dg/cpp2a/constinit20.C: New test. + +2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/alloca-2-O0_-mfake-ptx-alloca.c: Adjust. + +2025-04-07 Martin Jambor <mjambor@suse.cz> + + PR tree-optimization/118924 + * g++.dg/tree-ssa/pr118924.C: New test. + +2025-04-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119640 + * gcc.dg/vect/pr119640.c: New testcase. + +2025-04-07 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/119556 + * gcc.target/arm/short-vfp-1.c: Improve dg directives. + +2025-04-07 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119614 + * g++.dg/opt/pr119613.C: Change { c || c++11 } in obviously C++ only + test to just c++11. + * g++.dg/opt/pr119614.C: New test. + +2025-04-07 Richard Sandiford <richard.sandiford@arm.com> + Richard Biener <rguenther@suse.de> + + * gcc.target/aarch64/popcnt-le-1.c: Account for commutativity of TST. + * gcc.target/aarch64/popcnt-le-3.c: Likewise AND. + * gcc.target/aarch64/pr100056.c: Revert previous patch. + * gcc.target/aarch64/sve/pred-not-gen-1.c: Likewise. + * gcc.target/aarch64/sve/pred-not-gen-4.c: Likewise. + * gcc.target/aarch64/sve/var_stride_2.c: Likewise. + * gcc.target/aarch64/sve/var_stride_4.c: Likewise. + +2025-04-06 Iain Sandoe <iain@sandoe.co.uk> + + * lib/cobol.exp: Simplify the setting of COBOL_UNDER_TEST. + +2025-04-06 Patrick Palka <ppalka@redhat.com> + + PR c++/118626 + * g++.dg/cpp2a/class-deduction-alias25a.C: New test. + +2025-04-06 Patrick Palka <ppalka@redhat.com> + + PR c++/118626 + * g++.dg/cpp2a/class-deduction-alias25.C: New test. + +2025-04-05 Patrick Palka <ppalka@redhat.com> + + PR c++/118249 + * g++.dg/cpp0x/constexpr-reinterpret2.C: Expect error at + call site of the non-constexpr functions. + * g++.dg/cpp23/constexpr-nonlit12.C: Likewise. + * g++.dg/cpp0x/constexpr-ref14.C: New test. + +2025-04-05 Iain Sandoe <iain@sandoe.co.uk> + + * lib/cobol.exp: Conditionally add a path for libgcobol.spec. + +2025-04-05 Jason Merrill <jason@redhat.com> + + PR c++/118629 + * g++.dg/cpp0x/lambda/lambda-__func__3.C: New test. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119564 + * g++.dg/modules/gc-3_a.C: New test. + * g++.dg/modules/gc-3_b.C: New test. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119608 + * g++.dg/modules/pr119608_a.C: New test. + * g++.dg/modules/pr119608_b.C: New test. + +2025-04-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119462 + * g++.dg/modules/noexcept-3_a.C: New test. + * g++.dg/modules/noexcept-3_b.C: New test. + * g++.dg/modules/noexcept-3_c.C: New test. + +2025-04-04 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group2/call_subprogram_using_pointer__passing_pointer.cob: New testcase. + * cobol.dg/group2/FUNCTION_ABS.cob: Likewise. + * cobol.dg/group2/FUNCTION_ACOS.cob: Likewise. + * cobol.dg/group2/FUNCTION_ALL_INTRINSIC_simple_test.cob: Likewise. + * cobol.dg/group2/FUNCTION_ANNUITY.cob: Likewise. + * cobol.dg/group2/FUNCTION_as_CALL_parameter_BY_CONTENT.cob: Likewise. + * cobol.dg/group2/FUNCTION_ASIN.cob: Likewise. + * cobol.dg/group2/FUNCTION_ATAN.cob: Likewise. + * cobol.dg/group2/FUNCTION_BIGGER-POINTER__2_.cob: Likewise. + * cobol.dg/group2/FUNCTION_BIGGER-POINTER.cob: Likewise. + * cobol.dg/group2/FUNCTION_BYTE-LENGTH.cob: Likewise. + * cobol.dg/group2/FUNCTION_CHAR.cob: Likewise. + * cobol.dg/group2/FUNCTION_COMBINED-DATETIME.cob: Likewise. + * cobol.dg/group2/FUNCTION_CONCAT___CONCATENATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_CONCAT_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_COS.cob: Likewise. + * cobol.dg/group2/FUNCTION_CURRENT-DATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_DATE-OF-INTEGER.cob: Likewise. + * cobol.dg/group2/FUNCTION_DATE___TIME_OMNIBUS.cob: Likewise. + * cobol.dg/group2/FUNCTION_DATE-TO-YYYYMMDD.cob: Likewise. + * cobol.dg/group2/FUNCTION_DAY-OF-INTEGER.cob: Likewise. + * cobol.dg/group2/FUNCTION_DAY-TO-YYYYDDD.cob: Likewise. + * cobol.dg/group2/FUNCTION_E.cob: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-FILE.cob: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-STATEMENT.cob: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-STATUS.cob: Likewise. + * cobol.dg/group2/FUNCTION_EXP10.cob: Likewise. + * cobol.dg/group2/FUNCTION_EXP.cob: Likewise. + * cobol.dg/group2/FUNCTION_FACTORIAL.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATETIME.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATE_TIME_DATETIME.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATETIME_with_ref_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATE_with_ref_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-TIME_DP.COMMA.cob: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-TIME_with_ref_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_FRACTION-PART.cob: Likewise. + * cobol.dg/group2/FUNCTION_HEX-OF.cob: Likewise. + * cobol.dg/group2/FUNCTION_HIGHEST-ALGEBRAIC.cob: Likewise. + * cobol.dg/group2/FUNCTION_INTEGER.cob: Likewise. + * cobol.dg/group2/FUNCTION_INTEGER-OF-DATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_INTEGER-OF-DAY.cob: Likewise. + * cobol.dg/group2/FUNCTION_INTEGER-OF-FORMATTED-DATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_INTEGER-PART.cob: Likewise. + * cobol.dg/group2/FUNCTION_LENGTH__1_.cob: Likewise. + * cobol.dg/group2/FUNCTION_LENGTH__2_.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-COMPARE.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-DATE.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-TIME.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-TIME-FROM-SECONDS.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOG10.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOG.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOWER-CASE.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOWER-CASE_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_LOWEST-ALGEBRAIC.cob: Likewise. + * cobol.dg/group2/FUNCTION_MAX.cob: Likewise. + * cobol.dg/group2/FUNCTION_MEAN.cob: Likewise. + * cobol.dg/group2/FUNCTION_MEDIAN.cob: Likewise. + * cobol.dg/group2/FUNCTION_MIDRANGE.cob: Likewise. + * cobol.dg/group2/FUNCTION_MIN.cob: Likewise. + * cobol.dg/group2/FUNCTION_MOD__invalid_.cob: Likewise. + * cobol.dg/group2/FUNCTION_MODULE-NAME.cob: Likewise. + * cobol.dg/group2/FUNCTION_MOD__valid_.cob: Likewise. + * cobol.dg/group2/FUNCTION_NUMVAL-C.cob: Likewise. + * cobol.dg/group2/FUNCTION_NUMVAL-C_DP.COMMA.cob: Likewise. + * cobol.dg/group2/FUNCTION_NUMVAL.cob: Likewise. + * cobol.dg/group2/FUNCTION_NUMVAL-F.cob: Likewise. + * cobol.dg/group2/FUNCTION_ORD.cob: Likewise. + * cobol.dg/group2/FUNCTION_ORD-MAX.cob: Likewise. + * cobol.dg/group2/FUNCTION_ORD-MIN.cob: Likewise. + * cobol.dg/group2/FUNCTION_PI.cob: Likewise. + * cobol.dg/group2/FUNCTION_PRESENT-VALUE.cob: Likewise. + * cobol.dg/group2/FUNCTION_RANDOM.cob: Likewise. + * cobol.dg/group2/FUNCTION_RANGE.cob: Likewise. + * cobol.dg/group2/FUNCTION_REM__invalid_.cob: Likewise. + * cobol.dg/group2/FUNCTION_REM__valid_.cob: Likewise. + * cobol.dg/group2/FUNCTION_REVERSE.cob: Likewise. + * cobol.dg/group2/FUNCTION_REVERSE_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_SECONDS-FROM-FORMATTED-TIME.cob: Likewise. + * cobol.dg/group2/FUNCTION_SECONDS-PAST-MIDNIGHT.cob: Likewise. + * cobol.dg/group2/FUNCTION_SIGN.cob: Likewise. + * cobol.dg/group2/FUNCTION_SIN.cob: Likewise. + * cobol.dg/group2/FUNCTION_SQRT.cob: Likewise. + * cobol.dg/group2/FUNCTION_STANDARD-DEVIATION.cob: Likewise. + * cobol.dg/group2/FUNCTION_SUBSTITUTE-CASE.cob: Likewise. + * cobol.dg/group2/FUNCTION_SUBSTITUTE-CASE_with_reference_mod.cob: Likewise. + * cobol.dg/group2/FUNCTION_SUBSTITUTE.cob: Likewise. + * cobol.dg/group2/FUNCTION_SUBSTITUTE_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_SUM.cob: Likewise. + * cobol.dg/group2/FUNCTION_TAN.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-DATE-YYYYMMDD.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__1_.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__2_.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_additional.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_DP.COMMA.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_dates.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_datetimes.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-FORMATTED-DATETIME_with_times.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-NUMVAL-C.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-NUMVAL.cob: Likewise. + * cobol.dg/group2/FUNCTION_TEST-NUMVAL-F.cob: Likewise. + * cobol.dg/group2/FUNCTION_TRIM.cob: Likewise. + * cobol.dg/group2/FUNCTION_TRIM_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_TRIM_zero_length.cob: Likewise. + * cobol.dg/group2/FUNCTION_UPPER-CASE.cob: Likewise. + * cobol.dg/group2/FUNCTION_UPPER-CASE_with_reference_modding.cob: Likewise. + * cobol.dg/group2/FUNCTION_VARIANCE.cob: Likewise. + * cobol.dg/group2/FUNCTION_WHEN-COMPILED.cob: Likewise. + * cobol.dg/group2/FUNCTION_YEAR-TO-YYYY.cob: Likewise. + * cobol.dg/group2/Intrinsics_without_FUNCTION_keyword__2_.cob: Likewise. + * cobol.dg/group2/Program-to-program_parameters_and_retvals.cob: Likewise. + * cobol.dg/group2/Recursive_FUNCTION_with_local-storage.cob: Likewise. + * cobol.dg/group2/Repository_functions_clause.cob: Likewise. + * cobol.dg/group2/UDF_fibonacci_recursion.cob: Likewise. + * cobol.dg/group2/UDF_in_COMPUTE.cob: Likewise. + * cobol.dg/group2/UDF_RETURNING_group_and_PIC_9_5_.cob: Likewise. + * cobol.dg/group2/UDF_with_recursion.cob: Likewise. + * cobol.dg/group2/call_subprogram_using_pointer__passing_pointer.out: New known-good file. + * cobol.dg/group2/FUNCTION_ABS.out: Likewise. + * cobol.dg/group2/FUNCTION_ALL_INTRINSIC_simple_test.out: Likewise. + * cobol.dg/group2/FUNCTION_as_CALL_parameter_BY_CONTENT.out: Likewise. + * cobol.dg/group2/FUNCTION_BIGGER-POINTER__2_.out: Likewise. + * cobol.dg/group2/FUNCTION_BIGGER-POINTER.out: Likewise. + * cobol.dg/group2/FUNCTION_BYTE-LENGTH.out: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-FILE.out: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-STATEMENT.out: Likewise. + * cobol.dg/group2/FUNCTION_EXCEPTION-STATUS.out: Likewise. + * cobol.dg/group2/FUNCTION_FORMATTED-DATE_TIME_DATETIME.out: Likewise. + * cobol.dg/group2/FUNCTION_HEX-OF.out: Likewise. + * cobol.dg/group2/FUNCTION_LENGTH__2_.out: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-DATE.out: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-TIME-FROM-SECONDS.out: Likewise. + * cobol.dg/group2/FUNCTION_LOCALE-TIME.out: Likewise. + * cobol.dg/group2/FUNCTION_MAX.out: Likewise. + * cobol.dg/group2/FUNCTION_MEAN.out: Likewise. + * cobol.dg/group2/FUNCTION_MEDIAN.out: Likewise. + * cobol.dg/group2/FUNCTION_MIDRANGE.out: Likewise. + * cobol.dg/group2/FUNCTION_MIN.out: Likewise. + * cobol.dg/group2/FUNCTION_MODULE-NAME.out: Likewise. + * cobol.dg/group2/FUNCTION_NUMVAL-F.out: Likewise. + * cobol.dg/group2/FUNCTION_ORD-MAX.out: Likewise. + * cobol.dg/group2/FUNCTION_ORD-MIN.out: Likewise. + * cobol.dg/group2/FUNCTION_ORD.out: Likewise. + * cobol.dg/group2/FUNCTION_PRESENT-VALUE.out: Likewise. + * cobol.dg/group2/FUNCTION_SUBSTITUTE.out: Likewise. + * cobol.dg/group2/FUNCTION_TEST-DATE-YYYYMMDD.out: Likewise. + * cobol.dg/group2/FUNCTION_TEST-DAY-YYYYDDD__1_.out: Likewise. + * cobol.dg/group2/FUNCTION_TRIM.out: Likewise. + * cobol.dg/group2/FUNCTION_TRIM_with_reference_modding.out: Likewise. + * cobol.dg/group2/FUNCTION_TRIM_zero_length.out: Likewise. + * cobol.dg/group2/Program-to-program_parameters_and_retvals.out: Likewise. + * cobol.dg/group2/Recursive_FUNCTION_with_local-storage.out: Likewise. + * cobol.dg/group2/Repository_functions_clause.out: Likewise. + * cobol.dg/group2/UDF_fibonacci_recursion.out: Likewise. + * cobol.dg/group2/UDF_in_COMPUTE.out: Likewise. + * cobol.dg/group2/UDF_RETURNING_group_and_PIC_9_5_.out: Likewise. + * cobol.dg/group2/UDF_with_recursion.out: Likewise. + +2025-04-04 Jason Merrill <jason@redhat.com> + + PR c++/99546 + PR c++/113925 + PR c++/106976 + PR c++/109961 + PR c++/117336 + * g++.dg/cpp2a/lambda-requires2.C: New test. + * g++.dg/cpp2a/lambda-requires3.C: New test. + * g++.dg/cpp2a/lambda-requires4.C: New test. + * g++.dg/cpp2a/lambda-requires5.C: New test. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR gcov-profile/119618 + * c-c++-common/pr119618.c: New test. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119616 + * c-c++-common/pr119616.c: New test. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119613 + * g++.dg/opt/pr119613.C: New test. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR target/115910 + * gcc.target/i386/pr115910.c: New test. + +2025-04-04 Patrick Palka <ppalka@redhat.com> + + PR c++/117849 + * g++.dg/cpp2a/concepts-requires41.C: New test. + +2025-04-04 Andrew Pinski <quic_apinski@quicinc.com> + + PR ipa/119599 + * gcc.dg/torture/pr119599-1.c: New test. + * gcc.dg/builtin-apply5.c: New test. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/119391 + * g++.dg/cpp/pr119391.C: New test. + +2025-04-04 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/mve/mve.exp: Save dg-do-what-default before + changing it. Restore it once done. + +2025-04-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119614 + * c-c++-common/pr119614-1.c: New test. + * c-c++-common/pr119614-2.c: New test. + * c-c++-common/pr119614-3.c: New test. + +2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119573 + * gcc.c-torture/compile/pr46534.c: Don't 'dg-skip-if' nvptx. + * gcc.target/nvptx/decl.c: Adjust. + +2025-04-03 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/spaceship-rewrite6.C: New test. + +2025-04-03 Victor Do Nascimento <victor.donascimento@arm.com> + + PR testsuite/118597 + * gcc.dg/vect/vect-fncall-mask.c: Update test directives. + +2025-04-03 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_LEADING.cob: New testcase. + * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_TRAILING.cob: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_CONVERTING.cob: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_REPLACING.cob: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_TALLYING.cob: Likewise. + * cobol.dg/group2/INSPECT_CONVERTING_NULL.cob: Likewise. + * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constant.cob: Likewise. + * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_1.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_2.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_3.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_4.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5-f.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5-r.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_6.cob: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_7.cob: Likewise. + * cobol.dg/group2/INSPECT_No_repeat_conversion_check.cob: Likewise. + * cobol.dg/group2/INSPECT_REPLACING_figurative_constant.cob: Likewise. + * cobol.dg/group2/INSPECT_REPLACING_LEADING_ZEROS_BY_SPACES.cob: Likewise. + * cobol.dg/group2/INSPECT_TALLYING_AFTER.cob: Likewise. + * cobol.dg/group2/INSPECT_TALLYING_BEFORE.cob: Likewise. + * cobol.dg/group2/INSPECT_TALLYING_REPLACING_ISO_Example.cob: Likewise. + * cobol.dg/group2/INSPECT_TRAILING.cob: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_LEADING.out: New known-good result. + * cobol.dg/group2/INSPECT_BACKWARD_REPLACING_TRAILING.out: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_CONVERTING.out: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_REPLACING.out: Likewise. + * cobol.dg/group2/INSPECT_BACKWARD_simple_TALLYING.out: Likewise. + * cobol.dg/group2/INSPECT_CONVERTING_TO_figurative_constants.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_1.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_2.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_3.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_4.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5-f.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_5-r.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_6.out: Likewise. + * cobol.dg/group2/INSPECT_ISO_Example_7.out: Likewise. + * cobol.dg/group2/INSPECT_TALLYING_REPLACING_ISO_Example.out: Likewise. + * cobol.dg/group2/INSPECT_TRAILING.out: Likewise. + +2025-04-03 Andrew Pinski <quic_apinski@quicinc.com> + Jakub Jelinek <jakub@redhat.com> + + PR c++/119563 + * g++.dg/cpp0x/pr119563.C: New test. + * g++.dg/cpp/embed-26.C: New test. + +2025-04-03 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.dg/guality/pr90074.c: Remove xfail for aarch64. + * gcc.dg/guality/pr90716.c: Likewise. + +2025-04-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/pr111673.c (dg-options): Add + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. + * gcc.target/i386/pr82142a.c: Likewise. + * gcc.target/i386/pr82142b.c (dg-options): Add -mno-stackrealign + -fasynchronous-unwind-tables -fdwarf2-cfi-asm. + +2025-04-03 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/riscv/rvv/base/vwaddsub-1.c: Require rv64. + +2025-04-03 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/riscv/mcpu-xiangshan-nanhu.c: Skip on non-rv64. + +2025-04-03 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/113281 + * gcc.dg/vect/costmodel/riscv/rvv/pr113281-1.c: XFAIL. + * gcc.dg/vect/costmodel/riscv/rvv/pr113281-2.c: Likewise. + * gcc.dg/vect/costmodel/riscv/rvv/pr113281-5.c: Likewise. + +2025-04-03 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/tree-ssa/ssa-dom-cse-2.c: XFAIL on riscv lp64. + +2025-04-03 Hongyu Wang <hongyu.wang@intel.com> + + PR target/119539 + * gcc.target/i386/apx-nf-pr119539.c: New test. + +2025-04-02 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/zba-shNadd-09.c: New test. + * gcc.target/riscv/zba-shNadd-10.c: New test. + +2025-04-02 John David Anglin <danglin@gcc.gnu.org> + + * g++.dg/modules/pr98893_b.C: xfail __tcf_ZL1b + assembler check on hppa*-*-hpux*. + +2025-04-02 John David Anglin <danglin@gcc.gnu.org> + + * g++.dg/abi/abi-tag18a.C: Skip on hppa*-*-hpux*. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119491 + * g++.dg/opt/musttail3.C: New test. + * g++.dg/opt/musttail4.C: New test. + * g++.dg/opt/musttail5.C: New test. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + PR c/119582 + * gcc.dg/asan/pr119582.c: New test. + +2025-04-02 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118965 + * c-c++-common/gomp/append-args-1.c: Add target/targetsync + modifiers so tests do what they were previously supposed to do. + Adjust expected output. + * c-c++-common/gomp/append-args-7.c: Likewise. + * c-c++-common/gomp/append-args-8.c: Likewise. + * c-c++-common/gomp/append-args-9.c: Likewise. + * c-c++-common/gomp/interop-1.c: Likewise. + * c-c++-common/gomp/interop-2.c: Likewise. + * c-c++-common/gomp/interop-3.c: Likewise. + * c-c++-common/gomp/interop-4.c: Likewise. + * c-c++-common/gomp/pr118965-1.c: New. + * c-c++-common/gomp/pr118965-2.c: New. + * g++.dg/gomp/append-args-1.C: Add target/targetsync modifiers + and adjust expected output. + * g++.dg/gomp/append-args-2.C: Likewise. + * g++.dg/gomp/append-args-6.C: Likewise. + * g++.dg/gomp/append-args-7.C: Likewise. + * g++.dg/gomp/append-args-8.C: Likewise. + * g++.dg/gomp/interop-5.C: Likewise. + * gfortran.dg/gomp/append_args-1.f90: Add target/targetsync + modifiers and adjust expected output. + * gfortran.dg/gomp/append_args-2.f90: Likewise. + * gfortran.dg/gomp/append_args-3.f90: Likewise. + * gfortran.dg/gomp/append_args-4.f90: Likewise. + * gfortran.dg/gomp/interop-1.f90: Likewise. + * gfortran.dg/gomp/interop-2.f90: Likewise. + * gfortran.dg/gomp/interop-3.f90: Likewise. + * gfortran.dg/gomp/interop-4.f90: Likewise. + * gfortran.dg/gomp/pr118965-1.f90: New. + * gfortran.dg/gomp/pr118965-2.f90: New. + +2025-04-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119586 + * gcc.dg/vect/pr119586.c: New testcase. + +2025-04-02 Jonathan Yong <10walls@gmail.com> + + * gcc.dg/analyzer/torture/switch-3.c: Fix llp64 warnings. + +2025-04-02 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * c-c++-common/musttail8.c: Expect a warning rather than error in one + case. + (f4): Add int * argument. + * c-c++-common/musttail15.c: Don't disallow for C++98. + * c-c++-common/musttail16.c: Likewise. + * c-c++-common/musttail17.c: Likewise. + * c-c++-common/musttail18.c: Likewise. + * c-c++-common/musttail19.c: Likewise. Expect a warning rather than + error in one case. + (f4): Add int * argument. + * c-c++-common/musttail20.c: Don't disallow for C++98. + * c-c++-common/musttail21.c: Likewise. + * c-c++-common/musttail28.c: New test. + * c-c++-common/musttail29.c: New test. + * c-c++-common/musttail30.c: New test. + * c-c++-common/musttail31.c: New test. + * g++.dg/ext/musttail1.C: New test. + * g++.dg/ext/musttail2.C: New test. + * g++.dg/ext/musttail3.C: New test. + +2025-04-02 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/119556 + * gcc.target/arm/short-vfp-1.c: Add missing spaces. + +2025-04-01 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119551 + * g++.dg/modules/internal-5_a.C: Add cases that should be + ignored. + * g++.dg/modules/internal-5_b.C: Test these new cases, and make + the testcase more robust. + * g++.dg/modules/internal-11.C: New test. + * g++.dg/modules/internal-12_a.C: New test. + * g++.dg/modules/internal-12_b.C: New test. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119493 + * gcc.dg/pr119493-1.c: New test. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119291 + * gcc.c-torture/execute/pr119291.c: New test. + +2025-04-01 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rv32i_zcmp.c: Tweak testcase for PIE. + * gcc.target/riscv/rv32e_zcmp.c: Likewise. + * gcc.target/riscv/zcmp_stack_alignment.c: Likewise. + * gcc.target/riscv/cm_mv_rv32.c: Likewise. + * gcc.target/riscv/cpymem-64.c: Likewise. + * gcc.target/riscv/fmax-snan.c: Likewise. + * gcc.target/riscv/fmaxf-snan.c: Likewise. + * gcc.target/riscv/fmin-snan.c: Likewise. + * gcc.target/riscv/fminf-snan.c: Likewise. + * gcc.target/riscv/large-model.c: Likewise. + * gcc.target/riscv/predef-1.c: Likewise. + * gcc.target/riscv/predef-4.c: Likewise. + * gcc.target/riscv/predef-7.c: Likewise. + * gcc.target/riscv/predef-9.c: Likewise. + * gcc.target/riscv/rvv/base/abi-callee-saved-2-save-restore.c: Likewise. + * gcc.target/riscv/rvv/base/abi-callee-saved-2-zcmp.c: Likewise. + * gcc.target/riscv/rvv/base/abi-callee-saved-2.c: Likewise. + * gcc.target/riscv/rvv/base/cmpmem-1.c: Likewise. + * gcc.target/riscv/rvv/base/cmpmem-3.c: Likewise. + * gcc.target/riscv/rvv/base/cmpmem-4.c: Likewise. + * gcc.target/riscv/rvv/base/cpymem-1.c: Likewise. + * gcc.target/riscv/rvv/base/movmem-1.c: Likewise. + * gcc.target/riscv/rvv/base/pr114352-3.c: Likewise. + * gcc.target/riscv/rvv/base/setmem-1.c: Likewise. + * gcc.target/riscv/rvv/base/setmem-2.c: Likewise. + * gcc.target/riscv/rvv/base/setmem-3.c: Likewise. + * gcc.target/riscv/rvv/base/spill-9.c: Likewise. + * g++.target/riscv/mv-symbols1.C: Likewise. + * g++.target/riscv/mv-symbols3.C: Likewise. + * g++.target/riscv/mv-symbols4.C: Likewise. + * g++.target/riscv/mv-symbols5.C: Likewise. + * g++.target/riscv/mvc-symbols1.C: Likewise. + * g++.target/riscv/mvc-symbols3.C: Likewise. + +2025-04-01 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119534 + * gcc.dg/vect/pr119534.c: New testcase. + +2025-04-01 Marek Polacek <polacek@redhat.com> + + PR c++/119383 + * g++.dg/cpp0x/temp-extend3.C: New test. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR gcov-profile/119535 + * c-c++-common/pr119535.c: New test. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119493 + * gcc.dg/pr119493-2.c: New test. + +2025-04-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119537 + * c-c++-common/pr119537-1.c: New test. + * c-c++-common/pr119537-2.c: New test. + +2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119369 + * g++.dg/abi/pure-virtual1.C: 'dg-xfail-if' GCN. + * g++.dg/cpp0x/pr84497.C: 'dg-skip-if' GCN. + * g++.dg/ext/weak2.C: Likewise. + * gcc.dg/attr-weakref-1.c: Likewise. + * gcc.dg/weak/weak-1.c: Likewise. + * gcc.dg/weak/weak-12.c: Likewise. + * gcc.dg/weak/weak-15.c: Likewise. + * gcc.dg/weak/weak-16.c: Likewise. + * gcc.dg/weak/weak-2.c: Likewise. + * gcc.dg/weak/weak-3.c: Likewise. + * gcc.dg/weak/weak-4.c: Likewise. + * gcc.dg/weak/weak-5.c: Likewise. + +2025-04-01 Richard Biener <rguenther@suse.de> + + PR target/119549 + * gcc.target/i386/pr119549.c: New testcase. + +2025-04-01 Liao Shihua <shihua@iscas.ac.cn> + + * gcc.target/riscv/cmo-zicbop-1.c: Fix missing { before target . + * gcc.target/riscv/cmo-zicbop-2.c: Likewise. + * gcc.target/riscv/prefetch-zicbop.c:Likewise. + * gcc.target/riscv/prefetch-zihintntl.c:Likewise. + +2025-04-01 Hu, Lin1 <lin1.hu@intel.com> + Hongyu Wang <hongyu.wang@intel.com> + + PR target/119473 + * gcc.target/i386/pr119473.c: New test. + +2025-04-01 Monk Chiang <monk.chiang@sifive.com> + Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/autovec/pr111391-2.c: Update test. + * gcc.target/riscv/rvv/base/abi-14.c: Update test. + * gcc.target/riscv/rvv/base/abi-16.c: Update test. + * gcc.target/riscv/rvv/base/abi-18.c: Update test. + * gcc.target/riscv/rvv/base/vsetvl_zve32-1.c: New test. + * gcc.target/riscv/rvv/base/vsetvl_zve32-2.c: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3613.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3606.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3605.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3614.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3615.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3563.rs: New test. + +2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro43.rs: Adjust test to pass with + name resolution 2.0. + * rust/compile/nr2/exclude: Remove macros/mbe/macro43.rs. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3588.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3552.rs: New test. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/self_import_namespace.rs: New test. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove now passing tests from exclusion + list. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3554-1.rs: New test. + * rust/compile/issue-3554-2.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 puts out a different error multiple times + * rust/compile/issue-3568.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3566-1.rs: New test. + * rust/compile/issue-3566-2.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3553.rs: New test. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3567.rs: New test. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-2905-2.rs: Import from core library into a single + file misses the crate directives. + +2025-03-31 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3242.rs: no longer skip the test + +2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-3541-1.rs: New test. + * rust/compile/issue-3541-2.rs: Likewise. + +2025-03-31 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/cfg-core1.rs: New test. + * rust/compile/cfg-core2.rs: New test. + +2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/issue-3549.rs: New test. + +2025-03-31 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/const_generics_3.rs: Modify test to run with name + resolution 2.0 only and to handle the absence of a bogus + resolution error. + * rust/compile/nr2/exclude: Remove const_generics_3.rs. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove test from exclusion list. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/issue-2330.rs: Use complete path from crate root. + * rust/compile/issue-1901.rs: Likewise. + * rust/compile/issue-1981.rs: Likewise. + * rust/compile/iterators1.rs: Likewise. + * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. + * rust/compile/for-loop1.rs: Likewise. + * rust/compile/for-loop2.rs: Likewise. + * rust/compile/torture/builtin_abort.rs: Likewise. + * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. + +2025-03-31 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/feature_rust_attri0.rs: Add extern + function declaration and change name to printf. + * rust/compile/nr2/exclude: Remove now passing test from exclusion + list. + +2025-03-31 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117002 + * gdc.dg/torture/pr117002.d: New test. + +2025-03-31 Marek Polacek <polacek@redhat.com> + + PR c++/116960 + PR c++/119303 + * g++.dg/cpp2a/lambda-uneval26.C: New test. + * g++.dg/warn/undefined2.C: New test. + +2025-03-31 Andre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.target/aarch64/no-sve-with-sme-1.c: New. + * gcc.target/aarch64/no-sve-with-sme-2.c: New. + * gcc.target/aarch64/no-sve-with-sme-3.c: New. + * gcc.target/aarch64/no-sve-with-sme-4.c: New. + * gcc.target/aarch64/pragma_cpp_predefs_4.c: Pass +sve2 to existing + +sme pragma. + * gcc.target/aarch64/sve/acle/general-c/binary_int_opt_single_n_2.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_opt_single_n_2.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_single_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_int_opt_single_1.c: + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_2.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_3.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_lane_4.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_2.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_opt_single_3.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binary_za_slice_uint_opt_single_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/binaryxn_2.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/clamp_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/compare_scalar_count_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_int_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_lane_2.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/dot_za_slice_uint_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/shift_right_imm_narrowxn_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/storexn_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/ternary_qq_or_011_lane_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_narrow_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/unary_convertxn_narrowt_1.c: + Likewise. + * gcc.target/aarch64/sve/acle/general-c/unary_za_slice_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/unaryxn_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/write_za_1.c: Likewise. + * gcc.target/aarch64/sve/acle/general-c/write_za_slice_1.c: Likewise. + +2025-03-31 Jason Merrill <jason@redhat.com> + + PR c++/119401 + * g++.dg/cpp2a/lambda-targ11.C: New test. + * g++.dg/cpp2a/lambda-targ12.C: New file. + +2025-03-31 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119532 + * gcc.dg/torture/pr119532.c: New testcase. + +2025-03-31 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/vect-fmaxmin-2.c: New compile test. Split from ... + * gcc.target/arm/vect-fmaxmin.c: ... here. Remove scan-assembler + subtests. For both, add -funsafe-math-optimizations. + +2025-03-31 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR middle-end/119442 + * gcc.target/aarch64/vls_sve_vec_dup_1.c: New test. + +2025-03-31 Jakub Jelinek <jakub@redhat.com> + + PR c++/119518 + * g++.dg/opt/pr119518.C: New test. + +2025-03-30 Jan Hubicka <hubicka@ucw.cz> + + * g++.dg/tree-ssa/pr80331.C: New test. + * g++.dg/tree-ssa/pr87502.C: New test. + +2025-03-30 Jakub Jelinek <jakub@redhat.com> + + * gcc.target/aarch64/atomic-inst-ldlogic.c: Fix another + unbalanced {} directive problem. Add space after all + scan-assembler-times counts. + +2025-03-30 Mariam Arutunian <mariamarutunian@gmail.com> + + * gcc.target/aarch64/crc-crc32c-data16.c: Fix iteration + count to match testname. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + PR target/117759 + * gcc.target/alpha/memclr-a2-o1-c9-ptr.c: Add + `-mno-safe-partial'. + * gcc.target/alpha/memclr-a2-o1-c9-ptr-safe-partial.c: New file. + * gcc.target/alpha/memcpy-di-unaligned-dst.c: New file. + * gcc.target/alpha/memcpy-di-unaligned-dst-safe-partial.c: New + file. + * gcc.target/alpha/memcpy-di-unaligned-dst-safe-partial-bwx.c: + New file. + * gcc.target/alpha/memcpy-si-unaligned-dst.c: New file. + * gcc.target/alpha/memcpy-si-unaligned-dst-safe-partial.c: New + file. + * gcc.target/alpha/memcpy-si-unaligned-dst-safe-partial-bwx.c: + New file. + * gcc.target/alpha/stlx0.c: Add `-mno-safe-partial'. + * gcc.target/alpha/stlx0-safe-partial.c: New file. + * gcc.target/alpha/stlx0-safe-partial-bwx.c: New file. + * gcc.target/alpha/stqx0.c: Add `-mno-safe-partial'. + * gcc.target/alpha/stqx0-safe-partial.c: New file. + * gcc.target/alpha/stqx0-safe-partial-bwx.c: New file. + * gcc.target/alpha/stwx0.c: Add `-mno-safe-partial'. + * gcc.target/alpha/stwx0-bwx.c: Add `-mno-safe-partial'. Refer + to stwx0.c rather than copying its code and also verify no LDQ_U + or STQ_U instructions have been produced. + * gcc.target/alpha/stwx0-safe-partial.c: New file. + * gcc.target/alpha/stwx0-safe-partial-bwx.c: New file. + +2025-03-30 Maciej W. Rozycki <macro@orcam.me.uk> + + PR target/117759 + * gcc.target/alpha/stb.c: New file. + * gcc.target/alpha/stb-bwa.c: New file. + * gcc.target/alpha/stb-bwx.c: New file. + * gcc.target/alpha/stba.c: New file. + * gcc.target/alpha/stba-bwa.c: New file. + * gcc.target/alpha/stba-bwx.c: New file. + * gcc.target/alpha/stw.c: New file. + * gcc.target/alpha/stw-bwa.c: New file. + * gcc.target/alpha/stw-bwx.c: New file. + * gcc.target/alpha/stwa.c: New file. + * gcc.target/alpha/stwa-bwa.c: New file. + * gcc.target/alpha/stwa-bwx.c: New file. + +2025-03-30 Tobias Burnus <tburnus@baylibre.com> + + * g++.dg/gomp/append-args-8.C: Remove bogus '3' after \.\[0-9\]+ + pattern. + +2025-03-29 Sam James <sam@gentoo.org> + + * gcc.target/arm/short-vfp-1.c: Add whitespace around brace. + +2025-03-29 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/friend-9_a.C: New test. + * g++.dg/modules/friend-9_b.C: New test. + +2025-03-29 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118961 + * g++.dg/modules/lto-1.h: New test. + * g++.dg/modules/lto-1_a.H: New test. + * g++.dg/modules/lto-1_b.C: New test. + * g++.dg/modules/lto-1_c.C: New test. + * g++.dg/modules/lto-2_a.H: New test. + * g++.dg/modules/lto-2_b.C: New test. + * g++.dg/modules/lto-3_a.H: New test. + * g++.dg/modules/lto-3_b.C: New test. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/opt/musttail2.C (foo): Define the function instead of + just declaring it, add [[gnu::noipa]] attribute to it. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + * lib/gfortran-dg.exp: Don't cycle through the option list if + dg-options or dg-additional-options contains -O after space, tab, + double quote or open curly bracket. + * gfortran.dg/cray_pointers_2.f90: Remove extraneous space between + dg-do and run and remove comment about it. + +2025-03-28 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119504 + * gm2/iso/fail/conststrarray2.mod: New test. + * gm2/iso/run/pass/constarray2.mod: New test. + * gm2/pim/pass/hexstring.mod: New test. + +2025-03-28 Andrew MacLeod <amacleod@redhat.com> + + * gcc.dg/pr110992.c: New. + * gcc.dg/pr119471.c: New. + +2025-03-28 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/119133 + * gcc.dg/torture/pr119133.c: Add options for float16. + +2025-03-28 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group2/Complex_EVALUATE__1_.cob: New EVALUTE testcase. + * cobol.dg/group2/Complex_EVALUATE__2_.cob: Likewise. + * cobol.dg/group2/EVALUATE_WHEN_NEGATIVE.cob: Likewise. + * cobol.dg/group2/EVALUATE_condition__2_.cob: Likewise. + * cobol.dg/group2/EVALUATE_doubled_WHEN.cob: Likewise. + * cobol.dg/group2/EVALUATE_with_WHEN_using_condition-1.cob: Likewise. + * cobol.dg/group2/Complex_EVALUATE__1_.out: Known-good data for testcase. + * cobol.dg/group2/Complex_EVALUATE__2_.out: Likewise. + * cobol.dg/group2/EVALUATE_WHEN_NEGATIVE.out: Likewise. + * cobol.dg/group2/EVALUATE_condition__2_.out: Likewise. + * cobol.dg/group2/EVALUATE_doubled_WHEN.out: Likewise. + * cobol.dg/group2/EVALUATE_with_WHEN_using_condition-1.out: Likewise. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119483 + * c-c++-common/pr119483-1.c: New test. + * c-c++-common/pr119483-2.c: New test. + +2025-03-28 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119484 + * c-c++-common/pr119484.c: New test. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.target/riscv/cmo-zicbop-1.c: Fix missing space before + trailing } in dg-do directive. + * gcc.target/riscv/cmo-zicbop-2.c: Likewise. + * gcc.target/riscv/prefetch-zicbop.c: Likewise. + * gcc.target/riscv/prefetch-zihintntl.c: Likewise. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.target/i386/strub-pr118006.c: Fix ordering of dg-do and + dg-require- directive so that dg-do is first. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.target/arm/cmse/cmse-17.c: Fix missing space before trailing + "}" in dg-options. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * gcc.target/aarch64/saturating_arithmetic_1.c: Fix dg-do compile. + * gcc.target/aarch64/saturating_arithmetic_2.c: Likewise. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * g++.dg/abi/pure-virtual1.C: Fix dg-require-weak directive. + * g++.target/i386/mangling-alias1.C: Fix dg-require-ifunc + directive. + +2025-03-27 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__1_.cob: New testcase. + * cobol.dg/group2/ACCEPT_DATE___DAY_and_intrinsic_functions__2_.cob: Likewise. + * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__1_.cob: Likewise. + * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.cob: Likewise. + * cobol.dg/group2/COMP-6_arithmetic.cob: Likewise. + * cobol.dg/group2/COMP-6_numeric_test.cob: Likewise. + * cobol.dg/group2/COMP-6_used_with_DISPLAY.cob: Likewise. + * cobol.dg/group2/COMP-6_used_with_MOVE.cob: Likewise. + * cobol.dg/group2/COMPUTE_multiplication_to_FIX4.cob: Likewise. + * cobol.dg/group2/DISPLAY__Sign_ASCII__2_.cob: Likewise. + * cobol.dg/group2/DISPLAY__Sign_ASCII.cob: Likewise. + * cobol.dg/group2/Floating_continuation_indicator__1_.cob: Likewise. + * cobol.dg/group2/floating-point_ADD_FORMAT_1.cob: Likewise. + * cobol.dg/group2/floating-point_ADD_FORMAT_2.cob: Likewise. + * cobol.dg/group2/floating-point_DIVIDE_FORMAT_1.cob: Likewise. + * cobol.dg/group2/floating-point_DIVIDE_FORMAT_2.cob: Likewise. + * cobol.dg/group2/floating-point_literals.cob: Likewise. + * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_1.cob: Likewise. + * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_2.cob: Likewise. + * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_1.cob: Likewise. + * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_2.cob: Likewise. + * cobol.dg/group2/IBM_dialect_COMP_redefined_by_POINTER_as_64-bit.cob: Likewise. + * cobol.dg/group2/Indicators_______________-____D__.cob: Likewise. + * cobol.dg/group2/MULTIPLY_to_FIX4.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_arithmetic.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__1_.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__2_.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_dump.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_numeric_test__1_.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_numeric_test__2_.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_DISPLAY.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_INITIALIZE.cob: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_MOVE.cob: Likewise. + * cobol.dg/group2/POINTER__display.cob: Likewise. + * cobol.dg/group2/Simple_floating-point_MOVE.cob: Likewise. + * cobol.dg/group2/Simple_floating-point_VALUE_and_MOVE.cob: Likewise. + * cobol.dg/group2/ACCEPT_FROM_TIME___DATE___DAY___DAY-OF-WEEK__2_.out: Known-good result. + * cobol.dg/group2/COMP-6_arithmetic.out: Likewise. + * cobol.dg/group2/COMP-6_numeric_test.out: Likewise. + * cobol.dg/group2/COMP-6_used_with_DISPLAY.out: Likewise. + * cobol.dg/group2/COMP-6_used_with_MOVE.out: Likewise. + * cobol.dg/group2/COMPUTE_multiplication_to_FIX4.out: Likewise. + * cobol.dg/group2/DISPLAY__Sign_ASCII__2_.out: Likewise. + * cobol.dg/group2/DISPLAY__Sign_ASCII.out: Likewise. + * cobol.dg/group2/Floating_continuation_indicator__1_.out: Likewise. + * cobol.dg/group2/floating-point_ADD_FORMAT_1.out: Likewise. + * cobol.dg/group2/floating-point_ADD_FORMAT_2.out: Likewise. + * cobol.dg/group2/floating-point_DIVIDE_FORMAT_1.out: Likewise. + * cobol.dg/group2/floating-point_DIVIDE_FORMAT_2.out: Likewise. + * cobol.dg/group2/floating-point_literals.out: Likewise. + * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_1.out: Likewise. + * cobol.dg/group2/floating-point_MULTIPLY_FORMAT_2.out: Likewise. + * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_1.out: Likewise. + * cobol.dg/group2/floating-point_SUBTRACT_FORMAT_2.out: Likewise. + * cobol.dg/group2/IBM_dialect_COMP_redefined_by_POINTER_as_64-bit.out: Likewise. + * cobol.dg/group2/Indicators_______________-____D__.out: Likewise. + * cobol.dg/group2/MULTIPLY_to_FIX4.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_arithmetic.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__1_.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_basic_comp-3_comp-6__2_.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_dump.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_numeric_test__1_.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_numeric_test__2_.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_DISPLAY.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_INITIALIZE.out: Likewise. + * cobol.dg/group2/PACKED-DECIMAL_used_with_MOVE.out: Likewise. + * cobol.dg/group2/POINTER__display.out: Likewise. + * cobol.dg/group2/Simple_floating-point_MOVE.out: Likewise. + * cobol.dg/group2/Simple_floating-point_VALUE_and_MOVE.out: Likewise. + +2025-03-27 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/strub-internal-pr112938.C: Add dg-warning for c++20. + +2025-03-27 Marek Polacek <polacek@redhat.com> + + * g++.dg/template/explicit-args6.C: Remove an extra set of {} in + a dg-message. + +2025-03-27 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.misc-tests/gcov-31.c: Require effective target sigsetjmp. + * gcc.misc-tests/gcov-32.c: Ditto. + +2025-03-27 Marek Polacek <polacek@redhat.com> + + * g++.dg/tree-ssa/initlist-opt2.C: Match _M_range_initialize_n + instead of _M_range_initialize. + +2025-03-27 Sam James <sam@gentoo.org> + + * gfortran.dg/cray_pointers_2.f90: Restore whitespace. + +2025-03-27 Edwin Lu <ewlu@rivosinc.com> + + * gcc.target/riscv/rvv/autovec/vls/merge-4.c: Fix typo + +2025-03-27 Sam James <sam@gentoo.org> + + * gcc.target/aarch64/atomic-inst-ldlogic.c: Add another closing brace. + +2025-03-27 Sam James <sam@gentoo.org> + + * gcc.dg/analyzer/fd-datagram-socket.c: Fix 'dg-message' spelling. + * gcc.dg/analyzer/out-of-bounds-zero.c: Fix whitespace in 'dg-additional-options'. + * gcc.dg/analyzer/strchr-1.c: Fix 'dg-message' whitespace. + * gnat.dg/sso/q11.adb: Fix 'dg-output' whitespace. + +2025-03-27 Sam James <sam@gentoo.org> + + * g++.dg/warn/Winvalid-memory-model.C: Fix typo in comment. + * gcc.dg/builtin-dynamic-object-size-19.c: Ditto. + * gcc.dg/builtin-object-size-19.c: Ditto. + * gcc.dg/strlenopt-40.c: Ditto. + * gcc.dg/strlenopt-44.c: Ditto. + * gcc.dg/strlenopt-45.c: Ditto. + * gcc.dg/strlenopt-50.c: Ditto. + * gcc.dg/strlenopt-51.c: Ditto. + * gcc.dg/strlenopt-52.c: Ditto. + * gcc.dg/strlenopt-53.c: Ditto. + * gcc.dg/strlenopt-54.c: Ditto. + * gcc.dg/strlenopt-55.c: Ditto. + * gcc.dg/strlenopt-58.c: Ditto. + * gcc.dg/strlenopt-59.c: Ditto. + * gcc.dg/strlenopt-62.c: Ditto. + * gcc.dg/strlenopt-65.c: Ditto. + * gcc.dg/strlenopt-70.c: Ditto. + * gcc.dg/strlenopt-72.c: Ditto. + * gcc.dg/strlenopt-73.c: Ditto. + * gcc.dg/strlenopt-77.c: Ditto. + * gcc.dg/strlenopt-82.c: Ditto. + * gcc.dg/tree-ssa/builtin-snprintf-4.c: Ditto. + * gcc.dg/tree-ssa/builtin-snprintf-6.c: Ditto. + * gcc.dg/tree-ssa/builtin-snprintf-7.c: Ditto. + * gcc.dg/tree-ssa/builtin-sprintf-10.c: Ditto. + * gcc.dg/tree-ssa/builtin-sprintf-9.c: Ditto. + * gcc.dg/tree-ssa/phi-opt-value-5.c: Ditto. + * lib/multiline.exp: Ditto. + * lib/target-supports.exp: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + * c-c++-common/goacc/pr69916.c: Fix unusual whitespace in dg-*. + * g++.old-deja/g++.abi/vtable2.C: Ditto. + * g++.old-deja/g++.bugs/900330_02.C: Ditto. + * g++.old-deja/g++.bugs/900406_02.C: Ditto. + * g++.old-deja/g++.bugs/900519_13.C: Ditto. + * g++.old-deja/g++.mike/p9068.C: Ditto. + * gcc.dg/20040203-1.c: Ditto. + * gcc.dg/980502-1.c: Ditto. + * gcc.dg/ipa/ipa-sra-14.c: Ditto. + * gcc.dg/pr35468.c: Ditto. + * gcc.dg/pr82597.c: Ditto. + * gcc.dg/tree-ssa/phi-opt-7.c: Ditto. + * gfortran.dg/assumed_charlen_in_main.f90: Ditto. + * gfortran.dg/cray_pointers_2.f90: Ditto. + +2025-03-27 Tobias Burnus <tburnus@baylibre.com> + + * g++.dg/gomp/append-args-1.C: Remove expected dg-sorry. + * g++.dg/gomp/append-args-8.C: New test. + +2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118920 + * g++.dg/modules/attrib-3_a.H: New test. + * g++.dg/modules/attrib-3_b.C: New test. + * g++.dg/modules/pr118920.h: New test. + * g++.dg/modules/pr118920_a.H: New test. + * g++.dg/modules/pr118920_b.H: New test. + * g++.dg/modules/pr118920_c.C: New test. + +2025-03-27 Nathaniel Shead <nathanieloshead@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/118920 + * g++.dg/modules/tpl-friend-17.h: New test. + * g++.dg/modules/tpl-friend-17_a.C: New test. + * g++.dg/modules/tpl-friend-17_b.C: New test. + +2025-03-27 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/fmaxmin.c: Move scan-assembler checks to ... + * gcc.target/arm/fmaxmin-2.c: ... here. New test. + +2025-03-27 Hu, Lin1 <lin1.hu@intel.com> + + PR target/119425 + * gcc.target/i386/pr119425.c: New test. + Co-authered-by: Hongyu Wang <hongyu.wang@intel.com> + +2025-03-27 Martin Uecker <uecker@tugraz.at> + + PR c/118765 + * gcc.dg/pr118765-2.c: New test. + * gcc.dg/pr118765-3.c: New test. + * gcc.dg/typedef-redecl3.c: New test. + +2025-03-27 Lulu Cheng <chenglulu@loongson.cn> + + PR target/119408 + * gcc.target/loongarch/pr119408.c: New test. + +2025-03-27 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/append-args-interop.c: Fix declaration of base + function to be correct for pre-C23 dialects. + +2025-03-27 Sam James <sam@gentoo.org> + + PR testsuite/119489 + * g++.dg/strub-internal-pr112938.C: Adjust pattern. + +2025-03-27 Sam James <sam@gentoo.org> + + * gcc.target/arc/taux-1.c: Add missing brace. + * gcc.target/arc/taux-2.c: Ditto. + * gcc.target/i386/addr-space-1.c: Ditto. + * gcc.target/ia64/mfused-madd-vect.c: Ditto. + * gcc.target/ia64/mfused-madd.c: Ditto. + * gcc.target/ia64/mno-fused-madd-vect.c: Ditto. + * gcc.target/ia64/mno-fused-madd.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls-vlmax/merge-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/merge-4.c: Ditto. + * gcc.target/s390/target-attribute/tattr-1.c: Ditto. + * gcc.target/s390/target-attribute/tattr-2.c: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + PR target/98743 + PR tree-optimization/105820 + * g++.dg/cpp0x/udlit-namespace-ambiguous.C: Fix whitespace. + * g++.dg/cpp2a/constexpr-init21.C: Ditto. + * g++.dg/diagnostic/wrong-tag-1.C: Ditto. + * g++.dg/init/self1.C: Ditto. + * g++.dg/opt/pr98743.C: Add missing '}' to terminate dg directive. + * g++.dg/parse/error8.C: Fix whitespace. + * g++.dg/template/explicit-args6.C: Add missing '{' to begin dg directive. + * g++.dg/template/unify9.C: Fix whitespace. + * g++.dg/tree-ssa/pr105820.C: Ditto. + * g++.dg/warn/Wmismatched-tags-8.C: Add missing braces. + * gcc.dg/cpp/cmdlne-dM-M.c: Ditto. + * gcc.dg/tree-ssa/reassoc-32.c: Ditto. + * gcc.dg/tree-ssa/reassoc-33.c: Ditto. + * gcc.dg/tree-ssa/reassoc-34.c: Ditto. + * gcc.dg/tree-ssa/reassoc-35.c: Ditto. + * gcc.dg/tree-ssa/reassoc-36.c: Ditto. + * gcc.dg/tree-ssa/reassoc-39.c: Ditto. + * gcc.dg/tree-ssa/reassoc-41.c: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + * g++.dg/diagnostic/unclosed-extern-c.C: Fix 'dg-message' typo. + * g++.dg/warn/Wno-attributes-1.C: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + * g++.dg/cpp0x/gen-attrs-6.C: Surround 'target' by whitespace. + * gcc.target/aarch64/atomic-inst-ldlogic.c: Fix 'dg-final' whitespace. + * gcc.target/arm/short-vfp-1.c: Ditto. + * gcc.target/bfin/l2.c: Fix 'dg-bfin-processors' whitespace. + * gcc.target/i386/avx512fp16-vmovw-1b.c: Surround 'target' by whitespace. + * gcc.target/i386/sse2-float16-5.c: Ditto. + * gcc.target/powerpc/fold-vec-perm-longlong.c: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + PR middle-end/93437 + * g++.dg/warn/Wstringop-overflow-5.C: Fix -Wstringop-overflow casing. + +2025-03-27 Sam James <sam@gentoo.org> + + * gfortran.dg/associate_70.f90: Replace parenthesis with '}'. + * gfortran.dg/bessel_3.f90: Drop extraneous parenthesis. + * gfortran.dg/c_funloc_tests_6.f90: Ditto. + * gfortran.dg/parity_2.f90: Ditto. + +2025-03-27 Sam James <sam@gentoo.org> + + PR ipa/98265 + * g++.dg/tree-ssa/pr98265.C: Use -std=c++14. + Use scan-tree-dump instead of scan-tree-dump-times. + +2025-03-27 Sam James <sam@gentoo.org> + + PR tree-optimization/37143 + * g++.dg/vect/pr37143.C: Move to... + * g++.dg/vect/pr37143.cc: ...here. + +2025-03-27 Sam James <sam@gentoo.org> + + PR ipa/98265 + * gcc.dg/tree-ssa/pr98265.C: Move to... + * g++.dg/tree-ssa/pr98265.C: ...here. + +2025-03-27 Sam James <sam@gentoo.org> + + PR middle-end/112938 + * g++.dg/strub-internal-pr112938.cc: Move to... + * g++.dg/strub-internal-pr112938.C: ...here. + +2025-03-26 Jørgen Kvalsvik <j@lambda.is> + + * lib/gcov.exp: Add prime paths test function. + * g++.dg/gcov/gcov-22.C: New test. + * g++.dg/gcov/gcov-23-1.h: New test. + * g++.dg/gcov/gcov-23-2.h: New test. + * g++.dg/gcov/gcov-23.C: New test. + * gcc.misc-tests/gcov-29.c: New test. + * gcc.misc-tests/gcov-30.c: New test. + * gcc.misc-tests/gcov-31.c: New test. + * gcc.misc-tests/gcov-32.c: New test. + * gcc.misc-tests/gcov-33.c: New test. + * gcc.misc-tests/gcov-34.c: New test. + +2025-03-26 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118796 + * gfortran.dg/derived_result_4.f90: New test. + +2025-03-26 David Malcolm <dmalcolm@redhat.com> + + * gcc.target/powerpc/pr70243.c: Fix missing trailing " }" in + dg-do directive. + * gcc.target/powerpc/pr91903.c: Likewise. + +2025-03-26 David Malcolm <dmalcolm@redhat.com> + + * c-c++-common/gomp/metadirective-target-device-2.c: Fix missing + trailing " }" on dg-do directive. + * gcc.dg/gomp/attrs-21.c: Likewise for dg-options. + * gcc.dg/gomp/parallel-2.c: Drop ":" from dg-message. + +2025-03-26 David Malcolm <dmalcolm@redhat.com> + + * gcc.dg/ipa/pr110377.c: Fix missing trailing " }" in dg-do + directive. + * gcc.dg/plugin/infoleak-1.c: Fix dg-bogus directive. + * gcc.dg/pr101364-1.c: Fix missing trailing " }" in dg-options + directive. + * gcc.dg/pr113207.c: Fix dg-do. + * gcc.dg/sarif-output/include-chain-2.c: Fix ordering of dg-do + and dg-require-effective-target. + * gcc.dg/strub-pr118007.c: Likewise. + * gcc.dg/tanhbysinh.c: Fix missing whitespace after opening + brace and before closing brace in 6 dg-final directives. + * gcc.dg/uninit-pred-3_c.c: Fix missing whitespace after opening + brace in 6 dg-final directive. + * gcc.dg/uninit-pred-3_d.c: Likewise. + * gcc.dg/variable-sized-type-flex-array.c: Fix missing space + between dg-bogus and message in 2 places. + +2025-03-26 Jonathan Wakely <jwakely@redhat.com> + + * g++.dg/tree-ssa/initlist-opt1.C: Match _M_range_initialize_n + instead of _M_range_initialize. + +2025-03-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * c-c++-common/gomp/metadirective-device.c + (dg-additional-options): Use on all x86 targets. Restrict to lp64. + * c-c++-common/gomp/metadirective-target-device-1.c: Likewise. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + * gfortran.dg/gomp/append-args-interop.f90: Don't use omp_lib, + instead use iso_c_binding and define omp_interop_kind parameter + locally. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119417 + * gcc.dg/torture/pr119417.c: New test. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + Andi Kleen <ak@gcc.gnu.org> + + PR gcov-profile/118442 + * c-c++-common/pr118442.c: New test. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + PR target/55583 + PR target/119465 + * gcc.target/i386/pr55583.c: Add -mno-sse -mno-mmx to + dg-additional-options. Expect 4 shrdl and 2 shldl instructions on + ia32. + +2025-03-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/pr117946.c: Require dfp support. + * gcc.target/i386/pr118017.c: Likewise. Use + dg-require-effective-target for both this and int128. + +2025-03-26 Jakub Jelinek <jakub@redhat.com> + + PR target/119450 + * gcc.target/i386/pr119450.c: New test. + +2025-03-26 Richard Biener <rguenther@suse.de> + + PR middle-end/118795 + * g++.dg/torture/pr118795.C: New testcase. + +2025-03-26 Sam James <sam@gentoo.org> + Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/119382 + * gcc.dg/ipa/ipa-icf-40.c: New test. + +2025-03-26 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-convert-1.c: Modify function name + to follow the latest version. + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + +2025-03-25 Bob Dubner <rdubner@symas.com> + Richard Biener <rguenth@suse.de> + Jakub Jelinek <jakub@redhat.com> + James K. Lowden <jklowden@cobolworx.com> + Robert Dubner <rdubher@symas.com> + + * cobol.dg/literal1.cob: New testcase. + * cobol.dg/output1.cob: Likewise + * cobol.dg/data1.cob: New file. + +2025-03-25 Marek Polacek <polacek@redhat.com> + + PR c++/101881 + * g++.dg/ext/vector44.C: New test. + +2025-03-25 Simon Martin <simon@nasilyan.com> + + PR c++/114525 + * g++.dg/expr/cond18.C: New test. + +2025-03-25 yxj-github-437 <2457369732@qq.com> + + * g++.dg/cpp2a/lambda-uneval25.C: New test. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/mtp_1.c: Require arm32. + * gcc.target/arm/mtp_2.c: Likewise. + * gcc.target/arm/mtp_3.c: Likewise. + * gcc.target/arm/mtp_4.c: Likewise. + +2025-03-25 Sandra Loosemore <sloosemore@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/append-args-1.c: Adjust expected behavior. + * c-c++-common/gomp/append-args-interop.c: New. + * c-c++-common/gomp/dispatch-11.c: Adjust expected behavior. + * g++.dg/gomp/append-args-1.C: Likewise. + * gfortran.dg/gomp/append-args-interop.f90: New. + * gfortran.dg/gomp/declare-variant-mod-2.f90: Adjust expected behavior. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/ftest-armv4t-thumb.c: Expect __ARM_FEATURE_CLZ to be + defined. Remove redundant dg-skip-if rules. + * gcc.target/arm/ftest-armv5t-thumb.c: Likewise. + * gcc.target/arm/ftest-armv5te-thumb.c: Likewise. + * gcc.target/arm/ftest-armv6-thumb.c: Likewise. + * gcc.target/arm/ftest-armv6k-thumb.c: Likewise. + * gcc.target/arm/ftest-armv6z-thumb.c: Likewise. + * gcc.target/arm/ftest-armv7em-thumb.c: Remove redundant dg-skip-if + rules. Add a require-effective-target for armv7em. + * gcc.target/arm/ftest-armv7a-arm.c: Likewise. + * gcc.target/arm/ftest-armv7a-thumb.c: Likewise. + * gcc.target/arm/ftest-armv7r-arm.c: Likewise. + * gcc.target/arm/ftest-armv7r-thumb.c: Likewise. + * gcc.target/arm/ftest-armv7ve-arm.c: Likewise. + * gcc.target/arm/ftest-armv7ve-thumb.c: Likewise. + * gcc.target/arm/ftest-armv8a-arm.c: Likewise. + * gcc.target/arm/ftest-armv8a-thumb.c: Likewise. + * gcc.target/arm/ftest-armv4-arm.c: Remove redundant dg-skip-if rules. + * gcc.target/arm/ftest-armv4t-arm.c: Likewise. + * gcc.target/arm/ftest-armv5t-arm.c: Likewise. + * gcc.target/arm/ftest-armv5te-arm.c: Likewise. + * gcc.target/arm/ftest-armv6-arm.c: Likewise. + * gcc.target/arm/ftest-armv6k-arm.c: Likewise. + * gcc.target/arm/ftest-armv6m-thumb.c: Likewise. + * gcc.target/arm/ftest-armv6t2-arm.c: Likewise. + * gcc.target/arm/ftest-armv6t2-thumb.c: Likewise. + * gcc.target/arm/ftest-armv6z-arm.c: Likewise. + +2025-03-25 Jakub Jelinek <jakub@redhat.com> + + PR target/96226 + PR target/119428 + * gcc.c-torture/execute/pr119428.c: New test. + +2025-03-25 Vineet Gupta <vineetg@rivosinc.com> + + PR target/119224 + * gcc.target/riscv/rvv/autovec/pr117722.c: Adjust output insn. + * gcc.target/riscv/rvv/autovec/pr119224.c: Add new test. + +2025-03-25 Paul-Antoine Arras <parras@baylibre.com> + + * gfortran.dg/gomp/interop-5.f90: Declare omp_interop_kind explicitly + instead of use'ing omp_lib. Update scan-dumps to allow for 4-byte + pointers. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/lto/pr96939_0.c (dg-options): Delete. Move the + options from here ... + (dg-lto-options): ... to here. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/vect-early-break-cbranch.c: Allow BEQ as well as BNE. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/pr65647.c (dg-options): Add -std=gnu17. + +2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/aarch64/advsimd-intrinsics/vabdh_f16_1.c: Remove + dg-do directive. + * gcc.target/aarch64/advsimd-intrinsics/vabsh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vaddh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcageh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcagth_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcaleh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcalth_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vceqh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vceqzh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcgeh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcgezh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcgth_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcgtzh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcleh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vclezh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vclth_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcltzh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtah_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s32_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_s64_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u32_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_f16_u64_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s32_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_s64_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u32_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_f16_u64_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_n_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvth_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtmh_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtnh_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_s64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u16_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u32_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vcvtph_u64_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vdiv_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vdivh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vduph_lane.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vfmah_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vfmas_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vfmas_n_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vfmash_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vfmsh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vld1x2.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vld1x3.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vld1x4.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmaxh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmaxnmh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmaxnmv_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmaxv_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vminh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vminnmh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vminnmv_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vminv_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmul_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulh_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulx_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulx_n_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulxh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vmulxh_lane_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vnegh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vpminmaxnm_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vqrshrn_high_n.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vqrshrun_high_n.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vqshrn_high_n.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vqshrun_high_n.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrecpeh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrecpsh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrecpxh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndah_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndi_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndih_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndmh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndnh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndph_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrndxh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrsqrteh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vrsqrtsh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vsqrt_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vsqrth_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x2.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x3.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vst1x4.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vsubh_f16_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vtrn_half.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vuzp_half.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/vzip_half.c: Likewise. + +2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/aarch64/advsimd-intrinsics/vmla_float_not_fused.c: + Remove dg-options. + * gcc.target/aarch64/advsimd-intrinsics/vmls_float_not_fused.c: + Likewise. + +2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c: Remove + dg-options. + +2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: + Move to gcc.target/aarch64/simd/. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: Likewise. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: Likewise. + * gcc.target/aarch64/simd/saturating_arithmetic_autovect.inc: New file. + * gcc.target/aarch64/simd/saturating_arithmetic_autovect_1.c: New file. + * gcc.target/aarch64/simd/saturating_arithmetic_autovect_2.c: New file. + * gcc.target/aarch64/simd/saturating_arithmetic_autovect_3.c: New file. + * gcc.target/aarch64/simd/saturating_arithmetic_autovect_4.c: New file. + +2025-03-25 Christophe Lyon <christophe.lyon@linaro.org> + + * lib/target-supports.exp + (check_effective_target_arm_v8_1_lob_ok): Remove duplicate + -mcpu=unset. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/pr42575.c: Skip test if thumb1. + +2025-03-25 Richard Earnshaw <rearnsha@arm.com> + + PR middle-end/117811 + * gcc.dg/torture/pr117811.c: New test. + +2025-03-25 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * g++.dg/torture/musttail1.C: New test. + * g++.dg/opt/musttail2.C: New test. + +2025-03-25 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119449 + * gm2/pim/pass/minmaxreal.mod: New test. + * gm2/pim/pass/minmaxreal2.mod: New test. + * gm2/pim/pass/minmaxreal3.mod: New test. + +2025-03-25 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Modify testcase. + +2025-03-24 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp26/pack-indexing16.C: New test. + +2025-03-24 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/Wbuiltin_declaration_mismatch2.d: Split test into ... + * gdc.dg/Wbuiltin_declaration_mismatch3.d: New test. + * gdc.dg/Wbuiltin_declaration_mismatch4.d: New test. + * gdc.dg/Wbuiltin_declaration_mismatch5.d: New test. + * gdc.dg/Wbuiltin_declaration_mismatch6.d: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/issue-3502.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + * rust/compile/redef_error2.rs: Modify expected error. + * rust/compile/redef_error5.rs: Likewise. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove self-path2.rs + * rust/compile/self-path2.rs: Adjust expected errors. + +2025-03-24 Ryutaro Okada <1015ryu88@gmail.com> + + * rust/compile/extern_generics.rs: New test. + +2025-03-24 Liam Naddell <liamnprg@gmail.com> + + * rust/compile/issue-3315-1.rs: Add test for module with same name + as builtin + * rust/compile/issue-3315-2.rs: Test with utilization of i32 + type + * rust/compile/nr2/exclude: issue-3315-2.rs Does not work with + NR2.0 + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/compile.exp: Adjust to cover tests in the + torture subdirectory. + * rust/compile/nr2/exclude: Add entries. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove two mangling tests from exclusion + file. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove issue-1786 and issue-3033 from + exclusion list. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/issue-3126.rs: New test. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/enum_variant_name.rs: New test. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/execute/crate-metavar1.rs: New test. + * rust/compile/crate-metavar1.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/try-expr1.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro43.rs: Adjust expected errors. + * rust/compile/macros/mbe/macro44.rs: Likewise. + * rust/compile/nested_macro_use2.rs: Likewise. + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/issue-2015.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/additional-trait-bounds2.rs: Adjust expected + errors. + * rust/compile/const_generics_4.rs: Likewise. + * rust/compile/const_generics_7.rs: Likewise. + * rust/compile/generic-default1.rs: Likewise. + * rust/compile/generics5.rs: Likewise. + * rust/compile/generics9.rs: Likewise. + * rust/compile/issue-2423.rs: Likewise. + * rust/compile/method2.rs: Likewise. + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-hash1.rs: New test. + * rust/compile/nr2/exclude: Add testcase to exclusion list. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/macros/mbe/macro-expand-module.rs: New test. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-eq-invalid.rs: Declare StructuralPartialEq. + * rust/compile/derive-partialeq1.rs: Likewise. + * rust/execute/torture/derive-partialeq1.rs: Likewise. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-eq-invalid.rs: Mark PartialEq def as a lang item. + * rust/compile/derive-partialeq1.rs: New test. + * rust/execute/torture/derive-partialeq1.rs: New test. + * rust/compile/nr2/exclude: Exclude all of them. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-eq-invalid.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Benjamin Thos <benjamin.thos@epita.fr> + + * rust/compile/implicit_returns_err3.rs: Change test to be valid. + * rust/compile/torture/if.rs: Likewise. + * rust/compile/if-without-else.rs: New test. + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/generics4.rs: cleanup + * rust/compile/generics6.rs: likewise + * rust/compile/type-bindings1.rs: likewise + * rust/compile/unconstrained_type_param.rs: likewise + * rust/compile/issue-2035.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3022.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3031.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2369.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/enum_intrinsics2.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/enum_intrinsics1.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3403.rs: New test. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/for-loop1.rs: New test. + * rust/compile/for-loop2.rs: New test. + * rust/execute/torture/for-loop1.rs: New test. + * rust/execute/torture/for-loop2.rs: New test. + * rust/compile/nr2/exclude: Exclude for-loop1.rs + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3402-1.rs: New test. + * rust/compile/issue-3402-2.rs: New test. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-default1.rs: New test. + * rust/execute/torture/derive-default1.rs: New test. + * rust/compile/nr2/exclude: Exclude them. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/issue-3381.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this. + * rust/compile/issue-3382.rs: New test. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/reference1.rs: fix error message + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive-debug1.rs: New test. + * rust/compile/nr2/exclude: Exclude it. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/structural-eq-peq.rs: New test. + +2025-03-24 Liam Naddell <liamnprg@gmail.com> + + * rust/compile/macros/builtin/option_env1.rs: Add success case for option_env + * rust/compile/macros/builtin/option_env2.rs: Add failure case for option_env + * rust/execute/torture/builtin_macro_option_env.rs: Add + execution case for option_env + * rust/compile/macros/builtin/option_env3.rs: New file. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3174.rs: New test. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove some tests. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove passing tests. + +2025-03-24 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: these tests now work it seems + +2025-03-24 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Add entries. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/try-trait.rs: New test. + +2025-03-24 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove break-rust3.rs from exclude list. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive_macro6.rs: Add lang item attribute to Copy trait. + +2025-03-24 lishin <lishin1008@gmail.com> + + * rust/compile/issue-2954.rs: New test. + +2025-03-24 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/nr2/exclude: Some parts of nr2.0 can't handle auto traits yet. + * rust/compile/auto_traits3.rs: Removed in favor of... + * rust/compile/auto_traits2.rs: ...this one. + * rust/compile/auto_traits4.rs: New test. + +2025-03-24 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/unaligned-memcpy-4.c: Tighten scan-assembler-not + pattern. + +2025-03-24 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/march-map=sm_30.c: Adjust. + * gcc.target/nvptx/march-map=sm_32.c: Likewise. + * gcc.target/nvptx/march-map=sm_35.c: Likewise. + * gcc.target/nvptx/march-map=sm_37.c: Likewise. + * gcc.target/nvptx/march-map=sm_50.c: Likewise. + * gcc.target/nvptx/march=sm_30.c: Likewise. + * gcc.target/nvptx/march=sm_35.c: Likewise. + * gcc.target/nvptx/march=sm_37.c: Likewise. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10-check.h: Change to avx10.1. + * gcc.target/i386/avx10_1-1.c: Add warning check. + * gcc.target/i386/avx10_1-10.c: Ditto. + * gcc.target/i386/avx10_1-11.c: Ditto. + * gcc.target/i386/avx10_1-12.c: Ditto. + * gcc.target/i386/avx10_1-13.c: Ditto. + * gcc.target/i386/avx10_1-15.c: Ditto. + * gcc.target/i386/avx10_1-16.c: Ditto. + * gcc.target/i386/avx10_1-18.c: Ditto. + * gcc.target/i386/avx10_1-19.c: Ditto. + * gcc.target/i386/avx10_1-2.c: Ditto. + * gcc.target/i386/avx10_1-20.c: Ditto. + * gcc.target/i386/avx10_1-21.c: Ditto. + * gcc.target/i386/avx10_1-22.c: Ditto. + * gcc.target/i386/avx10_1-23.c: Ditto. + * gcc.target/i386/avx10_1-26.c: Ditto. + * gcc.target/i386/avx10_1-3.c: Ditto. + * gcc.target/i386/avx10_1-4.c: Ditto. + * gcc.target/i386/avx10_1-7.c: Ditto. + * gcc.target/i386/avx10_1-8.c: Ditto. + * gcc.target/i386/avx10_1-9.c: Ditto. + * gcc.target/i386/noevex512-1.c: Ditto. + * gcc.target/i386/noevex512-2.c: Ditto. + * gcc.target/i386/pr111068.c: Ditto. + * gcc.target/i386/pr111907.c: Ditto. + * gcc.target/i386/pr117240_avx512f.c: Ditto. + * gcc.target/i386/pr117304-1.c: Ditto. + * gcc.target/i386/pr117946.c: Ditto. + * gcc.target/i386/avx10_1-24.c: Removed. + * gcc.target/i386/avx10_1-25.c: Removed. + * gcc.target/i386/avx10_1-5.c: Removed. + * gcc.target/i386/avx10_1-6.c: Removed. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * g++.dg/other/i386-2.C: Use -mavx10.2. + * g++.dg/other/i386-3.C: Ditto. + * gcc.target/i386/avx-1.c: Ditto. + * gcc.target/i386/avx10_2-512-bf16-1.c: Ditto. + * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: Ditto. + * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: Ditto. + * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: Ditto. + * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: Ditto. + * gcc.target/i386/avx10_2-512-convert-1.c: Ditto. + * gcc.target/i386/avx10_2-512-media-1.c: Ditto. + * gcc.target/i386/avx10_2-512-minmax-1.c: Ditto. + * gcc.target/i386/avx10_2-512-movrs-1.c: Ditto. + * gcc.target/i386/avx10_2-512-satcvt-1.c: Ditto. + * gcc.target/i386/avx10_2-512-vaddbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvt2ps2phx-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvthf82ph-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vdivbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vdpphps-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxph-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxps-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vmpsadbw-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vmulbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbssd-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbssds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbsud-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbuud-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpbuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwsud-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwusd-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwusds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwuud-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vreducebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vsubbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-bf16-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: Ditto. + * gcc.target/i386/avx10_2-builtin-1.c: Ditto. + * gcc.target/i386/avx10_2-builtin-2.c: Ditto. + * gcc.target/i386/avx10_2-comibf-1.c: Ditto. + * gcc.target/i386/avx10_2-comibf-2.c: Ditto. + * gcc.target/i386/avx10_2-comibf-3.c: Ditto. + * gcc.target/i386/avx10_2-comibf-4.c: Ditto. + * gcc.target/i386/avx10_2-compare-1.c: Ditto. + * gcc.target/i386/avx10_2-compare-1b.c: Ditto. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + * gcc.target/i386/avx10_2-media-1.c: Ditto. + * gcc.target/i386/avx10_2-minmax-1.c: Ditto. + * gcc.target/i386/avx10_2-movrs-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: Ditto. + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. + * gcc.target/i386/avx10_2-vaddbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcomisbf16-1.c: Ditto. + * gcc.target/i386/avx10_2-vcomisbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. + * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxsd-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxsh-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxss-2.c: Ditto. + * gcc.target/i386/avx10_2-vmovd-1.c: Ditto. + * gcc.target/i386/avx10_2-vmovd-2.c: Ditto. + * gcc.target/i386/avx10_2-vmovw-1.c: Ditto. + * gcc.target/i386/avx10_2-vmovw-2.c: Ditto. + * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. + * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. + * gcc.target/i386/funcspec-56.inc: Ditto. + * gcc.target/i386/part-vect-vec_cmpbf.c: Ditto. + * gcc.target/i386/pr117495.c: Ditto. + * gcc.target/i386/pr118815.c: Ditto. + * gcc.target/i386/sm4-avx10_2-1.c: Ditto. + * gcc.target/i386/sm4-avx10_2-512-1.c: Ditto. + * gcc.target/i386/sm4key4-avx10_2-512-2.c: Ditto. + * gcc.target/i386/sm4rnds4-avx10_2-512-2.c: Ditto. + * gcc.target/i386/sse-12.c: Ditto. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/vnniint16-auto-vectorize-3.c: Ditto. + * gcc.target/i386/vnniint16-auto-vectorize-4.c: Ditto. + * gcc.target/i386/vnniint8-auto-vectorize-3.c: Ditto. + * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. + * gcc.target/i386/avx10-check.h: Remove avx10.2-512 and + use avx10.2. + * gcc.target/i386/sm4-check.h: Ditto. + * lib/target-supports.exp: Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add -mavx10.2 and new builtin test. + * gcc.target/i386/avx-2.c: Ditto. + * gcc.target/i386/sse-13.c: Add new tests. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: New test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/sse-14.c: Add new macro test. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/sse-14.c: Add new macro test. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-2.c: New test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-2.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-2.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: New test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: New test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: New test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + Revert: + 2025-03-24 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx-1.c: Add new builtin test. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Add new macro test. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Add test. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Adjust condition + for rounding test. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx-1.c: Remove rounding tests. + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + +2025-03-24 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx-1.c: Remove rounding tests. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + * gcc.target/i386/avx10_2-minmax-1.c: Ditto. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + +2025-03-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119154 + * g++.dg/modules/pr119154_a.C: Move to... + * g++.dg/modules/gnu-inline-1_a.C: ...here, and add decl. + * g++.dg/modules/pr119154_b.C: Move to... + * g++.dg/modules/gnu-inline-1_b.C: here, and add check. + * g++.dg/modules/gnu-inline-1_c.C: New test. + * g++.dg/modules/gnu-inline-1_d.C: New test. + * g++.dg/modules/gnu-inline-2_a.C: New test. + * g++.dg/modules/gnu-inline-2_b.C: New test. + * g++.dg/modules/extern-tpl-3_a.C: New test. + * g++.dg/modules/extern-tpl-3_b.C: New test. + * g++.dg/modules/extern-tpl-4_a.H: New test. + * g++.dg/modules/extern-tpl-4_b.C: New test. + * g++.dg/modules/extern-tpl-4_c.C: New test. + +2025-03-23 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117621 + * gdc.dg/pr117621.d: New test. + +2025-03-22 Georg-Johann Lay <avr@gjlay.de> + + PR target/119421 + * gcc.target/avr/torture/pr119421-sreg.c: New test. + +2025-03-22 Patrick Palka <ppalka@redhat.com> + + PR c++/119379 + * g++.dg/cpp2a/class-deduction-alias24.C: New test. + +2025-03-21 Surya Kumari Jangala <jskumari@linux.ibm.com> + Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/116028 + PR rtl-optimization/118615 + * gcc.dg/ira-shrinkwrap-prep-1.c: Remove xfail for powerpc. + * gcc.dg/pr10474.c: Remove xfail for powerpc and arm. + * gcc.dg/pr118615.c: New test. + +2025-03-21 Patrick Palka <ppalka@redhat.com> + + PR c++/119378 + * g++.dg/template/friend85.C: New test. + +2025-03-21 Paul-Antoine Arras <parras@baylibre.com> + Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/interop-1.c: Remove dg-prune-output "sorry". + * c-c++-common/gomp/interop-2.c: Likewise. + * c-c++-common/gomp/interop-3.c: Likewise. + * c-c++-common/gomp/interop-4.c: Remove dg-message "not supported". + * g++.dg/gomp/interop-5.C: Likewise. + * gfortran.dg/gomp/interop-4.f90: Likewise. + * c-c++-common/gomp/interop-5.c: New test. + * gfortran.dg/gomp/interop-5.f90: New test. + +2025-03-21 Jason Merrill <jason@redhat.com> + + PR c++/114992 + * g++.target/i386/mangling-alias1.C: New test. + +2025-03-21 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/85836 + * gfortran.dg/reduce_1.f90: New test + * gfortran.dg/reduce_2.f90: New test + +2025-03-21 Richard Earnshaw <rearnsha@arm.com> + + PR target/91614 + * gcc.target/arm/unaligned-memcpy-1.c: Make the test executable. + Only scan for the absence of instructions that cannot access + misaligned data. Remove constraint of having unaligned accesses. + * gcc.target/arm/unaligned-memcpy-2.c: Likewise. + * gcc.target/arm/unaligned-memcpy-3.c: Likewise. + * gcc.target/arm/unaligned-memcpy-4.c: Likewise. + +2025-03-21 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/memcpy-aligned-1.c: Require unaligned accesses. + +2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> + + * g++.target/nvptx/alias-g++.dg_init_dtor2-2.C: New. + +2025-03-21 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/alias-unsupported-1.c: New. + +2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119380 + * gfortran.dg/proc_ptr_comp_54.f90: New test. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/nr2/exclude: Add failing lang item typepaths tests. + * rust/execute/torture/derive_macro4.rs: Mark Clone as lang item. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/nr2/exclude: + * rust/compile/derive_clone_enum1.rs: New test. + * rust/compile/derive_clone_enum2.rs: New test. + * rust/compile/derive_clone_enum3.rs: New test. + * rust/execute/torture/derive_clone_enum1.rs: New test. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive_macro4.rs: Mark Copy and Clone as lang items. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive_macro4.rs: Make PhantomData a lang item. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/derive_macro1.rs: Add #[lang = "clone"] to Clone trait. + * rust/compile/derive_macro3.rs: Likewise. + * rust/compile/derive_macro6.rs: Likewise. + * rust/execute/torture/derive_macro3.rs: Likewise. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3350.rs: New test. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/macros/builtin/eager1.rs: Switch to scan-assembler directive as the + GIMPLE dump does not contain strings on LE. + * rust/compile/macros/builtin/recurse2.rs: Likewise. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/issue-1446.rs: Add swap_bytes function. + * rust/compile/iterators1.rs: Remove unused {to, from}_le functions. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/execute/torture/builtin_macro_include_bytes.rs: needs mut + * rust/compile/mutability_checks1.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 liushuyu <liushuyu011@gmail.com> + + * rust/compile/try-catch-unwind-old.rs: add a test to test the older + try intrinsics from plain old Rust to v1.78.0 + * rust/compile/try-catch-unwind-new.rs: add a test to test the newer + catch_unwind instrinsics since Rust v1.78.0 + +2025-03-21 Nobel <nobel2073@gmail.com> + + * rust/compile/cast_float_as_integer.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/cmp1.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3046.rs: remove old error message + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3140.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/auto_traits2.rs: New test. + * rust/compile/auto_traits3.rs: New test. + * rust/compile/nr2/exclude: Add auto_traits2 test. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/auto_traits1.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Liam Naddell <liamnprg@gmail.com> + + * rust/compile/issue-3304.rs: + Add small test for generics+enums combination for NR2.0 + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/nr2/exclude: Exclude additional-trait-bounds2 for different error message. + * rust/compile/additional-trait-bounds1.rs: New test. + * rust/compile/additional-trait-bounds2.rs: New test. + * rust/compile/additional-trait-bounds2nr2.rs: New test. + +2025-03-21 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/multiline-string.rs: New test. + * rust/execute/torture/multiline-string.rs: New test. + +2025-03-21 Nobel <nobel2073@gmail.com> + + * rust/compile/ptr_int_cast.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2847.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-266.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-2394.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-1525.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 can't handle this + * rust/compile/issue-2423.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3261.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-2907.rs: New test. + +2025-03-21 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove passing tests from exclude list. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/exhaustiveness1.rs: remove bad check + * rust/compile/issue-2567-1.rs: New test. + * rust/compile/issue-2567-2.rs: New test. + * rust/compile/issue-2567-3.rs: New test. + * rust/compile/issue-3231.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-2905-1.rs: New test. + * rust/compile/issue-2905-2.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-1773.rs: new test case + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3242.rs: old test ranamed to match issue. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + * rust/link/generic_function_0.rs: No longer expect failure. + * rust/link/trait_import_0.rs: Likewise. + * rust/link/trait_import_1.rs + (trait Sized): Add. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle these + * rust/compile/issue-2953-1.rs: New test. + * rust/compile/issue-2953-2.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-2323.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3009.rs: New test. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr can't handle this + * rust/compile/issue-3033.rs: New test. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Marc Poulhiès <dkm@kataplop.net> + + * rust/compile/if_let_expr.rs: Adjust. + * rust/compile/if_let_expr_simple.rs: New test. + * rust/compile/iflet.rs: New test. + * rust/execute/torture/iflet.rs: New test. + * rust/compile/nr2/exclude: Add iflet.rs and if_let_expr_simple.rs + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/compile.exp: Handle paths using "file join" + and "file split". + * rust/compile/nr2/exclude: Remove debug-diagnostics-on.rs. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Add trailing newline along with + comment. + +2025-03-21 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-21 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3032-1.rs: New test. + * rust/compile/issue-3032-2.rs: New test. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * c-c++-common/musttail27.c: New test. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * g++.dg/opt/musttail1.C: New test. + +2025-03-21 Jakub Jelinek <jakub@redhat.com> + + PR ipa/119376 + * c-c++-common/musttail26.c: New test. + +2025-03-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119349 + * gfortran.dg/class_79.f90: New test. + +2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + Revert: + 2025-03-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/20020926-1.c: Deal with deprecation warning. + * gcc.target/s390/dwarfregtable-1.c: Ditto. + * gcc.target/s390/fp2int1.c: Ditto. + * gcc.target/s390/pr102222.c: Ditto. + * gcc.target/s390/pr106355-3.c: Ditto. + * gcc.target/s390/pr61078.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-10.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-12.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-14.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-18.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-2.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-20.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-22.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-24.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-26.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-28.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-30.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-32.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-4.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-6.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-8.c: Ditto. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Fix testcase. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. + +2025-03-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/119370 + * g++.dg/gomp/pr119370.C: New test. + +2025-03-20 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr117452.c: New test. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-satcvt-1.c: Modify intrinsic name. + * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-satcvt-1.c: Add testcase. + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttpd2dqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttpd2qqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttpd2udqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttpd2uqqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2dqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2qqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2udqs-2.c: Ditto + * gcc.target/i386/avx10_2-512-vcvttps2uqqs-2.c: Ditto + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto + * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto + * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto + * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto + * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto + * gcc.target/i386/avx10_2-vcvtps2iubs-2.c: New file. + +2025-03-20 Hu, Lin1 <lin1.hu@intel.com> + + * gcc.target/i386/avx10_2-512-satcvt-1.c: Modify intrin name. + * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. + * gcc.target/i386/sse-14.c: Ditto. + * gcc.target/i386/sse-22.c: Ditto. + +2025-03-19 Harald Anlauf <anlauf@gmx.de> + + PR fortran/116706 + * gfortran.dg/bounds_check_27.f90: New test. + +2025-03-19 Jason Merrill <jason@redhat.com> + + PR c++/119316 + * g++.dg/abi/mangle-new1.C: New test. + +2025-03-19 David Malcolm <dmalcolm@redhat.com> + + PR c/119366 + * gcc.dg/Wfatal-bad-attr-pr119366.c: New test. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + PR c/119350 + * gcc.dg/pr119350-1.c: New test. + * gcc.dg/pr119350-2.c: New test. + * gcc.dg/pr119350-3.c: New test. + +2025-03-19 Richard Biener <rguenther@suse.de> + + PR testsuite/113634 + * gcc.dg/Wfree-nonheap-object-7.c: Adjust calloc and realloc + declarations, remove -std=gnu17. + +2025-03-19 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/zvector/autovec-double-signaling-eq-z13.c: + Honour sNaNs. + +2025-03-19 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vcond-shift.c: Adapt to new match.pd + rule and change scan-assembler-times for shifts. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove issue-1089.rs. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_parse_operand.rs: + Remove inout, functionality not supported. Remove redundant {} + * rust/execute/torture/inline_asm_mov_x_5_ARM.rs: Add operand in + * rust/execute/torture/inline_asm_mov_x_5_x86_64.rs: Likewise + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove + inline_asm_parse_output_operand.rs. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove type-alias1.rs. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove shadow1.rs. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-2499.rs: New test. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: + * rust/compile/issue-2203.rs: New test. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 is crashing here + * rust/compile/issue-2951.rs: New test. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3036.rs: New test. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/issue-3139-1.rs: New test. + * rust/compile/issue-3139-2.rs: New test. + * rust/compile/issue-3139-3.rs: New test. + * rust/compile/nr2/exclude: these all break nr2 + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove cast_generics.rs, issue-1131.rs, + issue-1383.rs and unsafe10.rs + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/box_syntax_feature_gate.rs: Add box land item + definition. + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/functions_without_body.rs: Add compile step argument. + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/nr2/exclude: Remove working tests from nr2 exclude list. + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/name_resolution21.rs: Move to... + * rust/compile/xfail/name_resolution21.rs: ...here. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3082.rs: New test. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3035.rs: New test. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/exclude: Remove entries. + +2025-03-19 Philip Herron <herron.philip@googlemail.com> + + * rust/compile/nr2/exclude: nr2 cant handle this + * rust/compile/issue-3030.rs: New test. + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/nr2/compile.exp: New test. + * rust/compile/nr2/exclude: New. + +2025-03-19 JoanVC <github-91yu@joanvc.cat> + + * rust/compile/issue-3141.rs: New test. + +2025-03-19 benjamin.thos <benjamin.thos@epita.fr> + + * rust/compile/auto_trait_super_trait.rs: Add feature attribute. + * rust/compile/generic_auto_trait.rs: likewise. + * rust/compile/auto_trait.rs: add test for error without + feature attribute + +2025-03-19 Raiki Tamura <tamaron1203@gmail.com> + + * rust/compile/exhaustiveness1.rs: New test. + * rust/compile/exhaustiveness2.rs: New test. + * rust/compile/exhaustiveness3.rs: New test. + +2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/trait13.rs: + Add test for supertraits of supertraits + * rust/compile/trait14.rs: + Diamond problem with supertraits test + * rust/execute/torture/trait14.rs: + Add test for dynamic dispatch with supertraits + * rust/execute/torture/trait15.rs: + Add test for dynamic dispatch with generics + * rust/execute/torture/trait16.rs: + Add test for dynamic dispatch with lifetime params 1 + * rust/execute/torture/trait17.rs: + Add test for dynamic dispatch with lifetime params 2 + * rust/execute/torture/trait18.rs: + Add test for default implementations with dynamic dispatch and + supertraits + +2025-03-19 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/v0-mangle1.rs: Make v0-mangle test more crate_num + agnostic. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/execute/torture/inline_asm_mov_x_5.rs: Move to... + * rust/execute/torture/inline_asm_mov_x_5_ARM.rs: ...here. + * rust/execute/torture/inline_asm_mov_x_5_x86_64.rs: New test. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_typecheck.rs: Change comments + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/execute/inline_asm_mov_x_5.rs: Move to... + * rust/execute/torture/inline_asm_mov_x_5.rs: ...here. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_parse_operand.rs: Fix format asm + * rust/compile/inline_asm_parse_output_operand.rs: + Fix format asm + * rust/execute/torture/inline_asm_mov_x_5.rs: Move to... + * rust/execute/inline_asm_mov_x_5.rs: ...here. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_typecheck.rs: New test. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/execute/torture/inline_asm_mov_x_5.rs: New test. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_parse_output_operand.rs: New test. + +2025-03-19 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_compile_nop.rs: New test. + +2025-03-19 Raiki Tamura <tamaron1203@gmail.com> + + * rust/compile/issue-2324-2.rs: Fix error message. + * rust/compile/match9.rs: New test. + +2025-03-19 Raiki Tamura <tamaron1203@gmail.com> + + * rust/compile/match8.rs: New test. + +2025-03-19 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/assume.rs: Add missing feature attribute. + * rust/compile/issue-1901.rs: Likewise. + * rust/compile/issue-1981.rs: Likewise. + * rust/compile/sizeof-stray-infer-var-bug.rs: Likewise. + * rust/compile/torture/intrinsics-8.rs: Likewise. + * rust/compile/torture/transmute-size-check-1.rs: Likewise. + * rust/compile/torture/transmute1.rs: Likewise. + * rust/compile/torture/uninit-intrinsic-1.rs: Likewise. + * rust/execute/torture/issue-1436.rs: Likewise. + * rust/execute/torture/issue-2583.rs: Likewise. + +2025-03-19 Arthur Cohen <arthur.cohen@embecosm.com> + + * rust/compile/prelude_import.rs: New test. + +2025-03-19 Muhammad Mahad <mahadtxt@gmail.com> + + * rust/compile/nonexistent-field.rs: New test. + +2025-03-19 Kushal Pal <kushalpal109@gmail.com> + + * rust/borrowck/test_move.rs: Test rich-errors related to moves. + * rust/borrowck/test_move_conditional.rs: Likewise. + +2025-03-19 Kushal Pal <kushalpal109@gmail.com> + + * rust/borrowck/subset.rs: Better subset errors. + +2025-03-19 Kushal Pal <kushalpal109@gmail.com> + + * rust/borrowck/test_move.rs: Assigning `a` to `c` is the + correct way to test the behaviour. + +2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/issue-2324-1.rs: + add test for E0532 with tuple enum variant + * rust/compile/issue-2324-2.rs: + add test for E0532 with struct enum variant + +2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/macros/builtin/include1.rs: + add basic include test at global scope + * rust/compile/macros/builtin/include2.rs: + add basic include test at local scope with expression + * rust/compile/macros/builtin/include3.rs: + add eager expansion test at global scope + * rust/compile/macros/builtin/include4.rs: + add eager expansion test at local scope with expression + * rust/compile/macros/builtin/include_bytes.rs: + add eager expansion test at global scope + * rust/compile/macros/builtin/include_rs: + supporting test file with dummy function + * rust/compile/macros/builtin/include_rs2: + supporting test file with dummy string + * rust/compile/macros/builtin/include_str.rs: + add eager expansion test at global scope + * rust/execute/torture/builtin_macro_include_bytes.rs: + clean up old test logic, add permutations for eager expansion + * rust/execute/torture/builtin_macro_include_str.rs: + add eager expansion permutations + +2025-03-19 Kushal Pal <kushalpal109@gmail.com> + + * rust/borrowck/reference.rs: Test rich errors for + borrow-checker. + * rust/borrowck/return_ref_to_local.rs: Likewise. + * rust/borrowck/tmp.rs: Likewise. + * rust/borrowck/use_while_mut.rs: Likewise. + * rust/borrowck/use_while_mut_fr.rs: Likewise. + * rust/borrowck/well_formed_function_inputs.rs: Likewise. + +2025-03-19 badumbatish <tanghocle456@gmail.com> + + * rust/compile/inline_asm_illegal_operands.rs: Test now passing + * rust/compile/inline_asm_parse_operand.rs: Remove _, not + supported right now + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/macro-delim.rs: Move to... + * rust/compile/macros/mbe/macro-delim.rs: ...here. + * rust/compile/macro-issue1053-2.rs: Move to... + * rust/compile/macros/mbe/macro-issue1053-2.rs: ...here. + * rust/compile/macro-issue1053.rs: Move to... + * rust/compile/macros/mbe/macro-issue1053.rs: ...here. + * rust/compile/macro-issue1224.rs: Move to... + * rust/compile/macros/mbe/macro-issue1224.rs: ...here. + * rust/compile/macro-issue1233.rs: Move to... + * rust/compile/macros/mbe/macro-issue1233.rs: ...here. + * rust/compile/macro-issue1395-2.rs: Move to... + * rust/compile/macros/mbe/macro-issue1395-2.rs: ...here. + * rust/compile/macro-issue1395.rs: Move to... + * rust/compile/macros/mbe/macro-issue1395.rs: ...here. + * rust/compile/macro-issue1400-2.rs: Move to... + * rust/compile/macros/mbe/macro-issue1400-2.rs: ...here. + * rust/compile/macro-issue1400.rs: Move to... + * rust/compile/macros/mbe/macro-issue1400.rs: ...here. + * rust/compile/macro-issue2092.rs: Move to... + * rust/compile/macros/mbe/macro-issue2092.rs: ...here. + * rust/compile/macro-issue2192.rs: Move to... + * rust/compile/macros/mbe/macro-issue2192.rs: ...here. + * rust/compile/macro-issue2194.rs: Move to... + * rust/compile/macros/mbe/macro-issue2194.rs: ...here. + * rust/compile/macro-issue2229.rs: Move to... + * rust/compile/macros/mbe/macro-issue2229.rs: ...here. + * rust/compile/macro-issue2264.rs: Move to... + * rust/compile/macros/mbe/macro-issue2264.rs: ...here. + * rust/compile/macro-issue2268.rs: Move to... + * rust/compile/macros/mbe/macro-issue2268.rs: ...here. + * rust/compile/macro-issue2273.rs: Move to... + * rust/compile/macros/mbe/macro-issue2273.rs: ...here. + * rust/compile/macro-issue2653.rs: Move to... + * rust/compile/macros/mbe/macro-issue2653.rs: ...here. + * rust/compile/macro-issue2983_2984.rs: Move to... + * rust/compile/macros/mbe/macro-issue2983_2984.rs: ...here. + * rust/compile/macro1.rs: Move to... + * rust/compile/macros/mbe/macro1.rs: ...here. + * rust/compile/macro10.rs: Move to... + * rust/compile/macros/mbe/macro10.rs: ...here. + * rust/compile/macro11.rs: Move to... + * rust/compile/macros/mbe/macro11.rs: ...here. + * rust/compile/macro12.rs: Move to... + * rust/compile/macros/mbe/macro12.rs: ...here. + * rust/compile/macro13.rs: Move to... + * rust/compile/macros/mbe/macro13.rs: ...here. + * rust/compile/macro14.rs: Move to... + * rust/compile/macros/mbe/macro14.rs: ...here. + * rust/compile/macro15.rs: Move to... + * rust/compile/macros/mbe/macro15.rs: ...here. + * rust/compile/macro16.rs: Move to... + * rust/compile/macros/mbe/macro16.rs: ...here. + * rust/compile/macro17.rs: Move to... + * rust/compile/macros/mbe/macro17.rs: ...here. + * rust/compile/macro18.rs: Move to... + * rust/compile/macros/mbe/macro18.rs: ...here. + * rust/compile/macro19.rs: Move to... + * rust/compile/macros/mbe/macro19.rs: ...here. + * rust/compile/macro2.rs: Move to... + * rust/compile/macros/mbe/macro2.rs: ...here. + * rust/compile/macro20.rs: Move to... + * rust/compile/macros/mbe/macro20.rs: ...here. + * rust/compile/macro21.rs: Move to... + * rust/compile/macros/mbe/macro21.rs: ...here. + * rust/compile/macro22.rs: Move to... + * rust/compile/macros/mbe/macro22.rs: ...here. + * rust/compile/macro23.rs: Move to... + * rust/compile/macros/mbe/macro23.rs: ...here. + * rust/compile/macro25.rs: Move to... + * rust/compile/macros/mbe/macro25.rs: ...here. + * rust/compile/macro26.rs: Move to... + * rust/compile/macros/mbe/macro26.rs: ...here. + * rust/compile/macro27.rs: Move to... + * rust/compile/macros/mbe/macro27.rs: ...here. + * rust/compile/macro28.rs: Move to... + * rust/compile/macros/mbe/macro28.rs: ...here. + * rust/compile/macro29.rs: Move to... + * rust/compile/macros/mbe/macro29.rs: ...here. + * rust/compile/macro3.rs: Move to... + * rust/compile/macros/mbe/macro3.rs: ...here. + * rust/compile/macro30.rs: Move to... + * rust/compile/macros/mbe/macro30.rs: ...here. + * rust/compile/macro31.rs: Move to... + * rust/compile/macros/mbe/macro31.rs: ...here. + * rust/compile/macro32.rs: Move to... + * rust/compile/macros/mbe/macro32.rs: ...here. + * rust/compile/macro33.rs: Move to... + * rust/compile/macros/mbe/macro33.rs: ...here. + * rust/compile/macro34.rs: Move to... + * rust/compile/macros/mbe/macro34.rs: ...here. + * rust/compile/macro35.rs: Move to... + * rust/compile/macros/mbe/macro35.rs: ...here. + * rust/compile/macro36.rs: Move to... + * rust/compile/macros/mbe/macro36.rs: ...here. + * rust/compile/macro37.rs: Move to... + * rust/compile/macros/mbe/macro37.rs: ...here. + * rust/compile/macro38.rs: Move to... + * rust/compile/macros/mbe/macro38.rs: ...here. + * rust/compile/macro39.rs: Move to... + * rust/compile/macros/mbe/macro39.rs: ...here. + * rust/compile/macro4.rs: Move to... + * rust/compile/macros/mbe/macro4.rs: ...here. + * rust/compile/macro40.rs: Move to... + * rust/compile/macros/mbe/macro40.rs: ...here. + * rust/compile/macro41.rs: Move to... + * rust/compile/macros/mbe/macro41.rs: ...here. + * rust/compile/macro42.rs: Move to... + * rust/compile/macros/mbe/macro42.rs: ...here. + * rust/compile/macro43.rs: Move to... + * rust/compile/macros/mbe/macro43.rs: ...here. + * rust/compile/macro44.rs: Move to... + * rust/compile/macros/mbe/macro44.rs: ...here. + * rust/compile/macro45.rs: Move to... + * rust/compile/macros/mbe/macro45.rs: ...here. + * rust/compile/macro46.rs: Move to... + * rust/compile/macros/mbe/macro46.rs: ...here. + * rust/compile/macro47.rs: Move to... + * rust/compile/macros/mbe/macro47.rs: ...here. + * rust/compile/macro48.rs: Move to... + * rust/compile/macros/mbe/macro48.rs: ...here. + * rust/compile/macro49.rs: Move to... + * rust/compile/macros/mbe/macro49.rs: ...here. + * rust/compile/macro5.rs: Move to... + * rust/compile/macros/mbe/macro5.rs: ...here. + * rust/compile/macro50.rs: Move to... + * rust/compile/macros/mbe/macro50.rs: ...here. + * rust/compile/macro51.rs: Move to... + * rust/compile/macros/mbe/macro51.rs: ...here. + * rust/compile/macro52.rs: Move to... + * rust/compile/macros/mbe/macro52.rs: ...here. + * rust/compile/macro53.rs: Move to... + * rust/compile/macros/mbe/macro53.rs: ...here. + * rust/compile/macro54.rs: Move to... + * rust/compile/macros/mbe/macro54.rs: ...here. + * rust/compile/macro55.rs: Move to... + * rust/compile/macros/mbe/macro55.rs: ...here. + * rust/compile/macro56.rs: Move to... + * rust/compile/macros/mbe/macro56.rs: ...here. + * rust/compile/macro57.rs: Move to... + * rust/compile/macros/mbe/macro57.rs: ...here. + * rust/compile/macro6.rs: Move to... + * rust/compile/macros/mbe/macro6.rs: ...here. + * rust/compile/macro7.rs: Move to... + * rust/compile/macros/mbe/macro7.rs: ...here. + * rust/compile/macro8.rs: Move to... + * rust/compile/macros/mbe/macro8.rs: ...here. + * rust/compile/macro9.rs: Move to... + * rust/compile/macros/mbe/macro9.rs: ...here. + * rust/compile/macro_call_statement.rs: Move to... + * rust/compile/macros/mbe/macro_call_statement.rs: ...here. + * rust/compile/macro_export_1.rs: Move to... + * rust/compile/macros/mbe/macro_export_1.rs: ...here. + * rust/compile/macro_return.rs: Move to... + * rust/compile/macros/mbe/macro_return.rs: ...here. + * rust/compile/macro_rules_macro_rules.rs: Move to... + * rust/compile/macros/mbe/macro_rules_macro_rules.rs: ...here. + * rust/compile/macro_use1.rs: Move to... + * rust/compile/macros/mbe/macro_use1.rs: ...here. + * rust/compile/macros/mbe/mbe_macro.exp: New test. + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/builtin_macro_compile_error.rs: Move to... + * rust/compile/macros/builtin/compile_error.rs: ...here. + * rust/compile/builtin_macro_concat.rs: Move to... + * rust/compile/macros/builtin/concat.rs: ...here. + * rust/compile/builtin_macro_eager1.rs: Move to... + * rust/compile/macros/builtin/eager1.rs: ...here. + * rust/compile/builtin_macro_eager2.rs: Move to... + * rust/compile/macros/builtin/eager2.rs: ...here. + * rust/compile/builtin_macro_eager3.rs: Move to... + * rust/compile/macros/builtin/eager3.rs: ...here. + * rust/compile/builtin_macro_env.rs: Move to... + * rust/compile/macros/builtin/env.rs: ...here. + * rust/compile/builtin_macro_include_bytes.rs: Move to... + * rust/compile/macros/builtin/include_bytes.rs: ...here. + * rust/compile/builtin_macro_include_bytes_location_info.rs: Move to... + * rust/compile/macros/builtin/include_bytes_location_info.rs: ...here. + * rust/compile/builtin_macro_include_str.rs: Move to... + * rust/compile/macros/builtin/include_str.rs: ...here. + * rust/compile/builtin_macro_include_str_location_info.rs: Move to... + * rust/compile/macros/builtin/include_str_location_info.rs: ...here. + * rust/compile/builtin_macro_not_found.rs: Move to... + * rust/compile/macros/builtin/not_found.rs: ...here. + * rust/compile/builtin_macro_recurse2.rs: Move to... + * rust/compile/macros/builtin/recurse2.rs: ...here. + * rust/compile/macros/builtin/builtin_macro.exp: New test. + * rust/compile/invalid_utf8: Move invalid-utf8 data to... + * rust/compile/macros/builtin/invalid_utf8: ...here. + +2025-03-19 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/macros/proc/proc_macro.exp: New deja gnu file to execute + proc-macro tests. + * rust/compile/proc_macro_attribute_crate_type.rs: Move to... + * rust/compile/macros/proc/attribute_crate_type.rs: ...here. + * rust/compile/proc_macro_attribute_non_function.rs: Move to... + * rust/compile/macros/proc/attribute_non_function.rs: ...here. + * rust/compile/proc_macro_attribute_non_root_function.rs: Move to... + * rust/compile/macros/proc/attribute_non_root_function.rs: ...here. + * rust/compile/proc_macro_attribute_non_root_method.rs: Move to... + * rust/compile/macros/proc/attribute_non_root_method.rs: ...here. + * rust/compile/proc_macro_attribute_non_root_module.rs: Move to... + * rust/compile/macros/proc/attribute_non_root_module.rs: ...here. + * rust/compile/proc_macro_attribute_private.rs: Move to... + * rust/compile/macros/proc/attribute_private.rs: ...here. + * rust/compile/proc_macro_crate_type.rs: Move to... + * rust/compile/macros/proc/crate_type.rs: ...here. + * rust/compile/proc_macro_derive_crate_type.rs: Move to... + * rust/compile/macros/proc/derive_crate_type.rs: ...here. + * rust/compile/proc_macro_derive_malformed.rs: Move to... + * rust/compile/macros/proc/derive_malformed.rs: ...here. + * rust/compile/proc_macro_derive_non_function.rs: Move to... + * rust/compile/macros/proc/derive_non_function.rs: ...here. + * rust/compile/proc_macro_derive_non_root_function.rs: Move to... + * rust/compile/macros/proc/derive_non_root_function.rs: ...here. + * rust/compile/proc_macro_derive_non_root_module.rs: Move to... + * rust/compile/macros/proc/derive_non_root_module.rs: ...here. + * rust/compile/proc_macro_derive_private.rs: Move to... + * rust/compile/macros/proc/derive_private.rs: ...here. + * rust/compile/proc_macro_non_function.rs: Move to... + * rust/compile/macros/proc/non_function.rs: ...here. + * rust/compile/proc_macro_non_root_function.rs: Move to... + * rust/compile/macros/proc/non_root_function.rs: ...here. + * rust/compile/proc_macro_non_root_method.rs: Move to... + * rust/compile/macros/proc/non_root_method.rs: ...here. + * rust/compile/proc_macro_non_root_module.rs: Move to... + * rust/compile/macros/proc/non_root_module.rs: ...here. + * rust/compile/proc_macro_derive_non_root_method.rs: Move to... + * rust/compile/macros/proc/non_root_trait_method.rs: ...here. + * rust/compile/proc_macro_private.rs: Move to... + * rust/compile/macros/proc/private.rs: ...here. + * rust/compile/proc_macro_pub_function.rs: Move to... + * rust/compile/macros/proc/pub_function.rs: ...here. + * rust/compile/proc_macro_pub_module.rs: Move to... + * rust/compile/macros/proc/pub_module.rs: ...here. + +2025-03-19 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/issue-3045-1.rs: + Add test for #[may_dangle] Generic Type triggering error + * rust/compile/issue-3045-2.rs: + Add test for #[may_dangle] Lifetime triggering error + +2025-03-19 Muhammad Mahad <mahadtxt@gmail.com> + + * rust/rustc/README.md: information about + rustc external directory. + * rust/rustc/rustc.exp: New test. + +2025-03-19 Antonio Gomes <antoniospg100@gmail.com> + + * rust/compile/macro-issue2983_2984.rs: + Add test to check for correct stripped fields + +2025-03-19 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/119272 + * gfortran.dg/associate_74.f90: New test. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + PR target/119357 + * gcc.target/i386/avx512vlbw-pr119357.c: New test. + +2025-03-19 Tamar Christina <tamar.christina@arm.com> + + PR target/119286 + * gcc.dg/vect/bb-slp-41.c: Add pragma novector. + * gcc.dg/vect/vect-early-break_133_pfa11.c: Should never vectorize today + as indexes can be out of range. + * gcc.dg/vect/vect-early-break_128.c: Require load_lanes as well. + * gcc.dg/vect/vect-early-break_133_pfa10.c: Likewise. + * gcc.dg/vect/vect-early-break_133_pfa8.c: Likewise. + * gcc.dg/vect/vect-early-break_133_pfa9.c: Likewise. + * gcc.dg/vect/vect-early-break_22.c: Likewise. + * gcc.dg/vect/vect-early-break_26.c: Likewise. + * gcc.dg/vect/vect-early-break_43.c: Likewise. + * gcc.dg/vect/vect-early-break_44.c: Likewise. + * gcc.dg/vect/vect-early-break_6.c: Likewise. + * gcc.dg/vect/vect-early-break_56.c: Expect failures on group misalign. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/pr: Remove. + +2025-03-19 Jakub Jelinek <jakub@redhat.com> + + PR target/118068 + * g++.target/i386/pr118068.C: New test. + +2025-03-19 Martin Uecker <uecker@tugraz.at> + + PR c/118765 + * gcc.dg/pr118765.c: New test. + +2025-03-19 Martin Uecker <uecker@tugraz.at> + + PR c/118061 + * gcc.dg/pr118061.c: New test. + +2025-03-19 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/generic_inst14.adb: New test. + * gnat.dg/generic_inst14_pkg.ads: New helper. + * gnat.dg/generic_inst14_pkg-child.ads: Likewise. + +2025-03-19 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/regname-float-abi.c: New test. + +2025-03-19 liuhongt <hongtao.liu@intel.com> + + PR target/117069 + * gcc.target/i386/apx-ndd-tls-1b.c: Add xfail. + +2025-03-18 Marek Polacek <polacek@redhat.com> + + PR c++/119344 + * g++.dg/conversion/ptrmem10.C: New test. + +2025-03-18 Jason Merrill <jason@redhat.com> + + PR c++/119194 + * g++.dg/template/linkage7.C: New test. + +2025-03-18 Marek Polacek <polacek@redhat.com> + + PR c++/118104 + * g++.dg/cpp0x/alias-decl-variadic3.C: New test. + +2025-03-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119338 + * gfortran.dg/deferred_character_18.f90: Adjust testcase. + * gfortran.dg/allocate_assumed_charlen_5.f90: New test. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR c/119311 + * c-c++-common/musttail14.c: Use * instead of \* in the regexps. + * c-c++-common/musttail25.c: New test. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR c/116545 + * c-c++-common/attr-fallthrough-2.c: Adjust expected diagnostics + for C++. + * c-c++-common/musttail15.c: New test. + * c-c++-common/musttail16.c: New test. + * c-c++-common/musttail17.c: New test. + * c-c++-common/musttail18.c: New test. + * c-c++-common/musttail19.c: New test. + * c-c++-common/musttail20.c: New test. + * c-c++-common/musttail21.c: New test. + * c-c++-common/musttail22.c: New test. + * c-c++-common/musttail23.c: New test. + * c-c++-common/musttail24.c: New test. + * g++.dg/musttail7.C: New test. + * g++.dg/musttail8.C: New test. + * g++.dg/musttail12.C: New test. + * g++.dg/musttail13.C: New test. + * g++.dg/musttail14.C: New test. + * g++.dg/ext/pr116545.C: New test. + +2025-03-18 Bob Dubner <rdubner@symas.com> + + * cobol.dg/group1/check_88.cob: New testcase. + * cobol.dg/group1/comp5.cob: Likewise. + * cobol.dg/group1/declarative_1.cob: Likewise. + * cobol.dg/group1/display.cob: Likewise. + * cobol.dg/group1/display2.cob: Likewise. + * cobol.dg/group1/line-sequential.cob: Likewise. + * cobol.dg/group1/multiple-compares.cob: Likewise. + * cobol.dg/group1/multiply2.cob: Likewise. + * cobol.dg/group1/packed.cob: Likewise. + * cobol.dg/group1/perform-nested-exit.cob: Likewise. + * cobol.dg/group1/pointer1.cob: Likewise. + * cobol.dg/group1/simple-arithmetic.cob: Likewise. + * cobol.dg/group1/simple-classes.cob: Likewise. + * cobol.dg/group1/simple-if.cob: Likewise. + * cobol.dg/group1/simple-perform.cob: Likewise. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + * lib/gcc-dg.exp (${tool}-load): If output-file is set, compare + combined output against content of the [lindex ${output-file} 1] + file. + (dg-output-file): New directive. + * lib/dg-test-cleanup.exp (cleanup-after-saved-dg-test): Clear + output-file variable. + * gcc.dg/dg-output-file-1.c: New test. + * gcc.dg/dg-output-file-1-lp64.txt: New test. + * gcc.dg/dg-output-file-1-ilp32.txt: New test. + +2025-03-18 Patrick Palka <ppalka@redhat.com> + + PR c++/119233 + * g++.dg/template/fn-ptr5.C: New test. + +2025-03-18 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119307 + * gcc.target/i386/pr119307.c: New test. + +2025-03-18 Richard Biener <rguenther@suse.de> + + PR debug/101533 + * g++.dg/debug/pr101533.C: New testcase. + +2025-03-18 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx512f-pr103750-1.c: Remove XFAIL. + * gcc.target/i386/avx512f-pr103750-2.c: Ditto. + * gcc.target/i386/avx512fp16-pr103750-1.c: Ditto. + * gcc.target/i386/avx512fp16-pr103750-2.c: Ditto. + +2025-03-18 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/redundant-andi-2.c: New test. + +2025-03-17 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/redundant-andi.c: New test. + * gcc.target/riscv/redundant-ori.c: Likewise + +2025-03-17 H.J. Lu <hjl.tools@gmail.com> + + * gcc.dg/pr90838-2.c (ctz4): Replace long with long long. + +2025-03-17 Muhammad Mahad <mahadtxt@gmail.com> + + * rust/compile/unknown-associated-item.rs: New test. + +2025-03-17 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/issue-2987.rs: + Add test for deriving Clone and Copy at the same time + +2025-03-17 Liam Naddell <liam.naddell@mail.utoronto.ca> + + * rust/compile/issue-3046.rs: + Add test for new error message + +2025-03-17 badumbatish <tanghocle456@gmail.com> + + * rust/execute/torture/issue-2187.rs: + Update pattern with \r* for dg-output tests + * rust/execute/xfail/macro1.rs: Likewise + +2025-03-17 Antonio Gomes <antoniospg100@gmail.com> + + * rust/compile/shadow1.rs: Fix test for new error message + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_illegal_options.rs: new test + * rust/compile/inline_asm_illegal_operands.rs: New test. + This is expected to fail but we couldn't resolve parse_expr()'s + general functionality yet + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_outside_unsafe.rs: New test. + +2025-03-17 dave <dave@dmetwo.org> + + * rust/compile/issue-2725.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_parse_operand.rs: fix warnings + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_parse_operand.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_illegal_options.rs: + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_faulty_clobber.rs: compress + the test + * rust/compile/inline_asm_nop.rs: compress + the test + * rust/compile/inline_asm_faulty_clobber_1.rs: Removed. + * rust/compile/inline_asm_faulty_clobber_2.rs: Removed. + * rust/compile/inline_asm_nop_2.rs: Removed. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_faulty_clobber.rs: Likewise. + * rust/compile/inline_asm_faulty_clobber_1.rs: Likewise. + * rust/compile/inline_asm_faulty_clobber_2.rs: Likewise. + * rust/compile/inline_asm_illegal_options.rs: Likewise. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_illegal_options.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_faulty_clobber.rs: + Wraps inline_asm tests in unsafe {} + * rust/compile/inline_asm_faulty_clobber_1.rs: likewise. + * rust/compile/inline_asm_faulty_clobber_2.rs: likewise. + * rust/compile/inline_asm_ident_first.rs: likewise. + * rust/compile/inline_asm_nop.rs: likewise. + * rust/compile/inline_asm_nop_2.rs: likewise. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_legal_options.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_faulty_clobber.rs: New test. + * rust/compile/inline_asm_faulty_clobber_1.rs: New test. + * rust/compile/inline_asm_faulty_clobber_2.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_nop_2.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_ident_first.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/inline_asm_nop.rs: Simple test for asm! + +2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/exclusive_range_pattern.rs: New test. + * rust/compile/exclusive_range_pattern_feature_gate.rs: New test. + +2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/not_raw_ref_op.rs: New test. + * rust/compile/raw_ref_op.rs: New test. + * rust/compile/raw_ref_op_feature_gate.rs: New test. + * rust/compile/raw_ref_op_invalid.rs: New test. + +2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/struct_expr_field_attributes.rs: New test. + +2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/dropck_eyepatch_feature_gate.rs: New test. + * rust/compile/may_dangle.rs: New test. + +2025-03-17 Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> + + * rust/compile/box_syntax.rs: New test. + * rust/compile/box_syntax_feature_gate.rs: New test. + +2025-03-17 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/rustc_const_stable.rs: + Enable feature rustc_attrs, expect no errors. + * rust/compile/rustc_const_unstable.rs: New test. + +2025-03-17 jjasmine <tanghocle456@gmail.com> + + * rust/compile/negative_impls.rs: New test. + * rust/compile/negative_impls_2.rs: New test. + +2025-03-17 Owen Avery <powerboat9.gamer@gmail.com> + + * rust/compile/match-struct-path.rs: New test. + +2025-03-17 Nobel Singh <nobel2073@gmail.com> + + * rust/compile/issue-2906.rs: New test. + * rust/execute/torture/issue-2906.rs: New test. + +2025-03-17 Jakub Dupak <dev@jakubdupak.com> + + * rust/borrowck/borrowck.exp: New test. + * rust/borrowck/position_dependant_outlives.rs: New test. + * rust/borrowck/reference.rs: New test. + * rust/borrowck/return_ref_to_local.rs: New test. + * rust/borrowck/subset.rs: New test. + * rust/borrowck/test_move.rs: New test. + * rust/borrowck/test_move_behind_reference.rs: New test. + * rust/borrowck/test_move_conditional.rs: New test. + * rust/borrowck/tmp.rs: New test. + * rust/borrowck/use_while_mut.rs: New test. + * rust/borrowck/use_while_mut_fr.rs: New test. + * rust/borrowck/well_formed_function_inputs.rs: New test. + +2025-03-17 John David Anglin <danglin@gcc.gnu.org> + + PR testsuite/119220 + * gcc.dg/debug/dwarf2/inline2.c: Add -gno-strict-dwarf option. + * gcc.dg/debug/dwarf2/inline6.c: Likewise. + +2025-03-17 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.dg/vect/bb-slp-77.c: Skip on s390. + +2025-03-17 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/115271 + * gfortran.dg/gomp/declare-variant-mod-1-use.f90: Move to + libgomp/testsuite/libgomp.fortran/. + * gfortran.dg/gomp/declare-variant-mod-1.f90: Likewise. + +2025-03-17 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119114 + * gcc.target/riscv/rvv/autovec/pr119114.c: New test. + +2025-03-17 Ayan Shafqat <ayan.x.shafqat@gmail.com> + + * gcc.target/aarch64/acle/acle_fma.c: New test. + +2025-03-16 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * gcc.target/riscv/pr116256-1.c: New test. + +2025-03-16 Harald Anlauf <anlauf@gmx.de> + + PR fortran/60560 + * gfortran.dg/allocate_error_8.f90: New test. + +2025-03-16 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/pr100967.d: Adjust error message. + +2025-03-16 Robert Dubner <rdubner@symas.com> + + * cobol.dg/dg.exp: modified to recurse into directories without + .exp files and find *.cob files therein. + * cobol.dg/group1/escape.cob: New testcase. + +2025-03-16 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/113546 + * c-c++-common/torture/pr113546-1.c: New test. + +2025-03-16 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/115111 + * gm2/pim/pass/whilestep.mod: New test. + +2025-03-15 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/115271 + * gfortran.dg/gomp/declare-variant-mod-1-use.f90: New test. + * gfortran.dg/gomp/declare-variant-mod-1.f90: New test. + * gfortran.dg/gomp/declare-variant-mod-2-use.f90: New test. + * gfortran.dg/gomp/declare-variant-mod-2.f90: New test. + +2025-03-15 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.c: Removed. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-f32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-i8.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u16.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u32.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3-u8.c: New test. + * gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.h: New test. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR cobol/119290 + * lib/target-supports.exp (check_compile): Use *.cob extension for + "*> COBOL" comment. + * lib/cobol-dg.exp (check_effective_target_cobol): New procedure. + * cobol.dg/dg.exp: Guard main loop with [check_effective_target_cobol] + test. + +2025-03-14 Martin Jambor <mjambor@suse.cz> + + PR ipa/116572 + * g++.dg/ipa/pr116572.C: New test. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119287 + * gcc.dg/pr119287.c: New test. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR target/119120 + * c-c++-common/pr119120.c: New test. + +2025-03-14 Jakub Jelinek <jakub@redhat.com> + + PR analyzer/119278 + * c-c++-common/analyzer/pr119278.c: New test. + +2025-03-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119274 + * g++.dg/opt/pr119274.C: New testcase. + +2025-03-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119155 + * gcc.dg/vect/pr119155.c: New testcase. + +2025-03-13 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119118 + * gfortran.dg/bounds_check_26.f90: Update test. + +2025-03-13 Iain Sandoe <iain@sandoe.co.uk> + + * lib/gm2.exp: Arrange for a '-B' option to be added for the + libstdc++ paths on targets that need it. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/113965 + * gcc.target/aarch64/sve/mask_struct_load_3_run.c: Use an + input range that is suitable for _Float16. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/pr96357.c: Add -fno-tree-sink. + +2025-03-13 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/117092 + * gcc.target/aarch64/pr109072_1.c: xfail s16x4_2. + +2025-03-13 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (find-dg-do-what): Move... + * lib/target-supports-dg.exp: ... here. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/pointer-arith-11.c: New test. + * gcc.dg/pointer-arith-12.c: Likewise. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/fold-mul-and-lshift-1.c: New test. + * gcc.dg/fold-mul-and-lshift-2.c: Likewise. + +2025-03-13 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/115248 + * gcc.target/aarch64/sve/pre_cond_share_1.c: Delete + +2025-03-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/119115 + * gcc.target/riscv/rvv/base/pr119115.c: New test. + +2025-03-13 Robin Dapp <rdapp@ventanamicro.com> + + PR target/117955 + * gcc.target/riscv/rvv/base/bug-10.c: Convert to run test. + * gcc.target/riscv/rvv/base/bug-10-2.c: New test. + * gcc.target/riscv/rvv/base/pr117955.c: New test. + +2025-03-13 Richard Biener <rguenther@suse.de> + + PR cobol/119229 + * cobol.dg/pr119229.cob: New testcase. + +2025-03-13 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/117262 + * c-c++-common/analyzer/raw-data-cst-pr117262-1.c: New test. + * c-c++-common/analyzer/raw-data-cst-pr117262-2.c: New test. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR c++/119150 + * g++.dg/cpp2a/consteval41.C: New test. + +2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118799 + * g++.dg/modules/export-6.C: Adjust error message, add check for + no-linkage decls in namespace. + * g++.dg/modules/internal-4_b.C: Allow exposing a namespace with + internal linkage. Type aliases are not entities and so never + exposures. + * g++.dg/modules/using-30_a.C: New test. + * g++.dg/modules/using-30_b.C: New test. + * g++.dg/modules/using-30_c.C: New test. + +2025-03-12 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119154 + * g++.dg/modules/linkage-3_a.C: New test. + * g++.dg/modules/linkage-3_b.C: New test. + * g++.dg/modules/pr119154_a.C: New test. + * g++.dg/modules/pr119154_b.C: New test. + +2025-03-12 Marek Polacek <polacek@redhat.com> + + PR c++/117512 + * g++.dg/cpp0x/alignas23.C: New test. + * g++.dg/ext/align3.C: New test. + * g++.dg/ext/align4.C: New test. + * g++.dg/ext/align5.C: New test. + +2025-03-12 Simon Martin <simon@nasilyan.com> + + PR c++/110584 + * g++.dg/cpp0x/lambda/lambda-nested10.C: New test. + +2025-03-12 Richard Earnshaw <rearnsha@arm.com> + + PR target/117931 + * gcc.target/arm/lp1243022.c: Delete non-functional test. + +2025-03-12 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119078 + * gfortran.dg/binding_label_tests_26b.f90: Remove bogus dg-error + statements. + +2025-03-12 Marek Polacek <polacek@redhat.com> + + PR c++/119134 + * g++.dg/cpp2a/lambda-uneval24.C: New test. + +2025-03-12 Alex Coplan <alex.coplan@arm.com> + + PR rtl-optimization/116564 + * gcc.target/aarch64/torture/pr116564.c: New test. + +2025-03-12 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/98903 + * gfortran.dg/coarray/coindexed_2.f90: New test. + * gfortran.dg/coarray/coindexed_3.f08: New test. + * gfortran.dg/coarray/coindexed_4.f08: New test. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/119226 + * gcc.c-torture/compile/pr119226.c: New test. + +2025-03-12 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/116901 + * gcc.target/aarch64/sve/reduc_strict_4.c: Turn off costing. + * gcc.target/aarch64/sve/reduc_strict_5.c: Likewise. + +2025-03-12 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pr110625_1.c: Turn into a positive test for + a vector latency of 2, rather than a negative test for a vector + latency of 8. + +2025-03-12 Richard Biener <rguenther@suse.de> + + * lib/cobol-dg.exp: New, based on gfortran-dg.exp. + * lib/cobol.exp: New, based on gfortran.exp. + * cobol.dg/dg.exp: New. + * cobol.dg/pass.cob: New test. + * cobol.dg/fail.cob: Likewise. + * cobol.dg/error-1.cob: Likewise. + +2025-03-12 Jakub Jelinek <jakub@redhat.com> + + PR c++/119076 + * g++.dg/modules/pr119076-1_a.H: New test. + * g++.dg/modules/pr119076-1_b.C: New test. + * g++.dg/modules/pr119076-2_a.H: New test. + * g++.dg/modules/pr119076-2_b.C: New test. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * gcc.dg/Wunterminated-string-initialization-2.c: New test. + +2025-03-11 Andrew Pinski <quic_apinski@quicinc.com> + + PR target/119131 + * gcc.dg/torture/pr119131-1.c: New test. + +2025-03-11 Jason Merrill <jason@redhat.com> + + PR c++/119162 + * g++.dg/cpp2a/constexpr-new26.C: New test. + +2025-03-11 Sandra Loosemore <sloosemore@baylibre.com> + + PR c/118579 + * c-c++-common/gomp/pr118579.c: New testcase. + +2025-03-11 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/119139 + * gdc.dg/pr119139.d: New test. + +2025-03-11 Oscar Gustafsson <oscar.gustafsson@gmail.com> + + * gcc.dg/builtin-bswap-5.c: Improve test vector to avoid nibble + swaps passing. + +2025-03-11 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119199 + * gfortran.dg/common_30.f90: New test. + * gfortran.dg/common_31.f90: New test. + +2025-03-11 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118956 + * gcc.target/aarch64/sve/pred-not-gen-1.c: Add XFAILs. + * gcc.target/aarch64/sve/pred-not-gen-4.c: Likewise. + +2025-03-11 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119078 + * gfortran.dg/interface_58.f90: New test. + +2025-03-11 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/tbz_2.c: Accept both 32-bit and 64-bit registers. + +2025-03-11 Juergen Christ <jchrist@linux.ibm.com> + + * gcc.target/s390/delegitimize-1.c: New test. + +2025-03-11 H.J. Lu <hjl.tools@gmail.com> + + PR target/119171 + * gcc.target/i386/pr119171-1.c: New test. + * gcc.target/i386/pr119171-2.c: Likewise. + +2025-03-11 Richard Biener <rguenther@suse.de> + + PR middle-end/119204 + * gcc.dg/pr119204.c: New testcase. + +2025-03-11 Richard Earnshaw <rearnsha@arm.com> + + * lib/target-supports.exp + (check_effective_target_arm_neon_h_ok_nocache): Return zero if + check_effective_target_arm_libc_fp_abi_ok reports failure. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + PR c/119183 + * gcc.dg/pr119183.c: New test. + +2025-03-11 Jakub Jelinek <jakub@redhat.com> + + PR debug/119190 + * gfortran.dg/guality/pr119190.f90: New test. + +2025-03-11 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/20020926-1.c: Deal with deprecation warning. + * gcc.target/s390/dwarfregtable-1.c: Ditto. + * gcc.target/s390/fp2int1.c: Ditto. + * gcc.target/s390/pr102222.c: Ditto. + * gcc.target/s390/pr106355-3.c: Ditto. + * gcc.target/s390/pr61078.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-10.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-12.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-14.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-18.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-2.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-20.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-22.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-24.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-26.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-28.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-30.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-32.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-4.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-6.c: Ditto. + * gcc.target/s390/target-attribute/tattr-m31-8.c: Ditto. + +2025-03-10 Richard Sandiford <richard.sandiford@arm.com> + Kugan Vivekanandarajah <kvivekananda@nvidia.com> + + PR target/115258 + * gcc.target/aarch64/pr115258_2.c: New test. + +2025-03-10 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/114991 + * gcc.target/aarch64/pr114991.c: New test. + +2025-03-10 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119192 + * gm2/sets/run/pass/simplepacked.mod: Uncomment asserts. + +2025-03-10 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/internal-10.C: New test. + +2025-03-10 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107143 + * gfortran.dg/forall_20.f90: New test. + +2025-03-10 Jakub Jelinek <jakub@redhat.com> + Michael Leuchtenburg <michael@slashhome.org> + + PR libgcc/119151 + * gcc.dg/pr119151.c: New test. + +2025-03-10 Xi Ruoyao <xry111@xry111.site> + + PR target/119127 + * gcc.target/loongarch/pr119127.c: New file. + +2025-03-10 Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * c-c++-common/attr-nonstring-11.c: Remove xfails. + * c-c++-common/attr-nonstring-12.c (warn_strcmp_cst_1, + warn_strcmp_cst_2): Don't expect any warnings here. + (warn_strcmp_cst_3, warn_strcmp_cst_4): New functions with expected + warnings. + +2025-03-10 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.dg/vect/slp-26.c: Adjust. + +2025-03-10 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.dg/vect/bb-slp-77.c: Add loongarch*-*-* to the list + of expected failing targets. + +2025-03-10 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.dg/vect/pr112325.c: Add the vector compilation + option '-mlsx' for LoongArch. + * gcc.dg/vect/pr117888-1.c: Likewise. + +2025-03-09 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118922 + * gcc.dg/torture/pr118922-1.c: New test. + +2025-03-09 Dimitar Dimitrov <dimitar@dinux.eu> + + PR target/119133 + * gcc.dg/torture/pr119133.c: Require effective target float16. + +2025-03-09 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/118457 + * c-c++-common/gomp/adjust-args-6.c: Remove xfails and adjust + expected output. + * c-c++-common/gomp/append-args-5.c: Adjust expected output. + * c-c++-common/gomp/append-args-dynamic.c: New. + * c-c++-common/gomp/dispatch-11.c: Adjust expected output. + * gfortran.dg/gomp/dispatch-11.f90: Likewise. + +2025-03-08 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119157 + * gfortran.dg/interface_57.f90: New test. + +2025-03-08 Jason Merrill <jason@redhat.com> + Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/114630 + PR c++/114795 + * g++.dg/modules/modules.exp: Run xtreme tests once. + * g++.dg/modules/gmf-3.C: New test. + * g++.dg/modules/gmf-4.C: New test. + * g++.dg/modules/gmf-xtreme.C: New test. + +2025-03-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/119054 + * gfortran.dg/pr95446.f90: Expand test case to literals and + function calls. + Signed-off-by: Peter Hill <peter.hill@york.ac.uk> + +2025-03-07 Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * c-c++-common/attr-nonstring-7.c: Remove one xfail. + * c-c++-common/attr-nonstring-9.c: New test. + * c-c++-common/attr-nonstring-10.c: New test. + * c-c++-common/attr-nonstring-11.c: New test. + * c-c++-common/attr-nonstring-12.c: New test. + * c-c++-common/attr-nonstring-13.c: New test. + * c-c++-common/attr-nonstring-14.c: New test. + * c-c++-common/attr-nonstring-15.c: New test. + * c-c++-common/attr-nonstring-16.c: New test. + +2025-03-07 Kees Cook <kees@kernel.org> + Jakub Jelinek <jakub@redhat.com> + + PR c/117178 + * gcc.dg/Wunterminated-string-initialization.c: Add additional test + coverage. + * gcc.dg/Wcxx-compat-14.c: Check in dg-warning for "for C++" part of + the diagnostics. + * gcc.dg/Wcxx-compat-23.c: New test. + * gcc.dg/Wcxx-compat-24.c: New test. + +2025-03-07 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.dg/Wreturn-mismatch-2a.c: Change dg-warning + for the last -Wreturn-type to dg-bogus. + * gcc.dg/Wreturn-mismatch-6.c: Likewise. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/117477 + * gcc.target/aarch64/callee_save_1.c: New test. + * gcc.target/aarch64/callee_save_2.c: Likewise. + * gcc.target/aarch64/callee_save_3.c: Likewise. + * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. + +2025-03-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR c/60440 + * gcc.dg/Wreturn-mismatch-2.c: Change dg-warning + for the last -Wreturn-type to dg-bogus. + * gcc.dg/pr60440-1.c: New test. + +2025-03-07 Marek Polacek <polacek@redhat.com> + + PR c++/118775 + * g++.dg/cpp2a/constexpr-new24.C: New test. + * g++.dg/cpp2a/constexpr-new25.C: New test. + +2025-03-07 Richard Earnshaw <rearnsha@arm.com> + + * lib/target-supports.exp + (check_effective_target_arm_neon_h_ok_nocache): New function. + (check_effective_target_arm_neon_h_ok): Likewise. + (add_options_for_arm_neon_h): Likewise. + (check_effective_target_arm_libc_fp_abi_ok_nocache): Allow any + Arm target, not just arm32. + * gcc.target/arm/attr-neon-builtin-fail.c: Use it. + * gcc.target/arm/attr-neon-builtin-fail2.c: Likewise. + * gcc.target/arm/attr-neon-fp16.c: Likewise. + * gcc.target/arm/attr-neon2.c: Likewise. + +2025-03-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118464 + PR tree-optimization/116855 + * gcc.dg/vect/bb-slp-pr65935.c: Update, it now vectorizes because the + load type is relaxed later. + * gcc.dg/vect/vect-early-break_121-pr114081.c: Update. + * gcc.dg/vect/vect-early-break_22.c: Require partial vectors. + * gcc.dg/vect/vect-early-break_128.c: Likewise. + * gcc.dg/vect/vect-early-break_26.c: Likewise. + * gcc.dg/vect/vect-early-break_43.c: Likewise. + * gcc.dg/vect/vect-early-break_44.c: Likewise. + * gcc.dg/vect/vect-early-break_2.c: Require load_lanes. + * gcc.dg/vect/vect-early-break_7.c: Likewise. + * gcc.dg/vect/vect-early-break_132-pr118464.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa1.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa11.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa10.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa2.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa3.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa4.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa5.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa6.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa7.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa8.c: New test. + * gcc.dg/vect/vect-early-break_133_pfa9.c: New test. + * gcc.dg/vect/vect-early-break_39.c: Update testcase for misalignment. + * gcc.dg/vect/vect-early-break_18.c: Likewise. + * gcc.dg/vect/vect-early-break_20.c: Likewise. + * gcc.dg/vect/vect-early-break_21.c: Likewise. + * gcc.dg/vect/vect-early-break_38.c: Likewise. + * gcc.dg/vect/vect-early-break_6.c: Likewise. + * gcc.dg/vect/vect-early-break_53.c: Likewise. + * gcc.dg/vect/vect-early-break_56.c: Likewise. + * gcc.dg/vect/vect-early-break_57.c: Likewise. + * gcc.dg/vect/vect-early-break_81.c: Likewise. + +2025-03-07 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119145 + * gcc.dg/vect/pr119145.c: New testcase. + +2025-03-07 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/115485 + * g++.target/arm/pr115485.C: New test. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/116125 + * gcc.dg/vect/pr116125.c: New test. + +2025-03-07 Richard Sandiford <richard.sandiford@arm.com> + + PR target/119133 + * gcc.dg/torture/pr119133.c: New test. + +2025-03-07 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_2-512-convert-1.c: Change function call. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + +2025-03-06 Co-authored-by: Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/119099 + * gcc.dg/torture/pr119099.c: New test. + +2025-03-06 Harald Anlauf <anlauf@gmx.de> + + PR fortran/119118 + * gfortran.dg/bounds_check_23.f90: Generalize test. + * gfortran.dg/bounds_check_26.f90: New test. + +2025-03-06 Simon Martin <simon@nasilyan.com> + + * gcc.target/powerpc/ppc64-abi-1.c: Fix comment typos, paramter + -> parameter. + * gcc.target/powerpc/ppc64-abi-2.c: Likewise. + +2025-03-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/98533 + PR c++/119123 + * g++.dg/cpp0x/pr98533.C: New test. + * g++.dg/cpp0x/pr119123.C: New test. + +2025-03-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/119138 + * g++.dg/template/pr119138.C: New test. + +2025-03-06 Jakub Jelinek <jakub@redhat.com> + + PR fortran/104826 + * gfortran.dg/gomp/pr104826.f90: New test. + +2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + + Revert: + 2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + + PR rtl-optimization/117477 + * gcc.target/aarch64/callee_save_1.c: New test. + * gcc.target/aarch64/callee_save_2.c: Likewise. + * gcc.target/aarch64/callee_save_3.c: Likewise. + * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. + +2025-03-06 Richard Biener <rguenther@suse.de> + + PR lto/114501 + * g++.dg/pr114501_0.C: New testcase. + +2025-03-06 Richard Sandiford <richard.sandiford@arm.com> + Jan Hubicka <hubicka@ucw.cz> + + PR rtl-optimization/117477 + * gcc.target/aarch64/callee_save_1.c: New test. + * gcc.target/aarch64/callee_save_2.c: Likewise. + * gcc.target/aarch64/callee_save_3.c: Likewise. + * gcc.target/aarch64/pr103350-1.c: Add -fno-caller-saves. + +2025-03-06 Richard Biener <rguenther@suse.de> + + PR middle-end/119119 + * g++.dg/torture/pr11911.C: New testcase. + +2025-03-06 Simon Martin <simon@nasilyan.com> + + PR c++/117504 + * g++.dg/cpp2a/constexpr-117504.C: New test. + * g++.dg/cpp2a/constexpr-117504a.C: New test. + +2025-03-06 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_zbb.c: Tweak + the asm check for vsetvl. + +2025-03-06 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/core_list_init.c: Use -fext-dce rather than + -O1. Skip for -O0. + * gcc.target/riscv/pr111384.c: Ditto. + +2025-03-05 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118998 + * gm2/iso/pass/testrotate.mod: New test. + * gm2/pim/fail/tinyconst.mod: New test. + * gm2/sets/run/pass/simplepacked.mod: New test. + +2025-03-05 Marek Polacek <polacek@redhat.com> + + PR c++/115580 + * g++.dg/warn/Wnonnull16.C: New test. + +2025-03-05 Jason Merrill <jason@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + PR c++/117364 + PR c++/118874 + * g++.dg/coroutines/torture/pr118874.C: New test. + +2025-03-05 Hannes Braun <hannes@hannesbraun.net> + + PR target/118942 + * gcc.target/arm/simd/vld1q_base_xN_1.c: Add -Wpointer-sign. + +2025-03-05 Da Xie <xxie_xd@163.com> + + PR c++/100589 + * g++.dg/cpp2a/concepts-pr100589.C: New test. + +2025-03-05 Kyrylo Tkachov <ktkachov@nvidia.com> + + PR rtl-optimization/119046 + * gcc.target/aarch64/pr119046.c: New test. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118953 + * gcc.dg/torture/pr118953.c: New test. + +2025-03-05 Richard Biener <rguenther@suse.de> + + PR middle-end/97323 + * gcc.dg/pr97323.c: New testcase. + +2025-03-05 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/104684 + * gfortran.dg/coarray/ptr_comp_6.f08: New test. + +2025-03-05 Simon Martin <simon@nasilyan.com> + + PR c++/116740 + * g++.dg/parse/crash80.C: New test. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/119102 + * g++.dg/modules/pr119102_a.H: New test. + * g++.dg/modules/pr119102_b.C: New test. + * g++.dg/modules/omp-3_a.C: New test. + * g++.dg/modules/omp-3_b.C: New test. + * g++.dg/modules/omp-3_c.C: New test. + * g++.dg/modules/omp-3_d.C: New test. + * g++.dg/modules/oacc-1_a.C: New test. + * g++.dg/modules/oacc-1_b.C: New test. + * g++.dg/modules/oacc-1_c.C: New test. + +2025-03-05 Jakub Jelinek <jakub@redhat.com> + + PR c++/118787 + * g++.dg/cpp0x/alignas22.C: New test. + +2025-03-05 Xi Ruoyao <xry111@xry111.site> + + PR target/119084 + * gcc.target/loongarch/pr119084.c: New test. + +2025-03-04 Jason Merrill <jason@redhat.com> + + PR c++/119073 + * g++.dg/cpp0x/range-for39.C: New test. + +2025-03-04 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/119049 + PR fortran/119074 + * gfortran.dg/interface_55.f90: New test. + * gfortran.dg/interface_56.f90: New test. + +2025-03-04 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/pr68674.c: Use effective-target arm_arch_v7a + and arm_libc_fp_abi. + +2025-03-04 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/blsi.c: New test. + * gcc.target/i386/blsmsk.c: New test. + * gcc.target/i386/blsr.c: New test. + +2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/103391 + * gfortran.dg/assign_12.f90: New test. + +2025-03-04 Marek Polacek <polacek@redhat.com> + + PR c++/109431 + * g++.dg/init/array67.C: New test. + +2025-03-04 Tamar Christina <tamar.christina@arm.com> + + PR target/118892 + * gcc.target/aarch64/copysign-pr118892.c: New test. + +2025-03-04 Richard Sandiford <richard.sandiford@arm.com> + Jakub Jelinek <jakub@redhat.com> + + * gcc.c-torture/execute/ieee/pr119002.c: New test. + * gcc.target/aarch64/pr117186.c: Run at -O2 rather than -O. + +2025-03-04 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/119071 + * gcc.dg/pr119071.c: New test. + * gcc.c-torture/execute/pr119071.c: New test. + +2025-03-04 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/77872 + * gfortran.dg/coarray/class_1.f90: New test. + +2025-03-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119096 + * gcc.dg/vect/pr119096.c: New testcase. + +2025-03-04 Pan Li <pan2.li@intel.com> + + * gcc.target/riscv/rvv/autovec/bug-3.c: Update asm check to + function body check. + +2025-03-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/101577 + * gfortran.dg/empty_derived_type.f90: Adjust dg-options. + * gfortran.dg/empty_derived_type_2.f90: New test. + +2025-03-03 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/unsigned-extend-1.c: Expand check for any + insn suggesting a zero-extend. XFAIL for thumb1 code. + +2025-03-03 Uros Bizjak <ubizjak@gmail.com> + + PR rtl-optimization/118739 + * gcc.target/i386/pr118739.c: New test. + +2025-03-03 Martin Jambor <mjambor@suse.cz> + + PR ipa/118785 + * g++.dg/lto/pr118785_0.C: New test. + +2025-03-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/119057 + * gcc.dg/vect/pr119057.c: New testcase. + +2025-03-03 Richard Biener <rguenther@suse.de> + + PR ipa/119067 + * g++.dg/lto/pr119067_0.C: New testcase. + * g++.dg/lto/pr119067_1.C: Likewise. + +2025-03-03 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118747 + * gfortran.dg/alloc_comp_auto_array_4.f90: New test. + +2025-03-02 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/119088 + * gm2/pim/fail/tinyfor4.mod: New test. + +2025-03-02 Filip Kastl <fkastl@suse.cz> + + PR tree-optimization/117919 + * g++.dg/pr117919.C: New test. + +2025-03-01 Yuriy Kolerov <Yuriy.Kolerov@synopsys.com> + + PR target/118906 + * gcc.target/riscv/attribute-zce-1.c: New test. + * gcc.target/riscv/attribute-zce-2.c: New test. + * gcc.target/riscv/attribute-zce-3.c: New test. + * gcc.target/riscv/attribute-zce-4.c: New test. + +2025-03-01 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115871 + * gcc.dg/gomp/simd-clones-8.c: New test. + +2025-03-01 Xi Ruoyao <xry111@xry111.site> + + * c-c++-common/toplevel-asm-1.c: Use %cc3 %cc4 instead of %c3 + %c4 on LoongArch. + +2025-02-28 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/116961 + * gdc.dg/pr116961.d: New test. + +2025-02-28 Marek Polacek <polacek@redhat.com> + + PR c++/114913 + PR c++/110822 + * g++.dg/cpp0x/constexpr-nsdmi4.C: New test. + * g++.dg/cpp0x/constexpr-nsdmi5.C: New test. + +2025-02-28 Marek Polacek <polacek@redhat.com> + + PR c++/118986 + * g++.dg/cpp2a/constexpr-prvalue1.C: New test. + +2025-02-28 Martin Jambor <mjambor@suse.cz> + + PR ipa/118243 + * g++.dg/ipa/pr118243.C: New test. + +2025-02-28 Patrick Palka <ppalka@redhat.com> + + PR c++/119038 + * g++.dg/cpp23/explicit-obj-lambda15.C: New test. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + PR c++/119045 + * g++.dg/cpp1y/constexpr-complex2.C: New test. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp/embed-1.C: Adjust for pedwarn wording change and don't + expect any error for C++26. + * g++.dg/cpp/embed-2.C: Adjust for pedwarn wording change and don't + expect any warning for C++26. + * g++.dg/cpp26/feat-cxx26.C: Test __cpp_pp_embed value. + * gcc.dg/cpp/embed-17.c: New test. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR lto/91299 + * gcc.dg/lto/pr91299_0.c: New testcase. + * gcc.dg/lto/pr91299_1.c: Likewise. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR ipa/111245 + * g++.dg/torture/pr111245.C: New testcase. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117712 + * gcc.dg/pr117712.c: New test. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/87984 + * gcc.target/i386/pr87984.c: New testcase. + +2025-02-28 Richard Biener <rguenther@suse.de> + + PR middle-end/66279 + * g++.dg/pr66279.C: New testcase. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + * gcc.target/i386/strub-pr118006.c: Remove -m32 from dg-options. + +2025-02-28 Jakub Jelinek <jakub@redhat.com> + + PR target/118940 + * gcc.target/i386/pr118940.c: Drop -w, -g and -m32 from dg-options, move + -march=i386 -mregparm=3 to dg-additional-options for ia32 and -fno-pie + to dg-additional-options for pie. Reduce the test. + +2025-02-28 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118730 + * gfortran.dg/class_array_15.f03: Remove unused variable. + * gfortran.dg/coarray_poly_7.f90: Adapt scan-tree-dump expr. + * gfortran.dg/coarray_poly_8.f90: Same. + * gfortran.dg/finalize_60.f90: New test. + +2025-02-27 Pan Li <pan2.li@intel.com> + + PR target/118931 + * gcc.target/riscv/rvv/base/pr118931-run-1.c: New test. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/119030 + * gcc.c-torture/execute/pr119030.c: New test. + +2025-02-27 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/118860 + * gcc.dg/pr118860.c: New test. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/stack_frame-1.c: Adjust. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/stack_frame-1.c: New. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/alloca-1-O0_-mfake-ptx-alloca.c: New. + * gcc.target/nvptx/alloca-2-O0_-mfake-ptx-alloca.c: Likewise. + * gcc.target/nvptx/alloca-4-O3_-mfake-ptx-alloca.c: Likewise. + * gcc.target/nvptx/vla-1-O0_-mfake-ptx-alloca.c: Likewise. + * gcc.target/nvptx/alloca-4-O3.c: + 'dg-additional-options -mfake-ptx-alloca'. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/alloca-1-unused-O0-sm_30.c: Adjust. + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/alloca-1-dead-O0-sm_30.c: New. + * gcc.target/nvptx/alloca-1-dead-O0.c: Likewise. + * gcc.target/nvptx/alloca-1-dead-O1-sm_30.c: Likewise. + * gcc.target/nvptx/alloca-1-dead-O1.c: Likewise. + * gcc.target/nvptx/alloca-1-unused-O0-sm_30.c: Likewise. + * gcc.target/nvptx/alloca-1-unused-O0.c: Likewise. + * gcc.target/nvptx/alloca-1-unused-O1-sm_30.c: Likewise. + * gcc.target/nvptx/alloca-1-unused-O1.c: Likewise. + * gcc.target/nvptx/vla-1-dead-O0-sm_30.c: Likewise. + * gcc.target/nvptx/vla-1-dead-O0.c: Likewise. + * gcc.target/nvptx/vla-1-dead-O1-sm_30.c: Likewise. + * gcc.target/nvptx/vla-1-dead-O1.c: Likewise. + * gcc.target/nvptx/vla-1-unused-O0-sm_30.c: Likewise. + * gcc.target/nvptx/vla-1-unused-O0.c: Likewise. + * gcc.target/nvptx/vla-1-unused-O1-sm_30.c: Likewise. + * gcc.target/nvptx/vla-1-unused-O1.c: Likewise. + +2025-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/118928 + * g++.dg/cpp0x/constexpr-prvalue5.C: New test. + +2025-02-27 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118940 + * gcc.target/i386/pr118940.c: New test. + +2025-02-27 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/116336 + * gcc.dg/pr116336.c: New test. + +2025-02-27 Marek Polacek <polacek@redhat.com> + + PR c++/118516 + * g++.dg/cpp2a/fn-template11.C: + * g++.dg/template/fn-template1.C: New test. + * g++.dg/template/fn-template2.C: New test. + +2025-02-27 Richard Earnshaw <rearnsha@arm.com> + + * gcc.target/arm/lto/pr61123-enum-size_0.c: (dg-lto-options) Move + linker related options to ... + (dg-extra-ld-options): ... here. Add -flinker-output=nolto-rel. + +2025-02-27 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/118789 + * gfortran.dg/associate_73.f90: New test. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR c/119001 + * gcc.dg/pr119001-1.c: New test. + * gcc.dg/pr119001-2.c: New test. + +2025-02-26 Jakub Jelinek <jakub@redhat.com> + + PR c/114870 + * gcc.dg/c23-stddef-2.c: New test. + +2025-02-26 Alexandre Oliva <oliva@adacore.com> + + * lib/target-supports.exp (check_effective_target_x86): New. + Replace all uses of i?86-*-* and x86_64-*-* in this file. + +2025-02-26 Alexandre Oliva <oliva@adacore.com> + + * lib/target-supports-dg.exp (dg-do-if): New. + * gcc.dg/vect/vect-simd-clone-16f.c: Use -msse4 on x86, and + skip in case execution is enabled but the runtime isn't. + * gcc.dg/vect/vect-simd-clone-17f.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18f.c: Likewise. + * gcc.dg/vect/vect-simd-clone-20.c: Likewise, but only skip + the scan test. + +2025-02-26 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/108233 + * gfortran.dg/coarray/complex_1.f90: New test. + +2025-02-26 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118464 + PR tree-optimization/116855 + * g++.dg/ext/pragma-unroll-lambda-lto.C: Add pragma novector. + * gcc.dg/tree-ssa/gen-vect-2.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-32.c: Likewise. + * gcc.dg/tree-ssa/ivopt_mult_2g.c: Likewise. + * gcc.dg/tree-ssa/ivopts-5.c: Likewise. + * gcc.dg/tree-ssa/ivopts-6.c: Likewise. + * gcc.dg/tree-ssa/ivopts-7.c: Likewise. + * gcc.dg/tree-ssa/ivopts-8.c: Likewise. + * gcc.dg/tree-ssa/ivopts-9.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-1.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-10.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-11.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-12.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-2.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-3.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-4.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-5.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-6.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-7.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-8.c: Likewise. + * gcc.dg/tree-ssa/predcom-dse-9.c: Likewise. + * gcc.target/i386/pr90178.c: Likewise. + +2025-02-25 Andrew Pinski <quic_apinski@quicinc.com> + + PR testsuite/115028 + * gcc.target/i386/pr101950-2.c: Use a pointer argument instead + of the argument directly. + +2025-02-25 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/115458 + * g++.target/riscv/pr115458.C: New. + +2025-02-25 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/118654 + * gdc.dg/target/i386/i386.exp: New test. + * gdc.dg/target/i386/targetinfo_CET.d: New test. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR c/119000 + * c-c++-common/gomp/pr119000.c: New test. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/118876 + * g++.dg/gomp/pr118876.C: New test. + +2025-02-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/118923 + * g++.dg/cpp0x/pr118923.C: New test. + * g++.dg/cpp1y/pr118923.C: New test. + +2025-02-24 Robin Dapp <rdapp@ventanamicro.com> + + PR target/114516 + * gcc.dg/vect/costmodel/riscv/rvv/pr114516.c: New test. + +2025-02-24 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/118950 + * gcc.target/riscv/rvv/autovec/pr118950.c: New test. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118915 + * gcc.c-torture/execute/pr118915.c: New test. + +2025-02-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118973 + * g++.dg/torture/pr118973.C: New testcase. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/118993 + * c-c++-common/gomp/allocate-18.c: Adjust dg-warning regex for + diagnostics typo fix. + * gfortran.dg/gomp/allocate-clause.f90: Likewise. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR c/117023 + * gcc.dg/builtins-nonnull.c (test_memfuncs, test_memfuncs_chk, + test_strfuncs, test_strfuncs_chk): Add if (n == 0) return; at the + start of the functions. + * gcc.dg/Wnonnull-2.c: Copy __builtin_* call statements where + appropriate 3 times, once with 0 length, once with n and once with + non-zero constant and expect warning only in the third case. + Formatting fixes. + * gcc.dg/Wnonnull-3.c: Copy __builtin_* call statements where + appropriate 3 times, once with 0 length, once with n and once with + n guarded with n != 0 and expect warning only in the third case. + Formatting fixes. + * gcc.dg/nonnull-3.c (foo): Use 16 instead of 0 in the calls added + for PR80936. + * gcc.dg/nonnull-11.c: New test. + * c-c++-common/ubsan/nonnull-1.c: Don't expect runtime diagnostics + for the __builtin_memcpy call. + * gcc.dg/tree-ssa/pr78154.c (f): Add dn argument and return early + if it is NULL. Duplicate cases of builtins which have the first + argument changed from nonnull to nonnull_if_nonzero except stpncpy, + once with dn as first argument instead of d and once with constant + non-zero count rather than n. Disable the stpncpy non-null check. + * gcc.dg/Wbuiltin-declaration-mismatch-14.c (test_builtin_calls): + Triplicate the strncmp calls, once with 1 last argument and expect + warning, once with n last argument and don't expect warning and + once with 0 last argument and don't expect warning. + * gcc.dg/Wbuiltin-declaration-mismatch-15.c (test_builtin_calls_fe): + Likewise. + +2025-02-24 Jakub Jelinek <jakub@redhat.com> + + PR c/117023 + * c-c++-common/analyzer/call-summaries-malloc.c + (test_use_without_check): Pass 4 rather than sz to memset. + * c-c++-common/analyzer/strncpy-1.c (test_null_dst, + test_null_src): Pass 42 rather than count to strncpy. + +2025-02-24 Lino Hsing-Yu Peng <linopeng@andestech.com> + + * gcc.target/riscv/zcmp_push_gpr.c: New test. + +2025-02-23 H.J. Lu <hjl.tools@gmail.com> + + PR tree-optimization/82142 + * gcc.target/i386/pr82142a.c: New file. + * gcc.target/i386/pr82142b.c: Likewise. + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/target-supports.exp (check_effective_target_alloca): + Gracefully handle the case that we've not be called (indirectly) + from 'dg-test'. + * lib/gcc-dg.exp (proc gcc-dg-prune): Turn + 'sorry, unimplemented: dynamic stack allocation not supported' into + UNSUPPORTED. + * c-c++-common/Walloca-larger-than.c: Don't + 'dg-require-effective-target alloca'. + * c-c++-common/Warray-bounds-9.c: Likewise. + * c-c++-common/Warray-bounds.c: Likewise. + * c-c++-common/Wdangling-pointer-2.c: Likewise. + * c-c++-common/Wdangling-pointer-4.c: Likewise. + * c-c++-common/Wdangling-pointer-5.c: Likewise. + * c-c++-common/Wdangling-pointer.c: Likewise. + * c-c++-common/Wimplicit-fallthrough-7.c: Likewise. + * c-c++-common/Wsizeof-pointer-memaccess1.c: Likewise. + * c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise. + * c-c++-common/Wstringop-truncation.c: Likewise. + * c-c++-common/Wunused-var-6.c: Likewise. + * c-c++-common/Wunused-var-8.c: Likewise. + * c-c++-common/analyzer/alloca-leak.c: Likewise. + * c-c++-common/analyzer/allocation-size-multiline-2.c: Likewise. + * c-c++-common/analyzer/allocation-size-multiline-3.c: Likewise. + * c-c++-common/analyzer/capacity-1.c: Likewise. + * c-c++-common/analyzer/capacity-3.c: Likewise. + * c-c++-common/analyzer/imprecise-floating-point-1.c: Likewise. + * c-c++-common/analyzer/infinite-recursion-alloca.c: Likewise. + * c-c++-common/analyzer/malloc-callbacks.c: Likewise. + * c-c++-common/analyzer/malloc-paths-8.c: Likewise. + * c-c++-common/analyzer/out-of-bounds-5.c: Likewise. + * c-c++-common/analyzer/out-of-bounds-diagram-11.c: Likewise. + * c-c++-common/analyzer/uninit-alloca.c: Likewise. + * c-c++-common/analyzer/write-to-string-literal-5.c: Likewise. + * c-c++-common/asan/alloca_loop_unpoisoning.c: Likewise. + * c-c++-common/auto-init-11.c: Likewise. + * c-c++-common/auto-init-12.c: Likewise. + * c-c++-common/auto-init-15.c: Likewise. + * c-c++-common/auto-init-16.c: Likewise. + * c-c++-common/builtins.c: Likewise. + * c-c++-common/dwarf2/vla1.c: Likewise. + * c-c++-common/gomp/pr61486-2.c: Likewise. + * c-c++-common/torture/builtin-clear-padding-4.c: Likewise. + * c-c++-common/torture/strub-run3.c: Likewise. + * c-c++-common/torture/strub-run4.c: Likewise. + * c-c++-common/torture/strub-run4c.c: Likewise. + * c-c++-common/torture/strub-run4d.c: Likewise. + * c-c++-common/torture/strub-run4i.c: Likewise. + * g++.dg/Walloca1.C: Likewise. + * g++.dg/Walloca2.C: Likewise. + * g++.dg/cpp0x/pr70338.C: Likewise. + * g++.dg/cpp1y/lambda-generic-vla1.C: Likewise. + * g++.dg/cpp1y/vla10.C: Likewise. + * g++.dg/cpp1y/vla2.C: Likewise. + * g++.dg/cpp1y/vla6.C: Likewise. + * g++.dg/cpp1y/vla8.C: Likewise. + * g++.dg/debug/debug5.C: Likewise. + * g++.dg/debug/debug6.C: Likewise. + * g++.dg/debug/pr54828.C: Likewise. + * g++.dg/diagnostic/pr70105.C: Likewise. + * g++.dg/eh/cleanup5.C: Likewise. + * g++.dg/eh/spbp.C: Likewise. + * g++.dg/ext/builtin_alloca.C: Likewise. + * g++.dg/ext/tmplattr9.C: Likewise. + * g++.dg/ext/vla10.C: Likewise. + * g++.dg/ext/vla11.C: Likewise. + * g++.dg/ext/vla12.C: Likewise. + * g++.dg/ext/vla15.C: Likewise. + * g++.dg/ext/vla16.C: Likewise. + * g++.dg/ext/vla17.C: Likewise. + * g++.dg/ext/vla23.C: Likewise. + * g++.dg/ext/vla3.C: Likewise. + * g++.dg/ext/vla6.C: Likewise. + * g++.dg/ext/vla7.C: Likewise. + * g++.dg/init/array24.C: Likewise. + * g++.dg/init/new47.C: Likewise. + * g++.dg/init/pr55497.C: Likewise. + * g++.dg/opt/pr78201.C: Likewise. + * g++.dg/template/vla2.C: Likewise. + * g++.dg/torture/Wsizeof-pointer-memaccess1.C: Likewise. + * g++.dg/torture/Wsizeof-pointer-memaccess2.C: Likewise. + * g++.dg/torture/pr62127.C: Likewise. + * g++.dg/torture/pr67055.C: Likewise. + * g++.dg/torture/stackalign/eh-alloca-1.C: Likewise. + * g++.dg/torture/stackalign/eh-inline-2.C: Likewise. + * g++.dg/torture/stackalign/eh-vararg-1.C: Likewise. + * g++.dg/torture/stackalign/eh-vararg-2.C: Likewise. + * g++.dg/warn/Wplacement-new-size-5.C: Likewise. + * g++.dg/warn/Wsizeof-pointer-memaccess-1.C: Likewise. + * g++.dg/warn/Wvla-1.C: Likewise. + * g++.dg/warn/Wvla-3.C: Likewise. + * g++.old-deja/g++.ext/array2.C: Likewise. + * g++.old-deja/g++.ext/constructor.C: Likewise. + * g++.old-deja/g++.law/builtin1.C: Likewise. + * g++.old-deja/g++.other/crash12.C: Likewise. + * g++.old-deja/g++.other/eh3.C: Likewise. + * g++.old-deja/g++.pt/array6.C: Likewise. + * g++.old-deja/g++.pt/dynarray.C: Likewise. + * gcc.c-torture/compile/20000923-1.c: Likewise. + * gcc.c-torture/compile/20030224-1.c: Likewise. + * gcc.c-torture/compile/20071108-1.c: Likewise. + * gcc.c-torture/compile/20071117-1.c: Likewise. + * gcc.c-torture/compile/900313-1.c: Likewise. + * gcc.c-torture/compile/parms.c: Likewise. + * gcc.c-torture/compile/pr17397.c: Likewise. + * gcc.c-torture/compile/pr35006.c: Likewise. + * gcc.c-torture/compile/pr42956.c: Likewise. + * gcc.c-torture/compile/pr51354.c: Likewise. + * gcc.c-torture/compile/pr52714.c: Likewise. + * gcc.c-torture/compile/pr55851.c: Likewise. + * gcc.c-torture/compile/pr77754-1.c: Likewise. + * gcc.c-torture/compile/pr77754-2.c: Likewise. + * gcc.c-torture/compile/pr77754-3.c: Likewise. + * gcc.c-torture/compile/pr77754-4.c: Likewise. + * gcc.c-torture/compile/pr77754-5.c: Likewise. + * gcc.c-torture/compile/pr77754-6.c: Likewise. + * gcc.c-torture/compile/pr78439.c: Likewise. + * gcc.c-torture/compile/pr79413.c: Likewise. + * gcc.c-torture/compile/pr82564.c: Likewise. + * gcc.c-torture/compile/pr87110.c: Likewise. + * gcc.c-torture/compile/pr99787-1.c: Likewise. + * gcc.c-torture/compile/vla-const-1.c: Likewise. + * gcc.c-torture/compile/vla-const-2.c: Likewise. + * gcc.c-torture/execute/20010209-1.c: Likewise. + * gcc.c-torture/execute/20020314-1.c: Likewise. + * gcc.c-torture/execute/20020412-1.c: Likewise. + * gcc.c-torture/execute/20021113-1.c: Likewise. + * gcc.c-torture/execute/20040223-1.c: Likewise. + * gcc.c-torture/execute/20040308-1.c: Likewise. + * gcc.c-torture/execute/20040811-1.c: Likewise. + * gcc.c-torture/execute/20070824-1.c: Likewise. + * gcc.c-torture/execute/20070919-1.c: Likewise. + * gcc.c-torture/execute/built-in-setjmp.c: Likewise. + * gcc.c-torture/execute/pr22061-1.c: Likewise. + * gcc.c-torture/execute/pr43220.c: Likewise. + * gcc.c-torture/execute/pr82210.c: Likewise. + * gcc.c-torture/execute/pr86528.c: Likewise. + * gcc.c-torture/execute/vla-dealloc-1.c: Likewise. + * gcc.dg/20001012-2.c: Likewise. + * gcc.dg/20020415-1.c: Likewise. + * gcc.dg/20030331-2.c: Likewise. + * gcc.dg/20101010-1.c: Likewise. + * gcc.dg/Walloca-1.c: Likewise. + * gcc.dg/Walloca-10.c: Likewise. + * gcc.dg/Walloca-11.c: Likewise. + * gcc.dg/Walloca-12.c: Likewise. + * gcc.dg/Walloca-13.c: Likewise. + * gcc.dg/Walloca-14.c: Likewise. + * gcc.dg/Walloca-15.c: Likewise. + * gcc.dg/Walloca-2.c: Likewise. + * gcc.dg/Walloca-3.c: Likewise. + * gcc.dg/Walloca-4.c: Likewise. + * gcc.dg/Walloca-5.c: Likewise. + * gcc.dg/Walloca-6.c: Likewise. + * gcc.dg/Walloca-7.c: Likewise. + * gcc.dg/Walloca-8.c: Likewise. + * gcc.dg/Walloca-9.c: Likewise. + * gcc.dg/Walloca-larger-than-2.c: Likewise. + * gcc.dg/Walloca-larger-than-3.c: Likewise. + * gcc.dg/Walloca-larger-than-4.c: Likewise. + * gcc.dg/Walloca-larger-than.c: Likewise. + * gcc.dg/Warray-bounds-22.c: Likewise. + * gcc.dg/Warray-bounds-41.c: Likewise. + * gcc.dg/Warray-bounds-46.c: Likewise. + * gcc.dg/Warray-bounds-48-novec.c: Likewise. + * gcc.dg/Warray-bounds-48.c: Likewise. + * gcc.dg/Warray-bounds-50.c: Likewise. + * gcc.dg/Warray-bounds-63.c: Likewise. + * gcc.dg/Warray-bounds-66.c: Likewise. + * gcc.dg/Wdangling-pointer.c: Likewise. + * gcc.dg/Wfree-nonheap-object-2.c: Likewise. + * gcc.dg/Wfree-nonheap-object.c: Likewise. + * gcc.dg/Wrestrict-17.c: Likewise. + * gcc.dg/Wrestrict.c: Likewise. + * gcc.dg/Wreturn-local-addr-2.c: Likewise. + * gcc.dg/Wreturn-local-addr-3.c: Likewise. + * gcc.dg/Wreturn-local-addr-4.c: Likewise. + * gcc.dg/Wreturn-local-addr-6.c: Likewise. + * gcc.dg/Wsizeof-pointer-memaccess1.c: Likewise. + * gcc.dg/Wstack-usage.c: Likewise. + * gcc.dg/Wstrict-aliasing-bogus-vla-1.c: Likewise. + * gcc.dg/Wstrict-overflow-27.c: Likewise. + * gcc.dg/Wstringop-overflow-15.c: Likewise. + * gcc.dg/Wstringop-overflow-23.c: Likewise. + * gcc.dg/Wstringop-overflow-25.c: Likewise. + * gcc.dg/Wstringop-overflow-27.c: Likewise. + * gcc.dg/Wstringop-overflow-3.c: Likewise. + * gcc.dg/Wstringop-overflow-39.c: Likewise. + * gcc.dg/Wstringop-overflow-56.c: Likewise. + * gcc.dg/Wstringop-overflow-57.c: Likewise. + * gcc.dg/Wstringop-overflow-67.c: Likewise. + * gcc.dg/Wstringop-overflow-71.c: Likewise. + * gcc.dg/Wstringop-truncation-3.c: Likewise. + * gcc.dg/Wvla-larger-than-1.c: Likewise. + * gcc.dg/Wvla-larger-than-2.c: Likewise. + * gcc.dg/Wvla-larger-than-3.c: Likewise. + * gcc.dg/Wvla-larger-than-4.c: Likewise. + * gcc.dg/Wvla-larger-than-5.c: Likewise. + * gcc.dg/analyzer/boxed-malloc-1.c: Likewise. + * gcc.dg/analyzer/call-summaries-2.c: Likewise. + * gcc.dg/analyzer/malloc-1.c: Likewise. + * gcc.dg/analyzer/malloc-reuse.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-diagram-12.c: Likewise. + * gcc.dg/analyzer/pr93355-localealias.c: Likewise. + * gcc.dg/analyzer/putenv-1.c: Likewise. + * gcc.dg/analyzer/taint-alloc-1.c: Likewise. + * gcc.dg/analyzer/torture/pr93373.c: Likewise. + * gcc.dg/analyzer/torture/ubsan-1.c: Likewise. + * gcc.dg/analyzer/vla-1.c: Likewise. + * gcc.dg/atomic/stdatomic-vm.c: Likewise. + * gcc.dg/attr-alloc_size-6.c: Likewise. + * gcc.dg/attr-alloc_size-7.c: Likewise. + * gcc.dg/attr-alloc_size-8.c: Likewise. + * gcc.dg/attr-alloc_size-9.c: Likewise. + * gcc.dg/attr-noipa.c: Likewise. + * gcc.dg/auto-init-uninit-36.c: Likewise. + * gcc.dg/auto-init-uninit-9.c: Likewise. + * gcc.dg/auto-type-1.c: Likewise. + * gcc.dg/builtin-alloc-size.c: Likewise. + * gcc.dg/builtin-dynamic-alloc-size.c: Likewise. + * gcc.dg/builtin-dynamic-object-size-1.c: Likewise. + * gcc.dg/builtin-dynamic-object-size-2.c: Likewise. + * gcc.dg/builtin-dynamic-object-size-3.c: Likewise. + * gcc.dg/builtin-dynamic-object-size-4.c: Likewise. + * gcc.dg/builtin-object-size-1.c: Likewise. + * gcc.dg/builtin-object-size-2.c: Likewise. + * gcc.dg/builtin-object-size-3.c: Likewise. + * gcc.dg/builtin-object-size-4.c: Likewise. + * gcc.dg/builtins-64.c: Likewise. + * gcc.dg/builtins-68.c: Likewise. + * gcc.dg/c23-auto-2.c: Likewise. + * gcc.dg/c99-const-expr-13.c: Likewise. + * gcc.dg/c99-vla-1.c: Likewise. + * gcc.dg/fold-alloca-1.c: Likewise. + * gcc.dg/gomp/pr30494.c: Likewise. + * gcc.dg/gomp/vla-2.c: Likewise. + * gcc.dg/gomp/vla-3.c: Likewise. + * gcc.dg/gomp/vla-4.c: Likewise. + * gcc.dg/gomp/vla-5.c: Likewise. + * gcc.dg/graphite/pr99085.c: Likewise. + * gcc.dg/guality/guality.c: Likewise. + * gcc.dg/lto/pr80778_0.c: Likewise. + * gcc.dg/nested-func-10.c: Likewise. + * gcc.dg/nested-func-12.c: Likewise. + * gcc.dg/nested-func-13.c: Likewise. + * gcc.dg/nested-func-14.c: Likewise. + * gcc.dg/nested-func-15.c: Likewise. + * gcc.dg/nested-func-16.c: Likewise. + * gcc.dg/nested-func-17.c: Likewise. + * gcc.dg/nested-func-9.c: Likewise. + * gcc.dg/packed-vla.c: Likewise. + * gcc.dg/pr100225.c: Likewise. + * gcc.dg/pr25682.c: Likewise. + * gcc.dg/pr27301.c: Likewise. + * gcc.dg/pr31507-1.c: Likewise. + * gcc.dg/pr33238.c: Likewise. + * gcc.dg/pr41470.c: Likewise. + * gcc.dg/pr49120.c: Likewise. + * gcc.dg/pr50764.c: Likewise. + * gcc.dg/pr51491-2.c: Likewise. + * gcc.dg/pr51990-2.c: Likewise. + * gcc.dg/pr51990.c: Likewise. + * gcc.dg/pr59011.c: Likewise. + * gcc.dg/pr59523.c: Likewise. + * gcc.dg/pr61561.c: Likewise. + * gcc.dg/pr78468.c: Likewise. + * gcc.dg/pr78902.c: Likewise. + * gcc.dg/pr79972.c: Likewise. + * gcc.dg/pr82875.c: Likewise. + * gcc.dg/pr83844.c: Likewise. + * gcc.dg/pr84131.c: Likewise. + * gcc.dg/pr87099.c: Likewise. + * gcc.dg/pr87320.c: Likewise. + * gcc.dg/pr89045.c: Likewise. + * gcc.dg/pr91014.c: Likewise. + * gcc.dg/pr93986.c: Likewise. + * gcc.dg/pr98721-1.c: Likewise. + * gcc.dg/pr99122-2.c: Likewise. + * gcc.dg/shrink-wrap-alloca.c: Likewise. + * gcc.dg/sso-14.c: Likewise. + * gcc.dg/strlenopt-62.c: Likewise. + * gcc.dg/strlenopt-83.c: Likewise. + * gcc.dg/strlenopt-84.c: Likewise. + * gcc.dg/strlenopt-91.c: Likewise. + * gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise. + * gcc.dg/torture/calleesave-sse.c: Likewise. + * gcc.dg/torture/pr48953.c: Likewise. + * gcc.dg/torture/pr71881.c: Likewise. + * gcc.dg/torture/pr71901.c: Likewise. + * gcc.dg/torture/pr78742.c: Likewise. + * gcc.dg/torture/pr92088-1.c: Likewise. + * gcc.dg/torture/pr92088-2.c: Likewise. + * gcc.dg/torture/pr93124.c: Likewise. + * gcc.dg/torture/pr94479.c: Likewise. + * gcc.dg/torture/stackalign/alloca-1.c: Likewise. + * gcc.dg/torture/stackalign/inline-2.c: Likewise. + * gcc.dg/torture/stackalign/nested-3.c: Likewise. + * gcc.dg/torture/stackalign/vararg-1.c: Likewise. + * gcc.dg/torture/stackalign/vararg-2.c: Likewise. + * gcc.dg/tree-ssa/20030807-2.c: Likewise. + * gcc.dg/tree-ssa/20080530.c: Likewise. + * gcc.dg/tree-ssa/alias-37.c: Likewise. + * gcc.dg/tree-ssa/builtin-sprintf-warn-22.c: Likewise. + * gcc.dg/tree-ssa/builtin-sprintf-warn-25.c: Likewise. + * gcc.dg/tree-ssa/builtin-sprintf-warn-3.c: Likewise. + * gcc.dg/tree-ssa/loop-interchange-15.c: Likewise. + * gcc.dg/tree-ssa/pr23848-1.c: Likewise. + * gcc.dg/tree-ssa/pr23848-2.c: Likewise. + * gcc.dg/tree-ssa/pr23848-3.c: Likewise. + * gcc.dg/tree-ssa/pr23848-4.c: Likewise. + * gcc.dg/uninit-32.c: Likewise. + * gcc.dg/uninit-36.c: Likewise. + * gcc.dg/uninit-39.c: Likewise. + * gcc.dg/uninit-41.c: Likewise. + * gcc.dg/uninit-9-O0.c: Likewise. + * gcc.dg/uninit-9.c: Likewise. + * gcc.dg/uninit-pr100250.c: Likewise. + * gcc.dg/uninit-pr101300.c: Likewise. + * gcc.dg/uninit-pr101494.c: Likewise. + * gcc.dg/uninit-pr98583.c: Likewise. + * gcc.dg/vla-2.c: Likewise. + * gcc.dg/vla-22.c: Likewise. + * gcc.dg/vla-24.c: Likewise. + * gcc.dg/vla-3.c: Likewise. + * gcc.dg/vla-4.c: Likewise. + * gcc.dg/vla-stexp-1.c: Likewise. + * gcc.dg/vla-stexp-2.c: Likewise. + * gcc.dg/vla-stexp-4.c: Likewise. + * gcc.dg/vla-stexp-5.c: Likewise. + * gcc.dg/winline-7.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-1.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-10.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-2.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-3.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-4.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-5.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-6.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-7.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-8.c: Likewise. + * gcc.target/aarch64/stack-check-alloca-9.c: Likewise. + * gcc.target/arc/interrupt-6.c: Likewise. + * gcc.target/i386/pr80969-3.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-1.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-2.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-3.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-4.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-5.c: Likewise. + * gcc.target/loongarch/stack-check-alloca-6.c: Likewise. + * gcc.target/riscv/stack-check-alloca-1.c: Likewise. + * gcc.target/riscv/stack-check-alloca-10.c: Likewise. + * gcc.target/riscv/stack-check-alloca-2.c: Likewise. + * gcc.target/riscv/stack-check-alloca-3.c: Likewise. + * gcc.target/riscv/stack-check-alloca-4.c: Likewise. + * gcc.target/riscv/stack-check-alloca-5.c: Likewise. + * gcc.target/riscv/stack-check-alloca-6.c: Likewise. + * gcc.target/riscv/stack-check-alloca-7.c: Likewise. + * gcc.target/riscv/stack-check-alloca-8.c: Likewise. + * gcc.target/riscv/stack-check-alloca-9.c: Likewise. + * gcc.target/sparc/setjmp-1.c: Likewise. + * gcc.target/x86_64/abi/ms-sysv/ms-sysv.c: Likewise. + * gcc.c-torture/compile/20001221-1.c: Don't 'dg-skip-if' + for '! alloca'. + * gcc.c-torture/compile/20020807-1.c: Likewise. + * gcc.c-torture/compile/20050801-2.c: Likewise. + * gcc.c-torture/compile/920428-4.c: Likewise. + * gcc.c-torture/compile/debugvlafunction-1.c: Likewise. + * gcc.c-torture/compile/pr41469.c: Likewise. + * gcc.c-torture/execute/920721-2.c: Likewise. + * gcc.c-torture/execute/920929-1.c: Likewise. + * gcc.c-torture/execute/921017-1.c: Likewise. + * gcc.c-torture/execute/941202-1.c: Likewise. + * gcc.c-torture/execute/align-nest.c: Likewise. + * gcc.c-torture/execute/alloca-1.c: Likewise. + * gcc.c-torture/execute/pr22061-4.c: Likewise. + * gcc.c-torture/execute/pr36321.c: Likewise. + * gcc.dg/torture/pr8081.c: Likewise. + * gcc.dg/analyzer/data-model-1.c: Don't + 'dg-require-effective-target alloca'. XFAIL relevant + 'dg-warning's for '! alloca'. + * gcc.dg/uninit-38.c: Likewise. + * gcc.dg/uninit-pr98578.c: Likewise. + * gcc.dg/compat/struct-by-value-22_main.c: Comment on + 'dg-require-effective-target alloca'. + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (find-dg-do-what): Gracefully handle the case + that we've not be called (indirectly) from 'dg-test'. + * lib/target-supports.exp (check_effective_target_stack_size) + (check_effective_target_alloca): Catch this. + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (proc find-dg-do-what): New. + * lib/target-supports.exp (check_effective_target_stack_size) + (check_effective_target_alloca): Use it. + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/bpf/diag-alloca-1.c: Adjust 'dg-message'. + * gcc.target/bpf/diag-alloca-2.c: Likewise. + * gcc.target/nvptx/alloca-1-sm_30.c: Likewise. + * gcc.target/nvptx/vla-1-sm_30.c: Likewise. + * lib/target-supports.exp (proc check_effective_target_alloca): + Adjust comment. + +2025-02-22 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118978 + * gm2/pim/fail/badparamtype.mod: New test. + +2025-02-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118954 + * gcc.dg/torture/pr118954.c: New testcase. + +2025-02-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118521 + * g++.dg/torture/pr118521.C: Use dg-bogus properly. + +2025-02-21 Harald Anlauf <anlauf@gmx.de> + + PR fortran/48958 + * gfortran.dg/pointer_init_13.f90: New test. + +2025-02-20 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/malformed-json/empty.sarif: New test. + +2025-02-20 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/2.1.0-invalid/3.11.11-malformed-placeholder.sarif: + Rename to... + * sarif-replay.dg/2.1.0-invalid/3.11.5-unescaped-braces.sarif: + ...this. Update expected subsection in error message, and + expected underline in quoted JSON. + +2025-02-20 Richard Sandiford <richard.sandiford@arm.com> + + PR testsuite/116604 + * gcc.target/aarch64/sve/pcs/args_1.c (callee_pred): Enable scheduling + and use both memory arguments in the same instruction. Expect no + prologue and epilogue code. + +2025-02-20 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/var_stride_2.c: Expect ADD+LSL. + * gcc.target/aarch64/sve/var_stride_4.c: Accept LSL or SBFIZ. + +2025-02-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118521 + * g++.dg/torture/pr118521.C: New testcase. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray_lib_comm_1.f90: Fix up scan_trees. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray/send_char_array_1.f90: Extend test to + catch more cases. + * gfortran.dg/coarray_42.f90: Invert tests use, because no + longer a send is needed when local memory in a coarray is + allocated. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray/coarray_allocated.f90: Adapt to new method + of checking on remote image. + * gfortran.dg/coarray_lib_alloc_4.f90: Same. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray_lib_comm_1.f90: Adapt scan expression. + * gfortran.dg/coarray/get_with_fn_parameter.f90: New test. + * gfortran.dg/coarray/get_with_scalar_fn.f90: New test. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray_lib_comm_1.f90: Adapt to renamed ABI + function. + * gfortran.dg/coarray_stat_function.f90: Same. + * gfortran.dg/coindexed_1.f90: Same. + +2025-02-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/86270 + * gcc.target/i386/pr86270.c: Adjust to check for no reg-reg + copies as well. + +2025-02-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/118936 + * gcc.target/i386/pr118936.c: New test. + +2025-02-20 H.J. Lu <hjl.tools@gmail.com> + + Revert: + 2025-02-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/109780 + PR target/109093 + * g++.target/i386/pr109780-1.C: New test. + * gcc.target/i386/pr109093-1.c: Likewise. + * gcc.target/i386/pr109780-1.c: Likewise. + * gcc.target/i386/pr109780-2.c: Likewise. + * gcc.target/i386/pr109780-3.c: Likewise. + +2025-02-19 Georg-Johann Lay <avr@gjlay.de> + + * gcc.target/avr/torture/isr-04-regs.c: New test. + * gcc.target/avr/isr-test.h: Don't set GPRs to values + that are 0 mod 0x11. + +2025-02-19 Andrew Pinski <quic_apinski@quicinc.com> + + * gcc.target/aarch64/pr112105.c: Change to be -O2 rather + than -O1. + +2025-02-19 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/118300 + * gcc.dg/analyzer/ubsan-pr118300.c: New test. + +2025-02-19 Pan Li <pan2.li@intel.com> + + PR middle-end/116351 + * gcc.target/riscv/rvv/base/pr116351-1.c: New test. + * gcc.target/riscv/rvv/base/pr116351-2.c: New test. + * gcc.target/riscv/rvv/base/pr116351.h: New test. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/vect-shift-imm-round.c: New test. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/wide-mul-reduc-2.c (dg-final): Scan + DOT_PROD_EXPR in optimized tree. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/wide-mul-reduc-1.c: New test. + * gcc.target/loongarch/wide-mul-reduc-2.c: New test. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/vrepli.c: New test. + +2025-02-19 Xi Ruoyao <xry111@xry111.site> + + PR target/115478 + * gcc.target/loongarch/bytepick_shift_128.c: New test. + +2025-02-18 Robin Dapp <rdapp@ventanamicro.com> + + PR target/115703 + * gcc.target/riscv/rvv/autovec/pr115703-run.c: New test. + * gcc.target/riscv/rvv/autovec/pr115703.c: New test. + +2025-02-18 John David Anglin <danglin@gcc.gnu.org> + + PR testsuite/116986 + * gcc.dg/crc-builtin-rev-target32.c: Include stdint.h + instead of stdint-gcc.h. + * gcc.dg/crc-builtin-rev-target64.c: Likewise. + * gcc.dg/crc-builtin-target32.c: Likewise. + * gcc.dg/crc-builtin-target64.c: Likewise. + * gcc.dg/torture/pr115387-2.c: Likewise. + +2025-02-18 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/gomp/metadirective-3.f90: Add xfail when + compiling for offload_nvptx. + +2025-02-18 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/108840 + * gcc.target/aarch64/pr108840.c: Run at -O2 but disable combine. + +2025-02-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/98845 + * gcc.dg/pr98845.c: New testcase. + * gcc.dg/pr81192.c: Adjust. + +2025-02-18 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/rvv/base/bug-9.c: Added new failure check. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-17.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-18.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-19.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-20.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-21.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-22.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-23.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-24.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-25.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-26.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-27.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-28.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-29.c: Likewise. + * gcc.target/riscv/rvv/base/target_attribute_v_with_intrinsic-3.c: Likewise. + +2025-02-18 Pan Li <pan2.li@intel.com> + + PR target/118540 + * gcc.target/riscv/rvv/base/pr118540-1.c: New test. + * gcc.target/riscv/rvv/base/pr118540-2.c: New test. + +2025-02-18 Alexandre Oliva <oliva@adacore.com> + + * lib/scanasm.exp (check-function-bodies): Fix usage comment. + +2025-02-18 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118805 + * gcc.dg/field-merge-26.c: New. + +2025-02-17 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/115271 + * gfortran.dg/gomp/adjust-args-1.f90: Update dg-.* expectations. + * gfortran.dg/gomp/adjust-args-2.f90: Likewise. + * gfortran.dg/gomp/adjust-args-2a.f90: Likewise. + * gfortran.dg/gomp/adjust-args-3.f90: Likewise. + * gfortran.dg/gomp/adjust-args-4.f90: Remove array from c_ptr. + * gfortran.dg/gomp/adjust-args-5.f90: Likewise. + * gfortran.dg/gomp/adjust-args-11.f90: Likewise. Add check that + INTERFACE is now handled in subroutines and in modules. + * gfortran.dg/gomp/adjust-args-13.f90: New test. + * gfortran.dg/gomp/adjust-args-14.f90: New test. + * gfortran.dg/gomp/adjust-args-15.f90: New test. + * gfortran.dg/gomp/declare-variant-21.f90: New test. + +2025-02-17 Uros Bizjak <ubizjak@gmail.com> + + PR middle-end/118288 + * gcc.dg/pr118288.c: New test. + +2025-02-17 Marek Polacek <polacek@redhat.com> + + PR c++/102455 + * g++.dg/ext/vector43.C: New test. + +2025-02-17 Jason Merrill <jason@redhat.com> + + PR c++/118856 + PR c++/118763 + * g++.dg/ext/stmtexpr29.C: New test. + +2025-02-17 Marek Polacek <polacek@redhat.com> + + PR c++/96364 + * g++.dg/cpp0x/gen-attrs-88.C: New test. + +2025-02-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118895 + * gcc.dg/pr118895.c: New testcase. + +2025-02-17 Matthew Malcomson <mmalcomson@nvidia.com> + + PR target/117991 + * g++.dg/template/builtin-speculation-overloads.def: SUCCESS + argument in SPECULATION_ASSERTS now uses a macro `true_def` + instead of the literal `true` for arguments which should work + with `__builtin_speculation_safe_value`. + * g++.dg/template/builtin-speculation-overloads1.C: Define + `true_def` macro on command line to compiler according to the + effective target representing that + `__builtin_speculation_safe_value` does something on this + target. + * g++.dg/template/builtin-speculation-overloads4.C: Likewise. + * lib/target-supports.exp + (check_effective_target_speculation_barrier_defined): New. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: + Add missing avx10_2_512 check. + * gcc.target/i386/avx10_2-512-vminmaxpd-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxph-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vminmaxps-2.c: Ditto. + * gcc.target/i386/avx10-check.h: Change avx10.2 to avx10.2-256. + * gcc.target/i386/avx10_2-bf16-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: Ditto. + * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: Ditto. + * gcc.target/i386/avx10_2-builtin-1.c: Ditto. + * gcc.target/i386/avx10_2-builtin-2.c: Ditto. + * gcc.target/i386/avx10_2-comibf-1.c: Ditto. + * gcc.target/i386/avx10_2-comibf-2.c: Ditto. + * gcc.target/i386/avx10_2-comibf-3.c: Ditto. + * gcc.target/i386/avx10_2-comibf-4.c: Ditto. + * gcc.target/i386/avx10_2-compare-1.c: Ditto. + * gcc.target/i386/avx10_2-compare-1b.c: Ditto. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + * gcc.target/i386/avx10_2-media-1.c: Ditto. + * gcc.target/i386/avx10_2-minmax-1.c: Ditto. + * gcc.target/i386/avx10_2-movrs-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: Ditto. + * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: Ditto. + * gcc.target/i386/avx10_2-rounding-1.c: Ditto. + * gcc.target/i386/avx10_2-rounding-2.c: Ditto. + * gcc.target/i386/avx10_2-rounding-3.c: Ditto. + * gcc.target/i386/avx10_2-satcvt-1.c: Ditto. + * gcc.target/i386/avx10_2-vaddbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcmpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcomisbf16-1.c: Ditto. + * gcc.target/i386/avx10_2-vcomisbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvt2ps2phx-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvthf82ph-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvtps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttpd2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttph2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2dqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2ibs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2iubs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2qqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2udqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttps2uqqs-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttsd2usis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2sis-2.c: Ditto. + * gcc.target/i386/avx10_2-vcvttss2usis-2.c: Ditto. + * gcc.target/i386/avx10_2-vdivbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vdpphps-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vfpclassbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetexpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vgetmantbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxpd-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxph-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxps-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxsd-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxsh-2.c: Ditto. + * gcc.target/i386/avx10_2-vminmaxss-2.c: Ditto. + * gcc.target/i386/avx10_2-vmovd-1.c: Ditto. + * gcc.target/i386/avx10_2-vmovd-2.c: Ditto. + * gcc.target/i386/avx10_2-vmovw-1.c: Ditto. + * gcc.target/i386/avx10_2-vmovw-2.c: Ditto. + * gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto. + * gcc.target/i386/avx10_2-vmulbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbssds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpbuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto. + * gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto. + * gcc.target/i386/avx10_2-vrcpbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vreducebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrndscalebf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vscalefbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsqrtbf16-2.c: Ditto. + * gcc.target/i386/avx10_2-vsubbf16-2.c: Ditto. + * gcc.target/i386/funcspec-56.inc: Ditto. + * gcc.target/i386/part-vect-vec_cmpbf.c: Ditto. + * gcc.target/i386/pr117495.c: Ditto. + * gcc.target/i386/sm4-avx10_2-1.c: Ditto. + * gcc.target/i386/sm4-check.h: Ditto. + * gcc.target/i386/vnniint16-auto-vectorize-3.c: Ditto. + * gcc.target/i386/vnniint8-auto-vectorize-3.c: Ditto. + * lib/target-supports.exp: Ditto. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10-check.h: Change to avx10.1-256. + * gcc.target/i386/avx10_1-1.c: Ditto. + * gcc.target/i386/avx10_1-13.c: Ditto. + * gcc.target/i386/avx10_1-14.c: Ditto. + * gcc.target/i386/avx10_1-21.c: Ditto. + * gcc.target/i386/avx10_1-22.c: Ditto. + * gcc.target/i386/avx10_1-23.c: Ditto. + * gcc.target/i386/avx10_1-24.c: Ditto. + * gcc.target/i386/avx10_1-3.c: Ditto. + * gcc.target/i386/avx10_1-5.c: Ditto. + * gcc.target/i386/avx10_1-6.c: Ditto. + * gcc.target/i386/avx10_1-8.c: Ditto. + * gcc.target/i386/pr117946.c: Ditto. + * gcc.target/i386/avx10_1-12.c: Adjust warning message. + * gcc.target/i386/avx10_1-19.c: Ditto. + * gcc.target/i386/avx10_1-17.c: Adjust to no-avx10.1-512. + +2025-02-17 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118815 + * gcc.target/i386/pr118815.c: New test. + +2025-02-16 Jakub Jelinek <jakub@redhat.com> + + PR target/118248 + * gcc.target/riscv/pr118248.c: New test. + +2025-02-16 Simon Martin <simon@nasilyan.com> + + PR c++/117324 + * g++.dg/parse/defarg19.C: New test. + +2025-02-16 H.J. Lu <hjl.tools@gmail.com> + + PR target/109780 + PR target/109093 + * g++.target/i386/pr109780-1.C: New test. + * gcc.target/i386/pr109093-1.c: Likewise. + * gcc.target/i386/pr109780-1.c: Likewise. + * gcc.target/i386/pr109780-2.c: Likewise. + * gcc.target/i386/pr109780-3.c: Likewise. + +2025-02-15 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/98028 + * gcc.dg/tree-ssa/pr98028.c: New test. + +2025-02-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118080 + * gfortran.dg/value_optional_2.f90: New test. + +2025-02-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/117430 + * gfortran.dg/c_loc_test_17.f90: Use an assignment rather than + PRINT. + * gfortran.dg/c_ptr_tests_10.f03: Use a transfer function. + * gfortran.dg/c_ptr_tests_16.f90: Use an assignment. + * gfortran.dg/c_ptr_tests_9.f03: Use a transfer function. + * gfortran.dg/init_flag_17.f90: Likewise. + * gfortran.dg/pr32601_1.f03: Use an assignment. + +2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> + + * gcc.target/riscv/rvv/autovec/pr117722.c: Scan for vminu and + vmaxu. + +2025-02-15 Robin Dapp <rdapp.gcc@gmail.com> + + * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Scan for add. + * gcc.target/riscv/rvv/autovec/reduc/reduc-9.c: Scan for fadd. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-1.sarif: New test. + * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-2.sarif: New test. + * sarif-replay.dg/2.1.0-valid/3.27.30-fixes-3.sarif: New test. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/2.1.0-valid/3.28.6-annotations-1.sarif: Update + expected output to remove trailing " [error]". + * sarif-replay.dg/2.1.0-valid/unlabelled-secondary-locations.sarif: + Likewise. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/2.1.0-valid/unlabelled-secondary-locations.sarif: + New test. + +2025-02-15 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/118881 + * sarif-replay.dg/2.1.0-valid/3.28.6-annotations-1.sarif: New test. + +2025-02-15 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118846 + * g++.dg/modules/pr118846_a.C: New test. + * g++.dg/modules/pr118846_b.C: New test. + +2025-02-15 Jason Merrill <jason@redhat.com> + + PR c++/118053 + * g++.dg/cpp1y/constexpr-lambda1.C: Add -O. + +2025-02-15 Jason Merrill <jason@redhat.com> + + PR c++/118053 + * g++.dg/cpp1y/constexpr-lambda1.C: New test. + +2025-02-15 Thomas Koenig <tkoenig@gcc.gnu.org> + + * gfortran.dg/interface_54.f90: New test. + +2025-02-15 Jin Ma <jinma@linux.alibaba.com> + + PR target/118872 + * gcc.target/riscv/rvv/base/pr118872.c: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/83144 + * g++.dg/cpp0x/constexpr-83144.C: New test. + +2025-02-14 Georg-Johann Lay <avr@gjlay.de> + + PR target/118878 + * gcc.target/avr/torture/pr118878.c: New test. + +2025-02-14 Patrick Palka <ppalka@redhat.com> + + PR c++/86933 + * g++.dg/cpp1z/variadic-nontype1.C: Mention PR number. + * g++.dg/cpp1z/variadic-nontype2.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/82936 + * g++.dg/cpp0x/vt-82936.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/82794 + * g++.dg/cpp2a/concepts-pr82794.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/70037 + * g++.dg/cpp2a/concepts-pr70037.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/66878 + * g++.dg/lookup/using71.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/66519 + * g++.dg/cpp0x/variadic-parm2.C: New test. + +2025-02-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118852 + * gcc.dg/vect/pr118852.c: New testcase. + +2025-02-14 Jason Merrill <jason@redhat.com> + + PR c++/118856 + * g++.dg/eh/ref-temp3.C: New test. + * g++.dg/eh/ref-temp4.C: New test. + +2025-02-14 Marek Polacek <polacek@redhat.com> + + PR c++/116379 + * g++.dg/cpp1y/decltype-auto9.C: New test. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/const-double-zero-stx.c: Add + '-maddr-reg-reg-cost=1'. + * gcc.target/loongarch/stack-check-alloca-1.c: Likewise. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118843 + * gcc.target/loongarch/pr118843.c: New test. + +2025-02-14 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118828 + * gcc.target/loongarch/pr118828.c: New test. + * gcc.target/loongarch/pr118828-2.c: New test. + * gcc.target/loongarch/pr118828-3.c: New test. + * gcc.target/loongarch/pr118828-4.c: New test. + +2025-02-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/90579 + * gcc.target/i386/pr90579.c: New testcase. + +2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp2a/lambda-uneval22.C: Add check that the primary + specialisation of the lambda is TU-local. + +2025-02-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/107741 + * g++.dg/abi/lambda-ctx2-19.C: Add tests for template members. + * g++.dg/abi/lambda-ctx2-19vs20.C: Likewise. + * g++.dg/abi/lambda-ctx2-20.C: Likewise. + * g++.dg/abi/lambda-ctx2.h: Likewise. + * g++.dg/cpp0x/static-member-init-1.C: Likewise. + +2025-02-13 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/118832 + * gcc.target/riscv/rvv/autovec/pr118832.c: New test. + +2025-02-13 Marek Polacek <polacek@redhat.com> + + PR driver/117739 + * c-c++-common/fhardened-16.c: New test. + * c-c++-common/fhardened-17.c: New test. + * c-c++-common/fhardened-18.c: New test. + * c-c++-common/fhardened-19.c: New test. + * c-c++-common/fhardened-20.c: New test. + * c-c++-common/fhardened-21.c: New test. + +2025-02-13 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp2a/nontype-class72.C: Disable -fimplicit-constexpr. + +2025-02-13 Ed Catmur <ed@catmur.uk> + Jason Merrill <jason@redhat.com> + + PR c++/70536 + * g++.dg/debug/dwarf2/template-func-params-7.C: Check for pack names. + +2025-02-13 Jason Merrill <jason@redhat.com> + + * g++.dg/special/initp1.C: Test disabling -Wprio-ctor-dtor. + +2025-02-13 Jason Merrill <jason@redhat.com> + + * g++.dg/gomp/declare-variant-3.C: Adjust diagnostic. + * g++.dg/gomp/declare-variant-5.C: Adjust diagnostic. + +2025-02-13 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/118845 + * gfortran.dg/recursive_check_4.f03: Adjust call so types matche. + * gfortran.dg/recursive_check_6.f03: Likewise. + * gfortran.dg/specifics_2.f90: Adjust calls so types match. + * gfortran.dg/interface_52.f90: New test. + * gfortran.dg/interface_53.f90: New test. + +2025-02-13 Jason Merrill <jason@redhat.com> + + PR c++/118856 + * g++.dg/cpp23/range-for9.C: New test. + +2025-02-13 Marek Polacek <polacek@redhat.com> + + PR c++/113800 + DR 2450 + * g++.dg/cpp26/pack-indexing15.C: New test. + * g++.dg/cpp2a/nontype-class68.C: New test. + * g++.dg/cpp2a/nontype-class69.C: New test. + * g++.dg/cpp2a/nontype-class70.C: New test. + * g++.dg/cpp2a/nontype-class71.C: New test. + * g++.dg/cpp2a/nontype-class72.C: New test. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR debug/118790 + * gfortran.dg/gomp/pr118790.f90: New test. + +2025-02-13 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118849 + * g++.dg/template/linkage6.C: New test. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/118574 + * g++.dg/coroutines/range-for2.C: New test. + +2025-02-13 Jakub Jelinek <jakub@redhat.com> + + PR c++/118822 + PR c++/118833 + * g++.dg/expr/for9.C: New test. + * g++.dg/cpp26/decomp12.C: New test. + +2025-02-13 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/pr118835.c: New test. + +2025-02-13 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118817 + * gcc.dg/pr118817.c: New testcase. + +2025-02-12 Marek Polacek <polacek@redhat.com> + + PR c++/101740 + * g++.dg/template/dtor12.C: New test. + +2025-02-12 Vineet Gupta <vineetg@rivosinc.com> + + * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-1.c: Change + expected pattern. + * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-4.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-5.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-6.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-7.c: Ditto. + * gcc.target/riscv/rvv/autovec/cond/cond_unary-8.c: Ditto. + * gcc.target/riscv/rvv/autovec/conversions/vncvt-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/conversions/vncvt-rv64gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u16.c: Ditto + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_trunc-1-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/abs-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/abs-rv64gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/vneg-rv32gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/vneg-rv64gcv.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/abs-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_convert-11.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_convert-12.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_neg-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_trunc-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_trunc-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/cond_trunc-3.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/convert-11.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/convert-12.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/neg-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/trunc-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/trunc-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls/trunc-3.c: Ditto. + * gcc.target/riscv/rvv/base/simplify-vdiv.c: Ditto. + * gcc.target/riscv/rvv/base/unop_v_constraint-1.c: Ditto. + +2025-02-12 Jin Ma <jinma@linux.alibaba.com> + + PR target/118601 + * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Move to... + * gcc.target/riscv/rvv/xtheadvector/pr114194-rv64.c: ...here. + * gcc.target/riscv/rvv/xtheadvector/pr114194-rv32.c: New test. + * gcc.target/riscv/rvv/xtheadvector/pr118601.c: New test. + +2025-02-11 Jeff Law <jlaw@ventanamicro.com> + + PR target/115478 + * gcc.target/aarch64/bitint-args.c: Update expected output. + +2025-02-11 Jason Merrill <jason@redhat.com> + + PR c++/188574 + * g++.dg/cpp23/range-for3.C: Use -frange-for-ext-temps. + * g++.dg/cpp23/range-for4.C: Adjust expected result. + +2025-02-11 Jason Merrill <jason@redhat.com> + + PR c++/118574 + PR c++/107637 + * g++.dg/coroutines/range-for1.C: New test. + +2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/pragma_cpp_predefs_4.c: Adjust expected + defines. + * gcc.target/aarch64/simd/vmla_lane_indices_1.c: Modify target + pragmas. + * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_1.c: + Ditto. + * gcc.target/aarch64/sve/acle/general-c/ternary_mfloat8_lane_group_selection_1.c: + Ditto. + * gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c: Ditto. + * gcc.target/aarch64/sve2/acle/asm/dot_mf8.c: Ditto. + +2025-02-11 Andrew Carlotti <andrew.carlotti@arm.com> + + * lib/gcc-defs.exp + (gcc_runtest_parallelize_limit_minor): New global variable. + (gcc_parallel_test_run_p): Use new variable for batch size. + +2025-02-11 Simon Martin <simon@nasilyan.com> + + PR c++/118306 + PR c++/118304 + * g++.old-deja/g++.jason/operator.C: Adjust bogus test + expectation (char** vs char*). + * g++.dg/parse/constructor4.C: New test. + * g++.dg/parse/constructor5.C: New test. + * g++.dg/parse/conv_op2.C: New test. + * g++.dg/parse/default_to_int.C: New test. + +2025-02-11 David Malcolm <dmalcolm@redhat.com> + + PR sarif-replay/118792 + * sarif-replay.dg/2.1.0-valid/error-with-note.sarif: Update + expected output to reflect fix to off-by-one error in handling of + "endColumn" property. + * sarif-replay.dg/2.1.0-valid/malloc-vs-local-4.c.sarif: Likewise. + * sarif-replay.dg/2.1.0-valid/signal-1.c.moved.sarif: Likewise. + * sarif-replay.dg/2.1.0-valid/signal-1.c.sarif: Likewise. + +2025-02-11 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118817 + * g++.dg/lto/pr118817_0.C: New testcase. + +2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/adl-5_a.c: Move to... + * g++.dg/modules/adl-5_a.C: ...here. + * g++.dg/modules/adl-5_d.C: Add errors. + +2025-02-11 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118807 + * g++.dg/modules/pr118807.C: New test. + +2025-02-11 Jie Mei <jie.mei@oss.cipunited.com> + Xi Ruoyao <xry111@xry111.site> + + * gcc.target/mips/mips-class.c: New tests for MIPSr6 + * gcc.target/mips/mips-minamaxa.c: Same as above. + * gcc.target/mips/mips-rint.c: Same as above. + +2025-02-11 Xi Ruoyao <xry111@xry111.site> + + * lib/target-supports.exp + (check_effective_target_vect_call_btrunc): Drop LoongArch. + (check_effective_target_vect_call_btruncf): Likewise. + (check_effective_target_vect_call_ceil): Likewise. + (check_effective_target_vect_call_ceilf): Likewise. + (check_effective_target_vect_call_floor): Likewise. + (check_effective_target_vect_call_floorf): Likewise. + (check_effective_target_vect_call_lfloor): Likewise. + (check_effective_target_vect_call_lfloorf): Likewise. + +2025-02-10 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/24878 + * gfortran.dg/interface_51.f90: Adjust expected error message. + +2025-02-10 Harald Anlauf <anlauf@gmx.de> + + PR fortran/56423 + * gfortran.dg/derived_constructor_comps_2.f90: Adjust test. + * gfortran.dg/derived_constructor_comps_8.f90: New test. + +2025-02-10 Martin Jambor <mjambor@suse.cz> + + PR ipa/118097 + * gcc.dg/ipa/pr118097.c: New test. + * gcc.dg/ipa/pr118535.c: Likewise. + * gcc.dg/ipa/ipa-notypes-1.c: Likewise. + +2025-02-10 Richard Earnshaw <rearnsha@arm.com> + + PR target/118089 + * gcc.target/arm/thumb2-pop-loreg.c (dg-require-effective-target): Fix + typo in directive. + +2025-02-10 Jakub Jelinek <jakub@redhat.com> + + PR target/118623 + * gcc.c-torture/execute/pr118623.c: New test. + +2025-02-10 Tamar Christina <tamar.christina@arm.com> + + PR testsuite/118754 + * gcc.dg/vect/vect-tail-nomask-1.c: Add novector. + * gcc.target/i386/pr106010-8c.c: Likewise. + +2025-02-09 Jeff Law <jlaw@ventanamicro.com> + + PR target/115123 + * gcc.target/riscv/rvv/base/pr114352-3.c: Adjust expected output. + * gcc.target/riscv/rvv/vsetvl/avl_multiple-7.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_multiple-8.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-66.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-82.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-83.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-86.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-88.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-90.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-91.c: Likewise. + * gcc.target/riscv/rvv/vsetvl/avl_single-92.c: Likewise. + +2025-02-09 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/24878 + * gfortran.dg/interface_51.f90: New test. + +2025-02-09 Jeff Law <jlaw@ventanamicro.com> + + PR target/118146 + * gcc.target/riscv/pr118146-1.c: New test. + * gcc.target/riscv/pr118146-2.c: New test. + +2025-02-08 Sandra Loosemore <sloosemore@baylibre.com> + + PR middle-end/107067 + * gfortran.dg/gomp/metadirective-11.f90: Remove the dg-ice, update + for current behavior, and add more tests to exercise the new error + code. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (gcc-dg-prune): Turn + 'sorry, unimplemented: exception handling not supported' into + UNSUPPORTED. + * gcc.dg/pr104464.c: Remove GCN XFAIL. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.dg/cleanup-12.c: Don't 'dg-skip-if "" { ! nonlocal_goto }'. + * gcc.dg/cleanup-13.c: Likewise. + * gcc.dg/cleanup-5.c: Likewise. + * gcc.dg/gimplefe-44.c: Don't + 'dg-require-effective-target nonlocal_goto'. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/target-supports.exp (check_effective_target_exceptions): + 'return 0' for '[istarget nvptx-*-*]'. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/118772 + * lib/target-supports.exp (check_effective_target_exceptions): + 'return 0' for '[istarget bpf-*-*]'. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/gcc-dg.exp (gcc-dg-prune): Clarify effective-target + 'exceptions_enabled'. + * lib/target-supports.exp + (check_effective_target_exceptions_enabled): Don't consider + effective-target 'exceptions'. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.dg/pr88870.c: Don't 'dg-require-effective-target nonlocal_goto'. + +2025-02-08 Jakub Jelinek <jakub@redhat.com> + + PR target/118776 + * gcc.target/i386/pr118776.c: New test. + +2025-02-08 H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/111673 + * gcc.target/i386/pr111673.c: Verify that PUSH/POP can be + skipped. + +2025-02-07 Harald Anlauf <anlauf@gmx.de> + + PR fortran/59252 + * gfortran.dg/allocatable_char_1.f90: New test. + +2025-02-07 Richard Earnshaw <rearnsha@arm.com> + + PR target/118089 + * gcc.target/arm/thumb2-pop-loreg.c: New test. + +2025-02-07 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/116244 + * g++.target/m68k/m68k.exp: New test driver. + * g++.target/m68k/pr116244.C: New test. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/115586 + * g++.dg/cpp26/name-independent-decl9.C: New test. + * g++.dg/cpp26/name-independent-decl10.C: New test. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + Jason Merrill <jason@redhat.com> + + PR c++/86769 + * g++.dg/diagnostic/redeclaration-7.C: New test. + * g++.dg/expr/for3.C: New test. + * g++.dg/expr/for4.C: New test. + * g++.dg/expr/for5.C: New test. + * g++.dg/expr/for6.C: New test. + * g++.dg/expr/for7.C: New test. + * g++.dg/expr/for8.C: New test. + * g++.dg/ext/stmtexpr27.C: New test. + * g++.dg/cpp2a/constexpr-86769.C: New test. + * g++.dg/cpp26/name-independent-decl7.C: New test. + * g++.dg/cpp26/name-independent-decl8.C: New test. + +2025-02-07 Pan Li <pan2.li@intel.com> + + PR target/118103 + * gcc.target/riscv/rvv/base/pr118103-2.c: New test. + * gcc.target/riscv/rvv/base/pr118103-run-2.c: New test. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/108357 + * gcc.dg/tree-ssa/pr108357.c: Tolerate later optimization. + +2025-02-07 Thomas Schwinge <tschwinge@baylibre.com> + + * c-c++-common/goacc/pr92793-1.c: Remove + '-fdump-tree-original-lineno' XFAILs. + +2025-02-07 Marek Polacek <polacek@redhat.com> + + PR c++/117106 + PR c++/118190 + * g++.dg/cpp0x/noexcept89.C: New test. + * g++.dg/cpp0x/noexcept90.C: New test. + +2025-02-07 Simon Martin <simon@nasilyan.com> + + PR c++/118282 + * g++.dg/conversion/op8.C: New test. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118763 + * g++.dg/asan/pr118763.C: New test. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118773 + * g++.dg/cpp0x/gen-attrs-87.C: New test. + * g++.dg/gomp/attrs-3.C: Adjust expected diagnostics. + +2025-02-07 Jakub Jelinek <jakub@redhat.com> + + PR c++/118661 + * g++.dg/cpp0x/constexpr-volatile4.C: New test. + * g++.dg/cpp0x/constexpr-union9.C: New test. + +2025-02-07 Tomáš Trnka <trnka@scm.com> + + PR fortran/116829 + * gfortran.dg/derived_init_7.f90: New test. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118514 + PR tree-optimization/118706 + * gcc.dg/field-merge-25.c: New. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/sparc/vis3move-3.c: Select ultrasparc. Skip with + -mfix-ut699. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/sparc/tls-ld-int16.c: Skip when tls is emulated. + * gcc.target/sparc/tls-ld-int32.c: Likewise. + * gcc.target/sparc/tls-ld-int8.c: Likewise. + * gcc.target/sparc/tls-ld-uint16.c: Likewise. + * gcc.target/sparc/tls-ld-uint32.c: Likewise. + * gcc.target/sparc/tls-ld-uint8.c: Likewise. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/sparc/sparc-ret-1.c: Skip on -mfix-ut699. + +2025-02-07 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/sparc/niagara7-align.c: Use -mtune. + +2025-02-06 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/madd-split2-1.c: Update expected + output. + +2025-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/114618 + * gfortran.dg/pr114618.f90: New test. + +2025-02-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/110345 + * g++.dg/cpp0x/attr-no_unique_address1.C: New test. + +2025-02-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/110345 + * g++.dg/cpp0x/attr-noreturn1.C: New test. + +2025-02-06 Jakub Jelinek <jakub@redhat.com> + + PR c++/110345 + * g++.dg/cpp0x/attr-nodiscard1.C: New test. + +2025-02-06 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/118750 + * gfortran.dg/associate_72.f90: New test. + +2025-02-06 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117506 + * gcc.dg/pr117506.c: New test. + * gcc.target/riscv/pr117506.c: New test. + +2025-02-06 Lulu Cheng <chenglulu@loongson.cn> + + PR target/118561 + * gcc.target/loongarch/pr118561.c: New test. + +2025-02-06 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/110449 + * gcc.target/aarch64/pr110449.c: Expect an increment by 8.0, + but test that there is no MOV. + +2025-02-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118749 + * gcc.dg/vect/pr118749.c: New testcase. + +2025-02-05 Simon Martin <simon@nasilyan.com> + + PR c++/118319 + * g++.dg/parse/defarg18.C: New test. + * g++.dg/parse/defarg18a.C: New test. + +2025-02-05 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/115568 + * gcc.target/i386/pr115568.c: New. + +2025-02-05 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118740 + * gfortran.dg/gomp/append_args-2.f90: Update for line change. + +2025-02-05 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/117239 + * gcc.dg/pr117239.c: New test. + +2025-02-05 Xi Ruoyao <xry111@xry111.site> + + PR tree-optimization/118727 + * gcc.dg/pr108692.c: Mention PR 118727 in the comment. + * gcc.dg/pr118727.c: New test case. + +2025-02-05 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pr100056.c: Restore the original version of + the scan-assemblers. + +2025-02-05 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/47485 + * gfortran.dg/dependency_generation_1.f90: New test. + +2025-02-04 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/115112 + * gm2/pim/run/pass/dectest.mod: New test. + * gm2/pim/run/pass/inctest.mod: New test. + +2025-02-04 Marek Polacek <polacek@redhat.com> + + PR c++/94100 + * g++.dg/cpp0x/variadic188.C: New test. + +2025-02-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/118671 + * g++.dg/cpp/embed-25.C: New test. + * g++.dg/cpp0x/pr118671.C: New test. + +2025-02-04 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/riscv/pr118170.c: Ignore for E ABI. + +2025-02-04 Thiago Jung Bauermann <thiago.bauermann@linaro.org> + + PR target/116010 + * gcc.target/arm/simd/mve-vabs.c: Test tree dump and adjust to new + code. + +2025-02-04 Marek Polacek <polacek@redhat.com> + + PR c++/117778 + * g++.dg/cpp1y/lambda-generic-117778.C: New test. + * g++.dg/cpp2a/abbrev-fn2.C: New test. + * g++.dg/cpp2a/abbrev-fn3.C: New test. + +2025-02-04 Marek Polacek <polacek@redhat.com> + + PR c++/118718 + * g++.dg/warn/Wvexing-parse10.C: New test. + +2025-02-04 kelefth <konstantinos.eleftheriou@vrull.eu> + + PR testsuite/116845 + * gcc.dg/pr109393.c: XFAIL on ilp32 targets. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR c/118742 + * gcc.dg/gimplefe-56.c: New testcase. + +2025-02-04 Ilya Leoshkevich <iii@linux.ibm.com> + + * gcc.target/s390/call-z10-pic-nodatarel.c: Adjust + expectations. + * gcc.target/s390/call-z10-pic.c: Likewise. + * gcc.target/s390/call-z10.c: Likewise. + * gcc.target/s390/call-z9-pic-nodatarel.c: Likewise. + * gcc.target/s390/call-z9-pic.c: Likewise. + * gcc.target/s390/call-z9.c: Likewise. + +2025-02-04 Simon Martin <simon@nasilyan.com> + Jason Merrill <jason@redhat.com> + + PR c++/117114 + PR c++/109918 + * g++.dg/warn/Woverloaded-virt1.C: Check that no warning is + emitted for non virtual base methods. + * g++.dg/warn/Woverloaded-virt10.C: New test. + * g++.dg/warn/Woverloaded-virt11.C: New test. + * g++.dg/warn/Woverloaded-virt12.C: New test. + * g++.dg/warn/Woverloaded-virt13.C: New test. + * g++.dg/warn/Woverloaded-virt5.C: New test. + * g++.dg/warn/Woverloaded-virt6.C: New test. + * g++.dg/warn/Woverloaded-virt7.C: New test. + * g++.dg/warn/Woverloaded-virt8.C: New test. + * g++.dg/warn/Woverloaded-virt9.C: New test. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117113 + * gcc.dg/torture/pr117113.c: New testcase. + +2025-02-04 Simon Martin <simon@nasilyan.com> + + PR c++/114619 + * g++.dg/init/no-elide4.C: New test. + +2025-02-04 Jakub Jelinek <jakub@redhat.com> + + PR c++/118719 + * g++.dg/cpp1z/decomp63.C: New test. + +2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> + + * gfortran.dg/unsigned_15.f90: Adjust error messages. + * gfortran.dg/unsigned_43.f90: New test. + * gfortran.dg/unsigned_44.f90: New test. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/117611 + * gcc.dg/fixed-point/pr117611.c: New testcase. + +2025-02-04 Richard Biener <rguenther@suse.de> + + PR lto/113207 + * gcc.dg/pr113207.c: New testcase. + +2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/108205 + * g++.dg/modules/contracts-5_a.C: New test. + * g++.dg/modules/contracts-5_b.C: New test. + +2025-02-04 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/98893 + * g++.dg/modules/pr98893_a.H: New test. + * g++.dg/modules/pr98893_b.C: New test. + +2025-02-03 A J Ryan Solutions Ltd <gcc.gnu.org@ajryansolutions.co.uk> + + PR c++/118265 + * g++.dg/cpp1z/variadic-nontype1.C: New file. + +2025-02-03 Iain Sandoe <iains.gcc@gmail.com> + Jason Merrill <jason@redhat.com> + + PR c++/116506 + PR c++/116880 + * g++.dg/coroutines/pr116506.C: New test. + * g++.dg/coroutines/pr116880.C: New test. + +2025-02-03 Jason Merrill <jason@redhat.com> + + PR c++/116914 + PR c++/117231 + PR c++/118470 + PR c++/118491 + * g++.dg/coroutines/coro-range-for1.C: New test. + +2025-02-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/93289 + * gfortran.dg/unlimited_polymorphic_1.f03: Pad element in character + array constructor to correct length. + * gfortran.dg/char_array_constructor_5.f90: New test. + +2025-02-03 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/sve/acle/general/dupq_12.c: New test. + +2025-02-03 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118717 + * gcc.dg/torture/pr118717.c: New testcase. + +2025-02-02 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/117411 + * gm2/iso/run/pass/except9.mod: New test. + * gm2/iso/run/pass/lazyunique.mod: New test. + +2025-02-02 Lewis Hyatt <lhyatt@gmail.com> + + PR middle-end/115913 + * c-c++-common/cpp/pr115913.c: New test. + +2025-02-01 H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/111673 + * gcc.target/i386/pr111673.c: New file. + +2025-02-01 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118703 + * gm2/builtins/run/pass/testbitfns.mod: New test. + +2025-02-01 H.J. Lu <hjl.tools@gmail.com> + + PR target/118713 + * gcc.target/i386/pr118713-1-x32.c: New test. + * gcc.target/i386/pr118713-1.c: Likewise. + * gcc.target/i386/pr118713-2-x32.c: Likewise. + * gcc.target/i386/pr118713-2.c: Likewise. + * gcc.target/i386/pr118713-3-x32.c: Likewise. + * gcc.target/i386/pr118713-3.c: Likewise. + * gcc.target/i386/pr118713-4-x32.c: Likewise. + * gcc.target/i386/pr118713-4.c: Likewise. + * gcc.target/i386/pr118713-5-x32.c: Likewise. + * gcc.target/i386/pr118713-5.c: Likewise. + * gcc.target/i386/pr118713-6-x32.c: Likewise. + * gcc.target/i386/pr118713-6.c: Likewise. + * gcc.target/i386/pr118713-7-x32.c: Likewise. + * gcc.target/i386/pr118713-7.c: Likewise. + * gcc.target/i386/pr118713-8-x32.c: Likewise. + * gcc.target/i386/pr118713-8.c: Likewise. + * gcc.target/i386/pr118713-9-x32.c: Likewise. + * gcc.target/i386/pr118713-9.c: Likewise. + * gcc.target/i386/pr118713-10-x32.c: Likewise. + * gcc.target/i386/pr118713-10.c: Likewise. + * gcc.target/i386/pr118713-11-x32.c: Likewise. + * gcc.target/i386/pr118713-11.c: Likewise. + * gcc.target/i386/pr118713-12-x32.c: Likewise. + * gcc.target/i386/pr118713-12.c: Likewise. + +2025-02-01 David Malcolm <dmalcolm@redhat.com> + + * sarif-replay.dg/2.1.0-invalid/3.33.3-index-out-of-range.sarif: + New test. + * sarif-replay.dg/2.1.0-valid/spec-example-4.sarif: Update expected + output to reflect that we now find the function name for the + events in the path. + +2025-02-01 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/warn33.adb: New test. + * gnat.dg/warn33_pkg.ads: New helper. + +2025-02-01 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/ssp-global.c: New file. + +2025-02-01 Jeff Law <jlaw@ventanamicro.com> + + PR tree-optimization/114277 + * gcc.target/i386/pr114277.c: New test. + * gcc.target/riscv/pr114277.c: Likewise. + Co-author: Andrew Pinski <quic_apinski@quicinc.com> + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR ipa/117432 + * gcc.c-torture/execute/pr117432.c: New test. + * gcc.target/i386/pr117432.c: New test. + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR c++/117516 + * g++.dg/ext/flexary9.C: Expect different wording of one of the + warnings and at a different line. + * g++.dg/ext/flexary19.C: Likewise. + * g++.dg/ext/flexary42.C: New test. + * g++.dg/other/pr117516.C: New test. + +2025-01-31 Harald Anlauf <anlauf@gmx.de> + + PR fortran/108454 + * gfortran.dg/common_29.f90: New test. + +2025-01-31 Marek Polacek <polacek@redhat.com> + + PR c++/117501 + * g++.dg/cpp2a/consteval39.C: New test. + * g++.dg/cpp2a/consteval40.C: New test. + +2025-01-31 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/116234 + * gfortran.target/aarch64/aarch64.exp: New. + * gfortran.target/aarch64/pr116234.f: New. + +2025-01-31 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/117498 + * gcc.c-torture/execute/pr117498.c: New test. + +2025-01-31 H.J. Lu <hjl.tools@gmail.com> + + PR target/115673 + * gcc.target/i386/force-indirect-call-2.c: Allow indirect branch + via GOT. + +2025-01-31 Richard Biener <rguenther@suse.de> + + PR debug/100530 + * gcc.target/i386/pr100530.c: New testcase. + +2025-01-30 Alexandre Oliva <oliva@adacore.com> + + PR target/113689 + * gcc.target/i386/pr113689-1.c: Require profiling support. + * gcc.target/i386/pr113689-2.c: Likewise. + * gcc.target/i386/pr113689-3.c: Likewise. + +2025-01-30 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/vect/vect-ifcvt-18.c: Split -Ofast out of + avx_runtime. + +2025-01-30 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Tobias Burnus <tobias@codesourcery.com> + Paul-Antoine Arras <pa@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * gfortran.dg/gomp/metadirective-1.f90: New. + * gfortran.dg/gomp/metadirective-10.f90: New. + * gfortran.dg/gomp/metadirective-11.f90: New. + * gfortran.dg/gomp/metadirective-12.f90: New. + * gfortran.dg/gomp/metadirective-13.f90: New. + * gfortran.dg/gomp/metadirective-2.f90: New. + * gfortran.dg/gomp/metadirective-3.f90: New. + * gfortran.dg/gomp/metadirective-4.f90: New. + * gfortran.dg/gomp/metadirective-5.f90: New. + * gfortran.dg/gomp/metadirective-6.f90: New. + * gfortran.dg/gomp/metadirective-7.f90: New. + * gfortran.dg/gomp/metadirective-8.f90: New. + * gfortran.dg/gomp/metadirective-9.f90: New. + * gfortran.dg/gomp/metadirective-construct.f90: New. + * gfortran.dg/gomp/metadirective-no-score.f90: New. + * gfortran.dg/gomp/pure-1.f90 (func_metadirective): New. + (func_metadirective_2): New. + (func_metadirective_3): New. + * gfortran.dg/gomp/pure-2.f90 (func_metadirective): Delete. + +2025-01-30 Jakub Jelinek <jakub@redhat.com> + Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + PR target/118696 + * gcc.dg/pr118696.c: New test. + * gcc.target/s390/vector/pr118696.c: New test. + * gcc.target/s390/vector/vec-abs-emu.c: Expect vrepg with 0 as last + operand rather than 1. + * gcc.target/s390/vector/vec-max-emu.c: Likewise. + * gcc.target/s390/vector/vec-min-emu.c: Likewise. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR middle-end/118695 + * gcc.dg/pr118695.c: New testcase. + +2025-01-30 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/append-args-1.c: Update dg-*. + * c-c++-common/gomp/append-args-3.c: Likewise. + * g++.dg/gomp/append-args-1.C: Likewise. + * gfortran.dg/gomp/adjust-args-1.f90: Likewise. + * gfortran.dg/gomp/adjust-args-3.f90: Likewise. + * gfortran.dg/gomp/declare-variant-2.f90: Likewise. + * c-c++-common/gomp/append-args-6.c: New test. + * c-c++-common/gomp/append-args-7.c: New test. + * c-c++-common/gomp/append-args-8.c: New test. + * c-c++-common/gomp/append-args-9.c: New test. + * g++.dg/gomp/append-args-4.C: New test. + * g++.dg/gomp/append-args-5.C: New test. + * g++.dg/gomp/append-args-6.C: New test. + * g++.dg/gomp/append-args-7.C: New test. + * gcc.dg/gomp/append-args-1.c: New test. + * gfortran.dg/gomp/append_args-1.f90: New test. + * gfortran.dg/gomp/append_args-2.f90: New test. + * gfortran.dg/gomp/append_args-3.f90: New test. + * gfortran.dg/gomp/append_args-4.f90: New test. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR middle-end/118692 + * gcc.dg/pr118692.c: New testcase. + +2025-01-30 Richard Biener <rguenther@suse.de> + + PR tree-optimization/114052 + * gcc.dg/pr114052-1.c: New testcase. + +2025-01-30 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118320 + * g++.dg/torture/pr118320.C: New test. + +2025-01-30 Jeff Law <jlaw@ventanamicro.com> + + PR target/116860 + * gcc.dg/tree-ssa/fold-xor-and-or.c: Set logical-op-non-short-circuit. + * gcc.dg/tree-ssa/fold-xor-or.c: Similarly. + +2025-01-29 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118010 + PR modula2/118183 + PR modula2/116073 + * gm2/pim/run/pass/printtypesize.mod: New test. + +2025-01-29 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118429 + * gcc.c-torture/compile/pr118429.c: New test. + +2025-01-29 Marek Polacek <polacek@redhat.com> + + PR c++/57533 + * g++.dg/eh/throw5.C: New test. + +2025-01-29 Siddhesh Poyarekar <siddhesh@gotplt.org> + + PR testsuite/118127 + * lib/target-supports.exp + (check_effective_target_long_double_is_ibm128): New + procedure. + * gfortran.dg/default_format_2.f90: xfail for + long_double_is_ibm128. + * gfortran.dg/default_format_denormal_2.f90: Likewise. + * gfortran.dg/large_real_kind_form_io_2.f90: Likewise. + +2025-01-29 Martin Jambor <mjambor@suse.cz> + Michal Jireš <mjires@suse.cz> + + PR tree-optimization/117892 + * gcc.dg/tree-ssa/pr117892.c: New test. + * gcc.dg/tree-ssa/pr118517.c: Likewise. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * gcc.target/riscv/pr117688.h: Add test helper macros. + * gcc.target/riscv/pr117688-trunc-run-1-s16-to-s8.c: New test. + * gcc.target/riscv/pr117688-trunc-run-1-s32-to-s16.c: New test. + * gcc.target/riscv/pr117688-trunc-run-1-s32-to-s8.c: New test. + * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s16.c: New test. + * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s32.c: New test. + * gcc.target/riscv/pr117688-trunc-run-1-s64-to-s8.c: New test. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * gcc.target/riscv/pr117688.h: Add test helper macro. + * gcc.target/riscv/pr117688-sub-run-1-s16.c: New test. + * gcc.target/riscv/pr117688-sub-run-1-s32.c: New test. + * gcc.target/riscv/pr117688-sub-run-1-s64.c: New test. + * gcc.target/riscv/pr117688-sub-run-1-s8.c: New test. + +2025-01-29 Pan Li <pan2.li@intel.com> + + PR target/117688 + * gcc.target/riscv/pr117688-add-run-1-s16.c: New test. + * gcc.target/riscv/pr117688-add-run-1-s32.c: New test. + * gcc.target/riscv/pr117688-add-run-1-s64.c: New test. + * gcc.target/riscv/pr117688-add-run-1-s8.c: New test. + * gcc.target/riscv/pr117688.h: New test. + +2025-01-29 Richard Biener <rguenther@suse.de> + + PR middle-end/118684 + * gcc.dg/pr118684.c: Require automatic_stack_alignment. + +2025-01-29 Jakub Jelinek <jakub@redhat.com> + + PR c++/118655 + * g++.dg/ext/is_bounded_array.C: Extend. + +2025-01-28 Jason Merrill <jason@redhat.com> + + PR c++/118285 + * g++.dg/cpp0x/initlist-opt7.C: New test. + +2025-01-28 Jason Merrill <jason@redhat.com> + + PR c++/118673 + * g++.dg/cpp0x/initlist-opt6.C: New test. + +2025-01-28 Richard Biener <rguenther@suse.de> + + PR middle-end/118684 + * gcc.dg/pr118684.c: New testcase. + +2025-01-28 David Malcolm <dmalcolm@redhat.com> + + PR other/118675 + * gcc.dg/sarif-output/bad-binary-op.py: Update expected output for + escaping of braces in message text. + * gcc.dg/sarif-output/missing-semicolon.py: Likewise. + * gcc.dg/sarif-output/multiple-outputs.py: Likewise. + +2025-01-28 Patrick Palka <ppalka@redhat.com> + + PR c++/117855 + * g++.dg/cpp23/class-deduction-inherited7.C: New test. + +2025-01-28 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118663 + * gcc.target/powerpc/pr118663.c: New. + +2025-01-28 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117424 + * gcc.dg/tree-ssa/ssa-lim-25.c: New testcase. + +2025-01-28 Thomas Schwinge <tschwinge@baylibre.com> + + * c-c++-common/gomp/defaultmap-4.c: Adjust. + * c-c++-common/gomp/defaultmap-5.c: Likewise. + * c-c++-common/gomp/target-implicit-map-1.c: Likewise. + * c-c++-common/gomp/target-implicit-map-2.c: Likewise. + * gfortran.dg/gomp/defaultmap-8.f90: Likewise. + * gfortran.dg/gomp/defaultmap-9.f90: Likewise. + * gfortran.dg/gomp/map-subarray.f90: Likewise. + * gfortran.dg/gomp/target-enter-exit-data.f90: Likewise. + +2025-01-28 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/118638 + * gcc.c-torture/execute/pr118638.c: New test. + +2025-01-28 Hafiz Abid Qadeer <abidh@codesourcery.com> + + * c-c++-common/goacc/implied-copy-1.c: New test. + * c-c++-common/goacc/implied-copy-2.c: New test. + * g++.dg/goacc/implied-copy.C: New test. + * gcc.dg/goacc/implied-copy.c: New test. + * gfortran.dg/goacc/implied-copy-1.f90: New test. + * gfortran.dg/goacc/implied-copy-2.f90: New test. + +2025-01-28 Jakub Jelinek <jakub@redhat.com> + + PR c/116357 + * gcc.dg/pr116357.c: New test. + +2025-01-27 Jason Merrill <jason@redhat.com> + + PR c++/118632 + * g++.dg/cpp0x/nontype7.C: New test. + +2025-01-27 Vineet Gupta <vineetg@rivosinc.com> + + PR target/118646 + * gfortran.target/riscv/rvv/pr118646.f90 (New Test). + +2025-01-27 Simon Martin <simon@nasilyan.com> + + PR c++/114292 + * g++.dg/cpp1y/lambda-ice4.C: New test. + +2025-01-27 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Remove + VEC_SHL_INSERT check. + * gcc.target/riscv/rvv/autovec/reduc/reduc-9.c: Ditto. + +2025-01-27 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c: + Distinguish between zvfh and !zvfh. + +2025-01-27 Robin Dapp <rdapp@ventanamicro.com> + + PR target/117173 + * gcc.dg/fold-perm-2.c: Run with two-source permutes. + * gcc.dg/pr54346.c: Ditto. + +2025-01-27 Harald Anlauf <anlauf@gmx.de> + + PR fortran/110993 + * gfortran.dg/use_rename_14.f90: New test. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * g++.dg/modules/dr2867-1_a.H: New test. + * g++.dg/modules/dr2867-1_b.C: New test. + * g++.dg/modules/dr2867-2_a.H: New test. + * g++.dg/modules/dr2867-2_b.C: New test. + * g++.dg/modules/dr2867-3_a.H: New test. + * g++.dg/modules/dr2867-3_b.C: New test. + * g++.dg/modules/dr2867-4_a.H: New test. + * g++.dg/modules/dr2867-4_b.C: New test. + * g++.dg/modules/dr2867-1_a.H.jj1: New file. + * g++.dg/modules/dr2867-1_b.C.jj1: New file. + * g++.dg/modules/dr2867-2_a.H.jj1: New file. + * g++.dg/modules/dr2867-2_b.C.jj1: New file. + * g++.dg/modules/dr2867-3_a.H.jj1: New file. + * g++.dg/modules/dr2867-3_b.C.jj1: New file. + * g++.dg/modules/dr2867-4_a.H.jj1: New file. + * g++.dg/modules/dr2867-4_b.C.jj1: New file. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * g++.dg/DRs/dr2867-5.C: New test. + * g++.dg/DRs/dr2867-6.C: New test. + * g++.dg/DRs/dr2867-7.C: New test. + * g++.dg/DRs/dr2867-8.C: New test. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118653 + * gcc.dg/vect/pr118653.c: New testcase. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/118662 + * gcc.dg/torture/pr118662.c: New testcase. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR middle-end/118643 + * gcc.dg/pr118643.c: New testcase. + +2025-01-27 Richard Biener <rguenther@suse.de> + + PR tree-optimization/112859 + PR tree-optimization/115347 + * gcc.dg/torture/pr112859.c: New testcase. + * gcc.dg/torture/pr115347.c: Likewise. + +2025-01-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/118640 + * gfortran.dg/pr118640.f90: New test. + +2025-01-27 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118637 + * gcc.dg/tree-ssa/pr118637.c: New test. + +2025-01-27 Soumya AR <soumyaa@nvidia.com> + + PR target/118490 + * gcc.dg/pr118490.c: New test. + * gcc.dg/pr: New file. + +2025-01-26 Sandra Loosemore <sloosemore@baylibre.com> + + * gfortran.dg/gomp/atomic-26.f90: Correct expected output after + fixing typo in error message. + +2025-01-26 Pan Li <pan2.li@intel.com> + + PR target/118103 + * gcc.target/riscv/rvv/base/pr118103-1.c: New test. + * gcc.target/riscv/rvv/base/pr118103-run-1.c: New test. + +2025-01-25 Harald Anlauf <anlauf@gmx.de> + + PR fortran/58857 + * gfortran.dg/uncommon_block_data_2.f90: New test. + +2025-01-25 Simon Martin <simon@nasilyan.com> + + PR c++/118239 + * g++.dg/cpp0x/constexpr-base8.C: New test. + +2025-01-25 Jakub Jelinek <jakub@redhat.com> + + PR c/118639 + * c-c++-common/gomp/pr118639.c: New test. + * c-c++-common/goacc/cache-2.c: Remove one xfail for c. + +2025-01-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/117827 + * g++.dg/init/array66.C: New test. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/116568 + * g++.dg/modules/lambda-8.h: New test. + * g++.dg/modules/lambda-8_a.H: New test. + * g++.dg/modules/lambda-8_b.C: New test. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/116568 + * g++.dg/modules/internal-4_b.C: Remove XFAIL, add lambda alias + testcase. + * g++.dg/modules/lambda-9.h: New test. + * g++.dg/modules/lambda-9_a.H: New test. + * g++.dg/modules/lambda-9_b.C: New test. + +2025-01-25 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118245 + * g++.dg/abi/lambda-ctx3.C: New test. + * g++.dg/cpp2a/lambda-uneval22.C: New test. + * g++.dg/cpp2a/lambda-uneval23.C: New test. + +2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118589 + * lib/gm2-dg.exp (gm2.exp): load_lib. + * gm2.dg/pim/fail/badopaque.mod: New test. + * gm2.dg/pim/fail/badopaque2.mod: New test. + * gm2.dg/pim/fail/dg-pim-fail.exp: New test. + * gm2.dg/pim/fail/opaquedefs.def: New test. + * gm2.dg/pim/fail/opaquedefs.mod: New test. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/simd/armv9p5.c: New test. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/crypto-alias-1.c: New test. + +2025-01-24 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/target_attr_crypto_ice_1.c: Prune warning. + * gcc.target/aarch64/target_attr_crypto_ice_2.c: Ditto. + +2025-01-24 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118497 + * gcc.target/i386/pr118497.c: New. + * gcc.target/i386/vartrack-1.c: Modify the regexp. + +2025-01-24 Marek Polacek <polacek@redhat.com> + + PR c++/117153 + * g++.dg/other/anon-union6.C: New test. + * g++.dg/other/anon-union7.C: New test. + +2025-01-24 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/thumb-bitfld1.c: Use -std=c17. + +2025-01-24 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + PR testsuite/116448 + * gcc.target/arm/vfp-1.c: Use -Os -fno-math-errno. + +2025-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/118571 + * gfortran.dg/utf8_3.f03: New test. + +2025-01-24 yxj-github-437 <2457369732@qq.com> + + * g++.dg/modules/builtin-8.C: New test. + +2025-01-24 David Malcolm <dmalcolm@redhat.com> + + PR jit/117886 + * jit.dg/all-non-failing-tests.h: Add + test-pr117886-write-reproducer.c. + * jit.dg/test-pr117886-write-reproducer.c: New test. + +2025-01-24 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116010 + * gfortran.dg/vect/vect-8.f90: Adjust. + +2025-01-24 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/isfinite-isinf-isnormal-signbit-1.c: New test. + * gcc.target/s390/isfinite-isinf-isnormal-signbit-2.c: New test. + * gcc.target/s390/isfinite-isinf-isnormal-signbit-3.c: New test. + * gcc.target/s390/isfinite-isinf-isnormal-signbit.h: New test. + +2025-01-24 Saurabh Jha <saurabh.jha@arm.com> + + * gcc.target/aarch64/sve/faminmax_1.c: Fix test to use the + correct flags. + * gcc.target/aarch64/sve/faminmax_2.c: Fix test to use the + correct flags. + * gcc.target/aarch64/sve/faminmax_3.c: New test. + +2025-01-24 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118572 + * gcc.dg/field-merge-24.c: New. + +2025-01-24 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118514 + * gcc.dg/field-merge-23.c: New. + +2025-01-23 Marek Polacek <polacek@redhat.com> + + PR c++/117602 + * g++.dg/cpp2a/lambda-uneval21.C: New test. + +2025-01-23 Harald Anlauf <anlauf@gmx.de> + + PR fortran/118613 + * gfortran.dg/maxval_arg_eval_count.f90: New test. + +2025-01-23 Georg-Johann Lay <avr@gjlay.de> + + PR tree-optimization/118012 + PR tree-optimization/118360 + * gcc.target/avr/mmcu/pr118012-1.h: New file. + * gcc.target/avr/mmcu/pr118012-1-o2-m128.c: New test. + * gcc.target/avr/mmcu/pr118012-1-os-m128.c: New test. + * gcc.target/avr/mmcu/pr118012-1-o2-m103.c: New test. + * gcc.target/avr/mmcu/pr118012-1-os-m103.c: New test. + * gcc.target/avr/mmcu/pr118012-1-o2-t40.c: New test. + * gcc.target/avr/mmcu/pr118012-1-os-t40.c: New test. + * gcc.target/avr/mmcu/pr118360-1.h: New file. + * gcc.target/avr/mmcu/pr118360-1-o2-m128.c: New test. + * gcc.target/avr/mmcu/pr118360-1-os-m128.c: New test. + * gcc.target/avr/mmcu/pr118360-1-o2-m103.c: New test. + * gcc.target/avr/mmcu/pr118360-1-os-m103.c: New test. + * gcc.target/avr/mmcu/pr118360-1-o2-t40.c: New test. + * gcc.target/avr/mmcu/pr118360-1-os-t40.c: New test. + +2025-01-23 Jan Hubicka <jh@suse.cz> + + PR target/80813 + * g++.dg/tree-ssa/bvector-3.C: New test. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/118562 + * gcc.dg/torture/pr118562.c: New test. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp: Add + cheap_fpmr_write by default. + * gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp: Likewise. + * gcc.target/aarch64/acle/fp8.c: Add cheap_fpmr_write. + * gcc.target/aarch64/acle/fpmr-2.c: Likewise. + * gcc.target/aarch64/simd/vcvt_fpm.c: Likewise. + * gcc.target/aarch64/simd/vdot2_fpm.c: Likewise. + * gcc.target/aarch64/simd/vdot4_fpm.c: Likewise. + * gcc.target/aarch64/simd/vmla_fpm.c: Likewise. + * gcc.target/aarch64/acle/fpmr-6.c: New test. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/acle/fpmr-5.c: New test. + * gcc.target/aarch64/sve2/acle/asm/dot_lane_mf8.c: Don't expect + a spill slot to be allocated. + * gcc.target/aarch64/sve2/acle/asm/mlalb_lane_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/mlallbb_lane_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/mlallbt_lane_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/mlalltb_lane_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/mlalltt_lane_mf8.c: Likewise. + * gcc.target/aarch64/sve2/acle/asm/mlalt_lane_mf8.c: Likewise. + +2025-01-23 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/acle/fp8.c: Add tests for moving zero into FPMR. + +2025-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.target/i386/cmov12.c (scan-assembler-times): Allow for + cmovl.g etc. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR c++/118590 + * g++.dg/goacc/pr118590.C: New test. + +2025-01-23 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/114877 + * gcc.dg/torture/builtin-frexp-1.c: Add -Wmaybe-uninitialized as + dg-additional-options. + (bar): New function. + (TESTIT_FREXP2): Rework the macro so that it doesn't test whether + nothing has been stored to what the second argument points to, but + instead that something has been stored there, whatever it is. + (main): Temporarily don't enable the nan tests for -O0. + +2025-01-23 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.dg/pr78185.c: Remove dg-do and replace with + with dg-require-effective-target of signal and alarm. + * gcc.dg/pr116906-1.c: Likewise. + * gcc.dg/pr116906-2.c: Likewise. + * gcc.dg/vect/pr101145inf.c: Use effective-target alarm. + * gcc.dg/vect/pr101145inf_1.c: Likewise. + * lib/target-supports.exp(check_effective_target_alarm): New. + +2025-01-23 Georg-Johann Lay <avr@gjlay.de> + + PR target/117726 + * gcc.target/avr/torture/avr-torture.exp (AVR_TORTURE_OPTIONS): + Turn one option variant into -Oz. + +2025-01-23 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/96087 + * gfortran.dg/pr96087.f90: New test. + +2025-01-23 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118558 + * gcc.dg/vect/pr118558.c: New testcase. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/cpp2a/lambda-generic-mangle1.C: Update mangling. + * g++.dg/cpp2a/lambda-generic-mangle1a.C: Likewise. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/107741 + * g++.dg/abi/macro0.C: Bump ABI version. + * g++.dg/abi/mangle74.C: Remove XFAILs. + * g++.dg/other/fold1.C: Restore originally raised error. + * g++.dg/abi/lambda-ctx2-19.C: New test. + * g++.dg/abi/lambda-ctx2-19vs20.C: New test. + * g++.dg/abi/lambda-ctx2-20.C: New test. + * g++.dg/abi/lambda-ctx2.h: New test. + * g++.dg/cpp0x/static-member-init-1.C: New test. + +2025-01-23 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118582 + * g++.dg/modules/pr118582_a.H: New test. + * g++.dg/modules/pr118582_b.H: New test. + * g++.dg/modules/pr118582_c.H: New test. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/avx10_2-512-convert-1.c: Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2bf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8-2.c: Ditto. + * gcc.target/i386/avx10_2-512-vcvtbiasph2hf8s-2.c: Ditto. + * gcc.target/i386/avx10_2-convert-1.c: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-satcvt-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-vcvtnebf162ibs-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtbf162ibs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtnebf162iubs-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtbf162iubs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvttnebf162ibs-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvttbf162ibs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvttnebf162iubs-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvttbf162iubs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-satcvt-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-vcvtnebf162ibs-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtbf162ibs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtnebf162iubs-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtbf162iubs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvttnebf162ibs-2.c: Move to... + * gcc.target/i386/avx10_2-vcvttbf162ibs-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvttnebf162iubs-2.c: Move to... + * gcc.target/i386/avx10_2-vcvttbf162iubs-2.c: ...here. + Adjust intrin call. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-convert-1.c: Adjust output + and intrin call. + * gcc.target/i386/avx10_2-512-vcvtneph2bf8-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtph2bf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtneph2bf8s-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtph2bf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtneph2hf8-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtph2hf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtneph2hf8s-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvtph2hf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-convert-1.c: Adjust output + and intrin call. + * gcc.target/i386/avx10_2-vcvtneph2bf8-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtph2bf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtneph2hf8-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtph2bf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtneph2bf8s-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtph2hf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtneph2hf8s-2.c: Move to... + * gcc.target/i386/avx10_2-vcvtph2hf8s-2.c: ...here. + Adjust intrin call. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-convert-1.c: Adjust output + and intrin call. + * gcc.target/i386/avx10_2-512-vcvtne2ph2bf8-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtne2ph2bf8s-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvt2ph2bf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtne2ph2hf8-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vcvtne2ph2hf8s-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcvt2ph2hf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-convert-1.c: Adjust output + and intrin call. + * gcc.target/i386/avx10_2-vcvtne2ph2bf8-2.c: Move to... + * gcc.target/i386/avx10_2-vcvt2ph2bf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtne2ph2hf8-2.c: Move to... + * gcc.target/i386/avx10_2-vcvt2ph2bf8s-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtne2ph2bf8s-2.c: Move to... + * gcc.target/i386/avx10_2-vcvt2ph2hf8-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vcvtne2ph2hf8s-2.c: Move to... + * gcc.target/i386/avx10_2-vcvt2ph2hf8s-2.c: ...here. + Adjust intrin call. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-comibf-1.c: Adjust asm check. + * gcc.target/i386/avx10_2-comibf-3.c: Ditto. + * gcc.target/i386/avx10_2-vcomsbf16-1.c: Move to... + * gcc.target/i386/avx10_2-vcomisbf16-1.c: ...here. + Adjust output and intrin call. + * gcc.target/i386/avx10_2-vcomsbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vcomisbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/pr117495.c: Adjust asm check. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-vfpclasspbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vfpclassbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vgetexppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vgetexpbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-vgetexppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vgetexpbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vfpclasspbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vfpclassbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx-1.c: Adjust builtin call. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and intrin + call. + * gcc.target/i386/avx10_2-512-vrsqrtpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vrsqrtbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vscalefpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vscalefbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vsqrtnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vsqrtbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and intrin + call. + * gcc.target/i386/avx10_2-vrsqrtpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vrsqrtbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vscalefpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vscalefbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vsqrtnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vsqrtbf16-2.c: ...here. + Adjust intrin call. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-vgetmantpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vgetmantbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vreducenepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vreducebf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vrndscalenepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vrndscalebf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and intrin + call. + * gcc.target/i386/avx10_2-vgetmantpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vgetmantbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vreducenepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vreducebf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vrndscalenepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vrndscalebf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx-1.c: Adjust builtin call. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/sse-14.c: Adjust intrin call. + * gcc.target/i386/sse-22.c: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-minmax-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-vminmaxnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vminmaxbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-minmax-1.c: Adjust output and intrin + call. + * gcc.target/i386/avx10_2-vminmaxnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vminmaxbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx-1.c: Adjust builtin call. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + * gcc.target/i386/sse-14.c: Adjust intrin call. + * gcc.target/i386/sse-22.c: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-bf-vector-cmpp-1.c: Move to... + * gcc.target/i386/avx10_2-512-bf16-vector-cmp-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-512-bf-vector-smaxmin-1.c: Move to... + * gcc.target/i386/avx10_2-512-bf16-vector-smaxmin-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-512-vcmppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vcmpbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vmaxpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vmaxbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vminpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vminbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-bf-vector-cmpp-1.c: Move to... + * gcc.target/i386/avx10_2-bf16-vector-cmp-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-bf-vector-smaxmin-1.c: Move to... + * gcc.target/i386/avx10_2-bf16-vector-smaxmin-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-partial-bf-vector-smaxmin-1.c: Move to... + * gcc.target/i386/avx10_2-partial-bf16-vector-smaxmin-1.c: ...here. + * gcc.target/i386/avx10_2-vcmppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vcmpbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vmaxpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vmaxbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vminpbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vminbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/part-vect-vec_cmpbf.c: Adjust asm check. + * gcc.target/i386/avx-1.c: Adjust builtin call. + * gcc.target/i386/sse-13.c: Ditto. + * gcc.target/i386/sse-23.c: Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-bf-vector-fma-1.c: Move to... + * gcc.target/i386/avx10_2-512-bf16-vector-fma-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-512-vfmaddXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vfmaddXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vfmsubXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vfmsubXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vfnmaddXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vfnmaddXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-512-vfnmsubXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vfnmsubXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-bf-vector-fma-1.c: Move to... + * gcc.target/i386/avx10_2-bf16-vector-fma-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-partial-bf-vector-fma-1.c: Move to... + * gcc.target/i386/avx10_2-partial-bf16-vector-fma-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-vfmaddXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vfmaddXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vfmsubXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vfmsubXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vfnmaddXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vfnmaddXXXbf16-2.c: ...here. + Adjust intrin call. + * gcc.target/i386/avx10_2-vfnmsubXXXnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vfnmsubXXXbf16-2.c: ...here. + Adjust intrin call. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + * gcc.target/i386/avx10_2-512-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-512-bf-vector-operations-1.c: Move to ... + * gcc.target/i386/avx10_2-512-bf16-vector-operations-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-512-vaddnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vaddbf16-2.c: ...here. Adjust + intrin call. + * gcc.target/i386/avx10_2-512-vdivnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vdivbf16-2.c: ...here. Adjust + intrin call. + * gcc.target/i386/avx10_2-512-vmulnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vmulbf16-2.c: ...here. Adjust + intrin call. + * gcc.target/i386/avx10_2-512-vrcppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vrcpbf16-2.c: ...here. Adjust + intrin call. + * gcc.target/i386/avx10_2-512-vsubnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-512-vsubbf16-2.c: ...here. Adjust + intrin call. + * gcc.target/i386/avx10_2-bf16-1.c: Adjust output and + intrin call. + * gcc.target/i386/avx10_2-bf-vector-operations-1.c: Move to .... + * gcc.target/i386/avx10_2-bf16-vector-operations-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-partial-bf-vector-fast-math-1.c: Move to... + * gcc.target/i386/avx10_2-partial-bf16-vector-fast-math-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-partial-bf-vector-operations-1.c: Move to... + * gcc.target/i386/avx10_2-partial-bf16-vector-operations-1.c: ...here. + Adjust asm check. + * gcc.target/i386/avx10_2-vaddnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vaddbf16-2.c: ...here. Adjust intrin call. + * gcc.target/i386/avx10_2-vdivnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vdivbf16-2.c: ...here. Adjust intrin call. + * gcc.target/i386/avx10_2-vmulnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vmulbf16-2.c: ...here. Adjust intrin call. + * gcc.target/i386/avx10_2-vrcppbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vrcpbf16-2.c: ...here. Adjust intrin call. + * gcc.target/i386/avx10_2-vsubnepbf16-2.c: Move to... + * gcc.target/i386/avx10_2-vsubbf16-2.c: ...here. Adjust intrin call. + * lib/target-supports.exp (check_effective_target_avx10_2): + Adjust asm usage. + (check_effective_target_avx10_2_512): Ditto. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + PR target/118270 + PR target/118609 + * gcc.target/i386/amxmovrs-t2rpntlvw-2.c: Move to... + * gcc.target/i386/amxmovrs-2rpntlvwrs-2.c: ...here. + * gcc.target/i386/amxtranspose-2rpntlvw-2.c: Add "t1" hint test. + +2025-01-23 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/vnniint16-auto-vectorize-4.c: Append + -march=x86-64-v3. + * gcc.target/i386/vnniint8-auto-vectorize-4.c: Ditto. + +2025-01-22 Arsen Arsenović <arsen@aarsen.me> + + * gcc.dg/driver-nostdlibstar.c: New test. + +2025-01-22 Jakub Jelinek <jakub@redhat.com> + + PR c++/115769 + * g++.dg/DRs/dr2867-3.C: New test. + * g++.dg/DRs/dr2867-4.C: New test. + +2025-01-22 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/acle/rwsr-4.c: New test. + * gcc.target/aarch64/acle/rwsr-armv8p9.c: Avoid read of uninitialized + variable. + +2025-01-22 Georg-Johann Lay <avr@gjlay.de> + + PR rtl-optimization/118591 + * gcc.target/avr/torture/pr118591-1.c: New test. + * gcc.target/avr/torture/pr118591-2.c: New test. + +2025-01-22 Simon Martin <simon@nasilyan.com> + + PR c++/118199 + * g++.dg/init/no-elide3.C: New test. + +2025-01-22 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/bitwise-shift-reassoc-clobber.c: New + test. + +2025-01-22 Patrick Palka <ppalka@redhat.com> + + PR c++/116756 + * g++.dg/cpp1z/constexpr-if-lambda7.C: New test. + +2025-01-21 Jeff Law <jlaw@ventanamicro.com> + + Revert: + 2024-10-29 yulong <shiyulong@iscas.ac.cn> + + * gcc.target/riscv/cmo-32.c: New test. + * gcc.target/riscv/cmo-64.c: New test. + +2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118483 + * gcc.dg/tree-ssa/pr118483-1.c: New test. + * gcc.dg/tree-ssa/pr118483-2.c: New test. + * gcc.dg/tree-ssa/pr118483-3.c: New test. + * gcc.dg/tree-ssa/pr118483-4.c: New test. + +2025-01-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/118525 + * g++.dg/cpp2a/consteval38.C: New test. + +2025-01-21 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/torture/pr117546.c: Require effective target int32plus. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + PR objc++/118586 + * objc.dg/embed-1.m: New test. + * obj-c++.dg/embed-1.mm: New test. + * obj-c++.dg/va-meth-2.mm: New test. + +2025-01-21 Jin Ma <jinma@linux.alibaba.com> + + PR target/116593 + * g++.target/riscv/rvv/rvv.exp: Enable testsuite of XTheadVector. + * g++.target/riscv/rvv/xtheadvector/pr116593.C: New test. + +2025-01-21 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/rvv/rvv.exp: Enable testsuite of + XTheadVector. + * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Adjust correctly. + * gcc.target/riscv/rvv/xtheadvector/prefix.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlb-vsb.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlbu-vsb.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlh-vsh.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlhu-vsh.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlw-vsw.c: Likewise. + * gcc.target/riscv/rvv/xtheadvector/vlwu-vsw.c: Likewise. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + PR target/118560 + * gcc.dg/dfp/pr118560.c: New test. + +2025-01-21 Marek Polacek <polacek@redhat.com> + + PR c++/118396 + PR c++/118523 + * g++.dg/cpp0x/constexpr-prvalue4.C: New test. + * g++.dg/cpp1y/constexpr-prvalue3.C: New test. + +2025-01-21 Thomas Schwinge <tschwinge@baylibre.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * gcc.dg/vect/vect-switch-search-line-fast.c: Update for GCN. + +2025-01-21 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118569 + * gcc.dg/torture/pr118569.c: New testcase. + +2025-01-21 Vladimir Miloserdov <vladimir.miloserdov@arm.com> + + * gcc.target/aarch64/sve/acle/asm/test_sve_acle.h: New test + macro. + * lib/target-supports.exp: Add lut flag to the for loop. + * gcc.target/aarch64/sve/acle/general-c/lut_1.c: New test. + * gcc.target/aarch64/sve/acle/general-c/lut_2.c: New test. + * gcc.target/aarch64/sve/acle/general-c/lut_3.c: New test. + * gcc.target/aarch64/sve/acle/general-c/lut_4.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_bf16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_f16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_s16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_s8.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_u16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti2_u8.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_bf16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_bf16_x2.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_f16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_f16_x2.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_s16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_s16_x2.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_s8.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_u16.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_u16_x2.c: New test. + * gcc.target/aarch64/sve2/acle/asm/luti4_u8.c: New test. + +2025-01-21 Simon Martin <simon@nasilyan.com> + + PR c++/118225 + * g++.dg/cpp0x/constexpr-ice21.C: New test. + +2025-01-21 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/118273 + * gcc.target/aarch64/vect-simd-clone-4.c: New test. + +2025-01-21 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/arch-func-attr-1.c: Add '#pragma'. + * gcc.target/loongarch/cmodel-func-attr-1.c: Likewise. + * gcc.target/loongarch/lasx-func-attr-1.c: Likewise. + * gcc.target/loongarch/lsx-func-attr-1.c: Likewise. + * gcc.target/loongarch/strict_align-func-attr-1.c: Likewise. + * gcc.target/loongarch/strict_align-func-attr-2.c: Likewise. + * gcc.target/loongarch/vector-func-attr-1.c: Likewise. + * gcc.target/loongarch/arch-pragma-attr-1.c: Likewise. + * gcc.target/loongarch/cmodel-pragma-attr-1.c: New test. + * gcc.target/loongarch/lasx-pragma-attr-1.c: New test. + * gcc.target/loongarch/lasx-pragma-attr-2.c: New test. + * gcc.target/loongarch/lsx-pragma-attr-1.c: New test. + * gcc.target/loongarch/lsx-pragma-attr-2.c: New test. + * gcc.target/loongarch/strict_align-pragma-attr-1.c: New test. + * gcc.target/loongarch/strict_align-pragma-attr-2.c: New test. + * gcc.target/loongarch/vector-pragma-attr-1.c: New test. + * gcc.target/loongarch/pragma-push-pop.c: New test. + +2025-01-21 Lulu Cheng <chenglulu@loongson.cn> + + * gcc.target/loongarch/arch-func-attr-1.c: New test. + * gcc.target/loongarch/cmodel-func-attr-1.c: New test. + * gcc.target/loongarch/lasx-func-attr-1.c: New test. + * gcc.target/loongarch/lasx-func-attr-2.c: New test. + * gcc.target/loongarch/lsx-func-attr-1.c: New test. + * gcc.target/loongarch/lsx-func-attr-2.c: New test. + * gcc.target/loongarch/strict_align-func-attr-1.c: New test. + * gcc.target/loongarch/strict_align-func-attr-2.c: New test. + * gcc.target/loongarch/vector-func-attr-1.c: New test. + * gcc.target/loongarch/attr-check-error-message.c: New test. + +2025-01-21 Simon Martin <simon@nasilyan.com> + + PR c++/118277 + * g++.dg/cpp1z/constexpr-asm-5.C: Pass -fno-implicit-constexpr. + +2025-01-21 Alfie Richards <alfie.richards@arm.com> + + * g++.target/aarch64/mv-1.C: Add CLI flag. + * g++.target/aarch64/mv-symbols1.C: Add CLI flag. + * g++.target/aarch64/mv-symbols2.C: Add CLI flag. + * g++.target/aarch64/mv-symbols3.C: Add CLI flag. + * g++.target/aarch64/mv-symbols4.C: Add CLI flag. + * g++.target/aarch64/mv-symbols5.C: Add CLI flag. + * g++.target/aarch64/mv-warning1.C: New test. + * g++.target/aarch64/mvc-symbols1.C: Add CLI flag. + * g++.target/aarch64/mvc-symbols2.C: Add CLI flag. + * g++.target/aarch64/mvc-symbols3.C: Add CLI flag. + * g++.target/aarch64/mvc-symbols4.C: Add CLI flag. + * g++.target/aarch64/mv-pragma.C: Add CLI flag. + * g++.target/aarch64/mvc-warning1.C: New test. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/cpp/has-builtin-4.c: New test. + +2025-01-21 Jakub Jelinek <jakub@redhat.com> + + PR c++/118532 + * g++.dg/cpp/embed-22.C: New test. + * g++.dg/cpp/embed-23.C: New test. + * g++.dg/cpp0x/pr118532.C: New test. + * g++.dg/cpp2a/explicit20.C: New test. + +2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> + + * g++.dg/modules/export-6.C: Add structured binding tests. + * g++.dg/modules/hdr-2.H: Likewise. + +2025-01-20 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118101 + * g++.dg/modules/partial-7.h: New test. + * g++.dg/modules/partial-7_a.C: New test. + * g++.dg/modules/partial-7_b.C: New test. + * g++.dg/modules/partial-7_c.C: New test. + +2025-01-20 Jeff Law <jlaw@ventanamicro.com> + + PR target/116256 + * gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-37.c: Update expected + output. + * gcc.target/riscv/rvv/vsetvl/vsetvl-15.c: Likewise. + +2025-01-20 Jeff Law <jlaw@ventanamicro.com> + + PR target/114442 + * gcc.target/riscv/pr114442.c: New test. + +2025-01-20 Harald Anlauf <anlauf@gmx.de> + + PR fortran/107122 + * gfortran.dg/gomp/order-8.f90: Adjust pattern. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118348 + * gcc.target/aarch64/pr118348_1.c: New test. + * gcc.target/aarch64/pr118348_2.c: Likewise. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + Revert: + 2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118384 + * gcc.target/aarch64/pr118384_1.c: New test. + * gcc.target/aarch64/pr118384_2.c: Likewise. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR tree-optimization/118384 + * gcc.target/aarch64/pr118384_1.c: New test. + * gcc.target/aarch64/pr118384_2.c: Likewise. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118501 + * gcc.c-torture/compile/pr118501.c: New test. + +2025-01-20 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/ins_bitfield_1a.c: New test. + * gcc.target/aarch64/ins_bitfield_3a.c: Likewise. + * gcc.target/aarch64/ins_bitfield_5a.c: Likewise. + +2025-01-20 Harald Anlauf <anlauf@gmx.de> + + PR fortran/81978 + * gfortran.dg/pr81978.f90: New test. + +2025-01-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/118528 + * g++.dg/cpp/embed-21.C: New test. + * g++.dg/cpp2a/class-deduction-aggr16.C: New test. + +2025-01-20 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/xtheadcondmov-bug.c: New test. + +2025-01-20 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118077 + PR tree-optimization/117668 + * g++.dg/opt/devirt6.C: New test. + +2025-01-20 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.dg/vect/complex/fast-math-bb-slp-complex-mla-float.c: Use + arm_v8_3a_complex_neon. + +2025-01-20 Christophe Lyon <christophe.lyon@linaro.org> + + * gcc.dg/vect/complex/complex-operations-run.c: Remove duplicate + dg-add-options arm_v8_3a_complex_neon. + * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c: + Likewise. + +2025-01-20 Xi Ruoyao <xry111@xry111.site> + + PR target/115921 + * gcc.target/loongarch/bstrpick_alsl_paired.c (scan-rtl-dump): + Scan for and_shift_reversedi instead of the removed + bstrpick_alsl_paired. + * gcc.target/loongarch/bitwise-shift-reassoc.c: New test. + +2025-01-20 Xi Ruoyao <xry111@xry111.site> + + * gcc.c-torture/compile/pr116438.c: Rename to ... + * gcc.c-torture/compile/pr116348.c: ... this. + +2025-01-20 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118552 + * gcc.dg/torture/pr118552.c: New testcase. + +2025-01-20 Jakub Jelinek <jakub@redhat.com> + + PR c++/118509 + * g++.dg/expr/pmf-4.C: New test. + +2025-01-20 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118224 + * gcc.dg/pr118224.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vec-shift-10.c: New test. + * gcc.target/s390/vector/vec-shift-11.c: New test. + * gcc.target/s390/vector/vec-shift-12.c: New test. + * gcc.target/s390/vector/vec-shift-3.c: New test. + * gcc.target/s390/vector/vec-shift-4.c: New test. + * gcc.target/s390/vector/vec-shift-5.c: New test. + * gcc.target/s390/vector/vec-shift-6.c: New test. + * gcc.target/s390/vector/vec-shift-7.c: New test. + * gcc.target/s390/vector/vec-shift-8.c: New test. + * gcc.target/s390/vector/vec-shift-9.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vec-max-emu.c: New test. + * gcc.target/s390/vector/vec-min-emu.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vector/vec-abs-emu.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vxe3/vd-1.c: New test. + * gcc.target/s390/vxe3/vd-2.c: New test. + * gcc.target/s390/vxe3/vdl-1.c: New test. + * gcc.target/s390/vxe3/vdl-2.c: New test. + * gcc.target/s390/vxe3/vr-1.c: New test. + * gcc.target/s390/vxe3/vr-2.c: New test. + * gcc.target/s390/vxe3/vrl-1.c: New test. + * gcc.target/s390/vxe3/vrl-2.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/vxe3/veval-1.c: New test. + * gcc.target/s390/vxe3/veval-2.c: New test. + * gcc.target/s390/vxe3/veval-3.c: New test. + * gcc.target/s390/vxe3/veval-4.c: New test. + * gcc.target/s390/vxe3/veval-5.c: New test. + * gcc.target/s390/vxe3/veval-6.c: New test. + * gcc.target/s390/vxe3/veval-7.c: New test. + * gcc.target/s390/vxe3/veval-8.c: New test. + * gcc.target/s390/vxe3/veval-9.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/llxa-1.c: New test. + * gcc.target/s390/llxa-2.c: New test. + * gcc.target/s390/llxa-3.c: New test. + * gcc.target/s390/lxa-1.c: New test. + * gcc.target/s390/lxa-2.c: New test. + * gcc.target/s390/lxa-3.c: New test. + * gcc.target/s390/lxa-4.c: New test. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * lib/target-supports.exp: VXE3 effective target check. + +2025-01-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * gcc.target/s390/s390.exp: Set compiler flags for the vxe3 + subdirectory of the testsuite as done e.g. for vxe2. + +2025-01-20 Hongyu Wang <hongyu.wang@intel.com> + + PR target/118510 + * gcc.target/i386/pr118510.c: New test. + +2025-01-19 Uros Bizjak <ubizjak@gmail.com> + + PR rtl-optimization/118067 + * gcc.target/i386/pr118067.c (dg-compile): Use target int128. + * gcc.target/i386/pr118067-2.c (dg-compile): Ditto. + (dg-options): Use -mtune= instead of deprecated -mcpu= option. + +2025-01-19 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/torture/pr117546.c: Require effective target int32. + (main): Add return statement. + +2025-01-18 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/asm3.d: Adjust test. + +2025-01-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/118513 + * g++.dg/modules/decomp-3_a.H: New test. + * g++.dg/modules/decomp-3_b.C: New test. + +2025-01-18 Jeff Law <jlaw@ventanamicro.com> + + PR target/116308 + * gcc.target/riscv/pr116308.c: New test. + +2025-01-18 Michal Jires <mjires@suse.cz> + + * gcc.dg/live-patching-1.c: Change expected dump id. + * gcc.dg/live-patching-4.c: Likewise. + +2025-01-18 Eric Botcazou <ebotcazou@adacore.com> + + * gcc.target/sparc/20230328-1.c: Pass -mvis3b instead of -mvis3. + * gcc.target/sparc/20230328-4.c: Likewise. + * gcc.target/sparc/fucmp.c: Likewise. + * gcc.target/sparc/vis3misc.c: Likewise. + +2025-01-18 Bohan Lei <garthlei@linux.alibaba.com> + + * gcc.target/riscv/crc-21-rv64-zbc.c: Disallow rv32 targets. + * gcc.target/riscv/crc-21-rv64-zbkc.c: Ditto. + +2025-01-18 Jin Ma <jinma@linux.alibaba.com> + + PR target/118357 + * gcc.target/riscv/rvv/xtheadvector/pr118357.c: New test. + +2025-01-18 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118529 + * gcc.target/sparc/pr118529.c: New testcase. + +2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> + Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: + Template file for unsigned vector saturating arithmetic tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: + 8-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: + 16-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: + 32-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: + 64-bit vector type tests. + * gcc.target/aarch64/saturating_arithmetic.inc: Template file + for scalar saturating arithmetic tests. + * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. + * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. + * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. + * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. + * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. + +2025-01-18 Akram Ahmad <Akram.Ahmad@arm.com> + + * gcc.target/aarch64/sve/saturating_arithmetic.inc: + Template file for auto-vectorizer tests. + * gcc.target/aarch64/sve/saturating_arithmetic_1.c: + Instantiate 8-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_2.c: + Instantiate 16-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_3.c: + Instantiate 32-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_4.c: + Instantiate 64-bit vector tests. + +2025-01-18 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-01-18 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: + Template file for unsigned vector saturating arithmetic tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: + 8-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: + 16-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: + 32-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: + 64-bit vector type tests. + * gcc.target/aarch64/saturating_arithmetic.inc: Template file + for scalar saturating arithmetic tests. + * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. + * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. + * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. + * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. + * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. + +2025-01-18 Tamar Christina <tamar.christina@arm.com> + + Revert: + 2025-01-18 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/saturating_arithmetic.inc: + Template file for auto-vectorizer tests. + * gcc.target/aarch64/sve/saturating_arithmetic_1.c: + Instantiate 8-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_2.c: + Instantiate 16-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_3.c: + Instantiate 32-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_4.c: + Instantiate 64-bit vector tests. + +2025-01-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/118534 + * g++.dg/cpp/embed-24.C: New test. + * g++.dg/cpp1y/pr118534.C: New test. + +2025-01-18 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/alsl-cost.c: New test. + +2025-01-18 Xi Ruoyao <xry111@xry111.site> + + * gcc.target/loongarch/alsl_wu.c: New test. + +2025-01-17 Harald Anlauf <anlauf@gmx.de> + + PR libfortran/118536 + * gfortran.dg/unsigned_write_2.f90: New test. + +2025-01-17 Vladimir N. Makarov <vmakarov@redhat.com> + + * gcc.target/i386/pr118067-2.c: New. + +2025-01-17 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/cpp/embed-10.c: Allow a different error wording for + C++. + +2025-01-17 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/117115 + * gdc.dg/pr117115.d: New test. + +2025-01-17 Jakub Jelinek <jakub@redhat.com> + + PR target/118511 + * gcc.target/s390/pr118511.c: New test. + +2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/sve/saturating_arithmetic.inc: + Template file for auto-vectorizer tests. + * gcc.target/aarch64/sve/saturating_arithmetic_1.c: + Instantiate 8-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_2.c: + Instantiate 16-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_3.c: + Instantiate 32-bit vector tests. + * gcc.target/aarch64/sve/saturating_arithmetic_4.c: + Instantiate 64-bit vector tests. + +2025-01-17 Tamar Christina <tamar.christina@arm.com> + + * gcc.target/aarch64/scalar_intrinsics.c: Update testcases. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect.inc: + Template file for unsigned vector saturating arithmetic tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_1.c: + 8-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_2.c: + 16-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_3.c: + 32-bit vector type tests. + * gcc.target/aarch64/advsimd-intrinsics/saturating_arithmetic_autovect_4.c: + 64-bit vector type tests. + * gcc.target/aarch64/saturating_arithmetic.inc: Template file + for scalar saturating arithmetic tests. + * gcc.target/aarch64/saturating_arithmetic_1.c: 8-bit tests. + * gcc.target/aarch64/saturating_arithmetic_2.c: 16-bit tests. + * gcc.target/aarch64/saturating_arithmetic_3.c: 32-bit tests. + * gcc.target/aarch64/saturating_arithmetic_4.c: 64-bit tests. + * gcc.target/aarch64/saturating-arithmetic-signed.c: New file. + +2025-01-17 Carl Love <cel@linux.ibm.com> + + * gcc.target/powerpc/vsx-builtin-3.c: Add vec_perm test cases for + arguments of type vector signed long long int, long long bool, + bool, bool short, bool char and pixel, vector unsigned long long + int, unsigned int, unsigned short int, unsigned char. Cast + arguments for debug prints to unsigned long long. + * gcc.target/powerpc/builtins-4-int128-runnable.c: Add vec_perm + test cases for signed and unsigned int128 arguments. + +2025-01-17 Carl Love <cel@linux.ibm.com> + + * gcc.target/powerpc/builtins-1-p10-runnable.c: Remove #define + DEBUG. Replace vec_i_expected value with correct value. + +2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118049 + * g++.dg/modules/auto-5_a.C: New test. + * g++.dg/modules/auto-5_b.C: New test. + * g++.dg/modules/auto-5_c.C: New test. + * g++.dg/modules/auto-6_a.H: New test. + * g++.dg/modules/auto-6_b.C: New test. + +2025-01-17 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118321 + * g++.dg/gomp/adjust-args-4.C: New test. + +2025-01-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/118147 + * g++.dg/cpp0x/nsdmi-defer7.C: New test. + +2025-01-17 Richard Biener <rguenther@suse.de> + + PR testsuite/117958 + * g++.dg/tree-ssa/pr117123.C: XFAIL parts on aarch64-*-*. + +2025-01-17 Georg-Johann Lay <avr@gjlay.de> + + PR target/118329 + * gcc.target/avr/pr115830-add.c (__int24, __uint24): Add __extension__ + to respective typedefs. + * gcc.target/avr/pr115830-sub-ext.c: Same. + * gcc.target/avr/pr115830-sub.c: Same. + * gcc.target/avr/torture/get-mem.c: Same. + * gcc.target/avr/torture/set-mem.c: Same. + * gcc.target/avr/torture/ifelse-c.h: Same. + * gcc.target/avr/torture/ifelse-d.h: Same. + * gcc.target/avr/torture/ifelse-q.h: Same. + * gcc.target/avr/torture/ifelse-r.h: Same. + * gcc.target/avr/torture/int24-mul.c: Same. + * gcc.target/avr/torture/pr109907-2.c: Same. + * gcc.target/avr/torture/pr61443.c: Same. + * gcc.target/avr/torture/pr63633-ice-mult.c: Same. + * gcc.target/avr/torture/shift-l-u24.c: Same. + * gcc.target/avr/torture/shift-r-i24.c: Same. + * gcc.target/avr/torture/shift-r-u24.c: Same. + * gcc.target/avr/torture/add-extend.c: Same. + * gcc.target/avr/torture/sub-extend.c: Same. + * gcc.target/avr/torture/sub-zerox.c: Same. + * gcc.target/avr/torture/test-gprs.h: Same. + +2025-01-17 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118522 + * gcc.dg/bitint-120.c: New test. + +2025-01-17 Simon Martin <simon@nasilyan.com> + + PR c++/118255 + * g++.dg/lookup/pr99116-1.C: Adjust test expectation. + * g++.dg/template/friend84.C: New test. + +2025-01-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/92539 + * g++.dg/warn/Warray-bounds-pr92539.C: New testcase. + * gcc.dg/tree-ssa/sccp-16.c: New testcase. + * g++.dg/vect/pr87621.cc: Use larger power to avoid + inner loop unrolling. + * gcc.dg/vect/pr89440.c: Use larger loop bound to avoid + inner loop unrolling. + * gcc.dg/pr77975.c: Scan cunrolli dump and adjust. + +2025-01-17 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/metadirective-device.c: Don't add extra options + for target ia32. + * c-c++-common/gomp/metadirective-target-device-1.c: Likewise. + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * c-c++-common/fcf-protection-1.c: Update. + * c-c++-common/fcf-protection-2.c: Update. + * c-c++-common/fcf-protection-3.c: Update. + * c-c++-common/fcf-protection-4.c: Update. + * c-c++-common/fcf-protection-5.c: Update. + * c-c++-common/fcf-protection-6.c: Update. + * c-c++-common/fcf-protection-7.c: Update. + * gcc.target/riscv/ssp-1.c: Update. + * gcc.target/riscv/ssp-2.c: Update. + * gcc.target/riscv/zicfilp-call.c: Update. + * gcc.target/riscv/interrupt-no-lpad.c: Update. + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * gcc.target/riscv/interrupt-no-lpad.c: New test. + * gcc.target/riscv/zicfilp-call.c: New test. + Co-Developed-by: Greg McGary <gkm@rivosinc.com>, + Kito Cheng <kito.cheng@gmail.com> + +2025-01-17 Monk Chiang <monk.chiang@sifive.com> + + * gcc.target/riscv/ssp-1.c: New test. + * gcc.target/riscv/ssp-2.c: New test. + Co-Developed-by: Greg McGary <gkm@rivosinc.com>, + Kito Cheng <kito.cheng@gmail.com> + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/105440 + * g++.dg/cpp2a/constexpr-dtor17.C: New test. + +2025-01-16 Alexandre Oliva <oliva@adacore.com> + + PR target/113560 + * gcc.target/arm/wmul-5.c: Accept other mla instructions. + * gcc.target/arm/wmul-6.c: Likewise. + * gcc.target/arm/wmul-7.c: Likewise. + +2025-01-16 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/arm/multilib.exp: Skip if -mfloat-abi=* or any of + its aliases are used. + +2025-01-16 Alexandre Oliva <oliva@adacore.com> + + PR rtl-optimization/113994 + * g++.dg/torture/pr113994.C: Require hosted libstdc++. + +2025-01-16 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/dfp/pr102674.c: Use the default dg-do. + * gcc.dg/dfp/pr43374.c: Likewise. + +2025-01-16 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/dfp/bitint-1.c: Rewrite requirements to retain dfprt. + * gcc.dg/dfp/bitint-2.c: Likewise. + * gcc.dg/dfp/bitint-3.c: Likewise. + * gcc.dg/dfp/bitint-4.c: Likewise. + * gcc.dg/dfp/bitint-5.c: Likewise. + * gcc.dg/dfp/bitint-6.c: Likewise. + * gcc.dg/dfp/bitint-7.c: Likewise. + * gcc.dg/dfp/bitint-8.c: Likewise. + * gcc.dg/dfp/int128-1.c: Likewise. + * gcc.dg/dfp/int128-2.c: Likewise. + * gcc.dg/dfp/int128-3.c: Likewise. + * gcc.dg/dfp/int128-4.c: Likewise. + +2025-01-16 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118321 + * gfortran.dg/gomp/adjust-args-12.f90: New test. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/107522 + * g++.dg/cpp2a/concepts-explicit-spec7.C: New test. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/118454 + * g++.dg/cpp0x/variadic187.C: New test. + +2025-01-16 Patrick Palka <ppalka@redhat.com> + + PR c++/116417 + * g++.dg/template/pseudodtor7.C: New test. + +2025-01-16 Simon Martin <simon@nasilyan.com> + + PR c++/117775 + * g++.dg/cpp2a/constexpr-117775.C: New test. + +2025-01-16 Harald Anlauf <anlauf@gmx.de> + + PR libfortran/118406 + * gfortran.dg/unsigned_write.f90: New test. + +2025-01-16 Tamar Christina <tamar.christina@arm.com> + Richard Sandiford <richard.sandiford@arm.com> + + PR target/113257 + * gcc.target/aarch64/cpunative/info_34: New test. + * gcc.target/aarch64/cpunative/native_cpu_34.c: New test. + * gcc.target/aarch64/cpunative/info_35: New test. + * gcc.target/aarch64/cpunative/native_cpu_35.c: New test. + +2025-01-16 Tamar Christina <tamar.christina@arm.com> + + PR target/110901 + * gcc.target/aarch64/options_set_29.c: New test. + +2025-01-16 Vladimir N. Makarov <vmakarov@redhat.com> + + PR rtl-optimization/118067 + * gcc.target/i386/pr118067.c: New. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/assume-2.c: Adjust expected diagnostics. + * c-c++-common/gomp/assumes-2.c: Likewise. + * c-c++-common/gomp/begin-assumes-2.c: Likewise. + * gfortran.dg/gomp/allocate-6.f90: Likewise. + * gfortran.dg/gomp/assumes-2.f90: Likewise. + +2025-01-16 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/116373 + * gdc.dg/pr116373.d: New test. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + + * c-c++-common/gomp/declare-target-indirect-2.c : Adjust + expected output for removal of "omp declare target block". + * c-c++-common/gomp/declare-variant-8.c: Likewise, the variant + call to f20 is now resolved differently. + * c-c++-common/gomp/reverse-offload-1.c: Adjust expected output. + * gfortran.dg/gomp/declare-variant-8.f90: Likewise, both f18 + and f20 now resolve to the variant. Delete obsolete comments. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + + * c-c++-common/gomp/adjust-args-6.c: New. + * c-c++-common/gomp/attrs-metadirective-1.c: New. + * c-c++-common/gomp/attrs-metadirective-2.c: New. + * c-c++-common/gomp/attrs-metadirective-3.c: New. + * c-c++-common/gomp/attrs-metadirective-4.c: New. + * c-c++-common/gomp/attrs-metadirective-5.c: New. + * c-c++-common/gomp/attrs-metadirective-6.c: New. + * c-c++-common/gomp/attrs-metadirective-7.c: New. + * c-c++-common/gomp/attrs-metadirective-8.c: New. + * c-c++-common/gomp/declare-variant-arg-exprs.c: New. + * c-c++-common/gomp/declare-variant-dynamic-1.c: New. + * c-c++-common/gomp/declare-variant-dynamic-2.c: New. + * c-c++-common/gomp/metadirective-1.c: New. + * c-c++-common/gomp/metadirective-2.c: New. + * c-c++-common/gomp/metadirective-3.c: New. + * c-c++-common/gomp/metadirective-4.c: New. + * c-c++-common/gomp/metadirective-5.c: New. + * c-c++-common/gomp/metadirective-6.c: New. + * c-c++-common/gomp/metadirective-7.c: New. + * c-c++-common/gomp/metadirective-8.c: New. + * c-c++-common/gomp/metadirective-construct.c: New. + * c-c++-common/gomp/metadirective-device.c: New. + * c-c++-common/gomp/metadirective-no-score.c: New. + * c-c++-common/gomp/metadirective-target-device-1.c: New. + * c-c++-common/gomp/metadirective-target-device-2.c: New. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * c-c++-common/gomp/declare-variant-2.c: Adjust output for C++. + * g++.dg/gomp/declare-variant-class-1.C: New. + * g++.dg/gomp/declare-variant-class-2.C: New. + * g++.dg/gomp/metadirective-template-1.C: New. + +2025-01-16 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + + PR middle-end/112779 + * c-c++-common/gomp/declare-variant-2.c: Adjust expected output for C. + * gcc.dg/gomp/metadirective-1.c: New. + +2025-01-16 Peter Bergner <bergner@linux.ibm.com> + + * gcc.target/powerpc/mma-builtin-error.c: New test. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + PR c++/118214 + * g++.dg/cpp/embed-17.C: New test. + * g++.dg/cpp0x/pr118214.C: New test. + +2025-01-16 Tamar Christina <tamar.christina@arm.com> + + PR testsuite/118451 + * gcc.dg/vect/vect-switch-search-line-fast.c: Add early_break guards. + +2025-01-16 Thomas Schwinge <thomas@codesourcery.com> + + * c-c++-common/goacc-gomp/nesting-1.c: Extend OpenACC 'serial' + testing. + * c-c++-common/goacc-gomp/nesting-fail-1.c: Likewise. + * c-c++-common/goacc/Wparentheses-1.c: Likewise. + * c-c++-common/goacc/builtin-goacc-parlevel-id-size.c: Likewise. + * c-c++-common/goacc/combined-directives-2.c: Likewise. + * c-c++-common/goacc/combined-directives-3.c: Likewise. + * c-c++-common/goacc/combined-directives.c: Likewise. + * c-c++-common/goacc/combined-reduction.c: Likewise. + * c-c++-common/goacc/data-clause-duplicate-1.c: Likewise. + * c-c++-common/goacc/default-1.c: Likewise. + * c-c++-common/goacc/default-2.c: Likewise. + * c-c++-common/goacc/default-3.c: Likewise. + * c-c++-common/goacc/default-4.c: Likewise. + * c-c++-common/goacc/default-5.c: Likewise. + * c-c++-common/goacc/if-clause-2.c: Likewise. + * c-c++-common/goacc/kernels-1.c: Likewise. + * c-c++-common/goacc/loop-1.c: Likewise. + * c-c++-common/goacc/loop-clauses.c: Likewise. + * c-c++-common/goacc/nesting-1.c: Likewise. + * c-c++-common/goacc/nesting-data-1.c: Likewise. + * c-c++-common/goacc/nesting-fail-1.c: Likewise. + * c-c++-common/goacc/parallel-1.c: Likewise. + * c-c++-common/goacc/private-reduction-1.c: Likewise. + * c-c++-common/goacc/reduction-promotions.c: Likewise. + * c-c++-common/goacc/routine-1.c: Likewise. + * c-c++-common/goacc/sb-1.c: Likewise. + * c-c++-common/goacc/sb-2.c: Likewise. + * c-c++-common/goacc/uninit-firstprivate-clause.c: Likewise. + * c-c++-common/goacc/uninit-if-clause.c: Likewise. + * c-c++-common/goacc/update-if_present-2.c: Likewise. + * g++.dg/goacc/template.C: Likewise. + * gfortran.dg/goacc/array-reduction.f90: Likewise. + * gfortran.dg/goacc/assumed.f95: Likewise. + * gfortran.dg/goacc/branch.f95: Likewise. + * gfortran.dg/goacc/coarray.f95: Likewise. + * gfortran.dg/goacc/coarray_2.f90: Likewise. + * gfortran.dg/goacc/combined-directives-3.f90: Likewise. + * gfortran.dg/goacc/combined-directives.f90: Likewise. + * gfortran.dg/goacc/common-block-1.f90: Likewise. + * gfortran.dg/goacc/common-block-2.f90: Likewise. + * gfortran.dg/goacc/common-block-3.f90: Likewise. + * gfortran.dg/goacc/cray-2.f95: Likewise. + * gfortran.dg/goacc/cray.f95: Likewise. + * gfortran.dg/goacc/critical.f95: Likewise. + * gfortran.dg/goacc/data-clauses.f95: Likewise. + * gfortran.dg/goacc/default-1.f95: Likewise. + * gfortran.dg/goacc/default-2.f: Likewise. + * gfortran.dg/goacc/default-3.f95: Likewise. + * gfortran.dg/goacc/default-4.f: Likewise. + * gfortran.dg/goacc/default-5.f: Likewise. + * gfortran.dg/goacc/default_none.f95: Likewise. + * gfortran.dg/goacc/derived-types.f90: Likewise. + * gfortran.dg/goacc/firstprivate-1.f95: Likewise. + * gfortran.dg/goacc/gang-static.f95: Likewise. + * gfortran.dg/goacc/if.f95: Likewise. + * gfortran.dg/goacc/list.f95: Likewise. + * gfortran.dg/goacc/literal.f95: Likewise. + * gfortran.dg/goacc/loop-1-2.f95: Likewise. + * gfortran.dg/goacc/loop-1.f95: Likewise. + * gfortran.dg/goacc/loop-2-parallel-3.f95: Likewise. + * gfortran.dg/goacc/loop-3-2.f95: Likewise. + * gfortran.dg/goacc/loop-3.f95: Likewise. + * gfortran.dg/goacc/multi-clause.f90: Likewise. + * gfortran.dg/goacc/nested-parallelism.f90: Likewise. + * gfortran.dg/goacc/parameter.f95: Likewise. + * gfortran.dg/goacc/pr71704.f90: Likewise. + * gfortran.dg/goacc/private-3.f95: Likewise. + * gfortran.dg/goacc/pure-elemental-procedures.f95: Likewise. + * gfortran.dg/goacc/reduction-2.f95: Likewise. + * gfortran.dg/goacc/reduction-3.f95: Likewise. + * gfortran.dg/goacc/reduction-promotions.f90: Likewise. + * gfortran.dg/goacc/reduction.f95: Likewise. + * gfortran.dg/goacc/routine-3.f90: Likewise. + * gfortran.dg/goacc/routine-module-1.f90: Likewise. + * gfortran.dg/goacc/routine-module-2.f90: Likewise. + * gfortran.dg/goacc/routine-module-mod-1.f90: Likewise. + * gfortran.dg/goacc/sie.f95: Likewise. + * gfortran.dg/goacc/subarrays.f95: Likewise. + * gfortran.dg/goacc/uninit-firstprivate-clause.f95: Likewise. + * gfortran.dg/goacc/uninit-if-clause.f95: Likewise. + * gfortran.dg/goacc/update-if_present-2.f90: Likewise. + * c-c++-common/goacc/loop-3.c: Rename to... + * c-c++-common/goacc/loop-3-parallel.c: ... this. + * gfortran.dg/goacc/parallel-kernels-clauses.f95: Rename to... + * gfortran.dg/goacc/compute_construct-clauses.f95: ... this. + Extend OpenACC 'serial' testing. + * gfortran.dg/goacc/parallel-kernels-regions.f95: Rename to... + * gfortran.dg/goacc/nesting-fail-1.f95: ... this. Extend OpenACC + 'serial' testing. + * gfortran.dg/goacc/routine-external-level-of-parallelism-1.f: + Rename to... + * gfortran.dg/goacc/routine-external-level-of-parallelism-1-parallel.f: + ... this. + * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: + Rename to... + * gfortran.dg/goacc/routine-external-level-of-parallelism-2-parallel.f: + ... this. + * c-c++-common/goacc/loop-2-serial.c: New. + * c-c++-common/goacc/loop-3-serial.c: Likewise. + * c-c++-common/goacc/nested-reductions-1-serial.c: Likewise. + * c-c++-common/goacc/nested-reductions-2-serial.c: Likewise. + * c-c++-common/goacc/serial-1.c: Likewise. + * gfortran.dg/goacc/loop-2-serial-3.f95: Likewise. + * gfortran.dg/goacc/loop-2-serial-nested.f95: Likewise. + * gfortran.dg/goacc/loop-2-serial-tile.f95: Likewise. + * gfortran.dg/goacc/loop-2-serial.f95: Likewise. + * gfortran.dg/goacc/nested-reductions-1-serial.f90: Likewise. + * gfortran.dg/goacc/nested-reductions-2-serial.f90: Likewise. + * gfortran.dg/goacc/private-explicit-serial-1.f95: Likewise. + * gfortran.dg/goacc/private-predetermined-serial-1.f95: Likewise. + * gfortran.dg/goacc/routine-external-level-of-parallelism-1-serial.f: + Likewise. + * gfortran.dg/goacc/routine-external-level-of-parallelism-2-serial.f: + Likewise. + * gfortran.dg/goacc/serial-tree.f95: Likewise. + +2025-01-16 Thomas Schwinge <thomas@codesourcery.com> + + * gfortran.dg/goacc/assumed.f95: Use relative line numbers for a + few DejaGnu directives. + * gfortran.dg/goacc/list.f95: Likewise. + * gfortran.dg/goacc/loop-1-2.f95: Likewise. + * gfortran.dg/goacc/loop-1.f95: Likewise. + * gfortran.dg/goacc/reduction.f95: Likewise. + +2025-01-16 Tobias Burnus <tburnus@baylibre.com> + + PR fortran/118441 + * gfortran.dg/gomp/intrinsic_pack_7.f90: New test. + +2025-01-16 Liao Shihua <shihua@iscas.ac.cn> + + * gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_x_f_qf.c: Add vsetivli checking. + * gcc.target/riscv/rvv/xsfvector/sf_vfnrclip_xu_f_qf.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmacc_2x8x2.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmacc_4x8x4.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_2x8x2.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccsu_4x8x4.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_2x8x2.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccu_4x8x4.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_2x8x2.c: Ditto. + * gcc.target/riscv/rvv/xsfvector/sf_vqmaccus_4x8x4.c: Ditto. + +2025-01-16 Christoph Müllner <christoph.muellner@vrull.eu> + + PR tree-optimization/118487 + * gcc.dg/tree-ssa/pr118487.c: New test. + +2025-01-16 Richard Biener <rguenther@suse.de> + Mikael Morin <mikael@gcc.gnu.org> + + PR tree-optimization/115494 + * gcc.dg/torture/pr115494.c: New testcase. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118430 + * c-c++-common/musttail14.c: Expect lhs on the must tail call calls. + +2025-01-16 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/118430 + * c-c++-common/musttail14.c: New test. + * c-c++-common/pr118430.c: New test. + +2025-01-16 liuhongt <hongtao.liu@intel.com> + + * gcc.target/i386/pr118489.c: New test. + +2025-01-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115895 + * gcc.target/i386/vect-pr115895.c: New testcase. + +2025-01-15 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/102705 + * gcc.dg/tree-ssa/pr105832-2.c: Update testcase. + * gcc.dg/tree-ssa/pr96669-1.c: Likewise. + * gcc.dg/tree-ssa/pr102705-1.c: New test. + * gcc.dg/tree-ssa/pr102705-2.c: New test. + +2025-01-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/71884 + * gfortran.dg/pr71884.f90: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118390 + * g++.dg/cpp/embed-20.C: New test. + * g++.dg/cpp0x/pr118390.C: New test. + +2025-01-15 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * gcc.target/aarch64/inline-mem-set-pr112804.c: Add -Wno-deprecated. + * gcc.target/aarch64/pr100518.c: Likewise. + * gcc.target/aarch64/pr113114.c: Likewise. + * gcc.target/aarch64/pr80295.c: Likewise. + * gcc.target/aarch64/pr94201.c: Likewise. + * gcc.target/aarch64/pr94577.c: Likewise. + * gcc.target/aarch64/sve/pr108603.c: Likewise. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * gcc.target/bpf/core-builtin-1.c: Correct test. + * gcc.target/bpf/core-builtin-2.c: Correct test. + * gcc.target/bpf/core-builtin-exprlist-1.c: Correct test. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * gcc.target/bpf/core-attr-calls.c: New test. + +2025-01-15 Cupertino Miranda <cupertino.miranda@oracle.com> + + * gcc.target/bpf/core-attr-const.c: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118278 + * g++.dg/abi/mangle80.C: New test. + * g++.dg/cpp/embed-19.C: New test. + +2025-01-15 Marek Polacek <polacek@redhat.com> + + PR c++/118139 + * g++.dg/diagnostic/decltype1.C: New test. + +2025-01-15 Tamar Christina <tamar.christina@arm.com> + + PR middle-end/118472 + * gcc.dg/pr118472.c: New test. + +2025-01-15 Christoph Müllner <christoph.muellner@vrull.eu> + + PR target/117079 + * gcc.target/i386/pr105493.c: Fix expected vectorization + +2025-01-15 Tobias Burnus <tburnus@baylibre.com> + + PR c++/118486 + * g++.dg/gomp/declare-variant-11.C: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR ipa/116068 + * gcc.dg/graphite/pr116068.c: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118387 + * g++.dg/cpp2a/spaceship-err6.C: Expect another error. + * g++.dg/cpp2a/spaceship-synth17.C: Likewise. + * g++.dg/cpp2a/spaceship-synth-neg6.C: Likewise. + * g++.dg/cpp2a/spaceship-synth-neg7.C: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118124 + * g++.dg/cpp0x/initlist-opt5.C: New test. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118124 + * g++.dg/cpp/embed-15.C: New test. + * g++.dg/cpp/embed-16.C: New test. + * g++.dg/cpp0x/initlist-opt3.C: New test. + * g++.dg/cpp0x/initlist-opt4.C: New test. + +2025-01-15 Kito Cheng <kito.cheng@sifive.com> + + PR target/118182 + * gfortran.target/riscv/rvv/pr118182.f: New. + * gcc.target/riscv/rvv/autovec/pr118182-1.c: New. + * gcc.target/riscv/rvv/autovec/pr118182-2.c: New. + +2025-01-15 Anton Blanchard <antonb@tenstorrent.com> + Jeff Law <jlaw@ventanamicro.com> + + PR target/118170 + * gcc.target/riscv/pr118170.c: New test. + +2025-01-15 Richard Sandiford <richard.sandiford@arm.com> + Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/109592 + * gcc.target/riscv/pr109592.c: New test. + * gcc.target/riscv/sign-extend-rshift.c: Adjust expected output + +2025-01-14 anetczuk <anetczuk@o2.pl> + + * g++.dg/diagnostic/lang-dump-1.C: New test. + +2025-01-14 Marek Polacek <polacek@redhat.com> + + PR c++/118047 + PR c++/118355 + * g++.dg/cpp0x/nsdmi-list10.C: New test. + * g++.dg/cpp0x/nsdmi-list9.C: New test. + +2025-01-14 Sandra Loosemore <sloosemore@baylibre.com> + Kwok Cheung Yeung <kcy@codesourcery.com> + Sandra Loosemore <sandra@codesourcery.com> + Marcel Vollweiler <marcel@codesourcery.com> + + PR middle-end/114596 + PR middle-end/112779 + PR middle-end/113904 + * c-c++-common/gomp/declare-variant-12.c: Adjust expected behavior + per PR114596. + * c-c++-common/gomp/declare-variant-13.c: Test that this is resolvable + after gimplification, not just final resolution. + * c-c++-common/gomp/declare-variant-14.c: Tweak testcase to ensure + that -O causes dead code to be optimized away. + * gfortran.dg/gomp/declare-variant-12.f90: Adjust expected behavior + per PR114596. + * gfortran.dg/gomp/declare-variant-13.f90: Test that this is resolvable + after gimplification, not just final resolution. + * gfortran.dg/gomp/declare-variant-14.f90: Tweak testcase to ensure + that -O causes dead code to be optimized away. + +2025-01-14 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118456 + * gcc.dg/field-merge-21.c: New. + * gcc.dg/field-merge-22.c: New. + +2025-01-14 Robin Dapp <rdapp@ventanamicro.com> + + PR target/118154 + * gcc.target/riscv/rvv/autovec/pr118154-1.c: New test. + * gcc.target/riscv/rvv/autovec/pr118154-2.c: New test. + +2025-01-14 Robin Dapp <rdapp@ventanamicro.com> + + PR middle-end/118140 + * gcc.dg/vect/pr118140.c: New test. + * gcc.target/riscv/rvv/autovec/pr118140.c: New test. + +2025-01-14 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117397 + * g++.dg/modules/dguide-5_a.H: New test. + * g++.dg/modules/dguide-5_b.H: New test. + * g++.dg/modules/dguide-5_c.H: New test. + * g++.dg/modules/dguide-6.h: New test. + * g++.dg/modules/dguide-6_a.C: New test. + * g++.dg/modules/dguide-6_b.C: New test. + * g++.dg/modules/dguide-6_c.C: New test. + +2025-01-14 Anuj Mohite <anujmohite001@gmail.com> + + * gfortran.dg/do_concurrent_10.f90: New test. + * gfortran.dg/do_concurrent_8_f2018.f90: New test. + * gfortran.dg/do_concurrent_8_f2023.f90: New test. + * gfortran.dg/do_concurrent_9.f90: New test. + * gfortran.dg/do_concurrent_all_clauses.f90: New test. + * gfortran.dg/do_concurrent_basic.f90: New test. + * gfortran.dg/do_concurrent_constraints.f90: New test. + * gfortran.dg/do_concurrent_local_init.f90: New test. + * gfortran.dg/do_concurrent_locality_specs.f90: New test. + * gfortran.dg/do_concurrent_multiple_reduce.f90: New test. + * gfortran.dg/do_concurrent_nested.f90: New test. + * gfortran.dg/do_concurrent_parser.f90: New test. + * gfortran.dg/do_concurrent_reduce_max.f90: New test. + * gfortran.dg/do_concurrent_reduce_sum.f90: New test. + * gfortran.dg/do_concurrent_shared.f90: New test. + +2025-01-14 David Malcolm <dmalcolm@redhat.com> + + PR c/116871 + * gcc.dg/c23-mismatching-fn-ptr-a52dec.c: New test. + * gcc.dg/c23-mismatching-fn-ptr-alsatools.c: New test. + * gcc.dg/c23-mismatching-fn-ptr.c: New test. + +2025-01-14 Andrew Pinski <quic_apinski@quicinc.com> + + PR c++/118445 + * g++.target/aarch64/sve/constexpr-add-1.C: New test. + +2025-01-14 Jiufu Guo <guojiufu@linux.ibm.com> + + PR target/116030 + * gcc.target/powerpc/pr116030.c: New test. + +2025-01-14 Robin Dapp <rdapp.gcc@gmail.com> + + PR target/117682 + * gcc.target/riscv/rvv/autovec/pr117682.c: New test. + +2025-01-13 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/stack_save_restore_1.c: Skip for -flto. + * gcc.target/riscv/stack_save_restore_2.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-04.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-05.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-06.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-07.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-08.c: Ditto. + * gcc.target/riscv/zbb-rol-ror-09.c: Ditto. + +2025-01-13 Xi Ruoyao <xry111@xry111.site> + + PR target/115921 + * gcc.target/riscv/zba-shNadd-08.c: New test. + +2025-01-13 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/rvv/base/bug-10.c: New test. + +2025-01-13 Paul-Antoine Arras <parras@baylibre.com> + + * gfortran.dg/gomp/declare-variant-2.f90: Remove error test for a comma + after the directive name. Add tests for other invalid syntaxes (extra + comma and invalid clause). + * c-c++-common/gomp/adjust-args-5.c: New test. + * gfortran.dg/gomp/adjust-args-11.f90: New test. + +2025-01-13 Jin Ma <jinma@linux.alibaba.com> + + * gcc.target/riscv/zbs-bug.c: New test. + +2025-01-13 Gaius Mulley <gaiusmod2@gmail.com> + + PR modula2/118453 + * gm2/pim/fail/badbecomes2.mod: New test. + * gm2/pim/fail/badparamset1.mod: New test. + * gm2/pim/fail/badparamset2.mod: New test. + * gm2/pim/fail/badsyntaxset1.mod: New test. + +2025-01-13 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/107455 + * gcc.target/riscv/pr107455-1.c: New test. + * gcc.target/riscv/pr107455-2.c: New test. + +2025-01-13 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118409 + * gcc.dg/field-merge-20.c: New. + +2025-01-13 Richard Biener <rguenther@suse.de> + Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + PR tree-optimization/117119 + * gcc.dg/torture/pr117119.c: New testcase. + +2025-01-13 Thomas Schwinge <tschwinge@baylibre.com> + + * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: + Un-XFAIL 'dg-note's. + +2025-01-13 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/crc-builtin-target32.c: Add -fdump-rtl-expand-details + as dg-additional-options. Scan expand dump rather than assembly, + adjust the regexps. + * gcc.dg/crc-builtin-target64.c: Likewise. + * gcc.dg/crc-builtin-rev-target32.c: Likewise. + * gcc.dg/crc-builtin-rev-target64.c: Likewise. + * gcc.dg/pr117997.c: New test. + * gcc.dg/pr118415.c: New test. + +2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/asm3.d: Adjust test. + * gdc.dg/torture/pr96435.d: Adjust test. + +2025-01-12 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/copy1.d: New test. + +2025-01-12 David Malcolm <dmalcolm@redhat.com> + + PR c/118112 + * gcc.dg/too-few-arguments.c: New test. + * gcc.dg/too-many-arguments.c: New test. + +2025-01-12 Harald Anlauf <anlauf@gmx.de> + + PR fortran/115788 + * gfortran.dg/ieee/out_of_range.f90: New test. + * gfortran.dg/out_of_range_1.f90: New test. + * gfortran.dg/out_of_range_2.f90: New test. + * gfortran.dg/out_of_range_3.f90: New test. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * gcc.target/alpha/memcpy-hi-unaligned-dst.c: New file. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * gcc.target/alpha/memcpy-si-aligned.c: New file. + * gcc.target/alpha/memcpy-si-unaligned.c: New file. + * gcc.target/alpha/memcpy-si-unaligned-dst.c: New file. + * gcc.target/alpha/memcpy-si-unaligned-src.c: New file. + * gcc.target/alpha/memcpy-si-unaligned-src-bwx.c: New file. + +2025-01-12 Maciej W. Rozycki <macro@orcam.me.uk> + + * gcc.target/alpha/target-bwx-1.c: New file. + * gcc.target/alpha/target-bwx-2.c: New file. + * gcc.target/alpha/target-bwx-3.c: New file. + * gcc.target/alpha/target-bwx-4.c: New file. + * gcc.target/alpha/target-cix-1.c: New file. + * gcc.target/alpha/target-cix-2.c: New file. + * gcc.target/alpha/target-cix-3.c: New file. + * gcc.target/alpha/target-cix-4.c: New file. + * gcc.target/alpha/target-fix-1.c: New file. + * gcc.target/alpha/target-fix-2.c: New file. + * gcc.target/alpha/target-fix-3.c: New file. + * gcc.target/alpha/target-fix-4.c: New file. + * gcc.target/alpha/target-max-1.c: New file. + * gcc.target/alpha/target-max-2.c: New file. + * gcc.target/alpha/target-max-3.c: New file. + * gcc.target/alpha/target-max-4.c: New file. + +2025-01-11 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/114630 + * g++.dg/modules/pr114630.h: New test. + * g++.dg/modules/pr114630_a.C: New test. + * g++.dg/modules/pr114630_b.C: New test. + * g++.dg/modules/pr114630_c.C: New test. + +2025-01-11 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/goacc/routine-external-level-of-parallelism-2.f: Update + xfail'ed 'dg-bogus' for the better 'declared here' location. + * gfortran.dg/gomp/dispatch-11.f90: New test. + * gfortran.dg/gomp/dispatch-12.f90: New test. + +2025-01-11 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/108434 + * gfortran.dg/pr108434.f90 : Add tests from comment 1. + +2025-01-11 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/attrib-2_a.C: New test. + * g++.dg/modules/attrib-2_b.C: New test. + +2025-01-11 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/attrib-1_a.C: New test. + * g++.dg/modules/attrib-1_b.C: New test. + +2025-01-11 mengqinggang <mengqinggang@loongson.cn> + + * gcc.target/loongarch/imm-load.c: Not generate ">>". + +2025-01-11 Andrew MacLeod <amacleod@redhat.com> + + PR tree-optimization/88575 + * gcc.dg/tree-ssa/minmax-27.c: Disable VRP. + * gcc.dg/tree-ssa/minmax-27e.c: New. + * gcc.dg/tree-ssa/minmax-27f.c: New. + * gcc.dg/tree-ssa/minmax-28.c: Disable VRP. + * gcc.dg/tree-ssa/minmax-28e.c: New. + * gcc.dg/tree-ssa/minmax-28f.c: New. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * gcc.dg/vect/vect-early-break_130.c: New test. + +2025-01-10 Tamar Christina <Tamar.Christina@arm.com> + Alex Coplan <alex.coplan@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * g++.dg/vect/vect-early-break_6.cc: New test. + +2025-01-10 Alex Coplan <alex.coplan@arm.com> + Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/118211 + PR tree-optimization/116126 + * gcc.dg/tree-ssa/cunroll-13.c: Don't vectorize. + * gcc.dg/tree-ssa/cunroll-14.c: Likewise. + * gcc.dg/unroll-6.c: Likewise. + * gcc.dg/tree-ssa/gen-vect-28.c: Likewise. + * gcc.dg/vect/vect-104.c: Expect to vectorize. + * gcc.dg/vect/vect-early-break_108-pr113588.c: Likewise. + * gcc.dg/vect/vect-early-break_109-pr113588.c: Likewise. + * gcc.dg/vect/vect-early-break_110-pr113467.c: Likewise. + * gcc.dg/vect/vect-early-break_3.c: Likewise. + * gcc.dg/vect/vect-early-break_65.c: Likewise. + * gcc.dg/vect/vect-early-break_8.c: Likewise. + * gfortran.dg/vect/vect-5.f90: Likewise. + * gfortran.dg/vect/vect-8.f90: Likewise. + * gcc.dg/vect/vect-switch-search-line-fast.c: + +2025-01-10 Marek Polacek <polacek@redhat.com> + + PR c++/118391 + * g++.dg/cpp2a/lambda-uneval20.C: New test. + +2025-01-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/cmse/cmse-15.c: Added pattern for armv8-m.base. + +2025-01-10 Paul-Antoine Arras <parras@baylibre.com> + + * g++.dg/gomp/dispatch-8.C: New test. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/118387 + * g++.dg/cpp2a/spaceship-synth17.C: New test. + +2025-01-10 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/operator-2_a.C: New test. + * g++.dg/modules/operator-2_b.C: New test. + +2025-01-10 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118017 + * gcc.target/i386/pr118017.c: Check target int128. + +2025-01-10 Marek Polacek <polacek@redhat.com> + + PR c++/117937 + * g++.dg/cpp26/pack-indexing13.C: New test. + * g++.dg/cpp26/pack-indexing14.C: New test. + +2025-01-10 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * gcc.target/s390/uaddc-1.c: New test. + * gcc.target/s390/uaddc-2.c: New test. + * gcc.target/s390/uaddc-3.c: New test. + * gcc.target/s390/usubc-1.c: New test. + * gcc.target/s390/usubc-2.c: New test. + * gcc.target/s390/usubc-3.c: New test. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/acle/fpmr-1.c: New test. + * gcc.target/aarch64/acle/fpmr-2.c: New test. + * gcc.target/aarch64/acle/fpmr-3.c: New test. + * gcc.target/aarch64/acle/fpmr-4.c: New test. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * g++.target/aarch64/mv-pragma.C: New test. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/cpunative/native_cpu_21.c: Add rcpc2 to + expected feature string instead of rcpc. + * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/cpunative/native_cpu_21.c: Add flagm2 to + expected feature string instead of flagm. + * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/cpunative/native_cpu_21.c: Add frintts to + expected feature string. + * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/cpunative/native_cpu_21.c: Add jscvt to + expected feature string. + * gcc.target/aarch64/cpunative/native_cpu_22.c: Ditto. + +2025-01-10 Andrew Carlotti <andrew.carlotti@arm.com> + + * gcc.target/aarch64/cpunative/info_15: Add fcma to Features. + * gcc.target/aarch64/cpunative/info_16: Ditto. + * gcc.target/aarch64/cpunative/info_17: Ditto. + * gcc.target/aarch64/cpunative/info_8: Ditto. + * gcc.target/aarch64/cpunative/info_9: Ditto. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c/118376 + * gcc.dg/pr118376.c: New test. + +2025-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/117186 + * gcc.dg/torture/pr117186.c: New test. + * gcc.target/aarch64/pr117186.c: Likewise. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118344 + * gcc.dg/field-merge-19.c: New. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR tree-optimization/118206 + * gcc.dg/field-merge-18.c: New. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR testsuite/118025 + * gcc.dg/field-merge-1.c: Convert constants to desired types. + * gcc.dg/field-merge-3.c: Likewise. + * gcc.dg/field-merge-4.c: Likewise. + * gcc.dg/field-merge-5.c: Likewise. + * gcc.dg/field-merge-11.c: Likewise. + * gcc.dg/field-merge-17.c: Don't mess with padding bits. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + PR testsuite/118025 + * gcc.dg/field-merge-1.c: Skip BIT_FIELD_REF counting on AVR and PRU. + * gcc.dg/field-merge-3.c: Bypass the test if short doesn't have the + expected size. + * gcc.dg/field-merge-8.c: Likewise. + * gcc.dg/field-merge-9.c: Likewise. Skip optimization counting on + AVR and PRU. + * gcc.dg/field-merge-13.c: Skip optimization counting on AVR and PRU. + * gcc.dg/field-merge-15.c: Likewise. + * gcc.dg/field-merge-17.c: Likewise. + * gcc.dg/field-merge-16.c: Likewise. Drop runtime bypass. Use + smaller types. + * gcc.dg/field-merge-14.c: Add comments. + +2025-01-10 Alexandre Oliva <oliva@adacore.com> + + * gcc.dg/field-merge-17.c: New. + +2025-01-10 Martin Jambor <mjambor@suse.cz> + + PR ipa/118138 + * gcc.dg/ipa/pr118138.c: New test. + +2025-01-10 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/__builtin_frame_address_0-1.c: New. + +2025-01-10 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/__builtin_stack_address-1.c: New. + +2025-01-10 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/pr59858.c: Use -std=c17 and effective-target + arm_arch_v5te_thumb. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/118277 + * g++.dg/cpp1z/constexpr-asm-4.C: New test. + * g++.dg/cpp1z/constexpr-asm-5.C: New test. + +2025-01-10 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/modules/decomp-2_b.C: New test. + * g++.dg/modules/decomp-2_a.H: New file. + +2025-01-10 Jason Merrill <jason@redhat.com> + + * g++.dg/modules/constexpr-if-1_a.C: New test. + * g++.dg/modules/constexpr-if-1_b.C: New test. + +2025-01-10 chenxiaolong <chenxiaolong@loongson.cn> + Deng Jianbo <dengjianbo@loongson.cn>. + + * gcc.target/loongarch/vect-slp-two-operator.c: New test. + +2025-01-09 Edwin Lu <ewlu@rivosinc.com> + + * lib/target-supports.exp: Fix effective target sync_char_short + for riscv*-*-* + +2025-01-09 Tamar Christina <tamar.christina@arm.com> + + PR target/118188 + * gcc.target/aarch64/sve/gather_load_12.c: New test. + * gcc.target/aarch64/sve/gather_load_13.c: New test. + * gcc.target/aarch64/sve/gather_load_14.c: New test. + +2025-01-09 Vladimir N. Makarov <vmakarov@redhat.com> + + PR target/118017 + * gcc.target/i386/pr118017.c: New. + +2025-01-09 Jason Merrill <jason@redhat.com> + + * g++.dg/cpp0x/noexcept88.C: New test. + +2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/armv8_2-fp16-conv-1.c: Fix typo. + +2025-01-09 Jakub Jelinek <jakub@redhat.com> + + PR target/118362 + * gcc.c-torture/compile/pr118362.c: New test. + * gcc.target/s390/pr118362.c: New test. + +2025-01-09 Martin Uecker <uecker@tugraz.at> + + PR c/117866 + * gcc.dg/pr117866.c: New test. + * gcc.dg/strub-pr118007.c: Adapt. + +2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/memset-inline-8.c: Use -Os and prefix assembler + instructions with a tab to improve test stability. + * gcc.target/arm/memset-inline-8-exe.c: Use -Os. + +2025-01-09 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * gcc.target/arm/armv8_2-fp16-conv-1.c: Convert + scan-assembler-times to check-function-bodies. + +2025-01-09 Jason Merrill <jason@redhat.com> + Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + PR c/116060 + * c-c++-common/analyzer/out-of-bounds-diagram-8.c: Update to + correct type. + * c-c++-common/analyzer/out-of-bounds-diagram-11.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-diagram-10.c: Likewise. + +2025-01-09 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/pr118325.c: Require effective target trampolines. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/118060 + * g++.dg/cpp2a/concepts-requires40.C: New test. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117887 + * g++.dg/cpp2a/concepts-requires39.C: New test. + * g++.dg/cpp2a/lambda-targ10.C: New test. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117925 + * g++.dg/template/non-dependent35.C: New test. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117993 + * g++.dg/template/dependent-base4.C: New test. + * g++.dg/template/dependent-base5.C: New test. + +2025-01-09 Patrick Palka <ppalka@redhat.com> + + PR c++/117792 + * g++.dg/cpp1z/nontype7.C: New test. + +2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.dg/crc-linux-3.c: Move... + * gcc.dg/torture/crc-linux-3.c: ... here. + +2025-01-09 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/alloca-1.c: Evolve into... + * gcc.target/nvptx/alloca-1-O0.c: ... this, ... + * gcc.target/nvptx/alloca-1-O1.c: ... this, and... + * gcc.target/nvptx/alloca-1-sm_30.c: ... this. + * gcc.target/nvptx/vla-1.c: Evolve into... + * gcc.target/nvptx/vla-1-O0.c: ... this, ... + * gcc.target/nvptx/vla-1-O1.c: ... this, and... + * gcc.target/nvptx/vla-1-sm_30.c: ... this. + * gcc.c-torture/execute/pr36321.c: Adjust. + * gcc.target/nvptx/__builtin_alloca_0-1-O0.c: Likewise. + * gcc.target/nvptx/__builtin_alloca_0-1-O1.c: Likewise. + * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: + Likewise. + * gcc.target/nvptx/softstack.c: Likewise. + * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1-sm_30.c: + New. + * gcc.target/nvptx/alloca-2-O0.c: Likewise. + * gcc.target/nvptx/alloca-3-O1.c: Likewise. + * gcc.target/nvptx/alloca-4-O3.c: Likewise. + * gcc.target/nvptx/alloca-5.c: Likewise. + * lib/target-supports.exp (check_effective_target_alloca): Adjust. + (check_nvptx_default_ptx_isa_target_architecture_at_least) + (check_nvptx_runtime_ptx_isa_target_architecture_at_least) + (check_effective_target_nvptx_runtime_alloca_ptx) + (add_options_for_nvptx_alloca_ptx): New. + +2025-01-09 H.J. Lu <hjl.tools@gmail.com> + + PR rtl-optimization/118266 + * gcc.target/i386/pr118266.c: New test. + +2025-01-09 Jakub Jelinek <jakub@redhat.com> + Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/117927 + * gcc.dg/tree-ssa/pr117927.c: New test. + +2025-01-09 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/append-args-1.c: Update dg-*. + * c-c++-common/gomp/append-args-3.c: Extend testcase. + * c-c++-common/gomp/dispatch-11.c: Update dg-*. + * c-c++-common/gomp/dispatch-12.c: Update dg-*. + * g++.dg/gomp/append-args-1.C: Update dg-*. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/march-map=sm_52.c: Adjust. + * gcc.target/nvptx/march-map=sm_53.c: Likewise. + * gcc.target/nvptx/march-map=sm_60.c: Likewise. + * gcc.target/nvptx/march-map=sm_61.c: Likewise. + * gcc.target/nvptx/march-map=sm_62.c: Likewise. + * gcc.target/nvptx/march-map=sm_70.c: Likewise. + * gcc.target/nvptx/march-map=sm_72.c: Likewise. + * gcc.target/nvptx/march-map=sm_75.c: Likewise. + * gcc.target/nvptx/march-map=sm_80.c: Likewise. + * gcc.target/nvptx/march-map=sm_86.c: Likewise. + * gcc.target/nvptx/march-map=sm_87.c: Likewise. + * gcc.target/nvptx/march=sm_52.c: Likewise. + * gcc.target/nvptx/march=sm_53.c: Likewise. + * gcc.target/nvptx/march=sm_70.c: Likewise. + * gcc.target/nvptx/march=sm_75.c: Likewise. + * gcc.target/nvptx/march=sm_80.c: Likewise. + * gcc.target/nvptx/mptx=_.c: Use '-march=sm_89'. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + * gcc.target/nvptx/mptx=7.3.c: New. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + * lib/target-supports.exp + (check_effective_target_nvptx_softstack): New. + (check_effective_target_alloca) [nvptx]: Use it. + +2025-01-08 Jakub Jelinek <jakub@redhat.com> + + PR c++/117825 + * g++.dg/warn/pr117825.C: New test. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: + Adjust. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/__builtin_stack_save___builtin_stack_restore-1.c: + Add. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/__builtin_alloca_0-1-O0.c: New. + * gcc.target/nvptx/__builtin_alloca_0-1-O1.c: Likewise. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * g++.dg/gomp/declare-variant-3.C: Update diagnostic. + * g++.dg/gomp/declare-variant-5.C: Likewise. + +2025-01-08 Jason Merrill <jason@redhat.com> + + * g++.dg/gomp/declare-variant-3.C: Don't depend on expr dump. + * g++.dg/gomp/declare-variant-5.C: Likewise. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/alloca-2-O1.c: New. + +2025-01-08 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/65181 + * gcc.target/nvptx/alloca-1.c: New. + * gcc.target/nvptx/vla-1.c: Likewise. + +2025-01-08 Richard Sandiford <richard.sandiford@arm.com> + + PR target/107102 + * gcc.target/aarch64/sve/sibcall_1.c: New test. + +2025-01-08 Tobias Burnus <tburnus@baylibre.com> + + * c-c++-common/gomp/append-args-4.c: New test. + * c-c++-common/gomp/append-args-5.c: New test. + +2025-01-08 Marek Polacek <polacek@redhat.com> + + PR c++/118169 + * g++.dg/cpp1y/constexpr-prvalue2.C: New test. + +2025-01-08 Thomas Schwinge <thomas@codesourcery.com> + + * gcc.dg/torture/stackalign/global-1.c: Re-enable for nvptx. + * gcc.dg/torture/stackalign/inline-1.c: Likewise. + * gcc.dg/torture/stackalign/nested-1.c: Likewise. + * gcc.dg/torture/stackalign/nested-2.c: Likewise. + * gcc.dg/torture/stackalign/nested-4.c: Likewise. + * gcc.dg/torture/stackalign/pr16660-1.c: Likewise. + * gcc.dg/torture/stackalign/pr16660-2.c: Likewise. + * gcc.dg/torture/stackalign/pr16660-3.c: Likewise. + * gcc.dg/torture/stackalign/ret-struct-1.c: Likewise. + * gcc.dg/torture/stackalign/struct-1.c: Likewise. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/117979 + * gcc.dg/torture/pr117979.c: New testcase. + +2025-01-08 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/debug/dwarf2/lang-cpp17.C: Add -gno-strict-dwarf to + dg-options. Check also for DW_AT_language_{name,version} values. + * g++.dg/debug/dwarf2/lang-cpp20.C: Likewise. + * g++.dg/debug/dwarf2/lang-cpp23.C: New test. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR middle-end/118325 + * gcc.dg/pr118325.c: New testcase. + +2025-01-08 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118269 + * gcc.dg/vect/vect-early-break_131-pr118269.c: New testcase. + +2025-01-08 Christophe Lyon <christophe.lyon@linaro.org> + + PR target/118332 + * gcc.target/arm/mve/intrinsics/pr118332.c: New test. + +2025-01-08 Jeevitha <jeevitha@linux.ibm.com> + + * gcc.target/powerpc/amo1.c: Removed powerpc*-*-* from the target and + simplified dg-options. + * gcc.target/powerpc/amo2.c: Simplified dg-options and added powerpc_vsx + target check. + +2025-01-08 Haochen Jiang <haochen.jiang@intel.com> + + * gcc.target/i386/amxavx512-asmatt-1.c: Adjust intrin call. + * gcc.target/i386/amxavx512-asmintel-1.c: Ditto. + * gcc.target/i386/amxavx512-cvtrowps2pbf16-2.c: Rename to... + * gcc.target/i386/amxavx512-cvtrowps2bf16-2.c: ...this. Rename + test functions. + +2025-01-08 Hongyu Wang <hongyu.wang@intel.com> + + * gcc.target/i386/cmov12.c: New test. + +2025-01-07 Vineet Gupta <vineetg@rivosinc.com> + Pan Li <pan2.li@intel.com> + + PR target/117722 + * gcc.target/riscv/rvv/autovec/pr117722.c: New test. + +2025-01-07 Tsung Chun Lin <tclin914@gmail.com> + + * gcc.target/riscv/rvv/autovec/pr113469.c: Update expected output. + * gcc.target/riscv/rvv/base/movqi-1.c: New test. + +2025-01-07 Jeff Law <jlaw@ventanamicro.com> + + * gcc.target/riscv/rvv/vsetvl/vlmax_conflict-3.c: Update expected + output. + * gcc.target/riscv/rvv/vsetvl/vlmax_conflict-12.c: Likewise. + +2025-01-07 Andreas Schwab <schwab@suse.de> + + * lib/target-supports.exp + (check_effective_target_sync_char_short): Enable for riscv*-*-*. + +2025-01-07 Andreas Schwab <schwab@suse.de> + + PR target/118137 + * gcc.dg/atomic/pr118137.c: New. + +2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.dg/pr90838-2.c: Skip if default ABI is E. + * gcc.dg/pr90838.c: Ditto. + * gcc.target/riscv/adddibeq.c: Ditto. + * gcc.target/riscv/adddibfeq.c: Ditto. + * gcc.target/riscv/adddibfge.c: Ditto. + * gcc.target/riscv/adddibfgt.c: Ditto. + * gcc.target/riscv/adddibfle.c: Ditto. + * gcc.target/riscv/adddibflt.c: Ditto. + * gcc.target/riscv/adddibfne.c: Ditto. + * gcc.target/riscv/adddibge.c: Ditto. + * gcc.target/riscv/adddibgeu.c: Ditto. + * gcc.target/riscv/adddibgt.c: Ditto. + * gcc.target/riscv/adddibgtu.c: Ditto. + * gcc.target/riscv/adddible.c: Ditto. + * gcc.target/riscv/adddibleu.c: Ditto. + * gcc.target/riscv/adddiblt.c: Ditto. + * gcc.target/riscv/adddibltu.c: Ditto. + * gcc.target/riscv/adddibne.c: Ditto. + * gcc.target/riscv/adddieq.c: Ditto. + * gcc.target/riscv/adddifeq.c: Ditto. + * gcc.target/riscv/adddifge.c: Ditto. + * gcc.target/riscv/adddifgt.c: Ditto. + * gcc.target/riscv/adddifle.c: Ditto. + * gcc.target/riscv/adddiflt.c: Ditto. + * gcc.target/riscv/adddifne.c: Ditto. + * gcc.target/riscv/adddige.c: Ditto. + * gcc.target/riscv/adddigeu.c: Ditto. + * gcc.target/riscv/adddigt.c: Ditto. + * gcc.target/riscv/adddigtu.c: Ditto. + * gcc.target/riscv/adddile.c: Ditto. + * gcc.target/riscv/adddileu.c: Ditto. + * gcc.target/riscv/adddilt.c: Ditto. + * gcc.target/riscv/adddiltu.c: Ditto. + * gcc.target/riscv/adddine.c: Ditto. + * gcc.target/riscv/addsibeq.c: Ditto. + * gcc.target/riscv/addsibfeq.c: Ditto. + * gcc.target/riscv/addsibfge.c: Ditto. + * gcc.target/riscv/addsibfgt.c: Ditto. + * gcc.target/riscv/addsibfle.c: Ditto. + * gcc.target/riscv/addsibflt.c: Ditto. + * gcc.target/riscv/addsibfne.c: Ditto. + * gcc.target/riscv/addsibge.c: Ditto. + * gcc.target/riscv/addsibgeu.c: Ditto. + * gcc.target/riscv/addsibgt.c: Ditto. + * gcc.target/riscv/addsibgtu.c: Ditto. + * gcc.target/riscv/addsible.c: Ditto. + * gcc.target/riscv/addsibleu.c: Ditto. + * gcc.target/riscv/addsiblt.c: Ditto. + * gcc.target/riscv/addsibltu.c: Ditto. + * gcc.target/riscv/addsibne.c: Ditto. + * gcc.target/riscv/addsieq.c: Ditto. + * gcc.target/riscv/addsifeq.c: Ditto. + * gcc.target/riscv/addsifge.c: Ditto. + * gcc.target/riscv/addsifgt.c: Ditto. + * gcc.target/riscv/addsifle.c: Ditto. + * gcc.target/riscv/addsiflt.c: Ditto. + * gcc.target/riscv/addsifne.c: Ditto. + * gcc.target/riscv/addsige.c: Ditto. + * gcc.target/riscv/addsigeu.c: Ditto. + * gcc.target/riscv/addsigt.c: Ditto. + * gcc.target/riscv/addsigtu.c: Ditto. + * gcc.target/riscv/addsile.c: Ditto. + * gcc.target/riscv/addsileu.c: Ditto. + * gcc.target/riscv/addsilt.c: Ditto. + * gcc.target/riscv/addsiltu.c: Ditto. + * gcc.target/riscv/addsine.c: Ditto. + * gcc.target/riscv/cmo-zicboz-zic64-1.c: Ditto. + * gcc.target/riscv/cmpmemsi-2.c: Ditto. + * gcc.target/riscv/cmpmemsi-3.c: Ditto. + * gcc.target/riscv/cmpmemsi.c: Ditto. + * gcc.target/riscv/cpymemsi-2.c: Ditto. + * gcc.target/riscv/cpymemsi-3.c: Ditto. + * gcc.target/riscv/cpymemsi.c: Ditto. + * gcc.target/riscv/crc-builtin-zbc32.c: Ditto. + * gcc.target/riscv/crc-builtin-zbc64.c: Ditto. + * gcc.target/riscv/cset-sext-rtl.c: Ditto. + * gcc.target/riscv/cset-sext-rtl32.c: Ditto. + * gcc.target/riscv/cset-sext-sfb-rtl.c: Ditto. + * gcc.target/riscv/cset-sext-sfb-rtl32.c: Ditto. + * gcc.target/riscv/cset-sext-sfb.c: Ditto. + * gcc.target/riscv/cset-sext-thead-rtl.c: Ditto. + * gcc.target/riscv/cset-sext-thead.c: Ditto. + * gcc.target/riscv/cset-sext-ventana-rtl.c: Ditto. + * gcc.target/riscv/cset-sext-ventana.c: Ditto. + * gcc.target/riscv/cset-sext-zicond-rtl.c: Ditto. + * gcc.target/riscv/cset-sext-zicond-rtl32.c: Ditto. + * gcc.target/riscv/cset-sext-zicond.c: Ditto. + * gcc.target/riscv/cset-sext.c: Ditto. + * gcc.target/riscv/matrix_add_const.c: Ditto. + * gcc.target/riscv/movdibeq-thead.c: Ditto. + * gcc.target/riscv/movdibeq-ventana.c: Ditto. + * gcc.target/riscv/movdibeq-zicond.c: Ditto. + * gcc.target/riscv/movdibeq.c: Ditto. + * gcc.target/riscv/movdibfeq-ventana.c: Ditto. + * gcc.target/riscv/movdibfeq-zicond.c: Ditto. + * gcc.target/riscv/movdibfeq.c: Ditto. + * gcc.target/riscv/movdibfge-ventana.c: Ditto. + * gcc.target/riscv/movdibfge-zicond.c: Ditto. + * gcc.target/riscv/movdibfge.c: Ditto. + * gcc.target/riscv/movdibfgt-ventana.c: Ditto. + * gcc.target/riscv/movdibfgt-zicond.c: Ditto. + * gcc.target/riscv/movdibfgt.c: Ditto. + * gcc.target/riscv/movdibfle-ventana.c: Ditto. + * gcc.target/riscv/movdibfle-zicond.c: Ditto. + * gcc.target/riscv/movdibfle.c: Ditto. + * gcc.target/riscv/movdibflt-ventana.c: Ditto. + * gcc.target/riscv/movdibflt-zicond.c: Ditto. + * gcc.target/riscv/movdibflt.c: Ditto. + * gcc.target/riscv/movdibfne-ventana.c: Ditto. + * gcc.target/riscv/movdibfne-zicond.c: Ditto. + * gcc.target/riscv/movdibfne.c: Ditto. + * gcc.target/riscv/movdibge-thead.c: Ditto. + * gcc.target/riscv/movdibge-ventana.c: Ditto. + * gcc.target/riscv/movdibge-zicond.c: Ditto. + * gcc.target/riscv/movdibge.c: Ditto. + * gcc.target/riscv/movdibgeu-thead.c: Ditto. + * gcc.target/riscv/movdibgeu-ventana.c: Ditto. + * gcc.target/riscv/movdibgeu-zicond.c: Ditto. + * gcc.target/riscv/movdibgeu.c: Ditto. + * gcc.target/riscv/movdibgt-thead.c: Ditto. + * gcc.target/riscv/movdibgt-ventana.c: Ditto. + * gcc.target/riscv/movdibgt-zicond.c: Ditto. + * gcc.target/riscv/movdibgt.c: Ditto. + * gcc.target/riscv/movdibgtu-thead.c: Ditto. + * gcc.target/riscv/movdibgtu-ventana.c: Ditto. + * gcc.target/riscv/movdibgtu-zicond.c: Ditto. + * gcc.target/riscv/movdibgtu.c: Ditto. + * gcc.target/riscv/movdible-thead.c: Ditto. + * gcc.target/riscv/movdible-ventana.c: Ditto. + * gcc.target/riscv/movdible-zicond.c: Ditto. + * gcc.target/riscv/movdible.c: Ditto. + * gcc.target/riscv/movdibleu-thead.c: Ditto. + * gcc.target/riscv/movdibleu-ventana.c: Ditto. + * gcc.target/riscv/movdibleu-zicond.c: Ditto. + * gcc.target/riscv/movdibleu.c: Ditto. + * gcc.target/riscv/movdiblt-thead.c: Ditto. + * gcc.target/riscv/movdiblt-ventana.c: Ditto. + * gcc.target/riscv/movdiblt-zicond.c: Ditto. + * gcc.target/riscv/movdiblt.c: Ditto. + * gcc.target/riscv/movdibltu-thead.c: Ditto. + * gcc.target/riscv/movdibltu-ventana.c: Ditto. + * gcc.target/riscv/movdibltu-zicond.c: Ditto. + * gcc.target/riscv/movdibltu.c: Ditto. + * gcc.target/riscv/movdibne-thead.c: Ditto. + * gcc.target/riscv/movdibne-ventana.c: Ditto. + * gcc.target/riscv/movdibne-zicond.c: Ditto. + * gcc.target/riscv/movdibne.c: Ditto. + * gcc.target/riscv/movdieq-sfb.c: Ditto. + * gcc.target/riscv/movdieq-thead.c: Ditto. + * gcc.target/riscv/movdieq-ventana.c: Ditto. + * gcc.target/riscv/movdieq-zicond.c: Ditto. + * gcc.target/riscv/movdieq.c: Ditto. + * gcc.target/riscv/movdifeq-sfb.c: Ditto. + * gcc.target/riscv/movdifeq-thead.c: Ditto. + * gcc.target/riscv/movdifeq-ventana.c: Ditto. + * gcc.target/riscv/movdifeq-zicond.c: Ditto. + * gcc.target/riscv/movdifeq.c: Ditto. + * gcc.target/riscv/movdifge-sfb.c: Ditto. + * gcc.target/riscv/movdifge-thead.c: Ditto. + * gcc.target/riscv/movdifge-ventana.c: Ditto. + * gcc.target/riscv/movdifge-zicond.c: Ditto. + * gcc.target/riscv/movdifge.c: Ditto. + * gcc.target/riscv/movdifgt-sfb.c: Ditto. + * gcc.target/riscv/movdifgt-thead.c: Ditto. + * gcc.target/riscv/movdifgt-ventana.c: Ditto. + * gcc.target/riscv/movdifgt-zicond.c: Ditto. + * gcc.target/riscv/movdifgt.c: Ditto. + * gcc.target/riscv/movdifle-sfb.c: Ditto. + * gcc.target/riscv/movdifle-thead.c: Ditto. + * gcc.target/riscv/movdifle-ventana.c: Ditto. + * gcc.target/riscv/movdifle-zicond.c: Ditto. + * gcc.target/riscv/movdifle.c: Ditto. + * gcc.target/riscv/movdiflt-sfb.c: Ditto. + * gcc.target/riscv/movdiflt-thead.c: Ditto. + * gcc.target/riscv/movdiflt-ventana.c: Ditto. + * gcc.target/riscv/movdiflt-zicond.c: Ditto. + * gcc.target/riscv/movdiflt.c: Ditto. + * gcc.target/riscv/movdifne-sfb.c: Ditto. + * gcc.target/riscv/movdifne-thead.c: Ditto. + * gcc.target/riscv/movdifne-ventana.c: Ditto. + * gcc.target/riscv/movdifne-zicond.c: Ditto. + * gcc.target/riscv/movdifne.c: Ditto. + * gcc.target/riscv/movdige-sfb.c: Ditto. + * gcc.target/riscv/movdige-thead.c: Ditto. + * gcc.target/riscv/movdige-ventana.c: Ditto. + * gcc.target/riscv/movdige-zicond.c: Ditto. + * gcc.target/riscv/movdige.c: Ditto. + * gcc.target/riscv/movdigeu-sfb.c: Ditto. + * gcc.target/riscv/movdigeu-thead.c: Ditto. + * gcc.target/riscv/movdigeu-ventana.c: Ditto. + * gcc.target/riscv/movdigeu-zicond.c: Ditto. + * gcc.target/riscv/movdigeu.c: Ditto. + * gcc.target/riscv/movdigt-sfb.c: Ditto. + * gcc.target/riscv/movdigt-thead.c: Ditto. + * gcc.target/riscv/movdigt-ventana.c: Ditto. + * gcc.target/riscv/movdigt-zicond.c: Ditto. + * gcc.target/riscv/movdigt.c: Ditto. + * gcc.target/riscv/movdigtu-sfb.c: Ditto. + * gcc.target/riscv/movdigtu-thead.c: Ditto. + * gcc.target/riscv/movdigtu-ventana.c: Ditto. + * gcc.target/riscv/movdigtu-zicond.c: Ditto. + * gcc.target/riscv/movdigtu.c: Ditto. + * gcc.target/riscv/movdile-sfb.c: Ditto. + * gcc.target/riscv/movdile-thead.c: Ditto. + * gcc.target/riscv/movdile-ventana.c: Ditto. + * gcc.target/riscv/movdile-zicond.c: Ditto. + * gcc.target/riscv/movdile.c: Ditto. + * gcc.target/riscv/movdileu-sfb.c: Ditto. + * gcc.target/riscv/movdileu-thead.c: Ditto. + * gcc.target/riscv/movdileu-ventana.c: Ditto. + * gcc.target/riscv/movdileu-zicond.c: Ditto. + * gcc.target/riscv/movdileu.c: Ditto. + * gcc.target/riscv/movdilt-sfb.c: Ditto. + * gcc.target/riscv/movdilt-thead.c: Ditto. + * gcc.target/riscv/movdilt-ventana.c: Ditto. + * gcc.target/riscv/movdilt-zicond.c: Ditto. + * gcc.target/riscv/movdilt.c: Ditto. + * gcc.target/riscv/movdiltu-sfb.c: Ditto. + * gcc.target/riscv/movdiltu-thead.c: Ditto. + * gcc.target/riscv/movdiltu-ventana.c: Ditto. + * gcc.target/riscv/movdiltu-zicond.c: Ditto. + * gcc.target/riscv/movdiltu.c: Ditto. + * gcc.target/riscv/movdine-sfb.c: Ditto. + * gcc.target/riscv/movdine-thead.c: Ditto. + * gcc.target/riscv/movdine-ventana.c: Ditto. + * gcc.target/riscv/movdine-zicond.c: Ditto. + * gcc.target/riscv/movdine.c: Ditto. + * gcc.target/riscv/movsibeq-thead.c: Ditto. + * gcc.target/riscv/movsibeq-ventana.c: Ditto. + * gcc.target/riscv/movsibeq-zicond.c: Ditto. + * gcc.target/riscv/movsibeq.c: Ditto. + * gcc.target/riscv/movsibfeq-ventana.c: Ditto. + * gcc.target/riscv/movsibfeq-zicond.c: Ditto. + * gcc.target/riscv/movsibfeq.c: Ditto. + * gcc.target/riscv/movsibfge-ventana.c: Ditto. + * gcc.target/riscv/movsibfge-zicond.c: Ditto. + * gcc.target/riscv/movsibfge.c: Ditto. + * gcc.target/riscv/movsibfgt-ventana.c: Ditto. + * gcc.target/riscv/movsibfgt-zicond.c: Ditto. + * gcc.target/riscv/movsibfgt.c: Ditto. + * gcc.target/riscv/movsibfle-ventana.c: Ditto. + * gcc.target/riscv/movsibfle-zicond.c: Ditto. + * gcc.target/riscv/movsibfle.c: Ditto. + * gcc.target/riscv/movsibflt-ventana.c: Ditto. + * gcc.target/riscv/movsibflt-zicond.c: Ditto. + * gcc.target/riscv/movsibflt.c: Ditto. + * gcc.target/riscv/movsibfne-ventana.c: Ditto. + * gcc.target/riscv/movsibfne-zicond.c: Ditto. + * gcc.target/riscv/movsibfne.c: Ditto. + * gcc.target/riscv/movsibge-thead.c: Ditto. + * gcc.target/riscv/movsibge-ventana.c: Ditto. + * gcc.target/riscv/movsibge-zicond.c: Ditto. + * gcc.target/riscv/movsibge.c: Ditto. + * gcc.target/riscv/movsibgeu-thead.c: Ditto. + * gcc.target/riscv/movsibgeu-ventana.c: Ditto. + * gcc.target/riscv/movsibgeu-zicond.c: Ditto. + * gcc.target/riscv/movsibgeu.c: Ditto. + * gcc.target/riscv/movsibgt-thead.c: Ditto. + * gcc.target/riscv/movsibgt-ventana.c: Ditto. + * gcc.target/riscv/movsibgt-zicond.c: Ditto. + * gcc.target/riscv/movsibgt.c: Ditto. + * gcc.target/riscv/movsibgtu-thead.c: Ditto. + * gcc.target/riscv/movsibgtu-ventana.c: Ditto. + * gcc.target/riscv/movsibgtu-zicond.c: Ditto. + * gcc.target/riscv/movsibgtu.c: Ditto. + * gcc.target/riscv/movsible-thead.c: Ditto. + * gcc.target/riscv/movsible-ventana.c: Ditto. + * gcc.target/riscv/movsible-zicond.c: Ditto. + * gcc.target/riscv/movsible.c: Ditto. + * gcc.target/riscv/movsibleu-thead.c: Ditto. + * gcc.target/riscv/movsibleu-ventana.c: Ditto. + * gcc.target/riscv/movsibleu-zicond.c: Ditto. + * gcc.target/riscv/movsibleu.c: Ditto. + * gcc.target/riscv/movsiblt-thead.c: Ditto. + * gcc.target/riscv/movsiblt-ventana.c: Ditto. + * gcc.target/riscv/movsiblt-zicond.c: Ditto. + * gcc.target/riscv/movsiblt.c: Ditto. + * gcc.target/riscv/movsibltu-thead.c: Ditto. + * gcc.target/riscv/movsibltu-ventana.c: Ditto. + * gcc.target/riscv/movsibltu-zicond.c: Ditto. + * gcc.target/riscv/movsibltu.c: Ditto. + * gcc.target/riscv/movsibne-thead.c: Ditto. + * gcc.target/riscv/movsibne-ventana.c: Ditto. + * gcc.target/riscv/movsibne-zicond.c: Ditto. + * gcc.target/riscv/movsibne.c: Ditto. + * gcc.target/riscv/movsieq-sfb.c: Ditto. + * gcc.target/riscv/movsieq-thead.c: Ditto. + * gcc.target/riscv/movsieq-ventana.c: Ditto. + * gcc.target/riscv/movsieq-zicond.c: Ditto. + * gcc.target/riscv/movsieq.c: Ditto. + * gcc.target/riscv/movsifeq-sfb.c: Ditto. + * gcc.target/riscv/movsifeq-thead.c: Ditto. + * gcc.target/riscv/movsifeq-ventana.c: Ditto. + * gcc.target/riscv/movsifeq-zicond.c: Ditto. + * gcc.target/riscv/movsifeq.c: Ditto. + * gcc.target/riscv/movsifge-sfb.c: Ditto. + * gcc.target/riscv/movsifge-thead.c: Ditto. + * gcc.target/riscv/movsifge-ventana.c: Ditto. + * gcc.target/riscv/movsifge-zicond.c: Ditto. + * gcc.target/riscv/movsifge.c: Ditto. + * gcc.target/riscv/movsifgt-sfb.c: Ditto. + * gcc.target/riscv/movsifgt-thead.c: Ditto. + * gcc.target/riscv/movsifgt-ventana.c: Ditto. + * gcc.target/riscv/movsifgt-zicond.c: Ditto. + * gcc.target/riscv/movsifgt.c: Ditto. + * gcc.target/riscv/movsifle-sfb.c: Ditto. + * gcc.target/riscv/movsifle-thead.c: Ditto. + * gcc.target/riscv/movsifle-ventana.c: Ditto. + * gcc.target/riscv/movsifle-zicond.c: Ditto. + * gcc.target/riscv/movsifle.c: Ditto. + * gcc.target/riscv/movsiflt-sfb.c: Ditto. + * gcc.target/riscv/movsiflt-thead.c: Ditto. + * gcc.target/riscv/movsiflt-ventana.c: Ditto. + * gcc.target/riscv/movsiflt-zicond.c: Ditto. + * gcc.target/riscv/movsiflt.c: Ditto. + * gcc.target/riscv/movsifne-sfb.c: Ditto. + * gcc.target/riscv/movsifne-thead.c: Ditto. + * gcc.target/riscv/movsifne-ventana.c: Ditto. + * gcc.target/riscv/movsifne-zicond.c: Ditto. + * gcc.target/riscv/movsifne.c: Ditto. + * gcc.target/riscv/movsige-sfb.c: Ditto. + * gcc.target/riscv/movsige-thead.c: Ditto. + * gcc.target/riscv/movsige-ventana.c: Ditto. + * gcc.target/riscv/movsige-zicond.c: Ditto. + * gcc.target/riscv/movsige.c: Ditto. + * gcc.target/riscv/movsigeu-sfb.c: Ditto. + * gcc.target/riscv/movsigeu-thead.c: Ditto. + * gcc.target/riscv/movsigeu-ventana.c: Ditto. + * gcc.target/riscv/movsigeu-zicond.c: Ditto. + * gcc.target/riscv/movsigeu.c: Ditto. + * gcc.target/riscv/movsigt-sfb.c: Ditto. + * gcc.target/riscv/movsigt-thead.c: Ditto. + * gcc.target/riscv/movsigt-ventana.c: Ditto. + * gcc.target/riscv/movsigt-zicond.c: Ditto. + * gcc.target/riscv/movsigt.c: Ditto. + * gcc.target/riscv/movsigtu-sfb.c: Ditto. + * gcc.target/riscv/movsigtu-thead.c: Ditto. + * gcc.target/riscv/movsigtu-ventana.c: Ditto. + * gcc.target/riscv/movsigtu-zicond.c: Ditto. + * gcc.target/riscv/movsigtu.c: Ditto. + * gcc.target/riscv/movsile-sfb.c: Ditto. + * gcc.target/riscv/movsile-thead.c: Ditto. + * gcc.target/riscv/movsile-ventana.c: Ditto. + * gcc.target/riscv/movsile-zicond.c: Ditto. + * gcc.target/riscv/movsile.c: Ditto. + * gcc.target/riscv/movsileu-sfb.c: Ditto. + * gcc.target/riscv/movsileu-thead.c: Ditto. + * gcc.target/riscv/movsileu-ventana.c: Ditto. + * gcc.target/riscv/movsileu-zicond.c: Ditto. + * gcc.target/riscv/movsileu.c: Ditto. + * gcc.target/riscv/movsilt-sfb.c: Ditto. + * gcc.target/riscv/movsilt-thead.c: Ditto. + * gcc.target/riscv/movsilt-ventana.c: Ditto. + * gcc.target/riscv/movsilt-zicond.c: Ditto. + * gcc.target/riscv/movsilt.c: Ditto. + * gcc.target/riscv/movsiltu-sfb.c: Ditto. + * gcc.target/riscv/movsiltu-thead.c: Ditto. + * gcc.target/riscv/movsiltu-ventana.c: Ditto. + * gcc.target/riscv/movsiltu-zicond.c: Ditto. + * gcc.target/riscv/movsiltu.c: Ditto. + * gcc.target/riscv/movsine-sfb.c: Ditto. + * gcc.target/riscv/movsine-thead.c: Ditto. + * gcc.target/riscv/movsine-ventana.c: Ditto. + * gcc.target/riscv/movsine-zicond.c: Ditto. + * gcc.target/riscv/movsine.c: Ditto. + * gcc.target/riscv/pr111501.c: Ditto. + * gcc.target/riscv/pr115921.c: Ditto. + * gcc.target/riscv/pr116033.c: Ditto. + * gcc.target/riscv/pr116035-1.c: Ditto. + * gcc.target/riscv/pr116035-2.c: Ditto. + * gcc.target/riscv/pr116131.c: Ditto. + * gcc.target/riscv/reg_subreg_costs.c: Ditto. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector.c: Ditto. + * gcc.target/riscv/rvv/xtheadvector/pr114194.c: Ditto. + * gcc.target/riscv/sign-extend-rshift-32.c: Ditto. + * gcc.target/riscv/sign-extend-rshift-64.c: Ditto. + * gcc.target/riscv/sign-extend-rshift.c: Ditto. + * gcc.target/riscv/synthesis-1.c: Ditto. + * gcc.target/riscv/synthesis-10.c: Ditto. + * gcc.target/riscv/synthesis-11.c: Ditto. + * gcc.target/riscv/synthesis-12.c: Ditto. + * gcc.target/riscv/synthesis-13.c: Ditto. + * gcc.target/riscv/synthesis-14.c: Ditto. + * gcc.target/riscv/synthesis-15.c: Ditto. + * gcc.target/riscv/synthesis-16.c: Ditto. + * gcc.target/riscv/synthesis-2.c: Ditto. + * gcc.target/riscv/synthesis-3.c: Ditto. + * gcc.target/riscv/synthesis-4.c: Ditto. + * gcc.target/riscv/synthesis-5.c: Ditto. + * gcc.target/riscv/synthesis-6.c: Ditto. + * gcc.target/riscv/synthesis-7.c: Ditto. + * gcc.target/riscv/synthesis-8.c: Ditto. + * gcc.target/riscv/synthesis-9.c: Ditto. + * gcc.target/riscv/target-attr-16.c: Ditto. + * gcc.target/riscv/target-attr-norelax.c: Ditto. + * gcc.target/riscv/xtheadba-addsl.c: Ditto. + * gcc.target/riscv/xtheadba.c: Ditto. + * gcc.target/riscv/xtheadbb-ext-1.c: Ditto. + * gcc.target/riscv/xtheadbb-ext-2.c: Ditto. + * gcc.target/riscv/xtheadbb-ext-3.c: Ditto. + * gcc.target/riscv/xtheadbb-ext.c: Ditto. + * gcc.target/riscv/xtheadbb-extu-1.c: Ditto. + * gcc.target/riscv/xtheadbb-extu-2.c: Ditto. + * gcc.target/riscv/xtheadbb-extu-4.c: Ditto. + * gcc.target/riscv/xtheadbb-extu.c: Ditto. + * gcc.target/riscv/xtheadbb-ff1.c: Ditto. + * gcc.target/riscv/xtheadbb-rev.c: Ditto. + * gcc.target/riscv/xtheadbb-srri.c: Ditto. + * gcc.target/riscv/xtheadbb-strcmp.c: Ditto. + * gcc.target/riscv/xtheadbb-strlen-unaligned.c: Ditto. + * gcc.target/riscv/xtheadbb-strlen.c: Ditto. + * gcc.target/riscv/xtheadbb.c: Ditto. + * gcc.target/riscv/xtheadbs-tst.c: Ditto. + * gcc.target/riscv/xtheadbs.c: Ditto. + * gcc.target/riscv/xtheadcmo.c: Ditto. + * gcc.target/riscv/xtheadcondmov-indirect.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mveqz-imm-eqz.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mveqz-imm-not.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mveqz-reg-eqz.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mveqz-reg-not.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mvnez-imm-cond.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mvnez-imm-nez.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mvnez-reg-cond.c: Ditto. + * gcc.target/riscv/xtheadcondmov-mvnez-reg-nez.c: Ditto. + * gcc.target/riscv/xtheadcondmov.c: Ditto. + * gcc.target/riscv/xtheadfmemidx-without-xtheadmemidx.c: Ditto. + * gcc.target/riscv/xtheadfmemidx.c: Ditto. + * gcc.target/riscv/xtheadfmv.c: Ditto. + * gcc.target/riscv/xtheadint.c: Ditto. + * gcc.target/riscv/xtheadmac-mula-muls.c: Ditto. + * gcc.target/riscv/xtheadmac.c: Ditto. + * gcc.target/riscv/xtheadmemidx-index-update.c: Ditto. + * gcc.target/riscv/xtheadmemidx-index-xtheadbb-update.c: Ditto. + * gcc.target/riscv/xtheadmemidx-index-xtheadbb.c: Ditto. + * gcc.target/riscv/xtheadmemidx-index.c: Ditto. + * gcc.target/riscv/xtheadmemidx-modify-xtheadbb.c: Ditto. + * gcc.target/riscv/xtheadmemidx-modify.c: Ditto. + * gcc.target/riscv/xtheadmemidx-uindex-update.c: Ditto. + * gcc.target/riscv/xtheadmemidx-uindex-xtheadbb-update.c: Ditto. + * gcc.target/riscv/xtheadmemidx-uindex-xtheadbb.c: Ditto. + * gcc.target/riscv/xtheadmemidx-uindex.c: Ditto. + * gcc.target/riscv/xtheadmemidx.c: Ditto. + * gcc.target/riscv/xtheadmempair-1.c: Ditto. + * gcc.target/riscv/xtheadmempair-2.c: Ditto. + * gcc.target/riscv/xtheadmempair-3.c: Ditto. + * gcc.target/riscv/xtheadmempair-4.c: Ditto. + * gcc.target/riscv/xtheadmempair-interrupt-fcsr.c: Ditto. + * gcc.target/riscv/xtheadmempair.c: Ditto. + * gcc.target/riscv/xtheadsync.c: Ditto. + * gcc.target/riscv/za-ext.c: Ditto. + * gcc.target/riscv/zawrs.c: Ditto. + * gcc.target/riscv/zbb-strcmp-disabled-2.c: Ditto. + * gcc.target/riscv/zbb-strcmp-disabled.c: Ditto. + * gcc.target/riscv/zbb-strcmp-limit.c: Ditto. + * gcc.target/riscv/zbb-strcmp-unaligned.c: Ditto. + * gcc.target/riscv/zbb-strcmp.c: Ditto. + * gcc.target/riscv/zbb-strlen-disabled-2.c: Ditto. + * gcc.target/riscv/zbb-strlen-disabled.c: Ditto. + * gcc.target/riscv/zbb-strlen-unaligned.c: Ditto. + * gcc.target/riscv/zbb-strlen.c: Ditto. + * gcc.target/riscv/zero-extend-rshift-32.c: Ditto. + * gcc.target/riscv/zero-extend-rshift-64.c: Ditto. + * gcc.target/riscv/zero-extend-rshift.c: Ditto. + * gcc.target/riscv/zi-ext.c: Ditto. + * gcc.target/riscv/zvbb.c: Ditto. + * gcc.target/riscv/zvbc.c: Ditto. + * gcc.target/riscv/zvkb.c: Ditto. + * gcc.target/riscv/zvkg.c: Ditto. + * gcc.target/riscv/zvkn-1.c: Ditto. + * gcc.target/riscv/zvkn.c: Ditto. + * gcc.target/riscv/zvknc-1.c: Ditto. + * gcc.target/riscv/zvknc-2.c: Ditto. + * gcc.target/riscv/zvknc.c: Ditto. + * gcc.target/riscv/zvkned.c: Ditto. + * gcc.target/riscv/zvkng-1.c: Ditto. + * gcc.target/riscv/zvkng-2.c: Ditto. + * gcc.target/riscv/zvkng.c: Ditto. + * gcc.target/riscv/zvknha.c: Ditto. + * gcc.target/riscv/zvknhb.c: Ditto. + * gcc.target/riscv/zvks-1.c: Ditto. + * gcc.target/riscv/zvks.c: Ditto. + * gcc.target/riscv/zvksc-1.c: Ditto. + * gcc.target/riscv/zvksc-2.c: Ditto. + * gcc.target/riscv/zvksc.c: Ditto. + * gcc.target/riscv/zvksed.c: Ditto. + * gcc.target/riscv/zvksg-1.c: Ditto. + * gcc.target/riscv/zvksg-2.c: Ditto. + * gcc.target/riscv/zvksg.c: Ditto. + * gcc.target/riscv/zvksh.c: Ditto. + * gcc.target/riscv/zvkt.c: Ditto. + +2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/riscv/pr109508.c: Skip for E ABI. + * gcc.target/riscv/pr114139.c: Ditto. + +2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> + + * gcc.target/riscv/rvv/autovec/binop/vandn-1.c: Skip if default + is E ABI. + * gcc.target/riscv/rvv/autovec/binop/vrolr-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vwsll-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/binop/vwsll-template.h: Ditto. + * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/clz-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/ctz-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/popcount-1.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/popcount-2.c: Ditto. + * gcc.target/riscv/rvv/autovec/unop/popcount-3.c: Ditto. + * gcc.target/riscv/rvv/base/cmpmem-1.c: Ditto. + * gcc.target/riscv/rvv/base/cmpmem-3.c: Ditto. + * gcc.target/riscv/rvv/base/cmpmem-4.c: Ditto. + * gcc.target/riscv/rvv/base/cpymem-1.c: Ditto. + * gcc.target/riscv/rvv/base/cpymem-2.c: Ditto. + * gcc.target/riscv/rvv/base/cpymem-3.c: Ditto. + * gcc.target/riscv/rvv/base/movmem-1.c: Ditto. + * gcc.target/riscv/rvv/base/pr115068.c: Ditto. + * gcc.target/riscv/rvv/base/setmem-1.c: Ditto. + * gcc.target/riscv/rvv/base/setmem-2.c: Ditto. + * gcc.target/riscv/rvv/base/setmem-3.c: Ditto. + * gcc.target/riscv/rvv/base/vwaddsub-1.c: Ditto. + +2025-01-07 Dimitar Dimitrov <dimitar@dinux.eu> + + * lib/target-supports.exp (check_effective_target_riscv_abi_e): + New procedure. + +2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * gcc.dg/guality/pr36728-3.c: Remove XFAIL. + * gcc.dg/guality/pr68860-1.c: Likewise. + * gcc.dg/guality/pr68860-2.c: Likewise. + * gcc.target/aarch64/ldp_aligned.c: Fix test. + * gcc.target/aarch64/ldp_always.c: Likewise. + * gcc.target/aarch64/ldp_stp_10.c: Add -fschedule-insns. + * gcc.target/aarch64/ldp_stp_12.c: Likewise. + * gcc.target/aarch64/ldp_stp_13.c: Remove test. + * gcc.target/aarch64/ldp_stp_21.c: Add -fschedule-insns. + * gcc.target/aarch64/ldp_stp_8.c: Likewise. + * gcc.target/aarch64/ldp_vec_v2sf.c: Likewise. + * gcc.target/aarch64/ldp_vec_v2si.c: Likewise. + * gcc.target/aarch64/test_frame_16.c: Fix test. + * gcc.target/aarch64/sve/vcond_12.c: Add -fschedule-insns. + * gcc.target/aarch64/sve/acle/general/ldff1_3.c: Likewise. + +2025-01-07 Wilco Dijkstra <wilco.dijkstra@arm.com> + + * gcc.target/aarch64/dbl_mov_immediate_1.c: Add xfail for -0.0. + * gcc.target/aarch64/fmul_scvtf_1.c: Fixup test cases, add xfail, + reduce duplication. + +2025-01-07 Paul-Antoine Arras <parras@baylibre.com> + + * c-c++-common/gomp/adjust-args-4.c: New test. + +2025-01-07 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/114932 + * gcc.dg/tree-ssa/pr64705.c: Update dump file scan. + * gcc.target/i386/pr115462.c: The testcase shares 3 IVs which calculates + the same thing but with a slightly different increment offset. The test + checks for 3 complex addressing loads, one for each IV. But with this + change they now all share one IV. That is the loop now only has one + complex addressing. This is ultimately driven by the backend costing + and the current costing says this is preferred so updating the testcase. + * gfortran.dg/addressing-modes_1.f90: New test. + +2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR tree-optimization/105769 + * g++.dg/torture/pr105769-1.C: New test. + +2025-01-07 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/117426 + PR middle-end/111422 + * gcc.dg/torture/pr117426-1.c: New test. + +2025-01-07 Jeff Law <jlaw@ventanamicro.com> + + PR testsuite/118055 + * gcc.dg/tree-ssa/pr83403-1.c: Add m68k*-*-* to targets needing + additional arguments for peeling. + * gcc.dg/tree-ssa/pr83403-2.c: Similarly. + +2025-01-07 Richard Biener <rguenther@suse.de> + + * gcc.dg/torture/convert-dfp-2.c: Skip with -flto. + * gcc.dg/torture/convert-dfp.c: Likewise. + +2025-01-07 Tsung Chun Lin <tclin914@gmail.com> + + * gcc.target/riscv/rvv/rvv.exp: Add dg-runtest to run the + testcase under gcc.target/riscv/rvv/. + +2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/alloc_comp_deep_copy_4.f03: New test. + +2025-01-07 Deng Jianbo <dengjianbo@loongson.cn> + + * gcc.target/loongarch/mov-zero-1.c: New test. + * gcc.target/loongarch/mov-zero-2.c: New test. + +2025-01-07 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/class_array_15.f03: Freeing more memory. + * gfortran.dg/recursive_alloc_comp_6.f90: New test. + +2025-01-07 Jennifer Schmitz <jschmitz@nvidia.com> + + * gcc.target/aarch64/sve/strided_load_2.c: Adjust expected outcome. + * gcc.target/aarch64/sve/strided_store_2.c: Likewise. + +2025-01-07 Sam James <sam@gentoo.org> + + PR ipa/98000 + * g++.dg/ipa/pr98000.C: New test. + +2025-01-07 Sam James <sam@gentoo.org> + + PR ipa/117546 + * gcc.dg/torture/pr117546.c: New test. + +2025-01-06 Alexandre Oliva <oliva@adacore.com> + + PR middle-end/118006 + * gcc.target/i386/strub-pr118006.c: New. + +2025-01-06 Akram Ahmad <Akram.Ahmad@arm.com> + + * gcc.target/aarch64/sve/truncated_concatenation_1.c: new test + for the above example and other modes covered by insn + definitions. + +2025-01-06 Jennifer Schmitz <jschmitz@nvidia.com> + + * gcc.target/aarch64/sve/acle/asm/mul_u8.c: Adjust expected outcome. + * gcc.target/aarch64/sve/acle/asm/mul_u16.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u64.c: New test and adjust + expected outcome. + +2025-01-06 Tamar Christina <tamar.christina@arm.com> + + PR target/96342 + PR target/118272 + * gcc.target/aarch64/vect-simd-clone-3.c: New test. + +2025-01-06 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/118224 + * gcc.dg/pr118224.c: New test. + * c-c++-common/ubsan/vla-1.c (bar): Use noipa attribute instead + of noinline, noclone. + +2025-01-06 Kito Cheng <kito.cheng@sifive.com> + + * gcc.target/riscv/rvv/fortran/pr111395.f90: Move this file to... + * gfortran.target/riscv/rvv/pr111395.f90: ...here. + * gcc.target/riscv/rvv/fortran/pr111566.f90: Move this file to... + * gfortran.target/riscv/rvv/pr111566.f90: ...here. + * gcc.target/riscv/rvv/rvv-fortran.exp: Move this file to... + * gfortran.target/riscv/rvv/rvv.exp: ...here. + +2025-01-05 Iain Buclaw <ibuclaw@symmetryinvestments.com> + + * gdc.dg/torture/pr96435.d: Add dg-warning. + +2025-01-05 Iain Buclaw <ibuclaw@gdcproject.org> + + * gdc.dg/torture/pr110406.d: Add -fno-moduleinfo to dg-options. + +2025-01-04 Hans-Peter Nilsson <hp@axis.com> + + * gcc.dg/tree-ssa/vector-4.c: Replace MMIX adjustments with + TARGET_CALLEE_COPIES-agnostic adjustments. + * gcc.dg/tree-ssa/forwprop-36.c: Ditto. Correct pattern to match a + literal ".". + +2025-01-03 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/117938 + * gcc.dg/torture/pr117938.c: New test. + +2025-01-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/118275 + * g++.dg/cpp/embed-18.C: New test. + * g++.dg/ext/flexary41.C: New test. + +2025-01-03 Sam James <sam@gentoo.org> + Andrew Pinski <pinskia@gmail.com> + + * gcc.dg/torture/dse-trivial-auto-var-init.c: New test. + +2025-01-03 Harald Anlauf <anlauf@gmx.de> + + PR fortran/106692 + * gfortran.dg/cray_pointers_13.f90: New test. + +2025-01-03 Jose E. Marchesi <jose.marchesi@oracle.com> + + * gcc.target/bpf/diag-funargs-2.c: Use -ffreestanding. + * gcc.target/bpf/helper-skb-ancestor-cgroup-id.c: Likewise. + * gcc.target/bpf/helper-bind.c: Likewise. + * gcc.target/bpf/diag-funargs-3.c: Likewise. + +2025-01-02 Tobias Burnus <tburnus@baylibre.com> + + * gfortran.dg/gomp/adjust-args-10.f90: New test. + +2025-01-02 Paul-Antoine Arras <parras@baylibre.com> + + * g++.dg/gomp/dispatch-3.C: Update scan dumps. + * gfortran.dg/gomp/declare-variant-2.f90: Update dg-error. + * gfortran.dg/gomp/adjust-args-1.f90: New test. + * gfortran.dg/gomp/adjust-args-2.f90: New test. + * gfortran.dg/gomp/adjust-args-2a.f90: New test. + * gfortran.dg/gomp/adjust-args-3.f90: New test. + * gfortran.dg/gomp/adjust-args-4.f90: New test. + * gfortran.dg/gomp/adjust-args-5.f90: New test. + * gfortran.dg/gomp/adjust-args-6.f90: New test. + * gfortran.dg/gomp/adjust-args-7.f90: New test. + * gfortran.dg/gomp/adjust-args-8.f90: New test. + * gfortran.dg/gomp/adjust-args-9.f90: New test. + * gfortran.dg/gomp/dispatch-1.f90: New test. + * gfortran.dg/gomp/dispatch-2.f90: New test. + * gfortran.dg/gomp/dispatch-3.f90: New test. + * gfortran.dg/gomp/dispatch-4.f90: New test. + * gfortran.dg/gomp/dispatch-5.f90: New test. + * gfortran.dg/gomp/dispatch-6.f90: New test. + * gfortran.dg/gomp/dispatch-7.f90: New test. + * gfortran.dg/gomp/dispatch-8.f90: New test. + * gfortran.dg/gomp/dispatch-9.f90: New test. + * gfortran.dg/gomp/dispatch-9a.f90: New test. + * gfortran.dg/gomp/dispatch-10.f90: New test. + +2025-01-02 David Malcolm <dmalcolm@redhat.com> + + PR c/117629 + * gcc.dg/auto-type-2.c: Update expected output with _Bool. + * gcc.dg/c23-bool-errors-1.c: New test. + * gcc.dg/c23-bool-errors-2.c: New test. + * gcc.dg/c23-bool-errors-3.c: New test. + +2025-01-02 Richard Sandiford <richard.sandiford@arm.com> + + PR target/118184 + * gcc.dg/torture/pr118184.c: Use _Float128 instead of long double. + +2025-01-02 Richard Biener <rguenther@suse.de> + + PR tree-optimization/118171 + * gcc.dg/torture/pr118171.c: New testcase. + +2025-01-02 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.dg/torture/pr118184.c: New test. + +2025-01-02 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/pr90838-2.c: New test. + +2025-01-02 xuli <xuli1@eswincomputing.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add unsigned imm vec sat_sub form2~4. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add data for vec sat_sub. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-2-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-3-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-4-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-2-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-3-u8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_u_sub_imm-run-4-u8.c: New test. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/conditional-move-opt-1.c: New test. + * gcc.target/loongarch/conditional-move-opt-2.c: New test. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/abd-lasx.c: New test. + * gcc.target/loongarch/abd-lsx.c: New test. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/vec_pack_unpack_128.c: New test. + * gcc.target/loongarch/vec_pack_unpack_256.c: New test. + +2025-01-02 Guo Jie <guojie@loongson.cn> + + * gcc.target/loongarch/bstrpick_alsl_paired.c: New test. + * gcc.target/loongarch/bytepick_combine.c: New test. + +2025-01-01 Richard Biener <rguenther@suse.de> + + PR middle-end/118174 + * gcc.dg/torture/pr118174.c: New testcase. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index ff56a0f1202..923c914865e 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,606 +1,5 @@ -2025-12-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure: Regenerate. - -2025-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/122936 - * io/list_read.c (finish_list_read): Remove the use of hit_eof - and free_line. Simplify the logic. Add comments to clarify. - -2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/90374 - PR libfortran/90374 - * io/format.c (parse_format_list): Set exponent width to unspecified. - -2025-11-09 Mark Wielaard <mark@klomp.org> - - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - -2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * Makefile.in: Keep continuation indentation within 80 columns. - * aclocal.m4: Regenerate. - * libgfortran.h: Drop unused forward declaration. - -2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR fortran/121628 - * Makefile.am: Add runtime/deep_copy.c to source files. - * Makefile.in: Regenerate. - * gfortran.map: Export _gfortran_cfi_deep_copy_array symbol. - * libgfortran.h: Add prototype for internal_deep_copy_array. - * runtime/deep_copy.c: New file implementing runtime deep copy - helper for recursive allocatable array components. - -2025-11-03 Sam James <sam@gentoo.org> - - * configure: Regenerate. - -2025-10-05 Sam James <sam@gentoo.org> - - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * configure: Regenerate. - -2025-09-02 Paul Thomas <pault@gcc.gnu.org> - - PR fortran/87669 - * intrinsics/extends_type_of.c (is_extension_of): Use the vptr - rather than the hash value to identify the types. - -2025-08-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/121234 - * io/list_read.c (read_character): Add checks to bypass eating - semicolons when reading strings with decimal mode 'point' - (list_formatted_read_scalar): Likewise. - -2025-07-30 Yuao Ma <c8ef@outlook.com> - - * gfortran.map: Add split symbol. - * intrinsics/string_intrinsics_inc.c (string_split): - Runtime support for SPLIT. - -2025-06-18 Harald Anlauf <anlauf@gmx.de> - - PR fortran/82480 - * intrinsics/stat.c (stat_i4_sub_0): Fix argument names. Rename - SARRAY to VALUES also in error message. When array VALUES is - KIND=4, get only stat components that do not overflow INT32_MAX, - otherwise set the corresponding VALUES elements to -1. - (stat_i4_sub): Fix argument names. - (lstat_i4_sub): Likewise. - (stat_i8_sub_0): Likewise. - (stat_i8_sub): Likewise. - (lstat_i8_sub): Likewise. - (stat_i4): Likewise. - (stat_i8): Likewise. - (lstat_i4): Likewise. - (lstat_i8): Likewise. - (fstat_i4_sub): Likewise. - (fstat_i8_sub): Likewise. - (fstat_i4): Likewise. - (fstat_i8): Likewise. - -2025-06-11 François-Xavier Coudert <fxcoudert@gcc.gnu.org> - - PR libfortran/116400 - * Makefile.am: Simplify logic. - * Makefile.in: Regenerate. - * regenerate.sh: Add some checks. - -2025-06-10 François-Xavier Coudert <fxcoudert@gcc.gnu.org> - - PR libfortran/116400 - * Makefile.am: Remove source file regeneration rules. - * Makefile.in: Regenerate. - * regenerate.sh: New file. - -2025-06-07 François-Xavier Coudert <fxcoudert@gcc.gnu.org> - - PR libfortran/116400 - * generated/iall_i1.c: Regenerate. - * generated/iall_i16.c: Regenerate. - * generated/iall_i2.c: Regenerate. - * generated/iall_i4.c: Regenerate. - * generated/iall_i8.c: Regenerate. - * generated/iany_i1.c: Regenerate. - * generated/iany_i16.c: Regenerate. - * generated/iany_i2.c: Regenerate. - * generated/iany_i4.c: Regenerate. - * generated/iany_i8.c: Regenerate. - * generated/iparity_i1.c: Regenerate. - * generated/iparity_i16.c: Regenerate. - * generated/iparity_i2.c: Regenerate. - * generated/iparity_i4.c: Regenerate. - * generated/iparity_i8.c: Regenerate. - * generated/matmulavx128_c10.c: Regenerate. - * generated/matmulavx128_c16.c: Regenerate. - * generated/matmulavx128_c17.c: Regenerate. - * generated/matmulavx128_c4.c: Regenerate. - * generated/matmulavx128_c8.c: Regenerate. - * generated/matmulavx128_i1.c: Regenerate. - * generated/matmulavx128_i16.c: Regenerate. - * generated/matmulavx128_i2.c: Regenerate. - * generated/matmulavx128_i4.c: Regenerate. - * generated/matmulavx128_i8.c: Regenerate. - * generated/matmulavx128_r10.c: Regenerate. - * generated/matmulavx128_r16.c: Regenerate. - * generated/matmulavx128_r17.c: Regenerate. - * generated/matmulavx128_r4.c: Regenerate. - * generated/matmulavx128_r8.c: Regenerate. - * generated/maxloc1_16_i1.c: Regenerate. - * generated/maxloc1_16_i16.c: Regenerate. - * generated/maxloc1_16_i2.c: Regenerate. - * generated/maxloc1_16_i4.c: Regenerate. - * generated/maxloc1_16_i8.c: Regenerate. - * generated/maxloc1_16_r10.c: Regenerate. - * generated/maxloc1_16_r16.c: Regenerate. - * generated/maxloc1_16_r17.c: Regenerate. - * generated/maxloc1_16_r4.c: Regenerate. - * generated/maxloc1_16_r8.c: Regenerate. - * generated/maxloc1_4_i1.c: Regenerate. - * generated/maxloc1_4_i16.c: Regenerate. - * generated/maxloc1_4_i2.c: Regenerate. - * generated/maxloc1_4_i4.c: Regenerate. - * generated/maxloc1_4_i8.c: Regenerate. - * generated/maxloc1_4_r10.c: Regenerate. - * generated/maxloc1_4_r16.c: Regenerate. - * generated/maxloc1_4_r17.c: Regenerate. - * generated/maxloc1_4_r4.c: Regenerate. - * generated/maxloc1_4_r8.c: Regenerate. - * generated/maxloc1_8_i1.c: Regenerate. - * generated/maxloc1_8_i16.c: Regenerate. - * generated/maxloc1_8_i2.c: Regenerate. - * generated/maxloc1_8_i4.c: Regenerate. - * generated/maxloc1_8_i8.c: Regenerate. - * generated/maxloc1_8_r10.c: Regenerate. - * generated/maxloc1_8_r16.c: Regenerate. - * generated/maxloc1_8_r17.c: Regenerate. - * generated/maxloc1_8_r4.c: Regenerate. - * generated/maxloc1_8_r8.c: Regenerate. - * generated/maxval_i1.c: Regenerate. - * generated/maxval_i16.c: Regenerate. - * generated/maxval_i2.c: Regenerate. - * generated/maxval_i4.c: Regenerate. - * generated/maxval_i8.c: Regenerate. - * generated/maxval_r10.c: Regenerate. - * generated/maxval_r16.c: Regenerate. - * generated/maxval_r17.c: Regenerate. - * generated/maxval_r4.c: Regenerate. - * generated/maxval_r8.c: Regenerate. - * generated/minloc1_16_i1.c: Regenerate. - * generated/minloc1_16_i16.c: Regenerate. - * generated/minloc1_16_i2.c: Regenerate. - * generated/minloc1_16_i4.c: Regenerate. - * generated/minloc1_16_i8.c: Regenerate. - * generated/minloc1_16_r10.c: Regenerate. - * generated/minloc1_16_r16.c: Regenerate. - * generated/minloc1_16_r17.c: Regenerate. - * generated/minloc1_16_r4.c: Regenerate. - * generated/minloc1_16_r8.c: Regenerate. - * generated/minloc1_4_i1.c: Regenerate. - * generated/minloc1_4_i16.c: Regenerate. - * generated/minloc1_4_i2.c: Regenerate. - * generated/minloc1_4_i4.c: Regenerate. - * generated/minloc1_4_i8.c: Regenerate. - * generated/minloc1_4_r10.c: Regenerate. - * generated/minloc1_4_r16.c: Regenerate. - * generated/minloc1_4_r17.c: Regenerate. - * generated/minloc1_4_r4.c: Regenerate. - * generated/minloc1_4_r8.c: Regenerate. - * generated/minloc1_8_i1.c: Regenerate. - * generated/minloc1_8_i16.c: Regenerate. - * generated/minloc1_8_i2.c: Regenerate. - * generated/minloc1_8_i4.c: Regenerate. - * generated/minloc1_8_i8.c: Regenerate. - * generated/minloc1_8_r10.c: Regenerate. - * generated/minloc1_8_r16.c: Regenerate. - * generated/minloc1_8_r17.c: Regenerate. - * generated/minloc1_8_r4.c: Regenerate. - * generated/minloc1_8_r8.c: Regenerate. - * generated/minval_i1.c: Regenerate. - * generated/minval_i16.c: Regenerate. - * generated/minval_i2.c: Regenerate. - * generated/minval_i4.c: Regenerate. - * generated/minval_i8.c: Regenerate. - * generated/minval_r10.c: Regenerate. - * generated/minval_r16.c: Regenerate. - * generated/minval_r17.c: Regenerate. - * generated/minval_r4.c: Regenerate. - * generated/minval_r8.c: Regenerate. - * generated/norm2_r10.c: Regenerate. - * generated/norm2_r16.c: Regenerate. - * generated/norm2_r17.c: Regenerate. - * generated/norm2_r4.c: Regenerate. - * generated/norm2_r8.c: Regenerate. - * generated/parity_l1.c: Regenerate. - * generated/parity_l16.c: Regenerate. - * generated/parity_l2.c: Regenerate. - * generated/parity_l4.c: Regenerate. - * generated/parity_l8.c: Regenerate. - -2025-06-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/119856 - * io/format.c (parse_format_list): Set the fmt->error - message for missing comma. - (parse_format): Do not cache the parsed format string - if a previous error ocurred. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120196 - * m4/ifindloc2.m4 (header1, header2): For back use i > 0 rather than - i >= 0 as for condition. - * generated/findloc2_s1.c: Regenerate. - * generated/findloc2_s4.c: Regenerate. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120191 - * m4/ifunction-s.m4 (SCALAR_ARRAY_FUNCTION): Don't multiply - GFC_DESCRIPTOR_EXTENT(array,) by string_len. - * generated/maxloc1_4_s1.c: Regenerate. - * generated/maxloc1_4_s4.c: Regenerate. - * generated/maxloc1_8_s1.c: Regenerate. - * generated/maxloc1_8_s4.c: Regenerate. - * generated/maxloc1_16_s1.c: Regenerate. - * generated/maxloc1_16_s4.c: Regenerate. - * generated/minloc1_4_s1.c: Regenerate. - * generated/minloc1_4_s4.c: Regenerate. - * generated/minloc1_8_s1.c: Regenerate. - * generated/minloc1_8_s4.c: Regenerate. - * generated/minloc1_16_s1.c: Regenerate. - * generated/minloc1_16_s4.c: Regenerate. - -2025-05-13 Jakub Jelinek <jakub@redhat.com> - - PR fortran/120191 - * m4/maxloc2s.m4: For smaxloc2 call maxloc2 if mask is NULL or *mask. - Swap back and len arguments. - * m4/minloc2s.m4: Likewise. - * generated/maxloc2_4_s1.c: Regenerate. - * generated/maxloc2_4_s4.c: Regenerate. - * generated/maxloc2_8_s1.c: Regenerate. - * generated/maxloc2_8_s4.c: Regenerate. - * generated/maxloc2_16_s1.c: Regenerate. - * generated/maxloc2_16_s4.c: Regenerate. - * generated/minloc2_4_s1.c: Regenerate. - * generated/minloc2_4_s4.c: Regenerate. - * generated/minloc2_8_s1.c: Regenerate. - * generated/minloc2_8_s4.c: Regenerate. - * generated/minloc2_16_s1.c: Regenerate. - * generated/minloc2_16_s4.c: Regenerate. - -2025-05-10 Yuao Ma <c8ef@outlook.com> - - * io/read.c (read_f): Comment typo, explict -> explicit. - -2025-05-08 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120158 - * m4/iparm.m4 (atype_min): For atype_name starting with - GFC_UINTEGER define to 0. - * generated/maxloc0_16_m1.c: Regenerate. - * generated/maxloc0_16_m2.c: Regenerate. - * generated/maxloc0_16_m4.c: Regenerate. - * generated/maxloc0_16_m8.c: Regenerate. - * generated/maxloc0_16_m16.c: Regenerate. - * generated/maxloc0_4_m1.c: Regenerate. - * generated/maxloc0_4_m2.c: Regenerate. - * generated/maxloc0_4_m4.c: Regenerate. - * generated/maxloc0_4_m8.c: Regenerate. - * generated/maxloc0_4_m16.c: Regenerate. - * generated/maxloc0_8_m1.c: Regenerate. - * generated/maxloc0_8_m2.c: Regenerate. - * generated/maxloc0_8_m4.c: Regenerate. - * generated/maxloc0_8_m8.c: Regenerate. - * generated/maxloc0_8_m16.c: Regenerate. - * generated/maxloc1_16_m1.c: Regenerate. - * generated/maxloc1_16_m2.c: Regenerate. - * generated/maxloc1_16_m4.c: Regenerate. - * generated/maxloc1_16_m8.c: Regenerate. - * generated/maxloc1_16_m16.c: Regenerate. - * generated/maxloc1_4_m1.c: Regenerate. - * generated/maxloc1_4_m2.c: Regenerate. - * generated/maxloc1_4_m4.c: Regenerate. - * generated/maxloc1_4_m8.c: Regenerate. - * generated/maxloc1_4_m16.c: Regenerate. - * generated/maxloc1_8_m1.c: Regenerate. - * generated/maxloc1_8_m2.c: Regenerate. - * generated/maxloc1_8_m4.c: Regenerate. - * generated/maxloc1_8_m8.c: Regenerate. - * generated/maxloc1_8_m16.c: Regenerate. - * generated/maxval_m1.c: Regenerate. - * generated/maxval_m2.c: Regenerate. - * generated/maxval_m4.c: Regenerate. - * generated/maxval_m8.c: Regenerate. - * generated/maxval_m16.c: Regenerate. - -2025-05-07 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120153 - * Makefile.am (i_maxloc1_c): Add generated/maxloc1_16_m16.c. - * intrinsics/random.c (arandom_m16): Use #ifdef HAVE_GFC_UINTEGER_16 - guard rather than #ifdef GFC_HAVE_GFC_UINTEGER_16. - * gfortran.map (GFORTRAN_15): Remove _gfortran_arandom_m16, - _gfortran_maxloc1_16_m16, _gfortran_mmaxloc1_16_m16 and - _gfortran_smaxloc1_16_m16. - (GFORTRAN_15.2): New symbol version, add those 4 symbols to it. - * generated/maxloc1_16_m16.c: New file. - * Makefile.in: Regenerate. - -2025-05-07 Jakub Jelinek <jakub@redhat.com> - - PR libfortran/120152 - * Makefile.am (i_maxloc1_c): Readd generated/maxloc1_4_i8.c, - generated/maxloc1_8_i8.c, generated/maxloc1_16_i8.c, - generated/maxloc1_4_i16.c, generated/maxloc1_8_i16.c. Move - generated/maxloc1_16_i16.c entry earlier in the list. - * Makefile.in: Regenerated. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h: Add mapping mode to coarray's register. - * caf/single.c (_gfortran_caf_register): Create a token sharing - another token's memory. - (check_team): Check team parameters to coindexed expressions are - valid. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h (_gfortran_caf_num_images): Correct prototype. - * caf/single.c (_gfortran_caf_num_images): Default - implementation. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - * caf/libcaf.h (_gfortran_caf_this_image): Correct prototype. - * caf/single.c (struct caf_single_team): Add new_index of image. - (_gfortran_caf_this_image): Return the image index in the given team. - (_gfortran_caf_form_team): Set new_index in team structure. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/88154 - PR fortran/88960 - PR fortran/97210 - PR fortran/103001 - * caf/libcaf.h: Add constants for get_team's level argument and - update stat values for failed images. - (_gfortran_caf_team_number): Add prototype. - (_gfortran_caf_get_team): Same. - * caf/single.c (_gfortran_caf_team_number): Get the given team's - team number. - (_gfortran_caf_get_team): Get the current team or the team given - by level when the argument is present. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87326 - PR fortran/87556 - PR fortran/88254 - PR fortran/103796 - * caf/libcaf.h: Remove commented block. - (_gfortran_caf_form_team): Allow for all relevant arguments. - (_gfortran_caf_change_team): Same. - (_gfortran_caf_end_team): Same. - (_gfortran_caf_sync_team): Same. - * caf/single.c (struct caf_single_team): Team handling - structures. - (_gfortran_caf_init): Initialize initial team. - (free_team_list): Free all teams and the memory they hold. - (_gfortran_caf_finalize): Free initial and sibling teams. - (_gfortran_caf_register): Add memory registered to current team. - (_gfortran_caf_deregister): Unregister memory from current team. - (_gfortran_caf_is_present_on_remote): Check token's memptr for - llocation. May have been deallocated by an end team. - (_gfortran_caf_form_team): Push a new team stub to the list. - (_gfortran_caf_change_team): Push a formed team on top of the - ctive teams stack. - (_gfortran_caf_end_team): End the active team, free all memory - allocated during its livespan. - (_gfortran_caf_sync_team): Take stat and errmsg into account. - -2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/87939 - * caf/single.c (_gfortran_caf_lock): Correct stat value, if - lock is already locked by current image. - (_gfortran_caf_unlock): Correct stat value, if lock is not - locked. - -2025-04-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/119502 - * io/close.c (st_close): Issue an error and avoid - calling close_share when there is no stream assigned. - * io/open.c (st_open): If there is no stream assigned - to the unit, unlock the unit and issue an error. - -2025-04-09 Paul Thomas <pault@gcc.gnu.org> - and Harald Anlauf <anlauf@gcc.gnu.org> - - PR libfortran/119460 - * intrinsics/reduce.c (reduce): Correct error message about - mismatch between dim and the rank of array. Output the values - of both. Correct the evaluation of the result stride and - extent. - (reduce_scalar): The front end treats the result as an - allocatable so eliminate memcpy and free. Return the base-addr - of the local descriptor. - (reduce_c): Correct the type of the string lengths. - (reduce_scalar_c): Correct the type of the string lengths.Test - to see if 'res' is allocated. If not then return the base_addr - of the local descriptor. - -2025-04-07 Lulu Cheng <chenglulu@loongson.cn> - - PR target/119408 - * acinclude.m4: When checking for __float128 support, determine - whether the current architecture is LoongArch. If so, return false. - * configure: Regenerate. - -2025-03-22 Hans-Peter Nilsson <hp@axis.com> - - * intrinsics/reduce.c (reduce_scalar_c): Correct type of parameter DIM. - -2025-03-21 Paul Thomas <pault@gcc.gnu.org> - - PR libfortran/85836 - * Makefile.am : Add reduce.c - * Makefile.in : Regenerated - * gfortran.map : Add _gfortran_reduce, _gfortran_reduce_scalar, - _gfortran_reduce_c and _gfortran_reduce_scalar_c to the list. - * intrinsics/reduce.c (reduce, reduce_scalar, reduce_c, - reduce_scalar_c): New functions and prototypes - -2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/107635 - * config/t-nvptx: New. - * configure.host [nvptx] (tmake_file): Add it. - -2025-02-21 Andre Vehreschild <vehre@gcc.gnu.org> - - PR fortran/107635 - * caf/single.c: Replace alloca with __builtin_alloca. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h (_gfortran_caf_get): Removed because deprecated. - (_gfortran_caf_send): Same. - (_gfortran_caf_sendget): Same. - (_gfortran_caf_send_by_ref): Same. - * caf/single.c (assign_char4_from_char1): Same. - (assign_char1_from_char4): Same. - (convert_type): Same. - (defined): Same. - (_gfortran_caf_get): Same. - (_gfortran_caf_send): Same. - (_gfortran_caf_sendget): Same. - (copy_data): Same. - (get_for_ref): Same. - (_gfortran_caf_get_by_ref): Same. - (send_by_ref): Same. - (_gfortran_caf_send_by_ref): Same. - (_gfortran_caf_sendget_by_ref): Same. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h: Add prototype for transfer_between_remotes. - * caf/single.c: Implement transfer_between_remotes. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h: Add/Correct prototypes for caf_get_from_remote, - caf_send_to_remote. - * caf/single.c (struct accessor_hash_t): Rename accessor_t to - getter_t. - (_gfortran_caf_register_accessor): Use new name of getter_t. - (_gfortran_caf_send_to_remote): New function for sending data to - coarray on a remote image. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h (_gfortran_caf_is_present_on_remote): Add new - function. - (_gfortran_caf_is_present): Remove deprecated one. - * caf/single.c (struct accessor_hash_t): Add function ptr access - for remote side call. - (_gfortran_caf_is_present_on_remote): Added. - (_gfortran_caf_is_present): Removed. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h (_gfortran_caf_register_accessor): Reflect - changed parameter order. - * caf/single.c (struct accessor_hash_t): Same. - (_gfortran_caf_register_accessor): Call accessor using a token - for accessing arrays with a descriptor on the source side. - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/libcaf.h (_gfortran_caf_get_by_ref): Remove from ABI. - This function is replaced by caf_get_from_remote (). - (_gfortran_caf_get_remote_function_index): Use better name. - * caf/single.c (_gfortran_caf_finalize): Free internal data. - (_gfortran_caf_get_by_ref): Remove from public interface, but - keep it, because it is still used by sendget (). - -2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> - - * caf/single.c (_gfortran_caf_finalize): Free memory preventing - leaks. - (_gfortran_caf_get_by_ct): Fix constness. - * caf/libcaf.h (_gfortran_caf_register_accessor): Fix constness. - -2025-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/114618 - * io/transfer.c (formatted_transfer_scalar_write): Change name - of vriable 'pos' to 'tab_pos' to improve clarity. Add new - variable next_pos when calculating the maximum position. - Update the calculation of pending spaces. - -2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> - - * Makefile.am: Add files for unsigned exponentiation. - * Makefile.in: Regenerate. - * gfortran.map: Add functions for unsigned exponentiation. - * generated/pow_m16_m1.c: New file. - * generated/pow_m16_m16.c: New file. - * generated/pow_m16_m2.c: New file. - * generated/pow_m16_m4.c: New file. - * generated/pow_m16_m8.c: New file. - * generated/pow_m1_m1.c: New file. - * generated/pow_m1_m16.c: New file. - * generated/pow_m1_m2.c: New file. - * generated/pow_m1_m4.c: New file. - * generated/pow_m1_m8.c: New file. - * generated/pow_m2_m1.c: New file. - * generated/pow_m2_m16.c: New file. - * generated/pow_m2_m2.c: New file. - * generated/pow_m2_m4.c: New file. - * generated/pow_m2_m8.c: New file. - * generated/pow_m4_m1.c: New file. - * generated/pow_m4_m16.c: New file. - * generated/pow_m4_m2.c: New file. - * generated/pow_m4_m4.c: New file. - * generated/pow_m4_m8.c: New file. - * generated/pow_m8_m1.c: New file. - * generated/pow_m8_m16.c: New file. - * generated/pow_m8_m2.c: New file. - * generated/pow_m8_m4.c: New file. - * generated/pow_m8_m8.c: New file. - * m4/powu.m4: New file. - -2025-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> - - PR libfortran/118571 - * io/write.c (write_utf8_char4): Adjust the src_len to the - format width w_len when greater than zero. - -2025-01-17 Harald Anlauf <anlauf@gmx.de> - - PR libfortran/118536 - * io/transfer.c (formatted_transfer_scalar_write): Handle UNSIGNED - in G formatting. - -2025-01-16 Harald Anlauf <anlauf@gmx.de> - - PR libfortran/118406 - * runtime/string.c (gfc_itoa): Handle unsigned integers larger than - (10^19 * 2^64). - -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/libgfortran/ChangeLog-2025 b/libgfortran/ChangeLog-2025 new file mode 100644 index 00000000000..ff56a0f1202 --- /dev/null +++ b/libgfortran/ChangeLog-2025 @@ -0,0 +1,607 @@ +2025-12-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure: Regenerate. + +2025-12-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/122936 + * io/list_read.c (finish_list_read): Remove the use of hit_eof + and free_line. Simplify the logic. Add comments to clarify. + +2025-11-11 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/90374 + PR libfortran/90374 + * io/format.c (parse_format_list): Set exponent width to unspecified. + +2025-11-09 Mark Wielaard <mark@klomp.org> + + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + +2025-11-08 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * Makefile.in: Keep continuation indentation within 80 columns. + * aclocal.m4: Regenerate. + * libgfortran.h: Drop unused forward declaration. + +2025-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/121628 + * Makefile.am: Add runtime/deep_copy.c to source files. + * Makefile.in: Regenerate. + * gfortran.map: Export _gfortran_cfi_deep_copy_array symbol. + * libgfortran.h: Add prototype for internal_deep_copy_array. + * runtime/deep_copy.c: New file implementing runtime deep copy + helper for recursive allocatable array components. + +2025-11-03 Sam James <sam@gentoo.org> + + * configure: Regenerate. + +2025-10-05 Sam James <sam@gentoo.org> + + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * configure: Regenerate. + +2025-09-02 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/87669 + * intrinsics/extends_type_of.c (is_extension_of): Use the vptr + rather than the hash value to identify the types. + +2025-08-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/121234 + * io/list_read.c (read_character): Add checks to bypass eating + semicolons when reading strings with decimal mode 'point' + (list_formatted_read_scalar): Likewise. + +2025-07-30 Yuao Ma <c8ef@outlook.com> + + * gfortran.map: Add split symbol. + * intrinsics/string_intrinsics_inc.c (string_split): + Runtime support for SPLIT. + +2025-06-18 Harald Anlauf <anlauf@gmx.de> + + PR fortran/82480 + * intrinsics/stat.c (stat_i4_sub_0): Fix argument names. Rename + SARRAY to VALUES also in error message. When array VALUES is + KIND=4, get only stat components that do not overflow INT32_MAX, + otherwise set the corresponding VALUES elements to -1. + (stat_i4_sub): Fix argument names. + (lstat_i4_sub): Likewise. + (stat_i8_sub_0): Likewise. + (stat_i8_sub): Likewise. + (lstat_i8_sub): Likewise. + (stat_i4): Likewise. + (stat_i8): Likewise. + (lstat_i4): Likewise. + (lstat_i8): Likewise. + (fstat_i4_sub): Likewise. + (fstat_i8_sub): Likewise. + (fstat_i4): Likewise. + (fstat_i8): Likewise. + +2025-06-11 François-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR libfortran/116400 + * Makefile.am: Simplify logic. + * Makefile.in: Regenerate. + * regenerate.sh: Add some checks. + +2025-06-10 François-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR libfortran/116400 + * Makefile.am: Remove source file regeneration rules. + * Makefile.in: Regenerate. + * regenerate.sh: New file. + +2025-06-07 François-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR libfortran/116400 + * generated/iall_i1.c: Regenerate. + * generated/iall_i16.c: Regenerate. + * generated/iall_i2.c: Regenerate. + * generated/iall_i4.c: Regenerate. + * generated/iall_i8.c: Regenerate. + * generated/iany_i1.c: Regenerate. + * generated/iany_i16.c: Regenerate. + * generated/iany_i2.c: Regenerate. + * generated/iany_i4.c: Regenerate. + * generated/iany_i8.c: Regenerate. + * generated/iparity_i1.c: Regenerate. + * generated/iparity_i16.c: Regenerate. + * generated/iparity_i2.c: Regenerate. + * generated/iparity_i4.c: Regenerate. + * generated/iparity_i8.c: Regenerate. + * generated/matmulavx128_c10.c: Regenerate. + * generated/matmulavx128_c16.c: Regenerate. + * generated/matmulavx128_c17.c: Regenerate. + * generated/matmulavx128_c4.c: Regenerate. + * generated/matmulavx128_c8.c: Regenerate. + * generated/matmulavx128_i1.c: Regenerate. + * generated/matmulavx128_i16.c: Regenerate. + * generated/matmulavx128_i2.c: Regenerate. + * generated/matmulavx128_i4.c: Regenerate. + * generated/matmulavx128_i8.c: Regenerate. + * generated/matmulavx128_r10.c: Regenerate. + * generated/matmulavx128_r16.c: Regenerate. + * generated/matmulavx128_r17.c: Regenerate. + * generated/matmulavx128_r4.c: Regenerate. + * generated/matmulavx128_r8.c: Regenerate. + * generated/maxloc1_16_i1.c: Regenerate. + * generated/maxloc1_16_i16.c: Regenerate. + * generated/maxloc1_16_i2.c: Regenerate. + * generated/maxloc1_16_i4.c: Regenerate. + * generated/maxloc1_16_i8.c: Regenerate. + * generated/maxloc1_16_r10.c: Regenerate. + * generated/maxloc1_16_r16.c: Regenerate. + * generated/maxloc1_16_r17.c: Regenerate. + * generated/maxloc1_16_r4.c: Regenerate. + * generated/maxloc1_16_r8.c: Regenerate. + * generated/maxloc1_4_i1.c: Regenerate. + * generated/maxloc1_4_i16.c: Regenerate. + * generated/maxloc1_4_i2.c: Regenerate. + * generated/maxloc1_4_i4.c: Regenerate. + * generated/maxloc1_4_i8.c: Regenerate. + * generated/maxloc1_4_r10.c: Regenerate. + * generated/maxloc1_4_r16.c: Regenerate. + * generated/maxloc1_4_r17.c: Regenerate. + * generated/maxloc1_4_r4.c: Regenerate. + * generated/maxloc1_4_r8.c: Regenerate. + * generated/maxloc1_8_i1.c: Regenerate. + * generated/maxloc1_8_i16.c: Regenerate. + * generated/maxloc1_8_i2.c: Regenerate. + * generated/maxloc1_8_i4.c: Regenerate. + * generated/maxloc1_8_i8.c: Regenerate. + * generated/maxloc1_8_r10.c: Regenerate. + * generated/maxloc1_8_r16.c: Regenerate. + * generated/maxloc1_8_r17.c: Regenerate. + * generated/maxloc1_8_r4.c: Regenerate. + * generated/maxloc1_8_r8.c: Regenerate. + * generated/maxval_i1.c: Regenerate. + * generated/maxval_i16.c: Regenerate. + * generated/maxval_i2.c: Regenerate. + * generated/maxval_i4.c: Regenerate. + * generated/maxval_i8.c: Regenerate. + * generated/maxval_r10.c: Regenerate. + * generated/maxval_r16.c: Regenerate. + * generated/maxval_r17.c: Regenerate. + * generated/maxval_r4.c: Regenerate. + * generated/maxval_r8.c: Regenerate. + * generated/minloc1_16_i1.c: Regenerate. + * generated/minloc1_16_i16.c: Regenerate. + * generated/minloc1_16_i2.c: Regenerate. + * generated/minloc1_16_i4.c: Regenerate. + * generated/minloc1_16_i8.c: Regenerate. + * generated/minloc1_16_r10.c: Regenerate. + * generated/minloc1_16_r16.c: Regenerate. + * generated/minloc1_16_r17.c: Regenerate. + * generated/minloc1_16_r4.c: Regenerate. + * generated/minloc1_16_r8.c: Regenerate. + * generated/minloc1_4_i1.c: Regenerate. + * generated/minloc1_4_i16.c: Regenerate. + * generated/minloc1_4_i2.c: Regenerate. + * generated/minloc1_4_i4.c: Regenerate. + * generated/minloc1_4_i8.c: Regenerate. + * generated/minloc1_4_r10.c: Regenerate. + * generated/minloc1_4_r16.c: Regenerate. + * generated/minloc1_4_r17.c: Regenerate. + * generated/minloc1_4_r4.c: Regenerate. + * generated/minloc1_4_r8.c: Regenerate. + * generated/minloc1_8_i1.c: Regenerate. + * generated/minloc1_8_i16.c: Regenerate. + * generated/minloc1_8_i2.c: Regenerate. + * generated/minloc1_8_i4.c: Regenerate. + * generated/minloc1_8_i8.c: Regenerate. + * generated/minloc1_8_r10.c: Regenerate. + * generated/minloc1_8_r16.c: Regenerate. + * generated/minloc1_8_r17.c: Regenerate. + * generated/minloc1_8_r4.c: Regenerate. + * generated/minloc1_8_r8.c: Regenerate. + * generated/minval_i1.c: Regenerate. + * generated/minval_i16.c: Regenerate. + * generated/minval_i2.c: Regenerate. + * generated/minval_i4.c: Regenerate. + * generated/minval_i8.c: Regenerate. + * generated/minval_r10.c: Regenerate. + * generated/minval_r16.c: Regenerate. + * generated/minval_r17.c: Regenerate. + * generated/minval_r4.c: Regenerate. + * generated/minval_r8.c: Regenerate. + * generated/norm2_r10.c: Regenerate. + * generated/norm2_r16.c: Regenerate. + * generated/norm2_r17.c: Regenerate. + * generated/norm2_r4.c: Regenerate. + * generated/norm2_r8.c: Regenerate. + * generated/parity_l1.c: Regenerate. + * generated/parity_l16.c: Regenerate. + * generated/parity_l2.c: Regenerate. + * generated/parity_l4.c: Regenerate. + * generated/parity_l8.c: Regenerate. + +2025-06-01 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/119856 + * io/format.c (parse_format_list): Set the fmt->error + message for missing comma. + (parse_format): Do not cache the parsed format string + if a previous error ocurred. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120196 + * m4/ifindloc2.m4 (header1, header2): For back use i > 0 rather than + i >= 0 as for condition. + * generated/findloc2_s1.c: Regenerate. + * generated/findloc2_s4.c: Regenerate. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120191 + * m4/ifunction-s.m4 (SCALAR_ARRAY_FUNCTION): Don't multiply + GFC_DESCRIPTOR_EXTENT(array,) by string_len. + * generated/maxloc1_4_s1.c: Regenerate. + * generated/maxloc1_4_s4.c: Regenerate. + * generated/maxloc1_8_s1.c: Regenerate. + * generated/maxloc1_8_s4.c: Regenerate. + * generated/maxloc1_16_s1.c: Regenerate. + * generated/maxloc1_16_s4.c: Regenerate. + * generated/minloc1_4_s1.c: Regenerate. + * generated/minloc1_4_s4.c: Regenerate. + * generated/minloc1_8_s1.c: Regenerate. + * generated/minloc1_8_s4.c: Regenerate. + * generated/minloc1_16_s1.c: Regenerate. + * generated/minloc1_16_s4.c: Regenerate. + +2025-05-13 Jakub Jelinek <jakub@redhat.com> + + PR fortran/120191 + * m4/maxloc2s.m4: For smaxloc2 call maxloc2 if mask is NULL or *mask. + Swap back and len arguments. + * m4/minloc2s.m4: Likewise. + * generated/maxloc2_4_s1.c: Regenerate. + * generated/maxloc2_4_s4.c: Regenerate. + * generated/maxloc2_8_s1.c: Regenerate. + * generated/maxloc2_8_s4.c: Regenerate. + * generated/maxloc2_16_s1.c: Regenerate. + * generated/maxloc2_16_s4.c: Regenerate. + * generated/minloc2_4_s1.c: Regenerate. + * generated/minloc2_4_s4.c: Regenerate. + * generated/minloc2_8_s1.c: Regenerate. + * generated/minloc2_8_s4.c: Regenerate. + * generated/minloc2_16_s1.c: Regenerate. + * generated/minloc2_16_s4.c: Regenerate. + +2025-05-10 Yuao Ma <c8ef@outlook.com> + + * io/read.c (read_f): Comment typo, explict -> explicit. + +2025-05-08 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120158 + * m4/iparm.m4 (atype_min): For atype_name starting with + GFC_UINTEGER define to 0. + * generated/maxloc0_16_m1.c: Regenerate. + * generated/maxloc0_16_m2.c: Regenerate. + * generated/maxloc0_16_m4.c: Regenerate. + * generated/maxloc0_16_m8.c: Regenerate. + * generated/maxloc0_16_m16.c: Regenerate. + * generated/maxloc0_4_m1.c: Regenerate. + * generated/maxloc0_4_m2.c: Regenerate. + * generated/maxloc0_4_m4.c: Regenerate. + * generated/maxloc0_4_m8.c: Regenerate. + * generated/maxloc0_4_m16.c: Regenerate. + * generated/maxloc0_8_m1.c: Regenerate. + * generated/maxloc0_8_m2.c: Regenerate. + * generated/maxloc0_8_m4.c: Regenerate. + * generated/maxloc0_8_m8.c: Regenerate. + * generated/maxloc0_8_m16.c: Regenerate. + * generated/maxloc1_16_m1.c: Regenerate. + * generated/maxloc1_16_m2.c: Regenerate. + * generated/maxloc1_16_m4.c: Regenerate. + * generated/maxloc1_16_m8.c: Regenerate. + * generated/maxloc1_16_m16.c: Regenerate. + * generated/maxloc1_4_m1.c: Regenerate. + * generated/maxloc1_4_m2.c: Regenerate. + * generated/maxloc1_4_m4.c: Regenerate. + * generated/maxloc1_4_m8.c: Regenerate. + * generated/maxloc1_4_m16.c: Regenerate. + * generated/maxloc1_8_m1.c: Regenerate. + * generated/maxloc1_8_m2.c: Regenerate. + * generated/maxloc1_8_m4.c: Regenerate. + * generated/maxloc1_8_m8.c: Regenerate. + * generated/maxloc1_8_m16.c: Regenerate. + * generated/maxval_m1.c: Regenerate. + * generated/maxval_m2.c: Regenerate. + * generated/maxval_m4.c: Regenerate. + * generated/maxval_m8.c: Regenerate. + * generated/maxval_m16.c: Regenerate. + +2025-05-07 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120153 + * Makefile.am (i_maxloc1_c): Add generated/maxloc1_16_m16.c. + * intrinsics/random.c (arandom_m16): Use #ifdef HAVE_GFC_UINTEGER_16 + guard rather than #ifdef GFC_HAVE_GFC_UINTEGER_16. + * gfortran.map (GFORTRAN_15): Remove _gfortran_arandom_m16, + _gfortran_maxloc1_16_m16, _gfortran_mmaxloc1_16_m16 and + _gfortran_smaxloc1_16_m16. + (GFORTRAN_15.2): New symbol version, add those 4 symbols to it. + * generated/maxloc1_16_m16.c: New file. + * Makefile.in: Regenerate. + +2025-05-07 Jakub Jelinek <jakub@redhat.com> + + PR libfortran/120152 + * Makefile.am (i_maxloc1_c): Readd generated/maxloc1_4_i8.c, + generated/maxloc1_8_i8.c, generated/maxloc1_16_i8.c, + generated/maxloc1_4_i16.c, generated/maxloc1_8_i16.c. Move + generated/maxloc1_16_i16.c entry earlier in the list. + * Makefile.in: Regenerated. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h: Add mapping mode to coarray's register. + * caf/single.c (_gfortran_caf_register): Create a token sharing + another token's memory. + (check_team): Check team parameters to coindexed expressions are + valid. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h (_gfortran_caf_num_images): Correct prototype. + * caf/single.c (_gfortran_caf_num_images): Default + implementation. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + * caf/libcaf.h (_gfortran_caf_this_image): Correct prototype. + * caf/single.c (struct caf_single_team): Add new_index of image. + (_gfortran_caf_this_image): Return the image index in the given team. + (_gfortran_caf_form_team): Set new_index in team structure. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/88154 + PR fortran/88960 + PR fortran/97210 + PR fortran/103001 + * caf/libcaf.h: Add constants for get_team's level argument and + update stat values for failed images. + (_gfortran_caf_team_number): Add prototype. + (_gfortran_caf_get_team): Same. + * caf/single.c (_gfortran_caf_team_number): Get the given team's + team number. + (_gfortran_caf_get_team): Get the current team or the team given + by level when the argument is present. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + PR fortran/87556 + PR fortran/88254 + PR fortran/103796 + * caf/libcaf.h: Remove commented block. + (_gfortran_caf_form_team): Allow for all relevant arguments. + (_gfortran_caf_change_team): Same. + (_gfortran_caf_end_team): Same. + (_gfortran_caf_sync_team): Same. + * caf/single.c (struct caf_single_team): Team handling + structures. + (_gfortran_caf_init): Initialize initial team. + (free_team_list): Free all teams and the memory they hold. + (_gfortran_caf_finalize): Free initial and sibling teams. + (_gfortran_caf_register): Add memory registered to current team. + (_gfortran_caf_deregister): Unregister memory from current team. + (_gfortran_caf_is_present_on_remote): Check token's memptr for + llocation. May have been deallocated by an end team. + (_gfortran_caf_form_team): Push a new team stub to the list. + (_gfortran_caf_change_team): Push a formed team on top of the + ctive teams stack. + (_gfortran_caf_end_team): End the active team, free all memory + allocated during its livespan. + (_gfortran_caf_sync_team): Take stat and errmsg into account. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87939 + * caf/single.c (_gfortran_caf_lock): Correct stat value, if + lock is already locked by current image. + (_gfortran_caf_unlock): Correct stat value, if lock is not + locked. + +2025-04-13 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/119502 + * io/close.c (st_close): Issue an error and avoid + calling close_share when there is no stream assigned. + * io/open.c (st_open): If there is no stream assigned + to the unit, unlock the unit and issue an error. + +2025-04-09 Paul Thomas <pault@gcc.gnu.org> + and Harald Anlauf <anlauf@gcc.gnu.org> + + PR libfortran/119460 + * intrinsics/reduce.c (reduce): Correct error message about + mismatch between dim and the rank of array. Output the values + of both. Correct the evaluation of the result stride and + extent. + (reduce_scalar): The front end treats the result as an + allocatable so eliminate memcpy and free. Return the base-addr + of the local descriptor. + (reduce_c): Correct the type of the string lengths. + (reduce_scalar_c): Correct the type of the string lengths.Test + to see if 'res' is allocated. If not then return the base_addr + of the local descriptor. + +2025-04-07 Lulu Cheng <chenglulu@loongson.cn> + + PR target/119408 + * acinclude.m4: When checking for __float128 support, determine + whether the current architecture is LoongArch. If so, return false. + * configure: Regenerate. + +2025-03-22 Hans-Peter Nilsson <hp@axis.com> + + * intrinsics/reduce.c (reduce_scalar_c): Correct type of parameter DIM. + +2025-03-21 Paul Thomas <pault@gcc.gnu.org> + + PR libfortran/85836 + * Makefile.am : Add reduce.c + * Makefile.in : Regenerated + * gfortran.map : Add _gfortran_reduce, _gfortran_reduce_scalar, + _gfortran_reduce_c and _gfortran_reduce_scalar_c to the list. + * intrinsics/reduce.c (reduce, reduce_scalar, reduce_c, + reduce_scalar_c): New functions and prototypes + +2025-02-27 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/107635 + * config/t-nvptx: New. + * configure.host [nvptx] (tmake_file): Add it. + +2025-02-21 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/107635 + * caf/single.c: Replace alloca with __builtin_alloca. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h (_gfortran_caf_get): Removed because deprecated. + (_gfortran_caf_send): Same. + (_gfortran_caf_sendget): Same. + (_gfortran_caf_send_by_ref): Same. + * caf/single.c (assign_char4_from_char1): Same. + (assign_char1_from_char4): Same. + (convert_type): Same. + (defined): Same. + (_gfortran_caf_get): Same. + (_gfortran_caf_send): Same. + (_gfortran_caf_sendget): Same. + (copy_data): Same. + (get_for_ref): Same. + (_gfortran_caf_get_by_ref): Same. + (send_by_ref): Same. + (_gfortran_caf_send_by_ref): Same. + (_gfortran_caf_sendget_by_ref): Same. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h: Add prototype for transfer_between_remotes. + * caf/single.c: Implement transfer_between_remotes. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h: Add/Correct prototypes for caf_get_from_remote, + caf_send_to_remote. + * caf/single.c (struct accessor_hash_t): Rename accessor_t to + getter_t. + (_gfortran_caf_register_accessor): Use new name of getter_t. + (_gfortran_caf_send_to_remote): New function for sending data to + coarray on a remote image. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h (_gfortran_caf_is_present_on_remote): Add new + function. + (_gfortran_caf_is_present): Remove deprecated one. + * caf/single.c (struct accessor_hash_t): Add function ptr access + for remote side call. + (_gfortran_caf_is_present_on_remote): Added. + (_gfortran_caf_is_present): Removed. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h (_gfortran_caf_register_accessor): Reflect + changed parameter order. + * caf/single.c (struct accessor_hash_t): Same. + (_gfortran_caf_register_accessor): Call accessor using a token + for accessing arrays with a descriptor on the source side. + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/libcaf.h (_gfortran_caf_get_by_ref): Remove from ABI. + This function is replaced by caf_get_from_remote (). + (_gfortran_caf_get_remote_function_index): Use better name. + * caf/single.c (_gfortran_caf_finalize): Free internal data. + (_gfortran_caf_get_by_ref): Remove from public interface, but + keep it, because it is still used by sendget (). + +2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org> + + * caf/single.c (_gfortran_caf_finalize): Free memory preventing + leaks. + (_gfortran_caf_get_by_ct): Fix constness. + * caf/libcaf.h (_gfortran_caf_register_accessor): Fix constness. + +2025-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/114618 + * io/transfer.c (formatted_transfer_scalar_write): Change name + of vriable 'pos' to 'tab_pos' to improve clarity. Add new + variable next_pos when calculating the maximum position. + Update the calculation of pending spaces. + +2025-02-04 Thomas Koenig <tkoenig@gcc.gnu.org> + + * Makefile.am: Add files for unsigned exponentiation. + * Makefile.in: Regenerate. + * gfortran.map: Add functions for unsigned exponentiation. + * generated/pow_m16_m1.c: New file. + * generated/pow_m16_m16.c: New file. + * generated/pow_m16_m2.c: New file. + * generated/pow_m16_m4.c: New file. + * generated/pow_m16_m8.c: New file. + * generated/pow_m1_m1.c: New file. + * generated/pow_m1_m16.c: New file. + * generated/pow_m1_m2.c: New file. + * generated/pow_m1_m4.c: New file. + * generated/pow_m1_m8.c: New file. + * generated/pow_m2_m1.c: New file. + * generated/pow_m2_m16.c: New file. + * generated/pow_m2_m2.c: New file. + * generated/pow_m2_m4.c: New file. + * generated/pow_m2_m8.c: New file. + * generated/pow_m4_m1.c: New file. + * generated/pow_m4_m16.c: New file. + * generated/pow_m4_m2.c: New file. + * generated/pow_m4_m4.c: New file. + * generated/pow_m4_m8.c: New file. + * generated/pow_m8_m1.c: New file. + * generated/pow_m8_m16.c: New file. + * generated/pow_m8_m2.c: New file. + * generated/pow_m8_m4.c: New file. + * generated/pow_m8_m8.c: New file. + * m4/powu.m4: New file. + +2025-01-24 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/118571 + * io/write.c (write_utf8_char4): Adjust the src_len to the + format width w_len when greater than zero. + +2025-01-17 Harald Anlauf <anlauf@gmx.de> + + PR libfortran/118536 + * io/transfer.c (formatted_transfer_scalar_write): Handle UNSIGNED + in G formatting. + +2025-01-16 Harald Anlauf <anlauf@gmx.de> + + PR libfortran/118406 + * runtime/string.c (gfc_itoa): Handle unsigned integers larger than + (10^19 * 2^64). + + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index db67a19a59d..923c914865e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,9153 +1,5 @@ -2025-12-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure: Regenerate. - -2025-12-22 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/using_macros.html: Regenerate. - * doc/xml/manual/using.xml: Add entries for - _GLIBCXX_USE_OLD_GENERATE_CANONICAL and - _GLIBCXX_USE_VARIANT_CXX17_OLD_ABI. - -2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/112591 - * include/std/variant (_Uninitialized::_M_get, __get_n) - (_Uninitialized<_Type, false>): Add _GLIBCXX_USE_VARIANT_CXX17_OLD_ABI - check to preprocessor guard. - * testsuite/20_util/variant/112591.cc: Updated tests. - * testsuite/20_util/variant/112591_compat.cc: New test. - * testsuite/20_util/variant/constinit.cc: New test. - * testsuite/20_util/variant/constinit_compat.cc: New test. - -2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon_eng.cc: - Test __float128 when available. - -2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/random.h (__rand_uint128::operator>) - (__rand_uint128::operator>=): Define. - * include/bits/random.tcc (__generate_canonical_pow2): - Adjust for use of __rand_uint128 in C++11. - (__gen_can_pow, __gen_can_rng_calls_needed): Replace with - __gen_canon_log. - (__gen_canon_log_res, __gen_canon_log): Define. - (__generate_canonical_any): Reworked how _UInt is determined. - * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon_eng.cc: - New test. - -2025-12-19 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/123147 - * include/bits/chrono_io.h (_Parser::operator()) <%S>: Use a - buffer of narrow characters to be parsed by std::from_chars. - * testsuite/std/time/parse/parse.cc: Check wchar_t parsing. - -2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/debug/helper_functions.h (__gnu_debug::__can_advance): - Declare as _GLIBCXX20_CONSTEXPR. - * include/debug/safe_iterator.h (__gnu_debug::__can_advance): - Define as _GLIBCXX20_CONSTEXPR, and return true for constexpr - evaluation. - (__gnu_debug::__base): Define as _GLIBCXX20_CONSTEXPR. - -2025-12-19 Jonathan Wakely <jwakely@redhat.com> - - * src/c++11/mutex.cc [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] - (__get_once_call): Use std::add_lvalue_reference. - -2025-12-18 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_write): Add - maybe_unused attribute to avoid -Wunused-parameter warning. - * src/c++20/tzdb.cc (detect_windows_zone): Decay array to - pointer to avoid -Warray-compare warning. - -2025-12-18 LIU Hao <lh_mouse@126.com> - Jonathan Wakely <jwakely@redhat.com> - - * config/os/mingw32-w64/os_defines.h (_GLIBCXX_NO_EXTERN_THREAD_LOCAL): - New macro. - * include/std/mutex [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] - (__get_once_callable, __get_once_call): Declare new functions. - * src/c++11/mutex.cc [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] - (__get_once_callable, __get_once_call): Define. - -2025-12-18 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/123180 - * include/bits/ranges_algo.h (__stable_sort_fn::operator()): Fix - sense of null check. Replace typedef with alias-declaration. - * testsuite/25_algorithms/stable_sort/123180.cc: New test. - -2025-12-18 Jonathan Wakely <jwakely@redhat.com> - Jakub Jelinek <jakub@redhat.com> - - * include/bits/random.tcc (__generate_canonical_pow2): Adjust - comments. Remove _UInt template parameter and define it in the - body using _Select_uint_least_t<__d>. Remove popcount call for - getting the width of the _UInt type. Cast floating-point - literal to _RealT. - (__generate_canonical_any): Remove _UInt template parameter and - define it in the body using _Select_uint_least_t<__d * 2>. Use - direct-initialization for _UInt variables. Cast floating-point - literal to _RealT. - (generate_canonical): Remove unused typedef. Remove constexpr-if - branches and remove unsigned type from template argument lists. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.def (constexpr_exceptions): Add - cxx11abi=yes. - * include/bits/version.h: Regenerate. - * testsuite/18_support/exception/version.cc: Require effectiove - target cxx11_abi. - * testsuite/18_support/exception_ptr/exception_ptr_cast.cc: Only - check for constexpr support in cxx11 ABI. - * testsuite/19_diagnostics/headers/stdexcept/version.cc: Require - effective target cxx11_abi. - * testsuite/19_diagnostics/logic_error/constexpr.cc: Likewise. - * testsuite/19_diagnostics/runtime_error/constexpr.cc: Likewise. - * testsuite/20_util/expected/version.cc: Only check for - __cpp_lib_constexpr_exceptions macro for cxx11 ABI. - * testsuite/20_util/optional/version.cc: Likewise. - * testsuite/20_util/variant/version.cc: Likewise. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - Jakub Jelinek <jakub@redhat.com> - - * include/bits/random.h [!__SIZEOF_INT128__] (__rand_uint128): - Refactor and rename _Select_uint_least_t<128>::type to a new - class. Make all members constexpr. Add new member functions for - additional arithmetic and bitwise operations, and comparisons. - (__detail::_Select_uint_least_t<>::type): Define as an alias of - __rand_uint128. - * include/bits/random.tcc (philox_engine::_M_mulhi): Use - _Select_uint_least_t<w*2>::type instead of __uint128_t. - (philox_engine::_M_transition): Likewise. - * include/bits/version.def (philox_engine): Remove extra_cond. - * include/bits/version.h: Regenerate. - * testsuite/26_numerics/random/philox4x32.cc: Remove - dg-require-cpp-feature-test directive. - * testsuite/26_numerics/random/philox4x64.cc: Likewise. - * testsuite/26_numerics/random/philox_engine/cons/copy.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/cons/default.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/cons/seed.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/operators/equal.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: - Likewise. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc: - Add -fexcess-precision=standard to options. - * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: - Likewise. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc - [_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Restore test01. Do not discard an - extra value in test02. - * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: - Skip if _GLIBCXX_USE_OLD_GENERATE_CANONICAL is defined in options. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/random.h [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL] - (generate_canonical): Use inline namespace _V2. - * include/bits/random.tcc [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL] - (generate_canonical): Likewise. - * testsuite/26_numerics/random/pr60037-neg.cc: Remove lineno so - that one dg-error matches both diagnostics. - -2025-12-17 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/random.tcc [_GLIBCXX_USE_OLD_GENERATE_CANONICAL] - (generate_canonical): Restore braces around statement. - -2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/random.tcc (generate_canonical) - [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Use static_assert - instead of type-constraint on template parameter. - * testsuite/26_numerics/random/pr60037-neg.cc: Updated line - of error. - -2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/random.tcc (generate_canonical): Update - error message to match pre-existing one in random.h. - * testsuite/26_numerics/random/pr60037-neg.cc: Updated - line for error message. - -2025-12-17 Jakub Jelinek <jakub@redhat.com> - - * include/bits/random.tcc (std::generate_canonical): Use - __extension__ before __generate_canonical_{pow2,any} calls with - unsigned __int128 template arguments. - -2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/atomic_base.h - (__atomic_ref_base<const _Tp>::__atomic_ref_base): Accept - pointer instead of reference. Remove precondition check and - mark as noexcept. - (__atomic_ref_base<_Tp>::__atomic_ref_base): Accept pointer - insted of reference, and mark as noexcept. - * include/std/atomic (atomic_ref::atomic_ref(_Tp&)): Add - precondition check and take address of argument. - (atomic_ref::atomic_ref(_Tp&&)): Define as deleted. - (atomic_ref::atomic_ref(atomic_ref<_Up>)): Define. - * include/bits/shared_ptr_atomic.h (_Sp_atomic::_Atomic_count): - Pass address to __atomic_ref constructor. - * include/std/barrier (__tree_barrier_base::_M_arrive) - (__tree_barrier::arrive): Pass address to __atomic_ref constructor. - * testsuite/29_atomics/atomic_ref/ctor.cc: New test. - -2025-12-16 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (_Integer_kind): New enum type. - (__is_integral_helper::_S_kind): New static data member in - primary template and each explicit specialization. - (__is_signed_integer, __is_unsigned_integer): Use _S_kind - instead of O(n) disjunction with is_same. - -2025-12-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122907 - * include/bits/cpp_type_traits.h (__memcpyable_integer<bool>): - Define as false. - * testsuite/25_algorithms/copy/122907.cc: New test. - -2025-12-16 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/lib/libstdc++.exp (dg-v3-runtest) Set default_std to - 20. - -2025-12-16 Jonathan Wakely <jwakely@redhat.com> - - * include/std/chrono (chrono::__detail::__get_leap_second_info): - Update expiry date for leap seconds list. - * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds): - Likewise. - * src/c++20/tzdata.zi: Import new file from 2025c release. - -2025-12-16 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119739 - * include/bits/random.tcc: Add generate_canonical impl for C++26. - * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc: - Adapt test for both pre- and post- C++26. - * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: - Test for float and double from 32-bit RNG, including 1.0 do-over. - -2025-12-16 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/113299 - * include/bits/deque.tcc (__copy_move_a1): Constrain with - __is_any_random_access_iter instead of __is_random_access_iter. - (__copy_move_backward_a1): Likewise. - (__equal_aux1): Likewise. - * include/bits/stl_algo.h (__search_n): Use - __iter_concept_or_category instead of __iterator_category - or iterator_traits::iterator_category. - (find_end): Likewise. - (__is_permutation): Likewise. - (for_each_n): Likewise. - (unique_copy): Likewise, for constant iterators. - (sample): Likewise, for constant iterators. - * include/bits/stl_algobase.h (__copy_move_a1): Adjust - deque-based forward declaration accordingly. - (__copy_move_backward_a1): Likewise. - (__equal_aux1): Likewise. - (__lexicographical_compare_impl): Use - __iter_concept_or_category instead of __iterator_category or - iterator_traits::iterator_category. - (__equal4): Likewise. - * include/bits/stl_iterator_base_funcs.h - (__iter_concept_or_category): New. - (__is_any_random_access_iter): New. - (_GLIBCXX_ITER_MOVE): New. - * include/bits/stl_uninitialized.h (uninitialized_copy_n): - Use __iterator_concept_or_category instead of - __iterator_category for the constant iterator __first. - (__uninitialized_copy_n_pair): Likewise. - * include/bits/version.def (algorithm_iterator_requirements): - Define. - * include/bits/version.h: Regenerate. - * include/std/algorithm: Provide the FTM - __cpp_lib_algorithm_iterator_requirements. - * include/std/memory: Likewise. - * include/std/numeric: Likewise. Include - <bits/stl_iterator_base_funcs.h>. - (reduce): Use __is_any_random_access_iter instead of - __is_random_access_iter. - (transform_reduce): Likewise. - (inclusive_scan): Use _GLIBCXX_ITER_MOVE instead of std::move. - * testsuite/25_algorithms/find_end/c++20_iter.cc: New test. - * testsuite/25_algorithms/sample/c++20_iter.cc: New test. - * testsuite/25_algorithms/search_n/c++20_iter.cc: New test. - * testsuite/25_algorithms/unique_copy/c++20_iter.cc: New test. - * testsuite/26_numerics/inclusive_scan/c++20_iter.cc: New test. - -2025-12-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (submdspan): Fix missing '::template'. - -2025-12-11 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/121114 - * include/bits/version.def: Implement C++26 P3378R2 - constexpr - exception types. - (constexpr_exceptions): Change value from 1 to 202502, remove - no_stdname and TODO comments. - * include/bits/version.h: Regenerate. - * src/c++11/cow-stdexcept.cc (__cow_string(const char*)): New - ctor. - (__cow_string::c_str()): New method. - * config/abi/pre/gnu.ver (GLIBCXX_3.4.35): Export 8 __cow_string - symbols. - * include/bits/new_except.h: New file. - * include/bits/new_throw.h: New file. - * include/bits/stdexcept_throw.h: New file. - * include/bits/stdexcept_throwdef.h: New file. - * include/bits/stdexcept_throwfwd.h: New file. - * include/std/stdexcept: Include bits/stdexcept_except.h and move - everything after <string> include except for std::range_error into - include/bits/stdexcept_except.h. - (std::range_error): If __cpp_lib_constexpr_exceptions >= 202502L - make all cdtors and methods constexpr. - * include/bits/stdexcept_except.h: New file. - * include/std/optional (__glibcxx_want_constexpr_exceptions): Define - before including bits/version.h. - (bad_optional_access::what): Make constexpr for - __cpp_lib_constexpr_exceptions >= 202502L. - (__throw_bad_optional_access): Likewise. - * include/std/expected (__glibcxx_want_constexpr_exceptions): Define - before including bits/version.h. - (bad_expected_access): Make cdtors and all methods constexpr for - __cpp_lib_constexpr_exceptions >= 202502L. - * include/std/format (__glibcxx_want_constexpr_exceptions): Define - before including bits/version.h. - (_GLIBCXX_CONSTEXPR_FORMAT_ERROR): Define and undef later. - (format_error): Use _GLIBCXX_CONSTEXPR_FORMAT_ERROR on ctors. - * include/std/variant (__glibcxx_want_constexpr_exceptions): Define - before including bits/version.h. - (_GLIBCXX_CONSTEXPR_BAD_VARIANT_ACCESS): Define and undef later. - (bad_variant_access): Use it on ctors and what() method. - (__throw_bad_variant_access): Use it here too. - * testsuite/18_support/exception/version.cc: Adjust expected - __cpp_lib_constexpr_exceptions value. - * testsuite/19_diagnostics/runtime_error/constexpr.cc: New test. - * testsuite/19_diagnostics/headers/stdexcept/version.cc: New test. - * testsuite/19_diagnostics/logic_error/constexpr.cc: New test. - * testsuite/20_util/expected/observers.cc (test_value_throw): Change - return type to bool from void, return true at the end, add test - to dereference what() first character. Make it constexpr for - __cpp_lib_constexpr_exceptions >= 202502L and add static_assert. - * testsuite/20_util/expected/version.cc: Add tests for - __cpp_lib_constexpr_exceptions value. - * testsuite/20_util/variant/constexpr.cc: For - __cpp_lib_constexpr_exceptions >= 202502L include <string>. - (test_get): New function if __cpp_lib_constexpr_exceptions >= 202502L, - assert calling it is true. - * testsuite/20_util/variant/version.cc: Add tests for - __cpp_lib_constexpr_exceptions value. - * testsuite/20_util/optional/constexpr/observers/3.cc: Include - testsuite_hooks.h. - (eat, test01): New functions. Assert test01() is true. - * testsuite/20_util/optional/version.cc: Add tests for - __cpp_lib_constexpr_exceptions value. - * include/std/future: Add #include <bits/functexcept.h>. - * include/std/shared_mutex: Include <bits/new_throw.h>. - * include/std/flat_map: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/std/syncstream: Remove <bits/functexcept.h> include. - * include/std/flat_set: Likewise. - * include/std/bitset: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/std/string_view: Don't include <bits/functexcept.h>, include - <bits/stdexcept_throw.h> early if __glibcxx_exc_in_string is not - defined and include <bits/stdexcept_throw.h> at the end of - the header again if __glibcxx_exc_in_string is 2 and C++26 constexpr - exceptions are enabled. - (__glibcxx_exc_in_string): Define if __glibcxx_exc_in_string wasn't - defined before including <bits/stdexcept_throw.h>. - * include/std/array: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/std/inplace_vector: Likewise. - * include/std/string: Include <bits/stdexcept_except.h> and - <bits/stdexcept_throw.h> after bits/basic_string.tcc include if - C++26 constexpr exceptions are enabled and include - <bits/stdexcept_throw.h> instead of <bits/functexcept.h> early. - (__glibcxx_exc_in_string): Define early to 1, undefine at the end. - * include/std/deque: Include <bits/stdexcept_throw.h>. - * include/bits/new_allocator.h: Include <bits/new_throw.h> instead - of <bits/functexcept.h>. - * include/bits/stl_algobase.h: Remove <bits/functexcept.h> include. - * include/bits/stl_vector.h: Include <bits/stdexcept_throw.h> instead - of <bits/functexcept.h>. - * include/bits/memory_resource.h: Include <bits/new_throw.h> instead - of <bits/functexcept.h>. - * include/bits/functexcept.h: Guard everything after includes with - #if _GLIBCXX_HOSTED. - (__throw_bad_alloc, __throw_bad_array_new_length, __throw_logic_error, - __throw_domain_error, __throw_invalid_argument, __throw_length_error, - __throw_out_of_range, __throw_out_of_range_fmt, __throw_runtime_error, - __throw_overflow_error, __throw_underflow_error): Move declarations to - other headers - <bits/new_throw.h> and <bits/stdexcept_throwfwd.h>. - * include/bits/stl_map.h: Include <bits/stdexcept_throw.h> instead - of <bits/functexcept.h>. - * include/bits/hashtable_policy.h: Include <bits/stdexcept_throw.h> - instead of <bits/functexcept.h>. - * include/bits/formatfwd.h (std::__throw_format_error): Remove - declaration. - * include/bits/specfun.h: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/bits/basic_ios.h: Include <bits/functexcept.h>. - * include/bits/locale_classes.h: Likewise. - * include/tr1/cmath: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/tr1/memory: Remove <bits/functexcept.h> include. - * include/tr1/array: Include <bits/stdexcept_throw.h>. - * include/ext/vstring_util.h: Include <bits/stdexcept_throw.h> instead - of <bits/functexcept.h>. - * include/ext/bitmap_allocator.h: Include <bits/new_throw.h> instead - of <bits/functexcept.h>. - * include/ext/mt_allocator.h: Likewise. - * include/ext/malloc_allocator.h: Likewise. - * include/ext/debug_allocator.h: Include <bits/stdexcept_throw.h> - instead of <bits/functexcept.h>. - * include/ext/concurrence.h: Include <bits/exception_defines.h> - instead of <bits/functexcept.h>. - * include/ext/throw_allocator.h: Include <bits/new_throw.h> and - <bits/stdexcept_throw.h> instead of <bits/functexcept.h>. - * include/ext/string_conversions.h: Include <bits/stdexcept_throw.h> - instead of <bits/functexcept.h>. - * include/ext/pool_allocator.h: Include <bits/new_throw.h> instead - of <bits/functexcept.h>. - * include/ext/ropeimpl.h: Include <bits/stdexcept_throw.h> instead of - <bits/functexcept.h>. - * include/tr2/dynamic_bitset: Likewise. - * include/experimental/optional: Include <bits/exception_defines.h> - instead of <bits/functexcept.h>. - * include/Makefile.am (bits_freestanding): Add - ${bits_srcdir}/{new,stdexcept}_{except,throw}.h - and ${bits_srcdir}/stdexcept_throw{fwd,def}.h. - * include/Makefile.in: Regenerate. - * src/c++17/floating_from_chars.cc: Remove <bits/functexcept.h> - include. - * src/c++11/regex.cc: Likewise. - * src/c++11/functexcept.cc: Likewise. - * src/c++11/snprintf_lite.cc: Include <bits/stdexcept_throw.h> instead - of <bits/functexcept.h>. - * src/c++11/thread.cc: Include <bits/functexcept.h>. - * testsuite/util/testsuite_hooks.h: Include <bits/stdexcept_throw.h> - instead of <bits/functexcept.h>. - * testsuite/util/io/verified_cmd_line_input.cc: Include - <bits/exception_defines.h> instead of <bits/functexcept.h>. - * testsuite/20_util/allocator/105975.cc: Expect different diagnostics - for C++26. - * testsuite/23_containers/inplace_vector/access/capacity.cc: Remove - #error, guard if consteval { return; } with - #ifndef __cpp_lib_constexpr_exceptions. - * testsuite/23_containers/inplace_vector/access/elem.cc: Likewise. - * testsuite/23_containers/inplace_vector/cons/1.cc: Likewise. - * testsuite/23_containers/inplace_vector/cons/from_range.cc: Likewise. - * testsuite/23_containers/inplace_vector/modifiers/single_insert.cc: - Likewise. - * testsuite/23_containers/inplace_vector/modifiers/assign.cc: - Likewise. - * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: - Likewise. - * libsupc++/new: Include <bits/new_except.h>. - (std::bad_alloc, std::bad_array_new_length): Move defintion to - <bits/new_except.h>. - -2025-12-11 Jason Merrill <jason@redhat.com> - - * testsuite/Makefile.am (CLEANFILES): Add gcm.cache. - * testsuite/Makefile.in: Regenerate. - * testsuite/lib/dg-options.exp (add_options_for_no_pch): Also add - -fno-modules. - * testsuite/lib/libstdc++.exp (v3_std_list): Handle "modules" std. - (v3_modules_std): New global. - (v3-build_support): Build gcms for bits/stdc++.h, std, and - std.compat. - -2025-12-11 Yuao Ma <c8ef@outlook.com> - - * include/bits/version.def: Add FTM. - * include/bits/version.h: Regenerate. - * include/std/flat_set: Add constexpr. - * testsuite/23_containers/flat_multiset/1.cc: Add constexpr test. - * testsuite/23_containers/flat_set/1.cc: Add constexpr test. - -2025-12-09 John Ericson <git@johnericson.me> - - * acinclude.m4: Use GCC_AC_THREAD_MODEL instead, via AC_REQUIRE - * configure: Regenerate. - -2025-12-09 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.h: Regenerate. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/bits/version.def (padded_layouts): Set to 202403. - (submdspan): Set to 202411 add dependency. - * include/bits/version.h: Regenerate. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan - (__mdspan::_SubMdspanMapping<_LayoutSide::__right, true>): Define. - (layout_right_padded::submdspan_mapping): New friend function. - * testsuite/23_containers/mdspan/submdspan/selections/right_padded.cc: - Instantiate tests for layout_right_padded. - * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: - Ditto. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (__mdspan::__is_padded_mapping): Define. - (__mdspan::_SubMdspanMapping): Add _Padded template parameter. - (__mdspan::_SubMdspanMapping<_LayoutSide::__left, true>): Define. - (__mdspan::__submdspan_mapping_impl): Updated _Trait alias. - (layout_left_padded::submdspan_mapping): New friend method. - * testsuite/23_containers/mdspan/layout_traits.h - (LayoutTraits::layout_same_padded): New template type alias. - * testsuite/23_containers/mdspan/submdspan/selections/left_padded.cc: - Instantiate tests for layout_left_padded. - * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: - Ditto. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (layout_stride::mapping::submdspan_mapping): New - friend function. - * testsuite/23_containers/mdspan/submdspan/selections/stride.cc: - Instantiate tests for layout_stride. - * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: - Ditto. - * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: - Add tests for layout_stride. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan - (__mdspan::_SubMdspanMapping<_LayoutSide::__right>): Define. - (layout_right::mapping::submdspan_mapping): New friend function. - * testsuite/23_containers/mdspan/submdspan/selections/right.cc: - Instantiate tests for layout_right. - * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: - Ditto. - * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: - Ditto. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (__mdspan::__is_submdspan_mapping_result) - (__mdspan::__submdspan_mapping_result, __mdspan::__fwd_prod) - (__mdspan::__acceptable_slice_type, __mdspan::__slice_begin) - (__mdspan::__suboffset, __mdspan::_LayoutSide, __mdspan::__mapping_side) - (__mdspan::_StridesTrait, __mdspan::__substrides_generic) - (__mdspan::__substrides_standardized, __mdspan::__substrides) - (__mdspan::__is_unit_stride_slice, __mdspan::_SliceKind) - (__mdspan::__make_slice_kind, __mdspan::__make_slice_kind_array) - (__mdspan::__is_block, __mdspan::__padded_block_begin_generic) - (__mdspan::__padded_block_begin, __mpdspan::_SubMdspanMapping) - (__mdspan::__submdspan_mapping_impl): Define. - (__mdspan::__dynamic_slice_extent, __mdspan::__static_slice_extent) - (__mdspan::__subextents): Move earlier in the file. - (layout_left::mapping::submdspan_mapping, __mdspan::__sliceable_mapping) - (__mdspan::__submapping, submdspan): Define. - * src/c++23/std.cc.in: Add submdspan. - * testsuite/23_containers/mdspan/submdspan/generic.cc: New test. - * testsuite/23_containers/mdspan/submdspan/selections/left.cc: - Instantiate selection tests for layout_left. - * testsuite/23_containers/mdspan/submdspan/selections/testcases.h: Generic - tests different selections. - * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: New test. - * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: New test. - -2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (_ExtentsStorage::_M_dynamic_extents): - Create span from pointer + size, not begin and end iterators. - -2025-12-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122946 - * include/bits/version.def (concepts): Set value to 202207. - * include/bits/version.h: Regenerate. - * include/std/concepts (__comparison_common_type_with_impl) - (__comparison_common_type_with): New helper concepts. - (equality_comparable_with): Use __comparison_common_type_with. - * libsupc++/compare (three_way_comparable_with): Likewise. - (__glibcxx_want_concepts): Define to get __cpp_lib_concepts - here. - * testsuite/std/concepts/concepts.compare/move_only.cc: New - test. - -2025-12-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/intcmp.h: Replace all uses of - __is_standard_integer with __is_signed_or_unsigned_integer. - * include/bits/max_size_type.h: Fix outdated comment. - * include/bits/sat_arith.h: Replace all uses of - __is_standard_integer with __is_signed_or_unsigned_integer. - * include/c_compatibility/stdckdint.h: Replace all uses of the - __cv_unqual_signed_or_unsigned_integer_type concept with - __is_signed_or_unsigned_integer. - (__cv_unqual_signed_or_unsigned_integer_type): Remove. - * include/ext/numeric_traits.h: Fix outdated comment. - * include/std/charconv (from_chars): Replace use of - __is_standard_integer with __is_signed_or_unsigned_integer. - Do not enable for cv-qualified char. - * include/std/mdspan: Likewise. - * include/std/type_traits (__is_unsigned_integer): Include - unsigned __int128 in type list. - (__is_signed_integer): Include signed __int128 in type list. - (__is_standard_integer): Rename to ... - (__is_signed_or_unsigned_integer): ... this. - * testsuite/23_containers/mdspan/extents/ctor_ints.cc: Test - with 128-bit integers. - * testsuite/23_containers/mdspan/submdspan/strided_slice.cc: - Likewise. - * testsuite/20_util/integer_comparisons/extended.cc: New test. - * testsuite/26_numerics/saturation/extended.cc: New test. - * testsuite/26_numerics/stdckdint/extended.cc: New test. - -2025-12-08 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/112591 - * include/std/variant (_Variadic_union): Separate specializations for - for union of only trivially destructible types (true as first template - argument). Unconditionally define destructor for _Variadic_union<false, - _First, _Rest...>. - * testsuite/20_util/variant/87619.cc: Add limit for the template depth. - * testsuite/20_util/variant/112591.cc: New test. - -2025-12-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/iterator_concepts.h: Remove diagnostic pragmas. - -2025-12-08 Jonathan Wakely <jwakely@redhat.com> - - * include/Makefile.am: Add new header. - * include/Makefile.in: Regenerate. - * include/std/latch: Include <bits/intcmp.h> instead of - <utility>. - * include/std/utility: Include <bits/intcmp.h>. - (cmp_equal, cmp_not_equal, cmp_less, cmp_greater) - (cmp_less_equal, cmp_greater_equal, in_range): Move to ... - * include/bits/intcmp.h: New file. - -2025-12-06 Jason Merrill <jason@redhat.com> - - * src/c++23/std.cc.in: Add more #if. - -2025-12-06 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/80564 - * include/std/functional (__cv_like): New. - (_Bind::_Res_type): Don't define when not needed. - (_Bind::__dependent): Likewise. - (_Bind::_Res_type_cv): Likewise. - (_Bind::operator()) [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: - Define as two instead of four overloads using deducing - this. - * testsuite/20_util/bind/cv_quals_2.cc: Ignore SFINAE - diagnostics inside headers. - * testsuite/20_util/bind/ref_neg.cc: Likewise. - * testsuite/20_util/bind/80564.cc: New test. - -2025-12-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_wait.h (__detail::__atomic_eq): Use - std::addressof instead of &. - * include/std/atomic (atomic::wait, atomic::notify_one) - (atomic::notify_all): Likewise. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120446 - * include/bits/refwrap.h (__detail::__is_ref_wrapper): - Define as per P2655R3 for C++20. - (__detail::__ref_wrap_common_reference_exists_with): Likewise. - (basic_common_reference): Define partial specializations using - the above as per P2655R3 for C++20. - * include/bits/version.def (common_reference_wrapper): New. - * include/bits/version.h: Regenerate. - * include/std/functional (__glibcxx_want_common_reference_wrapper): - Define. - * testsuite/20_util/reference_wrapper/p2655r3.cc: New test. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/120446 - * include/bits/version.def (common_reference): New. - * include/bits/version.h: Regenerate. - * include/std/type_traits (__glibcxx_want_common_reference): - Define. - (__common_reference_impl<T1, T2, 1>): Add pointer convertibility - constraints as per P2655R3. - * testsuite/20_util/common_reference/p2655r3.cc: New test. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - PR c++/120446 - * include/std/type_traits (__common_reference_impl): Rewrite - partial specializations to use requires-clause instead of - an additional void_t template parameter. Consolidate the - partial specializations corresponding to bullet 1. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - * testsuite/20_util/function_objects/bind_front/111327.cc: - Add missing space before } ending a dg-error directive. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/111550 - * include/std/ranges (views::__adaptor::_Partial::operator()) - [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Also use deducing this - in C++20 mode when possible. - (views::__adaptor::_Pipe::Operator()) - [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Likewise. - * testsuite/std/ranges/adaptors/take.cc (test07): New test. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/111327 - * include/bits/binders.h (_Binder::operator()) - [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Also use deducing this in - C++20 mode when possible. - * testsuite/20_util/function_objects/bind_front/111327.cc: - Expect error inside header even in C++20 mode. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/111327 - * include/std/functional (_Not_fn::operator()) - [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Define as a single - overload using deducing this. - * testsuite/20_util/function_objects/not_fn/111327.cc: Extend test. - -2025-12-05 Patrick Palka <ppalka@redhat.com> - - * include/bits/c++config (_GLIBCXX_EXPLICIT_THIS_PARAMETER): - New. - -2025-12-04 François Dumont <frs.dumont@gmail.com> - - * include/debug/deque - (std::erase_if<>(std::__debug::deque<>&, _Pred)): New. - (std::erase<>(std::__debug::deque<>&, const _Up&)): New. - * include/std/deque (std::erase_if(std::deque<>&, _Pred)): Remove - _GLIBCXX_DEBUG code. - * testsuite/23_containers/deque/debug/erase.cc: New test case. - * testsuite/23_containers/deque/debug/invalidation/erase.cc: New test case. - -2025-12-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/debug/safe_unordered_base.h - (_Safe_unordered_container_base::operator=): Define as - defaulted, inherit behavior of _Safe_sequence_base. - -2025-12-04 Luc Grosheintz <luc.grosheintz@gmail.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/mdspan (layout_left): Apply LWG4272. - (layout_right, layout_left_padded, layout_right_padded): Ditto. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Add - test to check ctor uniformity at rank == 0. Update test - for new behavior. - * testsuite/23_containers/mdspan/layouts/padded.cc: Update test - for new behavior. - -2025-12-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/debug/safe_sequence.h - (_Safe_node_sequence::_Safe_node_sequence): Define as defaulted. - -2025-12-03 Vladimir Bespalov <vlad.bespalov@jetstreamsoft.com> - - PR libstdc++/122812 - * python/libstdcxx/v6/printers.py (lookup_templ_spec): Use - gdb.Type.tag if present. - -2025-12-03 Yuao Ma <c8ef@outlook.com> - - * include/bits/basic_string.h: Add subview. - * include/bits/cow_string.h: Add subview. - * include/std/string: Add FTM. - * testsuite/21_strings/basic_string/operations/subview/char.cc: New test. - * testsuite/21_strings/basic_string/operations/subview/wchar_t.cc: New test. - -2025-12-03 Yuao Ma <c8ef@outlook.com> - - * include/bits/version.def: Add string_subview FTM. - * include/bits/version.h: Regenerate. - * include/std/string_view: Add subview. - * testsuite/21_strings/basic_string_view/operations/subview/char.cc: New test. - * testsuite/21_strings/basic_string_view/operations/subview/wchar_t.cc: New test. - -2025-12-03 François Dumont <frs.dumont@gmail.com> - - * include/Makefile.am (debug_headers): Add inplace_vector. - * include/Makefile.in: Regenerate. - * include/debug/functions.h (__check_valid_range): Add C++20 constexpr. - * include/debug/helper_functions.h (__valid_range): Likewise. - * include/debug/inplace_vector: New. - * include/debug/safe_base.h (~_Safe_sequence_base()): Add C++11 noexcept. - (_Safe_sequence_base::operator=(const _Safe_sequence_base&)): New. - (_Safe_sequence_base::operator=(_Safe_sequence_base&&)): New. - (_Safe_sequence_base::_M_invalidate_all): Add C++20 constexpr. - * include/debug/safe_container.h - (_Safe_container<>::operator=(const _Safe_container<>&)): Implement using - _Safe_sequence_base same operator. - * include/debug/safe_iterator.h (__valid_range): Add C++20 constexpr. - * include/debug/safe_sequence.h - (_Not_equal_to(const _Type&)): Add C++20 constexpr. - (_Equal_to(const _Type&)): Add C++20 constexpr. - (_After_nth_from(const difference_type&, const _Iterator&)): Add C++20 constexpr. - (_Safe_sequence<>::_M_invalidate_if): Add C++20 constexpr. - (_Safe_node_sequence::operator=(const _Safe_node_sequence&)): New. - (_Safe_node_sequence::operator=(_Safe_node_sequence&&)): New. - (_Safe_node_sequence<>::_M_invalidate_all()): Add C++20 constexpr. - * include/debug/safe_sequence.tcc - (_Safe_sequence<>::_M_invalidate_if): Add C++20 constexpr. - * include/std/inplace_vector [_GLIBCXX_DEBUG](std::inplace_vector<>): Move - implementation into __cxx1998 namespace. - (erase, erase_if): Limit to non-debug inplace_vector<>, cleanup code. - [_GLIBCXX_DEBUG]: Add include <debug/inplace_vector>. - * testsuite/23_containers/inplace_vector/cons/1.cc: Adapt, skip several - is_trivially_xxx checks when in _GLIBCXX_DEBUG mode. - * testsuite/23_containers/inplace_vector/copy.cc: Likewise. - * testsuite/23_containers/inplace_vector/move.cc: Likewise. - * testsuite/23_containers/inplace_vector/debug/assign1_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/assign2_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/assign3_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/assign4_backtrace_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/assign4_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/construct1_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/construct2_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/construct3_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/construct4_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/debug_functions.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/erase.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert1_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert2_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert3_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert4_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert5_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/insert7_neg.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/1.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/2.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/3.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/4.cc: New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/append_range.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/erase.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/pop_back.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/push_back.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/swap.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/try_append_range.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/try_emplace_back.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/try_push_back.cc: - New test case. - * testsuite/23_containers/inplace_vector/debug/invalidation/unchecked_emplace_back.cc: - New test case. - * testsuite/util/debug/checks.h: Avoid using _GLIBCXX_DEBUG containers in test - implementations. - -2025-12-02 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (submdspan_extents): New function. - * src/c++23/std.cc.in: Add submdspan_extents. - * testsuite/23_containers/mdspan/int_like.h: Add StructuralInt. - * testsuite/23_containers/mdspan/submdspan/submdspan_extents.cc: New test. - * testsuite/23_containers/mdspan/submdspan/submdspan_extents_neg.cc: New test. - -2025-12-02 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (submdspan_canonicalize_slices): New - function. - * src/c++23/std.cc.in (submdspan_canonicalize_slices): Add. - * testsuite/23_containers/mdspan/submdspan/submdspan_canonicalize_slices.cc: New test. - * testsuite/23_containers/mdspan/submdspan/submdspan_canonicalize_slices_neg.cc: New test. - -2025-12-01 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/122921 - * include/std/flat_map (_Flat_map_impl::_Iterator::value_type): - Remove const from key_type to make consistent with the - container's value_type. - * testsuite/23_containers/flat_map/1.cc (test09): New test. - * testsuite/23_containers/flat_multimap/1.cc (test09): New test. - -2025-12-01 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__wait_until_impl): Use - chrono::nanoseconds for parameter. - * src/c++20/atomic.cc (__wait_until_impl): Likewise. - -2025-12-01 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122878 - * src/c++20/atomic.cc (__spin_until_impl): Remove. - (__wait_until_impl): Use __spin_impl instead of - __spin_until_impl and return if timeout is reached after - spinning. - -2025-12-01 Jonathan Wakely <jwakely@redhat.com> - - * src/c++20/atomic.cc: Document platform wait API. - (__futex_wait_flags): Remove enumeration type. - (futex_private_flag): Define constant for FUTEX_PRIVATE_FLAG. - (__platform_wait): Use local variables for futex op constants. - (__platform_notify): Likewise. - (__platform_wait_until): Likewise. Adjust parameter types for - consistency with __platform_wait. - -2025-11-28 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/122842 - * include/bits/ranges_base.h (__access:_CBegin): Define in - terms of const_iterator directly, not const_iterator_t. - (__access::_CEnd): Likewise in terms of const_sentinel vs - const_sentinel_t. - (const_iterator_t): Move down definition and define in terms - of ranges::cbegin as per LWG 3946. - (const_sentinel_t): Likewise in terms of ranges::cend. - * testsuite/24_iterators/const_iterator/1.cc (test02): Correct - test for int[], std::array and std::vector. Also test - std::string. - -2025-11-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/performance/23_containers/sort_search/list.cc: Cast - results to void to suppress -Wunused-result warnings from - nodiscard functions. - * testsuite/performance/25_algorithms/equal_deque_iterators.cc: - Likewise. - * testsuite/performance/25_algorithms/search_n.cc: Likewise. - -2025-11-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/Makefile.am: Fix typo in comment. - * testsuite/Makefile.in: Regenerate. - -2025-11-27 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/ranges (__func_handle::__select): Named function - extracted from local lambda. - (__detail::__func_handle_t): Define using __func_handle::__select. - (__func_handle::_Inplace): Raname _M_ptr to _M_fn. - -2025-11-27 Jonathan Wakely <jwakely@redhat.com> - - * config/abi/pre/gnu.ver: Adjust exports. - * include/bits/atomic_timed_wait.h (_GLIBCXX_HAVE_PLATFORM_TIMED_WAIT): - Do not define this macro. - (__atomic_wait_address_until_v, __atomic_wait_address_for_v): - Adjust assertions to check that __platform_wait_uses_type is - true. - * include/bits/atomic_wait.h (__waitable): New concept. - (__platform_wait_uses_type): Different separately for platforms - with and without platform wait. - (_GLIBCXX_HAVE_PLATFORM_WAIT): Do not define this macro. - (__wait_value_type): New typedef. - (__wait_result_type): Change _M_val to __wait_value_type. - (__wait_flags): Remove __proxy_wait enumerator. Reduce range - reserved for ABI version by the commented-out value. - (__wait_args_base::_M_old): Change type to __wait_args_base. - (__wait_args_base::_M_obj, __wait_args_base::_M_obj_size): New - data members. - (__wait_args::__wait_args): Set _M_obj and _M_obj_size on - construction. - (__wait_args::_M_setup_wait): Change void* parameter to deduced - type. Adjust bit_cast to work for types of different sizes. - (__wait_args::_M_load_proxy_wait_val): Remove function, replace - with ... - (__wait_args::_M_setup_proxy_wait): New function. - (__wait_args::_S_flags_for): Do not set __proxy_wait flag. - (__atomic_wait_address_v): Adjust assertion to check that - __platform_wait_uses_type is true. - * src/c++20/atomic.cc (_GLIBCXX_HAVE_PLATFORM_WAIT): Define here - instead of in header. Check _GLIBCXX_HAVE_PLATFORM_WAIT instead - of _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT. - (__platform_wait, __platform_notify, __platform_wait_until): Add - unused parameter for _M_obj_size. - (__spin_impl): Adjust for 64-bit __wait_args_base::_M_old. - (use_proxy_wait): New function. - (__wait_args::_M_load_proxy_wait_val): Replace with ... - (__wait_args::_M_setup_proxy_wait): New function. Call - use_proxy_wait to decide at runtime whether to wait on the - pointer directly instead of using a proxy. If a proxy is needed, - set _M_obj and _M_obj_size to refer to its _M_ver member. Adjust - for change to type of _M_old. - (__wait_impl): Wait on _M_obj unconditionally. Pass _M_obj_size - to __platform_wait. - (__notify_impl): Call use_proxy_wait to decide whether to notify - on the address parameter or a proxy - (__spin_until_impl): Adjust for change to type of _M_val. - (__wait_until_impl): Wait on _M_obj unconditionally. Pass - _M_obj_size to __platform_wait_until. - -2025-11-27 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/semaphore_base.h (__platform_semaphore::_S_max): - Limit to PTRDIFF_MAX to avoid negative values. - * testsuite/30_threads/semaphore/least_max_value.cc: New test. - -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. - * configure: Regenerate. - -2025-11-24 Jonathan Wakely <jwakely@redhat.com> - - * include/std/optional (operator==, operator!=, operator>) - (operator>, operator<=, operator>=): Do not use logical - && and || with operands of unknown types. - * testsuite/20_util/optional/relops/lwg4370.cc: New test. - -2025-11-24 Jonathan Wakely <jwakely@redhat.com> - - * include/std/expected (operator==): Use implicit conversion to - bool and do not use logical && and || with operands of unknown - types. Add nodiscard attributes. - * testsuite/20_util/expected/equality.cc: Test some missing - cases which were not covered previously. - * testsuite/20_util/expected/lwg4366.cc: New test. - -2025-11-24 Jonathan Wakely <jwakely@redhat.com> - - * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): - Fix lookup for node type. - -2025-11-24 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122821 - * python/libstdcxx/v6/xmethods.py (_versioned_namespace): Remove - global variable. - (is_specialization_of): Do not use _versioned_namespace. Add - __debug:: to regex. - -2025-11-24 Jonathan Wakely <jwakely@redhat.com> - - * include/std/istream (istream::ignore(streamsize, char)): Add - always_inline attribute. - -2025-11-21 Yuao Ma <c8ef@outlook.com> - - * doc/html/manual/using_exceptions.html: Replace dead link. - * doc/xml/manual/using_exceptions.xml: Likewise. - -2025-11-21 Jonathan Wakely <jwakely@redhat.com> - - * include/std/expected (expected::value_or): Use remove_cv_t for - the return type. Do not use static_cast for return statement. - Adjust static_assert conditions to match return statements. - * include/std/optional (optional::value_or): Likewise. - (optional<T&>::value_or): Likewise. - -2025-11-21 Yuao Ma <c8ef@outlook.com> - Jonathan Wakely <jwakely@redhat.com> - - * include/std/istream (ignore): Add an overload for char. - * testsuite/27_io/basic_istream/ignore/char/93672.cc: Adjust - expected behaviour for C++26 mode. - * testsuite/27_io/basic_istream/ignore/char/4.cc: New test. - -2025-11-21 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/faq.xml: Refresh information on _GNU_SOURCE and - _XOPEN_SOURCE being predefined. - * doc/xml/manual/internals.xml: Remove outdated paragraph about - _POSIX_SOURCE in libstdc++ source files. - * doc/html/*: Regenerate. - -2025-11-21 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/regex_automaton.tcc [_GLIBCXX_DEBUG]: Include - <ostream> so that _State_base::_M_print etc. can use it. - -2025-11-21 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/23_containers/vector/debug/erase.cc: Remove no_pch - option. - * testsuite/23_containers/vector/debug/invalidation/erase.cc: - Likewise. - -2025-11-20 François Dumont <frs.dumont@gmail.com> - - * include/debug/vector (std::erase_if, std::erase): New overloads for - std::__debug::vector instances. - * include/std/vector (std::erase_if, std::erase): Make overloads specific - to normal std::vector implementation. - * testsuite/23_containers/vector/debug/erase.cc: New test case. - * testsuite/23_containers/vector/debug/invalidation/erase.cc: New test case. - -2025-11-20 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan: Improve formatting and placement. - * testsuite/23_containers/mdspan/int_like.h: Optionally, - add move- and copy-ctors. - * testsuite/23_containers/mdspan/layouts/padded_traits.h: Move to... - * testsuite/23_containers/mdspan/layout_traits.h: ...here. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Fix include. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. - -2025-11-20 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/18_support/headers/new/synopsis.cc: Add constexpr to - placement delete for C++26 and up. - -2025-11-19 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/abi.xml: Add versions for GCC 16. - * doc/html/manual/abi.html: Regenerate. - -2025-11-19 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122743 - * doc/xml/manual/abi.xml: Add versions for GCC 15. - * doc/html/manual/abi.html: Regenerate. - -2025-11-19 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/faq.xml: Remove unwanted whitespace inside - programlisting elements. - * doc/xml/manual/allocator.xml: Likewise. - * doc/xml/manual/auto_ptr.xml: Likewise. - * doc/xml/manual/backwards_compatibility.xml: Likewise. - * doc/xml/manual/build_hacking.xml: Likewise. - * doc/xml/manual/containers.xml: Likewise. - * doc/xml/manual/diagnostics.xml: Likewise. - * doc/xml/manual/extensions.xml: Likewise. - * doc/xml/manual/intro.xml: Likewise. - * doc/xml/manual/io.xml: Likewise. - * doc/xml/manual/iterators.xml: Likewise. - * doc/xml/manual/numerics.xml: Likewise. - * doc/xml/manual/policy_data_structures.xml: Likewise. - * doc/xml/manual/strings.xml: Likewise. - * doc/xml/manual/support.xml: Likewise. - * doc/xml/manual/test.xml: Likewise. - * doc/xml/manual/using.xml: Likewise. - * doc/xml/manual/utilities.xml: Likewise. - * doc/html/*: Regenerate. - -2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> - - * include/bits/basic_string.h (basic_string::M_set_length): Swap - around the order of traits_type::assign and _M_length so that - _M_length is at the end. - -2025-11-19 Martin Liska <martin.liska@hey.com> - - * configure: Regenerate. - -2025-11-19 Martin Liska <martin.liska@hey.com> - - * acinclude.m4:: Add detection for wild linker. - * configure: Regenerate. - -2025-11-19 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (extents::_Storage): Move type alias before - its first use. - (__mdspan::__static_extents): Add missing noexcept and constexpr - to friend declaration in extents. - (__mdspan::__dynamic_extents): Ditto. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - * include/std/type_traits (constant_wrapper conversion operator): - Use decltype(value) instead of decltype(auto). Resolves LWG4468. - -2025-11-19 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/122671 - * libsupc++/new (::operator delete, ::operator delete[]): Implement - proposed LWG4477 resolution. Use _GLIBCXX_PLACEMENT_CONSTEXPR for - placement operator deletes. - -2025-11-18 Mike Crowe <mac@mcrowe.com> - - * include/std/shared_mutex (try_lock, try_lock_until) - (try_lock_shared_until): Respond consistently to errors and - deadlocks. - * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: - Test deadlock behaviour if possible. - -2025-11-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121858 - * include/bits/funcref_impl.h - (function_ref::function_ref(nontype<__fn>, _Up&&)): Handle. - reference_wrapper. - * testsuite/20_util/function_ref/call.cc: Call and update - test05(). Add new test06() for reference_wrapper. - -2025-11-17 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122726 - * src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS] - (rename): Use __last_system_error to set errno accurately. - * testsuite/27_io/filesystem/operations/rename.cc: Test - error_code matches errc::no_such_file_or_directory. - -2025-11-17 Jonathan Wakely <jwakely@redhat.com> - - * src/c++23/std.cc.in [!__cpp_lib_syncbuf]: Disable exports for - <syncstream> contents when not defined. - [!_GLIBCXX_USE_CXX11_ABI]: Disable exports for pmr aliases in - <string> when not defined. - -2025-11-17 Jason Merrill <jason@redhat.com> - - * testsuite/util/testsuite_allocator.h: Move importable headers up. - * testsuite/util/testsuite_common_types.h: Likewise. - * testsuite/util/testsuite_containers.h: Likewise. - * testsuite/util/testsuite_error.h: Move includes inside - include guard. - * testsuite/util/testsuite_greedy_ops.h: #include <cstddef>. - * testsuite/util/testsuite_iterators.h: #include <utility>. - * testsuite/util/testsuite_new_operators.h: #include <cstdlib>. - * testsuite/util/testsuite_random.h: #include <random>. - -2025-11-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122698 - * src/c++20/syncbuf.cc (__syncbuf_get_mutex): Include <mutex>. - Fix indentation of function body. - -2025-11-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * scripts/extract_symvers.pl: Remove ccs from elfdump path. - -2025-11-15 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_base.h: Tweak grammar of static assert - messages for unsupported atomic wait on volatile. - -2025-11-15 Jonathan Wakely <jwakely@redhat.com> - - * src/c++20/atomic.cc (__wait_impl): Fix outdated comment. - (__wait_until_impl): Simplify return statements. - -2025-11-14 Tom Tromey <tromey@adacore.com> - - * python/libstdcxx/v6/printers.py (StdVectorPrinter._bounds): - New method. - (StdVectorPrinter.to_string): Use it. - (StdVectorPrinter.num_children): New method. - (StdStackOrQueuePrinter.num_children): New method. - (StdMapPrinter.num_children): New method. - (StdSetPrinter.num_children): New method. - (StdDequePrinter._size): New method. - (StdDequePrinter.to_string): Use it. - (StdDequePrinter.num_children): New method. - (Tr1UnorderedSetPrinter.num_children): New method. - (Tr1UnorderedMapPrinter.num_children): New method. - (StdSpanPrinter.num_children): New method. - -2025-11-14 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/unicode.h (_Utf_view): Rename the template parameter - from _Range to _View and constrain it with ranges::view. - (_Utf_view::_Utf_view): Accept by value instead of rvalue reference. - * include/std/format (__format::__write_padded): Replace _Utf_view - over const char32_t(&)[1] with span<const char32_t, 1>. - * testsuite/ext/unicode/view.cc: Add checks if specialization - of _Utf_view satisfy view. Wrap arrays into std::span before - constructing _Utf_view. - -2025-11-14 Jonathan Wakely <jwakely@redhat.com> - - * include/std/bitset: Add comment to feature test macro test. - -2025-11-14 Karpalo Toivonen <arktinenkarpalo@gmail.com> - Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121054 - * include/std/bitset: Add string check to constructor. - * testsuite/20_util/bitset/121054.cc: New test. - * testsuite/20_util/bitset/cons/constexpr_c++23.cc: Fix. - -2025-11-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/122032 - * include/std/functional (std::bind_front<f>, std::bind_back<f>): - Define in terms of _Bind_front_t/_Bind_back_t. - * testsuite/20_util/function_objects/bind_back/nttp.cc: New tests. - * testsuite/20_util/function_objects/bind_front/nttp.cc: New tests. - -2025-11-13 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122661 - * include/bits/forward_list.h (forward_list::assign(I, I)): Fix - value category in is_assignable check. - * testsuite/23_containers/forward_list/modifiers/122661.cc: - New test. - -2025-11-13 Xavier Bonaventura <xavibonaventura@gmail.com> - - * testsuite/18_support/headers/csignal/macros.cc: Check for - SIG_IGN. - -2025-11-13 Xavier Bonaventura <xavibonaventura@gmail.com> - - * testsuite/18_support/headers/climits/values.cc: Check for - LLONG_MIN, LLONG_MAX, and ULLONG_MAX. - -2025-11-13 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/optional (__is_optional_ref): Define. - * include/std/ranges (_Take::operator(), _Drop::operator()) - (_Reverse::operator()): Handle optional<T> that are view. - (_AsConst::operator()): Handle optional<T&>. - * testsuite/20_util/optional/range.cc: New tests. - -2025-11-13 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/115402 - PR libstdc++/122584 - * testsuite/29_atomics/atomic_ref/address.cc: Guard test for - volatile with if constexpr. - * testsuite/29_atomics/atomic_ref/deduction.cc: Likewise. - * testsuite/29_atomics/atomic_ref/op_support.cc: Likewise. - * testsuite/29_atomics/atomic_ref/requirements.cc: Likewise. - * testsuite/29_atomics/atomic_ref/bool.cc: Use volatile_t alias. - * testsuite/29_atomics/atomic_ref/generic.cc: Likewise. - * testsuite/29_atomics/atomic_ref/integral.cc: Likewise. - * testsuite/29_atomics/atomic_ref/pointer.cc: Likewise. - * testsuite/29_atomics/atomic_ref/float.cc: Likewise, and remove - not discarding if constexpr. - -2025-11-12 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/122425 - * include/std/optional - (ranges::enable_borrowed_range<optional<_Tp&>>): Define. - * testsuite/20_util/optional/range.cc: Update tests. - -2025-11-12 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/122396 - * include/std/optional (__optional_ref_base): Define. - (std::optional<_Tp&>): Inherit from __optional_ref_base<_Tp>. - (optional<_Tp&>::iterator): Move to base class. - (optional<_Tp&>::begin, optional<_Tp&>::end): Use deduced return - type and constrain accordingly. - * testsuite/20_util/optional/range.cc: Add test for optional<T&>. - -2025-11-12 Jason Merrill <jason@redhat.com> - - * testsuite/18_support/exception_ptr/62258.cc: Use - -Wno-deprecated-declarations instead of -Wno-deprecated. - * testsuite/18_support/uncaught_exception/14026.cc - * testsuite/20_util/headers/functional/synopsis.cc - * testsuite/20_util/is_literal_type/requirements/explicit_instantiation.cc - * testsuite/20_util/is_literal_type/requirements/typedefs.cc - * testsuite/20_util/is_literal_type/value.cc - * testsuite/20_util/is_pod/requirements/explicit_instantiation.cc - * testsuite/20_util/is_pod/requirements/typedefs.cc - * testsuite/20_util/is_pod/value.cc - * testsuite/20_util/shared_ptr/assign/auto_ptr.cc - * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc - * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc - * testsuite/20_util/shared_ptr/atomic/1.cc - * testsuite/20_util/shared_ptr/atomic/2.cc - * testsuite/20_util/shared_ptr/atomic/3.cc - * testsuite/20_util/shared_ptr/cons/43820_neg.cc - * testsuite/20_util/shared_ptr/cons/auto_ptr.cc - * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc - * testsuite/20_util/shared_ptr/creation/dr925.cc - * testsuite/20_util/unique_ptr/cons/auto_ptr.cc - * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc - * testsuite/20_util/variable_templates_for_traits.cc - * testsuite/29_atomics/atomic/lwg3220.cc - * testsuite/experimental/type_traits/value.cc: Likewise. - -2025-11-12 Jason Merrill <jason@redhat.com> - - * testsuite/lib/prune.exp: Sync with gcc prune.exp. - -2025-11-10 Jakub Jelinek <jakub@redhat.com> - - * libsupc++/compare: Implement final wording of C++26 P3778R0 - Fix - for type_order template definition. - (std::type_order): Remove type member. - -2025-11-03 Sam James <sam@gentoo.org> - - * configure: Regenerate. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * include/bits/quoted_string.h: Add ADL friends. - * libsupc++/exception_ptr.h: Add ADL friend. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * src/c++23/std.cc.in: Move TBB macro shenanigans after - bits/stdc++.h. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * include/precompiled/stdc++.h: Remove <cassert>. - * testsuite/util/exception/safety.h: Add <cassert>. - * testsuite/17_intro/headers/c++1998/stdc++_assert_neg.cc: - Don't define _GLIBCXX_NO_ASSERT. - -2025-11-03 Jason Merrill <jason@redhat.com> - - * include/bits/ios_base.h: Add attribs to _Ios_Fmtflags, - _Ios_Iostate, _ios_seekdir. - * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Remove - unneeded cases. - * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise. - * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise. - * testsuite/27_io/ios_base/types/seekdir/case_label.cc: Likewise. - -2025-11-02 Jason Merrill <jason@redhat.com> - - * src/c++23/std.cc.in: Uncomment usings for vprint_*_buffered. - -2025-10-30 Jakub Jelinek <jakub@redhat.com> - - * include/bits/version.def (is_implicit_lifetime): New. - * include/bits/version.h: Regenerate. - * include/std/type_traits (std::is_implicit_lifetime, - std::is_implicit_lifetime_v): New trait. - * src/c++23/std.cc.in (std::is_implicit_lifetime, - std::is_implicit_lifetime_v): Export. - * testsuite/20_util/is_implicit_lifetime/version.cc: New test. - * testsuite/20_util/is_implicit_lifetime/value.cc: New test. - -2025-10-29 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/regex.tcc (regex_traits::value): Use __c instead - of __ch. - -2025-10-29 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/17_intro/headers/c++2011/42319.cc: Include <ios> - instead of <bits/char_traits.h>. Add no_pch option. Remove - explicit -std=gnu++11 option. - * testsuite/30_threads/thread/swap/1.cc: Include <utility> - instead of <bits/move.h>. - -2025-10-29 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119721 - * include/std/tuple (tuple<>::operator=(const _Tuple&) const) - [__cpp_lib_ranges_zip]: Define. - * testsuite/23_containers/tuple/cons/119721.cc: Test const - assignment. - -2025-10-29 Osama Abdelkader <osama.abdelkader@gmail.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119721 - * include/std/tuple (tuple<>::tuple(const tuple&)) - (tuple<>::operator=(const tuple&)): Define as defaulted. - (tuple<>::swap): Moved the defintion after assignments. - (tuple<>::tuple(_UTuple&&)) - (tuple<>::tuple(allocator_arg_t, const _Alloc&, _UTuple&&)) - (tuple<>::operator=(_UTuple&&)) [__cpp_lib_tuple_like]: Define. - (tuple<>::operator==, tuple<>::opeator<=>): Parenthesize - constrains individually. - * testsuite/23_containers/tuple/cons/119721.cc: New test for - constructors and assignments with empty tuple-like types. - * testsuite/20_util/tuple/requirements/empty_trivial.cc: - New test verifying tuple<> remains trivially copyable. - -2025-10-29 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/regex.tcc (regex_traits::value): Implement - without using istringstream. - * include/std/regex: Do not include <sstream>. - -2025-10-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122401 - * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: - Do not try to acquire locks on the thread that already holds a - lock. Add -pthread for et pthread. - -2025-10-27 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122401 - * testsuite/20_util/shared_ptr/atomic/pr118757.cc: Add -pthread - for et pthread. - * testsuite/20_util/weak_ptr/pr118757.cc: Likewise. - * testsuite/30_threads/condition_variable/members/116586.cc: - Likewise. Only run for hosted targets with gthreads support. - * testsuite/30_threads/future/members/116586.cc: Likewise. - * testsuite/30_threads/recursive_timed_mutex/try_lock_until/116586.cc: - Likewise. - * testsuite/30_threads/timed_mutex/try_lock_until/116586.cc: - Likewise. - -2025-10-27 Matthias Kretz <m.kretz@gsi.de> - - * include/bits/utility.h (_IotaArray): Define. - * testsuite/ext/iotaarray.cc: New test. - -2025-10-27 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/108951 - * include/bits/valarray_array.h( __valarray_get_storage): Use - std::__new_allocator. - (__valarray_release_memory): Likewise. - * include/std/valarray: Pass _M_size to - __valarray_release_memory. - * testsuite/26_numerics/valarray/108951.cc: New test. - -2025-10-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/util/testsuite_iterators.h (test_container): Add - iterator and value_type typedefs. - -2025-10-24 Eric Pimentel Aguiar <eric.pimentela@gmail.com> - - * src/c++23/std.cc.in (std::strided_slice, std::full_extent_t) - (std::full_extent, std::submdspan_mapping_result): Add std - qualification. - -2025-10-24 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/122022 - * include/std/functional (_Bind_fn_t): Use forwarding reference as - paremeter. - (std::not_fn<f>): Use forwarding reference as lambda parameter. - * testsuite/20_util/function_objects/bind_back/nttp.cc: Rework tests. - * testsuite/20_util/function_objects/bind_front/nttp.cc: Likewise. - * testsuite/20_util/function_objects/not_fn/nttp.cc: Add test for - argument forwarding. - -2025-10-22 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122224 - * include/bits/stl_iterator_base_funcs.h (prev): Compare - distance as n > 0 instead of n != 0. - * testsuite/24_iterators/range_operations/122224.cc: New test. - -2025-10-22 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (indices::operator()): Constrain using - __can_iota_view concept. - * testsuite/std/ranges/indices/1.cc: Check SFINAE-friendliness - required by expression equivalence. Replace unused <vector> - header with <stddef.h> needed for size_t. - -2025-10-22 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121748 - * include/bits/version.def: Bump value for optional, - * include/bits/version.h: Regenerate. - * include/std/optional (std::__is_valid_contained_type_for_optional): - Define. - (std::optional<T>): Use __is_valid_contained_type_for_optional. - (optional<T>(const optional<_Up>&), optional<T>(optional<_Up>&&)) - (optional<T>::operator=(const optional<_Up>&)) - (optional<T>::operator=(optional<_Up>&&)): Replacex._M_get() with - x._M_fwd(), and std::move(x._M_get()) with std::move(x)._M_fwd(). - (optional<T>::and_then): Remove uncessary remove_cvref_t. - (optional<T>::_M_fwd): Define. - (std::optional<T&>): Define new partial specialization. - (std::swap(std::optional<T&>, std::optional<T&>)): Define. - (std::make_optional(_Tp&&)): Add non-type template parameter. - (std::make_optional): Use parenthesis to constructor optional. - (std::hash<optional<T>>): Add comment. - * testsuite/20_util/optional/make_optional-2.cc: Guarded not longer - working example. - * testsuite/20_util/optional/relops/constrained.cc: Expand test to - cover optionals of reference. - * testsuite/20_util/optional/requirements.cc: Ammend for - optional<T&>. - * testsuite/20_util/optional/requirements_neg.cc: Likewise. - * testsuite/20_util/optional/version.cc: Test new value of - __cpp_lib_optional. - * testsuite/20_util/optional/make_optional_neg.cc: New test. - * testsuite/20_util/optional/monadic/ref_neg.cc: New test. - * testsuite/20_util/optional/ref/access.cc: New test. - * testsuite/20_util/optional/ref/assign.cc: New test. - * testsuite/20_util/optional/ref/cons.cc: New test. - * testsuite/20_util/optional/ref/internal_traits.cc: New test. - * testsuite/20_util/optional/ref/make_optional/1.cc: New test. - * testsuite/20_util/optional/ref/make_optional/from_args_neg.cc: - New test. - * testsuite/20_util/optional/ref/make_optional/from_lvalue_neg.cc: - New test. - * testsuite/20_util/optional/ref/make_optional/from_rvalue_neg.cc: - New test. - * testsuite/20_util/optional/ref/monadic.cc: New test. - * testsuite/20_util/optional/ref/relops.cc: New test. - -2025-10-22 Osama Abdelkader <osama.abdelkader@gmail.com> - - PR libstdc++/119721 - * include/std/tuple (tuple<>::operator==, tuple<>::operator<=>): - Define. - * testsuite/23_containers/tuple/comparison_operators/119721.cc: - New test. - -2025-10-20 Yuao Ma <c8ef@outlook.com> - - * include/bits/version.def: Add ranges_indices FTM. - * include/bits/version.h: Regenerate. - * include/std/ranges: Implement views::indices. - * testsuite/std/ranges/indices/1.cc: New test. - -2025-10-20 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/funcwrap.h (__polyfunc::__deduce_funcref): - Adjust signature produced for member object pointers. - * testsuite/20_util/function_ref/deduction.cc: Update tests. - -2025-10-20 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122322 - * configure.ac (with_newlib) <*-rtems*>: Remove - HAVE_SYS_IOCT4YL_H, _GLIBCXX_USE_LINK, _GLIBCXX_USE_READLINK, - _GLIBCXX_USE_SYMLINK, _GLIBCXX_USE_TRUNCATE, and - _GLIBCXX_USE_FDOPENDIR. Remove duplicates. - * configure: Regenerate. - -2025-10-18 Iain Sandoe <iain@sandoe.co.uk> - - PR c++/119060 - * include/bits/version.def: Add observable_checkpoint at present - allowed from C++26. - * include/bits/version.h: Regenerate. - * include/std/utility: Add std::observable_checkpoint(). - * src/c++23/std.cc.in: Add obervable_checkpoint () to utility. - -2025-10-17 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/atomic_base.h - (__atomic_ref_base::_S_required_alignment): Renamed from... - (__atomic_ref_base::_S_required_aligment): Renamed. - -2025-10-16 Jonathan Wakely <jwakely@redhat.com> - - * include/std/stacktrace - (operator<<(ostream&, const stacktrace_entry&)): Improve output - when description() or source_file() returns an empty string, - or the stacktrace_entry is invalid. Append frame address to - output. - (operator<<(ostream&, const basic_stacktrace<A>&)): Use the - size_type of the correct specialization. - -2025-10-15 Jonathan Wakely <jwakely@redhat.com> - - * python/libstdcxx/v6/printers.py (StdStacktraceEntryPrinter): - New printer for std::stacktrace_entry. - (StdStacktracePrinter): New printer for std::basic_stacktrace. - -2025-10-15 Jonathan Wakely <jwakely@redhat.com> - - * include/std/stacktrace (basic_stacktrace::current): Call - _M_trim before returning. - (basic_stacktrace::_M_trim): New member function. - -2025-10-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122293 - * include/bits/chrono.h (__to_timeout_timespec): Fix - preprocessor condition to match the conditions under which - callers of this function are defined. - * include/bits/this_thread_sleep.h: Remove unused include. - -2025-10-15 Chris Johns <chrisj@rtems.org> - - * configure: Regenerate. - * configure.ac (newlib, *-rtems*): Add HAVE_SYS_IOCTL_H, - HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H, HAVE_S_ISREG, HAVE_UNISTD_H, - HAVE_UNLINKAT, _GLIBCXX_USE_CHMOD, _GLIBCXX_USE_MKDIR, - _GLIBCXX_USE_CHDIR, _GLIBCXX_USE_GETCWD, _GLIBCXX_USE_UTIME, - _GLIBCXX_USE_LINK, _GLIBCXX_USE_READLINK, _GLIBCXX_USE_SYMLINK, - _GLIBCXX_USE_TRUNCATE and _GLIBCXX_USE_FDOPENDIR. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/this_thread/sleep_for.cc: Add - test_negative() test. - * testsuite/30_threads/this_thread/sleep_until.cc: Make existing - test use both system_clock and steady_clock. Add test_negative() - test. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/timed_mutex/try_lock_until/116586.cc: New - test. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/recursive_timed_mutex/try_lock_until/116586.cc: - New test. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/future/members/116586.cc: New test. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/condition_variable/members/116586.cc: New - test. - -2025-10-14 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/116586 - * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: - New test. - -2025-10-14 Mike Crowe <mac@mcrowe.com> - - PR libstdc++/116586 - * testsuite/30_threads/semaphore/try_acquire_for.cc: Add tests. - * testsuite/30_threads/semaphore/try_acquire_until.cc: Add - tests. - -2025-10-14 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/113327 - PR libstdc++/116586 - PR libstdc++/119258 - PR libstdc++/58931 - * include/bits/chrono.h (__to_timeout_timespec): New overloaded - function templates for converting chrono types to timespec. - * include/bits/std_mutex.h (__to_timeout_gthread_time_t): New - function template for converting time_point to __gthread_time_t. - * include/bits/this_thread_sleep.h (sleep_for): Use - __to_timeout_timespec. - (__sleep_for): Remove namespace-scope declaration. - * include/std/condition_variable: Likewise. - * include/std/mutex: Likewise. - * include/std/shared_mutex: Likewise. - * src/c++11/thread.cc (limit): New helper function. - (__sleep_for): Use limit to prevent overflow when converting - chrono::seconds to time_t, unsigned, or chrono::milliseconds. - * src/c++20/atomic.cc: Use __to_timeout_timespec and - __to_timeout_gthread_time_t for timeouts. - * testsuite/30_threads/this_thread/113327.cc: New test. - -2025-10-14 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/format (_M_format_range): Remove unused local type - alias _String. - -2025-10-14 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/hashtable.h: Check specific feature test macros - instead of checking thevalue of __cplusplus. - * include/bits/stl_map.h: Likewise. - * include/bits/stl_multimap.h: Likewise. - * include/bits/stl_multiset.h: Likewise. - * include/bits/stl_set.h: Likewise. - * include/bits/stl_tree.h: Likewise. - * include/bits/unordered_map.h: Likewise. - * include/bits/unordered_set.h: Likewise. - * include/debug/map.h: Likewise. - * include/debug/multimap.h: Likewise. - * include/debug/multiset.h: Likewise. - * include/debug/set.h: Likewise. - * include/debug/unordered_map: Likewise. - * include/debug/unordered_set: Likewise. - -2025-10-14 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122255 - * src/c++17/fs_path.cc (path::_List::_Impl::~_Impl): Define - destructor. - (path::_List::_Impl::copy): Use create_unchecked. - (path::_List::_Impl): Add static assertions. - (path::_List::_Impl::create): New static member function. - (path::_List::_Impl::create_unchecked): Likewise. - (path::_List::_Impl_deleter::operator()): Use destructor. - (path::_List::reserve): Use create. - -2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/format (__format::__write_escape_seqs) - (__format::_Escaping_sink): Define. - (__format::__write_escaped_unicode_part): Extract from - __format::__write_escaped_unicode. - (__format::__write_escaped_unicode): Forward to - __write_escaped_unicode_part. - (__formatter_str::_M_format_range): Use _Escaping sink. - * testsuite/std/format/ranges/string.cc: New tests for - character which codepoints will be split in buffer and - escaping. Invoked test_padding. - -2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/118757 - * include/bits/shared_ptr_atomic.h (_Atomic_count::_M_wait_unlock): - Add parameter capturing reference to _M_ptr. Reimplement in terms - of __atomic_wait_address. - (_Atomic_count::~_Atomic_count, _Atomic_count::lock) - (_Atomic_count::unlock, _Atomic_count::_M_swap_unlock): Replace - invocation of atomic member funcitons with __atomic builtins. - (_Atomic_count::notify_one, _Atomic_count::notify_all): - Use __atomic_notify_address. - (_Sp_atomic::element_type): Define. - (_Sp_atomic::_M_val): Change type to uintptr_t. - (_Sp_atomic::wait): Pass _M_ptr to _M_wait_unlock. - * python/libstdcxx/v6/printers.py: - * testsuite/20_util/shared_ptr/atomic/pr118757.cc: New test. - * testsuite/20_util/weak_ptr/pr118757.cc: New test. - -2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/122267 - * include/bits/atomic_base.h - (__atomic_ref_base<const _Tp>::_S_required_alignment): - Use __alignof__ instead of alignof. - -2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/month_day/io.cc: New formatting tests. - * testsuite/std/time/month_day_last/io.cc: Likewise. - * testsuite/std/time/month_weekday/io.cc: Likewise. - * testsuite/std/time/month_weekday_last/io.cc: Likewise. - * testsuite/std/time/weekday_indexed/io.cc: Likewise. - * testsuite/std/time/weekday_last/io.cc: Likewise. - * testsuite/std/time/year_month/io.cc: Likewise. - -2025-10-13 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_iterator_base_funcs.h (advance): Fix comment. - -2025-10-13 Yuao Ma <c8ef@outlook.com> - - * include/bits/atomic_base.h: Implement address(). - * include/bits/version.def: Bump version number. - * include/bits/version.h: Regenerate. - * testsuite/29_atomics/atomic_ref/address.cc: New test. - -2025-10-13 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unicode.h (_Utf_view::_M_read_reverse_utf16): - Fix check for high surrogate preceding low surrogate. - * testsuite/ext/unicode/view.cc: Check unpaired low surrogates. - -2025-10-13 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unicode.h (__is_single_code_unit): Fix check for - 7-bit ASCII characters. - -2025-10-11 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/xml/manual/build_hacking.xml: Update Autoconf manual link. - * doc/html/manual/appendix_porting.html: Regenerate. - -2025-10-10 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122172 - * include/bits/shared_ptr_base.h (_Sp_counted_base): Define - _Unsigned_count_type for make_unsigned<_Atomic_word>. - Replace __int_traits<_Atomic_word> with equivalent expression. - * include/ext/atomicity.h (_GLIBCXX_UNSIGNED_ATOMIC_WORD): - Define macro for unsigned type to use for arithmetic. - (__exchange_and_add_single, __atomic_add_single): Use it. - -2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/month_day_last/io.cc: Remove TODO comments - for test_parse(). - * testsuite/std/time/month_weekday/io.cc: Likewise. - * testsuite/std/time/month_weekday_last/io.cc: Likewise. - * testsuite/std/time/weekday_indexed/io.cc: Likewise. - * testsuite/std/time/weekday_last/io.cc: Likewise. - * testsuite/std/time/year_month_day_last/io.cc: Likewise. - * testsuite/std/time/year_month_weekday/io.cc: Likewise. - * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. - -2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121790 - * include/bits/chrono_io.h (enable_nonlocking_formatter_optimization): - Adjust specializations for duration, hh_mm_ss and time_points. - * include/std/format (enable_nonlocking_formatter_optimization): - Apply remove_cvref_t on pair and tuple elements. - * include/std/queue (enable_nonlocking_formatter_optimization): - Change specialization value to false. - * include/std/stack (enable_nonlocking_formatter_optimization): - Change specialization value to false. - * testsuite/std/format/ranges/adaptors.cc: Adjusted tests. - * testsuite/std/format/tuple.cc: Adjusted tests. - * testsuite/std/time/format/nonlocking.cc: Adjusted tests. - -2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121790 - * include/bits/chrono_io.h - (enable_nonlocking_formatter_optimization): Define specializations - for chrono types. - * include/bits/version.def (print): Bump. - * include/bits/version.h: Regenerate. - * include/std/format (enable_nonlocking_formatter_optimization): - Define specializations for pair, tuple and ranges. - * include/std/queue (enable_nonlocking_formatter_optimization): - Define specializations for queue and priority_queue. - * include/std/stack (enable_nonlocking_formatter_optimization): - Define specialization for stack. - * include/std/stacktrace (enable_nonlocking_formatter_optimization): - Define specialization for basic_stacktrace and stacktrace_entry. - * include/std/thread (enable_nonlocking_formatter_optimization): - Define specialization for thread::id. - * include/std/vector (enable_nonlocking_formatter_optimization): - Define specialization for vector<bool>::reference. - * testsuite/23_containers/vector/bool/format.cc: Test value of - enable_nonlocking_formatter_optimization. - * testsuite/30_threads/thread/id/output.cc: Likewise. - * testsuite/std/format/ranges/adaptors.cc: Likewise. - * testsuite/std/format/ranges/formatter.cc: Likewise. - * testsuite/std/format/tuple.cc: Likewise. - * testsuite/std/time/format/empty_spec.cc: Extract Rep class - to custom_rep.h. - * testsuite/std/time/format/custom_rep.h: Extracted from - empty_spec.cc. - * testsuite/std/time/format/nonlocking.cc: New test. - -2025-10-10 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121790 - * acinclude.m4 (GLIBCXX_CHECK_STDIO_LOCKING): New macro to check - for std::print dependencies. - * config.h.in: Regenerate. - * configure: Regenerate. - * configure.ac: Use GLIBCXX_CHECK_STDIO_LOCKING. - * include/bits/formatfwd.h (enable_nonlocking_formatter_optimization): - Define new variable template. - * include/bits/version.def (print): Bump value. - * include/bits/version.h: Regenerate. - * include/std/format (enable_nonlocking_formatter_optimization): - Define specializations for variable template. - * include/std/ostream (print) [!_WIN32]: Do not use - vprint_unicode at all. - (println): Append newline to format string instead of formatting - twice. - * include/std/print (_File_sink): New class. - (vprint_nonunicode_locking): New function. - (vprint_unicode_locking): New function reusing previous code - from vprint_unicode. - (vprintf_unicode): Defer to vprint_nonunicode for Windows or to - vprint_unicode_locking otherwise. - (print): [!_WIN32]: Do no use vprint_unicode at all. - Check enable_nonlocking_formatter_optimization and defer to - either vprint_nonunicode_locking or vprint_nonunicode. - (println): Use vprint_unicode or format directly to a _File_sink - instead of formatting twice. - * testsuite/27_io/print/1.cc: Updated and added new tests. - * testsuite/std/format/formatter/nonlocking.cc: New tests. - -2025-10-10 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/115402 - * include/bits/atomic_base.h (__atomic_ref_base<const _Tp>) - (__atomic_ref_base<_Tp>): Define by extracting common methods - from atomic_ref specializations. - (__atomic_ref<_Tp, In, Fp, Pt>): Inherit from __atomic_ref_base - and remove extracted method. - (__atomic_ref<const _Tp, In, Fp, Pt>): Define. - * include/std/atomic (std::atomic): Added an - * testsuite/29_atomics/atomic/requirements/types_neg.cc: - Add test for volatile qualified types. - * testsuite/29_atomics/atomic_ref/bool.cc: Move the content - to op_support.cc, add test for bool. - * testsuite/29_atomics/atomic_ref/op_support.cc: New test - expanded from atomic_ref/bool.cc. - * testsuite/29_atomics/atomic_ref/cv_qual.cc: New test. - * testsuite/29_atomics/atomic_ref/requirements_neg.cc: New test. - * testsuite/29_atomics/atomic_ref/deduction.cc: Add tests for - cv-qualified types. - * testsuite/29_atomics/atomic_ref/float.cc: Likewise. - * testsuite/29_atomics/atomic_ref/generic.cc: Likewise. - * testsuite/29_atomics/atomic_ref/integral.cc: Likewise. - * testsuite/29_atomics/atomic_ref/pointer.cc: Likewise. - * testsuite/29_atomics/atomic_ref/requirements.cc: Likewise. - * testsuite/29_atomics/atomic_ref/wait_notify.cc: Add tests for - const qualified types. - -2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121929 - * include/bits/chrono_io.h (_ChronoData::_M_fill_aux) - (_ChronoData::_M_fill_aux): Add comment documenting precondition. - (formatter<chrono::year_month_day, _CharT>::format): Compute - local_days inline. - (formatter<chrono::year_month_day_last, _CharT>::format) - (formatter<chrono::year_month_weekday, _CharT>::format) - (formatter<chrono::year_month_weekday_last, _CharT>::format): - Change how the _M_day field is computed. - * testsuite/std/time/year_month_weekday/io.cc: Adjust tests. - -2025-10-09 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/hashtable.h (_Hashtable::_S_nothrow_move): Use - diagnostic pragmas to allow constexpr if in C++14. Use value - member instead of operator(). - -2025-10-09 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.tpl: Fix comment on #endif. Tweak - description of when macros are defined. - * include/bits/version.h: Regenerate. - -2025-10-09 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/year_month_day_last/io.cc: New formatting tests. - * testsuite/std/time/year_month_weekday/io.cc: Likewise. - * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. - -2025-10-08 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/status_cxx2017.xml: Replace broken link to PSTL - upstream. - * doc/xml/manual/status_cxx2020.xml: Likewise. - * doc/html/manual/status.html: Regenerate. - -2025-10-08 Jonathan Wakely <jwakely@redhat.com> - - * config/cpu/i486/atomicity.h: Removed. - -2025-10-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122172 - * config/cpu/cris/atomicity.h: Removed. - -2025-10-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/indirect.h (indirect::operator=(indirect&&)): - Move assign allocator when POCMA is true. - (polymorphic::operator=(polymorphic&&)): Likewise. - * testsuite/std/memory/indirect/copy.cc: Remove constexpr from - functions that use tracker_allocator. Add test_constexpr(). - * testsuite/std/memory/indirect/copy_alloc.cc: Remove constexpr - from all functions and remove static_assert. - * testsuite/std/memory/indirect/ctor.cc: Do not use - scoped_allocator_adaptor during constant evaluation. - * testsuite/std/memory/indirect/move.cc: Remove constexpr from - functions that use tracker_allocator. Add test_constexpr(). - * testsuite/std/memory/indirect/move_alloc.cc: Remove constexpr - from all functions and remove static_assert. - * testsuite/std/memory/indirect/relops.cc: Invoke lambda in - static_assert. - * testsuite/std/memory/polymorphic/copy.cc: Remove constexpr - from functions that use tracker_allocator. Add test_constexpr(). - * testsuite/std/memory/polymorphic/copy_alloc.cc: Remove - constexpr from all functions and remove static_assert. - * testsuite/std/memory/polymorphic/ctor.cc: Do not use - scoped_allocator_adaptor during constant evaluation. - * testsuite/std/memory/polymorphic/ctor_poly.cc: Likewise. - * testsuite/std/memory/polymorphic/move.cc: Remove constexpr - from functions that use tracker_allocator. Add test_constexpr(). - * testsuite/std/memory/polymorphic/move_alloc.cc: Remove - constexpr from all functions and remove static_assert. - * testsuite/util/testsuite_allocator.h (tracker_allocator): - Remove redundant 'inline' from friend. - (uneq_allocator): Make all functions constexpr. - (uneq_allocator::base, uneq_allocator::swap_base): Remove. - (uneq_allocator::~uneq_allocator): Remove. - (uneq_allocator::allocate, uneq_allocator::deallocate): Do not - use map of allocations during constant evaluation. - (propagating_allocator): Make all functions constexpr. - (propagating_allocator::base): Remove. - (propagating_allocator::swap_base): Simplify. - (ExplicitConsAlloc, CustomPointerAlloc, NullablePointer): Add - constexpr to all functions. - -2025-10-08 Jakub Jelinek <jakub@redhat.com> - - * include/bits/unicode-data.h: Regenerate. - * testsuite/ext/unicode/properties.cc: Test __is_extended_pictographic - on U+1F004 rather than U+1F000. - -2025-10-08 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (_ChronoData::_M_fill_day): Replace - '%' by '/'. - -2025-10-08 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/std/time/format/format.cc: Include <vector>. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (submdspan_mapping_result): New class. - * src/c++23/std.cc.in (submdspan_mapping_result): Add. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (full_extent_t): New class. - * src/c++23/std.cc.in (full_extent_t): Add. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/bits/version.def (submdspan): New internal macro. - * include/bits/version.h: Regenerate. - * include/std/mdspan (strided_slice): New class. - * src/c++23/std.cc.in (strided_slice): Add. - * testsuite/23_containers/mdspan/submdspan/strided_slice.cc: New test. - * testsuite/23_containers/mdspan/submdspan/strided_slice_neg.cc: New test. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__index_type_cast): Optimize by - skipping a __glibcxx_assert if it's know at compile-time. - (std::layout_left_padded, std::layout_righ_padded): Reorder - is_always_strided and is_unique member functions. - * testsuite/23_containers/mdspan/int_like.h: Rename _M_i to - value. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/std/mdspan (_RightPaddedIndices): Traits for right - padded layouts. - (layout_right::mapping::mapping) New overload for right padded - layouts. - (layout_right_padded): Add implementation. - * src/c++23/std.cc.in (layout_right_padded): Add. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Update - test for right padded layouts. - * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded_traits.h: Ditto. - -2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/110352 - * include/bits/version.def (padded_layouts): Add new internal - feature testing macro. - * include/bits/version.h: Regenerate. - * include/std/mdspan (__fwd_prod): New overload. - (layout_left_padded): Add declaration and implementation. - (layout_right_padded): Add declaration only. - (layout_left::mapping::mapping): New overload for left - padded mappings. - (__index_type_cast): New function that performs a checked cast - to index_type. - (__is_left_padded_mapping): New concept. - (__is_right_padded_mapping): Ditto. - (__standardized_mapping): Recognize left and right padded - mappings. - (_LeftPaddedIndices): Traits for left padded details. - (_PaddedStorage): New class for implementing padded layouts. - * src/c++23/std.cc.in (layout_left_padded): Add. - * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: - Refactor and add tests for layout_left_padded. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/padded_traits.h: New - traits. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * configure.host: Fix spelling in comment. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * include/ext/ropeimpl.h (rope::_S_fetch): Initialize variable. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/sat_arith.h (mul_sat): Add parentheses around - operands. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/std/time/parse/parse.cc: Initialize variable. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/20_util/shared_ptr/cons/move.cc: Add comment and - dg-prune-output for -Wpessimizing-move warning. - * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: - Likewise. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/random.h (philox_engine(result_type)): Reorder - ctor-initializer-list to match declaration order. - -2025-10-07 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/basic_string.h (basic_string::_M_check): Cast - size_type arguments to size_t. - -2025-10-05 Sam James <sam@gentoo.org> - - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * configure: Regenerate. - * doc/Makefile.in: Regenerate. - * include/Makefile.in: Regenerate. - * libsupc++/Makefile.in: Regenerate. - * po/Makefile.in: Regenerate. - * python/Makefile.in: Regenerate. - * src/Makefile.in: Regenerate. - * src/c++11/Makefile.in: Regenerate. - * src/c++17/Makefile.in: Regenerate. - * src/c++20/Makefile.in: Regenerate. - * src/c++23/Makefile.in: Regenerate. - * src/c++26/Makefile.in: Regenerate. - * src/c++98/Makefile.in: Regenerate. - * src/experimental/Makefile.in: Regenerate. - * src/filesystem/Makefile.in: Regenerate. - * src/libbacktrace/Makefile.in: Regenerate. - * testsuite/Makefile.in: Regenerate. - -2025-10-03 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/index.html: Regenerated. - * doc/html/manual/status.html: Regenerated. - * doc/xml/manual/status_cxx2020.xml: Added status table. - -2025-10-01 François Dumont <frs.dumont@gmail.com> - - * include/std/vector (std::erase_if, std::erase): Replace _GLIBCXX20_CONSTEXPR - with 'constexpr' and remove implied 'inline' keyword. - * include/std/string (std::erase_if, std::erase): Likewise. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Use - wcslen(cs) instead of sizeof(cs)-1. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/20_util/unique_ptr/modifiers/93562.cc: Define a - separate deleter for array cases. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc - (Cvt::do_length): Fix signature to override virtual function in - base. - * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc: - (Cvt::do_length): Likewise. - * testsuite/27_io/basic_filebuf/underflow/char/1.cc - (NoconvCvt::do_in): Likewise. - * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc - (checksumcvt::do_length): Likewise. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/22_locale/time_get/get/char/3.cc: Add parentheses to - x == y|z expression. - * testsuite/22_locale/time_get/get/wchar_t/3.cc: Likewise. - * testsuite/28_regex/algorithms/regex_match/multiline.cc: - Likewise. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_uninitialized.h (uninitialized_copy) - (uninitialized_fill, uninitialized_fill_n): Use pragmas to - suppress -Wclass-memaccess warnings. - -2025-10-01 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/std/memory/polymorphic/copy.cc: Fix spelling of - typedef. - -2025-09-30 François Dumont <frs.dumont@gmail.com> - - * include/std/inplace_vector: - (std::swap(inplace_vector<>&, inplace_vector<>&)): Remove the duplicated - implementation at std namespace level. Keep the friend inline one. - (inplace_vector<Tp, 0>::assign(initializer_list<>)): Add missing return - statement. - -2025-09-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/20_util/allocator_traits/members/allocate_hint.cc: - Value-initialize variables to avoid -Wmaybe-uninitialized - warning. - * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc: - Likewise. - * testsuite/20_util/duration/114244.cc: Likewise. - * testsuite/20_util/duration/io.cc: Likewise. - -2025-09-27 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/deque.tcc (deque::_M_shrink_to_fit): Cast - difference_type to size_type to avoid -Wsign-compare warning. - * include/std/spanstream (basic_spanbuf::seekoff): Cast - streamoff to size_t to avoid -Wsign-compare warning. - -2025-09-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc: - Fix assignment used instead of equality comparison. - * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/char/stoull.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc: - Likewise. - * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc: - Likewise. - * testsuite/23_containers/map/cons/from_range.cc: Fix is_equal - function and expected value of comparison functions after - construction. - * testsuite/23_containers/multimap/cons/from_range.cc: Likewise. - * testsuite/23_containers/multiset/cons/from_range.cc: Likewise. - * testsuite/23_containers/set/cons/from_range.cc: Likewise. - * testsuite/23_containers/unordered_map/cons/from_range.cc: Fix - is_equal functions. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - Likewise. - * testsuite/23_containers/unordered_multiset/cons/from_range.cc: - Likewise. - * testsuite/23_containers/unordered_set/cons/from_range.cc: - Likewise. - * testsuite/25_algorithms/minmax/constrained.cc: Fix assignment - used instead of equality comparison. - * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: - Likewise. - -2025-09-26 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_algobase.h (__search, __is_permutation): - Reuse predicate instead of creating a new one each time. - * include/bits/stl_algo.h (__is_permutation): Likewise. - -2025-09-26 Jonathan Wakely <jwakely@redhat.com> - - * include/std/deque (erase_if): Move predicate instead of - wrapping with std::ref. - (erase): Forward to erase_if. - * include/std/inplace_vector (erase_if, erase): Likewise. - * include/std/string (erase_if, erase): Likewise. - * include/std/vector (erase_if, erase): Likewise. - -2025-09-26 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/predefined_ops.h (equal_to, less): Define aliases - for std::equal_to<void> and std::less<void>. - (bind1st, bind2nd, not1, __equal_to): New object generator - functions for adapting predicates. - (__iter_less_iter, __iter_less_val, __iter_comp_val) - (__val_less_iter, __val_comp_iter, __iter_equal_to_iter) - (__iter_equal_to_val, __iter_comp_iter, __negate): Remove all - object generator functions and the class templates they return. - * include/bits/stl_algo.h (__move_median_to_first, __find_if_not) - (__find_if_not_n, __search_n_aux, find_end, find_if_not) - (__remove_copy_if, remove_copy, remove_copy_if, remove) - (remove_if, __adjacent_find, __unique, unique, __unique_copy) - (__unique_copy_1, __stable_partition_adaptive, stable_partition) - (__heap_select, __partial_sort_copy, partial_sort_copy) - (__unguarded_linear_insert, __insertion_sort) - (__unguarded_insertion_sort, __unguarded_partition) - (lower_bound, __upper_bound, upper_bound, __equal_range) - (equal_range, binary_search, __move_merge_adaptive) - (__move_merge_adaptive_backward, __merge_adaptive_resize) - (__merge_without_buffer, inplace_merge, __move_merge) - (__includes, includes, __next_permutation, next_permutation) - (__prev_permutation, prev_permutation, __replace_copy_if) - (replace_copy, replace_copy_if, __is_sorted_until) - (is_sorted_until, __minmax_element, minmax_element, minmax) - (is_permutation, __is_permutation, find, find_if, adjacent_find) - (count, count_if, search, search_n, unique_copy, partial_sort) - (nth_element, sort, __merge, merge, stable_sort, __set_union) - (set_union, __set_intersection, set_intersection) - (__set_difference, set_difference, __set_symmetric_difference) - (set_symmetric_difference, __min_element, min_element) - (__max_element, max_element, min, max): Use direct predicates - instead of __iter_equal_to_iter, __iter_comp_iter, and - __iter_less_iter, __negate etc. Dereference iterators when - invoking predicates. - * include/bits/stl_algobase.h (__lexicographical_compare_impl) - (__lexicographical_compare::__lc, __lower_bound, lower_bound) - (lexicographical_compare, __mismatch, mismatch, __find_if) - (__count_if, __remove_if, __search, __is_permutation) - (is_permutation, search): Likewise. - * include/bits/stl_function.h (equal_to<void>, less<void>): - Define transparent comparison functions for C++98 and C++11. - * include/bits/stl_heap.h (__is_heap_until, __is_heap) - (__push_heap, push_heap, __adjust_heap, pop_heap, make_heap) - (sort_heap, is_heap_until, is_heap): Likewise. - * include/std/deque (erase_if): Remove call to __pred_iter. - (erase): Replace __iter_equals_val with __equal_to. - * include/std/inplace_vector (erase_if, erase): Likewise. - * include/std/string (erase_if, erase): Likewise. - * include/std/vector (erase_if, erase): Likewise. - -2025-09-26 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/122062 - * include/bits/random.tcc (__detail::__normalize): Use void cast - for operands of comma operator. - (piecewise_linear_distribution): Likewise. - * testsuite/26_numerics/random/piecewise_linear_distribution/cons/122062.cc: - New test. - -2025-09-25 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__static_quotient): New overload. - -2025-09-25 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_algo.h: Check robust_nonmodifying_seq_ops - feature test macro instead of checking __cplusplus value. Add - comment to another __cplusplus check. - * include/bits/stl_algobase.h: Add comment to #endif. - -2025-09-25 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/79147 - PR libstdc++/103650 - * include/Makefile.am (c++config.h): Adjust sed command to - comment out STDC_HEADERS macro. - * include/Makefile.in: Regenerate. - -2025-09-25 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/layouts/empty.cc: Fix indent. - * testsuite/23_containers/mdspan/layouts/mapping.cc - (test_stride_1d): Fix test. - (test_stride_2d): Rewrite using a struct. - (test_stride_3d): Ditto. - (has_static_is_exhaustive): New concept. - (test_mapping_properties): Update test. - -2025-09-24 Luc Grosheintz <luc.grosheintz@gmail.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/20_util/function_objects/not_fn/nttp.cc: Move - test of feature testing macro to version.cc - * testsuite/20_util/function_objects/not_fn/version.cc: New test. - -2025-09-24 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__formatter_duration::_S_spec_for_tp): - Extracted from defition of formatter<sys_time>::__defSpec. - (formatter<chrono::sys_time<_Duration>, _CharT>::parse): Simplify - condition in if contexpr. - (formatter<chrono::sys_time<_Duration>, _CharT>::__stream_insertable): - Remove. - (formatter<chrono::sys_time<_Duration>, _CharT>::__defSpec) - (formatter<chrono::local_time<_Duration>, _CharT>::__defSpec): - Compute using __formatter_duration::_S_spec_for_tp. - (forrmatter<chrono::sys_time<_Duration>, _CharT>::parse): Check if - parse _M_chrono_spec - * testsuite/std/time/format/empty_spec.cc: Extend tests for floating - point and other non-streamable durations (years). - -2025-09-24 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_parse): - Replace _ParseContext with basic_format_parse_context<_CharT> and - make it non-template. - (__formatter_duration::_M_parse): Replace _ParseContext with - basic_format_parse_context<_CharT> and remove unused default - argument. - -2025-09-24 Patrick Palka <ppalka@redhat.com> - - * testsuite/17_intro/names.cc: Undefine 'u' on s390*-linux. - -2025-09-23 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/random.h: Include <bits/ios_base.h> instead of - <iomanip>. Change preprocessor checks to use internal feature - test macro. - (philox_engine): Reword doxygen comments. Use typename instead - of class in template parameter lists. Reformat and adjust - whitespace. - (philox_engine::_If_seed_seq): Replace alias template with - __is_seed_seq variable template. - (philox_engine::philox_engine(result_type)): Define inline. - (philox_engine::seed(result_type), philox_engine::set_counter) - (philox_engine::operator(), philox_engine::discard): Likewise. - (operator==): Define as defaulted. - (operator<<): Reuse widened char. - * include/bits/random.tcc: Reformat and adjust whitespace. - (philox_engine::_M_philox): Use std::array copy constructor and - std::array::fill instead of looping. - * testsuite/26_numerics/random/philox4x32.cc: Gate test on - feature test macro. Add static_assert to check typedef. - * testsuite/26_numerics/random/philox4x64.cc: Likewise. - * testsuite/26_numerics/random/philox_engine/cons/copy.cc: Add - VERIFY assertions to check copies are equal. Test different - seeds. - * testsuite/26_numerics/random/philox_engine/cons/default.cc: - Add VERIFY assertions to check construction results. - * testsuite/26_numerics/random/philox_engine/cons/seed.cc: - Likewise. - * testsuite/26_numerics/random/philox_engine/operators/equal.cc: - Also test inequality. - * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: - Remove redundant include and return. - * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: - Check values of all constants. - * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: - Check typedefs are correct. - * testsuite/26_numerics/random/philox_engine/cons/119794.cc: - Removed. - * testsuite/26_numerics/random/philox_engine/cons/seed_seq.cc: - Removed. - * testsuite/26_numerics/random/philox_engine/operators/inequal.cc: - Removed. - * testsuite/26_numerics/random/philox_engine/requirements/constexpr_data.cc: - Removed. - * testsuite/26_numerics/random/philox_engine/requirements/constexpr_functions.cc: - Removed. - * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error - line number. - -2025-09-23 1nfocalypse <1nfocalypse@protonmail.com> - - PR libstdc++/119794 - * include/bits/random.h (philox_engine): Define. - * include/bits/random.tcc (philox_engine): Define member - functions. - * include/bits/version.def (philox_engine): New macro. - * include/bits/version.h: Regenerated. - * include/std/random: Define __glibcxx_want_philox_engine and - include <bits/version.h>. - * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error - line number. - * testsuite/26_numerics/random/philox4x32.cc: New test. - * testsuite/26_numerics/random/philox4x64.cc: New test. - * testsuite/26_numerics/random/philox_engine/cons/119794.cc: New test. - * testsuite/26_numerics/random/philox_engine/cons/copy.cc: New test. - * testsuite/26_numerics/random/philox_engine/cons/default.cc: New test. - * testsuite/26_numerics/random/philox_engine/cons/seed.cc: New test. - * testsuite/26_numerics/random/philox_engine/cons/seed_seq.cc: New test. - * testsuite/26_numerics/random/philox_engine/operators/equal.cc: New test. - * testsuite/26_numerics/random/philox_engine/operators/inequal.cc: New test. - * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: New test. - * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: New test. - * testsuite/26_numerics/random/philox_engine/requirements/constexpr_data.cc: New test. - * testsuite/26_numerics/random/philox_engine/requirements/constexpr_functions.cc: New test. - * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: New test. - -2025-09-23 Ben Wu <soggysocks206@gmail.com> - - PR libstdc++/118087 - * include/bits/deque.tcc: Use _Temporary_value in - _M_emplace_aux. - * include/bits/stl_deque.h: Introduce _Temporary_value. - * testsuite/23_containers/deque/modifiers/emplace/118087.cc: - New test. - -2025-09-23 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121940 - * include/bits/funcwrap.h (__polyfunc::__deduce_funcref): Return void - for ill-formed constructs. - (function_ref(nontype_t<__f>, _Tp&&)): Constrain on __deduce_funcref - producing non-void results. - * testsuite/20_util/function_ref/deduction.cc: Negative tests. - -2025-09-23 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/79147 - * include/Makefile.am (c++config.h): Adjust sed command to - comment out all PACKAGE_XXX macros and to avoid adjusting - PACKAGE_VERSION twice. - * include/Makefile.in: Regenerate. - -2025-09-23 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (formatter<chrono::utc_time, _CharT>): - (formatter<chrono::gps_time<_Duration>, _CharT>) - (formatter<chrono::tai_time<_Duration>, _CharT): Remove - __formatter_chrono base class. - -2025-09-22 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h(__formatter_chrono::_M_parse): Update - needed flags for %g, %G, %V, %U, %W. - (__formatter_chrono::_M_format_to): Change how %V is handled. - (__formatter_chrono::_M_g_G): Merged into _M_g_G_V. - (__formatter_chrono::_M_g_G_V): Reworked from _M_g_G. - (__formatter_chrono::_M_U_V_W): Changed into _M_U_V. - (__formatter_chrono::_M_U_W): Reworked implementation. - * testsuite/std/time/year_month_day/io.cc: New tests. - -2025-09-22 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/106658 - * include/bits/stl_construct.h (std::start_lifetime_as_array) - (std::start_lifetime_as): Moved from std/memory, with update - to guard macros. - * include/std/memory (std::start_lifetime_as_array) - (std::start_lifetime_as): Moved to bits/stl_construct.h. - -2025-09-19 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119744 - * include/bits/version.def: Redefine __cpp_lib_bind_front etc. - * include/bits/version.h: Ditto. - * include/std/functional: Add new bind_front etc. overloads - * testsuite/20_util/function_objects/bind_back/1.cc: - Check plumbing better - * testsuite/20_util/function_objects/bind_back/nttp.cc: New test. - * testsuite/20_util/function_objects/bind_back/nttp_neg.cc: New test. - * testsuite/20_util/function_objects/bind_front/1.cc: - Check plumbing better - * testsuite/20_util/function_objects/bind_front/nttp.cc: New test. - * testsuite/20_util/function_objects/bind_front/nttp_neg.cc: New test. - * testsuite/20_util/function_objects/not_fn/nttp.cc: New test. - * testsuite/20_util/function_objects/not_fn/nttp_neg.cc: New test. - * testsuite/20_util/headers/functional/synopsis.cc: New decls. - -2025-09-19 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h: Remove unused <iomanip> header. - (operator<<): Constrain overload for chrono::local_time. - * testsuite/std/time/clock/local/io.cc: Check constraints. - -2025-09-19 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.def (start_lifetime_as): Move adjacent to - other C++23 macros. - * include/bits/version.h: Regenerate. - -2025-09-18 Jakub Jelinek <jakub@redhat.com> - - PR c++/106658 - * include/bits/version.def: Implement C++23 P2590R2 - Explicit - lifetime management. - (start_lifetime_as): New. - * include/bits/version.h: Regenerate. - * include/std/memory (std::start_lifetime_as, - std::start_lifetime_as_array): New function templates. - * src/c++23/std.cc.in (std::start_lifetime_as, - std::start_lifetime_as_array): Export. - * testsuite/std/memory/start_lifetime_as/start_lifetime_as.cc: New test. - -2025-09-17 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/111861 - * include/bits/ranges_algo.h (ranges::unique_copy): When - initializing a value type object from *iter, use - direct-initialization and don't use a deduced type. - (ranges::push_heap): Use direct-initialization when initializing - a value type object from ranges::iter_move. - (ranges::max): As in ranges::unique_copy. - * include/bits/ranges_util.h (ranges::min): Likewise. - -2025-09-17 Patrick Palka <ppalka@redhat.com> - - * testsuite/20_util/bind/dangling_ref.cc: Compile with - -Wsystem-headers. - * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. - * testsuite/20_util/unique_ptr/lwg4148.cc: Likewise. - * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: - Likewise. - * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: - Likewise. - -2025-09-16 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (__detail::__repeated_tuple): Use - __make_tuple helper alias directly, instead of doing overload - resolution on std::tuple_cat. - * include/std/tuple (__make_tuple_impl): Remove. - (__do_make_tuple): Replace recursion with _Index_tuple and pack - expansion. - (__make_tuple): Adjust to new __do_make_tuple definition. - (__combine_tuples<tuple<T1s...>, tuple<T2s...>, Rem...>): Replace - with a partial specialization for exactly two tuples and a - partial specialization for three or more tuples. - -2025-09-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121913 - * include/bits/ranges_algo.h (__rotate_fn::operator()): Use - auto_value_t<_Iter> instead of deduced type. - -2025-09-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121956 - * include/std/ranges (adjacent_view::_Iterator::value_type): - Always define as std::tuple<T, N>, not std::pair<T, T>. - * testsuite/std/ranges/adaptors/adjacent/1.cc: Check value type - of views::pairwise. - -2025-09-16 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_uninitialized.h (uninitialized_move) - (uninitialized_move_n): Replace _GLIBCXX_MAKE_MOVE_ITERATOR with - std::make_move_iterator. - -2025-09-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119820 - * include/bits/ranges_algo.h (__shuffle_fn): Use - ranges::distance to get difference type value to add to - iterator. - * include/std/format (__formatter_str::_M_format_range): - Use ranges::next to increment iterator by a size_t value. - -2025-09-13 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/121917 - * include/bits/ranges_algo.h (__shuffle_fn::operator()): Only - consider the two-at-a-time PRNG optimization if the range is - sized. - * testsuite/25_algorithms/shuffle/constrained.cc (test03): New - test. - -2025-09-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121913 - * include/bits/ranges_algo.h (__rotate_fn::operator()): Use - ranges::iter_move(it) instead of std::move(*it). - * testsuite/25_algorithms/rotate/121913.cc: New test. - -2025-09-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121890 - * include/bits/ranges_algo.h (ranges::rotate, ranges::shuffle) - (__insertion_sort, __unguarded_partition_pivot, __introselect): - Use ranges::next to advance iterators. Use local variables in - rotate to avoid duplicate expressions. - (ranges::push_heap, ranges::pop_heap, ranges::partial_sort) - (ranges::partial_sort_copy): Use ranges::prev. - (__final_insertion_sort): Use iter_difference_t<Iter> - for operand of operator+ on iterator. - * include/bits/ranges_base.h (ranges::advance): Use iterator's - difference_type for all iterator arithmetic. - * include/bits/stl_algo.h (__search_n_aux, __rotate) - (__insertion_sort, __unguarded_partition_pivot, __introselect) - (__final_insertion_sort, for_each_n, random_shuffle): Likewise. - Use local variables in __rotate to avoid duplicate expressions. - * include/bits/stl_algobase.h (__fill_n_a, __lc_rai::__newlast1): - Likewise. - * include/bits/stl_heap.h (push_heap): Likewise. - (__is_heap_until): Add static_assert. - (__is_heap): Convert distance to difference_type. - * include/std/functional (boyer_moore_searcher::operator()): Use - iterator's difference_type for iterator arithmetic. - * testsuite/util/testsuite_iterators.h - (random_access_iterator_wrapper): Add deleted overloads of - operators that should be called with difference_type. - * testsuite/24_iterators/range_operations/advance.cc: Use - ranges::next. - * testsuite/25_algorithms/heap/constrained.cc: Use ranges::next - and ranges::prev. - * testsuite/25_algorithms/nth_element/58800.cc: Use std::next. - * testsuite/25_algorithms/nth_element/constrained.cc: Use - ptrdiff_t for loop variable. - * testsuite/25_algorithms/nth_element/random_test.cc: Use - iterator's difference_type instead of int. - * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc: - Use std::next. - * testsuite/25_algorithms/partial_sort/constrained.cc: Use - ptrdiff_t for loop variable. - * testsuite/25_algorithms/partial_sort/random_test.cc: Use - iterator's difference_type instead of int. - * testsuite/25_algorithms/partial_sort_copy/constrained.cc: - Use ptrdiff_t for loop variable. - * testsuite/25_algorithms/partial_sort_copy/random_test.cc: - Use iterator's difference_type instead of int. - * testsuite/std/ranges/adaptors/drop.cc: Use ranges::next. - * testsuite/25_algorithms/fill_n/diff_type.cc: New test. - * testsuite/25_algorithms/lexicographical_compare/diff_type.cc: - New test. - -2025-09-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117276 - * include/pstl/parallel_backend_tbb.h (__func_task::finalize): - Make deallocation unconditional. - -2025-09-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121046 - * include/debug/bitset (bitset(const CharT*, ...)): Add - constraints on CharT type. - -2025-09-12 Jonathan Wakely <jwakely@redhat.com> - - * config/cpu/generic/atomicity_mutex/atomicity.h - (__exchange_and_add): Use const_cast to remove volatile. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/71945 - * include/bits/shared_ptr_base.h (_Sp_counted_base::_S_chk): - Trap if a reference count cannot be incremented any higher. - (_Sp_counted_base::_M_add_ref_copy): Use _S_chk. - (_Sp_counted_base::_M_add_weak_ref): Likewise. - (_Sp_counted_base<_S_mutex>::_M_add_ref_lock_nothrow): Likewise. - (_Sp_counted_base<_S_atomic>::_M_add_ref_lock_nothrow): Likewise. - (_Sp_counted_base<_S_single>::_M_add_ref_copy): Use _S_chk. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/71945 - * include/bits/shared_ptr_base.h - (_Sp_counted_base::_M_get_use_count): Cast _M_use_count to - unsigned before returning as long. - (_Sp_counted_base<_S_single>::_M_add_ref_copy): Use atomic - helper function to adjust ref count using unsigned arithmetic. - (_Sp_counted_base<_S_single>::_M_weak_release): Likewise. - (_Sp_counted_base<_S_single>::_M_get_use_count): Cast - _M_use_count to unsigned before returning as long. - (_Sp_counted_base<_S_single>::_M_add_ref_lock_nothrow): Use - _M_add_ref_copy to do increment using unsigned arithmetic. - (_Sp_counted_base<_S_single>::_M_release): Use atomic helper and - _M_weak_release to do decrements using unsigned arithmetic. - (_Sp_counted_base<_S_mutex>::_M_release): Add comment. - (_Sp_counted_base<_S_single>::_M_weak_add_ref): Remove - specialization. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121148 - * config/cpu/generic/atomicity_mutex/atomicity.h - (__exchange_and_add): Call __exchange_and_add_single. - * include/ext/atomicity.h (__exchange_and_add_single): Use an - unsigned type for the addition. - * libsupc++/Makefile.am (atomicity.o): Compile with -fwrapv. - * libsupc++/Makefile.in: Regenerate. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/iterator_concepts.h (_IterMove::_S_noexcept) - (_IterSwap::_S_noexcept): Change constexpr to consteval. - * include/bits/ranges_base.h (_Begin::_S_noexcept) - (_End::_S_noexcept, _RBegin::_S_noexcept, _REnd::_S_noexcept) - (_Size::_S_noexcept, _Empty::_S_noexcept, _Data::_S_noexcept): - Likewise. - * include/std/concepts (_Swap::_S_noexcept): Likewise. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ranges_base.h (__detail::__to_unsigned_like) - (__access::__possible_const_range, __access::__as_const) - (__distance_fn::operator(), __next_fn::operator()) - (__prev_fn::operator()): Add always_inline attribute. - (_Begin::operator(), _End::operator(), _RBegin::operator()) - (_REnd::operator(), _Size::operator(), _SSize::operator()) - (_Empty::operator(), _Data::operator(), _SSize::operator()): - Likewise. Move nodiscard attribute to start of declaration. - -2025-09-11 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/shared_ptr_base.h (__weak_ptr): Avoid calling - lock() when converting or assigning a weak_ptr<Derived> to - a weak_ptr<Base> in case Base is not a virtual base of Derived. - This logic is centralized in _S_safe_upcast, called by the - various converting constructors/assignment operators. - (_S_safe_upcast): New helper function. - * testsuite/20_util/weak_ptr/cons/virtual_bases.cc: New test. - -2025-09-11 Jonathan Wakely <jwakely@redhat.com> - - * include/std/syncstream: Remove trailing whitespace. - -2025-09-11 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/year_month_day/io.cc: Additional tests. - -2025-09-10 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unique_ptr.h: Remove blank line. - -2025-09-10 Jonathan Wakely <jwakely@redhat.com> - - * include/std/functional (boyer_moore_searcher::operator()): Add - static_assert. - (boyer_moore_horspool_searcher::operator()): Likewise. - * testsuite/20_util/function_objects/121782.cc: New test. - -2025-09-10 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (_ExtentsStorage::_Base): New name for - _S_base. - (_ExtentsStorage::_Storage): New name for _S_storage. - (extents::_Storage): New name for _S_storage. - (layout_stride::mapping::_Strides): New name for - _S_stries_t. - * testsuite/23_containers/mdspan/class_mandate_neg.cc: Update - test to the new error message. - -2025-09-10 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/span (__integral_constant_like): Use - remove_cvref_t before checking if _Tp::value is boolean. - * testsuite/23_containers/mdspan/extents/misc.cc: Update test. - * testsuite/23_containers/mdspan/mdspan.cc: Ditto. - * testsuite/23_containers/span/deduction.cc: Ditto. - -2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121765 - * include/std/format (__format::_Drop_iter): Define. - (_Iter_for_t::type): Change alias to _Drop_iter. - (__format::__format_padded): Return __fc.out() for - _Drop_iter. - * testsuite/std/format/pr121765.cc: New test. - -2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/status.html: Regenerate. - * doc/xml/manual/status_cxx2020.xml: Add more entires. - -2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/index.html: Regenerated. - * doc/html/manual/index.html: Regenerated. - * doc/html/manual/intro.html: Regenerated. - * doc/html/manual/status.html: Regenatered. - * doc/xml/manual/status_cxx2020.xml: Add iso.2020.specific - section with atomic_ref documentation. - -2025-09-09 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (_CwFixedValue::_S_type): Rename to - __type. - (constant_wrapper): Rename template parameter in declaration to - match later definition. - -2025-09-09 Arsen Arsenović <arsen@aarsen.me> - - * doc/xml/manual/using_exceptions.xml: Replace "Tunables" link - with one that does not have an anchor. - * doc/html/manual/using_exceptions.html: Regenerate. - -2025-09-08 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (constant_wrapper): Rename template - parameter to avoid BADNAME. - -2025-09-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120698 - * doc/xml/manual/configure.xml: Do not claim that vtv is enabled - by default. - * doc/html/manual/configure.html: Regenerate. - -2025-09-08 Nathan Myers <ncm@cantrip.org> - - * src/c++20/Makefile.in: Mention syncbuf.lo. - -2025-09-08 Nathan Myers <ncm@cantrip.org> - - * include/std/syncstream: (syncbuf<>::__mutex) Remove _S_get_mutex, - use extern function instead. - * src/c++20/syncbuf.cc: Define global __syncbuf_get_mutex. - * src/c++20/Makefile.am: Mention syncbuf.cc. - * src/c++20/Makefile.in: Regenerate. - * config/abi/pre/gnu.ver: Mention mangled __syncbuf_get_mutex. - -2025-09-08 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/121827 - * include/precompiled/extc++.h: Don't include ext/cast.h which is an - internal header. - * include/ext/pointer.h: Include bits/c++config.h before - #if _GLIBCXX_HOSTED. - -2025-09-08 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/xml/manual/using_exceptions.xml: Update link to "Tunables" - section in the Glibc manual. - * doc/html/manual/using_exceptions.html: Regenerate. - -2025-09-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/span (__integral_constant_like): Allow the member - `value` of a constant wrapping type to be a const reference of - an integer. - * testsuite/23_containers/mdspan/extents/misc.cc: Add test for - cw and constant_wrapper. - * testsuite/23_containers/mdspan/mdspan.cc: Ditto. - * testsuite/23_containers/span/deduction.cc: Ditto. - -2025-09-08 Luc Grosheintz <luc.grosheintz@gmail.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/version.def (constant_wrapper): Add. - * include/bits/version.h: Regenerate. - * include/std/type_traits (_CwFixedValue): New class. - (_IndexSequence): New struct. - (_BuildIndexSequence): New struct. - (_ConstExprParam): New concept. - (_CwOperators): New struct. - (constant_wrapper): New struct. - (cw): New global constant. - * src/c++23/std.cc.in (constant_wrapper): Add. - (cw): Add. - * testsuite/20_util/constant_wrapper/adl.cc: New test. - * testsuite/20_util/constant_wrapper/ex.cc: New test. - * testsuite/20_util/constant_wrapper/generic.cc: New test. - * testsuite/20_util/constant_wrapper/instantiate.cc: New test. - * testsuite/20_util/constant_wrapper/op_comma_neg.cc: New test. - * testsuite/20_util/constant_wrapper/version.cc: New test. - * testsuite/20_util/constant_wrapper/other_wrappers.cc: New file. - -2025-09-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/121804 - * include/std/ranges (join_view::_Iterator::_M_get_inner): - Mark noexcept. - * testsuite/std/ranges/adaptors/join.cc (test16): New test. - -2025-09-05 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/status.html: Regenerate. - * doc/xml/manual/status_cxx2011.xml: Add entry for bad_function_call. - * doc/xml/manual/status_cxx2017.xml: Add entries for bad_any_cast - and nullptr_t output. Update entry for sf.cmath. Fix stable name for - mem.res. - -2025-09-05 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/status.html: Regenerate the file. - * doc/xml/manual/status_cxx2017.xml: Addd more entires. - -2025-09-04 Patrick Palka <ppalka@redhat.com> - - * include/std/ranges (join_view::_Iterator::_M_satisfy): - Adjust to handle non-std::optional _M_inner as per before LWG 3569. - (join_view::_Iterator::_M_get_inner): New. - (join_view::_Iterator::_M_inner): Don't wrap in std::optional if - the iterator is forward. Initialize. - (join_view::_Iterator::operator*): Use _M_get_inner instead - of *_M_inner. - (join_view::_Iterator::operator++): Likewise. - (join_view::_Iterator::iter_move): Likewise. - (join_view::_Iterator::iter_swap): Likewise. - -2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/binders.h (_Binder::_S_call): Make public. - * include/std/ranges (ranges::_Partial<_Adaptor, _Args...>): - Replace tuple<_Args...> with _Bind_back_t<_Adaptor, _Args...>. - (ranges::_Partial<_Adaptor, _Arg>): Remove. - -2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/Makefile.am: Add bits/binders.h - * include/Makefile.in: Add bits/binders.h - * include/std/functional (std::_Indexed_bound_arg, std::_Binder) - (std::__make_bound_args, std::_Bind_front_t, std::_Bind_back_t): - Moved to bits/binders.h file, that is now included. - * include/bits/binders.h: New file. - -2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/functional: (std::_Indexed_bound_arg): Fixed - indentation. - (__Bound_arg_storage::_S_apply_front) - (__Bound_arg_storage::_S_apply_front): Merged into _S_apply. - (__Bound_arg_storage::_S_apply): Merged above, add _Back template - parameter, replace std::invoke with std::__invoke. - (std::_Bind_front): Renamed to std::_Binder and add _Back - template parameter. - (std::_Binder): Renamed from std::_Bind_front. - (_Binder::_Result_t, _Binder::_S_noexcept_invoke): Define. - (_Binder::operator()): Use _Result_t and _S_noexcept_invoke. - (_Binder::_S_call): Handle zero args specially, replace std::invoke - with std::__invoke. - (std::_Bind_front_t, std::_Bind_back_t): Defined in terms - of _Binder. - (std::_Bind_back): Merged into _Binder. - * testsuite/20_util/function_objects/bind_back/1.cc: New tests. - * testsuite/20_util/function_objects/bind_back/111327.cc: Updated - error messages. - * testsuite/20_util/function_objects/bind_front/1.cc: New tests. - * testsuite/20_util/function_objects/bind_front/111327.cc: Updated - error messages. - -2025-09-04 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (layout_left::mapping::operator()): Add - _GLIBCXX_RESOLVE_LIB_DEFECTS marker for 4314. - (layout_left::mapping::operator()): Ditto. - (layout_stride::mapping::operator()): Ditto. - -2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/html/manual/status.html: Regenerated the file. - * doc/xml/manual/status_cxx1998.xml: Add stable name to - each entry. - -2025-09-03 Yihan Wang <yronglin777@gmail.com> - - * include/std/expected (expected(U&&)): Add missing constraint - as per LWG 4222. - * testsuite/20_util/expected/lwg4222.cc: New test. - -2025-09-03 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121745 - * include/bits/stl_pair.h (get): Use forward instead of move in - std::get<T> overloads for rvalue pairs. - * testsuite/20_util/pair/astuple/get_by_type.cc: Check all value - categories and cv-qualification. - -2025-09-03 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/110853 - * include/bits/stl_pair.h [C++20] (pair(const T1&, const T2&)): - Use std::type_identity_t<T1> for first parameter. - * testsuite/20_util/pair/cons/110853.cc: New test. - -2025-09-03 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.def (chrono_cxx20): Define. - * include/bits/version.h: Regenerate. - * include/std/chrono: Check __glibcxx_chrono_cxx20 instead of - __cpp_lib_chrono for C++20 features that don't require the new - std::string ABI and/or can be used for freestanding. - * src/c++20/clock.cc: Adjust preprocessor condition. - -2025-09-02 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/bits/utility.h (_Index_tuple): Move to <type_traits>. - (_Build_index_tuple): Ditto. - * include/std/type_traits (_Index_tuple): Ditto. - (_Build_index_tuple): Ditto. - -2025-09-02 Tomasz Kamiński <tkaminsk@redhat.com> - - * libsupc++/compare (__cmp_cat::__literal_zero): Rename - from __unspec. - (__cmp_cat::__unspec): Rename to __literal_zero. - (operator==, operator<, operator>, operator<=, operator>=): - Replace __cmp_cat::__unspec to __cmp_cat::__literal_zero. - -2025-08-31 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/xml/manual/using_exceptions.xml: Update link to - Boost's "Exception-Safety" - * doc/html/manual/using_exceptions.html: Rebuild. - -2025-08-31 Jonathan Wakely <jwakely@redhat.com> - - * src/c++26/debugging.cc [_GLIBCXX_HAVE_SYS_PTRACE_H]: Include - <sys/types.h>. - (breakpoint) [__i386__ || __x86_64__]: Use "int 0x03" instead of - "int3". - -2025-08-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119670 - * acinclude.m4 (GLIBCXX_CHECK_DEBUGGING): Check for facilities - needed by <debugging>. - * config.h.in: Regenerate. - * configure: Regenerate. - * configure.ac: Use GLIBCXX_CHECK_DEBUGGING. - * include/Makefile.am: Add new header. - * include/Makefile.in: Regenerate. - * include/bits/version.def (debugging): Add. - * include/bits/version.h: Regenerate. - * include/precompiled/stdc++.h: Add new header. - * src/c++26/Makefile.am: Add new file. - * src/c++26/Makefile.in: Regenerate. - * include/std/debugging: New file. - * src/c++26/debugging.cc: New file. - * testsuite/19_diagnostics/debugging/breakpoint.cc: New test. - * testsuite/19_diagnostics/debugging/breakpoint_if_debugging.cc: - New test. - * testsuite/19_diagnostics/debugging/is_debugger_present.cc: New - test. - * testsuite/19_diagnostics/debugging/is_debugger_present-2.cc: - New test. - -2025-08-28 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/18_support/comparisons/categories/zero_neg.cc: New test. - -2025-08-28 Weslley da Silva Pereira <weslley.spereira@gmail.com> - - * include/std/complex (polar, __complex_sqrt, pow) - (__complex_pow_unsigned): Use explicit conversions from int to - the complex value_type. - -2025-08-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121046 - * include/std/bitset (bitset(const CharT*, ...)): Add - constraints on CharT type. - * testsuite/23_containers/bitset/lwg4294.cc: New test. - -2025-08-28 Tomasz Kamiński <tkaminsk@redhat.com> - - * libsupc++/compare (__cmp_cat::_Ord): Add unordered enumerator. - (__cmp_cat::_Ncmp): Remove. - (__cmp_cat::__ord, __cmp_cat::__make): Define. - (partial_ordering::partial_ordering(__cmp_cat::_Ncmp)): Remove. - (operator<=>(__cmp_cat::__unspec, partial_ordering)) - (partial_ordering::unordered): Replace _Ncmp with _Ord. - (std::partial_ordering, std::weak_ordering, std::strong_ordering): - Befriend __ord and __make helpers, remove friend declartions for - other orderings. - (__compare::__fp_weak_ordering): Remove unused __cat variable. - Simplify ordering conversions. - -2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> - - * libsupc++/compare - (operator<=>(__cmp_cat::__unspec, partial_ordering)): - Implement using _M_reverse. - -2025-08-27 Nathan Myers <ncm@cantrip.org> - - * include/std/chrono (gps_clock::now, tai_clock::now): Remove - inline definitions. - * src/c++20/clock.cc (gps_clock::now, tai_clock::now): New file - for out-of-line now() impls. - * src/c++20/Makefile.am: Mention clock.cc. - * src/c++20/Makefile.in: Regenerate. - * config/abi/pre/gnu.ver: add mangled now() symbols. - -2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> - - * libsupc++/compare (_Ncmp::_Unordered): Rename and change the value - to minimum value of signed char. - (_Ncomp::unordered): Renamed from _Unordered, the name is reserved - by partial_ordered::unordered. - (partial_ordering::_M_reverse()): Define. - (operator<=(partial_ordering, __cmp_cat::__unspec)) - (operator>=(__cmp_cat::__unspec, partial_ordering)): Implemented - in terms of negated _M_value. - (operator>=(partial_ordering, __cmp_cat::__unspec)) - (operator<=(__cmp_cat::__unspec, partial_ordering)): Directly - compare _M_value, as unordered value is negative. - (partial_ordering::unordered): Handle _Ncmp::unoredred rename. - * python/libstdcxx/v6/printers.py: Add -128 as integer value - for unordered, keeping 2 to preserve backward compatibility. - -2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/funcwrap.h (__polyfunc::_Mo_base): Reorder _M_manage - and _M_storage members. Make _M_destroy protected and remove friend - declaration. - * testsuite/20_util/copyable_function/call.cc: Add test for aliasing - base class. - * testsuite/20_util/move_only_function/call.cc: Likewise. - -2025-08-26 Patrick Palka <ppalka@redhat.com> - - * include/std/ranges (__detail::_CachedPosition): Remove - additional size constraint on the offset-based partial - specialization. - -2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/90192 - * include/bits/stl_vector.h (vector<T>::_M_fill_append): Declare. - (vector<T>::fill): Use _M_fill_append instead of _M_fill_insert. - * include/bits/vector.tcc (vector<T>::_M_fill_append): Define - (vector<T>::_M_fill_insert): Delegate to _M_fill_append when - elements are appended. - * testsuite/23_containers/vector/modifiers/moveable.cc: Updated - copycount for inserting at the end (appending). - * testsuite/23_containers/vector/modifiers/resize.cc: New test. - * testsuite/backward/hash_set/check_construct_destroy.cc: Updated - copycount, the hash_set constructor uses insert to fill buckets - with nullptrs. - -2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/move.h (std::__like_impl, std::__like_t): Make - available in c++11. - * include/std/functional (std::_Indexed_bound_arg) - (std::_Bound_arg_storage, std::__make_bound_args): Define. - (std::_Bind_front, std::_Bind_back): Use _Bound_arg_storage. - * testsuite/20_util/function_objects/bind_back/1.cc: Expand - test to cover cases of 0, 1, many bound args. - * testsuite/20_util/function_objects/bind_back/111327.cc: Likewise. - * testsuite/20_util/function_objects/bind_front/1.cc: Likewise. - * testsuite/20_util/function_objects/bind_front/111327.cc: Likewise. - -2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/stop_token (__variant::_Never_valueless_alt): Declare. - (__variant::_Never_valueless_alt<std::stop_token>) - (__variant::_Never_valueless_alt<std::stop_source>): Define. - * include/std/thread: (__variant::_Never_valueless_alt): Declare. - (__variant::_Never_valueless_alt<std::jthread>): Define. - -2025-08-21 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121496 - * acinclude.m4 (GLIBCXX_CHECK_PTHREAD_MUTEX_CLOCKLOCK): Do not - use _GLIBCXX_TSAN in _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK macro. - * configure: Regenerate. - -2025-08-21 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121496 - * include/std/mutex (__timed_mutex_impl::_M_try_wait_until): - Change preprocessor condition to use #if instead of #ifdef. - (recursive_timed_mutex::_M_clocklock): Likewise. - * testsuite/30_threads/timed_mutex/121496.cc: New test. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/120994 - * include/bits/version.def (aligned_accessor): Add. - * include/bits/version.h: Regenerate. - * include/std/mdspan (aligned_accessor): New class. - * src/c++23/std.cc.in (aligned_accessor): Add. - * testsuite/23_containers/mdspan/accessors/generic.cc: Add tests - for aligned_accessor. - * testsuite/23_containers/mdspan/accessors/aligned_neg.cc: New test. - * testsuite/23_containers/mdspan/version.cc: Add test for - __cpp_lib_aligned_accessor. - * testsuite/23_containers/mdspan/accessors/debug/aligned_access_neg.cc: New file. - * testsuite/23_containers/mdspan/accessors/debug/aligned_offset_neg.cc: New file. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/120994 - * include/bits/align.h (is_sufficiently_aligned): New function. - * include/bits/version.def (is_sufficiently_aligned): Add. - * include/bits/version.h: Regenerate. - * include/std/memory: Add __glibcxx_want_is_sufficiently_aligned. - * src/c++23/std.cc.in (is_sufficiently_aligned): Add. - * testsuite/20_util/headers/memory/version.cc: Add test for - __cpp_lib_is_sufficiently_aligned. - * testsuite/20_util/is_sufficiently_aligned/1.cc: New test. - -2025-08-21 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121374 - * include/std/limits (numeric_limits<__float128>::max_digits10): - Fix value. - * testsuite/18_support/numeric_limits/128bit.cc: Check value. - -2025-08-21 Jonathan Wakely <jwakely@redhat.com> - - PR c++/117294 - * testsuite/20_util/optional/cons/value_neg.cc: Prune additional - output for C++20 and later. - * testsuite/20_util/scoped_allocator/69293_neg.cc: Match - additional error for C++20 and later. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/bits/version.def (mdspan): Set value for C++26. - * include/bits/version.h: Regenerate. - * include/std/mdspan (dims): Add. - * src/c++23/std.cc.in (dims): Add. - * testsuite/23_containers/mdspan/extents/misc.cc: Add tests. - * testsuite/23_containers/mdspan/version.cc: Update test. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__static_prod): Delete. - (__fwd_partial_prods): Compute at compile-time in O(rank), not - O(rank**2). - (__rev_partial_prods): Ditto. - (__size): Inline __static_prod. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__fwd_partial_prods): Reduce size of the - array by 1 element. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__valid_static_extent): Replace - numeric_limits with __int_traits. - (extents::_S_ctor_explicit): Ditto. - (extents::__static_quotient): Ditto. - (layout_stride::mapping::mapping): Ditto. - (mdspan::size): Ditto. - * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: - Update test with additional diagnostics. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (extents::operator==): Replace loop with - pack expansion. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__all_static): New function. - (__mdspan::_StaticExtents::_S_is_dyn): Inline and eliminate. - (__mdspan::_ExtentsStorage::_S_is_dynamic): New method. - (__mdspan::_ExtentsStorage::_M_extent): Use _S_is_dynamic. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__fwd_prods): Relax condition for fully-dynamic - extents to cover (dyn, ..., dyn, X). - (__rev_partial_prods): Analogous for (X, dyn, ..., dyn). - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__all_dynamic): New function. - (__mdspan::_StaticExtents::_S_dynamic_index): Convert to method. - (__mdspan::_StaticExtents::_S_dynamic_index_inv): Ditto. - (__mdspan::_StaticExtents): New specialization for fully dynamic - extents. - (__mdspan::__fwd_prod): New constexpr if branch to avoid - instantiating __fwd_partial_prods. - (__mdspan::__rev_prod): Ditto. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__fwd_prod): Optimize - for rank <= 2. - (__mdspan::__rev_prod): Ditto. - (__mdspan::__size): Refactor to use a pre-computed product, not - a partial product. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__static_prod): New function. - (__mdspan::__fwd_partial_prods): Constexpr array of partial - forward products. - (__mdspan::__fwd_partial_prods): Same for reverse partial - products. - (__mdspan::__static_extents_prod): Delete function. - (__mdspan::__extents_prod): Renamed from __exts_prod and refactored. - include/std/mdspan (__mdspan::__fwd_prod): Compute as the - product of pre-computed static static and the product of dynamic - extents. - (__mdspan::__rev_prod): Ditto. - -2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::_StaticExtents): Extract non IndexType - related code from _ExtentsStorage. - (__mdspan::_ExtentsStorage): Use _StaticExtents. - (__mdspan::__static_extents): Return reference to NTTP of _StaticExtents. - (__mdspan::__contains_zero): New overload. - (__mdspan::__exts_prod, __mdspan::__static_quotient): Use span to avoid - copying __sta_exts. - -2025-08-19 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/104874 - * testsuite/24_iterators/random_access/string_vector_iterators.cc: - Call test6642. - -2025-08-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121476 - * include/bits/ranges_algo.h (__all_of_fn::operator()): - (__any_of_fn::operator(), __none_of_fn::operator()) - (__find_first_of_fn::operator(), __count_fn::operator()) - (__find_end_fn::operator(), __remove_if_fn::operator()) - (__remove_fn::operator(), __unique_fn::operator()) - (__is_sorted_until_fn::operator(), __is_sorted_fn::operator()) - (__lower_bound_fn::operator(), __upper_bound_fn::operator()) - (__equal_range_fn::operator(), __binary_search_fn::operator()) - (__is_partitioned_fn::operator(), __partition_point_fn::operator()) - (__minmax_fn::operator(), __min_element_fn::operator()) - (__includes_fn::operator(), __max_fn::operator()) - (__lexicographical_compare_fn::operator(), __clamp__fn::operator()) - (__find_last_fn::operator(), __find_last_if_fn::operator()) - (__find_last_if_not_fn::operator()): Add [[nodiscard]] attribute. - * include/bits/ranges_algobase.h (__equal_fn::operator()): - Add [[nodiscard]] attribute. - * include/bits/ranges_util.h (__find_fn::operator()) - (__find_if_fn::operator(), __find_if_not_fn::operator()) - (__mismatch_fn::operator(), __search_fn::operator()) - (__min_fn::operator(), __adjacent_find_fn::operator()): - Add [[nodiscard]] attribute. - * include/bits/stl_algo.h (std::min(initializer_list<T>)) - (std::min(initializer_list<T>, _Compare)) - (std::max(initializer_list<T>)) - (std::mmax(initializer_list<T>, _Compare)): Add _GLIBCXX_NODISCARD. - * testsuite/25_algorithms/min/constrained.cc: Silence nodiscard - warning. - * testsuite/25_algorithms/max/constrained.cc: Likewise. - * testsuite/25_algorithms/minmax/constrained.cc: Likewise. - * testsuite/25_algorithms/minmax_element/constrained.cc: Likewise. - -2025-08-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121313 - * include/bits/vector.tcc (vector::insert_range): Add check for - empty size. - * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: - New tests. - -2025-08-10 H.J. Lu <hjl.tools@gmail.com> - - * configure: Regenerated. - -2025-08-07 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/xml/manual/build_hacking.xml: Switch gcc.gnu.org installation - docs to https. - * doc/html/manual/appendix_porting.html: Regenerate. - -2025-08-05 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/121373 - * src/c++23/std.cc.in (std::ranges::iter_move, std::ranges::iter_swap): - Remove exports. - -2025-08-04 Jakub Jelinek <jakub@redhat.com> - hexne <printfne@gmail.com> - - PR libstdc++/121373 - * src/c++23/std.cc.in (std::ranges::shift_left, - std::ranges::shift_right): Only export for C++23 and later. - (std::ranges::fold_left_first_with_iter_result, - std::ranges::fold_left_with_iter_result): Export. - (std::byteswap): Export for C++23 and later. - (std::ranges::iter_move, std::ranges::iter_swap): Export. - (std::projected_value_t): Export for C++26 and later. - (std::out_ptr_t, std::inout_ptr_t): Export. - (std::ranges::iota_result): Export. - (std::regex_constants): Export a lot of constants. - (std::is_scoped_enum, std::is_scoped_enum_v): Export. - -2025-08-04 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121128 - * include/bits/indirect.h (indirect::operator*): - Cast __self to approparietly qualified indirect. - * testsuite/std/memory/indirect/access.cc: New test. - * testsuite/std/memory/polymorphic/access.cc: New test. - -2025-08-03 Jakub Jelinek <jakub@redhat.com> - - * src/c++23/std.cc.in (std::owner_equal, std::owner_hash): Export. - -2025-07-30 François Dumont <frs.dumont@gmail.com> - - * testsuite/std/time/format/data_not_present_neg.cc: Remove _GLIBCXX_USE_DUAL_ABI - check. - -2025-07-29 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/format/ranges/format_kind.cc: New test. - -2025-07-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/102181 - * include/bits/stl_iterator_base_funcs.h (distance, advance): - Check C++20 iterator concepts and handle appropriately. - (__detail::__iter_category_converts_to_concept): New concept. - (__detail::__promotable_iterator): New concept. - * testsuite/24_iterators/operations/cxx20_iterators.cc: New - test. - -2025-07-28 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119742 - * include/debug/bitset: Add new ctor. - -2025-07-28 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan: Small stylistic adjustments. - -2025-07-28 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/accessors/generic.cc: Refactor - test_ctor. - -2025-07-28 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121196 - * include/std/inplace_vector (std::erase): Provide default argument - for _Up parameter. - * testsuite/23_containers/inplace_vector/erasure.cc: Add test for - using braces-init-list as arguments to erase_if and use function - to verify content of inplace_vector - -2025-07-25 Tuur Martens <tuurmartens4@gmail.com> - - * include/bits/unordered_map.h: Rectify referencing of - non-existent type. - -2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> - - PR c++/117294 - PR c++/113854 - * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust - diagnostics. - * testsuite/20_util/expected/illformed_neg.cc: Likewise. - * testsuite/20_util/optional/monadic/or_else_neg.cc: Likewise. - * testsuite/23_containers/array/creation/3_neg.cc: Likewise. - * testsuite/24_iterators/range_generators/lwg3900.cc: Likewise. - * testsuite/29_atomics/atomic/requirements/types_neg.cc: - Likewise. - * testsuite/30_threads/stop_token/stop_callback/invocable_neg.cc: - Likewise. - * testsuite/30_threads/stop_token/stop_callback/destructible_neg.cc: - Likewise. - * testsuite/std/format/arguments/args_neg.cc: Likewise. - * testsuite/std/format/string_neg.cc: Likewise. - -2025-07-24 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/104874 - * testsuite/24_iterators/random_access/string_vector_iterators.cc: - Reworked. - -2025-07-24 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/21_strings/basic_string/cons/from_range.cc: Replace - test_constexpr with test_ranges inside static_assert. - * testsuite/21_strings/basic_string/modifiers/append/append_range.cc: - Likewise. - * testsuite/21_strings/basic_string/modifiers/assign/assign_range.cc: - Likewise. - * testsuite/21_strings/basic_string/modifiers/insert/insert_range.cc: - Likewise. - * testsuite/21_strings/basic_string/modifiers/replace/replace_with_range.cc: - Likewise. - * testsuite/23_containers/vector/bool/cons/from_range.cc: Likewise. - * testsuite/23_containers/vector/bool/modifiers/assign/assign_range.cc: - Likewise. - * testsuite/23_containers/vector/bool/modifiers/insert/insert_range.cc: - Likewise. - * testsuite/23_containers/vector/cons/from_range.cc: Likewise. - * testsuite/23_containers/vector/modifiers/assign/assign_range.cc: - Likewise. - * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: - Likewise. - * testsuite/23_containers/vector/bool/modifiers/insert/append_range.cc: - Run full test_ranges instead of span-only in test_constexpr. - * testsuite/23_containers/vector/modifiers/append_range.cc: - Replace test_constexpr with calls to test_ranges and test_overlapping. - * testsuite/util/testsuite_allocator.h (__gnu_test::SimpleAllocator): - Declared member functions as constexpr. - -2025-07-23 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/accessors/default.cc: Delete. - * testsuite/23_containers/mdspan/accessors/generic.cc: Slightly - generalize the test code previously in default.cc. - -2025-07-23 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/extents/ctor_ints.cc: Remove - superfluous parens. - * testsuite/23_containers/mdspan/extents/ctor_shape.cc: Ditto. - * testsuite/23_containers/mdspan/mdspan.cc: Ditto. - -2025-07-23 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119137 - * testsuite/23_containers/inplace_vector/access/elem.cc: Cover - front and back methods and const calls. - * testsuite/23_containers/inplace_vector/access/elem_neg.cc: - Likewise. - * testsuite/23_containers/inplace_vector/modifiers/erase_neg.cc: - New test. - * testsuite/23_containers/inplace_vector/modifiers/single_insert_neg.cc: - New test. - -2025-07-22 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119137 - * testsuite/23_containers/inplace_vector/cons/from_range.cc: Run - iterators and range test at compile-time. - * testsuite/23_containers/inplace_vector/modifiers/assign.cc: - Likewise. - * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: - Likewise. - * testsuite/util/testsuite_iterators.h (__gnu_test::BoundsContainer) - (__gnu_test::OutputContainer, __gnu_test::WritableObject) - (__gnu_test::output_iterator_wrapper, __gnu_test::input_iterator_wrapper) - (__gnu_test::forward_iterator_wrapper) - (__gnu_test::bidirectional_iterator_wrapper) - (__gnu_test::random_access_iterator_wrapper) - (__gnu_test::test_container): Add appropriate _GLIBCXXNN_CONSTEXPR - macros to member functions. - (__gnu_test::contiguous_iterator_wrapper) - (__gnu_test::input_iterator_wrapper_rval) - (__gnu_test::test_range, __gnu_test::test_range_nocopy) - (__gnu_test::test_sized_range_sized_sent) - (__gnu_test::test_sized_range): Add constexpr specifier to member - functions. - -2025-07-22 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119137 - * include/std/inplace_vector (inplace_vector::assign_range): - Replace _Nm with _M_size in the assigment loop. - -2025-07-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (mdspan::mdspan): Make default ctor - conditionally noexcept. - * testsuite/23_containers/mdspan/mdspan.cc: Add tests. - -2025-07-21 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (mdspan::is_always_unique): Make - conditionally noexcept. - (mdspan::is_always_exhaustive): Ditto. - (mdspan::is_always_strided): Ditto. - (mdspan::is_unique): Ditto. - (mdspan::is_exhaustive): Ditto. - (mdspan::is_strided): Ditto. - * testsuite/23_containers/mdspan/layout_like.h: Make noexcept - configurable. Add ThrowingLayout. - * testsuite/23_containers/mdspan/mdspan.cc: Add tests for - noexcept. - -2025-07-20 Jakub Jelinek <jakub@redhat.com> - - PR libstdc++/121174 - * src/c++23/std.cc.in (std::dextents): Export. Add to FIXME comments - other not yet implemented nor exported <mdspan> entities. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_iterator_base_types.h (__any_input_iterator): - Only define when __cpp_lib_concepts is defined. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/appendix_contributing.xml: Remove Paolo from - list of maintainers to contact about contributing. - * doc/html/manual/appendix_contributing.html: Regenerate. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/build_hacking.xml: Document that - windows_zones-map.h is a generated file. - * doc/html/manual/appendix_porting.html: Regenerate. - -2025-07-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119137 - * include/std/inplace_vector (inplace_vector::operator=): - Qualify call to std::addressof. - -2025-07-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121154 - * include/bits/chrono_io.h (_ChronoSpec::_M_time_point): Remove. - (_ChronoSpec::_M_needs_ok_check): Define - (__formatter_chrono::_M_parse): Set _M_needs_ok_check. - (__formatter_chrono::_M_check_ok): Check values also for debug mode, - and return __string_view. - (__formatter_chrono::_M_format_to): Handle results of _M_check_ok. - (__formatter_chrono::_M_wi, __formatter_chrono::_M_a_A) - (__formatter_chrono::_M_b_B, __formatter_chrono::_M_C_y_Y) - (__formatter_chrono::_M_d_e, __formatter_chrono::_M_F): - Removed handling of _M_debug. - (__formatter_chrono::__M_m): Print zero unpadded in _M_debug mode. - (__formatter_duration::_S_spec_for): Remove _M_time_point refernce. - (__formatter_duration::_M_parse): Override _M_needs_ok_check. - * testsuite/std/time/month/io.cc: Test for localized !ok() values. - * testsuite/std/time/weekday/io.cc: Test for localized !ok() values. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121150 - * testsuite/20_util/hash/int128.cc: Cast expected values to - size_t. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unicode.h (_Utf_iterator::operator--): Reorder - conditions and update position after reading a code unit. - (_Utf_iterator::_M_read_reverse): Define. - (_Utf_iterator::_M_read_utf8): Return extracted code point. - (_Utf_iterator::_M_read_reverse_utf8): Define. - (_Utf_iterator::_M_read_reverse_utf16): Define. - (_Utf_iterator::_M_read_reverse_utf32): Define. - * testsuite/ext/unicode/view.cc: Add checks for reversed views - and reverse iteration. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unicode.h (_Utf_iterator): Reorder data members - to be more compact. - -2025-07-18 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119137 - * doc/doxygen/user.cfg.in (INPUT): Add new header. - * include/Makefile.am: Add new header. - * include/Makefile.in: Regenerate. - * include/bits/stl_iterator_base_types.h (__any_input_iterator): - Define. - * include/bits/version.def (inplace_vector): Define. - * include/bits/version.h: Regenerate. - * include/precompiled/stdc++.h: Include new header. - * src/c++23/std.cc.in: Export contents if new header. - * include/std/inplace_vector: New file. - * testsuite/23_containers/inplace_vector/access/capacity.cc: New file. - * testsuite/23_containers/inplace_vector/access/elem.cc: New file. - * testsuite/23_containers/inplace_vector/access/elem_neg.cc: New file. - * testsuite/23_containers/inplace_vector/cons/1.cc: New file. - * testsuite/23_containers/inplace_vector/cons/from_range.cc: New file. - * testsuite/23_containers/inplace_vector/cons/throws.cc: New file. - * testsuite/23_containers/inplace_vector/copy.cc: New file. - * testsuite/23_containers/inplace_vector/erasure.cc: New file. - * testsuite/23_containers/inplace_vector/modifiers/assign.cc: New file. - * testsuite/23_containers/inplace_vector/modifiers/erase.cc: New file. - * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: - New file. - * testsuite/23_containers/inplace_vector/modifiers/single_insert.cc: - New file. - * testsuite/23_containers/inplace_vector/move.cc: New file. - * testsuite/23_containers/inplace_vector/relops.cc: New file. - * testsuite/23_containers/inplace_vector/version.cc: New file. - * testsuite/util/testsuite_iterators.h (input_iterator_wrapper::base): - Define. - -2025-07-17 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/96710 - * doc/xml/manual/evolution.xml: Document change or __int128. - * doc/html/manual/api.html: Regenerate. - -2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/121061 - * include/std/mdspan (extents::extents): Perform conversion to - index_type of an r-value reference. - (layout_left::mapping::operator()): Ditto. - (layout_right::mapping::operator()): Ditto. - (layout_stride::mapping::operator()): Ditto. - * testsuite/23_containers/mdspan/extents/custom_integer.cc: Add - tests for RValueInt and MutatingInt. - * testsuite/23_containers/mdspan/int_like.h (RValueInt): Add. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Test with - RValueInt. - * testsuite/23_containers/mdspan/mdspan.cc: Ditto. - -2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/121061 - * include/std/mdspan (extents::extents): Fix constraint to - prevent non-const conversion to index_type. - (layout_stride::mapping::mapping): Ditto. - (mdspan::mdspan): Ditto. - (mdspan::operator[]): Ditto. - * testsuite/23_containers/mdspan/extents/custom_integer.cc: Add - test for MutatingInt. - * testsuite/23_containers/mdspan/int_like.h (MutatingInt): Add. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Add test for - MutatingInt. - * testsuite/23_containers/mdspan/layouts/stride.cc: Ditto. - * testsuite/23_containers/mdspan/mdspan.cc: Ditto. - -2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/121061 - * testsuite/23_containers/mdspan/extents/custom_integer.cc: - Enable checking with different custom integers. Improve - checking non-existence of overloads for incompatible custom - integers. - * testsuite/23_containers/mdspan/layouts/mapping.cc: ditto. Also - improve reuse of int_like.h. - * testsuite/23_containers/mdspan/layouts/stride.cc: ditto. - * testsuite/23_containers/mdspan/mdspan.cc: ditto. - * testsuite/23_containers/mdspan/extents/int_like.h: Rename (old - name). - * testsuite/23_containers/mdspan/int_like.h: Rename (new name). - (ThrowingInt): Add. - (NotIntLike): Add. - -2025-07-17 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unicode.h (__unicode::_Utf_iterator): Add - comments. - (__unicode:_Utf_iterator::operator++()): Check whether to - iterate over the buffer first. - -2025-07-17 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121097 - * include/c_global/cmath (hypot): Use __promote_3 instead of - __promoted. - -2025-07-16 Jonathan Wakely <jwakely@redhat.com> - - * include/std/bitset (__bitset::__string) [__cpp_lib_bitset]: - Change alias to refer to basic_string_view instead. - -2025-07-16 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/121114 - * include/bits/version.def (constexpr_exceptions): Add no_stdname - and changed value. - * include/bits/version.h: Regenerated. - * testsuite/18_support/exception/version.cc: Test that macro is - not exported. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/move.h (swap): Replace enable_if with concepts - when available, and with __enable_if_t alias otherwise. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ranges_base.h (ranges::advance(i, n, bound)): - Ensure that observable side effects on iterators match what is - specified in the standard. - -2025-07-15 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/119962 - * include/std/ranges (join_view::_Iterator::_M_outer): Initialize. - (lazy_split_view::_OuterIter::_M_current): Initialize. - (join_with_view::_Iterator::_M_outer_it): Initialize. - * testsuite/std/ranges/adaptors/join.cc (test15): New test. - * testsuite/std/ranges/adaptors/join_with/1.cc (test05): New test. - * testsuite/std/ranges/adaptors/lazy_split.cc (test13): New test. - -2025-07-15 Björn Schäpers <bjoern@hazardy.de> - - PR libstdc++/108409 - * scripts/gen_windows_zones_map.py: New file, generates - windows_zones-map.h. - * src/c++20/windows_zones-map.h: New file, contains the look up - table. - * src/c++20/tzdb.cc (tzdb::current_zone): Add Windows code path. - -2025-07-15 Björn Schäpers <bjoern@hazardy.de> - - * src/c++20/tzdb.cc (zoneinfo_file): On Windows look relative - from the DLL path for the time zone information. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/25_algorithms/copy/debug/constexpr_neg.cc: - * testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc: - * testsuite/25_algorithms/equal/debug/constexpr_neg.cc: - * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc: - * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc: - * testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc: - * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc: - * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc: - * testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc: - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/121024 - * include/bits/ranges_uninitialized.h (ranges::destroy): Do not - optimize away trivial destructors during constant evaluation. - (ranges::destroy_n): Likewise. - * testsuite/20_util/specialized_algorithms/destroy/121024.cc: - New test. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - * include/experimental/memory (swap, make_observer_ptr): Add - constexpr. - (operator==, operator!=, operator<, operator>, operator<=) - (operator>=): Likewise. - * testsuite/experimental/memory/observer_ptr/make_observer.cc: - Checks for constant evaluation. - * testsuite/experimental/memory/observer_ptr/relops/relops.cc: - Likewise. - * testsuite/experimental/memory/observer_ptr/swap/swap.cc: - Likewise. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (__make_unsigned_selector): Add - unsigned __int128 to type list. - * testsuite/20_util/make_unsigned/int128.cc: New test. - -2025-07-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/96710 - * include/bits/functional_hash.h (hash<__int128>): Define for - strict modes. - (hash<unsigned __int128>): Likewise. - * testsuite/20_util/hash/int128.cc: New test. - -2025-07-15 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/110739 - * include/bits/chrono_io.h (__formatter_chrono::_S_weekdays) - (__formatter_chrono::_S_months, __formatter_chrono::_S_fill_ampm): - Define. - (__formatter_chrono::_M_format_to): Do not pass context parameter - to functions listed below. - (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B): Implement - using harcoded list of names, and remove format context parameter. - (__formatter_chrono::_M_p, __formatter_chrono::_M_r): Implement - using _S_fill_ampm. - (__formatter_chrono::_M_c): Removed format context parameter. - (__formatter_chrono::_M_subsecs): Call __ctx.locale() directly, - instead of _M_locale and do not compare with locale::classic(). - Add [[unlikely]] attributes. - (__formatter_chrono::_M_locale): Move to __formatter_duration. - (__formatter_duration::_M_locale): Moved from __formatter_chrono. - -2025-07-14 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_pair.h (swap): Add comment to deleted - overload. - * include/bits/unique_ptr.h (swap): Likewise. - * include/std/array (swap): Likewise. - * include/std/optional (swap): Likewise. - * include/std/tuple (swap): Likewise. - * include/std/variant (swap): Likewise. - * testsuite/23_containers/array/tuple_interface/get_neg.cc: - Adjust dg-error line numbers. - -2025-07-14 Jonathan Wakely <jwakely@redhat.com> - - * include/pstl/algorithm_impl.h (__for_each_n_it_serial): - Protect against overloaded comma operator. - (__brick_walk2): Likewise. - (__brick_walk2_n): Likewise. - (__brick_walk3): Likewise. - (__brick_move_destroy::operator()): Likewise. - (__brick_calc_mask_1): Likewise. - (__brick_copy_by_mask): Likewise. - (__brick_partition_by_mask): Likewise. - (__brick_calc_mask_2): Likewise. - (__brick_reverse): Likewise. - (__pattern_partial_sort_copy): Likewise. - * include/pstl/memory_impl.h (__brick_uninitialized_move): - Likewise. - (__brick_uninitialized_copy): Likewise. - * include/pstl/numeric_impl.h (__brick_transform_scan): - Likewise. - -2025-07-14 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117785 - * include/bits/version.def (constexpr_exceptions): Define - correct value. - * include/bits/version.h: Regenerate. - * libsupc++/exception: Check correct value. - * testsuite/18_support/exception/version.cc: New test. - -2025-07-14 Jonathan Wakely <jwakely@redhat.com> - - * libsupc++/exception_ptr.h (make_exception_ptr): Return null - for consteval when -fno-exceptions is used. - (exception_ptr_cast): Likewise. Allow consteval path to work - with -fno-rtti. - -2025-07-11 Jakub Jelinek <jakub@redhat.com> - - * libsupc++/exception_ptr.h: Implement C++26 P3748R0 - Inspecting - exception_ptr should be constexpr. - (std::exception_ptr_cast): Make constexpr, remove inline keyword. Add - static_asserts for Mandates. For if consteval use std::rethrow_exception, - catch it and return its address or nullptr. - * testsuite/18_support/exception_ptr/exception_ptr_cast.cc (E::~E): Add - constexpr. - (G::G): Likewise. - (test01): Likewise. Return bool and take bool argument, throw if the - argument is true. Add static_assert(test01(false)). - (main): Call test01(true) in try. - -2025-07-11 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/cpp_type_traits.h (__is_floating<__float128>): - Do not depend on __STRICT_ANSI__. - * include/bits/stl_algobase.h (__size_to_integer(__float128)): - Likewise. - * include/std/type_traits (__is_floating_point_helper<__float128>): - Likewise. - -2025-07-11 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/96710 - * include/bits/cpp_type_traits.h (__is_integer): Define explicit - specializations for __int128. - (__memcpyable_integer): Remove explicit specializations for - __int128. - * include/bits/iterator_concepts.h (incrementable_traits): - Likewise. - (__is_signed_int128, __is_unsigned_int128, __is_int128): Remove. - (__is_integer_like, __is_signed_integer_like): Remove check for - __int128. - * include/bits/max_size_type.h: Remove all uses of __is_int128 - in constraints. - * include/bits/ranges_base.h (__to_unsigned_like): Remove - overloads for __int128. - (ranges::ssize): Remove special case for __int128. - * include/bits/stl_algobase.h (__size_to_integer): Define - __int128 overloads for strict modes. - * include/ext/numeric_traits.h (__is_integer_nonstrict): Remove - explicit specializations for __int128. - * include/std/charconv (to_chars): Define overloads for - __int128. - * include/std/format (__format::make_unsigned_t): Remove. - (__format::to_chars): Remove. - * include/std/limits (numeric_limits): Define explicit - specializations for __int128. - * include/std/type_traits (__is_integral_helper): Likewise. - (__make_unsigned, __make_signed): Likewise. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - PR c++/117785 - * include/bits/version.def (constexpr_exceptions): New. - * include/bits/version.h: Regenerate. - * libsupc++/exception (std::bad_exception::bad_exception): Add - _GLIBCXX26_CONSTEXPR. - (std::bad_exception::~bad_exception, std::bad_exception::what): For - C++26 add constexpr and define inline. - * libsupc++/exception.h (std::exception::exception, - std::exception::operator=): Add _GLIBCXX26_CONSTEXPR. - (std::exception::~exception, std::exception::what): For C++26 add - constexpr and define inline. - * libsupc++/exception_ptr.h (std::make_exception_ptr): Add - _GLIBCXX26_CONSTEXPR. For if consteval use just throw with - current_exception() in catch. - (std::exception_ptr::exception_ptr(void*)): For C++26 add constexpr - and define inline. - (std::exception_ptr::exception_ptr()): Add _GLIBCXX26_CONSTEXPR. - (std::exception_ptr::exception_ptr(const exception_ptr&)): Likewise. - Use __builtin_eh_ptr_adjust_ref if consteval and compiler has it - instead of _M_addref. - (std::exception_ptr::exception_ptr(nullptr_t)): Add - _GLIBCXX26_CONSTEXPR. - (std::exception_ptr::exception_ptr(exception_ptr&&)): Likewise. - (std::exception_ptr::operator=): Likewise. - (std::exception_ptr::~exception_ptr): Likewise. Use - __builtin_eh_ptr_adjust_ref if consteval and compiler has it - instead of _M_release. - (std::exception_ptr::swap): Add _GLIBCXX26_CONSTEXPR. - (std::exception_ptr::operator bool): Likewise. - (std::exception_ptr::operator==): Likewise. - * libsupc++/nested_exception.h - (std::nested_exception::nested_exception): Add _GLIBCXX26_CONSTEXPR. - (std::nested_exception::operator=): Likewise. - (std::nested_exception::~nested_exception): For C++26 add constexpr - and define inline. - (std::nested_exception::rethrow_if_nested): Add _GLIBCXX26_CONSTEXPR. - (std::nested_exception::nested_ptr): Likewise. - (std::_Nested_exception::_Nested_exception): Likewise. - (std::throw_with_nested, std::rethrow_if_nested): Likewise. - * libsupc++/new (std::bad_alloc::bad_alloc): Likewise. - (std::bad_alloc::operator=): Likewise. - (std::bad_alloc::~bad_alloc): For C++26 add constexpr and define - inline. - (std::bad_alloc::what): Likewise. - (std::bad_array_new_length::bad_array_new_length): Add - _GLIBCXX26_CONSTEXPR. - (std::bad_array_new_length::~bad_array_new_length): For C++26 add - constexpr and define inline. - (std::bad_array_new_length::what): Likewise. - * libsupc++/typeinfo (std::bad_cast::bad_cast): Add - _GLIBCXX26_CONSTEXPR. - (std::bad_cast::~bad_cast): For C++26 add constexpr and define inline. - (std::bad_cast::what): Likewise. - (std::bad_typeid::bad_typeid): Add _GLIBCXX26_CONSTEXPR. - (std::bad_typeid::~bad_typeid): For C++26 add constexpr and define - inline. - (std::bad_typeid::what): Likewise. - -2025-07-10 Jakub Jelinek <jakub@redhat.com> - - * testsuite/22_locale/codecvt/codecvt_unicode.h - (ucs2_to_utf8_out_error): Comment spelling fix: bellow -> below. - (utf16_to_ucs2_in_error): Likewise. - -2025-07-09 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_uninitialized.h (__uninitialized_default): - Do not use optimized implementation for constexpr case. Use - _GLIBCXX20_CONSTEXPR instead of _GLIBCXX26_CONSTEXPR. - -2025-07-09 Jonathan Wakely <jwakely@redhat.com> - - * include/std/mdspan (mdspan): Add template keyword for - dependent name. - -2025-07-09 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120997 - * include/std/span (span::first, span::last, span::subspan): Do - not use braced-init-list for return statements. - * testsuite/23_containers/span/120997.cc: New test. - -2025-07-09 Paul Keir <pkeir@outlook.com> - - PR libstdc++/117403 - * include/bits/shared_ptr.h (shared_ptr::owner_equal) - (shared_ptr::owner_hash, weak_ptr::owner_equal) - (weak_ptr::owner_hash): Define new member functions. - * include/bits/shared_ptr_base.h (owner_equal, owner_hash): - Define new structs. - * include/bits/version.def (smart_ptr_owner_equality): Define. - * include/bits/version.h: Regenerate. - * include/std/memory: Added define for - __glibcxx_want_smart_ptr_owner_equality. - * testsuite/20_util/owner_equal/version.cc: New test. - * testsuite/20_util/owner_equal/cmp.cc: New test. - * testsuite/20_util/owner_equal/noexcept.cc: New test. - * testsuite/20_util/owner_hash/cmp.cc: New test. - * testsuite/20_util/owner_hash/noexcept.cc: New test. - * testsuite/20_util/shared_ptr/observers/owner_equal.cc: New - test. - * testsuite/20_util/shared_ptr/observers/owner_hash.cc: - New test. - * testsuite/20_util/weak_ptr/observers/owner_equal.cc: New test. - * testsuite/20_util/weak_ptr/observers/owner_hash.cc: New test. - -2025-07-09 Mateusz Zych <mte.zych@gmail.com> - - * include/bits/max_size_type.h (numeric_limits<__max_size_type>): - New members. - (numeric_limits<__max_diff_type>): Likewise. - * testsuite/std/ranges/iota/max_size_type.cc: New test cases. - -2025-07-09 Jonathan Wakely <jwakely@redhat.com> - - * src/c++17/memory_resource.cc: Adjust indentation of unnamed - namespaces. - (pool_sizes): Add comment. - (choose_block_size): Move outside preprocessor group for - gthreads targets. - * testsuite/20_util/synchronized_pool_resource/118681.cc: - Require gthreads. - -2025-07-09 H.J. Lu <hjl.tools@gmail.com> - - * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: - Updated. - -2025-07-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118681 - * testsuite/20_util/unsynchronized_pool_resource/118681.cc: Fix - deallocate argument. - -2025-07-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118681 - * src/c++17/memory_resource.cc (choose_block_size): New - function. - (synchronized_pool_resource::do_allocate): Use choose_block_size - to determine appropriate block size. - (synchronized_pool_resource::do_deallocate): Likewise - (unsynchronized_pool_resource::do_allocate): Likewise. - (unsynchronized_pool_resource::do_deallocate): Likewise - * testsuite/20_util/synchronized_pool_resource/118681.cc: New - test. - * testsuite/20_util/unsynchronized_pool_resource/118681.cc: New - test. - -2025-07-08 Jonathan Wakely <jwakely@redhat.com> - - * include/debug/forward_list (_Safe_forward_list<>::_M_swap): - Adapt to _M_this() signature change. - -2025-07-08 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119861 - * include/std/format (formatter<_Rg, _CharT>::set_separator) - (formatter<_Rg, _CharT>::set_brackets): Constrain with - (format_kind<_Rg> == range_format::sequence). - * testsuite/std/format/ranges/pr119861_neg.cc: New test. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/120914 - * include/std/span (span): Update CTAD to enable - integral constants [P3029R1]. - * include/std/mdspan (extents): ditto. - (mdspan): ditto. - * testsuite/23_containers/span/deduction.cc: Test deduction - guide. - * testsuite/23_containers/mdspan/extents/misc.cc: ditto. - * testsuite/23_containers/mdspan/mdspan.cc: ditto. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/span/contiguous_range_neg.cc: Silence - warning about unused variable myspan. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/107761 - * include/bits/version.def (mdspan): Set to 202207 and remove - no_stdname. - * include/bits/version.h: Regenerate. - * testsuite/23_containers/mdspan/version.cc: Test presence - of feature test macro. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/107761 - * include/std/mdspan (mdspan): New class. - * src/c++23/std.cc.in (mdspan): Add. - * testsuite/23_containers/mdspan/class_mandate_neg.cc: New test. - * testsuite/23_containers/mdspan/mdspan.cc: New test. - * testsuite/23_containers/mdspan/layout_like.h: Add class - LayoutLike which models a user-defined layout. - * testsuite/23_containers/mdspan/out_of_bounds_neg.cc: New file. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (__mdspan::__size): New function. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/extents/custom_integer.cc: - Delete IntLike and include "int_like.h". - * testsuite/23_containers/mdspan/extents/int_like.h: Add - IntLike. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (extents): Check prerequisite of the ctor that - static_extent(i) == dynamic_extent || extent(i) == other.extent(i). - * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: - Test the implemented prerequisite. - * testsuite/23_containers/mdspan/extents/extents_mismatch_neg.cc: New file. - -2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan: Check prerequisites of - layout_*::operator() with _GLIBCXX_DEBUG_ASSERTs. - * testsuite/23_containers/mdspan/layouts/debug/out_of_bounds_neg.cc: - Add tests for prerequisites. - -2025-07-08 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/queue (formatter<queue<_Tp, _Container>, _CharT>) - (formatter<priority_queue<_Tp, _Container, _Compare>, _CharT>): - Add _GLIBCXX_RESOLVE_LIB_DEFECTS comments. - -2025-07-08 François Dumont <frs.dumont@gmail.com> - - PR c++/116369 - * config/abi/pre/gnu-versioned-namespace.ver: Use new const qualified symbols. - * config/abi/pre/gnu.ver: Add new const qualified symbols. - * include/debug/safe_base.h - (_Safe_iterator_base::_M_sequence): Declare as pointer-to-const. - (_Safe_iterator_base::_M_attach, _M_attach_single): New, take pointer-to-const - _Safe_sequence_base. - (_Safe_sequence_base::_M_detach_all, _M_detach_singular, _M_revalidate_singular) - (_M_swap, _M_get_mutex): New, const qualified. - (_Safe_sequence_base::_M_attach, _M_attach_single, _M_detach, _M_detach_single): - const qualify. - * include/debug/safe_container.h (_Safe_container<>::_M_cont): Add const qualifier. - (_Safe_container<>::_M_swap_base): New. - (_Safe_container(_Safe_container&&, const _Alloc&, std::false_type)): - Adapt to use latter. - (_Safe_container<>::operator=(_Safe_container&&)): Likewise. - (_Safe_container<>::_M_swap): Likewise and take parameter as const reference. - * include/debug/safe_unordered_base.h - (_Safe_local_iterator_base::_M_safe_container): New. - (_Safe_local_iterator_base::_Safe_local_iterator_base): Take - _Safe_unordered_container_base as pointer-to-const. - (_Safe_unordered_container_base::_M_attach, _M_attach_single): New, take - container as _Safe_unordered_container_base pointer-to-const. - (_Safe_unordered_container_base::_M_local_iterators, _M_const_local_iterators): - Add mutable. - (_Safe_unordered_container_base::_M_detach_all, _M_swap): New, const qualify. - (_Safe_unordered_container_base::_M_attach_local, _M_attach_local_single) - (_M_detach_local, _M_detach_local_single): Add const qualifier. - * include/debug/safe_unordered_container.h (_Safe_unordered_container::_M_self()): New. - * include/debug/safe_unordered_container.tcc - (_Safe_unordered_container::_M_invalidate_if, _M_invalidated_local_if): Use latter. - * include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach, _M_attach_single): - Take _Safe_sequence_base as pointer-to-const. - (_Safe_iterator<>::_M_get_sequence): Add const_cast and comment about it. - * include/debug/safe_local_iterator.h (_Safe_local_iterator<>): Replace usages - of _M_sequence member by _M_safe_container(). - (_Safe_local_iterator<>::_M_attach, _M_attach_single): Take - _Safe_unordered_container_base as pointer-to-const. - (_Safe_local_iterator<>::_M_get_sequence): Rename into... - (_Safe_local_iterator<>::_M_get_ucontainer): ...this. Add necessary const_cast and - comment to explain it. - (_Safe_local_iterator<>::_M_is_begin, _M_is_end): Adapt. - * include/debug/safe_local_iterator.tcc: Adapt. - * include/debug/safe_sequence.h - (_Safe_sequence<>::_M_invalidate_if, _M_transfer_from_if): Add const qualifier. - * include/debug/safe_sequence.tcc: Adapt. - * include/debug/deque (std::__debug::deque::erase): Adapt to use new const - qualified methods. - * include/debug/formatter.h: Adapt. - * include/debug/forward_list (_Safe_forward_list::_M_this): Add const - qualification and return pointer for consistency with 'this' keyword. - (_Safe_forward_list::_M_swap_aux): Rename into... - (_Safe_forward_list::_S_swap_aux): ...this and take sequence as const reference. - (forward_list<>::resize): Adapt to use const methods. - * include/debug/list (list<>::resize): Likewise. - * src/c++11/debug.cc: Adapt to const qualification. - * testsuite/util/testsuite_containers.h - (forward_members_unordered::forward_members_unordered): Add check on local_iterator - conversion to const_local_iterator. - (forward_members::forward_members): Add check on iterator conversion to - const_iterator. - * testsuite/23_containers/unordered_map/const_container.cc: New test case. - * testsuite/23_containers/unordered_multimap/const_container.cc: New test case. - * testsuite/23_containers/unordered_multiset/const_container.cc: New test case. - * testsuite/23_containers/unordered_set/const_container.cc: New test case. - * testsuite/23_containers/vector/debug/mutex_association.cc: Adapt. - -2025-07-07 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120949 - * include/bits/stl_iterator.h (__normal_iterator): Fix order of - always_inline and nodiscard attributes for Clang compatibility. - -2025-07-07 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/util/testsuite_hooks.h (VERIFY): Define as variadic - macro. - * testsuite/ext/verify_neg.cc: New test. - -2025-07-07 Jonathan Wakely <jwakely@redhat.com> - - * include/std/mdspan (__mapping_of): Add template keyword. - -2025-07-07 XU Kailiang <xu2k3l4@outlook.com> - Tomasz Kaminski <tkaminsk@redhat.com> - - PR libstdc++/117214 - * include/bits/chrono_io.h (_ChronoSpec::_M_time_only): Remove. - (_ChronoSpec::_M_time_point): Define. - (__formatter_chrono::_M_parse): Use __parts to determine - interpretation of j. - (__formatter_chrono::_M_check_ok): Define. - (__formatter_chrono::_M_format_to): Invoke _M_check_ok. - (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B): Move - exception throwing to _M_check_ok. - (__formatter_chrono::_M_j): Use _M_needs to define interpretation. - (__formatter_duration::_S_spec_for): Set _M_time_point. - * testsuite/std/time/format/format.cc: Test for exception for !ok() - months/weekday. - * testsuite/std/time/format/pr117214_custom_timeput.cc: New - test. - -2025-07-07 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120976 - * include/std/format (formatter<__float128, _Char_T): Define if - _GLIBCXX_FORMAT_F128 == 2. - -2025-07-06 Patrick Palka <ppalka@redhat.com> - - * include/bits/ranges_algo.h (shift_left, shift_right): Guard - with __glibcxx_shift >= 201806L. - (ranges::__shift_left_fn, ranges::shift_left): Define for C++23. - (ranges::__shift_right_fn, ranges::shift_right): Likewise. - * include/bits/version.def (shift): Update for C++23. - * include/bits/version.h: Regenerate. - * src/c++23/std.cc.in: Add ranges::shift_left/right. - * testsuite/25_algorithms/shift_left/constrained.cc: New test, - based off of 1.cc. - * testsuite/25_algorithms/shift_right/constrained.cc: New test, - based off of 1.cc. - -2025-07-04 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h (__formatter_duration::_S_spec_for): - Add default case to switch and use __builtin_unreachable. - -2025-07-04 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_algobase.h (__size_to_integer): Move - misplaced unsigned keyword on __size_to_integer overloads for - __GLIBCXX_TYPE_INT_N_3 integer type. - -2025-07-03 Nathan Myers <ncm@cantrip.org> - - * include/bits/version.def: Fix typo. - * include/bits/version.h: Rebuilt. - -2025-07-03 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/120934 - * include/std/ranges (concat_view::end): Refine condition - for returning an iterator instead of default_sentinel as - per the updated P/R for LWG 4166. - * testsuite/std/ranges/concat/1.cc (test05): New test. - -2025-07-03 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119742 - * include/bits/version.def: Add preprocessor symbol. - * include/bits/version.h: Add preprocessor symbol. - * include/std/bitset: Add constructor. - * testsuite/20_util/bitset/cons/1.cc: Fix. - * testsuite/20_util/bitset/cons/6282.cc: Fix. - * testsuite/20_util/bitset/cons/string_view.cc: Test new ctor. - * testsuite/20_util/bitset/cons/string_view_wide.cc: Test new ctor. - -2025-07-03 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120931 - * include/bits/stl_uninitialized.h (__uninitialized_fill<true>): - Fix typo resulting in call to __do_uninit_copy instead of - __do_uninit_fill. - * testsuite/20_util/specialized_algorithms/uninitialized_fill/120931.cc: - New test. - -2025-07-02 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_iterator.h (__normal_iterator): Make all - non-member operators hidden friends, except ... - (operator<=>(__normal_iterator<I,C>, __normal_iterator<I,C>)): - Remove. - * src/c++11/string-inst.cc: Remove explicit instantiations of - operators that are no longer templates. - * src/c++23/std.cc.in (__gnu_cxx): Do not export operators for - __normal_iterator. - -2025-07-02 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119744 - * include/std/ranges: View ctors become explicit. - -2025-07-01 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/120789 - * include/bits/ranges_algo.h (__remove_if_fn::operator()): Use - ranges::iter_move(iter) instead of std::move(*iter). - * testsuite/25_algorithms/remove_if/120789.cc: New test. - -2025-07-01 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/120789 - * include/bits/ranges_algo.h (__unique_fn::operator()): Use - ranges::iter_move(iter) instead of std::move(*iter). - * testsuite/25_algorithms/unique/120789.cc: New test. - -2025-07-01 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (default_accessor): New class. - * src/c++23/std.cc.in: Register default_accessor. - * testsuite/23_containers/mdspan/accessors/default.cc: New test. - * testsuite/23_containers/mdspan/accessors/default_neg.cc: New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (shuffle_fn::operator()): - Reimplement directly, based on the stl_algo.h implementation. - * testsuite/25_algorithms/shuffle/constrained.cc (test02): - New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__sample_fn::operator()): - Reimplement the forward_iterator branch directly, based - on the stl_algo.h implementation. Add explicit cast to - _Out's difference_type in the !forward_iterator branch. - * testsuite/25_algorithms/sample/constrained.cc (test02): - New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__detail::__introselect): New, - based on the stl_algo.h implementation. - (nth_element_fn::operator()): Reimplement in terms of the above. - * testsuite/25_algorithms/nth_element/constrained.cc: - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__detail::__find_if_not_n): New, - based on the stl_algo.h implementation. - (__detail::__stable_partition_adaptive): Likewise. - (__stable_partition_fn::operator()): Reimplement in terms of - the above. - * testsuite/25_algorithms/stable_partition/constrained.cc - (test03): New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__detail::__move_merge): New, - based on the stl_algo.h implementation. - (__detail::__merge_sort_loop): Likewise. - (__detail::__chunk_insertion_sort): Likewise. - (__detail::__merge_sort_with_buffer): Likewise. - (__detail::__stable_sort_adaptive): Likewise. - (__detail::__stable_sort_adaptive_resize): Likewise. - (__detail::__inplace_stable_sort): Likewise. - (__stable_sort_fn::operator()): Reimplement in terms of the above. - * testsuite/25_algorithms/stable_sort/constrained.cc: - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__detail::__move_merge_adaptive): - New, based on the stl_algo.h implementation. - (__detail::__move_merge_adaptive_backward): Likewise. - (__detail::__rotate_adaptive): Likewise. - (__detail::__merge_adaptive): Likewise. - (__detail::__merge_adaptive_resize): Likewise. - (__detail::__merge_without_buffer): Likewise. - (__inplace_merge_fn::operator()): Reimplement in terms of the - above. - * testsuite/25_algorithms/inplace_merge/constrained.cc (test03): - New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - PR libstdc++/118209 - * include/bits/max_size_type.h (__bit_width): New explicit - specialization for __max_size_type. - * include/bits/ranges_algo.h (__detail::__move_median_to_first): - New, based on the stl_algo.h implementation. - (__detail::__unguarded_liner_insert): Likewise. - (__detail::__insertion_sort): Likewise. - (__detail::__sort_threshold): Likewise. - (__detail::__unguarded_insertion_sort): Likewise. - (__detail::__final_insertion_sort): Likewise. - (__detail::__unguarded_partition): Likewise. - (__detail::__unguarded_partition_pivot): Likewise. - (__detail::__heap_select): Likewise. - (__detail::__partial_sort): Likewise. - (__detail::__introsort_loop): Likewise. - (__sort_fn::operator()): Reimplement in terms of the above. - * testsuite/25_algorithms/sort/118209.cc: New test. - * testsuite/25_algorithms/sort/constrained.cc (test03): New test. - -2025-06-27 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/100795 - * include/bits/ranges_algo.h (__detail::__push_heap): New, - based on the stl_heap.h implementation. - (__push_heap_fn::operator()): Reimplement in terms of the above. - (__detail::__adjust_heap): New, based on the stl_heap.h - implementation. - (__deatil::__pop_heap): Likewise. - (__pop_heap_fn::operator()): Reimplement in terms of the above. - (__make_heap_fn::operator()): Likewise. - (__sort_heap_fn::operator()): Likewise. - * testsuite/25_algorithms/heap/constrained.cc (test03): New - test. - -2025-06-27 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/110739 - * include/bits/chrono_io.h (__formatter_chrono::_S_empty_fs): Define. - (__formatter_chrono::_S_str_d2): Use _S_str_d3 for 3+ digits and - place allways_inline attribute after comment. - (__formatter_chrono::_S_str_d3): Extracted from _S_str_d2. - (__formatter_chrono::_M_H_I, __formatter_chrono::_M_R_X): Replace - _S_empty_spec with _S_empty_fs(). - (__formatter_chrono::_M_j): Likewise and use _S_str_d3 in common - case. - (__format::operator-(_ChronoParts, _ChronoParts)) - (__format::operator-=(_ChronoParts, _ChronoParts)) - (__formatter_chrono::_S_fill_two_digits) - (__formatter_chrono::_S_str_d1): Place always_inline attribute - after comment. - -2025-06-27 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/110739 - * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): - Rename _Out to _OutIter for consistency, and update calls - to specifier functions. - (__formatter_chrono::_M_wi, __formatter_chrono::_M_C_y_Y) - (__formatter_chrono::_M_D_x, __formatter_chrono::_M_d_e) - (__formatter_chrono::_M_F, __formatter_chrono::_M_g_G) - (__formatter_chrono::_M_H_I, __formatter_chrono::_M_j) - (__formatter_chrono::_M_m, __formatter_chrono::_M_M) - (__formatter_chrono::_M_q, __formatter_chrono::_M_R_X) - (__formatter_chrono::_M_u_w, __formatter_chrono::_M_U_V_W) - (__formatter_chrono::_M_z, __formatter_chrono::_M_z): - Remove _FormatContext parameter, and introduce _OutIter - for __out type. - (__formatter_chrono::_M_a_A, __formatter_chrono::_M_B_b) - (__formatter_chrono::_M_p, __formatter_chrono::_M_Q) - (__formatter_chrono::_M_r, __formatter_chrono::_M_S) - (__formatter_chrono::_M_subsecs, __formatter_chrono::_M_T): - Introduce separate _OutIter template parameter for __out. - (__formatter_chrono::_M_c, __formatter_chrono::_M_T): - Likewise, and adjust calls to specifiers functions. - * testsuite/std/time/format/empty_spec.cc: Make underlying - type for Rep configurable. - -2025-06-27 Iain Sandoe <iain@sandoe.co.uk> - - * config/abi/pre/gnu.ver: Keep the closing brace of the - CXXABI_1.3.17 symbol group together with the identifier - for the inherited group. - -2025-06-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/110739 - * include/bits/chrono_io.h (__formatter_chrono::_M_use_locale_fmt): - Define. - (__formatter_chrono::_M_locale_fmt): Moved to front of the class. - (__formatter_chrono::_M_format_to): Construct and initialize - struct tm and call _M_locale_fmt if needed. - (__formatter_chrono::_M_c_r_x_X): Split into separate methods. - (__formatter_chrono::_M_c, __formatter_chrono::_M_r): Define. - (__formatter_chrono::_M_D): Renamed to _M_D_x. - (__formatter_chrono::_M_D_x): Renamed from _M_D. - (__formatter_chrono::_M_R_T): Split into _M_R_X and _M_T. - (__formatter_chrono::_M_R_X): Extracted from _M_R_T. - (__formatter_chrono::_M_T): Define in terms of _M_R_X and _M_subsecs. - (__formatter_chrono::_M_subsecs): Extracted from _M_S. - (__formatter_chrono::_M_S): Replaced __mod with __subs argument, - removed _M_locale_fmt call, and delegate to _M_subsecs. - (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_d_e) - (__formatter_chrono::_M_H_I, __formatter_chrono::_M_m) - (__formatter_chrono::_M_u_w, __formatter_chrono::_M_U_V_W): Remove - __mod argument and call to _M_locale_fmt. - -2025-06-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/110739 - * include/bits/chrono_io.h (__format::__no_timezone_available): - Removed, replaced with separate throws in formatter for - __local_time_fmt - (__format::_ChronoParts): Defined additional enumertors and - declared as enum class. - (__format::operator&(_ChronoParts, _ChronoParts)) - (__format::operator&=(_ChronoParts&, _ChronoParts)) - (__format::operator-(_ChronoParts, _ChronoParts)) - (__format::operator-=(_ChronoParts&, _ChronoParts)) - (__format::operator==(_ChronoParts, decltype(nullptr))) - (_ChronoSpec::_M_time_only, _ChronoSpec::_M_floating_point_rep) - (_ChronoSpec::_M_custom_rep, _ChronoSpec::_M_needed) - (_ChronoSpec::_M_needs, __format::_ChronoData): Define. - (__format::__formatter_chrono): Redefine to accept _ChronoData. - (__formatter_chrono::_M_format_to_ostream): Moved to - __formatter_duration. - (__format::__formatter_duration): Define. - (__formatter_chrono_info::format): Pass value-constructed - _ChronoData. - (std::formatter<chrono::day, _CharT>) - (std::formatter<chrono::month, _CharT>) - (std::formatter<chrono::year, _CharT>) - (std::formatter<chrono::weekday, _CharT>) - (std::formatter<chrono::weekday_indexed, _CharT>) - (std::formatter<chrono::weekday_last, _CharT>) - (std::formatter<chrono::month_day, _CharT>) - (std::formatter<chrono::month_day_last, _CharT>) - (std::formatter<chrono::month_weekday, _CharT>) - (std::formatter<chrono::month_weekday_indexed, _CharT>) - (std::formatter<chrono::month_weekday_last, _CharT>) - (std::formatter<chrono::year_month, _CharT>) - (std::formatter<chrono::year_month_day, _CharT>) - (std::formatter<chrono::year_month_day_last, _CharT>) - (std::formatter<chrono::year_month_weekday, _CharT>) - (std::formatter<chrono::year_month_weekday_indexed, _CharT>) - (std::formatter<chrono::year_month_weekday_last, _CharT>): - Construct _ChronoData in format, and configure _M_needed in - _ChronoSpec. - (std::formatter<chrono::duration<_Rep, _Period>, _CharT>) - (std::formatter<chrono::hh_mm_ss<_Duration>, _CharT>) - (std::formatter<chrono::sys_time<_Duration>, _CharT>) - (std::formatter<chrono::utc_time<_Duration>, _CharT>) - (std::formatter<chrono::tai_time<_Duration>, _CharT>) - (std::formatter<chrono::gps_time<_Duration>, _CharT>) - (std::formatter<chrono::file_time<_Duration>, _CharT>) - (std::formatter<chrono::local_time<_Duration>, _CharT>) - (std::formatter<chrono::_detail::__local_time_fmt<_Duration>, _CharT>): - Reworked in terms of __formatter_duration and _ChronoData. - (std::formatter<chrono::_detail::__utc_leap_second<_Duration>, _CharT>): - Removed. - (_Parser<_Duration>::operator()): Adjusted for _ChronoParts - being enum class. - * include/std/chrono (__detail::__utc_leap_second): Removed, - replaced with simply bumping _M_seconds in _ChronoData. - * testsuite/std/time/format/empty_spec.cc: Updated %S integral - ouput. - -2025-06-26 Jakub Jelinek <jakub@redhat.com> - - * include/bits/version.def (exception_ptr_cast): Add. - * include/bits/version.h: Regenerate. - * libsupc++/exception: Define __glibcxx_want_exception_ptr_cast before - including bits/version.h. - * libsupc++/exception_ptr.h (std::exception_ptr_cast): Define. - (std::__exception_ptr::exception_ptr::_M_exception_ptr_cast): Declare. - * libsupc++/eh_ptr.cc - (std::__exception_ptr::exception_ptr::_M_exception_ptr_cast): Define. - * src/c++23/std.cc.in (std::exception_ptr_cast): Export. - * config/abi/pre/gnu.ver: Export - _ZNKSt15__exception_ptr13exception_ptr21_M_exception_ptr_castERKSt9type_info - at CXXABI_1.3.17. - * testsuite/util/testsuite_abi.cc (check_version): Allow CXXABI_1.3.17. - * testsuite/18_support/exception_ptr/exception_ptr_cast.cc: New test. - -2025-06-26 Jakub Jelinek <jakub@redhat.com> - - * include/bits/version.def (type_order): New. - * include/bits/version.h: Regenerate. - * libsupc++/compare: Define __glibcxx_want_type_order before - including bits/version.h. - (std::type_order, std::type_order_v): New trait and template variable. - * src/c++23/std.cc.in (std::type_order, std::type_order_v): Export. - * testsuite/18_support/comparisons/type_order/1.cc: New test. - -2025-06-25 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/precision.cc: New tests. - -2025-06-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120650 - * include/bits/chrono_io.h - (formatter<chrono::month_day_last,_CharT>::parse): Call _M_parse with - only Month being available. - * testsuite/std/time/format/data_not_present_neg.cc: New test. - -2025-06-24 Patrick Palka <ppalka@redhat.com> - Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120717 - * include/std/type_traits (__maybe_complete_object_type): New - helper trait, factored out from ... - (__is_complete_or_unbounded): ... here. Only check sizeof on a - __maybe_complete_object_type type. Fix formatting. - * testsuite/20_util/is_complete_or_unbounded/120717.cc: New test. - -2025-06-16 Jason Merrill <jason@redhat.com> - - * testsuite/20_util/is_complete_or_unbounded/memoization.cc - * testsuite/20_util/is_complete_or_unbounded/memoization_neg.cc: - Expect -Wsfinae-incomplete. - -2025-06-13 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120397 - * include/bits/stl_uninitialized.h (_UninitDestroyGuard<I,void>): - Add new member function _S_destroy and call it from the - destructor (for C++17 only). - * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/120397.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/120397.cc: - New test. - -2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120648 - * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): - Handle %c, %r, %x and %X by passing them to _M_c_r_x_X. - (__formatter_chrono::_M_c_r_x_X): Reworked from _M_c. - (__formatter_chrono::_M_c): Renamed into above. - (__formatter_chrono::_M_r, __formatter_chrono::_M_x) - (__formatter_chrono::_M_X): Removed. - * testsuite/std/time/format/pr117214.cc: New tests for %r, %x, - %X with date, time and durations. - -2025-06-13 Patrick Palka <ppalka@redhat.com> - - * include/bits/ranges_algo.h (__detail::__by_ref_or_value_fn): New. - (__detail::_Comp_proj): New. - (__detail::__make_comp_proj): Use it instead. - (__detail::_Pred_proj): New. - (__detail::__make_pred_proj): Use it instead. - -2025-06-13 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR c++/120644 - * include/std/optional (format_kind): Do not use `auto`. - -2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/23_containers/vector/bool/format.cc: Replaced _CharT - with CharT. - * testsuite/std/format/debug.cc: Likewise. - * testsuite/std/format/ranges/adaptors.cc: Likewise. - * testsuite/std/format/ranges/formatter.cc: Likewise. - * testsuite/std/format/ranges/map.cc: Likewise. - * testsuite/std/format/ranges/sequence.cc: Likewise. - * testsuite/std/format/ranges/string.cc: Likewise. - * testsuite/std/format/tuple.cc: Likewise. - * testsuite/std/time/format/empty_spec.cc: Likewise. - * testsuite/std/time/format/pr120114.cc: Likewise. - * testsuite/std/time/format/pr120481.cc: Likewise. - * testsuite/std/time/format/precision.cc: Likewise. - -2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_format): - Remove handling of empty _M_chrono_specs. - (__formatter_chrono::_M_format_to_ostream): Changed to accept - only chrono::duration and made public. - (std::formatter<chrono::duration<_Rep, _Period>, _CharT>): - Configure __defSpec and handle empty chrono-spec locally. - -2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__format::__formatter_chrono_info) - [_GLIBCXX_USE_CXX11_ABI || ! _GLIBCXX_USE_DUAL_ABI]: Define. - (std::formatter<chrono::sys_info, _CharT>) - (std::formatter<chrono::local_inf, _CharT>): Delegate to - __format::__formatter_chrono_info. - (std::operator<<(basic_ostream<_CharT, _Traits>& const sys_info&)): - Use format on sys_info with empty format spec. - -2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/whitespace.cc: New test. - -2025-06-12 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR libstdc++/119496 - * include/bits/stl_algo.h: Adjust calls to requested_size. - * include/bits/stl_tempbuf.h (requested_size): Rename with - an _M_ prefix. - * testsuite/17_intro/names.cc: Add a #define for - requested_size. - -2025-06-12 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/formatfwd.h (format_kind): Move the definition - (and some supporting code) from <format>. - * include/std/format (format_kind): Likewise. - * include/bits/version.def (optional_range_support): Add - the feature-testing macro. - * include/bits/version.h: Regenerate. - * include/std/optional (iterator, const_iterator, begin, end): - Add range support. - (enable_view): Specialize for std::optional. - (format_kind): Specialize for std::optional. - * testsuite/20_util/optional/range.cc: New test. - * testsuite/20_util/optional/version.cc: Test the new - feature-testing macro. - -2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (_ChronoFormats::_S_ftz) - (_ChronoFormats::_S_ft, _ChronoFormats::_S_t): Define. - (__formatter_chrono::_M_format_to_ostream): Remove handling for - time_points. - (std::formatter<chrono::hh_mm_ss<_Dur>, _CharT>) - (std::formatter<chrono::sys_time<_Dur>, _CharT>) - (std::formatter<chrono::utc_time<_Dur>, _CharT>) - (std::formatter<chrono::tai_time<_Dur>, _CharT>) - (std::formatter<chrono::gps_time<_Dur>, _CharT>) - (std::formatter<chrono::file_time<_Dur>, _CharT>) - (std::formatter<chrono::local_time<_Dur>, _CharT>) - (std::formatter<chrono::__detail::__local_time_fmt<_Dur>, _CharT>) - (std::formatter<chrono::zoned_time<_Dur>, _CharT>): - Define __defSpec, and pass it as argument to _M_prase and - constructor of __formatter_chrono. - -2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__format::_ChronoFormats): Define. - (__formatter_chrono::__formatter_chrono()) - (__formatter_chrono::__formatter_chrono(_ChronoSpec<_CharT>)): Define. - (__formatter_chrono::_M_parse): Add parameter with default spec, - and merge it with new values. Handle '%\0' as weekday index - specifier. - (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B) - (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_d_e) - (__formatter_chrono::_M_F): Support _M_debug flag. - (__formatter_chrono::_M_wi, __formatter_chrono::_S_weekday_index): - Define. - (std::formatter<chrono::day, _CharT>) - (std::formatter<chrono::month, _CharT>) - (std::formatter<chrono::year, _CharT>) - (std::formatter<chrono::weekday, _CharT>) - (std::formatter<chrono::weekday_indexed, _CharT>) - (std::formatter<chrono::weekday_last, _CharT>) - (std::formatter<chrono::month_day, _CharT>) - (std::formatter<chrono::month_day_last, _CharT>) - (std::formatter<chrono::month_weekday, _CharT>) - (std::formatter<chrono::month_weekday_last, _CharT>) - (std::formatter<chrono::year_month, _CharT>) - (std::formatter<chrono::year_month_day, _CharT>) - (std::formatter<chrono::year_month_day_last, _CharT>) - (std::formatter<chrono::year_month_weekday, _CharT>) - (std::formatter<chrono::year_month_weekday_last, _CharT>): - Define __defSpec, and pass it as argument to _M_parse and - constructor of __formatter_chrono. - -2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/mdspan (__mdspan::__mapping_alike): Rename template - parameter from M to _M_p. - (layout_right::mapping): Replace class with typename in template - head. - (layout_stride::mapping): Fix typo in comment. - * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: - Changed B to function. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (layout_left): Strengthen the exception - guarantees of layout_left::mapping(layout_stride::mapping). - * testsuite/23_containers/mdspan/layouts/ctors.cc: - Simplify tests to reflect the change. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: Add - tests for layout_stride. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Add test for - layout_stride and the interaction with other layouts. - * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. - * testsuite/23_containers/mdspan/layouts/stride.cc: New test. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (layout_stride): New class. - * src/c++23/std.cc.in: Add layout_stride. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: Add - tests for layout_right. - * testsuite/23_containers/mdspan/layouts/ctors.cc: Add tests for - layout_right and the interaction with layout_left. - * testsuite/23_containers/mdspan/layouts/empty.cc: ditto. - * testsuite/23_containers/mdspan/layouts/mapping.cc: ditto. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (layout_right): New class. - * src/c++23/std.cc.in: Add layout_right. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: New test. - * testsuite/23_containers/mdspan/layouts/ctors.cc: New test. - * testsuite/23_containers/mdspan/layouts/empty.cc: New test. - * testsuite/23_containers/mdspan/layouts/mapping.cc: New test. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan (layout_left): New class. - * src/c++23/std.cc.in: Add layout_left. - -2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan(__mdspan::_ExtentsStorage): Change name - of private member _M_dynamic_extens to _M_dyn_exts. - (extents): Change name of private member from _M_dynamic_extents - to _M_exts. - Fix two instances of whitespace errors. - * testsuite/23_containers/mdspan/extents/ctor_default.cc: Fix - integer comparison with cmp_equal. - -2025-06-12 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/test.xml: Improve discussion of copyright - notices in new test cases. - * doc/html/manual/test.html: Regenerate. - -2025-06-12 Jonathan Wakely <jwakely@redhat.com> - - * scripts/create_testsuite_files: Remove incorrect comment about - filtering out wchar_t tests. - -2025-06-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120625 - * include/std/format (__format::__disabled): Remove. - (__formatter_disabled): New type. - (formatter<char*, wchar_t>, formatter<const char*, wchar_t>) - (formatter<char[N], wchar_t>, formatter<string, wchar_t>) - (formatter<string_view, wchar_t>): Use __formatter_disabled as - base class instead of formatter<__disabled, wchar_t>. - * testsuite/std/format/formatter/120625.cc: New test. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * doc/doxygen/user.cfg.in (PREDEFINED): Remove -D prefixes from - some macros. Define _GLIBCXX_USE_BUILTIN_TRAIT and - _GLIBCXX_HAVE_ICONV macros. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * libsupc++/exception: Remove redundant parentheses and adjust - whitespace. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits: Restore @cond and @endcond balance. - -2025-06-11 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/empty_spec.cc: New tests. - * testsuite/std/time/format/precision.cc: New test. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_construct.h: Replace std::__addressof with - std::addressof in code that doesn't need to compile as C++98. - Replace std::__is_constant_evaluated with - std::is_constant_evaluated in code that doesn't need to compile - as C++17 or earlier. - * include/bits/stl_uninitialized.h: Likewise for __addressof. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/test.xml: Remove note about unused 'test' - variables for old definition of VERIFY. - * doc/html/manual/test.html: Regenerate. - * testsuite/experimental/net/buffer/arithmetic.cc: Remove unused - variable. - * testsuite/experimental/net/buffer/const.cc: Likewise. - * testsuite/experimental/net/buffer/mutable.cc: Likewise. - * testsuite/experimental/net/buffer/size.cc: Likewise. - * testsuite/experimental/net/timer/waitable/cons.cc: Likewise. - * testsuite/experimental/net/timer/waitable/dest.cc: Likewise. - * testsuite/experimental/net/timer/waitable/ops.cc: Likewise. - * testsuite/ext/special_functions/airy_ai/check_value.cc: - Likewise. - * testsuite/ext/special_functions/airy_bi/check_value.cc: - Likewise. - * testsuite/ext/special_functions/conf_hyperg/check_value.cc: - Likewise. - * testsuite/ext/special_functions/hyperg/check_value.cc: - Likewise. - * testsuite/special_functions/01_assoc_laguerre/check_value.cc: - Likewise. - * testsuite/special_functions/02_assoc_legendre/check_value.cc: - Likewise. - * testsuite/special_functions/02_assoc_legendre/pr86655.cc: - Likewise. - * testsuite/special_functions/03_beta/check_value.cc: Likewise. - * testsuite/special_functions/04_comp_ellint_1/check_value.cc: - Likewise. - * testsuite/special_functions/05_comp_ellint_2/check_value.cc: - Likewise. - * testsuite/special_functions/06_comp_ellint_3/check_value.cc: - Likewise. - * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: - Likewise. - * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: - Likewise. - * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: - Likewise. - * testsuite/special_functions/10_cyl_neumann/check_value.cc: - Likewise. - * testsuite/special_functions/11_ellint_1/check_value.cc: - Likewise. - * testsuite/special_functions/12_ellint_2/check_value.cc: - Likewise. - * testsuite/special_functions/13_ellint_3/check_value.cc: - Likewise. - * testsuite/special_functions/14_expint/check_value.cc: - Likewise. - * testsuite/special_functions/15_hermite/check_value.cc: - Likewise. - * testsuite/special_functions/16_laguerre/check_value.cc: - Likewise. - * testsuite/special_functions/17_legendre/check_value.cc: - Likewise. - * testsuite/special_functions/18_riemann_zeta/check_value.cc: - Likewise. - * testsuite/special_functions/19_sph_bessel/check_value.cc: - Likewise. - * testsuite/special_functions/20_sph_legendre/check_value.cc: - Likewise. - * testsuite/special_functions/20_sph_legendre/pr86655.cc: - Likewise. - * testsuite/special_functions/21_sph_neumann/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/01_assoc_laguerre/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/02_assoc_legendre/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/02_assoc_legendre/pr86655.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/04_comp_ellint_1/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/05_comp_ellint_2/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/06_comp_ellint_3/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/07_conf_hyperg/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/check_value_neg.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/20_riemann_zeta/check_value_neg.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/22_sph_legendre/check_value.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/22_sph_legendre/pr86655.cc: - Likewise. - * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: - Likewise. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * include/std/sstream: Adjust whitespace. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120390 - * include/bits/stl_construct.h (_Destroy_aux::__destroy_n): New - static member function. - (_Destroy_aux<true>::__destroy_n): Likewise. - (_Destroy_n_aux): Remove. - (_Destroy(ForwardIterator, ForwardIterator)): Remove - static_assert. Use is_trivially_destructible instead of - __has_trivial_destructor. - (_Destroy_n): Likewise. Use _Destroy_aux::__destroy_n instead of - _Destroy_n_aux::__destroy_n. - * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc: - Adjust dg-error strings. Move destroy_n tests to ... - * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc: - New test. - * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: - Adjust dg-error strings. - * testsuite/23_containers/vector/cons/destructible_neg.cc: - Likewise. - -2025-06-11 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: - Only check get_allocator() for new string ABI. - * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: - Likewise. - * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: - Likewise. - * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: - Likewise. - -2025-06-10 Patrick Palka <ppalka@redhat.com> - - * include/bits/max_size_type.h (__max_size_type::_M_val): Make - public instead of private. - (__max_size_type::_M_msb): Likewise. - (__max_diff_type::_M_rep): Likewise. - * testsuite/std/ranges/iota/max_size_type.cc: Verify - __max_diff_type and __max_size_type are structural. - -2025-06-10 Yihan Wang <yronglin777@gmail.com> - Jonathan Wakely <jwakely@redhat.com> - - * include/std/tuple (__can_make_from_tuple): New variable - template. - (__make_from_tuple_impl): Add static_assert. - (make_from_tuple): Constrain using __can_make_from_tuple. - * testsuite/20_util/tuple/dr3528.cc: New test. - -2025-06-09 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119741 - * include/std/sstream: full implementation, really just - decls, requires clause and plumbing. - * include/bits/version.def, include/bits/version.h: - new preprocessor symbol - __cpp_lib_sstream_from_string_view. - * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: - New tests. - -2025-06-08 John David Anglin <danglin@gcc.gnu.org> - - * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. - -2025-06-06 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/30_threads/semaphore/1.cc: Check type properties and - max() values. - * testsuite/30_threads/semaphore/3.cc: New test. - * testsuite/30_threads/semaphore/cons_neg.cc: New test. - -2025-06-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/semaphore_base.h (_Select_semaphore_impl): Rename - to _Semaphore_impl and use std::conditional_t instead of an - immediately invoked lambda expression. - * include/std/semaphore (counting_semaphore): Adjust to use new - name. - -2025-06-06 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/30_threads/barrier/1.cc: Require hosted. Only - require gthreads for non-linux targets. - * testsuite/30_threads/barrier/2.cc: Likewise. - * testsuite/30_threads/semaphore/1.cc: Likewise. - * testsuite/30_threads/semaphore/2.cc: Likewise. - * testsuite/30_threads/semaphore/cons.cc: Likewise. - * testsuite/30_threads/semaphore/least_max_value_neg.cc: - Likewise. - * testsuite/30_threads/semaphore/try_acquire.cc: Likewise. - -2025-06-06 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/120432 - * include/std/flat_map (flat_map::operator[]): Make the - non-template overloads call try_emplace directly. Remove - non-standard same_as constraint on the template overload. - * testsuite/23_containers/flat_map/1.cc (test08): New test. - -2025-06-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__atomic_wait_address_until_v): - Add assertion to prevent use with proxy waits. - (__atomic_wait_address_for_v): Likewise. - * include/bits/atomic_wait.h (__atomic_wait_address_v): - Likewise. - -2025-06-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_wait.h (__atomic_wait_address_v): Add bare - wait flag. - * include/bits/semaphore_base.h (__semaphore_base): Rename to - __semaphore_impl. Replace local variable and predicate lambdas - with _Available struct. - (__platform_semaphore_impl): New class template. - (__semaphore_impl): Remove alias template. - (_Select_semaphore_impl): New alias template. - * include/std/semaphore (counting_semaphore): Use - _Select_semaphore_impl. - -2025-06-06 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120565 - * include/bits/chrono_io.h - (operator<<(basic_ostream<_CharT, _Traits>&, const sys_info&)) - (operator<<(basic_ostream<_CharT, _Traits>&, const local_info&)): - Support wchar_t as _CharT. - * testsuite/std/time/format/empty_spec.cc: Instantiated test_infos for - wchar_t and increase timeout. - -2025-06-06 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/empty_spec.cc: New tests and increased - timeout. - -2025-06-05 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120548 - * include/std/format (__formatter_fp::_M_localize): Do not - include a leading sign character in the string to be grouped. - * testsuite/std/format/functions/format.cc: Check grouping when - sign is present in the output. - -2025-06-05 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119152 - * src/c++23/std.cc.in (std::indirect, pmr::indirect) - [__cpp_lib_indirect] - (std::polymorphic, pmr::polymorphic) [__cpp_lib_polymorphic]: Export. - -2025-06-05 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120481 - * include/bits/chrono_io.h (__format::_S_chars): Reorder so it - contains "-{}". - (__format::_S_colon, __format::_S_slash, __format::_S_space) - (__format::_S_plus_minus): Updated starting indicies. - (__format::_S_minus_empty_spec): Define. - (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_R_T): - Rework implementation. - (__formatter_chrono::_M_d_e, __formatter_chrono::_M_F) - (__formatter_chrono::_M_m, __formatter_chrono::_M_u_w) - (__formatter_chrono::_M_H_I, __formatter_chrono::_M_p): - Handle multi digits values. - (__formatter_chrono::_S_digit): Return string view. - (__formatter_chrono::_S_str_d1, __formatter_chrono::_S_str_d2) - (__formatter_chrono::_S_fill_two_digits): Define. - * testsuite/std/time/format/empty_spec.cc: Update test for - year_month_day, that uses '%F'. - * testsuite/std/time/format/pr120481.cc: New test. - -2025-06-05 Nathan Myers <ncm@cantrip.org> - - Revert: - 2025-06-04 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119741 - * include/std/sstream: full implementation, really just - decls, requires clause and plumbing. - * include/bits/version.def, include/bits/version.h: - new preprocessor symbol - __cpp_lib_sstream_from_string_view. - * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: - New tests. - -2025-06-04 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/std/time/format/empty_spec.cc: Only test time zones - for cxx11 string ABI. - -2025-06-04 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/99832 - * include/bits/chrono.h (system_clock::to_time_t): Add - always_inline attribute to be agnostic to the underlying type of - time_t. - (system_clock::from_time_t): Add always_inline for consistency - with to_time_t. - * testsuite/20_util/system_clock/99832.cc: New test. - -2025-06-04 Nathan Myers <ncm@cantrip.org> - - PR libstdc++/119741 - * include/std/sstream: full implementation, really just - decls, requires clause and plumbing. - * include/bits/version.def, include/bits/version.h: - new preprocessor symbol - __cpp_lib_sstream_from_string_view. - * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: - New tests. - * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: - New tests. - * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: - New tests. - -2025-06-04 Patrick Palka <ppalka@redhat.com> - - * include/bits/c++config (_GLIBCXX_AUTO_CAST): Define. - * include/bits/iterator_concepts.h (_Decay_copy, __decay_copy): - Remove. - (__member_begin, __adl_begin): Use _GLIBCXX_AUTO_CAST instead of - __decay_copy as per P0849R8. - * include/bits/ranges_base.h (_Begin): Likewise. - (__member_end, __adl_end, _End): Likewise. - (__member_rbegin, __adl_rbegin, _RBegin): Likewise. - (__member_rend, __adl_rend, _Rend): Likewise. - (__member_size, __adl_size, _Size): Likewise. - (_Data): Likewise. - -2025-06-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/empty_spec.cc: New tests. - -2025-06-04 Patrick Palka <ppalka@redhat.com> - - * include/bits/ranges_algo.h (__starts_with_fn, starts_with): - Define. - (__ends_with_fn, ends_with): Define. - * include/bits/version.def (ranges_starts_ends_with): Define. - * include/bits/version.h: Regenerate. - * include/std/algorithm: Provide __cpp_lib_ranges_starts_ends_with. - * src/c++23/std.cc.in (ranges::starts_with): Export. - (ranges::ends_with): Export. - * testsuite/25_algorithms/ends_with/1.cc: New test. - * testsuite/25_algorithms/starts_with/1.cc: New test. - -2025-06-04 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/semaphore_base.h (_S_get_current): Replace with - non-static _M_get_current. - (_S_do_try_acquire): Replace with non-static _M_do_try_acquire. - -2025-06-04 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/104928 - * include/bits/semaphore_base.h (_S_do_try_acquire): Take old - value by reference. - (_M_acquire): Move _S_do_try_acquire call out of the predicate - and loop on its result. Make the predicate capture and update - the local copy of the value. - (_M_try_acquire_until, _M_try_acquire_for): Likewise. - (_M_try_acquire): Just call _M_try_acquire_for. - * testsuite/30_threads/semaphore/104928-2.cc: New test. - * testsuite/30_threads/semaphore/104928.cc: New test. - -2025-06-04 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono:_M_s): Add missing - __out argument to format_to call. - * testsuite/std/time/format/empty_spec.cc: New test. - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * include/std/stop_token: Check __glibcxx_jthread instead of - __cplusplus. - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (is_destructible, is_destructible_v): - Define using new built-in. - (is_nothrow_destructible, is_nothrow_destructible_v): Likewise. - (is_trivially_destructible, is_trivially_destructible_v): - Likewise. - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__detail::__wait_until): - Remove incorrect comment. - (__atomic_wait_address_until_v): Do not take address of __args in - call to __detail::__wait_until. Fix return statement to refer to - member of __wait_result_type. - (__atomic_wait_address_for_v): Change parameter type from - time_point to duration. - * src/c++20/atomic.cc (__spin_until_impl): Fix incorrect - return value. Reuse result of first call to clock. - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_vector.h (~_Vector_base): Add unreachable - hint for negative capacity and cast to size_t explicitly. - * include/bits/vector.tcc (vector::_M_realloc_append): Use - size() instead of end() - begin(). - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * include/std/bit (__rotl, __rotr): Use static_cast for - conversion from int to unsigned. - -2025-06-03 Jonathan Wakely <jwakely@redhat.com> - - * src/c++23/std.cc.in: Remove redundant checks for feature test - macros that are always true. - -2025-06-02 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/basic_string.h (basic_string::size): Remove space - before parameter list. - (basic_string::capacity): Likewise. - * include/bits/stl_deque.h (deque::size): Likewise. - * include/bits/stl_vector.h (vector::size, vector::capacity): - Likewise. - * include/bits/vector.tcc (vector::_M_realloc_insert): Likewise. - (vector::_M_realloc_append): Likewise. - -2025-06-02 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120386 - * include/bits/ranges_algo.h (__unique_copy_fn): Reorder - arguments for third case to match the first two cases. - * include/bits/stl_algo.h (__unique_copy): Replace three - overloads with two, depending only on the iterator category of - the input range. Dispatch to __unique_copy_1 for the - non-forward case. - (__unique_copy_1): New overloads for the case where the input - range uses non-forward iterators. - (unique_copy): Only pass the input range category to - __unique_copy. - * testsuite/25_algorithms/unique_copy/lwg2439.cc: New test. - -2025-06-02 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/funcwrap.h (__polyfunc::__pass_by_rref): Define. - (__polyfunc::__param_t): Update to use __pass_by_rref. - * include/bits/cpyfunc_impl.h:: Assert that are parameters type - are complete. - * include/bits/funcref_impl.h: Likewise. - * include/bits/mofunc_impl.h: Likewise. - * testsuite/20_util/copyable_function/call.cc: New test. - * testsuite/20_util/function_ref/call.cc: New test. - * testsuite/20_util/move_only_function/call.cc: New test. - * testsuite/20_util/copyable_function/conv.cc: New test. - * testsuite/20_util/function_ref/conv.cc: New test. - * testsuite/20_util/move_only_function/conv.cc: New test. - * testsuite/20_util/copyable_function/incomplete_neg.cc: New test. - * testsuite/20_util/function_ref/incomplete_neg.cc: New test. - * testsuite/20_util/move_only_function/incomplete_neg.cc: New test. - -2025-06-02 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119152 - * include/bits/indirect.h (std::polymorphic, pmr::polymorphic) - [__glibcxx_polymorphic]: Define. - * include/bits/version.def (polymorphic): Define. - * include/bits/version.h: Regenerate. - * include/std/memory: Define __cpp_lib_polymorphic. - * testsuite/std/memory/polymorphic/copy.cc: New test. - * testsuite/std/memory/polymorphic/copy_alloc.cc: New test. - * testsuite/std/memory/polymorphic/ctor.cc: New test. - * testsuite/std/memory/polymorphic/ctor_poly.cc: New test. - * testsuite/std/memory/polymorphic/incomplete.cc: New test. - * testsuite/std/memory/polymorphic/invalid_neg.cc: New test. - * testsuite/std/memory/polymorphic/move.cc: New test. - * testsuite/std/memory/polymorphic/move_alloc.cc: New test. - -2025-05-30 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/time/format/empty_spec.cc: New test. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h: Use __wait_result_type. - * include/bits/atomic_wait.h (__wait_result_type): New struct. - (__wait_args::_M_prep_for_wait_on): Rename to _M_setup_wait, use - __wait_result_type. - (__atomic_wait_address): Adjust to call _M_setup_wait. - * src/c++20/atomic.cc (__spin_impl): Use __wait_result_type. - (__wait_impl): Likewise. - (__spin_until_impl): Likewise. - (__wait_until_impl): Likewise. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118494 - PR libstdc++/110854 - PR libstdc++/98749 - * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Remove checks for - sem_timedwait. Do not define _GLIBCXX_HAVE_POSIX_SEMAPHORE. - * config.h.in: Regenerate. - * configure: Regenerate. - * include/bits/semaphore_base.h (__platform_semaphore): Remove. - (__atomic_semaphore): Replace with __semaphore_base<bool> and - make type of _M_count depend on template parameter. Fix _S_max - constant to use correct type. - (__semaphore_base::_M_try_acquire): Qualify to avoid ADL. - (__semaphore_base::_M_release): Return old value. Remove FIXME - comment. - (__semaphore_impl): Replace typedef with alias template. - * include/bits/version.def (semaphore): Do not depend on - _GLIBCXX_HAVE_POSIX_SEMAPHORE. - * include/bits/version.h: Regenerate. - * include/std/semaphore (semaphore): Adjust type of _M_sem - member. Add constexpr to constructor. Add assertions to - (semaphore::semaphore(ptrdiff_t)): Add constexpr. Add assertion - for precondition. - (semaphore::release): Add assertion using value returned from - _M_release. - * testsuite/30_threads/semaphore/100806.cc: Increase template - argument for std::counting_semaphore, so constructor - precondition is met. - * testsuite/30_threads/semaphore/cons.cc: New test. - * testsuite/30_threads/semaphore/try_acquire_posix.cc: Remove. - * testsuite/30_threads/semaphore/platform_try_acquire_for.cc: - Removed. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/std/barrier (__tree_barrier_base): New class. - (__tree_barrier): Move non-dependent code into - __tree_barrier_base and derive from it. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118395 - PR libstdc++/108974 - PR libstdc++/98749 - * include/std/barrier (__tree_barrier): Use default - member-initializers. Change _M_state member from - unique_ptr<__state_t[]> to atomic<__state_t*>. Add - no_unique_address attribute to _M_completion. - (__tree_barrier::_M_arrive): Load value from _M_state. - (__tree_barrier::_M_invoke_completion): New member function to - ensure a throwing completion function will terminate, as - proposed in LWG 3898. - (__tree_barrier::max): Reduce by one to avoid overflow. - (__tree_barrier::__tree_barrier): Add constexpr. Qualify call to - std::move. Remove mem-initializers made unnecessary by default - member-initializers. Add precondition check. Only allocate state - array if not constant evaluated. - (__tree_barrier::arrive): Add precondition check. Do deferred - initialization of _M_state if needed. - (barrier): Add static_assert, as proposed in LWG 3898. - (barrier::barrier): Add constexpr. - * testsuite/30_threads/barrier/cons.cc: New test. - * testsuite/30_threads/barrier/lwg3898.cc: New test. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/std/latch (latch::arrive_and_wait): Optimise. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * config/abi/pre/gnu.ver: Add new symbol version and exports. - * include/bits/atomic_timed_wait.h (__platform_wait_until): Move - to atomic.cc. - (__cond_wait_until, __spin_until_impl): Likewise. - (__wait_until_impl): Likewise. Change __wait_args_base parameter - to non-const reference and change third parameter to - __wait_clock_t::duration. - (__wait_until): Change __wait_args_base parameter to non-const - reference. Change Call time_since_epoch() to get duration from - time_point. - (__wait_for): Change __wait_args_base parameter to non-const - reference. - (__atomic_wait_address_until): Call _M_prep_for_wait_on on args. - (__atomic_wait_address_for): Likewise. - (__atomic_wait_address_until_v): Qualify call to avoid ADL. Do - not forward __vfn. - * include/bits/atomic_wait.h (__platform_wait_uses_type): Use - alignof(T) not alignof(T*). - (__futex_wait_flags, __platform_wait, __platform_notify) - (__waitable_state, __spin_impl, __notify_impl): Move to - atomic.cc. - (__wait_impl): Likewise. Change __wait_args_base parameter to - non-const reference. - (__wait_args_base::_M_wait_state): New data member. - (__wait_args_base::_M_prep_for_wait_on): New member function. - (__wait_args_base::_M_load_proxy_wait_val): New member - function. - (__wait_args_base::_S_memory_order_for): Remove member function. - (__atomic_wait_address): Call _M_prep_for_wait_on on args. - (__atomic_wait_address_v): Qualify call to avoid ADL. - * src/c++20/Makefile.am: Add new file. - * src/c++20/Makefile.in: Regenerate. - * src/c++20/atomic.cc: New file. - * testsuite/17_intro/headers/c++1998/49745.cc: Remove XFAIL for - C++20 and later. - * testsuite/29_atomics/atomic/wait_notify/100334.cc: Remove use - of internal implementation details. - * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.35 version. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__wait_until_impl): Adjust - to use new naming. - * include/bits/atomic_wait.h (__waiter_pool_impl): Rename to - __waitable_state. - (__waiter_pool_impl::_S_wait): Rename to _M_waiters. - (__waiter_pool_impl::_S_impl_for): Rename to _S_state_for. - (__waiter_pool_impl::_S_track): Adjust to use new naming. - (__wait_impl, __notify_impl): Likewise. - * testsuite/29_atomics/atomic/wait_notify/100334.cc: Adjust to - use new naming. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h - (__atomic_wait_address_until_v): Replace __atomic_compare with - __atomic_eq. - (__atomic_wait_address_for_v): Likewise. - * include/bits/atomic_wait.h (__atomic_compare): Rename to - __atomic_eq. - (__atomic_wait_address_v): Replace __atomic_compare with - __atomic_eq. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__wait_until_impl): Change - first parameter to const void* and then static_cast to const - __platform_wait_t* when not using proxied wait. - (__wait_until): Change first parameter to const void*. - (__wait_for): Likewise. - (__atomic_wait_address_until): Remove reinterpret_cast and allow - address to implicitly convert to const void* instead. - (__atomic_wait_address_for): Likewise. - * include/bits/atomic_wait.h: (__wait_impl, __notify_impl): - Change first parameter to const void* and then static_cast to - const __platform_wait_t* when not using proxied wait. - (__atomic_wait_address, __atomic_notify_address) Remove - reinterpret_cast and allow address to implicitly convert to - const void* instead. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_wait.h (__platform_wait): Change function - template to a normal function. The parameter is always - __platform_wait_t* which is just int* for this implementation of - the function. - (__platform_notify): Likewise. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__to_wait_clock): Do not use - chrono::ceil if clock and duration are already correct type. - (__wait_until): Always call __to_wait_clock. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_wait.h (__notify_impl): Increment the - proxy value before returning early for the uncontended case. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h (__cond_wait_impl): Add - missing inline keyword. - (__spin_until_impl): Change parameter from pointer to reference. - Replace make_pair with list-initialization. Initialize variable - for return value. - (__wait_until_impl): Likewise. Remove some preprocessor - conditional logic. Use _S_track for contention tracking. - Avoid unnecessary const_cast. - (__wait_until): Change parameter from pointer to reference. - Replace make_pair with list-initialization. - (__wait_for): Change parameter from pointer to reference. Add - __do_spin flag to args. - * include/bits/atomic_wait.h (__waiter_pool_impl::_S_track): New - function returning an RAII object for contention tracking. - (__wait_flags): Do not set the __do_spin flag in the __spin_only - enumerator. Comment out the unused __abi_version_mask - enumerator. Define operator| and operator|= overloads. - (__wait_args_base::operator&): Define. - (__wait_args::operator&, __wait_args::_S_default_flags): Remove. - (__wait_args::operator|, __wait_args::operator|=): Remove. - (__spin_impl): Change parameter from pointer to reference. - Replace make_pair call with list-initialization. - (__wait_impl): Likewise. Remove some preprocessor conditional - logic. Always store old value in __args._M_old. Avoid - unnecessary const_cast. Use _S_track. - (__notify_impl): Change parameter to reference. Remove some - preprocessor conditional logic. - (__atomic_wait_address): Add comment. Update __args._M_old on - each iteration. - (__atomic_wait_address_v): Add comment. - * include/std/latch (latch::wait): Adjust predicates for new - logic. - * testsuite/29_atomics/atomic_integral/wait_notify.cc: Improve - test. - -2025-05-30 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_timed_wait.h: Whitespace fixes. - * include/bits/atomic_wait.h: Likewise. - -2025-05-30 Thomas Rodgers <trodgers@redhat.com> - - * include/bits/atomic_timed_wait.h (__spin_until_impl): Accept - __wait_args as const __wait_args_base*. - (__wait_until_impl): Likewise. - (__wait_until): Likewise. - (__wait_for): Likewise. - (__atomic_wait_address_until): Pass __wait_args by address. - (__atomic_wait_address_for): Likewise. - * include/bits/atomic_wait.h (__wait_args_base): New struct. - (__wait_args): Derive from __wait_args_base. - (__wait_args::__wait_args()): Adjust ctors to call call base ctor. - (__wait_args::__wait_args(const __wait_args_base&)): New ctor. - (__wait_args::operator|=): New method. - (__wait_args::_S_flags_for): Change return type to - __wait_flags. - (__spin_impl): Accept __wait_args as const __wait_args_base*. - (__wait_impl): Likewise. - (__notify_impl): Likewise. - (__atomic_wait_address): Pass __wait_args by address. - (__atomic_wait_address_v): Likewise. - (__atomic_notify_address): Likewise. - -2025-05-30 Thomas Rodgers <trodgers@redhat.com> - - * include/bits/atomic_timed_wait.h: - (__detail::__platform_wait_until_impl): Rename to - __platform_wait_until. - (__detail::__platform_wait_until): Remove previous - definition. - (__detail::__cond_wait_until_impl): Rename to - __cond_wait_until. - (__detail::__cond_wait_until): Remove previous - definition. - (__detail::__spin_until_impl): New function. - (__detail::__wait_until_impl): New function. - (__detail::__wait_until): New function. - (__detail::__wait_for): New function. - (__detail::__timed_waiter_pool): Remove type. - (__detail::__timed_backoff_spin_policy): Remove type. - (__detail::__timed_waiter): Remove type. - (__detail::__enters_timed_wait): Remove type alias. - (__detail::__bare_timed_wait): Remove type alias. - (__atomic_wait_address_until): Adjust to new implementation - detail. - (__atomic_wait_address_until_v): Likewise. - (__atomic_wait_address_bare): Remove. - (__atomic_wait_address_for): Adjust to new implementation - detail. - (__atomic_wait_address_for_v): Likewise. - (__atomic_wait_address_for_bare): Remove. - * include/bits/atomic_wait.h: Include bits/stl_pair.h. - (__detail::__default_spin_policy): Remove type. - (__detail::__atomic_spin): Remove function. - (__detail::__waiter_pool_base): Rename to __waiter_pool_impl. - Remove _M_notify. Rename _S_for to _S_impl_for. - (__detail::__waiter_base): Remove type. - (__detail::__waiter_pool): Remove type. - (__detail::__waiter): Remove type. - (__detail::__enters_wait): Remove type alias. - (__detail::__bare_wait): Remove type alias. - (__detail::__wait_flags): New enum. - (__detail::__wait_args): New struct. - (__detail::__wait_result_type): New type alias. - (__detail::__spin_impl): New function. - (__detail::__wait_impl): New function. - (__atomic_wait_address): Adjust to new implementation detail. - (__atomic_wait_address_v): Likewise. - (__atomic_notify_address): Likewise. - (__atomic_wait_address_bare): Delete. - (__atomic_notify_address_bare): Likewise. - * include/bits/semaphore_base.h: Adjust implementation to - use new __atomic_wait_address_v contract. - * include/std/barrier: Adjust implementation to use new - __atomic_wait contract. - * include/std/latch: Adjust implementation to use new - __atomic_wait contract. - * testsuite/29_atomics/atomic/wait_notify/100334.cc (main): - Adjust to for __detail::__waiter_pool_base renaming. - -2025-05-29 Patrick Palka <ppalka@redhat.com> - - * include/std/flat_map (_Flat_map_impl::operator==): Compare - keys and values separately. - -2025-05-29 Patrick Palka <ppalka@redhat.com> - Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120465 - * include/std/flat_map (_Flat_map_impl::_M_erase_if): Use a - projection with ranges::remove_if to pass a pair instead of - a tuple to the predicate. - * testsuite/23_containers/flat_map/1.cc (test07): Strengthen - to expect the argument passed to the predicate is a pair. - * testsuite/23_containers/flat_multimap/1.cc (test07): Likewise. - -2025-05-29 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/17_intro/names.cc [_AIX] (a): Undefine. - * testsuite/experimental/names.cc [_AIX] (ptr): Undefine. - -2025-05-29 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/22_locale/num_put/put/char/lwg4084.cc [_AIX]: Adjust - expected output for NaN and infinity. - -2025-05-29 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: - Remove dg-xfail-run-if for AIX. - * testsuite/23_containers/unordered_map/96088.cc: Replace - dg-xfail-run-if with dg-require-effective-target c++20. - * testsuite/23_containers/unordered_multimap/96088.cc: Likewise. - * testsuite/23_containers/unordered_multiset/96088.cc: Likewise. - * testsuite/23_containers/unordered_set/96088.cc: Likewise. - -2025-05-29 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/boost_concept_check.h: Disable -Wlong-long - warnings. - * testsuite/24_iterators/operations/prev_neg.cc: Adjust dg-error - line number. - -2025-05-29 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/test.xml: Remove outdated documentation on - testing with -std options in --target_board. - * doc/html/manual/test.html: Regenerate. - -2025-05-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/17_intro/names.cc [_AIX] (n): Undefine. - * testsuite/experimental/names.cc [_AIX] (ptr): Undefine. - -2025-05-27 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/std/format/debug.cc: Disable for targets with 16-bit - wchar_t. - * testsuite/std/format/functions/format.cc: Use -DUNICODE for - targets with 32-bit wchar_t. - (test_unicode) [UNICODE]: Only run checks when UNICODE is - defined. - -2025-05-27 Jonathan Wakely <jwakely@redhat.com> - - * include/Makefile.in: Regenerate. - -2025-05-27 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/96710 - * include/bits/std_abs.h [__SIZEOF_INT128__] (abs(__int128)): - Define. - [_GLIBCXX_USE_FLOAT128] (abs(__float128)): Enable definition for - strict modes. - * testsuite/26_numerics/headers/cmath/82644.cc: Use strict_std - instead of defining __STRICT_ANSI__. - * testsuite/26_numerics/headers/cstdlib/abs128.cc: New test. - -2025-05-27 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan: Value initialize the array storing the - dynamic extents. - * testsuite/23_containers/mdspan/extents/ctor_default.cc: New - test. - -2025-05-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119152 - * testsuite/std/memory/indirect/ctor.cc: Run test_inplace_ctor. - -2025-05-26 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119152 - * doc/doxygen/stdheader.cc: Added indirect.h file. - * include/Makefile.am: Add new header. - * include/Makefile.in: Regenerate. - * include/bits/indirect.h: New file. - * include/bits/version.def (indirect): Define. - * include/bits/version.h: Regenerate. - * include/std/memory: Include new header. - * testsuite/std/memory/indirect/copy.cc - * testsuite/std/memory/indirect/copy_alloc.cc - * testsuite/std/memory/indirect/ctor.cc - * testsuite/std/memory/indirect/incomplete.cc - * testsuite/std/memory/indirect/invalid_neg.cc - * testsuite/std/memory/indirect/move.cc - * testsuite/std/memory/indirect/move_alloc.cc - * testsuite/std/memory/indirect/relops.cc - -2025-05-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119126 - * doc/doxygen/stdheader.cc: Added funcref_impl.h file. - * include/Makefile.am: Added funcref_impl.h file. - * include/Makefile.in: Added funcref_impl.h file. - * include/bits/funcref_impl.h: New file. - * include/bits/funcwrap.h: (_Ptrs::_M_obj): Const-qualify. - (_Storage::_M_ptr, _Storage::_M_ref): Remove. - (__polyfunc::__cast_to) Define. - (_Base_invoker::_S_ptrs, _Base_invoker::_S_nttp) - (_Base_invoker::_S_bind_ptrs, _Base_invoker::_S_bind_ref) - (_Base_invoker::_S_call_ptrs): Define. - (_Base_invoker::_S_call_storage): Foward to _S_call_ptrs. - (_Manager::_S_local, _Manager::_S_ptr): Adjust for _M_obj being - const qualified. - (__polyfunc::_Manager, __polyfunc::_Mo_base): Guard with - __glibcxx_move_only_function || __glibcxx_copyable_function. - (__polyfunc::__skip_first_arg, __polyfunc::__deduce_funcref) - (std::function_ref) [__glibcxx_function_ref]: Define. - * include/bits/utility.h (std::nontype_t, std::nontype) - (__is_nontype_v) [__glibcxx_function_ref]: Define. - * include/bits/version.def: Define function_ref. - * include/bits/version.h: Regenerate. - * include/std/functional: Define __cpp_lib_function_ref. - * src/c++23/std.cc.in (std::nontype_t, std::nontype) - (std::function_ref) [__cpp_lib_function_ref]: Export. - * testsuite/20_util/function_ref/assign.cc: New test. - * testsuite/20_util/function_ref/call.cc: New test. - * testsuite/20_util/function_ref/cons.cc: New test. - * testsuite/20_util/function_ref/cons_neg.cc: New test. - * testsuite/20_util/function_ref/conv.cc: New test. - * testsuite/20_util/function_ref/deduction.cc: New test. - * testsuite/20_util/function_ref/mutation.cc: New test. - -2025-05-23 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120384 - * include/bits/stl_algo.h (__unique_copy): Remove all - _BinaryPredicateConcept concept checks. - (unique_copy): Check _BinaryPredicateConcept in overload that - takes a predicate. - * testsuite/25_algorithms/unique_copy/120384.cc: New test. - -2025-05-23 Jonathan Wakely <jwakely@redhat.com> - - * include/std/type_traits (is_constant_evaluated): Add - always_inline attribute. - -2025-05-23 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/17_intro/names.cc [__sun__] (a, i, n): Undefine. - -2025-05-23 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> - - * testsuite/std/format/parse_ctx.cc: Fix typo for bfloat16 guard. - -2025-05-22 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/allocated_ptr.h (_Scoped_allocation): New class - template. - -2025-05-22 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/util/pstl/test_utils.h (ForwardIterator::operator++): - Fix return type. - (BidirectionalIterator::operator++): Likewise. - (BidirectionalIterator::operator--): Likewise. - -2025-05-22 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120367 - * include/bits/stl_vector.h (_M_range_initialize): Initialize - _M_impl._M_finish. - * testsuite/23_containers/vector/cons/from_range.cc: Check with - a type that throws on construction. - exceptions during construction. - -2025-05-21 Alexandre Oliva <oliva@adacore.com> - - * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc: - Guard non-wide stold calls with conditions for it to be - defined. - * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc: - Likewise. - -2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> - - PR libstdc++/81806 - * include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp - (split_finish): Use maintained size, instead of calling - std::distance. - -2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> - - * include/ext/pb_ds/detail/rb_tree_map_/node.hpp - (rb_tree_node_::size_type): New typedef. - (rb_tree_node_::m_subtree_size): New field. - * include/ext/pb_ds/detail/splay_tree_/node.hpp - (splay_tree_node_::size_type): New typedef. - (splay_tree_node_::m_subtree_size): New field. - * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp - (PB_DS_BIN_TREE_NAME::update_subtree_size): Declare new member - function. - * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp - (update_subtree_size): Define. - (apply_update, update_to_top): Call update_subtree_size. - -2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> - - * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp - (insert_leaf_new, insert_imp_empty): remove redundant statements. - -2025-05-20 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (_ChronoSpec::_M_locale_specific): - Declare as bit fiekd in tail-padding.. - * include/bits/formatfwd.h (__format::_Align): Defined as enum - class and add using enum. - * include/std/format (__format::_Pres_type, __format::_Sign) - (__format::_WidthPrec, __format::_Arg_t): Defined as enum class - and add using enum. - (_Pres_type::_Pres_esc): Replace with _Pres_max. - (_Pres_type::_Pres_seq, _Pres_type::_Pres_str): Remove. - (__format::_Pres_type): Updated values of enumerators as described - above. - (__format::_Spec): Rearranged members to have 8 bits of tail-padding. - (_Spec::_M_debug): Defined. - (_Spec::_M_reserved): Extended to 8 bits and moved at the end. - (_Spec::_M_reserved2): Removed. - (_Spec::_M_parse_fill_and_align, _Spec::_M_parse_sign) - (__format::__write_padded_as_spec): Adjusted default value checks. - (__format::_Term_char): Add using enum and adjust enumertors. - (__Escapes::_S_term): Adjusted for _Term_char values. - (__format::__should_escape_ascii): Adjusted _Term_char uses. - (__format::__write_escaped): Adjusted for _Term_char. - (__formatter_str::parse): Set _Pres_s if specifed and _M_debug - instead of _Pres_esc. - (__formatter_str::set_debug_format): Set _M_debug instead of - _Pres_esc. - (__formatter_str::format, __formatter_str::_M_format_range): - Check _M_debug instead of _Prec_esc. - (__formatter_str::_M_format_escaped): Adjusted _Term_char uses. - (__formatter_int::__formatter_int(_Spec<_CharT>)): Set _Pres_d if - default presentation type is not set. - (__formatter_int::_M_parse): Adjusted default value checks. - (__formatter_int::_M_do_parse): Set _M_debug instead of _Pres_esc. - (__formatter_int::_M_format_character): Handle escaped presentation. - (__formatter_int::_M_format_character_escaped) - (__formatter_int::_S_character_width): Merged into - _M_format_character. - (__formatter_ptr::__formatter_ptr(_Spec<_CharT>)): Set _Pres_p if - default presentation type is not set. - (__formatter_ptr::parse): Add default __type parameter, store _Pres_p, - and handle _M_alt to be consistent with meaning for integers. - (__foramtter_ptr<_CharT>::_M_set_default): Define. - (__format::__pack_arg_types, std::basic_format_args): Add necessary - casts. - (formatter<_CharT, _CharT>::set_debug_format) - (formatter<char, wchar_t>::set_debug_format): Set _M_debug instead of - _Pres_esc. - (formatter<_CharT, _CharT>::format, formatter<char, wchar_t>::format): - Simplify calls to _M_format_character. - (range_formatter<_Rg, _CharT>::parse): Replace _Pres_str with - _Pres_s and set _M_debug instead of _Pres_esc. - (range_formatter<_Rg, _CharT>::format): Replace _Pres_str with - _Pres_s. - -2025-05-20 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/faq.xml: Update URL for archived SGI STL docs. - * doc/xml/manual/containers.xml: Likewise. - * doc/xml/manual/extensions.xml: Likewise. - * doc/xml/manual/using.xml: Likewise. - * doc/xml/manual/utilities.xml: Likewise. - * doc/html/*: Regenerate. - -2025-05-19 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (_ZipTransform::operator()): Remove name of - unused parameter. - (chunk_view::_Iterator, stride_view::_Iterator): Likewise. - (join_with_view): Declare _Iterator and _Sentinel as class - instead of struct. - (repeat_view): Declare _Iterator as class instead of struct. - -2025-05-19 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120293 - * include/bits/chrono_io.h (_M_format_to_ostream): Add special - case for local_time convertible to local_days. - * testsuite/std/time/clock/local/io.cc: Check formatting of - chrono::local_days. - -2025-05-16 Patrick Palka <ppalka@redhat.com> - - * include/std/type_traits (__is_invocable): Define in terms of - corresponding builtin if available. - (__is_nothrow_invocable): Likewise. - (is_invocable_v): Likewise. - (is_nothrow_invocable_v): Likewise. - -2025-05-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/65909 - * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): - Change name of formal argument to locale. - -2025-05-15 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/std/mdspan: Implement the mandate for extents as - signed or unsigned integer and not any interal type. Remove - leading underscores from names in static_assert message. - * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: - Check that extents<char,...> and extents<bool,...> are invalid. - Adjust dg-prune-output pattern. - * testsuite/23_containers/mdspan/extents/misc.cc: Update - tests to avoid `char` and `bool` as IndexType. - -2025-05-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120190 - * include/std/format (format_kind): Adjust primary template to - not depend on itself. - * testsuite/std/format/ranges/format_kind_neg.cc: Adjust - expected errors. Check more invalid specializations. - -2025-05-15 Jonathan Wakely <jwakely@redhat.com> - - * include/std/complex (arg(T)): Use __builtin_signbit instead of - std::signbit. - -2025-05-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120235 - * doc/html/*: Regenerate. - * doc/xml/manual/evolution.xml: Document deprecation. - * include/std/complex: Replace references to TR1 subclauses with - corresponding C++11 subclauses. - (fabs): Add deprecated attribute. - * testsuite/26_numerics/complex/fabs_neg.cc: New test. - -2025-05-15 Jason Merrill <jason@redhat.com> - - * testsuite/lib/libstdc++.exp: Add -Wabi. - -2025-05-15 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119246 - * include/std/format: Updated check for _GLIBCXX_FORMAT_F128. - -2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119125 - * include/bits/move_only_function.h: Move to... - * include/bits/funcwrap.h: ...here. - * doc/doxygen/stdheader.cc (init_map): Replaced move_only_function.h - with funcwrap.h, and changed include guard to use feature test macro. - Move bits/version.h include before others. - * include/Makefile.am: Likewise. - * include/Makefile.in: Likewise. - * include/std/functional: Likewise. - -2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119125 - * doc/doxygen/stdheader.cc: Addded cpyfunc_impl.h header. - * include/Makefile.am: Add bits cpyfunc_impl.h. - * include/Makefile.in: Add bits cpyfunc_impl.h. - * include/bits/cpyfunc_impl.h: New file. - * include/bits/mofunc_impl.h: Mention LWG 4255. - * include/bits/move_only_function.h: Update header description - and change guard to also check __glibcxx_copyable_function. - (_Manager::_Func): Remove noexcept. - (std::__is_polymorphic_function_v<move_only_function<_Tp>>) - (__variant::_Never_valueless_alt<std::move_only_function<_Signature...>>) - (move_only_function) [__glibcxx_move_only_function]: Adjust guard. - (std::__is_polymorphic_function_v<copyable_function<_Tp>>) - (__variant::_Never_valueless_alt<std::copyable_function<_Signature...>>) - (__polyfunc::_Cpy_base, std::copyable_function) - [__glibcxx_copyable_function]: Define. - * include/bits/version.def: Define copyable_function. - * include/bits/version.h: Regenerate. - * include/std/functional: Define __cpp_lib_copyable_function. - * src/c++23/std.cc.in (copyable_function) - [__cpp_lib_copyable_function]: Export. - * testsuite/20_util/copyable_function/call.cc: New test based on - move_only_function tests. - * testsuite/20_util/copyable_function/cons.cc: New test based on - move_only_function tests. - * testsuite/20_util/copyable_function/conv.cc: New test based on - move_only_function tests. - * testsuite/20_util/copyable_function/copy.cc: New test. - * testsuite/20_util/copyable_function/move.cc: New test based on - move_only_function tests. - -2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119125 - * include/bits/mofunc_impl.h: (std::move_only_function): Adjusted for - changes in bits/move_only_function.h - (move_only_function::move_only_function(_Fn&&)): Special case - move_only_functions with same invoker. - (move_only_function::operator=(move_only_function&&)): Handle self - assigment. - * include/bits/move_only_function.h (__polyfunc::_Ptrs) - (__polyfunc::_Storage): Refactored from _Mo_func::_Storage. - (__polyfunc::__param_t): Moved from move_only_function::__param_t. - (__polyfunc::_Base_invoker, __polyfunc::_Invoke): Refactored from - move_only_function::_S_invoke. - (__polyfunc::_Manager): Refactored from _Mo_func::_S_manager. - (std::_Mofunc_base): Moved into __polyfunc::_Mo_base with parts - extracted to __polyfunc::_Storage and __polyfunc::_Manager. - (__polyfunc::__deref_as, __polyfunc::__invoker_of) - (__polyfunc::__base_of, __polyfunc::__is_invoker_convertible): Define. - (std::__is_move_only_function_v): Renamed to - __is_polymorphic_function_v. - (std::__is_polymorphic_function_v): Renamed from - __is_move_only_function_v. - * testsuite/20_util/move_only_function/call.cc: Test for - functions pointers. - * testsuite/20_util/move_only_function/conv.cc: New test. - * testsuite/20_util/move_only_function/move.cc: Tests for - self assigment. - -2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119246 - * include/std/format (__format::__bflt16_t): Define. - (_GLIBCXX_FORMAT_F128): Separate value for cases where _Float128 - is used. - (__format::__float128_t): Renamed to __format::__flt128_t. - (std::formatter<_Float128, _CharT>): Define always if there is - formattable 128bit float. - (std::formatter<__float128, _CharT>): Define. - (_Arg_type::_Arg_f128): Rename to _Arg_float128 and adjust value. - (_Arg_type::_Arg_ibm128): Change value to _Arg_ldbl. - (_Arg_type::_Arg_ieee128): Define as alias to _Arg_float128. - (_Arg_value::_M_f128): Replaced with _M_ieee128 and _M_float128. - (_Arg_value::_M_ieee128, _Arg_value::_M_float128) - (_Arg_value::_M_bf16, _Arg_value::_M_f16, _Arg_value::_M_f32) - (_Arg_value::_M_f64): Define. - (_Arg_value::_S_get, basic_format_arg::_S_to_enum): Handle __bflt16, - _Float16, _Float32, _Float64, and __float128 types. - (basic_format_arg::_S_to_arg_type): Preserve _bflt16, _Float16, - _Float32, _Float64 and __float128 types. - (basic_format_arg::_M_visit): Handle _Arg_float128, _Arg_ieee128, - _Arg_b16, _Arg_f16, _Arg_f32, _Arg_f64. - * testsuite/std/format/arguments/args.cc: Updated to illustrate - that extended floating point types use handles now. Added test - for __float128. - * testsuite/std/format/parse_ctx.cc: Extended test to cover class - to check_dynamic_spec with floating point types and handles. - -2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> - - * include/std/utility (to_underlying): Add the __always_inline__ attribute. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119645 - * configure.host [GCN, nvptx] (atomicity_dir): Don't set. - -2025-05-12 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/119714 - PR libstdc++/112490 - * include/std/expected (expected::operator==): Replace - non-dependent std::expected function parameter with a dependent - one of type expected<_Vp, _Er> where _Vp matches _Tp. - * testsuite/20_util/expected/119714.cc: New test. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120187 - * include/c_global/ciso646: Only give deprecated warning for - C++20 and later. - * include/c_global/ccomplex: Add @since to Doxygen comment. - * include/c_global/cstdalign: Likewise. - * include/c_global/cstdbool: Likewise. - * include/c_global/ctgmath: Likewise. - * testsuite/18_support/headers/ciso646/macros.cc: Remove - dg-warning for c++17_only effective target. - * testsuite/18_support/headers/ciso646/macros-2.cc: New test. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/status_cxx2023.xml: Update status of proposals - implemented after GCC 14.2 release. - * doc/html/manual/status.html: Regenerate. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120198 - * include/bits/version.def (scoped_lock): Do not depend on - gthreads or hosted. - * include/bits/version.h: Regenerate. - * include/std/mutex (scoped_lock): Update comment. - * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: - Remove dg-require-gthreads and use custom lockable type instead - of std::mutex. Check that typedef is only present for a single - template argument. - -2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> - - PR libstdc++/70560 - PR libstdc++/119667 - * acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Use '__SIZE_TYPE__' - instead of 'size_t'. - * configure: Regenerate. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118260 - * python/hook.in: Suppress output from gdb.execute calls to - register skips. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/status_cxx2017.xml: Update status for - std::to_chars and std::from_chars. - * doc/html/manual/*: Regenerate. - -2025-05-12 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/65909 - * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): - Hardcode the locale name instead of passing it to the - executable. Do not hardcode buffer size for string. - -2025-05-10 Alexandre Oliva <oliva@adacore.com> - - * src/c++23/print.cc [__VXWORKS__]: Include ioLib.h. - -2025-05-09 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): - Extracted from _M_format. - (__formatter_chrono::_M_format): Use _Padding_sink and delegate - to _M_format_to. - -2025-05-09 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/format (__Sink_iter<_CharT>::_M_discarding) - (__Sink<_CharT>::_M_discarding, _Iter_sink<_CharT, _OutIter>::_M_discarding) - (_Padding_sinl<_CharT, _Out>::_M_padwidth) - (_Padding_sink<_CharT, _Out>::_M_maxwidth): Remove const. - (_Padding_sink<_CharT, _Out>::_M_sync_discarding) - (_Padding_sink<_CharT, _Out>::_M_discarding): Define. - (_Padding_sink<_CharT, _Out>::_Padding_sink(_Out, size_t, size_t)) - (_Padding_sink<_CharT, _Out>::_M_force_update): - (_Padding_sink<_CharT, _Out>::_M_flush): Call _M_sync_discarding. - (_Padding_sink<_CharT, _Out>::_Padding_sink(_Out, size_t)): Delegate. - -2025-05-07 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120159 - * src/c++23/std.cc.in (is_layout_compatible_v): Export. - -2025-05-07 Jonathan Wakely <jwakely@redhat.com> - - * src/c++23/std.cc.in: Fix export for std::extents. - -2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> - - * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: New test. - * testsuite/23_containers/mdspan/extents/ctor_copy.cc: New test. - * testsuite/23_containers/mdspan/extents/ctor_ints.cc: New test. - * testsuite/23_containers/mdspan/extents/ctor_shape.cc: New test. - * testsuite/23_containers/mdspan/extents/custom_integer.cc: New test. - * testsuite/23_containers/mdspan/extents/misc.cc: New test. - -2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> - - PR libstdc++/107761 - * include/std/mdspan (extents): New class. - * src/c++23/std.cc.in: Add 'using std::extents'. - -2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> - - * doc/doxygen/user.cfg.in: Add <mdspan>. - * include/Makefile.am: Ditto. - * include/Makefile.in: Ditto. - * include/precompiled/stdc++.h: Ditto. - * include/std/mdspan: New file. - -2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> - - * include/bits/version.def: Add internal feature testing macro - __glibcxx_mdspan. - * include/bits/version.h: Regenerate. - -2025-05-07 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/120114 - * include/bits/chrono_io.h (__formatter_chrono::_M_format): Use __field_width. - * testsuite/std/time/format/pr120114.cc: New test. - -2025-05-07 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120147 - * acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Restore use of - AC_LANG_CPLUSPLUS. - * configure: Regenerate. - -2025-05-06 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/70560 - PR libstdc++/119667 - * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Only check for - __atomic_fetch_add on _Atomic_word. Define new macro - _GLIBCXX_ATOMIC_WORD_BUILTINS and stop defining macro - _GLIBCXX_ATOMIC_BUILTINS. - (GLIBCXX_ENABLE_BACKTRACE): Check for __atomic_load_n and - __atomic_store_n on int, void* and size_t. - * config.h.in: Regenerate. - * configure: Regenerate. - * configure.host: Fix typo in comment. - * include/ext/atomicity.h (__exchange_and_add, __atomic_add): - Depend on _GLIBCXX_ATOMIC_WORD_BUILTINS macro instead of old - _GLIBCXX_ATOMIC_BUILTINS macro. - -2025-05-06 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117905 - * include/pstl/glue_numeric_impl.h (reduce, transform_reduce) - (transform_reduce, inclusive_scan, transform_exclusive_scan) - (transform_inclusive_scan): Use std::move for __init parameter. - * include/pstl/numeric_impl.h (__brick_transform_reduce) - (__pattern_transform_reduce, __brick_transform_scan) - (__pattern_transform_scan): Likewise. - * include/std/numeric (inclusive_scan, transform_exclusive_scan): - Use std::move to create local copy of the first element. - * testsuite/26_numerics/pstl/numeric_ops/108236.cc: Move test - using move-only type to ... - * testsuite/26_numerics/pstl/numeric_ops/move_only.cc: New test. - -2025-05-06 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/120029 - * src/c++17/fs_path.cc (path::operator+=(const path&)): Handle - parameters that alias the path or one of its components. - * testsuite/27_io/filesystem/path/concat/120029.cc: New test. - * testsuite/experimental/filesystem/path/concat/120029.cc: New - test. - -2025-05-06 Jonathan Wakely <jwakely@redhat.com> - - PR c++/120112 - * include/bits/ptr_traits.h (_Safe_iterator_base): Use class - keyword in class-head of declaration. - * include/debug/debug.h (_Safe_iterator): Likewise. - -2025-05-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_iterator.h (counted_iterator): Add noexcept - to friend operators which only access the _M_length member. - -2025-05-02 Dhruv Chawla <dhruvc@nvidia.com> - - * include/std/memory: Define __glibcxx_want_addressof_constexpr. - * testsuite/20_util/headers/memory/version.cc: Test for macro - value. - -2025-05-02 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/23_containers/vector/allocator/default_init.cc: - Add a check using constant evaluation. - * testsuite/23_containers/vector/bool/allocator/default_init.cc: - Likewise. - * testsuite/util/testsuite_allocator.h (default_init_allocator): - Make all member functions and equality ops constexpr. - -2025-05-02 Jonathan Wakely <jwakely@redhat.com> - - * src/c++11/Makefile.am: Simplify existing prerequisites for wchar and - dual-abi targets that are built from other sources. Add similar - prerequisites for more wchar and dual-abi files. - * src/c++11/Makefile.in: Regenerate. - * src/c++17/Makefile.am [ENABLE_DUAL_ABI]: Add prerequisites for - dual-abi targets that are built from other sources. - * src/c++17/Makefile.in: Regenerate. - -2025-04-30 François Dumont <frs.dumont@gmail.com> - Jonathan Wakely <jwakely@redhat.com> - - * testsuite/lib/libstdc++.exp (v3_target_compile): Strip version namespace - from compiler output. - * testsuite/20_util/aligned_storage/value.cc [_GLIBCXX_INLINE_VERSION]: - Avoid align_msa check. - * testsuite/20_util/function/cons/70692.cc: Remove now useless __8 namespace - pattern. - * testsuite/23_containers/map/48101_neg.cc: Likewise. - * testsuite/23_containers/multimap/48101_neg.cc: Likewise. - -2025-04-30 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/std/format (_Padding_sink::_M_update): Fixed condition for - calling _M_force_update. - * testsuite/std/format/debug.cc: Add test that reproduces this issue - on 64bit architecture. - * testsuite/std/format/ranges/sequence.cc: Another edge value test. - -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 - shared_ptr and weak_ptr. - Add more tests. - * testsuite/20_util/weak_ptr/requirements/1.cc: Removed as - superseded by the other test. - -2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119970 - * include/std/ostream (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call - _Str_sink::_M_span instead of view. - * include/std/print (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call - _Str_sink::_M_span instead of view. - -2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/ranges_base.h (__detail::__range_key_type): - Replace remove_const_t with remove_cvref_t. - (__detail::__range_mapped_type): Apply remove_cvref_t. - * include/bits/stl_iterator.h: (__detail::__iter_key_t): - Replace remove_const_t with __remove_cvref_t. - (__detail::__iter_val_t): Apply __remove_cvref_t. - * testsuite/23_containers/flat_map/1.cc: New tests. - * testsuite/23_containers/flat_multimap/1.cc: New tests. - * testsuite/23_containers/map/cons/deduction.cc: New tests. - * testsuite/23_containers/map/cons/from_range.cc: New tests. - * testsuite/23_containers/multimap/cons/deduction.cc: New tests. - * testsuite/23_containers/multimap/cons/from_range.cc: New tests. - * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests. - * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. - * testsuite/23_containers/unordered_multimap/cons/deduction.cc: - New tests. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - New tests. - -2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/unordered_map.h (unordered_map): - Define constructors accepting: - (_InputIterator, _InputIterator, const allocator_type&), - (initializer_list<value_type>, const allocator_type&), - (unordered_multimap): Likewise. - * include/debug/unordered_map (unordered_map): Likewise. - (unordered_multimap): Likewise. - * include/bits/unordered_set.h (unordered_set): - Define constructors and deduction guide accepting: - (_InputIterator, _InputIterator, const allocator_type&), - (initializer_list<value_type>, const allocator_type&), - (unordered_multiset): Likewise. - * include/debug/unordered_set (unordered_set): Likewise. - (unordered_multiset): Likewise. - * testsuite/23_containers/unordered_map/cons/66055.cc: New tests. - * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests. - * testsuite/23_containers/unordered_multimap/cons/66055.cc: New tests. - * testsuite/23_containers/unordered_multimap/cons/deduction.cc: New - tests. - * testsuite/23_containers/unordered_multiset/cons/66055.cc: New tests. - * testsuite/23_containers/unordered_multiset/cons/deduction.cc: New - tests. - * testsuite/23_containers/unordered_set/cons/66055.cc: New tests. - * testsuite/23_containers/unordered_set/cons/deduction.cc: New tests. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ptr_traits.h (to_address): Use markdown for - formatting in Doxygen comments. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * src/c++11/Makefile.am: Add prerequisites for targets that - depend on string-inst.cc. - * src/c++11/Makefile.in: Regenerate. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/move.h (addressof): Use __builtin_addressof - directly. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: - Remove dg-error directives for additional c++26 errors. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * include/std/latch (latch::_M_a): Rename to _M_counter. - -2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/bits/formatfwd.h (__simply_formattable_range): Moved from - std/format. - * include/std/format (__formatter_str::_format): Extracted escaped - string handling to separate method... - (__formatter_str::_M_format_escaped): Use __Padding_sink. - (__formatter_str::_M_format): Adjusted implementation. - (__formatter_str::_S_trunc): Extracted as namespace function... - (__format::_truncate): Extracted from __formatter_str::_S_trunc. - (__format::_Seq_sink): Removed forward declarations, made members - protected and non-final. - (_Seq_sink::_M_trim): Define. - (_Seq_sink::_M_span): Renamed from view. - (_Seq_sink::view): Returns string_view instead of span. - (__format::_Str_sink): Moved after _Seq_sink. - (__format::__format_padded): Use _Padding_sink. - * testsuite/std/format/debug.cc: Add timeout and new tests. - * testsuite/std/format/ranges/sequence.cc: Specify unicode as - encoding and new tests. - * testsuite/std/format/ranges/string.cc: Likewise. - * testsuite/std/format/tuple.cc: Likewise. - -2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/format/ranges/adaptors.cc: Updated test. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/22_locale/ctype/is/string/89728_neg.cc: Remove - dg-error for c++98_only effective target. - -2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119918 - * include/bits/formatfwd.h (__format::_Align): Moved from std/format. - (std::__throw_format_error, __format::__formatter_str) - (__format::__formatter_ptr): Declare. - * include/std/format (__format::_Align): Moved to bits/formatfwd.h. - (__formatter_int::__formatter_int): Define. - (__format::__formatter_ptr): Extracted from formatter for const void*. - (std::formatter<const void*, _CharT>, formatter<void*, _CharT>) - (std::formatter<nullptr_t, _CharT>): Delegate to __formatter_ptr<_CharT>. - * include/std/thread (std::formatter<thread::id, _CharT>): Constrain - _CharT template parameter. - (formatter<thread::id, _CharT>::parse): Specify default aligment, and - qualify __throw_format_error to disable ADL. - (formatter<thread::id, _CharT>::format): Use formatters to write directly - to output. - * testsuite/30_threads/thread/id/output.cc: Tests for formatting thread::id - representing not-a-thread with padding and formattable concept. - -2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/bits/version.def (format_ranges): Remove no_stdname and - update value. - * include/bits/version.h: Regenerate. - * src/c++23/std.cc.in: Replace __glibcxx_format_ranges with - __cpp_lib_format_ranges. - * testsuite/std/format/formatter/lwg3944.cc: Likewise. - * testsuite/std/format/parse_ctx.cc: Likewise. - * testsuite/std/format/string.cc: Likewise. - * testsuite/std/format/ranges/feature_test.cc: New test. - -2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/bits/formatfwd.h (__format::__parsable_with) - (__format::__formattable_with, __format::__formattable_impl) - (__format::__has_debug_format, __format::__const_formattable_range) - (__format::__maybe_const_range, __format::__maybe_const) - (std::formattable): Moved from std/format. - (__format::Iter_for, std::range_formatter): Forward declare. - * include/bits/stl_queue.h (std::formatter): Forward declare. - (std::queue, std::priority_queue): Befriend formatter specializations. - * include/bits/stl_stack.h (std::formatter): Forward declare. - (std::stack): Befriend formatter specializations. - * include/std/format (__format::_Iter_for): Define as struct with - (__format::__parsable_with, __format::__formattable_with) - (__format::__formattable_impl, __format::__has_debug_format) - (_format::__const_formattable_range, __format::__maybe_const_range) - (__format::__maybe_const, std::formattable): Moved to bits/formatfwd.h. - (std::range_formatter): Remove default argument specified in declaration - in bits/formatfwd.h. - * include/std/queue: Include bits/version.h before bits/stl_queue.h. - (formatter<queue<_Tp, _Container, _Compare>, _CharT>) - (formatter<priority_queue<_Tp, _Container, _Compare>, _CharT>): Define. - * include/std/stack: Include bits/version.h before bits/stl_stack.h - (formatter<stack<_Tp, _Container, _Compare>, _CharT>): Define. - * testsuite/std/format/ranges/adaptors.cc: New test. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * include/std/future (__future_base::_Task_state): Check - invocable requirement here. - (__future_base::_Task_state::_S_create): New static member - function. - (__future_base::_Task_state::_M_reset): Use _S_create. - (__create_task_state): Remove. - (packaged_task): Use _Task_state::_S_create instead of - __create_task_state. - * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: - Adjust dg-error patterns. - * testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: - Likewise. - -2025-04-25 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_tree.h (_Rb_tree::_M_key_compare): New member - function to invoke comparison function. - (_Rb_tree): Use new member function instead of accessing the - comparison function directly. - -2025-04-24 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/23_containers/forward_list/48101_neg.cc: Remove - dg-prune-output that doesn't match anything. - * testsuite/23_containers/list/48101_neg.cc: Likewise. - * testsuite/23_containers/multiset/48101_neg.cc: Likewise. - * testsuite/23_containers/set/48101_neg.cc: Likewise. - -2025-04-24 Jonathan Wakely <jwakely@redhat.com> - - * include/std/generator (generator::yield_value): Add overload - taking lvalue element_of view, as per LWG 3899. - * testsuite/24_iterators/range_generators/lwg3899.cc: New test. - -2025-04-24 François Dumont <frs.dumont@gmail.com> - - * testsuite/util/replacement_memory_operators.h: Adapt for -fno-exceptions - context. - * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Adapt test - to check std::deque shrink_to_fit method. - -2025-04-23 Andreas Schwab <schwab@linux-m68k.org> - - * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update. - * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update. - * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update. - -2025-04-23 ZENG Hao <c@cyano.cn> - - * src/c++23/std.cc.in (atomic_signed_lock_free): Guard with - preprocessor check for __cpp_lib_atomic_lock_free_type_aliases. - (atomic_unsigned_lock_free): Likewise. - -2025-04-22 Patrick Palka <ppalka@redhat.com> - - Revert: - 2024-08-22 Patrick Palka <ppalka@redhat.com> - - * include/bits/iterator_concepts.h (__detail::__projected): Define - an optimized partial specialization for when the projection is - std::identity. - * testsuite/24_iterators/indirect_callable/projected.cc: Verify the - optimization. - -2025-04-22 Andreas Schwab <schwab@linux-m68k.org> - - * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update. - -2025-04-22 Andreas Schwab <schwab@linux-m68k.org> - - * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update. - -2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: Regenerate. - * config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: Likewise. - -2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate. - * config/abi/post/i386-solaris/amd64/baseline_symbols.txt: - Likewise. - * config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise. - * config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt: - Likewise. - -2025-04-22 Jakub Jelinek <jakub@redhat.com> - - * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update. - * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update. - * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update. - * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. - * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update. - * config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update. - -2025-04-22 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/23_containers/flat_map/1.cc: Add dg-timeout-factor 2. - * testsuite/23_containers/flat_multimap/1.cc: Likewise. - * testsuite/std/format/ranges/map.cc: Likewise. - * testsuite/std/format/ranges/sequence.cc: Likewise. - * testsuite/std/format/ranges/string.cc: Likewise. - -2025-04-22 Andreas Schwab <schwab@linux-m68k.org> - - * testsuite/util/testsuite_abi.cc (check_version): Update latestp - to use GLIBCXX_3.4.35 and CXXABI_1.3.17. - -2025-04-18 François Dumont <frs.dumont@gmail.com> - - * testsuite/util/debug/unordered_checks.h (fill_container): New helper method. - (use_erased_local_iterator, invalid_local_iterator_pre_increment) - (invalid_local_iterator_post_increment, invalid_local_iterator_compare) - (invalid_local_iterator_range): Use latter. - (fill_and_get_local_iterator): New, use fill_container. - (use_invalid_local_iterator): Use latter. - (invalid_local_iterator_arrow_operator): New test function. - (invalid_local_iterator_copy_instantiation): New test function. - (invalid_local_iterator_move_instantiation): New test function. - (invalid_local_iterator_copy_assignment): New test function. - (invalid_local_iterator_move_assignment): New test function. - (invalid_local_iterator_const_conversion): New test function. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_arrow_operator_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_const_conversion_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc: Test unordered_map. - * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: Test unordered_multimap. - * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc: Likewise. - * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: Likewise. - * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: Likewise. - * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: Likewise. - * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: Likewise. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_arrow_operator_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_const_conversion_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_multimap/debug/max_load_factor_neg.cc: - Test unordered_multimap. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_arrow_operator_neg.cc: - New test case. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_const_conversion_neg.cc: - New test case. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_arrow_operator_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_const_conversion_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_construction_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_assignment_neg.cc: - New test case. - * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_construction_neg.cc: - New test case. - -2025-04-18 Tomasz Kamiński <tkaminsk@redhat.com> - - * doc/xml/manual/appendix_contributing.xml: Add 'and functions'. - -2025-04-17 Jason Merrill <jason@redhat.com> - - * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust - diagnostic. - -2025-04-17 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119840 - * include/std/format (_M_parse_fill_and_align): Cast elements of - __not_fill to _CharT. - -2025-04-17 Jonathan Wakely <jwakely@redhat.com> - - * include/std/format (format_kind): Do not use 'not' - alternative token to make the primary template ill-formed. Use - the undeclared identifier __primary_template_not_defined and a - comment that will appear in diagnostics. - * testsuite/std/format/ranges/format_kind_neg.cc: New test. - -2025-04-17 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/std/format (__format::__simply_formattable_range): Define. - (range_formatter::format): Do not instantiate _M_format for mutable - _Rg if const _Rg can be used. - -2025-04-16 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/std/format (range_formatter::format): Format const range, - only if reference type is not changed. - * testsuite/std/format/ranges/formatter.cc: New tests. - -2025-04-16 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/std/format (__formatter_int::_M_format_character_escaped) - (__formatter_str::format): Use __sink.out() to produce _Sink_iter. - (__format::__const_formattable_range): Moved closer to range_formatter. - (__format::__maybe_const_range): Use `__conditional_t` and moved closer - to range_formatter. - (__format::__format_padded, __format::maybe_const) - (__format::__indexed_formatter_storage, __format::__tuple_formatter) - (std::formatter<pair<_Fp, _Sp>, _CharT>>) - (std::formatter<tuple<_Tps...>, _CharT): Define. - (std::formatter<_Rg, _CharT>::format): Cast incoming range to - __format::__maybe_const_range<_Rg, _CharT>&. - (std::formatter<_Rg, _CharT>::_M_format): Extracted from format, - and use __format_padded. - (std::formatter<_Rg, _CharT>::_M_format_no_padding): Rename... - (std::formatter<_Rg, _CharT>::_M_format_elems): ...to this. - (std::formatter<_Rg, _CharT>::_M_format_with_padding): Extracted as - __format_padded. - * testsuite/util/testsuite_iterators.h (test_input_range_nocopy): - Define. - * testsuite/std/format/ranges/formatter.cc: Tests for `m` specifier. - * testsuite/std/format/ranges/sequence.cc: Tests for array and subrange. - * testsuite/std/format/ranges/map.cc: New test. - * testsuite/std/format/tuple.cc: New test. - -2025-04-15 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (__glibcxx_want_ranges_iota): Do not - define. - -2025-04-15 Jonathan Wakely <jwakely@redhat.com> - - * include/std/numeric (ranges): Only declare namespace for C++23 - and later. - (ranges::iota_result): Fix indentation. - * testsuite/17_intro/names.cc: Check ranges is not used as an - identifier before C++20. - -2025-04-15 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/std/format (__format::__has_debug_format, _Pres_type::_Pres_seq) - (_Pres_type::_Pres_str, __format::__Stackbuf_size): Define. - (_Separators::_S_squares, _Separators::_S_parens, _Separators::_S_comma) - (_Separators::_S_colon): Define additional constants. - (_Spec::_M_parse_fill_and_align): Define overload accepting - list of excluded characters for fill, and forward existing overload. - (__formatter_str::_M_format_range): Define. - (__format::_Buf_sink) Use __Stackbuf_size for size of array. - (__format::__is_map_formattable, std::range_formatter) - (std::formatter<_Rg, _CharT>): Define. - * src/c++23/std.cc.in (std::format_kind, std::range_format) - (std::range_formatter): Export. - * testsuite/std/format/formatter/lwg3944.cc: Guarded tests with - __glibcxx_format_ranges. - * testsuite/std/format/formatter/requirements.cc: Adjusted for standard - behavior. - * testsuite/23_containers/vector/bool/format.cc: Test vector<bool> formatting. - * testsuite/std/format/ranges/format_kind.cc: New test. - * testsuite/std/format/ranges/formatter.cc: New test. - * testsuite/std/format/ranges/sequence.cc: New test. - * testsuite/std/format/ranges/string.cc: New test. - -2025-04-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119748 - * include/bits/basic_string.h (_S_copy_chars): Only optimize for - contiguous iterators that are convertible to const charT*. Use - explicit conversion to charT after dereferencing iterator. - (_S_copy_range): Likewise for contiguous ranges. - * include/bits/basic_string.tcc (_M_construct): Use explicit - conversion to charT after dereferencing iterator. - * include/bits/cow_string.h (_S_copy_chars): Likewise. - (basic_string(from_range_t, R&&, const Allocator&)): Likewise. - Only optimize for contiguous iterators that are convertible to - const charT*. - * testsuite/21_strings/basic_string/cons/char/119748.cc: New - test. - * testsuite/21_strings/basic_string/cons/wchar_t/119748.cc: - New test. - -2025-04-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/util/testsuite_iterators.h (test_container): Define - array constructor for C++98 as well. - -2025-04-14 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/21334 - * doc/xml/manual/using.xml: Document that container data race - avoidance rules do not apply to COW std::string. - * doc/html/*: Regenerate. - -2025-04-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119725 - * testsuite/std/format/debug.cc: Updated dg-options. - * testsuite/std/format/debug_nonunicode.cc: Updated dg-options. - -2025-04-11 Jonathan Wakely <jwakely@redhat.com> - - * src/c++17/fast_float/LOCAL_PATCHES: Update. - -2025-04-11 Evgeny Karpov <Evgeny.Karpov@microsoft.com> - - * src/c++17/fast_float/fast_float.h (full_multiplication): - Support aarch64-w64-mingw32 target. - -2025-04-11 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/basic_string.h (_S_copy_chars): Replace overloads - with constexpr-if and extend optimization to all contiguous - iterators. - * src/c++11/string-inst.cc: Extend comment. - -2025-04-11 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/version.def (containers_ranges): Define. - * include/bits/version.h: Regenerate. - * include/bits/ranges_base.h (__detail::__container_compatible_range) - (__detail::__range_to_alloc_type, __detail::__range_mapped_type) - (__detail::__range_key_type): Depend on __glibcxx_containers_ranges - instead of __glibcxx_ranges_to_container. - * include/bits/basic_string.h: Replace __glibcxx_ranges_to_container with - __glibcxx_containers_ranges. - * include/bits/cow_string.h: Likewise. - * include/bits/deque.tcc: Likewise. - * include/bits/forward_list.h: Likewise. - * include/bits/stl_bvector.h: Likewise. - * include/bits/stl_deque.h: Likewise. - * include/bits/stl_list.h: Likewise. - * include/bits/stl_map.h: Likewise. - * include/bits/stl_multimap.h: Likewise. - * include/bits/stl_multiset.h: Likewise. - * include/bits/stl_queue.h: Likewise. - * include/bits/stl_set.h: Likewise. - * include/bits/stl_stack.h: Likewise. - * include/bits/stl_vector.h: Likewise. - * include/bits/unordered_map.h: Likewise. - * include/bits/unordered_set.h: Likewise. - * include/bits/vector.tcc: Likewise. - * include/debug/deque: Likewise. - * include/debug/forward_list: Likewise. - * include/debug/list: Likewise. - * include/debug/map.h: Likewise. - * include/debug/multimap.h: Likewise. - * include/debug/multiset.h: Likewise. - * include/debug/set.h: Likewise. - * include/debug/unordered_map: Likewise. - * include/debug/unordered_set: Likewise. - * include/debug/vector: Likewise. - * include/std/deque: Provide __cpp_lib_containers_ranges. - * include/std/forward_list: Likewise. - * include/std/list: Likewise. - * include/std/map: Likewise. - * include/std/queue: Likewise. - * include/std/set: Likewise. - * include/std/stack: Likewise. - * include/std/string: Likewise. - * include/std/unordered_map: Likewise. - * include/std/unordered_set: Likewise. - * include/std/vector: Likewise. - * testsuite/21_strings/basic_string/cons/from_range.cc: Test for value - __cpp_lib_containers_ranges. - * testsuite/23_containers/deque/cons/from_range.cc: Likewise. - * testsuite/23_containers/forward_list/cons/from_range.cc: Likewise. - * testsuite/23_containers/list/cons/from_range.cc: Likewise. - * testsuite/23_containers/map/cons/from_range.cc: Likewise. - * testsuite/23_containers/multimap/cons/from_range.cc: Likewise. - * testsuite/23_containers/multiset/cons/from_range.cc: Likewise. - * testsuite/23_containers/priority_queue/cons_from_range.cc: Likewise. - * testsuite/23_containers/queue/cons_from_range.cc: Likewise. - * testsuite/23_containers/set/cons/from_range.cc: Likewise. - * testsuite/23_containers/stack/cons_from_range.cc: Likewise. - * testsuite/23_containers/unordered_map/cons/from_range.cc: Likewise. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: Likewise. - * testsuite/23_containers/unordered_multiset/cons/from_range.cc: Likewise. - * testsuite/23_containers/unordered_set/cons/from_range.cc: Likewise. - * testsuite/23_containers/vector/bool/cons/from_range.cc: Likewise. - * testsuite/23_containers/vector/cons/from_range.cc: Likewise. - -2025-04-11 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/basic_string.h (_S_copy_range): New function. - (basic_string(from_range_t, R%%, const Alloc&)): New - constructor. - (append_range, assign_range, insert_range, replace_with_range): - New functions. - * include/bits/cow_string.h: Likewise. - * testsuite/21_strings/basic_string/cons/from_range.cc: New - test. - * testsuite/21_strings/basic_string/modifiers/append/append_range.cc: - New test. - * testsuite/21_strings/basic_string/modifiers/assign/assign_range.cc: - New test. - * testsuite/21_strings/basic_string/modifiers/insert/insert_range.cc: - New test. - * testsuite/21_strings/basic_string/modifiers/replace/replace_with_range.cc: - New test. - -2025-04-11 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/bits/chrono_io.h (__detail::_Widen): Moved to std/format file. - * include/bits/unicode-data.h: Regnerate. - * include/bits/unicode.h (__unicode::_Utf_iterator::_M_units) - (__unicode::__should_escape_category): Define. - * include/std/format (_GLIBCXX_WIDEN_, _GLIBCXX_WIDEN): Copied from - include/bits/chrono_io.h. - (__format::_Widen): Moved from include/bits/chrono_io.h. - (__format::_Term_char, __format::_Escapes, __format::_Separators) - (__format::__should_escape_ascii, __format::__should_escape_unicode) - (__format::__write_escape_seq, __format::__write_escaped_char) - (__format::__write_escaped_acii, __format::__write_escaped_unicode) - (__format::__write_escaped): Define. - (__formatter_str::_S_trunc): Extracted truncation of character - sequences. - (__formatter_str::format): Handle _Pres_esc. - (__formatter_int::_M_do_parse) [__glibcxx_format_ranges]: Parse '?'. - (__formatter_int::_M_format_character_escaped): Define. - (formatter<_CharT, _CharT>::format, formatter<char, wchar_t>::format): - Handle _Pres_esc. - (__formatter_str::set_debug_format, formatter<...>::set_debug_format) - Guard with __glibcxx_format_ranges. - (__format::_Fixedbuf_sink): Define. - * testsuite/23_containers/vector/bool/format.cc: Use __format::_Widen - and remove unnecessary <chrono> include. - * testsuite/std/format/debug.cc: New test. - * testsuite/std/format/debug_nonunicode.cc: New test. - * testsuite/std/format/parse_ctx.cc (escaped_strings_supported): Define - to true if __glibcxx_format_ranges is defined. - * testsuite/std/format/string.cc (escaped_strings_supported): Define to - true if __glibcxx_format_ranges is defined. - -2025-04-10 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/version.def (constrained_equality): Only define - as 202411 for C++23 and later, use 202403 for C++20. - * include/bits/version.h: Regenerate. - * testsuite/20_util/expected/equality_constrained.cc: Remove - TODO comment. - -2025-04-10 John David Anglin <danglin@gcc.gnu.org> - - * config/os/hpux/os_defines.h: Remove _GLIBCXX_USE_LONG_LONG - define. - -2025-04-09 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/115046 - PR libstdc++/112490 - * include/bits/stl_iterator.h (basic_const_iterator::operator-): - Replace non-dependent basic_const_iterator function parameter with - a dependent one of type basic_const_iterator<_It2> where _It2 - matches _It. - * testsuite/std/ranges/adaptors/as_const/1.cc (test04): New test. - -2025-04-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119671 - * include/std/format (__formatter_fp::format): Do not invalidate - __wstr unless _M_localized returns a valid string. - * testsuite/std/format/functions/format.cc: Check wide string - formatting of floating-point types with classic locale. - -2025-04-07 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119642 - * include/bits/formatfwd.h: Remove stray pragma. - -2025-04-07 Jonathan Wakely <jwakely@redhat.com> - - * include/precompiled/stdc++.h: Include <stdbit.h> and - <stdckdint.h>. Include <stacktrace> unconditionally. - -2025-04-07 Jonathan Wakely <jwakely@redhat.com> - - * doc/doxygen/user.cfg.in (INPUT): Add flat_map, flat_set, - text_encoding, stdbit.h and stdckdint.h. - -2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119645 - * acinclude.m4 (GLIBCXX_ENABLE_LOCK_POLICY) [GCN, nvptx]: - Hard-code results. - * configure: Regenerate. - * configure.host [GCN, nvptx] (atomicity_dir): Set to - 'cpu/generic/atomicity_builtins'. - -2025-04-04 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/119620 - * include/std/flat_set (_Flat_set_impl::_M_try_emplace): Split - out into two overloads, one taking at least one argument and one - taking zero arguments. Turn __k into an auto&& reference bound - to __arg if it's already a value_type and otherwise bound to a - lifetime-extended value_type temporary. - * testsuite/23_containers/flat_multiset/1.cc (test08): New test. - * testsuite/23_containers/flat_set/1.cc (test08): New test. - -2025-04-04 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/101587 - * include/bits/ranges_uninitialized.h (__detail::__mindist): - Remove. - (ranges::uninitialized_copy, ranges::uninitialized_copy_n) - (ranges::uninitialized_move, ranges::uninitialized_move_n): Use - comparison and assignment instead of __mindist. - * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: - Check with ranges that use integer-like class type for - difference type. - * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: - Likewise. - -2025-04-04 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/109162 - * include/Makefile.am: Add bits/formatfwd.h. - * include/Makefile.in: Add bits/formatfwd.h. - * include/bits/version.def: Define __glibcxx_format_ranges without - corresponding std name. - * include/bits/version.h: Regenerate. - * include/std/format (basic_format_context, __format::__char): - Move declartions to bits/formatfwd.h. - (formatter<_Tp, _CharT>): Remove default argument for _CharT - parameter, now specified in forward declaration in bits/formatfwd.h. - * include/std/vector (formatter<_Bit_reference, _CharT>): Define. - * include/bits/formatfwd.h: New file with forward declarations - for bits of std/format. - * testsuite/23_containers/vector/bool/format.cc: New test. - -2025-04-04 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/basic_string.h: Check __glibcxx_string_view and - __glibcxx_variant instead of __cplusplus >= 2017L. - * include/bits/cow_string.h: Likewise. - -2025-04-04 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/basic_string.tcc: Fix whitespace. - -2025-04-04 Arsen Arsenović <arsen@aarsen.me> - - * include/bits/version.tpl: Implement no_stdname. - * include/bits/version.def: Document no_stdname. - -2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> - - * config/cpu/nvptx/t-nvptx: Remove. - * configure.host [nvptx]: Adjust. - -2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119573 - * config/cpu/nvptx/t-nvptx (AM_MAKEFLAGS): Don't amend. - -2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/std/format/functions/format.cc: Restored line. - -2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119593 - * include/bits/unicode.h - (__unicode::__literal_encoding_is_unicode<_CharT>): - Corrected handing for UTF-16 and UTF-32 with "LE" or "BE" suffix. - * include/std/format (__formatter_str::_S_character_width): - Define. - (__formatter_str::_S_character_width): Updated passed char - length. - * testsuite/std/format/functions/format.cc: Test for wchar_t. - -2025-04-02 John David Anglin <danglin@gcc.gnu.org> - - * config/os/hpux/os_defines.h: Only use long long when - __cplusplus >= 201103L. - -2025-04-02 Iain Sandoe <iain@sandoe.co.uk> - - * testsuite/lib/prune.exp: Prune ld warning about duplicatei - rpaths. - -2025-04-01 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/114945 - * include/bits/vector.tcc (vector::_M_default_append): Add - unreachable condition so the compiler knows that _M_finish is - not null. - * testsuite/23_containers/vector/capacity/114945.cc: New test. - -2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/119369 - * config/cpu/gcn/cpu_defines.h: New. - * configure.host [GCN] (cpu_defines_dir): Point to it. - -2025-03-31 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/110498 - * include/bits/vector.tcc (vector<bool, A>::_M_reallocate): - Hoist loads of begin() and end() before allocation and use them - to state an unreachable condition. - * testsuite/23_containers/vector/bool/capacity/110498.cc: New - test. - -2025-03-31 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/114758 - * include/bits/vector.tcc (vector<bool, A>::_M_fill_insert): - Hoist loads of begin() and end() before allocation. - * testsuite/23_containers/vector/bool/capacity/114758.cc: New - test. - -2025-03-31 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119550 - * acinclude.m4 (GLIBCXX_STRUCT_TM_TM_ZONE): New macro. - * config.h.in: Regenerate. - * configure: Regenerate. - * configure.ac: Use GLIBCXX_STRUCT_TM_TM_ZONE. - * include/bits/chrono_io.h (__formatter_chrono::_M_c): Check - _GLIBCXX_USE_STRUCT_TM_TM_ZONE instead of - _GLIBCXX_HAVE_STRUCT_TM_TM_ZONE. - -2025-03-31 Jonathan Wakely <jwakely@redhat.com> - - * config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Make - std::basic_string::_M_construct patterns more precise. - -2025-03-31 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119545 - * include/std/tuple (operator==): Convert comparison results to - bool. - * testsuite/20_util/tuple/comparison_operators/119545.cc: New - test. - -2025-03-31 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119517 - * include/bits/chrono_io.h (formatter): - Add __format::__char for _CharT and adjust parse and format - method signatures. - * testsuite/std/time/format/pr119517.cc: New test. - -2025-03-31 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/103827 - PR tree-optimization/80331 - PR tree-optimization/87502 - * config/abi/pre/gnu.ver (GLIBCXX_3.4.34): Use [jmy] rather than m - in pattern for _M_construct<bool>(char const*, size_t). - -2025-03-30 Jan Hubicka <hubicka@ucw.cz> - - PR tree-optimization/103827 - PR tree-optimization/80331 - PR tree-optimization/87502 - * config/abi/pre/gnu.ver: Add version for _M_construct<bool> - * include/bits/basic_string.h: (basic_string::_M_construct<bool>): Declare. - (basic_string constructors): Use it. - * include/bits/basic_string.tcc: (basic_string::_M_construct<bool>): New template. - * src/c++11/string-inst.cc: Instantated S::_M_construct<bool>. - -2025-03-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117983 - * testsuite/23_containers/vector/modifiers/insert/117983.cc: New - test. - -2025-03-28 David Malcolm <dmalcolm@redhat.com> - - * testsuite/17_intro/shared_with_static_deps.cc: Fix malformed - dg-require-static-libstdcxx directive. - * testsuite/17_intro/static.cc: Likewise. - * testsuite/18_support/type_info/110572.cc: Likewise. - * testsuite/20_util/to_chars/4.cc: Likewise. - * testsuite/std/time/tzdb_list/pr118811.cc: Likewise. - -2025-03-27 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/101587 - * include/bits/ranges_uninitialized.h (__detail::__mindist): - New function object. - (ranges::uninitialized_copy, ranges::uninitialized_copy_n) - (ranges::uninitialized_move, ranges::uninitialized_move_n): Use - __mindist instead of std::min. - * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: - Check ranges with difference difference types. - * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: - Likewise. - -2025-03-27 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_c): Use - const_cast when setting tm.tm_zone. - -2025-03-27 Jonathan Wakely <jwakely@redhat.com> - - * src/c++20/tzdata.zi: Import new file from 2025b release. - -2025-03-27 Sam James <sam@gentoo.org> - - * testsuite/std/format/string_neg.cc: Add missing brace for dg-error. - -2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR libstdc++/119488 - * include/bits/version.def (constexpr_algorithms): Bump - the feature-testing macro. - * include/bits/version.h: Regenerate. - * testsuite/25_algorithms/cpp_lib_constexpr.cc: Test the - bumped value for the feature-testing macro. - -2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/algorithmfwd.h (stable_partition): Mark it - as constexpr for C++26. - * include/bits/ranges_algo.h (__stable_partition_fn): Likewise. - * include/bits/stl_algo.h (stable_partition): Mark it as - constexpr for C++26; during constant evaluation use a new - codepath where a temporary buffer of 1 element is used. - * testsuite/25_algorithms/headers/algorithm/synopsis.cc - (stable_partition): Add constexpr. - * testsuite/25_algorithms/stable_partition/constexpr.cc: New test. - -2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/algorithmfwd.h (inplace_merge): Mark it as - constexpr for C++26. - * include/bits/ranges_algo.h (__inplace_merge_fn): Likewise. - * include/bits/stl_algo.h (inplace_merge): Mark it as constexpr; - during constant evaluation, dispatch to the non-allocating - codepath. - * testsuite/25_algorithms/headers/algorithm/synopsis.cc - (inplace_merge): Add constexpr. - * testsuite/25_algorithms/inplace_merge/constexpr.cc: New test. - -2025-03-27 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119469 - * include/bits/iterator_concepts.h (_IterMove::__result): Use - decltype-specifier instead of an explicit type. - * testsuite/24_iterators/customization_points/iter_move.cc: - Check results for function references. - -2025-03-26 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/version.def (constexpr_algorithms): Change - the value of the feature-testing macro. - * include/bits/version.h: Regenerate. - * testsuite/25_algorithms/cpp_lib_constexpr.cc: Amend the - check of the feature-testing macro. - -2025-03-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119415 - * include/std/flat_set (_Flat_set_impl:insert_range): - Replace __detail::__cpp17_input_iterator with __has_input_iter_cat. - * testsuite/23_containers/flat_multiset/1.cc: New tests - * testsuite/23_containers/flat_set/1.cc: New tests - -2025-03-26 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/deque.tcc (deque::prepend_range, deque::append_range) - (deque::insert_range, __advance_dist): Define. - (deque::_M_range_prepend, deque::_M_range_append): - Extract from _M_range_insert_aux for _ForwardIterator(s). - * include/bits/stl_deque.h (deque::assign_range): Define. - (deque::prepend_range, deque::append_range, deque::insert_range): - Declare. - (deque(from_range_t, _Rg&&, const allocator_type&)): Define constructor - and deduction guide. - * include/debug/deque (deque::prepend_range, deque::append_range) - (deque::assign_range): Define. - (deque(from_range_t, _Rg&&, const allocator_type&)): Define constructor - and deduction guide. - * testsuite/23_containers/deque/cons/from_range.cc: New test. - * testsuite/23_containers/deque/modifiers/append_range.cc: New test. - * testsuite/23_containers/deque/modifiers/assign/assign_range.cc: - New test. - * testsuite/23_containers/deque/modifiers/prepend_range.cc: New test. - * testsuite/23_containers/deque/modifiers/insert/insert_range.cc: New file. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (ranges::to): Allow unions as well as - non-union class types. - * testsuite/std/ranges/conv/lwg4229.cc: New test. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/108487 - * include/bits/stl_vector.h (vector(initializer_list)): Call - _M_range_initialize_n instead of _M_range_initialize. - (vector(InputIterator, InputIterator)): Use _M_range_initialize_n - for C++20 sized sentinels and forward iterators. - (vector(from_range_t, R&&)): Use _M_range_initialize_n for sized - ranges and forward ranges. - (vector::_M_range_initialize(FwIt, FwIt, forward_iterator_tag)): - Likewise. - (vector::_M_range_initialize_n): New function. - * testsuite/23_containers/vector/cons/108487.cc: New test. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - * include/debug/vector (vector::assign_range): Use change in - capacity to detect reallocation. - (vector::insert_range, vector::append_range): Likewise. Remove - unused variables. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_bvector.h (vector::assign_range): More - efficient implementation for forward/sized ranges. - (vector::append_range): Handle potentially overlapping range. - * include/bits/stl_vector.h (vector(from_range_t, R&&, Alloc)): - Do not use append_range for non-sized input range case. - (vector::append_range): Handle potentially overlapping range. - * include/bits/vector.tcc (vector::insert_range): Forward range - instead of moving it. - * testsuite/23_containers/vector/bool/modifiers/insert/append_range.cc: - Test overlapping ranges. - * testsuite/23_containers/vector/modifiers/append_range.cc: - Likewise. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118699 - * testsuite/27_io/filesystem/operations/copy.cc: Check copying a - file to a directory. - -2025-03-25 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119429 - * include/std/format (__format::_Scanner::_Scanner): Cast - default argument to size_t. - -2025-03-25 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119415 - * include/std/flat_set (_Flat_set_impl:insert_range): - Add __detail::__cpp17_input_iterator check. - * testsuite/23_containers/flat_multiset/1.cc: New tests - * testsuite/23_containers/flat_set/1.cc: New tests - -2025-03-24 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/policy_data_structures_biblio.xml: Fix two - broken links. - * doc/html/manual/policy_data_structures.html: Regenerate. - -2025-03-24 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/101527 - * testsuite/24_iterators/common_iterator/101527.cc: New test. - * testsuite/24_iterators/counted_iterator/101527.cc: New test. - -2025-03-24 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_bvector.h (vector<bool, A>): Enforce the - C++20 requirement that the allocator's value_type matches the - container. - * testsuite/23_containers/vector/bool/cons/from_range.cc: Fix - incorrect allocator type. - -2025-03-21 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117214 - * configure.ac: Use AC_STRUCT_TIMEZONE. - * config.h.in: Regenerate. - * configure: Regenerate. - * include/bits/chrono_io.h (__formatter_chrono::_M_c): Set - tm_isdst and tm_zone. - * testsuite/std/time/format/pr117214.cc: Check %c formatting of - zoned_time and local time. - -2025-03-21 XU Kailiang <xu2k3l4@outlook.com> - Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/117214 - * include/bits/chrono_io.h (__formatter_chrono::_M_c): Use - _M_locale_fmt to format %c time point. - * testsuite/std/time/format/pr117214.cc: New test. - -2025-03-21 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h (__formatter_chrono::_M_locale_fmt): - Imbue locale into ostringstream. - * testsuite/std/time/format/localized.cc: Check that correct - locale is used for call to time_put::put. - -2025-03-21 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_vector.h (vector(from_range_t, Alloc)): Use - delegating constructor instead of RAII guards. Use append_range - for unsized input range case. - -2025-03-21 Jonathan Wakely <jwakely@redhat.com> - - * src/c++23/std.compat.cc.in: Only export <stdbit.h> and - <stdckdint.h> contents for C++26 and later. - -2025-03-21 Jonathan Wakely <jwakely@redhat.com> - - * src/c++23/std.cc.in (tuple_element, tuple_element_t) - (tuple_size, tuple_size_v, get): Export. - (ranges::cache_latest_view, views::cache_latest): Export. - (ranges::to_input_view, views::to_input): Export. - (from_range_t, from_range): Export. - -2025-03-20 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/debug/unordered_map (unordered_map): Add from_range - constructors and deduction guides. - (unordered_multimap): Likewise. - * include/debug/unordered_set (unordered_set): Add from_range - constructors and deduction guides. - (unordered_multiset): Likewise. - -2025-03-20 Jonathan Wakely <jwakely@redhat.com> - - * include/debug/map.h (map): Add from_range constructors and - deduction guides. - * include/debug/multimap.h (multimap): Likewise. - * include/debug/multiset.h (multiset): Likewise. - * include/debug/set.h (set): Likewise. - -2025-03-20 Jakub Jelinek <jakub@redhat.com> - - * testsuite/18_support/numeric_limits/traps.cc (main): Fix comment - typo. - -2025-03-19 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/test.xml: Fix default for -std option. - * doc/html/manual/test.html: Regenerate. - -2025-03-19 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/locale_facets_nonio.tcc (time_put::do_put): Fix - typo in comment. - -2025-03-19 François Dumont <frs.dumont@gmail.com> - - * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr.cc: - Activate the template member tests involving __cpp_lib_ranges_to_container - support. - -2025-03-19 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/20_util/stdbit/1.cc: Include <climits> instead of - <limits.h>. - -2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/ranges_base.h (__detail::__range_key_type): - Replace RV::first_type with tuple_element_t<0, RV>. - (__detail::__range_mapped_type) Replace RV::second_type - with tuple_element_t<1, RV>. - * testsuite/23_containers/flat_map/1.cc: New tests. - * testsuite/23_containers/flat_multimap/1.cc: New tests. - * testsuite/23_containers/map/cons/from_range.cc: New tests. - * testsuite/23_containers/multimap/cons/from_range.cc: New tests. - * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - New tests. - -2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/bits/unordered_map.h - (unordered_map(from_range_t, _Rg&&, const allocator_type&)) - (unordered_multimap(from_range_t, _Rg&&, const allocator_type&)): - Define. - * include/bits/unordered_set.h - (unordered_set(from_range_t, _Rg&&, const allocator_type&)) - (unordered_multiset(from_range_t, _Rg&&, const allocator_type&)): - Define. - * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. - New tests. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - New tests. - * testsuite/23_containers/unordered_multiset/cons/from_range.cc: - New tests. - * testsuite/23_containers/unordered_set/cons/from_range.cc: New tests. - * testsuite/std/ranges/conv/1.cc: New tests. - -2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119358 - * include/bits/unordered_map.h (unordered_multimap::insert_range): - Cast ranges::distance to size_type before passing to _M_rehash_insert. - * include/bits/unordered_set.h (unordered_multiset::insert_range): - Same as unordered_multimap::insert_range. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - New tests. - * testsuite/23_containers/unordered_multiset/cons/from_range.cc: - New tests. - -2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/unordered_map.h (unordered_map): Define from_range - constructors and insert_range member. - (unordered_multimap): Likewise. - * testsuite/23_containers/unordered_multimap/cons/from_range.cc: - New test. - * testsuite/23_containers/unordered_multimap/modifiers/insert_range.cc: - New test. - * testsuite/23_containers/unordered_map/cons/from_range.cc: - New test. - * testsuite/23_containers/unordered_map/modifiers/insert_range.cc: - New test. - -2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/hashtable.h (_M_rehash_insert) - (_M_insert_range_multi): Extracted rehashing for range insertion - to separate function. - * include/bits/unordered_set.h (unordered_set): Define from_range - constructors and insert_range member. - (unordered_multiset) Likewise. - * testsuite/23_containers/unordered_multiset/cons/from_range.cc: - New test. - * testsuite/23_containers/unordered_multiset/modifiers/insert_range.cc: - New test. - * testsuite/23_containers/unordered_set/cons/from_range.cc: - New test. - * testsuite/23_containers/unordered_set/modifiers/insert_range.cc: - New test. - -2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/stl_multiset.h: (inser_range) - (multiset(from_range_t, _Rg&&, const _Compare&, const _Alloc&)) - (multiset(from_range_t, _Rg&&, const _Alloc&)): Define. - * include/bits/stl_set.h: (set(from_range_t, _Rg&&, const _Alloc&)) - (set(from_range_t, _Rg&&, const _Compare&, const _Alloc&), insert_range): - Define. - * testsuite/23_containers/multiset/cons/from_range.cc: New test. - * testsuite/23_containers/multiset/modifiers/insert/insert_range.cc: - New test. - * testsuite/23_containers/set/cons/from_range.cc: New test. - * testsuite/23_containers/set/modifiers/insert/insert_range.cc: - New test. - -2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/ranges_base.h (__detail::__range_to_alloc_type): - Define. - * include/bits/stl_multimap.h: (inser_range) - (multimap(from_range_t, _Rg&&, const _Compare&, const _Alloc&)) - (multimap(from_range_t, _Rg&&, const _Alloc&)): Define. - * include/bits/stl_map.h: (map(from_range_t, _Rg&&, const _Alloc&)) i - (map(from_range_t, _Rg&&, const _Compare&, const _Alloc&), insert_range): - Define. - * testsuite/23_containers/multimap/cons/from_range.cc: New test. - * testsuite/23_containers/multimap/modifiers/insert/insert_range.cc: New test. - * testsuite/23_containers/map/cons/from_range.cc: New test. - * testsuite/23_containers/map/modifiers/insert/insert_range.cc: New test. - -2025-03-14 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/119282 - * include/bits/stl_vector.h (vector::vector(from_range_t)): Add - missing 'constexpr' to local class _Clear. - * testsuite/std/ranges/conv/1.cc (test_pr119282): New test. - -2025-03-14 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111138 - * include/std/ranges (_ZipTransform::operator()): - Create separate overload for calls with empty range pack, - and add move_constructible, regular_invocable and - is_object_v<invoke_result_t<...>>> constraints. - * testsuite/std/ranges/zip_transform/1.cc: New tests - Jonathan Wakely <jwakely@redhat.com> - -2025-03-14 Thomas Schwinge <tschwinge@baylibre.com> - - PR target/92713 - PR target/101544 - * config/cpu/nvptx/cpu_defines.h: New. - * config/cpu/nvptx/t-nvptx: Likewise. - * configure.host: Handle GCN, nvptx. - -2025-03-14 Tomasz Kamiński <tkaminsk@redhat.com> - - * testsuite/23_containers/priority_queue/cons_from_range.cc: - Add `#include <algorithm>. - * testsuite/23_containers/priority_queue/members/push_range.cc: - Add `#include <algorithm>. - -2025-03-14 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/shared_ptr_base.h (lock): Fixed a compile error - when calling lock() on a weak_ptr<T[]>, by removing an - erroneous usage of element_type from within lock(). - * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/1.cc: - Add more tests for array types. - * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc: - Likewise. - * testsuite/20_util/shared_ptr/requirements/1.cc: New test. - * testsuite/20_util/weak_ptr/requirements/1.cc: New test. - -2025-03-13 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/116440 - * include/std/tuple (tuple::tuple(const _Elements&...)) - [C++20]: Turn into a template. - * testsuite/20_util/tuple/116440.C: New test. - -2025-03-13 Jonathan Wakely <jwakely@redhat.com> - Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/111055 - * include/bits/stl_queue.h (queue(from_range_t, _Rg&&)) - (queue(from_range_t, _Rg&&, const _Alloc&), push_range): - Define. - (priority_queue(from_range_t, R&&, const Compare&)) - (push_range): Define. - * include/bits/stl_stack.h (stack(from_range_t, R&&)) - (stack(from_range_t, R&&, const Alloc&), push_range): Define. - * testsuite/util/testsuite_iterators.h (test_range_nocopy): Define. - * testsuite/23_containers/priority_queue/cons_from_range.cc: New test. - * testsuite/23_containers/priority_queue/members/push_range.cc: New test. - * testsuite/23_containers/queue/cons_from_range.cc: New test. - * testsuite/23_containers/queue/members/push_range.cc: New test. - * testsuite/23_containers/stack/cons_from_range.cc: New test. - * testsuite/23_containers/stack/members/push_range.cc: New test. - -2025-03-13 Jonathan Wakely <jwakely@redhat.com> - - * include/Makefile.am: Add stdckdint.h. - * include/Makefile.in: Regenerate. - * src/c++23/std.compat.cc.in: Export <stdckdint.h> functions. - * include/c_compatibility/stdckdint.h: New file. - * testsuite/26_numerics/stdckdint/1.cc: New test. - * testsuite/26_numerics/stdckdint/2_neg.cc: New test. - -2025-03-13 Jonathan Wakely <jwakely@redhat.com> - - * include/Makefile.am: Add stdbit.h. - * include/Makefile.in: Regenerate. - * src/c++23/std.compat.cc.in: Export <stdbit.h> functions. - * include/c_compatibility/stdbit.h: New file. - * testsuite/20_util/stdbit/1.cc: New test. - * testsuite/20_util/stdbit/2_neg.cc: New test. - -2025-03-13 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/119135 - * include/std/ranges: Include <utility>. - (views::__detail::__is_ref_view): Replace with ... - (views::__detail::__is_constable_ref_view): ... this. - (views::_AsConst::operator()): Replace bogus use of element_type - in the ref_view branch. - * testsuite/std/ranges/adaptors/as_const/1.cc (test03): Extend - test. - -2025-03-13 Thomas Schwinge <tschwinge@baylibre.com> - - * acinclude.m4 (GLIBCXX_ENABLE_CXX_FLAGS): Append to - 'EXTRA_CXX_FLAGS' any additional flags. - * configure: Regenerate. - * configure.host: Document 'EXTRA_CFLAGS', 'EXTRA_CXX_FLAGS'. - -2025-03-13 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/108053 - * include/std/format (basic_format_arg::_M_visit_user): - Helper function for wrapping extension types into handle. - (visit_format_arg): Call `_M_visit_user` instead of `_M_visit`. - (basic_format_arg::visit): As above. - (__format::__visit_format_arg): Provides direct access to - values stored in basic_format_arg. - (__format::__int_from_arg): Use __format::__visit_format_arg - instead of std::visit_format_arg. - (_Formatting_scanner::_M_format_arg): As above. - (_Checking_scanner::__do_vformat_to): As above. - * testsuite/std/format/arguments/args.cc: New tests. - * testsuite/std/format/string.cc: Test for using __int128 - as width/precision. - -2025-03-12 Patrick Palka <ppalka@redhat.com> - - * include/bits/version.def (ranges_to_input): Define. - * include/bits/version.h: Regenerate. - * include/std/ranges (ranges::to_input_view): Define for C++26. - (views::__detail::__can_to_input): Likewise. - (views::_ToInput, views::to_input): Likewise. - * testsuite/std/ranges/adaptors/to_input/1.cc: New test. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/std/format: Include <bits/monostate.h> instead of - <variant>. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/std/format (basic_format_parse_context::__once): New - variable template. - (basic_format_parse_context::__valid_types_for_check_dynamic_spec): - New function template for checking argument types. - (basic_format_parse_context::__check_dynamic_spec): New function - template to implement the common check_dynamic_spec logic. - (basic_format_parse_context::check_dynamic_spec_integral): Call - __check_dynamic_spec instead of check_dynamic_spec. - (basic_format_parse_context::check_dynamic_spec_string): - Likewise. Use _CharT instead of char_type consistently. - (basic_format_parse_context::check_dynamic_spec): Use - __valid_types_for_check_dynamic_spec for precondition checks and - call __check_dynamic_spec for checking the arg id. - * testsuite/std/format/parse_ctx_neg.cc: Adjust expected errors. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/std/future (packaged_task::packaged_task(F&&)): Add - static_assert. - * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: Add - dg-error for new static assertion. - * testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: New - test. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/std/chrono (__detail::__get_leap_second_info): Update - expiry date for leap seconds list. - * src/c++20/tzdata.zi: Import new file from 2025a release. - * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds) - Update expiry date for leap seconds list. - -2025-03-12 Tomasz Kamiński <tkaminsk@redhat.com> - - * include/std/format (formatter<_Float16, _CharT>): Define only if - _GLIBCXX_FLOAT_IS_IEEE_BINARY32 macro is defined. - (formatter<_Float16, _CharT>): As above. - (formatter<__gnu_cxx::__bfloat16_t, _CharT>): As above. - (formatter<_Float64, _CharT>): Define only if - _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 is defined. - (basic_format_arg::_S_to_arg_type): Normalize _Float32 and _Float64 - only to float and double respectivelly. - (basic_format_arg::_S_to_enum): Remove handling of _Float32 and _Float64. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/strings.xml: Tweak formatting. Add example - using lambda. - * doc/html/manual/strings.html: Regenerate. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unique_ptr.h (unique_ptr::operator*): Add - static_assert to check for dangling reference, as per LWG 4148. - * testsuite/20_util/unique_ptr/lwg4148.cc: New test. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ranges_util.h (ranges::_detail::__has_arrow): - Require operator->() to be valid on const-qualified type, as per - LWG 4112. - * testsuite/std/ranges/adaptors/lwg4112.cc: New test. - -2025-03-12 Jonathan Wakely <jwakely@redhat.com> - - * include/std/format - (basic_format_parse_context::check_dynamic_spec): Require a - non-empty parameter pack, as per LWG 4142. - * testsuite/std/format/parse_ctx.cc: Remove call of - check_dynamic_spec with empty template argument list. - * testsuite/std/format/parse_ctx_neg.cc: Add dg-error to call of - check_dynamic_spec with empty template argument list. - -2025-03-08 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/version.def (atomic_value_initialization): - Guard the FTM with the language concepts FTM. - * include/bits/version.h: Regenerate. - * include/std/atomic (atomic): When atomic value init is - defined, change the defaulted default constructor to - a non-defaulted one, constraining it as per LWG4169. - Otherwise, keep the existing constructor. - Remove the NSDMI for the _M_i member. - (_GLIBCXX20_INIT): Drop the macro, as it is not needed any more. - * testsuite/29_atomics/atomic/69301.cc: Test that - an atomic wrapping a non-default-constructible type is - always itself non-default-constructible (in all language - modes). - * testsuite/29_atomics/atomic/cons/trivial.cc: New test. - -2025-03-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_algobase.h (__nothrow_contiguous_iterator): - Remove. - (__memcpyable_iterators): Simplify. - (__copy_move_a2, __copy_n_a, __copy_move_backward_a2): Call - std::to_address on the iterators after advancing them. - * testsuite/25_algorithms/copy/contiguous.cc: New test. - * testsuite/25_algorithms/copy_backward/contiguous.cc: New test. - * testsuite/25_algorithms/copy_n/contiguous.cc: New test. - -2025-03-07 Jonathan Wakely <jwakely@redhat.com> - - * include/std/forward_list (erase): Change lambda to have - explicit return type and const parameter type. - * include/std/list (erase): Likewise. - * testsuite/23_containers/forward_list/erasure.cc: Check lambda - is correct. - * testsuite/23_containers/list/erasure.cc: Likewise. - -2025-03-07 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/chrono_io.h (chrono::__detail::from_stream): Add - deleted function as poison pill for unqualified lookup. - -2025-03-07 Jonathan Wakely <jwakely@redhat.com> - - * include/std/expected (expected<cv void,E>::value()&&): - Add missing static_assert for LWG 3940. - * testsuite/20_util/expected/lwg3843.cc: New test. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/unique_lock.h (unique_lock::operator=): Fix for - self-move-assignment. - * include/std/shared_mutex (shared_lock::operator=): Add - comment. - * testsuite/30_threads/shared_lock/cons/lwg4172.cc: New test. - * testsuite/30_threads/unique_lock/cons/lwg4172.cc: New test. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_list.h (list::pop_front, list::pop_back): - Add non-empty assertions. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ranges_util.h: Include <bits/stl_pair.h>. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - * include/std/span (span::~span): Remove, as per LWG 3903. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119144 - * testsuite/26_numerics/complex/tuple_like.cc: Include - <algorithm>, replace std::string with std::string_view, - instantiate tests for long instead of size_t. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - Thomas Schwinge <tschwinge@baylibre.com> - - * src/c++20/tzdb.cc [__GTHREADS && !__GTHREADS_CXX0X]: Use - '__gnu_cxx::__mutex'. - -2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> - - * src/c++20/format.cc (conv): Tag 'out' as '[[maybe_unused]]'. - -2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> - - * src/c++17/fs_dir.cc (do_unlink): Tag 'is_directory' as - '[[maybe_unused]]'. - -2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> - - * src/filesystem/dir-common.h (openat): Tag 'nofollow' as - '[[maybe_unused]]'. - -2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> - Jonathan Wakely <jwakely@redhat.com> - - * include/bits/c++config [!__cpp_exceptions] - (_GLIBCXX_THROW_OR_ABORT): Reference '_EXC'. - -2025-03-06 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/20_util/specialized_algorithms/uninitialized_copy/constexpr.cc: - Do not test COW std::string in constexpr contexts. - * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constexpr.cc: - Likewise. - * testsuite/20_util/specialized_algorithms/uninitialized_fill/constexpr.cc: - Likewise. - * testsuite/20_util/specialized_algorithms/uninitialized_move/constexpr.cc: - Likewise. - * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constexpr.cc: - Likewise. - -2025-03-06 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR libstdc++/113310 - * include/bits/stl_pair.h (get): Forward-declare std::get for - std::complex. - * include/bits/version.def (tuple_like): Bump the value of - the feature-testing macro in C++26. - * include/bits/version.h: Regenerate. - * include/std/complex: Implement the tuple protocol for - std::complex. - (tuple_size): Specialize for std::complex. - (tuple_element): Ditto. - (__is_tuple_like_v): Ditto. - (complex): Add a private getter to obtain references to the real - and the imaginary part, on the primary class template and on its - specializations. - (get): Add overloads of std::get for std::complex. - * testsuite/20_util/tuple/tuple_like_ftm.cc: New test. - * testsuite/26_numerics/complex/tuple_like.cc: New test. - -2025-03-05 Jonathan Wakely <jwakely@redhat.com> - - * include/std/ranges (enumerate_view::_Iterator::operator-): - Add noexcept, as per LWG 3912. - * testsuite/std/ranges/adaptors/enumerate/1.cc: Check iterator - difference is noexcept. - -2025-03-05 yxj-github-437 <2457369732@qq.com> - - * src/c++23/std-clib.cc.in (timespec): Move within preprocessor - group guarded by _GLIBCXX_HAVE_TIMESPEC_GET. - -2025-03-05 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/119110 - * testsuite/25_algorithms/move/constrained.cc: Move test06 - function to ... - * testsuite/25_algorithms/move/105609.cc: New test. - * testsuite/25_algorithms/move_backward/constrained.cc: Move - test04 function to ... - * testsuite/25_algorithms/move_backward/105609.cc: New test. - -2025-03-05 Patrick Palka <ppalka@redhat.com> - - * include/bits/version.def (ranges_cache_latest): Define. - * include/bits/version.h: Regenerate. - * include/std/ranges (__detail::__non_propagating_cache::_M_reset): - Export from base class _Optional_base. - (cache_latest_view): Define for C++26. - (cache_latest_view::_Iterator): Likewise. - (cache_latest_view::_Sentinel): Likewise. - (views::__detail::__can_cache_latest): Likewise. - (views::_CacheLatest, views::cache_latest): Likewise. - * testsuite/std/ranges/adaptors/cache_latest/1.cc: New test. - -2025-03-05 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/stl_algo.h (__stable_sort): Use if consteval - instead of is_constant_evaluated. - -2025-03-05 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/115215 - PR libstdc++/115218 - * include/std/ranges - (concat_view::iterator::_S_invoke_with_runtime_index): Use - __builtin_unreachable in recursive lambda to certify it always - exits via 'return'. - (concat_view::iterator::iterator): In the const-converting - constructor, direct initialize _M_it. - (views::_Concat::operator()): Adjust constraints in the - single-argument case as per LWG 4082. - * testsuite/std/ranges/concat/1.cc (test01): Call it at runtime - too. - (test04): New test. - -2025-03-05 Tomasz Kamiński <tkaminsk@redhat.com> - - PR libstdc++/119121 - * include/bits/ranges_util.h (__detail::__pair_like_convertible_from): - Use `_Tp` in `is_reference_v` check - * testsuite/std/ranges/subrange/tuple_like.cc: New tests for - pair-like conversion - -2025-03-05 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/ranges_uninitialized.h: Mark the specialized - memory algorithms as constexpr in C++26. Also mark the members - of the _DestroyGuard helper class. - * include/bits/stl_uninitialized.h: Ditto. - * include/bits/stl_construct.h: (_Construct_novalue) Mark it - as constexpr in C++26. - * include/bits/version.def (raw_memory_algorithms): Bump the - feature-testing macro for C++26. - * include/bits/version.h: Regenerate. - * testsuite/20_util/headers/memory/synopsis.cc: Add constexpr to - the uninitialized_* algorithms (when in C++26) in the test. - * testsuite/20_util/specialized_algorithms/feature_test_macro.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_copy/constexpr.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constexpr.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_fill/constexpr.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_move/constexpr.cc: - New test. - * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constexpr.cc: - New test. - -2025-03-04 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/test.xml: Remove stray comma. - * doc/html/manual/test.html: Regenerate. - -2025-02-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/106612 - * include/bits/iterator_concepts.h (_IterMove::__iter_ref_t): - New alias template. - (_IterMove::__result): Use __iter_ref_t instead of - std::iter_reference_t. - (_IterMove::__type): Remove incorrect __dereferenceable - constraint. - (_IterMove::operator()): Likewise. Add correct constraints. Use - __iter_ref_t instead of std::iter_reference_t. Forward parameter - as correct value category. - (iter_swap): Add comments. - * testsuite/24_iterators/customization_points/iter_move.cc: Test - that iter_move is found by ADL and that rvalue arguments are - handled correctly. - -2025-02-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/105609 - * include/bits/ranges_algobase.h (__detail::__assign_one): New - helper function. - (__copy_or_move, __copy_or_move_backward): Use new function - instead of std::__assign_one. - * testsuite/25_algorithms/move/constrained.cc: Check that - ADL iter_move is used in preference to std::move. - * testsuite/25_algorithms/move_backward/constrained.cc: - Likewise. - -2025-02-28 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/112803 - * include/std/ranges (ranges::to): Add static assertions to - enforce Mandates conditions. - * testsuite/std/ranges/conv/112803.cc: New test. - -2025-02-28 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/104606 - * include/std/optional (operator<=>): Revert r14-9771 change. - Add constraint checking the validity of the return type - compare_three_way_result_t before the three_way_comparable_with - constraint. - -2025-02-28 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/112490 - * include/bits/stl_iterator.h (basic_const_iterator::operator<): - Replace non-dependent basic_const_iterator function parameter with - a dependent one of type basic_const_iterator<_It3> where _It3 - matches _It. - (basic_const_iterator::operator>): Likewise. - (basic_const_iterator::operator<=): Likewise. - (basic_const_iterator::operator>=): Likewise. - * testsuite/24_iterators/const_iterator/112490.cc: New test. - -2025-02-27 Jonathan Wakely <jwakely@redhat.com> - - * include/std/stacktrace (_Impl::_M_allocate): Fix outdated - comment. - -2025-02-26 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/118083 - * include/bits/ranges_base.h - (ranges::__access::__possibly_const_range): Mention LWG 4027. - -2025-02-25 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/algorithmfwd.h (stable_sort): Add constexpr. - * include/bits/ranges_algo.h (__stable_sort_fn): Add constexpr - to the function call operators. - * include/bits/stl_algo.h (__stable_sort): Add constexpr. - During constant evaluation, always use the non-allocating path. - (stable_sort): Add constexpr. - (__inplace_stable_sort): Likewise. - (__merge_without_buffer): Likewise. - * include/bits/version.def (constexpr_algorithms): Bump value - for C++26. - * include/bits/version.h: Regnerate. - * testsuite/25_algorithms/cpp_lib_constexpr.cc: Test the bumped - feature-testing macro. - * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adapt - the test to constexpr stable_sort. - * testsuite/25_algorithms/stable_sort/constexpr.cc: New test. - -2025-02-25 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/c++config (_GLIBCXX26_CONSTEXPR): New macro. - -2025-02-25 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/93059 - * include/bits/stl_algobase.h (__fill_a1): Fix typo in SFINAE - constraint. - -2025-02-25 François Dumont <frs.dumont@gmail.com> - - * include/bits/hashtable_policy.h - (_Hash_code_base::_M_copy_code, _Hash_code_base::_M_store_code): Remove. - * include/bits/hashtable.h (_M_hash_code_ext): New. - (_M_merge_multi(_Hashtable&)): Use latter. - (_M_copy_code): New. - (_M_assign): Use latter. - (_M_bucket_index_ex): New. - (_M_equals): Use latter. - (_M_store_code): New. - (_M_src_hash_code): Remove key_type parameter. - * testsuite/23_containers/unordered_map/modifiers/merge.cc (test10): New - test case. - -2025-02-25 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/118083 - * include/bits/ranges_base.h - (ranges::__access::__possibly_const_range): Adjust logic as per - LWG 4027. Add missing input_range constraint. - * testsuite/std/ranges/access/cbegin.cc (test05): Verify LWG - 4027 testcases. - * testsuite/std/ranges/access/cdata.cc: Adjust, simplify and - consolidate some tests after the above. - * testsuite/std/ranges/access/cend.cc: Likewise. - * testsuite/std/ranges/access/crbegin.cc: Likewise. - * testsuite/std/ranges/access/crend.cc: Likewise. - * testsuite/std/ranges/adaptors/join.cc: Likewise. - * testsuite/std/ranges/adaptors/take_while.cc: Likewise. - * testsuite/std/ranges/adaptors/transform.cc: Likewise. - -2025-02-22 Jonathan Wakely <jwakely@redhat.com> - - PR c++/118981 - * src/c++20/tzdb.cc: Use init_priority(98) instead of - init_priority(99). - -2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> - - * testsuite/lib/prune.exp (proc libstdc++-dg-prune): Turn - 'sorry, unimplemented: dynamic stack allocation not supported' into - UNSUPPORTED. - -2025-02-22 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_base.h (__atomic_base<_ITp>): Remove - misleading comment. - -2025-02-22 Jonathan Wakely <jwakely@redhat.com> - - * src/c++17/floating_from_chars.cc (__floating_from_chars_hex): - Remove redundant cast. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118559 - * include/std/type_traits (rank, rank_v): Do not use - __array_rank for Clang 19 and older. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/c++config (_GLIBCXX_HAS_BUILTIN): Add parentheses. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118855 - * include/std/bit (__count_lzero, __count_rzero, __popcount): - Use type-generic built-ins when available. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - * include/experimental/bits/simd.h (__find_next_valid_abi): Cast - __bit_ceil argument to unsigned. - * src/c++17/floating_from_chars.cc (__floating_from_chars_hex): - Cast __bit_ceil argument to unsigned. - * src/c++17/memory_resource.cc (big_block): Cast __bit_width - argument to unsigned. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - * src/c++17/memory_resource.cc (default_res): Define here - instead of including default_resource.h. - * src/c++98/globals_io.cc (__ioinit): Define here instead of - including ios_base_init.h. - * src/c++17/default_resource.h: Removed. - * src/c++98/ios_base_init.h: Removed. - -2025-02-20 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118811 - * src/c++20/tzdb.cc (tzdb_list::_Node): Use init_priority - attribute on static data members. - * testsuite/std/time/tzdb_list/pr118811.cc: New test. - -2025-02-20 Patrick Palka <ppalka@redhat.com> - - * include/std/ranges (concat_view::iterator): Rename to ... - (concat_view::_Iterator): ... this throughout. - -2025-02-20 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/115209 - * include/bits/version.def (ranges_concat): Depend on - __cpp_pack_indexing. - * include/bits/version.h: Regenerate. - * include/std/ranges (__detail::__last_is_common): Remove. - (__detail::__all_but_first_sized): New. - (concat_view::end): Use C++26 pack indexing instead of - __last_is_common as per R8 of P2542. - (concat_view::iterator::operator-): Update constraints on - iter/sent overloads as per R8 of P2542. - -2025-02-15 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/shared_ptr_base.h: Do not include <bit>. - -2025-02-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/100612 - * include/std/thread (__pmf_expects_stop_token): Constrain - variable template specialization with concept. Add comment. - -2025-02-15 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/range_access.h (rbegin, rend, crbegin, crend): - Add conditional noexcept, as per P3623R0. - * testsuite/24_iterators/headers/iterator/range_access.cc: Add - noexcept-specifier to rbegin, rend, crbegin and crend - declarations. - -2025-02-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: - Removed. - * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: - Removed. - * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: - Removed. - * testsuite/24_iterators/headers/iterator/range_access.cc: - New test. - -2025-02-14 Andrew Pinski <quic_apinski@quicinc.com> - - PR libstdc++/118865 - * include/bits/stl_list.h (_M_initialize_dispatch): Add an - unreachable if the iterator was not empty that the list will - now be not empty. - -2025-02-14 Jonathan Wakely <jwakely@redhat.com> - - * include/parallel/algobase.h (__mismatch_switch): Qualify calls - to make_pair to avoid ADL. - -2025-02-14 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_tree.h (_Rb_tree::_M_equal_range): Replace - unqualified call to make_pair with explicit construction of - std::pair. - * testsuite/23_containers/set/operations/equal_range_adl.cc: - New test. - -2025-02-14 Matthew Malcomson <mmalcomson@nvidia.com> - Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_base.h (__atomic_fetch_addable): Define - new concept. - (__atomic_impl::__fetch_add_flt): Use new concept to make use of - __atomic_fetch_add when available. - (__atomic_fetch_subtractable, __fetch_sub_flt): Likewise. - (__atomic_add_fetchable, __add_fetch_flt): Likewise. - (__atomic_sub_fetchable, __sub_fetch_flt): Likewise. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * testsuite/lib/prune.exp (libstdc++-dg-prune): Turn - 'sorry, unimplemented: exception handling not supported' into - UNSUPPORTED. - -2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> - - * testsuite/lib/prune.exp (libstdc++-dg-prune): Clarify - effective-target 'exceptions_enabled'. - -2025-02-07 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR libstdc++/118160 - PR libstdc++/100249 - * include/bits/ranges_algo.h (__is_permutation_fn): Avoid a - dangling reference by storing the result of the iterator - dereference and the result of the projection in two distinct - variables, in order to lifetime-extend each one. - Forward the projected value to the predicate. - * testsuite/25_algorithms/is_permutation/constrained.cc: Add a - test with a range returning prvalues. Test it in a constexpr - context, in order to rely on the compiler to catch UB. - -2025-02-07 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/ostream.h (basic_ostream::_Disable_exceptions): - RAII helper type. - (basic_ostream::sentry::~sentry): Use _Disable_exceptions. Add - try-catch block around call to pubsync. - * testsuite/27_io/basic_ostream/exceptions/char/lwg4188.cc: New - test. - * testsuite/27_io/basic_ostream/exceptions/wchar_t/lwg4188.cc: - New test. - -2025-02-07 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/111050 - * include/bits/hashtable_policy.h (_Hash_node_value_base): Add - comment about always_inline attributes. - -2025-02-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118701 - * config/abi/pre/gnu.ver (CXXABI_1.3.16): Move __riscv guard - around version. - * scripts/extract_symvers.pl: Allow for weak versions. - * testsuite/util/testsuite_abi.cc (check_version): Wrap - CXXABI_1.3.16 in __riscv. - -2025-01-31 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/118156 - * include/std/flat_map (_Flat_map_impl::_M_insert): Generalized - version of insert taking heterogenous iterator/sentinel pair. - (_Flat_map_impl::insert): Dispatch to _M_insert. - (_Flat_map_impl::insert_range): Likewise. - (flat_map): Export _Flat_map_impl::insert_range. - (flat_multimap): Likewise. - * include/std/flat_set (_Flat_set_impl::insert_range): - Reimplement directly, not in terms of insert. - (flat_set): Export _Flat_set_impl::insert_range. - (flat_multiset): Likewise. - * testsuite/23_containers/flat_map/1.cc (test06): New test. - * testsuite/23_containers/flat_multimap/1.cc (test06): New test. - * testsuite/23_containers/flat_multiset/1.cc (test06): New test. - * testsuite/23_containers/flat_set/1.cc (test06): New test. - -2025-01-31 Patrick Palka <ppalka@redhat.com> - - * include/bits/stl_bvector.h (vector<bool>::insert_range): - Consistently return an iterator pointing to the first element - inserted. - * include/bits/vector.tcc (vector::insert_range): Likewise. - * testsuite/23_containers/vector/bool/modifiers/insert/insert_range.cc: - Verify insert_range return values. - * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: - Likewise. - -2025-01-30 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/98749 - * include/std/latch (latch::max()): Ensure the return value is - representable as the return type. - (latch::latch(ptrdiff_t)): Add assertion. - (latch::count_down): Fix copy & pasted duplicate assertion. Use - std::cmp_equal to compare __platform_wait_t and ptrdiff_t - values. - (latch::_M_a): Use defined constant for alignment. - * testsuite/30_threads/latch/1.cc: Check max(). Check constant - initialization works for values in the valid range. Check - alignment. - -2025-01-29 Patrick Palka <ppalka@redhat.com> - - PR libstdc++/118413 - * include/std/ranges (views::__adaptor::_Partial): Adjust - constraints on the "simple" partial specializations to require - is_trivially_copy_constructible_v instead of - is_trivially_copyable_v. - * testsuite/std/ranges/adaptors/adjacent_transform/1.cc (test04): - Extend P2494R2 test. - * testsuite/std/ranges/adaptors/transform.cc (test09): Likewise. - -2025-01-27 Andreas Schwab <schwab@suse.de> - - PR libstdc++/118563 - * testsuite/util/testsuite_abi.cc (check_version): Add - CXXABI_1.3.16. - * config/abi/pre/gnu.ver (CXXABI_1.3.14) [__riscv]: Exclude - typeinfo for bfloat16_t. - (CXXABI_1.3.16) [__riscv]: Add it here. - -2025-01-23 Jan Hubicka <jh@suse.cz> - - PR target/80813 - * include/bits/stl_bvector.h (vector<bool, _Alloc>::operator []): Do - not use iterators. - -2025-01-20 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - PR libstdc++/118185 - PR libstdc++/100249 - * include/bits/ranges_algo.h (__clamp_fn): Correctly forward the - projected value to the comparator. - * testsuite/25_algorithms/clamp/118185.cc: New test. - -2025-01-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/99995 - * include/Makefile.am: Add new header. - * include/Makefile.in: Regenerate. - * include/bits/unique_ptr.h: Include bits/ostream.h instead of - ostream. - * include/std/ostream: Include new header. - * include/bits/ostream.h: New file. - -2025-01-16 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118158 - * src/c++17/fs_ops.cc (fs::equivalent): Remove error reporting - for is_other(s1) && is_other(s2) case, as per LWG 2937. - * testsuite/27_io/filesystem/operations/pr118158.cc: New test. - -2025-01-16 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/stl_map.h: Check __glibcxx_node_extract instead - of __cplusplus. - * include/bits/stl_multimap.h: Likewise. - * include/bits/stl_multiset.h: Likewise. - * include/bits/stl_set.h: Likewise. - * include/bits/stl_tree.h: Likewise. - -2025-01-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/27_io/ios_base/types/openmode/case_label.cc: Use - standard feature test macro not internal one. - -2025-01-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr.cc: - Guard node extraction checks with feature test macro. Remove - calls to non-existent range members. - * testsuite/23_containers/forward_list/requirements/explicit_instantiation/alloc_ptr.cc: - Use standard macro not internal one. - * testsuite/23_containers/list/requirements/explicit_instantiation/alloc_ptr.cc: - Likewise. - -2025-01-15 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/109849 - * include/bits/vector.tcc (vector::_M_range_insert): Fix - reversed args in length calculation. - -2025-01-15 Jonathan Wakely <jwakely@redhat.com> - - * testsuite/28_regex/traits/char/transform_primary.cc: Fix - subclause numbering in references to the standard. - -2025-01-15 Jakub Jelinek <jakub@redhat.com> - - PR c++/118387 - * testsuite/25_algorithms/default_template_value.cc - (Input::operator<=>): Use auto as return type rather than bool. - -2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * testsuite/27_io/print/1.cc: Allow both LF and CRLF in test. - * testsuite/27_io/print/3.cc: Likewise. - -2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> - - * testsuite/29_atomics/atomic_float/compare_exchange_padding.cc: - Use effective-target libatomic_available. - -2025-01-10 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/atomic_futex.h (__atomic_futex_unsigned): Remove - names of unused parameters in non-futex implementation. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/move.h (__addressof, forward, forward_like, move) - (move_if_noexcept, addressof): Add always_inline attribute. - Replace _GLIBCXX_NODISCARD with [[__nodiscard__]]. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118260 - * python/hook.in: Run 'skip' commands for some simple accessor - functions. - -2025-01-08 Nicolas Werner <nicolas.werner@hotmail.de> - - PR libstdc++/106852 - * src/c++23/std.cc.in (to_underlying): Add. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118177 - * src/c++23/std-clib.cc.in: Use preprocessor conditions for - names which are not always defined. - * src/c++23/std.cc.in: Likewise. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - * include/std/span: Fix indentation. - -2025-01-08 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> - - * include/bits/version.def: Add the new feature-testing macro. - * include/bits/version.h: Regenerate. - * include/std/span: Add constructor from initializer_list. - * testsuite/23_containers/span/init_list_cons.cc: New test. - * testsuite/23_containers/span/init_list_cons_neg.cc: New test. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - * include/std/span (__detail::__extent_storage): Check - precondition in constructor. Add consteval constructor for valid - lengths and deleted constructor for invalid constant lengths. - Make member functions always_inline. - (__detail::__span_ptr): New class template. - (span): Adjust constructors to use a std::integral_constant - value for constant lengths. Declare all specializations of - std::span as friends. - (span::first<C>, span::last<C>, span::subspan<O,C>): Use new - private constructor. - (span(__span_ptr<T>)): New private constructor for constant - lengths. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/85824 - PR libstdc++/94409 - PR libstdc++/98723 - PR libstdc++/118105 - * include/bits/locale_classes.tcc (collate::do_transform): Check - errno after calling _M_transform. Use RAII type to manage the - buffer and to restore errno. - * include/bits/regex.h (regex_traits::transform_primary): Handle - exceptions from std::collate::transform and do not try to use - std::collate for user-defined facets. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/118093 - * include/bits/atomic_futex.h (_M_load_and_test_until_impl): - Return false for times before the epoch. - * src/c++11/futex.cc (_M_futex_wait_until): Extend check for - negative times to check for subsecond times. Add unlikely - attribute. - (_M_futex_wait_until_steady): Likewise. - * testsuite/30_threads/future/members/118093.cc: New test. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - PR libstdc++/90389 - * include/bits/deque.tcc (_M_insert_aux): Rename variadic - overload to _M_emplace_aux. - * include/bits/stl_deque.h (_M_insert_aux): Define inline. - (_M_emplace_aux): Declare. - * testsuite/23_containers/deque/modifiers/emplace/90389.cc: New - test. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - * include/bits/move.h (forward, move, move_if_noexcept, addressof): - Add @since to Doxygen comments. - (forward_like): Add Doxygen comment. - -2025-01-08 Jonathan Wakely <jwakely@redhat.com> - - * doc/xml/manual/evolution.xml: Replace invalid <variable> - elements with <varname>. - * doc/html/*: Regenerate. - -2025-01-01 Gerald Pfeifer <gerald@pfeifer.com> - - * doc/html/manual/profile_mode.html: Delete. - * doc/html/manual/profile_mode_api.html: Ditto. - * doc/html/manual/profile_mode_cost_model.html: Ditto. - * doc/html/manual/profile_mode_design.html: Ditto. - * doc/html/manual/profile_mode_devel.html: Ditto. - * doc/html/manual/profile_mode_impl.html: Ditto. -Copyright (C) 2025 Free Software Foundation, Inc. +Copyright (C) 2026 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/libstdc++-v3/ChangeLog-2025 b/libstdc++-v3/ChangeLog-2025 new file mode 100644 index 00000000000..db67a19a59d --- /dev/null +++ b/libstdc++-v3/ChangeLog-2025 @@ -0,0 +1,9154 @@ +2025-12-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * configure: Regenerate. + +2025-12-22 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/using_macros.html: Regenerate. + * doc/xml/manual/using.xml: Add entries for + _GLIBCXX_USE_OLD_GENERATE_CANONICAL and + _GLIBCXX_USE_VARIANT_CXX17_OLD_ABI. + +2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/112591 + * include/std/variant (_Uninitialized::_M_get, __get_n) + (_Uninitialized<_Type, false>): Add _GLIBCXX_USE_VARIANT_CXX17_OLD_ABI + check to preprocessor guard. + * testsuite/20_util/variant/112591.cc: Updated tests. + * testsuite/20_util/variant/112591_compat.cc: New test. + * testsuite/20_util/variant/constinit.cc: New test. + * testsuite/20_util/variant/constinit_compat.cc: New test. + +2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon_eng.cc: + Test __float128 when available. + +2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/random.h (__rand_uint128::operator>) + (__rand_uint128::operator>=): Define. + * include/bits/random.tcc (__generate_canonical_pow2): + Adjust for use of __rand_uint128 in C++11. + (__gen_can_pow, __gen_can_rng_calls_needed): Replace with + __gen_canon_log. + (__gen_canon_log_res, __gen_canon_log): Define. + (__generate_canonical_any): Reworked how _UInt is determined. + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon_eng.cc: + New test. + +2025-12-19 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/123147 + * include/bits/chrono_io.h (_Parser::operator()) <%S>: Use a + buffer of narrow characters to be parsed by std::from_chars. + * testsuite/std/time/parse/parse.cc: Check wchar_t parsing. + +2025-12-19 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/debug/helper_functions.h (__gnu_debug::__can_advance): + Declare as _GLIBCXX20_CONSTEXPR. + * include/debug/safe_iterator.h (__gnu_debug::__can_advance): + Define as _GLIBCXX20_CONSTEXPR, and return true for constexpr + evaluation. + (__gnu_debug::__base): Define as _GLIBCXX20_CONSTEXPR. + +2025-12-19 Jonathan Wakely <jwakely@redhat.com> + + * src/c++11/mutex.cc [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] + (__get_once_call): Use std::add_lvalue_reference. + +2025-12-18 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_write): Add + maybe_unused attribute to avoid -Wunused-parameter warning. + * src/c++20/tzdb.cc (detect_windows_zone): Decay array to + pointer to avoid -Warray-compare warning. + +2025-12-18 LIU Hao <lh_mouse@126.com> + Jonathan Wakely <jwakely@redhat.com> + + * config/os/mingw32-w64/os_defines.h (_GLIBCXX_NO_EXTERN_THREAD_LOCAL): + New macro. + * include/std/mutex [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] + (__get_once_callable, __get_once_call): Declare new functions. + * src/c++11/mutex.cc [_GLIBCXX_NO_EXTERN_THREAD_LOCAL] + (__get_once_callable, __get_once_call): Define. + +2025-12-18 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/123180 + * include/bits/ranges_algo.h (__stable_sort_fn::operator()): Fix + sense of null check. Replace typedef with alias-declaration. + * testsuite/25_algorithms/stable_sort/123180.cc: New test. + +2025-12-18 Jonathan Wakely <jwakely@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * include/bits/random.tcc (__generate_canonical_pow2): Adjust + comments. Remove _UInt template parameter and define it in the + body using _Select_uint_least_t<__d>. Remove popcount call for + getting the width of the _UInt type. Cast floating-point + literal to _RealT. + (__generate_canonical_any): Remove _UInt template parameter and + define it in the body using _Select_uint_least_t<__d * 2>. Use + direct-initialization for _UInt variables. Cast floating-point + literal to _RealT. + (generate_canonical): Remove unused typedef. Remove constexpr-if + branches and remove unsigned type from template argument lists. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.def (constexpr_exceptions): Add + cxx11abi=yes. + * include/bits/version.h: Regenerate. + * testsuite/18_support/exception/version.cc: Require effectiove + target cxx11_abi. + * testsuite/18_support/exception_ptr/exception_ptr_cast.cc: Only + check for constexpr support in cxx11 ABI. + * testsuite/19_diagnostics/headers/stdexcept/version.cc: Require + effective target cxx11_abi. + * testsuite/19_diagnostics/logic_error/constexpr.cc: Likewise. + * testsuite/19_diagnostics/runtime_error/constexpr.cc: Likewise. + * testsuite/20_util/expected/version.cc: Only check for + __cpp_lib_constexpr_exceptions macro for cxx11 ABI. + * testsuite/20_util/optional/version.cc: Likewise. + * testsuite/20_util/variant/version.cc: Likewise. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * include/bits/random.h [!__SIZEOF_INT128__] (__rand_uint128): + Refactor and rename _Select_uint_least_t<128>::type to a new + class. Make all members constexpr. Add new member functions for + additional arithmetic and bitwise operations, and comparisons. + (__detail::_Select_uint_least_t<>::type): Define as an alias of + __rand_uint128. + * include/bits/random.tcc (philox_engine::_M_mulhi): Use + _Select_uint_least_t<w*2>::type instead of __uint128_t. + (philox_engine::_M_transition): Likewise. + * include/bits/version.def (philox_engine): Remove extra_cond. + * include/bits/version.h: Regenerate. + * testsuite/26_numerics/random/philox4x32.cc: Remove + dg-require-cpp-feature-test directive. + * testsuite/26_numerics/random/philox4x64.cc: Likewise. + * testsuite/26_numerics/random/philox_engine/cons/copy.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/cons/default.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/cons/seed.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/operators/equal.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: + Likewise. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc: + Add -fexcess-precision=standard to options. + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: + Likewise. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc + [_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Restore test01. Do not discard an + extra value in test02. + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: + Skip if _GLIBCXX_USE_OLD_GENERATE_CANONICAL is defined in options. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/random.h [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL] + (generate_canonical): Use inline namespace _V2. + * include/bits/random.tcc [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL] + (generate_canonical): Likewise. + * testsuite/26_numerics/random/pr60037-neg.cc: Remove lineno so + that one dg-error matches both diagnostics. + +2025-12-17 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/random.tcc [_GLIBCXX_USE_OLD_GENERATE_CANONICAL] + (generate_canonical): Restore braces around statement. + +2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/random.tcc (generate_canonical) + [!_GLIBCXX_USE_OLD_GENERATE_CANONICAL]: Use static_assert + instead of type-constraint on template parameter. + * testsuite/26_numerics/random/pr60037-neg.cc: Updated line + of error. + +2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/random.tcc (generate_canonical): Update + error message to match pre-existing one in random.h. + * testsuite/26_numerics/random/pr60037-neg.cc: Updated + line for error message. + +2025-12-17 Jakub Jelinek <jakub@redhat.com> + + * include/bits/random.tcc (std::generate_canonical): Use + __extension__ before __generate_canonical_{pow2,any} calls with + unsigned __int128 template arguments. + +2025-12-17 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/atomic_base.h + (__atomic_ref_base<const _Tp>::__atomic_ref_base): Accept + pointer instead of reference. Remove precondition check and + mark as noexcept. + (__atomic_ref_base<_Tp>::__atomic_ref_base): Accept pointer + insted of reference, and mark as noexcept. + * include/std/atomic (atomic_ref::atomic_ref(_Tp&)): Add + precondition check and take address of argument. + (atomic_ref::atomic_ref(_Tp&&)): Define as deleted. + (atomic_ref::atomic_ref(atomic_ref<_Up>)): Define. + * include/bits/shared_ptr_atomic.h (_Sp_atomic::_Atomic_count): + Pass address to __atomic_ref constructor. + * include/std/barrier (__tree_barrier_base::_M_arrive) + (__tree_barrier::arrive): Pass address to __atomic_ref constructor. + * testsuite/29_atomics/atomic_ref/ctor.cc: New test. + +2025-12-16 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (_Integer_kind): New enum type. + (__is_integral_helper::_S_kind): New static data member in + primary template and each explicit specialization. + (__is_signed_integer, __is_unsigned_integer): Use _S_kind + instead of O(n) disjunction with is_same. + +2025-12-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122907 + * include/bits/cpp_type_traits.h (__memcpyable_integer<bool>): + Define as false. + * testsuite/25_algorithms/copy/122907.cc: New test. + +2025-12-16 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/lib/libstdc++.exp (dg-v3-runtest) Set default_std to + 20. + +2025-12-16 Jonathan Wakely <jwakely@redhat.com> + + * include/std/chrono (chrono::__detail::__get_leap_second_info): + Update expiry date for leap seconds list. + * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds): + Likewise. + * src/c++20/tzdata.zi: Import new file from 2025c release. + +2025-12-16 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119739 + * include/bits/random.tcc: Add generate_canonical impl for C++26. + * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc: + Adapt test for both pre- and post- C++26. + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: + Test for float and double from 32-bit RNG, including 1.0 do-over. + +2025-12-16 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/113299 + * include/bits/deque.tcc (__copy_move_a1): Constrain with + __is_any_random_access_iter instead of __is_random_access_iter. + (__copy_move_backward_a1): Likewise. + (__equal_aux1): Likewise. + * include/bits/stl_algo.h (__search_n): Use + __iter_concept_or_category instead of __iterator_category + or iterator_traits::iterator_category. + (find_end): Likewise. + (__is_permutation): Likewise. + (for_each_n): Likewise. + (unique_copy): Likewise, for constant iterators. + (sample): Likewise, for constant iterators. + * include/bits/stl_algobase.h (__copy_move_a1): Adjust + deque-based forward declaration accordingly. + (__copy_move_backward_a1): Likewise. + (__equal_aux1): Likewise. + (__lexicographical_compare_impl): Use + __iter_concept_or_category instead of __iterator_category or + iterator_traits::iterator_category. + (__equal4): Likewise. + * include/bits/stl_iterator_base_funcs.h + (__iter_concept_or_category): New. + (__is_any_random_access_iter): New. + (_GLIBCXX_ITER_MOVE): New. + * include/bits/stl_uninitialized.h (uninitialized_copy_n): + Use __iterator_concept_or_category instead of + __iterator_category for the constant iterator __first. + (__uninitialized_copy_n_pair): Likewise. + * include/bits/version.def (algorithm_iterator_requirements): + Define. + * include/bits/version.h: Regenerate. + * include/std/algorithm: Provide the FTM + __cpp_lib_algorithm_iterator_requirements. + * include/std/memory: Likewise. + * include/std/numeric: Likewise. Include + <bits/stl_iterator_base_funcs.h>. + (reduce): Use __is_any_random_access_iter instead of + __is_random_access_iter. + (transform_reduce): Likewise. + (inclusive_scan): Use _GLIBCXX_ITER_MOVE instead of std::move. + * testsuite/25_algorithms/find_end/c++20_iter.cc: New test. + * testsuite/25_algorithms/sample/c++20_iter.cc: New test. + * testsuite/25_algorithms/search_n/c++20_iter.cc: New test. + * testsuite/25_algorithms/unique_copy/c++20_iter.cc: New test. + * testsuite/26_numerics/inclusive_scan/c++20_iter.cc: New test. + +2025-12-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (submdspan): Fix missing '::template'. + +2025-12-11 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/121114 + * include/bits/version.def: Implement C++26 P3378R2 - constexpr + exception types. + (constexpr_exceptions): Change value from 1 to 202502, remove + no_stdname and TODO comments. + * include/bits/version.h: Regenerate. + * src/c++11/cow-stdexcept.cc (__cow_string(const char*)): New + ctor. + (__cow_string::c_str()): New method. + * config/abi/pre/gnu.ver (GLIBCXX_3.4.35): Export 8 __cow_string + symbols. + * include/bits/new_except.h: New file. + * include/bits/new_throw.h: New file. + * include/bits/stdexcept_throw.h: New file. + * include/bits/stdexcept_throwdef.h: New file. + * include/bits/stdexcept_throwfwd.h: New file. + * include/std/stdexcept: Include bits/stdexcept_except.h and move + everything after <string> include except for std::range_error into + include/bits/stdexcept_except.h. + (std::range_error): If __cpp_lib_constexpr_exceptions >= 202502L + make all cdtors and methods constexpr. + * include/bits/stdexcept_except.h: New file. + * include/std/optional (__glibcxx_want_constexpr_exceptions): Define + before including bits/version.h. + (bad_optional_access::what): Make constexpr for + __cpp_lib_constexpr_exceptions >= 202502L. + (__throw_bad_optional_access): Likewise. + * include/std/expected (__glibcxx_want_constexpr_exceptions): Define + before including bits/version.h. + (bad_expected_access): Make cdtors and all methods constexpr for + __cpp_lib_constexpr_exceptions >= 202502L. + * include/std/format (__glibcxx_want_constexpr_exceptions): Define + before including bits/version.h. + (_GLIBCXX_CONSTEXPR_FORMAT_ERROR): Define and undef later. + (format_error): Use _GLIBCXX_CONSTEXPR_FORMAT_ERROR on ctors. + * include/std/variant (__glibcxx_want_constexpr_exceptions): Define + before including bits/version.h. + (_GLIBCXX_CONSTEXPR_BAD_VARIANT_ACCESS): Define and undef later. + (bad_variant_access): Use it on ctors and what() method. + (__throw_bad_variant_access): Use it here too. + * testsuite/18_support/exception/version.cc: Adjust expected + __cpp_lib_constexpr_exceptions value. + * testsuite/19_diagnostics/runtime_error/constexpr.cc: New test. + * testsuite/19_diagnostics/headers/stdexcept/version.cc: New test. + * testsuite/19_diagnostics/logic_error/constexpr.cc: New test. + * testsuite/20_util/expected/observers.cc (test_value_throw): Change + return type to bool from void, return true at the end, add test + to dereference what() first character. Make it constexpr for + __cpp_lib_constexpr_exceptions >= 202502L and add static_assert. + * testsuite/20_util/expected/version.cc: Add tests for + __cpp_lib_constexpr_exceptions value. + * testsuite/20_util/variant/constexpr.cc: For + __cpp_lib_constexpr_exceptions >= 202502L include <string>. + (test_get): New function if __cpp_lib_constexpr_exceptions >= 202502L, + assert calling it is true. + * testsuite/20_util/variant/version.cc: Add tests for + __cpp_lib_constexpr_exceptions value. + * testsuite/20_util/optional/constexpr/observers/3.cc: Include + testsuite_hooks.h. + (eat, test01): New functions. Assert test01() is true. + * testsuite/20_util/optional/version.cc: Add tests for + __cpp_lib_constexpr_exceptions value. + * include/std/future: Add #include <bits/functexcept.h>. + * include/std/shared_mutex: Include <bits/new_throw.h>. + * include/std/flat_map: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/std/syncstream: Remove <bits/functexcept.h> include. + * include/std/flat_set: Likewise. + * include/std/bitset: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/std/string_view: Don't include <bits/functexcept.h>, include + <bits/stdexcept_throw.h> early if __glibcxx_exc_in_string is not + defined and include <bits/stdexcept_throw.h> at the end of + the header again if __glibcxx_exc_in_string is 2 and C++26 constexpr + exceptions are enabled. + (__glibcxx_exc_in_string): Define if __glibcxx_exc_in_string wasn't + defined before including <bits/stdexcept_throw.h>. + * include/std/array: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/std/inplace_vector: Likewise. + * include/std/string: Include <bits/stdexcept_except.h> and + <bits/stdexcept_throw.h> after bits/basic_string.tcc include if + C++26 constexpr exceptions are enabled and include + <bits/stdexcept_throw.h> instead of <bits/functexcept.h> early. + (__glibcxx_exc_in_string): Define early to 1, undefine at the end. + * include/std/deque: Include <bits/stdexcept_throw.h>. + * include/bits/new_allocator.h: Include <bits/new_throw.h> instead + of <bits/functexcept.h>. + * include/bits/stl_algobase.h: Remove <bits/functexcept.h> include. + * include/bits/stl_vector.h: Include <bits/stdexcept_throw.h> instead + of <bits/functexcept.h>. + * include/bits/memory_resource.h: Include <bits/new_throw.h> instead + of <bits/functexcept.h>. + * include/bits/functexcept.h: Guard everything after includes with + #if _GLIBCXX_HOSTED. + (__throw_bad_alloc, __throw_bad_array_new_length, __throw_logic_error, + __throw_domain_error, __throw_invalid_argument, __throw_length_error, + __throw_out_of_range, __throw_out_of_range_fmt, __throw_runtime_error, + __throw_overflow_error, __throw_underflow_error): Move declarations to + other headers - <bits/new_throw.h> and <bits/stdexcept_throwfwd.h>. + * include/bits/stl_map.h: Include <bits/stdexcept_throw.h> instead + of <bits/functexcept.h>. + * include/bits/hashtable_policy.h: Include <bits/stdexcept_throw.h> + instead of <bits/functexcept.h>. + * include/bits/formatfwd.h (std::__throw_format_error): Remove + declaration. + * include/bits/specfun.h: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/bits/basic_ios.h: Include <bits/functexcept.h>. + * include/bits/locale_classes.h: Likewise. + * include/tr1/cmath: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/tr1/memory: Remove <bits/functexcept.h> include. + * include/tr1/array: Include <bits/stdexcept_throw.h>. + * include/ext/vstring_util.h: Include <bits/stdexcept_throw.h> instead + of <bits/functexcept.h>. + * include/ext/bitmap_allocator.h: Include <bits/new_throw.h> instead + of <bits/functexcept.h>. + * include/ext/mt_allocator.h: Likewise. + * include/ext/malloc_allocator.h: Likewise. + * include/ext/debug_allocator.h: Include <bits/stdexcept_throw.h> + instead of <bits/functexcept.h>. + * include/ext/concurrence.h: Include <bits/exception_defines.h> + instead of <bits/functexcept.h>. + * include/ext/throw_allocator.h: Include <bits/new_throw.h> and + <bits/stdexcept_throw.h> instead of <bits/functexcept.h>. + * include/ext/string_conversions.h: Include <bits/stdexcept_throw.h> + instead of <bits/functexcept.h>. + * include/ext/pool_allocator.h: Include <bits/new_throw.h> instead + of <bits/functexcept.h>. + * include/ext/ropeimpl.h: Include <bits/stdexcept_throw.h> instead of + <bits/functexcept.h>. + * include/tr2/dynamic_bitset: Likewise. + * include/experimental/optional: Include <bits/exception_defines.h> + instead of <bits/functexcept.h>. + * include/Makefile.am (bits_freestanding): Add + ${bits_srcdir}/{new,stdexcept}_{except,throw}.h + and ${bits_srcdir}/stdexcept_throw{fwd,def}.h. + * include/Makefile.in: Regenerate. + * src/c++17/floating_from_chars.cc: Remove <bits/functexcept.h> + include. + * src/c++11/regex.cc: Likewise. + * src/c++11/functexcept.cc: Likewise. + * src/c++11/snprintf_lite.cc: Include <bits/stdexcept_throw.h> instead + of <bits/functexcept.h>. + * src/c++11/thread.cc: Include <bits/functexcept.h>. + * testsuite/util/testsuite_hooks.h: Include <bits/stdexcept_throw.h> + instead of <bits/functexcept.h>. + * testsuite/util/io/verified_cmd_line_input.cc: Include + <bits/exception_defines.h> instead of <bits/functexcept.h>. + * testsuite/20_util/allocator/105975.cc: Expect different diagnostics + for C++26. + * testsuite/23_containers/inplace_vector/access/capacity.cc: Remove + #error, guard if consteval { return; } with + #ifndef __cpp_lib_constexpr_exceptions. + * testsuite/23_containers/inplace_vector/access/elem.cc: Likewise. + * testsuite/23_containers/inplace_vector/cons/1.cc: Likewise. + * testsuite/23_containers/inplace_vector/cons/from_range.cc: Likewise. + * testsuite/23_containers/inplace_vector/modifiers/single_insert.cc: + Likewise. + * testsuite/23_containers/inplace_vector/modifiers/assign.cc: + Likewise. + * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: + Likewise. + * libsupc++/new: Include <bits/new_except.h>. + (std::bad_alloc, std::bad_array_new_length): Move defintion to + <bits/new_except.h>. + +2025-12-11 Jason Merrill <jason@redhat.com> + + * testsuite/Makefile.am (CLEANFILES): Add gcm.cache. + * testsuite/Makefile.in: Regenerate. + * testsuite/lib/dg-options.exp (add_options_for_no_pch): Also add + -fno-modules. + * testsuite/lib/libstdc++.exp (v3_std_list): Handle "modules" std. + (v3_modules_std): New global. + (v3-build_support): Build gcms for bits/stdc++.h, std, and + std.compat. + +2025-12-11 Yuao Ma <c8ef@outlook.com> + + * include/bits/version.def: Add FTM. + * include/bits/version.h: Regenerate. + * include/std/flat_set: Add constexpr. + * testsuite/23_containers/flat_multiset/1.cc: Add constexpr test. + * testsuite/23_containers/flat_set/1.cc: Add constexpr test. + +2025-12-09 John Ericson <git@johnericson.me> + + * acinclude.m4: Use GCC_AC_THREAD_MODEL instead, via AC_REQUIRE + * configure: Regenerate. + +2025-12-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.h: Regenerate. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/bits/version.def (padded_layouts): Set to 202403. + (submdspan): Set to 202411 add dependency. + * include/bits/version.h: Regenerate. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan + (__mdspan::_SubMdspanMapping<_LayoutSide::__right, true>): Define. + (layout_right_padded::submdspan_mapping): New friend function. + * testsuite/23_containers/mdspan/submdspan/selections/right_padded.cc: + Instantiate tests for layout_right_padded. + * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: + Ditto. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (__mdspan::__is_padded_mapping): Define. + (__mdspan::_SubMdspanMapping): Add _Padded template parameter. + (__mdspan::_SubMdspanMapping<_LayoutSide::__left, true>): Define. + (__mdspan::__submdspan_mapping_impl): Updated _Trait alias. + (layout_left_padded::submdspan_mapping): New friend method. + * testsuite/23_containers/mdspan/layout_traits.h + (LayoutTraits::layout_same_padded): New template type alias. + * testsuite/23_containers/mdspan/submdspan/selections/left_padded.cc: + Instantiate tests for layout_left_padded. + * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: + Ditto. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (layout_stride::mapping::submdspan_mapping): New + friend function. + * testsuite/23_containers/mdspan/submdspan/selections/stride.cc: + Instantiate tests for layout_stride. + * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: + Ditto. + * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: + Add tests for layout_stride. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan + (__mdspan::_SubMdspanMapping<_LayoutSide::__right>): Define. + (layout_right::mapping::submdspan_mapping): New friend function. + * testsuite/23_containers/mdspan/submdspan/selections/right.cc: + Instantiate tests for layout_right. + * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: + Ditto. + * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: + Ditto. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (__mdspan::__is_submdspan_mapping_result) + (__mdspan::__submdspan_mapping_result, __mdspan::__fwd_prod) + (__mdspan::__acceptable_slice_type, __mdspan::__slice_begin) + (__mdspan::__suboffset, __mdspan::_LayoutSide, __mdspan::__mapping_side) + (__mdspan::_StridesTrait, __mdspan::__substrides_generic) + (__mdspan::__substrides_standardized, __mdspan::__substrides) + (__mdspan::__is_unit_stride_slice, __mdspan::_SliceKind) + (__mdspan::__make_slice_kind, __mdspan::__make_slice_kind_array) + (__mdspan::__is_block, __mdspan::__padded_block_begin_generic) + (__mdspan::__padded_block_begin, __mpdspan::_SubMdspanMapping) + (__mdspan::__submdspan_mapping_impl): Define. + (__mdspan::__dynamic_slice_extent, __mdspan::__static_slice_extent) + (__mdspan::__subextents): Move earlier in the file. + (layout_left::mapping::submdspan_mapping, __mdspan::__sliceable_mapping) + (__mdspan::__submapping, submdspan): Define. + * src/c++23/std.cc.in: Add submdspan. + * testsuite/23_containers/mdspan/submdspan/generic.cc: New test. + * testsuite/23_containers/mdspan/submdspan/selections/left.cc: + Instantiate selection tests for layout_left. + * testsuite/23_containers/mdspan/submdspan/selections/testcases.h: Generic + tests different selections. + * testsuite/23_containers/mdspan/submdspan/submdspan_mapping.cc: New test. + * testsuite/23_containers/mdspan/submdspan/submdspan_neg.cc: New test. + +2025-12-09 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (_ExtentsStorage::_M_dynamic_extents): + Create span from pointer + size, not begin and end iterators. + +2025-12-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122946 + * include/bits/version.def (concepts): Set value to 202207. + * include/bits/version.h: Regenerate. + * include/std/concepts (__comparison_common_type_with_impl) + (__comparison_common_type_with): New helper concepts. + (equality_comparable_with): Use __comparison_common_type_with. + * libsupc++/compare (three_way_comparable_with): Likewise. + (__glibcxx_want_concepts): Define to get __cpp_lib_concepts + here. + * testsuite/std/concepts/concepts.compare/move_only.cc: New + test. + +2025-12-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/intcmp.h: Replace all uses of + __is_standard_integer with __is_signed_or_unsigned_integer. + * include/bits/max_size_type.h: Fix outdated comment. + * include/bits/sat_arith.h: Replace all uses of + __is_standard_integer with __is_signed_or_unsigned_integer. + * include/c_compatibility/stdckdint.h: Replace all uses of the + __cv_unqual_signed_or_unsigned_integer_type concept with + __is_signed_or_unsigned_integer. + (__cv_unqual_signed_or_unsigned_integer_type): Remove. + * include/ext/numeric_traits.h: Fix outdated comment. + * include/std/charconv (from_chars): Replace use of + __is_standard_integer with __is_signed_or_unsigned_integer. + Do not enable for cv-qualified char. + * include/std/mdspan: Likewise. + * include/std/type_traits (__is_unsigned_integer): Include + unsigned __int128 in type list. + (__is_signed_integer): Include signed __int128 in type list. + (__is_standard_integer): Rename to ... + (__is_signed_or_unsigned_integer): ... this. + * testsuite/23_containers/mdspan/extents/ctor_ints.cc: Test + with 128-bit integers. + * testsuite/23_containers/mdspan/submdspan/strided_slice.cc: + Likewise. + * testsuite/20_util/integer_comparisons/extended.cc: New test. + * testsuite/26_numerics/saturation/extended.cc: New test. + * testsuite/26_numerics/stdckdint/extended.cc: New test. + +2025-12-08 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/112591 + * include/std/variant (_Variadic_union): Separate specializations for + for union of only trivially destructible types (true as first template + argument). Unconditionally define destructor for _Variadic_union<false, + _First, _Rest...>. + * testsuite/20_util/variant/87619.cc: Add limit for the template depth. + * testsuite/20_util/variant/112591.cc: New test. + +2025-12-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/iterator_concepts.h: Remove diagnostic pragmas. + +2025-12-08 Jonathan Wakely <jwakely@redhat.com> + + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/std/latch: Include <bits/intcmp.h> instead of + <utility>. + * include/std/utility: Include <bits/intcmp.h>. + (cmp_equal, cmp_not_equal, cmp_less, cmp_greater) + (cmp_less_equal, cmp_greater_equal, in_range): Move to ... + * include/bits/intcmp.h: New file. + +2025-12-06 Jason Merrill <jason@redhat.com> + + * src/c++23/std.cc.in: Add more #if. + +2025-12-06 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/80564 + * include/std/functional (__cv_like): New. + (_Bind::_Res_type): Don't define when not needed. + (_Bind::__dependent): Likewise. + (_Bind::_Res_type_cv): Likewise. + (_Bind::operator()) [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: + Define as two instead of four overloads using deducing + this. + * testsuite/20_util/bind/cv_quals_2.cc: Ignore SFINAE + diagnostics inside headers. + * testsuite/20_util/bind/ref_neg.cc: Likewise. + * testsuite/20_util/bind/80564.cc: New test. + +2025-12-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_wait.h (__detail::__atomic_eq): Use + std::addressof instead of &. + * include/std/atomic (atomic::wait, atomic::notify_one) + (atomic::notify_all): Likewise. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120446 + * include/bits/refwrap.h (__detail::__is_ref_wrapper): + Define as per P2655R3 for C++20. + (__detail::__ref_wrap_common_reference_exists_with): Likewise. + (basic_common_reference): Define partial specializations using + the above as per P2655R3 for C++20. + * include/bits/version.def (common_reference_wrapper): New. + * include/bits/version.h: Regenerate. + * include/std/functional (__glibcxx_want_common_reference_wrapper): + Define. + * testsuite/20_util/reference_wrapper/p2655r3.cc: New test. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/120446 + * include/bits/version.def (common_reference): New. + * include/bits/version.h: Regenerate. + * include/std/type_traits (__glibcxx_want_common_reference): + Define. + (__common_reference_impl<T1, T2, 1>): Add pointer convertibility + constraints as per P2655R3. + * testsuite/20_util/common_reference/p2655r3.cc: New test. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + PR c++/120446 + * include/std/type_traits (__common_reference_impl): Rewrite + partial specializations to use requires-clause instead of + an additional void_t template parameter. Consolidate the + partial specializations corresponding to bullet 1. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + * testsuite/20_util/function_objects/bind_front/111327.cc: + Add missing space before } ending a dg-error directive. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/111550 + * include/std/ranges (views::__adaptor::_Partial::operator()) + [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Also use deducing this + in C++20 mode when possible. + (views::__adaptor::_Pipe::Operator()) + [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Likewise. + * testsuite/std/ranges/adaptors/take.cc (test07): New test. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/111327 + * include/bits/binders.h (_Binder::operator()) + [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Also use deducing this in + C++20 mode when possible. + * testsuite/20_util/function_objects/bind_front/111327.cc: + Expect error inside header even in C++20 mode. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/111327 + * include/std/functional (_Not_fn::operator()) + [_GLIBCXX_EXPLICIT_THIS_PARAMETER]: Define as a single + overload using deducing this. + * testsuite/20_util/function_objects/not_fn/111327.cc: Extend test. + +2025-12-05 Patrick Palka <ppalka@redhat.com> + + * include/bits/c++config (_GLIBCXX_EXPLICIT_THIS_PARAMETER): + New. + +2025-12-04 François Dumont <frs.dumont@gmail.com> + + * include/debug/deque + (std::erase_if<>(std::__debug::deque<>&, _Pred)): New. + (std::erase<>(std::__debug::deque<>&, const _Up&)): New. + * include/std/deque (std::erase_if(std::deque<>&, _Pred)): Remove + _GLIBCXX_DEBUG code. + * testsuite/23_containers/deque/debug/erase.cc: New test case. + * testsuite/23_containers/deque/debug/invalidation/erase.cc: New test case. + +2025-12-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/debug/safe_unordered_base.h + (_Safe_unordered_container_base::operator=): Define as + defaulted, inherit behavior of _Safe_sequence_base. + +2025-12-04 Luc Grosheintz <luc.grosheintz@gmail.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/mdspan (layout_left): Apply LWG4272. + (layout_right, layout_left_padded, layout_right_padded): Ditto. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Add + test to check ctor uniformity at rank == 0. Update test + for new behavior. + * testsuite/23_containers/mdspan/layouts/padded.cc: Update test + for new behavior. + +2025-12-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/debug/safe_sequence.h + (_Safe_node_sequence::_Safe_node_sequence): Define as defaulted. + +2025-12-03 Vladimir Bespalov <vlad.bespalov@jetstreamsoft.com> + + PR libstdc++/122812 + * python/libstdcxx/v6/printers.py (lookup_templ_spec): Use + gdb.Type.tag if present. + +2025-12-03 Yuao Ma <c8ef@outlook.com> + + * include/bits/basic_string.h: Add subview. + * include/bits/cow_string.h: Add subview. + * include/std/string: Add FTM. + * testsuite/21_strings/basic_string/operations/subview/char.cc: New test. + * testsuite/21_strings/basic_string/operations/subview/wchar_t.cc: New test. + +2025-12-03 Yuao Ma <c8ef@outlook.com> + + * include/bits/version.def: Add string_subview FTM. + * include/bits/version.h: Regenerate. + * include/std/string_view: Add subview. + * testsuite/21_strings/basic_string_view/operations/subview/char.cc: New test. + * testsuite/21_strings/basic_string_view/operations/subview/wchar_t.cc: New test. + +2025-12-03 François Dumont <frs.dumont@gmail.com> + + * include/Makefile.am (debug_headers): Add inplace_vector. + * include/Makefile.in: Regenerate. + * include/debug/functions.h (__check_valid_range): Add C++20 constexpr. + * include/debug/helper_functions.h (__valid_range): Likewise. + * include/debug/inplace_vector: New. + * include/debug/safe_base.h (~_Safe_sequence_base()): Add C++11 noexcept. + (_Safe_sequence_base::operator=(const _Safe_sequence_base&)): New. + (_Safe_sequence_base::operator=(_Safe_sequence_base&&)): New. + (_Safe_sequence_base::_M_invalidate_all): Add C++20 constexpr. + * include/debug/safe_container.h + (_Safe_container<>::operator=(const _Safe_container<>&)): Implement using + _Safe_sequence_base same operator. + * include/debug/safe_iterator.h (__valid_range): Add C++20 constexpr. + * include/debug/safe_sequence.h + (_Not_equal_to(const _Type&)): Add C++20 constexpr. + (_Equal_to(const _Type&)): Add C++20 constexpr. + (_After_nth_from(const difference_type&, const _Iterator&)): Add C++20 constexpr. + (_Safe_sequence<>::_M_invalidate_if): Add C++20 constexpr. + (_Safe_node_sequence::operator=(const _Safe_node_sequence&)): New. + (_Safe_node_sequence::operator=(_Safe_node_sequence&&)): New. + (_Safe_node_sequence<>::_M_invalidate_all()): Add C++20 constexpr. + * include/debug/safe_sequence.tcc + (_Safe_sequence<>::_M_invalidate_if): Add C++20 constexpr. + * include/std/inplace_vector [_GLIBCXX_DEBUG](std::inplace_vector<>): Move + implementation into __cxx1998 namespace. + (erase, erase_if): Limit to non-debug inplace_vector<>, cleanup code. + [_GLIBCXX_DEBUG]: Add include <debug/inplace_vector>. + * testsuite/23_containers/inplace_vector/cons/1.cc: Adapt, skip several + is_trivially_xxx checks when in _GLIBCXX_DEBUG mode. + * testsuite/23_containers/inplace_vector/copy.cc: Likewise. + * testsuite/23_containers/inplace_vector/move.cc: Likewise. + * testsuite/23_containers/inplace_vector/debug/assign1_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/assign2_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/assign3_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/assign4_backtrace_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/assign4_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/construct1_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/construct2_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/construct3_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/construct4_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/debug_functions.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/erase.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert1_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert2_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert3_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert4_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert5_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/insert7_neg.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/1.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/2.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/3.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/4.cc: New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/append_range.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/erase.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/pop_back.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/push_back.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/swap.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/try_append_range.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/try_emplace_back.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/try_push_back.cc: + New test case. + * testsuite/23_containers/inplace_vector/debug/invalidation/unchecked_emplace_back.cc: + New test case. + * testsuite/util/debug/checks.h: Avoid using _GLIBCXX_DEBUG containers in test + implementations. + +2025-12-02 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (submdspan_extents): New function. + * src/c++23/std.cc.in: Add submdspan_extents. + * testsuite/23_containers/mdspan/int_like.h: Add StructuralInt. + * testsuite/23_containers/mdspan/submdspan/submdspan_extents.cc: New test. + * testsuite/23_containers/mdspan/submdspan/submdspan_extents_neg.cc: New test. + +2025-12-02 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (submdspan_canonicalize_slices): New + function. + * src/c++23/std.cc.in (submdspan_canonicalize_slices): Add. + * testsuite/23_containers/mdspan/submdspan/submdspan_canonicalize_slices.cc: New test. + * testsuite/23_containers/mdspan/submdspan/submdspan_canonicalize_slices_neg.cc: New test. + +2025-12-01 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/122921 + * include/std/flat_map (_Flat_map_impl::_Iterator::value_type): + Remove const from key_type to make consistent with the + container's value_type. + * testsuite/23_containers/flat_map/1.cc (test09): New test. + * testsuite/23_containers/flat_multimap/1.cc (test09): New test. + +2025-12-01 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__wait_until_impl): Use + chrono::nanoseconds for parameter. + * src/c++20/atomic.cc (__wait_until_impl): Likewise. + +2025-12-01 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122878 + * src/c++20/atomic.cc (__spin_until_impl): Remove. + (__wait_until_impl): Use __spin_impl instead of + __spin_until_impl and return if timeout is reached after + spinning. + +2025-12-01 Jonathan Wakely <jwakely@redhat.com> + + * src/c++20/atomic.cc: Document platform wait API. + (__futex_wait_flags): Remove enumeration type. + (futex_private_flag): Define constant for FUTEX_PRIVATE_FLAG. + (__platform_wait): Use local variables for futex op constants. + (__platform_notify): Likewise. + (__platform_wait_until): Likewise. Adjust parameter types for + consistency with __platform_wait. + +2025-11-28 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/122842 + * include/bits/ranges_base.h (__access:_CBegin): Define in + terms of const_iterator directly, not const_iterator_t. + (__access::_CEnd): Likewise in terms of const_sentinel vs + const_sentinel_t. + (const_iterator_t): Move down definition and define in terms + of ranges::cbegin as per LWG 3946. + (const_sentinel_t): Likewise in terms of ranges::cend. + * testsuite/24_iterators/const_iterator/1.cc (test02): Correct + test for int[], std::array and std::vector. Also test + std::string. + +2025-11-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/performance/23_containers/sort_search/list.cc: Cast + results to void to suppress -Wunused-result warnings from + nodiscard functions. + * testsuite/performance/25_algorithms/equal_deque_iterators.cc: + Likewise. + * testsuite/performance/25_algorithms/search_n.cc: Likewise. + +2025-11-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/Makefile.am: Fix typo in comment. + * testsuite/Makefile.in: Regenerate. + +2025-11-27 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/ranges (__func_handle::__select): Named function + extracted from local lambda. + (__detail::__func_handle_t): Define using __func_handle::__select. + (__func_handle::_Inplace): Raname _M_ptr to _M_fn. + +2025-11-27 Jonathan Wakely <jwakely@redhat.com> + + * config/abi/pre/gnu.ver: Adjust exports. + * include/bits/atomic_timed_wait.h (_GLIBCXX_HAVE_PLATFORM_TIMED_WAIT): + Do not define this macro. + (__atomic_wait_address_until_v, __atomic_wait_address_for_v): + Adjust assertions to check that __platform_wait_uses_type is + true. + * include/bits/atomic_wait.h (__waitable): New concept. + (__platform_wait_uses_type): Different separately for platforms + with and without platform wait. + (_GLIBCXX_HAVE_PLATFORM_WAIT): Do not define this macro. + (__wait_value_type): New typedef. + (__wait_result_type): Change _M_val to __wait_value_type. + (__wait_flags): Remove __proxy_wait enumerator. Reduce range + reserved for ABI version by the commented-out value. + (__wait_args_base::_M_old): Change type to __wait_args_base. + (__wait_args_base::_M_obj, __wait_args_base::_M_obj_size): New + data members. + (__wait_args::__wait_args): Set _M_obj and _M_obj_size on + construction. + (__wait_args::_M_setup_wait): Change void* parameter to deduced + type. Adjust bit_cast to work for types of different sizes. + (__wait_args::_M_load_proxy_wait_val): Remove function, replace + with ... + (__wait_args::_M_setup_proxy_wait): New function. + (__wait_args::_S_flags_for): Do not set __proxy_wait flag. + (__atomic_wait_address_v): Adjust assertion to check that + __platform_wait_uses_type is true. + * src/c++20/atomic.cc (_GLIBCXX_HAVE_PLATFORM_WAIT): Define here + instead of in header. Check _GLIBCXX_HAVE_PLATFORM_WAIT instead + of _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT. + (__platform_wait, __platform_notify, __platform_wait_until): Add + unused parameter for _M_obj_size. + (__spin_impl): Adjust for 64-bit __wait_args_base::_M_old. + (use_proxy_wait): New function. + (__wait_args::_M_load_proxy_wait_val): Replace with ... + (__wait_args::_M_setup_proxy_wait): New function. Call + use_proxy_wait to decide at runtime whether to wait on the + pointer directly instead of using a proxy. If a proxy is needed, + set _M_obj and _M_obj_size to refer to its _M_ver member. Adjust + for change to type of _M_old. + (__wait_impl): Wait on _M_obj unconditionally. Pass _M_obj_size + to __platform_wait. + (__notify_impl): Call use_proxy_wait to decide whether to notify + on the address parameter or a proxy + (__spin_until_impl): Adjust for change to type of _M_val. + (__wait_until_impl): Wait on _M_obj unconditionally. Pass + _M_obj_size to __platform_wait_until. + +2025-11-27 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/semaphore_base.h (__platform_semaphore::_S_max): + Limit to PTRDIFF_MAX to avoid negative values. + * testsuite/30_threads/semaphore/least_max_value.cc: New test. + +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. + * configure: Regenerate. + +2025-11-24 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (operator==, operator!=, operator>) + (operator>, operator<=, operator>=): Do not use logical + && and || with operands of unknown types. + * testsuite/20_util/optional/relops/lwg4370.cc: New test. + +2025-11-24 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (operator==): Use implicit conversion to + bool and do not use logical && and || with operands of unknown + types. Add nodiscard attributes. + * testsuite/20_util/expected/equality.cc: Test some missing + cases which were not covered previously. + * testsuite/20_util/expected/lwg4366.cc: New test. + +2025-11-24 Jonathan Wakely <jwakely@redhat.com> + + * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): + Fix lookup for node type. + +2025-11-24 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122821 + * python/libstdcxx/v6/xmethods.py (_versioned_namespace): Remove + global variable. + (is_specialization_of): Do not use _versioned_namespace. Add + __debug:: to regex. + +2025-11-24 Jonathan Wakely <jwakely@redhat.com> + + * include/std/istream (istream::ignore(streamsize, char)): Add + always_inline attribute. + +2025-11-21 Yuao Ma <c8ef@outlook.com> + + * doc/html/manual/using_exceptions.html: Replace dead link. + * doc/xml/manual/using_exceptions.xml: Likewise. + +2025-11-21 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (expected::value_or): Use remove_cv_t for + the return type. Do not use static_cast for return statement. + Adjust static_assert conditions to match return statements. + * include/std/optional (optional::value_or): Likewise. + (optional<T&>::value_or): Likewise. + +2025-11-21 Yuao Ma <c8ef@outlook.com> + Jonathan Wakely <jwakely@redhat.com> + + * include/std/istream (ignore): Add an overload for char. + * testsuite/27_io/basic_istream/ignore/char/93672.cc: Adjust + expected behaviour for C++26 mode. + * testsuite/27_io/basic_istream/ignore/char/4.cc: New test. + +2025-11-21 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/faq.xml: Refresh information on _GNU_SOURCE and + _XOPEN_SOURCE being predefined. + * doc/xml/manual/internals.xml: Remove outdated paragraph about + _POSIX_SOURCE in libstdc++ source files. + * doc/html/*: Regenerate. + +2025-11-21 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/regex_automaton.tcc [_GLIBCXX_DEBUG]: Include + <ostream> so that _State_base::_M_print etc. can use it. + +2025-11-21 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/23_containers/vector/debug/erase.cc: Remove no_pch + option. + * testsuite/23_containers/vector/debug/invalidation/erase.cc: + Likewise. + +2025-11-20 François Dumont <frs.dumont@gmail.com> + + * include/debug/vector (std::erase_if, std::erase): New overloads for + std::__debug::vector instances. + * include/std/vector (std::erase_if, std::erase): Make overloads specific + to normal std::vector implementation. + * testsuite/23_containers/vector/debug/erase.cc: New test case. + * testsuite/23_containers/vector/debug/invalidation/erase.cc: New test case. + +2025-11-20 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan: Improve formatting and placement. + * testsuite/23_containers/mdspan/int_like.h: Optionally, + add move- and copy-ctors. + * testsuite/23_containers/mdspan/layouts/padded_traits.h: Move to... + * testsuite/23_containers/mdspan/layout_traits.h: ...here. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Fix include. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. + +2025-11-20 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/18_support/headers/new/synopsis.cc: Add constexpr to + placement delete for C++26 and up. + +2025-11-19 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/abi.xml: Add versions for GCC 16. + * doc/html/manual/abi.html: Regenerate. + +2025-11-19 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122743 + * doc/xml/manual/abi.xml: Add versions for GCC 15. + * doc/html/manual/abi.html: Regenerate. + +2025-11-19 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/faq.xml: Remove unwanted whitespace inside + programlisting elements. + * doc/xml/manual/allocator.xml: Likewise. + * doc/xml/manual/auto_ptr.xml: Likewise. + * doc/xml/manual/backwards_compatibility.xml: Likewise. + * doc/xml/manual/build_hacking.xml: Likewise. + * doc/xml/manual/containers.xml: Likewise. + * doc/xml/manual/diagnostics.xml: Likewise. + * doc/xml/manual/extensions.xml: Likewise. + * doc/xml/manual/intro.xml: Likewise. + * doc/xml/manual/io.xml: Likewise. + * doc/xml/manual/iterators.xml: Likewise. + * doc/xml/manual/numerics.xml: Likewise. + * doc/xml/manual/policy_data_structures.xml: Likewise. + * doc/xml/manual/strings.xml: Likewise. + * doc/xml/manual/support.xml: Likewise. + * doc/xml/manual/test.xml: Likewise. + * doc/xml/manual/using.xml: Likewise. + * doc/xml/manual/utilities.xml: Likewise. + * doc/html/*: Regenerate. + +2025-11-19 Andrew Pinski <andrew.pinski@oss.qualcomm.com> + + * include/bits/basic_string.h (basic_string::M_set_length): Swap + around the order of traits_type::assign and _M_length so that + _M_length is at the end. + +2025-11-19 Martin Liska <martin.liska@hey.com> + + * configure: Regenerate. + +2025-11-19 Martin Liska <martin.liska@hey.com> + + * acinclude.m4:: Add detection for wild linker. + * configure: Regenerate. + +2025-11-19 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (extents::_Storage): Move type alias before + its first use. + (__mdspan::__static_extents): Add missing noexcept and constexpr + to friend declaration in extents. + (__mdspan::__dynamic_extents): Ditto. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + * include/std/type_traits (constant_wrapper conversion operator): + Use decltype(value) instead of decltype(auto). Resolves LWG4468. + +2025-11-19 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/122671 + * libsupc++/new (::operator delete, ::operator delete[]): Implement + proposed LWG4477 resolution. Use _GLIBCXX_PLACEMENT_CONSTEXPR for + placement operator deletes. + +2025-11-18 Mike Crowe <mac@mcrowe.com> + + * include/std/shared_mutex (try_lock, try_lock_until) + (try_lock_shared_until): Respond consistently to errors and + deadlocks. + * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: + Test deadlock behaviour if possible. + +2025-11-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121858 + * include/bits/funcref_impl.h + (function_ref::function_ref(nontype<__fn>, _Up&&)): Handle. + reference_wrapper. + * testsuite/20_util/function_ref/call.cc: Call and update + test05(). Add new test06() for reference_wrapper. + +2025-11-17 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122726 + * src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS] + (rename): Use __last_system_error to set errno accurately. + * testsuite/27_io/filesystem/operations/rename.cc: Test + error_code matches errc::no_such_file_or_directory. + +2025-11-17 Jonathan Wakely <jwakely@redhat.com> + + * src/c++23/std.cc.in [!__cpp_lib_syncbuf]: Disable exports for + <syncstream> contents when not defined. + [!_GLIBCXX_USE_CXX11_ABI]: Disable exports for pmr aliases in + <string> when not defined. + +2025-11-17 Jason Merrill <jason@redhat.com> + + * testsuite/util/testsuite_allocator.h: Move importable headers up. + * testsuite/util/testsuite_common_types.h: Likewise. + * testsuite/util/testsuite_containers.h: Likewise. + * testsuite/util/testsuite_error.h: Move includes inside + include guard. + * testsuite/util/testsuite_greedy_ops.h: #include <cstddef>. + * testsuite/util/testsuite_iterators.h: #include <utility>. + * testsuite/util/testsuite_new_operators.h: #include <cstdlib>. + * testsuite/util/testsuite_random.h: #include <random>. + +2025-11-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122698 + * src/c++20/syncbuf.cc (__syncbuf_get_mutex): Include <mutex>. + Fix indentation of function body. + +2025-11-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * scripts/extract_symvers.pl: Remove ccs from elfdump path. + +2025-11-15 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_base.h: Tweak grammar of static assert + messages for unsupported atomic wait on volatile. + +2025-11-15 Jonathan Wakely <jwakely@redhat.com> + + * src/c++20/atomic.cc (__wait_impl): Fix outdated comment. + (__wait_until_impl): Simplify return statements. + +2025-11-14 Tom Tromey <tromey@adacore.com> + + * python/libstdcxx/v6/printers.py (StdVectorPrinter._bounds): + New method. + (StdVectorPrinter.to_string): Use it. + (StdVectorPrinter.num_children): New method. + (StdStackOrQueuePrinter.num_children): New method. + (StdMapPrinter.num_children): New method. + (StdSetPrinter.num_children): New method. + (StdDequePrinter._size): New method. + (StdDequePrinter.to_string): Use it. + (StdDequePrinter.num_children): New method. + (Tr1UnorderedSetPrinter.num_children): New method. + (Tr1UnorderedMapPrinter.num_children): New method. + (StdSpanPrinter.num_children): New method. + +2025-11-14 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/unicode.h (_Utf_view): Rename the template parameter + from _Range to _View and constrain it with ranges::view. + (_Utf_view::_Utf_view): Accept by value instead of rvalue reference. + * include/std/format (__format::__write_padded): Replace _Utf_view + over const char32_t(&)[1] with span<const char32_t, 1>. + * testsuite/ext/unicode/view.cc: Add checks if specialization + of _Utf_view satisfy view. Wrap arrays into std::span before + constructing _Utf_view. + +2025-11-14 Jonathan Wakely <jwakely@redhat.com> + + * include/std/bitset: Add comment to feature test macro test. + +2025-11-14 Karpalo Toivonen <arktinenkarpalo@gmail.com> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121054 + * include/std/bitset: Add string check to constructor. + * testsuite/20_util/bitset/121054.cc: New test. + * testsuite/20_util/bitset/cons/constexpr_c++23.cc: Fix. + +2025-11-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/122032 + * include/std/functional (std::bind_front<f>, std::bind_back<f>): + Define in terms of _Bind_front_t/_Bind_back_t. + * testsuite/20_util/function_objects/bind_back/nttp.cc: New tests. + * testsuite/20_util/function_objects/bind_front/nttp.cc: New tests. + +2025-11-13 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122661 + * include/bits/forward_list.h (forward_list::assign(I, I)): Fix + value category in is_assignable check. + * testsuite/23_containers/forward_list/modifiers/122661.cc: + New test. + +2025-11-13 Xavier Bonaventura <xavibonaventura@gmail.com> + + * testsuite/18_support/headers/csignal/macros.cc: Check for + SIG_IGN. + +2025-11-13 Xavier Bonaventura <xavibonaventura@gmail.com> + + * testsuite/18_support/headers/climits/values.cc: Check for + LLONG_MIN, LLONG_MAX, and ULLONG_MAX. + +2025-11-13 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/optional (__is_optional_ref): Define. + * include/std/ranges (_Take::operator(), _Drop::operator()) + (_Reverse::operator()): Handle optional<T> that are view. + (_AsConst::operator()): Handle optional<T&>. + * testsuite/20_util/optional/range.cc: New tests. + +2025-11-13 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/115402 + PR libstdc++/122584 + * testsuite/29_atomics/atomic_ref/address.cc: Guard test for + volatile with if constexpr. + * testsuite/29_atomics/atomic_ref/deduction.cc: Likewise. + * testsuite/29_atomics/atomic_ref/op_support.cc: Likewise. + * testsuite/29_atomics/atomic_ref/requirements.cc: Likewise. + * testsuite/29_atomics/atomic_ref/bool.cc: Use volatile_t alias. + * testsuite/29_atomics/atomic_ref/generic.cc: Likewise. + * testsuite/29_atomics/atomic_ref/integral.cc: Likewise. + * testsuite/29_atomics/atomic_ref/pointer.cc: Likewise. + * testsuite/29_atomics/atomic_ref/float.cc: Likewise, and remove + not discarding if constexpr. + +2025-11-12 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/122425 + * include/std/optional + (ranges::enable_borrowed_range<optional<_Tp&>>): Define. + * testsuite/20_util/optional/range.cc: Update tests. + +2025-11-12 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/122396 + * include/std/optional (__optional_ref_base): Define. + (std::optional<_Tp&>): Inherit from __optional_ref_base<_Tp>. + (optional<_Tp&>::iterator): Move to base class. + (optional<_Tp&>::begin, optional<_Tp&>::end): Use deduced return + type and constrain accordingly. + * testsuite/20_util/optional/range.cc: Add test for optional<T&>. + +2025-11-12 Jason Merrill <jason@redhat.com> + + * testsuite/18_support/exception_ptr/62258.cc: Use + -Wno-deprecated-declarations instead of -Wno-deprecated. + * testsuite/18_support/uncaught_exception/14026.cc + * testsuite/20_util/headers/functional/synopsis.cc + * testsuite/20_util/is_literal_type/requirements/explicit_instantiation.cc + * testsuite/20_util/is_literal_type/requirements/typedefs.cc + * testsuite/20_util/is_literal_type/value.cc + * testsuite/20_util/is_pod/requirements/explicit_instantiation.cc + * testsuite/20_util/is_pod/requirements/typedefs.cc + * testsuite/20_util/is_pod/value.cc + * testsuite/20_util/shared_ptr/assign/auto_ptr.cc + * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc + * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc + * testsuite/20_util/shared_ptr/atomic/1.cc + * testsuite/20_util/shared_ptr/atomic/2.cc + * testsuite/20_util/shared_ptr/atomic/3.cc + * testsuite/20_util/shared_ptr/cons/43820_neg.cc + * testsuite/20_util/shared_ptr/cons/auto_ptr.cc + * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc + * testsuite/20_util/shared_ptr/creation/dr925.cc + * testsuite/20_util/unique_ptr/cons/auto_ptr.cc + * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc + * testsuite/20_util/variable_templates_for_traits.cc + * testsuite/29_atomics/atomic/lwg3220.cc + * testsuite/experimental/type_traits/value.cc: Likewise. + +2025-11-12 Jason Merrill <jason@redhat.com> + + * testsuite/lib/prune.exp: Sync with gcc prune.exp. + +2025-11-10 Jakub Jelinek <jakub@redhat.com> + + * libsupc++/compare: Implement final wording of C++26 P3778R0 - Fix + for type_order template definition. + (std::type_order): Remove type member. + +2025-11-03 Sam James <sam@gentoo.org> + + * configure: Regenerate. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * include/bits/quoted_string.h: Add ADL friends. + * libsupc++/exception_ptr.h: Add ADL friend. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * src/c++23/std.cc.in: Move TBB macro shenanigans after + bits/stdc++.h. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * include/precompiled/stdc++.h: Remove <cassert>. + * testsuite/util/exception/safety.h: Add <cassert>. + * testsuite/17_intro/headers/c++1998/stdc++_assert_neg.cc: + Don't define _GLIBCXX_NO_ASSERT. + +2025-11-03 Jason Merrill <jason@redhat.com> + + * include/bits/ios_base.h: Add attribs to _Ios_Fmtflags, + _Ios_Iostate, _ios_seekdir. + * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Remove + unneeded cases. + * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise. + * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise. + * testsuite/27_io/ios_base/types/seekdir/case_label.cc: Likewise. + +2025-11-02 Jason Merrill <jason@redhat.com> + + * src/c++23/std.cc.in: Uncomment usings for vprint_*_buffered. + +2025-10-30 Jakub Jelinek <jakub@redhat.com> + + * include/bits/version.def (is_implicit_lifetime): New. + * include/bits/version.h: Regenerate. + * include/std/type_traits (std::is_implicit_lifetime, + std::is_implicit_lifetime_v): New trait. + * src/c++23/std.cc.in (std::is_implicit_lifetime, + std::is_implicit_lifetime_v): Export. + * testsuite/20_util/is_implicit_lifetime/version.cc: New test. + * testsuite/20_util/is_implicit_lifetime/value.cc: New test. + +2025-10-29 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/regex.tcc (regex_traits::value): Use __c instead + of __ch. + +2025-10-29 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/17_intro/headers/c++2011/42319.cc: Include <ios> + instead of <bits/char_traits.h>. Add no_pch option. Remove + explicit -std=gnu++11 option. + * testsuite/30_threads/thread/swap/1.cc: Include <utility> + instead of <bits/move.h>. + +2025-10-29 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119721 + * include/std/tuple (tuple<>::operator=(const _Tuple&) const) + [__cpp_lib_ranges_zip]: Define. + * testsuite/23_containers/tuple/cons/119721.cc: Test const + assignment. + +2025-10-29 Osama Abdelkader <osama.abdelkader@gmail.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119721 + * include/std/tuple (tuple<>::tuple(const tuple&)) + (tuple<>::operator=(const tuple&)): Define as defaulted. + (tuple<>::swap): Moved the defintion after assignments. + (tuple<>::tuple(_UTuple&&)) + (tuple<>::tuple(allocator_arg_t, const _Alloc&, _UTuple&&)) + (tuple<>::operator=(_UTuple&&)) [__cpp_lib_tuple_like]: Define. + (tuple<>::operator==, tuple<>::opeator<=>): Parenthesize + constrains individually. + * testsuite/23_containers/tuple/cons/119721.cc: New test for + constructors and assignments with empty tuple-like types. + * testsuite/20_util/tuple/requirements/empty_trivial.cc: + New test verifying tuple<> remains trivially copyable. + +2025-10-29 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/regex.tcc (regex_traits::value): Implement + without using istringstream. + * include/std/regex: Do not include <sstream>. + +2025-10-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122401 + * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: + Do not try to acquire locks on the thread that already holds a + lock. Add -pthread for et pthread. + +2025-10-27 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122401 + * testsuite/20_util/shared_ptr/atomic/pr118757.cc: Add -pthread + for et pthread. + * testsuite/20_util/weak_ptr/pr118757.cc: Likewise. + * testsuite/30_threads/condition_variable/members/116586.cc: + Likewise. Only run for hosted targets with gthreads support. + * testsuite/30_threads/future/members/116586.cc: Likewise. + * testsuite/30_threads/recursive_timed_mutex/try_lock_until/116586.cc: + Likewise. + * testsuite/30_threads/timed_mutex/try_lock_until/116586.cc: + Likewise. + +2025-10-27 Matthias Kretz <m.kretz@gsi.de> + + * include/bits/utility.h (_IotaArray): Define. + * testsuite/ext/iotaarray.cc: New test. + +2025-10-27 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/108951 + * include/bits/valarray_array.h( __valarray_get_storage): Use + std::__new_allocator. + (__valarray_release_memory): Likewise. + * include/std/valarray: Pass _M_size to + __valarray_release_memory. + * testsuite/26_numerics/valarray/108951.cc: New test. + +2025-10-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/util/testsuite_iterators.h (test_container): Add + iterator and value_type typedefs. + +2025-10-24 Eric Pimentel Aguiar <eric.pimentela@gmail.com> + + * src/c++23/std.cc.in (std::strided_slice, std::full_extent_t) + (std::full_extent, std::submdspan_mapping_result): Add std + qualification. + +2025-10-24 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/122022 + * include/std/functional (_Bind_fn_t): Use forwarding reference as + paremeter. + (std::not_fn<f>): Use forwarding reference as lambda parameter. + * testsuite/20_util/function_objects/bind_back/nttp.cc: Rework tests. + * testsuite/20_util/function_objects/bind_front/nttp.cc: Likewise. + * testsuite/20_util/function_objects/not_fn/nttp.cc: Add test for + argument forwarding. + +2025-10-22 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122224 + * include/bits/stl_iterator_base_funcs.h (prev): Compare + distance as n > 0 instead of n != 0. + * testsuite/24_iterators/range_operations/122224.cc: New test. + +2025-10-22 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (indices::operator()): Constrain using + __can_iota_view concept. + * testsuite/std/ranges/indices/1.cc: Check SFINAE-friendliness + required by expression equivalence. Replace unused <vector> + header with <stddef.h> needed for size_t. + +2025-10-22 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121748 + * include/bits/version.def: Bump value for optional, + * include/bits/version.h: Regenerate. + * include/std/optional (std::__is_valid_contained_type_for_optional): + Define. + (std::optional<T>): Use __is_valid_contained_type_for_optional. + (optional<T>(const optional<_Up>&), optional<T>(optional<_Up>&&)) + (optional<T>::operator=(const optional<_Up>&)) + (optional<T>::operator=(optional<_Up>&&)): Replacex._M_get() with + x._M_fwd(), and std::move(x._M_get()) with std::move(x)._M_fwd(). + (optional<T>::and_then): Remove uncessary remove_cvref_t. + (optional<T>::_M_fwd): Define. + (std::optional<T&>): Define new partial specialization. + (std::swap(std::optional<T&>, std::optional<T&>)): Define. + (std::make_optional(_Tp&&)): Add non-type template parameter. + (std::make_optional): Use parenthesis to constructor optional. + (std::hash<optional<T>>): Add comment. + * testsuite/20_util/optional/make_optional-2.cc: Guarded not longer + working example. + * testsuite/20_util/optional/relops/constrained.cc: Expand test to + cover optionals of reference. + * testsuite/20_util/optional/requirements.cc: Ammend for + optional<T&>. + * testsuite/20_util/optional/requirements_neg.cc: Likewise. + * testsuite/20_util/optional/version.cc: Test new value of + __cpp_lib_optional. + * testsuite/20_util/optional/make_optional_neg.cc: New test. + * testsuite/20_util/optional/monadic/ref_neg.cc: New test. + * testsuite/20_util/optional/ref/access.cc: New test. + * testsuite/20_util/optional/ref/assign.cc: New test. + * testsuite/20_util/optional/ref/cons.cc: New test. + * testsuite/20_util/optional/ref/internal_traits.cc: New test. + * testsuite/20_util/optional/ref/make_optional/1.cc: New test. + * testsuite/20_util/optional/ref/make_optional/from_args_neg.cc: + New test. + * testsuite/20_util/optional/ref/make_optional/from_lvalue_neg.cc: + New test. + * testsuite/20_util/optional/ref/make_optional/from_rvalue_neg.cc: + New test. + * testsuite/20_util/optional/ref/monadic.cc: New test. + * testsuite/20_util/optional/ref/relops.cc: New test. + +2025-10-22 Osama Abdelkader <osama.abdelkader@gmail.com> + + PR libstdc++/119721 + * include/std/tuple (tuple<>::operator==, tuple<>::operator<=>): + Define. + * testsuite/23_containers/tuple/comparison_operators/119721.cc: + New test. + +2025-10-20 Yuao Ma <c8ef@outlook.com> + + * include/bits/version.def: Add ranges_indices FTM. + * include/bits/version.h: Regenerate. + * include/std/ranges: Implement views::indices. + * testsuite/std/ranges/indices/1.cc: New test. + +2025-10-20 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/funcwrap.h (__polyfunc::__deduce_funcref): + Adjust signature produced for member object pointers. + * testsuite/20_util/function_ref/deduction.cc: Update tests. + +2025-10-20 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122322 + * configure.ac (with_newlib) <*-rtems*>: Remove + HAVE_SYS_IOCT4YL_H, _GLIBCXX_USE_LINK, _GLIBCXX_USE_READLINK, + _GLIBCXX_USE_SYMLINK, _GLIBCXX_USE_TRUNCATE, and + _GLIBCXX_USE_FDOPENDIR. Remove duplicates. + * configure: Regenerate. + +2025-10-18 Iain Sandoe <iain@sandoe.co.uk> + + PR c++/119060 + * include/bits/version.def: Add observable_checkpoint at present + allowed from C++26. + * include/bits/version.h: Regenerate. + * include/std/utility: Add std::observable_checkpoint(). + * src/c++23/std.cc.in: Add obervable_checkpoint () to utility. + +2025-10-17 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/atomic_base.h + (__atomic_ref_base::_S_required_alignment): Renamed from... + (__atomic_ref_base::_S_required_aligment): Renamed. + +2025-10-16 Jonathan Wakely <jwakely@redhat.com> + + * include/std/stacktrace + (operator<<(ostream&, const stacktrace_entry&)): Improve output + when description() or source_file() returns an empty string, + or the stacktrace_entry is invalid. Append frame address to + output. + (operator<<(ostream&, const basic_stacktrace<A>&)): Use the + size_type of the correct specialization. + +2025-10-15 Jonathan Wakely <jwakely@redhat.com> + + * python/libstdcxx/v6/printers.py (StdStacktraceEntryPrinter): + New printer for std::stacktrace_entry. + (StdStacktracePrinter): New printer for std::basic_stacktrace. + +2025-10-15 Jonathan Wakely <jwakely@redhat.com> + + * include/std/stacktrace (basic_stacktrace::current): Call + _M_trim before returning. + (basic_stacktrace::_M_trim): New member function. + +2025-10-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122293 + * include/bits/chrono.h (__to_timeout_timespec): Fix + preprocessor condition to match the conditions under which + callers of this function are defined. + * include/bits/this_thread_sleep.h: Remove unused include. + +2025-10-15 Chris Johns <chrisj@rtems.org> + + * configure: Regenerate. + * configure.ac (newlib, *-rtems*): Add HAVE_SYS_IOCTL_H, + HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H, HAVE_S_ISREG, HAVE_UNISTD_H, + HAVE_UNLINKAT, _GLIBCXX_USE_CHMOD, _GLIBCXX_USE_MKDIR, + _GLIBCXX_USE_CHDIR, _GLIBCXX_USE_GETCWD, _GLIBCXX_USE_UTIME, + _GLIBCXX_USE_LINK, _GLIBCXX_USE_READLINK, _GLIBCXX_USE_SYMLINK, + _GLIBCXX_USE_TRUNCATE and _GLIBCXX_USE_FDOPENDIR. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/this_thread/sleep_for.cc: Add + test_negative() test. + * testsuite/30_threads/this_thread/sleep_until.cc: Make existing + test use both system_clock and steady_clock. Add test_negative() + test. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/timed_mutex/try_lock_until/116586.cc: New + test. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/recursive_timed_mutex/try_lock_until/116586.cc: + New test. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/future/members/116586.cc: New test. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/condition_variable/members/116586.cc: New + test. + +2025-10-14 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/116586 + * testsuite/30_threads/shared_timed_mutex/try_lock_until/116586.cc: + New test. + +2025-10-14 Mike Crowe <mac@mcrowe.com> + + PR libstdc++/116586 + * testsuite/30_threads/semaphore/try_acquire_for.cc: Add tests. + * testsuite/30_threads/semaphore/try_acquire_until.cc: Add + tests. + +2025-10-14 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/113327 + PR libstdc++/116586 + PR libstdc++/119258 + PR libstdc++/58931 + * include/bits/chrono.h (__to_timeout_timespec): New overloaded + function templates for converting chrono types to timespec. + * include/bits/std_mutex.h (__to_timeout_gthread_time_t): New + function template for converting time_point to __gthread_time_t. + * include/bits/this_thread_sleep.h (sleep_for): Use + __to_timeout_timespec. + (__sleep_for): Remove namespace-scope declaration. + * include/std/condition_variable: Likewise. + * include/std/mutex: Likewise. + * include/std/shared_mutex: Likewise. + * src/c++11/thread.cc (limit): New helper function. + (__sleep_for): Use limit to prevent overflow when converting + chrono::seconds to time_t, unsigned, or chrono::milliseconds. + * src/c++20/atomic.cc: Use __to_timeout_timespec and + __to_timeout_gthread_time_t for timeouts. + * testsuite/30_threads/this_thread/113327.cc: New test. + +2025-10-14 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/format (_M_format_range): Remove unused local type + alias _String. + +2025-10-14 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/hashtable.h: Check specific feature test macros + instead of checking thevalue of __cplusplus. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_multiset.h: Likewise. + * include/bits/stl_set.h: Likewise. + * include/bits/stl_tree.h: Likewise. + * include/bits/unordered_map.h: Likewise. + * include/bits/unordered_set.h: Likewise. + * include/debug/map.h: Likewise. + * include/debug/multimap.h: Likewise. + * include/debug/multiset.h: Likewise. + * include/debug/set.h: Likewise. + * include/debug/unordered_map: Likewise. + * include/debug/unordered_set: Likewise. + +2025-10-14 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122255 + * src/c++17/fs_path.cc (path::_List::_Impl::~_Impl): Define + destructor. + (path::_List::_Impl::copy): Use create_unchecked. + (path::_List::_Impl): Add static assertions. + (path::_List::_Impl::create): New static member function. + (path::_List::_Impl::create_unchecked): Likewise. + (path::_List::_Impl_deleter::operator()): Use destructor. + (path::_List::reserve): Use create. + +2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/format (__format::__write_escape_seqs) + (__format::_Escaping_sink): Define. + (__format::__write_escaped_unicode_part): Extract from + __format::__write_escaped_unicode. + (__format::__write_escaped_unicode): Forward to + __write_escaped_unicode_part. + (__formatter_str::_M_format_range): Use _Escaping sink. + * testsuite/std/format/ranges/string.cc: New tests for + character which codepoints will be split in buffer and + escaping. Invoked test_padding. + +2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/118757 + * include/bits/shared_ptr_atomic.h (_Atomic_count::_M_wait_unlock): + Add parameter capturing reference to _M_ptr. Reimplement in terms + of __atomic_wait_address. + (_Atomic_count::~_Atomic_count, _Atomic_count::lock) + (_Atomic_count::unlock, _Atomic_count::_M_swap_unlock): Replace + invocation of atomic member funcitons with __atomic builtins. + (_Atomic_count::notify_one, _Atomic_count::notify_all): + Use __atomic_notify_address. + (_Sp_atomic::element_type): Define. + (_Sp_atomic::_M_val): Change type to uintptr_t. + (_Sp_atomic::wait): Pass _M_ptr to _M_wait_unlock. + * python/libstdcxx/v6/printers.py: + * testsuite/20_util/shared_ptr/atomic/pr118757.cc: New test. + * testsuite/20_util/weak_ptr/pr118757.cc: New test. + +2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/122267 + * include/bits/atomic_base.h + (__atomic_ref_base<const _Tp>::_S_required_alignment): + Use __alignof__ instead of alignof. + +2025-10-14 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/month_day/io.cc: New formatting tests. + * testsuite/std/time/month_day_last/io.cc: Likewise. + * testsuite/std/time/month_weekday/io.cc: Likewise. + * testsuite/std/time/month_weekday_last/io.cc: Likewise. + * testsuite/std/time/weekday_indexed/io.cc: Likewise. + * testsuite/std/time/weekday_last/io.cc: Likewise. + * testsuite/std/time/year_month/io.cc: Likewise. + +2025-10-13 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_iterator_base_funcs.h (advance): Fix comment. + +2025-10-13 Yuao Ma <c8ef@outlook.com> + + * include/bits/atomic_base.h: Implement address(). + * include/bits/version.def: Bump version number. + * include/bits/version.h: Regenerate. + * testsuite/29_atomics/atomic_ref/address.cc: New test. + +2025-10-13 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode.h (_Utf_view::_M_read_reverse_utf16): + Fix check for high surrogate preceding low surrogate. + * testsuite/ext/unicode/view.cc: Check unpaired low surrogates. + +2025-10-13 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode.h (__is_single_code_unit): Fix check for + 7-bit ASCII characters. + +2025-10-11 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/xml/manual/build_hacking.xml: Update Autoconf manual link. + * doc/html/manual/appendix_porting.html: Regenerate. + +2025-10-10 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122172 + * include/bits/shared_ptr_base.h (_Sp_counted_base): Define + _Unsigned_count_type for make_unsigned<_Atomic_word>. + Replace __int_traits<_Atomic_word> with equivalent expression. + * include/ext/atomicity.h (_GLIBCXX_UNSIGNED_ATOMIC_WORD): + Define macro for unsigned type to use for arithmetic. + (__exchange_and_add_single, __atomic_add_single): Use it. + +2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/month_day_last/io.cc: Remove TODO comments + for test_parse(). + * testsuite/std/time/month_weekday/io.cc: Likewise. + * testsuite/std/time/month_weekday_last/io.cc: Likewise. + * testsuite/std/time/weekday_indexed/io.cc: Likewise. + * testsuite/std/time/weekday_last/io.cc: Likewise. + * testsuite/std/time/year_month_day_last/io.cc: Likewise. + * testsuite/std/time/year_month_weekday/io.cc: Likewise. + * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. + +2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121790 + * include/bits/chrono_io.h (enable_nonlocking_formatter_optimization): + Adjust specializations for duration, hh_mm_ss and time_points. + * include/std/format (enable_nonlocking_formatter_optimization): + Apply remove_cvref_t on pair and tuple elements. + * include/std/queue (enable_nonlocking_formatter_optimization): + Change specialization value to false. + * include/std/stack (enable_nonlocking_formatter_optimization): + Change specialization value to false. + * testsuite/std/format/ranges/adaptors.cc: Adjusted tests. + * testsuite/std/format/tuple.cc: Adjusted tests. + * testsuite/std/time/format/nonlocking.cc: Adjusted tests. + +2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121790 + * include/bits/chrono_io.h + (enable_nonlocking_formatter_optimization): Define specializations + for chrono types. + * include/bits/version.def (print): Bump. + * include/bits/version.h: Regenerate. + * include/std/format (enable_nonlocking_formatter_optimization): + Define specializations for pair, tuple and ranges. + * include/std/queue (enable_nonlocking_formatter_optimization): + Define specializations for queue and priority_queue. + * include/std/stack (enable_nonlocking_formatter_optimization): + Define specialization for stack. + * include/std/stacktrace (enable_nonlocking_formatter_optimization): + Define specialization for basic_stacktrace and stacktrace_entry. + * include/std/thread (enable_nonlocking_formatter_optimization): + Define specialization for thread::id. + * include/std/vector (enable_nonlocking_formatter_optimization): + Define specialization for vector<bool>::reference. + * testsuite/23_containers/vector/bool/format.cc: Test value of + enable_nonlocking_formatter_optimization. + * testsuite/30_threads/thread/id/output.cc: Likewise. + * testsuite/std/format/ranges/adaptors.cc: Likewise. + * testsuite/std/format/ranges/formatter.cc: Likewise. + * testsuite/std/format/tuple.cc: Likewise. + * testsuite/std/time/format/empty_spec.cc: Extract Rep class + to custom_rep.h. + * testsuite/std/time/format/custom_rep.h: Extracted from + empty_spec.cc. + * testsuite/std/time/format/nonlocking.cc: New test. + +2025-10-10 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121790 + * acinclude.m4 (GLIBCXX_CHECK_STDIO_LOCKING): New macro to check + for std::print dependencies. + * config.h.in: Regenerate. + * configure: Regenerate. + * configure.ac: Use GLIBCXX_CHECK_STDIO_LOCKING. + * include/bits/formatfwd.h (enable_nonlocking_formatter_optimization): + Define new variable template. + * include/bits/version.def (print): Bump value. + * include/bits/version.h: Regenerate. + * include/std/format (enable_nonlocking_formatter_optimization): + Define specializations for variable template. + * include/std/ostream (print) [!_WIN32]: Do not use + vprint_unicode at all. + (println): Append newline to format string instead of formatting + twice. + * include/std/print (_File_sink): New class. + (vprint_nonunicode_locking): New function. + (vprint_unicode_locking): New function reusing previous code + from vprint_unicode. + (vprintf_unicode): Defer to vprint_nonunicode for Windows or to + vprint_unicode_locking otherwise. + (print): [!_WIN32]: Do no use vprint_unicode at all. + Check enable_nonlocking_formatter_optimization and defer to + either vprint_nonunicode_locking or vprint_nonunicode. + (println): Use vprint_unicode or format directly to a _File_sink + instead of formatting twice. + * testsuite/27_io/print/1.cc: Updated and added new tests. + * testsuite/std/format/formatter/nonlocking.cc: New tests. + +2025-10-10 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/115402 + * include/bits/atomic_base.h (__atomic_ref_base<const _Tp>) + (__atomic_ref_base<_Tp>): Define by extracting common methods + from atomic_ref specializations. + (__atomic_ref<_Tp, In, Fp, Pt>): Inherit from __atomic_ref_base + and remove extracted method. + (__atomic_ref<const _Tp, In, Fp, Pt>): Define. + * include/std/atomic (std::atomic): Added an + * testsuite/29_atomics/atomic/requirements/types_neg.cc: + Add test for volatile qualified types. + * testsuite/29_atomics/atomic_ref/bool.cc: Move the content + to op_support.cc, add test for bool. + * testsuite/29_atomics/atomic_ref/op_support.cc: New test + expanded from atomic_ref/bool.cc. + * testsuite/29_atomics/atomic_ref/cv_qual.cc: New test. + * testsuite/29_atomics/atomic_ref/requirements_neg.cc: New test. + * testsuite/29_atomics/atomic_ref/deduction.cc: Add tests for + cv-qualified types. + * testsuite/29_atomics/atomic_ref/float.cc: Likewise. + * testsuite/29_atomics/atomic_ref/generic.cc: Likewise. + * testsuite/29_atomics/atomic_ref/integral.cc: Likewise. + * testsuite/29_atomics/atomic_ref/pointer.cc: Likewise. + * testsuite/29_atomics/atomic_ref/requirements.cc: Likewise. + * testsuite/29_atomics/atomic_ref/wait_notify.cc: Add tests for + const qualified types. + +2025-10-10 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121929 + * include/bits/chrono_io.h (_ChronoData::_M_fill_aux) + (_ChronoData::_M_fill_aux): Add comment documenting precondition. + (formatter<chrono::year_month_day, _CharT>::format): Compute + local_days inline. + (formatter<chrono::year_month_day_last, _CharT>::format) + (formatter<chrono::year_month_weekday, _CharT>::format) + (formatter<chrono::year_month_weekday_last, _CharT>::format): + Change how the _M_day field is computed. + * testsuite/std/time/year_month_weekday/io.cc: Adjust tests. + +2025-10-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/hashtable.h (_Hashtable::_S_nothrow_move): Use + diagnostic pragmas to allow constexpr if in C++14. Use value + member instead of operator(). + +2025-10-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.tpl: Fix comment on #endif. Tweak + description of when macros are defined. + * include/bits/version.h: Regenerate. + +2025-10-09 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/year_month_day_last/io.cc: New formatting tests. + * testsuite/std/time/year_month_weekday/io.cc: Likewise. + * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. + +2025-10-08 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/status_cxx2017.xml: Replace broken link to PSTL + upstream. + * doc/xml/manual/status_cxx2020.xml: Likewise. + * doc/html/manual/status.html: Regenerate. + +2025-10-08 Jonathan Wakely <jwakely@redhat.com> + + * config/cpu/i486/atomicity.h: Removed. + +2025-10-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122172 + * config/cpu/cris/atomicity.h: Removed. + +2025-10-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/indirect.h (indirect::operator=(indirect&&)): + Move assign allocator when POCMA is true. + (polymorphic::operator=(polymorphic&&)): Likewise. + * testsuite/std/memory/indirect/copy.cc: Remove constexpr from + functions that use tracker_allocator. Add test_constexpr(). + * testsuite/std/memory/indirect/copy_alloc.cc: Remove constexpr + from all functions and remove static_assert. + * testsuite/std/memory/indirect/ctor.cc: Do not use + scoped_allocator_adaptor during constant evaluation. + * testsuite/std/memory/indirect/move.cc: Remove constexpr from + functions that use tracker_allocator. Add test_constexpr(). + * testsuite/std/memory/indirect/move_alloc.cc: Remove constexpr + from all functions and remove static_assert. + * testsuite/std/memory/indirect/relops.cc: Invoke lambda in + static_assert. + * testsuite/std/memory/polymorphic/copy.cc: Remove constexpr + from functions that use tracker_allocator. Add test_constexpr(). + * testsuite/std/memory/polymorphic/copy_alloc.cc: Remove + constexpr from all functions and remove static_assert. + * testsuite/std/memory/polymorphic/ctor.cc: Do not use + scoped_allocator_adaptor during constant evaluation. + * testsuite/std/memory/polymorphic/ctor_poly.cc: Likewise. + * testsuite/std/memory/polymorphic/move.cc: Remove constexpr + from functions that use tracker_allocator. Add test_constexpr(). + * testsuite/std/memory/polymorphic/move_alloc.cc: Remove + constexpr from all functions and remove static_assert. + * testsuite/util/testsuite_allocator.h (tracker_allocator): + Remove redundant 'inline' from friend. + (uneq_allocator): Make all functions constexpr. + (uneq_allocator::base, uneq_allocator::swap_base): Remove. + (uneq_allocator::~uneq_allocator): Remove. + (uneq_allocator::allocate, uneq_allocator::deallocate): Do not + use map of allocations during constant evaluation. + (propagating_allocator): Make all functions constexpr. + (propagating_allocator::base): Remove. + (propagating_allocator::swap_base): Simplify. + (ExplicitConsAlloc, CustomPointerAlloc, NullablePointer): Add + constexpr to all functions. + +2025-10-08 Jakub Jelinek <jakub@redhat.com> + + * include/bits/unicode-data.h: Regenerate. + * testsuite/ext/unicode/properties.cc: Test __is_extended_pictographic + on U+1F004 rather than U+1F000. + +2025-10-08 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (_ChronoData::_M_fill_day): Replace + '%' by '/'. + +2025-10-08 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/std/time/format/format.cc: Include <vector>. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (submdspan_mapping_result): New class. + * src/c++23/std.cc.in (submdspan_mapping_result): Add. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (full_extent_t): New class. + * src/c++23/std.cc.in (full_extent_t): Add. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/bits/version.def (submdspan): New internal macro. + * include/bits/version.h: Regenerate. + * include/std/mdspan (strided_slice): New class. + * src/c++23/std.cc.in (strided_slice): Add. + * testsuite/23_containers/mdspan/submdspan/strided_slice.cc: New test. + * testsuite/23_containers/mdspan/submdspan/strided_slice_neg.cc: New test. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__index_type_cast): Optimize by + skipping a __glibcxx_assert if it's know at compile-time. + (std::layout_left_padded, std::layout_righ_padded): Reorder + is_always_strided and is_unique member functions. + * testsuite/23_containers/mdspan/int_like.h: Rename _M_i to + value. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/std/mdspan (_RightPaddedIndices): Traits for right + padded layouts. + (layout_right::mapping::mapping) New overload for right padded + layouts. + (layout_right_padded): Add implementation. + * src/c++23/std.cc.in (layout_right_padded): Add. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Update + test for right padded layouts. + * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded_traits.h: Ditto. + +2025-10-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/110352 + * include/bits/version.def (padded_layouts): Add new internal + feature testing macro. + * include/bits/version.h: Regenerate. + * include/std/mdspan (__fwd_prod): New overload. + (layout_left_padded): Add declaration and implementation. + (layout_right_padded): Add declaration only. + (layout_left::mapping::mapping): New overload for left + padded mappings. + (__index_type_cast): New function that performs a checked cast + to index_type. + (__is_left_padded_mapping): New concept. + (__is_right_padded_mapping): Ditto. + (__standardized_mapping): Recognize left and right padded + mappings. + (_LeftPaddedIndices): Traits for left padded details. + (_PaddedStorage): New class for implementing padded layouts. + * src/c++23/std.cc.in (layout_left_padded): Add. + * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: + Refactor and add tests for layout_left_padded. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded_neg.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/padded_traits.h: New + traits. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * configure.host: Fix spelling in comment. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * include/ext/ropeimpl.h (rope::_S_fetch): Initialize variable. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/sat_arith.h (mul_sat): Add parentheses around + operands. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/std/time/parse/parse.cc: Initialize variable. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/20_util/shared_ptr/cons/move.cc: Add comment and + dg-prune-output for -Wpessimizing-move warning. + * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: + Likewise. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/random.h (philox_engine(result_type)): Reorder + ctor-initializer-list to match declaration order. + +2025-10-07 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/basic_string.h (basic_string::_M_check): Cast + size_type arguments to size_t. + +2025-10-05 Sam James <sam@gentoo.org> + + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * doc/Makefile.in: Regenerate. + * include/Makefile.in: Regenerate. + * libsupc++/Makefile.in: Regenerate. + * po/Makefile.in: Regenerate. + * python/Makefile.in: Regenerate. + * src/Makefile.in: Regenerate. + * src/c++11/Makefile.in: Regenerate. + * src/c++17/Makefile.in: Regenerate. + * src/c++20/Makefile.in: Regenerate. + * src/c++23/Makefile.in: Regenerate. + * src/c++26/Makefile.in: Regenerate. + * src/c++98/Makefile.in: Regenerate. + * src/experimental/Makefile.in: Regenerate. + * src/filesystem/Makefile.in: Regenerate. + * src/libbacktrace/Makefile.in: Regenerate. + * testsuite/Makefile.in: Regenerate. + +2025-10-03 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/index.html: Regenerated. + * doc/html/manual/status.html: Regenerated. + * doc/xml/manual/status_cxx2020.xml: Added status table. + +2025-10-01 François Dumont <frs.dumont@gmail.com> + + * include/std/vector (std::erase_if, std::erase): Replace _GLIBCXX20_CONSTEXPR + with 'constexpr' and remove implied 'inline' keyword. + * include/std/string (std::erase_if, std::erase): Likewise. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Use + wcslen(cs) instead of sizeof(cs)-1. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/20_util/unique_ptr/modifiers/93562.cc: Define a + separate deleter for array cases. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc + (Cvt::do_length): Fix signature to override virtual function in + base. + * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc: + (Cvt::do_length): Likewise. + * testsuite/27_io/basic_filebuf/underflow/char/1.cc + (NoconvCvt::do_in): Likewise. + * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc + (checksumcvt::do_length): Likewise. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/22_locale/time_get/get/char/3.cc: Add parentheses to + x == y|z expression. + * testsuite/22_locale/time_get/get/wchar_t/3.cc: Likewise. + * testsuite/28_regex/algorithms/regex_match/multiline.cc: + Likewise. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_uninitialized.h (uninitialized_copy) + (uninitialized_fill, uninitialized_fill_n): Use pragmas to + suppress -Wclass-memaccess warnings. + +2025-10-01 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/std/memory/polymorphic/copy.cc: Fix spelling of + typedef. + +2025-09-30 François Dumont <frs.dumont@gmail.com> + + * include/std/inplace_vector: + (std::swap(inplace_vector<>&, inplace_vector<>&)): Remove the duplicated + implementation at std namespace level. Keep the friend inline one. + (inplace_vector<Tp, 0>::assign(initializer_list<>)): Add missing return + statement. + +2025-09-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/20_util/allocator_traits/members/allocate_hint.cc: + Value-initialize variables to avoid -Wmaybe-uninitialized + warning. + * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc: + Likewise. + * testsuite/20_util/duration/114244.cc: Likewise. + * testsuite/20_util/duration/io.cc: Likewise. + +2025-09-27 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/deque.tcc (deque::_M_shrink_to_fit): Cast + difference_type to size_type to avoid -Wsign-compare warning. + * include/std/spanstream (basic_spanbuf::seekoff): Cast + streamoff to size_t to avoid -Wsign-compare warning. + +2025-09-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc: + Fix assignment used instead of equality comparison. + * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/char/stoull.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoi.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stol.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoll.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoul.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stoull.cc: + Likewise. + * testsuite/23_containers/map/cons/from_range.cc: Fix is_equal + function and expected value of comparison functions after + construction. + * testsuite/23_containers/multimap/cons/from_range.cc: Likewise. + * testsuite/23_containers/multiset/cons/from_range.cc: Likewise. + * testsuite/23_containers/set/cons/from_range.cc: Likewise. + * testsuite/23_containers/unordered_map/cons/from_range.cc: Fix + is_equal functions. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + Likewise. + * testsuite/23_containers/unordered_multiset/cons/from_range.cc: + Likewise. + * testsuite/23_containers/unordered_set/cons/from_range.cc: + Likewise. + * testsuite/25_algorithms/minmax/constrained.cc: Fix assignment + used instead of equality comparison. + * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: + Likewise. + +2025-09-26 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_algobase.h (__search, __is_permutation): + Reuse predicate instead of creating a new one each time. + * include/bits/stl_algo.h (__is_permutation): Likewise. + +2025-09-26 Jonathan Wakely <jwakely@redhat.com> + + * include/std/deque (erase_if): Move predicate instead of + wrapping with std::ref. + (erase): Forward to erase_if. + * include/std/inplace_vector (erase_if, erase): Likewise. + * include/std/string (erase_if, erase): Likewise. + * include/std/vector (erase_if, erase): Likewise. + +2025-09-26 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/predefined_ops.h (equal_to, less): Define aliases + for std::equal_to<void> and std::less<void>. + (bind1st, bind2nd, not1, __equal_to): New object generator + functions for adapting predicates. + (__iter_less_iter, __iter_less_val, __iter_comp_val) + (__val_less_iter, __val_comp_iter, __iter_equal_to_iter) + (__iter_equal_to_val, __iter_comp_iter, __negate): Remove all + object generator functions and the class templates they return. + * include/bits/stl_algo.h (__move_median_to_first, __find_if_not) + (__find_if_not_n, __search_n_aux, find_end, find_if_not) + (__remove_copy_if, remove_copy, remove_copy_if, remove) + (remove_if, __adjacent_find, __unique, unique, __unique_copy) + (__unique_copy_1, __stable_partition_adaptive, stable_partition) + (__heap_select, __partial_sort_copy, partial_sort_copy) + (__unguarded_linear_insert, __insertion_sort) + (__unguarded_insertion_sort, __unguarded_partition) + (lower_bound, __upper_bound, upper_bound, __equal_range) + (equal_range, binary_search, __move_merge_adaptive) + (__move_merge_adaptive_backward, __merge_adaptive_resize) + (__merge_without_buffer, inplace_merge, __move_merge) + (__includes, includes, __next_permutation, next_permutation) + (__prev_permutation, prev_permutation, __replace_copy_if) + (replace_copy, replace_copy_if, __is_sorted_until) + (is_sorted_until, __minmax_element, minmax_element, minmax) + (is_permutation, __is_permutation, find, find_if, adjacent_find) + (count, count_if, search, search_n, unique_copy, partial_sort) + (nth_element, sort, __merge, merge, stable_sort, __set_union) + (set_union, __set_intersection, set_intersection) + (__set_difference, set_difference, __set_symmetric_difference) + (set_symmetric_difference, __min_element, min_element) + (__max_element, max_element, min, max): Use direct predicates + instead of __iter_equal_to_iter, __iter_comp_iter, and + __iter_less_iter, __negate etc. Dereference iterators when + invoking predicates. + * include/bits/stl_algobase.h (__lexicographical_compare_impl) + (__lexicographical_compare::__lc, __lower_bound, lower_bound) + (lexicographical_compare, __mismatch, mismatch, __find_if) + (__count_if, __remove_if, __search, __is_permutation) + (is_permutation, search): Likewise. + * include/bits/stl_function.h (equal_to<void>, less<void>): + Define transparent comparison functions for C++98 and C++11. + * include/bits/stl_heap.h (__is_heap_until, __is_heap) + (__push_heap, push_heap, __adjust_heap, pop_heap, make_heap) + (sort_heap, is_heap_until, is_heap): Likewise. + * include/std/deque (erase_if): Remove call to __pred_iter. + (erase): Replace __iter_equals_val with __equal_to. + * include/std/inplace_vector (erase_if, erase): Likewise. + * include/std/string (erase_if, erase): Likewise. + * include/std/vector (erase_if, erase): Likewise. + +2025-09-26 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/122062 + * include/bits/random.tcc (__detail::__normalize): Use void cast + for operands of comma operator. + (piecewise_linear_distribution): Likewise. + * testsuite/26_numerics/random/piecewise_linear_distribution/cons/122062.cc: + New test. + +2025-09-25 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__static_quotient): New overload. + +2025-09-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_algo.h: Check robust_nonmodifying_seq_ops + feature test macro instead of checking __cplusplus value. Add + comment to another __cplusplus check. + * include/bits/stl_algobase.h: Add comment to #endif. + +2025-09-25 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/79147 + PR libstdc++/103650 + * include/Makefile.am (c++config.h): Adjust sed command to + comment out STDC_HEADERS macro. + * include/Makefile.in: Regenerate. + +2025-09-25 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/layouts/empty.cc: Fix indent. + * testsuite/23_containers/mdspan/layouts/mapping.cc + (test_stride_1d): Fix test. + (test_stride_2d): Rewrite using a struct. + (test_stride_3d): Ditto. + (has_static_is_exhaustive): New concept. + (test_mapping_properties): Update test. + +2025-09-24 Luc Grosheintz <luc.grosheintz@gmail.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/20_util/function_objects/not_fn/nttp.cc: Move + test of feature testing macro to version.cc + * testsuite/20_util/function_objects/not_fn/version.cc: New test. + +2025-09-24 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__formatter_duration::_S_spec_for_tp): + Extracted from defition of formatter<sys_time>::__defSpec. + (formatter<chrono::sys_time<_Duration>, _CharT>::parse): Simplify + condition in if contexpr. + (formatter<chrono::sys_time<_Duration>, _CharT>::__stream_insertable): + Remove. + (formatter<chrono::sys_time<_Duration>, _CharT>::__defSpec) + (formatter<chrono::local_time<_Duration>, _CharT>::__defSpec): + Compute using __formatter_duration::_S_spec_for_tp. + (forrmatter<chrono::sys_time<_Duration>, _CharT>::parse): Check if + parse _M_chrono_spec + * testsuite/std/time/format/empty_spec.cc: Extend tests for floating + point and other non-streamable durations (years). + +2025-09-24 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_parse): + Replace _ParseContext with basic_format_parse_context<_CharT> and + make it non-template. + (__formatter_duration::_M_parse): Replace _ParseContext with + basic_format_parse_context<_CharT> and remove unused default + argument. + +2025-09-24 Patrick Palka <ppalka@redhat.com> + + * testsuite/17_intro/names.cc: Undefine 'u' on s390*-linux. + +2025-09-23 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/random.h: Include <bits/ios_base.h> instead of + <iomanip>. Change preprocessor checks to use internal feature + test macro. + (philox_engine): Reword doxygen comments. Use typename instead + of class in template parameter lists. Reformat and adjust + whitespace. + (philox_engine::_If_seed_seq): Replace alias template with + __is_seed_seq variable template. + (philox_engine::philox_engine(result_type)): Define inline. + (philox_engine::seed(result_type), philox_engine::set_counter) + (philox_engine::operator(), philox_engine::discard): Likewise. + (operator==): Define as defaulted. + (operator<<): Reuse widened char. + * include/bits/random.tcc: Reformat and adjust whitespace. + (philox_engine::_M_philox): Use std::array copy constructor and + std::array::fill instead of looping. + * testsuite/26_numerics/random/philox4x32.cc: Gate test on + feature test macro. Add static_assert to check typedef. + * testsuite/26_numerics/random/philox4x64.cc: Likewise. + * testsuite/26_numerics/random/philox_engine/cons/copy.cc: Add + VERIFY assertions to check copies are equal. Test different + seeds. + * testsuite/26_numerics/random/philox_engine/cons/default.cc: + Add VERIFY assertions to check construction results. + * testsuite/26_numerics/random/philox_engine/cons/seed.cc: + Likewise. + * testsuite/26_numerics/random/philox_engine/operators/equal.cc: + Also test inequality. + * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: + Remove redundant include and return. + * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: + Check values of all constants. + * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: + Check typedefs are correct. + * testsuite/26_numerics/random/philox_engine/cons/119794.cc: + Removed. + * testsuite/26_numerics/random/philox_engine/cons/seed_seq.cc: + Removed. + * testsuite/26_numerics/random/philox_engine/operators/inequal.cc: + Removed. + * testsuite/26_numerics/random/philox_engine/requirements/constexpr_data.cc: + Removed. + * testsuite/26_numerics/random/philox_engine/requirements/constexpr_functions.cc: + Removed. + * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error + line number. + +2025-09-23 1nfocalypse <1nfocalypse@protonmail.com> + + PR libstdc++/119794 + * include/bits/random.h (philox_engine): Define. + * include/bits/random.tcc (philox_engine): Define member + functions. + * include/bits/version.def (philox_engine): New macro. + * include/bits/version.h: Regenerated. + * include/std/random: Define __glibcxx_want_philox_engine and + include <bits/version.h>. + * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error + line number. + * testsuite/26_numerics/random/philox4x32.cc: New test. + * testsuite/26_numerics/random/philox4x64.cc: New test. + * testsuite/26_numerics/random/philox_engine/cons/119794.cc: New test. + * testsuite/26_numerics/random/philox_engine/cons/copy.cc: New test. + * testsuite/26_numerics/random/philox_engine/cons/default.cc: New test. + * testsuite/26_numerics/random/philox_engine/cons/seed.cc: New test. + * testsuite/26_numerics/random/philox_engine/cons/seed_seq.cc: New test. + * testsuite/26_numerics/random/philox_engine/operators/equal.cc: New test. + * testsuite/26_numerics/random/philox_engine/operators/inequal.cc: New test. + * testsuite/26_numerics/random/philox_engine/operators/serialize.cc: New test. + * testsuite/26_numerics/random/philox_engine/requirements/constants.cc: New test. + * testsuite/26_numerics/random/philox_engine/requirements/constexpr_data.cc: New test. + * testsuite/26_numerics/random/philox_engine/requirements/constexpr_functions.cc: New test. + * testsuite/26_numerics/random/philox_engine/requirements/typedefs.cc: New test. + +2025-09-23 Ben Wu <soggysocks206@gmail.com> + + PR libstdc++/118087 + * include/bits/deque.tcc: Use _Temporary_value in + _M_emplace_aux. + * include/bits/stl_deque.h: Introduce _Temporary_value. + * testsuite/23_containers/deque/modifiers/emplace/118087.cc: + New test. + +2025-09-23 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121940 + * include/bits/funcwrap.h (__polyfunc::__deduce_funcref): Return void + for ill-formed constructs. + (function_ref(nontype_t<__f>, _Tp&&)): Constrain on __deduce_funcref + producing non-void results. + * testsuite/20_util/function_ref/deduction.cc: Negative tests. + +2025-09-23 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/79147 + * include/Makefile.am (c++config.h): Adjust sed command to + comment out all PACKAGE_XXX macros and to avoid adjusting + PACKAGE_VERSION twice. + * include/Makefile.in: Regenerate. + +2025-09-23 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (formatter<chrono::utc_time, _CharT>): + (formatter<chrono::gps_time<_Duration>, _CharT>) + (formatter<chrono::tai_time<_Duration>, _CharT): Remove + __formatter_chrono base class. + +2025-09-22 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h(__formatter_chrono::_M_parse): Update + needed flags for %g, %G, %V, %U, %W. + (__formatter_chrono::_M_format_to): Change how %V is handled. + (__formatter_chrono::_M_g_G): Merged into _M_g_G_V. + (__formatter_chrono::_M_g_G_V): Reworked from _M_g_G. + (__formatter_chrono::_M_U_V_W): Changed into _M_U_V. + (__formatter_chrono::_M_U_W): Reworked implementation. + * testsuite/std/time/year_month_day/io.cc: New tests. + +2025-09-22 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/106658 + * include/bits/stl_construct.h (std::start_lifetime_as_array) + (std::start_lifetime_as): Moved from std/memory, with update + to guard macros. + * include/std/memory (std::start_lifetime_as_array) + (std::start_lifetime_as): Moved to bits/stl_construct.h. + +2025-09-19 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119744 + * include/bits/version.def: Redefine __cpp_lib_bind_front etc. + * include/bits/version.h: Ditto. + * include/std/functional: Add new bind_front etc. overloads + * testsuite/20_util/function_objects/bind_back/1.cc: + Check plumbing better + * testsuite/20_util/function_objects/bind_back/nttp.cc: New test. + * testsuite/20_util/function_objects/bind_back/nttp_neg.cc: New test. + * testsuite/20_util/function_objects/bind_front/1.cc: + Check plumbing better + * testsuite/20_util/function_objects/bind_front/nttp.cc: New test. + * testsuite/20_util/function_objects/bind_front/nttp_neg.cc: New test. + * testsuite/20_util/function_objects/not_fn/nttp.cc: New test. + * testsuite/20_util/function_objects/not_fn/nttp_neg.cc: New test. + * testsuite/20_util/headers/functional/synopsis.cc: New decls. + +2025-09-19 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h: Remove unused <iomanip> header. + (operator<<): Constrain overload for chrono::local_time. + * testsuite/std/time/clock/local/io.cc: Check constraints. + +2025-09-19 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.def (start_lifetime_as): Move adjacent to + other C++23 macros. + * include/bits/version.h: Regenerate. + +2025-09-18 Jakub Jelinek <jakub@redhat.com> + + PR c++/106658 + * include/bits/version.def: Implement C++23 P2590R2 - Explicit + lifetime management. + (start_lifetime_as): New. + * include/bits/version.h: Regenerate. + * include/std/memory (std::start_lifetime_as, + std::start_lifetime_as_array): New function templates. + * src/c++23/std.cc.in (std::start_lifetime_as, + std::start_lifetime_as_array): Export. + * testsuite/std/memory/start_lifetime_as/start_lifetime_as.cc: New test. + +2025-09-17 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/111861 + * include/bits/ranges_algo.h (ranges::unique_copy): When + initializing a value type object from *iter, use + direct-initialization and don't use a deduced type. + (ranges::push_heap): Use direct-initialization when initializing + a value type object from ranges::iter_move. + (ranges::max): As in ranges::unique_copy. + * include/bits/ranges_util.h (ranges::min): Likewise. + +2025-09-17 Patrick Palka <ppalka@redhat.com> + + * testsuite/20_util/bind/dangling_ref.cc: Compile with + -Wsystem-headers. + * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. + * testsuite/20_util/unique_ptr/lwg4148.cc: Likewise. + * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: + Likewise. + * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: + Likewise. + +2025-09-16 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (__detail::__repeated_tuple): Use + __make_tuple helper alias directly, instead of doing overload + resolution on std::tuple_cat. + * include/std/tuple (__make_tuple_impl): Remove. + (__do_make_tuple): Replace recursion with _Index_tuple and pack + expansion. + (__make_tuple): Adjust to new __do_make_tuple definition. + (__combine_tuples<tuple<T1s...>, tuple<T2s...>, Rem...>): Replace + with a partial specialization for exactly two tuples and a + partial specialization for three or more tuples. + +2025-09-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121913 + * include/bits/ranges_algo.h (__rotate_fn::operator()): Use + auto_value_t<_Iter> instead of deduced type. + +2025-09-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121956 + * include/std/ranges (adjacent_view::_Iterator::value_type): + Always define as std::tuple<T, N>, not std::pair<T, T>. + * testsuite/std/ranges/adaptors/adjacent/1.cc: Check value type + of views::pairwise. + +2025-09-16 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_uninitialized.h (uninitialized_move) + (uninitialized_move_n): Replace _GLIBCXX_MAKE_MOVE_ITERATOR with + std::make_move_iterator. + +2025-09-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119820 + * include/bits/ranges_algo.h (__shuffle_fn): Use + ranges::distance to get difference type value to add to + iterator. + * include/std/format (__formatter_str::_M_format_range): + Use ranges::next to increment iterator by a size_t value. + +2025-09-13 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/121917 + * include/bits/ranges_algo.h (__shuffle_fn::operator()): Only + consider the two-at-a-time PRNG optimization if the range is + sized. + * testsuite/25_algorithms/shuffle/constrained.cc (test03): New + test. + +2025-09-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121913 + * include/bits/ranges_algo.h (__rotate_fn::operator()): Use + ranges::iter_move(it) instead of std::move(*it). + * testsuite/25_algorithms/rotate/121913.cc: New test. + +2025-09-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121890 + * include/bits/ranges_algo.h (ranges::rotate, ranges::shuffle) + (__insertion_sort, __unguarded_partition_pivot, __introselect): + Use ranges::next to advance iterators. Use local variables in + rotate to avoid duplicate expressions. + (ranges::push_heap, ranges::pop_heap, ranges::partial_sort) + (ranges::partial_sort_copy): Use ranges::prev. + (__final_insertion_sort): Use iter_difference_t<Iter> + for operand of operator+ on iterator. + * include/bits/ranges_base.h (ranges::advance): Use iterator's + difference_type for all iterator arithmetic. + * include/bits/stl_algo.h (__search_n_aux, __rotate) + (__insertion_sort, __unguarded_partition_pivot, __introselect) + (__final_insertion_sort, for_each_n, random_shuffle): Likewise. + Use local variables in __rotate to avoid duplicate expressions. + * include/bits/stl_algobase.h (__fill_n_a, __lc_rai::__newlast1): + Likewise. + * include/bits/stl_heap.h (push_heap): Likewise. + (__is_heap_until): Add static_assert. + (__is_heap): Convert distance to difference_type. + * include/std/functional (boyer_moore_searcher::operator()): Use + iterator's difference_type for iterator arithmetic. + * testsuite/util/testsuite_iterators.h + (random_access_iterator_wrapper): Add deleted overloads of + operators that should be called with difference_type. + * testsuite/24_iterators/range_operations/advance.cc: Use + ranges::next. + * testsuite/25_algorithms/heap/constrained.cc: Use ranges::next + and ranges::prev. + * testsuite/25_algorithms/nth_element/58800.cc: Use std::next. + * testsuite/25_algorithms/nth_element/constrained.cc: Use + ptrdiff_t for loop variable. + * testsuite/25_algorithms/nth_element/random_test.cc: Use + iterator's difference_type instead of int. + * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc: + Use std::next. + * testsuite/25_algorithms/partial_sort/constrained.cc: Use + ptrdiff_t for loop variable. + * testsuite/25_algorithms/partial_sort/random_test.cc: Use + iterator's difference_type instead of int. + * testsuite/25_algorithms/partial_sort_copy/constrained.cc: + Use ptrdiff_t for loop variable. + * testsuite/25_algorithms/partial_sort_copy/random_test.cc: + Use iterator's difference_type instead of int. + * testsuite/std/ranges/adaptors/drop.cc: Use ranges::next. + * testsuite/25_algorithms/fill_n/diff_type.cc: New test. + * testsuite/25_algorithms/lexicographical_compare/diff_type.cc: + New test. + +2025-09-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117276 + * include/pstl/parallel_backend_tbb.h (__func_task::finalize): + Make deallocation unconditional. + +2025-09-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121046 + * include/debug/bitset (bitset(const CharT*, ...)): Add + constraints on CharT type. + +2025-09-12 Jonathan Wakely <jwakely@redhat.com> + + * config/cpu/generic/atomicity_mutex/atomicity.h + (__exchange_and_add): Use const_cast to remove volatile. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/71945 + * include/bits/shared_ptr_base.h (_Sp_counted_base::_S_chk): + Trap if a reference count cannot be incremented any higher. + (_Sp_counted_base::_M_add_ref_copy): Use _S_chk. + (_Sp_counted_base::_M_add_weak_ref): Likewise. + (_Sp_counted_base<_S_mutex>::_M_add_ref_lock_nothrow): Likewise. + (_Sp_counted_base<_S_atomic>::_M_add_ref_lock_nothrow): Likewise. + (_Sp_counted_base<_S_single>::_M_add_ref_copy): Use _S_chk. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/71945 + * include/bits/shared_ptr_base.h + (_Sp_counted_base::_M_get_use_count): Cast _M_use_count to + unsigned before returning as long. + (_Sp_counted_base<_S_single>::_M_add_ref_copy): Use atomic + helper function to adjust ref count using unsigned arithmetic. + (_Sp_counted_base<_S_single>::_M_weak_release): Likewise. + (_Sp_counted_base<_S_single>::_M_get_use_count): Cast + _M_use_count to unsigned before returning as long. + (_Sp_counted_base<_S_single>::_M_add_ref_lock_nothrow): Use + _M_add_ref_copy to do increment using unsigned arithmetic. + (_Sp_counted_base<_S_single>::_M_release): Use atomic helper and + _M_weak_release to do decrements using unsigned arithmetic. + (_Sp_counted_base<_S_mutex>::_M_release): Add comment. + (_Sp_counted_base<_S_single>::_M_weak_add_ref): Remove + specialization. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121148 + * config/cpu/generic/atomicity_mutex/atomicity.h + (__exchange_and_add): Call __exchange_and_add_single. + * include/ext/atomicity.h (__exchange_and_add_single): Use an + unsigned type for the addition. + * libsupc++/Makefile.am (atomicity.o): Compile with -fwrapv. + * libsupc++/Makefile.in: Regenerate. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/iterator_concepts.h (_IterMove::_S_noexcept) + (_IterSwap::_S_noexcept): Change constexpr to consteval. + * include/bits/ranges_base.h (_Begin::_S_noexcept) + (_End::_S_noexcept, _RBegin::_S_noexcept, _REnd::_S_noexcept) + (_Size::_S_noexcept, _Empty::_S_noexcept, _Data::_S_noexcept): + Likewise. + * include/std/concepts (_Swap::_S_noexcept): Likewise. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ranges_base.h (__detail::__to_unsigned_like) + (__access::__possible_const_range, __access::__as_const) + (__distance_fn::operator(), __next_fn::operator()) + (__prev_fn::operator()): Add always_inline attribute. + (_Begin::operator(), _End::operator(), _RBegin::operator()) + (_REnd::operator(), _Size::operator(), _SSize::operator()) + (_Empty::operator(), _Data::operator(), _SSize::operator()): + Likewise. Move nodiscard attribute to start of declaration. + +2025-09-11 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/shared_ptr_base.h (__weak_ptr): Avoid calling + lock() when converting or assigning a weak_ptr<Derived> to + a weak_ptr<Base> in case Base is not a virtual base of Derived. + This logic is centralized in _S_safe_upcast, called by the + various converting constructors/assignment operators. + (_S_safe_upcast): New helper function. + * testsuite/20_util/weak_ptr/cons/virtual_bases.cc: New test. + +2025-09-11 Jonathan Wakely <jwakely@redhat.com> + + * include/std/syncstream: Remove trailing whitespace. + +2025-09-11 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/year_month_day/io.cc: Additional tests. + +2025-09-10 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unique_ptr.h: Remove blank line. + +2025-09-10 Jonathan Wakely <jwakely@redhat.com> + + * include/std/functional (boyer_moore_searcher::operator()): Add + static_assert. + (boyer_moore_horspool_searcher::operator()): Likewise. + * testsuite/20_util/function_objects/121782.cc: New test. + +2025-09-10 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (_ExtentsStorage::_Base): New name for + _S_base. + (_ExtentsStorage::_Storage): New name for _S_storage. + (extents::_Storage): New name for _S_storage. + (layout_stride::mapping::_Strides): New name for + _S_stries_t. + * testsuite/23_containers/mdspan/class_mandate_neg.cc: Update + test to the new error message. + +2025-09-10 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/span (__integral_constant_like): Use + remove_cvref_t before checking if _Tp::value is boolean. + * testsuite/23_containers/mdspan/extents/misc.cc: Update test. + * testsuite/23_containers/mdspan/mdspan.cc: Ditto. + * testsuite/23_containers/span/deduction.cc: Ditto. + +2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121765 + * include/std/format (__format::_Drop_iter): Define. + (_Iter_for_t::type): Change alias to _Drop_iter. + (__format::__format_padded): Return __fc.out() for + _Drop_iter. + * testsuite/std/format/pr121765.cc: New test. + +2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/status.html: Regenerate. + * doc/xml/manual/status_cxx2020.xml: Add more entires. + +2025-09-10 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/index.html: Regenerated. + * doc/html/manual/index.html: Regenerated. + * doc/html/manual/intro.html: Regenerated. + * doc/html/manual/status.html: Regenatered. + * doc/xml/manual/status_cxx2020.xml: Add iso.2020.specific + section with atomic_ref documentation. + +2025-09-09 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (_CwFixedValue::_S_type): Rename to + __type. + (constant_wrapper): Rename template parameter in declaration to + match later definition. + +2025-09-09 Arsen Arsenović <arsen@aarsen.me> + + * doc/xml/manual/using_exceptions.xml: Replace "Tunables" link + with one that does not have an anchor. + * doc/html/manual/using_exceptions.html: Regenerate. + +2025-09-08 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (constant_wrapper): Rename template + parameter to avoid BADNAME. + +2025-09-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120698 + * doc/xml/manual/configure.xml: Do not claim that vtv is enabled + by default. + * doc/html/manual/configure.html: Regenerate. + +2025-09-08 Nathan Myers <ncm@cantrip.org> + + * src/c++20/Makefile.in: Mention syncbuf.lo. + +2025-09-08 Nathan Myers <ncm@cantrip.org> + + * include/std/syncstream: (syncbuf<>::__mutex) Remove _S_get_mutex, + use extern function instead. + * src/c++20/syncbuf.cc: Define global __syncbuf_get_mutex. + * src/c++20/Makefile.am: Mention syncbuf.cc. + * src/c++20/Makefile.in: Regenerate. + * config/abi/pre/gnu.ver: Mention mangled __syncbuf_get_mutex. + +2025-09-08 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/121827 + * include/precompiled/extc++.h: Don't include ext/cast.h which is an + internal header. + * include/ext/pointer.h: Include bits/c++config.h before + #if _GLIBCXX_HOSTED. + +2025-09-08 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/xml/manual/using_exceptions.xml: Update link to "Tunables" + section in the Glibc manual. + * doc/html/manual/using_exceptions.html: Regenerate. + +2025-09-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/span (__integral_constant_like): Allow the member + `value` of a constant wrapping type to be a const reference of + an integer. + * testsuite/23_containers/mdspan/extents/misc.cc: Add test for + cw and constant_wrapper. + * testsuite/23_containers/mdspan/mdspan.cc: Ditto. + * testsuite/23_containers/span/deduction.cc: Ditto. + +2025-09-08 Luc Grosheintz <luc.grosheintz@gmail.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/version.def (constant_wrapper): Add. + * include/bits/version.h: Regenerate. + * include/std/type_traits (_CwFixedValue): New class. + (_IndexSequence): New struct. + (_BuildIndexSequence): New struct. + (_ConstExprParam): New concept. + (_CwOperators): New struct. + (constant_wrapper): New struct. + (cw): New global constant. + * src/c++23/std.cc.in (constant_wrapper): Add. + (cw): Add. + * testsuite/20_util/constant_wrapper/adl.cc: New test. + * testsuite/20_util/constant_wrapper/ex.cc: New test. + * testsuite/20_util/constant_wrapper/generic.cc: New test. + * testsuite/20_util/constant_wrapper/instantiate.cc: New test. + * testsuite/20_util/constant_wrapper/op_comma_neg.cc: New test. + * testsuite/20_util/constant_wrapper/version.cc: New test. + * testsuite/20_util/constant_wrapper/other_wrappers.cc: New file. + +2025-09-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/121804 + * include/std/ranges (join_view::_Iterator::_M_get_inner): + Mark noexcept. + * testsuite/std/ranges/adaptors/join.cc (test16): New test. + +2025-09-05 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/status.html: Regenerate. + * doc/xml/manual/status_cxx2011.xml: Add entry for bad_function_call. + * doc/xml/manual/status_cxx2017.xml: Add entries for bad_any_cast + and nullptr_t output. Update entry for sf.cmath. Fix stable name for + mem.res. + +2025-09-05 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/status.html: Regenerate the file. + * doc/xml/manual/status_cxx2017.xml: Addd more entires. + +2025-09-04 Patrick Palka <ppalka@redhat.com> + + * include/std/ranges (join_view::_Iterator::_M_satisfy): + Adjust to handle non-std::optional _M_inner as per before LWG 3569. + (join_view::_Iterator::_M_get_inner): New. + (join_view::_Iterator::_M_inner): Don't wrap in std::optional if + the iterator is forward. Initialize. + (join_view::_Iterator::operator*): Use _M_get_inner instead + of *_M_inner. + (join_view::_Iterator::operator++): Likewise. + (join_view::_Iterator::iter_move): Likewise. + (join_view::_Iterator::iter_swap): Likewise. + +2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/binders.h (_Binder::_S_call): Make public. + * include/std/ranges (ranges::_Partial<_Adaptor, _Args...>): + Replace tuple<_Args...> with _Bind_back_t<_Adaptor, _Args...>. + (ranges::_Partial<_Adaptor, _Arg>): Remove. + +2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/Makefile.am: Add bits/binders.h + * include/Makefile.in: Add bits/binders.h + * include/std/functional (std::_Indexed_bound_arg, std::_Binder) + (std::__make_bound_args, std::_Bind_front_t, std::_Bind_back_t): + Moved to bits/binders.h file, that is now included. + * include/bits/binders.h: New file. + +2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/functional: (std::_Indexed_bound_arg): Fixed + indentation. + (__Bound_arg_storage::_S_apply_front) + (__Bound_arg_storage::_S_apply_front): Merged into _S_apply. + (__Bound_arg_storage::_S_apply): Merged above, add _Back template + parameter, replace std::invoke with std::__invoke. + (std::_Bind_front): Renamed to std::_Binder and add _Back + template parameter. + (std::_Binder): Renamed from std::_Bind_front. + (_Binder::_Result_t, _Binder::_S_noexcept_invoke): Define. + (_Binder::operator()): Use _Result_t and _S_noexcept_invoke. + (_Binder::_S_call): Handle zero args specially, replace std::invoke + with std::__invoke. + (std::_Bind_front_t, std::_Bind_back_t): Defined in terms + of _Binder. + (std::_Bind_back): Merged into _Binder. + * testsuite/20_util/function_objects/bind_back/1.cc: New tests. + * testsuite/20_util/function_objects/bind_back/111327.cc: Updated + error messages. + * testsuite/20_util/function_objects/bind_front/1.cc: New tests. + * testsuite/20_util/function_objects/bind_front/111327.cc: Updated + error messages. + +2025-09-04 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (layout_left::mapping::operator()): Add + _GLIBCXX_RESOLVE_LIB_DEFECTS marker for 4314. + (layout_left::mapping::operator()): Ditto. + (layout_stride::mapping::operator()): Ditto. + +2025-09-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/html/manual/status.html: Regenerated the file. + * doc/xml/manual/status_cxx1998.xml: Add stable name to + each entry. + +2025-09-03 Yihan Wang <yronglin777@gmail.com> + + * include/std/expected (expected(U&&)): Add missing constraint + as per LWG 4222. + * testsuite/20_util/expected/lwg4222.cc: New test. + +2025-09-03 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121745 + * include/bits/stl_pair.h (get): Use forward instead of move in + std::get<T> overloads for rvalue pairs. + * testsuite/20_util/pair/astuple/get_by_type.cc: Check all value + categories and cv-qualification. + +2025-09-03 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/110853 + * include/bits/stl_pair.h [C++20] (pair(const T1&, const T2&)): + Use std::type_identity_t<T1> for first parameter. + * testsuite/20_util/pair/cons/110853.cc: New test. + +2025-09-03 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.def (chrono_cxx20): Define. + * include/bits/version.h: Regenerate. + * include/std/chrono: Check __glibcxx_chrono_cxx20 instead of + __cpp_lib_chrono for C++20 features that don't require the new + std::string ABI and/or can be used for freestanding. + * src/c++20/clock.cc: Adjust preprocessor condition. + +2025-09-02 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/bits/utility.h (_Index_tuple): Move to <type_traits>. + (_Build_index_tuple): Ditto. + * include/std/type_traits (_Index_tuple): Ditto. + (_Build_index_tuple): Ditto. + +2025-09-02 Tomasz Kamiński <tkaminsk@redhat.com> + + * libsupc++/compare (__cmp_cat::__literal_zero): Rename + from __unspec. + (__cmp_cat::__unspec): Rename to __literal_zero. + (operator==, operator<, operator>, operator<=, operator>=): + Replace __cmp_cat::__unspec to __cmp_cat::__literal_zero. + +2025-08-31 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/xml/manual/using_exceptions.xml: Update link to + Boost's "Exception-Safety" + * doc/html/manual/using_exceptions.html: Rebuild. + +2025-08-31 Jonathan Wakely <jwakely@redhat.com> + + * src/c++26/debugging.cc [_GLIBCXX_HAVE_SYS_PTRACE_H]: Include + <sys/types.h>. + (breakpoint) [__i386__ || __x86_64__]: Use "int 0x03" instead of + "int3". + +2025-08-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119670 + * acinclude.m4 (GLIBCXX_CHECK_DEBUGGING): Check for facilities + needed by <debugging>. + * config.h.in: Regenerate. + * configure: Regenerate. + * configure.ac: Use GLIBCXX_CHECK_DEBUGGING. + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/version.def (debugging): Add. + * include/bits/version.h: Regenerate. + * include/precompiled/stdc++.h: Add new header. + * src/c++26/Makefile.am: Add new file. + * src/c++26/Makefile.in: Regenerate. + * include/std/debugging: New file. + * src/c++26/debugging.cc: New file. + * testsuite/19_diagnostics/debugging/breakpoint.cc: New test. + * testsuite/19_diagnostics/debugging/breakpoint_if_debugging.cc: + New test. + * testsuite/19_diagnostics/debugging/is_debugger_present.cc: New + test. + * testsuite/19_diagnostics/debugging/is_debugger_present-2.cc: + New test. + +2025-08-28 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/18_support/comparisons/categories/zero_neg.cc: New test. + +2025-08-28 Weslley da Silva Pereira <weslley.spereira@gmail.com> + + * include/std/complex (polar, __complex_sqrt, pow) + (__complex_pow_unsigned): Use explicit conversions from int to + the complex value_type. + +2025-08-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121046 + * include/std/bitset (bitset(const CharT*, ...)): Add + constraints on CharT type. + * testsuite/23_containers/bitset/lwg4294.cc: New test. + +2025-08-28 Tomasz Kamiński <tkaminsk@redhat.com> + + * libsupc++/compare (__cmp_cat::_Ord): Add unordered enumerator. + (__cmp_cat::_Ncmp): Remove. + (__cmp_cat::__ord, __cmp_cat::__make): Define. + (partial_ordering::partial_ordering(__cmp_cat::_Ncmp)): Remove. + (operator<=>(__cmp_cat::__unspec, partial_ordering)) + (partial_ordering::unordered): Replace _Ncmp with _Ord. + (std::partial_ordering, std::weak_ordering, std::strong_ordering): + Befriend __ord and __make helpers, remove friend declartions for + other orderings. + (__compare::__fp_weak_ordering): Remove unused __cat variable. + Simplify ordering conversions. + +2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> + + * libsupc++/compare + (operator<=>(__cmp_cat::__unspec, partial_ordering)): + Implement using _M_reverse. + +2025-08-27 Nathan Myers <ncm@cantrip.org> + + * include/std/chrono (gps_clock::now, tai_clock::now): Remove + inline definitions. + * src/c++20/clock.cc (gps_clock::now, tai_clock::now): New file + for out-of-line now() impls. + * src/c++20/Makefile.am: Mention clock.cc. + * src/c++20/Makefile.in: Regenerate. + * config/abi/pre/gnu.ver: add mangled now() symbols. + +2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> + + * libsupc++/compare (_Ncmp::_Unordered): Rename and change the value + to minimum value of signed char. + (_Ncomp::unordered): Renamed from _Unordered, the name is reserved + by partial_ordered::unordered. + (partial_ordering::_M_reverse()): Define. + (operator<=(partial_ordering, __cmp_cat::__unspec)) + (operator>=(__cmp_cat::__unspec, partial_ordering)): Implemented + in terms of negated _M_value. + (operator>=(partial_ordering, __cmp_cat::__unspec)) + (operator<=(__cmp_cat::__unspec, partial_ordering)): Directly + compare _M_value, as unordered value is negative. + (partial_ordering::unordered): Handle _Ncmp::unoredred rename. + * python/libstdcxx/v6/printers.py: Add -128 as integer value + for unordered, keeping 2 to preserve backward compatibility. + +2025-08-27 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/funcwrap.h (__polyfunc::_Mo_base): Reorder _M_manage + and _M_storage members. Make _M_destroy protected and remove friend + declaration. + * testsuite/20_util/copyable_function/call.cc: Add test for aliasing + base class. + * testsuite/20_util/move_only_function/call.cc: Likewise. + +2025-08-26 Patrick Palka <ppalka@redhat.com> + + * include/std/ranges (__detail::_CachedPosition): Remove + additional size constraint on the offset-based partial + specialization. + +2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/90192 + * include/bits/stl_vector.h (vector<T>::_M_fill_append): Declare. + (vector<T>::fill): Use _M_fill_append instead of _M_fill_insert. + * include/bits/vector.tcc (vector<T>::_M_fill_append): Define + (vector<T>::_M_fill_insert): Delegate to _M_fill_append when + elements are appended. + * testsuite/23_containers/vector/modifiers/moveable.cc: Updated + copycount for inserting at the end (appending). + * testsuite/23_containers/vector/modifiers/resize.cc: New test. + * testsuite/backward/hash_set/check_construct_destroy.cc: Updated + copycount, the hash_set constructor uses insert to fill buckets + with nullptrs. + +2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/move.h (std::__like_impl, std::__like_t): Make + available in c++11. + * include/std/functional (std::_Indexed_bound_arg) + (std::_Bound_arg_storage, std::__make_bound_args): Define. + (std::_Bind_front, std::_Bind_back): Use _Bound_arg_storage. + * testsuite/20_util/function_objects/bind_back/1.cc: Expand + test to cover cases of 0, 1, many bound args. + * testsuite/20_util/function_objects/bind_back/111327.cc: Likewise. + * testsuite/20_util/function_objects/bind_front/1.cc: Likewise. + * testsuite/20_util/function_objects/bind_front/111327.cc: Likewise. + +2025-08-26 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/stop_token (__variant::_Never_valueless_alt): Declare. + (__variant::_Never_valueless_alt<std::stop_token>) + (__variant::_Never_valueless_alt<std::stop_source>): Define. + * include/std/thread: (__variant::_Never_valueless_alt): Declare. + (__variant::_Never_valueless_alt<std::jthread>): Define. + +2025-08-21 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121496 + * acinclude.m4 (GLIBCXX_CHECK_PTHREAD_MUTEX_CLOCKLOCK): Do not + use _GLIBCXX_TSAN in _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK macro. + * configure: Regenerate. + +2025-08-21 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121496 + * include/std/mutex (__timed_mutex_impl::_M_try_wait_until): + Change preprocessor condition to use #if instead of #ifdef. + (recursive_timed_mutex::_M_clocklock): Likewise. + * testsuite/30_threads/timed_mutex/121496.cc: New test. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/120994 + * include/bits/version.def (aligned_accessor): Add. + * include/bits/version.h: Regenerate. + * include/std/mdspan (aligned_accessor): New class. + * src/c++23/std.cc.in (aligned_accessor): Add. + * testsuite/23_containers/mdspan/accessors/generic.cc: Add tests + for aligned_accessor. + * testsuite/23_containers/mdspan/accessors/aligned_neg.cc: New test. + * testsuite/23_containers/mdspan/version.cc: Add test for + __cpp_lib_aligned_accessor. + * testsuite/23_containers/mdspan/accessors/debug/aligned_access_neg.cc: New file. + * testsuite/23_containers/mdspan/accessors/debug/aligned_offset_neg.cc: New file. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/120994 + * include/bits/align.h (is_sufficiently_aligned): New function. + * include/bits/version.def (is_sufficiently_aligned): Add. + * include/bits/version.h: Regenerate. + * include/std/memory: Add __glibcxx_want_is_sufficiently_aligned. + * src/c++23/std.cc.in (is_sufficiently_aligned): Add. + * testsuite/20_util/headers/memory/version.cc: Add test for + __cpp_lib_is_sufficiently_aligned. + * testsuite/20_util/is_sufficiently_aligned/1.cc: New test. + +2025-08-21 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121374 + * include/std/limits (numeric_limits<__float128>::max_digits10): + Fix value. + * testsuite/18_support/numeric_limits/128bit.cc: Check value. + +2025-08-21 Jonathan Wakely <jwakely@redhat.com> + + PR c++/117294 + * testsuite/20_util/optional/cons/value_neg.cc: Prune additional + output for C++20 and later. + * testsuite/20_util/scoped_allocator/69293_neg.cc: Match + additional error for C++20 and later. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/bits/version.def (mdspan): Set value for C++26. + * include/bits/version.h: Regenerate. + * include/std/mdspan (dims): Add. + * src/c++23/std.cc.in (dims): Add. + * testsuite/23_containers/mdspan/extents/misc.cc: Add tests. + * testsuite/23_containers/mdspan/version.cc: Update test. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__static_prod): Delete. + (__fwd_partial_prods): Compute at compile-time in O(rank), not + O(rank**2). + (__rev_partial_prods): Ditto. + (__size): Inline __static_prod. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__fwd_partial_prods): Reduce size of the + array by 1 element. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__valid_static_extent): Replace + numeric_limits with __int_traits. + (extents::_S_ctor_explicit): Ditto. + (extents::__static_quotient): Ditto. + (layout_stride::mapping::mapping): Ditto. + (mdspan::size): Ditto. + * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: + Update test with additional diagnostics. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (extents::operator==): Replace loop with + pack expansion. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__all_static): New function. + (__mdspan::_StaticExtents::_S_is_dyn): Inline and eliminate. + (__mdspan::_ExtentsStorage::_S_is_dynamic): New method. + (__mdspan::_ExtentsStorage::_M_extent): Use _S_is_dynamic. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__fwd_prods): Relax condition for fully-dynamic + extents to cover (dyn, ..., dyn, X). + (__rev_partial_prods): Analogous for (X, dyn, ..., dyn). + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__all_dynamic): New function. + (__mdspan::_StaticExtents::_S_dynamic_index): Convert to method. + (__mdspan::_StaticExtents::_S_dynamic_index_inv): Ditto. + (__mdspan::_StaticExtents): New specialization for fully dynamic + extents. + (__mdspan::__fwd_prod): New constexpr if branch to avoid + instantiating __fwd_partial_prods. + (__mdspan::__rev_prod): Ditto. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__fwd_prod): Optimize + for rank <= 2. + (__mdspan::__rev_prod): Ditto. + (__mdspan::__size): Refactor to use a pre-computed product, not + a partial product. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__static_prod): New function. + (__mdspan::__fwd_partial_prods): Constexpr array of partial + forward products. + (__mdspan::__fwd_partial_prods): Same for reverse partial + products. + (__mdspan::__static_extents_prod): Delete function. + (__mdspan::__extents_prod): Renamed from __exts_prod and refactored. + include/std/mdspan (__mdspan::__fwd_prod): Compute as the + product of pre-computed static static and the product of dynamic + extents. + (__mdspan::__rev_prod): Ditto. + +2025-08-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::_StaticExtents): Extract non IndexType + related code from _ExtentsStorage. + (__mdspan::_ExtentsStorage): Use _StaticExtents. + (__mdspan::__static_extents): Return reference to NTTP of _StaticExtents. + (__mdspan::__contains_zero): New overload. + (__mdspan::__exts_prod, __mdspan::__static_quotient): Use span to avoid + copying __sta_exts. + +2025-08-19 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/104874 + * testsuite/24_iterators/random_access/string_vector_iterators.cc: + Call test6642. + +2025-08-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121476 + * include/bits/ranges_algo.h (__all_of_fn::operator()): + (__any_of_fn::operator(), __none_of_fn::operator()) + (__find_first_of_fn::operator(), __count_fn::operator()) + (__find_end_fn::operator(), __remove_if_fn::operator()) + (__remove_fn::operator(), __unique_fn::operator()) + (__is_sorted_until_fn::operator(), __is_sorted_fn::operator()) + (__lower_bound_fn::operator(), __upper_bound_fn::operator()) + (__equal_range_fn::operator(), __binary_search_fn::operator()) + (__is_partitioned_fn::operator(), __partition_point_fn::operator()) + (__minmax_fn::operator(), __min_element_fn::operator()) + (__includes_fn::operator(), __max_fn::operator()) + (__lexicographical_compare_fn::operator(), __clamp__fn::operator()) + (__find_last_fn::operator(), __find_last_if_fn::operator()) + (__find_last_if_not_fn::operator()): Add [[nodiscard]] attribute. + * include/bits/ranges_algobase.h (__equal_fn::operator()): + Add [[nodiscard]] attribute. + * include/bits/ranges_util.h (__find_fn::operator()) + (__find_if_fn::operator(), __find_if_not_fn::operator()) + (__mismatch_fn::operator(), __search_fn::operator()) + (__min_fn::operator(), __adjacent_find_fn::operator()): + Add [[nodiscard]] attribute. + * include/bits/stl_algo.h (std::min(initializer_list<T>)) + (std::min(initializer_list<T>, _Compare)) + (std::max(initializer_list<T>)) + (std::mmax(initializer_list<T>, _Compare)): Add _GLIBCXX_NODISCARD. + * testsuite/25_algorithms/min/constrained.cc: Silence nodiscard + warning. + * testsuite/25_algorithms/max/constrained.cc: Likewise. + * testsuite/25_algorithms/minmax/constrained.cc: Likewise. + * testsuite/25_algorithms/minmax_element/constrained.cc: Likewise. + +2025-08-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121313 + * include/bits/vector.tcc (vector::insert_range): Add check for + empty size. + * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: + New tests. + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + * configure: Regenerated. + +2025-08-07 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/xml/manual/build_hacking.xml: Switch gcc.gnu.org installation + docs to https. + * doc/html/manual/appendix_porting.html: Regenerate. + +2025-08-05 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/121373 + * src/c++23/std.cc.in (std::ranges::iter_move, std::ranges::iter_swap): + Remove exports. + +2025-08-04 Jakub Jelinek <jakub@redhat.com> + hexne <printfne@gmail.com> + + PR libstdc++/121373 + * src/c++23/std.cc.in (std::ranges::shift_left, + std::ranges::shift_right): Only export for C++23 and later. + (std::ranges::fold_left_first_with_iter_result, + std::ranges::fold_left_with_iter_result): Export. + (std::byteswap): Export for C++23 and later. + (std::ranges::iter_move, std::ranges::iter_swap): Export. + (std::projected_value_t): Export for C++26 and later. + (std::out_ptr_t, std::inout_ptr_t): Export. + (std::ranges::iota_result): Export. + (std::regex_constants): Export a lot of constants. + (std::is_scoped_enum, std::is_scoped_enum_v): Export. + +2025-08-04 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121128 + * include/bits/indirect.h (indirect::operator*): + Cast __self to approparietly qualified indirect. + * testsuite/std/memory/indirect/access.cc: New test. + * testsuite/std/memory/polymorphic/access.cc: New test. + +2025-08-03 Jakub Jelinek <jakub@redhat.com> + + * src/c++23/std.cc.in (std::owner_equal, std::owner_hash): Export. + +2025-07-30 François Dumont <frs.dumont@gmail.com> + + * testsuite/std/time/format/data_not_present_neg.cc: Remove _GLIBCXX_USE_DUAL_ABI + check. + +2025-07-29 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/format/ranges/format_kind.cc: New test. + +2025-07-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/102181 + * include/bits/stl_iterator_base_funcs.h (distance, advance): + Check C++20 iterator concepts and handle appropriately. + (__detail::__iter_category_converts_to_concept): New concept. + (__detail::__promotable_iterator): New concept. + * testsuite/24_iterators/operations/cxx20_iterators.cc: New + test. + +2025-07-28 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119742 + * include/debug/bitset: Add new ctor. + +2025-07-28 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan: Small stylistic adjustments. + +2025-07-28 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/accessors/generic.cc: Refactor + test_ctor. + +2025-07-28 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121196 + * include/std/inplace_vector (std::erase): Provide default argument + for _Up parameter. + * testsuite/23_containers/inplace_vector/erasure.cc: Add test for + using braces-init-list as arguments to erase_if and use function + to verify content of inplace_vector + +2025-07-25 Tuur Martens <tuurmartens4@gmail.com> + + * include/bits/unordered_map.h: Rectify referencing of + non-existent type. + +2025-07-24 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/117294 + PR c++/113854 + * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust + diagnostics. + * testsuite/20_util/expected/illformed_neg.cc: Likewise. + * testsuite/20_util/optional/monadic/or_else_neg.cc: Likewise. + * testsuite/23_containers/array/creation/3_neg.cc: Likewise. + * testsuite/24_iterators/range_generators/lwg3900.cc: Likewise. + * testsuite/29_atomics/atomic/requirements/types_neg.cc: + Likewise. + * testsuite/30_threads/stop_token/stop_callback/invocable_neg.cc: + Likewise. + * testsuite/30_threads/stop_token/stop_callback/destructible_neg.cc: + Likewise. + * testsuite/std/format/arguments/args_neg.cc: Likewise. + * testsuite/std/format/string_neg.cc: Likewise. + +2025-07-24 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/104874 + * testsuite/24_iterators/random_access/string_vector_iterators.cc: + Reworked. + +2025-07-24 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/21_strings/basic_string/cons/from_range.cc: Replace + test_constexpr with test_ranges inside static_assert. + * testsuite/21_strings/basic_string/modifiers/append/append_range.cc: + Likewise. + * testsuite/21_strings/basic_string/modifiers/assign/assign_range.cc: + Likewise. + * testsuite/21_strings/basic_string/modifiers/insert/insert_range.cc: + Likewise. + * testsuite/21_strings/basic_string/modifiers/replace/replace_with_range.cc: + Likewise. + * testsuite/23_containers/vector/bool/cons/from_range.cc: Likewise. + * testsuite/23_containers/vector/bool/modifiers/assign/assign_range.cc: + Likewise. + * testsuite/23_containers/vector/bool/modifiers/insert/insert_range.cc: + Likewise. + * testsuite/23_containers/vector/cons/from_range.cc: Likewise. + * testsuite/23_containers/vector/modifiers/assign/assign_range.cc: + Likewise. + * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: + Likewise. + * testsuite/23_containers/vector/bool/modifiers/insert/append_range.cc: + Run full test_ranges instead of span-only in test_constexpr. + * testsuite/23_containers/vector/modifiers/append_range.cc: + Replace test_constexpr with calls to test_ranges and test_overlapping. + * testsuite/util/testsuite_allocator.h (__gnu_test::SimpleAllocator): + Declared member functions as constexpr. + +2025-07-23 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/accessors/default.cc: Delete. + * testsuite/23_containers/mdspan/accessors/generic.cc: Slightly + generalize the test code previously in default.cc. + +2025-07-23 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/extents/ctor_ints.cc: Remove + superfluous parens. + * testsuite/23_containers/mdspan/extents/ctor_shape.cc: Ditto. + * testsuite/23_containers/mdspan/mdspan.cc: Ditto. + +2025-07-23 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119137 + * testsuite/23_containers/inplace_vector/access/elem.cc: Cover + front and back methods and const calls. + * testsuite/23_containers/inplace_vector/access/elem_neg.cc: + Likewise. + * testsuite/23_containers/inplace_vector/modifiers/erase_neg.cc: + New test. + * testsuite/23_containers/inplace_vector/modifiers/single_insert_neg.cc: + New test. + +2025-07-22 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119137 + * testsuite/23_containers/inplace_vector/cons/from_range.cc: Run + iterators and range test at compile-time. + * testsuite/23_containers/inplace_vector/modifiers/assign.cc: + Likewise. + * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: + Likewise. + * testsuite/util/testsuite_iterators.h (__gnu_test::BoundsContainer) + (__gnu_test::OutputContainer, __gnu_test::WritableObject) + (__gnu_test::output_iterator_wrapper, __gnu_test::input_iterator_wrapper) + (__gnu_test::forward_iterator_wrapper) + (__gnu_test::bidirectional_iterator_wrapper) + (__gnu_test::random_access_iterator_wrapper) + (__gnu_test::test_container): Add appropriate _GLIBCXXNN_CONSTEXPR + macros to member functions. + (__gnu_test::contiguous_iterator_wrapper) + (__gnu_test::input_iterator_wrapper_rval) + (__gnu_test::test_range, __gnu_test::test_range_nocopy) + (__gnu_test::test_sized_range_sized_sent) + (__gnu_test::test_sized_range): Add constexpr specifier to member + functions. + +2025-07-22 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119137 + * include/std/inplace_vector (inplace_vector::assign_range): + Replace _Nm with _M_size in the assigment loop. + +2025-07-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (mdspan::mdspan): Make default ctor + conditionally noexcept. + * testsuite/23_containers/mdspan/mdspan.cc: Add tests. + +2025-07-21 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (mdspan::is_always_unique): Make + conditionally noexcept. + (mdspan::is_always_exhaustive): Ditto. + (mdspan::is_always_strided): Ditto. + (mdspan::is_unique): Ditto. + (mdspan::is_exhaustive): Ditto. + (mdspan::is_strided): Ditto. + * testsuite/23_containers/mdspan/layout_like.h: Make noexcept + configurable. Add ThrowingLayout. + * testsuite/23_containers/mdspan/mdspan.cc: Add tests for + noexcept. + +2025-07-20 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/121174 + * src/c++23/std.cc.in (std::dextents): Export. Add to FIXME comments + other not yet implemented nor exported <mdspan> entities. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_iterator_base_types.h (__any_input_iterator): + Only define when __cpp_lib_concepts is defined. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/appendix_contributing.xml: Remove Paolo from + list of maintainers to contact about contributing. + * doc/html/manual/appendix_contributing.html: Regenerate. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/build_hacking.xml: Document that + windows_zones-map.h is a generated file. + * doc/html/manual/appendix_porting.html: Regenerate. + +2025-07-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119137 + * include/std/inplace_vector (inplace_vector::operator=): + Qualify call to std::addressof. + +2025-07-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121154 + * include/bits/chrono_io.h (_ChronoSpec::_M_time_point): Remove. + (_ChronoSpec::_M_needs_ok_check): Define + (__formatter_chrono::_M_parse): Set _M_needs_ok_check. + (__formatter_chrono::_M_check_ok): Check values also for debug mode, + and return __string_view. + (__formatter_chrono::_M_format_to): Handle results of _M_check_ok. + (__formatter_chrono::_M_wi, __formatter_chrono::_M_a_A) + (__formatter_chrono::_M_b_B, __formatter_chrono::_M_C_y_Y) + (__formatter_chrono::_M_d_e, __formatter_chrono::_M_F): + Removed handling of _M_debug. + (__formatter_chrono::__M_m): Print zero unpadded in _M_debug mode. + (__formatter_duration::_S_spec_for): Remove _M_time_point refernce. + (__formatter_duration::_M_parse): Override _M_needs_ok_check. + * testsuite/std/time/month/io.cc: Test for localized !ok() values. + * testsuite/std/time/weekday/io.cc: Test for localized !ok() values. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121150 + * testsuite/20_util/hash/int128.cc: Cast expected values to + size_t. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode.h (_Utf_iterator::operator--): Reorder + conditions and update position after reading a code unit. + (_Utf_iterator::_M_read_reverse): Define. + (_Utf_iterator::_M_read_utf8): Return extracted code point. + (_Utf_iterator::_M_read_reverse_utf8): Define. + (_Utf_iterator::_M_read_reverse_utf16): Define. + (_Utf_iterator::_M_read_reverse_utf32): Define. + * testsuite/ext/unicode/view.cc: Add checks for reversed views + and reverse iteration. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode.h (_Utf_iterator): Reorder data members + to be more compact. + +2025-07-18 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119137 + * doc/doxygen/user.cfg.in (INPUT): Add new header. + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/stl_iterator_base_types.h (__any_input_iterator): + Define. + * include/bits/version.def (inplace_vector): Define. + * include/bits/version.h: Regenerate. + * include/precompiled/stdc++.h: Include new header. + * src/c++23/std.cc.in: Export contents if new header. + * include/std/inplace_vector: New file. + * testsuite/23_containers/inplace_vector/access/capacity.cc: New file. + * testsuite/23_containers/inplace_vector/access/elem.cc: New file. + * testsuite/23_containers/inplace_vector/access/elem_neg.cc: New file. + * testsuite/23_containers/inplace_vector/cons/1.cc: New file. + * testsuite/23_containers/inplace_vector/cons/from_range.cc: New file. + * testsuite/23_containers/inplace_vector/cons/throws.cc: New file. + * testsuite/23_containers/inplace_vector/copy.cc: New file. + * testsuite/23_containers/inplace_vector/erasure.cc: New file. + * testsuite/23_containers/inplace_vector/modifiers/assign.cc: New file. + * testsuite/23_containers/inplace_vector/modifiers/erase.cc: New file. + * testsuite/23_containers/inplace_vector/modifiers/multi_insert.cc: + New file. + * testsuite/23_containers/inplace_vector/modifiers/single_insert.cc: + New file. + * testsuite/23_containers/inplace_vector/move.cc: New file. + * testsuite/23_containers/inplace_vector/relops.cc: New file. + * testsuite/23_containers/inplace_vector/version.cc: New file. + * testsuite/util/testsuite_iterators.h (input_iterator_wrapper::base): + Define. + +2025-07-17 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/96710 + * doc/xml/manual/evolution.xml: Document change or __int128. + * doc/html/manual/api.html: Regenerate. + +2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/121061 + * include/std/mdspan (extents::extents): Perform conversion to + index_type of an r-value reference. + (layout_left::mapping::operator()): Ditto. + (layout_right::mapping::operator()): Ditto. + (layout_stride::mapping::operator()): Ditto. + * testsuite/23_containers/mdspan/extents/custom_integer.cc: Add + tests for RValueInt and MutatingInt. + * testsuite/23_containers/mdspan/int_like.h (RValueInt): Add. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Test with + RValueInt. + * testsuite/23_containers/mdspan/mdspan.cc: Ditto. + +2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/121061 + * include/std/mdspan (extents::extents): Fix constraint to + prevent non-const conversion to index_type. + (layout_stride::mapping::mapping): Ditto. + (mdspan::mdspan): Ditto. + (mdspan::operator[]): Ditto. + * testsuite/23_containers/mdspan/extents/custom_integer.cc: Add + test for MutatingInt. + * testsuite/23_containers/mdspan/int_like.h (MutatingInt): Add. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Add test for + MutatingInt. + * testsuite/23_containers/mdspan/layouts/stride.cc: Ditto. + * testsuite/23_containers/mdspan/mdspan.cc: Ditto. + +2025-07-17 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/121061 + * testsuite/23_containers/mdspan/extents/custom_integer.cc: + Enable checking with different custom integers. Improve + checking non-existence of overloads for incompatible custom + integers. + * testsuite/23_containers/mdspan/layouts/mapping.cc: ditto. Also + improve reuse of int_like.h. + * testsuite/23_containers/mdspan/layouts/stride.cc: ditto. + * testsuite/23_containers/mdspan/mdspan.cc: ditto. + * testsuite/23_containers/mdspan/extents/int_like.h: Rename (old + name). + * testsuite/23_containers/mdspan/int_like.h: Rename (new name). + (ThrowingInt): Add. + (NotIntLike): Add. + +2025-07-17 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unicode.h (__unicode::_Utf_iterator): Add + comments. + (__unicode:_Utf_iterator::operator++()): Check whether to + iterate over the buffer first. + +2025-07-17 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121097 + * include/c_global/cmath (hypot): Use __promote_3 instead of + __promoted. + +2025-07-16 Jonathan Wakely <jwakely@redhat.com> + + * include/std/bitset (__bitset::__string) [__cpp_lib_bitset]: + Change alias to refer to basic_string_view instead. + +2025-07-16 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/121114 + * include/bits/version.def (constexpr_exceptions): Add no_stdname + and changed value. + * include/bits/version.h: Regenerated. + * testsuite/18_support/exception/version.cc: Test that macro is + not exported. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/move.h (swap): Replace enable_if with concepts + when available, and with __enable_if_t alias otherwise. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ranges_base.h (ranges::advance(i, n, bound)): + Ensure that observable side effects on iterators match what is + specified in the standard. + +2025-07-15 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/119962 + * include/std/ranges (join_view::_Iterator::_M_outer): Initialize. + (lazy_split_view::_OuterIter::_M_current): Initialize. + (join_with_view::_Iterator::_M_outer_it): Initialize. + * testsuite/std/ranges/adaptors/join.cc (test15): New test. + * testsuite/std/ranges/adaptors/join_with/1.cc (test05): New test. + * testsuite/std/ranges/adaptors/lazy_split.cc (test13): New test. + +2025-07-15 Björn Schäpers <bjoern@hazardy.de> + + PR libstdc++/108409 + * scripts/gen_windows_zones_map.py: New file, generates + windows_zones-map.h. + * src/c++20/windows_zones-map.h: New file, contains the look up + table. + * src/c++20/tzdb.cc (tzdb::current_zone): Add Windows code path. + +2025-07-15 Björn Schäpers <bjoern@hazardy.de> + + * src/c++20/tzdb.cc (zoneinfo_file): On Windows look relative + from the DLL path for the time zone information. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/25_algorithms/copy/debug/constexpr_neg.cc: + * testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc: + * testsuite/25_algorithms/equal/debug/constexpr_neg.cc: + * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc: + * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc: + * testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc: + * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc: + * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc: + * testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc: + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/121024 + * include/bits/ranges_uninitialized.h (ranges::destroy): Do not + optimize away trivial destructors during constant evaluation. + (ranges::destroy_n): Likewise. + * testsuite/20_util/specialized_algorithms/destroy/121024.cc: + New test. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + * include/experimental/memory (swap, make_observer_ptr): Add + constexpr. + (operator==, operator!=, operator<, operator>, operator<=) + (operator>=): Likewise. + * testsuite/experimental/memory/observer_ptr/make_observer.cc: + Checks for constant evaluation. + * testsuite/experimental/memory/observer_ptr/relops/relops.cc: + Likewise. + * testsuite/experimental/memory/observer_ptr/swap/swap.cc: + Likewise. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (__make_unsigned_selector): Add + unsigned __int128 to type list. + * testsuite/20_util/make_unsigned/int128.cc: New test. + +2025-07-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/96710 + * include/bits/functional_hash.h (hash<__int128>): Define for + strict modes. + (hash<unsigned __int128>): Likewise. + * testsuite/20_util/hash/int128.cc: New test. + +2025-07-15 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/110739 + * include/bits/chrono_io.h (__formatter_chrono::_S_weekdays) + (__formatter_chrono::_S_months, __formatter_chrono::_S_fill_ampm): + Define. + (__formatter_chrono::_M_format_to): Do not pass context parameter + to functions listed below. + (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B): Implement + using harcoded list of names, and remove format context parameter. + (__formatter_chrono::_M_p, __formatter_chrono::_M_r): Implement + using _S_fill_ampm. + (__formatter_chrono::_M_c): Removed format context parameter. + (__formatter_chrono::_M_subsecs): Call __ctx.locale() directly, + instead of _M_locale and do not compare with locale::classic(). + Add [[unlikely]] attributes. + (__formatter_chrono::_M_locale): Move to __formatter_duration. + (__formatter_duration::_M_locale): Moved from __formatter_chrono. + +2025-07-14 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_pair.h (swap): Add comment to deleted + overload. + * include/bits/unique_ptr.h (swap): Likewise. + * include/std/array (swap): Likewise. + * include/std/optional (swap): Likewise. + * include/std/tuple (swap): Likewise. + * include/std/variant (swap): Likewise. + * testsuite/23_containers/array/tuple_interface/get_neg.cc: + Adjust dg-error line numbers. + +2025-07-14 Jonathan Wakely <jwakely@redhat.com> + + * include/pstl/algorithm_impl.h (__for_each_n_it_serial): + Protect against overloaded comma operator. + (__brick_walk2): Likewise. + (__brick_walk2_n): Likewise. + (__brick_walk3): Likewise. + (__brick_move_destroy::operator()): Likewise. + (__brick_calc_mask_1): Likewise. + (__brick_copy_by_mask): Likewise. + (__brick_partition_by_mask): Likewise. + (__brick_calc_mask_2): Likewise. + (__brick_reverse): Likewise. + (__pattern_partial_sort_copy): Likewise. + * include/pstl/memory_impl.h (__brick_uninitialized_move): + Likewise. + (__brick_uninitialized_copy): Likewise. + * include/pstl/numeric_impl.h (__brick_transform_scan): + Likewise. + +2025-07-14 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117785 + * include/bits/version.def (constexpr_exceptions): Define + correct value. + * include/bits/version.h: Regenerate. + * libsupc++/exception: Check correct value. + * testsuite/18_support/exception/version.cc: New test. + +2025-07-14 Jonathan Wakely <jwakely@redhat.com> + + * libsupc++/exception_ptr.h (make_exception_ptr): Return null + for consteval when -fno-exceptions is used. + (exception_ptr_cast): Likewise. Allow consteval path to work + with -fno-rtti. + +2025-07-11 Jakub Jelinek <jakub@redhat.com> + + * libsupc++/exception_ptr.h: Implement C++26 P3748R0 - Inspecting + exception_ptr should be constexpr. + (std::exception_ptr_cast): Make constexpr, remove inline keyword. Add + static_asserts for Mandates. For if consteval use std::rethrow_exception, + catch it and return its address or nullptr. + * testsuite/18_support/exception_ptr/exception_ptr_cast.cc (E::~E): Add + constexpr. + (G::G): Likewise. + (test01): Likewise. Return bool and take bool argument, throw if the + argument is true. Add static_assert(test01(false)). + (main): Call test01(true) in try. + +2025-07-11 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/cpp_type_traits.h (__is_floating<__float128>): + Do not depend on __STRICT_ANSI__. + * include/bits/stl_algobase.h (__size_to_integer(__float128)): + Likewise. + * include/std/type_traits (__is_floating_point_helper<__float128>): + Likewise. + +2025-07-11 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/96710 + * include/bits/cpp_type_traits.h (__is_integer): Define explicit + specializations for __int128. + (__memcpyable_integer): Remove explicit specializations for + __int128. + * include/bits/iterator_concepts.h (incrementable_traits): + Likewise. + (__is_signed_int128, __is_unsigned_int128, __is_int128): Remove. + (__is_integer_like, __is_signed_integer_like): Remove check for + __int128. + * include/bits/max_size_type.h: Remove all uses of __is_int128 + in constraints. + * include/bits/ranges_base.h (__to_unsigned_like): Remove + overloads for __int128. + (ranges::ssize): Remove special case for __int128. + * include/bits/stl_algobase.h (__size_to_integer): Define + __int128 overloads for strict modes. + * include/ext/numeric_traits.h (__is_integer_nonstrict): Remove + explicit specializations for __int128. + * include/std/charconv (to_chars): Define overloads for + __int128. + * include/std/format (__format::make_unsigned_t): Remove. + (__format::to_chars): Remove. + * include/std/limits (numeric_limits): Define explicit + specializations for __int128. + * include/std/type_traits (__is_integral_helper): Likewise. + (__make_unsigned, __make_signed): Likewise. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/117785 + * include/bits/version.def (constexpr_exceptions): New. + * include/bits/version.h: Regenerate. + * libsupc++/exception (std::bad_exception::bad_exception): Add + _GLIBCXX26_CONSTEXPR. + (std::bad_exception::~bad_exception, std::bad_exception::what): For + C++26 add constexpr and define inline. + * libsupc++/exception.h (std::exception::exception, + std::exception::operator=): Add _GLIBCXX26_CONSTEXPR. + (std::exception::~exception, std::exception::what): For C++26 add + constexpr and define inline. + * libsupc++/exception_ptr.h (std::make_exception_ptr): Add + _GLIBCXX26_CONSTEXPR. For if consteval use just throw with + current_exception() in catch. + (std::exception_ptr::exception_ptr(void*)): For C++26 add constexpr + and define inline. + (std::exception_ptr::exception_ptr()): Add _GLIBCXX26_CONSTEXPR. + (std::exception_ptr::exception_ptr(const exception_ptr&)): Likewise. + Use __builtin_eh_ptr_adjust_ref if consteval and compiler has it + instead of _M_addref. + (std::exception_ptr::exception_ptr(nullptr_t)): Add + _GLIBCXX26_CONSTEXPR. + (std::exception_ptr::exception_ptr(exception_ptr&&)): Likewise. + (std::exception_ptr::operator=): Likewise. + (std::exception_ptr::~exception_ptr): Likewise. Use + __builtin_eh_ptr_adjust_ref if consteval and compiler has it + instead of _M_release. + (std::exception_ptr::swap): Add _GLIBCXX26_CONSTEXPR. + (std::exception_ptr::operator bool): Likewise. + (std::exception_ptr::operator==): Likewise. + * libsupc++/nested_exception.h + (std::nested_exception::nested_exception): Add _GLIBCXX26_CONSTEXPR. + (std::nested_exception::operator=): Likewise. + (std::nested_exception::~nested_exception): For C++26 add constexpr + and define inline. + (std::nested_exception::rethrow_if_nested): Add _GLIBCXX26_CONSTEXPR. + (std::nested_exception::nested_ptr): Likewise. + (std::_Nested_exception::_Nested_exception): Likewise. + (std::throw_with_nested, std::rethrow_if_nested): Likewise. + * libsupc++/new (std::bad_alloc::bad_alloc): Likewise. + (std::bad_alloc::operator=): Likewise. + (std::bad_alloc::~bad_alloc): For C++26 add constexpr and define + inline. + (std::bad_alloc::what): Likewise. + (std::bad_array_new_length::bad_array_new_length): Add + _GLIBCXX26_CONSTEXPR. + (std::bad_array_new_length::~bad_array_new_length): For C++26 add + constexpr and define inline. + (std::bad_array_new_length::what): Likewise. + * libsupc++/typeinfo (std::bad_cast::bad_cast): Add + _GLIBCXX26_CONSTEXPR. + (std::bad_cast::~bad_cast): For C++26 add constexpr and define inline. + (std::bad_cast::what): Likewise. + (std::bad_typeid::bad_typeid): Add _GLIBCXX26_CONSTEXPR. + (std::bad_typeid::~bad_typeid): For C++26 add constexpr and define + inline. + (std::bad_typeid::what): Likewise. + +2025-07-10 Jakub Jelinek <jakub@redhat.com> + + * testsuite/22_locale/codecvt/codecvt_unicode.h + (ucs2_to_utf8_out_error): Comment spelling fix: bellow -> below. + (utf16_to_ucs2_in_error): Likewise. + +2025-07-09 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_uninitialized.h (__uninitialized_default): + Do not use optimized implementation for constexpr case. Use + _GLIBCXX20_CONSTEXPR instead of _GLIBCXX26_CONSTEXPR. + +2025-07-09 Jonathan Wakely <jwakely@redhat.com> + + * include/std/mdspan (mdspan): Add template keyword for + dependent name. + +2025-07-09 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120997 + * include/std/span (span::first, span::last, span::subspan): Do + not use braced-init-list for return statements. + * testsuite/23_containers/span/120997.cc: New test. + +2025-07-09 Paul Keir <pkeir@outlook.com> + + PR libstdc++/117403 + * include/bits/shared_ptr.h (shared_ptr::owner_equal) + (shared_ptr::owner_hash, weak_ptr::owner_equal) + (weak_ptr::owner_hash): Define new member functions. + * include/bits/shared_ptr_base.h (owner_equal, owner_hash): + Define new structs. + * include/bits/version.def (smart_ptr_owner_equality): Define. + * include/bits/version.h: Regenerate. + * include/std/memory: Added define for + __glibcxx_want_smart_ptr_owner_equality. + * testsuite/20_util/owner_equal/version.cc: New test. + * testsuite/20_util/owner_equal/cmp.cc: New test. + * testsuite/20_util/owner_equal/noexcept.cc: New test. + * testsuite/20_util/owner_hash/cmp.cc: New test. + * testsuite/20_util/owner_hash/noexcept.cc: New test. + * testsuite/20_util/shared_ptr/observers/owner_equal.cc: New + test. + * testsuite/20_util/shared_ptr/observers/owner_hash.cc: + New test. + * testsuite/20_util/weak_ptr/observers/owner_equal.cc: New test. + * testsuite/20_util/weak_ptr/observers/owner_hash.cc: New test. + +2025-07-09 Mateusz Zych <mte.zych@gmail.com> + + * include/bits/max_size_type.h (numeric_limits<__max_size_type>): + New members. + (numeric_limits<__max_diff_type>): Likewise. + * testsuite/std/ranges/iota/max_size_type.cc: New test cases. + +2025-07-09 Jonathan Wakely <jwakely@redhat.com> + + * src/c++17/memory_resource.cc: Adjust indentation of unnamed + namespaces. + (pool_sizes): Add comment. + (choose_block_size): Move outside preprocessor group for + gthreads targets. + * testsuite/20_util/synchronized_pool_resource/118681.cc: + Require gthreads. + +2025-07-09 H.J. Lu <hjl.tools@gmail.com> + + * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: + Updated. + +2025-07-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118681 + * testsuite/20_util/unsynchronized_pool_resource/118681.cc: Fix + deallocate argument. + +2025-07-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118681 + * src/c++17/memory_resource.cc (choose_block_size): New + function. + (synchronized_pool_resource::do_allocate): Use choose_block_size + to determine appropriate block size. + (synchronized_pool_resource::do_deallocate): Likewise + (unsynchronized_pool_resource::do_allocate): Likewise. + (unsynchronized_pool_resource::do_deallocate): Likewise + * testsuite/20_util/synchronized_pool_resource/118681.cc: New + test. + * testsuite/20_util/unsynchronized_pool_resource/118681.cc: New + test. + +2025-07-08 Jonathan Wakely <jwakely@redhat.com> + + * include/debug/forward_list (_Safe_forward_list<>::_M_swap): + Adapt to _M_this() signature change. + +2025-07-08 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119861 + * include/std/format (formatter<_Rg, _CharT>::set_separator) + (formatter<_Rg, _CharT>::set_brackets): Constrain with + (format_kind<_Rg> == range_format::sequence). + * testsuite/std/format/ranges/pr119861_neg.cc: New test. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/120914 + * include/std/span (span): Update CTAD to enable + integral constants [P3029R1]. + * include/std/mdspan (extents): ditto. + (mdspan): ditto. + * testsuite/23_containers/span/deduction.cc: Test deduction + guide. + * testsuite/23_containers/mdspan/extents/misc.cc: ditto. + * testsuite/23_containers/mdspan/mdspan.cc: ditto. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/span/contiguous_range_neg.cc: Silence + warning about unused variable myspan. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/107761 + * include/bits/version.def (mdspan): Set to 202207 and remove + no_stdname. + * include/bits/version.h: Regenerate. + * testsuite/23_containers/mdspan/version.cc: Test presence + of feature test macro. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/107761 + * include/std/mdspan (mdspan): New class. + * src/c++23/std.cc.in (mdspan): Add. + * testsuite/23_containers/mdspan/class_mandate_neg.cc: New test. + * testsuite/23_containers/mdspan/mdspan.cc: New test. + * testsuite/23_containers/mdspan/layout_like.h: Add class + LayoutLike which models a user-defined layout. + * testsuite/23_containers/mdspan/out_of_bounds_neg.cc: New file. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (__mdspan::__size): New function. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/extents/custom_integer.cc: + Delete IntLike and include "int_like.h". + * testsuite/23_containers/mdspan/extents/int_like.h: Add + IntLike. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (extents): Check prerequisite of the ctor that + static_extent(i) == dynamic_extent || extent(i) == other.extent(i). + * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: + Test the implemented prerequisite. + * testsuite/23_containers/mdspan/extents/extents_mismatch_neg.cc: New file. + +2025-07-08 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan: Check prerequisites of + layout_*::operator() with _GLIBCXX_DEBUG_ASSERTs. + * testsuite/23_containers/mdspan/layouts/debug/out_of_bounds_neg.cc: + Add tests for prerequisites. + +2025-07-08 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/queue (formatter<queue<_Tp, _Container>, _CharT>) + (formatter<priority_queue<_Tp, _Container, _Compare>, _CharT>): + Add _GLIBCXX_RESOLVE_LIB_DEFECTS comments. + +2025-07-08 François Dumont <frs.dumont@gmail.com> + + PR c++/116369 + * config/abi/pre/gnu-versioned-namespace.ver: Use new const qualified symbols. + * config/abi/pre/gnu.ver: Add new const qualified symbols. + * include/debug/safe_base.h + (_Safe_iterator_base::_M_sequence): Declare as pointer-to-const. + (_Safe_iterator_base::_M_attach, _M_attach_single): New, take pointer-to-const + _Safe_sequence_base. + (_Safe_sequence_base::_M_detach_all, _M_detach_singular, _M_revalidate_singular) + (_M_swap, _M_get_mutex): New, const qualified. + (_Safe_sequence_base::_M_attach, _M_attach_single, _M_detach, _M_detach_single): + const qualify. + * include/debug/safe_container.h (_Safe_container<>::_M_cont): Add const qualifier. + (_Safe_container<>::_M_swap_base): New. + (_Safe_container(_Safe_container&&, const _Alloc&, std::false_type)): + Adapt to use latter. + (_Safe_container<>::operator=(_Safe_container&&)): Likewise. + (_Safe_container<>::_M_swap): Likewise and take parameter as const reference. + * include/debug/safe_unordered_base.h + (_Safe_local_iterator_base::_M_safe_container): New. + (_Safe_local_iterator_base::_Safe_local_iterator_base): Take + _Safe_unordered_container_base as pointer-to-const. + (_Safe_unordered_container_base::_M_attach, _M_attach_single): New, take + container as _Safe_unordered_container_base pointer-to-const. + (_Safe_unordered_container_base::_M_local_iterators, _M_const_local_iterators): + Add mutable. + (_Safe_unordered_container_base::_M_detach_all, _M_swap): New, const qualify. + (_Safe_unordered_container_base::_M_attach_local, _M_attach_local_single) + (_M_detach_local, _M_detach_local_single): Add const qualifier. + * include/debug/safe_unordered_container.h (_Safe_unordered_container::_M_self()): New. + * include/debug/safe_unordered_container.tcc + (_Safe_unordered_container::_M_invalidate_if, _M_invalidated_local_if): Use latter. + * include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach, _M_attach_single): + Take _Safe_sequence_base as pointer-to-const. + (_Safe_iterator<>::_M_get_sequence): Add const_cast and comment about it. + * include/debug/safe_local_iterator.h (_Safe_local_iterator<>): Replace usages + of _M_sequence member by _M_safe_container(). + (_Safe_local_iterator<>::_M_attach, _M_attach_single): Take + _Safe_unordered_container_base as pointer-to-const. + (_Safe_local_iterator<>::_M_get_sequence): Rename into... + (_Safe_local_iterator<>::_M_get_ucontainer): ...this. Add necessary const_cast and + comment to explain it. + (_Safe_local_iterator<>::_M_is_begin, _M_is_end): Adapt. + * include/debug/safe_local_iterator.tcc: Adapt. + * include/debug/safe_sequence.h + (_Safe_sequence<>::_M_invalidate_if, _M_transfer_from_if): Add const qualifier. + * include/debug/safe_sequence.tcc: Adapt. + * include/debug/deque (std::__debug::deque::erase): Adapt to use new const + qualified methods. + * include/debug/formatter.h: Adapt. + * include/debug/forward_list (_Safe_forward_list::_M_this): Add const + qualification and return pointer for consistency with 'this' keyword. + (_Safe_forward_list::_M_swap_aux): Rename into... + (_Safe_forward_list::_S_swap_aux): ...this and take sequence as const reference. + (forward_list<>::resize): Adapt to use const methods. + * include/debug/list (list<>::resize): Likewise. + * src/c++11/debug.cc: Adapt to const qualification. + * testsuite/util/testsuite_containers.h + (forward_members_unordered::forward_members_unordered): Add check on local_iterator + conversion to const_local_iterator. + (forward_members::forward_members): Add check on iterator conversion to + const_iterator. + * testsuite/23_containers/unordered_map/const_container.cc: New test case. + * testsuite/23_containers/unordered_multimap/const_container.cc: New test case. + * testsuite/23_containers/unordered_multiset/const_container.cc: New test case. + * testsuite/23_containers/unordered_set/const_container.cc: New test case. + * testsuite/23_containers/vector/debug/mutex_association.cc: Adapt. + +2025-07-07 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120949 + * include/bits/stl_iterator.h (__normal_iterator): Fix order of + always_inline and nodiscard attributes for Clang compatibility. + +2025-07-07 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/util/testsuite_hooks.h (VERIFY): Define as variadic + macro. + * testsuite/ext/verify_neg.cc: New test. + +2025-07-07 Jonathan Wakely <jwakely@redhat.com> + + * include/std/mdspan (__mapping_of): Add template keyword. + +2025-07-07 XU Kailiang <xu2k3l4@outlook.com> + Tomasz Kaminski <tkaminsk@redhat.com> + + PR libstdc++/117214 + * include/bits/chrono_io.h (_ChronoSpec::_M_time_only): Remove. + (_ChronoSpec::_M_time_point): Define. + (__formatter_chrono::_M_parse): Use __parts to determine + interpretation of j. + (__formatter_chrono::_M_check_ok): Define. + (__formatter_chrono::_M_format_to): Invoke _M_check_ok. + (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B): Move + exception throwing to _M_check_ok. + (__formatter_chrono::_M_j): Use _M_needs to define interpretation. + (__formatter_duration::_S_spec_for): Set _M_time_point. + * testsuite/std/time/format/format.cc: Test for exception for !ok() + months/weekday. + * testsuite/std/time/format/pr117214_custom_timeput.cc: New + test. + +2025-07-07 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120976 + * include/std/format (formatter<__float128, _Char_T): Define if + _GLIBCXX_FORMAT_F128 == 2. + +2025-07-06 Patrick Palka <ppalka@redhat.com> + + * include/bits/ranges_algo.h (shift_left, shift_right): Guard + with __glibcxx_shift >= 201806L. + (ranges::__shift_left_fn, ranges::shift_left): Define for C++23. + (ranges::__shift_right_fn, ranges::shift_right): Likewise. + * include/bits/version.def (shift): Update for C++23. + * include/bits/version.h: Regenerate. + * src/c++23/std.cc.in: Add ranges::shift_left/right. + * testsuite/25_algorithms/shift_left/constrained.cc: New test, + based off of 1.cc. + * testsuite/25_algorithms/shift_right/constrained.cc: New test, + based off of 1.cc. + +2025-07-04 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (__formatter_duration::_S_spec_for): + Add default case to switch and use __builtin_unreachable. + +2025-07-04 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_algobase.h (__size_to_integer): Move + misplaced unsigned keyword on __size_to_integer overloads for + __GLIBCXX_TYPE_INT_N_3 integer type. + +2025-07-03 Nathan Myers <ncm@cantrip.org> + + * include/bits/version.def: Fix typo. + * include/bits/version.h: Rebuilt. + +2025-07-03 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/120934 + * include/std/ranges (concat_view::end): Refine condition + for returning an iterator instead of default_sentinel as + per the updated P/R for LWG 4166. + * testsuite/std/ranges/concat/1.cc (test05): New test. + +2025-07-03 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119742 + * include/bits/version.def: Add preprocessor symbol. + * include/bits/version.h: Add preprocessor symbol. + * include/std/bitset: Add constructor. + * testsuite/20_util/bitset/cons/1.cc: Fix. + * testsuite/20_util/bitset/cons/6282.cc: Fix. + * testsuite/20_util/bitset/cons/string_view.cc: Test new ctor. + * testsuite/20_util/bitset/cons/string_view_wide.cc: Test new ctor. + +2025-07-03 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120931 + * include/bits/stl_uninitialized.h (__uninitialized_fill<true>): + Fix typo resulting in call to __do_uninit_copy instead of + __do_uninit_fill. + * testsuite/20_util/specialized_algorithms/uninitialized_fill/120931.cc: + New test. + +2025-07-02 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_iterator.h (__normal_iterator): Make all + non-member operators hidden friends, except ... + (operator<=>(__normal_iterator<I,C>, __normal_iterator<I,C>)): + Remove. + * src/c++11/string-inst.cc: Remove explicit instantiations of + operators that are no longer templates. + * src/c++23/std.cc.in (__gnu_cxx): Do not export operators for + __normal_iterator. + +2025-07-02 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119744 + * include/std/ranges: View ctors become explicit. + +2025-07-01 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/120789 + * include/bits/ranges_algo.h (__remove_if_fn::operator()): Use + ranges::iter_move(iter) instead of std::move(*iter). + * testsuite/25_algorithms/remove_if/120789.cc: New test. + +2025-07-01 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/120789 + * include/bits/ranges_algo.h (__unique_fn::operator()): Use + ranges::iter_move(iter) instead of std::move(*iter). + * testsuite/25_algorithms/unique/120789.cc: New test. + +2025-07-01 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (default_accessor): New class. + * src/c++23/std.cc.in: Register default_accessor. + * testsuite/23_containers/mdspan/accessors/default.cc: New test. + * testsuite/23_containers/mdspan/accessors/default_neg.cc: New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (shuffle_fn::operator()): + Reimplement directly, based on the stl_algo.h implementation. + * testsuite/25_algorithms/shuffle/constrained.cc (test02): + New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__sample_fn::operator()): + Reimplement the forward_iterator branch directly, based + on the stl_algo.h implementation. Add explicit cast to + _Out's difference_type in the !forward_iterator branch. + * testsuite/25_algorithms/sample/constrained.cc (test02): + New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__detail::__introselect): New, + based on the stl_algo.h implementation. + (nth_element_fn::operator()): Reimplement in terms of the above. + * testsuite/25_algorithms/nth_element/constrained.cc: + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__detail::__find_if_not_n): New, + based on the stl_algo.h implementation. + (__detail::__stable_partition_adaptive): Likewise. + (__stable_partition_fn::operator()): Reimplement in terms of + the above. + * testsuite/25_algorithms/stable_partition/constrained.cc + (test03): New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__detail::__move_merge): New, + based on the stl_algo.h implementation. + (__detail::__merge_sort_loop): Likewise. + (__detail::__chunk_insertion_sort): Likewise. + (__detail::__merge_sort_with_buffer): Likewise. + (__detail::__stable_sort_adaptive): Likewise. + (__detail::__stable_sort_adaptive_resize): Likewise. + (__detail::__inplace_stable_sort): Likewise. + (__stable_sort_fn::operator()): Reimplement in terms of the above. + * testsuite/25_algorithms/stable_sort/constrained.cc: + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__detail::__move_merge_adaptive): + New, based on the stl_algo.h implementation. + (__detail::__move_merge_adaptive_backward): Likewise. + (__detail::__rotate_adaptive): Likewise. + (__detail::__merge_adaptive): Likewise. + (__detail::__merge_adaptive_resize): Likewise. + (__detail::__merge_without_buffer): Likewise. + (__inplace_merge_fn::operator()): Reimplement in terms of the + above. + * testsuite/25_algorithms/inplace_merge/constrained.cc (test03): + New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + PR libstdc++/118209 + * include/bits/max_size_type.h (__bit_width): New explicit + specialization for __max_size_type. + * include/bits/ranges_algo.h (__detail::__move_median_to_first): + New, based on the stl_algo.h implementation. + (__detail::__unguarded_liner_insert): Likewise. + (__detail::__insertion_sort): Likewise. + (__detail::__sort_threshold): Likewise. + (__detail::__unguarded_insertion_sort): Likewise. + (__detail::__final_insertion_sort): Likewise. + (__detail::__unguarded_partition): Likewise. + (__detail::__unguarded_partition_pivot): Likewise. + (__detail::__heap_select): Likewise. + (__detail::__partial_sort): Likewise. + (__detail::__introsort_loop): Likewise. + (__sort_fn::operator()): Reimplement in terms of the above. + * testsuite/25_algorithms/sort/118209.cc: New test. + * testsuite/25_algorithms/sort/constrained.cc (test03): New test. + +2025-06-27 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/100795 + * include/bits/ranges_algo.h (__detail::__push_heap): New, + based on the stl_heap.h implementation. + (__push_heap_fn::operator()): Reimplement in terms of the above. + (__detail::__adjust_heap): New, based on the stl_heap.h + implementation. + (__deatil::__pop_heap): Likewise. + (__pop_heap_fn::operator()): Reimplement in terms of the above. + (__make_heap_fn::operator()): Likewise. + (__sort_heap_fn::operator()): Likewise. + * testsuite/25_algorithms/heap/constrained.cc (test03): New + test. + +2025-06-27 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/110739 + * include/bits/chrono_io.h (__formatter_chrono::_S_empty_fs): Define. + (__formatter_chrono::_S_str_d2): Use _S_str_d3 for 3+ digits and + place allways_inline attribute after comment. + (__formatter_chrono::_S_str_d3): Extracted from _S_str_d2. + (__formatter_chrono::_M_H_I, __formatter_chrono::_M_R_X): Replace + _S_empty_spec with _S_empty_fs(). + (__formatter_chrono::_M_j): Likewise and use _S_str_d3 in common + case. + (__format::operator-(_ChronoParts, _ChronoParts)) + (__format::operator-=(_ChronoParts, _ChronoParts)) + (__formatter_chrono::_S_fill_two_digits) + (__formatter_chrono::_S_str_d1): Place always_inline attribute + after comment. + +2025-06-27 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/110739 + * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): + Rename _Out to _OutIter for consistency, and update calls + to specifier functions. + (__formatter_chrono::_M_wi, __formatter_chrono::_M_C_y_Y) + (__formatter_chrono::_M_D_x, __formatter_chrono::_M_d_e) + (__formatter_chrono::_M_F, __formatter_chrono::_M_g_G) + (__formatter_chrono::_M_H_I, __formatter_chrono::_M_j) + (__formatter_chrono::_M_m, __formatter_chrono::_M_M) + (__formatter_chrono::_M_q, __formatter_chrono::_M_R_X) + (__formatter_chrono::_M_u_w, __formatter_chrono::_M_U_V_W) + (__formatter_chrono::_M_z, __formatter_chrono::_M_z): + Remove _FormatContext parameter, and introduce _OutIter + for __out type. + (__formatter_chrono::_M_a_A, __formatter_chrono::_M_B_b) + (__formatter_chrono::_M_p, __formatter_chrono::_M_Q) + (__formatter_chrono::_M_r, __formatter_chrono::_M_S) + (__formatter_chrono::_M_subsecs, __formatter_chrono::_M_T): + Introduce separate _OutIter template parameter for __out. + (__formatter_chrono::_M_c, __formatter_chrono::_M_T): + Likewise, and adjust calls to specifiers functions. + * testsuite/std/time/format/empty_spec.cc: Make underlying + type for Rep configurable. + +2025-06-27 Iain Sandoe <iain@sandoe.co.uk> + + * config/abi/pre/gnu.ver: Keep the closing brace of the + CXXABI_1.3.17 symbol group together with the identifier + for the inherited group. + +2025-06-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/110739 + * include/bits/chrono_io.h (__formatter_chrono::_M_use_locale_fmt): + Define. + (__formatter_chrono::_M_locale_fmt): Moved to front of the class. + (__formatter_chrono::_M_format_to): Construct and initialize + struct tm and call _M_locale_fmt if needed. + (__formatter_chrono::_M_c_r_x_X): Split into separate methods. + (__formatter_chrono::_M_c, __formatter_chrono::_M_r): Define. + (__formatter_chrono::_M_D): Renamed to _M_D_x. + (__formatter_chrono::_M_D_x): Renamed from _M_D. + (__formatter_chrono::_M_R_T): Split into _M_R_X and _M_T. + (__formatter_chrono::_M_R_X): Extracted from _M_R_T. + (__formatter_chrono::_M_T): Define in terms of _M_R_X and _M_subsecs. + (__formatter_chrono::_M_subsecs): Extracted from _M_S. + (__formatter_chrono::_M_S): Replaced __mod with __subs argument, + removed _M_locale_fmt call, and delegate to _M_subsecs. + (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_d_e) + (__formatter_chrono::_M_H_I, __formatter_chrono::_M_m) + (__formatter_chrono::_M_u_w, __formatter_chrono::_M_U_V_W): Remove + __mod argument and call to _M_locale_fmt. + +2025-06-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/110739 + * include/bits/chrono_io.h (__format::__no_timezone_available): + Removed, replaced with separate throws in formatter for + __local_time_fmt + (__format::_ChronoParts): Defined additional enumertors and + declared as enum class. + (__format::operator&(_ChronoParts, _ChronoParts)) + (__format::operator&=(_ChronoParts&, _ChronoParts)) + (__format::operator-(_ChronoParts, _ChronoParts)) + (__format::operator-=(_ChronoParts&, _ChronoParts)) + (__format::operator==(_ChronoParts, decltype(nullptr))) + (_ChronoSpec::_M_time_only, _ChronoSpec::_M_floating_point_rep) + (_ChronoSpec::_M_custom_rep, _ChronoSpec::_M_needed) + (_ChronoSpec::_M_needs, __format::_ChronoData): Define. + (__format::__formatter_chrono): Redefine to accept _ChronoData. + (__formatter_chrono::_M_format_to_ostream): Moved to + __formatter_duration. + (__format::__formatter_duration): Define. + (__formatter_chrono_info::format): Pass value-constructed + _ChronoData. + (std::formatter<chrono::day, _CharT>) + (std::formatter<chrono::month, _CharT>) + (std::formatter<chrono::year, _CharT>) + (std::formatter<chrono::weekday, _CharT>) + (std::formatter<chrono::weekday_indexed, _CharT>) + (std::formatter<chrono::weekday_last, _CharT>) + (std::formatter<chrono::month_day, _CharT>) + (std::formatter<chrono::month_day_last, _CharT>) + (std::formatter<chrono::month_weekday, _CharT>) + (std::formatter<chrono::month_weekday_indexed, _CharT>) + (std::formatter<chrono::month_weekday_last, _CharT>) + (std::formatter<chrono::year_month, _CharT>) + (std::formatter<chrono::year_month_day, _CharT>) + (std::formatter<chrono::year_month_day_last, _CharT>) + (std::formatter<chrono::year_month_weekday, _CharT>) + (std::formatter<chrono::year_month_weekday_indexed, _CharT>) + (std::formatter<chrono::year_month_weekday_last, _CharT>): + Construct _ChronoData in format, and configure _M_needed in + _ChronoSpec. + (std::formatter<chrono::duration<_Rep, _Period>, _CharT>) + (std::formatter<chrono::hh_mm_ss<_Duration>, _CharT>) + (std::formatter<chrono::sys_time<_Duration>, _CharT>) + (std::formatter<chrono::utc_time<_Duration>, _CharT>) + (std::formatter<chrono::tai_time<_Duration>, _CharT>) + (std::formatter<chrono::gps_time<_Duration>, _CharT>) + (std::formatter<chrono::file_time<_Duration>, _CharT>) + (std::formatter<chrono::local_time<_Duration>, _CharT>) + (std::formatter<chrono::_detail::__local_time_fmt<_Duration>, _CharT>): + Reworked in terms of __formatter_duration and _ChronoData. + (std::formatter<chrono::_detail::__utc_leap_second<_Duration>, _CharT>): + Removed. + (_Parser<_Duration>::operator()): Adjusted for _ChronoParts + being enum class. + * include/std/chrono (__detail::__utc_leap_second): Removed, + replaced with simply bumping _M_seconds in _ChronoData. + * testsuite/std/time/format/empty_spec.cc: Updated %S integral + ouput. + +2025-06-26 Jakub Jelinek <jakub@redhat.com> + + * include/bits/version.def (exception_ptr_cast): Add. + * include/bits/version.h: Regenerate. + * libsupc++/exception: Define __glibcxx_want_exception_ptr_cast before + including bits/version.h. + * libsupc++/exception_ptr.h (std::exception_ptr_cast): Define. + (std::__exception_ptr::exception_ptr::_M_exception_ptr_cast): Declare. + * libsupc++/eh_ptr.cc + (std::__exception_ptr::exception_ptr::_M_exception_ptr_cast): Define. + * src/c++23/std.cc.in (std::exception_ptr_cast): Export. + * config/abi/pre/gnu.ver: Export + _ZNKSt15__exception_ptr13exception_ptr21_M_exception_ptr_castERKSt9type_info + at CXXABI_1.3.17. + * testsuite/util/testsuite_abi.cc (check_version): Allow CXXABI_1.3.17. + * testsuite/18_support/exception_ptr/exception_ptr_cast.cc: New test. + +2025-06-26 Jakub Jelinek <jakub@redhat.com> + + * include/bits/version.def (type_order): New. + * include/bits/version.h: Regenerate. + * libsupc++/compare: Define __glibcxx_want_type_order before + including bits/version.h. + (std::type_order, std::type_order_v): New trait and template variable. + * src/c++23/std.cc.in (std::type_order, std::type_order_v): Export. + * testsuite/18_support/comparisons/type_order/1.cc: New test. + +2025-06-25 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/precision.cc: New tests. + +2025-06-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120650 + * include/bits/chrono_io.h + (formatter<chrono::month_day_last,_CharT>::parse): Call _M_parse with + only Month being available. + * testsuite/std/time/format/data_not_present_neg.cc: New test. + +2025-06-24 Patrick Palka <ppalka@redhat.com> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120717 + * include/std/type_traits (__maybe_complete_object_type): New + helper trait, factored out from ... + (__is_complete_or_unbounded): ... here. Only check sizeof on a + __maybe_complete_object_type type. Fix formatting. + * testsuite/20_util/is_complete_or_unbounded/120717.cc: New test. + +2025-06-16 Jason Merrill <jason@redhat.com> + + * testsuite/20_util/is_complete_or_unbounded/memoization.cc + * testsuite/20_util/is_complete_or_unbounded/memoization_neg.cc: + Expect -Wsfinae-incomplete. + +2025-06-13 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120397 + * include/bits/stl_uninitialized.h (_UninitDestroyGuard<I,void>): + Add new member function _S_destroy and call it from the + destructor (for C++17 only). + * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/120397.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/120397.cc: + New test. + +2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120648 + * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): + Handle %c, %r, %x and %X by passing them to _M_c_r_x_X. + (__formatter_chrono::_M_c_r_x_X): Reworked from _M_c. + (__formatter_chrono::_M_c): Renamed into above. + (__formatter_chrono::_M_r, __formatter_chrono::_M_x) + (__formatter_chrono::_M_X): Removed. + * testsuite/std/time/format/pr117214.cc: New tests for %r, %x, + %X with date, time and durations. + +2025-06-13 Patrick Palka <ppalka@redhat.com> + + * include/bits/ranges_algo.h (__detail::__by_ref_or_value_fn): New. + (__detail::_Comp_proj): New. + (__detail::__make_comp_proj): Use it instead. + (__detail::_Pred_proj): New. + (__detail::__make_pred_proj): Use it instead. + +2025-06-13 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR c++/120644 + * include/std/optional (format_kind): Do not use `auto`. + +2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/23_containers/vector/bool/format.cc: Replaced _CharT + with CharT. + * testsuite/std/format/debug.cc: Likewise. + * testsuite/std/format/ranges/adaptors.cc: Likewise. + * testsuite/std/format/ranges/formatter.cc: Likewise. + * testsuite/std/format/ranges/map.cc: Likewise. + * testsuite/std/format/ranges/sequence.cc: Likewise. + * testsuite/std/format/ranges/string.cc: Likewise. + * testsuite/std/format/tuple.cc: Likewise. + * testsuite/std/time/format/empty_spec.cc: Likewise. + * testsuite/std/time/format/pr120114.cc: Likewise. + * testsuite/std/time/format/pr120481.cc: Likewise. + * testsuite/std/time/format/precision.cc: Likewise. + +2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_format): + Remove handling of empty _M_chrono_specs. + (__formatter_chrono::_M_format_to_ostream): Changed to accept + only chrono::duration and made public. + (std::formatter<chrono::duration<_Rep, _Period>, _CharT>): + Configure __defSpec and handle empty chrono-spec locally. + +2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__format::__formatter_chrono_info) + [_GLIBCXX_USE_CXX11_ABI || ! _GLIBCXX_USE_DUAL_ABI]: Define. + (std::formatter<chrono::sys_info, _CharT>) + (std::formatter<chrono::local_inf, _CharT>): Delegate to + __format::__formatter_chrono_info. + (std::operator<<(basic_ostream<_CharT, _Traits>& const sys_info&)): + Use format on sys_info with empty format spec. + +2025-06-13 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/whitespace.cc: New test. + +2025-06-12 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR libstdc++/119496 + * include/bits/stl_algo.h: Adjust calls to requested_size. + * include/bits/stl_tempbuf.h (requested_size): Rename with + an _M_ prefix. + * testsuite/17_intro/names.cc: Add a #define for + requested_size. + +2025-06-12 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/formatfwd.h (format_kind): Move the definition + (and some supporting code) from <format>. + * include/std/format (format_kind): Likewise. + * include/bits/version.def (optional_range_support): Add + the feature-testing macro. + * include/bits/version.h: Regenerate. + * include/std/optional (iterator, const_iterator, begin, end): + Add range support. + (enable_view): Specialize for std::optional. + (format_kind): Specialize for std::optional. + * testsuite/20_util/optional/range.cc: New test. + * testsuite/20_util/optional/version.cc: Test the new + feature-testing macro. + +2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (_ChronoFormats::_S_ftz) + (_ChronoFormats::_S_ft, _ChronoFormats::_S_t): Define. + (__formatter_chrono::_M_format_to_ostream): Remove handling for + time_points. + (std::formatter<chrono::hh_mm_ss<_Dur>, _CharT>) + (std::formatter<chrono::sys_time<_Dur>, _CharT>) + (std::formatter<chrono::utc_time<_Dur>, _CharT>) + (std::formatter<chrono::tai_time<_Dur>, _CharT>) + (std::formatter<chrono::gps_time<_Dur>, _CharT>) + (std::formatter<chrono::file_time<_Dur>, _CharT>) + (std::formatter<chrono::local_time<_Dur>, _CharT>) + (std::formatter<chrono::__detail::__local_time_fmt<_Dur>, _CharT>) + (std::formatter<chrono::zoned_time<_Dur>, _CharT>): + Define __defSpec, and pass it as argument to _M_prase and + constructor of __formatter_chrono. + +2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__format::_ChronoFormats): Define. + (__formatter_chrono::__formatter_chrono()) + (__formatter_chrono::__formatter_chrono(_ChronoSpec<_CharT>)): Define. + (__formatter_chrono::_M_parse): Add parameter with default spec, + and merge it with new values. Handle '%\0' as weekday index + specifier. + (__formatter_chrono::_M_a_A, __formatter_chrono::_M_b_B) + (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_d_e) + (__formatter_chrono::_M_F): Support _M_debug flag. + (__formatter_chrono::_M_wi, __formatter_chrono::_S_weekday_index): + Define. + (std::formatter<chrono::day, _CharT>) + (std::formatter<chrono::month, _CharT>) + (std::formatter<chrono::year, _CharT>) + (std::formatter<chrono::weekday, _CharT>) + (std::formatter<chrono::weekday_indexed, _CharT>) + (std::formatter<chrono::weekday_last, _CharT>) + (std::formatter<chrono::month_day, _CharT>) + (std::formatter<chrono::month_day_last, _CharT>) + (std::formatter<chrono::month_weekday, _CharT>) + (std::formatter<chrono::month_weekday_last, _CharT>) + (std::formatter<chrono::year_month, _CharT>) + (std::formatter<chrono::year_month_day, _CharT>) + (std::formatter<chrono::year_month_day_last, _CharT>) + (std::formatter<chrono::year_month_weekday, _CharT>) + (std::formatter<chrono::year_month_weekday_last, _CharT>): + Define __defSpec, and pass it as argument to _M_parse and + constructor of __formatter_chrono. + +2025-06-12 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/mdspan (__mdspan::__mapping_alike): Rename template + parameter from M to _M_p. + (layout_right::mapping): Replace class with typename in template + head. + (layout_stride::mapping): Fix typo in comment. + * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: + Changed B to function. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (layout_left): Strengthen the exception + guarantees of layout_left::mapping(layout_stride::mapping). + * testsuite/23_containers/mdspan/layouts/ctors.cc: + Simplify tests to reflect the change. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: Add + tests for layout_stride. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Add test for + layout_stride and the interaction with other layouts. + * testsuite/23_containers/mdspan/layouts/empty.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/mapping.cc: Ditto. + * testsuite/23_containers/mdspan/layouts/stride.cc: New test. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (layout_stride): New class. + * src/c++23/std.cc.in: Add layout_stride. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: Add + tests for layout_right. + * testsuite/23_containers/mdspan/layouts/ctors.cc: Add tests for + layout_right and the interaction with layout_left. + * testsuite/23_containers/mdspan/layouts/empty.cc: ditto. + * testsuite/23_containers/mdspan/layouts/mapping.cc: ditto. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (layout_right): New class. + * src/c++23/std.cc.in: Add layout_right. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc: New test. + * testsuite/23_containers/mdspan/layouts/ctors.cc: New test. + * testsuite/23_containers/mdspan/layouts/empty.cc: New test. + * testsuite/23_containers/mdspan/layouts/mapping.cc: New test. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan (layout_left): New class. + * src/c++23/std.cc.in: Add layout_left. + +2025-06-12 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan(__mdspan::_ExtentsStorage): Change name + of private member _M_dynamic_extens to _M_dyn_exts. + (extents): Change name of private member from _M_dynamic_extents + to _M_exts. + Fix two instances of whitespace errors. + * testsuite/23_containers/mdspan/extents/ctor_default.cc: Fix + integer comparison with cmp_equal. + +2025-06-12 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/test.xml: Improve discussion of copyright + notices in new test cases. + * doc/html/manual/test.html: Regenerate. + +2025-06-12 Jonathan Wakely <jwakely@redhat.com> + + * scripts/create_testsuite_files: Remove incorrect comment about + filtering out wchar_t tests. + +2025-06-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120625 + * include/std/format (__format::__disabled): Remove. + (__formatter_disabled): New type. + (formatter<char*, wchar_t>, formatter<const char*, wchar_t>) + (formatter<char[N], wchar_t>, formatter<string, wchar_t>) + (formatter<string_view, wchar_t>): Use __formatter_disabled as + base class instead of formatter<__disabled, wchar_t>. + * testsuite/std/format/formatter/120625.cc: New test. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * doc/doxygen/user.cfg.in (PREDEFINED): Remove -D prefixes from + some macros. Define _GLIBCXX_USE_BUILTIN_TRAIT and + _GLIBCXX_HAVE_ICONV macros. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * libsupc++/exception: Remove redundant parentheses and adjust + whitespace. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits: Restore @cond and @endcond balance. + +2025-06-11 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/empty_spec.cc: New tests. + * testsuite/std/time/format/precision.cc: New test. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_construct.h: Replace std::__addressof with + std::addressof in code that doesn't need to compile as C++98. + Replace std::__is_constant_evaluated with + std::is_constant_evaluated in code that doesn't need to compile + as C++17 or earlier. + * include/bits/stl_uninitialized.h: Likewise for __addressof. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/test.xml: Remove note about unused 'test' + variables for old definition of VERIFY. + * doc/html/manual/test.html: Regenerate. + * testsuite/experimental/net/buffer/arithmetic.cc: Remove unused + variable. + * testsuite/experimental/net/buffer/const.cc: Likewise. + * testsuite/experimental/net/buffer/mutable.cc: Likewise. + * testsuite/experimental/net/buffer/size.cc: Likewise. + * testsuite/experimental/net/timer/waitable/cons.cc: Likewise. + * testsuite/experimental/net/timer/waitable/dest.cc: Likewise. + * testsuite/experimental/net/timer/waitable/ops.cc: Likewise. + * testsuite/ext/special_functions/airy_ai/check_value.cc: + Likewise. + * testsuite/ext/special_functions/airy_bi/check_value.cc: + Likewise. + * testsuite/ext/special_functions/conf_hyperg/check_value.cc: + Likewise. + * testsuite/ext/special_functions/hyperg/check_value.cc: + Likewise. + * testsuite/special_functions/01_assoc_laguerre/check_value.cc: + Likewise. + * testsuite/special_functions/02_assoc_legendre/check_value.cc: + Likewise. + * testsuite/special_functions/02_assoc_legendre/pr86655.cc: + Likewise. + * testsuite/special_functions/03_beta/check_value.cc: Likewise. + * testsuite/special_functions/04_comp_ellint_1/check_value.cc: + Likewise. + * testsuite/special_functions/05_comp_ellint_2/check_value.cc: + Likewise. + * testsuite/special_functions/06_comp_ellint_3/check_value.cc: + Likewise. + * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: + Likewise. + * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: + Likewise. + * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: + Likewise. + * testsuite/special_functions/10_cyl_neumann/check_value.cc: + Likewise. + * testsuite/special_functions/11_ellint_1/check_value.cc: + Likewise. + * testsuite/special_functions/12_ellint_2/check_value.cc: + Likewise. + * testsuite/special_functions/13_ellint_3/check_value.cc: + Likewise. + * testsuite/special_functions/14_expint/check_value.cc: + Likewise. + * testsuite/special_functions/15_hermite/check_value.cc: + Likewise. + * testsuite/special_functions/16_laguerre/check_value.cc: + Likewise. + * testsuite/special_functions/17_legendre/check_value.cc: + Likewise. + * testsuite/special_functions/18_riemann_zeta/check_value.cc: + Likewise. + * testsuite/special_functions/19_sph_bessel/check_value.cc: + Likewise. + * testsuite/special_functions/20_sph_legendre/check_value.cc: + Likewise. + * testsuite/special_functions/20_sph_legendre/pr86655.cc: + Likewise. + * testsuite/special_functions/21_sph_neumann/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/01_assoc_laguerre/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/02_assoc_legendre/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/02_assoc_legendre/pr86655.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/03_beta/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/04_comp_ellint_1/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/05_comp_ellint_2/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/06_comp_ellint_3/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/07_conf_hyperg/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/15_expint/check_value_neg.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/20_riemann_zeta/check_value_neg.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/22_sph_legendre/check_value.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/22_sph_legendre/pr86655.cc: + Likewise. + * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: + Likewise. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * include/std/sstream: Adjust whitespace. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120390 + * include/bits/stl_construct.h (_Destroy_aux::__destroy_n): New + static member function. + (_Destroy_aux<true>::__destroy_n): Likewise. + (_Destroy_n_aux): Remove. + (_Destroy(ForwardIterator, ForwardIterator)): Remove + static_assert. Use is_trivially_destructible instead of + __has_trivial_destructor. + (_Destroy_n): Likewise. Use _Destroy_aux::__destroy_n instead of + _Destroy_n_aux::__destroy_n. + * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc: + Adjust dg-error strings. Move destroy_n tests to ... + * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc: + New test. + * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: + Adjust dg-error strings. + * testsuite/23_containers/vector/cons/destructible_neg.cc: + Likewise. + +2025-06-11 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: + Only check get_allocator() for new string ABI. + * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: + Likewise. + * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: + Likewise. + * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: + Likewise. + +2025-06-10 Patrick Palka <ppalka@redhat.com> + + * include/bits/max_size_type.h (__max_size_type::_M_val): Make + public instead of private. + (__max_size_type::_M_msb): Likewise. + (__max_diff_type::_M_rep): Likewise. + * testsuite/std/ranges/iota/max_size_type.cc: Verify + __max_diff_type and __max_size_type are structural. + +2025-06-10 Yihan Wang <yronglin777@gmail.com> + Jonathan Wakely <jwakely@redhat.com> + + * include/std/tuple (__can_make_from_tuple): New variable + template. + (__make_from_tuple_impl): Add static_assert. + (make_from_tuple): Constrain using __can_make_from_tuple. + * testsuite/20_util/tuple/dr3528.cc: New test. + +2025-06-09 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119741 + * include/std/sstream: full implementation, really just + decls, requires clause and plumbing. + * include/bits/version.def, include/bits/version.h: + new preprocessor symbol + __cpp_lib_sstream_from_string_view. + * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: + New tests. + +2025-06-08 John David Anglin <danglin@gcc.gnu.org> + + * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. + +2025-06-06 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/30_threads/semaphore/1.cc: Check type properties and + max() values. + * testsuite/30_threads/semaphore/3.cc: New test. + * testsuite/30_threads/semaphore/cons_neg.cc: New test. + +2025-06-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/semaphore_base.h (_Select_semaphore_impl): Rename + to _Semaphore_impl and use std::conditional_t instead of an + immediately invoked lambda expression. + * include/std/semaphore (counting_semaphore): Adjust to use new + name. + +2025-06-06 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/30_threads/barrier/1.cc: Require hosted. Only + require gthreads for non-linux targets. + * testsuite/30_threads/barrier/2.cc: Likewise. + * testsuite/30_threads/semaphore/1.cc: Likewise. + * testsuite/30_threads/semaphore/2.cc: Likewise. + * testsuite/30_threads/semaphore/cons.cc: Likewise. + * testsuite/30_threads/semaphore/least_max_value_neg.cc: + Likewise. + * testsuite/30_threads/semaphore/try_acquire.cc: Likewise. + +2025-06-06 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/120432 + * include/std/flat_map (flat_map::operator[]): Make the + non-template overloads call try_emplace directly. Remove + non-standard same_as constraint on the template overload. + * testsuite/23_containers/flat_map/1.cc (test08): New test. + +2025-06-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__atomic_wait_address_until_v): + Add assertion to prevent use with proxy waits. + (__atomic_wait_address_for_v): Likewise. + * include/bits/atomic_wait.h (__atomic_wait_address_v): + Likewise. + +2025-06-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_wait.h (__atomic_wait_address_v): Add bare + wait flag. + * include/bits/semaphore_base.h (__semaphore_base): Rename to + __semaphore_impl. Replace local variable and predicate lambdas + with _Available struct. + (__platform_semaphore_impl): New class template. + (__semaphore_impl): Remove alias template. + (_Select_semaphore_impl): New alias template. + * include/std/semaphore (counting_semaphore): Use + _Select_semaphore_impl. + +2025-06-06 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120565 + * include/bits/chrono_io.h + (operator<<(basic_ostream<_CharT, _Traits>&, const sys_info&)) + (operator<<(basic_ostream<_CharT, _Traits>&, const local_info&)): + Support wchar_t as _CharT. + * testsuite/std/time/format/empty_spec.cc: Instantiated test_infos for + wchar_t and increase timeout. + +2025-06-06 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/empty_spec.cc: New tests and increased + timeout. + +2025-06-05 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120548 + * include/std/format (__formatter_fp::_M_localize): Do not + include a leading sign character in the string to be grouped. + * testsuite/std/format/functions/format.cc: Check grouping when + sign is present in the output. + +2025-06-05 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119152 + * src/c++23/std.cc.in (std::indirect, pmr::indirect) + [__cpp_lib_indirect] + (std::polymorphic, pmr::polymorphic) [__cpp_lib_polymorphic]: Export. + +2025-06-05 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120481 + * include/bits/chrono_io.h (__format::_S_chars): Reorder so it + contains "-{}". + (__format::_S_colon, __format::_S_slash, __format::_S_space) + (__format::_S_plus_minus): Updated starting indicies. + (__format::_S_minus_empty_spec): Define. + (__formatter_chrono::_M_C_y_Y, __formatter_chrono::_M_R_T): + Rework implementation. + (__formatter_chrono::_M_d_e, __formatter_chrono::_M_F) + (__formatter_chrono::_M_m, __formatter_chrono::_M_u_w) + (__formatter_chrono::_M_H_I, __formatter_chrono::_M_p): + Handle multi digits values. + (__formatter_chrono::_S_digit): Return string view. + (__formatter_chrono::_S_str_d1, __formatter_chrono::_S_str_d2) + (__formatter_chrono::_S_fill_two_digits): Define. + * testsuite/std/time/format/empty_spec.cc: Update test for + year_month_day, that uses '%F'. + * testsuite/std/time/format/pr120481.cc: New test. + +2025-06-05 Nathan Myers <ncm@cantrip.org> + + Revert: + 2025-06-04 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119741 + * include/std/sstream: full implementation, really just + decls, requires clause and plumbing. + * include/bits/version.def, include/bits/version.h: + new preprocessor symbol + __cpp_lib_sstream_from_string_view. + * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: + New tests. + +2025-06-04 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/std/time/format/empty_spec.cc: Only test time zones + for cxx11 string ABI. + +2025-06-04 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/99832 + * include/bits/chrono.h (system_clock::to_time_t): Add + always_inline attribute to be agnostic to the underlying type of + time_t. + (system_clock::from_time_t): Add always_inline for consistency + with to_time_t. + * testsuite/20_util/system_clock/99832.cc: New test. + +2025-06-04 Nathan Myers <ncm@cantrip.org> + + PR libstdc++/119741 + * include/std/sstream: full implementation, really just + decls, requires clause and plumbing. + * include/bits/version.def, include/bits/version.h: + new preprocessor symbol + __cpp_lib_sstream_from_string_view. + * testsuite/27_io/basic_stringbuf/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/char/string_view.cc: + New tests. + * testsuite/27_io/basic_stringbuf/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_istringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_ostringstream/cons/wchar_t/string_view.cc: + New tests. + * testsuite/27_io/basic_stringstream/cons/wchar_t/string_view.cc: + New tests. + +2025-06-04 Patrick Palka <ppalka@redhat.com> + + * include/bits/c++config (_GLIBCXX_AUTO_CAST): Define. + * include/bits/iterator_concepts.h (_Decay_copy, __decay_copy): + Remove. + (__member_begin, __adl_begin): Use _GLIBCXX_AUTO_CAST instead of + __decay_copy as per P0849R8. + * include/bits/ranges_base.h (_Begin): Likewise. + (__member_end, __adl_end, _End): Likewise. + (__member_rbegin, __adl_rbegin, _RBegin): Likewise. + (__member_rend, __adl_rend, _Rend): Likewise. + (__member_size, __adl_size, _Size): Likewise. + (_Data): Likewise. + +2025-06-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/empty_spec.cc: New tests. + +2025-06-04 Patrick Palka <ppalka@redhat.com> + + * include/bits/ranges_algo.h (__starts_with_fn, starts_with): + Define. + (__ends_with_fn, ends_with): Define. + * include/bits/version.def (ranges_starts_ends_with): Define. + * include/bits/version.h: Regenerate. + * include/std/algorithm: Provide __cpp_lib_ranges_starts_ends_with. + * src/c++23/std.cc.in (ranges::starts_with): Export. + (ranges::ends_with): Export. + * testsuite/25_algorithms/ends_with/1.cc: New test. + * testsuite/25_algorithms/starts_with/1.cc: New test. + +2025-06-04 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/semaphore_base.h (_S_get_current): Replace with + non-static _M_get_current. + (_S_do_try_acquire): Replace with non-static _M_do_try_acquire. + +2025-06-04 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/104928 + * include/bits/semaphore_base.h (_S_do_try_acquire): Take old + value by reference. + (_M_acquire): Move _S_do_try_acquire call out of the predicate + and loop on its result. Make the predicate capture and update + the local copy of the value. + (_M_try_acquire_until, _M_try_acquire_for): Likewise. + (_M_try_acquire): Just call _M_try_acquire_for. + * testsuite/30_threads/semaphore/104928-2.cc: New test. + * testsuite/30_threads/semaphore/104928.cc: New test. + +2025-06-04 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono:_M_s): Add missing + __out argument to format_to call. + * testsuite/std/time/format/empty_spec.cc: New test. + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * include/std/stop_token: Check __glibcxx_jthread instead of + __cplusplus. + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (is_destructible, is_destructible_v): + Define using new built-in. + (is_nothrow_destructible, is_nothrow_destructible_v): Likewise. + (is_trivially_destructible, is_trivially_destructible_v): + Likewise. + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__detail::__wait_until): + Remove incorrect comment. + (__atomic_wait_address_until_v): Do not take address of __args in + call to __detail::__wait_until. Fix return statement to refer to + member of __wait_result_type. + (__atomic_wait_address_for_v): Change parameter type from + time_point to duration. + * src/c++20/atomic.cc (__spin_until_impl): Fix incorrect + return value. Reuse result of first call to clock. + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_vector.h (~_Vector_base): Add unreachable + hint for negative capacity and cast to size_t explicitly. + * include/bits/vector.tcc (vector::_M_realloc_append): Use + size() instead of end() - begin(). + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * include/std/bit (__rotl, __rotr): Use static_cast for + conversion from int to unsigned. + +2025-06-03 Jonathan Wakely <jwakely@redhat.com> + + * src/c++23/std.cc.in: Remove redundant checks for feature test + macros that are always true. + +2025-06-02 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/basic_string.h (basic_string::size): Remove space + before parameter list. + (basic_string::capacity): Likewise. + * include/bits/stl_deque.h (deque::size): Likewise. + * include/bits/stl_vector.h (vector::size, vector::capacity): + Likewise. + * include/bits/vector.tcc (vector::_M_realloc_insert): Likewise. + (vector::_M_realloc_append): Likewise. + +2025-06-02 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120386 + * include/bits/ranges_algo.h (__unique_copy_fn): Reorder + arguments for third case to match the first two cases. + * include/bits/stl_algo.h (__unique_copy): Replace three + overloads with two, depending only on the iterator category of + the input range. Dispatch to __unique_copy_1 for the + non-forward case. + (__unique_copy_1): New overloads for the case where the input + range uses non-forward iterators. + (unique_copy): Only pass the input range category to + __unique_copy. + * testsuite/25_algorithms/unique_copy/lwg2439.cc: New test. + +2025-06-02 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/funcwrap.h (__polyfunc::__pass_by_rref): Define. + (__polyfunc::__param_t): Update to use __pass_by_rref. + * include/bits/cpyfunc_impl.h:: Assert that are parameters type + are complete. + * include/bits/funcref_impl.h: Likewise. + * include/bits/mofunc_impl.h: Likewise. + * testsuite/20_util/copyable_function/call.cc: New test. + * testsuite/20_util/function_ref/call.cc: New test. + * testsuite/20_util/move_only_function/call.cc: New test. + * testsuite/20_util/copyable_function/conv.cc: New test. + * testsuite/20_util/function_ref/conv.cc: New test. + * testsuite/20_util/move_only_function/conv.cc: New test. + * testsuite/20_util/copyable_function/incomplete_neg.cc: New test. + * testsuite/20_util/function_ref/incomplete_neg.cc: New test. + * testsuite/20_util/move_only_function/incomplete_neg.cc: New test. + +2025-06-02 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119152 + * include/bits/indirect.h (std::polymorphic, pmr::polymorphic) + [__glibcxx_polymorphic]: Define. + * include/bits/version.def (polymorphic): Define. + * include/bits/version.h: Regenerate. + * include/std/memory: Define __cpp_lib_polymorphic. + * testsuite/std/memory/polymorphic/copy.cc: New test. + * testsuite/std/memory/polymorphic/copy_alloc.cc: New test. + * testsuite/std/memory/polymorphic/ctor.cc: New test. + * testsuite/std/memory/polymorphic/ctor_poly.cc: New test. + * testsuite/std/memory/polymorphic/incomplete.cc: New test. + * testsuite/std/memory/polymorphic/invalid_neg.cc: New test. + * testsuite/std/memory/polymorphic/move.cc: New test. + * testsuite/std/memory/polymorphic/move_alloc.cc: New test. + +2025-05-30 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/time/format/empty_spec.cc: New test. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h: Use __wait_result_type. + * include/bits/atomic_wait.h (__wait_result_type): New struct. + (__wait_args::_M_prep_for_wait_on): Rename to _M_setup_wait, use + __wait_result_type. + (__atomic_wait_address): Adjust to call _M_setup_wait. + * src/c++20/atomic.cc (__spin_impl): Use __wait_result_type. + (__wait_impl): Likewise. + (__spin_until_impl): Likewise. + (__wait_until_impl): Likewise. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118494 + PR libstdc++/110854 + PR libstdc++/98749 + * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Remove checks for + sem_timedwait. Do not define _GLIBCXX_HAVE_POSIX_SEMAPHORE. + * config.h.in: Regenerate. + * configure: Regenerate. + * include/bits/semaphore_base.h (__platform_semaphore): Remove. + (__atomic_semaphore): Replace with __semaphore_base<bool> and + make type of _M_count depend on template parameter. Fix _S_max + constant to use correct type. + (__semaphore_base::_M_try_acquire): Qualify to avoid ADL. + (__semaphore_base::_M_release): Return old value. Remove FIXME + comment. + (__semaphore_impl): Replace typedef with alias template. + * include/bits/version.def (semaphore): Do not depend on + _GLIBCXX_HAVE_POSIX_SEMAPHORE. + * include/bits/version.h: Regenerate. + * include/std/semaphore (semaphore): Adjust type of _M_sem + member. Add constexpr to constructor. Add assertions to + (semaphore::semaphore(ptrdiff_t)): Add constexpr. Add assertion + for precondition. + (semaphore::release): Add assertion using value returned from + _M_release. + * testsuite/30_threads/semaphore/100806.cc: Increase template + argument for std::counting_semaphore, so constructor + precondition is met. + * testsuite/30_threads/semaphore/cons.cc: New test. + * testsuite/30_threads/semaphore/try_acquire_posix.cc: Remove. + * testsuite/30_threads/semaphore/platform_try_acquire_for.cc: + Removed. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/std/barrier (__tree_barrier_base): New class. + (__tree_barrier): Move non-dependent code into + __tree_barrier_base and derive from it. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118395 + PR libstdc++/108974 + PR libstdc++/98749 + * include/std/barrier (__tree_barrier): Use default + member-initializers. Change _M_state member from + unique_ptr<__state_t[]> to atomic<__state_t*>. Add + no_unique_address attribute to _M_completion. + (__tree_barrier::_M_arrive): Load value from _M_state. + (__tree_barrier::_M_invoke_completion): New member function to + ensure a throwing completion function will terminate, as + proposed in LWG 3898. + (__tree_barrier::max): Reduce by one to avoid overflow. + (__tree_barrier::__tree_barrier): Add constexpr. Qualify call to + std::move. Remove mem-initializers made unnecessary by default + member-initializers. Add precondition check. Only allocate state + array if not constant evaluated. + (__tree_barrier::arrive): Add precondition check. Do deferred + initialization of _M_state if needed. + (barrier): Add static_assert, as proposed in LWG 3898. + (barrier::barrier): Add constexpr. + * testsuite/30_threads/barrier/cons.cc: New test. + * testsuite/30_threads/barrier/lwg3898.cc: New test. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/std/latch (latch::arrive_and_wait): Optimise. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * config/abi/pre/gnu.ver: Add new symbol version and exports. + * include/bits/atomic_timed_wait.h (__platform_wait_until): Move + to atomic.cc. + (__cond_wait_until, __spin_until_impl): Likewise. + (__wait_until_impl): Likewise. Change __wait_args_base parameter + to non-const reference and change third parameter to + __wait_clock_t::duration. + (__wait_until): Change __wait_args_base parameter to non-const + reference. Change Call time_since_epoch() to get duration from + time_point. + (__wait_for): Change __wait_args_base parameter to non-const + reference. + (__atomic_wait_address_until): Call _M_prep_for_wait_on on args. + (__atomic_wait_address_for): Likewise. + (__atomic_wait_address_until_v): Qualify call to avoid ADL. Do + not forward __vfn. + * include/bits/atomic_wait.h (__platform_wait_uses_type): Use + alignof(T) not alignof(T*). + (__futex_wait_flags, __platform_wait, __platform_notify) + (__waitable_state, __spin_impl, __notify_impl): Move to + atomic.cc. + (__wait_impl): Likewise. Change __wait_args_base parameter to + non-const reference. + (__wait_args_base::_M_wait_state): New data member. + (__wait_args_base::_M_prep_for_wait_on): New member function. + (__wait_args_base::_M_load_proxy_wait_val): New member + function. + (__wait_args_base::_S_memory_order_for): Remove member function. + (__atomic_wait_address): Call _M_prep_for_wait_on on args. + (__atomic_wait_address_v): Qualify call to avoid ADL. + * src/c++20/Makefile.am: Add new file. + * src/c++20/Makefile.in: Regenerate. + * src/c++20/atomic.cc: New file. + * testsuite/17_intro/headers/c++1998/49745.cc: Remove XFAIL for + C++20 and later. + * testsuite/29_atomics/atomic/wait_notify/100334.cc: Remove use + of internal implementation details. + * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.35 version. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__wait_until_impl): Adjust + to use new naming. + * include/bits/atomic_wait.h (__waiter_pool_impl): Rename to + __waitable_state. + (__waiter_pool_impl::_S_wait): Rename to _M_waiters. + (__waiter_pool_impl::_S_impl_for): Rename to _S_state_for. + (__waiter_pool_impl::_S_track): Adjust to use new naming. + (__wait_impl, __notify_impl): Likewise. + * testsuite/29_atomics/atomic/wait_notify/100334.cc: Adjust to + use new naming. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h + (__atomic_wait_address_until_v): Replace __atomic_compare with + __atomic_eq. + (__atomic_wait_address_for_v): Likewise. + * include/bits/atomic_wait.h (__atomic_compare): Rename to + __atomic_eq. + (__atomic_wait_address_v): Replace __atomic_compare with + __atomic_eq. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__wait_until_impl): Change + first parameter to const void* and then static_cast to const + __platform_wait_t* when not using proxied wait. + (__wait_until): Change first parameter to const void*. + (__wait_for): Likewise. + (__atomic_wait_address_until): Remove reinterpret_cast and allow + address to implicitly convert to const void* instead. + (__atomic_wait_address_for): Likewise. + * include/bits/atomic_wait.h: (__wait_impl, __notify_impl): + Change first parameter to const void* and then static_cast to + const __platform_wait_t* when not using proxied wait. + (__atomic_wait_address, __atomic_notify_address) Remove + reinterpret_cast and allow address to implicitly convert to + const void* instead. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_wait.h (__platform_wait): Change function + template to a normal function. The parameter is always + __platform_wait_t* which is just int* for this implementation of + the function. + (__platform_notify): Likewise. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__to_wait_clock): Do not use + chrono::ceil if clock and duration are already correct type. + (__wait_until): Always call __to_wait_clock. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_wait.h (__notify_impl): Increment the + proxy value before returning early for the uncontended case. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h (__cond_wait_impl): Add + missing inline keyword. + (__spin_until_impl): Change parameter from pointer to reference. + Replace make_pair with list-initialization. Initialize variable + for return value. + (__wait_until_impl): Likewise. Remove some preprocessor + conditional logic. Use _S_track for contention tracking. + Avoid unnecessary const_cast. + (__wait_until): Change parameter from pointer to reference. + Replace make_pair with list-initialization. + (__wait_for): Change parameter from pointer to reference. Add + __do_spin flag to args. + * include/bits/atomic_wait.h (__waiter_pool_impl::_S_track): New + function returning an RAII object for contention tracking. + (__wait_flags): Do not set the __do_spin flag in the __spin_only + enumerator. Comment out the unused __abi_version_mask + enumerator. Define operator| and operator|= overloads. + (__wait_args_base::operator&): Define. + (__wait_args::operator&, __wait_args::_S_default_flags): Remove. + (__wait_args::operator|, __wait_args::operator|=): Remove. + (__spin_impl): Change parameter from pointer to reference. + Replace make_pair call with list-initialization. + (__wait_impl): Likewise. Remove some preprocessor conditional + logic. Always store old value in __args._M_old. Avoid + unnecessary const_cast. Use _S_track. + (__notify_impl): Change parameter to reference. Remove some + preprocessor conditional logic. + (__atomic_wait_address): Add comment. Update __args._M_old on + each iteration. + (__atomic_wait_address_v): Add comment. + * include/std/latch (latch::wait): Adjust predicates for new + logic. + * testsuite/29_atomics/atomic_integral/wait_notify.cc: Improve + test. + +2025-05-30 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_timed_wait.h: Whitespace fixes. + * include/bits/atomic_wait.h: Likewise. + +2025-05-30 Thomas Rodgers <trodgers@redhat.com> + + * include/bits/atomic_timed_wait.h (__spin_until_impl): Accept + __wait_args as const __wait_args_base*. + (__wait_until_impl): Likewise. + (__wait_until): Likewise. + (__wait_for): Likewise. + (__atomic_wait_address_until): Pass __wait_args by address. + (__atomic_wait_address_for): Likewise. + * include/bits/atomic_wait.h (__wait_args_base): New struct. + (__wait_args): Derive from __wait_args_base. + (__wait_args::__wait_args()): Adjust ctors to call call base ctor. + (__wait_args::__wait_args(const __wait_args_base&)): New ctor. + (__wait_args::operator|=): New method. + (__wait_args::_S_flags_for): Change return type to + __wait_flags. + (__spin_impl): Accept __wait_args as const __wait_args_base*. + (__wait_impl): Likewise. + (__notify_impl): Likewise. + (__atomic_wait_address): Pass __wait_args by address. + (__atomic_wait_address_v): Likewise. + (__atomic_notify_address): Likewise. + +2025-05-30 Thomas Rodgers <trodgers@redhat.com> + + * include/bits/atomic_timed_wait.h: + (__detail::__platform_wait_until_impl): Rename to + __platform_wait_until. + (__detail::__platform_wait_until): Remove previous + definition. + (__detail::__cond_wait_until_impl): Rename to + __cond_wait_until. + (__detail::__cond_wait_until): Remove previous + definition. + (__detail::__spin_until_impl): New function. + (__detail::__wait_until_impl): New function. + (__detail::__wait_until): New function. + (__detail::__wait_for): New function. + (__detail::__timed_waiter_pool): Remove type. + (__detail::__timed_backoff_spin_policy): Remove type. + (__detail::__timed_waiter): Remove type. + (__detail::__enters_timed_wait): Remove type alias. + (__detail::__bare_timed_wait): Remove type alias. + (__atomic_wait_address_until): Adjust to new implementation + detail. + (__atomic_wait_address_until_v): Likewise. + (__atomic_wait_address_bare): Remove. + (__atomic_wait_address_for): Adjust to new implementation + detail. + (__atomic_wait_address_for_v): Likewise. + (__atomic_wait_address_for_bare): Remove. + * include/bits/atomic_wait.h: Include bits/stl_pair.h. + (__detail::__default_spin_policy): Remove type. + (__detail::__atomic_spin): Remove function. + (__detail::__waiter_pool_base): Rename to __waiter_pool_impl. + Remove _M_notify. Rename _S_for to _S_impl_for. + (__detail::__waiter_base): Remove type. + (__detail::__waiter_pool): Remove type. + (__detail::__waiter): Remove type. + (__detail::__enters_wait): Remove type alias. + (__detail::__bare_wait): Remove type alias. + (__detail::__wait_flags): New enum. + (__detail::__wait_args): New struct. + (__detail::__wait_result_type): New type alias. + (__detail::__spin_impl): New function. + (__detail::__wait_impl): New function. + (__atomic_wait_address): Adjust to new implementation detail. + (__atomic_wait_address_v): Likewise. + (__atomic_notify_address): Likewise. + (__atomic_wait_address_bare): Delete. + (__atomic_notify_address_bare): Likewise. + * include/bits/semaphore_base.h: Adjust implementation to + use new __atomic_wait_address_v contract. + * include/std/barrier: Adjust implementation to use new + __atomic_wait contract. + * include/std/latch: Adjust implementation to use new + __atomic_wait contract. + * testsuite/29_atomics/atomic/wait_notify/100334.cc (main): + Adjust to for __detail::__waiter_pool_base renaming. + +2025-05-29 Patrick Palka <ppalka@redhat.com> + + * include/std/flat_map (_Flat_map_impl::operator==): Compare + keys and values separately. + +2025-05-29 Patrick Palka <ppalka@redhat.com> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120465 + * include/std/flat_map (_Flat_map_impl::_M_erase_if): Use a + projection with ranges::remove_if to pass a pair instead of + a tuple to the predicate. + * testsuite/23_containers/flat_map/1.cc (test07): Strengthen + to expect the argument passed to the predicate is a pair. + * testsuite/23_containers/flat_multimap/1.cc (test07): Likewise. + +2025-05-29 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/17_intro/names.cc [_AIX] (a): Undefine. + * testsuite/experimental/names.cc [_AIX] (ptr): Undefine. + +2025-05-29 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/22_locale/num_put/put/char/lwg4084.cc [_AIX]: Adjust + expected output for NaN and infinity. + +2025-05-29 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: + Remove dg-xfail-run-if for AIX. + * testsuite/23_containers/unordered_map/96088.cc: Replace + dg-xfail-run-if with dg-require-effective-target c++20. + * testsuite/23_containers/unordered_multimap/96088.cc: Likewise. + * testsuite/23_containers/unordered_multiset/96088.cc: Likewise. + * testsuite/23_containers/unordered_set/96088.cc: Likewise. + +2025-05-29 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/boost_concept_check.h: Disable -Wlong-long + warnings. + * testsuite/24_iterators/operations/prev_neg.cc: Adjust dg-error + line number. + +2025-05-29 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/test.xml: Remove outdated documentation on + testing with -std options in --target_board. + * doc/html/manual/test.html: Regenerate. + +2025-05-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/17_intro/names.cc [_AIX] (n): Undefine. + * testsuite/experimental/names.cc [_AIX] (ptr): Undefine. + +2025-05-27 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/std/format/debug.cc: Disable for targets with 16-bit + wchar_t. + * testsuite/std/format/functions/format.cc: Use -DUNICODE for + targets with 32-bit wchar_t. + (test_unicode) [UNICODE]: Only run checks when UNICODE is + defined. + +2025-05-27 Jonathan Wakely <jwakely@redhat.com> + + * include/Makefile.in: Regenerate. + +2025-05-27 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/96710 + * include/bits/std_abs.h [__SIZEOF_INT128__] (abs(__int128)): + Define. + [_GLIBCXX_USE_FLOAT128] (abs(__float128)): Enable definition for + strict modes. + * testsuite/26_numerics/headers/cmath/82644.cc: Use strict_std + instead of defining __STRICT_ANSI__. + * testsuite/26_numerics/headers/cstdlib/abs128.cc: New test. + +2025-05-27 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan: Value initialize the array storing the + dynamic extents. + * testsuite/23_containers/mdspan/extents/ctor_default.cc: New + test. + +2025-05-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119152 + * testsuite/std/memory/indirect/ctor.cc: Run test_inplace_ctor. + +2025-05-26 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119152 + * doc/doxygen/stdheader.cc: Added indirect.h file. + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/indirect.h: New file. + * include/bits/version.def (indirect): Define. + * include/bits/version.h: Regenerate. + * include/std/memory: Include new header. + * testsuite/std/memory/indirect/copy.cc + * testsuite/std/memory/indirect/copy_alloc.cc + * testsuite/std/memory/indirect/ctor.cc + * testsuite/std/memory/indirect/incomplete.cc + * testsuite/std/memory/indirect/invalid_neg.cc + * testsuite/std/memory/indirect/move.cc + * testsuite/std/memory/indirect/move_alloc.cc + * testsuite/std/memory/indirect/relops.cc + +2025-05-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119126 + * doc/doxygen/stdheader.cc: Added funcref_impl.h file. + * include/Makefile.am: Added funcref_impl.h file. + * include/Makefile.in: Added funcref_impl.h file. + * include/bits/funcref_impl.h: New file. + * include/bits/funcwrap.h: (_Ptrs::_M_obj): Const-qualify. + (_Storage::_M_ptr, _Storage::_M_ref): Remove. + (__polyfunc::__cast_to) Define. + (_Base_invoker::_S_ptrs, _Base_invoker::_S_nttp) + (_Base_invoker::_S_bind_ptrs, _Base_invoker::_S_bind_ref) + (_Base_invoker::_S_call_ptrs): Define. + (_Base_invoker::_S_call_storage): Foward to _S_call_ptrs. + (_Manager::_S_local, _Manager::_S_ptr): Adjust for _M_obj being + const qualified. + (__polyfunc::_Manager, __polyfunc::_Mo_base): Guard with + __glibcxx_move_only_function || __glibcxx_copyable_function. + (__polyfunc::__skip_first_arg, __polyfunc::__deduce_funcref) + (std::function_ref) [__glibcxx_function_ref]: Define. + * include/bits/utility.h (std::nontype_t, std::nontype) + (__is_nontype_v) [__glibcxx_function_ref]: Define. + * include/bits/version.def: Define function_ref. + * include/bits/version.h: Regenerate. + * include/std/functional: Define __cpp_lib_function_ref. + * src/c++23/std.cc.in (std::nontype_t, std::nontype) + (std::function_ref) [__cpp_lib_function_ref]: Export. + * testsuite/20_util/function_ref/assign.cc: New test. + * testsuite/20_util/function_ref/call.cc: New test. + * testsuite/20_util/function_ref/cons.cc: New test. + * testsuite/20_util/function_ref/cons_neg.cc: New test. + * testsuite/20_util/function_ref/conv.cc: New test. + * testsuite/20_util/function_ref/deduction.cc: New test. + * testsuite/20_util/function_ref/mutation.cc: New test. + +2025-05-23 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120384 + * include/bits/stl_algo.h (__unique_copy): Remove all + _BinaryPredicateConcept concept checks. + (unique_copy): Check _BinaryPredicateConcept in overload that + takes a predicate. + * testsuite/25_algorithms/unique_copy/120384.cc: New test. + +2025-05-23 Jonathan Wakely <jwakely@redhat.com> + + * include/std/type_traits (is_constant_evaluated): Add + always_inline attribute. + +2025-05-23 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/17_intro/names.cc [__sun__] (a, i, n): Undefine. + +2025-05-23 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org> + + * testsuite/std/format/parse_ctx.cc: Fix typo for bfloat16 guard. + +2025-05-22 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/allocated_ptr.h (_Scoped_allocation): New class + template. + +2025-05-22 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/util/pstl/test_utils.h (ForwardIterator::operator++): + Fix return type. + (BidirectionalIterator::operator++): Likewise. + (BidirectionalIterator::operator--): Likewise. + +2025-05-22 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120367 + * include/bits/stl_vector.h (_M_range_initialize): Initialize + _M_impl._M_finish. + * testsuite/23_containers/vector/cons/from_range.cc: Check with + a type that throws on construction. + exceptions during construction. + +2025-05-21 Alexandre Oliva <oliva@adacore.com> + + * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc: + Guard non-wide stold calls with conditions for it to be + defined. + * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc: + Likewise. + +2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> + + PR libstdc++/81806 + * include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp + (split_finish): Use maintained size, instead of calling + std::distance. + +2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> + + * include/ext/pb_ds/detail/rb_tree_map_/node.hpp + (rb_tree_node_::size_type): New typedef. + (rb_tree_node_::m_subtree_size): New field. + * include/ext/pb_ds/detail/splay_tree_/node.hpp + (splay_tree_node_::size_type): New typedef. + (splay_tree_node_::m_subtree_size): New field. + * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp + (PB_DS_BIN_TREE_NAME::update_subtree_size): Declare new member + function. + * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp + (update_subtree_size): Define. + (apply_update, update_to_top): Call update_subtree_size. + +2025-05-21 Xℹ Ruoyao <xry111@mengyan1223.wang> + + * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp + (insert_leaf_new, insert_imp_empty): remove redundant statements. + +2025-05-20 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (_ChronoSpec::_M_locale_specific): + Declare as bit fiekd in tail-padding.. + * include/bits/formatfwd.h (__format::_Align): Defined as enum + class and add using enum. + * include/std/format (__format::_Pres_type, __format::_Sign) + (__format::_WidthPrec, __format::_Arg_t): Defined as enum class + and add using enum. + (_Pres_type::_Pres_esc): Replace with _Pres_max. + (_Pres_type::_Pres_seq, _Pres_type::_Pres_str): Remove. + (__format::_Pres_type): Updated values of enumerators as described + above. + (__format::_Spec): Rearranged members to have 8 bits of tail-padding. + (_Spec::_M_debug): Defined. + (_Spec::_M_reserved): Extended to 8 bits and moved at the end. + (_Spec::_M_reserved2): Removed. + (_Spec::_M_parse_fill_and_align, _Spec::_M_parse_sign) + (__format::__write_padded_as_spec): Adjusted default value checks. + (__format::_Term_char): Add using enum and adjust enumertors. + (__Escapes::_S_term): Adjusted for _Term_char values. + (__format::__should_escape_ascii): Adjusted _Term_char uses. + (__format::__write_escaped): Adjusted for _Term_char. + (__formatter_str::parse): Set _Pres_s if specifed and _M_debug + instead of _Pres_esc. + (__formatter_str::set_debug_format): Set _M_debug instead of + _Pres_esc. + (__formatter_str::format, __formatter_str::_M_format_range): + Check _M_debug instead of _Prec_esc. + (__formatter_str::_M_format_escaped): Adjusted _Term_char uses. + (__formatter_int::__formatter_int(_Spec<_CharT>)): Set _Pres_d if + default presentation type is not set. + (__formatter_int::_M_parse): Adjusted default value checks. + (__formatter_int::_M_do_parse): Set _M_debug instead of _Pres_esc. + (__formatter_int::_M_format_character): Handle escaped presentation. + (__formatter_int::_M_format_character_escaped) + (__formatter_int::_S_character_width): Merged into + _M_format_character. + (__formatter_ptr::__formatter_ptr(_Spec<_CharT>)): Set _Pres_p if + default presentation type is not set. + (__formatter_ptr::parse): Add default __type parameter, store _Pres_p, + and handle _M_alt to be consistent with meaning for integers. + (__foramtter_ptr<_CharT>::_M_set_default): Define. + (__format::__pack_arg_types, std::basic_format_args): Add necessary + casts. + (formatter<_CharT, _CharT>::set_debug_format) + (formatter<char, wchar_t>::set_debug_format): Set _M_debug instead of + _Pres_esc. + (formatter<_CharT, _CharT>::format, formatter<char, wchar_t>::format): + Simplify calls to _M_format_character. + (range_formatter<_Rg, _CharT>::parse): Replace _Pres_str with + _Pres_s and set _M_debug instead of _Pres_esc. + (range_formatter<_Rg, _CharT>::format): Replace _Pres_str with + _Pres_s. + +2025-05-20 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/faq.xml: Update URL for archived SGI STL docs. + * doc/xml/manual/containers.xml: Likewise. + * doc/xml/manual/extensions.xml: Likewise. + * doc/xml/manual/using.xml: Likewise. + * doc/xml/manual/utilities.xml: Likewise. + * doc/html/*: Regenerate. + +2025-05-19 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (_ZipTransform::operator()): Remove name of + unused parameter. + (chunk_view::_Iterator, stride_view::_Iterator): Likewise. + (join_with_view): Declare _Iterator and _Sentinel as class + instead of struct. + (repeat_view): Declare _Iterator as class instead of struct. + +2025-05-19 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120293 + * include/bits/chrono_io.h (_M_format_to_ostream): Add special + case for local_time convertible to local_days. + * testsuite/std/time/clock/local/io.cc: Check formatting of + chrono::local_days. + +2025-05-16 Patrick Palka <ppalka@redhat.com> + + * include/std/type_traits (__is_invocable): Define in terms of + corresponding builtin if available. + (__is_nothrow_invocable): Likewise. + (is_invocable_v): Likewise. + (is_nothrow_invocable_v): Likewise. + +2025-05-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/65909 + * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): + Change name of formal argument to locale. + +2025-05-15 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/std/mdspan: Implement the mandate for extents as + signed or unsigned integer and not any interal type. Remove + leading underscores from names in static_assert message. + * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: + Check that extents<char,...> and extents<bool,...> are invalid. + Adjust dg-prune-output pattern. + * testsuite/23_containers/mdspan/extents/misc.cc: Update + tests to avoid `char` and `bool` as IndexType. + +2025-05-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120190 + * include/std/format (format_kind): Adjust primary template to + not depend on itself. + * testsuite/std/format/ranges/format_kind_neg.cc: Adjust + expected errors. Check more invalid specializations. + +2025-05-15 Jonathan Wakely <jwakely@redhat.com> + + * include/std/complex (arg(T)): Use __builtin_signbit instead of + std::signbit. + +2025-05-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120235 + * doc/html/*: Regenerate. + * doc/xml/manual/evolution.xml: Document deprecation. + * include/std/complex: Replace references to TR1 subclauses with + corresponding C++11 subclauses. + (fabs): Add deprecated attribute. + * testsuite/26_numerics/complex/fabs_neg.cc: New test. + +2025-05-15 Jason Merrill <jason@redhat.com> + + * testsuite/lib/libstdc++.exp: Add -Wabi. + +2025-05-15 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119246 + * include/std/format: Updated check for _GLIBCXX_FORMAT_F128. + +2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119125 + * include/bits/move_only_function.h: Move to... + * include/bits/funcwrap.h: ...here. + * doc/doxygen/stdheader.cc (init_map): Replaced move_only_function.h + with funcwrap.h, and changed include guard to use feature test macro. + Move bits/version.h include before others. + * include/Makefile.am: Likewise. + * include/Makefile.in: Likewise. + * include/std/functional: Likewise. + +2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119125 + * doc/doxygen/stdheader.cc: Addded cpyfunc_impl.h header. + * include/Makefile.am: Add bits cpyfunc_impl.h. + * include/Makefile.in: Add bits cpyfunc_impl.h. + * include/bits/cpyfunc_impl.h: New file. + * include/bits/mofunc_impl.h: Mention LWG 4255. + * include/bits/move_only_function.h: Update header description + and change guard to also check __glibcxx_copyable_function. + (_Manager::_Func): Remove noexcept. + (std::__is_polymorphic_function_v<move_only_function<_Tp>>) + (__variant::_Never_valueless_alt<std::move_only_function<_Signature...>>) + (move_only_function) [__glibcxx_move_only_function]: Adjust guard. + (std::__is_polymorphic_function_v<copyable_function<_Tp>>) + (__variant::_Never_valueless_alt<std::copyable_function<_Signature...>>) + (__polyfunc::_Cpy_base, std::copyable_function) + [__glibcxx_copyable_function]: Define. + * include/bits/version.def: Define copyable_function. + * include/bits/version.h: Regenerate. + * include/std/functional: Define __cpp_lib_copyable_function. + * src/c++23/std.cc.in (copyable_function) + [__cpp_lib_copyable_function]: Export. + * testsuite/20_util/copyable_function/call.cc: New test based on + move_only_function tests. + * testsuite/20_util/copyable_function/cons.cc: New test based on + move_only_function tests. + * testsuite/20_util/copyable_function/conv.cc: New test based on + move_only_function tests. + * testsuite/20_util/copyable_function/copy.cc: New test. + * testsuite/20_util/copyable_function/move.cc: New test based on + move_only_function tests. + +2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119125 + * include/bits/mofunc_impl.h: (std::move_only_function): Adjusted for + changes in bits/move_only_function.h + (move_only_function::move_only_function(_Fn&&)): Special case + move_only_functions with same invoker. + (move_only_function::operator=(move_only_function&&)): Handle self + assigment. + * include/bits/move_only_function.h (__polyfunc::_Ptrs) + (__polyfunc::_Storage): Refactored from _Mo_func::_Storage. + (__polyfunc::__param_t): Moved from move_only_function::__param_t. + (__polyfunc::_Base_invoker, __polyfunc::_Invoke): Refactored from + move_only_function::_S_invoke. + (__polyfunc::_Manager): Refactored from _Mo_func::_S_manager. + (std::_Mofunc_base): Moved into __polyfunc::_Mo_base with parts + extracted to __polyfunc::_Storage and __polyfunc::_Manager. + (__polyfunc::__deref_as, __polyfunc::__invoker_of) + (__polyfunc::__base_of, __polyfunc::__is_invoker_convertible): Define. + (std::__is_move_only_function_v): Renamed to + __is_polymorphic_function_v. + (std::__is_polymorphic_function_v): Renamed from + __is_move_only_function_v. + * testsuite/20_util/move_only_function/call.cc: Test for + functions pointers. + * testsuite/20_util/move_only_function/conv.cc: New test. + * testsuite/20_util/move_only_function/move.cc: Tests for + self assigment. + +2025-05-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119246 + * include/std/format (__format::__bflt16_t): Define. + (_GLIBCXX_FORMAT_F128): Separate value for cases where _Float128 + is used. + (__format::__float128_t): Renamed to __format::__flt128_t. + (std::formatter<_Float128, _CharT>): Define always if there is + formattable 128bit float. + (std::formatter<__float128, _CharT>): Define. + (_Arg_type::_Arg_f128): Rename to _Arg_float128 and adjust value. + (_Arg_type::_Arg_ibm128): Change value to _Arg_ldbl. + (_Arg_type::_Arg_ieee128): Define as alias to _Arg_float128. + (_Arg_value::_M_f128): Replaced with _M_ieee128 and _M_float128. + (_Arg_value::_M_ieee128, _Arg_value::_M_float128) + (_Arg_value::_M_bf16, _Arg_value::_M_f16, _Arg_value::_M_f32) + (_Arg_value::_M_f64): Define. + (_Arg_value::_S_get, basic_format_arg::_S_to_enum): Handle __bflt16, + _Float16, _Float32, _Float64, and __float128 types. + (basic_format_arg::_S_to_arg_type): Preserve _bflt16, _Float16, + _Float32, _Float64 and __float128 types. + (basic_format_arg::_M_visit): Handle _Arg_float128, _Arg_ieee128, + _Arg_b16, _Arg_f16, _Arg_f32, _Arg_f64. + * testsuite/std/format/arguments/args.cc: Updated to illustrate + that extended floating point types use handles now. Added test + for __float128. + * testsuite/std/format/parse_ctx.cc: Extended test to cover class + to check_dynamic_spec with floating point types and handles. + +2025-05-14 Ville Voutilainen <ville.voutilainen@gmail.com> + + * include/std/utility (to_underlying): Add the __always_inline__ attribute. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119645 + * configure.host [GCN, nvptx] (atomicity_dir): Don't set. + +2025-05-12 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/119714 + PR libstdc++/112490 + * include/std/expected (expected::operator==): Replace + non-dependent std::expected function parameter with a dependent + one of type expected<_Vp, _Er> where _Vp matches _Tp. + * testsuite/20_util/expected/119714.cc: New test. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120187 + * include/c_global/ciso646: Only give deprecated warning for + C++20 and later. + * include/c_global/ccomplex: Add @since to Doxygen comment. + * include/c_global/cstdalign: Likewise. + * include/c_global/cstdbool: Likewise. + * include/c_global/ctgmath: Likewise. + * testsuite/18_support/headers/ciso646/macros.cc: Remove + dg-warning for c++17_only effective target. + * testsuite/18_support/headers/ciso646/macros-2.cc: New test. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/status_cxx2023.xml: Update status of proposals + implemented after GCC 14.2 release. + * doc/html/manual/status.html: Regenerate. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120198 + * include/bits/version.def (scoped_lock): Do not depend on + gthreads or hosted. + * include/bits/version.h: Regenerate. + * include/std/mutex (scoped_lock): Update comment. + * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: + Remove dg-require-gthreads and use custom lockable type instead + of std::mutex. Check that typedef is only present for a single + template argument. + +2025-05-12 Thomas Schwinge <tschwinge@baylibre.com> + + PR libstdc++/70560 + PR libstdc++/119667 + * acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Use '__SIZE_TYPE__' + instead of 'size_t'. + * configure: Regenerate. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118260 + * python/hook.in: Suppress output from gdb.execute calls to + register skips. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/status_cxx2017.xml: Update status for + std::to_chars and std::from_chars. + * doc/html/manual/*: Regenerate. + +2025-05-12 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/65909 + * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): + Hardcode the locale name instead of passing it to the + executable. Do not hardcode buffer size for string. + +2025-05-10 Alexandre Oliva <oliva@adacore.com> + + * src/c++23/print.cc [__VXWORKS__]: Include ioLib.h. + +2025-05-09 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_format_to): + Extracted from _M_format. + (__formatter_chrono::_M_format): Use _Padding_sink and delegate + to _M_format_to. + +2025-05-09 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/format (__Sink_iter<_CharT>::_M_discarding) + (__Sink<_CharT>::_M_discarding, _Iter_sink<_CharT, _OutIter>::_M_discarding) + (_Padding_sinl<_CharT, _Out>::_M_padwidth) + (_Padding_sink<_CharT, _Out>::_M_maxwidth): Remove const. + (_Padding_sink<_CharT, _Out>::_M_sync_discarding) + (_Padding_sink<_CharT, _Out>::_M_discarding): Define. + (_Padding_sink<_CharT, _Out>::_Padding_sink(_Out, size_t, size_t)) + (_Padding_sink<_CharT, _Out>::_M_force_update): + (_Padding_sink<_CharT, _Out>::_M_flush): Call _M_sync_discarding. + (_Padding_sink<_CharT, _Out>::_Padding_sink(_Out, size_t)): Delegate. + +2025-05-07 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120159 + * src/c++23/std.cc.in (is_layout_compatible_v): Export. + +2025-05-07 Jonathan Wakely <jwakely@redhat.com> + + * src/c++23/std.cc.in: Fix export for std::extents. + +2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> + + * testsuite/23_containers/mdspan/extents/class_mandates_neg.cc: New test. + * testsuite/23_containers/mdspan/extents/ctor_copy.cc: New test. + * testsuite/23_containers/mdspan/extents/ctor_ints.cc: New test. + * testsuite/23_containers/mdspan/extents/ctor_shape.cc: New test. + * testsuite/23_containers/mdspan/extents/custom_integer.cc: New test. + * testsuite/23_containers/mdspan/extents/misc.cc: New test. + +2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> + + PR libstdc++/107761 + * include/std/mdspan (extents): New class. + * src/c++23/std.cc.in: Add 'using std::extents'. + +2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> + + * doc/doxygen/user.cfg.in: Add <mdspan>. + * include/Makefile.am: Ditto. + * include/Makefile.in: Ditto. + * include/precompiled/stdc++.h: Ditto. + * include/std/mdspan: New file. + +2025-05-07 Luc Grosheintz <luc.grosheintz@gmail.com> + + * include/bits/version.def: Add internal feature testing macro + __glibcxx_mdspan. + * include/bits/version.h: Regenerate. + +2025-05-07 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/120114 + * include/bits/chrono_io.h (__formatter_chrono::_M_format): Use __field_width. + * testsuite/std/time/format/pr120114.cc: New test. + +2025-05-07 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120147 + * acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Restore use of + AC_LANG_CPLUSPLUS. + * configure: Regenerate. + +2025-05-06 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/70560 + PR libstdc++/119667 + * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Only check for + __atomic_fetch_add on _Atomic_word. Define new macro + _GLIBCXX_ATOMIC_WORD_BUILTINS and stop defining macro + _GLIBCXX_ATOMIC_BUILTINS. + (GLIBCXX_ENABLE_BACKTRACE): Check for __atomic_load_n and + __atomic_store_n on int, void* and size_t. + * config.h.in: Regenerate. + * configure: Regenerate. + * configure.host: Fix typo in comment. + * include/ext/atomicity.h (__exchange_and_add, __atomic_add): + Depend on _GLIBCXX_ATOMIC_WORD_BUILTINS macro instead of old + _GLIBCXX_ATOMIC_BUILTINS macro. + +2025-05-06 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117905 + * include/pstl/glue_numeric_impl.h (reduce, transform_reduce) + (transform_reduce, inclusive_scan, transform_exclusive_scan) + (transform_inclusive_scan): Use std::move for __init parameter. + * include/pstl/numeric_impl.h (__brick_transform_reduce) + (__pattern_transform_reduce, __brick_transform_scan) + (__pattern_transform_scan): Likewise. + * include/std/numeric (inclusive_scan, transform_exclusive_scan): + Use std::move to create local copy of the first element. + * testsuite/26_numerics/pstl/numeric_ops/108236.cc: Move test + using move-only type to ... + * testsuite/26_numerics/pstl/numeric_ops/move_only.cc: New test. + +2025-05-06 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/120029 + * src/c++17/fs_path.cc (path::operator+=(const path&)): Handle + parameters that alias the path or one of its components. + * testsuite/27_io/filesystem/path/concat/120029.cc: New test. + * testsuite/experimental/filesystem/path/concat/120029.cc: New + test. + +2025-05-06 Jonathan Wakely <jwakely@redhat.com> + + PR c++/120112 + * include/bits/ptr_traits.h (_Safe_iterator_base): Use class + keyword in class-head of declaration. + * include/debug/debug.h (_Safe_iterator): Likewise. + +2025-05-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_iterator.h (counted_iterator): Add noexcept + to friend operators which only access the _M_length member. + +2025-05-02 Dhruv Chawla <dhruvc@nvidia.com> + + * include/std/memory: Define __glibcxx_want_addressof_constexpr. + * testsuite/20_util/headers/memory/version.cc: Test for macro + value. + +2025-05-02 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/23_containers/vector/allocator/default_init.cc: + Add a check using constant evaluation. + * testsuite/23_containers/vector/bool/allocator/default_init.cc: + Likewise. + * testsuite/util/testsuite_allocator.h (default_init_allocator): + Make all member functions and equality ops constexpr. + +2025-05-02 Jonathan Wakely <jwakely@redhat.com> + + * src/c++11/Makefile.am: Simplify existing prerequisites for wchar and + dual-abi targets that are built from other sources. Add similar + prerequisites for more wchar and dual-abi files. + * src/c++11/Makefile.in: Regenerate. + * src/c++17/Makefile.am [ENABLE_DUAL_ABI]: Add prerequisites for + dual-abi targets that are built from other sources. + * src/c++17/Makefile.in: Regenerate. + +2025-04-30 François Dumont <frs.dumont@gmail.com> + Jonathan Wakely <jwakely@redhat.com> + + * testsuite/lib/libstdc++.exp (v3_target_compile): Strip version namespace + from compiler output. + * testsuite/20_util/aligned_storage/value.cc [_GLIBCXX_INLINE_VERSION]: + Avoid align_msa check. + * testsuite/20_util/function/cons/70692.cc: Remove now useless __8 namespace + pattern. + * testsuite/23_containers/map/48101_neg.cc: Likewise. + * testsuite/23_containers/multimap/48101_neg.cc: Likewise. + +2025-04-30 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/std/format (_Padding_sink::_M_update): Fixed condition for + calling _M_force_update. + * testsuite/std/format/debug.cc: Add test that reproduces this issue + on 64bit architecture. + * testsuite/std/format/ranges/sequence.cc: Another edge value test. + +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 + shared_ptr and weak_ptr. + Add more tests. + * testsuite/20_util/weak_ptr/requirements/1.cc: Removed as + superseded by the other test. + +2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119970 + * include/std/ostream (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call + _Str_sink::_M_span instead of view. + * include/std/print (vprint_unicode) [_WIN32 && !__CYGWIN__]: Call + _Str_sink::_M_span instead of view. + +2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/ranges_base.h (__detail::__range_key_type): + Replace remove_const_t with remove_cvref_t. + (__detail::__range_mapped_type): Apply remove_cvref_t. + * include/bits/stl_iterator.h: (__detail::__iter_key_t): + Replace remove_const_t with __remove_cvref_t. + (__detail::__iter_val_t): Apply __remove_cvref_t. + * testsuite/23_containers/flat_map/1.cc: New tests. + * testsuite/23_containers/flat_multimap/1.cc: New tests. + * testsuite/23_containers/map/cons/deduction.cc: New tests. + * testsuite/23_containers/map/cons/from_range.cc: New tests. + * testsuite/23_containers/multimap/cons/deduction.cc: New tests. + * testsuite/23_containers/multimap/cons/from_range.cc: New tests. + * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests. + * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. + * testsuite/23_containers/unordered_multimap/cons/deduction.cc: + New tests. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + New tests. + +2025-04-28 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/unordered_map.h (unordered_map): + Define constructors accepting: + (_InputIterator, _InputIterator, const allocator_type&), + (initializer_list<value_type>, const allocator_type&), + (unordered_multimap): Likewise. + * include/debug/unordered_map (unordered_map): Likewise. + (unordered_multimap): Likewise. + * include/bits/unordered_set.h (unordered_set): + Define constructors and deduction guide accepting: + (_InputIterator, _InputIterator, const allocator_type&), + (initializer_list<value_type>, const allocator_type&), + (unordered_multiset): Likewise. + * include/debug/unordered_set (unordered_set): Likewise. + (unordered_multiset): Likewise. + * testsuite/23_containers/unordered_map/cons/66055.cc: New tests. + * testsuite/23_containers/unordered_map/cons/deduction.cc: New tests. + * testsuite/23_containers/unordered_multimap/cons/66055.cc: New tests. + * testsuite/23_containers/unordered_multimap/cons/deduction.cc: New + tests. + * testsuite/23_containers/unordered_multiset/cons/66055.cc: New tests. + * testsuite/23_containers/unordered_multiset/cons/deduction.cc: New + tests. + * testsuite/23_containers/unordered_set/cons/66055.cc: New tests. + * testsuite/23_containers/unordered_set/cons/deduction.cc: New tests. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ptr_traits.h (to_address): Use markdown for + formatting in Doxygen comments. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * src/c++11/Makefile.am: Add prerequisites for targets that + depend on string-inst.cc. + * src/c++11/Makefile.in: Regenerate. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/move.h (addressof): Use __builtin_addressof + directly. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: + Remove dg-error directives for additional c++26 errors. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/latch (latch::_M_a): Rename to _M_counter. + +2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/bits/formatfwd.h (__simply_formattable_range): Moved from + std/format. + * include/std/format (__formatter_str::_format): Extracted escaped + string handling to separate method... + (__formatter_str::_M_format_escaped): Use __Padding_sink. + (__formatter_str::_M_format): Adjusted implementation. + (__formatter_str::_S_trunc): Extracted as namespace function... + (__format::_truncate): Extracted from __formatter_str::_S_trunc. + (__format::_Seq_sink): Removed forward declarations, made members + protected and non-final. + (_Seq_sink::_M_trim): Define. + (_Seq_sink::_M_span): Renamed from view. + (_Seq_sink::view): Returns string_view instead of span. + (__format::_Str_sink): Moved after _Seq_sink. + (__format::__format_padded): Use _Padding_sink. + * testsuite/std/format/debug.cc: Add timeout and new tests. + * testsuite/std/format/ranges/sequence.cc: Specify unicode as + encoding and new tests. + * testsuite/std/format/ranges/string.cc: Likewise. + * testsuite/std/format/tuple.cc: Likewise. + +2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/format/ranges/adaptors.cc: Updated test. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/22_locale/ctype/is/string/89728_neg.cc: Remove + dg-error for c++98_only effective target. + +2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119918 + * include/bits/formatfwd.h (__format::_Align): Moved from std/format. + (std::__throw_format_error, __format::__formatter_str) + (__format::__formatter_ptr): Declare. + * include/std/format (__format::_Align): Moved to bits/formatfwd.h. + (__formatter_int::__formatter_int): Define. + (__format::__formatter_ptr): Extracted from formatter for const void*. + (std::formatter<const void*, _CharT>, formatter<void*, _CharT>) + (std::formatter<nullptr_t, _CharT>): Delegate to __formatter_ptr<_CharT>. + * include/std/thread (std::formatter<thread::id, _CharT>): Constrain + _CharT template parameter. + (formatter<thread::id, _CharT>::parse): Specify default aligment, and + qualify __throw_format_error to disable ADL. + (formatter<thread::id, _CharT>::format): Use formatters to write directly + to output. + * testsuite/30_threads/thread/id/output.cc: Tests for formatting thread::id + representing not-a-thread with padding and formattable concept. + +2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/bits/version.def (format_ranges): Remove no_stdname and + update value. + * include/bits/version.h: Regenerate. + * src/c++23/std.cc.in: Replace __glibcxx_format_ranges with + __cpp_lib_format_ranges. + * testsuite/std/format/formatter/lwg3944.cc: Likewise. + * testsuite/std/format/parse_ctx.cc: Likewise. + * testsuite/std/format/string.cc: Likewise. + * testsuite/std/format/ranges/feature_test.cc: New test. + +2025-04-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/bits/formatfwd.h (__format::__parsable_with) + (__format::__formattable_with, __format::__formattable_impl) + (__format::__has_debug_format, __format::__const_formattable_range) + (__format::__maybe_const_range, __format::__maybe_const) + (std::formattable): Moved from std/format. + (__format::Iter_for, std::range_formatter): Forward declare. + * include/bits/stl_queue.h (std::formatter): Forward declare. + (std::queue, std::priority_queue): Befriend formatter specializations. + * include/bits/stl_stack.h (std::formatter): Forward declare. + (std::stack): Befriend formatter specializations. + * include/std/format (__format::_Iter_for): Define as struct with + (__format::__parsable_with, __format::__formattable_with) + (__format::__formattable_impl, __format::__has_debug_format) + (_format::__const_formattable_range, __format::__maybe_const_range) + (__format::__maybe_const, std::formattable): Moved to bits/formatfwd.h. + (std::range_formatter): Remove default argument specified in declaration + in bits/formatfwd.h. + * include/std/queue: Include bits/version.h before bits/stl_queue.h. + (formatter<queue<_Tp, _Container, _Compare>, _CharT>) + (formatter<priority_queue<_Tp, _Container, _Compare>, _CharT>): Define. + * include/std/stack: Include bits/version.h before bits/stl_stack.h + (formatter<stack<_Tp, _Container, _Compare>, _CharT>): Define. + * testsuite/std/format/ranges/adaptors.cc: New test. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/future (__future_base::_Task_state): Check + invocable requirement here. + (__future_base::_Task_state::_S_create): New static member + function. + (__future_base::_Task_state::_M_reset): Use _S_create. + (__create_task_state): Remove. + (packaged_task): Use _Task_state::_S_create instead of + __create_task_state. + * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: + Adjust dg-error patterns. + * testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: + Likewise. + +2025-04-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_tree.h (_Rb_tree::_M_key_compare): New member + function to invoke comparison function. + (_Rb_tree): Use new member function instead of accessing the + comparison function directly. + +2025-04-24 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/23_containers/forward_list/48101_neg.cc: Remove + dg-prune-output that doesn't match anything. + * testsuite/23_containers/list/48101_neg.cc: Likewise. + * testsuite/23_containers/multiset/48101_neg.cc: Likewise. + * testsuite/23_containers/set/48101_neg.cc: Likewise. + +2025-04-24 Jonathan Wakely <jwakely@redhat.com> + + * include/std/generator (generator::yield_value): Add overload + taking lvalue element_of view, as per LWG 3899. + * testsuite/24_iterators/range_generators/lwg3899.cc: New test. + +2025-04-24 François Dumont <frs.dumont@gmail.com> + + * testsuite/util/replacement_memory_operators.h: Adapt for -fno-exceptions + context. + * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Adapt test + to check std::deque shrink_to_fit method. + +2025-04-23 Andreas Schwab <schwab@linux-m68k.org> + + * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update. + * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update. + * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update. + +2025-04-23 ZENG Hao <c@cyano.cn> + + * src/c++23/std.cc.in (atomic_signed_lock_free): Guard with + preprocessor check for __cpp_lib_atomic_lock_free_type_aliases. + (atomic_unsigned_lock_free): Likewise. + +2025-04-22 Patrick Palka <ppalka@redhat.com> + + Revert: + 2024-08-22 Patrick Palka <ppalka@redhat.com> + + * include/bits/iterator_concepts.h (__detail::__projected): Define + an optimized partial specialization for when the projection is + std::identity. + * testsuite/24_iterators/indirect_callable/projected.cc: Verify the + optimization. + +2025-04-22 Andreas Schwab <schwab@linux-m68k.org> + + * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update. + +2025-04-22 Andreas Schwab <schwab@linux-m68k.org> + + * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update. + +2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: Regenerate. + * config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: Likewise. + +2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate. + * config/abi/post/i386-solaris/amd64/baseline_symbols.txt: + Likewise. + * config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise. + * config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt: + Likewise. + +2025-04-22 Jakub Jelinek <jakub@redhat.com> + + * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update. + * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update. + * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update. + * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. + * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update. + * config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update. + +2025-04-22 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/23_containers/flat_map/1.cc: Add dg-timeout-factor 2. + * testsuite/23_containers/flat_multimap/1.cc: Likewise. + * testsuite/std/format/ranges/map.cc: Likewise. + * testsuite/std/format/ranges/sequence.cc: Likewise. + * testsuite/std/format/ranges/string.cc: Likewise. + +2025-04-22 Andreas Schwab <schwab@linux-m68k.org> + + * testsuite/util/testsuite_abi.cc (check_version): Update latestp + to use GLIBCXX_3.4.35 and CXXABI_1.3.17. + +2025-04-18 François Dumont <frs.dumont@gmail.com> + + * testsuite/util/debug/unordered_checks.h (fill_container): New helper method. + (use_erased_local_iterator, invalid_local_iterator_pre_increment) + (invalid_local_iterator_post_increment, invalid_local_iterator_compare) + (invalid_local_iterator_range): Use latter. + (fill_and_get_local_iterator): New, use fill_container. + (use_invalid_local_iterator): Use latter. + (invalid_local_iterator_arrow_operator): New test function. + (invalid_local_iterator_copy_instantiation): New test function. + (invalid_local_iterator_move_instantiation): New test function. + (invalid_local_iterator_copy_assignment): New test function. + (invalid_local_iterator_move_assignment): New test function. + (invalid_local_iterator_const_conversion): New test function. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_arrow_operator_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_const_conversion_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_copy_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/invalid_local_iterator_move_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc: Test unordered_map. + * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: Test unordered_multimap. + * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc: Likewise. + * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: Likewise. + * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: Likewise. + * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: Likewise. + * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: Likewise. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_arrow_operator_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_const_conversion_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_copy_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_move_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_multimap/debug/max_load_factor_neg.cc: + Test unordered_multimap. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_arrow_operator_neg.cc: + New test case. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_const_conversion_neg.cc: + New test case. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_copy_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_move_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_arrow_operator_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_const_conversion_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_copy_construction_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_assignment_neg.cc: + New test case. + * testsuite/23_containers/unordered_set/debug/invalid_local_iterator_move_construction_neg.cc: + New test case. + +2025-04-18 Tomasz Kamiński <tkaminsk@redhat.com> + + * doc/xml/manual/appendix_contributing.xml: Add 'and functions'. + +2025-04-17 Jason Merrill <jason@redhat.com> + + * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust + diagnostic. + +2025-04-17 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119840 + * include/std/format (_M_parse_fill_and_align): Cast elements of + __not_fill to _CharT. + +2025-04-17 Jonathan Wakely <jwakely@redhat.com> + + * include/std/format (format_kind): Do not use 'not' + alternative token to make the primary template ill-formed. Use + the undeclared identifier __primary_template_not_defined and a + comment that will appear in diagnostics. + * testsuite/std/format/ranges/format_kind_neg.cc: New test. + +2025-04-17 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/std/format (__format::__simply_formattable_range): Define. + (range_formatter::format): Do not instantiate _M_format for mutable + _Rg if const _Rg can be used. + +2025-04-16 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/std/format (range_formatter::format): Format const range, + only if reference type is not changed. + * testsuite/std/format/ranges/formatter.cc: New tests. + +2025-04-16 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/std/format (__formatter_int::_M_format_character_escaped) + (__formatter_str::format): Use __sink.out() to produce _Sink_iter. + (__format::__const_formattable_range): Moved closer to range_formatter. + (__format::__maybe_const_range): Use `__conditional_t` and moved closer + to range_formatter. + (__format::__format_padded, __format::maybe_const) + (__format::__indexed_formatter_storage, __format::__tuple_formatter) + (std::formatter<pair<_Fp, _Sp>, _CharT>>) + (std::formatter<tuple<_Tps...>, _CharT): Define. + (std::formatter<_Rg, _CharT>::format): Cast incoming range to + __format::__maybe_const_range<_Rg, _CharT>&. + (std::formatter<_Rg, _CharT>::_M_format): Extracted from format, + and use __format_padded. + (std::formatter<_Rg, _CharT>::_M_format_no_padding): Rename... + (std::formatter<_Rg, _CharT>::_M_format_elems): ...to this. + (std::formatter<_Rg, _CharT>::_M_format_with_padding): Extracted as + __format_padded. + * testsuite/util/testsuite_iterators.h (test_input_range_nocopy): + Define. + * testsuite/std/format/ranges/formatter.cc: Tests for `m` specifier. + * testsuite/std/format/ranges/sequence.cc: Tests for array and subrange. + * testsuite/std/format/ranges/map.cc: New test. + * testsuite/std/format/tuple.cc: New test. + +2025-04-15 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (__glibcxx_want_ranges_iota): Do not + define. + +2025-04-15 Jonathan Wakely <jwakely@redhat.com> + + * include/std/numeric (ranges): Only declare namespace for C++23 + and later. + (ranges::iota_result): Fix indentation. + * testsuite/17_intro/names.cc: Check ranges is not used as an + identifier before C++20. + +2025-04-15 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/std/format (__format::__has_debug_format, _Pres_type::_Pres_seq) + (_Pres_type::_Pres_str, __format::__Stackbuf_size): Define. + (_Separators::_S_squares, _Separators::_S_parens, _Separators::_S_comma) + (_Separators::_S_colon): Define additional constants. + (_Spec::_M_parse_fill_and_align): Define overload accepting + list of excluded characters for fill, and forward existing overload. + (__formatter_str::_M_format_range): Define. + (__format::_Buf_sink) Use __Stackbuf_size for size of array. + (__format::__is_map_formattable, std::range_formatter) + (std::formatter<_Rg, _CharT>): Define. + * src/c++23/std.cc.in (std::format_kind, std::range_format) + (std::range_formatter): Export. + * testsuite/std/format/formatter/lwg3944.cc: Guarded tests with + __glibcxx_format_ranges. + * testsuite/std/format/formatter/requirements.cc: Adjusted for standard + behavior. + * testsuite/23_containers/vector/bool/format.cc: Test vector<bool> formatting. + * testsuite/std/format/ranges/format_kind.cc: New test. + * testsuite/std/format/ranges/formatter.cc: New test. + * testsuite/std/format/ranges/sequence.cc: New test. + * testsuite/std/format/ranges/string.cc: New test. + +2025-04-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119748 + * include/bits/basic_string.h (_S_copy_chars): Only optimize for + contiguous iterators that are convertible to const charT*. Use + explicit conversion to charT after dereferencing iterator. + (_S_copy_range): Likewise for contiguous ranges. + * include/bits/basic_string.tcc (_M_construct): Use explicit + conversion to charT after dereferencing iterator. + * include/bits/cow_string.h (_S_copy_chars): Likewise. + (basic_string(from_range_t, R&&, const Allocator&)): Likewise. + Only optimize for contiguous iterators that are convertible to + const charT*. + * testsuite/21_strings/basic_string/cons/char/119748.cc: New + test. + * testsuite/21_strings/basic_string/cons/wchar_t/119748.cc: + New test. + +2025-04-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/util/testsuite_iterators.h (test_container): Define + array constructor for C++98 as well. + +2025-04-14 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/21334 + * doc/xml/manual/using.xml: Document that container data race + avoidance rules do not apply to COW std::string. + * doc/html/*: Regenerate. + +2025-04-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119725 + * testsuite/std/format/debug.cc: Updated dg-options. + * testsuite/std/format/debug_nonunicode.cc: Updated dg-options. + +2025-04-11 Jonathan Wakely <jwakely@redhat.com> + + * src/c++17/fast_float/LOCAL_PATCHES: Update. + +2025-04-11 Evgeny Karpov <Evgeny.Karpov@microsoft.com> + + * src/c++17/fast_float/fast_float.h (full_multiplication): + Support aarch64-w64-mingw32 target. + +2025-04-11 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/basic_string.h (_S_copy_chars): Replace overloads + with constexpr-if and extend optimization to all contiguous + iterators. + * src/c++11/string-inst.cc: Extend comment. + +2025-04-11 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/version.def (containers_ranges): Define. + * include/bits/version.h: Regenerate. + * include/bits/ranges_base.h (__detail::__container_compatible_range) + (__detail::__range_to_alloc_type, __detail::__range_mapped_type) + (__detail::__range_key_type): Depend on __glibcxx_containers_ranges + instead of __glibcxx_ranges_to_container. + * include/bits/basic_string.h: Replace __glibcxx_ranges_to_container with + __glibcxx_containers_ranges. + * include/bits/cow_string.h: Likewise. + * include/bits/deque.tcc: Likewise. + * include/bits/forward_list.h: Likewise. + * include/bits/stl_bvector.h: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_multiset.h: Likewise. + * include/bits/stl_queue.h: Likewise. + * include/bits/stl_set.h: Likewise. + * include/bits/stl_stack.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/unordered_map.h: Likewise. + * include/bits/unordered_set.h: Likewise. + * include/bits/vector.tcc: Likewise. + * include/debug/deque: Likewise. + * include/debug/forward_list: Likewise. + * include/debug/list: Likewise. + * include/debug/map.h: Likewise. + * include/debug/multimap.h: Likewise. + * include/debug/multiset.h: Likewise. + * include/debug/set.h: Likewise. + * include/debug/unordered_map: Likewise. + * include/debug/unordered_set: Likewise. + * include/debug/vector: Likewise. + * include/std/deque: Provide __cpp_lib_containers_ranges. + * include/std/forward_list: Likewise. + * include/std/list: Likewise. + * include/std/map: Likewise. + * include/std/queue: Likewise. + * include/std/set: Likewise. + * include/std/stack: Likewise. + * include/std/string: Likewise. + * include/std/unordered_map: Likewise. + * include/std/unordered_set: Likewise. + * include/std/vector: Likewise. + * testsuite/21_strings/basic_string/cons/from_range.cc: Test for value + __cpp_lib_containers_ranges. + * testsuite/23_containers/deque/cons/from_range.cc: Likewise. + * testsuite/23_containers/forward_list/cons/from_range.cc: Likewise. + * testsuite/23_containers/list/cons/from_range.cc: Likewise. + * testsuite/23_containers/map/cons/from_range.cc: Likewise. + * testsuite/23_containers/multimap/cons/from_range.cc: Likewise. + * testsuite/23_containers/multiset/cons/from_range.cc: Likewise. + * testsuite/23_containers/priority_queue/cons_from_range.cc: Likewise. + * testsuite/23_containers/queue/cons_from_range.cc: Likewise. + * testsuite/23_containers/set/cons/from_range.cc: Likewise. + * testsuite/23_containers/stack/cons_from_range.cc: Likewise. + * testsuite/23_containers/unordered_map/cons/from_range.cc: Likewise. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: Likewise. + * testsuite/23_containers/unordered_multiset/cons/from_range.cc: Likewise. + * testsuite/23_containers/unordered_set/cons/from_range.cc: Likewise. + * testsuite/23_containers/vector/bool/cons/from_range.cc: Likewise. + * testsuite/23_containers/vector/cons/from_range.cc: Likewise. + +2025-04-11 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/basic_string.h (_S_copy_range): New function. + (basic_string(from_range_t, R%%, const Alloc&)): New + constructor. + (append_range, assign_range, insert_range, replace_with_range): + New functions. + * include/bits/cow_string.h: Likewise. + * testsuite/21_strings/basic_string/cons/from_range.cc: New + test. + * testsuite/21_strings/basic_string/modifiers/append/append_range.cc: + New test. + * testsuite/21_strings/basic_string/modifiers/assign/assign_range.cc: + New test. + * testsuite/21_strings/basic_string/modifiers/insert/insert_range.cc: + New test. + * testsuite/21_strings/basic_string/modifiers/replace/replace_with_range.cc: + New test. + +2025-04-11 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/bits/chrono_io.h (__detail::_Widen): Moved to std/format file. + * include/bits/unicode-data.h: Regnerate. + * include/bits/unicode.h (__unicode::_Utf_iterator::_M_units) + (__unicode::__should_escape_category): Define. + * include/std/format (_GLIBCXX_WIDEN_, _GLIBCXX_WIDEN): Copied from + include/bits/chrono_io.h. + (__format::_Widen): Moved from include/bits/chrono_io.h. + (__format::_Term_char, __format::_Escapes, __format::_Separators) + (__format::__should_escape_ascii, __format::__should_escape_unicode) + (__format::__write_escape_seq, __format::__write_escaped_char) + (__format::__write_escaped_acii, __format::__write_escaped_unicode) + (__format::__write_escaped): Define. + (__formatter_str::_S_trunc): Extracted truncation of character + sequences. + (__formatter_str::format): Handle _Pres_esc. + (__formatter_int::_M_do_parse) [__glibcxx_format_ranges]: Parse '?'. + (__formatter_int::_M_format_character_escaped): Define. + (formatter<_CharT, _CharT>::format, formatter<char, wchar_t>::format): + Handle _Pres_esc. + (__formatter_str::set_debug_format, formatter<...>::set_debug_format) + Guard with __glibcxx_format_ranges. + (__format::_Fixedbuf_sink): Define. + * testsuite/23_containers/vector/bool/format.cc: Use __format::_Widen + and remove unnecessary <chrono> include. + * testsuite/std/format/debug.cc: New test. + * testsuite/std/format/debug_nonunicode.cc: New test. + * testsuite/std/format/parse_ctx.cc (escaped_strings_supported): Define + to true if __glibcxx_format_ranges is defined. + * testsuite/std/format/string.cc (escaped_strings_supported): Define to + true if __glibcxx_format_ranges is defined. + +2025-04-10 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/version.def (constrained_equality): Only define + as 202411 for C++23 and later, use 202403 for C++20. + * include/bits/version.h: Regenerate. + * testsuite/20_util/expected/equality_constrained.cc: Remove + TODO comment. + +2025-04-10 John David Anglin <danglin@gcc.gnu.org> + + * config/os/hpux/os_defines.h: Remove _GLIBCXX_USE_LONG_LONG + define. + +2025-04-09 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/115046 + PR libstdc++/112490 + * include/bits/stl_iterator.h (basic_const_iterator::operator-): + Replace non-dependent basic_const_iterator function parameter with + a dependent one of type basic_const_iterator<_It2> where _It2 + matches _It. + * testsuite/std/ranges/adaptors/as_const/1.cc (test04): New test. + +2025-04-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119671 + * include/std/format (__formatter_fp::format): Do not invalidate + __wstr unless _M_localized returns a valid string. + * testsuite/std/format/functions/format.cc: Check wide string + formatting of floating-point types with classic locale. + +2025-04-07 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119642 + * include/bits/formatfwd.h: Remove stray pragma. + +2025-04-07 Jonathan Wakely <jwakely@redhat.com> + + * include/precompiled/stdc++.h: Include <stdbit.h> and + <stdckdint.h>. Include <stacktrace> unconditionally. + +2025-04-07 Jonathan Wakely <jwakely@redhat.com> + + * doc/doxygen/user.cfg.in (INPUT): Add flat_map, flat_set, + text_encoding, stdbit.h and stdckdint.h. + +2025-04-07 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119645 + * acinclude.m4 (GLIBCXX_ENABLE_LOCK_POLICY) [GCN, nvptx]: + Hard-code results. + * configure: Regenerate. + * configure.host [GCN, nvptx] (atomicity_dir): Set to + 'cpu/generic/atomicity_builtins'. + +2025-04-04 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/119620 + * include/std/flat_set (_Flat_set_impl::_M_try_emplace): Split + out into two overloads, one taking at least one argument and one + taking zero arguments. Turn __k into an auto&& reference bound + to __arg if it's already a value_type and otherwise bound to a + lifetime-extended value_type temporary. + * testsuite/23_containers/flat_multiset/1.cc (test08): New test. + * testsuite/23_containers/flat_set/1.cc (test08): New test. + +2025-04-04 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/101587 + * include/bits/ranges_uninitialized.h (__detail::__mindist): + Remove. + (ranges::uninitialized_copy, ranges::uninitialized_copy_n) + (ranges::uninitialized_move, ranges::uninitialized_move_n): Use + comparison and assignment instead of __mindist. + * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: + Check with ranges that use integer-like class type for + difference type. + * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: + Likewise. + +2025-04-04 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/109162 + * include/Makefile.am: Add bits/formatfwd.h. + * include/Makefile.in: Add bits/formatfwd.h. + * include/bits/version.def: Define __glibcxx_format_ranges without + corresponding std name. + * include/bits/version.h: Regenerate. + * include/std/format (basic_format_context, __format::__char): + Move declartions to bits/formatfwd.h. + (formatter<_Tp, _CharT>): Remove default argument for _CharT + parameter, now specified in forward declaration in bits/formatfwd.h. + * include/std/vector (formatter<_Bit_reference, _CharT>): Define. + * include/bits/formatfwd.h: New file with forward declarations + for bits of std/format. + * testsuite/23_containers/vector/bool/format.cc: New test. + +2025-04-04 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/basic_string.h: Check __glibcxx_string_view and + __glibcxx_variant instead of __cplusplus >= 2017L. + * include/bits/cow_string.h: Likewise. + +2025-04-04 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/basic_string.tcc: Fix whitespace. + +2025-04-04 Arsen Arsenović <arsen@aarsen.me> + + * include/bits/version.tpl: Implement no_stdname. + * include/bits/version.def: Document no_stdname. + +2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> + + * config/cpu/nvptx/t-nvptx: Remove. + * configure.host [nvptx]: Adjust. + +2025-04-03 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119573 + * config/cpu/nvptx/t-nvptx (AM_MAKEFLAGS): Don't amend. + +2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/std/format/functions/format.cc: Restored line. + +2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119593 + * include/bits/unicode.h + (__unicode::__literal_encoding_is_unicode<_CharT>): + Corrected handing for UTF-16 and UTF-32 with "LE" or "BE" suffix. + * include/std/format (__formatter_str::_S_character_width): + Define. + (__formatter_str::_S_character_width): Updated passed char + length. + * testsuite/std/format/functions/format.cc: Test for wchar_t. + +2025-04-02 John David Anglin <danglin@gcc.gnu.org> + + * config/os/hpux/os_defines.h: Only use long long when + __cplusplus >= 201103L. + +2025-04-02 Iain Sandoe <iain@sandoe.co.uk> + + * testsuite/lib/prune.exp: Prune ld warning about duplicatei + rpaths. + +2025-04-01 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/114945 + * include/bits/vector.tcc (vector::_M_default_append): Add + unreachable condition so the compiler knows that _M_finish is + not null. + * testsuite/23_containers/vector/capacity/114945.cc: New test. + +2025-04-01 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/119369 + * config/cpu/gcn/cpu_defines.h: New. + * configure.host [GCN] (cpu_defines_dir): Point to it. + +2025-03-31 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/110498 + * include/bits/vector.tcc (vector<bool, A>::_M_reallocate): + Hoist loads of begin() and end() before allocation and use them + to state an unreachable condition. + * testsuite/23_containers/vector/bool/capacity/110498.cc: New + test. + +2025-03-31 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/114758 + * include/bits/vector.tcc (vector<bool, A>::_M_fill_insert): + Hoist loads of begin() and end() before allocation. + * testsuite/23_containers/vector/bool/capacity/114758.cc: New + test. + +2025-03-31 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119550 + * acinclude.m4 (GLIBCXX_STRUCT_TM_TM_ZONE): New macro. + * config.h.in: Regenerate. + * configure: Regenerate. + * configure.ac: Use GLIBCXX_STRUCT_TM_TM_ZONE. + * include/bits/chrono_io.h (__formatter_chrono::_M_c): Check + _GLIBCXX_USE_STRUCT_TM_TM_ZONE instead of + _GLIBCXX_HAVE_STRUCT_TM_TM_ZONE. + +2025-03-31 Jonathan Wakely <jwakely@redhat.com> + + * config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Make + std::basic_string::_M_construct patterns more precise. + +2025-03-31 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119545 + * include/std/tuple (operator==): Convert comparison results to + bool. + * testsuite/20_util/tuple/comparison_operators/119545.cc: New + test. + +2025-03-31 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119517 + * include/bits/chrono_io.h (formatter): + Add __format::__char for _CharT and adjust parse and format + method signatures. + * testsuite/std/time/format/pr119517.cc: New test. + +2025-03-31 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/103827 + PR tree-optimization/80331 + PR tree-optimization/87502 + * config/abi/pre/gnu.ver (GLIBCXX_3.4.34): Use [jmy] rather than m + in pattern for _M_construct<bool>(char const*, size_t). + +2025-03-30 Jan Hubicka <hubicka@ucw.cz> + + PR tree-optimization/103827 + PR tree-optimization/80331 + PR tree-optimization/87502 + * config/abi/pre/gnu.ver: Add version for _M_construct<bool> + * include/bits/basic_string.h: (basic_string::_M_construct<bool>): Declare. + (basic_string constructors): Use it. + * include/bits/basic_string.tcc: (basic_string::_M_construct<bool>): New template. + * src/c++11/string-inst.cc: Instantated S::_M_construct<bool>. + +2025-03-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117983 + * testsuite/23_containers/vector/modifiers/insert/117983.cc: New + test. + +2025-03-28 David Malcolm <dmalcolm@redhat.com> + + * testsuite/17_intro/shared_with_static_deps.cc: Fix malformed + dg-require-static-libstdcxx directive. + * testsuite/17_intro/static.cc: Likewise. + * testsuite/18_support/type_info/110572.cc: Likewise. + * testsuite/20_util/to_chars/4.cc: Likewise. + * testsuite/std/time/tzdb_list/pr118811.cc: Likewise. + +2025-03-27 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/101587 + * include/bits/ranges_uninitialized.h (__detail::__mindist): + New function object. + (ranges::uninitialized_copy, ranges::uninitialized_copy_n) + (ranges::uninitialized_move, ranges::uninitialized_move_n): Use + __mindist instead of std::min. + * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: + Check ranges with difference difference types. + * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: + Likewise. + +2025-03-27 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_c): Use + const_cast when setting tm.tm_zone. + +2025-03-27 Jonathan Wakely <jwakely@redhat.com> + + * src/c++20/tzdata.zi: Import new file from 2025b release. + +2025-03-27 Sam James <sam@gentoo.org> + + * testsuite/std/format/string_neg.cc: Add missing brace for dg-error. + +2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR libstdc++/119488 + * include/bits/version.def (constexpr_algorithms): Bump + the feature-testing macro. + * include/bits/version.h: Regenerate. + * testsuite/25_algorithms/cpp_lib_constexpr.cc: Test the + bumped value for the feature-testing macro. + +2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/algorithmfwd.h (stable_partition): Mark it + as constexpr for C++26. + * include/bits/ranges_algo.h (__stable_partition_fn): Likewise. + * include/bits/stl_algo.h (stable_partition): Mark it as + constexpr for C++26; during constant evaluation use a new + codepath where a temporary buffer of 1 element is used. + * testsuite/25_algorithms/headers/algorithm/synopsis.cc + (stable_partition): Add constexpr. + * testsuite/25_algorithms/stable_partition/constexpr.cc: New test. + +2025-03-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/algorithmfwd.h (inplace_merge): Mark it as + constexpr for C++26. + * include/bits/ranges_algo.h (__inplace_merge_fn): Likewise. + * include/bits/stl_algo.h (inplace_merge): Mark it as constexpr; + during constant evaluation, dispatch to the non-allocating + codepath. + * testsuite/25_algorithms/headers/algorithm/synopsis.cc + (inplace_merge): Add constexpr. + * testsuite/25_algorithms/inplace_merge/constexpr.cc: New test. + +2025-03-27 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119469 + * include/bits/iterator_concepts.h (_IterMove::__result): Use + decltype-specifier instead of an explicit type. + * testsuite/24_iterators/customization_points/iter_move.cc: + Check results for function references. + +2025-03-26 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/version.def (constexpr_algorithms): Change + the value of the feature-testing macro. + * include/bits/version.h: Regenerate. + * testsuite/25_algorithms/cpp_lib_constexpr.cc: Amend the + check of the feature-testing macro. + +2025-03-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119415 + * include/std/flat_set (_Flat_set_impl:insert_range): + Replace __detail::__cpp17_input_iterator with __has_input_iter_cat. + * testsuite/23_containers/flat_multiset/1.cc: New tests + * testsuite/23_containers/flat_set/1.cc: New tests + +2025-03-26 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/deque.tcc (deque::prepend_range, deque::append_range) + (deque::insert_range, __advance_dist): Define. + (deque::_M_range_prepend, deque::_M_range_append): + Extract from _M_range_insert_aux for _ForwardIterator(s). + * include/bits/stl_deque.h (deque::assign_range): Define. + (deque::prepend_range, deque::append_range, deque::insert_range): + Declare. + (deque(from_range_t, _Rg&&, const allocator_type&)): Define constructor + and deduction guide. + * include/debug/deque (deque::prepend_range, deque::append_range) + (deque::assign_range): Define. + (deque(from_range_t, _Rg&&, const allocator_type&)): Define constructor + and deduction guide. + * testsuite/23_containers/deque/cons/from_range.cc: New test. + * testsuite/23_containers/deque/modifiers/append_range.cc: New test. + * testsuite/23_containers/deque/modifiers/assign/assign_range.cc: + New test. + * testsuite/23_containers/deque/modifiers/prepend_range.cc: New test. + * testsuite/23_containers/deque/modifiers/insert/insert_range.cc: New file. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (ranges::to): Allow unions as well as + non-union class types. + * testsuite/std/ranges/conv/lwg4229.cc: New test. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/108487 + * include/bits/stl_vector.h (vector(initializer_list)): Call + _M_range_initialize_n instead of _M_range_initialize. + (vector(InputIterator, InputIterator)): Use _M_range_initialize_n + for C++20 sized sentinels and forward iterators. + (vector(from_range_t, R&&)): Use _M_range_initialize_n for sized + ranges and forward ranges. + (vector::_M_range_initialize(FwIt, FwIt, forward_iterator_tag)): + Likewise. + (vector::_M_range_initialize_n): New function. + * testsuite/23_containers/vector/cons/108487.cc: New test. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + * include/debug/vector (vector::assign_range): Use change in + capacity to detect reallocation. + (vector::insert_range, vector::append_range): Likewise. Remove + unused variables. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_bvector.h (vector::assign_range): More + efficient implementation for forward/sized ranges. + (vector::append_range): Handle potentially overlapping range. + * include/bits/stl_vector.h (vector(from_range_t, R&&, Alloc)): + Do not use append_range for non-sized input range case. + (vector::append_range): Handle potentially overlapping range. + * include/bits/vector.tcc (vector::insert_range): Forward range + instead of moving it. + * testsuite/23_containers/vector/bool/modifiers/insert/append_range.cc: + Test overlapping ranges. + * testsuite/23_containers/vector/modifiers/append_range.cc: + Likewise. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118699 + * testsuite/27_io/filesystem/operations/copy.cc: Check copying a + file to a directory. + +2025-03-25 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119429 + * include/std/format (__format::_Scanner::_Scanner): Cast + default argument to size_t. + +2025-03-25 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119415 + * include/std/flat_set (_Flat_set_impl:insert_range): + Add __detail::__cpp17_input_iterator check. + * testsuite/23_containers/flat_multiset/1.cc: New tests + * testsuite/23_containers/flat_set/1.cc: New tests + +2025-03-24 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/policy_data_structures_biblio.xml: Fix two + broken links. + * doc/html/manual/policy_data_structures.html: Regenerate. + +2025-03-24 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/101527 + * testsuite/24_iterators/common_iterator/101527.cc: New test. + * testsuite/24_iterators/counted_iterator/101527.cc: New test. + +2025-03-24 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_bvector.h (vector<bool, A>): Enforce the + C++20 requirement that the allocator's value_type matches the + container. + * testsuite/23_containers/vector/bool/cons/from_range.cc: Fix + incorrect allocator type. + +2025-03-21 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117214 + * configure.ac: Use AC_STRUCT_TIMEZONE. + * config.h.in: Regenerate. + * configure: Regenerate. + * include/bits/chrono_io.h (__formatter_chrono::_M_c): Set + tm_isdst and tm_zone. + * testsuite/std/time/format/pr117214.cc: Check %c formatting of + zoned_time and local time. + +2025-03-21 XU Kailiang <xu2k3l4@outlook.com> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/117214 + * include/bits/chrono_io.h (__formatter_chrono::_M_c): Use + _M_locale_fmt to format %c time point. + * testsuite/std/time/format/pr117214.cc: New test. + +2025-03-21 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (__formatter_chrono::_M_locale_fmt): + Imbue locale into ostringstream. + * testsuite/std/time/format/localized.cc: Check that correct + locale is used for call to time_put::put. + +2025-03-21 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_vector.h (vector(from_range_t, Alloc)): Use + delegating constructor instead of RAII guards. Use append_range + for unsized input range case. + +2025-03-21 Jonathan Wakely <jwakely@redhat.com> + + * src/c++23/std.compat.cc.in: Only export <stdbit.h> and + <stdckdint.h> contents for C++26 and later. + +2025-03-21 Jonathan Wakely <jwakely@redhat.com> + + * src/c++23/std.cc.in (tuple_element, tuple_element_t) + (tuple_size, tuple_size_v, get): Export. + (ranges::cache_latest_view, views::cache_latest): Export. + (ranges::to_input_view, views::to_input): Export. + (from_range_t, from_range): Export. + +2025-03-20 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/debug/unordered_map (unordered_map): Add from_range + constructors and deduction guides. + (unordered_multimap): Likewise. + * include/debug/unordered_set (unordered_set): Add from_range + constructors and deduction guides. + (unordered_multiset): Likewise. + +2025-03-20 Jonathan Wakely <jwakely@redhat.com> + + * include/debug/map.h (map): Add from_range constructors and + deduction guides. + * include/debug/multimap.h (multimap): Likewise. + * include/debug/multiset.h (multiset): Likewise. + * include/debug/set.h (set): Likewise. + +2025-03-20 Jakub Jelinek <jakub@redhat.com> + + * testsuite/18_support/numeric_limits/traps.cc (main): Fix comment + typo. + +2025-03-19 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/test.xml: Fix default for -std option. + * doc/html/manual/test.html: Regenerate. + +2025-03-19 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/locale_facets_nonio.tcc (time_put::do_put): Fix + typo in comment. + +2025-03-19 François Dumont <frs.dumont@gmail.com> + + * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr.cc: + Activate the template member tests involving __cpp_lib_ranges_to_container + support. + +2025-03-19 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/20_util/stdbit/1.cc: Include <climits> instead of + <limits.h>. + +2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/ranges_base.h (__detail::__range_key_type): + Replace RV::first_type with tuple_element_t<0, RV>. + (__detail::__range_mapped_type) Replace RV::second_type + with tuple_element_t<1, RV>. + * testsuite/23_containers/flat_map/1.cc: New tests. + * testsuite/23_containers/flat_multimap/1.cc: New tests. + * testsuite/23_containers/map/cons/from_range.cc: New tests. + * testsuite/23_containers/multimap/cons/from_range.cc: New tests. + * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + New tests. + +2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/bits/unordered_map.h + (unordered_map(from_range_t, _Rg&&, const allocator_type&)) + (unordered_multimap(from_range_t, _Rg&&, const allocator_type&)): + Define. + * include/bits/unordered_set.h + (unordered_set(from_range_t, _Rg&&, const allocator_type&)) + (unordered_multiset(from_range_t, _Rg&&, const allocator_type&)): + Define. + * testsuite/23_containers/unordered_map/cons/from_range.cc: New tests. + New tests. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + New tests. + * testsuite/23_containers/unordered_multiset/cons/from_range.cc: + New tests. + * testsuite/23_containers/unordered_set/cons/from_range.cc: New tests. + * testsuite/std/ranges/conv/1.cc: New tests. + +2025-03-19 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119358 + * include/bits/unordered_map.h (unordered_multimap::insert_range): + Cast ranges::distance to size_type before passing to _M_rehash_insert. + * include/bits/unordered_set.h (unordered_multiset::insert_range): + Same as unordered_multimap::insert_range. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + New tests. + * testsuite/23_containers/unordered_multiset/cons/from_range.cc: + New tests. + +2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/unordered_map.h (unordered_map): Define from_range + constructors and insert_range member. + (unordered_multimap): Likewise. + * testsuite/23_containers/unordered_multimap/cons/from_range.cc: + New test. + * testsuite/23_containers/unordered_multimap/modifiers/insert_range.cc: + New test. + * testsuite/23_containers/unordered_map/cons/from_range.cc: + New test. + * testsuite/23_containers/unordered_map/modifiers/insert_range.cc: + New test. + +2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/hashtable.h (_M_rehash_insert) + (_M_insert_range_multi): Extracted rehashing for range insertion + to separate function. + * include/bits/unordered_set.h (unordered_set): Define from_range + constructors and insert_range member. + (unordered_multiset) Likewise. + * testsuite/23_containers/unordered_multiset/cons/from_range.cc: + New test. + * testsuite/23_containers/unordered_multiset/modifiers/insert_range.cc: + New test. + * testsuite/23_containers/unordered_set/cons/from_range.cc: + New test. + * testsuite/23_containers/unordered_set/modifiers/insert_range.cc: + New test. + +2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/stl_multiset.h: (inser_range) + (multiset(from_range_t, _Rg&&, const _Compare&, const _Alloc&)) + (multiset(from_range_t, _Rg&&, const _Alloc&)): Define. + * include/bits/stl_set.h: (set(from_range_t, _Rg&&, const _Alloc&)) + (set(from_range_t, _Rg&&, const _Compare&, const _Alloc&), insert_range): + Define. + * testsuite/23_containers/multiset/cons/from_range.cc: New test. + * testsuite/23_containers/multiset/modifiers/insert/insert_range.cc: + New test. + * testsuite/23_containers/set/cons/from_range.cc: New test. + * testsuite/23_containers/set/modifiers/insert/insert_range.cc: + New test. + +2025-03-18 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/ranges_base.h (__detail::__range_to_alloc_type): + Define. + * include/bits/stl_multimap.h: (inser_range) + (multimap(from_range_t, _Rg&&, const _Compare&, const _Alloc&)) + (multimap(from_range_t, _Rg&&, const _Alloc&)): Define. + * include/bits/stl_map.h: (map(from_range_t, _Rg&&, const _Alloc&)) i + (map(from_range_t, _Rg&&, const _Compare&, const _Alloc&), insert_range): + Define. + * testsuite/23_containers/multimap/cons/from_range.cc: New test. + * testsuite/23_containers/multimap/modifiers/insert/insert_range.cc: New test. + * testsuite/23_containers/map/cons/from_range.cc: New test. + * testsuite/23_containers/map/modifiers/insert/insert_range.cc: New test. + +2025-03-14 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/119282 + * include/bits/stl_vector.h (vector::vector(from_range_t)): Add + missing 'constexpr' to local class _Clear. + * testsuite/std/ranges/conv/1.cc (test_pr119282): New test. + +2025-03-14 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111138 + * include/std/ranges (_ZipTransform::operator()): + Create separate overload for calls with empty range pack, + and add move_constructible, regular_invocable and + is_object_v<invoke_result_t<...>>> constraints. + * testsuite/std/ranges/zip_transform/1.cc: New tests + Jonathan Wakely <jwakely@redhat.com> + +2025-03-14 Thomas Schwinge <tschwinge@baylibre.com> + + PR target/92713 + PR target/101544 + * config/cpu/nvptx/cpu_defines.h: New. + * config/cpu/nvptx/t-nvptx: Likewise. + * configure.host: Handle GCN, nvptx. + +2025-03-14 Tomasz Kamiński <tkaminsk@redhat.com> + + * testsuite/23_containers/priority_queue/cons_from_range.cc: + Add `#include <algorithm>. + * testsuite/23_containers/priority_queue/members/push_range.cc: + Add `#include <algorithm>. + +2025-03-14 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/shared_ptr_base.h (lock): Fixed a compile error + when calling lock() on a weak_ptr<T[]>, by removing an + erroneous usage of element_type from within lock(). + * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/1.cc: + Add more tests for array types. + * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc: + Likewise. + * testsuite/20_util/shared_ptr/requirements/1.cc: New test. + * testsuite/20_util/weak_ptr/requirements/1.cc: New test. + +2025-03-13 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/116440 + * include/std/tuple (tuple::tuple(const _Elements&...)) + [C++20]: Turn into a template. + * testsuite/20_util/tuple/116440.C: New test. + +2025-03-13 Jonathan Wakely <jwakely@redhat.com> + Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/111055 + * include/bits/stl_queue.h (queue(from_range_t, _Rg&&)) + (queue(from_range_t, _Rg&&, const _Alloc&), push_range): + Define. + (priority_queue(from_range_t, R&&, const Compare&)) + (push_range): Define. + * include/bits/stl_stack.h (stack(from_range_t, R&&)) + (stack(from_range_t, R&&, const Alloc&), push_range): Define. + * testsuite/util/testsuite_iterators.h (test_range_nocopy): Define. + * testsuite/23_containers/priority_queue/cons_from_range.cc: New test. + * testsuite/23_containers/priority_queue/members/push_range.cc: New test. + * testsuite/23_containers/queue/cons_from_range.cc: New test. + * testsuite/23_containers/queue/members/push_range.cc: New test. + * testsuite/23_containers/stack/cons_from_range.cc: New test. + * testsuite/23_containers/stack/members/push_range.cc: New test. + +2025-03-13 Jonathan Wakely <jwakely@redhat.com> + + * include/Makefile.am: Add stdckdint.h. + * include/Makefile.in: Regenerate. + * src/c++23/std.compat.cc.in: Export <stdckdint.h> functions. + * include/c_compatibility/stdckdint.h: New file. + * testsuite/26_numerics/stdckdint/1.cc: New test. + * testsuite/26_numerics/stdckdint/2_neg.cc: New test. + +2025-03-13 Jonathan Wakely <jwakely@redhat.com> + + * include/Makefile.am: Add stdbit.h. + * include/Makefile.in: Regenerate. + * src/c++23/std.compat.cc.in: Export <stdbit.h> functions. + * include/c_compatibility/stdbit.h: New file. + * testsuite/20_util/stdbit/1.cc: New test. + * testsuite/20_util/stdbit/2_neg.cc: New test. + +2025-03-13 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/119135 + * include/std/ranges: Include <utility>. + (views::__detail::__is_ref_view): Replace with ... + (views::__detail::__is_constable_ref_view): ... this. + (views::_AsConst::operator()): Replace bogus use of element_type + in the ref_view branch. + * testsuite/std/ranges/adaptors/as_const/1.cc (test03): Extend + test. + +2025-03-13 Thomas Schwinge <tschwinge@baylibre.com> + + * acinclude.m4 (GLIBCXX_ENABLE_CXX_FLAGS): Append to + 'EXTRA_CXX_FLAGS' any additional flags. + * configure: Regenerate. + * configure.host: Document 'EXTRA_CFLAGS', 'EXTRA_CXX_FLAGS'. + +2025-03-13 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/108053 + * include/std/format (basic_format_arg::_M_visit_user): + Helper function for wrapping extension types into handle. + (visit_format_arg): Call `_M_visit_user` instead of `_M_visit`. + (basic_format_arg::visit): As above. + (__format::__visit_format_arg): Provides direct access to + values stored in basic_format_arg. + (__format::__int_from_arg): Use __format::__visit_format_arg + instead of std::visit_format_arg. + (_Formatting_scanner::_M_format_arg): As above. + (_Checking_scanner::__do_vformat_to): As above. + * testsuite/std/format/arguments/args.cc: New tests. + * testsuite/std/format/string.cc: Test for using __int128 + as width/precision. + +2025-03-12 Patrick Palka <ppalka@redhat.com> + + * include/bits/version.def (ranges_to_input): Define. + * include/bits/version.h: Regenerate. + * include/std/ranges (ranges::to_input_view): Define for C++26. + (views::__detail::__can_to_input): Likewise. + (views::_ToInput, views::to_input): Likewise. + * testsuite/std/ranges/adaptors/to_input/1.cc: New test. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/std/format: Include <bits/monostate.h> instead of + <variant>. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/std/format (basic_format_parse_context::__once): New + variable template. + (basic_format_parse_context::__valid_types_for_check_dynamic_spec): + New function template for checking argument types. + (basic_format_parse_context::__check_dynamic_spec): New function + template to implement the common check_dynamic_spec logic. + (basic_format_parse_context::check_dynamic_spec_integral): Call + __check_dynamic_spec instead of check_dynamic_spec. + (basic_format_parse_context::check_dynamic_spec_string): + Likewise. Use _CharT instead of char_type consistently. + (basic_format_parse_context::check_dynamic_spec): Use + __valid_types_for_check_dynamic_spec for precondition checks and + call __check_dynamic_spec for checking the arg id. + * testsuite/std/format/parse_ctx_neg.cc: Adjust expected errors. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/std/future (packaged_task::packaged_task(F&&)): Add + static_assert. + * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: Add + dg-error for new static assertion. + * testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: New + test. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/std/chrono (__detail::__get_leap_second_info): Update + expiry date for leap seconds list. + * src/c++20/tzdata.zi: Import new file from 2025a release. + * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds) + Update expiry date for leap seconds list. + +2025-03-12 Tomasz Kamiński <tkaminsk@redhat.com> + + * include/std/format (formatter<_Float16, _CharT>): Define only if + _GLIBCXX_FLOAT_IS_IEEE_BINARY32 macro is defined. + (formatter<_Float16, _CharT>): As above. + (formatter<__gnu_cxx::__bfloat16_t, _CharT>): As above. + (formatter<_Float64, _CharT>): Define only if + _GLIBCXX_DOUBLE_IS_IEEE_BINARY64 is defined. + (basic_format_arg::_S_to_arg_type): Normalize _Float32 and _Float64 + only to float and double respectivelly. + (basic_format_arg::_S_to_enum): Remove handling of _Float32 and _Float64. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/strings.xml: Tweak formatting. Add example + using lambda. + * doc/html/manual/strings.html: Regenerate. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unique_ptr.h (unique_ptr::operator*): Add + static_assert to check for dangling reference, as per LWG 4148. + * testsuite/20_util/unique_ptr/lwg4148.cc: New test. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ranges_util.h (ranges::_detail::__has_arrow): + Require operator->() to be valid on const-qualified type, as per + LWG 4112. + * testsuite/std/ranges/adaptors/lwg4112.cc: New test. + +2025-03-12 Jonathan Wakely <jwakely@redhat.com> + + * include/std/format + (basic_format_parse_context::check_dynamic_spec): Require a + non-empty parameter pack, as per LWG 4142. + * testsuite/std/format/parse_ctx.cc: Remove call of + check_dynamic_spec with empty template argument list. + * testsuite/std/format/parse_ctx_neg.cc: Add dg-error to call of + check_dynamic_spec with empty template argument list. + +2025-03-08 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/version.def (atomic_value_initialization): + Guard the FTM with the language concepts FTM. + * include/bits/version.h: Regenerate. + * include/std/atomic (atomic): When atomic value init is + defined, change the defaulted default constructor to + a non-defaulted one, constraining it as per LWG4169. + Otherwise, keep the existing constructor. + Remove the NSDMI for the _M_i member. + (_GLIBCXX20_INIT): Drop the macro, as it is not needed any more. + * testsuite/29_atomics/atomic/69301.cc: Test that + an atomic wrapping a non-default-constructible type is + always itself non-default-constructible (in all language + modes). + * testsuite/29_atomics/atomic/cons/trivial.cc: New test. + +2025-03-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_algobase.h (__nothrow_contiguous_iterator): + Remove. + (__memcpyable_iterators): Simplify. + (__copy_move_a2, __copy_n_a, __copy_move_backward_a2): Call + std::to_address on the iterators after advancing them. + * testsuite/25_algorithms/copy/contiguous.cc: New test. + * testsuite/25_algorithms/copy_backward/contiguous.cc: New test. + * testsuite/25_algorithms/copy_n/contiguous.cc: New test. + +2025-03-07 Jonathan Wakely <jwakely@redhat.com> + + * include/std/forward_list (erase): Change lambda to have + explicit return type and const parameter type. + * include/std/list (erase): Likewise. + * testsuite/23_containers/forward_list/erasure.cc: Check lambda + is correct. + * testsuite/23_containers/list/erasure.cc: Likewise. + +2025-03-07 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/chrono_io.h (chrono::__detail::from_stream): Add + deleted function as poison pill for unqualified lookup. + +2025-03-07 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (expected<cv void,E>::value()&&): + Add missing static_assert for LWG 3940. + * testsuite/20_util/expected/lwg3843.cc: New test. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/unique_lock.h (unique_lock::operator=): Fix for + self-move-assignment. + * include/std/shared_mutex (shared_lock::operator=): Add + comment. + * testsuite/30_threads/shared_lock/cons/lwg4172.cc: New test. + * testsuite/30_threads/unique_lock/cons/lwg4172.cc: New test. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_list.h (list::pop_front, list::pop_back): + Add non-empty assertions. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ranges_util.h: Include <bits/stl_pair.h>. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + * include/std/span (span::~span): Remove, as per LWG 3903. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119144 + * testsuite/26_numerics/complex/tuple_like.cc: Include + <algorithm>, replace std::string with std::string_view, + instantiate tests for long instead of size_t. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + Thomas Schwinge <tschwinge@baylibre.com> + + * src/c++20/tzdb.cc [__GTHREADS && !__GTHREADS_CXX0X]: Use + '__gnu_cxx::__mutex'. + +2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> + + * src/c++20/format.cc (conv): Tag 'out' as '[[maybe_unused]]'. + +2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> + + * src/c++17/fs_dir.cc (do_unlink): Tag 'is_directory' as + '[[maybe_unused]]'. + +2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> + + * src/filesystem/dir-common.h (openat): Tag 'nofollow' as + '[[maybe_unused]]'. + +2025-03-06 Thomas Schwinge <tschwinge@baylibre.com> + Jonathan Wakely <jwakely@redhat.com> + + * include/bits/c++config [!__cpp_exceptions] + (_GLIBCXX_THROW_OR_ABORT): Reference '_EXC'. + +2025-03-06 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/20_util/specialized_algorithms/uninitialized_copy/constexpr.cc: + Do not test COW std::string in constexpr contexts. + * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constexpr.cc: + Likewise. + * testsuite/20_util/specialized_algorithms/uninitialized_fill/constexpr.cc: + Likewise. + * testsuite/20_util/specialized_algorithms/uninitialized_move/constexpr.cc: + Likewise. + * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constexpr.cc: + Likewise. + +2025-03-06 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR libstdc++/113310 + * include/bits/stl_pair.h (get): Forward-declare std::get for + std::complex. + * include/bits/version.def (tuple_like): Bump the value of + the feature-testing macro in C++26. + * include/bits/version.h: Regenerate. + * include/std/complex: Implement the tuple protocol for + std::complex. + (tuple_size): Specialize for std::complex. + (tuple_element): Ditto. + (__is_tuple_like_v): Ditto. + (complex): Add a private getter to obtain references to the real + and the imaginary part, on the primary class template and on its + specializations. + (get): Add overloads of std::get for std::complex. + * testsuite/20_util/tuple/tuple_like_ftm.cc: New test. + * testsuite/26_numerics/complex/tuple_like.cc: New test. + +2025-03-05 Jonathan Wakely <jwakely@redhat.com> + + * include/std/ranges (enumerate_view::_Iterator::operator-): + Add noexcept, as per LWG 3912. + * testsuite/std/ranges/adaptors/enumerate/1.cc: Check iterator + difference is noexcept. + +2025-03-05 yxj-github-437 <2457369732@qq.com> + + * src/c++23/std-clib.cc.in (timespec): Move within preprocessor + group guarded by _GLIBCXX_HAVE_TIMESPEC_GET. + +2025-03-05 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/119110 + * testsuite/25_algorithms/move/constrained.cc: Move test06 + function to ... + * testsuite/25_algorithms/move/105609.cc: New test. + * testsuite/25_algorithms/move_backward/constrained.cc: Move + test04 function to ... + * testsuite/25_algorithms/move_backward/105609.cc: New test. + +2025-03-05 Patrick Palka <ppalka@redhat.com> + + * include/bits/version.def (ranges_cache_latest): Define. + * include/bits/version.h: Regenerate. + * include/std/ranges (__detail::__non_propagating_cache::_M_reset): + Export from base class _Optional_base. + (cache_latest_view): Define for C++26. + (cache_latest_view::_Iterator): Likewise. + (cache_latest_view::_Sentinel): Likewise. + (views::__detail::__can_cache_latest): Likewise. + (views::_CacheLatest, views::cache_latest): Likewise. + * testsuite/std/ranges/adaptors/cache_latest/1.cc: New test. + +2025-03-05 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/stl_algo.h (__stable_sort): Use if consteval + instead of is_constant_evaluated. + +2025-03-05 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/115215 + PR libstdc++/115218 + * include/std/ranges + (concat_view::iterator::_S_invoke_with_runtime_index): Use + __builtin_unreachable in recursive lambda to certify it always + exits via 'return'. + (concat_view::iterator::iterator): In the const-converting + constructor, direct initialize _M_it. + (views::_Concat::operator()): Adjust constraints in the + single-argument case as per LWG 4082. + * testsuite/std/ranges/concat/1.cc (test01): Call it at runtime + too. + (test04): New test. + +2025-03-05 Tomasz Kamiński <tkaminsk@redhat.com> + + PR libstdc++/119121 + * include/bits/ranges_util.h (__detail::__pair_like_convertible_from): + Use `_Tp` in `is_reference_v` check + * testsuite/std/ranges/subrange/tuple_like.cc: New tests for + pair-like conversion + +2025-03-05 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/ranges_uninitialized.h: Mark the specialized + memory algorithms as constexpr in C++26. Also mark the members + of the _DestroyGuard helper class. + * include/bits/stl_uninitialized.h: Ditto. + * include/bits/stl_construct.h: (_Construct_novalue) Mark it + as constexpr in C++26. + * include/bits/version.def (raw_memory_algorithms): Bump the + feature-testing macro for C++26. + * include/bits/version.h: Regenerate. + * testsuite/20_util/headers/memory/synopsis.cc: Add constexpr to + the uninitialized_* algorithms (when in C++26) in the test. + * testsuite/20_util/specialized_algorithms/feature_test_macro.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_copy/constexpr.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constexpr.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_fill/constexpr.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_move/constexpr.cc: + New test. + * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constexpr.cc: + New test. + +2025-03-04 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/test.xml: Remove stray comma. + * doc/html/manual/test.html: Regenerate. + +2025-02-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/106612 + * include/bits/iterator_concepts.h (_IterMove::__iter_ref_t): + New alias template. + (_IterMove::__result): Use __iter_ref_t instead of + std::iter_reference_t. + (_IterMove::__type): Remove incorrect __dereferenceable + constraint. + (_IterMove::operator()): Likewise. Add correct constraints. Use + __iter_ref_t instead of std::iter_reference_t. Forward parameter + as correct value category. + (iter_swap): Add comments. + * testsuite/24_iterators/customization_points/iter_move.cc: Test + that iter_move is found by ADL and that rvalue arguments are + handled correctly. + +2025-02-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/105609 + * include/bits/ranges_algobase.h (__detail::__assign_one): New + helper function. + (__copy_or_move, __copy_or_move_backward): Use new function + instead of std::__assign_one. + * testsuite/25_algorithms/move/constrained.cc: Check that + ADL iter_move is used in preference to std::move. + * testsuite/25_algorithms/move_backward/constrained.cc: + Likewise. + +2025-02-28 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/112803 + * include/std/ranges (ranges::to): Add static assertions to + enforce Mandates conditions. + * testsuite/std/ranges/conv/112803.cc: New test. + +2025-02-28 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/104606 + * include/std/optional (operator<=>): Revert r14-9771 change. + Add constraint checking the validity of the return type + compare_three_way_result_t before the three_way_comparable_with + constraint. + +2025-02-28 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/112490 + * include/bits/stl_iterator.h (basic_const_iterator::operator<): + Replace non-dependent basic_const_iterator function parameter with + a dependent one of type basic_const_iterator<_It3> where _It3 + matches _It. + (basic_const_iterator::operator>): Likewise. + (basic_const_iterator::operator<=): Likewise. + (basic_const_iterator::operator>=): Likewise. + * testsuite/24_iterators/const_iterator/112490.cc: New test. + +2025-02-27 Jonathan Wakely <jwakely@redhat.com> + + * include/std/stacktrace (_Impl::_M_allocate): Fix outdated + comment. + +2025-02-26 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/118083 + * include/bits/ranges_base.h + (ranges::__access::__possibly_const_range): Mention LWG 4027. + +2025-02-25 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/algorithmfwd.h (stable_sort): Add constexpr. + * include/bits/ranges_algo.h (__stable_sort_fn): Add constexpr + to the function call operators. + * include/bits/stl_algo.h (__stable_sort): Add constexpr. + During constant evaluation, always use the non-allocating path. + (stable_sort): Add constexpr. + (__inplace_stable_sort): Likewise. + (__merge_without_buffer): Likewise. + * include/bits/version.def (constexpr_algorithms): Bump value + for C++26. + * include/bits/version.h: Regnerate. + * testsuite/25_algorithms/cpp_lib_constexpr.cc: Test the bumped + feature-testing macro. + * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adapt + the test to constexpr stable_sort. + * testsuite/25_algorithms/stable_sort/constexpr.cc: New test. + +2025-02-25 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/c++config (_GLIBCXX26_CONSTEXPR): New macro. + +2025-02-25 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/93059 + * include/bits/stl_algobase.h (__fill_a1): Fix typo in SFINAE + constraint. + +2025-02-25 François Dumont <frs.dumont@gmail.com> + + * include/bits/hashtable_policy.h + (_Hash_code_base::_M_copy_code, _Hash_code_base::_M_store_code): Remove. + * include/bits/hashtable.h (_M_hash_code_ext): New. + (_M_merge_multi(_Hashtable&)): Use latter. + (_M_copy_code): New. + (_M_assign): Use latter. + (_M_bucket_index_ex): New. + (_M_equals): Use latter. + (_M_store_code): New. + (_M_src_hash_code): Remove key_type parameter. + * testsuite/23_containers/unordered_map/modifiers/merge.cc (test10): New + test case. + +2025-02-25 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/118083 + * include/bits/ranges_base.h + (ranges::__access::__possibly_const_range): Adjust logic as per + LWG 4027. Add missing input_range constraint. + * testsuite/std/ranges/access/cbegin.cc (test05): Verify LWG + 4027 testcases. + * testsuite/std/ranges/access/cdata.cc: Adjust, simplify and + consolidate some tests after the above. + * testsuite/std/ranges/access/cend.cc: Likewise. + * testsuite/std/ranges/access/crbegin.cc: Likewise. + * testsuite/std/ranges/access/crend.cc: Likewise. + * testsuite/std/ranges/adaptors/join.cc: Likewise. + * testsuite/std/ranges/adaptors/take_while.cc: Likewise. + * testsuite/std/ranges/adaptors/transform.cc: Likewise. + +2025-02-22 Jonathan Wakely <jwakely@redhat.com> + + PR c++/118981 + * src/c++20/tzdb.cc: Use init_priority(98) instead of + init_priority(99). + +2025-02-22 Thomas Schwinge <tschwinge@baylibre.com> + + * testsuite/lib/prune.exp (proc libstdc++-dg-prune): Turn + 'sorry, unimplemented: dynamic stack allocation not supported' into + UNSUPPORTED. + +2025-02-22 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_base.h (__atomic_base<_ITp>): Remove + misleading comment. + +2025-02-22 Jonathan Wakely <jwakely@redhat.com> + + * src/c++17/floating_from_chars.cc (__floating_from_chars_hex): + Remove redundant cast. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118559 + * include/std/type_traits (rank, rank_v): Do not use + __array_rank for Clang 19 and older. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/c++config (_GLIBCXX_HAS_BUILTIN): Add parentheses. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118855 + * include/std/bit (__count_lzero, __count_rzero, __popcount): + Use type-generic built-ins when available. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + * include/experimental/bits/simd.h (__find_next_valid_abi): Cast + __bit_ceil argument to unsigned. + * src/c++17/floating_from_chars.cc (__floating_from_chars_hex): + Cast __bit_ceil argument to unsigned. + * src/c++17/memory_resource.cc (big_block): Cast __bit_width + argument to unsigned. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + * src/c++17/memory_resource.cc (default_res): Define here + instead of including default_resource.h. + * src/c++98/globals_io.cc (__ioinit): Define here instead of + including ios_base_init.h. + * src/c++17/default_resource.h: Removed. + * src/c++98/ios_base_init.h: Removed. + +2025-02-20 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118811 + * src/c++20/tzdb.cc (tzdb_list::_Node): Use init_priority + attribute on static data members. + * testsuite/std/time/tzdb_list/pr118811.cc: New test. + +2025-02-20 Patrick Palka <ppalka@redhat.com> + + * include/std/ranges (concat_view::iterator): Rename to ... + (concat_view::_Iterator): ... this throughout. + +2025-02-20 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/115209 + * include/bits/version.def (ranges_concat): Depend on + __cpp_pack_indexing. + * include/bits/version.h: Regenerate. + * include/std/ranges (__detail::__last_is_common): Remove. + (__detail::__all_but_first_sized): New. + (concat_view::end): Use C++26 pack indexing instead of + __last_is_common as per R8 of P2542. + (concat_view::iterator::operator-): Update constraints on + iter/sent overloads as per R8 of P2542. + +2025-02-15 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/shared_ptr_base.h: Do not include <bit>. + +2025-02-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/100612 + * include/std/thread (__pmf_expects_stop_token): Constrain + variable template specialization with concept. Add comment. + +2025-02-15 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/range_access.h (rbegin, rend, crbegin, crend): + Add conditional noexcept, as per P3623R0. + * testsuite/24_iterators/headers/iterator/range_access.cc: Add + noexcept-specifier to rbegin, rend, crbegin and crend + declarations. + +2025-02-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: + Removed. + * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: + Removed. + * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: + Removed. + * testsuite/24_iterators/headers/iterator/range_access.cc: + New test. + +2025-02-14 Andrew Pinski <quic_apinski@quicinc.com> + + PR libstdc++/118865 + * include/bits/stl_list.h (_M_initialize_dispatch): Add an + unreachable if the iterator was not empty that the list will + now be not empty. + +2025-02-14 Jonathan Wakely <jwakely@redhat.com> + + * include/parallel/algobase.h (__mismatch_switch): Qualify calls + to make_pair to avoid ADL. + +2025-02-14 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_tree.h (_Rb_tree::_M_equal_range): Replace + unqualified call to make_pair with explicit construction of + std::pair. + * testsuite/23_containers/set/operations/equal_range_adl.cc: + New test. + +2025-02-14 Matthew Malcomson <mmalcomson@nvidia.com> + Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_base.h (__atomic_fetch_addable): Define + new concept. + (__atomic_impl::__fetch_add_flt): Use new concept to make use of + __atomic_fetch_add when available. + (__atomic_fetch_subtractable, __fetch_sub_flt): Likewise. + (__atomic_add_fetchable, __add_fetch_flt): Likewise. + (__atomic_sub_fetchable, __sub_fetch_flt): Likewise. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * testsuite/lib/prune.exp (libstdc++-dg-prune): Turn + 'sorry, unimplemented: exception handling not supported' into + UNSUPPORTED. + +2025-02-08 Thomas Schwinge <tschwinge@baylibre.com> + + * testsuite/lib/prune.exp (libstdc++-dg-prune): Clarify + effective-target 'exceptions_enabled'. + +2025-02-07 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR libstdc++/118160 + PR libstdc++/100249 + * include/bits/ranges_algo.h (__is_permutation_fn): Avoid a + dangling reference by storing the result of the iterator + dereference and the result of the projection in two distinct + variables, in order to lifetime-extend each one. + Forward the projected value to the predicate. + * testsuite/25_algorithms/is_permutation/constrained.cc: Add a + test with a range returning prvalues. Test it in a constexpr + context, in order to rely on the compiler to catch UB. + +2025-02-07 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/ostream.h (basic_ostream::_Disable_exceptions): + RAII helper type. + (basic_ostream::sentry::~sentry): Use _Disable_exceptions. Add + try-catch block around call to pubsync. + * testsuite/27_io/basic_ostream/exceptions/char/lwg4188.cc: New + test. + * testsuite/27_io/basic_ostream/exceptions/wchar_t/lwg4188.cc: + New test. + +2025-02-07 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/111050 + * include/bits/hashtable_policy.h (_Hash_node_value_base): Add + comment about always_inline attributes. + +2025-02-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118701 + * config/abi/pre/gnu.ver (CXXABI_1.3.16): Move __riscv guard + around version. + * scripts/extract_symvers.pl: Allow for weak versions. + * testsuite/util/testsuite_abi.cc (check_version): Wrap + CXXABI_1.3.16 in __riscv. + +2025-01-31 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/118156 + * include/std/flat_map (_Flat_map_impl::_M_insert): Generalized + version of insert taking heterogenous iterator/sentinel pair. + (_Flat_map_impl::insert): Dispatch to _M_insert. + (_Flat_map_impl::insert_range): Likewise. + (flat_map): Export _Flat_map_impl::insert_range. + (flat_multimap): Likewise. + * include/std/flat_set (_Flat_set_impl::insert_range): + Reimplement directly, not in terms of insert. + (flat_set): Export _Flat_set_impl::insert_range. + (flat_multiset): Likewise. + * testsuite/23_containers/flat_map/1.cc (test06): New test. + * testsuite/23_containers/flat_multimap/1.cc (test06): New test. + * testsuite/23_containers/flat_multiset/1.cc (test06): New test. + * testsuite/23_containers/flat_set/1.cc (test06): New test. + +2025-01-31 Patrick Palka <ppalka@redhat.com> + + * include/bits/stl_bvector.h (vector<bool>::insert_range): + Consistently return an iterator pointing to the first element + inserted. + * include/bits/vector.tcc (vector::insert_range): Likewise. + * testsuite/23_containers/vector/bool/modifiers/insert/insert_range.cc: + Verify insert_range return values. + * testsuite/23_containers/vector/modifiers/insert/insert_range.cc: + Likewise. + +2025-01-30 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/98749 + * include/std/latch (latch::max()): Ensure the return value is + representable as the return type. + (latch::latch(ptrdiff_t)): Add assertion. + (latch::count_down): Fix copy & pasted duplicate assertion. Use + std::cmp_equal to compare __platform_wait_t and ptrdiff_t + values. + (latch::_M_a): Use defined constant for alignment. + * testsuite/30_threads/latch/1.cc: Check max(). Check constant + initialization works for values in the valid range. Check + alignment. + +2025-01-29 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/118413 + * include/std/ranges (views::__adaptor::_Partial): Adjust + constraints on the "simple" partial specializations to require + is_trivially_copy_constructible_v instead of + is_trivially_copyable_v. + * testsuite/std/ranges/adaptors/adjacent_transform/1.cc (test04): + Extend P2494R2 test. + * testsuite/std/ranges/adaptors/transform.cc (test09): Likewise. + +2025-01-27 Andreas Schwab <schwab@suse.de> + + PR libstdc++/118563 + * testsuite/util/testsuite_abi.cc (check_version): Add + CXXABI_1.3.16. + * config/abi/pre/gnu.ver (CXXABI_1.3.14) [__riscv]: Exclude + typeinfo for bfloat16_t. + (CXXABI_1.3.16) [__riscv]: Add it here. + +2025-01-23 Jan Hubicka <jh@suse.cz> + + PR target/80813 + * include/bits/stl_bvector.h (vector<bool, _Alloc>::operator []): Do + not use iterators. + +2025-01-20 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + PR libstdc++/118185 + PR libstdc++/100249 + * include/bits/ranges_algo.h (__clamp_fn): Correctly forward the + projected value to the comparator. + * testsuite/25_algorithms/clamp/118185.cc: New test. + +2025-01-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/99995 + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/unique_ptr.h: Include bits/ostream.h instead of + ostream. + * include/std/ostream: Include new header. + * include/bits/ostream.h: New file. + +2025-01-16 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118158 + * src/c++17/fs_ops.cc (fs::equivalent): Remove error reporting + for is_other(s1) && is_other(s2) case, as per LWG 2937. + * testsuite/27_io/filesystem/operations/pr118158.cc: New test. + +2025-01-16 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/stl_map.h: Check __glibcxx_node_extract instead + of __cplusplus. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_multiset.h: Likewise. + * include/bits/stl_set.h: Likewise. + * include/bits/stl_tree.h: Likewise. + +2025-01-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/27_io/ios_base/types/openmode/case_label.cc: Use + standard feature test macro not internal one. + +2025-01-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr.cc: + Guard node extraction checks with feature test macro. Remove + calls to non-existent range members. + * testsuite/23_containers/forward_list/requirements/explicit_instantiation/alloc_ptr.cc: + Use standard macro not internal one. + * testsuite/23_containers/list/requirements/explicit_instantiation/alloc_ptr.cc: + Likewise. + +2025-01-15 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/109849 + * include/bits/vector.tcc (vector::_M_range_insert): Fix + reversed args in length calculation. + +2025-01-15 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/28_regex/traits/char/transform_primary.cc: Fix + subclause numbering in references to the standard. + +2025-01-15 Jakub Jelinek <jakub@redhat.com> + + PR c++/118387 + * testsuite/25_algorithms/default_template_value.cc + (Input::operator<=>): Use auto as return type rather than bool. + +2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * testsuite/27_io/print/1.cc: Allow both LF and CRLF in test. + * testsuite/27_io/print/3.cc: Likewise. + +2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> + + * testsuite/29_atomics/atomic_float/compare_exchange_padding.cc: + Use effective-target libatomic_available. + +2025-01-10 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/atomic_futex.h (__atomic_futex_unsigned): Remove + names of unused parameters in non-futex implementation. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/move.h (__addressof, forward, forward_like, move) + (move_if_noexcept, addressof): Add always_inline attribute. + Replace _GLIBCXX_NODISCARD with [[__nodiscard__]]. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118260 + * python/hook.in: Run 'skip' commands for some simple accessor + functions. + +2025-01-08 Nicolas Werner <nicolas.werner@hotmail.de> + + PR libstdc++/106852 + * src/c++23/std.cc.in (to_underlying): Add. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118177 + * src/c++23/std-clib.cc.in: Use preprocessor conditions for + names which are not always defined. + * src/c++23/std.cc.in: Likewise. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + * include/std/span: Fix indentation. + +2025-01-08 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> + + * include/bits/version.def: Add the new feature-testing macro. + * include/bits/version.h: Regenerate. + * include/std/span: Add constructor from initializer_list. + * testsuite/23_containers/span/init_list_cons.cc: New test. + * testsuite/23_containers/span/init_list_cons_neg.cc: New test. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + * include/std/span (__detail::__extent_storage): Check + precondition in constructor. Add consteval constructor for valid + lengths and deleted constructor for invalid constant lengths. + Make member functions always_inline. + (__detail::__span_ptr): New class template. + (span): Adjust constructors to use a std::integral_constant + value for constant lengths. Declare all specializations of + std::span as friends. + (span::first<C>, span::last<C>, span::subspan<O,C>): Use new + private constructor. + (span(__span_ptr<T>)): New private constructor for constant + lengths. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/85824 + PR libstdc++/94409 + PR libstdc++/98723 + PR libstdc++/118105 + * include/bits/locale_classes.tcc (collate::do_transform): Check + errno after calling _M_transform. Use RAII type to manage the + buffer and to restore errno. + * include/bits/regex.h (regex_traits::transform_primary): Handle + exceptions from std::collate::transform and do not try to use + std::collate for user-defined facets. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/118093 + * include/bits/atomic_futex.h (_M_load_and_test_until_impl): + Return false for times before the epoch. + * src/c++11/futex.cc (_M_futex_wait_until): Extend check for + negative times to check for subsecond times. Add unlikely + attribute. + (_M_futex_wait_until_steady): Likewise. + * testsuite/30_threads/future/members/118093.cc: New test. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/90389 + * include/bits/deque.tcc (_M_insert_aux): Rename variadic + overload to _M_emplace_aux. + * include/bits/stl_deque.h (_M_insert_aux): Define inline. + (_M_emplace_aux): Declare. + * testsuite/23_containers/deque/modifiers/emplace/90389.cc: New + test. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/move.h (forward, move, move_if_noexcept, addressof): + Add @since to Doxygen comments. + (forward_like): Add Doxygen comment. + +2025-01-08 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/evolution.xml: Replace invalid <variable> + elements with <varname>. + * doc/html/*: Regenerate. + +2025-01-01 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/html/manual/profile_mode.html: Delete. + * doc/html/manual/profile_mode_api.html: Ditto. + * doc/html/manual/profile_mode_cost_model.html: Ditto. + * doc/html/manual/profile_mode_design.html: Ditto. + * doc/html/manual/profile_mode_devel.html: Ditto. + * doc/html/manual/profile_mode_impl.html: Ditto. + +Copyright (C) 2025 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved.