From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id 97E263858D20; Fri, 8 Dec 2023 00:17:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 97E263858D20 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1701994674; bh=JvnJvuveHw25UeDAwrrKxVYt55aixqQNaw8u6Lbm1ys=; h=From:To:Subject:Date:From; b=cietWYuzpUcR1znnmEHvOdkjDQ+jdrvFoIZk0azL03bFGR8h9UAAOIY76IEzV0XRy sUekNzZRP+RdpgP3d727dcG/FAHMp2L90UYhkW/FEsiFOyPpF5mLCFmQR5h9sL+H8c afGeGtSw3jm4CmcrWuc/xEgN94dMOmXq8jN7a2NA= MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r14-6296] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: 71a5ac6703d1b7a0409936fcdec4e592d7cc06b0 X-Git-Newrev: 08f89e5e7f466cf18387293c6a9d1d5b8308b83d Message-Id: <20231208001754.97E263858D20@sourceware.org> Date: Fri, 8 Dec 2023 00:17:54 +0000 (GMT) List-Id: https://gcc.gnu.org/g:08f89e5e7f466cf18387293c6a9d1d5b8308b83d commit r14-6296-g08f89e5e7f466cf18387293c6a9d1d5b8308b83d Author: GCC Administrator Date: Fri Dec 8 00:17:33 2023 +0000 Daily bump. Diff: --- gcc/ChangeLog | 575 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 28 +++ gcc/c-family/ChangeLog | 7 + gcc/m2/ChangeLog | 26 +++ gcc/testsuite/ChangeLog | 427 +++++++++++++++++++++++++++++++++++ libgcc/ChangeLog | 6 + libstdc++-v3/ChangeLog | 38 ++++ 8 files changed, 1108 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1f38282e0c9..6a402c8859b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,578 @@ +2023-12-07 Juzhe-Zhong + + * config/riscv/riscv-protos.h (expand_vec_series): Adapt function. + * config/riscv/riscv-v.cc (rvv_builder::double_steps_npatterns_p): New function. + (expand_vec_series): Adapt function. + (expand_const_vector): Support new interleave vector with different step. + +2023-12-07 Richard Sandiford + + PR rtl-optimization/106694 + PR rtl-optimization/109078 + PR rtl-optimization/109391 + * config.gcc: Add aarch64-early-ra.o for AArch64 targets. + * config/aarch64/t-aarch64 (aarch64-early-ra.o): New rule. + * config/aarch64/aarch64-opts.h (aarch64_early_ra_scope): New enum. + * config/aarch64/aarch64.opt (mearly_ra): New option. + * doc/invoke.texi: Document it. + * common/config/aarch64/aarch64-common.cc + (aarch_option_optimization_table): Use -mearly-ra=strided by + default for -O2 and above. + * config/aarch64/aarch64-passes.def (pass_aarch64_early_ra): New pass. + * config/aarch64/aarch64-protos.h (aarch64_strided_registers_p) + (make_pass_aarch64_early_ra): Declare. + * config/aarch64/aarch64-sme.md (@aarch64_sme_lut): + Add a stride_type attribute. + (@aarch64_sme_lut_strided2): New pattern. + (@aarch64_sme_lut_strided4): Likewise. + * config/aarch64/aarch64-sve-builtins-base.cc (svld1_impl::expand) + (svldnt1_impl::expand, svst1_impl::expand, svstn1_impl::expand): Handle + new way of defining multi-register loads and stores. + * config/aarch64/aarch64-sve.md (@aarch64_ld1) + (@aarch64_ldnt1, @aarch64_st1) + (@aarch64_stnt1): Delete. + * config/aarch64/aarch64-sve2.md (@aarch64_) + (@aarch64__strided2): New patterns. + (@aarch64__strided4): Likewise. + (@aarch64_): Likewise. + (@aarch64__strided2): Likewise. + (@aarch64__strided4): Likewise. + * config/aarch64/aarch64.cc (aarch64_strided_registers_p): New + function. + * config/aarch64/aarch64.md (UNSPEC_LD1_SVE_COUNT): Delete. + (UNSPEC_ST1_SVE_COUNT, UNSPEC_LDNT1_SVE_COUNT): Likewise. + (UNSPEC_STNT1_SVE_COUNT): Likewise. + (stride_type): New attribute. + * config/aarch64/constraints.md (Uwd, Uwt): New constraints. + * config/aarch64/iterators.md (UNSPEC_LD1_COUNT, UNSPEC_LDNT1_COUNT) + (UNSPEC_ST1_COUNT, UNSPEC_STNT1_COUNT): New unspecs. + (optab): Handle them. + (LD1_COUNT, ST1_COUNT): New iterators. + * config/aarch64/aarch64-early-ra.cc: New file. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1_u8_x4, vld1_u16_x4, vld1_u32_x4, vld1_u64_x4): New + (vld1_s8_x4, vld1_s16_x4, vld1_s32_x4, vld1_s64_x4): New. + (vld1_f16_x4, vld1_f32_x4): New. + (vld1_p8_x4, vld1_p16_x4, vld1_p64_x4): New. + (vld1_bf16_x4): New. + (vld1q_types_x4): Updated to use vld1q_x4 + from arm_neon_builtins.def + * config/arm/arm_neon_builtins.def + (vld1_x4): Updated entries. + (vld1q_x4): New entries, but comes from the old vld1_x2 + * config/arm/neon.md (neon_vld1q_x4): + Updated from neon_vld1_x4. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1_u8_x3, vld1_u16_x3, vld1_u32_x3, vld1_u64_x3): New + (vld1_s8_x3, vld1_s16_x3, vld1_s32_x3, vld1_s64_x3): New. + (vld1_f16_x3, vld1_f32_x3): New. + (vld1_p8_x3, vld1_p16_x3, vld1_p64_x3): New. + (vld1_bf16_x3): New. + (vld1q_types_x3): Updated to use vld1q_x3 from + arm_neon_builtins.def + * config/arm/arm_neon_builtins.def + (vld1_x3): Updated entries. + (vld1q_x3): New entries, but comes from the old vld1_x2 + * config/arm/neon.md (neon_vld1q_x3): Updated from + neon_vld1_x3. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1_u8_x2, vld1_u16_x2, vld1_u32_x2, vld1_u64_x2): New + (vld1_s8_x2, vld1_s16_x2, vld1_s32_x2, vld1_s64_x2): New. + (vld1_f16_x2, vld1_f32_x2): New. + (vld1_p8_x2, vld1_p16_x2, vld1_p64_x2): New. + (vld1_bf16_x2): New. + (vld1q_types_x2): Updated to use vld1q_x2 from + arm_neon_builtins.def + * config/arm/arm_neon_builtins.def + (vld1_x2): Updated entries. + (vld1q_x2): New entries, but comes from the old vld1_x2 + * config/arm/neon.md + (neon_vld1_x2): Updated + from neon_vld1_x2. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1q_u8_x4, vst1q_u16_x4, vst1q_u32_x4, vst1q_u64_x4): New. + (vst1q_s8_x4, vst1q_s16_x4, vst1q_s32_x4, vst1q_s64_x4): New. + (vst1q_f16_x4, vst1q_f32_x4): New. + (vst1q_p8_x4, vst1q_p16_x4, vst1q_p64_x4): New. + (vst1q_bf16_x4): New. + * config/arm/arm_neon_builtins.def (vst1q_x4): New entries. + * config/arm/neon.md (neon_vst1q_x4): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1q_u8_x3, vst1q_u16_x3, vst1q_u32_x3, vst1q_u64_x3): New. + (vst1q_s8_x3, vst1q_s16_x3, vst1q_s32_x3, vst1q_s64_x3): New. + (vst1q_f16_x3, vst1q_f32_x3): New. + (vst1q_p8_x3, vst1q_p16_x3, vst1q_p64_x3): New. + (vst1q_bf16_x3): New. + * config/arm/arm_neon_builtins.def (vst1q_x3): New entries. + * config/arm/neon.md (neon_vst1q_x3): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1q_u8_x2, vst1q_u16_x2, vst1q_u32_x2, vst1q_u64_x2): New. + (vst1q_s8_x2, vst1q_s16_x2, vst1q_s32_x2, vst1q_s64_x2): New. + (vst1q_f16_x2, vst1q_f32_x2): New. + (vst1q_p8_x2, vst1q_p16_x2, vst1q_p64_x2): New. + (vst1q_bf16_x2): New. + * config/arm/arm_neon_builtins.def (vst1q_x2): New entries. + * config/arm/neon.md + (neon_vst1_x2): Updated from + neon_vst1_x2. + * config/arm/iterators.md (VMEMX2): New mode iterator. + (VMEMX2_q): New mode attribute. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1_u8_x4, vst1_u16_x4, vst1_u32_x4, vst1_u64_x4): New. + (vst1_s8_x4, vst1_s16_x4, vst1_s32_x4, vst1_s64_x4): New. + (vst1_f16_x4, vst1_f32_x4): New. + (vst1_p8_x4, vst1_p16_x4, vst1_p64_x4): New. + (vst1_bf16_x4): New. + * config/arm/arm_neon_builtins.def (vst1_x4): New entries. + * config/arm/neon.md (vst1_x4): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1_u8_x3, vst1_u16_x3, vst1_u32_x3, vst1_u64_x3): New. + (vst1_s8_x3, vst1_s16_x3, vst1_s32_x3, vst1_s64_x3): New. + (vst1_f16_x3, vst1_f32_x3): New. + (vst1_p8_x3, vst1_p16_x3, vst1_p64_x3): New. + (vst1_bf16_x3): New. + * config/arm/arm_neon_builtins.def (vst1_x3): New entries. + * config/arm/neon.md (vst1_x3): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vst1_u8_x2, vst1_u16_x2, vst1_u32_x2, vst1_u64_x2): New. + (vst1_s8_x2, vst1_s16_x2, vst1_s32_x2, vst1_s64_x2): New. + (vst1_f16_x2, vst1_f32_x2): New. + (vst1_p8_x2, vst1_p16_x2, vst1_p64_x2): New. + (vst1_bf16_x2): New. + * config/arm/arm_neon_builtins.def (vst1_x2): New entries. + * config/arm/neon.md (vst1_x2): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1q_u8_x4, vld1q_u16_x4, vld1q_u32_x4, vld1q_u64_x4): New. + (vld1q_s8_x4, vld1q_s16_x4, vld1q_s32_x4, vld1q_s64_x4): New. + (vld1q_f16_x4, vld1q_f32_x4): New. + (vld1q_p8_x4, vld1q_p16_x4, vld1q_p64_x4): New. + (vld1q_bf16_x4): New. + * config/arm/arm_neon_builtins.def (vld1_x4): New entries. + * config/arm/neon.md (vld1_x4): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1q_u8_x3, vld1q_u16_x3, vld1q_u32_x3, vld1q_u64_x3): New. + (vld1q_s8_x3, vld1q_s16_x3, vld1q_s32_x3, vld1q_s64_x3): New. + (vld1q_f16_x3, vld1q_f32_x3): New. + (vld1q_p8_x3, vld1q_p16_x3, vld1q_p64_x3): New. + (vld1q_bf16_x3): New. + * config/arm/arm_neon_builtins.def (vld1_x3): New entries. + * config/arm/neon.md (vld1_x3): New. + +2023-12-07 Ezra Sitorus + + * config/arm/arm_neon.h + (vld1q_u8_x2, vld1q_u16_x2, vld1q_u32_x2, vld1q_u64_x2): New. + (vld1q_s8_x2, vld1q_s16_x2, vld1q_s32_x2, vld1q_s64_x2): New. + (vld1q_f16_x2, vld1q_f32_x2): New. + (vld1q_p8_x2, vld1q_p16_x2, vld1q_p64_x2): New. + (vld1q_bf16_x2): New. + * config/arm/arm_neon_builtins.def (vld1_x2): New entries. + * config/arm/neon.md (vld1_x2): New. + +2023-12-07 Stefan Schulze Frielinghaus + + * config/s390/vecintrin.h (vec_step): Expand vec_step to + __builtin_s390_vec_step. + +2023-12-07 Alexandre Oliva + + * target.def (have_strub_support_for): New hook. + * doc/tm.texi.in: Document it. + * doc/tm.texi: Rebuild. + * ipa-strub.cc: Include target.h. + (strub_target_support_p): New. + (can_strub_p): Call it. Test for no flag_split_stack. + (pass_ipa_strub::adjust_at_calls_call): Check for target + support. + * config/nvptx/nvptx.cc (TARGET_HAVE_STRUB_SUPPORT_FOR): + Disable. + * doc/sourcebuild.texi (strub): Document new effective + target. + +2023-12-07 Juzhe-Zhong + + * config/riscv/riscv-avlprop.cc (simplify_replace_avl): New function. + (simplify_replace_vlmax_avl): Fix bug. + * config/riscv/t-riscv: Add a new include file. + +2023-12-07 Christoph Müllner + + * config/riscv/thead.cc (th_memidx_classify_address_index): + Require TARGET_XTHEADMEMIDX for FP modes. + * config/riscv/thead.md: Require TARGET_XTHEADMEMIDX for all + XTheadFMemIdx pattern. + +2023-12-07 Jakub Jelinek + + PR middle-end/112881 + * expr.cc (count_type_elements): Handle BITINT_TYPE like INTEGER_TYPE. + +2023-12-07 Jakub Jelinek + + PR tree-optimization/112880 + * tree-ssa-dce.cc (maybe_optimize_arith_overflow): Use + unsigned_type_for instead of conditionally calling + build_nonstandard_integer_type. + +2023-12-07 Victor Do Nascimento + + * config/aarch64/arm_neon.h (vldap1_lane_u64): New. + (vldap1q_lane_u64): Likewise. + (vldap1_lane_s64): Likewise. + (vldap1q_lane_s64): Likewise. + (vldap1_lane_f64): Likewise. + (vldap1q_lane_f64): Likewise. + (vldap1_lane_p64): Likewise. + (vldap1q_lane_p64): Likewise. + (vstl1_lane_u64): Likewise. + (vstl1q_lane_u64): Likewise. + (vstl1_lane_s64): Likewise. + (vstl1q_lane_s64): Likewise. + (vstl1_lane_f64): Likewise. + (vstl1q_lane_f64): Likewise. + (vstl1_lane_p64): Likewise. + (vstl1q_lane_p64): Likewise. + +2023-12-07 Victor Do Nascimento + + * config/aarch64/aarch64-simd-builtins.def + (vec_ldap1_lane): New. + (vec_stl1_lane): Likewise. + * config/aarch64/aarch64-simd.md + (aarch64_vec_stl1_lanes_lane): New. + (aarch64_vec_stl1_lane): Likewise. + (aarch64_vec_ldap1_lanes_lane): Likewise. + (aarch64_vec_ldap1_lane): Likewise. + * config/aarch64/aarch64.md (UNSPEC_LDAP1_LANE): New. + (UNSPEC_STL1_LANE): Likewise. + +2023-12-07 Victor Do Nascimento + + * config/aarch64/iterators.md (V12DIF): New. + (V12DUP): Likewise. + (VEL): Add support for all V12DIF-associated modes. + (Vetype): Add support for V1DI and V1DF. + (Vel): Likewise. + +2023-12-07 Victor Do Nascimento + + * config/aarch64/aarch64-option-extensions.def (rcpc3): New. + * config/aarch64/aarch64.h (AARCH64_ISA_RCPC3): Likewise. + (TARGET_RCPC3): Likewise. + * doc/invoke.texi (rcpc3): Document feature in AArch64 Options. + +2023-12-07 Hongyu Wang + + * config/i386/i386-expand.cc (ix86_split_ashl_ndd): New + function to split NDD form lshift. + (ix86_split_rshift_ndd): Likewise for l/ashiftrt. + * config/i386/i386-protos.h (ix86_split_ashl_ndd): New + prototype. + (ix86_split_rshift_ndd): Likewise. + * config/i386/i386.md (ashl3_doubleword): Add NDD + alternative, call ndd split function when operands[0] + not equal to operands[1]. + (define_split for doubleword lshift): Likewise. + (define_peephole for doubleword lshift): Likewise. + (3_doubleword): Likewise for l/ashiftrt. + (define_split for doubleword l/ashiftrt): Likewise. + (define_peephole for doubleword l/ashiftrt): Likewise. + +2023-12-07 Hongyu Wang + + * config/i386/i386.md (*movcc_noc): Extend with new constraints + to support NDD. + (*movsicc_noc_zext): Likewise. + (*movsicc_noc_zext_1): Likewise. + (*movqicc_noc): Likewise. + +2023-12-07 Hongyu Wang + + * config/i386/i386.md (x86_64_shld_ndd): New define_insn. + (x86_64_shld_ndd_1): Likewise. + (*x86_64_shld_ndd_2): Likewise. + (x86_shld_ndd): Likewise. + (x86_shld_ndd_1): Likewise. + (*x86_shld_ndd_2): Likewise. + (x86_64_shrd_ndd): Likewise. + (x86_64_shrd_ndd_1): Likewise. + (*x86_64_shrd_ndd_2): Likewise. + (x86_shrd_ndd): Likewise. + (x86_shrd_ndd_1): Likewise. + (*x86_shrd_ndd_2): Likewise. + (*x86_64_shld_shrd_1_nozext): Adjust codegen under TARGET_APX_NDD. + (*x86_shld_shrd_1_nozext): Likewise. + (*x86_64_shrd_shld_1_nozext): Likewise. + (*x86_shrd_shld_1_nozext): Likewise. + +2023-12-07 Hongyu Wang + + * config/i386/i386.md (*3_1): Extend with a new + alternative to support NDD for SI/DI rotate, and adjust output + template. + (*si3_1_zext): Likewise. + (*3_1): Likewise for QI/HI modes. + (rcrsi2): Likewise, and use nonimmediate_operand for operands[1] + to accept memory input for NDD alternative. + (rcrdi2): Likewise. + +2023-12-07 Hongyu Wang + + * config/i386/i386.md (ashr3_cvt): Extend with new + alternatives to support NDD, and adjust output templates. + (*ashr3_1): Likewise for SI/DI mode. + (*lshr3_1): Likewise. + (*si3_1_zext): Likewise. + (*ashr3_1): Likewise for QI/HI mode. + (*lshrqi3_1): Likewise. + (*lshrhi3_1): Likewise. + (3_cmp): Likewise. + (*3_cconly): Likewise. + (*ashrsi3_cvt_zext): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + (*highpartdisi2): Likewise. + (*si3_cmp_zext): Likewise. + (3_carry): Likewise. + +2023-12-07 Hongyu Wang + + * config/i386/i386.md (*ashl3_1): Extend with new + alternatives to support NDD, limit the new alternative to + generate sal only, and adjust output template for NDD. + (*ashlsi3_1_zext): Likewise. + (*ashlhi3_1): Likewise. + (*ashlqi3_1): Likewise. + (*ashl3_cmp): Likewise. + (*ashlsi3_cmp_zext): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + (*ashl3_cconly): Likewise. + (*ashl3_doubleword_highpart): Adjust codegen for NDD. + +2023-12-07 Kong Lingling + + * config/i386/i386.md (3): Add new alternative for NDD + and adjust output templates. + (*_1): Likewise. + (*qi_1): Likewise. + (*notxor_1): Likewise. + (*si_1_zext): Likewise. + (*notxorqi_1): Likewise. + (*_2): Likewise. + (*si_2_zext): Likewise. + (*si_2_zext_imm): Likewise. + (*si_1_zext_imm): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + (*one_cmplsi2_2_zext): Likewise. + (define_split for *one_cmplsi2_2_zext): Use nonimmediate_operand for + operands[3]. + (*3_doubleword): Add NDD constraints, adopt '&' to NDD dest + and emit move for optimized case if operands[0] != operands[1] or + operands[4] != operands[5]. + (define_split for QI highpart OR/XOR): Prohibit splitter to split NDD + form OR/XOR insn to qi_ext_3. + (define_split for QI strict_lowpart optimization): Prohibit splitter to + split NDD form AND insn to *3_1_slp. + +2023-12-07 Kong Lingling + + * config/i386/i386.md (and3): Add NDD alternatives and adjust + output template. + (*anddi_1): Likewise. + (*and_1): Likewise. + (*andqi_1): Likewise. + (*andsi_1_zext): Likewise. + (*anddi_2): Likewise. + (*andsi_2_zext): Likewise. + (*andqi_2_maybe_si): Likewise. + (*and_2): Likewise. + (*and3_doubleword): Add NDD alternative, adopt '&' to NDD dest and + emit move for optimized case if operands[0] not equal to operands[1]. + (define_split for QI highpart AND): Prohibit splitter to split NDD + form AND insn to qi_ext_3. + (define_split for QI strict_lowpart optimization): Prohibit splitter to + split NDD form AND insn to *3_1_slp. + (define_split for zero_extend and optimization): Prohibit splitter to + split NDD form AND insn to zero_extend insn. + +2023-12-07 Kong Lingling + + * config/i386/i386.md (one_cmpl2): Add new constraints for NDD + and adjust output template. + (*one_cmpl2_1): Likewise. + (*one_cmplqi2_1): Likewise. + (*one_cmpl2_doubleword): Likewise, and adopt '&' to NDD dest. + (*one_cmpl2_2): Likewise. + (*one_cmplsi2_1_zext): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + +2023-12-07 Kong Lingling + + * config/i386/i386-expand.cc (ix86_expand_unary_operator): Add use_ndd + parameter and adjust for NDD. + * config/i386/i386-protos.h: Add use_ndd parameter for + ix86_unary_operator_ok and ix86_expand_unary_operator. + * config/i386/i386.cc (ix86_unary_operator_ok): Add use_ndd parameter + and adjust for NDD. + * config/i386/i386.md (neg2): Add new constraint for NDD and + adjust output template. + (*neg_1): Likewise. + (*neg2_doubleword): Likewise and adopt '&' to NDD dest. + (*neg_2): Likewise. + (*neg_ccc_1): Likewise. + (*neg_ccc_2): Likewise. + (*negsi_1_zext): Likewise, and use nonimmediate_operand for operands[1] + to accept memory input for NDD alternatives. + (*negsi_2_zext): Likewise. + +2023-12-07 Kong Lingling + + * config/i386/i386.md (*sub3_doubleword): Add new alternative for + NDD, adopt '&' modifier to NDD dest and emit move when operands[0] not + equal to operands[1]. + (*sub3_doubleword_zext): Likewise. + (*subv4_doubleword): Likewise. + (*subv4_doubleword_1): Likewise. + (*subv4_overflow_1): Add NDD alternatives and adjust output + templates. + (*subv4_overflow_2): Likewise. + (@sub3_carry): Likewise. + (*addsi3_carry_zext_0r): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + (*subsi3_carry_zext): Likewise. + (subborrow): Parse TARGET_APX_NDD to ix86_binary_operator_ok. + (subborrow_0): Likewise. + (*sub3_eq): Likewise. + (*sub3_ne): Likewise. + (*sub3_eq_1): Likewise. + +2023-12-07 Kong Lingling + + * config/i386/i386-expand.cc (ix86_fixup_binary_operands_no_copy): + Add use_ndd parameter and parse it. + * config/i386/i386-protos.h (ix86_fixup_binary_operands_no_copy): + Change define. + * config/i386/i386.md (sub3): Add new alternatives for NDD + and adjust output templates. + (*sub_1): Likewise. + (*sub_2): Likewise. + (subv4): Likewise. + (*subv4): Likewise. + (subv4_1): Likewise. + (usubv4): Likewise. + (*sub_3): Likewise. + (*subsi_1_zext): Likewise, and use nonimmediate_operand for operands[1] + to accept memory input for NDD alternatives. + (*subsi_2_zext): Likewise. + (*subsi_3_zext): Likewise. + +2023-12-07 Kong Lingling + + * config/i386/i386.md (*add3_doubleword): Add ndd alternatives, + adopt '&' to ndd dest and move operands[1] to operands[0] when they are + not equal. + (*add3_doubleword_cc_overflow_1): Likewise. + (*addv4_doubleword): Likewise. + (*addv4_doubleword_1): Likewise. + (*add3_doubleword_zext): Likewise. + (addv4_overflow_1): Add ndd alternatives. + (*addv4_overflow_2): Likewise. + (@add3_carry): Likewise. + (*add3_carry_0): Likewise. + (*addsi3_carry_zext): Likewise. + (addcarry): Likewise. + (addcarry_0): Likewise. + (*addcarry_1): Likewise. + (*add3_eq): Likewise. + (*add3_ne): Likewise. + (*addsi3_carry_zext_0): Likewise, and use nonimmediate_operand for + operands[1] to accept memory input for NDD alternative. + +2023-12-07 Hongyu Wang + + * config/i386/constraints.md (je): New constraint. + * config/i386/i386-protos.h (x86_poff_operand_p): New function to + check any *POFF constant in operand. + * config/i386/i386.cc (x86_poff_operand_p): New prototype. + * config/i386/i386.md (*add_1): Split out je alternative for add. + +2023-12-07 Kong Lingling + + * config/i386/i386.md: (addsi_1_zext): Add new alternatives for + NDD and adjust output templates. + (*add_2): Likewise. + (*addsi_2_zext): Likewise. + (*add_3): Likewise. + (*addsi_3_zext): Likewise. + (*adddi_4): Likewise. + (*add_4): Likewise. + (*add_5): Likewise. + (*addv4): Likewise. + (*addv4_1): Likewise. + (*add3_cconly_overflow_1): Likewise. + (*add3_cc_overflow_1): Likewise. + (*addsi3_zext_cc_overflow_1): Likewise. + (*add3_cconly_overflow_2): Likewise. + (*add3_cc_overflow_2): Likewise. + (*addsi3_zext_cc_overflow_2): Likewise. + +2023-12-07 Kong Lingling + + * config/i386/i386-expand.cc (ix86_fixup_binary_operands): Add + new use_ndd flag to check whether ndd can be used for this binop + and adjust operand emit. + (ix86_binary_operator_ok): Likewise. + (ix86_expand_binary_operator): Likewise, and void postreload + expand generate lea pattern when use_ndd is explicit parsed. + * config/i386/i386-options.cc (ix86_option_override_internal): + Prohibit apx subfeatures when not in 64bit mode. + * config/i386/i386-protos.h (ix86_binary_operator_ok): + Add use_ndd flag. + (ix86_fixup_binary_operand): Likewise. + (ix86_expand_binary_operand): Likewise. + * config/i386/i386.md (*add_1): Extend with new alternatives + to support NDD, and adjust output template. + (*addhi_1): Likewise. + (*addqi_1): Likewise. + +2023-12-07 David Malcolm + + PR analyzer/103546 + PR analyzer/112850 + * doc/invoke.texi: Add -Wanalyzer-symbol-too-complex. + 2023-12-06 Juzhe-Zhong * config/riscv/riscv-vsetvl.cc (extract_single_source): new function. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index af1f8a0d719..9e296399fe4 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20231207 +20231208 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 8dd3709b7aa..296acce9d25 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,31 @@ +2023-12-07 Alexandre Oliva + + * region-model.cc (has_nondefault_case_for_value_p): Take + enumerate type as a parameter. + (region_model::apply_constraints_for_gswitch): Cope with + integral promotion type casts. + +2023-12-07 David Malcolm + + PR analyzer/103546 + PR analyzer/112850 + * analyzer.opt (-param=analyzer-max-svalue-depth=): Increase from + 12 to 18. + (Wanalyzer-symbol-too-complex): New. + * diagnostic-manager.cc + (null_assignment_sm_context::clear_all_per_svalue_state): New. + * engine.cc (impl_sm_context::clear_all_per_svalue_state): New. + * program-state.cc (sm_state_map::clear_all_per_svalue_state): + New. + * program-state.h (sm_state_map::clear_all_per_svalue_state): New + decl. + * region-model-manager.cc + (region_model_manager::reject_if_too_complex): Add + -Wanalyzer-symbol-too-complex. + * sm-taint.cc (taint_state_machine::on_condition): Handle + comparisons against UNKNOWN. + * sm.h (sm_context::clear_all_per_svalue_state): New. + 2023-12-06 David Malcolm * engine.cc (dump_analyzer_json): Use diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index fa9576ffab3..4cae882759d 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,10 @@ +2023-12-07 Andrew Pinski + Jakub Jelinek + + PR preprocessor/111965 + * c-opts.cc (c_common_handle_option) : Set + cpp_opts->debug to value rather than 1. + 2023-12-06 David Malcolm * c-opts.cc (c_diagnostic_finalizer): Make "diagnostic" param diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog index 486ca569145..c0ce63deb97 100644 --- a/gcc/m2/ChangeLog +++ b/gcc/m2/ChangeLog @@ -1,3 +1,29 @@ +2023-12-07 Gaius Mulley + + PR modula2/112893 + * gm2-compiler/M2Base.mod (Ass): Extend array to include proc row + and column. Allow PIM to assign cardinal variables to address + variables. + (Expr): Ditto. + (Comp): Ditto. + * gm2-compiler/M2Check.mod (getSType): New procedure function. + Replace all occurances of GetSType with getSType. + * gm2-compiler/M2GenGCC.mod (CodeParam): Rewrite format specifier + error message. + * gm2-compiler/M2Quads.mod (CheckProcTypeAndProcedure): Add tokno + parameter. + * gm2-compiler/M2Range.def (InitTypesParameterCheck): Add tokno + parameter. + (InitParameterRangeCheck): Add tokno parameter. + Remove EXPORT QUALIFIED list. + (InitParameterRangeCheck): Add tokno parameter. + * gm2-compiler/M2Range.mod (InitTypesParameterCheck): Add tokno + parameter and pass tokno to PutRangeParam. + (InitParameterRangeCheck): Add tokno parameter and pass tokno to + PutRangeParam. + (PutRangeParam): Add tokno parameter and assign to tokenNo. + (FoldTypeParam): Rewrite format string. + 2023-12-06 Thomas Schwinge * lang.opt (-isysroot): New. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3b1c0c7f966..ea17860858b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,430 @@ +2023-12-07 Juzhe-Zhong + + * gcc.target/riscv/rvv/autovec/slp-interleave-1.c: New test. + * gcc.target/riscv/rvv/autovec/slp-interleave-2.c: New test. + * gcc.target/riscv/rvv/autovec/slp-interleave-3.c: New test. + * gcc.target/riscv/rvv/autovec/slp-interleave-4.c: New test. + +2023-12-07 Richard Sandiford + + PR rtl-optimization/106694 + PR rtl-optimization/109078 + PR rtl-optimization/109391 + * gcc.target/aarch64/ldp_stp_16.c (cons4_4_float): Tighten expected + output test. + * gcc.target/aarch64/sve/shift_1.c: Allow reversed shifts for .s + as well as .d. + * gcc.target/aarch64/sme/strided_1.c: New test. + * gcc.target/aarch64/pr109078.c: Likewise. + * gcc.target/aarch64/pr109391.c: Likewise. + * gcc.target/aarch64/sve/pr106694.c: Likewise. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1q_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1q_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1q_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1q_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1_base_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_bf16_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_fp16_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_p64_xN_1.c: Add new test. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1_base_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_bf16_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_fp16_xN_1.c: Add new test. + * gcc.target/arm/simd/vst1_p64_xN_1.c: Add new test. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vst1_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vst1_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1q_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1q_base_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_bf16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_fp16_xN_1.c: Add new tests. + * gcc.target/arm/simd/vld1q_p64_xN_1.c: Add new tests. + +2023-12-07 Ezra Sitorus + + * gcc.target/arm/simd/vld1q_base_xN_1.c: Add new test. + * gcc.target/arm/simd/vld1q_bf16_xN_1.c: Add new test. + * gcc.target/arm/simd/vld1q_fp16_xN_1.c: Add new test. + * gcc.target/arm/simd/vld1q_p64_xN_1.c: Add new test. + +2023-12-07 Marek Polacek + + * gcc.target/aarch64/ldp_stp_unaligned_2.c: Use -fno-stack-protector. + * 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-12.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-11.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-12.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-13.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-14.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-15.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-17.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-18.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-19.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-2.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-5.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-6.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-8.c: Likewise. + * gcc.target/aarch64/stack-check-prologue-9.c: Likewise. + * gcc.target/aarch64/sve/struct_vect_24.c: Likewise. + * gcc.target/aarch64/test_frame_1.c: Likewise. + * gcc.target/aarch64/test_frame_10.c: Likewise. + * gcc.target/aarch64/test_frame_11.c: Likewise. + * gcc.target/aarch64/test_frame_13.c: Likewise. + * gcc.target/aarch64/test_frame_15.c: Likewise. + * gcc.target/aarch64/test_frame_2.c: Likewise. + * gcc.target/aarch64/test_frame_4.c: Likewise. + * gcc.target/aarch64/test_frame_6.c: Likewise. + * gcc.target/aarch64/test_frame_7.c: Likewise. + * gcc.target/aarch64/test_frame_8.c: Likewise. + +2023-12-07 Alexandre Oliva + + * c-c++-common/strub-split-stack.c: New. + * c-c++-common/strub-unsupported.c: New. + * c-c++-common/strub-unsupported-2.c: New. + * c-c++-common/strub-unsupported-3.c: New. + * lib/target-supports.exp (check_effective_target_strub): New. + * c-c++-common/strub-O0.c: Require effective target strub. + * c-c++-common/strub-O1.c: Likewise. + * c-c++-common/strub-O2.c: Likewise. + * c-c++-common/strub-O2fni.c: Likewise. + * c-c++-common/strub-O3.c: Likewise. + * c-c++-common/strub-O3fni.c: Likewise. + * c-c++-common/strub-Og.c: Likewise. + * c-c++-common/strub-Os.c: Likewise. + * c-c++-common/strub-all1.c: Likewise. + * c-c++-common/strub-all2.c: Likewise. + * c-c++-common/strub-apply1.c: Likewise. + * c-c++-common/strub-apply2.c: Likewise. + * c-c++-common/strub-apply3.c: Likewise. + * c-c++-common/strub-apply4.c: Likewise. + * c-c++-common/strub-at-calls1.c: Likewise. + * c-c++-common/strub-at-calls2.c: Likewise. + * c-c++-common/strub-defer-O1.c: Likewise. + * c-c++-common/strub-defer-O2.c: Likewise. + * c-c++-common/strub-defer-O3.c: Likewise. + * c-c++-common/strub-defer-Os.c: Likewise. + * c-c++-common/strub-internal1.c: Likewise. + * c-c++-common/strub-internal2.c: Likewise. + * c-c++-common/strub-parms1.c: Likewise. + * c-c++-common/strub-parms2.c: Likewise. + * c-c++-common/strub-parms3.c: Likewise. + * c-c++-common/strub-relaxed1.c: Likewise. + * c-c++-common/strub-relaxed2.c: Likewise. + * c-c++-common/strub-short-O0-exc.c: Likewise. + * c-c++-common/strub-short-O0.c: Likewise. + * c-c++-common/strub-short-O1.c: Likewise. + * c-c++-common/strub-short-O2.c: Likewise. + * c-c++-common/strub-short-O3.c: Likewise. + * c-c++-common/strub-short-Os.c: Likewise. + * c-c++-common/strub-strict1.c: Likewise. + * c-c++-common/strub-strict2.c: Likewise. + * c-c++-common/strub-tail-O1.c: Likewise. + * c-c++-common/strub-tail-O2.c: Likewise. + * c-c++-common/strub-var1.c: Likewise. + * c-c++-common/torture/strub-callable1.c: Likewise. + * c-c++-common/torture/strub-callable2.c: Likewise. + * c-c++-common/torture/strub-const1.c: Likewise. + * c-c++-common/torture/strub-const2.c: Likewise. + * c-c++-common/torture/strub-const3.c: Likewise. + * c-c++-common/torture/strub-const4.c: Likewise. + * c-c++-common/torture/strub-data1.c: Likewise. + * c-c++-common/torture/strub-data2.c: Likewise. + * c-c++-common/torture/strub-data3.c: Likewise. + * c-c++-common/torture/strub-data4.c: Likewise. + * c-c++-common/torture/strub-data5.c: Likewise. + * c-c++-common/torture/strub-indcall1.c: Likewise. + * c-c++-common/torture/strub-indcall2.c: Likewise. + * c-c++-common/torture/strub-indcall3.c: Likewise. + * c-c++-common/torture/strub-inlinable1.c: Likewise. + * c-c++-common/torture/strub-inlinable2.c: Likewise. + * c-c++-common/torture/strub-ptrfn1.c: Likewise. + * c-c++-common/torture/strub-ptrfn2.c: Likewise. + * c-c++-common/torture/strub-ptrfn3.c: Likewise. + * c-c++-common/torture/strub-ptrfn4.c: Likewise. + * c-c++-common/torture/strub-pure1.c: Likewise. + * c-c++-common/torture/strub-pure2.c: Likewise. + * c-c++-common/torture/strub-pure3.c: Likewise. + * c-c++-common/torture/strub-pure4.c: Likewise. + * c-c++-common/torture/strub-run1.c: Likewise. + * c-c++-common/torture/strub-run2.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/strub-run1.C: Likewise. + * g++.dg/torture/strub-init1.C: Likewise. + * g++.dg/torture/strub-init2.C: Likewise. + * g++.dg/torture/strub-init3.C: Likewise. + * gnat.dg/strub_attr.adb: Likewise. + * gnat.dg/strub_ind.adb: Likewise. + * gnat.dg/strub_access.adb: Likewise. + * gnat.dg/strub_access1.adb: Likewise. + * gnat.dg/strub_disp.adb: Likewise. + * gnat.dg/strub_disp1.adb: Likewise. + * gnat.dg/strub_ind1.adb: Likewise. + * gnat.dg/strub_ind2.adb: Likewise. + * gnat.dg/strub_intf.adb: Likewise. + * gnat.dg/strub_intf1.adb: Likewise. + * gnat.dg/strub_intf2.adb: Likewise. + * gnat.dg/strub_renm.adb: Likewise. + * gnat.dg/strub_renm1.adb: Likewise. + * gnat.dg/strub_renm2.adb: Likewise. + * gnat.dg/strub_var.adb: Likewise. + * gnat.dg/strub_var1.adb: Likewise. + +2023-12-07 Marc Poulhiès + + * gcc.target/i386/pr106910-1.c: Disable for newlib. + +2023-12-07 Marc Poulhiès + + * gcc.dg/analyzer/fd-4.c: Fix for newlib. + +2023-12-07 Marc Poulhiès + + * gcc.dg/vect/vect-ifcvt-18.c: Add dep on avx_runtime. + * gcc.dg/vect/vect-simd-clone-16f.c: Likewise. + * gcc.dg/vect/vect-simd-clone-18f.c: Likewise. + +2023-12-07 Gaius Mulley + + PR modula2/112893 + * gm2/iso/fail/proccard.mod: New test. + * gm2/pim/pass/proccard.mod: New test. + +2023-12-07 Juzhe-Zhong + + * gcc.target/riscv/rvv/vsetvl/avl_prop-2.c: New test. + +2023-12-07 Christoph Müllner + + * gcc.target/riscv/xtheadmemidx-inline-asm-1.c: New test. + +2023-12-07 Christoph Müllner + + * gcc.target/riscv/xtheadfmemidx-without-xtheadmemidx.c: New test. + +2023-12-07 Jakub Jelinek + + PR target/111068 + * gcc.target/i386/pr111068.c: New test. + +2023-12-07 Andrew Pinski + Jakub Jelinek + + PR preprocessor/111965 + * gcc.dg/cpp/pr111965-1.c: New test. + * gcc.dg/cpp/pr111965-2.c: New test. + +2023-12-07 Jakub Jelinek + + PR middle-end/112881 + * gcc.dg/bitint-50.c: New test. + +2023-12-07 Jakub Jelinek + + PR tree-optimization/112880 + * gcc.dg/bitint-49.c: New test. + +2023-12-07 Jakub Jelinek + + PR target/96127 + * gcc.target/s390/pr96127.c (c1): Add casts to long int *. + +2023-12-07 Alexandre Oliva + + * gcc.dg/analyzer/switch-short-enum-1.c: New. + * gcc.dg/analyzer/switch-no-short-enum-1.c: New. + +2023-12-07 Victor Do Nascimento + + * gcc.target/aarch64/acle/rcpc3.c: New. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd-ti-shift.c: New test. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd-cmov.c: New test. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd-shld-shrd.c: New test. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd.c: Add test for left/right rotate. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd.c: Add l/ashiftrt tests. + +2023-12-07 Hongyu Wang + + * gcc.target/i386/apx-ndd.c: Add tests for sal. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add or and xor test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add and test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add not test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add neg test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd-sbb.c: New test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add test for ndd sub. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd-adc.c: New test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: Add more test. + +2023-12-07 Kong Lingling + + * gcc.target/i386/apx-ndd.c: New test. + +2023-12-07 David Malcolm + + PR analyzer/103546 + PR analyzer/112850 + * c-c++-common/analyzer/call-summaries-pr107158-2.c: Add + -Wno-analyzer-symbol-too-complex. + * c-c++-common/analyzer/call-summaries-pr107158.c: Likewise. + * c-c++-common/analyzer/deref-before-check-pr109060-haproxy-cfgparse.c: + Likewise. + * c-c++-common/analyzer/feasibility-3.c: Add + -Wno-analyzer-too-complex and -Wno-analyzer-symbol-too-complex. + * c-c++-common/analyzer/flex-with-call-summaries.c: Add + -Wno-analyzer-symbol-too-complex. Remove fail for + PR analyzer/103546 leak false positive. + * c-c++-common/analyzer/flex-without-call-summaries.c: Remove + xfail for PR analyzer/103546 leak false positive. + * c-c++-common/analyzer/infinite-recursion-3.c: Add + -Wno-analyzer-symbol-too-complex. + * c-c++-common/analyzer/null-deref-pr108251-smp_fetch_ssl_fc_has_early-O2.c: + Likewise. + * c-c++-common/analyzer/null-deref-pr108251-smp_fetch_ssl_fc_has_early.c: + Likewise. + * c-c++-common/analyzer/null-deref-pr108400-SoftEtherVPN-WebUi.c: + Likewise. + * c-c++-common/analyzer/null-deref-pr108806-qemu.c: Likewise. + * c-c++-common/analyzer/null-deref-pr108830.c: Likewise. + * c-c++-common/analyzer/pr94596.c: Likewise. + * c-c++-common/analyzer/strtok-2.c: Likewise. + * c-c++-common/analyzer/strtok-4.c: Add -Wno-analyzer-too-complex + and -Wno-analyzer-symbol-too-complex. + * c-c++-common/analyzer/strtok-cppreference.c: Likewise. + * gcc.dg/analyzer/analyzer.exp: Add -Wanalyzer-symbol-too-complex + to DEFAULT_CFLAGS. + * gcc.dg/analyzer/attr-const-3.c: Add + -Wno-analyzer-symbol-too-complex. + * gcc.dg/analyzer/call-summaries-pr107072.c: Likewise. + * gcc.dg/analyzer/doom-s_sound-pr108867.c: Likewise. + * gcc.dg/analyzer/explode-4.c: Likewise. + * gcc.dg/analyzer/null-deref-pr102671-1.c: Likewise. + * gcc.dg/analyzer/null-deref-pr105755.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-curl.c: Likewise. + * gcc.dg/analyzer/pr101503.c: Likewise. + * gcc.dg/analyzer/pr103892.c: Add -Wno-analyzer-too-complex and + -Wno-analyzer-symbol-too-complex. + * gcc.dg/analyzer/pr94851-4.c: Add + -Wno-analyzer-symbol-too-complex. + * gcc.dg/analyzer/pr96860-1.c: Likewise. + * gcc.dg/analyzer/pr96860-2.c: Likewise. + * gcc.dg/analyzer/pr98918.c: Likewise. + * gcc.dg/analyzer/pr99044-2.c: Likewise. + * gcc.dg/analyzer/uninit-pr108806-qemu.c: Likewise. + * gcc.dg/analyzer/use-after-free.c: Add -Wno-analyzer-too-complex + and -Wno-analyzer-symbol-too-complex. + * gcc.dg/plugin/plugin.exp: Add new tests for + analyzer_kernel_plugin.c. + * gcc.dg/plugin/taint-CVE-2011-0521-4.c: Update expected results. + * gcc.dg/plugin/taint-CVE-2011-0521-5.c: Likewise. + * gcc.dg/plugin/taint-CVE-2011-0521-6.c: Likewise. + * gcc.dg/plugin/taint-CVE-2011-0521-5-fixed.c: Remove xfail. + * gcc.dg/plugin/taint-pr112850-precise.c: New test. + * gcc.dg/plugin/taint-pr112850-too-complex.c: New test. + * gcc.dg/plugin/taint-pr112850-unsanitized.c: New test. + * gcc.dg/plugin/taint-pr112850.c: New test. + 2023-12-06 Victor Do Nascimento * gcc.target/aarch64/acle/rwsr.c (get_rsr128): New. diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 74bad754cc8..8dc9785ccb1 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,9 @@ +2023-12-07 Alexandre Oliva + + * configure.ac: Check for strub support. + * configure: Rebuilt. + * Makefile.in: Compile strub.c conditionally. + 2023-12-06 Thomas Schwinge Jakub Jelinek diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 43b161ccb3d..4ffaa9d558b 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,41 @@ +2023-12-07 Patrick Palka + + * include/std/ranges (__detail::_ToClosure): Replace with ... + (__detail::_To): ... this. + (__detail::_ToClosure2): Replace with ... + (__detail::To2): ... this. + (to): Simplify using the existing _Partial range adaptor + closure object. + +2023-12-07 Jonathan Wakely + + * include/std/format (_Iter_sink): + Remove uint64_t local type. + +2023-12-07 Jonathan Wakely + + * include/bits/atomic_wait.h: Include instead of + . + +2023-12-07 Jonathan Wakely + + PR libstdc++/112882 + * include/bits/c++config (__is_constant_evaluated): Add + always_inline attribute. + (_GLIBCXX_DO_ASSERT): Remove macro. + (__glibcxx_assert): Define separately for assertions-enabled and + constexpr-only cases. + +2023-12-07 Alexandre Oliva + + PR libstdc++/112858 + * config/os/gnu-linux/os_defines.h + (_GLIBCXX_MAY_HAVE___CXA_THREAD_ATEXIT_IMPL): Define. + * libsupc++/atexit_thread.cc [__GXX_WEAK__ && + _GLIBCXX_MAY_HAVE___CXA_THREAD_ATEXIT_IMPL] + (__cxa_thread_atexit): Add dynamic detection of + __cxa_thread_atexit_impl. + 2023-12-06 Jason Merrill DR 532