+2024-05-22 Pengxuan Zheng <quic_pzheng@quicinc.com>
+
+ PR target/102171
+ * config/aarch64/aarch64-builtins.cc (AARCH64_SIMD_VGET_HIGH_BUILTINS):
+ New macro to create definitions for all vget_high intrinsics.
+ (VGET_HIGH_BUILTIN): Likewise.
+ (enum aarch64_builtins): Add vget_high function codes.
+ (AARCH64_SIMD_VGET_LOW_BUILTINS): Delete duplicate macro.
+ (aarch64_general_fold_builtin): Fold vget_high calls.
+ * config/aarch64/aarch64-simd-builtins.def: Delete vget_high builtins.
+ * config/aarch64/aarch64-simd.md (aarch64_get_high<mode>): Delete.
+ (aarch64_vget_hi_halfv8bf): Likewise.
+ * config/aarch64/arm_neon.h (__attribute__): Delete.
+ (vget_high_f16): Likewise.
+ (vget_high_f32): Likewise.
+ (vget_high_f64): Likewise.
+ (vget_high_p8): Likewise.
+ (vget_high_p16): Likewise.
+ (vget_high_p64): Likewise.
+ (vget_high_s8): Likewise.
+ (vget_high_s16): Likewise.
+ (vget_high_s32): Likewise.
+ (vget_high_s64): Likewise.
+ (vget_high_u8): Likewise.
+ (vget_high_u16): Likewise.
+ (vget_high_u32): Likewise.
+ (vget_high_u64): Likewise.
+ (vget_high_bf16): Likewise.
+
+2024-05-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/115038
+ * fold-mem-offsets.cc (fold_offsets): Return 0 if the defining
+ instruction of the register is frame related.
+
+2024-05-22 Roger Sayle <roger@nextmovesoftware.com>
+
+ * config/i386/i386.cc (ix86_rtx_costs) <case CONST_INT>:
+ A CONST_INT that isn't x86_64_immediate_operand requires an extra
+ (expensive) movabsq insn to load, so return COSTS_N_INSNS (1) + 1.
+
+2024-05-22 Roger Sayle <roger@nextmovesoftware.com>
+
+ * except.cc (output_function_exception_table): Move call to
+ get_personality_function after targetm_common.except_unwind_info
+ check, to avoid ICE on targets that don't support exceptions.
+
+2024-05-22 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (change_vec_perm_layout): Ignore an
+ input partition of -1.
+
+2024-05-22 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_schedule_slp_node): Avoid looking
+ at SLP_REPRESENTATIVE for VEC_PERM nodes.
+
+2024-05-22 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-stmts.cc (vect_check_store_rhs): Look at *rhs
+ only when it's a vec_constant_def.
+ (vect_is_simple_use): When we have no representative for
+ an internal node, fill in *op with error_mark_node.
+
+2024-05-22 Richard Biener <rguenther@suse.de>
+
+ * doc/invoke.texi (C++ Modules): Fix typo.
+
+2024-05-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/115152
+ * tree-ssa-strlen.cc (strlen_pass::count_nonzero_bytes_addr): If
+ !si->full_string_p, clear *nulterm and set maxlen to nbytes.
+
+2024-05-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/115172
+ * ubsan.cc (instrument_bool_enum_load): If rhs is not in generic
+ address space, use qualified version of utype with the right
+ address space. Formatting fix.
+
+2024-05-22 Haochen Jiang <haochen.jiang@intel.com>
+
+ PR target/115069
+ * config/i386/i386-expand.cc (ix86_expand_vecop_qihi2):
+ Do not enable the optimization when AVX512BW is not enabled.
+
2024-05-21 Vineet Gupta <vineetg@rivosinc.com>
* config/riscv/riscv.cc (riscv_expand_epilogue): Handle offset
+2024-05-22 Patrick Palka <ppalka@redhat.com>
+
+ PR c++/115159
+ * tree.cc (build_cp_fntype_variant): Always use structural
+ equality for types with a complex exception specification.
+ (fixup_deferred_exception_variants): Use structural equality
+ for adjusted variants.
+ * typeck.cc (comp_except_specs): Require == instead of
+ cp_tree_equal for ce_exact noexcept-spec comparison.
+
+2024-05-22 Nathaniel Shead <nathanieloshead@gmail.com>
+
+ * decl.cc (grokfndecl): Check for main functions with language
+ linkage or module attachment.
+ (grokvardecl): Check for extern 'C' entities named main.
+
2024-05-21 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/107800
+2024-05-22 Patrick Palka <ppalka@redhat.com>
+
+ PR c++/115159
+ * g++.dg/modules/noexcept-2_a.H: New test.
+ * g++.dg/modules/noexcept-2_b.C: New test.
+
+2024-05-22 Pengxuan Zheng <quic_pzheng@quicinc.com>
+
+ PR target/102171
+ * gcc.target/aarch64/vget_high_2.c: New test.
+ * gcc.target/aarch64/vget_high_2_be.c: New test.
+
+2024-05-22 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
+
+ * gcc.target/arm/cmse/extend-param.c: Add regression test. Add
+ -fshort-enums.
+ * gcc.target/arm/cmse/extend-return.c: Add -fshort-enums option.
+
+2024-05-22 Eric Botcazou <ebotcazou@adacore.com>
+
+ * g++.dg/opt/fmo1.C: New test.
+
+2024-05-22 Tom de Vries <tdevries@suse.de>
+
+ PR debug/115066
+ * gcc.dg/pr115066.c (scan-assembler): Allow for alternative form
+ of Define macro.
+
+2024-05-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/115152
+ * gcc.dg/pr115152.c: New test.
+
+2024-05-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/115172
+ * gcc.dg/asan/pr115172.c: New test.
+
+2024-05-22 Haochen Jiang <haochen.jiang@intel.com>
+
+ PR target/115069
+ * gcc.target/i386/pr115069.c: New.
+
+2024-05-22 xuli <xuli1@eswincomputing.com>
+
+ * gcc.dg/vect/vect-early-break_124-pr114403.c: Enable vectrization for RISC-V target.
+
+2024-05-22 Nathaniel Shead <nathanieloshead@gmail.com>
+
+ * g++.dg/abi/main.C: Check pedwarn for main with linkage-spec.
+ * g++.dg/modules/contracts-1_b.C: Don't declare main in named
+ module.
+ * g++.dg/modules/contracts-3_b.C: Likewise.
+ * g++.dg/modules/contracts-4_d.C: Likewise.
+ * g++.dg/modules/horcrux-1_a.C: Export declarations, so that...
+ * g++.dg/modules/horcrux-1_b.C: Don't declare main in named
+ module.
+ * g++.dg/modules/main-1.C: New test.
+ * g++.dg/parse/linkage5.C: New test.
+ * g++.dg/parse/linkage6.C: New test.
+
2024-05-21 Patrick Palka <ppalka@redhat.com>
PR c++/115139
+2024-05-22 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/locale_classes.h (locale::combine)
+ (locale::name, locale::operator==, locale::operator!=)
+ (locale::operator(), locale::classic): Add nodiscard
+ attribute.
+ * include/bits/locale_classes.tcc (has_facet, use_facet):
+ Likewise.
+ * testsuite/22_locale/locale/cons/12438.cc: Add dg-warning for
+ nodiscard diagnostic.
+ * testsuite/22_locale/locale/cons/2.cc: Cast use_facet
+ expression to void, to suppress diagnostic.
+ * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
+ * testsuite/22_locale/locale/operations/2.cc: Add dg-warning.
+
+2024-05-22 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/108323
+ * include/bits/locale_classes.tcc (locale(const locale&, Facet*)):
+ Return a copy of the first argument when the facet pointer is
+ null, as per LWG 2295.
+ (locale::combine): Ensure the result is unnamed.
+ * src/c++11/localename.cc (_M_replace_categories): Ignore
+ whether the second locale has a name when cat == none, as per
+ LWG 3676.
+ * src/c++98/locale.cc (_M_install_facet): Use __builtin_expect
+ to predict that the facet pointer is non-null.
+ * testsuite/22_locale/locale/cons/names.cc: New test.
+
+2024-05-22 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/114940
+ * include/bits/version.def (generator): Depend on
+ __cpp_sized_deallocation.
+ * include/bits/version.h: Regenerate.
+ * include/std/stacktrace (_GLIBCXX_SIZED_DELETE): New macro.
+ (basic_stacktrace::_Impl::_M_deallocate): Use it.
+
+2024-05-22 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/115099
+ * include/bits/std_thread.h: Declare formatter as friend of
+ thread::id.
+ * include/std/thread (operator<<): Convert non-void pointers to
+ void pointers for output.
+ (formatter): Add constraint that thread::native_handle_type is a
+ pointer or integer.
+ (formatter::format): Reimplement without basic_ostringstream.
+ * testsuite/30_threads/thread/id/output.cc: Check output
+ compiles before <sstream> has been included.
+
+2024-05-22 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/115145
+ * include/std/variant (operator==, operator!=, operator<)
+ (operator<=, operator>, operator>=): Add trailing-return-type to
+ lambda expressions to trigger conversion to bool.
+ * testsuite/20_util/variant/relops/115145.cc: New test.
+
2024-05-17 Björn Schäpers <bjoern@hazardy.de>
* acinclude.m4 (GLIBCXX_ENABLE_BACKTACE): Add check for