+2024-07-02 Pengxuan Zheng <quic_pzheng@quicinc.com>
+
+ PR target/113859
+ * config/aarch64/aarch64-simd.md (aarch64_<su>addlp<mode>): Rename to...
+ (@aarch64_<su>addlp<mode>): ... This.
+ (popcount<mode>2): New define_expand.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * passes.def (expand_pow): Renamed from expand_powcabs.
+ * timevar.def (TV_TREE_POWCABS): Remove.
+ (TV_TREE_POW): Add
+ * tree-pass.h (make_pass_expand_powcabs): Rename to ...
+ (make_pass_expand_pow): This.
+ * tree-ssa-math-opts.cc (class pass_expand_powcabs): Rename to ...
+ (class pass_expand_pow): This.
+ (pass_expand_powcabs::execute): Rename to ...
+ (pass_expand_pow::execute): This.
+ (make_pass_expand_powcabs): Rename to ...
+ (make_pass_expand_pow): This.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * tree-complex.cc (gimple_expand_builtin_cabs): Add
+ `cabs(a+ai)`, `cabs(x+0i)` and `cabs(0+xi)` optimizations.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ PR tree-optimization/115710
+ * tree-complex.cc (init_dont_simulate_again): Handle CABS.
+ (gimple_expand_builtin_cabs): New function, moved mostly
+ from tree-ssa-math-opts.cc.
+ (expand_complex_operations_1): Call gimple_expand_builtin_cabs.
+ * tree-ssa-math-opts.cc (gimple_expand_builtin_cabs): Remove.
+ (build_and_insert_binop): Remove.
+ (pass_data_expand_powcabs): Update comment.
+ (pass_expand_powcabs::execute): Don't handle CABS.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * tree-complex.cc (expand_complex_addition): If both
+ operands have the same real and imag parts, only
+ add the addition once.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * common.opt.urls: Regenerate.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+ Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ * btfout.cc (btf_mark_type_used): New.
+ * ctfc.h (btf_mark_type_used): Declare it here.
+ * config/bpf/bpf.cc (bpf_option_override): Enable -gprune-btf
+ by default if -gbtf is enabled.
+ * config/bpf/core-builtins.cc (extra_fn): New typedef.
+ (compute_field_expr): Add callback parameter, and call it if supplied.
+ Fix computation for MEM_REF.
+ (mark_component_type_as_used): New.
+ (bpf_mark_types_as_used): Likewise.
+ (bpf_expand_core_builtin): Call here.
+ * doc/invoke.texi (Debugging Options): Note that -gprune-btf is
+ enabled by default for BPF target when generating BTF.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * btfout.cc (btf_used_types): New hash set.
+ (struct btf_fixup): New.
+ (fixups, forwards): New vecs.
+ (btf_output): Calculate num_types depending on debug_prune_btf.
+ (btf_early_finsih): New initialization for debug_prune_btf.
+ (btf_add_used_type): New function.
+ (btf_used_type_list_cb): Likewise.
+ (btf_collect_pruned_types): Likewise.
+ (btf_add_vars): Handle special case for variables in ".maps" section
+ when generating BTF for BPF CO-RE target.
+ (btf_late_finish): Use btf_collect_pruned_types when debug_prune_btf
+ is in effect. Move some initialization to btf_early_finish.
+ (btf_finalize): Additional deallocation for debug_prune_btf.
+ * common.opt (gprune-btf): New flag.
+ * ctfc.cc (init_ctf_strtable): Make non-static.
+ * ctfc.h (init_ctf_strtable, ctfc_delete_strtab): Make extern.
+ * doc/invoke.texi (Debugging Options): Document -gprune-btf.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * btfout.cc (struct btf_datasec_entry): New.
+ (struct btf_datasec): Add `id' member. Change `entries' to use
+ new struct btf_datasec_entry.
+ (func_map): New hash_map.
+ (max_translated_id): New.
+ (btf_var_ids, btf_id_map, holes, voids, num_vars_added)
+ (num_types_added, num_types_created): Delete.
+ (btf_absolute_var_id, btf_relative_var_id, btf_absolute_func_id)
+ (btf_relative_func_id, btf_absolute_datasec_id, init_btf_id_map)
+ (get_btf_id, set_btf_id, btf_emit_id_p): Delete.
+ (btf_removed_type_p): Delete.
+ (btf_dtd_kind, btf_emit_type_p): New helpers.
+ (btf_fwd_to_enum_p, btf_calc_num_vbytes): Use them.
+ (btf_collect_datasec): Delete.
+ (btf_dtd_postprocess_cb, btf_dvd_emit_preprocess_cb)
+ (btf_dtd_emit_preprocess_cb, btf_emit_preprocess): Delete.
+ (btf_dmd_representable_bitfield_p): Adapt to type reference changes
+ and delete now-unused ctfc argument.
+ (btf_asm_datasec_type_ref): Delete.
+ (btf_asm_type_ref): Adapt to type reference changes, simplify.
+ (btf_asm_type): Likewise. Mark struct/union types with bitfield
+ members.
+ (btf_asm_array): Adapt to data structure changes.
+ (btf_asm_varent): Likewise.
+ (btf_asm_sou_member): Likewise. Ensure non-bitfield members are
+ correctly re-encoded if struct or union contains any bitfield.
+ (btf_asm_func_arg, btf_asm_func_type, btf_asm_datasec_entry)
+ (btf_asm_datasec_type): Adapt to data structure changes.
+ (output_btf_header): Adapt to other changes, simplify type
+ length calculation, add info to assembler comments.
+ (output_btf_vars): Adapt to other changes.
+ (output_btf_strs): Fix overlong lines.
+ (output_asm_btf_sou_fields, output_asm_btf_enum_list)
+ (output_asm_btf_func_args_list, output_asm_btf_vlen_bytes)
+ (output_asm_btf_type, output_btf_types, output_btf_func_types)
+ (output_btf_datasec_types): Adapt to other changes.
+ (btf_init_postprocess): Delete.
+ (btf_output): Change to only perform output.
+ (btf_add_const_void, btf_add_func_records): New.
+ (btf_early_finish): Use them here. New.
+ (btf_datasec_push_entry): Adapt to data structure changes.
+ (btf_datasec_add_func, btf_datasec_add_var): New.
+ (btf_add_func_datasec_entries): New.
+ (btf_emit_variable_p): New helper.
+ (btf_add_vars): Use it here. New.
+ (btf_type_list_cb, btf_collect_translated_types): New.
+ (btf_assign_func_ids, btf_late_assign_var_ids)
+ (btf_assign_datasec_ids): New.
+ (btf_finish): Remove unused argument. Call new btf_late*
+ functions and btf_output.
+ (btf_finalize): Adapt to data structure changes.
+ * ctfc.h (struct ctf_dtdef): Convert existing boolean flags to
+ BOOL_BITFIELD and reorder.
+ (struct ctf_dvdef): Add dvd_id member.
+ (btf_finish): Remove argument from prototype.
+ (get_btf_id): Delete prototype.
+ (funcs_traverse_callback, traverse_btf_func_types): Add an
+ explanatory comment.
+ * dwarf2ctf.cc (ctf_debug_finish): Remove unused argument.
+ * dwarf2ctf.h: Analogous change.
+ * dwarf2out.cc: Likewise.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * btfout.cc (BTF_VOID_TYPEID, BTF_INIT_TYPEID): Move defines to
+ include/btf.h.
+ (btf_dvd_emit_preprocess_cb, btf_emit_preprocess)
+ (btf_dmd_representable_bitfield_p, btf_asm_array, btf_asm_varent)
+ (btf_asm_sou_member, btf_asm_func_arg, btf_init_postprocess):
+ Adapt to structural changes in ctf_* structs.
+ * ctfc.h (struct ctf_dtdef): Add forward declaration.
+ (ctf_dtdef_t, ctf_dtdef_ref): Move typedefs earlier.
+ (struct ctf_arinfo, struct ctf_funcinfo, struct ctf_sliceinfo)
+ (struct ctf_itype, struct ctf_dmdef, struct ctf_func_arg)
+ (struct ctf_dvdef): Use pointers instead of type IDs for
+ references to other types and use typedefs where appropriate.
+ (struct ctf_dtdef): Add ref_type member.
+ (ctf_type_exists): Use pointer instead of type ID.
+ (ctf_add_reftype, ctf_add_enum, ctf_add_slice, ctf_add_float)
+ (ctf_add_integer, ctf_add_unknown, ctf_add_pointer)
+ (ctf_add_array, ctf_add_forward, ctf_add_typedef)
+ (ctf_add_function, ctf_add_sou, ctf_add_enumerator)
+ (ctf_add_variable): Likewise. Return pointer instead of ID.
+ (ctf_lookup_tree_type): Return pointer to type instead of ID.
+ * ctfc.cc: Analogous changes.
+ * ctfout.cc (ctf_asm_type, ctf_asm_slice, ctf_asm_varent)
+ (ctf_asm_sou_lmember, ctf_asm_sou_member, ctf_asm_func_arg)
+ (output_ctf_objt_info): Adapt to changes.
+ * dwarf2ctf.cc (gen_ctf_type, gen_ctf_void_type)
+ (gen_ctf_unknown_type, gen_ctf_base_type, gen_ctf_pointer_type)
+ (gen_ctf_subrange_type, gen_ctf_array_type, gen_ctf_typedef)
+ (gen_ctf_modifier_type, gen_ctf_sou_type, gen_ctf_function_type)
+ (gen_ctf_enumeration_type, gen_ctf_variable, gen_ctf_function)
+ (gen_ctf_type, ctf_do_die): Likewise.
+ * config/bpf/btfext-out.cc (struct btf_ext_core_reloc): Use
+ pointer instead of type ID.
+ (bpf_core_reloc_add, bpf_core_get_sou_member_index)
+ (output_btfext_core_sections): Adapt to above changes.
+ * config/bpf/core-builtins.cc (process_type): Likewise.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * btfout.cc (btf_init_postprocess): Rename to...
+ (btf_early_finish): ...this.
+ (btf_output): Rename to...
+ (btf_finish): ...this.
+ * ctfc.h: Analogous changes.
+ * dwarf2ctf.cc (ctf_debug_early_finish): Conditionally call
+ btf_early_finish, or ctf_finalize as appropriate. Emit BTF
+ here for LTO builds.
+ (ctf_debug_finish): Always call btf_finish here if generating
+ BTF info in non-LTO builds.
+ (ctf_debug_finalize, ctf_debug_init_postprocess): Delete.
+ * dwarf2out.cc (dwarf2out_early_finish): Remove call to
+ ctf_debug_init_postprocess.
+
+2024-07-02 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ PR target/115188
+ * config/arm/arm.md (unaligned_loadsi): Use 'Uw' constraint and
+ 'mem_and_no_t1_wback_op'.
+ (unaligned_loadhiu): Likewise.
+ (unaligned_storesi): Likewise.
+ (unaligned_storehi): Likewise.
+ * config/arm/predicates.md (mem_and_no_t1_wback_op): Add new predicate.
+ * config/arm/sync.md (arm_atomic_load<mode>): Use 'Uw' constraint.
+ (arm_atomic_store<mode>): Likewise.
+
+2024-07-02 Matthew Malcomson <matthew.malcomson@arm.com>
+
+ * doc/tm.texi: Regenerated.
+ * target.def (function_attribute_inlinable_p,
+ unspec_may_trap_p): Update documentation.
+
+2024-07-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/115741
+ * tree-vect-stmts.cc (get_group_load_store_type): Also
+ handle VMAT_CONTIGUOUS_REVERSE when determining overrun.
+
+2024-07-02 Andrew Stubbs <ams@baylibre.com>
+
+ * config/gcn/gcn-opts.h (TARGET_GLOBAL_ADDRSPACE): New.
+ (TARGET_AVGPRS): New.
+ (TARGET_AVGPR_MEMOPS): New.
+ (TARGET_AVGPR_COMBINED): New.
+ (TARGET_FLAT_OFFSETS): New.
+ (TARGET_11BIT_GLOBAL_OFFSET): New.
+ (TARGET_CDNA2_MEM_COSTS): New.
+ (TARGET_WAVE64_COMPAT): New.
+ (TARGET_DPP_FULL): New.
+ (TARGET_DPP16): New.
+ (TARGET_DPP8): New.
+ (TARGET_AVGPR_CDNA1_NOPS): New.
+ (TARGET_VGPR_GRANULARITY): New.
+ (TARGET_ARCHITECTED_FLAT_SCRATCH): New.
+ (TARGET_EXPLICIT_CARRY): New.
+ (TARGET_MULTIPLY_IMMEDIATE): New.
+ (TARGET_SDWA): New.
+ (TARGET_WBINVL1_CACHE): New.
+ (TARGET_GLn_CACHE): New.
+ * config/gcn/gcn-valu.md (throughout): Change TARGET_GCN*,
+ TARGET_CDNA* and TARGET_RDNA* to use TARGET_<feature> instead.
+ * config/gcn/gcn.cc (throughout): Likewise.
+ * config/gcn/gcn.md (throughout): Likewise.
+
+2024-07-02 Lingling Kong <lingling.kong@intel.com>
+
+ * config/i386/i386.md (*imulhi<mode>zu): Added APX
+ NF support.
+ (*imulhi<mode>zu<nf_name>): New define_insn.
+ (*mulsi3_1_zext<nf_name>): Ditto.
+ (*mul<mode><dwi>3_1<nf_name>): Ditto.
+ (*<u>mulqihi3_1<nf_name>): Ditto.
+ (*mul<mode>3_1<nf_name>): Added APX NDD support.
+ (*mulv<mode>4): Ditto.
+ (*mulvhi4): Ditto.
+
+2024-07-02 Kewen Lin <linkw@linux.ibm.com>
+
+ PR target/115739
+ * config/sparc/vxworks.h (SPARC_LONG_DOUBLE_TYPE_SIZE): New define.
+
+2024-07-02 Lulu Cheng <chenglulu@loongson.cn>
+
+ * config/loongarch/loongarch.cc (loongarch_insn_cost):
+ New function.
+ (TARGET_INSN_COST): New macro.
+
+2024-07-02 Kewen Lin <linkw@linux.ibm.com>
+
+ PR tree-optimization/115659
+ * gimple-isel.cc (gimple_expand_vec_cond_expr): Add more foldings for
+ patterns x CMP y ? -1 : z and x CMP y ? z : 0.
+
2024-07-01 Richard Biener <rguenther@suse.de>
* tree-ssa-forwprop.cc (fwprop_set_lattice_val): Preserve
+2024-07-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): In the case where an operand
+ does not have both bounds known at compile time, use nevertheless
+ the low bound directly if it is known at compile time.
+ Fold the conditional expression giving the low bound of the result
+ in the general case if the low bound of all the operands are equal.
+
+2024-07-02 Ronan Desplanques <desplanques@adacore.com>
+
+ * sem_ch12.adb (Save_And_Reset): Fix value of low bound used to
+ reset table.
+
+2024-07-02 Steve Baird <baird@adacore.com>
+
+ * sem_attr.adb
+ (Analyze_Image_Attribute.Check_Image_Type): Check for
+ E_Access_Attribute_Type prefix type.
+
+2024-07-02 Steve Baird <baird@adacore.com>
+
+ * exp_ch9.adb
+ (Expand_N_Protected_Body): Declare new procedure
+ Unanalyze_Use_Clauses and call it before analyzing the newly
+ constructed subprogram body.
+
+2024-07-02 Steve Baird <baird@adacore.com>
+
+ * exp_put_image.adb
+ (Build_Record_Put_Image_Procedure): Declare new Boolean-valued
+ function Null_Record_Default_Implementation_OK; call it as part of
+ deciding whether to generate "(NULL RECORD)" text.
+
+2024-07-02 Justin Squirek <squirek@adacore.com>
+
+ * sem_ch5.adb:
+ (Analyze_Assignment): Add special expansion for qualified expressions
+ in certain cases dealing with mutably tagged types.
+
+2024-07-02 Bob Duff <duff@adacore.com>
+
+ * freeze.adb (Freeze_Type_Refs): If Node is in N_Has_Etype,
+ check that it has had its Etype set, because this can be
+ called early for expression functions that are completions.
+
+2024-07-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch4.adb (Expand_Array_Comparison): Remove the obsolete byte
+ addressibility test. If Support_Composite_Compare_On_Target is true,
+ immediately return for a component size of 8, an unsigned component
+ type and aligned operands. Disable when Unnest_Subprogram_Mode is
+ true (for LLVM).
+ (Expand_N_Op_Eq): Adjust comment.
+ * targparm.ads (Support_Composite_Compare_On_Target): Replace bit by
+ byte in description and document support for ordering comparisons.
+ * gcc-interface/utils2.cc (compare_arrays): Rename into...
+ (compare_arrays_for_equality): ...this. Remove redundant lines.
+ (compare_arrays_for_ordering): New function.
+ (build_binary_op) <comparisons>: Call compare_arrays_for_ordering
+ to implement ordering comparisons for arrays.
+
+2024-07-02 Yannick Moy <moy@adacore.com>
+
+ * contracts.adb (Analyze_Pragmas_In_Declarations): Analyze
+ pragmas in two iterations over the list of declarations in
+ order to analyze some pragmas before others.
+ * einfo-utils.ads (Get_Pragma): Fix comment.
+ * sem_prag.ads (Pragma_Significant_To_Subprograms): Fix.
+ (Pragma_Significant_To_Subprograms_Analyzed_First): Add new
+ global array to identify these pragmas which should be analyzed
+ first, which concerns only Extensions_Visible for now.
+
+2024-07-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch7.adb (Convert_View): Add third parameter Typ and use it if
+ the second parameter does not have an Etype.
+ (Make_Adjust_Call): Remove obsolete setting of Etype and pass Typ in
+ call to Convert_View.
+ (Make_Final_Call): Likewise.
+ (Make_Init_Call): Pass Typ in call to Convert_View.
+
+2024-07-02 Javier Miranda <miranda@adacore.com>
+
+ * sem_aggr.adb (Cannot_Compute_High_Bound): New subprogram.
+ (Report_Null_Array_Constraint_Error): New subprogram.
+ (Collect_Aggr_Bounds): For null aggregates, build the bounds
+ of the inner dimensions.
+ (Has_Null_Aggregate_Raising_Constraint_Error): New subprogram.
+ (Subtract): New subprogram.
+ (Resolve_Array_Aggregate): Report a warning when the index of
+ null array aggregates is an enumeration type or a modular type
+ at we can statically determine that the program will raise CE
+ at runtime computing its high bound.
+ (Resolve_Null_Array_Aggregate): ditto.
+
+2024-07-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst
+ (No_Default_Initialization): Mention components alongside variables.
+ * exp_aggr.adb (Build_Array_Aggr_Code.Gen_Assign): Check that the
+ restriction No_Default_Initialization is not in effect for default
+ initialized component.
+ (Build_Record_Aggr_Code): Likewise.
+ * gnat_rm.texi: Regenerate.
+
+2024-07-02 Eric Botcazou <ebotcazou@adacore.com>
+
+ * debug.adb (dJ): Add back as unused.
+
2024-06-27 Eric Botcazou <ebotcazou@adacore.com>
* libgnat/s-carsi8.adb: Remove clauses for System.Address_Operations
+2024-07-02 Pengxuan Zheng <quic_pzheng@quicinc.com>
+
+ PR target/113859
+ * gcc.target/aarch64/popcnt-udot.c: New test.
+ * gcc.target/aarch64/popcnt-vec.c: New test.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ PR tree-optimization/110473
+ PR tree-optimization/107432
+ * gcc.target/aarch64/vect-convert-1.c: New test.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * gcc.dg/pow-sqrt-synth-1.c: Update testcase for renamed pass.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * gcc.dg/tree-ssa/cabs-3.c: New test.
+ * gcc.dg/tree-ssa/cabs-4.c: New test.
+ * gcc.dg/tree-ssa/cabs-5.c: New test.
+ * gcc.dg/tree-ssa/cabs-6.c: New test.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ PR tree-optimization/115710
+ * gcc.dg/tree-ssa/cabs-1.c: New test.
+ * gcc.dg/tree-ssa/cabs-2.c: New test.
+ * gfortran.dg/vect/pr115710.f90: New test.
+
+2024-07-02 Andrew Pinski <quic_apinski@quicinc.com>
+
+ * gcc.dg/tree-ssa/complex-8.c: New test.
+
+2024-07-02 Jakub Jelinek <jakub@redhat.com>
+ Jason Merrill <jason@redhat.com>
+
+ PR c++/115754
+ * g++.dg/cpp26/pr115754.C: New test.
+
+2024-07-02 Jakub Jelinek <jakub@redhat.com>
+ Jason Merrill <jason@redhat.com>
+
+ PR c++/115747
+ * g++.dg/init/delete1.C: Adjust expected diagnostics for C++26.
+ * g++.dg/warn/Wdelete-incomplete-1.C: Likewise.
+ * g++.dg/warn/incomplete1.C: Likewise.
+ * g++.dg/ipa/pr85607.C: Likewise.
+ * g++.dg/cpp26/delete1.C: New test.
+ * g++.dg/cpp26/delete2.C: New test.
+ * g++.dg/cpp26/delete3.C: New test.
+
+2024-07-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/115745
+ * g++.dg/cpp1z/decomp16.C: Adjust expected diagnostics.
+ * g++.dg/cpp26/decomp3.C: New test.
+ * g++.dg/cpp26/decomp4.C: New test.
+ * g++.dg/cpp26/decomp5.C: New test.
+ * g++.dg/cpp26/decomp6.C: New test.
+ * g++.dg/cpp26/decomp7.C: New test.
+ * g++.dg/cpp26/decomp8.C: New test.
+ * g++.dg/cpp26/decomp9.C: New test.
+ * g++.dg/cpp26/decomp10.C: New test.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+ Cupertino Miranda <cupertino.miranda@oracle.com>
+
+ * gcc.dg/debug/btf/btf-variables-5.c: Adjust one test for bpf-*-*
+ target.
+
+2024-07-02 David Faust <david.faust@oracle.com>
+
+ * gcc.dg/debug/btf/btf-prune-1.c: New test.
+ * gcc.dg/debug/btf/btf-prune-2.c: Likewise.
+ * gcc.dg/debug/btf/btf-prune-3.c: Likewise.
+ * gcc.dg/debug/btf/btf-prune-maps.c: Likewise.
+
+2024-07-02 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ PR target/115188
+ * gcc.target/arm/pr115188.c: Add new test.
+
+2024-07-02 Simon Martin <simon@nasilyan.com>
+
+ PR c++/111160
+ * g++.dg/overload/error8.C: New test.
+ * g++.dg/overload/volatile2.C: New test.
+
+2024-07-02 Lingling Kong <lingling.kong@intel.com>
+
+ * gcc.target/i386/apx-ndd.c: Add test for imul ndd.
+
+2024-07-02 Lulu Cheng <chenglulu@loongson.cn>
+
+ * gcc.target/loongarch/explicit-relocs-extreme-tls-desc.c:
+ Add compilation options '-fno-late-combine-instructions'.
+ * gcc.target/loongarch/explicit-relocs-tls-desc.c: Likewise.
+
2024-07-01 Marek Polacek <polacek@redhat.com>
PR c++/115469