aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fixincludes/ChangeLog6
-rw-r--r--gcc/ChangeLog134
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/ada/ChangeLog131
-rw-r--r--gcc/c/ChangeLog5
-rw-r--r--gcc/jit/ChangeLog20
-rw-r--r--gcc/testsuite/ChangeLog61
-rw-r--r--libstdc++-v3/ChangeLog47
8 files changed, 405 insertions, 1 deletions
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index cb7c796..0e35cf9 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,9 @@
+2024-06-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * fixincl.x: Regenerate.
+ * inclhack.def (apple_local_stdio_fn_deprecation): Also apply to
+ _stdio.h.
+
2024-06-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
* fixincl.x: Regenerate.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index be77dc0..8a26644 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,137 @@
+2024-06-27 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR rtl-optimization/115677
+ * late-combine.cc (pass_late_combine::gate): New function.
+
+2024-06-27 Stefan Schulze Frielinghaus <stefansf@gcc.gnu.org>
+
+ PR target/115634
+ * config/s390/s390.cc (s390_decompose_addrstyle_without_index):
+ Check for ADDR_REGS in s390_decompose_addrstyle_without_index.
+
+2024-06-27 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/115669
+ * tree-vect-slp.cc (vect_build_slp_tree_2): Do not reassociate
+ chains that participate in a reduction.
+
+2024-06-27 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-cache.cc (update_list::update_list): Add m_bitmaps.
+ (update_list::~update_list): Initialize m_bitmaps.
+ * gimple-range-cache.h (ssa_lazy_cache): Add m_bitmaps.
+ * gimple-range.cc (enable_ranger): Remove global bitmap
+ initialization.
+ (disable_ranger): Remove global bitmap release.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ * config/i386/sse.md
+ (float<floatunssuffix><sselongvecmodelower><mode>2<mask_name>
+ <round_name>): Refactor the pattern.
+ (unspec_fix<vcvtt_uns_suffix>_trunc<mode><sselongvecmodelower>2
+ <mask_name><round_saeonly_name>): Ditto.
+ (fix<fixunssuffix>_trunc<mode><sselongvecmodelower>2<mask_name>
+ <round_saeonly_name>): Ditto.
+ * config/i386/subst.md (round_modev8sf_condition): Remove.
+ (round_saeonly_modev8sf_condition): Ditto.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * config/i386/i386-expand.cc (ix86_expand_trunc_with_avx2_noavx512f):
+ New function for generate a series of suitable insn.
+ * config/i386/i386-protos.h (ix86_expand_trunc_with_avx2_noavx512f):
+ Define new function.
+ * config/i386/sse.md: Extend trunc<mode><mode>2 for x86-64-v3.
+ (ssebytemode) Add V8HI.
+ (PMOV_DST_MODE_2_AVX2): New mode iterator.
+ (PMOV_SRC_MODE_3_AVX2): Ditto.
+ * config/i386/mmx.md
+ (trunc<mode><mmxhalfmodelower>2): Ditto.
+ (avx512vl_trunc<mode><mmxhalfmodelower>2): Ditto.
+ (truncv2si<mode>2): Ditto.
+ (avx512vl_truncv2si<mode>2): Ditto.
+ (mmxbytemode): New mode attr.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * config/i386/mmx.md
+ (VI2_32_64): New mode iterator.
+ (mmxhalfmode): New mode atter.
+ (mmxhalfmodelower): Ditto.
+ (truncv2hiv2qi2): Extend mode v4hi and change name from
+ truncv2hiv2qi to trunc<mode><mmxhalfmodelower>2.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * tree-vect-generic.cc
+ (expand_vector_conversion): Support convert for int -> int,
+ float -> float and int <-> float.
+ * tree-vect-stmts.cc (vectorizable_conversion): Wrap the
+ indirect convert part.
+ (supportable_indirect_convert_operation): New function.
+ * tree-vectorizer.h (supportable_indirect_convert_operation):
+ Define the new function.
+
+2024-06-27 Xi Ruoyao <xry111@xry111.site>
+
+ * config/loongarch/loongarch.cc (loongarch_print_operand_reloc):
+ Dedup and sort the comment describing modifiers.
+
+2024-06-27 Xi Ruoyao <xry111@xry111.site>
+
+ * config/loongarch/loongarch.cc:
+ (loongarch_use_bstrins_for_ior_with_mask): Split the main logic
+ into ...
+ (loongarch_use_bstrins_for_ior_with_mask_1): ... here.
+ (loongarch_rtx_costs): Special case for IOR those can be
+ implemented with bstrins.
+
+2024-06-27 liuhongt <hongtao.liu@intel.com>
+
+ PR target/115462
+ * config/i386/i386.cc (ix86_rtx_costs): Make cost of MEM (reg +
+ disp) just a little bit more than MEM (reg).
+
+2024-06-27 Pan Li <pan2.li@intel.com>
+
+ * internal-fn.def (SAT_TRUNC): Add new signed IFN sat_trunc as
+ unary_convert.
+ * match.pd: Add new matching pattern for unsigned int sat_trunc.
+ * optabs.def (OPTAB_CL): Add unsigned and signed optab.
+ * tree-ssa-math-opts.cc (gimple_unsigend_integer_sat_trunc): Add
+ new decl for the matching pattern generated func.
+ (match_unsigned_saturation_trunc): Add new func impl to match
+ the .SAT_TRUNC.
+ (math_opts_dom_walker::after_dom_children): Add .SAT_TRUNC match
+ function under BIT_IOR_EXPR case.
+
+2024-06-27 Pan Li <pan2.li@intel.com>
+
+ * match.pd: Add convert description for minus and capture.
+ * tree-vect-patterns.cc (vect_recog_build_binary_gimple_call): Add
+ new logic to handle in_type is incompatibile with out_type, as
+ well as rename from.
+ (vect_recog_build_binary_gimple_stmt): Rename to.
+ (vect_recog_sat_add_pattern): Leverage above renamed func.
+ (vect_recog_sat_sub_pattern): Ditto.
+
+2024-06-27 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/115652
+ * tree-vect-slp.cc (vect_schedule_slp_node): Only insert
+ at the start of the block if that strictly dominates
+ the discovered dependent stmt.
+
+2024-06-27 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/115493
+ * tree-vect-loop.cc (vect_create_epilog_for_reduction): Use
+ first scalar result.
+
2024-06-26 Richard Biener <rguenther@suse.de>
PR tree-optimization/115629
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 3402e55..b08c5ce 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20240627
+20240628
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 61f32cd..3ba50c5 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,134 @@
+2024-06-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * libgnat/s-carsi8.adb: Remove clauses for System.Address_Operations
+ and use only operations of System.Storage_Elements for addresses.
+ * libgnat/s-casi16.adb: Likewise.
+ * libgnat/s-casi32.adb: Likewise.
+ * libgnat/s-casi64.adb: Likewise.
+ * libgnat/s-casi128.adb: Likewise.
+ * libgnat/s-carun8.adb: Likewise.
+ * libgnat/s-caun16.adb: Likewise.
+ * libgnat/s-caun32.adb: Likewise.
+ * libgnat/s-caun64.adb: Likewise.
+ * libgnat/s-caun128.adb: Likewise.
+ * libgnat/s-geveop.adb: Likewise.
+
+2024-06-27 Javier Miranda <miranda@adacore.com>
+
+ * sem_ch2.adb (Analyze_Interpolated_String_Literal): Report
+ interpretations of ambiguous parameterless function calls.
+
+2024-06-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * sem_ch5.adb (Analyze_Target_Name): Call Analyze_Dimension on the
+ node once the Etype is set.
+ * sem_dim.adb (OK_For_Dimension): Set to True for N_Target_Name.
+ (Analyze_Dimension): Call Analyze_Dimension_Has_Etype for it.
+
+2024-06-27 Ronan Desplanques <desplanques@adacore.com>
+
+ * mdll.adb (Build_Non_Reloc_DLL): Fix incorrect assignment
+ to array object.
+ (Ada_Build_Non_Reloc_DLL): Likewise.
+
+2024-06-27 Javier Miranda <miranda@adacore.com>
+
+ * sem_res.adb (Has_Applicable_User_Defined_Literal): Add missing
+ support for interpolated strings.
+
+2024-06-27 Martin Clochard <clochard@adacore.com>
+
+ * sem_ch6.adb (Check_Overriding_Indicator) Remove Comes_From_Source filter.
+ (New_Overloaded_Entity) Move up special case of LSP_Subprogram,
+ and remove Comes_From_Source filter.
+
+2024-06-27 Eric Botcazou <ebotcazou@adacore.com>
+
+ * aspects.ads (Aspect_Id): Add Aspect_Finalizable.
+ (Implementation_Defined_Aspect): Add True for Aspect_Finalizable.
+ (Operational_Aspect): Add True for Aspect_Finalizable.
+ (Aspect_Argument): Add Expression for Aspect_Finalizable.
+ (Is_Representation_Aspect): Add False for Aspect_Finalizable.
+ (Aspect_Names): Add Name_Finalizable for Aspect_Finalizable.
+ (Aspect_Delay): Add Always_Delay for Aspect_Finalizable.
+ * checks.adb: Add with and use clauses for Sem_Elab.
+ (Install_Primitive_Elaboration_Check): Call Is_Controlled_Procedure.
+ * einfo.ads (Has_Relaxed_Finalization): Document new flag.
+ (Is_Controlled_Active): Update documentation.
+ * exp_aggr.adb (Generate_Finalization_Actions): Replace Find_Prim_Op
+ with Find_Controlled_Prim_Op for Name_Finalize.
+ * exp_attr.adb (Expand_N_Attribute_Reference) <Finalization_Size>:
+ Return 0 if the prefix type has relaxed finalization.
+ * exp_ch3.adb (Build_Equivalent_Record_Aggregate): Return Empty if
+ the type needs finalization.
+ (Expand_Freeze_Record_Type): Call Find_Controlled_Prim_Op instead of
+ Find_Prim_Op for Name_{Adjust,Initialize,Finalize}.
+ Call Make_Finalize_Address_Body for all controlled types.
+ * exp_ch4.adb (Insert_Dereference_Action): Do not generate a call to
+ Adjust_Controlled_Dereference if the designated type has relaxed
+ finalization.
+ * exp_ch6.adb (Needs_BIP_Collection): Return false for an untagged
+ type that has relaxed finalization.
+ * exp_ch7.adb (Allows_Finalization_Collection): Return false if the
+ designated type has relaxed finalization.
+ (Check_Visibly_Controlled): Call Find_Controlled_Prim_Op instead of
+ Find_Prim_Op.
+ (Make_Adjust_Call): Likewise.
+ (Make_Deep_Record_Body): Likewise.
+ (Make_Final_Call): Likewise.
+ (Make_Init_Call): Likewise.
+ * exp_disp.adb (Set_All_DT_Position): Remove obsolete warning.
+ * exp_util.ads: Add with and use clauses for Snames.
+ (Find_Prim_Op): Add precondition.
+ (Find_Controlled_Prim_Op): New function declaration.
+ (Name_Of_Controlled_Prim_Op): Likewise.
+ * exp_util.adb: Remove with and use clauses for Snames.
+ (Build_Allocate_Deallocate_Proc): Do not build finalization actions
+ if the designated type has relaxed finalization.
+ (Find_Controlled_Prim_Op): New function.
+ (Find_Last_Init): Call Find_Controlled_Prim_Op instead of
+ Find_Prim_Op.
+ (Name_Of_Controlled_Prim_Op): New function.
+ * freeze.adb (Freeze_Entity.Freeze_Record_Type): Propagate the
+ Has_Relaxed_Finalization flag from components.
+ * gen_il-fields.ads (Opt_Field_Enum): Add Has_Relaxed_Finalization.
+ * gen_il-gen-gen_entities.adb (Entity_Kind): Likewise.
+ * sem_aux.adb (Is_By_Reference_Type): Return true for all controlled
+ types.
+ * sem_ch3.adb (Build_Derived_Record_Type): Do not special case types
+ declared in Ada.Finalization.
+ (Record_Type_Definition): Propagate the Has_Relaxed_Finalization
+ flag from components.
+ * sem_ch13.adb (Analyze_Aspects_At_Freeze_Point): Also process the
+ Finalizable aspect.
+ (Analyze_Aspect_Specifications): Likewise. Call Flag_Non_Static_Expr
+ in more cases.
+ (Check_Aspect_At_Freeze_Point): Likewise.
+ (Inherit_Aspects_At_Freeze_Point): Likewise.
+ (Resolve_Aspect_Expressions): Likewise.
+ (Resolve_Finalizable_Argument): New procedure.
+ (Validate_Finalizable_Aspect): Likewise.
+ * sem_elab.ads: Add with and use clauses for Snames.
+ (Is_Controlled_Procedure): New function declaration.
+ * sem_elab.adb: Remove with and use clauses for Snames.
+ (Is_Controlled_Proc): Move to...
+ (Is_Controlled_Procedure): ...here and rename.
+ (Check_A_Call): Call Find_Controlled_Prim_Op instead of
+ Find_Prim_Op.
+ (Is_Finalization_Procedure): Likewise.
+ * sem_util.ads (Propagate_Controlled_Flags): Update documentation.
+ * sem_util.adb (Is_Fully_Initialized_Type): Replace call to
+ Find_Optional_Prim_Op with Find_Controlled_Prim_Op.
+ Call Has_Null_Extension only for derived tagged types.
+ (Propagate_Controlled_Flags): Propagate Has_Relaxed_Finalization.
+ * snames.ads-tmpl (Name_Finalizable): New name.
+ (Name_Relaxed_Finalization): Likewise.
+ * libgnat/s-finroo.ads (Root_Controlled): Add Finalizable aspect.
+ * doc/gnat_rm/gnat_language_extensions.rst: Document implementation
+ of Generalized Finalization.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
2024-06-21 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/trans.cc (Subprogram_Body_to_gnu): Also return early
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index fc69947..2a395bf 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,8 @@
+2024-06-27 Martin Uecker <uecker@tugraz.at>
+
+ * c-parser.cc (c_parser_direct_declarator_inner): Add
+ error message.
+
2024-06-26 David Malcolm <dmalcolm@redhat.com>
* c-parser.cc (c_parser_require): Pass *global_dc to
diff --git a/gcc/jit/ChangeLog b/gcc/jit/ChangeLog
index ca28103..b46a7d1 100644
--- a/gcc/jit/ChangeLog
+++ b/gcc/jit/ChangeLog
@@ -1,3 +1,23 @@
+2024-06-27 Antoni Boucher <bouanto@zoho.com>
+
+ * docs/topics/compatibility.rst (LIBGCCJIT_ABI_28): New ABI tag.
+ * docs/topics/expressions.rst: Document gcc_jit_context_new_alignof.
+ * jit-playback.cc (new_alignof): New method.
+ * jit-playback.h: New method.
+ * jit-recording.cc (recording::context::new_alignof): New
+ method.
+ (recording::memento_of_sizeof::replay_into,
+ recording::memento_of_typeinfo::replay_into,
+ recording::memento_of_sizeof::make_debug_string,
+ recording::memento_of_typeinfo::make_debug_string,
+ recording::memento_of_sizeof::write_reproducer,
+ recording::memento_of_typeinfo::write_reproducer): Rename.
+ * jit-recording.h (enum type_info_type): New enum.
+ (class memento_of_sizeof class memento_of_typeinfo): Rename.
+ * libgccjit.cc (gcc_jit_context_new_alignof): New function.
+ * libgccjit.h (gcc_jit_context_new_alignof): New function.
+ * libgccjit.map: New function.
+
2024-06-25 Kewen Lin <linkw@linux.ibm.com>
* jit-recording.cc (recording::memento_of_get_type::get_size): Update
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 35930f3..87d4c69 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,64 @@
+2024-06-27 Antoni Boucher <bouanto@zoho.com>
+
+ * jit.dg/all-non-failing-tests.h: New test.
+ * jit.dg/test-alignof.c: New test.
+
+2024-06-27 Martin Uecker <uecker@tugraz.at>
+
+ * gcc.dg/c99-arraydecl-4.c: New test.
+
+2024-06-27 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/115669
+ * gcc.dg/vect/pr115669.c: New testcase.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * gcc.target/i386/pr107432-8.c: New test.
+ * gcc.target/i386/pr107432-9.c: Ditto.
+ * gcc.target/i386/pr92645-4.c: Modify test.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * gcc.target/i386/pr107432-1.c: Modify test.
+ * gcc.target/i386/pr107432-6.c: Add test.
+ * gcc.target/i386/pr108938-3.c: This patch supports
+ truncv4hiv4qi affect bswap optimization, so I added
+ the -mno-avx option for now, and open a bugzilla.
+
+2024-06-27 Hu, Lin1 <lin1.hu@intel.com>
+
+ PR target/107432
+ * gcc.target/i386/pr107432-1.c: New test.
+ * gcc.target/i386/pr107432-2.c: Ditto.
+ * gcc.target/i386/pr107432-3.c: Ditto.
+ * gcc.target/i386/pr107432-4.c: Ditto.
+ * gcc.target/i386/pr107432-5.c: Ditto.
+ * gcc.target/i386/pr107432-6.c: Ditto.
+ * gcc.target/i386/pr107432-7.c: Ditto.
+
+2024-06-27 Pan Li <pan2.li@intel.com>
+
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_arith.h: Add helper
+ test macros.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_binary_scalar.h: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-1.c: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-2.c: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-3.c: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-run-1.c: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-run-2.c: New test.
+ * gcc.target/riscv/rvv/autovec/binop/vec_sat_u_sub_trunc-run-3.c: New test.
+
+2024-06-27 Xi Ruoyao <xry111@xry111.site>
+
+ * gcc.target/loongarch/bstrins-3.c: New test.
+
+2024-06-27 liuhongt <hongtao.liu@intel.com>
+
+ * gcc.target/i386/pr115462.c: New test.
+
2024-06-26 Richard Biener <rguenther@suse.de>
PR tree-optimization/115629
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index f7ed11b..b11c0a5 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,50 @@
+2024-06-27 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/37475
+ * config/locale/gnu/codecvt_members.cc (Guard): New RAII type.
+ (do_out, do_in): Return partial if the destination is empty but
+ the source is not. Use Guard to restore locale on scope exit.
+ Return immediately on any conversion error.
+ (do_encoding, do_max_length, do_length): Use Guard.
+ * testsuite/22_locale/codecvt/in/char/37475.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/37475.cc: New test.
+ * testsuite/22_locale/codecvt/out/char/37475.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/37475.cc: New test.
+
+2024-06-27 Alexandre Oliva <oliva@adacore.com>
+
+ PR libstdc++/115454
+ * testsuite/experimental/simd/pr115454_find_last_set.cc: Defer
+ to check_vect_support_and_set_flags's default dg-do action.
+
+2024-06-27 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/115668
+ * include/bits/chrono_io.h (formatter<duration<R,P, C>::format):
+ Do not use chrono::abs.
+ * testsuite/20_util/duration/io.cc: Check formatting a duration
+ with unsigned rep.
+
+2024-06-27 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/103191
+ * include/bits/stl_bvector.h (vector<bool>::operator[])
+ (vector<bool>::front, vector<bool>::back): Add debug assertions.
+ * testsuite/23_containers/vector/bool/element_access/constexpr.cc:
+ Remove dg-error that no longer triggers.
+
+2024-06-27 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/111250
+ * include/debug/assertions.h (__glibcxx_requires_non_empty_range)
+ (__glibcxx_requires_nonempty, __glibcxx_requires_subscript):
+ Define to __glibcxx_assert expressions or to debug mode
+ __glibcxx_check_xxx expressions.
+ * testsuite/23_containers/array/element_access/constexpr_c++17.cc:
+ Add checks for out-of-bounds accesses in constant expressions.
+ * testsuite/23_containers/vector/element_access/constexpr.cc:
+ Likewise.
+
2024-06-26 Jonathan Wakely <jwakely@redhat.com>
* scripts/update_release_branch.sh: New file.