aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/ChangeLog4
-rw-r--r--gcc/ChangeLog122
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/Makefile.in1
-rw-r--r--gcc/c/ChangeLog11
-rw-r--r--gcc/config/sol2.h6
-rw-r--r--gcc/cp/ChangeLog25
-rw-r--r--gcc/doc/tm.texi5
-rw-r--r--gcc/doc/tm.texi.in5
-rw-r--r--gcc/testsuite/ChangeLog110
-rw-r--r--gcc/testsuite/g++.dg/lookup/extern-c-redecl3.C8
-rw-r--r--gcc/testsuite/g++.dg/pid_t-1.C3
-rw-r--r--gcc/testsuite/g++.target/riscv/rvv/autovec/pr123074.C (renamed from gcc/testsuite/gcc.target/riscv/rvv/autovec/pr123074.C)0
-rw-r--r--gcc/testsuite/gcc.dg/pid_t-1.c19
-rw-r--r--gcc/testsuite/gcc.target/riscv/rvv/rvv.exp2
-rw-r--r--libatomic/ChangeLog8
-rw-r--r--libgcc/ChangeLog19
-rw-r--r--libgcc/config/rs6000/t-slibgcc-aix8
-rw-r--r--libgomp/ChangeLog31
-rw-r--r--libphobos/ChangeLog5
-rw-r--r--libsanitizer/LOCAL_PATCHES1
-rw-r--r--libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h3
-rw-r--r--libstdc++-v3/ChangeLog98
23 files changed, 483 insertions, 13 deletions
diff --git a/config/ChangeLog b/config/ChangeLog
index 59cc1f4..002a37f 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,7 @@
+2025-12-09 John Ericson <git@johnericson.me>
+
+ * gthr.m4: Create new GCC_AC_THREAD_MODEL macro
+
2025-11-30 Jose E. Marchesi <jose.marchesi@oracle.com>
* acx.m4 (ACX_PROG_GA68): New defun.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e6da5b8..d4ef4f9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,125 @@
+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
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 4568345..4d0208f 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20251209
+20251210
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index a9264bd..d623145 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -2503,7 +2503,6 @@ libgcc.mvars: config.status Makefile specs xgcc$(exeext)
: > tmp-libgcc.mvars
echo GCC_CFLAGS = '$(GCC_CFLAGS)' >> tmp-libgcc.mvars
echo INHIBIT_LIBC_CFLAGS = '$(INHIBIT_LIBC_CFLAGS)' >> tmp-libgcc.mvars
- echo TARGET_SYSTEM_ROOT = '$(TARGET_SYSTEM_ROOT)' >> tmp-libgcc.mvars
mv tmp-libgcc.mvars libgcc.mvars
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 5589389..8d3084e 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,14 @@
+2025-12-09 Qing Zhao <qing.zhao@oracle.com>
+
+ PR c/122982
+ * c-typeck.cc (build_access_with_size_for_counted_by): Call
+ c_fully_fold on the first parameter.
+
+2025-12-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/123018
+ * c-decl.cc (finish_struct): Diagnose bit-fields with vector type.
+
2025-12-05 Richard Biener <rguenther@suse.de>
* gimple-parser.cc (c_parser_gimple_postfix_expression):
diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h
index 4e3199d..026d363 100644
--- a/gcc/config/sol2.h
+++ b/gcc/config/sol2.h
@@ -41,6 +41,12 @@ along with GCC; see the file COPYING3. If not see
#undef WINT_TYPE_SIZE
#define WINT_TYPE_SIZE 32
+/* Same for pid_t. See SCD 2.4.2, p. 6P-12, Figure 6-59 (64-bit). There's
+ no corresponding 32-bit definition, but this is what Solaris 8
+ <sys/types.h> uses. */
+
+#define PID_TYPE (TARGET_64BIT ? "int" : "long int")
+
#define SIG_ATOMIC_TYPE "int"
/* ??? This definition of int8_t follows the system header but does
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index b4c2b70..bc8bb88 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,28 @@
+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
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 25aad2e..bbb1182 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -1825,6 +1825,7 @@ int}.
@defmacx UINT_FAST64_TYPE
@defmacx INTPTR_TYPE
@defmacx UINTPTR_TYPE
+@defmacx PID_TYPE
C expressions for the standard types @code{sig_atomic_t},
@code{int8_t}, @code{int16_t}, @code{int32_t}, @code{int64_t},
@code{uint8_t}, @code{uint16_t}, @code{uint32_t}, @code{uint64_t},
@@ -1833,8 +1834,8 @@ C expressions for the standard types @code{sig_atomic_t},
@code{uint_least32_t}, @code{uint_least64_t}, @code{int_fast8_t},
@code{int_fast16_t}, @code{int_fast32_t}, @code{int_fast64_t},
@code{uint_fast8_t}, @code{uint_fast16_t}, @code{uint_fast32_t},
-@code{uint_fast64_t}, @code{intptr_t}, and @code{uintptr_t}. See
-@code{SIZE_TYPE} above for more information.
+@code{uint_fast64_t}, @code{intptr_t}, and @code{uintptr_t} and the
+built-in type @code{pid_t}. See @code{SIZE_TYPE} above for more information.
If any of these macros evaluates to a null pointer, the corresponding
type is not supported; if GCC is configured to provide
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index 24d47b1..253965b 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -1553,6 +1553,7 @@ int}.
@defmacx UINT_FAST64_TYPE
@defmacx INTPTR_TYPE
@defmacx UINTPTR_TYPE
+@defmacx PID_TYPE
C expressions for the standard types @code{sig_atomic_t},
@code{int8_t}, @code{int16_t}, @code{int32_t}, @code{int64_t},
@code{uint8_t}, @code{uint16_t}, @code{uint32_t}, @code{uint64_t},
@@ -1561,8 +1562,8 @@ C expressions for the standard types @code{sig_atomic_t},
@code{uint_least32_t}, @code{uint_least64_t}, @code{int_fast8_t},
@code{int_fast16_t}, @code{int_fast32_t}, @code{int_fast64_t},
@code{uint_fast8_t}, @code{uint_fast16_t}, @code{uint_fast32_t},
-@code{uint_fast64_t}, @code{intptr_t}, and @code{uintptr_t}. See
-@code{SIZE_TYPE} above for more information.
+@code{uint_fast64_t}, @code{intptr_t}, and @code{uintptr_t} and the
+built-in type @code{pid_t}. See @code{SIZE_TYPE} above for more information.
If any of these macros evaluates to a null pointer, the corresponding
type is not supported; if GCC is configured to provide
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f8a8fba..e80759b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,113 @@
+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
diff --git a/gcc/testsuite/g++.dg/lookup/extern-c-redecl3.C b/gcc/testsuite/g++.dg/lookup/extern-c-redecl3.C
index 56dcefa..c9c9bd5 100644
--- a/gcc/testsuite/g++.dg/lookup/extern-c-redecl3.C
+++ b/gcc/testsuite/g++.dg/lookup/extern-c-redecl3.C
@@ -5,17 +5,19 @@
// { dg-final { scan-assembler-not "call\[\t \]+\[^\$\]*?_Z4forkv" { target i?86-*-* x86_64-*-* } } }
// { dg-final { scan-assembler "call\[\t \]+_?fork" { target i?86-*-* x86_64-*-* } } }
-extern "C" int fork (void);
+typedef __typeof (__builtin_fork ()) pid_t;
+
+extern "C" pid_t fork (void);
void
foo ()
{
- extern int fork (void);
+ extern pid_t fork (void);
fork ();
}
extern "C"
-int
+pid_t
fork (void)
{
return 0;
diff --git a/gcc/testsuite/g++.dg/pid_t-1.C b/gcc/testsuite/g++.dg/pid_t-1.C
new file mode 100644
index 0000000..cb32eb4
--- /dev/null
+++ b/gcc/testsuite/g++.dg/pid_t-1.C
@@ -0,0 +1,3 @@
+/* { dg-options "-Wall" } */
+
+extern "C" int fork (void); // { dg-warning "conflicts with built-in declaration" "" { target { *-*-solaris2* && ilp32 } } }
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/pr123074.C b/gcc/testsuite/g++.target/riscv/rvv/autovec/pr123074.C
index d203477..d203477 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/pr123074.C
+++ b/gcc/testsuite/g++.target/riscv/rvv/autovec/pr123074.C
diff --git a/gcc/testsuite/gcc.dg/pid_t-1.c b/gcc/testsuite/gcc.dg/pid_t-1.c
new file mode 100644
index 0000000..f4f3f68
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pid_t-1.c
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-options "-Wall" } */
+/* { dg-require-fork "" } */
+
+/* Compile with -Wall to get a warning if built-in and system pid_t don't
+ match. */
+
+#include <sys/types.h>
+
+typedef __typeof (__builtin_fork ()) __builtin_pid_t;
+
+__builtin_pid_t __p_t__;
+pid_t *p_t_p;
+
+void
+pt (void)
+{
+ p_t_p = &__p_t__;
+}
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp b/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
index e128b17..877cc55 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
+++ b/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
@@ -47,7 +47,7 @@ dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/xandesvector/*.\[cS\]]] \
"" $CFLAGS
gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/vsetvl/*.\[cS\]]] \
"" $CFLAGS
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/autovec/*.\[cCS\]]] \
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/autovec/*.\[cS\]]] \
"-O3 -ftree-vectorize" $CFLAGS
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/autovec/vls/*.\[cS\]]] \
"-O3 -ftree-vectorize -mrvv-vector-bits=scalable" $CFLAGS
diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog
index b2573f1..1bb8151 100644
--- a/libatomic/ChangeLog
+++ b/libatomic/ChangeLog
@@ -1,3 +1,11 @@
+2025-12-09 John Ericson <git@johnericson.me>
+
+ * Makefile.in: Regenerate.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * configure.ac: Use GCC_AC_THREAD_MODEL instead of hand-rolled
+ * testsuite/Makefile.in: Regenerate.
+
2025-11-19 Martin Liska <martin.liska@hey.com>
* acinclude.m4: Add detection for wild linker.
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index a9f4a1f..75ba93e 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,22 @@
+2025-12-09 John Ericson <git@JohnEricson.me>
+
+ * config/rs6000/t-slibgcc-aix: Instead of using a
+ TARGET_SYSTEM_ROOT make variable, just define a shell variable
+ as part of the rule and use that.
+
+2025-12-09 John Ericson <git@JohnEricson.me>
+
+ * Makefile.in: Define NO_PIE_CFLAGS make variable via autoconf
+ substitution.
+ * configure: Regenerate.
+ * configure.ac: New configure check to define NO_PIE_CFLAGS
+ using the algorithm Andrew asked for in the linked mail.
+
+2025-12-09 John Ericson <git@johnericson.me>
+
+ * configure: Regenerate.
+ * configure.ac: Use GCC_AC_THREAD_MODEL instead of hand-rolled
+
2025-11-27 Lulu Cheng <chenglulu@loongson.cn>
* config/loongarch/cpuinfo.c (HWCAP_LOONGARCH_LSX): Define
diff --git a/libgcc/config/rs6000/t-slibgcc-aix b/libgcc/config/rs6000/t-slibgcc-aix
index 6333687..4a3d624 100644
--- a/libgcc/config/rs6000/t-slibgcc-aix
+++ b/libgcc/config/rs6000/t-slibgcc-aix
@@ -40,7 +40,9 @@ SHLIB_LINK = \
-Wl,-bE:@shlib_map_file@ -o shr.o \
@multilib_flags@ @shlib_objs@ -lc \
`case @multilib_dir@ in \
- *pthread*) echo -L$(TARGET_SYSTEM_ROOT)/usr/lib/threads -lpthreads -lc_r $(TARGET_SYSTEM_ROOT)/usr/lib/libc.a ;; \
+ *pthread*) \
+ TARGET_SYSTEM_ROOT=\`$(CC) -print-sysroot\`; \
+ echo -L$$TARGET_SYSTEM_ROOT/usr/lib/threads -lpthreads -lc_r $$TARGET_SYSTEM_ROOT/usr/lib/libc.a ;; \
*) echo -lc ;; esac` ; \
rm -f tmp-@shlib_base_name@.a ; \
$(AR_CREATE_FOR_TARGET) tmp-@shlib_base_name@.a shr.o ; \
@@ -53,7 +55,9 @@ SHLIB_LINK = \
-Wl,-bE:@shlib_map_file@ -o $$shr.o \
@multilib_flags@ @shlib_objs@ -lc \
`case @multilib_dir@ in \
- *pthread*) echo -L$(TARGET_SYSTEM_ROOT)/usr/lib/threads -lpthreads -lc_r $(TARGET_SYSTEM_ROOT)/usr/lib/libc.a ;; \
+ *pthread*) \
+ TARGET_SYSTEM_ROOT=\`$(CC) -print-sysroot\`; \
+ echo -L$$TARGET_SYSTEM_ROOT/usr/lib/threads -lpthreads -lc_r $$TARGET_SYSTEM_ROOT/usr/lib/libc.a ;; \
*) echo -lc ;; esac` ; \
$(STRIP_FOR_TARGET) -X32_64 -e $$shr.o ; \
{ echo "\#! $(SHLIB_SONAME)($$shr.o)" ; \
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index e01fd47..5271057 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,34 @@
+2025-12-09 Richard Biener <rguenther@suse.de>
+
+ PR testsuite/120167
+ * testsuite/libgomp.graphite/force-parallel-1.c: Make parloop
+ noipa.
+
+2025-12-09 Andrew Stubbs <ams@baylibre.com>
+
+ * testsuite/lib/libgomp.exp (check_effective_target_omp_usm): New.
+ * testsuite/libgomp.c++/target-std__array-concurrent-usm.C: Require
+ working Unified Shared Memory to run the test.
+ * testsuite/libgomp.c++/target-std__bitset-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__deque-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__forward_list-concurrent-usm.C:
+ Likewise.
+ * testsuite/libgomp.c++/target-std__list-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__map-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__multimap-concurrent-usm.C:
+ Likewise.
+ * testsuite/libgomp.c++/target-std__multiset-concurrent-usm.C:
+ Likewise.
+ * testsuite/libgomp.c++/target-std__set-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__span-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c++/target-std__valarray-concurrent-usm.C:
+ Likewise.
+ * testsuite/libgomp.c++/target-std__vector-concurrent-usm.C: Likewise.
+ * testsuite/libgomp.c-c++-common/target-implicit-map-4.c: Likewise.
+ * testsuite/libgomp.c-c++-common/target-link-3.c: Likewise.
+ * testsuite/libgomp.c-c++-common/target-link-4.c: Likewise.
+ * testsuite/libgomp.fortran/self_maps.f90: Likewise.
+
2025-12-04 Andrew Stubbs <ams@baylibre.com>
* plugin/plugin-gcn.c (generic_isa_code): New function.
diff --git a/libphobos/ChangeLog b/libphobos/ChangeLog
index aa006e8..383d294 100644
--- a/libphobos/ChangeLog
+++ b/libphobos/ChangeLog
@@ -1,3 +1,8 @@
+2025-12-09 John Ericson <git@johnericson.me>
+
+ * configure: Regenerate.
+ * m4/druntime/os.m4: Use AC_MSG_ERROR, not private as_fn_error
+
2025-11-03 Sam James <sam@gentoo.org>
* configure: Regenerate.
diff --git a/libsanitizer/LOCAL_PATCHES b/libsanitizer/LOCAL_PATCHES
index e10a625..1f0f081 100644
--- a/libsanitizer/LOCAL_PATCHES
+++ b/libsanitizer/LOCAL_PATCHES
@@ -1,2 +1,3 @@
r16-5832-g89130a50108077e81a11a60007de6830c9f23b34
r16-5839-g2249f6143717d9d5d6801e25867a2f826b1132de
+r16-6008-g203d4dd09ba83121e447ce93ba98175b68d955f6
diff --git a/libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h b/libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h
index 7d88911..26f4b48 100644
--- a/libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h
+++ b/libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h
@@ -15,7 +15,8 @@
# define SANITIZER_REDEFINE_BUILTINS_H
// The asm hack only works with GCC and Clang.
-# if !defined(_WIN32) && !defined(_AIX) && !defined(__APPLE__)
+#if !defined(_WIN32) && !defined(_AIX) && !defined(__APPLE__) && \
+ defined(HAVE_AS_SYM_ASSIGN)
asm(R"(
.set memcpy, __sanitizer_internal_memcpy
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index c2a99de..0f96dab 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,101 @@
+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