diff -Nrcpad gcc-14-20260313/LAST_UPDATED gcc-14-20260320/LAST_UPDATED
*** gcc-14-20260313/LAST_UPDATED	Fri Mar 13 22:32:22 2026
--- gcc-14-20260320/LAST_UPDATED	Fri Mar 20 22:32:20 2026
***************
*** 1 ****
! Obtained from git: releases/gcc-14 revision 25a0e1986333654a1422f50aa115c8f10e3e9f24
--- 1 ----
! Obtained from git: releases/gcc-14 revision 50e6b9ae944d6eace32edb59c7e18597f3f2f2d7
diff -Nrcpad gcc-14-20260313/MD5SUMS gcc-14-20260320/MD5SUMS
*** gcc-14-20260313/MD5SUMS	Fri Mar 13 22:32:27 2026
--- gcc-14-20260320/MD5SUMS	Fri Mar 20 22:32:25 2026
***************
*** 1,5 ****
  # This file contains the MD5 checksums of the files in the
! # gcc-14-20260313.tar.xz tarball.
  #
  # Besides verifying that all files in the tarball were correctly expanded,
  # it also can be used to determine if any files have changed since the
--- 1,5 ----
  # This file contains the MD5 checksums of the files in the
! # gcc-14-20260320.tar.xz tarball.
  #
  # Besides verifying that all files in the tarball were correctly expanded,
  # it also can be used to determine if any files have changed since the
*************** fc9280b02bc68e4fb1ef8d51ccc25061  Change
*** 23,29 ****
  fd4ecdf5d672efe2b0e409aca9cf9446  ChangeLog.jit
  09538b708302f1735f6fa05b622ecf5e  ChangeLog.tree-ssa
  24ab760126489e69436a43185dc3d202  INSTALL/README
! bad352f187fd02933f26b816bacca329  LAST_UPDATED
  1671040823f8eb8436a06fdd18065e02  MAINTAINERS
  304c3887135aefa27c21292ec585b0a3  Makefile.def
  8dd93fbf2e32bcbd2faba10e3b8ba2b0  Makefile.in
--- 23,29 ----
  fd4ecdf5d672efe2b0e409aca9cf9446  ChangeLog.jit
  09538b708302f1735f6fa05b622ecf5e  ChangeLog.tree-ssa
  24ab760126489e69436a43185dc3d202  INSTALL/README
! ed007d1e7fcbfbe4e0a8dac01ddb21b9  LAST_UPDATED
  1671040823f8eb8436a06fdd18065e02  MAINTAINERS
  304c3887135aefa27c21292ec585b0a3  Makefile.def
  8dd93fbf2e32bcbd2faba10e3b8ba2b0  Makefile.in
*************** bc7394806417778d77541ba1ec0e4a70  gcc/BA
*** 505,511 ****
  a916467b91076e631dd8edb7424769c7  gcc/COPYING.LIB
  d32239bcb673463ab874e80d47fae504  gcc/COPYING3
  6a6a8e020838b23406c81b19c1d46df6  gcc/COPYING3.LIB
! 7ea58ac526ba0b2ed36f58957bfa6c43  gcc/ChangeLog
  a3b63c675afa7a655cc2bfa8a907af79  gcc/ChangeLog-1997
  d9a88529352a010253c2e8fb1ed6023b  gcc/ChangeLog-1998
  240f08f81cb4699e8b49347db38233db  gcc/ChangeLog-1999
--- 505,511 ----
  a916467b91076e631dd8edb7424769c7  gcc/COPYING.LIB
  d32239bcb673463ab874e80d47fae504  gcc/COPYING3
  6a6a8e020838b23406c81b19c1d46df6  gcc/COPYING3.LIB
! 8b72fa9c1a46ecf72dd6929883e91645  gcc/ChangeLog
  a3b63c675afa7a655cc2bfa8a907af79  gcc/ChangeLog-1997
  d9a88529352a010253c2e8fb1ed6023b  gcc/ChangeLog-1998
  240f08f81cb4699e8b49347db38233db  gcc/ChangeLog-1999
*************** fb3fadb88e1d2b3b640cfaaa5ff11780  gcc/Ch
*** 541,547 ****
  3eb07e0b2e542409bf73d359f7f65609  gcc/ChangeLog.ptr
  e13638e26743ba41e6011b76cc00d9a9  gcc/ChangeLog.tree-ssa
  739ab47f6425bcea1d05e4fc0542de54  gcc/ChangeLog.tuples
! 59ad64b43f7716af449f9d9e00676025  gcc/DATESTAMP
  d41d8cd98f00b204e9800998ecf8427e  gcc/DEV-PHASE
  eb92e1ff5e982ca07e173e0eb286d243  gcc/FSFChangeLog
  30e1e33411566388b3164558482dc5e6  gcc/FSFChangeLog.10
--- 541,547 ----
  3eb07e0b2e542409bf73d359f7f65609  gcc/ChangeLog.ptr
  e13638e26743ba41e6011b76cc00d9a9  gcc/ChangeLog.tree-ssa
  739ab47f6425bcea1d05e4fc0542de54  gcc/ChangeLog.tuples
! 0090223b01e97000f5c36b70a1c8efb6  gcc/DATESTAMP
  d41d8cd98f00b204e9800998ecf8427e  gcc/DEV-PHASE
  eb92e1ff5e982ca07e173e0eb286d243  gcc/FSFChangeLog
  30e1e33411566388b3164558482dc5e6  gcc/FSFChangeLog.10
*************** ec6799501b2eb2923d5de6a66169dbd2  gcc/ON
*** 553,559 ****
  4ff8b6b00464fd6c37969f80145dca46  gcc/acinclude.m4
  496cb89e62ed3dbfd1af1db0975a4c04  gcc/aclocal.m4
  16a499934b71eb6cf7c0d6899cd6006a  gcc/ada/.gitignore
! dce4cf02c4d7a83879bcf05b7a8e89ed  gcc/ada/ChangeLog
  683be0b07dc4f64f118fd5e8ae9cb30d  gcc/ada/ChangeLog-2001
  7aff25efb203be4136b8776cdc812956  gcc/ada/ChangeLog-2002
  cd2379152000f40157d349018fb9364d  gcc/ada/ChangeLog-2003
--- 553,559 ----
  4ff8b6b00464fd6c37969f80145dca46  gcc/acinclude.m4
  496cb89e62ed3dbfd1af1db0975a4c04  gcc/aclocal.m4
  16a499934b71eb6cf7c0d6899cd6006a  gcc/ada/.gitignore
! f63e2f0eb790ae2020e1dc330b9bc4df  gcc/ada/ChangeLog
  683be0b07dc4f64f118fd5e8ae9cb30d  gcc/ada/ChangeLog-2001
  7aff25efb203be4136b8776cdc812956  gcc/ada/ChangeLog-2002
  cd2379152000f40157d349018fb9364d  gcc/ada/ChangeLog-2003
*************** c81efe8ccbd5f5b8399a3496f5015859  gcc/ad
*** 581,587 ****
  2cf41efa2dee24b2dda73018b855edd3  gcc/ada/ChangeLog.tree-ssa
  711afb6f8ec14edf7425445a669e85ed  gcc/ada/Make-generated.in
  6c9c3b4249e781ed48c7ae55e8ef9999  gcc/ada/Makefile.in
! ebd465b2e3467e1e5c6df06be9255707  gcc/ada/Makefile.rtl
  8fc60e49303a639f7ec7c61a44f3f460  gcc/ada/accessibility.adb
  d19afffa65b63be4a8fd705f4b3f891f  gcc/ada/accessibility.ads
  14559d7d76c0ae16e72bf37828ab86a6  gcc/ada/ada_get_targ.adb
--- 581,587 ----
  2cf41efa2dee24b2dda73018b855edd3  gcc/ada/ChangeLog.tree-ssa
  711afb6f8ec14edf7425445a669e85ed  gcc/ada/Make-generated.in
  6c9c3b4249e781ed48c7ae55e8ef9999  gcc/ada/Makefile.in
! 9b2639d605f95c45ccfbcdab9a1c4e69  gcc/ada/Makefile.rtl
  8fc60e49303a639f7ec7c61a44f3f460  gcc/ada/accessibility.adb
  d19afffa65b63be4a8fd705f4b3f891f  gcc/ada/accessibility.ads
  14559d7d76c0ae16e72bf37828ab86a6  gcc/ada/ada_get_targ.adb
*************** d833b4b6e2dc4e170cf059f5286d55d8  gcc/ad
*** 3025,3031 ****
  24eade18dfea4858d18e0befd8b97a7e  gcc/ada/xutil.ads
  6b61c248d8d365e41e3056a6b692cc1d  gcc/addresses.h
  85955146c0cd00b4541afc4076fa17b9  gcc/adjust-alignment.cc
! 4dbb0a380db08caaa96205e35562eb02  gcc/alias.cc
  0f4702138fd7573d96ae2c8135b41255  gcc/alias.h
  1cd09d1b18b5ce7d249387ae22ccfaec  gcc/align.h
  1810c60b7a3a20ff5222ab395bfcb9b8  gcc/alloc-pool.cc
--- 3025,3031 ----
  24eade18dfea4858d18e0befd8b97a7e  gcc/ada/xutil.ads
  6b61c248d8d365e41e3056a6b692cc1d  gcc/addresses.h
  85955146c0cd00b4541afc4076fa17b9  gcc/adjust-alignment.cc
! 8db551114142b02bb48b0ea1098635c1  gcc/alias.cc
  0f4702138fd7573d96ae2c8135b41255  gcc/alias.h
  1cd09d1b18b5ce7d249387ae22ccfaec  gcc/align.h
  1810c60b7a3a20ff5222ab395bfcb9b8  gcc/alloc-pool.cc
*************** fdca8fc9a6bbdade1a8aeceee3e00285  gcc/bi
*** 3146,3160 ****
  46dfb234fa66d9bd9a5e085b662b7c5a  gcc/btfout.cc
  bceab672982ecb211cc6c6ed241b9758  gcc/builtin-attrs.def
  fb5f673cea6166ff90878e05bfa7dfe0  gcc/builtin-types.def
! ede17f9d46608ba7640863fbff3efc74  gcc/builtins.cc
  7bc731b65a1287130883ea830f32b347  gcc/builtins.def
  7fad42491d4a625f93bf21a7e2fb37de  gcc/builtins.h
! d21273f646904161e8987c21ca9c99c8  gcc/c-family/ChangeLog
  ea3fa1f4d7390a105fa3caab4f79aaf7  gcc/c-family/ChangeLog.gimple-classes
  5c99106819e8051c3581d5098616d0dd  gcc/c-family/c-ada-spec.cc
  ba22e0144578c7dbcaa1887e6fd6046c  gcc/c-family/c-ada-spec.h
  d8e1cd0b904797f173e2493caaa19e03  gcc/c-family/c-attribs.cc
! 9f727c0677dcaf1e612c92a4d9d4e41b  gcc/c-family/c-common.cc
  51998f9e7aec6e99e0428f2b836629c1  gcc/c-family/c-common.def
  b1e23baecab2464ead1618cb2d50a6ef  gcc/c-family/c-common.h
  7e6740fc9833147bce7ec636f8223256  gcc/c-family/c-cppbuiltin.cc
--- 3146,3160 ----
  46dfb234fa66d9bd9a5e085b662b7c5a  gcc/btfout.cc
  bceab672982ecb211cc6c6ed241b9758  gcc/builtin-attrs.def
  fb5f673cea6166ff90878e05bfa7dfe0  gcc/builtin-types.def
! c3a52074158c4bcb100e638fcd471649  gcc/builtins.cc
  7bc731b65a1287130883ea830f32b347  gcc/builtins.def
  7fad42491d4a625f93bf21a7e2fb37de  gcc/builtins.h
! bfd92f0c86f02ee5ab16e1bae674506b  gcc/c-family/ChangeLog
  ea3fa1f4d7390a105fa3caab4f79aaf7  gcc/c-family/ChangeLog.gimple-classes
  5c99106819e8051c3581d5098616d0dd  gcc/c-family/c-ada-spec.cc
  ba22e0144578c7dbcaa1887e6fd6046c  gcc/c-family/c-ada-spec.h
  d8e1cd0b904797f173e2493caaa19e03  gcc/c-family/c-attribs.cc
! a9bb7bbf89706e206a593a31d7c52261  gcc/c-family/c-common.cc
  51998f9e7aec6e99e0428f2b836629c1  gcc/c-family/c-common.def
  b1e23baecab2464ead1618cb2d50a6ef  gcc/c-family/c-common.h
  7e6740fc9833147bce7ec636f8223256  gcc/c-family/c-cppbuiltin.cc
*************** b09d9d6aee1af92f8929b0c5b6995d7b  gcc/c-
*** 3180,3186 ****
  2457327527de3def5270e6006c2a32d8  gcc/c-family/c-target-def.h
  085724efec485fdc227d010c8a971176  gcc/c-family/c-target.def
  20902ff635a8cf1f9e1d09ed5b2cf670  gcc/c-family/c-target.h
! bcdb4469cbe287703b77ab4cf0d78130  gcc/c-family/c-ubsan.cc
  b3ac1850d65a4a98a5f313d9b56a64a9  gcc/c-family/c-ubsan.h
  35cf572da85f0631e0efa0c62dfa5e48  gcc/c-family/c-warn.cc
  464846e76fe6978c8c3bc9197893af8a  gcc/c-family/c.opt
--- 3180,3186 ----
  2457327527de3def5270e6006c2a32d8  gcc/c-family/c-target-def.h
  085724efec485fdc227d010c8a971176  gcc/c-family/c-target.def
  20902ff635a8cf1f9e1d09ed5b2cf670  gcc/c-family/c-target.h
! 06ab29998a9772b66548bb3475567f82  gcc/c-family/c-ubsan.cc
  b3ac1850d65a4a98a5f313d9b56a64a9  gcc/c-family/c-ubsan.h
  35cf572da85f0631e0efa0c62dfa5e48  gcc/c-family/c-warn.cc
  464846e76fe6978c8c3bc9197893af8a  gcc/c-family/c.opt
*************** b3ac1850d65a4a98a5f313d9b56a64a9  gcc/c-
*** 3190,3200 ****
  083198bbb0e08402af9e32302cfb13f4  gcc/c-family/known-headers.h
  889dd6dda61d7bfa71bdc10ce6b98b06  gcc/c-family/name-hint.h
  65a88820b5866ee19cd29ed45ef95c5c  gcc/c-family/stub-objc.cc
! e0df811a62d0104b36f52a59106aff22  gcc/c/ChangeLog
  fb28ab1a3ac7e093beffa6875b5b921b  gcc/c/Make-lang.in
  6c28a645fc3125bc8a52d498324306de  gcc/c/c-aux-info.cc
  22456b24e2c3a46534e7f1e7516dae5f  gcc/c/c-convert.cc
! fb0dc88ab8a20629d33392ecbe5c6d10  gcc/c/c-decl.cc
  d5abc77cf8004e86fb7798f7912b35da  gcc/c/c-errors.cc
  3408879c9715f96eff9f06865f32349d  gcc/c/c-fold.cc
  7e4a9e386e03d8359d4acd839dac46fe  gcc/c/c-lang.cc
--- 3190,3200 ----
  083198bbb0e08402af9e32302cfb13f4  gcc/c-family/known-headers.h
  889dd6dda61d7bfa71bdc10ce6b98b06  gcc/c-family/name-hint.h
  65a88820b5866ee19cd29ed45ef95c5c  gcc/c-family/stub-objc.cc
! 0457917195b7a23e42c672dab075dcec  gcc/c/ChangeLog
  fb28ab1a3ac7e093beffa6875b5b921b  gcc/c/Make-lang.in
  6c28a645fc3125bc8a52d498324306de  gcc/c/c-aux-info.cc
  22456b24e2c3a46534e7f1e7516dae5f  gcc/c/c-convert.cc
! 7a89ab0f300bdd4a6ddebc65118ae49b  gcc/c/c-decl.cc
  d5abc77cf8004e86fb7798f7912b35da  gcc/c/c-errors.cc
  3408879c9715f96eff9f06865f32349d  gcc/c/c-fold.cc
  7e4a9e386e03d8359d4acd839dac46fe  gcc/c/c-lang.cc
*************** f1dd9f1e7ed0fc3ac58021d0ad6463d4  gcc/cf
*** 3224,3230 ****
  77b93f18c80b59bdd503ef437d9dcb07  gcc/cfgbuild.h
  a32902aba7ecfc0e993a63acb83b85fa  gcc/cfgcleanup.cc
  adc4224754a28694047a40d09b2406d9  gcc/cfgcleanup.h
! 0cf9f8b95498f04c0af0cf5a89366332  gcc/cfgexpand.cc
  0c5481b392d18841208d50dbc003d34c  gcc/cfgexpand.h
  07458bdd829e0db278bfd80486dc882e  gcc/cfghooks.cc
  8b8be944d5a2bf93159ccbc273ecc32c  gcc/cfghooks.h
--- 3224,3230 ----
  77b93f18c80b59bdd503ef437d9dcb07  gcc/cfgbuild.h
  a32902aba7ecfc0e993a63acb83b85fa  gcc/cfgcleanup.cc
  adc4224754a28694047a40d09b2406d9  gcc/cfgcleanup.h
! 986913b02e547bca3e7de33eefb0dd5f  gcc/cfgexpand.cc
  0c5481b392d18841208d50dbc003d34c  gcc/cfgexpand.h
  07458bdd829e0db278bfd80486dc882e  gcc/cfghooks.cc
  8b8be944d5a2bf93159ccbc273ecc32c  gcc/cfghooks.h
*************** d2e2dbc63c0154344dea94259ba7515b  gcc/cf
*** 3233,3239 ****
  749499045fcab71473fa7045412d9fec  gcc/cfgloopanal.cc
  469ed8437e5347547dcc428662491ec7  gcc/cfgloopmanip.cc
  85d2f4cd89ca64ed13cf1784d099c7ef  gcc/cfgloopmanip.h
! 55ff3fae3774d7d1f4cf793cdc85d36a  gcc/cfgrtl.cc
  621be2da689efc912f68e163b182acac  gcc/cfgrtl.h
  e96b4639e7fcc608fe111ec89b70504c  gcc/cgraph.cc
  18fbe7f9e2b6016552d7ceefd5509ed3  gcc/cgraph.h
--- 3233,3239 ----
  749499045fcab71473fa7045412d9fec  gcc/cfgloopanal.cc
  469ed8437e5347547dcc428662491ec7  gcc/cfgloopmanip.cc
  85d2f4cd89ca64ed13cf1784d099c7ef  gcc/cfgloopmanip.h
! a5a13e03513caa40b6e2e78a29c3f9ce  gcc/cfgrtl.cc
  621be2da689efc912f68e163b182acac  gcc/cfgrtl.h
  e96b4639e7fcc608fe111ec89b70504c  gcc/cgraph.cc
  18fbe7f9e2b6016552d7ceefd5509ed3  gcc/cgraph.h
*************** cbd6d8995cfcad18b2f5ae1153282276  gcc/co
*** 3249,3255 ****
  607393ed0e257b432264a6620e2a13f1  gcc/collect2.h
  e2a09d84946e20cd6e720937153c454d  gcc/color-macros.h
  b2acfb49d4e75a712a34942113c2d747  gcc/combine-stack-adj.cc
! 633980892750fe25a3427d0525121022  gcc/combine.cc
  cc2f48cb176b5b4703617fb5dfc1acf0  gcc/common.md
  322473405a30de3627ba85a314faac7d  gcc/common.opt
  6b452769b5c1240c33daf177e1f3f847  gcc/common.opt.urls
--- 3249,3255 ----
  607393ed0e257b432264a6620e2a13f1  gcc/collect2.h
  e2a09d84946e20cd6e720937153c454d  gcc/color-macros.h
  b2acfb49d4e75a712a34942113c2d747  gcc/combine-stack-adj.cc
! 8092274370e60c5525c9c3f83792fa26  gcc/combine.cc
  cc2f48cb176b5b4703617fb5dfc1acf0  gcc/common.md
  322473405a30de3627ba85a314faac7d  gcc/common.opt
  6b452769b5c1240c33daf177e1f3f847  gcc/common.opt.urls
*************** a838f308e3dcdd63685c24e6ff2586be  gcc/co
*** 3317,3323 ****
  3b202d5bab614e2275378bef1f708574  gcc/config.in
  8e697813dc96ca90f5d0f4c196efe2cc  gcc/config/README
  9cdb6f241c973fd5ce4c0b36c5a282c6  gcc/config/aarch64/aarch64-arches.def
! bdcc560c68a31540ed1be0895b491d16  gcc/config/aarch64/aarch64-builtins.cc
  0bb8e93654406d5816462dc1f8842769  gcc/config/aarch64/aarch64-builtins.h
  494ddd3c679bcdc80a1da0c474a5fcb8  gcc/config/aarch64/aarch64-c.cc
  d3b3f877b2f7ba7842ef909af5fc5c7b  gcc/config/aarch64/aarch64-cc-fusion.cc
--- 3317,3323 ----
  3b202d5bab614e2275378bef1f708574  gcc/config.in
  8e697813dc96ca90f5d0f4c196efe2cc  gcc/config/README
  9cdb6f241c973fd5ce4c0b36c5a282c6  gcc/config/aarch64/aarch64-arches.def
! dca444af4c0fc52faf33fee1d848fe60  gcc/config/aarch64/aarch64-builtins.cc
  0bb8e93654406d5816462dc1f8842769  gcc/config/aarch64/aarch64-builtins.h
  494ddd3c679bcdc80a1da0c474a5fcb8  gcc/config/aarch64/aarch64-c.cc
  d3b3f877b2f7ba7842ef909af5fc5c7b  gcc/config/aarch64/aarch64-cc-fusion.cc
*************** d3b3f877b2f7ba7842ef909af5fc5c7b  gcc/co
*** 3325,3331 ****
  8710ba7e69e4eb0fe531cacce5ac0ef7  gcc/config/aarch64/aarch64-cost-tables.h
  19827f863b9abd957d663a067d5b2db2  gcc/config/aarch64/aarch64-d.cc
  4ddea453344c4e39481f379718aed12e  gcc/config/aarch64/aarch64-d.h
! 384a4c1df14dc707c40334bccccab61d  gcc/config/aarch64/aarch64-early-ra.cc
  4d5e3969a5f34509454d8ae9fb320737  gcc/config/aarch64/aarch64-elf-raw.h
  216353ccada5a78e01754365c3eb2d77  gcc/config/aarch64/aarch64-elf.h
  a289174b82942eb716cb2570624a336a  gcc/config/aarch64/aarch64-errata.h
--- 3325,3331 ----
  8710ba7e69e4eb0fe531cacce5ac0ef7  gcc/config/aarch64/aarch64-cost-tables.h
  19827f863b9abd957d663a067d5b2db2  gcc/config/aarch64/aarch64-d.cc
  4ddea453344c4e39481f379718aed12e  gcc/config/aarch64/aarch64-d.h
! bf0dbcf766e44baeb78443dc7a408d3a  gcc/config/aarch64/aarch64-early-ra.cc
  4d5e3969a5f34509454d8ae9fb320737  gcc/config/aarch64/aarch64-elf-raw.h
  216353ccada5a78e01754365c3eb2d77  gcc/config/aarch64/aarch64-elf.h
  a289174b82942eb716cb2570624a336a  gcc/config/aarch64/aarch64-errata.h
*************** d61781a8107fcde97b92df6c8e0d1c46  gcc/co
*** 3361,3371 ****
  4055cb836892ac8d508fa1a8e20a37fa  gcc/config/aarch64/aarch64-sve-builtins-sve2.cc
  ade931c980a35e627e0dc3fc91ee172e  gcc/config/aarch64/aarch64-sve-builtins-sve2.def
  d3d0a9db4cb45433208c51520e54f3bb  gcc/config/aarch64/aarch64-sve-builtins-sve2.h
! 99961b9ecd73fb227b287308ffb13879  gcc/config/aarch64/aarch64-sve-builtins.cc
  b9d38b6180a44e1f8f6103870af5dba2  gcc/config/aarch64/aarch64-sve-builtins.def
  ef06d72bc9e60ff08580d377b7f8883a  gcc/config/aarch64/aarch64-sve-builtins.h
  dab9f216d0b1b73156c675fe6b4d3460  gcc/config/aarch64/aarch64-sve.md
! a39737ff1f5e6f846bf63d31e70b6410  gcc/config/aarch64/aarch64-sve2.md
  83dd7ccda19ffdca5c763ae0357b3a40  gcc/config/aarch64/aarch64-sys-regs.def
  33a4960a659d71bba22c1a55c94c828a  gcc/config/aarch64/aarch64-tune.md
  6ede31fb52cae2cf590b667c55706637  gcc/config/aarch64/aarch64-tuning-flags.def
--- 3361,3371 ----
  4055cb836892ac8d508fa1a8e20a37fa  gcc/config/aarch64/aarch64-sve-builtins-sve2.cc
  ade931c980a35e627e0dc3fc91ee172e  gcc/config/aarch64/aarch64-sve-builtins-sve2.def
  d3d0a9db4cb45433208c51520e54f3bb  gcc/config/aarch64/aarch64-sve-builtins-sve2.h
! 313541167a6434eefe5be6f5a5f320cb  gcc/config/aarch64/aarch64-sve-builtins.cc
  b9d38b6180a44e1f8f6103870af5dba2  gcc/config/aarch64/aarch64-sve-builtins.def
  ef06d72bc9e60ff08580d377b7f8883a  gcc/config/aarch64/aarch64-sve-builtins.h
  dab9f216d0b1b73156c675fe6b4d3460  gcc/config/aarch64/aarch64-sve.md
! 1971fb10253ba02f9396bee8a8701a31  gcc/config/aarch64/aarch64-sve2.md
  83dd7ccda19ffdca5c763ae0357b3a40  gcc/config/aarch64/aarch64-sys-regs.def
  33a4960a659d71bba22c1a55c94c828a  gcc/config/aarch64/aarch64-tune.md
  6ede31fb52cae2cf590b667c55706637  gcc/config/aarch64/aarch64-tuning-flags.def
*************** a4714f98b53e073b615a5d93fe6fdba9  gcc/co
*** 4051,4057 ****
  897e293401e4dea789e26918f76f414d  gcc/config/i386/i386-c.cc
  fbc24076c7e09cff381fd3713e0e35b8  gcc/config/i386/i386-d.cc
  bc57c8d6121c70b7f671f4551d518806  gcc/config/i386/i386-d.h
! 300beef91630e0029f38811e2238e90c  gcc/config/i386/i386-expand.cc
  aad6a1409988666a85b150e3fe82bb3e  gcc/config/i386/i386-expand.h
  5580cf7a1c9325867e3e62112532e650  gcc/config/i386/i386-features.cc
  fccc6d65638a2ce66ebc6b06766912c2  gcc/config/i386/i386-features.h
--- 4051,4057 ----
  897e293401e4dea789e26918f76f414d  gcc/config/i386/i386-c.cc
  fbc24076c7e09cff381fd3713e0e35b8  gcc/config/i386/i386-d.cc
  bc57c8d6121c70b7f671f4551d518806  gcc/config/i386/i386-d.h
! ff2f7e233732dce4a79fa7ad9685cde1  gcc/config/i386/i386-expand.cc
  aad6a1409988666a85b150e3fe82bb3e  gcc/config/i386/i386-expand.h
  5580cf7a1c9325867e3e62112532e650  gcc/config/i386/i386-features.cc
  fccc6d65638a2ce66ebc6b06766912c2  gcc/config/i386/i386-features.h
*************** fccc6d65638a2ce66ebc6b06766912c2  gcc/co
*** 4064,4072 ****
  003684e9baa146f7b92f23ca01368094  gcc/config/i386/i386-protos.h
  89067df9b8c57e29603ffaca8dcc692b  gcc/config/i386/i386-rust.cc
  4f7ab8c57b3148a31d24838528313ef2  gcc/config/i386/i386-rust.h
! 80f84866a20a9a955dca79eb63b29354  gcc/config/i386/i386.cc
  050a9384b955805718fbe5df50684b1c  gcc/config/i386/i386.h
! 877c115a572e59ca25b951e37f2204f3  gcc/config/i386/i386.md
  85b5302c87709e4b2325868fe370b441  gcc/config/i386/i386.opt
  fb32c950c45e643174eb7c58d7f4218f  gcc/config/i386/i386.opt.urls
  95e430a8a19e9226167376a9a7ca34d9  gcc/config/i386/i386elf.h
--- 4064,4072 ----
  003684e9baa146f7b92f23ca01368094  gcc/config/i386/i386-protos.h
  89067df9b8c57e29603ffaca8dcc692b  gcc/config/i386/i386-rust.cc
  4f7ab8c57b3148a31d24838528313ef2  gcc/config/i386/i386-rust.h
! 0b364691ba7ec8239d70f50a091cf271  gcc/config/i386/i386.cc
  050a9384b955805718fbe5df50684b1c  gcc/config/i386/i386.h
! 10f2715bdc3b495650de24d35e708bf4  gcc/config/i386/i386.md
  85b5302c87709e4b2325868fe370b441  gcc/config/i386/i386.opt
  fb32c950c45e643174eb7c58d7f4218f  gcc/config/i386/i386.opt.urls
  95e430a8a19e9226167376a9a7ca34d9  gcc/config/i386/i386elf.h
*************** e82f2dd2df5fd204d1c7102be6f29c11  gcc/co
*** 4133,4139 ****
  70a56f513b7336a41d2b3a23877154f8  gcc/config/i386/sm4intrin.h
  8fce480b063b9abc4081b814b0fc7e01  gcc/config/i386/smmintrin.h
  fe9eadd749e61a2279304a5617888723  gcc/config/i386/sol2.h
! b8336a17471de21706c7c105330819ab  gcc/config/i386/sse.md
  b415a4e3e2cdd58a97ae395bffcb7e09  gcc/config/i386/ssemath.h
  618acc597863bc9b3c097b7b7669aed0  gcc/config/i386/stringop.def
  8fdfd8196f3dd509d9f9806774c453e0  gcc/config/i386/subst.md
--- 4133,4139 ----
  70a56f513b7336a41d2b3a23877154f8  gcc/config/i386/sm4intrin.h
  8fce480b063b9abc4081b814b0fc7e01  gcc/config/i386/smmintrin.h
  fe9eadd749e61a2279304a5617888723  gcc/config/i386/sol2.h
! 77736b5fbc74d24e7dfb866fa67415b9  gcc/config/i386/sse.md
  b415a4e3e2cdd58a97ae395bffcb7e09  gcc/config/i386/ssemath.h
  618acc597863bc9b3c097b7b7669aed0  gcc/config/i386/stringop.def
  8fdfd8196f3dd509d9f9806774c453e0  gcc/config/i386/subst.md
*************** a1d442d51dcc0044d7b3e109d2bff5c2  gcc/co
*** 4197,4203 ****
  a616ea353ccf63fc1b6f2254a35ee131  gcc/config/i386/xm-cygwin.h
  71654b3cde734ebd7421186658d4c1b2  gcc/config/i386/xm-djgpp.h
  f9dfe535e493d0e00708e43ec0926e85  gcc/config/i386/xm-mingw32.h
! e94ce974a9c58f32e2d62503f864c719  gcc/config/i386/xmmintrin.h
  97ed6bb079056c473a7db3d9dabeefa5  gcc/config/i386/xopintrin.h
  503dc664e04c155fc074847b20d88e3b  gcc/config/i386/xsavecintrin.h
  57b8326804a45d16090b1f02f05c36db  gcc/config/i386/xsaveintrin.h
--- 4197,4203 ----
  a616ea353ccf63fc1b6f2254a35ee131  gcc/config/i386/xm-cygwin.h
  71654b3cde734ebd7421186658d4c1b2  gcc/config/i386/xm-djgpp.h
  f9dfe535e493d0e00708e43ec0926e85  gcc/config/i386/xm-mingw32.h
! 8d1a0b925101c915a834766aa2a4905c  gcc/config/i386/xmmintrin.h
  97ed6bb079056c473a7db3d9dabeefa5  gcc/config/i386/xopintrin.h
  503dc664e04c155fc074847b20d88e3b  gcc/config/i386/xsavecintrin.h
  57b8326804a45d16090b1f02f05c36db  gcc/config/i386/xsaveintrin.h
*************** d36a2aabdf8da39363d9be0efef739b0  gcc/co
*** 5363,5369 ****
  11daa3f7f65177eb32e2dad6fd437637  gcc/coroutine-passes.cc
  f1ae4baa11bd5b6dd111907d100e7c0c  gcc/coverage.cc
  bf1a3b3570d1b69e07f60f5150f38a93  gcc/coverage.h
! 797bcb6e4ee9aefd8cbf510fa5f12f50  gcc/cp/ChangeLog
  d271e3663538ba1f3281cab3838e92cd  gcc/cp/ChangeLog-1993
  f5a44adbc05521162350ca409d1d95ce  gcc/cp/ChangeLog-1994
  ac55db48d964cb5469ff03c1cd3ee04d  gcc/cp/ChangeLog-1995
--- 5363,5369 ----
  11daa3f7f65177eb32e2dad6fd437637  gcc/coroutine-passes.cc
  f1ae4baa11bd5b6dd111907d100e7c0c  gcc/coverage.cc
  bf1a3b3570d1b69e07f60f5150f38a93  gcc/coverage.h
! fcb9eb02c1b181164d253bbe878e742a  gcc/cp/ChangeLog
  d271e3663538ba1f3281cab3838e92cd  gcc/cp/ChangeLog-1993
  f5a44adbc05521162350ca409d1d95ce  gcc/cp/ChangeLog-1994
  ac55db48d964cb5469ff03c1cd3ee04d  gcc/cp/ChangeLog-1995
*************** eb0e2e62caf98260cc2641216d140ae9  gcc/cp
*** 5403,5409 ****
  dee1bc8866869d1becc1c1459cf3853d  gcc/cp/cfns.h
  cece9d48fd49b2e27c93c08c799d3a43  gcc/cp/class.cc
  c2cee7941d7a9d85eb87f70b7f8495ac  gcc/cp/config-lang.in
! 71daaea76af3de66fcc8970c56dad7d2  gcc/cp/constexpr.cc
  e2342416928d82aea826d50f04c9f56c  gcc/cp/constraint.cc
  7f4cf1f0f93d7aa0443c94e023845d1c  gcc/cp/contracts.cc
  5b547c5fd539f8a214ed271c5a475a85  gcc/cp/contracts.h
--- 5403,5409 ----
  dee1bc8866869d1becc1c1459cf3853d  gcc/cp/cfns.h
  cece9d48fd49b2e27c93c08c799d3a43  gcc/cp/class.cc
  c2cee7941d7a9d85eb87f70b7f8495ac  gcc/cp/config-lang.in
! acaebf97f6bc714675715ed5cdf22b10  gcc/cp/constexpr.cc
  e2342416928d82aea826d50f04c9f56c  gcc/cp/constraint.cc
  7f4cf1f0f93d7aa0443c94e023845d1c  gcc/cp/contracts.cc
  5b547c5fd539f8a214ed271c5a475a85  gcc/cp/contracts.h
*************** c6f67dc5986c092e1ada72c268f60ce5  gcc/cp
*** 5425,5431 ****
  1abb8e5bf838320c47bbb41c28ac53c8  gcc/cp/decl.h
  1cb099a7980289f4fcdda85452c6a3e4  gcc/cp/decl2.cc
  db1260dd767707d8dcbdbdcd7982bfad  gcc/cp/dump.cc
! 59bf1da855227c5935dc3e19aae2d725  gcc/cp/error.cc
  2bd7d5984b70c2c7549c4af9201f8d2d  gcc/cp/except.cc
  7dc09b1b70064fa190fd9060df614538  gcc/cp/expr.cc
  a067c19b95bfc08094e338eb152ec647  gcc/cp/friend.cc
--- 5425,5431 ----
  1abb8e5bf838320c47bbb41c28ac53c8  gcc/cp/decl.h
  1cb099a7980289f4fcdda85452c6a3e4  gcc/cp/decl2.cc
  db1260dd767707d8dcbdbdcd7982bfad  gcc/cp/dump.cc
! 15c89a7bb542fb892be5e9a4db5ec8d6  gcc/cp/error.cc
  2bd7d5984b70c2c7549c4af9201f8d2d  gcc/cp/except.cc
  7dc09b1b70064fa190fd9060df614538  gcc/cp/expr.cc
  a067c19b95bfc08094e338eb152ec647  gcc/cp/friend.cc
*************** c9f1276984f27647e3aac405d236a360  gcc/cp
*** 5442,5464 ****
  a5b251983ab6036fe6739433864419c7  gcc/cp/mapper-resolver.cc
  5f69d7aa3499e15103e647683d2a92b0  gcc/cp/method.cc
  e5de0a6c0e25db99122b38cfbd158f92  gcc/cp/module.cc
! 11d4b2dad811e7167eda68313cf80ac5  gcc/cp/name-lookup.cc
  4c2302075ee88f154fe1d9d5bc880b38  gcc/cp/name-lookup.h
  9071e61b746a07f7ae419836317ea8d4  gcc/cp/operators.def
  b4ea7976f776ee37fce22b16756ad0e0  gcc/cp/optimize.cc
! 3005c54da5bb91ee03256ad352be3db5  gcc/cp/parser.cc
  64953966b085a9e770be93c5d1bdca4e  gcc/cp/parser.h
! 4a425897fe2ffee5915b2d50eb7468f0  gcc/cp/pt.cc
  c59b967f38f4705696e11724814e2a06  gcc/cp/ptree.cc
  5e3e9c87ee323734a11e7081aaa64fa5  gcc/cp/rtti.cc
  7764edeba26dbb6b15962e6395cba9d2  gcc/cp/search.cc
! 904618015813b4e7f5019d3572241aa9  gcc/cp/semantics.cc
  ca8df8ebc275aae3373b59e34155cc57  gcc/cp/std-name-hint.gperf
  94fae0d321122a3989a40631ba86d13b  gcc/cp/std-name-hint.h
! 41e87ed4f19ff0138f84bf27e143fc65  gcc/cp/tree.cc
  ade60cf10e86c87a2d3960a453e78059  gcc/cp/type-utils.h
! 5b9cd8b298a8b719f405639a27ac4cf1  gcc/cp/typeck.cc
! e8b7fc59f86c5a7c4e08ae88222ebbeb  gcc/cp/typeck2.cc
  b04e03a3822d8b9ab15575d78d4309f1  gcc/cp/vtable-class-hierarchy.cc
  d9039dac3f86bf082870bf78b964568b  gcc/cppbuiltin.cc
  c2ff7817297154695270be6f932730a6  gcc/cppbuiltin.h
--- 5442,5464 ----
  a5b251983ab6036fe6739433864419c7  gcc/cp/mapper-resolver.cc
  5f69d7aa3499e15103e647683d2a92b0  gcc/cp/method.cc
  e5de0a6c0e25db99122b38cfbd158f92  gcc/cp/module.cc
! 188fdc84725eb2b79edaad5d46a317ae  gcc/cp/name-lookup.cc
  4c2302075ee88f154fe1d9d5bc880b38  gcc/cp/name-lookup.h
  9071e61b746a07f7ae419836317ea8d4  gcc/cp/operators.def
  b4ea7976f776ee37fce22b16756ad0e0  gcc/cp/optimize.cc
! 9425e1dd76dabb195576507c7bc7a94a  gcc/cp/parser.cc
  64953966b085a9e770be93c5d1bdca4e  gcc/cp/parser.h
! 0f0bd30656423517994f209afd61beba  gcc/cp/pt.cc
  c59b967f38f4705696e11724814e2a06  gcc/cp/ptree.cc
  5e3e9c87ee323734a11e7081aaa64fa5  gcc/cp/rtti.cc
  7764edeba26dbb6b15962e6395cba9d2  gcc/cp/search.cc
! 4f226c54fa19f6430937375d72c1543f  gcc/cp/semantics.cc
  ca8df8ebc275aae3373b59e34155cc57  gcc/cp/std-name-hint.gperf
  94fae0d321122a3989a40631ba86d13b  gcc/cp/std-name-hint.h
! 9b0c363a7a66e224140a1bbeb683c19d  gcc/cp/tree.cc
  ade60cf10e86c87a2d3960a453e78059  gcc/cp/type-utils.h
! f83b42693552dcab6fd5a1d345342576  gcc/cp/typeck.cc
! 26beb8b24c68c6e55a89ba1d61b97b17  gcc/cp/typeck2.cc
  b04e03a3822d8b9ab15575d78d4309f1  gcc/cp/vtable-class-hierarchy.cc
  d9039dac3f86bf082870bf78b964568b  gcc/cppbuiltin.cc
  c2ff7817297154695270be6f932730a6  gcc/cppbuiltin.h
*************** bb6c0501956266c8d43a2c2ecd36941c  gcc/do
*** 5792,5801 ****
  ef644ebebe5d8bca5dd86653f2a242b7  gcc/doc/include/gcc-common.texi
  95c90bf85d3eab67f348ee3ce0bf4050  gcc/doc/include/gpl_v3.texi
  e9b8122841fbfbbc30fee8ed6613c399  gcc/doc/include/texinfo.tex
! aa4d93313f9b7a5aec5b09041fd796a0  gcc/doc/install.texi
  2ef5aff8fc8a7cedf6236f86835e2608  gcc/doc/install.texi2html
  26c53e1edece23eebf72e40881f20e46  gcc/doc/interface.texi
! 61741472ca9bae87c7a749fabecbdb11  gcc/doc/invoke.texi
  4eb965d8ead78f1e3757415ae4d7872f  gcc/doc/languages.texi
  d2687b47a74c0bb7a227308dc1e7ba84  gcc/doc/libgcc.texi
  1e7dce602334edeb2ec545b9da6e4206  gcc/doc/loop.texi
--- 5792,5801 ----
  ef644ebebe5d8bca5dd86653f2a242b7  gcc/doc/include/gcc-common.texi
  95c90bf85d3eab67f348ee3ce0bf4050  gcc/doc/include/gpl_v3.texi
  e9b8122841fbfbbc30fee8ed6613c399  gcc/doc/include/texinfo.tex
! e309f1a8be1f28df4970e0cc9d5f7d27  gcc/doc/install.texi
  2ef5aff8fc8a7cedf6236f86835e2608  gcc/doc/install.texi2html
  26c53e1edece23eebf72e40881f20e46  gcc/doc/interface.texi
! 246b4d78eade146217e19ce37be814f2  gcc/doc/invoke.texi
  4eb965d8ead78f1e3757415ae4d7872f  gcc/doc/languages.texi
  d2687b47a74c0bb7a227308dc1e7ba84  gcc/doc/libgcc.texi
  1e7dce602334edeb2ec545b9da6e4206  gcc/doc/loop.texi
*************** c1dcd6f3a738eed32cfd895aa1d7c8a6  gcc/do
*** 5828,5834 ****
  335a5919c5f3951441bdb1c23a4aec9f  gcc/domwalk.h
  daff71b08321afe3ee27afca24431814  gcc/double-int.cc
  20c1bf25156bf31a0cc993c6c4f3c197  gcc/double-int.h
! 2b84bf179a889e94b9efbcd87c0fb2d6  gcc/dse.cc
  4b55186c3cb7afeeef3ef595c7712646  gcc/dump-context.h
  de190af17b56f025e38cc7b80eb99c8b  gcc/dumpfile.cc
  8d72acdb05890d8e08bdff52e2110299  gcc/dumpfile.h
--- 5828,5834 ----
  335a5919c5f3951441bdb1c23a4aec9f  gcc/domwalk.h
  daff71b08321afe3ee27afca24431814  gcc/double-int.cc
  20c1bf25156bf31a0cc993c6c4f3c197  gcc/double-int.h
! 4080eca402eccd48b639e547d23333c1  gcc/dse.cc
  4b55186c3cb7afeeef3ef595c7712646  gcc/dump-context.h
  de190af17b56f025e38cc7b80eb99c8b  gcc/dumpfile.cc
  8d72acdb05890d8e08bdff52e2110299  gcc/dumpfile.h
*************** ca9033ff37a39734edcb55c478a3a1fa  gcc/dw
*** 5837,5843 ****
  40224310d2b6e68a058c4c1079917a1f  gcc/dwarf2cfi.cc
  163e5e9e8282834ce39f40a4696495a8  gcc/dwarf2ctf.cc
  be8084cbe55394042e43e039c8ed9452  gcc/dwarf2ctf.h
! 6baedc413c21b5138898576c08aaff8e  gcc/dwarf2out.cc
  15ac2573846d37a9fc761ca237cfcbb3  gcc/dwarf2out.h
  949b4f69bfb006cfb1da508bd737e550  gcc/early-remat.cc
  764b36482faefc5dac455631acf458cb  gcc/edit-context.cc
--- 5837,5843 ----
  40224310d2b6e68a058c4c1079917a1f  gcc/dwarf2cfi.cc
  163e5e9e8282834ce39f40a4696495a8  gcc/dwarf2ctf.cc
  be8084cbe55394042e43e039c8ed9452  gcc/dwarf2ctf.h
! 341097de09b02d20825ec6f395cb5f88  gcc/dwarf2out.cc
  15ac2573846d37a9fc761ca237cfcbb3  gcc/dwarf2out.h
  949b4f69bfb006cfb1da508bd737e550  gcc/early-remat.cc
  764b36482faefc5dac455631acf458cb  gcc/edit-context.cc
*************** dce7dac7e905ada28c6563d930b531eb  gcc/fo
*** 5874,5880 ****
  090850db6c719557b18e35fafc041a4c  gcc/fold-const.cc
  62f9c541bc34eb653f289ecd29c7848a  gcc/fold-const.h
  5cce8057cb6a40c0ce23fcd6497d35c0  gcc/fold-mem-offsets.cc
! a782fa81cf11dc8c9276921a3e36a4b1  gcc/fortran/ChangeLog
  3330102ad3a0217cba963be6b5eefd58  gcc/fortran/ChangeLog-2002
  d000ab985b1eeb1ad5749f98b8fef99f  gcc/fortran/ChangeLog-2003
  bf42f94f0c51dcc7d8051cc7fda1efdc  gcc/fortran/ChangeLog-2004
--- 5874,5880 ----
  090850db6c719557b18e35fafc041a4c  gcc/fold-const.cc
  62f9c541bc34eb653f289ecd29c7848a  gcc/fold-const.h
  5cce8057cb6a40c0ce23fcd6497d35c0  gcc/fold-mem-offsets.cc
! 3ee8101bbf4e8ff7d383e2597dc9567c  gcc/fortran/ChangeLog
  3330102ad3a0217cba963be6b5eefd58  gcc/fortran/ChangeLog-2002
  d000ab985b1eeb1ad5749f98b8fef99f  gcc/fortran/ChangeLog-2003
  bf42f94f0c51dcc7d8051cc7fda1efdc  gcc/fortran/ChangeLog-2004
*************** af0d7f72f88d0810924a6a579045eeab  gcc/fo
*** 5913,5919 ****
  2df1006a61dabc70f90426595056788a  gcc/fortran/cpp.h
  aa3e28e6adf564765577a4f376bb9d05  gcc/fortran/data.cc
  2a77523a8c759e7a5e480175dfce3e06  gcc/fortran/data.h
! 4e1e3b2df4aaace206aa19c1e365e520  gcc/fortran/decl.cc
  dbbc0770ad9027571c63b5d0533e40ec  gcc/fortran/dependency.cc
  5a69241d57d8b6127ecb02e0a22bee6e  gcc/fortran/dependency.h
  af59533c4bfc13e7b07e6ec1c164832c  gcc/fortran/dump-parse-tree.cc
--- 5913,5919 ----
  2df1006a61dabc70f90426595056788a  gcc/fortran/cpp.h
  aa3e28e6adf564765577a4f376bb9d05  gcc/fortran/data.cc
  2a77523a8c759e7a5e480175dfce3e06  gcc/fortran/data.h
! 956624aeb328999393fe4e43181a4228  gcc/fortran/decl.cc
  dbbc0770ad9027571c63b5d0533e40ec  gcc/fortran/dependency.cc
  5a69241d57d8b6127ecb02e0a22bee6e  gcc/fortran/dependency.h
  af59533c4bfc13e7b07e6ec1c164832c  gcc/fortran/dump-parse-tree.cc
*************** e3557d087bbbdf3b8f63250a32e95b5c  gcc/fo
*** 5923,5929 ****
  7e5624e7daaba902f7b3b3ee4abd8bcd  gcc/fortran/frontend-passes.cc
  f12471f71a85ea43d5295d1190faf890  gcc/fortran/gfc-diagnostic.def
  21286a817891898ac50a2b843007652d  gcc/fortran/gfc-internals.texi
! 6cecb2157794589b129027cac8e94684  gcc/fortran/gfortran.h
  57ff50b64741422eb357b86659a8afc8  gcc/fortran/gfortran.texi
  cc84451cbcaa91ddd59babe04bda0b1a  gcc/fortran/gfortranspec.cc
  e8869e5dae32915cb590df6cff07ab46  gcc/fortran/interface.cc
--- 5923,5929 ----
  7e5624e7daaba902f7b3b3ee4abd8bcd  gcc/fortran/frontend-passes.cc
  f12471f71a85ea43d5295d1190faf890  gcc/fortran/gfc-diagnostic.def
  21286a817891898ac50a2b843007652d  gcc/fortran/gfc-internals.texi
! 17483db08a4b7e41205f7b503228420b  gcc/fortran/gfortran.h
  57ff50b64741422eb357b86659a8afc8  gcc/fortran/gfortran.texi
  cc84451cbcaa91ddd59babe04bda0b1a  gcc/fortran/gfortranspec.cc
  e8869e5dae32915cb590df6cff07ab46  gcc/fortran/interface.cc
*************** ba11ab9ac11e6a78fa7706263e42f1fc  gcc/fo
*** 5951,5962 ****
  56af741644ab30aa09221a750079e265  gcc/fortran/parse.cc
  6afe26dd3f7a33ff8c524687d1958f05  gcc/fortran/parse.h
  a0e2907182a3f4a299681840e8f5be43  gcc/fortran/primary.cc
! a167cfad47f769840c423ea75485e9f7  gcc/fortran/resolve.cc
  bf73188a78ecc3c99bc6915db827d75f  gcc/fortran/scanner.cc
  1cfffbabece85f419a6ca2676917e619  gcc/fortran/scanner.h
  be0b83b5f771bbe50926a1109ebd9e09  gcc/fortran/simplify.cc
  a0bad1c11baa50813a82d72f738f0872  gcc/fortran/st.cc
! cbbcb9b103e6c3a223ed6521022f0b0c  gcc/fortran/symbol.cc
  74785cb703ffef31c77a2efb99685bb4  gcc/fortran/target-memory.cc
  d418319a23a87a1e1e8054eaeb5d527b  gcc/fortran/target-memory.h
  3a2932a73962feb8fc16c9635ac928a6  gcc/fortran/trans-array.cc
--- 5951,5962 ----
  56af741644ab30aa09221a750079e265  gcc/fortran/parse.cc
  6afe26dd3f7a33ff8c524687d1958f05  gcc/fortran/parse.h
  a0e2907182a3f4a299681840e8f5be43  gcc/fortran/primary.cc
! 1e8189098fb2fdc82570f4567604be79  gcc/fortran/resolve.cc
  bf73188a78ecc3c99bc6915db827d75f  gcc/fortran/scanner.cc
  1cfffbabece85f419a6ca2676917e619  gcc/fortran/scanner.h
  be0b83b5f771bbe50926a1109ebd9e09  gcc/fortran/simplify.cc
  a0bad1c11baa50813a82d72f738f0872  gcc/fortran/st.cc
! 2a03d2f225a240270c75c372fe988eef  gcc/fortran/symbol.cc
  74785cb703ffef31c77a2efb99685bb4  gcc/fortran/target-memory.cc
  d418319a23a87a1e1e8054eaeb5d527b  gcc/fortran/target-memory.h
  3a2932a73962feb8fc16c9635ac928a6  gcc/fortran/trans-array.cc
*************** c420f80da3e0e794311a9b90c49abce5  gcc/fo
*** 5967,5973 ****
  a13796bc19ee899957fa78d9652f5ff5  gcc/fortran/trans-decl.cc
  21a44c257ad7cf25a62a230c8e619afb  gcc/fortran/trans-expr.cc
  50146a04d803fafbc56c31ef04c375c3  gcc/fortran/trans-intrinsic.cc
! 835293509cb408b8c6b793d2cc9c1e48  gcc/fortran/trans-io.cc
  be2abe61b914863c8dce5e37cb7f1491  gcc/fortran/trans-openmp.cc
  0a23775591d7d3e4fdb603d7bd9febb1  gcc/fortran/trans-stmt.cc
  1b5e4247678ad0441b5b0f26de2ebd4f  gcc/fortran/trans-stmt.h
--- 5967,5973 ----
  a13796bc19ee899957fa78d9652f5ff5  gcc/fortran/trans-decl.cc
  21a44c257ad7cf25a62a230c8e619afb  gcc/fortran/trans-expr.cc
  50146a04d803fafbc56c31ef04c375c3  gcc/fortran/trans-intrinsic.cc
! 9bfdb89867309e2ece2578749f55ece8  gcc/fortran/trans-io.cc
  be2abe61b914863c8dce5e37cb7f1491  gcc/fortran/trans-openmp.cc
  0a23775591d7d3e4fdb603d7bd9febb1  gcc/fortran/trans-stmt.cc
  1b5e4247678ad0441b5b0f26de2ebd4f  gcc/fortran/trans-stmt.h
*************** f3cd4a37afdd5c50fd88f8bea73656f2  gcc/gi
*** 6073,6079 ****
  9061d044f3fa87c56e4207cfed15dbd4  gcc/gimple-loop-versioning.cc
  5aa7e08e0bae2dfcbc188dcbbf48e035  gcc/gimple-low.cc
  1011dfdbac8762024379fe999e10572d  gcc/gimple-low.h
! 12562b4241cb21c9842168612f666fbb  gcc/gimple-lower-bitint.cc
  0da9234d337390e5ca66679b3e055deb  gcc/gimple-lower-bitint.h
  77bf05ef21f77c3ea4b0b145cd57240b  gcc/gimple-match-exports.cc
  9abca7865ad0fa60c0d19e6acebba08e  gcc/gimple-match-head.cc
--- 6073,6079 ----
  9061d044f3fa87c56e4207cfed15dbd4  gcc/gimple-loop-versioning.cc
  5aa7e08e0bae2dfcbc188dcbbf48e035  gcc/gimple-low.cc
  1011dfdbac8762024379fe999e10572d  gcc/gimple-low.h
! a195e0d355105544df8de7aa0f4a380b  gcc/gimple-lower-bitint.cc
  0da9234d337390e5ca66679b3e055deb  gcc/gimple-lower-bitint.h
  77bf05ef21f77c3ea4b0b145cd57240b  gcc/gimple-match-exports.cc
  9abca7865ad0fa60c0d19e6acebba08e  gcc/gimple-match-head.cc
*************** b4fac90ec25f720d30ee5890677475fd  gcc/gi
*** 6093,6099 ****
  9b1df29c360a25800cf1f12713f12357  gcc/gimple-range-gori.h
  f94d5d9d416368499396b5af95c640a1  gcc/gimple-range-infer.cc
  59a4e75211652f0f0985dde451461c62  gcc/gimple-range-infer.h
! 1bdc02d72c591ed0e1c733aea008bf3d  gcc/gimple-range-op.cc
  bf7905528673c9d4ef520313c8ac3341  gcc/gimple-range-op.h
  87b78f5fbf377f08c8f3c4c1090d85d3  gcc/gimple-range-path.cc
  8bae8ef4fc63b92a166177f469f16f2f  gcc/gimple-range-path.h
--- 6093,6099 ----
  9b1df29c360a25800cf1f12713f12357  gcc/gimple-range-gori.h
  f94d5d9d416368499396b5af95c640a1  gcc/gimple-range-infer.cc
  59a4e75211652f0f0985dde451461c62  gcc/gimple-range-infer.h
! 8042fe5416c23267943fc16fbc2cf7ec  gcc/gimple-range-op.cc
  bf7905528673c9d4ef520313c8ac3341  gcc/gimple-range-op.h
  87b78f5fbf377f08c8f3c4c1090d85d3  gcc/gimple-range-path.cc
  8bae8ef4fc63b92a166177f469f16f2f  gcc/gimple-range-path.h
*************** b13ef89fa355900b2c561e2d521a5b36  gcc/gi
*** 6127,6135 ****
  c4e1e930218f4dce5ef2a3a3a6b23b3b  gcc/gimple.cc
  c4df74d81805c4bd5129d36bb2a68562  gcc/gimple.def
  a258d10df4637ff8630240180753d325  gcc/gimple.h
! 38023efd45885e11111aa624febf5783  gcc/gimplify-me.cc
  85e953ee7730a9690d8c9449d974b5c9  gcc/gimplify-me.h
! b095d84eaceeaa85a2eb95e90a0bd6f2  gcc/gimplify.cc
  8f261c08379d1ad7b5ca607ff26ae1fb  gcc/gimplify.h
  82fc433faa62fad9f37c79e38dc2bf1c  gcc/ginclude/float.h
  f792d34f340e2e7a7655cf10325a519d  gcc/ginclude/iso646.h
--- 6127,6135 ----
  c4e1e930218f4dce5ef2a3a3a6b23b3b  gcc/gimple.cc
  c4df74d81805c4bd5129d36bb2a68562  gcc/gimple.def
  a258d10df4637ff8630240180753d325  gcc/gimple.h
! b3e54b7b3aedffdb3afbd50b4f98e51b  gcc/gimplify-me.cc
  85e953ee7730a9690d8c9449d974b5c9  gcc/gimplify-me.h
! 3b5b3871fb0ce233eecb0abc50fdeb52  gcc/gimplify.cc
  8f261c08379d1ad7b5ca607ff26ae1fb  gcc/gimplify.h
  82fc433faa62fad9f37c79e38dc2bf1c  gcc/ginclude/float.h
  f792d34f340e2e7a7655cf10325a519d  gcc/ginclude/iso646.h
*************** b55e1edcda305f1f415ac47b8b849f10  gcc/hw
*** 6251,6257 ****
  954d5781f30be200430a90abd354007b  gcc/hw-doloop.h
  54a3072f556cc43c511f0b254db57f06  gcc/hwint.cc
  b57b0cb8f2b88b817d10da3c96096205  gcc/hwint.h
! 135f1f518d1db915efff619873d97e0e  gcc/ifcvt.cc
  63147290b491f66fe0c4c2a417c32997  gcc/ifcvt.h
  5c457f2c6fae9c201fd0f2a86f1f0307  gcc/inchash.cc
  3722e0f8d58fa8c01a90bf5e51d09c1f  gcc/inchash.h
--- 6251,6257 ----
  954d5781f30be200430a90abd354007b  gcc/hw-doloop.h
  54a3072f556cc43c511f0b254db57f06  gcc/hwint.cc
  b57b0cb8f2b88b817d10da3c96096205  gcc/hwint.h
! 4a22c5a3efdfd303a86f3cffaa6958c1  gcc/ifcvt.cc
  63147290b491f66fe0c4c2a417c32997  gcc/ifcvt.h
  5c457f2c6fae9c201fd0f2a86f1f0307  gcc/inchash.cc
  3722e0f8d58fa8c01a90bf5e51d09c1f  gcc/inchash.h
*************** f261bcac4b8cf37d6506afca3539d2ef  gcc/ip
*** 6283,6289 ****
  440986ed37d72e7c0b83b6ff158daea8  gcc/ipa-inline-transform.cc
  7e839777a9da3c11f968fdfc9d25e2f3  gcc/ipa-inline.cc
  e40310b8dee85f5c92031ddd41ba5409  gcc/ipa-inline.h
! 24222cc83624e3969f2fdf1d33d42339  gcc/ipa-modref-tree.cc
  903cac1b9a72c89d66ebdaace79c5bbf  gcc/ipa-modref-tree.h
  6ce7058e415254e6835b7dd869835f96  gcc/ipa-modref.cc
  b04d793fd14925e2ee9fadff3fdb4778  gcc/ipa-modref.h
--- 6283,6289 ----
  440986ed37d72e7c0b83b6ff158daea8  gcc/ipa-inline-transform.cc
  7e839777a9da3c11f968fdfc9d25e2f3  gcc/ipa-inline.cc
  e40310b8dee85f5c92031ddd41ba5409  gcc/ipa-inline.h
! 2850ab5bd1eea7c87c76164d1170dd17  gcc/ipa-modref-tree.cc
  903cac1b9a72c89d66ebdaace79c5bbf  gcc/ipa-modref-tree.h
  6ce7058e415254e6835b7dd869835f96  gcc/ipa-modref.cc
  b04d793fd14925e2ee9fadff3fdb4778  gcc/ipa-modref.h
*************** f9608e9005487c369e6c38949ab36fa1  gcc/m2
*** 7419,7425 ****
  d24a84209a835c9cd933ec6c0cd756a2  gcc/machmode.h
  db4aa18553273d5e513c430bdea3d79a  gcc/main.cc
  a209940893eb5d9d9edc9f1e0fa3a88d  gcc/make-unique.h
! 777f974921b6580b181283b9d342a599  gcc/match.pd
  3eb7fce4670eed35821ef049a1488347  gcc/mcf.cc
  258cf9819c6a00e19b88c5a07c9b8991  gcc/mem-stats-traits.h
  b9810957b2a5920aa47c04774895c26b  gcc/mem-stats.h
--- 7419,7425 ----
  d24a84209a835c9cd933ec6c0cd756a2  gcc/machmode.h
  db4aa18553273d5e513c430bdea3d79a  gcc/main.cc
  a209940893eb5d9d9edc9f1e0fa3a88d  gcc/make-unique.h
! b085b7fcc3399a995c080688c7742d37  gcc/match.pd
  3eb7fce4670eed35821ef049a1488347  gcc/mcf.cc
  258cf9819c6a00e19b88c5a07c9b8991  gcc/mem-stats-traits.h
  b9810957b2a5920aa47c04774895c26b  gcc/mem-stats.h
*************** e6f56cf368ed56c2711af5ea822a328a  gcc/ob
*** 7461,7471 ****
  68792ecd109c4276bac03d7aa1445ac9  gcc/obstack-utils.h
  0224aa3be73c07c277f42313228c9cfe  gcc/omp-api.h
  555473cca6d8dacbe73507cd56b703d4  gcc/omp-builtins.def
! ba82df667fdde044d091a734e6db5314  gcc/omp-expand.cc
  09db560da111d9a47704f24d99d44b8f  gcc/omp-expand.h
  6dc86983ab780e52417a5b288e2116d2  gcc/omp-general.cc
  c1ddb0c6305e45221acab4445de3ef3b  gcc/omp-general.h
! be4a58e07572bf818a8eed07d550abf6  gcc/omp-low.cc
  e3224969a5ed6b10763e81875242df90  gcc/omp-low.h
  c253e58a61787441cc6f3b8bd2362916  gcc/omp-oacc-kernels-decompose.cc
  76a4931edcf0949a84b213b9f3bebcdc  gcc/omp-oacc-neuter-broadcast.cc
--- 7461,7471 ----
  68792ecd109c4276bac03d7aa1445ac9  gcc/obstack-utils.h
  0224aa3be73c07c277f42313228c9cfe  gcc/omp-api.h
  555473cca6d8dacbe73507cd56b703d4  gcc/omp-builtins.def
! f1dc1dbecb27a496195a2d874727eb0a  gcc/omp-expand.cc
  09db560da111d9a47704f24d99d44b8f  gcc/omp-expand.h
  6dc86983ab780e52417a5b288e2116d2  gcc/omp-general.cc
  c1ddb0c6305e45221acab4445de3ef3b  gcc/omp-general.h
! 483e143117c28500edbd12fcde0bc90a  gcc/omp-low.cc
  e3224969a5ed6b10763e81875242df90  gcc/omp-low.h
  c253e58a61787441cc6f3b8bd2362916  gcc/omp-oacc-kernels-decompose.cc
  76a4931edcf0949a84b213b9f3bebcdc  gcc/omp-oacc-neuter-broadcast.cc
*************** f110c3c7ace2a1a5995a4e1e580ba392  gcc/po
*** 7540,7546 ****
  9ad6b9c4b0f4bb2b9ad1b88a87c7779f  gcc/po/vi.po
  c074a129eaadc9ece59a9a06b14a6af0  gcc/po/zh_CN.po
  6628233796501388db647c3b9ddcea11  gcc/po/zh_TW.po
! d52ad4191e392663454b6b3f44104c23  gcc/pointer-query.cc
  42e14dd49b1893b63eedc00d3fc29b3a  gcc/pointer-query.h
  1541cce778a3856ff5eb841d6d47ed26  gcc/poly-int-types.h
  e64a8ab864db636576c62983a00f800a  gcc/poly-int.h
--- 7540,7546 ----
  9ad6b9c4b0f4bb2b9ad1b88a87c7779f  gcc/po/vi.po
  c074a129eaadc9ece59a9a06b14a6af0  gcc/po/zh_CN.po
  6628233796501388db647c3b9ddcea11  gcc/po/zh_TW.po
! 8e4147d9303d5e2c28a5e908ccb4c2ac  gcc/pointer-query.cc
  42e14dd49b1893b63eedc00d3fc29b3a  gcc/pointer-query.h
  1541cce778a3856ff5eb841d6d47ed26  gcc/poly-int-types.h
  e64a8ab864db636576c62983a00f800a  gcc/poly-int.h
*************** d9deb5fb04bc9bc87a486a5ccfbba806  gcc/pr
*** 7566,7573 ****
  f29e4c9efdf2dc0f1c85d48990e74081  gcc/range-op-float.cc
  997ac266d2595ff4eebf8329161f81d8  gcc/range-op-mixed.h
  8ba824feefe86c2918eab3ecee628a5d  gcc/range-op-ptr.cc
! 266752af9570f21acfa29cfc5227e5d5  gcc/range-op.cc
! c27c1c39a9e7582f117a496eb1f6801e  gcc/range-op.h
  db3562fdc44d2731a5d6f79322e63e49  gcc/range.cc
  ab6530a7aba31b6045d649bad558bdd4  gcc/range.h
  d62f21136aedb5de39f00da2ce438022  gcc/read-md.cc
--- 7566,7573 ----
  f29e4c9efdf2dc0f1c85d48990e74081  gcc/range-op-float.cc
  997ac266d2595ff4eebf8329161f81d8  gcc/range-op-mixed.h
  8ba824feefe86c2918eab3ecee628a5d  gcc/range-op-ptr.cc
! 67ce46df5da5afd1294d814e8330c2e2  gcc/range-op.cc
! 42efabbb4e27a40d25fe2f9bce428fd4  gcc/range-op.h
  db3562fdc44d2731a5d6f79322e63e49  gcc/range.cc
  ab6530a7aba31b6045d649bad558bdd4  gcc/range.h
  d62f21136aedb5de39f00da2ce438022  gcc/read-md.cc
*************** a50f455a4da1c5681d83ded216699df8  gcc/ss
*** 8033,8039 ****
  d93510bb251b5f9a6a50b05ec4b9ccc2  gcc/stack-ptr-mod.cc
  37623f9bd5f167d8d4307ef37a646283  gcc/statistics.cc
  8fa28fa606e2b8ccfa3f6ba31b5988d4  gcc/statistics.h
! b3e3eceb17c661e649bfbf7f2b490888  gcc/stmt.cc
  e7705887682ab75001cd90109f3c1995  gcc/stmt.h
  b5d2f1b4038d7c848bc885f2ca01c733  gcc/stor-layout.cc
  1320e37c3710789c2f18d411226afad1  gcc/stor-layout.h
--- 8033,8039 ----
  d93510bb251b5f9a6a50b05ec4b9ccc2  gcc/stack-ptr-mod.cc
  37623f9bd5f167d8d4307ef37a646283  gcc/statistics.cc
  8fa28fa606e2b8ccfa3f6ba31b5988d4  gcc/statistics.h
! cded5343bb6c992fda9fb146aa63fa05  gcc/stmt.cc
  e7705887682ab75001cd90109f3c1995  gcc/stmt.h
  b5d2f1b4038d7c848bc885f2ca01c733  gcc/stor-layout.cc
  1320e37c3710789c2f18d411226afad1  gcc/stor-layout.h
*************** e8a9eb01b9451a357155e7152df1c669  gcc/ta
*** 8062,8068 ****
  a05663c52c607143c607d3ecf1391979  gcc/targhooks.cc
  51d240e574a3f9ecec346d64a04ac634  gcc/targhooks.h
  f39fcaa8197187283ccfed40107b426d  gcc/testsuite/.gitattributes
! 893890884574436457ed79bef12b4953  gcc/testsuite/ChangeLog
  862f04afbd87da2cc6bc432c3f28430f  gcc/testsuite/ChangeLog-1993-2007
  029a5d8dacd25eb5d4711452ac448e5b  gcc/testsuite/ChangeLog-2008
  13ac28c41d51b66b4ec40dba6bd50f39  gcc/testsuite/ChangeLog-2009
--- 8062,8068 ----
  a05663c52c607143c607d3ecf1391979  gcc/targhooks.cc
  51d240e574a3f9ecec346d64a04ac634  gcc/targhooks.h
  f39fcaa8197187283ccfed40107b426d  gcc/testsuite/.gitattributes
! 03322ff77b2b33962690587184b30f8f  gcc/testsuite/ChangeLog
  862f04afbd87da2cc6bc432c3f28430f  gcc/testsuite/ChangeLog-1993-2007
  029a5d8dacd25eb5d4711452ac448e5b  gcc/testsuite/ChangeLog-2008
  13ac28c41d51b66b4ec40dba6bd50f39  gcc/testsuite/ChangeLog-2009
*************** da5e564f6cffb4d2f63384ba5d7351b1  gcc/te
*** 11802,11807 ****
--- 11802,11809 ----
  8135260e5e210166919ed6d24752ad37  gcc/testsuite/c-c++-common/cpp/diagnostic-pragma-3.c
  7e07a117bfa1cbd4313441da514b62a7  gcc/testsuite/c-c++-common/cpp/dir-only-1.c
  94f40e67e3617fd463bd2b73d2f6d54c  gcc/testsuite/c-c++-common/cpp/dir-only-1.h
+ 3ddedbc00d4ff771f66edefc8d70881f  gcc/testsuite/c-c++-common/cpp/dir-only-10.c
+ 948247aa95702e920da7ab25ee7cf601  gcc/testsuite/c-c++-common/cpp/dir-only-11.c
  92a3350e430f3da6be21354b2cc4eb5d  gcc/testsuite/c-c++-common/cpp/dir-only-2.c
  d17c82849bf7f540adedf0e80d9b41df  gcc/testsuite/c-c++-common/cpp/dir-only-3.c
  f120018b9734950cca9c0e7ba0e9a33a  gcc/testsuite/c-c++-common/cpp/dir-only-3a.h
*************** ef8ec3320ae234be32fcdfc5379eaca2  gcc/te
*** 12534,12539 ****
--- 12536,12543 ----
  8f995161beda01326e712ba172a760f8  gcc/testsuite/c-c++-common/gomp/pr107001.c
  9b182f81cba9d60fb2cbbde45ceae582  gcc/testsuite/c-c++-common/gomp/pr108244-3.c
  c83ce004951a9a0719e190f7457302c7  gcc/testsuite/c-c++-common/gomp/pr119000.c
+ 250f54e2a193f434f875e2caf2868bc6  gcc/testsuite/c-c++-common/gomp/pr120052.c
+ c315375dde6dfd35915ac372415190a8  gcc/testsuite/c-c++-common/gomp/pr120564.c
  e16ef156ad193ef1f3cba60ad16e57ab  gcc/testsuite/c-c++-common/gomp/pr51360.c
  84c977571aeb43c0224137efe7f5b213  gcc/testsuite/c-c++-common/gomp/pr53580.c
  28bfd873981083756a16f70fdb0b86db  gcc/testsuite/c-c++-common/gomp/pr54017.c
*************** e1ef9c58498f72552b0ec84751024b54  gcc/te
*** 12830,12835 ****
--- 12834,12840 ----
  7e6323dd9b11ca893c79859f430b53ed  gcc/testsuite/c-c++-common/pr109884.c
  087cac8a02deb9e6057b84df8a4b50c5  gcc/testsuite/c-c++-common/pr111309-1.c
  eaa6db1ea7ec94af6a5743a71b3c75b4  gcc/testsuite/c-c++-common/pr111309-2.c
+ b27edfb18a0a46230f08ed022faced81  gcc/testsuite/c-c++-common/pr111817.c
  f938d650e5405e1ae04ff131a9239d66  gcc/testsuite/c-c++-common/pr122188.c
  f5dce8e27cfb8a6bfffe57596fecb796  gcc/testsuite/c-c++-common/pr19807-1.c
  8a7d9a8dd4af1ada80ca6a4b3201e073  gcc/testsuite/c-c++-common/pr19807-2.c
*************** b8cd89a7510ad4bbf02ec052d02d2ee0  gcc/te
*** 15386,15391 ****
--- 15391,15397 ----
  eeac975a1b841cef4d5a4c468314ed8c  gcc/testsuite/g++.dg/cpp0x/constexpr-104472.C
  6ef86dfa8bcd129320f2714974f8ad93  gcc/testsuite/g++.dg/cpp0x/constexpr-105321.C
  24bbf6c5e0f31296c48440d4dae33447  gcc/testsuite/g++.dg/cpp0x/constexpr-113083.C
+ cf48bd83fff3e69e5f82d30185ef08d0  gcc/testsuite/g++.dg/cpp0x/constexpr-123889.C
  3e4cac522763806230540d3da6cc5ee1  gcc/testsuite/g++.dg/cpp0x/constexpr-46336.C
  d079e67f3b2be485ac7aed93b70984d2  gcc/testsuite/g++.dg/cpp0x/constexpr-46420.C
  329a82a822423273c0c0256fd27a6d52  gcc/testsuite/g++.dg/cpp0x/constexpr-47570.C
*************** e38875ddde2687b4139330d97e0edf9f  gcc/te
*** 16300,16305 ****
--- 16306,16312 ----
  46b8282b71afcc8c97c1b1c6c4666202  gcc/testsuite/g++.dg/cpp0x/gen-attrs-79.C
  29ab98a7b8d445bb51e5069dd98f7cca  gcc/testsuite/g++.dg/cpp0x/gen-attrs-8.C
  5dd92815927177080853d47a890f5439  gcc/testsuite/g++.dg/cpp0x/gen-attrs-9.C
+ 3b01eb9296987e59c3e91a9998259d9b  gcc/testsuite/g++.dg/cpp0x/gen-attrs-90.C
  40caf35e131e99903b76e36f0e04b2a9  gcc/testsuite/g++.dg/cpp0x/gnu_fext-numeric-literals.C
  2e2788f974b88f56ceecc2b764d701db  gcc/testsuite/g++.dg/cpp0x/gnu_fno-ext-numeric-literals.C
  3e88c6e173fd3bd44055c2202907f7e1  gcc/testsuite/g++.dg/cpp0x/hog1.C
*************** fa773bb98628f5c9f0fa9d8d8b29beda  gcc/te
*** 17160,17165 ****
--- 17167,17174 ----
  c25430a477686ad18eb61c047059d523  gcc/testsuite/g++.dg/cpp0x/pr112365.C
  d1bd358aeacbea8bb4acd229e4efd99e  gcc/testsuite/g++.dg/cpp0x/pr113031.C
  c6b0d9f964bf85f5f703f5dfa5e809e9  gcc/testsuite/g++.dg/cpp0x/pr119123.C
+ b2f7d7cab4ef6e12f25f82545d59869a  gcc/testsuite/g++.dg/cpp0x/pr123818.C
+ 823666b75dc5cb540393daba4df2d5df  gcc/testsuite/g++.dg/cpp0x/pr124489.C
  26dea799d49ce223a0c4130a3c955271  gcc/testsuite/g++.dg/cpp0x/pr31431-2.C
  4d1da29b669bf3178b3987abce4d58b1  gcc/testsuite/g++.dg/cpp0x/pr31431.C
  d65e06a3830e2b511cc25692b94615a1  gcc/testsuite/g++.dg/cpp0x/pr31432.C
*************** afbdcf440b8da95f919e745c0f3a85d1  gcc/te
*** 18168,18173 ****
--- 18177,18183 ----
  bff4672a992bc57b0432abbc32b3c2c9  gcc/testsuite/g++.dg/cpp1y/constexpr-108158.C
  1d40cabd787f31f0fad7fcf842281e0d  gcc/testsuite/g++.dg/cpp1y/constexpr-110382.C
  c0c4053e9d0ac3fdafa8e18c09182922  gcc/testsuite/g++.dg/cpp1y/constexpr-110619.C
+ 99784bf84926c6a7d522ec738bd5f9aa  gcc/testsuite/g++.dg/cpp1y/constexpr-121445.C
  2d72668eefa5659edd32ef8dabc1c48e  gcc/testsuite/g++.dg/cpp1y/constexpr-50060.C
  9b2030f5f70b0e913feb1b957c799f4f  gcc/testsuite/g++.dg/cpp1y/constexpr-66093.C
  9ecc58eab147adafbf3780c51ed706fc  gcc/testsuite/g++.dg/cpp1y/constexpr-70265-1.C
*************** b2c624c1eaea788d603bfc8204fdaee7  gcc/te
*** 19091,19096 ****
--- 19101,19108 ----
  dfd54cc6e7ae91a6a51dbda233f20174  gcc/testsuite/g++.dg/cpp1z/decomp59.C
  1bdca83f97c5e15ddd3eda87ca5353f2  gcc/testsuite/g++.dg/cpp1z/decomp6.C
  37c39f932f33f540d51f60eb06411c2f  gcc/testsuite/g++.dg/cpp1z/decomp61.C
+ 4267cc2db929f2666c1c5449e017a94a  gcc/testsuite/g++.dg/cpp1z/decomp66.C
+ d87e0f686f9f58fa2c8ea0990e82c1b3  gcc/testsuite/g++.dg/cpp1z/decomp67.C
  09468d9aa8e4fe8ac0677b17a3c509a2  gcc/testsuite/g++.dg/cpp1z/decomp7.C
  0d7ba62c8322f4f98a085026e3ac529a  gcc/testsuite/g++.dg/cpp1z/decomp8.C
  20aa008483ed89882491910be20354b8  gcc/testsuite/g++.dg/cpp1z/decomp9.C
*************** e3a88ae9ca562b3c9a47ee98c06e6ded  gcc/te
*** 19108,19113 ****
--- 19120,19126 ----
  63be3b6d75aa3c2c8088552683d5245e  gcc/testsuite/g++.dg/cpp1z/eval-order10.C
  3abc6084e572264410718d38beb290bb  gcc/testsuite/g++.dg/cpp1z/eval-order11.C
  2a2d4866a044c20823b5f37f629ac147  gcc/testsuite/g++.dg/cpp1z/eval-order13.C
+ 612e7cfe92accd2bee31cd13a0976f33  gcc/testsuite/g++.dg/cpp1z/eval-order14.C
  bb194d9ce590c9e5e69935ebac0f25e4  gcc/testsuite/g++.dg/cpp1z/eval-order2.C
  8b89dee7164b6f4d992706e5b85433f4  gcc/testsuite/g++.dg/cpp1z/eval-order3.C
  6d8d378fedaf65b4cb89952060799280  gcc/testsuite/g++.dg/cpp1z/eval-order4.C
*************** f35c40f9359deda380357490b21bcf4f  gcc/te
*** 19316,19321 ****
--- 19329,19335 ----
  1cec7e8e1ac5999209a00a7fd3e2dbab  gcc/testsuite/g++.dg/cpp1z/static1.C
  41cdf88b4e2dc9ba29ab954fd0f3d05c  gcc/testsuite/g++.dg/cpp1z/static2.C
  491588e8dd93d83d5049e3c332e8755f  gcc/testsuite/g++.dg/cpp1z/static_assert-nomsg.C
+ d123582c5d5cdc2e4fdc925fa563f023  gcc/testsuite/g++.dg/cpp1z/static_assert1.C
  7dd3448d4722a9ee0446db6aa3c7a0b0  gcc/testsuite/g++.dg/cpp1z/ttp1.C
  0cd62ffa5ae2d02bd665e02895b12f01  gcc/testsuite/g++.dg/cpp1z/ttp2.C
  64b3f9e4e9d3f04ac339e1f86e353e9b  gcc/testsuite/g++.dg/cpp1z/typename-tmpl-tmpl-parm-neg.C
*************** c6ad3dc1af7ae5c57b2194ad705be2a4  gcc/te
*** 19382,19387 ****
--- 19396,19402 ----
  cbc1aae360c38b8d5aba44cc0adb1d1a  gcc/testsuite/g++.dg/cpp23/auto-fncast16.C
  0d6c0765aa6e381e901ea54f31098f7d  gcc/testsuite/g++.dg/cpp23/auto-fncast17.C
  607b1507f1af352b3b8d73c0b0042af0  gcc/testsuite/g++.dg/cpp23/auto-fncast18.C
+ 7538b8341492d3e37f991c7d882723b9  gcc/testsuite/g++.dg/cpp23/auto-fncast19.C
  76d2964f5d2d58ccec6afc73c59f1b53  gcc/testsuite/g++.dg/cpp23/auto-fncast2.C
  dda23dff758a778a7ead9dd8b58268fc  gcc/testsuite/g++.dg/cpp23/auto-fncast3.C
  7f7896e62e131143c799cd8b4ac52168  gcc/testsuite/g++.dg/cpp23/auto-fncast4.C
*************** fc8ccbfe7f14dd4a41ff708c5a05b226  gcc/te
*** 20677,20682 ****
--- 20692,20698 ----
  475c14632e683c843d48238b8c5514f2  gcc/testsuite/g++.dg/cpp2a/pr114426.C
  9d5c0df7ab0b6e3e5ab03bc8eb135452  gcc/testsuite/g++.dg/cpp2a/pr117317-1.C
  4b52a1949fed25dc03d5cfb83047e7c5  gcc/testsuite/g++.dg/cpp2a/pr117317-2.C
+ 938acbb8068f7a8fc2c3f43271324ef4  gcc/testsuite/g++.dg/cpp2a/pr123578.C
  7d1c1719a1c3e44cf69662819769f8a5  gcc/testsuite/g++.dg/cpp2a/pr88534.C
  3a4139bbe15eef2dce96cb020b2681f7  gcc/testsuite/g++.dg/cpp2a/pr88537.C
  b94ce4741edeca1190c4590e425522dc  gcc/testsuite/g++.dg/cpp2a/pr89913.C
*************** becc0e6f064af285a504ff10eaffc525  gcc/te
*** 21114,21119 ****
--- 21130,21137 ----
  204f6d67816240aa15bfa5d9320862f5  gcc/testsuite/g++.dg/dfp/mangle-6.C
  8b4d16a77a1edab85ee4c99fda03eb79  gcc/testsuite/g++.dg/dfp/mangle-mode.C
  3a865b01c504023d0b90b1f055163c6a  gcc/testsuite/g++.dg/dfp/nofields.C
+ fd0549fb3825f83ce2ac884838fe2187  gcc/testsuite/g++.dg/dfp/pr122834-1.C
+ 87b1932d8497bd7b8b41f36fb0c23208  gcc/testsuite/g++.dg/dfp/pr122834-2.C
  919ff80bde2b401e1cf10423071bab16  gcc/testsuite/g++.dg/dfp/pr92744.C
  cd0133a632a541db051ef84d53754ac6  gcc/testsuite/g++.dg/dfp/typeid1.C
  ac1525692e246b268a3c3c5dc12f93bd  gcc/testsuite/g++.dg/dg.exp
*************** e1073bec80cbc48fb15e02126aebb2b0  gcc/te
*** 22825,22830 ****
--- 22843,22849 ----
  e6195ed8251ecef3da90dc8d0e37ed89  gcc/testsuite/g++.dg/gomp/pr108607.C
  ed2fe9b487c91fe33d6cccf142fa243c  gcc/testsuite/g++.dg/gomp/pr111274.C
  996def323ebaae8304a543404625c64a  gcc/testsuite/g++.dg/gomp/pr121977.C
+ b30c571b03f08db4a17f3299d04b20fa  gcc/testsuite/g++.dg/gomp/pr123597.C
  539bba6df5330b7a6631eca5665a0899  gcc/testsuite/g++.dg/gomp/pr24849.C
  78ea34fd7a1a2767f61a703271e7070a  gcc/testsuite/g++.dg/gomp/pr25874.C
  93a85a09acfdf011a86ff95fc9184a94  gcc/testsuite/g++.dg/gomp/pr25996.C
*************** ee83980c52efcd311fdf334e2fd23f42  gcc/te
*** 25973,25978 ****
--- 25992,25998 ----
  825c715cc564416b76db4cdff16d60ca  gcc/testsuite/g++.dg/opt/pr113705.C
  0324d31ab64ecdfb74347e2e96dd74d2  gcc/testsuite/g++.dg/opt/pr117439.C
  149c3b47d16cfa08669bf79341552440  gcc/testsuite/g++.dg/opt/pr119327.C
+ 46bab0272c3e399fa4db680833cb9a89  gcc/testsuite/g++.dg/opt/pr122394.C
  2896f5b1a96dd9fabb1dbb65cb4c5921  gcc/testsuite/g++.dg/opt/pr13066-1.C
  4f87f86b9f018cae74888e97468b2fe0  gcc/testsuite/g++.dg/opt/pr14029.C
  8fb7e68e9e9b5eb02628e03f5333e645  gcc/testsuite/g++.dg/opt/pr14888.C
*************** bb6ac4a17ab02af350881f64213ce26e  gcc/te
*** 26921,26926 ****
--- 26941,26947 ----
  73b1cabb6ebba6515fc142024f664fa3  gcc/testsuite/g++.dg/parse/crash70.C
  78546442b1a4a93b74bc9a74697998e4  gcc/testsuite/g++.dg/parse/crash71.C
  c3945b36146c7d629c7336eb3f9329fe  gcc/testsuite/g++.dg/parse/crash77.C
+ 23b7108a88804e5cf4c0a9d029afae56  gcc/testsuite/g++.dg/parse/crash81.C
  5818f331167c496db06ad694932a1beb  gcc/testsuite/g++.dg/parse/crash9.C
  5940e29a523673e2c47048c21c11d678  gcc/testsuite/g++.dg/parse/ctor1.C
  6a4d22d64949d622a19d9e79684aad65  gcc/testsuite/g++.dg/parse/ctor10.C
*************** adfc90a4ec5f7e6acacbdafc592a2862  gcc/te
*** 27468,27473 ****
--- 27489,27495 ----
  6431e5522e8138d482199836afdeb823  gcc/testsuite/g++.dg/pr114501_0.C
  ad9259e6bdf3bdde202871cc62bd27bb  gcc/testsuite/g++.dg/pr115232.C
  907af190ec2f3efd086d2b352c9934cd  gcc/testsuite/g++.dg/pr117919.C
+ 9b72294c06cceb517f37832e017f79c1  gcc/testsuite/g++.dg/pr123575.C
  2ac64817a39fe1a5c2dc328f4233cda1  gcc/testsuite/g++.dg/pr37742.C
  32b2fbda29ffd2ac2181c43c971f3a7d  gcc/testsuite/g++.dg/pr44328.C
  e43b4ea2d038b181b57782d5d56d22ba  gcc/testsuite/g++.dg/pr44486.C
*************** f298eddbaaad3dfdc15f6cf9683ff08a  gcc/te
*** 29611,29616 ****
--- 29633,29642 ----
  9df51f0b5a7e716286f2e97dfd28d477  gcc/testsuite/g++.dg/torture/pr119610.C
  9cede7e8b587157ccdf0f9f6667d6cc8  gcc/testsuite/g++.dg/torture/pr119778.C
  75b55c517ba9c0f47c83851f084cb294  gcc/testsuite/g++.dg/torture/pr121870.C
+ fd8e483532e07909315ca8711ef4503b  gcc/testsuite/g++.dg/torture/pr123603.C
+ ca7ea9ef86090651fbec9289f32896ab  gcc/testsuite/g++.dg/torture/pr123729.C
+ 61fcf1bc001bfcf25117da95aaa8edd8  gcc/testsuite/g++.dg/torture/pr124135-1.C
+ 101facde39ac59f9b142786ef251d0ca  gcc/testsuite/g++.dg/torture/pr124135-2.C
  161154ed9f6193a2a7da119e068c3f3f  gcc/testsuite/g++.dg/torture/pr27218.C
  a84e9fff95df4801f8e582fbc33303b8  gcc/testsuite/g++.dg/torture/pr30252.C
  e980bf95890544d46879b89f7aa98df6  gcc/testsuite/g++.dg/torture/pr30567.C
*************** f1360330e2c03adfb9e1efd9136d3f31  gcc/te
*** 30876,30881 ****
--- 30902,30908 ----
  1184b1df4ae243b5ab6917e0e3b219b6  gcc/testsuite/g++.dg/warn/Wmismatched-dealloc-2.C
  beb0dbeb6a47cd7fb34d04b431670905  gcc/testsuite/g++.dg/warn/Wmismatched-dealloc-3.C
  d183cd43f2c2caf1b71024ba3762ff44  gcc/testsuite/g++.dg/warn/Wmismatched-dealloc.C
+ c64dfbca6c8c86f3fd65230eca021a72  gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-10.C
  74decc16b8ca63b12db874b7dde868cf  gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-2.C
  5c4cad449e21fe0fade92c9c0d19fb5f  gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-3.C
  da3dbc8526151b41f4a741a5d5e51eae  gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-4.C
*************** b3f9da722f5270cda4a26396283bbbe9  gcc/te
*** 34873,34878 ****
--- 34900,34906 ----
  3dce24cbf6e8a9d6b104a5174b42ccf6  gcc/testsuite/g++.target/aarch64/pr109661-2.C
  af15d8508e94dffd343c693011e63fd4  gcc/testsuite/g++.target/aarch64/pr109661-3.C
  9b78f2399b3493ce846b6fb03c77ee6c  gcc/testsuite/g++.target/aarch64/pr109661-4.C
+ cee7440840fa58ea5280af197f3054eb  gcc/testsuite/g++.target/aarch64/pr124126-1.C
  1755134bcb84bdbcfd658df7150649e0  gcc/testsuite/g++.target/aarch64/pr89752.C
  ba9d23bf9864be2b6061429c3faa49b7  gcc/testsuite/g++.target/aarch64/pr94052.C
  376b3a47b3ddd89e448a765321d0e622  gcc/testsuite/g++.target/aarch64/pr94514.C
*************** bb1656a836158ee012bbed4bc10d85f0  gcc/te
*** 35071,35076 ****
--- 35099,35105 ----
  4a44f470ea24c20123902146bd5273ad  gcc/testsuite/g++.target/i386/avx512bw-pr98537-1.C
  3ec2a7fddbb432f8b259b0ada49c99a8  gcc/testsuite/g++.target/i386/avx512f-helper.h
  cbe0c3947d51802a4bf66ce01377fb64  gcc/testsuite/g++.target/i386/avx512f-pr96891-1.C
+ 8763b4590fa0e7aa581be6701962a55f  gcc/testsuite/g++.target/i386/avx512fp16-pr123607.C
  c89ba9cfe468937652adb223c2fe88f9  gcc/testsuite/g++.target/i386/avx512fp16-vcondmn-minmax.C
  d5287c6ed2bebf01314526c64e9b26ba  gcc/testsuite/g++.target/i386/avx512fp16-vcondmn-vec.C
  5df96b365d4dc9fff3b4d57ee1d9f8e5  gcc/testsuite/g++.target/i386/avx512vl-pr100738-1.C
*************** cddb5f327c3c1dc3f843d95d86f7f6a9  gcc/te
*** 36548,36555 ****
--- 36577,36589 ----
  ece87744c4e664bf39922d9937465df1  gcc/testsuite/gcc.c-torture/compile/pr115143-2.c
  14405634ff4726e79f727af592887eec  gcc/testsuite/gcc.c-torture/compile/pr115143-3.c
  a374b3675317752237cc478b2e662a04  gcc/testsuite/gcc.c-torture/compile/pr115277.c
+ 4b342b76caa9e8e213c9b81ca64d1333  gcc/testsuite/gcc.c-torture/compile/pr116600.c
  0385d5805cb6d90dc8a17f2f44d3450e  gcc/testsuite/gcc.c-torture/compile/pr117358.c
  6d7416e999725c0f023c4322893b1214  gcc/testsuite/gcc.c-torture/compile/pr118501.c
+ ab667119ae39828bcd103bb5c5434cdc  gcc/testsuite/gcc.c-torture/compile/pr120250.c
+ 9f275c2b6e96b2a9fdee0b1a4aee96e9  gcc/testsuite/gcc.c-torture/compile/pr123365.c
+ 8c484e5df297a43329f4182432f35fda  gcc/testsuite/gcc.c-torture/compile/pr123386.c
+ ffc2d0352a16ed7c76c12152bde69753  gcc/testsuite/gcc.c-torture/compile/pr123703.c
  b8b52e8f02c4a8a36a13b5243b69bbe6  gcc/testsuite/gcc.c-torture/compile/pr124250.c
  33c7141fcf5b1add3ddd2be0100f1f0d  gcc/testsuite/gcc.c-torture/compile/pr12517.c
  ec16b12ab11c499bf321be18ea59da33  gcc/testsuite/gcc.c-torture/compile/pr12578.c
*************** a1b7f9f7cdc342ff771a30f551e3bc3b  gcc/te
*** 38683,38688 ****
--- 38717,38727 ----
  5802f1a3b7f07033d3e5c9e6bc333779  gcc/testsuite/gcc.c-torture/execute/pr118915.c
  fd7185346c3b94c0a7f7afba7b6bc241  gcc/testsuite/gcc.c-torture/execute/pr119071.c
  b7150a91a8e64c0a2f8d47a9f857fd6e  gcc/testsuite/gcc.c-torture/execute/pr119291.c
+ d41fd1ea09327fdf9b68f657aea5661c  gcc/testsuite/gcc.c-torture/execute/pr122000.c
+ 529fc2a1e92dc790d3766cd8554fc89c  gcc/testsuite/gcc.c-torture/execute/pr122943.c
+ cb4c82184137c0933c1bae60a7df15bc  gcc/testsuite/gcc.c-torture/execute/pr123864.c
+ 95b7f2d687a5a5e2df1e09fad845a195  gcc/testsuite/gcc.c-torture/execute/pr123978.c
+ 256e8d04f36f265861609fbe23468388  gcc/testsuite/gcc.c-torture/execute/pr124358.c
  80c02c70a0b6b91b06942e395c34960f  gcc/testsuite/gcc.c-torture/execute/pr15262-1.c
  987c511633ad57d9f08d352eb9512819  gcc/testsuite/gcc.c-torture/execute/pr15262-2.c
  f7f514cfbd791b0c828e0710493b0910  gcc/testsuite/gcc.c-torture/execute/pr15262.c
*************** d217543f954eb3f31e246355824f653a  gcc/te
*** 41218,41223 ****
--- 41257,41263 ----
  11e6d8eaf7b16f3f8aeaf1c2e626996f  gcc/testsuite/gcc.dg/bitint-124.c
  c446cf331d60d19eea3950d7f444f8b3  gcc/testsuite/gcc.dg/bitint-125.c
  240ade406c4daf5c641e5c4f0bdd5ef5  gcc/testsuite/gcc.dg/bitint-126.c
+ 3fa6e340272f61c5b425b6a54732c94f  gcc/testsuite/gcc.dg/bitint-127.c
  aa6e262f1d508ec048e76ac4af6675a4  gcc/testsuite/gcc.dg/bitint-13.c
  e6db29256563268a3c327706e78c79a4  gcc/testsuite/gcc.dg/bitint-14.c
  c748706240385773f27caba61cbbcbd8  gcc/testsuite/gcc.dg/bitint-15.c
*************** d05bdce55447fc39d09a1133e04e88b4  gcc/te
*** 42376,42381 ****
--- 42416,42422 ----
  45e735b0d33fac192a119347115d5b0c  gcc/testsuite/gcc.dg/completion-4.c
  649ce6d53eeda31c7cb4947fab7ac38f  gcc/testsuite/gcc.dg/completion-5.c
  a86556f4f0c72c0bee2f104440830505  gcc/testsuite/gcc.dg/complex-1.c
+ 79e8cd8a2d1264875feb64c5169b21d2  gcc/testsuite/gcc.dg/complex-10.c
  ec2d607c705e532267dc3c09849c554f  gcc/testsuite/gcc.dg/complex-2.c
  da2226add6799fd192e2b367404d1b0b  gcc/testsuite/gcc.dg/complex-2.h
  7cbd734da9d8330b57f4e78af353b9f2  gcc/testsuite/gcc.dg/complex-3.c
*************** a633f425b4fdde0a7b6f0aa6aa2f2754  gcc/te
*** 44423,44428 ****
--- 44464,44470 ----
  20a3ca0acce7dbf1520d374c9470fc34  gcc/testsuite/gcc.dg/gomp/pr110485.c
  7d1b62adb42c340855e993cf480a19ec  gcc/testsuite/gcc.dg/gomp/pr114075.c
  ec1d4016ba60492b723014b99d2804e6  gcc/testsuite/gcc.dg/gomp/pr121453.c
+ c80489ac8415077c5335cf251371d6e9  gcc/testsuite/gcc.dg/gomp/pr123876.c
  7a163e65fe52b23fc85f2daa18c442ee  gcc/testsuite/gcc.dg/gomp/pr25874.c
  597de3ed24e1bc1c650af918589d83c3  gcc/testsuite/gcc.dg/gomp/pr25989.c
  0bd3e8dc860de61dd8e09229c090e1f5  gcc/testsuite/gcc.dg/gomp/pr25990.c
*************** d98596956367fc29b9341da6c0f03f55  gcc/te
*** 46554,46559 ****
--- 46596,46603 ----
  2eebdeb5aef44432de1498de14cbf4e6  gcc/testsuite/gcc.dg/pr101266.c
  a7ea71615239b0d5a09bdb20e483a02f  gcc/testsuite/gcc.dg/pr101285-1.c
  cbe7e390158f186ae3fd0f808bea7563  gcc/testsuite/gcc.dg/pr101294.c
+ 280ab2738fa9f4a59440b24de22faee0  gcc/testsuite/gcc.dg/pr101312-1.c
+ 1e4a8d2edc5aa23b12908e90b5487800  gcc/testsuite/gcc.dg/pr101312-2.c
  a03b0a2a9da12c5aa5f258d44f7cba03  gcc/testsuite/gcc.dg/pr101364-1.c
  70303171ed7f5b2cba05e6b98daad2ab  gcc/testsuite/gcc.dg/pr101384.c
  566100ed369cb8ddbb77ca59ac7f4416  gcc/testsuite/gcc.dg/pr101403.c
*************** b4bb8ae97fc12f1c66b22b9149ca7a2b  gcc/te
*** 46828,46833 ****
--- 46872,46878 ----
  26cb03e00d88f4257622852ed3e5369b  gcc/testsuite/gcc.dg/pr109327.c
  45f9003776530da05643fd2fcd9640b8  gcc/testsuite/gcc.dg/pr109392.c
  c84c4385dc7b913c1ab044bf620d7696  gcc/testsuite/gcc.dg/pr109409.c
+ e3305bd5445d5fff018b1f9ab0c905d3  gcc/testsuite/gcc.dg/pr109410-2.c
  8c5ddd68de1ed874eb52f91b7136909e  gcc/testsuite/gcc.dg/pr109410.c
  3399ef12e5625e30f72a928ee7afca74  gcc/testsuite/gcc.dg/pr109412.c
  86a351ab8a6255c1c7e39f673dcac916  gcc/testsuite/gcc.dg/pr109417.c
*************** a3d075dd1b96232581aa40c9e02294e1  gcc/te
*** 46999,47008 ****
--- 47044,47060 ----
  212cef6b05e312dbd1f377cf4e35ab99  gcc/testsuite/gcc.dg/pr120048.c
  9444444b4f048eadd4b6a2d7592f5fca  gcc/testsuite/gcc.dg/pr120480.c
  4a9d9632d82cf6c4f4f4acbad8ab018d  gcc/testsuite/gcc.dg/pr120638.c
+ f67888cb77a175aca5793c68c576187f  gcc/testsuite/gcc.dg/pr121104.c
  7032b52dc2dd1e6cab514293c2d0b276  gcc/testsuite/gcc.dg/pr121322.c
  3675df2622072bf0e5cccbf94e93a50f  gcc/testsuite/gcc.dg/pr122126_vextr.c
  b975ebfa27ac446e553bacbb75421590  gcc/testsuite/gcc.dg/pr122126_vset.c
+ 9fcb8913b9a18055b2a811284d59780e  gcc/testsuite/gcc.dg/pr123018.c
+ 3190514d319cec9f570a97df97be613b  gcc/testsuite/gcc.dg/pr123294-1.c
  5653206b785e83314fab2ad87cd4c262  gcc/testsuite/gcc.dg/pr123300.c
+ 3e218010f127737b8ec6efbf8cb00273  gcc/testsuite/gcc.dg/pr123431.c
+ 2e58c4d553f61913c629f0f4e16cef6c  gcc/testsuite/gcc.dg/pr123537.c
+ 5cd501fa005281d9c622810307478c79  gcc/testsuite/gcc.dg/pr123882.c
+ f402be89e4891c76c691c8144fe168f7  gcc/testsuite/gcc.dg/pr124138.c
  bc5ddfbbc46f4e0cce1629d1b58d3090  gcc/testsuite/gcc.dg/pr12603.c
  72a2fca76cb69617ae36bab93c7ec0d7  gcc/testsuite/gcc.dg/pr12625-1.c
  6f0ef61e5a12db5f11da839b2988c5e1  gcc/testsuite/gcc.dg/pr13519-1.c
*************** b465b03e50a5f0e6eb3f4fc778cae87c  gcc/te
*** 50047,50052 ****
--- 50099,50105 ----
  c1b87db2a9e9bd9b79aeb89e694fd159  gcc/testsuite/gcc.dg/torture/builtin-round-roundevenf128.c
  9e1b5d427790f2b01d5620a8b551a56a  gcc/testsuite/gcc.dg/torture/builtin-rounding-1.c
  e09f1e946db0ab1dc4d3acd77ea2b116  gcc/testsuite/gcc.dg/torture/builtin-self.c
+ c2dc4a738c80577d7e4b917e325e63aa  gcc/testsuite/gcc.dg/torture/builtin-shufflevector-pr123156.c
  fe01d458fb1e7b307aca4d27de62eff0  gcc/testsuite/gcc.dg/torture/builtin-sin-mpfr-1.c
  8d42dae4813a5c391a3481a72ac9c577  gcc/testsuite/gcc.dg/torture/builtin-sprintf.c
  23e1ea0bdd97005c1b4f8564d23f2b6a  gcc/testsuite/gcc.dg/torture/builtin-sqrt-cmp-1.c
*************** f5aad1409cbbb9e3039cb7da55080bc6  gcc/te
*** 50408,50413 ****
--- 50461,50467 ----
  0e0f17c50e8911b22c5b47e78696aba5  gcc/testsuite/gcc.dg/torture/pr109652.c
  2187f595796e8269bf267180b56e18a8  gcc/testsuite/gcc.dg/torture/pr109689.c
  c1a87948bd38764af99342569982d720  gcc/testsuite/gcc.dg/torture/pr109940.c
+ cfb24796cf777565d6ee8e3cc9faa0c1  gcc/testsuite/gcc.dg/torture/pr110043.c
  c68e0fca588779377278aa9e84380d07  gcc/testsuite/gcc.dg/torture/pr110176.c
  0c0edd5cb473e3baec880eabda166963  gcc/testsuite/gcc.dg/torture/pr110228.c
  37a4a130bd302ce957ac9e65b5949c60  gcc/testsuite/gcc.dg/torture/pr110243.c
*************** fd4292c0fcabd728ea0a1a6dbef87843  gcc/te
*** 50428,50433 ****
--- 50482,50488 ----
  b6cc54f5d02a9045680d8ba8b767f7b8  gcc/testsuite/gcc.dg/torture/pr110924.c
  4dd66a9e59fc17c29835a93cd50deb03  gcc/testsuite/gcc.dg/torture/pr110979.c
  fa1cc5eb743efae6b534499912897d96  gcc/testsuite/gcc.dg/torture/pr111000.c
+ 7423e38f878a6e56fb7be82847619a5b  gcc/testsuite/gcc.dg/torture/pr111036.c
  1dd35b4e28b7f72f0b12fbe3e5efb60a  gcc/testsuite/gcc.dg/torture/pr111048.c
  b3155d2832f93397879a73cc5d6f43b5  gcc/testsuite/gcc.dg/torture/pr111128.c
  a5aabe56aa9f2db146fb1185eabbfacb  gcc/testsuite/gcc.dg/torture/pr111137.c
*************** b9fe62163204f0f9de8d47547473ce6c  gcc/te
*** 50503,50508 ****
--- 50558,50564 ----
  55696235dc27ddb3d877bca135cf0b3e  gcc/testsuite/gcc.dg/torture/pr115641.c
  390c74e1cc81bd0e33c375ee049fb18b  gcc/testsuite/gcc.dg/torture/pr115701.c
  b9f75d112b5891dd319ae19e3779967f  gcc/testsuite/gcc.dg/torture/pr116057.c
+ d55420193b502affe4f12bc50e33bc30  gcc/testsuite/gcc.dg/torture/pr116296.c
  99a6c1e6285db8d08064cd8aaa300ddd  gcc/testsuite/gcc.dg/torture/pr116380.c
  78733925c03c093a5b9fb429087338ac  gcc/testsuite/gcc.dg/torture/pr116412-1.c
  798adbb1647443200e77c0fd667ada2f  gcc/testsuite/gcc.dg/torture/pr116454-1.c
*************** d29f5dbd5ce72ebe101793547b043347  gcc/te
*** 50531,50540 ****
--- 50587,50604 ----
  1336e40e86c7e304aee9bfcb04c162c0  gcc/testsuite/gcc.dg/torture/pr118953.c
  36f48d63adf7bb938767e81b1f86fcfa  gcc/testsuite/gcc.dg/torture/pr119133.c
  9c991c1fac1df6e51a434cc28f3d3d0d  gcc/testsuite/gcc.dg/torture/pr119417.c
+ 6286b6d7f9b6777b4b6d41fea79f96cb  gcc/testsuite/gcc.dg/torture/pr119532.c
+ e1b9ad351c56aebfaff790ff4002bf6e  gcc/testsuite/gcc.dg/torture/pr120182.c
+ e9469d38b4234580f9b2284233404b3c  gcc/testsuite/gcc.dg/torture/pr120341-1.c
+ aef01c040da8abd2a1e547ed6a07eb5a  gcc/testsuite/gcc.dg/torture/pr120341-2.c
  e6e17b2280f19928b738f46328c5dcf7  gcc/testsuite/gcc.dg/torture/pr120654.c
  e23df6b1422011499b9a500d2bf25add  gcc/testsuite/gcc.dg/torture/pr120944.c
  d41266e6594db1994e416e7a7353751e  gcc/testsuite/gcc.dg/torture/pr121370.c
+ 949a4a95ad545289488a204b883b05d6  gcc/testsuite/gcc.dg/torture/pr121844.c
  d4560440fd7b3647f8780537a59e4716  gcc/testsuite/gcc.dg/torture/pr122188.c
+ ea90221ab80b5c3561ffc7665d2a343a  gcc/testsuite/gcc.dg/torture/pr123645-1.c
+ c6c07c813f67e0f94f1352f2810dfcff  gcc/testsuite/gcc.dg/torture/pr123645-2.c
+ 50838f4736657229a26dc1b011faf8d3  gcc/testsuite/gcc.dg/torture/pr123864.c
  406979b51eba3578f721938e7d4189da  gcc/testsuite/gcc.dg/torture/pr123887.c
  ded4330fd1cd52783bd9b1761db038ef  gcc/testsuite/gcc.dg/torture/pr16104-1.c
  fc265ee05da2f29f0e92804661cd1f28  gcc/testsuite/gcc.dg/torture/pr17526.c
*************** d2e1860fa8199fa9cae01ffe45caa0c0  gcc/te
*** 51644,51650 ****
  d870c565ecc3624fb4fbcb1510c36484  gcc/testsuite/gcc.dg/torture/tree-loop-1.c
  6970cdcc7bdfd578411b169b161f82cf  gcc/testsuite/gcc.dg/torture/type-generic-1.c
  bd588e9316f28797985023db337c730b  gcc/testsuite/gcc.dg/torture/va-arg-25.c
! 5c82e599e9517c158609d3871bb6ab3f  gcc/testsuite/gcc.dg/torture/vec-cvt-1.c
  70a7b1e7d786a67e8b07f4d2d0baba21  gcc/testsuite/gcc.dg/torture/vect-bool-1.c
  deba47b8439d01c869eba7f288c1e8d7  gcc/testsuite/gcc.dg/torture/vector-1.c
  976d72752026efa82ba29f7e5ec18661  gcc/testsuite/gcc.dg/torture/vector-2.c
--- 51708,51714 ----
  d870c565ecc3624fb4fbcb1510c36484  gcc/testsuite/gcc.dg/torture/tree-loop-1.c
  6970cdcc7bdfd578411b169b161f82cf  gcc/testsuite/gcc.dg/torture/type-generic-1.c
  bd588e9316f28797985023db337c730b  gcc/testsuite/gcc.dg/torture/va-arg-25.c
! a2fa4a55ce8fbbb549f006c693524abb  gcc/testsuite/gcc.dg/torture/vec-cvt-1.c
  70a7b1e7d786a67e8b07f4d2d0baba21  gcc/testsuite/gcc.dg/torture/vect-bool-1.c
  deba47b8439d01c869eba7f288c1e8d7  gcc/testsuite/gcc.dg/torture/vector-1.c
  976d72752026efa82ba29f7e5ec18661  gcc/testsuite/gcc.dg/torture/vector-2.c
*************** e8a9b3f3f510ee57f71acab27a6b2cb0  gcc/te
*** 56326,56331 ****
--- 56390,56396 ----
  39723945c19c26c57adf66d889eabb98  gcc/testsuite/gcc.dg/vect/vect-peel-4.c
  e7cd5788f09670057ebf36ffc7961d4b  gcc/testsuite/gcc.dg/vect/vect-pr111779.c
  94bda84899e2683692deba382167aa8e  gcc/testsuite/gcc.dg/vect/vect-pr114375.c
+ f4b106f1a647b041f524318378f476f5  gcc/testsuite/gcc.dg/vect/vect-pr122793.c
  4d57df9e3b3522c9f1a6707c05f1da45  gcc/testsuite/gcc.dg/vect/vect-pr69848.c
  3a3a316ff2f2496494ecb0bd77d61aad  gcc/testsuite/gcc.dg/vect/vect-pre-interact.c
  bcf8d4d938304b75cfe5af73ef6b191b  gcc/testsuite/gcc.dg/vect/vect-profile-1.c
*************** e721f980e1e7a9648d77300c2f6ea0e5  gcc/te
*** 58364,58369 ****
--- 58429,58459 ----
  d28ce23985b773a211ff26743e9e661d  gcc/testsuite/gcc.target/aarch64/options_set_8.c
  55ae452185bb0bb101f614fc4fa21cd9  gcc/testsuite/gcc.target/aarch64/options_set_9.c
  2ba9e0951fadcf5ce5f2eab080c09a68  gcc/testsuite/gcc.target/aarch64/orr_imm_1.c
+ 5e0097785f095780e3c0a7ce682ddc69  gcc/testsuite/gcc.target/aarch64/pch/aarch64-pch.exp
+ a6744e260d36942daafb6b2fcf3e4e19  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.c
+ 7b90a6e9d561b2c19e6c612960e8ef70  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.hs
+ 5a5b4234700c182421280262006aff02  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.c
+ 7b90a6e9d561b2c19e6c612960e8ef70  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.hs
+ 4478fcdd1aefee96e33faf1c4b60215d  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.c
+ 97e98018fd0a42839432bb5716c601bb  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.hs
+ 4775f635f85fab86b3e43edddb4d3731  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.c
+ 97e98018fd0a42839432bb5716c601bb  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs
+ c1cc84ca237825286acc5b291c488ad3  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.c
+ eea843b45fced370cf40e4fd8434b286  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.hs
+ 66efb2495a5e78783e0592acaf913f90  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.c
+ eea843b45fced370cf40e4fd8434b286  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.hs
+ 0b52c4a1f6b3f91ec85ce6e2ce5d7f99  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c
+ c0b11c30b275c5fd2113fe2a4ecac4af  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs
+ 48d3f71076eb2c9a167ad14ae32a23de  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c
+ c0b11c30b275c5fd2113fe2a4ecac4af  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs
+ b2bd58eb682ff2375e24885036453e0e  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.c
+ 408bbbd938ffecc7c0bf0e2b87b2864b  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.hs
+ 6b00da17b87978f4062502ae983d70b2  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.c
+ 408bbbd938ffecc7c0bf0e2b87b2864b  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.hs
+ 957c9a141aeddbfd748594553077d14e  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.c
+ 58d8436df4c6af25396ff8f2e09b91c2  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.hs
+ 8e6da171896c5c3446074fa59d4c2cd4  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.c
+ 58d8436df4c6af25396ff8f2e09b91c2  gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.hs
  2affd5586d9d9534731788d83a2a3904  gcc/testsuite/gcc.target/aarch64/pcs_attribute-2.c
  b0a892934f70ddbece003356d1462148  gcc/testsuite/gcc.target/aarch64/pcs_attribute-3.c
  9fe8a7ffd0c54ed06b5690a31efb7b70  gcc/testsuite/gcc.target/aarch64/pcs_attribute.c
*************** e95d7302a79bebe0c38e93d641a753d8  gcc/te
*** 58452,58457 ****
--- 58542,58549 ----
  aad77ff8d57a3f0e3712d2f32526716c  gcc/testsuite/gcc.target/aarch64/pr116258.c
  b9ca6f13a261db1602a13a0c96147059  gcc/testsuite/gcc.target/aarch64/pr117186.c
  83ac293146b05a62ec4a19e52751ebd1  gcc/testsuite/gcc.target/aarch64/pr121253.c
+ 95306727ea8db0e2fdb8e199f754c587  gcc/testsuite/gcc.target/aarch64/pr123285-1.c
+ 3525a5777032197cdd1e39b2aad94c29  gcc/testsuite/gcc.target/aarch64/pr123294-1.c
  085f7e2087fb0cf8d5d9a44259bb616c  gcc/testsuite/gcc.target/aarch64/pr123548.c
  9adb42733d9f5e2b1f2dbb364b62100d  gcc/testsuite/gcc.target/aarch64/pr37780_1.c
  e668fb9e0d32efadd671247467dc90db  gcc/testsuite/gcc.target/aarch64/pr58460.c
*************** db7ec863bbc5f42e3eaaf7d41c078f60  gcc/te
*** 59170,59187 ****
  954127f6d3b08028a0dbbecea8abaea4  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za32.c
  6c42cd7108db85285989b01cdfe0ceab  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za64.c
  f73c190603e33d11562ee018328fb06d  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za8.c
! 51fe1ff100a97529ff50e1cdfa4f4df5  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c
! 05f8708c4c12f406de2089cf37bf90af  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c
! 4cfb225b1d4aa772e7e240fc0752a577  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c
! 6158db047e21dfef0f794eaaa1d81934  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c
! f8dada53e59219879e1222d2fe3ab1ae  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c
! 996bbb92a143273e76c7e00eb7af251b  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c
! d7f554a5c062ed5854bee2de13199617  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c
! 7f47048704253b30608855f28c703ff5  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c
! ea46a7175ec34a07eae85e2422bb2782  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c
! 7e0d11228c3bd92d57df156977acba45  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c
! 9c1e58d46a866546b3444e3a8caca5f3  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c
! 6c9a91485037b596556ccd3de1fdf852  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c
  92f3366342aae6b2ec7f6d53be3fe1a1  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za128.c
  4a2c37b58b46cda8f18baebab50b1238  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za16.c
  af7a839b3b15a2c2cfbbc10272a15951  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za32.c
--- 59262,59279 ----
  954127f6d3b08028a0dbbecea8abaea4  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za32.c
  6c42cd7108db85285989b01cdfe0ceab  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za64.c
  f73c190603e33d11562ee018328fb06d  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/read_ver_za8.c
! cab14647799c145eb877d86becdbacfc  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c
! 30ed932fb9d9a687e7e2b65a998e9de8  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c
! 50c1f6d858b586e8791a0dee82043b43  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c
! bfbee9fc67839d48df53bde1401a75f8  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c
! 320167fd7536193dc674e389b27bbc9b  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c
! 72a3aa6262fe5d90fb1675b40ce99776  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c
! d822eca59a0d64cccefb1d3486c36ef5  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c
! 54a1ebcd3bcf46d8a41ad5b4763c2a62  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c
! 9aa206ccedf54b882540d7b571892a1d  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c
! 850baad12706cd78cc9f4f60ad6ed7b6  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c
! 91a5c10676d07246df2e9833d992bba6  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c
! 07a75458fb6f434428bfc72b8a80f1ac  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c
  92f3366342aae6b2ec7f6d53be3fe1a1  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za128.c
  4a2c37b58b46cda8f18baebab50b1238  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za16.c
  af7a839b3b15a2c2cfbbc10272a15951  gcc/testsuite/gcc.target/aarch64/sme/acle-asm/st1_hor_vnum_za32.c
*************** fdf31615d4c23a6cda30ff2ff1493fcd  gcc/te
*** 59290,59296 ****
  5a4e5012170fd731aad53e8a5e8ca2b0  gcc/testsuite/gcc.target/aarch64/sme/sibcall_7_ts.c
  c24e7b6e6657e7a0bc6f6c3324ca0e55  gcc/testsuite/gcc.target/aarch64/sme/sibcall_8.c
  b7e9ea35db65f1f9ab0129b6787b4aa1  gcc/testsuite/gcc.target/aarch64/sme/sibcall_9.c
! 474e35480cd904009962a6b25b99f50d  gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c
  197d088cac6259805e5e00b6ddfcd879  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c
  9ce9b56fcc81eccd70d155b7ba6b7628  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_2.c
  fcf99b5d14963d6dc0b0c9a728fc8ac4  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_3.c
--- 59382,59388 ----
  5a4e5012170fd731aad53e8a5e8ca2b0  gcc/testsuite/gcc.target/aarch64/sme/sibcall_7_ts.c
  c24e7b6e6657e7a0bc6f6c3324ca0e55  gcc/testsuite/gcc.target/aarch64/sme/sibcall_8.c
  b7e9ea35db65f1f9ab0129b6787b4aa1  gcc/testsuite/gcc.target/aarch64/sme/sibcall_9.c
! 4d9577c81fc117dbb22c930c6def7e07  gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c
  197d088cac6259805e5e00b6ddfcd879  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c
  9ce9b56fcc81eccd70d155b7ba6b7628  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_2.c
  fcf99b5d14963d6dc0b0c9a728fc8ac4  gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_3.c
*************** f6df41d6d0c00a657a60617993e7fd37  gcc/te
*** 64142,64147 ****
--- 64234,64240 ----
  f5f6f291e9c1c848a46c8ef91ca99f58  gcc/testsuite/gcc.target/aarch64/sve2/pr107830-2.c
  429b387819fe31e459436020f966ae50  gcc/testsuite/gcc.target/aarch64/sve2/pr109636_1.c
  b2d92d06e51698908b628bbf67a8336b  gcc/testsuite/gcc.target/aarch64/sve2/pr121599.c
+ a1e717c0cbeba75388ce3e7b3922fe64  gcc/testsuite/gcc.target/aarch64/sve2/pr123775.c
  3ddfd16fcbf89890fd9785fec8f0c081  gcc/testsuite/gcc.target/aarch64/sve2/shracc_1.c
  8cd4d6e010de57b57d5d8fb325fa79bb  gcc/testsuite/gcc.target/aarch64/sve2/unpred_mul_1.c
  253ea1793d85a6047e9fc6e69f5a62af  gcc/testsuite/gcc.target/aarch64/sve2/whilerw_1.c
*************** ce0cad9f4c5da96b0d07d2029604250c  gcc/te
*** 71535,71540 ****
--- 71628,71636 ----
  1d9114b974ef8241068b2ece25e00b2e  gcc/testsuite/gcc.target/i386/avx512f-pr103750-2.c
  fa2c17673f6ee0e3a3910298a93d723d  gcc/testsuite/gcc.target/i386/avx512f-pr114157.c
  9a6936f1815277f15801196159007f44  gcc/testsuite/gcc.target/i386/avx512f-pr114566.c
+ f20f5c3dc20ef0309b2a3dc9fdde483e  gcc/testsuite/gcc.target/i386/avx512f-pr124138-1.c
+ efe0a21951178063e3b3f10cf90f0adb  gcc/testsuite/gcc.target/i386/avx512f-pr124138-2.c
+ 1f47d4671c0dd3d13b733838385048ed  gcc/testsuite/gcc.target/i386/avx512f-pr124315.c
  88877c518076ecdec1dba128743ad627  gcc/testsuite/gcc.target/i386/avx512f-pr57233.c
  0272e0fc54cb34ee03db4b0027dbec3d  gcc/testsuite/gcc.target/i386/avx512f-pr63594-1.c
  381f53de01f1e9893e6903d9fac40b87  gcc/testsuite/gcc.target/i386/avx512f-pr63594-2.c
*************** b27abeb08b864284971b1aba8ced6b22  gcc/te
*** 72410,72415 ****
--- 72506,72512 ----
  a0059c72ee5f8a3b553da9a85e2e8686  gcc/testsuite/gcc.target/i386/avx512fp16-pr101846.c
  2e40da5c6cc066c5c3fc6534287c3bb1  gcc/testsuite/gcc.target/i386/avx512fp16-pr103750-1.c
  ddf42476c9bd487716414f58d3c10527  gcc/testsuite/gcc.target/i386/avx512fp16-pr103750-2.c
+ c0aba89383e573771d0b9ccacbca61eb  gcc/testsuite/gcc.target/i386/avx512fp16-pr124335.c
  b5d5082a6d865b8b24dbefc908fafb2d  gcc/testsuite/gcc.target/i386/avx512fp16-pr94680.c
  0be682c7ab6c675fa46f84d592d76785  gcc/testsuite/gcc.target/i386/avx512fp16-recip-1.c
  38a807ac8fade227ea34604df002fb5f  gcc/testsuite/gcc.target/i386/avx512fp16-recip-2.c
*************** dfd6d048c4cc790cbf85d5080d1b5a6e  gcc/te
*** 73789,73794 ****
--- 73886,73892 ----
  e420c76b5d51167be532aea06e242b7d  gcc/testsuite/gcc.target/i386/cet-notrack-icf-2.c
  ecf5960debbf0be72bff47ede8c8800e  gcc/testsuite/gcc.target/i386/cet-notrack-icf-3.c
  8f1538b43a15c0827f66b6f4352ef5fb  gcc/testsuite/gcc.target/i386/cet-notrack-icf-4.c
+ c62171467fd6ad70fac732b022943ed4  gcc/testsuite/gcc.target/i386/cet-pr124366.c
  b8e1eda2f252f129a90e54617fa39500  gcc/testsuite/gcc.target/i386/cet-property-1.c
  f03688bba56369ec92f324db56599b3d  gcc/testsuite/gcc.target/i386/cet-property-2.c
  a4dff4664eff59fc1d1d6ac49e52a6b6  gcc/testsuite/gcc.target/i386/cet-rdssp-1.c
*************** f1728b5e83b3ce3c8eaebf907d52fe30  gcc/te
*** 74304,74309 ****
--- 74402,74408 ----
  c6f6aaff47d064fbceed4cfbcb5b9279  gcc/testsuite/gcc.target/i386/keylocker-encodekey128.c
  a468c392fd8838d0198cfb8b367d4b6d  gcc/testsuite/gcc.target/i386/keylocker-encodekey256.c
  78393ec91600382e98db57e560deaea9  gcc/testsuite/gcc.target/i386/keylocker-loadiwkey.c
+ 75eec9ddfedd16dad1c34342d4bb3a1a  gcc/testsuite/gcc.target/i386/keylocker-pr123217.c
  6a61f297f5746de86187140f048ab655  gcc/testsuite/gcc.target/i386/l_fma_1.h
  c598c1d2a127be1189b3dfe020919429  gcc/testsuite/gcc.target/i386/l_fma_2.h
  8aa60b44b83369f838965e6e8e99c4e7  gcc/testsuite/gcc.target/i386/l_fma_3.h
*************** d4ebe08b4cb963582547d8bb5712e712  gcc/te
*** 75333,75338 ****
--- 75432,75438 ----
  dc0ac30205a49a37f80c833e996ed4d2  gcc/testsuite/gcc.target/i386/pr123121.c
  f99f88a6e994ad6e55e065e41bc58f8f  gcc/testsuite/gcc.target/i386/pr12329.c
  fd0c95fcad577a49c3553f21604c3b61  gcc/testsuite/gcc.target/i386/pr123484.c
+ 0871390dda9d3f14f2d642eb1d5aa640  gcc/testsuite/gcc.target/i386/pr124056.c
  8951a1fa31f2d45ef9eacfff6a733f77  gcc/testsuite/gcc.target/i386/pr13366.c
  9a752a4b3b77930d91d3c8b0c8897b90  gcc/testsuite/gcc.target/i386/pr13685.c
  31ead0ee84b382ba03e3561931bc6e40  gcc/testsuite/gcc.target/i386/pr14289-1.c
*************** b3482aa074e044edfb2a4c72e5c1d085  gcc/te
*** 78105,78110 ****
--- 78205,78211 ----
  133d7eb15ead287c2ef11a8162780801  gcc/testsuite/gcc.target/i386/unroll-1.c
  c30812b4c7eb367ec8e5f4aba349d66b  gcc/testsuite/gcc.target/i386/user_msr-1.c
  d817f6a5d58eae58bff8e4083f7945db  gcc/testsuite/gcc.target/i386/user_msr-2.c
+ aa50202a413f80a35396415eec316d08  gcc/testsuite/gcc.target/i386/user_msr-pr123217.c
  aafb0010ebceff249236af3aa1f22e2b  gcc/testsuite/gcc.target/i386/vararg-1.c
  3b8acabb2f18b3fd13f3871729bac23f  gcc/testsuite/gcc.target/i386/vararg-10.c
  2869209769b52916ee551938b0c572f1  gcc/testsuite/gcc.target/i386/vararg-2.c
*************** d4b65efea892e3a54acdb92a298fc582  gcc/te
*** 98731,98736 ****
--- 98832,98838 ----
  0677f2dac82b1b95cde8edf69efd60a9  gcc/testsuite/gfortran.dg/pr106918.f90
  09719e2d59fe58682ef7a737cdf01620  gcc/testsuite/gfortran.dg/pr106934.f90
  e1ccca85dc432ca649742c05520157d9  gcc/testsuite/gfortran.dg/pr106945.f90
+ 1b7098a64b99eb214b607f599b3eb32f  gcc/testsuite/gfortran.dg/pr106946.f90
  a9c6ba4d14cec93cd2edec54fda6a916  gcc/testsuite/gfortran.dg/pr106985.f90
  eb96b826eeaf84f157c8635706721d40  gcc/testsuite/gfortran.dg/pr106986.f90
  054c58cb24c0bee4ea0b5fcf3cdbf86d  gcc/testsuite/gfortran.dg/pr106999.f90
*************** dcb4fe6d926f672dd118a4a8ec9b6625  gcc/te
*** 98816,98821 ****
--- 98918,98925 ----
  4787146fc7e8109511f0d22d056e2127  gcc/testsuite/gfortran.dg/pr120191_2.f90
  05457962d41eef6a41a3de889144d78a  gcc/testsuite/gfortran.dg/pr120191_3.f90
  b1cb2c9a52574c2df5df49bd13ee7e5d  gcc/testsuite/gfortran.dg/pr120196.f90
+ 9aa1b21c93a3838e52245be748b9b301  gcc/testsuite/gfortran.dg/pr124161.f90
+ 5bfaeea8d13a5035cf46aaab485c2803  gcc/testsuite/gfortran.dg/pr124450.f90
  984f8307f36d56a0b48b5acce2dd5eb5  gcc/testsuite/gfortran.dg/pr12884.f
  64075248b9d1bffd6f380bb4e2a6eae0  gcc/testsuite/gfortran.dg/pr15129.f90
  e9cbd51db4e16292fc5dd1fead2e5a49  gcc/testsuite/gfortran.dg/pr15140.f90
*************** aa943f2bec85bb461999d2cb2adfc73a  gcc/te
*** 100402,100407 ****
--- 100506,100512 ----
  701cab3628ee98dbcccc1d64e72d4ed6  gcc/testsuite/gfortran.dg/submodule_31.f08
  2d0d1435c8fc29f13f4d8d923dcdddc5  gcc/testsuite/gfortran.dg/submodule_32.f08
  e87560f12976c9545d8b7ae479b2618c  gcc/testsuite/gfortran.dg/submodule_33.f08
+ ce6def9eadc42b1a4cd9adf6d9fe55ee  gcc/testsuite/gfortran.dg/submodule_34.f90
  68f9f70d888318a31160ba732171726f  gcc/testsuite/gfortran.dg/submodule_4.f08
  d470cf2de70b478f82f67f0729c09b76  gcc/testsuite/gfortran.dg/submodule_5.f08
  125419a41557152ac79de8af903ef20a  gcc/testsuite/gfortran.dg/submodule_6.f08
*************** e3172873ebcacc53ed7031ec75e9c916  gcc/te
*** 100930,100935 ****
--- 101035,101041 ----
  943be5f26b034cab4a8d80ed72f35e29  gcc/testsuite/gfortran.dg/vect/vect-do-concurrent-1.f90
  f153623f2b5e969448f7c1a751dd783d  gcc/testsuite/gfortran.dg/vect/vect-early-break_1-pr113808.f90
  51d61a0ffbe2e176d92badb55eaf6889  gcc/testsuite/gfortran.dg/vect/vect-gems.f90
+ a28c6b7265042047039bb29c34ef4fcd  gcc/testsuite/gfortran.dg/vect/vect-pr123741.f90
  3c3819470222c6ceaf097c5083095c91  gcc/testsuite/gfortran.dg/vect/vect.exp
  5020f9773f3c21b86ac1fe3e513943a0  gcc/testsuite/gfortran.dg/vector_subscript_1.f90
  0833fb55cdacc085a113140aa1d94458  gcc/testsuite/gfortran.dg/vector_subscript_2.f90
*************** d090daa844578953fae325419d401322  gcc/tr
*** 110464,110470 ****
  de9026b3ddfb63f45eb7de90c07c152a  gcc/tree-hasher.h
  b53b0e038a499606b2d119c62b6fc3c8  gcc/tree-if-conv.cc
  5d6eb83f64960ba3d0dc2c1253389f3b  gcc/tree-if-conv.h
! 58ad25727ddfa69ee0a77ad38a2ec95f  gcc/tree-inline.cc
  93e3a89424169fea13caf4b3f341effe  gcc/tree-inline.h
  14fbc08d8db9b07d391efa6716aea4d8  gcc/tree-into-ssa.cc
  75ead7abe52cb77f14845ac9c55bbc29  gcc/tree-into-ssa.h
--- 110570,110576 ----
  de9026b3ddfb63f45eb7de90c07c152a  gcc/tree-hasher.h
  b53b0e038a499606b2d119c62b6fc3c8  gcc/tree-if-conv.cc
  5d6eb83f64960ba3d0dc2c1253389f3b  gcc/tree-if-conv.h
! 93acaa36c86aae712fac8519275bc59c  gcc/tree-inline.cc
  93e3a89424169fea13caf4b3f341effe  gcc/tree-inline.h
  14fbc08d8db9b07d391efa6716aea4d8  gcc/tree-into-ssa.cc
  75ead7abe52cb77f14845ac9c55bbc29  gcc/tree-into-ssa.h
*************** f22bed82b0f681104f231aef4c6512db  gcc/tr
*** 110476,110482 ****
  538752b75f76de52491ebec1ec0878a9  gcc/tree-nested.cc
  d4019e9903f5660319d05b837b0b8f24  gcc/tree-nested.h
  1fd1f70cb44dc7cff617b5352e49d272  gcc/tree-nrv.cc
! 4e1a834692fbc4d0884ad527115f793b  gcc/tree-object-size.cc
  c2992dcc01282d89c18bbe448c0a5572  gcc/tree-object-size.h
  06cc5db04462c5845bcd144eee6cd921  gcc/tree-outof-ssa.cc
  7fae35e1bf1391a4ae03d9bed84ef456  gcc/tree-outof-ssa.h
--- 110582,110588 ----
  538752b75f76de52491ebec1ec0878a9  gcc/tree-nested.cc
  d4019e9903f5660319d05b837b0b8f24  gcc/tree-nested.h
  1fd1f70cb44dc7cff617b5352e49d272  gcc/tree-nrv.cc
! 7e4c38884453b292e04e9eb0460ad570  gcc/tree-object-size.cc
  c2992dcc01282d89c18bbe448c0a5572  gcc/tree-object-size.h
  06cc5db04462c5845bcd144eee6cd921  gcc/tree-outof-ssa.cc
  7fae35e1bf1391a4ae03d9bed84ef456  gcc/tree-outof-ssa.h
*************** edb2001f6e21bdaecd29fcf77bb1fd0d  gcc/tr
*** 110484,110490 ****
  b7cafcfc01cd27516d5788a64e7dc058  gcc/tree-parloops.h
  ac7a115cd070672d90d6479104a15e65  gcc/tree-pass.h
  789c6299f2f8d026710802845f17d9d2  gcc/tree-phinodes.cc
! 2bdb8225bb6265ab9bd1b0018b497447  gcc/tree-phinodes.h
  91340bc20d54ccebd0ab72770a2657c1  gcc/tree-predcom.cc
  1dd8519646252527916595bce0833af2  gcc/tree-pretty-print.cc
  0f63e75929b34bde93e034c9b1e1430f  gcc/tree-pretty-print.h
--- 110590,110596 ----
  b7cafcfc01cd27516d5788a64e7dc058  gcc/tree-parloops.h
  ac7a115cd070672d90d6479104a15e65  gcc/tree-pass.h
  789c6299f2f8d026710802845f17d9d2  gcc/tree-phinodes.cc
! 8c8f7252232dc7a1e7924aae8e6851de  gcc/tree-phinodes.h
  91340bc20d54ccebd0ab72770a2657c1  gcc/tree-predcom.cc
  1dd8519646252527916595bce0833af2  gcc/tree-pretty-print.cc
  0f63e75929b34bde93e034c9b1e1430f  gcc/tree-pretty-print.h
*************** eb50801cc8f65531f98214d98abdf0f7  gcc/tr
*** 110514,110522 ****
  c3b1a9515666618e9d55c8fd53f67e36  gcc/tree-ssa-live.cc
  bc4d2e809f144d9e2d71f49c6ac1005c  gcc/tree-ssa-live.h
  62caed8ee6b65f064d889ab923fa4b37  gcc/tree-ssa-loop-ch.cc
! 55ebb785bb6539266182eec301fd8a88  gcc/tree-ssa-loop-im.cc
  d13427e991e77725e732629fb007437a  gcc/tree-ssa-loop-ivcanon.cc
! 2aeb02dac76877eb80c3263b6ffb1b93  gcc/tree-ssa-loop-ivopts.cc
  66d2704d1626bcfc35f8aa458ee6a1a1  gcc/tree-ssa-loop-ivopts.h
  468cc85e2332333521f69f26b7dd5b27  gcc/tree-ssa-loop-manip.cc
  66557039c7e4f18ad92b155b29c79d30  gcc/tree-ssa-loop-manip.h
--- 110620,110628 ----
  c3b1a9515666618e9d55c8fd53f67e36  gcc/tree-ssa-live.cc
  bc4d2e809f144d9e2d71f49c6ac1005c  gcc/tree-ssa-live.h
  62caed8ee6b65f064d889ab923fa4b37  gcc/tree-ssa-loop-ch.cc
! d45ee5ac066d79f81f80cb45b2ec54cc  gcc/tree-ssa-loop-im.cc
  d13427e991e77725e732629fb007437a  gcc/tree-ssa-loop-ivcanon.cc
! 92cb1dbf4e717a357529b226854a825d  gcc/tree-ssa-loop-ivopts.cc
  66d2704d1626bcfc35f8aa458ee6a1a1  gcc/tree-ssa-loop-ivopts.h
  468cc85e2332333521f69f26b7dd5b27  gcc/tree-ssa-loop-manip.cc
  66557039c7e4f18ad92b155b29c79d30  gcc/tree-ssa-loop-manip.h
*************** cdc0524cbed8b79b9fa33724590ce9c1  gcc/tr
*** 110524,110549 ****
  ec5f7abc3695bde1fbe2a8b2a7e53167  gcc/tree-ssa-loop-niter.h
  1227f24f2f18334f57649a99ceeda666  gcc/tree-ssa-loop-prefetch.cc
  acc4aff264e3f0e53b0b258a37163e6d  gcc/tree-ssa-loop-split.cc
! 5b01b125f53e8b950350c0cd3cb6efd2  gcc/tree-ssa-loop-unswitch.cc
  55ae2e77440663854644a5c55e444332  gcc/tree-ssa-loop.cc
  ee1eafa40cd3c1d5777881a232cc123a  gcc/tree-ssa-loop.h
! 5a5e7a9ecb0a9080dc0920f6467cd60d  gcc/tree-ssa-math-opts.cc
  a2aa940aaf235d855f0a29cd853cd161  gcc/tree-ssa-math-opts.h
  09cc12675477c15773525c18f05c8887  gcc/tree-ssa-operands.cc
  dec9c71d0caf6496e2b48ee295c14dd8  gcc/tree-ssa-operands.h
! f813b293443b3e09f359ff45c3db38d8  gcc/tree-ssa-phiopt.cc
  a5f34e36dee1bef8e82d05d782b00345  gcc/tree-ssa-phiprop.cc
! 964a11d26bf8f0919a9091af08106449  gcc/tree-ssa-pre.cc
  e4c8316aff1b14ad8dee560bf8b76a15  gcc/tree-ssa-propagate.cc
  de3b298cc003003bf8914ebfcdf63f2b  gcc/tree-ssa-propagate.h
! eaa57a5dab2e797feeaaf1676a886185  gcc/tree-ssa-reassoc.cc
  ea6d5ea2f3442b7c3f3a8b3356e827ca  gcc/tree-ssa-reassoc.h
  bc9dfcfd3ace745977bff39c9f652d8b  gcc/tree-ssa-sccvn.cc
  545f646c7c717bb603b5eb8e283f414d  gcc/tree-ssa-sccvn.h
  46d17810ce8ff6e8a1eebf89645eb941  gcc/tree-ssa-scopedtables.cc
  1da39bc41633a7721b894ea76af3f6ca  gcc/tree-ssa-scopedtables.h
  5fd4dbd0469a4e81b1036fc3449f791d  gcc/tree-ssa-sink.cc
! b0c107ee22f3f20de79434e3ca50cf00  gcc/tree-ssa-strlen.cc
  99d54f633ea0ea6b7eb29b8647a88ae6  gcc/tree-ssa-strlen.h
  6246519dfe31c0aa958072ba15762528  gcc/tree-ssa-structalias.cc
  1a410ed280c0cf57c44dd25b73c91998  gcc/tree-ssa-tail-merge.cc
--- 110630,110655 ----
  ec5f7abc3695bde1fbe2a8b2a7e53167  gcc/tree-ssa-loop-niter.h
  1227f24f2f18334f57649a99ceeda666  gcc/tree-ssa-loop-prefetch.cc
  acc4aff264e3f0e53b0b258a37163e6d  gcc/tree-ssa-loop-split.cc
! bee79c7c759cbbdc165ca0c368472bf4  gcc/tree-ssa-loop-unswitch.cc
  55ae2e77440663854644a5c55e444332  gcc/tree-ssa-loop.cc
  ee1eafa40cd3c1d5777881a232cc123a  gcc/tree-ssa-loop.h
! 61408a53e36f6162f8a7573fcd2cc6d6  gcc/tree-ssa-math-opts.cc
  a2aa940aaf235d855f0a29cd853cd161  gcc/tree-ssa-math-opts.h
  09cc12675477c15773525c18f05c8887  gcc/tree-ssa-operands.cc
  dec9c71d0caf6496e2b48ee295c14dd8  gcc/tree-ssa-operands.h
! 75d27eb3c390f876dcee8b973228dd74  gcc/tree-ssa-phiopt.cc
  a5f34e36dee1bef8e82d05d782b00345  gcc/tree-ssa-phiprop.cc
! 712bdf5b6accda01db046bba03b8542b  gcc/tree-ssa-pre.cc
  e4c8316aff1b14ad8dee560bf8b76a15  gcc/tree-ssa-propagate.cc
  de3b298cc003003bf8914ebfcdf63f2b  gcc/tree-ssa-propagate.h
! 712f55d4f6e09cb7839ec9cc689b46bb  gcc/tree-ssa-reassoc.cc
  ea6d5ea2f3442b7c3f3a8b3356e827ca  gcc/tree-ssa-reassoc.h
  bc9dfcfd3ace745977bff39c9f652d8b  gcc/tree-ssa-sccvn.cc
  545f646c7c717bb603b5eb8e283f414d  gcc/tree-ssa-sccvn.h
  46d17810ce8ff6e8a1eebf89645eb941  gcc/tree-ssa-scopedtables.cc
  1da39bc41633a7721b894ea76af3f6ca  gcc/tree-ssa-scopedtables.h
  5fd4dbd0469a4e81b1036fc3449f791d  gcc/tree-ssa-sink.cc
! 384c25a58f1e0b2a569e8a934e2236a5  gcc/tree-ssa-strlen.cc
  99d54f633ea0ea6b7eb29b8647a88ae6  gcc/tree-ssa-strlen.h
  6246519dfe31c0aa958072ba15762528  gcc/tree-ssa-structalias.cc
  1a410ed280c0cf57c44dd25b73c91998  gcc/tree-ssa-tail-merge.cc
*************** c46ee145b917a2cc00062d238597ff66  gcc/tr
*** 110566,110589 ****
  5131cc364eb717c3d0a755443d198f1b  gcc/tree-streamer-out.cc
  7cda0dde16b638ec52a280efc5c4eb85  gcc/tree-streamer.cc
  6b542393d2cc1446541757996166c746  gcc/tree-streamer.h
! 7c14f981c2baa34566ab0be620ac617a  gcc/tree-switch-conversion.cc
  e52dd1666766e097473010a395e05b72  gcc/tree-switch-conversion.h
! ff0ac55bde82f5e21ae65ccdbf2e13f2  gcc/tree-tailcall.cc
  7c2d603160e6cc66d6f331c03cbd63e4  gcc/tree-vect-data-refs.cc
  baa0d7c2a79888b8d490ef9ea9bf876b  gcc/tree-vect-generic.cc
  a5c65c0281a1b6faf6652682936ae74e  gcc/tree-vect-loop-manip.cc
! 8ebc6d25416138cfe7731f41f4152cbf  gcc/tree-vect-loop.cc
  43f6f3fee20eb715fd451bf19e9bfd4c  gcc/tree-vect-patterns.cc
  28617cab8a239cf14b40a71d5bbc169c  gcc/tree-vect-slp-patterns.cc
! 62afed2a3920f38b0d29565df04b36c8  gcc/tree-vect-slp.cc
! 60a84350d394e7a4fc04ea46eb5c240e  gcc/tree-vect-stmts.cc
  795c5280c71f566f4b3e8c7fdcc3b609  gcc/tree-vector-builder.cc
  250ce9e7ca93bb776afda377af2c190d  gcc/tree-vector-builder.h
  c5a03f7f18d4c4b5f0a74529e044ddfe  gcc/tree-vectorizer.cc
  e96b2bb5c70a7f94b0863d7050f1677b  gcc/tree-vectorizer.h
  e9db72a7b615c73d68d28097a0696ef0  gcc/tree-vrp.cc
  01b6633a647a8aeca196fc6d0021e4cf  gcc/tree-vrp.h
! 4f0447483aae0976f2fd51d889e2ff25  gcc/tree.cc
  110668da7614fc11045af4d047706a7a  gcc/tree.def
  bd976d539f03b9f6fd9501087f38cbec  gcc/tree.h
  b157222cc904eb63d41484795109c2ca  gcc/treestruct.def
--- 110672,110695 ----
  5131cc364eb717c3d0a755443d198f1b  gcc/tree-streamer-out.cc
  7cda0dde16b638ec52a280efc5c4eb85  gcc/tree-streamer.cc
  6b542393d2cc1446541757996166c746  gcc/tree-streamer.h
! 59a4ad03a3fb274d649776496011db0d  gcc/tree-switch-conversion.cc
  e52dd1666766e097473010a395e05b72  gcc/tree-switch-conversion.h
! 03789f646e5ebafcb6d1b5d6976fb0db  gcc/tree-tailcall.cc
  7c2d603160e6cc66d6f331c03cbd63e4  gcc/tree-vect-data-refs.cc
  baa0d7c2a79888b8d490ef9ea9bf876b  gcc/tree-vect-generic.cc
  a5c65c0281a1b6faf6652682936ae74e  gcc/tree-vect-loop-manip.cc
! 5ab16abcaa74517dbcd6d173698c07d2  gcc/tree-vect-loop.cc
  43f6f3fee20eb715fd451bf19e9bfd4c  gcc/tree-vect-patterns.cc
  28617cab8a239cf14b40a71d5bbc169c  gcc/tree-vect-slp-patterns.cc
! ae55d259a8015d98d10ea9b66379ac0c  gcc/tree-vect-slp.cc
! d5e6103371171054496e94bbda06f520  gcc/tree-vect-stmts.cc
  795c5280c71f566f4b3e8c7fdcc3b609  gcc/tree-vector-builder.cc
  250ce9e7ca93bb776afda377af2c190d  gcc/tree-vector-builder.h
  c5a03f7f18d4c4b5f0a74529e044ddfe  gcc/tree-vectorizer.cc
  e96b2bb5c70a7f94b0863d7050f1677b  gcc/tree-vectorizer.h
  e9db72a7b615c73d68d28097a0696ef0  gcc/tree-vrp.cc
  01b6633a647a8aeca196fc6d0021e4cf  gcc/tree-vrp.h
! 3186aa0901890a8f1ad50ae50781d4a1  gcc/tree.cc
  110668da7614fc11045af4d047706a7a  gcc/tree.def
  bd976d539f03b9f6fd9501087f38cbec  gcc/tree.h
  b157222cc904eb63d41484795109c2ca  gcc/treestruct.def
*************** aa1c6012dd4232e0d369debb9ec3baaf  gcc/va
*** 110613,110619 ****
  fd8293057f64c6f22290d588535d3260  gcc/value-range.h
  6bd9f193e6f88cb950105bff4c176f41  gcc/value-relation.cc
  469a7a97b1112ecfe2c1b5be79fbb00f  gcc/value-relation.h
! aef2f0cae53c5edfd778280219b466a3  gcc/var-tracking.cc
  6b7fefec7082acd9479f9e89b72bd0d3  gcc/varasm.cc
  a251436cc5047a9bd00cf2c9f3d0a170  gcc/varasm.h
  7d462024f7c2b3043e80201d7e1edd3e  gcc/varpool.cc
--- 110719,110725 ----
  fd8293057f64c6f22290d588535d3260  gcc/value-range.h
  6bd9f193e6f88cb950105bff4c176f41  gcc/value-relation.cc
  469a7a97b1112ecfe2c1b5be79fbb00f  gcc/value-relation.h
! a569c965108d0ca43bacdfeb44ecbc1b  gcc/var-tracking.cc
  6b7fefec7082acd9479f9e89b72bd0d3  gcc/varasm.cc
  a251436cc5047a9bd00cf2c9f3d0a170  gcc/varasm.h
  7d462024f7c2b3043e80201d7e1edd3e  gcc/varpool.cc
*************** ab877905b68606a953bd5a29b5300dad  libcc1
*** 110893,110906 ****
  8e32b4f309146e8842db7a077d77be28  libcody/CMakeLists.txt
  c96a56ec7f0400e30e99a9aa445e0425  libcody/CODING.md
  b5243c8c76fc965a409394a30679e613  libcody/CONTRIB.md
! 9728b4f97dd68bf3894f10ba71f6cbb8  libcody/ChangeLog
  86d3f3a95c324c9479bd8986968f4327  libcody/LICENSE
  55625eec19bfdb5cee37f8c7ae4b796b  libcody/Makefile.in
  ca1c6fe3df5427016005ce753c73d454  libcody/README.md
  99ad81d536fef63b80b7f776f0dec53c  libcody/buffer.cc
! 69dd1db758b0ea369d20d7331d889ef5  libcody/client.cc
  40072537e3589ff033129e9d5aa10660  libcody/cmake/libcody-config-ix.cmake
! 521e6cc4ebd40d0fbc4ad2fbd8c8063b  libcody/cody.hh
  b7630b2f7e3997152972e0d3f86af193  libcody/config.h.in
  a003d1057213ab79099f7bdbea631d9e  libcody/config.m4
  b1c5b142e9fe28fd473595d745695db1  libcody/configure
--- 110999,111012 ----
  8e32b4f309146e8842db7a077d77be28  libcody/CMakeLists.txt
  c96a56ec7f0400e30e99a9aa445e0425  libcody/CODING.md
  b5243c8c76fc965a409394a30679e613  libcody/CONTRIB.md
! 014102ecd05c7bddee40894ceec8ba41  libcody/ChangeLog
  86d3f3a95c324c9479bd8986968f4327  libcody/LICENSE
  55625eec19bfdb5cee37f8c7ae4b796b  libcody/Makefile.in
  ca1c6fe3df5427016005ce753c73d454  libcody/README.md
  99ad81d536fef63b80b7f776f0dec53c  libcody/buffer.cc
! 6085d20f25e5c2f4809b76fc28261fb5  libcody/client.cc
  40072537e3589ff033129e9d5aa10660  libcody/cmake/libcody-config-ix.cmake
! fbd197f7a8c4380bf81aa2ca35950438  libcody/cody.hh
  b7630b2f7e3997152972e0d3f86af193  libcody/config.h.in
  a003d1057213ab79099f7bdbea631d9e  libcody/config.m4
  b1c5b142e9fe28fd473595d745695db1  libcody/configure
*************** b7f8907c165e46ed56efaa23a2c2a570  libcod
*** 110911,110918 ****
  cffdeae41b78da05839b193e90188f55  libcody/netserver.cc
  6419dfc879387358e95288142e569914  libcody/packet.cc
  688ece05c8b9d378b3df186808162e76  libcody/resolver.cc
! b1f3850fc5ac62999d1e124aa6f76531  libcody/server.cc
! 12b96fc38e7ffc0d2eac954b338c995b  libcpp/ChangeLog
  2bd831b17997584e38305782cebe6948  libcpp/ChangeLog.jit
  1acbb917a57e9be62e9a35a2b8843ec3  libcpp/Makefile.in
  b07c7863f0e7ad4e6a0915d66fc9e582  libcpp/aclocal.m4
--- 111017,111024 ----
  cffdeae41b78da05839b193e90188f55  libcody/netserver.cc
  6419dfc879387358e95288142e569914  libcody/packet.cc
  688ece05c8b9d378b3df186808162e76  libcody/resolver.cc
! c94add0032978604acf65591bb86d2d6  libcody/server.cc
! 3f8087152a1bddd19f19aee1f037841e  libcpp/ChangeLog
  2bd831b17997584e38305782cebe6948  libcpp/ChangeLog.jit
  1acbb917a57e9be62e9a35a2b8843ec3  libcpp/Makefile.in
  b07c7863f0e7ad4e6a0915d66fc9e582  libcpp/aclocal.m4
*************** b07c7863f0e7ad4e6a0915d66fc9e582  libcpp
*** 110924,110930 ****
  ff89722b7f828d03d9b7e6604b48f705  libcpp/directives.cc
  4a17617515d4961fd96609af51d900fe  libcpp/errors.cc
  d7920f5045b616b678bf06a6b0ca888e  libcpp/expr.cc
! 3c84272668a840aca2af8488e3667a5a  libcpp/files.cc
  4c23b9e82ca01448b18f7ac4c9e8058c  libcpp/generated_cpp_wcwidth.h
  7fc584598464f2c3aa397e7fec90dccf  libcpp/identifiers.cc
  288c3178bd1e0b81deb8cc4c93fbf099  libcpp/include/cpplib.h
--- 111030,111036 ----
  ff89722b7f828d03d9b7e6604b48f705  libcpp/directives.cc
  4a17617515d4961fd96609af51d900fe  libcpp/errors.cc
  d7920f5045b616b678bf06a6b0ca888e  libcpp/expr.cc
! 8ba1a529822229d78991f17aab8dc6ca  libcpp/files.cc
  4c23b9e82ca01448b18f7ac4c9e8058c  libcpp/generated_cpp_wcwidth.h
  7fc584598464f2c3aa397e7fec90dccf  libcpp/identifiers.cc
  288c3178bd1e0b81deb8cc4c93fbf099  libcpp/include/cpplib.h
*************** df3352a1bd6c274ed82b2a758bc3c4d1  libcpp
*** 110934,110946 ****
  f6265ed339cae65c8b044bbb21d283b4  libcpp/include/symtab.h
  1fd31f0e6458a730ee43a6f6c7f06571  libcpp/init.cc
  cc012cd95bd1c909ce999456a16ab01c  libcpp/internal.h
! 24606cb643c2f881e28b32f45c3d07d1  libcpp/lex.cc
  32d9ae16ae2d390a3a20be3480f9cdbc  libcpp/line-map.cc
  46a07100f95f5e354c7e25cd19d26884  libcpp/location-example.txt
  01c3a45d6e866221d817655f5a80e227  libcpp/macro.cc
  3edc80e88fde4a216d7436d2ecb158af  libcpp/makeucnid.cc
  4219a952c846be5ce392d7627a8ea628  libcpp/makeuname2c.cc
! 246ba746bd12b8496cc531ad9c32ba44  libcpp/mkdeps.cc
  034ec4022e3e960cc381be0a992ed9ef  libcpp/pch.cc
  b46fdf9677dc2fe7f930ade238a7c2e0  libcpp/po/ChangeLog
  ec1c6812b4474e46e48d5c4a7346bf9e  libcpp/po/be.po
--- 111040,111052 ----
  f6265ed339cae65c8b044bbb21d283b4  libcpp/include/symtab.h
  1fd31f0e6458a730ee43a6f6c7f06571  libcpp/init.cc
  cc012cd95bd1c909ce999456a16ab01c  libcpp/internal.h
! ce321ca934843a2fdf6d8cea9653dfa2  libcpp/lex.cc
  32d9ae16ae2d390a3a20be3480f9cdbc  libcpp/line-map.cc
  46a07100f95f5e354c7e25cd19d26884  libcpp/location-example.txt
  01c3a45d6e866221d817655f5a80e227  libcpp/macro.cc
  3edc80e88fde4a216d7436d2ecb158af  libcpp/makeucnid.cc
  4219a952c846be5ce392d7627a8ea628  libcpp/makeuname2c.cc
! b487f4c8650cfef72567648222fb2262  libcpp/mkdeps.cc
  034ec4022e3e960cc381be0a992ed9ef  libcpp/pch.cc
  b46fdf9677dc2fe7f930ade238a7c2e0  libcpp/po/ChangeLog
  ec1c6812b4474e46e48d5c4a7346bf9e  libcpp/po/be.po
*************** a3a7e9ca6057da9ca42e03e41e1c73f7  libgo/
*** 119471,119484 ****
  dcdf1b680b15b372bdb64cc5107d51b6  libgo/testsuite/libgo-test-support.exp.in
  bf162aa572f7b96b25dbd2b027845d32  libgo/testsuite/libgo.testmain/testmain.exp
  cc9d2a0e34e31ba866a8caf9f46f48f3  libgomp/.gitattributes
! bca6040cc82d028ec8957c824941a481  libgomp/ChangeLog
  0d55aa862aee66efdc5f8d62c94ff8fb  libgomp/ChangeLog.graphite
  ea86ef6e739ee81b963e6f1f456ec887  libgomp/Makefile.am
  175cf5d896d110ed86d9cd72e1565b83  libgomp/Makefile.in
  61fe8e644000727dc3e4c6a40c02ed83  libgomp/acc_prof.h
  d45f3b20f1be5d95a6c06fb81bedafe9  libgomp/acinclude.m4
  30a64ccfecfa60e8b5098e9fe26ea707  libgomp/aclocal.m4
! 94684a0e1ce8bde5aaa266c86fffe4a2  libgomp/affinity-fmt.c
  c840b066d8a98a896bc6668a93ac9e31  libgomp/affinity.c
  8321390299a0d343737578485bdb863e  libgomp/alloc.c
  aede47e38a9c413d8b14350a1a803f03  libgomp/allocator.c
--- 119577,119590 ----
  dcdf1b680b15b372bdb64cc5107d51b6  libgo/testsuite/libgo-test-support.exp.in
  bf162aa572f7b96b25dbd2b027845d32  libgo/testsuite/libgo.testmain/testmain.exp
  cc9d2a0e34e31ba866a8caf9f46f48f3  libgomp/.gitattributes
! a359c17cbd64383a3c04f16951757c75  libgomp/ChangeLog
  0d55aa862aee66efdc5f8d62c94ff8fb  libgomp/ChangeLog.graphite
  ea86ef6e739ee81b963e6f1f456ec887  libgomp/Makefile.am
  175cf5d896d110ed86d9cd72e1565b83  libgomp/Makefile.in
  61fe8e644000727dc3e4c6a40c02ed83  libgomp/acc_prof.h
  d45f3b20f1be5d95a6c06fb81bedafe9  libgomp/acinclude.m4
  30a64ccfecfa60e8b5098e9fe26ea707  libgomp/aclocal.m4
! d56483d133ea6f856429b626780e6d0c  libgomp/affinity-fmt.c
  c840b066d8a98a896bc6668a93ac9e31  libgomp/affinity.c
  8321390299a0d343737578485bdb863e  libgomp/alloc.c
  aede47e38a9c413d8b14350a1a803f03  libgomp/allocator.c
*************** d310c3612a920f243d62620f007dec94  libgru
*** 121956,121962 ****
  4d27195db5805ea05b982a2971711c94  libgrust/libproc_macro_internal/tokentree.h
  99c2e5e712b990ee07be10f53e41f3fb  libiberty/.gitignore
  a916467b91076e631dd8edb7424769c7  libiberty/COPYING.LIB
! 6eb94e67d9ee8bcf01f3aca6126412a8  libiberty/ChangeLog
  347c31392973de6a4872d540c1718dc1  libiberty/ChangeLog.jit
  4ec52efbaf3e8230220b57e77177d128  libiberty/Makefile.in
  8b93d0e0369daed24e2260ccfd102eb3  libiberty/README
--- 122062,122068 ----
  4d27195db5805ea05b982a2971711c94  libgrust/libproc_macro_internal/tokentree.h
  99c2e5e712b990ee07be10f53e41f3fb  libiberty/.gitignore
  a916467b91076e631dd8edb7424769c7  libiberty/COPYING.LIB
! 4e1a2fd5d7c4b583a83c008df0af0710  libiberty/ChangeLog
  347c31392973de6a4872d540c1718dc1  libiberty/ChangeLog.jit
  4ec52efbaf3e8230220b57e77177d128  libiberty/Makefile.in
  8b93d0e0369daed24e2260ccfd102eb3  libiberty/README
*************** f8c4ea91a815e826a2bb98c1d9f770f8  libibe
*** 122067,122073 ****
  03f208e23e4d234a55d922700c9db9dd  libiberty/simple-object-elf.c
  6bd7fd61811d90dd9ddc454c724d0c51  libiberty/simple-object-mach-o.c
  c46b918305ab9e7d9644bdc4fd8ae094  libiberty/simple-object-xcoff.c
! 30c5ede9248a062a27b96e47a22c2755  libiberty/simple-object.c
  4863a11e04a2021af582edf86f156954  libiberty/simple-object.txh
  3e5decc7d70885db43efc2edadd3f8b8  libiberty/snprintf.c
  6a91dcba8ac7e873c8541304e552106a  libiberty/sort.c
--- 122173,122179 ----
  03f208e23e4d234a55d922700c9db9dd  libiberty/simple-object-elf.c
  6bd7fd61811d90dd9ddc454c724d0c51  libiberty/simple-object-mach-o.c
  c46b918305ab9e7d9644bdc4fd8ae094  libiberty/simple-object-xcoff.c
! 91abacdcdcca987107ba3c1c30112e93  libiberty/simple-object.c
  4863a11e04a2021af582edf86f156954  libiberty/simple-object.txh
  3e5decc7d70885db43efc2edadd3f8b8  libiberty/snprintf.c
  6a91dcba8ac7e873c8541304e552106a  libiberty/sort.c
*************** d828e38384c506bf5e7d5a3c02725a37  libssp
*** 123822,123828 ****
  7bb3c32ba0a48d1cf785305e1b783eb6  libssp/strncpy-chk.c
  a19c79c1d86436e86b0fee41e6cf6b15  libssp/vsnprintf-chk.c
  145156e880b03115b393070d0ed37be3  libssp/vsprintf-chk.c
! cc96d24ec2d1410d133bb2127342528f  libstdc++-v3/ChangeLog
  7aa6c40440a44fcf5ec94c066160c2f8  libstdc++-v3/ChangeLog-1998
  7aff86600b6a1ed3fa87305075a92db0  libstdc++-v3/ChangeLog-1999
  a6f28e8fc9bb07696a9e068b439a3a87  libstdc++-v3/ChangeLog-2000
--- 123928,123934 ----
  7bb3c32ba0a48d1cf785305e1b783eb6  libssp/strncpy-chk.c
  a19c79c1d86436e86b0fee41e6cf6b15  libssp/vsnprintf-chk.c
  145156e880b03115b393070d0ed37be3  libssp/vsprintf-chk.c
! 44a414f9b7878ded9c45611d3e098da3  libstdc++-v3/ChangeLog
  7aa6c40440a44fcf5ec94c066160c2f8  libstdc++-v3/ChangeLog-1998
  7aff86600b6a1ed3fa87305075a92db0  libstdc++-v3/ChangeLog-1999
  a6f28e8fc9bb07696a9e068b439a3a87  libstdc++-v3/ChangeLog-2000
*************** e2180104cb451cf0f541fa955a037698  libstd
*** 125258,125264 ****
  a0df6d15b0b61f28637877eac9b32416  libstdc++-v3/include/std/stdexcept
  61ee2f87017fb12a433b912711616843  libstdc++-v3/include/std/stdfloat
  406d5b03cbe8429f45aec26c93455b4d  libstdc++-v3/include/std/stop_token
! a638d14f025bfe69de610cd67bd7be1c  libstdc++-v3/include/std/streambuf
  e656fe3f99236050e70b771efe8cdbb3  libstdc++-v3/include/std/string
  40afcc5770400c2aa183a2e3a0c244a9  libstdc++-v3/include/std/string_view
  9320934590547a708c259f9365f20d69  libstdc++-v3/include/std/syncstream
--- 125364,125370 ----
  a0df6d15b0b61f28637877eac9b32416  libstdc++-v3/include/std/stdexcept
  61ee2f87017fb12a433b912711616843  libstdc++-v3/include/std/stdfloat
  406d5b03cbe8429f45aec26c93455b4d  libstdc++-v3/include/std/stop_token
! fe376b3de86a82fab8f936190ff1496d  libstdc++-v3/include/std/streambuf
  e656fe3f99236050e70b771efe8cdbb3  libstdc++-v3/include/std/string
  40afcc5770400c2aa183a2e3a0c244a9  libstdc++-v3/include/std/string_view
  9320934590547a708c259f9365f20d69  libstdc++-v3/include/std/syncstream
*************** d3813c41a1a392d3bd3fc819324240d4  libstd
*** 125565,125571 ****
  1a78ce3875810d2fbde4c0259e6da49c  libstdc++-v3/src/c++20/Makefile.in
  bc750f6d75cc3d48552863c2403f8857  libstdc++-v3/src/c++20/sstream-inst.cc
  e9e89f4578e59d252e4caaf0b63d6dfb  libstdc++-v3/src/c++20/tzdata.zi
! fff54701f9e561f92c920438dd86fd45  libstdc++-v3/src/c++20/tzdb.cc
  5cda0f038c8a42d9ac9d35d23cac6c57  libstdc++-v3/src/c++20/tzdb_globals.h
  b65cec48a384351b09d3d7d12ee37660  libstdc++-v3/src/c++23/Makefile.am
  5405bc5d3053e91ab5f6209a6e20a377  libstdc++-v3/src/c++23/Makefile.in
--- 125671,125677 ----
  1a78ce3875810d2fbde4c0259e6da49c  libstdc++-v3/src/c++20/Makefile.in
  bc750f6d75cc3d48552863c2403f8857  libstdc++-v3/src/c++20/sstream-inst.cc
  e9e89f4578e59d252e4caaf0b63d6dfb  libstdc++-v3/src/c++20/tzdata.zi
! 5d16ea0508da4381f59ba503f633e830  libstdc++-v3/src/c++20/tzdb.cc
  5cda0f038c8a42d9ac9d35d23cac6c57  libstdc++-v3/src/c++20/tzdb_globals.h
  b65cec48a384351b09d3d7d12ee37660  libstdc++-v3/src/c++23/Makefile.am
  5405bc5d3053e91ab5f6209a6e20a377  libstdc++-v3/src/c++23/Makefile.in
*************** d37c4e49eb4480c26dc88261b44d7e2a  libstd
*** 130092,130097 ****
--- 130198,130204 ----
  bace6ef2912a30047b09a18d919361fc  libstdc++-v3/testsuite/24_iterators/istream_iterator/requirements/explicit_instantiation.cc
  5ad66aa35e8f7dbb83dbcc33355e384d  libstdc++-v3/testsuite/24_iterators/istream_iterator/requirements/typedefs.cc
  98d49deb4bbcb615dd24659838d78d0f  libstdc++-v3/testsuite/24_iterators/istream_iterator/sentinel.cc
+ 486fa49e6e6487aad2e12a66d481a54c  libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/105580.cc
  1713c306a8a41af2ca9052c8c8e72eb4  libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/2.cc
  d3cd71a28bbc84054ec728f34461d270  libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/2627.cc
  5561389ef10093963146739453d3922f  libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/92285.cc
*************** c0881d1e2eb764c023ab5b7d8a6c85b7  libstd
*** 132861,132867 ****
  66bdc51662fd70d30902211a53dedff4  libstdc++-v3/testsuite/29_atomics/atomic/cons/single_value.cc
  9e2a8388686f3e26628f06d374c98d11  libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc
  6eaa7fecae6788d01a20ae43260848b9  libstdc++-v3/testsuite/29_atomics/atomic/cons/value_init.cc
! f2694c990b173c2f406022e2d327a1b7  libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
  4c8038b479383b8690e30cb9dd1b7a3a  libstdc++-v3/testsuite/29_atomics/atomic/is_always_lock_free.cc
  f9b2d6d78dc44c7b8285a07ef1cd9521  libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc
  467103d8d6f668882b30ac0653e0cd90  libstdc++-v3/testsuite/29_atomics/atomic/lwg3220.cc
--- 132968,132974 ----
  66bdc51662fd70d30902211a53dedff4  libstdc++-v3/testsuite/29_atomics/atomic/cons/single_value.cc
  9e2a8388686f3e26628f06d374c98d11  libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc
  6eaa7fecae6788d01a20ae43260848b9  libstdc++-v3/testsuite/29_atomics/atomic/cons/value_init.cc
! 822ec88a7f5dfe8ce7d354c55824d6bb  libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
  4c8038b479383b8690e30cb9dd1b7a3a  libstdc++-v3/testsuite/29_atomics/atomic/is_always_lock_free.cc
  f9b2d6d78dc44c7b8285a07ef1cd9521  libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc
  467103d8d6f668882b30ac0653e0cd90  libstdc++-v3/testsuite/29_atomics/atomic/lwg3220.cc
diff -Nrcpad gcc-14-20260313/gcc/ChangeLog gcc-14-20260320/gcc/ChangeLog
*** gcc-14-20260313/gcc/ChangeLog	Fri Mar 13 22:32:05 2026
--- gcc-14-20260320/gcc/ChangeLog	Fri Mar 20 22:32:05 2026
***************
*** 1,3 ****
--- 1,549 ----
+ 2026-03-17  Alice Carlotti  <alice.carlotti@arm.com>
+ 
+ 	* config/aarch64/aarch64-sve2.md (@aarch64_pred_revd<mode>):
+ 	Remove movprfx alternative.
+ 	(@cond_revd<mode>): Likewise.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-30  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR debug/123886
+ 	* dwarf2out.cc (sym_off_pair::sym): Remove GTY((skip)).
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-23  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR middle-end/123775
+ 	* match.pd ((view_convert (vec_cond ...))): Make sure the
+ 	resulting vec_cond can be expanded.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-22  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123741
+ 	* tree-vect-stmts.cc (vectorizable_store): Add missing check
+ 	on loop vectorization.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-20  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123729
+ 	* tree-vect-loop.cc (vect_create_epilog_for_reduction): Set
+ 	SSA_NAME_OCCURS_IN_ABNORMAL_PHI if the reduction flows
+ 	across an abnomal edge.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-20  Richard Biener  <rguenther@suse.de>
+ 
+ 	* tree-phinodes.h (phi_arg_index_from_use): Use gphi *.
+ 	(phi_arg_edge_from_use): New helper composing
+ 	phi_arg_index_from_use and gimple_phi_arg_edge.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-19  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123602
+ 	* tree-ssa-pre.cc (find_or_generate_expression): Do not
+ 	generate references to abnormal SSA names.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR middle-end/123575
+ 	* match.pd (abs ((T)x) -> absu (x)): For vector type
+ 	arguments require the resulting operation is supported.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123537
+ 	* match.pd (REDUC (@0 & @1) -> @0[I] & @1[I]): Restrict
+ 	allowed conversions.
+ 
+ 2026-03-16  Richard Sandiford  <rdsandiford@googlemail.com>
+ 
+ 	Backported from master:
+ 	2026-01-08  Richard Sandiford  <rdsandiford@googlemail.com>
+ 		    Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/122793
+ 	* tree-vect-slp.cc (vect_add_slp_permutation): Document the existing
+ 	identity_offset parameter.  Handle identities that take from the
+ 	second input rather than the first.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2025-09-08  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/107997
+ 	PR tree-optimization/121844
+ 	* tree-ssa-loop-ivopts.cc (allow_ip_end_pos_p): Do not allow
+ 	IP_END for latches ending with a control stmt.
+ 	(create_new_iv): Do not split the latch edge, instead assert
+ 	that's not necessary.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2025-05-30  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/120341
+ 	* tree-ssa-loop-im.cc (can_sm_ref_p): STRING_CSTs are readonly.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-27  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR ipa/116296
+ 	* ipa-modref-tree.cc (modref_access_node::contains): Use
+ 	poly_offset_int for the param offset difference and the
+ 	overlap computation.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR ipa/111036
+ 	* match.pd (__builtin_constant_p ((T)x)): Strip nop-conversions
+ 	from __builtin_constant_p arguments.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/110043
+ 	* pointer-query.cc (get_offset_range): Fail for integer
+ 	types with precision larger than ptrdiff_type_node.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-30  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/109410
+ 	* tree-ssa-reassoc.cc (build_and_add_sum): Use
+ 	gsi_start_nondebug_after_labels_bb to look for a possible
+ 	returns-twice call.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR rtl-optimization/106859
+ 	* var-tracking.cc (val_store): Dump -1 as UID if setting_insn
+ 	is NULL.
+ 
+ 2026-03-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR target/124126
+ 	* config/aarch64/aarch64-builtins.cc (aarch64_init_ls64_builtins_types): Copy
+ 	the array type before setting the mode.
+ 
+ 2026-03-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR target/123285
+ 	* config/aarch64/aarch64-early-ra.cc (early_ra::form_chains): Process clobbers
+ 	and ABI clobbers before starting to form the chain.
+ 
+ 2026-03-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR target/123457
+ 	* config/aarch64/aarch64-sve-builtins.cc (struct registered_function_hasher):
+ 	Change base class to ggc_ptr_hash.
+ 	(initial_indexes): Mark with GTY.
+ 	(function_table): Likewise.
+ 	(handle_arm_sve_h): Allocate function_table from ggc instead of heap.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/124135
+ 	* tree-inline.cc (expand_call_inline): If both gimple_call_lhs (stmt)
+ 	and use_retvar aren't gimple regs but have gimple reg type, use
+ 	separate load of use_retva into SSA_NAME and then store of it
+ 	into gimple_call_lhs (stmt).
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/124358
+ 	* match.pd ((ptr) (x p+ y) p+ z -> (ptr) (x p+ (y + z))): Simplify
+ 	into (ptr) x p+ (y + z) instead.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124366
+ 	* config/i386/i386.md (@wrss<mode>, @wruss<mode>): Swap operand
+ 	order for -masm=intel.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124315
+ 	* config/i386/sse.md (avx512f_vmfmadd_<mode>_mask3<round_name>,
+ 	avx512f_vmfmsub_<mode>_mask3<round_name>,
+ 	avx512f_vmfnmadd_<mode>_mask3<round_name>,
+ 	avx512f_vmfnmsub_<mode>_mask3<round_name>): Use %<iptr>1 instead of
+ 	%<iptr>3 in -masm=intel syntax.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124335
+ 	* config/i386/sse.md (*avx512f_load<mode>_mask): Use %{%3%} instead of
+ 	%{3%} for -masm=intel syntax.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-18  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124138
+ 	* config/i386/i386.cc (avx_vpermilp_parallel): Verify
+ 	ipar[2] and ipar[3] aren't larger than 3.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-11  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/124056
+ 	* cfgexpand.cc (expand_asm_stmt): If after_md_seq is non-NULL, emit
+ 	it at the start of after_rtl_seq instead of after fallthru_label.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-11  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR rtl-optimization/116600
+ 	PR middle-end/123386
+ 	* cfgrtl.cc (force_nonfallthru_and_redirect): Don't do any
+ 	asm goto adjustments early, only note in asm_goto_edge if
+ 	any labels point originally to e->dest head.  After jumpblock
+ 	creation don't add an extra edge for asm_goto_edge, instead
+ 	adjust those labels pointing to former e->dest head to point
+ 	to jumpblock instead.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/101312
+ 	* alias.cc (get_alias_set): Allow TYPE_CANONICAL (mv) to be
+ 	not its own TYPE_MAIN_VARIANT, as long as its TYPE_MAIN_VARIANT
+ 	has TYPE_CANONICAL equal to itself.
+ 	* tree.cc (verify_type): Likewise.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123978
+ 	* range-op.h (OP_WIDEN_MULT_SIGNED_UNSIGNED): Define.
+ 	(OP_WIDEN_PLUS_SIGNED, OP_WIDEN_PLUS_UNSIGNED,
+ 	RANGE_OP_TABLE_SIZE): Renumber.
+ 	* gimple-range-op.cc (imple_range_op_handler::maybe_non_standard):
+ 	Use 3 different classes instead of 2 for WIDEN_MULT_EXPR, one
+ 	for both operands signed, one for both operands unsigned and
+ 	one for operands with different signedness.  In the last case
+ 	canonicalize to first operand signed second unsigned.
+ 	* range-op.cc (operator_widen_mult_signed::wi_fold): Use
+ 	TYPE_PRECISION (type) rather than wi::get_precision (whatever) * 2,
+ 	use SIGNED for all wide_int::from calls.
+ 	(operator_widen_mult_unsigned::wi_fold): Similarly but use UNSIGNED
+ 	for all wide_int::from calls.
+ 	(class operator_widen_mult_signed_unsigned): New type.
+ 	(operator_widen_mult_signed_unsigned::wi_fold): Define.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-04  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123818
+ 	* tree.cc (simple_cst_equal) <case CONSTRUCTOR>: Return -1 if some
+ 	recursive call returns -1.  Also compare indexes.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-04  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/122689
+ 	* gimple-lower-bitint.cc (gimple_lower_bitint): For the PHI handling
+ 	if min_prec == prec, break after emitting assignment from c.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-02  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/121104
+ 	* tree-ssa-math-opts.cc (match_uaddc_usubc): Punt if
+ 	lhs of ovf1 or ovf2 doesn't have element type compatible with type.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123864
+ 	* match.pd (__builtin_mul_overflow_p (x, cst, (stype) 0) ->
+ 	x > stype_max / cst || x < stype_min / cst): Only check
+ 	integer_minus_onep for signed types.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123876
+ 	* omp-low.cc (diagnose_sb_2): Handle GIMPLE_ASM.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-23  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123703
+ 	* builtins.cc (fold_builtin_abs): Return NULL_TREE if type is not
+ 	integral.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-22  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123736
+ 	* tree-ssa-loop-unswitch.cc (hoist_guard): Guard dump message
+ 	on dump_file && (dump_flags & TDF_DETAILS) condition.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123513
+ 	* tree.cc (valid_new_delete_pair_p): If new_name[3] or delete_name[3]
+ 	is 'I', return false with *pcertain set to false rather than true.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-16  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/123607
+ 	* config/i386/i386.md (movhf_mask): Change constraint on
+ 	match_operand 2's second alternative from 0C to 0.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-14  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/120250
+ 	* combine.cc (recog_for_combine): Don't try to put SET_SRC
+ 	into a constant pool if SET_DEST is pc_rtx.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-10  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123431
+ 	* gimple-range-op.cc (gimple_range_op_handler::maybe_builtin_call):
+ 	Punt if type-generic builtins with a single argument don't have
+ 	exactly one argument.  For returns_arg punt if call doesn't have
+ 	at least one argument.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-09  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	* doc/invoke.texi (-x): Add objc-cpp-output,
+ 	objc++-cpp-output, adascil, adawhy, modula-2, modula-2-cpp-output,
+ 	rust and lto as further possible option arguments.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-08  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/111817
+ 	* stmt.cc (parse_input_constraint): For matching construct, goto
+ 	before the loop without changing j instead of break.  Remove comment
+ 	about that problem.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-07  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR rtl-optimization/119291
+ 	PR rtl-optimization/121773
+ 	* combine.cc (try_combine): Check that SET_DEST (setN) is neither
+ 	modified_between_p nor reg_used_between_p instead of just not
+ 	reg_used_between_p or pc_rtx.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-06  Jakub Jelinek  <jakub@redhat.com>
+ 		    Marco Falke  <falke.marco@gmail.com>
+ 
+ 	PR tree-optimization/123351
+ 	* tree-object-size.cc (object_sizes_set_temp): Separate calls to
+ 	make_ssa_name to ensure deterministic execution order.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-20  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/123217
+ 	* config/i386/i386-expand.cc (ix86_expand_builtin)
+ 	<case IX86_BUILTIN_ENCODEKEY128U32, case IX86_BUILTIN_ENCODEKEY256U32,
+ 	case IX86_BUILTIN_URDMSR>: Set target to a new pseudo even if it is
+ 	non-NULL but doesn't satisfy register_operand predicate.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	* doc/install.texi (--with-tls=): Fix a typo, were -> where.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/123155
+ 	* config/i386/xmmintrin.h (_mm_maskmove_si64): Rename offset automatic
+ 	variable to __offset.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/122943
+ 	* tree-switch-conversion.cc (switch_conversion::build_arrays):
+ 	Always gimplify subtraction in utype without cast to tidxtype
+ 	and set m_arr_ref_first to the last stmt of that.  Remove unneeded
+ 	update_stmt call.  If tidxtype is not utype, append after that stmt
+ 	cast to tidxtype and set tidx to the lhs of that cast.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/120052
+ 	* gimplify.cc (gimplify_call_expr): For IFN_UBSAN_BOUNDS
+ 	call with integer_onep first argument, change that argument
+ 	to 0 and add TYPE_MAX_VALUE (TYPE_DOMAIN (arr_type)) to
+ 	3rd argument before gimplification.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/120564
+ 	* omp-expand.cc (extract_omp_for_update_vars): Use build2 instead of
+ 	fold_build2 to build argument for gimple_build_cond_empty.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-11  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR lto/122620
+ 	* gimplify-me.cc (gimple_regimplify_operands): Don't try to regimplify
+ 	TREE_CLOBBER on rhs of gimple_clobber_p if it has gimple_reg_type.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/122394
+ 	* tree-ssa-phiopt.cc (spaceship_replacement): Use
+ 	build_debug_expr_decl instead of manually building DEBUG_EXPR_DECL
+ 	and getting SET_DECL_MODE wrong.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-03-04  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR tree-optimization/119568
+ 	* tree-ssa-math-opts.cc (convert_plusminus_to_widen): Reject different
+ 	mode classes.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-02-02  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR rtl-optimization/123294
+ 	* ifcvt.cc (noce_emit_store_flag): Reject modes
+ 	greater than MAX_FIXED_MODE_SIZE.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-01-18  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR tree-optimization/123645
+ 	* tree-ssa-phiopt.cc (cond_removal_in_builtin_zero_pattern): Rewrite
+ 	the canonicalization of the args code based on e1/e2 being edges into
+ 	the join block.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2025-09-02  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR tree-optimization/121776
+ 	* tree-ssa-strlen.cc (strlen_pass::handle_builtin_memcmp): Create
+ 	unaligned types if the alignment of the pointers is less
+ 	than the alignment of the new type.
+ 
  2026-03-12  Martin Jambor  <mjambor@suse.cz>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/gcc/DATESTAMP gcc-14-20260320/gcc/DATESTAMP
*** gcc-14-20260313/gcc/DATESTAMP	Fri Mar 13 22:32:05 2026
--- gcc-14-20260320/gcc/DATESTAMP	Fri Mar 20 22:32:05 2026
***************
*** 1 ****
! 20260313
--- 1 ----
! 20260320
diff -Nrcpad gcc-14-20260313/gcc/ada/ChangeLog gcc-14-20260320/gcc/ada/ChangeLog
*** gcc-14-20260313/gcc/ada/ChangeLog	Fri Mar 13 22:32:05 2026
--- gcc-14-20260320/gcc/ada/ChangeLog	Fri Mar 20 22:32:05 2026
***************
*** 1,3 ****
--- 1,10 ----
+ 2026-03-14  Matthias Klose  <doko@gcc.gnu.org>
+ 
+ 	PR ada/107475
+ 	* Makefile.rtl (s390% linux%): Define MISCLIB.
+ 	(arm% linux-gnueabi%): Likewise.
+ 	(%x32 linux%): Likewise.
+ 
  2026-02-28  Eric Botcazou  <ebotcazou@adacore.com>
  
  	PR ada/124285
diff -Nrcpad gcc-14-20260313/gcc/ada/Makefile.rtl gcc-14-20260320/gcc/ada/Makefile.rtl
*** gcc-14-20260313/gcc/ada/Makefile.rtl	Fri Mar 13 22:32:05 2026
--- gcc-14-20260320/gcc/ada/Makefile.rtl	Fri Mar 20 22:32:05 2026
*************** ifeq ($(strip $(filter-out s390% linux%,
*** 1842,1847 ****
--- 1842,1848 ----
    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
    EH_MECHANISM=-gcc
    THREADSLIB = -lpthread
+   MISCLIB = -ldl
    GNATLIB_SHARED = gnatlib-shared-dual
    LIBRARY_VERSION := $(LIB_VERSION)
  endif
*************** ifeq ($(strip $(filter-out arm% linux-gn
*** 2293,2298 ****
--- 2294,2300 ----
    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
    EH_MECHANISM=-arm
    THREADSLIB = -lpthread
+   MISCLIB = -ldl
    GNATLIB_SHARED = gnatlib-shared-dual
    GMEM_LIB = gmemlib
    LIBRARY_VERSION := $(LIB_VERSION)
*************** ifeq ($(strip $(filter-out %x32 linux%,$
*** 2653,2658 ****
--- 2655,2661 ----
    EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
    EH_MECHANISM=-gcc
    THREADSLIB=-lpthread -lrt
+   MISCLIB = -ldl
    GNATLIB_SHARED=gnatlib-shared-dual
    GMEM_LIB = gmemlib
    LIBRARY_VERSION := $(LIB_VERSION)
diff -Nrcpad gcc-14-20260313/gcc/alias.cc gcc-14-20260320/gcc/alias.cc
*** gcc-14-20260313/gcc/alias.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/alias.cc	Fri Mar 20 22:32:06 2026
*************** get_alias_set (tree t)
*** 951,957 ****
    else
      {
        t = TYPE_CANONICAL (t);
!       gcc_checking_assert (!TYPE_STRUCTURAL_EQUALITY_P (t));
      }
  
    /* If this is a type with a known alias set, return it.  */
--- 951,962 ----
    else
      {
        t = TYPE_CANONICAL (t);
!       gcc_checking_assert (TYPE_CANONICAL (t) == t);
!       if (t != TYPE_MAIN_VARIANT (t))
! 	{
! 	  t = TYPE_MAIN_VARIANT (t);
! 	  gcc_checking_assert (TYPE_CANONICAL (t) == t);
! 	}
      }
  
    /* If this is a type with a known alias set, return it.  */
diff -Nrcpad gcc-14-20260313/gcc/builtins.cc gcc-14-20260320/gcc/builtins.cc
*** gcc-14-20260313/gcc/builtins.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/builtins.cc	Fri Mar 20 22:32:06 2026
*************** fold_builtin_fabs (location_t loc, tree
*** 9388,9394 ****
  static tree
  fold_builtin_abs (location_t loc, tree arg, tree type)
  {
!   if (!validate_arg (arg, INTEGER_TYPE))
      return NULL_TREE;
  
    arg = fold_convert_loc (loc, type, arg);
--- 9388,9394 ----
  static tree
  fold_builtin_abs (location_t loc, tree arg, tree type)
  {
!   if (!validate_arg (arg, INTEGER_TYPE) || !INTEGRAL_TYPE_P (type))
      return NULL_TREE;
  
    arg = fold_convert_loc (loc, type, arg);
diff -Nrcpad gcc-14-20260313/gcc/c/ChangeLog gcc-14-20260320/gcc/c/ChangeLog
*** gcc-14-20260313/gcc/c/ChangeLog	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/c/ChangeLog	Fri Mar 20 22:32:06 2026
***************
*** 1,3 ****
--- 1,20 ----
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-18  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/123365
+ 	* c-decl.cc (build_compound_literal): Call relayout_decl
+ 	after completing the type.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-09  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/123018
+ 	* c-decl.cc (finish_struct): Diagnose bit-fields with vector type.
+ 
  2025-05-23  Release Manager
  
  	* GCC 14.3.0 released.
diff -Nrcpad gcc-14-20260313/gcc/c/c-decl.cc gcc-14-20260320/gcc/c/c-decl.cc
*** gcc-14-20260313/gcc/c/c-decl.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/c/c-decl.cc	Fri Mar 20 22:32:06 2026
*************** build_compound_literal (location_t loc,
*** 6453,6458 ****
--- 6453,6459 ----
  
        type = TREE_TYPE (decl);
        TREE_TYPE (DECL_INITIAL (decl)) = type;
+       relayout_decl (decl);
      }
  
    if (type == error_mark_node || !COMPLETE_TYPE_P (type))
*************** finish_struct (location_t loc, tree t, t
*** 9581,9586 ****
--- 9582,9594 ----
  	  unsigned HOST_WIDE_INT width
  	    = tree_to_uhwi (DECL_INITIAL (field));
  	  tree type = TREE_TYPE (field);
+ 	  if (VECTOR_TYPE_P (type))
+ 	    {
+ 	      error_at (DECL_SOURCE_LOCATION (field),
+ 			"bit-field %qD has invalid type", field);
+ 	      type = TREE_TYPE (type);
+ 	      TREE_TYPE (field) = type;
+ 	    }
  	  if (width != TYPE_PRECISION (type))
  	    {
  	      if (TREE_CODE (type) == BITINT_TYPE
diff -Nrcpad gcc-14-20260313/gcc/c-family/ChangeLog gcc-14-20260320/gcc/c-family/ChangeLog
*** gcc-14-20260313/gcc/c-family/ChangeLog	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/c-family/ChangeLog	Fri Mar 20 22:32:06 2026
***************
*** 1,3 ****
--- 1,36 ----
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/120052
+ 	* c-ubsan.cc (ubsan_instrument_bounds): For VLAs use
+ 	1 instead of 0 as first IFN_UBSAN_BOUNDS argument and only
+ 	use the addend without TYPE_MAX_VALUE (TYPE_DOMAIN (type))
+ 	in the 3rd argument.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/122624
+ 	* c-common.cc (c_common_get_alias_set): Fix up handling of
+ 	BITINT_TYPEs.  For unsigned _BitInt(1) always return -1.  For other
+ 	unsigned types set TYPE_ALIAS_SET to get_alias_set of corresponding
+ 	signed type and return that.  For signed types check if corresponding
+ 	unsigned type has TYPE_ALIAS_SET_KNOWN_P and if so copy its
+ 	TYPE_ALIAS_SET and return that.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-02-12  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR c/105555
+ 	* c-common.cc (fold_offsetof): Handle REALPART_EXPR
+ 	and IMAGPART_EXPR.
+ 
  2025-10-14  Jakub Jelinek  <jakub@redhat.com>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/gcc/c-family/c-common.cc gcc-14-20260320/gcc/c-family/c-common.cc
*** gcc-14-20260313/gcc/c-family/c-common.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/c-family/c-common.cc	Fri Mar 20 22:32:06 2026
*************** c_build_shufflevector (location_t loc, t
*** 1240,1248 ****
    vec_perm_indices indices (sel, 2, maskl);
  
    tree ret_type = build_vector_type (TREE_TYPE (TREE_TYPE (v0)), maskl);
!   tree mask_type = build_vector_type (build_nonstandard_integer_type
! 		(TREE_INT_CST_LOW (TYPE_SIZE (TREE_TYPE (ret_type))), 1),
! 		maskl);
    /* Pad out arguments to the common vector size.  */
    if (v0n < maskl)
      {
--- 1240,1246 ----
    vec_perm_indices indices (sel, 2, maskl);
  
    tree ret_type = build_vector_type (TREE_TYPE (TREE_TYPE (v0)), maskl);
!   tree mask_type = build_vector_type (ssizetype, maskl);
    /* Pad out arguments to the common vector size.  */
    if (v0n < maskl)
      {
*************** c_common_get_alias_set (tree t)
*** 3921,3928 ****
    /* The C standard specifically allows aliasing between signed and
       unsigned variants of the same type.  We treat the signed
       variant as canonical.  */
!   if ((TREE_CODE (t) == INTEGER_TYPE || TREE_CODE (t) == BITINT_TYPE)
!       && TYPE_UNSIGNED (t))
      {
        tree t1 = c_common_signed_type (t);
  
--- 3919,3925 ----
    /* The C standard specifically allows aliasing between signed and
       unsigned variants of the same type.  We treat the signed
       variant as canonical.  */
!   if (TREE_CODE (t) == INTEGER_TYPE && TYPE_UNSIGNED (t))
      {
        tree t1 = c_common_signed_type (t);
  
*************** c_common_get_alias_set (tree t)
*** 3930,3935 ****
--- 3927,3967 ----
        if (t1 != t)
  	return get_alias_set (t1);
      }
+   if (TREE_CODE (t) == BITINT_TYPE)
+     {
+       /* For normal INTEGER_TYPEs (except ones built by
+ 	 build_nonstandard_integer_type), both signed and unsigned variants
+ 	 of the type are always reachable from GTY roots, so just calling
+ 	 get_alias_set on the signed type is ok.  For BITINT_TYPE and
+ 	 non-standard INTEGER_TYPEs, only unsigned could be used and the
+ 	 corresponding signed type could be created on demand and garbage
+ 	 collected as unused, so the alias set of unsigned type could keep
+ 	 changing.
+ 	 Avoid that by remembering the signed type alias set in
+ 	 TYPE_ALIAS_SET and also when being asked about !TYPE_UNSIGNED
+ 	 check if there isn't a corresponding unsigned type with
+ 	 TYPE_ALIAS_SET_KNOWN_P.  */
+       if (TYPE_UNSIGNED (t))
+ 	{
+ 	  /* There is no signed _BitInt(1).  */
+ 	  if (TYPE_PRECISION (t) == 1)
+ 	    return -1;
+ 	  tree t1 = c_common_signed_type (t);
+ 	  gcc_checking_assert (t != t1);
+ 	  TYPE_ALIAS_SET (t) = get_alias_set (t1);
+ 	  return TYPE_ALIAS_SET (t);
+ 	}
+       else
+ 	{
+ 	  tree t1 = c_common_unsigned_type (t);
+ 	  gcc_checking_assert (t != t1);
+ 	  if (TYPE_ALIAS_SET_KNOWN_P (t1))
+ 	    {
+ 	      TYPE_ALIAS_SET (t) = TYPE_ALIAS_SET (t1);
+ 	      return TYPE_ALIAS_SET (t);
+ 	    }
+ 	}
+     }
  
    return -1;
  }
*************** fold_offsetof (tree expr, tree type, enu
*** 6926,6931 ****
--- 6958,6973 ----
      case ERROR_MARK:
        return expr;
  
+     case REALPART_EXPR:
+      return fold_offsetof (TREE_OPERAND (expr, 0), type, code);
+ 
+     case IMAGPART_EXPR:
+      base = fold_offsetof (TREE_OPERAND (expr, 0), type, code);
+      if (base == error_mark_node)
+ 	return base;
+      off = TYPE_SIZE_UNIT (TREE_TYPE (TREE_TYPE (TREE_OPERAND (expr, 0))));
+      break;
+ 
      case VAR_DECL:
        error ("cannot apply %<offsetof%> to static data member %qD", expr);
        return error_mark_node;
diff -Nrcpad gcc-14-20260313/gcc/c-family/c-ubsan.cc gcc-14-20260320/gcc/c-family/c-ubsan.cc
*** gcc-14-20260313/gcc/c-family/c-ubsan.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/c-family/c-ubsan.cc	Fri Mar 20 22:32:06 2026
*************** ubsan_instrument_bounds (location_t loc,
*** 407,413 ****
  
    bound = fold_build2 (PLUS_EXPR, TREE_TYPE (bound), bound,
  		       build_int_cst (TREE_TYPE (bound),
! 		       1 + ignore_off_by_one));
  
    /* Detect flexible array members and suchlike, unless
       -fsanitize=bounds-strict.  */
--- 407,413 ----
  
    bound = fold_build2 (PLUS_EXPR, TREE_TYPE (bound), bound,
  		       build_int_cst (TREE_TYPE (bound),
! 				      1 + ignore_off_by_one));
  
    /* Detect flexible array members and suchlike, unless
       -fsanitize=bounds-strict.  */
*************** ubsan_instrument_bounds (location_t loc,
*** 494,501 ****
      return NULL_TREE;
  
    *index = save_expr (*index);
!   /* Create a "(T *) 0" tree node to describe the array type.  */
!   tree zero_with_type = build_int_cst (build_pointer_type (type), 0);
    return build_call_expr_internal_loc (loc, IFN_UBSAN_BOUNDS,
  				       void_type_node, 3, zero_with_type,
  				       *index, bound);
--- 494,509 ----
      return NULL_TREE;
  
    *index = save_expr (*index);
!   /* If TYPE is a VLA, use 1 instead of 0 as the first argument and
!      use just the addend to TYPE_MAX_VALUE (domain) as the third argument
!      temporarily, so that gimplification can use TYPE_MAX_VALUE (domain)
!      after gimplify_type_sizes.  See PR120052.  */
!   bool is_vla = (TYPE_MAX_VALUE (domain)
! 		 && TREE_CODE (TYPE_MAX_VALUE (domain)) != INTEGER_CST);
!   if (is_vla)
!     bound = build_int_cst (TREE_TYPE (bound), 1 + ignore_off_by_one);
!   /* Create a "(T *) 0" (or 1) tree node to describe the array type.  */
!   tree zero_with_type = build_int_cst (build_pointer_type (type), is_vla);
    return build_call_expr_internal_loc (loc, IFN_UBSAN_BOUNDS,
  				       void_type_node, 3, zero_with_type,
  				       *index, bound);
diff -Nrcpad gcc-14-20260313/gcc/cfgexpand.cc gcc-14-20260320/gcc/cfgexpand.cc
*** gcc-14-20260313/gcc/cfgexpand.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/cfgexpand.cc	Fri Mar 20 22:32:06 2026
*************** expand_asm_stmt (gasm *stmt)
*** 3481,3493 ****
       Case in point is when the i386 backend moved from cc0 to a hard reg --
       maintaining source-level compatibility means automatically clobbering
       the flags register.  */
-   rtx_insn *after_md_seq = NULL;
    auto_vec<rtx> use_rvec;
    if (targetm.md_asm_adjust)
!     after_md_seq
  	= targetm.md_asm_adjust (output_rvec, input_rvec, input_mode,
  				 constraints, use_rvec, clobber_rvec,
  				 clobbered_regs, locus);
  
    /* Do not allow the hook to change the output and input count,
       lest it mess up the operand numbering.  */
--- 3481,3502 ----
       Case in point is when the i386 backend moved from cc0 to a hard reg --
       maintaining source-level compatibility means automatically clobbering
       the flags register.  */
    auto_vec<rtx> use_rvec;
    if (targetm.md_asm_adjust)
!     {
!       rtx_insn *after_md_seq
  	= targetm.md_asm_adjust (output_rvec, input_rvec, input_mode,
  				 constraints, use_rvec, clobber_rvec,
  				 clobbered_regs, locus);
+       if (after_md_seq)
+ 	{
+ 	  push_to_sequence (after_md_seq);
+ 	  emit_insn (after_rtl_seq);
+ 	  after_rtl_seq = get_insns ();
+ 	  after_rtl_end = get_last_insn ();
+ 	  end_sequence ();
+ 	}
+     }
  
    /* Do not allow the hook to change the output and input count,
       lest it mess up the operand numbering.  */
*************** expand_asm_stmt (gasm *stmt)
*** 3662,3669 ****
    if (fallthru_label)
      emit_label (fallthru_label);
  
-   if (after_md_seq)
-     emit_insn (after_md_seq);
    if (after_rtl_seq)
      {
        if (nlabels == 0)
--- 3671,3676 ----
diff -Nrcpad gcc-14-20260313/gcc/cfgrtl.cc gcc-14-20260320/gcc/cfgrtl.cc
*** gcc-14-20260313/gcc/cfgrtl.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/cfgrtl.cc	Fri Mar 20 22:32:06 2026
*************** force_nonfallthru_and_redirect (edge e,
*** 1595,1648 ****
      }
  
    /* If e->src ends with asm goto, see if any of the ASM_OPERANDS_LABELs
!      don't point to the target or fallthru label.  */
    if (JUMP_P (BB_END (e->src))
        && target != EXIT_BLOCK_PTR_FOR_FN (cfun)
        && (e->flags & EDGE_FALLTHRU)
        && (note = extract_asm_operands (PATTERN (BB_END (e->src)))))
      {
!       int i, n = ASM_OPERANDS_LABEL_LENGTH (note);
!       bool adjust_jump_target = false;
  
!       for (i = 0; i < n; ++i)
! 	{
! 	  if (XEXP (ASM_OPERANDS_LABEL (note, i), 0) == BB_HEAD (e->dest))
! 	    {
! 	      LABEL_NUSES (XEXP (ASM_OPERANDS_LABEL (note, i), 0))--;
! 	      XEXP (ASM_OPERANDS_LABEL (note, i), 0) = block_label (target);
! 	      LABEL_NUSES (XEXP (ASM_OPERANDS_LABEL (note, i), 0))++;
! 	      adjust_jump_target = true;
! 	    }
! 	  if (XEXP (ASM_OPERANDS_LABEL (note, i), 0) == BB_HEAD (target))
  	    asm_goto_edge = true;
! 	}
!       if (adjust_jump_target)
! 	{
! 	  rtx_insn *insn = BB_END (e->src);
! 	  rtx note;
! 	  rtx_insn *old_label = BB_HEAD (e->dest);
! 	  rtx_insn *new_label = BB_HEAD (target);
! 
! 	  if (JUMP_LABEL (insn) == old_label)
! 	    {
! 	      JUMP_LABEL (insn) = new_label;
! 	      note = find_reg_note (insn, REG_LABEL_TARGET, new_label);
! 	      if (note)
! 		remove_note (insn, note);
! 	    }
! 	  else
! 	    {
! 	      note = find_reg_note (insn, REG_LABEL_TARGET, old_label);
! 	      if (note)
! 		remove_note (insn, note);
! 	      if (JUMP_LABEL (insn) != new_label
! 		  && !find_reg_note (insn, REG_LABEL_TARGET, new_label))
! 		add_reg_note (insn, REG_LABEL_TARGET, new_label);
! 	    }
! 	  while ((note = find_reg_note (insn, REG_LABEL_OPERAND, old_label))
! 		 != NULL_RTX)
! 	    XEXP (note, 0) = new_label;
! 	}
      }
  
    if (EDGE_COUNT (e->src->succs) >= 2 || abnormal_edge_flags || asm_goto_edge)
--- 1595,1614 ----
      }
  
    /* If e->src ends with asm goto, see if any of the ASM_OPERANDS_LABELs
!      don't point to the fallthru label.  */
    if (JUMP_P (BB_END (e->src))
        && target != EXIT_BLOCK_PTR_FOR_FN (cfun)
        && (e->flags & EDGE_FALLTHRU)
        && (note = extract_asm_operands (PATTERN (BB_END (e->src)))))
      {
!       int n = ASM_OPERANDS_LABEL_LENGTH (note);
  
!       for (int i = 0; i < n; ++i)
! 	if (XEXP (ASM_OPERANDS_LABEL (note, i), 0) == BB_HEAD (e->dest))
! 	  {
  	    asm_goto_edge = true;
! 	    break;
! 	  }
      }
  
    if (EDGE_COUNT (e->src->succs) >= 2 || abnormal_edge_flags || asm_goto_edge)
*************** force_nonfallthru_and_redirect (edge e,
*** 1681,1695 ****
           and the reg crossing note should be removed.  */
        fixup_partition_crossing (new_edge);
  
!       /* If asm goto has any label refs to target's label,
! 	 add also edge from asm goto bb to target.  */
        if (asm_goto_edge)
  	{
! 	  new_edge->probability /= 2;
! 	  jump_block->count /= 2;
! 	  edge new_edge2 = make_edge (new_edge->src, target,
! 				      e->flags & ~EDGE_FALLTHRU);
! 	  new_edge2->probability = probability - new_edge->probability;
  	}
  
        new_bb = jump_block;
--- 1647,1691 ----
           and the reg crossing note should be removed.  */
        fixup_partition_crossing (new_edge);
  
!       /* If asm goto has any label refs to e->dest, change them to point
! 	 to jump_block instead.  */
        if (asm_goto_edge)
  	{
! 	  int n = ASM_OPERANDS_LABEL_LENGTH (note);
! 
! 	  for (int i = 0; i < n; ++i)
! 	    if (XEXP (ASM_OPERANDS_LABEL (note, i), 0) == BB_HEAD (e->dest))
! 	      {
! 		LABEL_NUSES (XEXP (ASM_OPERANDS_LABEL (note, i), 0))--;
! 		XEXP (ASM_OPERANDS_LABEL (note, i), 0)
! 		  = block_label (jump_block);
! 		LABEL_NUSES (XEXP (ASM_OPERANDS_LABEL (note, i), 0))++;
! 	      }
! 
! 	  rtx_insn *insn = BB_END (new_edge->src);
! 	  rtx note;
! 	  rtx_insn *old_label = BB_HEAD (e->dest);
! 	  rtx_insn *new_label = BB_HEAD (jump_block);
! 
! 	  if (JUMP_LABEL (insn) == old_label)
! 	    {
! 	      JUMP_LABEL (insn) = new_label;
! 	      note = find_reg_note (insn, REG_LABEL_TARGET, new_label);
! 	      if (note)
! 		remove_note (insn, note);
! 	    }
! 	  else
! 	    {
! 	      note = find_reg_note (insn, REG_LABEL_TARGET, old_label);
! 	      if (note)
! 		remove_note (insn, note);
! 	      if (JUMP_LABEL (insn) != new_label
! 		  && !find_reg_note (insn, REG_LABEL_TARGET, new_label))
! 		add_reg_note (insn, REG_LABEL_TARGET, new_label);
! 	    }
! 	  while ((note = find_reg_note (insn, REG_LABEL_OPERAND, old_label))
! 		 != NULL_RTX)
! 	    XEXP (note, 0) = new_label;
  	}
  
        new_bb = jump_block;
diff -Nrcpad gcc-14-20260313/gcc/combine.cc gcc-14-20260320/gcc/combine.cc
*** gcc-14-20260313/gcc/combine.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/combine.cc	Fri Mar 20 22:32:06 2026
*************** try_combine (rtx_insn *i3, rtx_insn *i2,
*** 4016,4022 ****
  	  && !(GET_CODE (SET_DEST (set1)) == SUBREG
  	       && find_reg_note (i2, REG_DEAD,
  				 SUBREG_REG (SET_DEST (set1))))
! 	  && SET_DEST (set1) != pc_rtx
  	  && !reg_used_between_p (SET_DEST (set1), i2, i3)
  	  /* If I3 is a jump, ensure that set0 is a jump so that
  	     we do not create invalid RTL.  */
--- 4016,4022 ----
  	  && !(GET_CODE (SET_DEST (set1)) == SUBREG
  	       && find_reg_note (i2, REG_DEAD,
  				 SUBREG_REG (SET_DEST (set1))))
! 	  && !modified_between_p (SET_DEST (set1), i2, i3)
  	  && !reg_used_between_p (SET_DEST (set1), i2, i3)
  	  /* If I3 is a jump, ensure that set0 is a jump so that
  	     we do not create invalid RTL.  */
*************** try_combine (rtx_insn *i3, rtx_insn *i2,
*** 4032,4038 ****
  	       && !(GET_CODE (SET_DEST (set0)) == SUBREG
  		    && find_reg_note (i2, REG_DEAD,
  				      SUBREG_REG (SET_DEST (set0))))
! 	       && SET_DEST (set0) != pc_rtx
  	       && !reg_used_between_p (SET_DEST (set0), i2, i3)
  	       /* If I3 is a jump, ensure that set1 is a jump so that
  		  we do not create invalid RTL.  */
--- 4032,4038 ----
  	       && !(GET_CODE (SET_DEST (set0)) == SUBREG
  		    && find_reg_note (i2, REG_DEAD,
  				      SUBREG_REG (SET_DEST (set0))))
! 	       && !modified_between_p (SET_DEST (set0), i2, i3)
  	       && !reg_used_between_p (SET_DEST (set0), i2, i3)
  	       /* If I3 is a jump, ensure that set1 is a jump so that
  		  we do not create invalid RTL.  */
*************** recog_for_combine (rtx *pnewpat, rtx_ins
*** 11691,11697 ****
        rtx src = SET_SRC (pat);
        if (CONSTANT_P (src)
  	  && !CONST_INT_P (src)
! 	  && crtl->uses_const_pool)
  	{
  	  machine_mode mode = GET_MODE (src);
  	  if (mode == VOIDmode)
--- 11691,11698 ----
        rtx src = SET_SRC (pat);
        if (CONSTANT_P (src)
  	  && !CONST_INT_P (src)
! 	  && crtl->uses_const_pool
! 	  && SET_DEST (pat) != pc_rtx)
  	{
  	  machine_mode mode = GET_MODE (src);
  	  if (mode == VOIDmode)
diff -Nrcpad gcc-14-20260313/gcc/config/aarch64/aarch64-builtins.cc gcc-14-20260320/gcc/config/aarch64/aarch64-builtins.cc
*** gcc-14-20260313/gcc/config/aarch64/aarch64-builtins.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/aarch64/aarch64-builtins.cc	Fri Mar 20 22:32:06 2026
*************** aarch64_init_ls64_builtins_types (void)
*** 1903,1908 ****
--- 1903,1909 ----
    const char *tuple_type_name = "__arm_data512_t";
    tree node_type = get_typenode_from_name (UINT64_TYPE);
    tree array_type = build_array_type_nelts (node_type, 8);
+   array_type = build_distinct_type_copy (array_type);
    SET_TYPE_MODE (array_type, V8DImode);
  
    gcc_assert (TYPE_MODE_RAW (array_type) == TYPE_MODE (array_type));
diff -Nrcpad gcc-14-20260313/gcc/config/aarch64/aarch64-early-ra.cc gcc-14-20260320/gcc/config/aarch64/aarch64-early-ra.cc
*** gcc-14-20260313/gcc/config/aarch64/aarch64-early-ra.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/aarch64/aarch64-early-ra.cc	Fri Mar 20 22:32:06 2026
*************** early_ra::form_chains ()
*** 2624,2646 ****
    if (dump_file && (dump_flags & TDF_DETAILS))
      fprintf (dump_file, "\nChaining allocnos:\n");
  
!   // Perform (modified) interval graph coloring.  First sort by
!   // increasing start point.
!   m_sorted_allocnos.reserve (m_allocnos.length ());
!   m_sorted_allocnos.splice (m_allocnos);
!   m_sorted_allocnos.qsort (cmp_increasing<&allocno_info::start_point>);
! 
!   // During this phase, color representatives are only correct for
!   // unprocessed allocno groups (where the color representative is
!   // the group itself) and for groups that contain a current chain head.
!   unsigned int ti = 0;
!   auto_vec<chain_candidate_info> candidates;
!   for (unsigned int hi = 0; hi < m_sorted_allocnos.length (); ++hi)
      {
-       auto *allocno1 = m_sorted_allocnos[hi];
-       if (allocno1->chain_next != INVALID_ALLOCNO)
- 	continue;
- 
        // Record conflicts with direct uses for FPR hard registers.
        auto *group1 = allocno1->group ();
        for (unsigned int fpr = allocno1->offset; fpr < 32; ++fpr)
--- 2624,2633 ----
    if (dump_file && (dump_flags & TDF_DETAILS))
      fprintf (dump_file, "\nChaining allocnos:\n");
  
!   // Record conflicts of hard register and ABI conflicts before the
!   // forming of chains so chains have the updated candidates
!   for (auto *allocno1 : m_allocnos)
      {
        // Record conflicts with direct uses for FPR hard registers.
        auto *group1 = allocno1->group ();
        for (unsigned int fpr = allocno1->offset; fpr < 32; ++fpr)
*************** early_ra::form_chains ()
*** 2656,2661 ****
--- 2643,2671 ----
  	    auto fprs = partial_fpr_clobbers (abi_id, group1->fpr_size);
  	    group1->fpr_candidates &= ~fprs >> allocno1->offset;
  	  }
+       if (allocno1->is_shared ())
+ 	{
+ 	  auto *allocno2 = m_allocnos[allocno1->related_allocno];
+ 	  merge_fpr_info (allocno2->group (), group1, allocno2->offset);
+ 	}
+     }
+ 
+   // Perform (modified) interval graph coloring.  First sort by
+   // increasing start point.
+   m_sorted_allocnos.reserve (m_allocnos.length ());
+   m_sorted_allocnos.splice (m_allocnos);
+   m_sorted_allocnos.qsort (cmp_increasing<&allocno_info::start_point>);
+ 
+   // During this phase, color representatives are only correct for
+   // unprocessed allocno groups (where the color representative is
+   // the group itself) and for groups that contain a current chain head.
+   unsigned int ti = 0;
+   auto_vec<chain_candidate_info> candidates;
+   for (unsigned int hi = 0; hi < m_sorted_allocnos.length (); ++hi)
+     {
+       auto *allocno1 = m_sorted_allocnos[hi];
+       if (allocno1->chain_next != INVALID_ALLOCNO)
+ 	continue;
  
        if (allocno1->is_shared ())
  	{
*************** early_ra::form_chains ()
*** 2663,2670 ****
  	    fprintf (dump_file, "  Allocno %d shares the same hard register"
  		     " as allocno %d\n", allocno1->id,
  		     allocno1->related_allocno);
- 	  auto *allocno2 = m_allocnos[allocno1->related_allocno];
- 	  merge_fpr_info (allocno2->group (), group1, allocno2->offset);
  	  m_shared_allocnos.safe_push (allocno1);
  	  continue;
  	}
--- 2673,2678 ----
diff -Nrcpad gcc-14-20260313/gcc/config/aarch64/aarch64-sve-builtins.cc gcc-14-20260320/gcc/config/aarch64/aarch64-sve-builtins.cc
*** gcc-14-20260313/gcc/config/aarch64/aarch64-sve-builtins.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/aarch64/aarch64-sve-builtins.cc	Fri Mar 20 22:32:06 2026
*************** public:
*** 92,98 ****
  };
  
  /* Hash traits for registered_function.  */
! struct registered_function_hasher : nofree_ptr_hash <registered_function>
  {
    typedef function_instance compare_type;
  
--- 92,98 ----
  };
  
  /* Hash traits for registered_function.  */
! struct registered_function_hasher : ggc_ptr_hash <registered_function>
  {
    typedef function_instance compare_type;
  
*************** tree acle_svprfop;
*** 934,945 ****
  static GTY(()) vec<registered_function *, va_gc> *registered_functions;
  
  /* Stores the starting function index for each pragma handler.  */
! static unsigned int initial_indexes[NUM_PRAGMA_HANDLERS];
  
  /* All registered function decls, hashed on the function_instance
     that they implement.  This is used for looking up implementations of
     overloaded functions.  */
! static hash_table<registered_function_hasher> *function_table;
  
  /* Index 0 maps all overloaded function names that we've registered so far to
     their associated function_instances.  Index 1 does the same for functions
--- 934,945 ----
  static GTY(()) vec<registered_function *, va_gc> *registered_functions;
  
  /* Stores the starting function index for each pragma handler.  */
! static  GTY(()) unsigned int initial_indexes[NUM_PRAGMA_HANDLERS];
  
  /* All registered function decls, hashed on the function_instance
     that they implement.  This is used for looking up implementations of
     overloaded functions.  */
! static GTY(()) hash_table<registered_function_hasher> *function_table;
  
  /* Index 0 maps all overloaded function names that we've registered so far to
     their associated function_instances.  Index 1 does the same for functions
*************** handle_arm_sve_h (bool function_nulls_p)
*** 4585,4591 ****
    register_svprfop ();
  
    /* Define the functions.  */
!   function_table = new hash_table<registered_function_hasher> (1023);
    function_builder builder (arm_sve_handle, function_nulls_p);
    for (unsigned int i = 0; i < ARRAY_SIZE (function_groups); ++i)
      builder.register_function_group (function_groups[i]);
--- 4585,4591 ----
    register_svprfop ();
  
    /* Define the functions.  */
!   function_table = hash_table<registered_function_hasher>::create_ggc (1023);
    function_builder builder (arm_sve_handle, function_nulls_p);
    for (unsigned int i = 0; i < ARRAY_SIZE (function_groups); ++i)
      builder.register_function_group (function_groups[i]);
diff -Nrcpad gcc-14-20260313/gcc/config/aarch64/aarch64-sve2.md gcc-14-20260320/gcc/config/aarch64/aarch64-sve2.md
*** gcc-14-20260313/gcc/config/aarch64/aarch64-sve2.md	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/aarch64/aarch64-sve2.md	Fri Mar 20 22:32:06 2026
***************
*** 3136,3144 ****
  	     UNSPEC_REVD_ONLY)]
  	  UNSPEC_PRED_X))]
    "TARGET_STREAMING_SME"
!   {@ [ cons: =0 , 1   , 2 ; attrs: movprfx ]
!      [ w        , Upl , 0 ; *              ] revd\t%0.q, %1/m, %2.q
!      [ ?&w      , Upl , w ; yes            ] movprfx\t%0, %2\;revd\t%0.q, %1/m, %2.q
    }
  )
  
--- 3136,3143 ----
  	     UNSPEC_REVD_ONLY)]
  	  UNSPEC_PRED_X))]
    "TARGET_STREAMING_SME"
!   {@ [ cons: =0 , 1   , 2 ]
!      [ w        , Upl , 0 ] revd\t%0.q, %1/m, %2.q
    }
  )
  
***************
*** 3152,3160 ****
  	   (match_operand:SVE_FULL 3 "register_operand")]
  	  UNSPEC_SEL))]
    "TARGET_STREAMING_SME"
!   {@ [ cons: =0 , 1   , 2 , 3  ; attrs: movprfx ]
!      [ w        , Upl , w , 0  ; *              ] revd\t%0.q, %1/m, %2.q
!      [ ?&w      , Upl , w , w  ; yes            ] movprfx\t%0, %3\;revd\t%0.q, %1/m, %2.q
    }
  )
  
--- 3151,3158 ----
  	   (match_operand:SVE_FULL 3 "register_operand")]
  	  UNSPEC_SEL))]
    "TARGET_STREAMING_SME"
!   {@ [ cons: =0 , 1   , 2 , 3 ]
!      [ w        , Upl , w , 0 ] revd\t%0.q, %1/m, %2.q
    }
  )
  
diff -Nrcpad gcc-14-20260313/gcc/config/i386/i386-expand.cc gcc-14-20260320/gcc/config/i386/i386-expand.cc
*** gcc-14-20260313/gcc/config/i386/i386-expand.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/i386/i386-expand.cc	Fri Mar 20 22:32:06 2026
*************** ix86_expand_builtin (tree exp, rtx targe
*** 13561,13567 ****
  	for (i = 0; i < 3; i++)
  	  xmm_regs[i] = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
  
! 	if (target == 0)
  	  target = gen_reg_rtx (SImode);
  
  	emit_insn (gen_encodekey128u32 (target, op0));
--- 13561,13567 ----
  	for (i = 0; i < 3; i++)
  	  xmm_regs[i] = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
  
! 	if (target == 0 || !register_operand (target, SImode))
  	  target = gen_reg_rtx (SImode);
  
  	emit_insn (gen_encodekey128u32 (target, op0));
*************** ix86_expand_builtin (tree exp, rtx targe
*** 13604,13610 ****
  	for (i = 0; i < 4; i++)
  	  xmm_regs[i] = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
  
! 	if (target == 0)
  	  target = gen_reg_rtx (SImode);
  
  	emit_insn (gen_encodekey256u32 (target, op0));
--- 13604,13610 ----
  	for (i = 0; i < 4; i++)
  	  xmm_regs[i] = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
  
! 	if (target == 0 || !register_operand (target, SImode))
  	  target = gen_reg_rtx (SImode);
  
  	emit_insn (gen_encodekey256u32 (target, op0));
*************** ix86_expand_builtin (tree exp, rtx targe
*** 13740,13746 ****
  	  }
  	else
  	  {
! 	    if (target == 0)
  	      target = gen_reg_rtx (DImode);
  	    icode = CODE_FOR_urdmsr;
  	    op1 = op0;
--- 13740,13746 ----
  	  }
  	else
  	  {
! 	    if (target == 0 || !register_operand (target, DImode))
  	      target = gen_reg_rtx (DImode);
  	    icode = CODE_FOR_urdmsr;
  	    op1 = op0;
diff -Nrcpad gcc-14-20260313/gcc/config/i386/i386.cc gcc-14-20260320/gcc/config/i386/i386.cc
*** gcc-14-20260313/gcc/config/i386/i386.cc	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/i386/i386.cc	Fri Mar 20 22:32:06 2026
*************** avx_vpermilp_parallel (rtx par, machine_
*** 20023,20029 ****
  	}
        for (i = 2; i < 4; ++i)
  	{
! 	  if (ipar[i] < 2)
  	    return 0;
  	  mask |= (ipar[i] - 2) << i;
  	}
--- 20023,20029 ----
  	}
        for (i = 2; i < 4; ++i)
  	{
! 	  if (ipar[i] < 2 || ipar[i] >= 4)
  	    return 0;
  	  mask |= (ipar[i] - 2) << i;
  	}
diff -Nrcpad gcc-14-20260313/gcc/config/i386/i386.md gcc-14-20260320/gcc/config/i386/i386.md
*** gcc-14-20260313/gcc/config/i386/i386.md	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/i386/i386.md	Fri Mar 20 22:32:06 2026
***************
*** 24723,24729 ****
    [(set (match_operand:HF 0 "nonimmediate_operand" "=v,m,v")
  	(unspec:HF
  	  [(match_operand:HF 1 "nonimmediate_operand" "m,v,v")
! 	   (match_operand:HF 2 "nonimm_or_0_operand" "0C,0C,0C")
  	   (match_operand:QI 3 "register_operand" "Yk,Yk,Yk")]
  	  UNSPEC_MOVCC_MASK))]
    "TARGET_AVX512FP16"
--- 24723,24729 ----
    [(set (match_operand:HF 0 "nonimmediate_operand" "=v,m,v")
  	(unspec:HF
  	  [(match_operand:HF 1 "nonimmediate_operand" "m,v,v")
! 	   (match_operand:HF 2 "nonimm_or_0_operand" "0C,0,0C")
  	   (match_operand:QI 3 "register_operand" "Yk,Yk,Yk")]
  	  UNSPEC_MOVCC_MASK))]
    "TARGET_AVX512FP16"
***************
*** 27706,27712 ****
  		     (match_operand:SWI48 1 "memory_operand" "m")]
  		    UNSPECV_WRSS)]
    "TARGET_SHSTK"
!   "wrss<mskmodesuffix>\t%0, %1"
    [(set_attr "length" "3")
     (set_attr "type" "other")])
  
--- 27706,27712 ----
  		     (match_operand:SWI48 1 "memory_operand" "m")]
  		    UNSPECV_WRSS)]
    "TARGET_SHSTK"
!   "wrss<mskmodesuffix>\t{%0, %1|%1, %0}"
    [(set_attr "length" "3")
     (set_attr "type" "other")])
  
***************
*** 27715,27721 ****
  		     (match_operand:SWI48 1 "memory_operand" "m")]
  		    UNSPECV_WRUSS)]
    "TARGET_SHSTK"
!   "wruss<mskmodesuffix>\t%0, %1"
    [(set_attr "length" "4")
     (set_attr "type" "other")])
  
--- 27715,27721 ----
  		     (match_operand:SWI48 1 "memory_operand" "m")]
  		    UNSPECV_WRUSS)]
    "TARGET_SHSTK"
!   "wruss<mskmodesuffix>\t{%0, %1|%1, %0}"
    [(set_attr "length" "4")
     (set_attr "type" "other")])
  
diff -Nrcpad gcc-14-20260313/gcc/config/i386/sse.md gcc-14-20260320/gcc/config/i386/sse.md
*** gcc-14-20260313/gcc/config/i386/sse.md	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/i386/sse.md	Fri Mar 20 22:32:06 2026
***************
*** 1617,1623 ****
  	  (match_operand:<ssevecmode> 4 "const0_operand")
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vmov<ssescalarmodesuffix>\t{%1, %0%{%3%}%N2|%0%{3%}%N2, %1}"
    [(set_attr "type" "ssemov")
     (set_attr "prefix" "evex")
     (set_attr "memory" "load")
--- 1617,1623 ----
  	  (match_operand:<ssevecmode> 4 "const0_operand")
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vmov<ssescalarmodesuffix>\t{%1, %0%{%3%}%N2|%0%{%3%}%N2, %1}"
    [(set_attr "type" "ssemov")
     (set_attr "prefix" "evex")
     (set_attr "memory" "load")
***************
*** 6291,6297 ****
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfmadd231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>3, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
--- 6291,6297 ----
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfmadd231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>1, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
***************
*** 6365,6371 ****
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfmsub231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>3, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
--- 6365,6371 ----
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfmsub231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>1, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
***************
*** 6426,6432 ****
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfnmadd231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>3, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
--- 6426,6432 ----
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfnmadd231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>1, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
***************
*** 6503,6509 ****
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfnmsub231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>3, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
--- 6503,6509 ----
  	  (match_dup 3)
  	  (const_int 1)))]
    "TARGET_AVX512F"
!   "vfnmsub231<ssescalarmodesuffix>\t{<round_op5>%2, %1, %0%{%4%}|%0%{%4%}, %<iptr>1, %<iptr>2<round_op5>}"
    [(set_attr "type" "ssemuladd")
     (set_attr "prefix" "evex")
     (set_attr "mode" "<MODE>")])
diff -Nrcpad gcc-14-20260313/gcc/config/i386/xmmintrin.h gcc-14-20260320/gcc/config/i386/xmmintrin.h
*** gcc-14-20260313/gcc/config/i386/xmmintrin.h	Fri Mar 13 22:32:06 2026
--- gcc-14-20260320/gcc/config/i386/xmmintrin.h	Fri Mar 20 22:32:06 2026
*************** _mm_maskmove_si64 (__m64 __A, __m64 __N,
*** 1181,1197 ****
    __v2di __N128 = __extension__ (__v2di) { ((__v1di) __N)[0], 0 };
  
    /* Check the alignment of __P.  */
!   __SIZE_TYPE__ offset = ((__SIZE_TYPE__) __P) & 0xf;
!   if (offset)
      {
        /* If the misalignment of __P > 8, subtract __P by 8 bytes.
  	 Otherwise, subtract __P by the misalignment.  */
!       if (offset > 8)
! 	offset = 8;
!       __P = (char *) (((__SIZE_TYPE__) __P) - offset);
  
        /* Shift __A128 and __N128 to the left by the adjustment.  */
!       switch (offset)
  	{
  	case 1:
  	  __A128 = __builtin_ia32_pslldqi128 (__A128, 8);
--- 1181,1197 ----
    __v2di __N128 = __extension__ (__v2di) { ((__v1di) __N)[0], 0 };
  
    /* Check the alignment of __P.  */
!   __SIZE_TYPE__ __offset = ((__SIZE_TYPE__) __P) & 0xf;
!   if (__offset)
      {
        /* If the misalignment of __P > 8, subtract __P by 8 bytes.
  	 Otherwise, subtract __P by the misalignment.  */
!       if (__offset > 8)
! 	__offset = 8;
!       __P = (char *) (((__SIZE_TYPE__) __P) - __offset);
  
        /* Shift __A128 and __N128 to the left by the adjustment.  */
!       switch (__offset)
  	{
  	case 1:
  	  __A128 = __builtin_ia32_pslldqi128 (__A128, 8);
diff -Nrcpad gcc-14-20260313/gcc/cp/ChangeLog gcc-14-20260320/gcc/cp/ChangeLog
*** gcc-14-20260313/gcc/cp/ChangeLog	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/ChangeLog	Fri Mar 20 22:32:06 2026
***************
*** 1,3 ****
--- 1,143 ----
+ 2026-03-17  Marek Polacek  <polacek@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-16  Marek Polacek  <polacek@redhat.com>
+ 
+ 	PR c++/124489
+ 	* error.cc (dump_type) <case NULLPTR_TYPE>: Use pp_cxx_ws_string
+ 	instead of pp_string.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-12  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	* parser.cc (cp_parser_omp_taskwait): Set TREE_TYPE of OMP_TASK
+ 	to void_type_node rather than void_node.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/120685
+ 	* typeck2.cc (build_functional_cast_1): For C++23 auto(x)
+ 	without tf_warning or tf_error return error_mark_node instead of
+ 	emitting pedwarn and handling it.
+ 	* semantics.cc (finish_compound_literal): Similarly for C++26
+ 	auto{x}.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-09  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123889
+ 	* constexpr.cc (explain_invalid_constexpr_fn): Diagnose
+ 	NULL or error_mark_node massaged on non-constructor.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-27  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123578
+ 	* tree.cc (cxx_printable_name_internal): Call lang_decl_name before
+ 	finding the slot to cache it in and repeat search in the cache
+ 	after the call.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-24  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123667
+ 	* semantics.cc (finish_decltype_type): Allow a structured binding
+ 	for ptds.saved to have DECL_HAS_VALUE_EXPR_P cleared, if it is
+ 	not within current_function_decl, but in that case assert that
+ 	lookup_decomp_type succeeded.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-24  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123684
+ 	* name-lookup.cc (handle_namespace_attrs): Only handle visibility and
+ 	abi_tag attributes in the gnu namespace and deprecated attribute in
+ 	the standard or gnu namespaces.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-23  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123597
+ 	* parser.cc (substitute_in_tree_walker, substitute_in_tree): Don't
+ 	consider BIND_EXPRs with !BIND_EXPR_VARS redundant if
+ 	processing_template_decl.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/91388
+ 	* semantics.cc (finish_static_assert): Suppress -Wreturn-type warnings
+ 	in functions with failed assertions.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/122772
+ 	* tree.cc (cp_stabilize_bitfield_reference): New function.
+ 	(cp_stabilize_reference): Use it for stabilization of
+ 	clk_bitfield or clk_packed lvalues.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/122834
+ 	* typeck.cc (cp_compare_floating_point_conversion_ranks): Return
+ 	3 if fmt2->b is 10 except for _Float16 vs. _Decimal128, in that
+ 	case return -2.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-21  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/121445
+ 	* constexpr.cc (build_data_member_initialization): Just return
+ 	false if member is COMPONENT_REF of COMPONENT_REF with
+ 	VAR_P get_base_address.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-20  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/120876
+ 	* pt.cc (tsubst_baselink): Move maybe_incomplete handling after
+ 	!baselink handling.
+ 
+ 2026-03-13  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	PR c++/123845
+ 	PR libstdc++/114865
+ 	* constexpr.cc (build_data_member_initialization): Remove
+ 	C++11-specific recognition of MODIFY_EXPR.
+ 	(check_constexpr_ctor_body): Relax error diagnostic to a
+ 	pedwarn and don't clear DECL_DECLARED_CONSTEXPR_P upon
+ 	error.  Return true if complaining.
+ 
  2026-01-27  Patrick Palka  <ppalka@redhat.com>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/gcc/cp/constexpr.cc gcc-14-20260320/gcc/cp/constexpr.cc
*** gcc-14-20260313/gcc/cp/constexpr.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/constexpr.cc	Fri Mar 20 22:32:06 2026
*************** build_data_member_initialization (tree t
*** 460,465 ****
--- 460,468 ----
        if (TREE_CODE (aggr) != COMPONENT_REF)
  	/* Normal member initialization.  */
  	member = TREE_OPERAND (member, 1);
+       else if (VAR_P (get_base_address (aggr)))
+ 	/* Initializing a local variable, don't add anything.  */
+ 	return true;
        else if (ANON_AGGR_TYPE_P (TREE_TYPE (aggr)))
  	/* Initializing a member of an anonymous union.  */
  	return build_anon_member_initialization (member, init, vec);
*************** explain_invalid_constexpr_fn (tree fun)
*** 1098,1103 ****
--- 1101,1109 ----
  		  require_potential_rvalue_constant_expression (body);
  		}
  	    }
+ 	  else if (body == NULL_TREE || body == error_mark_node)
+ 	    error ("body of %<constexpr%> function %qD not a return-statement",
+ 		   fun);
  	}
      }
  }
diff -Nrcpad gcc-14-20260313/gcc/cp/error.cc gcc-14-20260320/gcc/cp/error.cc
*** gcc-14-20260313/gcc/cp/error.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/error.cc	Fri Mar 20 22:32:06 2026
*************** dump_type (cxx_pretty_printer *pp, tree
*** 724,730 ****
        break;
  
      case NULLPTR_TYPE:
!       pp_string (pp, "std::nullptr_t");
        break;
  
      default:
--- 724,730 ----
        break;
  
      case NULLPTR_TYPE:
!       pp_cxx_ws_string (pp, "std::nullptr_t");
        break;
  
      default:
diff -Nrcpad gcc-14-20260313/gcc/cp/name-lookup.cc gcc-14-20260320/gcc/cp/name-lookup.cc
*** gcc-14-20260313/gcc/cp/name-lookup.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/name-lookup.cc	Fri Mar 20 22:32:06 2026
*************** handle_namespace_attrs (tree ns, tree at
*** 6411,6417 ****
        tree name = get_attribute_name (d);
        tree args = TREE_VALUE (d);
  
!       if (is_attribute_p ("visibility", name))
  	{
  	  /* attribute visibility is a property of the syntactic block
  	     rather than the namespace as a whole, so we don't touch the
--- 6411,6418 ----
        tree name = get_attribute_name (d);
        tree args = TREE_VALUE (d);
  
!       if (is_attribute_p ("visibility", name)
! 	  && args != error_mark_node)
  	{
  	  /* attribute visibility is a property of the syntactic block
  	     rather than the namespace as a whole, so we don't touch the
*************** handle_namespace_attrs (tree ns, tree at
*** 6433,6439 ****
  	  push_visibility (TREE_STRING_POINTER (x), 1);
  	  saw_vis = true;
  	}
!       else if (is_attribute_p ("abi_tag", name))
  	{
  	  if (!DECL_NAME (ns))
  	    {
--- 6434,6441 ----
  	  push_visibility (TREE_STRING_POINTER (x), 1);
  	  saw_vis = true;
  	}
!       else if (is_attribute_p ("abi_tag", name)
! 	       && args != error_mark_node)
  	{
  	  if (!DECL_NAME (ns))
  	    {
*************** handle_namespace_attrs (tree ns, tree at
*** 6460,6466 ****
  	    DECL_ATTRIBUTES (ns) = tree_cons (name, args,
  					      DECL_ATTRIBUTES (ns));
  	}
!       else if (is_attribute_p ("deprecated", name))
  	{
  	  if (!DECL_NAME (ns))
  	    {
--- 6462,6469 ----
  	    DECL_ATTRIBUTES (ns) = tree_cons (name, args,
  					      DECL_ATTRIBUTES (ns));
  	}
!       else if (is_attribute_p ("deprecated", name)
! 	       && args != error_mark_node)
  	{
  	  if (!DECL_NAME (ns))
  	    {
diff -Nrcpad gcc-14-20260313/gcc/cp/parser.cc gcc-14-20260320/gcc/cp/parser.cc
*** gcc-14-20260313/gcc/cp/parser.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/parser.cc	Fri Mar 20 22:32:06 2026
*************** substitute_in_tree_walker (tree *tp, int
*** 45290,45295 ****
--- 45290,45298 ----
    else if (TREE_CODE (*tp) == BIND_EXPR
  	   && BIND_EXPR_BODY (*tp) == sit->orig
  	   && !BIND_EXPR_VARS (*tp)
+ 	   /* BIND_EXPRs in templates likely have NULL BIND_EXPR_VARS,
+ 	      are created by begin_compound_stmt and are not redundant.  */
+ 	   && !processing_template_decl
  	   && (sit->flatten || TREE_CODE (sit->repl) == BIND_EXPR))
      {
        *tp = sit->repl;
*************** substitute_in_tree (tree *context, tree
*** 45334,45340 ****
    struct sit_data data;
  
    gcc_assert (*context && orig && repl);
!   if (TREE_CODE (repl) == BIND_EXPR && !BIND_EXPR_VARS (repl))
      repl = BIND_EXPR_BODY (repl);
    data.orig = orig;
    data.repl = repl;
--- 45337,45348 ----
    struct sit_data data;
  
    gcc_assert (*context && orig && repl);
!   /* Look through redundant BIND_EXPR.  BIND_EXPRs in templates likely have
!      NULL BIND_EXPR_VARS, are created by begin_compound_stmt and are not
!      redundant.  */
!   if (TREE_CODE (repl) == BIND_EXPR
!       && !BIND_EXPR_VARS (repl)
!       && !processing_template_decl)
      repl = BIND_EXPR_BODY (repl);
    data.orig = orig;
    data.repl = repl;
*************** cp_parser_omp_taskwait (cp_parser *parse
*** 46383,46389 ****
    if (clauses)
      {
        tree stmt = make_node (OMP_TASK);
!       TREE_TYPE (stmt) = void_node;
        OMP_TASK_CLAUSES (stmt) = clauses;
        OMP_TASK_BODY (stmt) = NULL_TREE;
        SET_EXPR_LOCATION (stmt, pragma_tok->location);
--- 46391,46397 ----
    if (clauses)
      {
        tree stmt = make_node (OMP_TASK);
!       TREE_TYPE (stmt) = void_type_node;
        OMP_TASK_CLAUSES (stmt) = clauses;
        OMP_TASK_BODY (stmt) = NULL_TREE;
        SET_EXPR_LOCATION (stmt, pragma_tok->location);
diff -Nrcpad gcc-14-20260313/gcc/cp/pt.cc gcc-14-20260320/gcc/cp/pt.cc
*** gcc-14-20260313/gcc/cp/pt.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/pt.cc	Fri Mar 20 22:32:06 2026
*************** tsubst_baselink (tree baselink, tree obj
*** 17231,17236 ****
--- 17231,17245 ----
        bool maybe_incomplete = BASELINK_FUNCTIONS_MAYBE_INCOMPLETE_P (baselink);
        baselink = lookup_fnfields (qualifying_scope, name, /*protect=*/1,
  				  complain);
+       if (!baselink)
+ 	{
+ 	  if ((complain & tf_error)
+ 	      && constructor_name_p (name, qualifying_scope))
+ 	    error ("cannot call constructor %<%T::%D%> directly",
+ 		   qualifying_scope, name);
+ 	  return error_mark_node;
+ 	}
+ 
        if (maybe_incomplete)
  	{
  	  /* Filter out from the new lookup set those functions which didn't
*************** tsubst_baselink (tree baselink, tree obj
*** 17244,17258 ****
  	  BASELINK_FUNCTIONS_MAYBE_INCOMPLETE_P (baselink) = true;
  	}
  
-       if (!baselink)
- 	{
- 	  if ((complain & tf_error)
- 	      && constructor_name_p (name, qualifying_scope))
- 	    error ("cannot call constructor %<%T::%D%> directly",
- 		   qualifying_scope, name);
- 	  return error_mark_node;
- 	}
- 
        fns = BASELINK_FUNCTIONS (baselink);
      }
    else
--- 17253,17258 ----
diff -Nrcpad gcc-14-20260313/gcc/cp/semantics.cc gcc-14-20260320/gcc/cp/semantics.cc
*** gcc-14-20260313/gcc/cp/semantics.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/semantics.cc	Fri Mar 20 22:32:06 2026
*************** finish_compound_literal (tree type, tree
*** 3562,3570 ****
  	  return error_mark_node;
  	}
        else if (cxx_dialect < cxx23)
! 	pedwarn (input_location, OPT_Wc__23_extensions,
! 		 "%<auto{x}%> only available with "
! 		 "%<-std=c++2b%> or %<-std=gnu++2b%>");
        type = do_auto_deduction (type, compound_literal, type, complain,
  				adc_variable_type);
        if (type == error_mark_node)
--- 3562,3573 ----
  	  return error_mark_node;
  	}
        else if (cxx_dialect < cxx23)
! 	{
! 	  if ((complain & tf_warning_or_error) != 0)
! 	    pedwarn (input_location, OPT_Wc__23_extensions,
! 		     "%<auto{x}%> only available with "
! 		     "%<-std=c++2b%> or %<-std=gnu++2b%>");
! 	}
        type = do_auto_deduction (type, compound_literal, type, complain,
  				adc_variable_type);
        if (type == error_mark_node)
*************** finish_static_assert (tree condition, tr
*** 11857,11862 ****
--- 11860,11875 ----
  	  XDELETEVEC (buf);
  
  	  diagnose_failing_condition (bad, cloc, show_expr_p);
+ 
+ 	  /* Suppress -Wreturn-type for functions with failed static_asserts.
+ 	     Otherwise templates like:
+ 	     if constexpr (whatever)
+ 	       return something (args);
+ 	     else
+ 	       static_assert (false, "explanation");
+ 	     get a useless extra -Wreturn-type warning.  */
+ 	  if (current_function_decl)
+ 	    suppress_warning (current_function_decl, OPT_Wreturn_type);
  	}
        else if (condition && condition != error_mark_node)
  	{
*************** finish_decltype_type (tree expr, bool id
*** 11974,11985 ****
  	{
  	  if (ptds.saved)
  	    {
! 	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr));
  	      /* DECL_HAS_VALUE_EXPR_P is always set if
! 		 processing_template_decl.  If lookup_decomp_type
  		 returns non-NULL, it is the tuple case.  */
  	      if (tree ret = lookup_decomp_type (expr))
  		return ret;
  	    }
  	  if (DECL_HAS_VALUE_EXPR_P (expr))
  	    /* Expr is an array or struct subobject proxy, handle
--- 11987,12002 ----
  	{
  	  if (ptds.saved)
  	    {
! 	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr)
! 				   || (DECL_CONTEXT (expr)
! 				       != current_function_decl));
  	      /* DECL_HAS_VALUE_EXPR_P is always set if
! 		 processing_template_decl at least for structured bindings
! 		 within the template.  If lookup_decomp_type
  		 returns non-NULL, it is the tuple case.  */
  	      if (tree ret = lookup_decomp_type (expr))
  		return ret;
+ 	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr));
  	    }
  	  if (DECL_HAS_VALUE_EXPR_P (expr))
  	    /* Expr is an array or struct subobject proxy, handle
diff -Nrcpad gcc-14-20260313/gcc/cp/tree.cc gcc-14-20260320/gcc/cp/tree.cc
*** gcc-14-20260313/gcc/cp/tree.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/tree.cc	Fri Mar 20 22:32:06 2026
*************** non_mergeable_glvalue_p (const_tree ref)
*** 424,429 ****
--- 424,506 ----
  	  && !(kind & (clk_class|clk_mergeable)));
  }
  
+ /* C++-specific version of stabilize_reference for bit-fields and
+    DECL_PACKED fields.  We can't bind a reference to those.  */
+ 
+ static tree
+ cp_stabilize_bitfield_reference (tree ref)
+ {
+   tree op1, op2, op3;
+   STRIP_ANY_LOCATION_WRAPPER (ref);
+   switch (TREE_CODE (ref))
+     {
+     case VAR_DECL:
+     case PARM_DECL:
+     case RESULT_DECL:
+     CASE_CONVERT:
+     case FLOAT_EXPR:
+     case FIX_TRUNC_EXPR:
+     case INDIRECT_REF:
+     case COMPONENT_REF:
+     case BIT_FIELD_REF:
+     case ARRAY_REF:
+     case ARRAY_RANGE_REF:
+     case ERROR_MARK:
+     case REALPART_EXPR:
+     case IMAGPART_EXPR:
+     default:
+       break;
+     case COMPOUND_EXPR:
+       op2 = cp_stabilize_bitfield_reference (TREE_OPERAND (ref, 1));
+       if (op2 == TREE_OPERAND (ref, 1))
+ 	return ref;
+       op1 = TREE_OPERAND (ref, 0);
+       if (TREE_SIDE_EFFECTS (op1))
+ 	{
+ 	  if (VOID_TYPE_P (TREE_TYPE (op1)))
+ 	    op1 = save_expr (op1);
+ 	  else
+ 	    {
+ 	      op1 = build2 (COMPOUND_EXPR, void_type_node, op1,
+ 			    void_node);
+ 	      op1 = save_expr (op1);
+ 	    }
+ 	}
+       return build2 (COMPOUND_EXPR, TREE_TYPE (op2), op1, op2);
+     case COND_EXPR:
+       op1 = TREE_OPERAND (ref, 0);
+       op2 = TREE_OPERAND (ref, 1);
+       op3 = TREE_OPERAND (ref, 2);
+       if (op2 && TREE_CODE (op2) != THROW_EXPR)
+ 	op2 = cp_stabilize_bitfield_reference (op2);
+       if (TREE_CODE (op3) != THROW_EXPR)
+ 	op3 = cp_stabilize_bitfield_reference (op3);
+       if (op2 == NULL_TREE)
+ 	op1 = cp_stabilize_bitfield_reference (op1);
+       if (op1 == TREE_OPERAND (ref, 0)
+ 	  && op2 == TREE_OPERAND (ref, 1)
+ 	  && op3 == TREE_OPERAND (ref, 2))
+ 	return ref;
+       if (op2 != NULL_TREE && TREE_SIDE_EFFECTS (op1))
+ 	op1 = save_expr (op1);
+       return build3 (COND_EXPR, TREE_TYPE (ref), op1, op2, op3);
+     case PREINCREMENT_EXPR:
+     case PREDECREMENT_EXPR:
+       op1 = cp_stabilize_bitfield_reference (TREE_OPERAND (ref, 0));
+       if (op1 == TREE_OPERAND (ref, 0))
+ 	return ref;
+       return build2 (COMPOUND_EXPR, TREE_TYPE (ref),
+ 		     build2 (TREE_CODE (ref), TREE_TYPE (ref), op1,
+ 			     TREE_OPERAND (ref, 0)), op1);
+     case PAREN_EXPR:
+       op1 = cp_stabilize_bitfield_reference (TREE_OPERAND (ref, 0));
+       if (op1 == TREE_OPERAND (ref, 0))
+ 	return ref;
+       return build1 (PAREN_EXPR, TREE_TYPE (ref), op1);
+     }
+   return stabilize_reference (ref);
+ }
+ 
  /* C++-specific version of stabilize_reference.  */
  
  tree
*************** cp_stabilize_reference (tree ref)
*** 455,460 ****
--- 532,539 ----
        cp_lvalue_kind kind = lvalue_kind (ref);
        if ((kind & ~clk_class) != clk_none)
  	{
+ 	  if (kind & (clk_bitfield | clk_packed))
+ 	    return cp_stabilize_bitfield_reference (ref);
  	  tree type = unlowered_expr_type (ref);
  	  bool rval = !!(kind & clk_rvalueref);
  	  type = cp_build_reference_type (type, rval);
*************** cxx_printable_name_internal (tree decl,
*** 2717,2722 ****
--- 2796,2810 ----
        /* yes, so return it.  */
        return print_ring[i];
  
+   const char *ret = lang_decl_name (decl, v, translate);
+ 
+   /* The lang_decl_name call could have called this function recursively,
+      so check again.  */
+   for (i = 0; i < PRINT_RING_SIZE; i++)
+     if (uid_ring[i] == DECL_UID (decl) && translate == trans_ring[i])
+       /* yes, so return it.  */
+       return print_ring[i];
+ 
    if (++ring_counter == PRINT_RING_SIZE)
      ring_counter = 0;
  
*************** cxx_printable_name_internal (tree decl,
*** 2736,2742 ****
  
    free (print_ring[ring_counter]);
  
!   print_ring[ring_counter] = xstrdup (lang_decl_name (decl, v, translate));
    uid_ring[ring_counter] = DECL_UID (decl);
    trans_ring[ring_counter] = translate;
    return print_ring[ring_counter];
--- 2824,2830 ----
  
    free (print_ring[ring_counter]);
  
!   print_ring[ring_counter] = xstrdup (ret);
    uid_ring[ring_counter] = DECL_UID (decl);
    trans_ring[ring_counter] = translate;
    return print_ring[ring_counter];
diff -Nrcpad gcc-14-20260313/gcc/cp/typeck.cc gcc-14-20260320/gcc/cp/typeck.cc
*** gcc-14-20260313/gcc/cp/typeck.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/typeck.cc	Fri Mar 20 22:32:06 2026
*************** cp_compare_floating_point_conversion_ran
*** 305,311 ****
  
    const struct real_format *fmt1 = REAL_MODE_FORMAT (TYPE_MODE (t1));
    const struct real_format *fmt2 = REAL_MODE_FORMAT (TYPE_MODE (t2));
!   gcc_assert (fmt1->b == 2 && fmt2->b == 2);
    /* For {ibm,mips}_extended_format formats, the type has variable
       precision up to ~2150 bits when the first double is around maximum
       representable double and second double is subnormal minimum.
--- 305,334 ----
  
    const struct real_format *fmt1 = REAL_MODE_FORMAT (TYPE_MODE (t1));
    const struct real_format *fmt2 = REAL_MODE_FORMAT (TYPE_MODE (t2));
!   /* Currently, extended floating point types are only binary, and
!      they never have a proper subset or superset of values with
!      decimal floating point types except for the _Float16 vs. _Decimal128
!      pair, so return 3 for unordered conversion ranks.  */
!   gcc_assert (fmt1->b == 2);
!   if (fmt2->b == 10)
!     {
!       /* _Float16 needs at most 21 decimal digits (e.g.
! 	 0x1.a3cp-14f16 is exactly 0.000100076198577880859375DL),
! 	 so it is not a proper subset of _Decimal64 but is subset
! 	 of _Decimal128.  While std::bfloat16_t needs at most 96
! 	 decimal digits, so even _Decimal128 doesn't cover it.
! 	 _Float32 has at least one value which needs 112 decimal
! 	 digits, _Float64 at least 767 decimal digits.  */
!       if (fmt1->emin == -13
! 	  && fmt1->emax == 16
! 	  && fmt1->p == 11
! 	  && fmt2->emin == -6142
! 	  && fmt2->emax == 6145
! 	  && fmt2->p == 34)
! 	return -2;
!       return 3;
!     }
!   gcc_assert (fmt2->b == 2);
    /* For {ibm,mips}_extended_format formats, the type has variable
       precision up to ~2150 bits when the first double is around maximum
       representable double and second double is subnormal minimum.
diff -Nrcpad gcc-14-20260313/gcc/cp/typeck2.cc gcc-14-20260320/gcc/cp/typeck2.cc
*** gcc-14-20260313/gcc/cp/typeck2.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/cp/typeck2.cc	Fri Mar 20 22:32:06 2026
*************** build_functional_cast_1 (location_t loc,
*** 2469,2477 ****
  	      return error_mark_node;
  	    }
  	  else if (cxx_dialect < cxx23)
! 	    pedwarn (loc, OPT_Wc__23_extensions,
! 		     "%<auto(x)%> only available with "
! 		     "%<-std=c++2b%> or %<-std=gnu++2b%>");
  	}
        else
  	{
--- 2469,2480 ----
  	      return error_mark_node;
  	    }
  	  else if (cxx_dialect < cxx23)
! 	    {
! 	      if ((complain & tf_warning_or_error) != 0)
! 		pedwarn (loc, OPT_Wc__23_extensions,
! 			 "%<auto(x)%> only available with "
! 			 "%<-std=c++2b%> or %<-std=gnu++2b%>");
! 	    }
  	}
        else
  	{
diff -Nrcpad gcc-14-20260313/gcc/doc/install.texi gcc-14-20260320/gcc/doc/install.texi
*** gcc-14-20260313/gcc/doc/install.texi	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/doc/install.texi	Fri Mar 20 22:32:06 2026
*************** Same as @uref{#with-as,,@option{--with-a
*** 1195,1201 ****
  but for the debug linker (only used on Darwin platforms so far).
  
  @item --with-tls=@var{dialect}
! Specify the default TLS dialect, for systems were there is a choice.
  For ARM targets, possible values for @var{dialect} are @code{gnu} or
  @code{gnu2}, which select between the original GNU dialect and the GNU TLS
  descriptor-based dialect.
--- 1195,1201 ----
  but for the debug linker (only used on Darwin platforms so far).
  
  @item --with-tls=@var{dialect}
! Specify the default TLS dialect, for systems where there is a choice.
  For ARM targets, possible values for @var{dialect} are @code{gnu} or
  @code{gnu2}, which select between the original GNU dialect and the GNU TLS
  descriptor-based dialect.
diff -Nrcpad gcc-14-20260313/gcc/doc/invoke.texi gcc-14-20260320/gcc/doc/invoke.texi
*** gcc-14-20260313/gcc/doc/invoke.texi	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/doc/invoke.texi	Fri Mar 20 22:32:06 2026
*************** the next @option{-x} option.  Possible v
*** 1677,1689 ****
  @smallexample
  c  c-header  cpp-output
  c++  c++-header  c++-system-header c++-user-header c++-cpp-output
! objective-c  objective-c-header  objective-c-cpp-output
! objective-c++ objective-c++-header objective-c++-cpp-output
  assembler  assembler-with-cpp
! ada
  d
! f77  f77-cpp-input f95  f95-cpp-input
  go
  @end smallexample
  
  @item -x none
--- 1677,1693 ----
  @smallexample
  c  c-header  cpp-output
  c++  c++-header  c++-system-header c++-user-header c++-cpp-output
! objective-c  objective-c-header  objective-c-cpp-output  objc-cpp-output
! objective-c++  objective-c++-header  objective-c++-cpp-output
! objc++-cpp-output
  assembler  assembler-with-cpp
! ada  adascil  adawhy
  d
! f77  f77-cpp-input  f95  f95-cpp-input
  go
+ modula-2  modula-2-cpp-output
+ rust
+ lto
  @end smallexample
  
  @item -x none
diff -Nrcpad gcc-14-20260313/gcc/dse.cc gcc-14-20260320/gcc/dse.cc
*** gcc-14-20260313/gcc/dse.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/dse.cc	Fri Mar 20 22:32:06 2026
*************** canon_address (rtx mem,
*** 1190,1196 ****
        address = strip_offset_and_add (address, offset);
  
        if (ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (mem))
! 	  && const_or_frame_p (address))
  	{
  	  group_info *group = get_group_info (address);
  
--- 1190,1199 ----
        address = strip_offset_and_add (address, offset);
  
        if (ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (mem))
! 	  && const_or_frame_p (address)
! 	  /* Literal addresses can alias any base, avoid creating a
! 	     group for them.  */
! 	  && ! CONST_SCALAR_INT_P (address))
  	{
  	  group_info *group = get_group_info (address);
  
diff -Nrcpad gcc-14-20260313/gcc/dwarf2out.cc gcc-14-20260320/gcc/dwarf2out.cc
*** gcc-14-20260313/gcc/dwarf2out.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/dwarf2out.cc	Fri Mar 20 22:32:06 2026
*************** equate_type_number_to_die (tree type, dw
*** 5959,5965 ****
  static dw_die_ref maybe_create_die_with_external_ref (tree);
  struct GTY(()) sym_off_pair 
  {
!   const char * GTY((skip)) sym;
    unsigned HOST_WIDE_INT off;
  };
  static GTY(()) hash_map<tree, sym_off_pair> *external_die_map;
--- 5959,5965 ----
  static dw_die_ref maybe_create_die_with_external_ref (tree);
  struct GTY(()) sym_off_pair 
  {
!   const char *sym;
    unsigned HOST_WIDE_INT off;
  };
  static GTY(()) hash_map<tree, sym_off_pair> *external_die_map;
diff -Nrcpad gcc-14-20260313/gcc/fortran/ChangeLog gcc-14-20260320/gcc/fortran/ChangeLog
*** gcc-14-20260313/gcc/fortran/ChangeLog	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/ChangeLog	Fri Mar 20 22:32:06 2026
***************
*** 1,3 ****
--- 1,47 ----
+ 2026-03-19  Mikael Morin  <morin-mikael@orange.fr>
+ 
+ 	Backported from master:
+ 	2025-09-24  Mikael Morin  <morin-mikael@orange.fr>
+ 
+ 	PR fortran/122046
+ 	* symbol.cc (gfc_get_procedure_ns): Try to find the namespace
+ 	among the list of contained namespaces before returning the
+ 	value from the formal_ns field.
+ 
+ 2026-03-19  Paul Thomas  <pault@gcc.gnu.org>
+ 
+ 	Backported from master:
+ 	2026-03-19  Paul Thomas  <pault@gcc.gnu.org>
+ 
+ 	PR fortran/124161
+ 	* resolve.cc (resolve_symbol): Do not apply the default
+ 	initializer if the symbol is used in a submodule.
+ 
+ 2026-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+ 
+ 	Backported from master:
+ 	2026-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+ 
+ 	PR fortran/106946
+ 	PR fortran/124482
+ 	* decl.cc (gfc_match_data_decl): Defer CLASS container cleanup
+ 	until after all failed components are unlinked.  Check remaining
+ 	component list before freeing a shared container.
+ 	* gfortran.h (gfc_free_component): Declare.
+ 	(gfc_delete_symtree): Declare.
+ 	* symbol.cc (gfc_free_component): New function.
+ 	(free_components): Use it.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-12  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR fortran/124450
+ 	* trans-io.cc (transfer_expr): If code is NULL, call
+ 	transfer_array_component with NULL where argument rather than
+ 	&code->loc.
+ 
  2025-10-25  Harald Anlauf  <anlauf@gmx.de>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/gcc/fortran/decl.cc gcc-14-20260320/gcc/fortran/decl.cc
*** gcc-14-20260313/gcc/fortran/decl.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/decl.cc	Fri Mar 20 22:32:06 2026
*************** gfc_match_data_decl (void)
*** 6311,6322 ****
--- 6311,6338 ----
    gfc_symbol *sym;
    match m;
    int elem;
+   gfc_component *comp_tail = NULL;
  
    type_param_spec_list = NULL;
    decl_type_param_list = NULL;
  
    num_idents_on_line = 0;
  
+   /* Record the last component before we start, so that we can roll back
+      any components added during this statement on error.  PR106946.
+      Must be set before any 'goto cleanup' with m == MATCH_ERROR.  */
+   if (gfc_comp_struct (gfc_current_state ()))
+     {
+       gfc_symbol *block = gfc_current_block ();
+       if (block)
+ 	{
+ 	  comp_tail = block->components;
+ 	  if (comp_tail)
+ 	    while (comp_tail->next)
+ 	      comp_tail = comp_tail->next;
+ 	}
+     }
+ 
    m = gfc_match_decl_type_spec (&current_ts, 0);
    if (m != MATCH_YES)
      return m;
*************** ok:
*** 6436,6441 ****
--- 6452,6531 ----
    gfc_free_data_all (gfc_current_ns);
  
  cleanup:
+   /* If we failed inside a derived type definition, remove any CLASS
+      components that were added during this failed statement.  For CLASS
+      components, gfc_build_class_symbol creates an extra container symbol in
+      the namespace outside the normal undo machinery.  When reject_statement
+      later calls gfc_undo_symbols, the declaration state is rolled back but
+      that helper symbol survives and leaves the component dangling.  Ordinary
+      components do not create that extra helper symbol, so leave them in
+      place for the usual follow-up diagnostics.  PR106946.
+ 
+      CLASS containers are shared between components of the same class type
+      and attributes (gfc_build_class_symbol reuses existing containers).
+      We must not free a container that is still referenced by a previously
+      committed component.  Unlink and free the components first, then clean
+      up only orphaned containers.  PR124482.  */
+   if (m == MATCH_ERROR && gfc_comp_struct (gfc_current_state ()))
+     {
+       gfc_symbol *block = gfc_current_block ();
+       if (block)
+ 	{
+ 	  gfc_component **prev;
+ 	  if (comp_tail)
+ 	    prev = &comp_tail->next;
+ 	  else
+ 	    prev = &block->components;
+ 
+ 	  /* Record the CLASS container from the removed components.
+ 	     Normally all components in one declaration share a single
+ 	     container, but per-variable array specs can produce
+ 	     additional ones; any beyond the first are harmlessly
+ 	     leaked until namespace destruction.  */
+ 	  gfc_symbol *fclass_container = NULL;
+ 
+ 	  while (*prev)
+ 	    {
+ 	      gfc_component *c = *prev;
+ 	      if (c->ts.type == BT_CLASS && c->ts.u.derived
+ 		  && c->ts.u.derived->attr.is_class)
+ 		{
+ 		  *prev = c->next;
+ 		  if (!fclass_container)
+ 		    fclass_container = c->ts.u.derived;
+ 		  c->ts.u.derived = NULL;
+ 		  gfc_free_component (c);
+ 		}
+ 	      else
+ 		prev = &c->next;
+ 	    }
+ 
+ 	  /* Free the container only if no remaining component still
+ 	     references it.  CLASS containers are shared between
+ 	     components of the same class type and attributes
+ 	     (gfc_build_class_symbol reuses existing ones).  */
+ 	  if (fclass_container)
+ 	    {
+ 	      bool shared = false;
+ 	      for (gfc_component *q = block->components; q; q = q->next)
+ 		if (q->ts.type == BT_CLASS
+ 		    && q->ts.u.derived == fclass_container)
+ 		  {
+ 		    shared = true;
+ 		    break;
+ 		  }
+ 	      if (!shared)
+ 		{
+ 		  if (gfc_find_symtree (fclass_container->ns->sym_root,
+ 					fclass_container->name))
+ 		    gfc_delete_symtree (&fclass_container->ns->sym_root,
+ 					fclass_container->name);
+ 		  gfc_release_symbol (fclass_container);
+ 		}
+ 	    }
+ 	}
+     }
+ 
    if (saved_kind_expr)
      gfc_free_expr (saved_kind_expr);
    if (type_param_spec_list)
diff -Nrcpad gcc-14-20260313/gcc/fortran/gfortran.h gcc-14-20260320/gcc/fortran/gfortran.h
*** gcc-14-20260313/gcc/fortran/gfortran.h	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/gfortran.h	Fri Mar 20 22:32:06 2026
*************** bool gfc_missing_attr (symbol_attribute
*** 3543,3548 ****
--- 3543,3549 ----
  bool gfc_copy_attr (symbol_attribute *, symbol_attribute *, locus *);
  int gfc_copy_dummy_sym (gfc_symbol **, gfc_symbol *, int);
  bool gfc_add_component (gfc_symbol *, const char *, gfc_component **);
+ void gfc_free_component (gfc_component *);
  gfc_symbol *gfc_use_derived (gfc_symbol *);
  gfc_component *gfc_find_component (gfc_symbol *, const char *, bool, bool,
                                     gfc_ref **);
*************** bool gfc_reference_st_label (gfc_st_labe
*** 3556,3561 ****
--- 3557,3563 ----
  
  gfc_namespace *gfc_get_namespace (gfc_namespace *, int);
  gfc_symtree *gfc_new_symtree (gfc_symtree **, const char *);
+ void gfc_delete_symtree (gfc_symtree **, const char *);
  gfc_symtree *gfc_find_symtree (gfc_symtree *, const char *);
  gfc_symtree *gfc_get_unique_symtree (gfc_namespace *);
  gfc_user_op *gfc_get_uop (const char *);
diff -Nrcpad gcc-14-20260313/gcc/fortran/resolve.cc gcc-14-20260320/gcc/fortran/resolve.cc
*** gcc-14-20260313/gcc/fortran/resolve.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/resolve.cc	Fri Mar 20 22:32:06 2026
*************** skip_interfaces:
*** 17134,17141 ****
  	  || (a->dummy && !a->pointer && a->intent == INTENT_OUT
  	      && sym->ns->proc_name->attr.if_source != IFSRC_IFBODY))
  	apply_default_init (sym);
!       else if (a->function && !a->pointer && !a->allocatable && !a->use_assoc
! 	       && sym->result)
  	/* Default initialization for function results.  */
  	apply_default_init (sym->result);
        else if (a->function && sym->result && a->access != ACCESS_PRIVATE
--- 17134,17141 ----
  	  || (a->dummy && !a->pointer && a->intent == INTENT_OUT
  	      && sym->ns->proc_name->attr.if_source != IFSRC_IFBODY))
  	apply_default_init (sym);
!       else if (a->function && !a->pointer && !a->allocatable
! 	       && !a->use_assoc && !a->used_in_submodule && sym->result)
  	/* Default initialization for function results.  */
  	apply_default_init (sym->result);
        else if (a->function && sym->result && a->access != ACCESS_PRIVATE
diff -Nrcpad gcc-14-20260313/gcc/fortran/symbol.cc gcc-14-20260320/gcc/fortran/symbol.cc
*** gcc-14-20260313/gcc/fortran/symbol.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/symbol.cc	Fri Mar 20 22:32:06 2026
*************** gfc_find_component (gfc_symbol *sym, con
*** 2667,2672 ****
--- 2667,2687 ----
  /* Given a symbol, free all of the component structures and everything
     they point to.  */
  
+ void
+ gfc_free_component (gfc_component *p)
+ {
+   gfc_free_array_spec (p->as);
+   gfc_free_expr (p->initializer);
+   if (p->kind_expr)
+     gfc_free_expr (p->kind_expr);
+   if (p->param_list)
+     gfc_free_actual_arglist (p->param_list);
+   free (p->tb);
+   p->tb = NULL;
+   free (p);
+ }
+ 
+ 
  static void
  free_components (gfc_component *p)
  {
*************** free_components (gfc_component *p)
*** 2675,2690 ****
    for (; p; p = q)
      {
        q = p->next;
! 
!       gfc_free_array_spec (p->as);
!       gfc_free_expr (p->initializer);
!       if (p->kind_expr)
! 	gfc_free_expr (p->kind_expr);
!       if (p->param_list)
! 	gfc_free_actual_arglist (p->param_list);
!       free (p->tb);
!       p->tb = NULL;
!       free (p);
      }
  }
  
--- 2690,2696 ----
    for (; p; p = q)
      {
        q = p->next;
!       gfc_free_component (p);
      }
  }
  
*************** gfc_new_symtree (gfc_symtree **root, con
*** 3015,3021 ****
  
  /* Delete a symbol from the tree.  Does not free the symbol itself!  */
  
! static void
  gfc_delete_symtree (gfc_symtree **root, const char *name)
  {
    gfc_symtree st, *st0;
--- 3021,3027 ----
  
  /* Delete a symbol from the tree.  Does not free the symbol itself!  */
  
! void
  gfc_delete_symtree (gfc_symtree **root, const char *name)
  {
    gfc_symtree st, *st0;
*************** gfc_namespace *
*** 5460,5466 ****
  gfc_get_procedure_ns (gfc_symbol *sym)
  {
    if (sym->formal_ns
!       && sym->formal_ns->proc_name == sym)
      return sym->formal_ns;
  
    /* The above should have worked in most cases.  If it hasn't, try some other
--- 5466,5481 ----
  gfc_get_procedure_ns (gfc_symbol *sym)
  {
    if (sym->formal_ns
!       && sym->formal_ns->proc_name == sym
!       /* For module procedures used in submodules, there are two namespaces.
! 	 The one generated by the host association of the module is directly
! 	 accessible through SYM->FORMAL_NS but doesn't have any parent set.
! 	 The one generated by the parser is only accessible by walking the
! 	 contained namespace but has its parent set.  Prefer the one generated
! 	 by the parser below.  */
!       && !(sym->attr.used_in_submodule
! 	   && sym->attr.contained
! 	   && sym->formal_ns->parent == nullptr))
      return sym->formal_ns;
  
    /* The above should have worked in most cases.  If it hasn't, try some other
*************** gfc_get_procedure_ns (gfc_symbol *sym)
*** 5475,5480 ****
--- 5490,5499 ----
        if (ns->proc_name == sym)
  	return ns;
  
+   if (sym->formal_ns
+       && sym->formal_ns->proc_name == sym)
+     return sym->formal_ns;
+ 
    if (sym->formal)
      for (gfc_formal_arglist *f = sym->formal; f != nullptr; f = f->next)
        if (f->sym)
diff -Nrcpad gcc-14-20260313/gcc/fortran/trans-io.cc gcc-14-20260320/gcc/fortran/trans-io.cc
*** gcc-14-20260313/gcc/fortran/trans-io.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/fortran/trans-io.cc	Fri Mar 20 22:32:06 2026
*************** transfer_expr (gfc_se * se, gfc_typespec
*** 2496,2502 ****
  
  		  if (c->attr.dimension)
  		    {
! 		      tmp = transfer_array_component (tmp, c, & code->loc);
  		      gfc_add_expr_to_block (&se->pre, tmp);
  		    }
  		  else
--- 2496,2504 ----
  
  		  if (c->attr.dimension)
  		    {
! 		      tmp = transfer_array_component (tmp, c,
! 						      code ? &code->loc
! 						      : NULL);
  		      gfc_add_expr_to_block (&se->pre, tmp);
  		    }
  		  else
diff -Nrcpad gcc-14-20260313/gcc/gimple-lower-bitint.cc gcc-14-20260320/gcc/gimple-lower-bitint.cc
*** gcc-14-20260313/gcc/gimple-lower-bitint.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/gimple-lower-bitint.cc	Fri Mar 20 22:32:06 2026
*************** gimple_lower_bitint (void)
*** 7131,7136 ****
--- 7131,7141 ----
  							   vtype, c));
  			}
  		      gsi_insert_on_edge (e, g);
+ 		      if (min_prec == prec)
+ 			{
+ 			  edge_insertions = true;
+ 			  break;
+ 			}
  		    }
  		  if (ext == 0)
  		    {
diff -Nrcpad gcc-14-20260313/gcc/gimple-range-op.cc gcc-14-20260320/gcc/gimple-range-op.cc
*** gcc-14-20260313/gcc/gimple-range-op.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/gimple-range-op.cc	Fri Mar 20 22:32:06 2026
*************** gimple_range_op_handler::maybe_non_stand
*** 1164,1200 ****
    gcc_checking_assert (signed_op);
    range_op_handler unsigned_op (OP_WIDEN_MULT_UNSIGNED);
    gcc_checking_assert (unsigned_op);
  
    if (gimple_code (m_stmt) == GIMPLE_ASSIGN)
      switch (gimple_assign_rhs_code (m_stmt))
        {
  	case WIDEN_MULT_EXPR:
- 	{
  	  m_op1 = gimple_assign_rhs1 (m_stmt);
  	  m_op2 = gimple_assign_rhs2 (m_stmt);
! 	  tree ret = gimple_assign_lhs (m_stmt);
! 	  bool signed1 = TYPE_SIGN (TREE_TYPE (m_op1)) == SIGNED;
! 	  bool signed2 = TYPE_SIGN (TREE_TYPE (m_op2)) == SIGNED;
! 	  bool signed_ret = TYPE_SIGN (TREE_TYPE (ret)) == SIGNED;
! 
! 	  /* Normally these operands should all have the same sign, but
! 	     some passes and violate this by taking mismatched sign args.  At
! 	     the moment the only one that's possible is mismatch inputs and
! 	     unsigned output.  Once ranger supports signs for the operands we
! 	     can properly fix it,  for now only accept the case we can do
! 	     correctly.  */
! 	  if ((signed1 ^ signed2) && signed_ret)
! 	    return;
! 
! 	  if (signed2 && !signed1)
! 	    std::swap (m_op1, m_op2);
  
! 	  if (signed1 || signed2)
  	    m_operator = signed_op.range_op ();
  	  else
  	    m_operator = unsigned_op.range_op ();
  	  break;
! 	}
  	default:
  	  break;
        }
--- 1164,1194 ----
    gcc_checking_assert (signed_op);
    range_op_handler unsigned_op (OP_WIDEN_MULT_UNSIGNED);
    gcc_checking_assert (unsigned_op);
+   range_op_handler signed_unsigned_op (OP_WIDEN_MULT_SIGNED_UNSIGNED);
+   gcc_checking_assert (signed_unsigned_op);
+   bool signed1, signed2;
  
    if (gimple_code (m_stmt) == GIMPLE_ASSIGN)
      switch (gimple_assign_rhs_code (m_stmt))
        {
  	case WIDEN_MULT_EXPR:
  	  m_op1 = gimple_assign_rhs1 (m_stmt);
  	  m_op2 = gimple_assign_rhs2 (m_stmt);
! 	  signed1 = TYPE_SIGN (TREE_TYPE (m_op1)) == SIGNED;
! 	  signed2 = TYPE_SIGN (TREE_TYPE (m_op2)) == SIGNED;
  
! 	  if (signed1 != signed2)
! 	    {
! 	      if (signed2 && !signed1)
! 		std::swap (m_op1, m_op2);
! 	      m_operator = signed_unsigned_op.range_op ();
! 	    }
! 	  else if (signed1)
  	    m_operator = signed_op.range_op ();
  	  else
  	    m_operator = unsigned_op.range_op ();
  	  break;
! 
  	default:
  	  break;
        }
*************** gimple_range_op_handler::maybe_builtin_c
*** 1220,1225 ****
--- 1214,1221 ----
    switch (func)
      {
      case CFN_BUILT_IN_CONSTANT_P:
+       if (gimple_call_num_args (call) != 1)
+ 	return;
        m_op1 = gimple_call_arg (call, 0);
        if (irange::supports_p (TREE_TYPE (m_op1)))
  	m_operator = &op_cfn_constant_p;
*************** gimple_range_op_handler::maybe_builtin_c
*** 1228,1233 ****
--- 1224,1231 ----
        break;
  
      CASE_FLT_FN (CFN_BUILT_IN_SIGNBIT):
+       if (gimple_call_num_args (call) != 1)
+ 	return;
        m_op1 = gimple_call_arg (call, 0);
        m_operator = &op_cfn_signbit;
        break;
*************** gimple_range_op_handler::maybe_builtin_c
*** 1358,1364 ****
      default:
        {
  	unsigned arg;
! 	if (gimple_call_fnspec (call).returns_arg (&arg) && arg == 0)
  	  {
  	    m_op1 = gimple_call_arg (call, 0);
  	    m_operator = &op_cfn_pass_through_arg1;
--- 1356,1364 ----
      default:
        {
  	unsigned arg;
! 	if (gimple_call_fnspec (call).returns_arg (&arg)
! 	    && arg == 0
! 	    && gimple_call_num_args (call) > 0)
  	  {
  	    m_op1 = gimple_call_arg (call, 0);
  	    m_operator = &op_cfn_pass_through_arg1;
diff -Nrcpad gcc-14-20260313/gcc/gimplify-me.cc gcc-14-20260320/gcc/gimplify-me.cc
*** gcc-14-20260313/gcc/gimplify-me.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/gimplify-me.cc	Fri Mar 20 22:32:06 2026
*************** gimple_regimplify_operands (gimple *stmt
*** 232,240 ****
  	  else if (i == 2
  		   && gimple_assign_single_p (stmt)
  		   && num_ops == 2)
! 	    gimplify_expr (&op, &pre, NULL,
! 			   rhs_predicate_for (gimple_assign_lhs (stmt)),
! 			   fb_rvalue);
  	  else if (i == 2 && is_gimple_call (stmt))
  	    {
  	      if (TREE_CODE (op) == FUNCTION_DECL)
--- 232,244 ----
  	  else if (i == 2
  		   && gimple_assign_single_p (stmt)
  		   && num_ops == 2)
! 	    {
! 	      if (gimple_clobber_p (stmt))
! 		continue;
! 	      gimplify_expr (&op, &pre, NULL,
! 			     rhs_predicate_for (gimple_assign_lhs (stmt)),
! 			     fb_rvalue);
! 	    }
  	  else if (i == 2 && is_gimple_call (stmt))
  	    {
  	      if (TREE_CODE (op) == FUNCTION_DECL)
*************** gimple_regimplify_operands (gimple *stmt
*** 253,260 ****
  	{
  	  bool need_temp = false;
  
! 	  if (gimple_assign_single_p (stmt)
! 	      && num_ops == 2)
  	    gimplify_expr (gimple_assign_rhs1_ptr (stmt), &pre, NULL,
  			   rhs_predicate_for (gimple_assign_lhs (stmt)),
  			   fb_rvalue);
--- 257,265 ----
  	{
  	  bool need_temp = false;
  
! 	  if (gimple_clobber_p (stmt))
! 	    ;
! 	  else if (gimple_assign_single_p (stmt) && num_ops == 2)
  	    gimplify_expr (gimple_assign_rhs1_ptr (stmt), &pre, NULL,
  			   rhs_predicate_for (gimple_assign_lhs (stmt)),
  			   fb_rvalue);
diff -Nrcpad gcc-14-20260313/gcc/gimplify.cc gcc-14-20260320/gcc/gimplify.cc
*** gcc-14-20260313/gcc/gimplify.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/gimplify.cc	Fri Mar 20 22:32:06 2026
*************** gimplify_call_expr (tree *expr_p, gimple
*** 3874,3879 ****
--- 3874,3899 ----
  	  *expr_p = NULL_TREE;
  	  return GS_ALL_DONE;
  	}
+       else if (ifn == IFN_UBSAN_BOUNDS
+ 	       && nargs == 3
+ 	       && integer_onep (CALL_EXPR_ARG (*expr_p, 0)))
+ 	{
+ 	  /* If first argument is one, add TYPE_MAX_VALUE (TYPE_DOMAIN (t))
+ 	     to 3rd argument and change first argument to 0.  This is
+ 	     done by ubsan_instrument_bounds so that we can use the
+ 	     max value from gimplify_type_sizes here instead of original
+ 	     expression for VLAs.  */
+ 	  tree type = TREE_TYPE (CALL_EXPR_ARG (*expr_p, 0));
+ 	  CALL_EXPR_ARG (*expr_p, 0) = build_int_cst (type, 0);
+ 	  gcc_assert (TREE_CODE (type) == POINTER_TYPE);
+ 	  type = TREE_TYPE (type);
+ 	  gcc_assert (TREE_CODE (type) == ARRAY_TYPE);
+ 	  tree maxv = TYPE_MAX_VALUE (TYPE_DOMAIN (type));
+ 	  gcc_assert (maxv);
+ 	  tree arg3 = CALL_EXPR_ARG (*expr_p, 2);
+ 	  CALL_EXPR_ARG (*expr_p, 2)
+ 	    = fold_build2 (PLUS_EXPR, TREE_TYPE (arg3), maxv, arg3);
+ 	}
  
        for (i = 0; i < nargs; i++)
  	{
diff -Nrcpad gcc-14-20260313/gcc/ifcvt.cc gcc-14-20260320/gcc/ifcvt.cc
*** gcc-14-20260313/gcc/ifcvt.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/ifcvt.cc	Fri Mar 20 22:32:06 2026
*************** noce_emit_store_flag (struct noce_if_inf
*** 890,895 ****
--- 890,899 ----
    if (cond_complex || !SCALAR_INT_MODE_P (GET_MODE (x)))
      return NULL_RTX;
  
+   /* Don't try if mode of X is more than the max fixed mode size.  */
+   if (known_le (MAX_FIXED_MODE_SIZE, GET_MODE_BITSIZE (GET_MODE (x))))
+     return NULL_RTX;
+ 
    return emit_store_flag (x, code, XEXP (cond, 0),
  			  XEXP (cond, 1), VOIDmode,
  			  (code == LTU || code == LEU
diff -Nrcpad gcc-14-20260313/gcc/ipa-modref-tree.cc gcc-14-20260320/gcc/ipa-modref-tree.cc
*** gcc-14-20260313/gcc/ipa-modref-tree.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/ipa-modref-tree.cc	Fri Mar 20 22:32:06 2026
*************** modref_access_node::operator == (modref_
*** 59,65 ****
  bool
  modref_access_node::contains (const modref_access_node &a) const
  {
!   poly_int64 aoffset_adj = 0;
    if (parm_index != MODREF_UNKNOWN_PARM)
      {
        if (parm_index != a.parm_index)
--- 59,65 ----
  bool
  modref_access_node::contains (const modref_access_node &a) const
  {
!   poly_offset_int aoffset_adj = 0;
    if (parm_index != MODREF_UNKNOWN_PARM)
      {
        if (parm_index != a.parm_index)
*************** modref_access_node::contains (const modr
*** 80,86 ****
  	      a.offset may result in non-negative offset again.
  	      Ubsan fails on val << LOG_BITS_PER_UNIT where val
  	      is negative.  */
! 	   aoffset_adj = (a.parm_offset - parm_offset)
  			 * BITS_PER_UNIT;
  	}
      }
--- 80,87 ----
  	      a.offset may result in non-negative offset again.
  	      Ubsan fails on val << LOG_BITS_PER_UNIT where val
  	      is negative.  */
! 	   aoffset_adj = (poly_offset_int::from (a.parm_offset, SIGNED)
! 			  - poly_offset_int::from (parm_offset, SIGNED))
  			 * BITS_PER_UNIT;
  	}
      }
*************** modref_access_node::contains (const modr
*** 96,105 ****
  	      || !known_le (size, a.size)))
  	return false;
        if (known_size_p (max_size))
! 	return known_subrange_p (a.offset + aoffset_adj,
! 				 a.max_size, offset, max_size);
        else
! 	return known_le (offset, a.offset + aoffset_adj);
      }
    return true;
  }
--- 97,110 ----
  	      || !known_le (size, a.size)))
  	return false;
        if (known_size_p (max_size))
! 	return known_subrange_p (poly_offset_int::from (a.offset, SIGNED)
! 				 + aoffset_adj, a.max_size,
! 				 poly_offset_int::from (offset, SIGNED),
! 				 max_size);
        else
! 	return known_le (poly_offset_int::from (offset, SIGNED),
! 			 poly_offset_int::from (a.offset, SIGNED)
! 			 + aoffset_adj);
      }
    return true;
  }
diff -Nrcpad gcc-14-20260313/gcc/match.pd gcc-14-20260320/gcc/match.pd
*** gcc-14-20260313/gcc/match.pd	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/match.pd	Fri Mar 20 22:32:07 2026
*************** DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
*** 196,202 ****
  (simplify (abs (convert @0))
   (if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (@0))
        && !TYPE_UNSIGNED (TREE_TYPE (@0))
!       && element_precision (type) > element_precision (TREE_TYPE (@0)))
    (with { tree utype = unsigned_type_for (TREE_TYPE (@0)); }
     (convert (absu:utype @0)))))
  
--- 196,204 ----
  (simplify (abs (convert @0))
   (if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (@0))
        && !TYPE_UNSIGNED (TREE_TYPE (@0))
!       && element_precision (type) > element_precision (TREE_TYPE (@0))
!       && (!VECTOR_TYPE_P (type)
! 	  || target_supports_op_p (TREE_TYPE (@0), ABSU_EXPR, optab_vector)))
    (with { tree utype = unsigned_type_for (TREE_TYPE (@0)); }
     (convert (absu:utype @0)))))
  
*************** DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
*** 2906,2912 ****
  #if GENERIC
  (simplify
    (pointer_plus (convert:s (pointer_plus:s @0 @1)) @3)
!   (convert:type (pointer_plus @0 (plus @1 @3))))
  #endif
  
  /* Pattern match
--- 2908,2914 ----
  #if GENERIC
  (simplify
    (pointer_plus (convert:s (pointer_plus:s @0 @1)) @3)
!   (pointer_plus (convert:type @0) (plus @1 @3)))
  #endif
  
  /* Pattern match
*************** DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
*** 5161,5167 ****
   (if (VECTOR_TYPE_P (type) && VECTOR_TYPE_P (TREE_TYPE (@1))
        && known_eq (TYPE_VECTOR_SUBPARTS (type),
  		   TYPE_VECTOR_SUBPARTS (TREE_TYPE (@1)))
!       && tree_nop_conversion_p (TREE_TYPE (type), TREE_TYPE (TREE_TYPE (@1))))
    (vec_cond @0 (view_convert! @1) (view_convert! @2))))
  
  /* Sink binary operation to branches, but only if we can fold it.  */
--- 5163,5171 ----
   (if (VECTOR_TYPE_P (type) && VECTOR_TYPE_P (TREE_TYPE (@1))
        && known_eq (TYPE_VECTOR_SUBPARTS (type),
  		   TYPE_VECTOR_SUBPARTS (TREE_TYPE (@1)))
!       && tree_nop_conversion_p (TREE_TYPE (type), TREE_TYPE (TREE_TYPE (@1)))
!       && (expand_vec_cond_expr_p (type, TREE_TYPE (@0), ERROR_MARK)
! 	  || !expand_vec_cond_expr_p (TREE_TYPE (@1), TREE_TYPE (@0), ERROR_MARK)))
    (vec_cond @0 (view_convert! @1) (view_convert! @2))))
  
  /* Sink binary operation to branches, but only if we can fold it.  */
*************** DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
*** 7470,7476 ****
     (if (TYPE_UNSIGNED (TREE_TYPE (@0)))
      (convert (gt @0 (trunc_div! { TYPE_MAX_VALUE (TREE_TYPE (@0)); } @1)))
      (if (TYPE_MIN_VALUE (TREE_TYPE (@0)))
!      (if (integer_minus_onep (@1))
        (convert (eq @0 { TYPE_MIN_VALUE (TREE_TYPE (@0)); }))
        (with
         {
--- 7474,7480 ----
     (if (TYPE_UNSIGNED (TREE_TYPE (@0)))
      (convert (gt @0 (trunc_div! { TYPE_MAX_VALUE (TREE_TYPE (@0)); } @1)))
      (if (TYPE_MIN_VALUE (TREE_TYPE (@0)))
!      (if (!TYPE_UNSIGNED (TREE_TYPE (@1)) && integer_minus_onep (@1))
        (convert (eq @0 { TYPE_MIN_VALUE (TREE_TYPE (@0)); }))
        (with
         {
*************** and,
*** 9737,9746 ****
  	    unsigned int elt_bits = tree_to_uhwi (TYPE_SIZE (elt_type));
  	    tree size = bitsize_int (elt_bits);
  	    tree pos = bitsize_int (elt_bits * i); }
!      (view_convert
!       (bit_and:elt_type
!        (BIT_FIELD_REF:elt_type @0 { size; } { pos; })
!        { elt; })))))))
  
  /* Fold reduction of a single nonzero element constructor.  */
  (for reduc (IFN_REDUC_PLUS IFN_REDUC_IOR IFN_REDUC_XOR)
--- 9741,9751 ----
  	    unsigned int elt_bits = tree_to_uhwi (TYPE_SIZE (elt_type));
  	    tree size = bitsize_int (elt_bits);
  	    tree pos = bitsize_int (elt_bits * i); }
!      (if (compare_tree_int (TYPE_SIZE (type), elt_bits) == 0)
!       (view_convert
!        (bit_and:elt_type
!         (BIT_FIELD_REF:elt_type @0 { size; } { pos; })
!         { elt; }))))))))
  
  /* Fold reduction of a single nonzero element constructor.  */
  (for reduc (IFN_REDUC_PLUS IFN_REDUC_IOR IFN_REDUC_XOR)
*************** and,
*** 10316,10318 ****
--- 10321,10328 ----
        }
        (if (full_perm_p)
  	(vec_perm (op@3 @0 @1) @3 @2))))))
+ 
+ /* Strip nop-conversions __builtin_constant_p arguments.  */
+ (simplify
+  (BUILT_IN_CONSTANT_P (nop_convert@1 @0))
+  (BUILT_IN_CONSTANT_P @0))
diff -Nrcpad gcc-14-20260313/gcc/omp-expand.cc gcc-14-20260320/gcc/omp-expand.cc
*** gcc-14-20260313/gcc/omp-expand.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/omp-expand.cc	Fri Mar 20 22:32:07 2026
*************** extract_omp_for_update_vars (struct omp_
*** 3265,3271 ****
  	  if (DECL_P (v) && TREE_ADDRESSABLE (v))
  	    v = force_gimple_operand_gsi (&gsi, v, true, NULL_TREE,
  					  false, GSI_CONTINUE_LINKING);
! 	  t = fold_build2 (fd->loops[i].cond_code, boolean_type_node, v, t);
  	  stmt = gimple_build_cond_empty (t);
  	  gsi_insert_after (&gsi, stmt, GSI_CONTINUE_LINKING);
  	  if (walk_tree (gimple_cond_lhs_ptr (as_a <gcond *> (stmt)),
--- 3265,3271 ----
  	  if (DECL_P (v) && TREE_ADDRESSABLE (v))
  	    v = force_gimple_operand_gsi (&gsi, v, true, NULL_TREE,
  					  false, GSI_CONTINUE_LINKING);
! 	  t = build2 (fd->loops[i].cond_code, boolean_type_node, v, t);
  	  stmt = gimple_build_cond_empty (t);
  	  gsi_insert_after (&gsi, stmt, GSI_CONTINUE_LINKING);
  	  if (walk_tree (gimple_cond_lhs_ptr (as_a <gcond *> (stmt)),
diff -Nrcpad gcc-14-20260313/gcc/omp-low.cc gcc-14-20260320/gcc/omp-low.cc
*** gcc-14-20260313/gcc/omp-low.cc	Fri Mar 13 22:32:07 2026
--- gcc-14-20260320/gcc/omp-low.cc	Fri Mar 20 22:32:07 2026
*************** diagnose_sb_2 (gimple_stmt_iterator *gsi
*** 14936,14941 ****
--- 14936,14954 ----
        }
        break;
  
+     case GIMPLE_ASM:
+       {
+ 	gasm *asm_stmt = as_a <gasm *> (stmt);
+ 	for (unsigned i = 0; i < gimple_asm_nlabels (asm_stmt); ++i)
+ 	  {
+ 	    tree lab = TREE_VALUE (gimple_asm_label_op (asm_stmt, i));
+ 	    n = splay_tree_lookup (all_labels, (splay_tree_key) lab);
+ 	    if (n && diagnose_sb_0 (gsi_p, context, (gimple *) n->value))
+ 	      break;
+ 	  }
+       }
+       break;
+ 
      case GIMPLE_RETURN:
        diagnose_sb_0 (gsi_p, context, NULL);
        break;
diff -Nrcpad gcc-14-20260313/gcc/pointer-query.cc gcc-14-20260320/gcc/pointer-query.cc
*** gcc-14-20260313/gcc/pointer-query.cc	Fri Mar 13 22:32:08 2026
--- gcc-14-20260320/gcc/pointer-query.cc	Fri Mar 20 22:32:07 2026
*************** get_offset_range (tree x, gimple *stmt,
*** 74,80 ****
      x = TREE_OPERAND (x, 0);
  
    tree type = TREE_TYPE (x);
!   if (!INTEGRAL_TYPE_P (type) && !POINTER_TYPE_P (type))
      return false;
  
     if (TREE_CODE (x) != INTEGER_CST
--- 74,85 ----
      x = TREE_OPERAND (x, 0);
  
    tree type = TREE_TYPE (x);
!   if ((!INTEGRAL_TYPE_P (type)
!        /* ???  We get along without caring about overflow by using
! 	  offset_int, but that falls apart when indexes are bigger
! 	  than pointer differences.  */
!        || TYPE_PRECISION (type) > TYPE_PRECISION (ptrdiff_type_node))
!       && !POINTER_TYPE_P (type))
      return false;
  
     if (TREE_CODE (x) != INTEGER_CST
diff -Nrcpad gcc-14-20260313/gcc/range-op.cc gcc-14-20260320/gcc/range-op.cc
*** gcc-14-20260313/gcc/range-op.cc	Fri Mar 13 22:32:08 2026
--- gcc-14-20260320/gcc/range-op.cc	Fri Mar 20 22:32:07 2026
*************** operator_widen_mult_signed::wi_fold (ira
*** 2280,2291 ****
  				     const wide_int &rh_lb,
  				     const wide_int &rh_ub) const
  {
!   signop s = TYPE_SIGN (type);
! 
!   wide_int lh_wlb = wide_int::from (lh_lb, wi::get_precision (lh_lb) * 2, SIGNED);
!   wide_int lh_wub = wide_int::from (lh_ub, wi::get_precision (lh_ub) * 2, SIGNED);
!   wide_int rh_wlb = wide_int::from (rh_lb, wi::get_precision (rh_lb) * 2, s);
!   wide_int rh_wub = wide_int::from (rh_ub, wi::get_precision (rh_ub) * 2, s);
  
    /* We don't expect a widening multiplication to be able to overflow but range
       calculations for multiplications are complicated.  After widening the
--- 2280,2289 ----
  				     const wide_int &rh_lb,
  				     const wide_int &rh_ub) const
  {
!   wide_int lh_wlb = wide_int::from (lh_lb, TYPE_PRECISION (type), SIGNED);
!   wide_int lh_wub = wide_int::from (lh_ub, TYPE_PRECISION (type), SIGNED);
!   wide_int rh_wlb = wide_int::from (rh_lb, TYPE_PRECISION (type), SIGNED);
!   wide_int rh_wub = wide_int::from (rh_ub, TYPE_PRECISION (type), SIGNED);
  
    /* We don't expect a widening multiplication to be able to overflow but range
       calculations for multiplications are complicated.  After widening the
*************** operator_widen_mult_signed::wi_fold (ira
*** 2293,2299 ****
    return op_mult.wi_fold (r, type, lh_wlb, lh_wub, rh_wlb, rh_wub);
  }
  
- 
  class operator_widen_mult_unsigned : public range_operator
  {
  public:
--- 2291,2296 ----
*************** operator_widen_mult_unsigned::wi_fold (i
*** 2312,2323 ****
  				       const wide_int &rh_lb,
  				       const wide_int &rh_ub) const
  {
!   signop s = TYPE_SIGN (type);
  
!   wide_int lh_wlb = wide_int::from (lh_lb, wi::get_precision (lh_lb) * 2, UNSIGNED);
!   wide_int lh_wub = wide_int::from (lh_ub, wi::get_precision (lh_ub) * 2, UNSIGNED);
!   wide_int rh_wlb = wide_int::from (rh_lb, wi::get_precision (rh_lb) * 2, s);
!   wide_int rh_wub = wide_int::from (rh_ub, wi::get_precision (rh_ub) * 2, s);
  
    /* We don't expect a widening multiplication to be able to overflow but range
       calculations for multiplications are complicated.  After widening the
--- 2309,2347 ----
  				       const wide_int &rh_lb,
  				       const wide_int &rh_ub) const
  {
!   wide_int lh_wlb = wide_int::from (lh_lb, TYPE_PRECISION (type), UNSIGNED);
!   wide_int lh_wub = wide_int::from (lh_ub, TYPE_PRECISION (type), UNSIGNED);
!   wide_int rh_wlb = wide_int::from (rh_lb, TYPE_PRECISION (type), UNSIGNED);
!   wide_int rh_wub = wide_int::from (rh_ub, TYPE_PRECISION (type), UNSIGNED);
  
!   /* We don't expect a widening multiplication to be able to overflow but range
!      calculations for multiplications are complicated.  After widening the
!      operands lets call the base class.  */
!   return op_mult.wi_fold (r, type, lh_wlb, lh_wub, rh_wlb, rh_wub);
! }
! 
! class operator_widen_mult_signed_unsigned : public range_operator
! {
! public:
!   virtual void wi_fold (irange &r, tree type,
! 			const wide_int &lh_lb,
! 			const wide_int &lh_ub,
! 			const wide_int &rh_lb,
! 			const wide_int &rh_ub)
!     const;
! } op_widen_mult_signed_unsigned;
! 
! void
! operator_widen_mult_signed_unsigned::wi_fold (irange &r, tree type,
! 					      const wide_int &lh_lb,
! 					      const wide_int &lh_ub,
! 					      const wide_int &rh_lb,
! 					      const wide_int &rh_ub) const
! {
!   wide_int lh_wlb = wide_int::from (lh_lb, TYPE_PRECISION (type), SIGNED);
!   wide_int lh_wub = wide_int::from (lh_ub, TYPE_PRECISION (type), SIGNED);
!   wide_int rh_wlb = wide_int::from (rh_lb, TYPE_PRECISION (type), UNSIGNED);
!   wide_int rh_wub = wide_int::from (rh_ub, TYPE_PRECISION (type), UNSIGNED);
  
    /* We don't expect a widening multiplication to be able to overflow but range
       calculations for multiplications are complicated.  After widening the
*************** range_op_table::initialize_integral_ops
*** 4452,4457 ****
--- 4476,4482 ----
    set (ABSU_EXPR, op_absu);
    set (OP_WIDEN_MULT_SIGNED, op_widen_mult_signed);
    set (OP_WIDEN_MULT_UNSIGNED, op_widen_mult_unsigned);
+   set (OP_WIDEN_MULT_SIGNED_UNSIGNED, op_widen_mult_signed_unsigned);
    set (OP_WIDEN_PLUS_SIGNED, op_widen_plus_signed);
    set (OP_WIDEN_PLUS_UNSIGNED, op_widen_plus_unsigned);
  
diff -Nrcpad gcc-14-20260313/gcc/range-op.h gcc-14-20260320/gcc/range-op.h
*** gcc-14-20260313/gcc/range-op.h	Fri Mar 13 22:32:08 2026
--- gcc-14-20260320/gcc/range-op.h	Fri Mar 20 22:32:07 2026
*************** extern void wi_set_zero_nonzero_bits (tr
*** 287,297 ****
  // Add them to the end of the tree-code vector, and provide a name for
  // each allowing for easy access when required.
  
! #define OP_WIDEN_MULT_SIGNED	((unsigned) MAX_TREE_CODES)
! #define OP_WIDEN_MULT_UNSIGNED	((unsigned) MAX_TREE_CODES + 1)
! #define OP_WIDEN_PLUS_SIGNED	((unsigned) MAX_TREE_CODES + 2)
! #define OP_WIDEN_PLUS_UNSIGNED	((unsigned) MAX_TREE_CODES + 3)
! #define RANGE_OP_TABLE_SIZE	((unsigned) MAX_TREE_CODES + 4)
  
  // This implements the range operator tables as local objects.
  
--- 287,298 ----
  // Add them to the end of the tree-code vector, and provide a name for
  // each allowing for easy access when required.
  
! #define OP_WIDEN_MULT_SIGNED		((unsigned) MAX_TREE_CODES)
! #define OP_WIDEN_MULT_UNSIGNED		((unsigned) MAX_TREE_CODES + 1)
! #define OP_WIDEN_MULT_SIGNED_UNSIGNED	((unsigned) MAX_TREE_CODES + 2)
! #define OP_WIDEN_PLUS_SIGNED		((unsigned) MAX_TREE_CODES + 3)
! #define OP_WIDEN_PLUS_UNSIGNED		((unsigned) MAX_TREE_CODES + 4)
! #define RANGE_OP_TABLE_SIZE		((unsigned) MAX_TREE_CODES + 5)
  
  // This implements the range operator tables as local objects.
  
diff -Nrcpad gcc-14-20260313/gcc/stmt.cc gcc-14-20260320/gcc/stmt.cc
*** gcc-14-20260313/gcc/stmt.cc	Fri Mar 13 22:32:08 2026
--- gcc-14-20260320/gcc/stmt.cc	Fri Mar 20 22:32:07 2026
*************** parse_input_constraint (const char **con
*** 332,337 ****
--- 332,338 ----
  
    /* Make sure constraint has neither `=', `+', nor '&'.  */
  
+ repeat:
    for (j = 0; j < c_len; j += CONSTRAINT_LEN (constraint[j], constraint+j))
      switch (constraint[j])
        {
*************** parse_input_constraint (const char **con
*** 389,400 ****
  	      constraint = constraints[match];
  	      *constraint_p = constraint;
  	      c_len = strlen (constraint);
! 	      j = 0;
! 	      /* ??? At the end of the loop, we will skip the first part of
! 		 the matched constraint.  This assumes not only that the
! 		 other constraint is an output constraint, but also that
! 		 the '=' or '+' come first.  */
! 	      break;
  	    }
  	  else
  	    j = end - constraint;
--- 390,396 ----
  	      constraint = constraints[match];
  	      *constraint_p = constraint;
  	      c_len = strlen (constraint);
! 	      goto repeat;
  	    }
  	  else
  	    j = end - constraint;
diff -Nrcpad gcc-14-20260313/gcc/testsuite/ChangeLog gcc-14-20260320/gcc/testsuite/ChangeLog
*** gcc-14-20260313/gcc/testsuite/ChangeLog	Fri Mar 13 22:32:08 2026
--- gcc-14-20260320/gcc/testsuite/ChangeLog	Fri Mar 20 22:32:07 2026
***************
*** 1,3 ****
--- 1,627 ----
+ 2026-03-19  Mikael Morin  <morin-mikael@orange.fr>
+ 
+ 	Backported from master:
+ 	2025-09-24  Mikael Morin  <morin-mikael@orange.fr>
+ 
+ 	PR fortran/122046
+ 	* gfortran.dg/submodule_34.f90: New test.
+ 
+ 2026-03-19  Paul Thomas  <pault@gcc.gnu.org>
+ 
+ 	Backported from master:
+ 	2026-03-19  Paul Thomas  <pault@gcc.gnu.org>
+ 
+ 	PR fortran/124161
+ 	* gfortran.dg/pr124161.f90: New test.
+ 
+ 2026-03-17  Alice Carlotti  <alice.carlotti@arm.com>
+ 
+ 	* gcc.target/aarch64/sme/sme-shrinkwrap.c: Add -save-temp to
+ 	dg-options, and move [[gnu::noipa]] to callee.
+ 
+ 2026-03-17  Alice Carlotti  <alice.carlotti@arm.com>
+ 
+ 	* gcc.target/aarch64/sme/acle-asm/revd_bf16.c: Update checks.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_f16.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_f32.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_f64.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_s16.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_s32.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_s64.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_s8.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_u16.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_u32.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_u64.c: Likewise.
+ 	* gcc.target/aarch64/sme/acle-asm/revd_u8.c: Likewise.
+ 
+ 2026-03-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/124489
+ 	* g++.dg/cpp0x/pr124489.C: New test.
+ 
+ 2026-03-16  Alexandre Oliva  <oliva@adacore.com>
+ 
+ 	Backported from master:
+ 	2026-02-05  Alexandre Oliva  <oliva@adacore.com>
+ 
+ 	PR middle-end/123775
+ 	* gcc.target/aarch64/sve2/pr123775.c: Add sve128 and sve2 hw
+ 	requirements.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-23  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR middle-end/123775
+ 	* gcc.target/aarch64/sve2/pr123775.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-22  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123741
+ 	* gfortran.dg/vect/vect-pr123741.f90: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-20  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123729
+ 	* g++.dg/torture/pr123729.C: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-19  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123602
+ 	* g++.dg/torture/pr123603.C: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR middle-end/123575
+ 	* g++.dg/pr123575.C: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/123537
+ 	* gcc.dg/pr123537.c: New testcase.
+ 
+ 2026-03-16  Richard Sandiford  <rdsandiford@googlemail.com>
+ 
+ 	Backported from master:
+ 	2026-01-08  Richard Sandiford  <rdsandiford@googlemail.com>
+ 		    Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/122793
+ 	* gcc.dg/vect/vect-pr122793.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2025-09-08  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/107997
+ 	PR tree-optimization/121844
+ 	* gcc.dg/torture/pr121844.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2025-05-30  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/120341
+ 	* gcc.dg/torture/pr120341-1.c: New testcase.
+ 	* gcc.dg/torture/pr120341-2.c: Likewise.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-27  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR ipa/116296
+ 	* gcc.dg/torture/pr116296.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR ipa/111036
+ 	* gcc.dg/torture/pr111036.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-28  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/110043
+ 	* gcc.dg/torture/pr110043.c: New testcase.
+ 
+ 2026-03-16  Richard Biener  <rguenther@suse.de>
+ 
+ 	Backported from master:
+ 	2026-01-30  Richard Biener  <rguenther@suse.de>
+ 
+ 	PR tree-optimization/109410
+ 	* gcc.dg/pr109410-2.c: New testcase.
+ 
+ 2026-03-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR target/124126
+ 	* g++.target/aarch64/pr124126-1.C: New test.
+ 
+ 2026-03-16  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR target/123285
+ 	* gcc.target/aarch64/pr123285-1.c: New test.
+ 
+ 2026-03-16  Claudio Bantaloukas  <claudio.bantaloukas@arm.com>
+ 
+ 	PR target/123457
+ 	* gcc.target/aarch64/pch/aarch64-pch.exp: Add new testsuite.
+ 	* gcc.target/aarch64/pch/pch_arm_acle.c: Add new test file.
+ 	* gcc.target/aarch64/pch/pch_arm_acle.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_acle_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_acle_include_post.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_multiple.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_multiple.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_multiple_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_include_post.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sme.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sme.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sme_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sme_include_post.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sve.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sve.hs: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sve_include_post.c: Likewise.
+ 	* gcc.target/aarch64/pch/pch_arm_sve_include_post.hs: Likewise.
+ 
+ 2026-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+ 
+ 	Backported from master:
+ 	2026-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+ 
+ 	PR fortran/106946
+ 	PR fortran/124482
+ 	* gfortran.dg/pr106946.f90: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-12  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR fortran/124450
+ 	* gfortran.dg/pr124450.f90: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/122000
+ 	* gcc.c-torture/execute/pr122000.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/124135
+ 	* g++.dg/torture/pr124135-1.C: New test.
+ 	* g++.dg/torture/pr124135-2.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/124358
+ 	* gcc.c-torture/execute/pr124358.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124366
+ 	* gcc.target/i386/cet-pr124366.c: New test.
+ 
+ 2026-03-15  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	Backported from master:
+ 	2026-03-04  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	PR target/124335
+ 	* gcc.target/i386/avx512fp16-pr124335.c: Require target
+ 	avx512fp16 instead of avx512bw.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124315
+ 	* gcc.target/i386/avx512f-pr124315.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124335
+ 	* gcc.target/i386/avx512fp16-pr124335.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-02  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/124288
+ 	* gcc.dg/torture/vec-cvt-1.c (FLTTEST): Use comma expression
+ 	to store into {flt,dbl}m{in,ax} and read from it again for
+ 	comparison.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-18  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/123365
+ 	* gcc.c-torture/compile/pr123365.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-18  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124138
+ 	* gcc.dg/pr124138.c: New test.
+ 	* gcc.target/i386/avx512f-pr124138-1.c: New test.
+ 	* gcc.target/i386/avx512f-pr124138-2.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/120685
+ 	* g++.dg/cpp23/auto-fncast19.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-11  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/124056
+ 	* gcc.target/i386/pr124056.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-11  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR rtl-optimization/116600
+ 	PR middle-end/123386
+ 	* gcc.c-torture/compile/pr116600.c: New test.
+ 	* gcc.c-torture/compile/pr123386.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-09  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123889
+ 	* g++.dg/cpp0x/constexpr-123889.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-06  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/101312
+ 	* gcc.dg/pr101312-1.c: New test.
+ 	* gcc.dg/pr101312-2.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/123882
+ 	* gcc.dg/pr123882.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123978
+ 	* gcc.c-torture/execute/pr123978.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-04  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123818
+ 	* g++.dg/cpp0x/pr123818.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-04  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/122689
+ 	* gcc.dg/bitint-127.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-02  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/121104
+ 	* gcc.dg/pr121104.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123864
+ 	* gcc.c-torture/execute/pr123864.c: New test.
+ 	* gcc.dg/torture/pr123864.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123876
+ 	* gcc.dg/gomp/pr123876.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR preprocessor/123273
+ 	* c-c++-common/cpp/dir-only-10.c: New test.
+ 	* c-c++-common/cpp/dir-only-11.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-27  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123578
+ 	* g++.dg/cpp2a/pr123578.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-24  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123667
+ 	* g++.dg/cpp1z/decomp66.C: New test.
+ 	* g++.dg/cpp1z/decomp67.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-24  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123684
+ 	* g++.dg/cpp0x/gen-attrs-90.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-23  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/123703
+ 	* gcc.c-torture/compile/pr123703.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-23  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/123597
+ 	* g++.dg/gomp/pr123597.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-17  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123513
+ 	* g++.dg/warn/Wmismatched-new-delete-10.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-16  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/123607
+ 	* g++.target/i386/avx512fp16-pr123607.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-14  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/120250
+ 	* gcc.c-torture/compile/pr120250.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-10  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/123431
+ 	* gcc.dg/pr123431.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-08  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/111817
+ 	* c-c++-common/pr111817.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-20  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/123217
+ 	* gcc.target/i386/keylocker-pr123217.c: New test.
+ 	* gcc.target/i386/user_msr-pr123217.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/91388
+ 	* g++.dg/cpp1z/static_assert1.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/122772
+ 	* g++.dg/cpp1z/eval-order14.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-19  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/122834
+ 	* g++.dg/dfp/pr122834-1.C: New test.
+ 	* g++.dg/dfp/pr122834-2.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-09  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c/123018
+ 	* gcc.dg/pr123018.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-12-03  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/122943
+ 	* gcc.c-torture/execute/pr122943.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/120052
+ 	* c-c++-common/gomp/pr120052.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-25  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR middle-end/120564
+ 	* c-c++-common/gomp/pr120564.c: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-21  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/121445
+ 	* g++.dg/cpp1y/constexpr-121445.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-20  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR c++/120876
+ 	* g++.dg/parse/crash81.C: New test.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR tree-optimization/122394
+ 	* g++.dg/opt/pr122394.C: New test.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-02-12  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR c/105555
+ 	* gcc.dg/complex-10.c: New test.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-02-02  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR rtl-optimization/123294
+ 	* gcc.dg/pr123294-1.c: New test.
+ 	* gcc.target/aarch64/pr123294-1.c: New test.
+ 
+ 2026-03-14  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	Backported from master:
+ 	2026-01-18  Andrew Pinski  <andrew.pinski@oss.qualcomm.com>
+ 
+ 	PR tree-optimization/123645
+ 	* gcc.dg/torture/pr123645-1.c: New test.
+ 	* gcc.dg/torture/pr123645-2.c: New test.
+ 
+ 2026-03-13  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	PR c++/123845
+ 	PR libstdc++/114865
+ 	* g++.dg/cpp0x/constexpr-ex3.C: Adjust C++11 non-empty
+ 	constexpr constructor dg-error to a dg-warning.  Expect
+ 	a follow-up missing member initializer diagnostic in C++11 mode.
+ 	* g++.dg/cpp2a/constexpr-try1.C: Expect a follow-up
+ 	compound-statement in constexpr function diagnostic in C++11
+ 	mode.
+ 	* g++.dg/cpp2a/constexpr-try2.C: Likewise.  Adjust C++11
+ 	non-empty constexpr constructor dg-error to a dg-warning.
+ 	* g++.dg/cpp2a/constexpr-try3.C:  Adjust C++11 non-empty
+ 	constexpr constructor dg-error to a dg-warning.
+ 	* g++.dg/cpp0x/constexpr-ctor23.C: New test.
+ 
  2026-03-12  Martin Jambor  <mjambor@suse.cz>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/gcc/testsuite/c-c++-common/cpp/dir-only-10.c gcc-14-20260320/gcc/testsuite/c-c++-common/cpp/dir-only-10.c
*** gcc-14-20260313/gcc/testsuite/c-c++-common/cpp/dir-only-10.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/c-c++-common/cpp/dir-only-10.c	Fri Mar 20 22:32:07 2026
***************
*** 0 ****
--- 1,5 ----
+ /* PR preprocessor/123273 */
+ /* { dg-do preprocess } */
+ /* { dg-options -fdirectives-only } */
+ 
+ /* *\/""" */
diff -Nrcpad gcc-14-20260313/gcc/testsuite/c-c++-common/cpp/dir-only-11.c gcc-14-20260320/gcc/testsuite/c-c++-common/cpp/dir-only-11.c
*** gcc-14-20260313/gcc/testsuite/c-c++-common/cpp/dir-only-11.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/c-c++-common/cpp/dir-only-11.c	Fri Mar 20 22:32:07 2026
***************
*** 0 ****
--- 1,6 ----
+ /* PR preprocessor/123273 */
+ /* { dg-do preprocess } */
+ /* { dg-options -fdirectives-only } */
+ 
+ /* *\\
+ /""" */
diff -Nrcpad gcc-14-20260313/gcc/testsuite/c-c++-common/gomp/pr120052.c gcc-14-20260320/gcc/testsuite/c-c++-common/gomp/pr120052.c
*** gcc-14-20260313/gcc/testsuite/c-c++-common/gomp/pr120052.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/c-c++-common/gomp/pr120052.c	Fri Mar 20 22:32:07 2026
***************
*** 0 ****
--- 1,32 ----
+ /* PR middle-end/120052 */
+ /* { dg-do compile } */
+ /* { dg-additional-options "-fsanitize=undefined" } */
+ 
+ void
+ foo (unsigned long s, long indx)
+ {
+   long counts[2][s];
+   #pragma omp parallel
+   #pragma omp masked
+   for (int i = 0; i < 2; i++)
+     counts[2][indx] = 1;
+ }
+ 
+ void
+ bar (unsigned long s, long indx)
+ {
+   long counts[2][s];
+   #pragma omp parallel shared(counts)
+   #pragma omp masked
+   for (int i = 0; i < 2; i++)
+     counts[2][indx] = 1;
+ }
+ 
+ void
+ baz (unsigned long s, long indx)
+ {
+   long counts[2][s];
+   #pragma omp parallel private(counts)
+   for (int i = 0; i < 2; i++)
+     counts[2][indx] = 1;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/c-c++-common/gomp/pr120564.c gcc-14-20260320/gcc/testsuite/c-c++-common/gomp/pr120564.c
*** gcc-14-20260313/gcc/testsuite/c-c++-common/gomp/pr120564.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/c-c++-common/gomp/pr120564.c	Fri Mar 20 22:32:07 2026
***************
*** 0 ****
--- 1,15 ----
+ /* PR middle-end/120564 */
+ /* { dg-do compile } */
+ 
+ void bar (unsigned long long, unsigned long long, unsigned long long);
+ 
+ void
+ foo (void)
+ {
+   unsigned long long v1, v2, v3;
+ #pragma omp parallel for schedule(static, 32) collapse(3)
+   for (v1 = 0; v1 < 20; v1 += 2)
+     for (v2 = __LONG_LONG_MAX__; v2 > __LONG_LONG_MAX__; v2 -= 3)
+       for (v3 = 10; v3 > 0; v3--)
+ 	bar (v1, v2, v3);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/c-c++-common/pr111817.c gcc-14-20260320/gcc/testsuite/c-c++-common/pr111817.c
*** gcc-14-20260313/gcc/testsuite/c-c++-common/pr111817.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/c-c++-common/pr111817.c	Fri Mar 20 22:32:07 2026
***************
*** 0 ****
--- 1,9 ----
+ /* PR middle-end/111817 */
+ /* { dg-do compile } */
+ 
+ int
+ foo (int x, int y)
+ {
+   asm ("" : "\n=g" (x) : "0" (y));	/* { dg-warning "output constraint '=' for operand 0 is not at the beginning" } */
+   return x;				/* { dg-error "invalid punctuation '\\\\x\[0-9a-zA-Z]*' in constraint" "" { target *-*-* } .-1 } */
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/constexpr-123889.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/constexpr-123889.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/constexpr-123889.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/constexpr-123889.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,14 ----
+ // PR c++/123889
+ // { dg-do compile { target c++11 } }
+ 
+ template <class T>
+ constexpr int func (T) {
+ // { dg-message "'constexpr int func\\\(T\\\) \\\[with T = int\\\]' is not usable as a 'constexpr' function because:" "" { target c++11_only } .-1 }
+ // { dg-error "body of 'constexpr' function 'constexpr int func\\\(T\\\) \\\[with T = int\\\]' not a return-statement" "" { target c++11_only } .-2 }
+   return 1;
+   return 2;
+ }
+ 
+ static_assert (func (1) == 1, "");
+ // { dg-error "non-constant condition for static assertion" "" { target c++11_only } .-1 }
+ // { dg-error "'constexpr int func\\\(T\\\) \\\[with T = int\\\]' called in a constant expression" "" { target c++11_only } .-2 }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/gen-attrs-90.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/gen-attrs-90.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/gen-attrs-90.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/gen-attrs-90.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,8 ----
+ // PR c++/123684
+ // { dg-do compile { target c++11 } }
+ 
+ inline namespace [[foo::abi_tag (1, 2, 3)]] A {}	// { dg-warning "'abi_tag' attribute directive ignored" }
+ inline namespace [[foo::visibility (1, 2, 3)]] B {}	// { dg-warning "'visibility' attribute directive ignored" }
+ inline namespace [[foo::deprecated (1, 2, 3)]] C {}	// { dg-warning "'deprecated' attribute directive ignored" }
+ inline namespace [[abi_tag (1, 2, 3)]] D {}		// { dg-warning "'abi_tag' attribute directive ignored" }
+ inline namespace [[visibility (1, 2, 3)]] E {}		// { dg-warning "'visibility' attribute directive ignored" }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/pr123818.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/pr123818.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/pr123818.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/pr123818.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,24 ----
+ // PR c++/123818
+ // { dg-do run { target c++11 } }
+ 
+ struct A { A (int x) : a (x) {} int a; };
+ struct B { A b; };
+ 
+ int
+ foo (B x = B { 42 })
+ {
+     return x.b.a;
+ }
+ 
+ int
+ bar (B x = B { 43 })
+ {
+     return x.b.a;
+ }
+ 
+ int
+ main ()
+ {
+   if (foo () != bar () - 1)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/pr124489.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/pr124489.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp0x/pr124489.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp0x/pr124489.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,9 ----
+ // PR c++/124489
+ // { dg-do compile { target c++11 } }
+ 
+ void
+ g ()
+ {
+   constexpr decltype(nullptr) dm = nullptr; // { dg-message ".constexpr std::nullptr_t dm. previously declared here" }
+   constexpr decltype(nullptr) dm = nullptr; // { dg-error "redeclaration of .constexpr std::nullptr_t dm." }
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp1y/constexpr-121445.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp1y/constexpr-121445.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp1y/constexpr-121445.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp1y/constexpr-121445.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,19 ----
+ // PR c++/121445
+ // { dg-do compile { target c++14 } }
+ 
+ struct D {
+   const char *d;
+   const char *foo () { return ""; };			// { dg-message "declared here" "" { target c++20_down } }
+   constexpr D () : d (foo ()) {}			// { dg-error "call to non-'constexpr' function 'const char\\\* D::foo\\\(\\\)'" "" { target c++20_down } }
+   constexpr D &operator= (const char *) { return *this; }
+ };
+ struct S {
+   constexpr S ()
+   {
+     struct A { D a; };
+     struct B { A b; };
+     struct C { B c; };
+     C d {};
+     d.c.b.a = "";
+   }
+ };
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/decomp66.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/decomp66.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/decomp66.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/decomp66.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,23 ----
+ // PR c++/123667
+ // { dg-do compile { target c++14 } }
+ // { dg-options "" }
+ 
+ namespace std {
+   template <typename T> struct tuple_size;
+   template <int, typename> struct tuple_element;
+ }
+ 
+ struct A {
+   int i;
+   template <int I> int &get () { return i; }
+ };
+ 
+ template <> struct std::tuple_size <A> { static const int value = 2; };
+ template <int I> struct std::tuple_element <I,A> { using type = int; };
+ 
+ int
+ main ()
+ {
+   auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
+   [] (auto t) { using z = decltype (x); } (1);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/decomp67.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/decomp67.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/decomp67.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/decomp67.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,33 ----
+ // PR c++/123667
+ // { dg-do compile { target c++11 } }
+ // { dg-options "" }
+ 
+ namespace std {
+   template <typename T> struct tuple_size;
+   template <int, typename> struct tuple_element;
+ }
+ 
+ struct A {
+   int i;
+   template <int I> int &get () { return i; }
+ };
+ 
+ template <> struct std::tuple_size <A> { static const int value = 2; };
+ template <int I> struct std::tuple_element <I,A> { using type = int; };
+ 
+ auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
+ 
+ template <int N>
+ void
+ foo ()
+ {
+   using a = decltype (x);
+   auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
+   using b = decltype (x);
+ }
+ 
+ void
+ bar ()
+ {
+   foo <42> ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/eval-order14.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/eval-order14.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/eval-order14.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/eval-order14.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,114 ----
+ // PR c++/122772
+ // { dg-do run }
+ 
+ struct S { int y : 7; } s;
+ struct T { int x; int z : 7; } t;
+ int cnt, mode;
+ 
+ int
+ foo ()
+ {
+ #if __cplusplus >= 201703L
+   if (cnt != 1 + (mode & 1))
+     __builtin_abort ();
+ #endif
+   ++cnt;
+   return 2;
+ }
+ 
+ int
+ bar ()
+ {
+ #if __cplusplus >= 201703L
+   if (cnt != 0)
+     __builtin_abort ();
+ #endif
+   ++cnt;
+   return 40;
+ }
+ 
+ S &
+ baz ()
+ {
+ #if __cplusplus >= 201703L
+   if (cnt != 2 + (mode & 1))
+     __builtin_abort ();
+ #endif
+   if (mode & 2)
+     __builtin_abort ();
+   ++cnt;
+   return s;
+ }
+ 
+ T &
+ qux ()
+ {
+ #if __cplusplus >= 201703L
+   if (cnt != 2 + (mode & 1))
+     __builtin_abort ();
+ #endif
+   if ((mode & 2) == 0)
+     __builtin_abort ();
+   ++cnt;
+   return t;
+ }
+ 
+ bool
+ fred (bool x)
+ {
+ #if __cplusplus >= 201703L
+   if (cnt != 1)
+     __builtin_abort ();
+ #endif
+   ++cnt;
+   return x;
+ }
+ 
+ void
+ plugh (bool b)
+ {
+   S x;
+   x.y = 5;
+   mode = 0;
+   cnt = 0;
+   (x.y = foo ()) += bar ();
+   if (cnt != 2 || x.y != 42)
+     __builtin_abort ();
+   x.y = 5;
+   cnt = 0;
+   (baz ().y = foo ()) += bar ();
+   if (cnt != 3 || s.y != 42)
+     __builtin_abort ();
+   s.y = 5;
+   mode = (b ? 0 : 2);
+   cnt = 0;
+   (b ? (baz ().y = foo ()) : (qux ().z = foo ())) += bar ();
+   if (cnt != 3 || (b ? (s.y != 42) : (t.z != 42)))
+     __builtin_abort ();
+   s.y = 5;
+   t.z = 5;
+   mode |= 1;
+   cnt = 0;
+   (fred (b) ? (baz ().y = foo ()) : (qux ().z = foo ())) += bar ();
+   if (cnt != 4 || (b ? (s.y != 42) : (t.z != 42)))
+     __builtin_abort ();
+   s.y = 5;
+   t.z = 5;
+   mode = 0;
+   cnt = 0;
+   ++x.y += bar ();
+   if (cnt != 1 || x.y != 46)
+     __builtin_abort ();
+   cnt = 0;
+   x.y = 9;
+   --x.y += bar ();
+   if (cnt != 1 || x.y != 48)
+     __builtin_abort ();
+ }
+ 
+ int
+ main ()
+ {
+   plugh (false);
+   plugh (true);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/static_assert1.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/static_assert1.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp1z/static_assert1.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp1z/static_assert1.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,17 ----
+ // PR c++/91388
+ // Make sure we don't emit -Wreturn-type in functions with failed static_asserts.
+ // { dg-do compile { target c++17 } }
+ 
+ template <int N>
+ int
+ foo ()
+ {
+   if constexpr (N <= 42)
+     return N;
+   else
+     static_assert (false, "too high N");	// { dg-error "too high N" }
+ }						// { dg-bogus "no return statement in function returning non-void" }
+ 
+ int a = foo <0> ();
+ int b = foo <42> ();
+ int c = foo <100> ();
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp23/auto-fncast19.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp23/auto-fncast19.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp23/auto-fncast19.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp23/auto-fncast19.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,12 ----
+ // PR c++/120685
+ // { dg-do compile { target c++11 } }
+ // { dg-options "" }
+ 
+ template <typename T>
+ void foo (decltype (auto (T ())) x) {}	// { dg-warning "'auto\\\(x\\\)' only available with" "" { target c++20_down } }
+ 
+ int
+ main ()
+ {
+   foo <int> (1);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/cpp2a/pr123578.C gcc-14-20260320/gcc/testsuite/g++.dg/cpp2a/pr123578.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/cpp2a/pr123578.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/cpp2a/pr123578.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,9 ----
+ // PR c++/123578
+ // { dg-do compile { target c++20 } }
+ // { dg-options "-fdump-tree-all" }
+ 
+ namespace {
+   template <typename>
+   struct A { A (decltype ([] { return 0; } ())) {} };
+   A <int> b = 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/dfp/pr122834-1.C gcc-14-20260320/gcc/testsuite/g++.dg/dfp/pr122834-1.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/dfp/pr122834-1.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/dfp/pr122834-1.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,17 ----
+ // PR c++/122834
+ // { dg-do compile { target { c++11 && float128 } } }
+ // { dg-options "" }
+ // { dg-add-options float128 }
+ 
+ typedef decltype (0.0DL) A;
+ typedef _Float128 B;
+ void bar (A);			// { dg-message "initializing argument 1 of" }
+ 
+ void
+ foo (B x)
+ {
+   bar (x);			// { dg-warning "with unordered conversion rank" }
+ }
+ 
+ auto a = 0.0DL + 1.0F128;	// { dg-error "invalid operands to binary \\\+" }
+ auto b = 1.0F128 + 0.0DL;	// { dg-error "invalid operands to binary \\\+" }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/dfp/pr122834-2.C gcc-14-20260320/gcc/testsuite/g++.dg/dfp/pr122834-2.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/dfp/pr122834-2.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/dfp/pr122834-2.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,19 ----
+ // PR c++/122834
+ // { dg-do compile { target { c++11 && float16 } } }
+ // { dg-options "" }
+ // { dg-add-options float16 }
+ 
+ typedef decltype (0.0DL) A;
+ typedef _Float16 B;
+ void bar (A);
+ 
+ void
+ foo (B x)
+ {
+   bar (x);
+ }
+ 
+ auto a = 0.0DL + 1.0F16;
+ auto b = 1.0F16 + 0.0DL;
+ static_assert (__is_same_as (decltype (0.0DL + 1.0F16), decltype (0.0DL)));
+ static_assert (__is_same_as (decltype (1.0F16 + 0.0DL), decltype (0.0DL)));
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/gomp/pr123597.C gcc-14-20260320/gcc/testsuite/g++.dg/gomp/pr123597.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/gomp/pr123597.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/gomp/pr123597.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,25 ----
+ // PR c++/123597
+ // { dg-do compile }
+ // { dg-additional-options "-fdump-tree-gimple" }
+ // { dg-final { scan-tree-dump-not " shared\\\(sum\\\)" "gimple" } }
+ 
+ template <typename T>
+ void
+ foo (T *x)
+ {
+   #pragma omp teams distribute parallel for collapse(2)
+   for (long i = 0; i < 5; i++)
+     for (long j = 0; j < 5; j++)
+       {
+         T sum = 0;
+         for (long k = 0; k < 5; k++)
+           sum += 2;
+         x[i + 5 * j] = sum;
+       }
+ }
+ 
+ void
+ bar (int *x)
+ {
+   foo (x);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/opt/pr122394.C gcc-14-20260320/gcc/testsuite/g++.dg/opt/pr122394.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/opt/pr122394.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/opt/pr122394.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,20 ----
+ // PR tree-optimization/122394
+ // { dg-do compile { target c++23 } }
+ // { dg-options "-O1 -g" }
+ 
+ #include <compare>
+ 
+ struct A {
+   friend auto operator<=> (A, A) = default;
+   double a;
+ };
+ void foo ();
+ A b, c;
+ 
+ void
+ bar ()
+ {
+   bool d = c >= b;
+   if (d)
+     foo ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/parse/crash81.C gcc-14-20260320/gcc/testsuite/g++.dg/parse/crash81.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/parse/crash81.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/parse/crash81.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,14 ----
+ // PR c++/120876
+ // { dg-do compile { target c++11 } }
+ 
+ template <typename T>
+ struct S {
+   static bool foo (decltype (bar (T {})));	// { dg-error "'bar' was not declared in this scope; did you mean 'baz'\\\?" }
+   static constexpr bool s = foo (0);
+ };
+ 
+ void
+ baz ()
+ {
+   S <int>::s;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/pr123575.C gcc-14-20260320/gcc/testsuite/g++.dg/pr123575.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/pr123575.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/pr123575.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,12 ----
+ // { dg-do compile }
+ // { dg-options "-O -Wno-psabi" }
+ 
+ typedef int __attribute__((vector_size(sizeof(int)*2))) v2i;
+ typedef long __attribute__((vector_size(sizeof(long)*2))) v2l;
+ 
+ v2l f(v2i a)
+ {
+   v2l  t = __builtin_convertvector(a, v2l);
+   t = t > 0 ? t : -t;
+   return t;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr123603.C gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr123603.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr123603.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr123603.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,20 ----
+ // { dg-do compile }
+ 
+ void _setjmp();
+ void a() __attribute__((__noreturn__));
+ struct b {
+   b(int c) {
+     if (c)
+       a();
+   }
+   ~b();
+ };
+ int d;
+ void l(long);
+ void e() {
+   b a(d);
+   for (int f = 0; f < 10 ; ++f) {
+     l(f - 1);
+     _setjmp();
+   }
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr123729.C gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr123729.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr123729.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr123729.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,60 ----
+ // { dg-do compile }
+ // { dg-additional-options "-std=gnu++20" }
+ 
+ #include <csetjmp>
+ #include <iostream>
+ 
+ template <typename T> struct A { using type = int; };
+ template <typename F, typename... G> struct B {};
+ template <typename F> struct B<F> { using type = F; };
+ struct {
+   template <typename... F,
+             typename Overload = typename B<typename A<F>::type...>::type>
+   int operator()(F...) {
+     int iArrFld_0_0;
+     for (int i = 7; i < 28; ++i)
+       ;
+     int i1 = 3;
+     try {
+       for (int i = 7; i < 28; ++i) {
+         for (int j = 0; j < 7; ++j)
+           if (iArrFld_0_0 == 0) {
+             for (int k = 0; k < 20000; ++k)
+               std::cout << "Hello, world!" << std::endl;
+           }
+         jmp_buf env2;
+         for (int i2 = 16; i2 < 350; ++i2)
+           for (int j2 = 1; j2 < 75; ++j2)
+             for (int k2 = 0; k2 < 16; ++k2) {
+               int temp2 = i2 + j2 + k2;
+               int mod2 = temp2 % 8;
+               {
+                 setjmp(env2) == 0;
+                 ;
+               }
+             }
+       }
+     } catch (const std::exception &e) {
+     }
+     auto lambda = [](int x) {
+       return [x](int y) {
+         int z = 0;
+         if (y > 0)
+           z = 1;
+         return z + x;
+       };
+     };
+     for (int i = 0; i < 1000; ++i) {
+       int m = 0;
+       auto f = lambda(i);
+       for (int j = 0; j < 100; ++j)
+         m += f(j);
+       i1 += m;
+     }
+     std::cout << "Final value of i1: " << i1 << std::endl;
+     return 0;
+   }
+ } a;
+ int main() {
+   auto f = a([] {});
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr124135-1.C gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr124135-1.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr124135-1.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr124135-1.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,20 ----
+ // PR tree-optimization/124135
+ // { dg-do compile }
+ 
+ void foo (char, long double *, int);
+ int qux (int);
+ 
+ long double
+ bar (int x)
+ {
+   long double a;
+   if (x)
+     foo (0, &a, qux (42));
+   return a;
+ }
+ 
+ void
+ baz (int x)
+ {
+   bar (x);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr124135-2.C gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr124135-2.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/torture/pr124135-2.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/torture/pr124135-2.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,27 ----
+ // PR tree-optimization/124135
+ // { dg-do compile }
+ 
+ #ifdef __SIZEOF_FLOAT128__
+ void foo (char, __float128 *, int);
+ int qux (int);
+ 
+ __float128
+ bar (int x)
+ {
+   __float128 a;
+   if (x)
+     foo (0, &a, qux (42));
+   return a;
+ }
+ 
+ void
+ baz (int x)
+ {
+   bar (x);
+ }
+ #else
+ void
+ baz ()
+ {
+ }
+ #endif
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-10.C gcc-14-20260320/gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-10.C
*** gcc-14-20260313/gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-10.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.dg/warn/Wmismatched-new-delete-10.C	Fri Mar 20 22:32:08 2026
***************
*** 0 ****
--- 1,25 ----
+ // PR tree-optimization/123513
+ // { dg-do compile }
+ // { dg-options "-Wmismatched-new-delete" }
+ 
+ typedef __SIZE_TYPE__ size_t;
+ 
+ template <size_t N>
+ class A {};
+ struct B { B (); };
+ 
+ template <size_t N>
+ void *operator new (size_t, A <N> &);
+ 
+ template <size_t N>
+ void operator delete (void *, A <N> &);
+ 
+ void
+ foo (B *, A <1024> &);
+ 
+ void
+ bar ()
+ {
+   A <1024> a;
+   foo (new (a) B (), a);	// { dg-bogus "called on pointer returned from a mismatched allocation function" }
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.target/aarch64/pr124126-1.C gcc-14-20260320/gcc/testsuite/g++.target/aarch64/pr124126-1.C
*** gcc-14-20260313/gcc/testsuite/g++.target/aarch64/pr124126-1.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.target/aarch64/pr124126-1.C	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,15 ----
+ /* { dg-do compile } */
+ /* { dg-additional-options "-g" } */
+ /* PR target/124126 */
+ /* Make sure an array of uint64_t[8] works when
+    used before the inlcude of arm_acle.h.  */
+ 
+ typedef unsigned long uint64_t;
+ void executeSuperscalar(uint64_t (*r)[8]);
+ 
+ #include "arm_acle.h"
+ 
+ void initDatasetItem() {
+   uint64_t rl[8];
+   executeSuperscalar(&rl);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/g++.target/i386/avx512fp16-pr123607.C gcc-14-20260320/gcc/testsuite/g++.target/i386/avx512fp16-pr123607.C
*** gcc-14-20260313/gcc/testsuite/g++.target/i386/avx512fp16-pr123607.C	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/g++.target/i386/avx512fp16-pr123607.C	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,60 ----
+ // PR target/123607
+ // { dg-do assemble { target avx512fp16 } }
+ // { dg-options "-std=c++23 -O2 -mavx512fp16" }
+ 
+ namespace std::simd {
+ template <int> struct basic_mask {
+   bool _M_data;
+   bool operator[](int) { return _M_data; }
+ };
+ template <int _Ap>
+   requires(_Ap > 1)
+ struct basic_mask<_Ap> {
+   static constexpr int _N0 = _Ap / 2;
+   using _Mask1 = basic_mask<_N0>;
+   _Mask1 _M_data1;
+   static basic_mask _S_init(basic_mask<_N0>, _Mask1 __y) {
+     basic_mask __r;
+     __r._M_data1 = __y;
+     return __r;
+   }
+ };
+ template <int _Ap> struct basic_vec {
+   _Float16 _M_data;
+   using mask_type = basic_mask<_Ap>;
+   friend mask_type operator<(basic_vec __x, basic_vec __y) {
+     return mask_type(__x._M_data < __y._M_data);
+   }
+   friend basic_vec __select_impl(mask_type __k, basic_vec __t, basic_vec __f) {
+     return __k[0] ? __t : __f;
+   }
+ };
+ template <int _Ap>
+   requires(_Ap > 1)
+ struct basic_vec<_Ap> {
+   static constexpr int _N0 = _Ap / 2;
+   using _DataType1 = basic_vec<_N0>;
+   _DataType1 _M_data0;
+   _DataType1 _M_data1;
+   using mask_type = basic_mask<_Ap>;
+   static basic_vec _S_init(_DataType1 __y) {
+     basic_vec __r;
+     __r._M_data1 = __y;
+     return __r;
+   }
+   friend mask_type operator<(basic_vec __x, basic_vec __y) {
+     return mask_type::_S_init(__x._M_data0 < __y._M_data0,
+                               __x._M_data1 < __y._M_data1);
+   }
+   friend basic_vec __select_impl(mask_type __k, basic_vec __t, basic_vec __f) {
+     return _S_init(__select_impl(__k._M_data1, __t._M_data1, __f._M_data1));
+   }
+ };
+ basic_vec<4> b;
+ basic_vec<4> max(basic_vec<4> a) {
+   basic_mask __trans_tmp_1 = a < b;
+   return __select_impl(__trans_tmp_1, b, a);
+ }
+ }
+ namespace simd = std::simd;
+ simd::basic_vec test_runner___trans_tmp_2 = max(simd::basic_vec<4>());
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr116600.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr116600.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr116600.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr116600.c	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,24 ----
+ /* PR rtl-optimization/116600 */
+ 
+ int a, b;
+ int foo ();
+ 
+ int
+ bar ()
+ {
+   int c = ({ int d = 0, e = foo ();
+ 	     b = __builtin_expect (e, 1); if (b) ; else d = 4; d; });
+   if (c)
+     return c;
+   foo ();
+   if (a)
+     __asm__ goto ("" : : : : l);
+ l:
+   return 0;
+ }
+ 
+ void
+ baz ()
+ {
+   bar ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr120250.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr120250.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr120250.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr120250.c	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,38 ----
+ /* PR target/120250 */
+ 
+ int a = 5, b = 7, c, *d;
+ void *l;
+ void foo (const char *s);
+ void bar (void);
+ void qux (const char *, int);
+ 
+ int
+ baz (int *d, int a, int b)
+ {
+   int c = 0;
+   for (int i = 0; i < a; ++i)
+     for (int j = 0; j < b; ++j)
+       c += d[i * b + j];
+   return c;
+ }
+ 
+ int
+ main ()
+ {
+   d = __builtin_malloc (a * b * sizeof (int));
+   if (!d)
+     {
+       foo ("foo");
+       __builtin_exit (1);
+     }
+   for (int i = 0; i < a; ++i)
+     for (int j = 0; j < b; ++j)
+       d[i * b + j] = i * b + j;
+   l = (void *) &bar;
+   goto *l;
+ bar:
+   c = baz (d, a, b);
+   qux ("bar", c);
+   __builtin_free (d);
+   return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123365.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123365.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123365.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123365.c	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,7 ----
+ /* PR c/123365 */
+ 
+ void
+ foo ()
+ {
+   __asm__ volatile ("" : "+r" ((long long[]) { 0 }));
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123386.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123386.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123386.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123386.c	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,25 ----
+ /* PR middle-end/123386 */
+ 
+ char *a;
+ int b;
+ 
+ void
+ foo (char *)
+ {
+   if (b)
+     __builtin_abort ();
+ }
+ 
+ void
+ bar (char *c)
+ {
+   __asm__ goto ("" : : : : d);
+   foo (a);
+   __asm__ goto ("" : : : : d);
+   if (c)
+     bar (a);
+   __asm__ goto ("" : : : : d);
+ d:
+   if (b)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123703.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123703.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/compile/pr123703.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/compile/pr123703.c	Fri Mar 20 22:32:10 2026
***************
*** 0 ****
--- 1,10 ----
+ /* PR middle-end/123703 */
+ 
+ struct S { int a; };
+ struct S abs (int);
+ 
+ struct S
+ bar (int j)
+ {
+   return abs (j);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr122000.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr122000.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr122000.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr122000.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,14 ----
+ /* PR target/122000 */
+ 
+ char c = 1;
+ __attribute__((aligned (sizeof (unsigned long long)))) unsigned long long ll;
+ 
+ int
+ main ()
+ {
+ #if defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8) && __SIZEOF_LONG_LONG__ == 8 && __CHAR_BIT__ == 8
+   unsigned long long x = __sync_add_and_fetch (&ll, c + 0xfedcba9876543210ULL);
+   if (x != 0xfedcba9876543211ULL)
+     __builtin_abort ();
+ #endif
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr122943.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr122943.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr122943.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr122943.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,130 ----
+ /* PR tree-optimization/122943 */
+ 
+ __attribute__((noipa)) unsigned char
+ foo (long long val)
+ {
+   unsigned char result = 0;
+   switch (val)
+     {
+     case 0: result = 1; break;
+     case 1: result = 2; break;
+     case 2: result = 3; break;
+     default: break;
+     }
+   return result;
+ }
+ 
+ __attribute__((noipa)) unsigned char
+ bar (long long val)
+ {
+   unsigned char result = 1;
+   switch (val)
+     {
+     case 0: result = 8; break;
+     case 1: result = 31; break;
+     case 2: result = 72; break;
+     default: break;
+     }
+   return result;
+ }
+ 
+ #ifdef __SIZEOF_INT128__
+ __attribute__((noipa)) unsigned char
+ baz (__int128 val)
+ {
+   unsigned char result = 0;
+   switch (val)
+     {
+     case 0: result = 1; break;
+     case 1: result = 2; break;
+     case 2: result = 3; break;
+     default: break;
+     }
+   return result;
+ }
+ 
+ __attribute__((noipa)) unsigned char
+ qux (__int128 val)
+ {
+   unsigned char result = 1;
+   switch (val)
+     {
+     case 0: result = 8; break;
+     case 1: result = 31; break;
+     case 2: result = 72; break;
+     default: break;
+     }
+   return result;
+ }
+ #endif
+ 
+ int
+ main ()
+ {
+   if (foo (-1) != 0)
+     __builtin_abort ();
+   if (foo (0) != 1)
+     __builtin_abort ();
+   if (foo (1) != 2)
+     __builtin_abort ();
+   if (foo (2) != 3)
+     __builtin_abort ();
+   if (foo (3) != 0)
+     __builtin_abort ();
+   if (foo (-__LONG_LONG_MAX__ - 1) != 0)
+     __builtin_abort ();
+   if (foo (-__LONG_LONG_MAX__) != 0)
+     __builtin_abort ();
+   if (foo (-__LONG_LONG_MAX__ + 1) != 0)
+     __builtin_abort ();
+   if (bar (-1) != 1)
+     __builtin_abort ();
+   if (bar (0) != 8)
+     __builtin_abort ();
+   if (bar (1) != 31)
+     __builtin_abort ();
+   if (bar (2) != 72)
+     __builtin_abort ();
+   if (bar (3) != 1)
+     __builtin_abort ();
+   if (bar (-__LONG_LONG_MAX__ - 1) != 1)
+     __builtin_abort ();
+   if (bar (-__LONG_LONG_MAX__) != 1)
+     __builtin_abort ();
+   if (bar (-__LONG_LONG_MAX__ + 1) != 1)
+     __builtin_abort ();
+ #ifdef __SIZEOF_INT128__
+   if (baz (-1) != 0)
+     __builtin_abort ();
+   if (baz (0) != 1)
+     __builtin_abort ();
+   if (baz (1) != 2)
+     __builtin_abort ();
+   if (baz (2) != 3)
+     __builtin_abort ();
+   if (baz (3) != 0)
+     __builtin_abort ();
+   if (baz (((__int128) 1) << 64) != 0)
+     __builtin_abort ();
+   if (baz ((((__int128) 1) << 64) + 1) != 0)
+     __builtin_abort ();
+   if (baz ((((__int128) 1) << 64) + 2) != 0)
+     __builtin_abort ();
+   if (qux (-1) != 1)
+     __builtin_abort ();
+   if (qux (0) != 8)
+     __builtin_abort ();
+   if (qux (1) != 31)
+     __builtin_abort ();
+   if (qux (2) != 72)
+     __builtin_abort ();
+   if (qux (3) != 1)
+     __builtin_abort ();
+   if (qux (((__int128) 1) << 64) != 1)
+     __builtin_abort ();
+   if (qux ((((__int128) 1) << 64) + 1) != 1)
+     __builtin_abort ();
+   if (qux ((((__int128) 1) << 64) + 2) != 1)
+     __builtin_abort ();
+ #endif
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr123864.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr123864.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr123864.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr123864.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,24 ----
+ /* PR tree-optimization/123864 */
+ 
+ [[gnu::noipa]] static int
+ foo (long long x)
+ {
+   return __builtin_mul_overflow_p (x, ~0U, x);
+ }
+ 
+ int
+ main ()
+ {
+   if (foo (0))
+     __builtin_abort ();
+ #if __SIZEOF_INT__ == 4 && __SIZEOF_LONG_LONG__ == 8 && __CHAR_BIT__ == 8
+   if (foo (__INT_MAX__ + 1LL))
+     __builtin_abort ();
+   if (!foo (__INT_MAX__ + 2LL))
+     __builtin_abort ();
+   if (foo (-__INT_MAX__ - 1LL))
+     __builtin_abort ();
+   if (!foo (-__INT_MAX__ - 2LL))
+     __builtin_abort ();
+ #endif
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr123978.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr123978.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr123978.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr123978.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,25 ----
+ /* PR middle-end/123978 */
+ 
+ struct A { unsigned b, c, *d; };
+ 
+ [[gnu::noipa]] int
+ foo (struct A *a)
+ {
+   __builtin_memset (a->d, 0, ((long long) sizeof (unsigned)) * a->b * a->c);
+   return 0;
+ }
+ 
+ int
+ main ()
+ {
+   struct A a;
+   unsigned b[256];
+   __builtin_memset (b, 0x55, sizeof (b));
+   a.b = 15;
+   a.c = 15;
+   a.d = b;
+   foo (&a);
+   for (int i = 0; i < 225; ++i)
+     if (b[i] != 0)
+       __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr124358.c gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr124358.c
*** gcc-14-20260313/gcc/testsuite/gcc.c-torture/execute/pr124358.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.c-torture/execute/pr124358.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,19 ----
+ /* PR tree-optimization/124358 */
+ 
+ [[gnu::noipa]] void
+ foo (int d)
+ {
+   static int u = 11;
+   if (d != u++)
+     __builtin_abort ();
+ }
+ 
+ int
+ main ()
+ {
+   int a[1][4] = { 11, 12, 13, 14 };
+   int (*p)[4] = a;
+   for (int i = 0; i < 1; i++)
+     for (int j = 0; j < 4; j++)
+       foo (*(*(p + i) + j));
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/bitint-127.c gcc-14-20260320/gcc/testsuite/gcc.dg/bitint-127.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/bitint-127.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/bitint-127.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,28 ----
+ /* PR middle-end/122689 */
+ /* { dg-do run { target { bitint } } } */
+ /* { dg-options "-O" } */
+ 
+ #if __BITINT_MAXWIDTH__ >= 12419
+ const _BitInt(12419) n =  ;
+ 
+ unsigned g;
+ 
+ _BitInt(6)
+ foo (unsigned a, unsigned b, unsigned c, unsigned _BitInt(256) z,
+      unsigned _BitInt(12419) y)
+ {
+   y /= b;
+   unsigned _BitInt(12419) ay = a * y;
+   g -= (n >= ay ? n : ay) % c;
+   return z;
+ }
+ #endif
+ 
+ int
+ main ()
+ {
+ #if __BITINT_MAXWIDTH__ >= 12419
+   if (foo (0, 5, 5, 2, 0) != 2)
+     __builtin_abort ();
+ #endif
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/complex-10.c gcc-14-20260320/gcc/testsuite/gcc.dg/complex-10.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/complex-10.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/complex-10.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,16 ----
+ /* { dg-do compile } */
+ /* { dg-options "" } */
+ 
+ /* PR c/105555 */
+ 
+ struct C {
+   __complex int i;
+ };
+ struct C p[10];
+ int *foo1(void) {
+   return &__real(p->i);
+ }
+ 
+ int *foo2(void) {
+   return &__imag(p->i);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/gomp/pr123876.c gcc-14-20260320/gcc/testsuite/gcc.dg/gomp/pr123876.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/gomp/pr123876.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/gomp/pr123876.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,69 ----
+ /* PR middle-end/123876 */
+ 
+ void
+ foo ()
+ {
+ lab:
+ #pragma omp simd
+   for (int i = 0; i < 4; i++)
+     asm goto ("" : : : : lab);			/* { dg-error "invalid branch to/from OpenMP structured block" } */
+ #pragma omp for
+   for (int i = 0; i < 4; i++)
+    asm goto ("" : : : : lab);			/* { dg-error "invalid branch to/from OpenMP structured block" } */
+ #pragma omp parallel
+   asm goto ("" : : : : lab);			/* { dg-error "invalid branch to/from OpenMP structured block" } */
+ }
+ 
+ void
+ bar ()
+ {
+ lab3:
+ #pragma omp simd
+   for (int i = 0; i < 4; i++)
+     {
+     lab1:
+     lab2:
+       asm goto ("" : : : : lab1, lab2, lab3);	/* { dg-error "invalid branch to/from OpenMP structured block" } */
+     }
+ #pragma omp for
+   for (int i = 0; i < 4; i++)
+     {
+     lab4:
+     lab5:
+       asm goto ("" : : : : lab4, lab5, lab3);	/* { dg-error "invalid branch to/from OpenMP structured block" } */
+     }
+ #pragma omp parallel
+   {
+   lab6:
+   lab7:
+     asm goto ("" : : : : lab6, lab7, lab3);	/* { dg-error "invalid branch to/from OpenMP structured block" } */
+   }
+ }
+ 
+ void
+ baz ()
+ {
+ #pragma omp simd
+   for (int i = 0; i < 4; i++)
+     {
+     lab1:
+     lab2:
+       asm goto ("" : : : : lab1, lab2, lab3);
+     lab3:;
+     }
+ #pragma omp for
+   for (int i = 0; i < 4; i++)
+     {
+     lab4:
+     lab5:
+       asm goto ("" : : : : lab4, lab5, lab6);
+     lab6:;
+     }
+ #pragma omp parallel
+   {
+   lab7:
+   lab8:
+     asm goto ("" : : : : lab7, lab8, lab9);
+   lab9:;
+   }
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr101312-1.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr101312-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr101312-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr101312-1.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,4 ----
+ /* PR c/101312 */
+ /* { dg-do compile } */
+ 
+ volatile int a[1] __attribute__((may_alias));
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr101312-2.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr101312-2.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr101312-2.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr101312-2.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,5 ----
+ /* PR c/101312 */
+ /* { dg-do compile } */
+ /* { dg-options "-g" } */
+ 
+ volatile int a[1] __attribute__((may_alias));
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr109410-2.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr109410-2.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr109410-2.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr109410-2.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,5 ----
+ /* PR tree-optimization/109410 */
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -g" } */
+ 
+ #include "pr109410.c"
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr121104.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr121104.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr121104.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr121104.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,23 ----
+ /* PR tree-optimization/121104 */
+ /* { dg-do compile } */
+ /* { dg-options "-O2" } */
+ 
+ static unsigned long
+ foo (unsigned long x, unsigned long y,
+      unsigned long z, unsigned long *w)
+ {
+   int r;
+   unsigned long a = __builtin_sub_overflow (x, y, &r);
+   unsigned long b = __builtin_sub_overflow (r, z, &r);
+   *w = a + b;
+   return r;
+ }
+ 
+ unsigned long
+ bar (unsigned long *p, unsigned long *q)
+ {
+   unsigned long c;
+   p[0] = foo (p[0], q[0], 0, &c);
+   p[1] = foo (p[1], q[1], c, &c);
+   return c;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr123018.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr123018.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr123018.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr123018.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,17 ----
+ /* PR c/123018 */
+ /* { dg-do compile } */
+ 
+ struct A {
+   int x : 8 __attribute__ ((vector_size (8)));	/* { dg-error "bit-field 'x' has invalid type" } */
+ };
+ struct B {
+   float x : 8;					/* { dg-error "bit-field 'x' has invalid type" } */
+ };
+ struct C {
+   int : 8 __attribute__ ((vector_size (8)));	/* { dg-error "bit-field '\[^\n\r]*anonymous\[^\n\r]*' has invalid type" } */
+   int x;
+ };
+ struct D {
+   float : 8;					/* { dg-error "bit-field '\[^\n\r]*anonymous\[^\n\r]*' has invalid type" } */
+   int x;
+ };
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr123294-1.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr123294-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr123294-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr123294-1.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,15 ----
+ /* { dg-do compile } */
+ /* { dg-options "-O1 -fno-tree-dse -fno-tree-dce" } */
+ /* PR rtl-optimization/123294 */
+ 
+ typedef unsigned a;
+ int b;
+ void g(__attribute__((__vector_size__(4 * sizeof(a)))) a *);
+ a d() {
+   __attribute__((__vector_size__(4 * sizeof(a)))) a e[5];
+   if (0 > b) {
+     __attribute__((__vector_size__(8 * sizeof(a)))) a f = {b, b};
+     e[0] = __builtin_shufflevector(f, f, 0, 1, 2, 3);
+   }
+   return 1;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr123431.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr123431.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr123431.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr123431.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,19 ----
+ /* PR tree-optimization/123431 */
+ /* { dg-do compile } */
+ /* { dg-options "-O2" } */
+ 
+ extern void foo (int);
+ 
+ extern inline __attribute__((always_inline)) void
+ bar (int x, ...)
+ {
+   if (__builtin_constant_p (__builtin_va_arg_pack ()))
+     foo (x);
+ }
+ 
+ void
+ baz (int x)
+ {
+   bar (1, 2);
+   bar (3, x);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr123537.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr123537.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr123537.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr123537.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,20 ----
+ /* { dg-do compile } */
+ /* { dg-require-effective-target int128 } */
+ /* { dg-options "-O2" } */
+ 
+ typedef __attribute__((__vector_size__(16))) __int128 V;
+ 
+ union {
+   _Complex long c;
+   V v;
+ } u;
+ 
+ __int128 j;
+ int i;
+ 
+ void
+ foo()
+ {
+   u.v &= 4;
+   i %= u.c ? 3 : j;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr123882.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr123882.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr123882.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr123882.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,7 ----
+ /* PR c/123882 */
+ /* { dg-do compile } */
+ /* { dg-options "-std=c23" } */
+ 
+ typedef int T;
+ void foo (unsigned long, T[]);
+ void foo (unsigned long x, T[restrict x]);
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/pr124138.c gcc-14-20260320/gcc/testsuite/gcc.dg/pr124138.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/pr124138.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/pr124138.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,20 ----
+ /* PR target/124138 */
+ /* { dg-do run } */
+ /* { dg-options "-Wno-psabi" } */
+ 
+ typedef __attribute__((__vector_size__ (8 * sizeof (unsigned long long)))) unsigned long long V;
+ 
+ [[gnu::noipa]] V
+ foo (V x)
+ {
+   return __builtin_shuffle (x, (V) { 0, 1, 2, 5, 4, 5, 6, 7 });
+ }
+ 
+ int
+ main ()
+ {
+   V x = foo ((V) { 1, 2, 3, 4, 5, 6, 7, 8 });
+   if (x[0] != 1 || x[1] != 2 || x[2] != 3 || x[3] != 6
+       || x[4] != 5 || x[5] != 6 || x[6] != 7 || x[7] != 8)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/builtin-shufflevector-pr123156.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/builtin-shufflevector-pr123156.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/builtin-shufflevector-pr123156.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/builtin-shufflevector-pr123156.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,40 ----
+ /* { dg-do run { target le } } */
+ 
+ #include <stdint.h>
+ 
+ #define BS_VEC(type, num) type __attribute__((vector_size(num * sizeof(type))))
+ #define BITCAST(T, F, arg)                                                     \
+     ((union {                                                                  \
+         F src;                                                                 \
+         T dst;                                                                 \
+     })arg)                                                                     \
+         .dst
+ 
+ uint64_t func_1()
+ {
+     BS_VEC(uint64_t, 32) BS_VAR_0;
+     BS_VAR_0 = BITCAST(
+         BS_VEC(uint64_t, 32), BS_VEC(uint8_t, 256),
+         __builtin_shufflevector(
+             (BS_VEC(uint8_t, 2)){ 2 }, (BS_VEC(uint8_t, 2)){}, 1, 0, 2, 2, 2, 3,
+             1, 2, 3, 1, 3, 3, 2, 1, 3, 0, 2, 2, 1, 2, 1, 3, 1, 1, 0, 0, 2, 0, 3,
+             2, 2, 0, 1, 3, 1, 2, 0, 2, 0, 3, 0, 0, 2, 0, 2, 1, 3, 2, 3, 2, 1, 1,
+             2, 3, 3, 3, 3, 0, 1, 2, 3, 2, 0, 2, 2, 2, 0, 3, 3, 3, 1, 3, 0, 0, 2,
+             3, 1, 1, 2, 2, 1, 2, 0, 0, 3, 2, 2, 3, 2, 2, 3, 2, 0, 2, 2, 0, 2, 1,
+             3, 1, 0, 2, 1, 3, 2, 1, 0, 2, 3, 0, 1, 3, 2, 1, 3, 1, 1, 3, 2, 2, 0,
+             3, 2, 2, 0, 3, 0, 3, 2, 3, 1, 3, 2, 3, 3, 2, 2, 0, 0, 0, 2, 1, 3, 1,
+             2, 2, 3, 0, 1, 3, 1, 1, 2, 0, 1, 2, 1, 2, 0, 2, 0, 2, 3, 3, 3, 1, 2,
+             0, 3, 1, 2, 0, 1, 0, 3, 0, 0, 3, 2, 2, 0, 3, 1, 2, 0, 1, 1, 3, 0, 1,
+             3, 1, 3, 2, 1, 3, 1, 2, 1, 1, 0, 1, 3, 3, 2, 3, 2, 2, 0, 2, 2, 2, 1,
+             1, 0, 3, 1, 3, 0, 3, 0, 0, 1, 3, 3, 1, 2, 1, 1, 3, 1, 0, 2, 1, 3, 2,
+             1, 3, 2, 2, 2, 3, 2, 0, 1, 3, 3, 3, 0, 0, 0, 1, 3, 2, 2, 1));
+     return BS_VAR_0[0];
+ }
+ 
+ int main()
+ {
+     uint64_t BS_CHECKSUM = func_1();
+     if (BS_CHECKSUM != 0x0000000000000200ull)
+       __builtin_abort ();
+     return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr110043.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr110043.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr110043.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr110043.c	Fri Mar 20 22:32:11 2026
***************
*** 0 ****
--- 1,9 ----
+ /* { dg-do compile } */
+ /* { dg-require-effective-target int128 } */
+ 
+ __int128 g_116_1;
+ extern char g_521[][8];
+ void func_24() {
+   for (; g_116_1 >= 0;)
+     g_521[g_116_1][g_116_1] &= 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr111036.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr111036.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr111036.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr111036.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,24 ----
+ /* { dg-do run } */
+ 
+ #include <stdlib.h>
+ 
+ __attribute__((aligned(32))) static struct
+ {
+   unsigned long long available_cmd_ids_per_core[2];
+ } _rl2c_cmd_id_data;
+ 
+ static inline void __attribute__((always_inline))
+ foo (void *base, size_t length)
+ {
+   unsigned long int p = (unsigned long int) base;
+   if (__builtin_constant_p(p) && (p & 31) == 0) { exit (0); } 
+   else if (__builtin_constant_p(length)) { exit (0); } 
+   else { exit (0); }
+ }
+ 
+ int main(int argc, char **argv)
+ {
+   foo(&_rl2c_cmd_id_data, sizeof(*(&_rl2c_cmd_id_data)));
+   return 0;
+ }
+ 
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr116296.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr116296.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr116296.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr116296.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,9 ----
+ /* { dg-do compile } */
+ /* { dg-require-effective-target int32plus } */
+ 
+ short g(unsigned long h, int i[11][11], short c)
+ {
+   for (unsigned long j = 0; j < h; j -= 0x105f000000000000ull)
+     c = c > i[j][j];
+   return c;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr119532.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr119532.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr119532.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr119532.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,14 ----
+ /* { dg-do compile } */
+ /* { dg-require-effective-target fixed_point } */
+ 
+ extern _Fract sinuhk_deg (unsigned short _Accum);
+ 
+ _Fract cosuhk_deg (unsigned short _Accum deg)
+ {
+   unsigned short _Accum _90_deg = 90uhk;
+   __asm ("" : "+r" (_90_deg));
+ 
+   return deg <= _90_deg
+     ? sinuhk_deg (_90_deg - deg)
+     : -sinuhk_deg (deg - _90_deg);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120182.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120182.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120182.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120182.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,42 ----
+ /* { dg-do run { target { { *-*-linux* *-*-gnu* *-*-uclinux* } && mmap } } } */
+ 
+ #include <unistd.h>
+ #include <stdlib.h>
+ #include <sys/mman.h>
+ 
+ struct S
+ {
+   struct S *next;
+ };
+ 
+ static void __attribute__((noipa))
+ allocate(void *addr, unsigned long long size)
+ {
+   void *ptr = mmap((void *)addr, size,
+ 		   PROT_READ | PROT_WRITE,
+ 		   MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED_NOREPLACE,
+ 		   -1, 0);
+   if(ptr != addr)
+     exit(0);
+ }
+ 
+ int main (void)
+ {
+   int size = 0x8000;
+   char *ptr = (char *)0x288000ull;
+   allocate((void *)ptr, size);
+ 
+   struct S *s1 = (struct S *)ptr;
+   struct S *s2 = (struct S *)256;
+   for (int i = 0; i < 3; i++)
+     {
+       for(char *addr = (char *)s1; addr < (char *)s1 + sizeof(*s1); ++addr)
+ 	*addr = 0;
+ 
+       if(s1->next)
+ 	s1->next = s1->next->next = s2;
+       else
+ 	s1->next = s2;
+     }
+   return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120341-1.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120341-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120341-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120341-1.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,11 ----
+ /* { dg-do run } */
+ /* { dg-additional-options "-fallow-store-data-races" } */
+ 
+ char a, *b;
+ int main()
+ {
+   b = "0";
+   if (a)
+     b[0]++;
+   return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120341-2.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120341-2.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr120341-2.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr120341-2.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,13 ----
+ /* { dg-do run } */
+ /* { dg-additional-options "-fallow-store-data-races" } */
+ 
+ char a, *b;
+ int main()
+ {
+   while (a)
+     {
+       b = "0";
+       b[0]++;
+     }
+   return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr121844.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr121844.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr121844.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr121844.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,16 ----
+ /* { dg-do compile } */
+ 
+ typedef unsigned long a;
+ int b[] = {};
+ int **c;
+ short d(a *e, int f)
+ {
+   *c = &f;
+   for (;;)
+     asm goto("" : : : : g);
+   for (; f; f--) {
+     asm goto("" : : : : g);
+   g:
+     *e ^= b[f + 1];
+   }
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123645-1.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123645-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123645-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123645-1.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,24 ----
+ /* { dg-do run } */
+ 
+ /* PR tree-optimization/123645 */
+ /* Phi-opt was transforming f into __builtin_popcount which was incorrect. */
+ 
+ __attribute__((noinline))
+ int f(unsigned a)
+ {
+   return a < 1 ? __builtin_popcount(a) : 0;
+ }
+ 
+ int main()
+ {
+   if (f(1) != 0)
+     __builtin_abort();
+   if (f(0) != 0)
+     __builtin_abort();
+   if (f(2) != 0)
+     __builtin_abort();
+   if (f(3) != 0)
+     __builtin_abort();
+   if (f(-1) != 0)
+     __builtin_abort();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123645-2.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123645-2.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123645-2.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123645-2.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,24 ----
+ /* { dg-do run } */
+ 
+ /* PR tree-optimization/123645 */
+ /* Phi-opt was transforming f into __builtin_bswap which was incorrect. */
+ 
+ __attribute__((noinline))
+ int f(unsigned a)
+ {
+   return a < 1 ? __builtin_bswap32(a) : 0;
+ }
+ 
+ int main()
+ {
+   if (f(1) != 0)
+     __builtin_abort();
+   if (f(0) != 0)
+     __builtin_abort();
+   if (f(2) != 0)
+     __builtin_abort();
+   if (f(3) != 0)
+     __builtin_abort();
+   if (f(-1) != 0)
+     __builtin_abort();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123864.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123864.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/pr123864.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/pr123864.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,28 ----
+ /* PR tree-optimization/123864 */
+ /* { dg-do run { target int128 } } */
+ 
+ int u, v, x;
+ 
+ [[gnu::noipa]] static void
+ foo ()
+ {
+   __int128 c = (__int128) 0xa5ee4bc88ULL << 64;
+   long long b = 0x207b8a7f7LL;
+   int a = 4;
+   long long y;
+   __builtin_add_overflow (a, v, &y);
+   c *= y;
+   
+   unsigned z;
+   if (__builtin_add_overflow (b, u, &z))
+     z = 0xffffffffU;
+   x = __builtin_mul_overflow_p (z, c, c);
+ }
+ 
+ int
+ main ()
+ {
+   foo ();
+   if (!x)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/torture/vec-cvt-1.c gcc-14-20260320/gcc/testsuite/gcc.dg/torture/vec-cvt-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/torture/vec-cvt-1.c	Fri Mar 13 22:32:13 2026
--- gcc-14-20260320/gcc/testsuite/gcc.dg/torture/vec-cvt-1.c	Fri Mar 20 22:32:12 2026
*************** flttointtest##intt (void)						\
*** 55,76 ****
    else									\
      {									\
        vf2 = fltmin = min - 1.0f;					\
!       for (vf = 1.0f; (fltmin = vf2 + vf) == vf2; vf = vf * 2.0f)	\
  	;								\
      }									\
    vf2 = fltmax = max + 1.0f;						\
!   for (vf = 1.0f; (fltmax = vf2 - vf) == vf2; vf = vf * 2.0f)		\
      ;									\
    if (min == 0)								\
      dblmin = 0.0;							\
    else									\
      {									\
        vd2 = dblmin = min - 1.0;						\
!       for (vd = 1.0; (dblmin = vd2 + vd) == vd2; vd = vd * 2.0)		\
  	;								\
      }									\
    vd2 = dblmax = max + 1.0;						\
!   for (vd = 1.0; (dblmax = vd2 - vd) == vd2; vd = vd * 2.0)		\
      ;									\
    for (i = 0; i < N; i++)						\
      {									\
--- 55,76 ----
    else									\
      {									\
        vf2 = fltmin = min - 1.0f;					\
!       for (vf = 1.0f; fltmin = vf2 + vf, fltmin == vf2; vf = vf * 2.0f)	\
  	;								\
      }									\
    vf2 = fltmax = max + 1.0f;						\
!   for (vf = 1.0f; fltmax = vf2 - vf, fltmax == vf2; vf = vf * 2.0f)	\
      ;									\
    if (min == 0)								\
      dblmin = 0.0;							\
    else									\
      {									\
        vd2 = dblmin = min - 1.0;						\
!       for (vd = 1.0; dblmin = vd2 + vd, dblmin == vd2; vd = vd * 2.0)	\
  	;								\
      }									\
    vd2 = dblmax = max + 1.0;						\
!   for (vd = 1.0; dblmax = vd2 - vd, dblmax == vd2; vd = vd * 2.0)	\
      ;									\
    for (i = 0; i < N; i++)						\
      {									\
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.dg/vect/vect-pr122793.c gcc-14-20260320/gcc/testsuite/gcc.dg/vect/vect-pr122793.c
*** gcc-14-20260313/gcc/testsuite/gcc.dg/vect/vect-pr122793.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.dg/vect/vect-pr122793.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,28 ----
+ /* { dg-additional-options "-msse4" { target sse4_runtime } } */
+ 
+ #include "tree-vect.h"
+ 
+ static void
+ foo (unsigned char *d, unsigned char *s, int e, int f)
+ {
+   for (int i = 0; i < 4; i++)
+     {
+       d[0] = s[-2];
+       d[5] = (s[5] + s[6]) * 2 - (s[4] + s[7]);
+       d[6] = (s[6] + s[7]) * 2 - (s[5] + s[8]);
+       d[7] = (s[7] + s[8]) * 2 - (s[6] + s[9]);
+       d += e;
+       s += f;
+     }
+ }
+ 
+ unsigned char s[128] = { 2 }, d[128];
+ 
+ int
+ main ()
+ {
+   check_vect ();
+   foo (d, s + 2, 16, 16);
+   if (d[5] != 0)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/aarch64-pch.exp gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/aarch64-pch.exp
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/aarch64-pch.exp	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/aarch64-pch.exp	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,52 ----
+ #  Regression driver checking precompiled header compatibility of acle headers.
+ #  Copyright (C) 2025 Free Software Foundation, Inc.
+ #  Contributed by ARM Ltd.
+ #
+ #  This file is part of GCC.
+ #
+ #  GCC is free software; you can redistribute it and/or modify it
+ #  under the terms of the GNU General Public License as published by
+ #  the Free Software Foundation; either version 3, or (at your option)
+ #  any later version.
+ #
+ #  GCC is distributed in the hope that it will be useful, but
+ #  WITHOUT ANY WARRANTY; without even the implied warranty of
+ #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ #  General Public License for more details.
+ #
+ #  You should have received a copy of the GNU General Public License
+ #  along with GCC; see the file COPYING3.  If not see
+ #  <http://www.gnu.org/licenses/>.  */
+ 
+ # GCC testsuite checking acle headers can be included in precompiled headers
+ # that uses the `dg.exp' driver.
+ 
+ # Exit immediately if this isn't an AArch64 target.
+ if {![istarget aarch64*-*-*] } then {
+   return
+ }
+ 
+ # Load support procs.
+ load_lib gcc-dg.exp
+ load_lib dg-pch.exp
+ load_lib torture-options.exp
+ 
+ # Initialize `dg'.
+ dg-init
+ torture-init
+ set-torture-options $DG_TORTURE_OPTIONS
+ pch-init
+ 
+ set arch_flags "-march=armv8.5-a+sve2+sme"
+ set old_dg_do_what_default "${dg-do-what-default}"
+ # Main loop.
+ foreach test [lsort [glob -nocomplain $srcdir/$subdir/*.c]] {
+   global torture_without_loops
+   dg-flags-pch $subdir $test $arch_flags \
+   	[concat [list {-O0 -g}] $torture_without_loops] ".h"
+ }
+ 
+ # All done.
+ pch-finish
+ torture-finish
+ dg-finish
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_acle.h"
+ 
+ uint32_t ror(uint32_t a, uint32_t b)
+ {
+   return __ror(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_acle.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,7 ----
+ #include "pch_arm_acle_include_post.h"
+ #include <arm_acle.h>
+ 
+ uint32_t ror(uint32_t a, uint32_t b)
+ {
+   return __ror(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_acle_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_acle.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_multiple.h"
+ 
+ svint32_t add_vectors(svint32_t a, svint32_t b)
+ {
+   return svadd_s32_z(svptrue_b32(), a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #pragma once
+ #include <arm_sme.h>
+ #include <arm_sve.h>
+ #include <arm_neon_sve_bridge.h>
+ #include <arm_neon.h>
+ #include <arm_acle.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,11 ----
+ #include "pch_arm_multiple_include_post.h"
+ #include <arm_sme.h>
+ #include <arm_sve.h>
+ #include <arm_neon_sve_bridge.h>
+ #include <arm_neon.h>
+ #include <arm_acle.h>
+ 
+ svint32_t add_vectors(svint32_t a, svint32_t b)
+ {
+   return svadd_s32_z(svptrue_b32(), a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_multiple_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #pragma once
+ #include <arm_sme.h>
+ #include <arm_sve.h>
+ #include <arm_neon_sve_bridge.h>
+ #include <arm_neon.h>
+ #include <arm_acle.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_neon.h"
+ 
+ uint32x4_t add_vectors(uint32x4_t a, uint32x4_t b)
+ {
+   return vaddq_u32(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_neon.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,7 ----
+ #include "pch_arm_neon_include_post.h"
+ #include "arm_neon.h"
+ 
+ uint32x4_t add_vectors(uint32x4_t a, uint32x4_t b)
+ {
+   return vaddq_u32(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_neon.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_neon_sve_bridge.h"
+ 
+ svint8_t set(svint8_t a, int8x16_t b)
+ {
+   return svset_neonq(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_neon_sve_bridge.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,7 ----
+ #include "pch_arm_neon_sve_bridge_include_post.h"
+ #include <arm_neon_sve_bridge.h>
+ 
+ svint8_t set(svint8_t a, int8x16_t b)
+ {
+   return svset_neonq(a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_neon_sve_bridge_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_neon_sve_bridge.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_sme.h"
+ 
+ void st(svbool_t pg, void *ptr, uint32_t slice_base) 
+   __arm_streaming __arm_inout("za"){
+   svst1_hor_za8(0, slice_base, pg, ptr);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_sme.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,7 ----
+ #include "pch_arm_sme_include_post.h"
+ #include <arm_sme.h>
+ 
+ void st(svbool_t pg, void *ptr, uint32_t slice_base) 
+   __arm_streaming __arm_inout("za"){
+   svst1_hor_za8(0, slice_base, pg, ptr);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sme_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_sme.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,6 ----
+ #include "pch_arm_sve.h"
+ 
+ svint32_t add_vectors(svint32_t a, svint32_t b)
+ {
+   return svadd_s32_z(svptrue_b32(), a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_sve.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,7 ----
+ #include "pch_arm_sve_include_post.h"
+ #include "arm_sve.h"
+ 
+ svint32_t add_vectors(svint32_t a, svint32_t b)
+ {
+   return svadd_s32_z(svptrue_b32(), a, b);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.hs gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.hs
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.hs	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pch/pch_arm_sve_include_post.hs	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,2 ----
+ #pragma once
+ #include <arm_sve.h>
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pr123285-1.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pr123285-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pr123285-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pr123285-1.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,36 ----
+ /* { dg-do run } */
+ /* { dg-options "-O3" } */
+ /* PR target/123285 */
+ 
+ #define BS_VEC(type, num) type __attribute__((vector_size(num * sizeof(type))))
+ 
+ /* f used to allocate v30 to either a or b and the inline-asm
+    would clobber the v30. */
+ [[gnu::noipa]]
+ BS_VEC(int, 8) f(BS_VEC(int, 8) a, BS_VEC(int, 8) b)
+ {
+   a+=b;
+   asm("movi v30.16b, 0":::"v30");
+   a+=b;
+   return a;
+ }
+ [[gnu::noipa]]
+ BS_VEC(int, 8) f1(BS_VEC(int, 8) a, BS_VEC(int, 8) b)
+ {
+   a+=b;
+   a+=b;
+   return a;
+ }
+ 
+ int main()
+ {
+   BS_VEC(int, 8) a = {0,1,2,3,4,5,6,7};
+   BS_VEC(int, 8) b = {8,9,10,11,12,13,14};
+   BS_VEC(int, 8) c0 = f(a,b);
+   BS_VEC(int, 8) c1 = f1(a,b);
+   for(int i=0;i<8;i++)
+   if ( c0[i] != c1[i] )
+     __builtin_abort ();
+ }
+ 
+ 
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pr123294-1.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pr123294-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/pr123294-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/pr123294-1.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,18 ----
+ /* { dg-do compile } */
+ /* { dg-options "-O1" } */
+ /* PR rtl-optimization/123294 */
+ 
+ #include <arm_neon.h>
+ 
+ typedef unsigned a;
+ int b;
+ a d() {
+   __attribute__((__vector_size__(4 * sizeof(a)))) a e[5];
+   if (0 > b) {
+     __attribute__((__vector_size__(8 * sizeof(a)))) a f = {b, b};
+     e[0] = __builtin_shufflevector(f, f, 0, 1, 2, 3);
+   }
+   while (vqadd_u64((uint64x1_t){3}, (uint64x1_t){0})[0])
+     ;
+   return e[0][3];
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_bf16_m_tied1, svbfl
*** 22,30 ****
  
  /*
  ** revd_bf16_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_m_tied2, svbfloat16_t,
--- 22,29 ----
  
  /*
  ** revd_bf16_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_m_tied2, svbfloat16_t,
*************** TEST_UNIFORM_Z (revd_bf16_m_tied2, svbfl
*** 33,40 ****
  
  /*
  ** revd_bf16_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_m_untied, svbfloat16_t,
--- 32,39 ----
  
  /*
  ** revd_bf16_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_m_untied, svbfloat16_t,
*************** TEST_UNIFORM_Z (revd_bf16_x_tied1, svbfl
*** 67,74 ****
  
  /*
  ** revd_bf16_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_x_untied, svbfloat16_t,
--- 66,73 ----
  
  /*
  ** revd_bf16_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_bf16_x_untied, svbfloat16_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_f16_m_tied1, svfloa
*** 22,30 ****
  
  /*
  ** revd_f16_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_m_tied2, svfloat16_t,
--- 22,29 ----
  
  /*
  ** revd_f16_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_m_tied2, svfloat16_t,
*************** TEST_UNIFORM_Z (revd_f16_m_tied2, svfloa
*** 33,40 ****
  
  /*
  ** revd_f16_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_m_untied, svfloat16_t,
--- 32,39 ----
  
  /*
  ** revd_f16_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_m_untied, svfloat16_t,
*************** TEST_UNIFORM_Z (revd_f16_x_tied1, svfloa
*** 67,74 ****
  
  /*
  ** revd_f16_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_x_untied, svfloat16_t,
--- 66,73 ----
  
  /*
  ** revd_f16_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f16_x_untied, svfloat16_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_f32_m_tied1, svfloa
*** 22,30 ****
  
  /*
  ** revd_f32_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_m_tied2, svfloat32_t,
--- 22,29 ----
  
  /*
  ** revd_f32_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_m_tied2, svfloat32_t,
*************** TEST_UNIFORM_Z (revd_f32_m_tied2, svfloa
*** 33,40 ****
  
  /*
  ** revd_f32_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_m_untied, svfloat32_t,
--- 32,39 ----
  
  /*
  ** revd_f32_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_m_untied, svfloat32_t,
*************** TEST_UNIFORM_Z (revd_f32_x_tied1, svfloa
*** 67,74 ****
  
  /*
  ** revd_f32_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_x_untied, svfloat32_t,
--- 66,73 ----
  
  /*
  ** revd_f32_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f32_x_untied, svfloat32_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_f64_m_tied1, svfloa
*** 22,30 ****
  
  /*
  ** revd_f64_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_m_tied2, svfloat64_t,
--- 22,29 ----
  
  /*
  ** revd_f64_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_m_tied2, svfloat64_t,
*************** TEST_UNIFORM_Z (revd_f64_m_tied2, svfloa
*** 33,40 ****
  
  /*
  ** revd_f64_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_m_untied, svfloat64_t,
--- 32,39 ----
  
  /*
  ** revd_f64_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_m_untied, svfloat64_t,
*************** TEST_UNIFORM_Z (revd_f64_x_tied1, svfloa
*** 67,74 ****
  
  /*
  ** revd_f64_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_x_untied, svfloat64_t,
--- 66,73 ----
  
  /*
  ** revd_f64_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_f64_x_untied, svfloat64_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_s16_m_tied1, svint1
*** 22,30 ****
  
  /*
  ** revd_s16_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_m_tied2, svint16_t,
--- 22,29 ----
  
  /*
  ** revd_s16_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_m_tied2, svint16_t,
*************** TEST_UNIFORM_Z (revd_s16_m_tied2, svint1
*** 33,40 ****
  
  /*
  ** revd_s16_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_m_untied, svint16_t,
--- 32,39 ----
  
  /*
  ** revd_s16_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_m_untied, svint16_t,
*************** TEST_UNIFORM_Z (revd_s16_x_tied1, svint1
*** 67,74 ****
  
  /*
  ** revd_s16_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_x_untied, svint16_t,
--- 66,73 ----
  
  /*
  ** revd_s16_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s16_x_untied, svint16_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_s32_m_tied1, svint3
*** 22,30 ****
  
  /*
  ** revd_s32_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_m_tied2, svint32_t,
--- 22,29 ----
  
  /*
  ** revd_s32_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_m_tied2, svint32_t,
*************** TEST_UNIFORM_Z (revd_s32_m_tied2, svint3
*** 33,40 ****
  
  /*
  ** revd_s32_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_m_untied, svint32_t,
--- 32,39 ----
  
  /*
  ** revd_s32_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_m_untied, svint32_t,
*************** TEST_UNIFORM_Z (revd_s32_x_tied1, svint3
*** 67,74 ****
  
  /*
  ** revd_s32_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_x_untied, svint32_t,
--- 66,73 ----
  
  /*
  ** revd_s32_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s32_x_untied, svint32_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_s64_m_tied1, svint6
*** 22,30 ****
  
  /*
  ** revd_s64_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_m_tied2, svint64_t,
--- 22,29 ----
  
  /*
  ** revd_s64_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_m_tied2, svint64_t,
*************** TEST_UNIFORM_Z (revd_s64_m_tied2, svint6
*** 33,40 ****
  
  /*
  ** revd_s64_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_m_untied, svint64_t,
--- 32,39 ----
  
  /*
  ** revd_s64_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_m_untied, svint64_t,
*************** TEST_UNIFORM_Z (revd_s64_x_tied1, svint6
*** 67,74 ****
  
  /*
  ** revd_s64_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_x_untied, svint64_t,
--- 66,73 ----
  
  /*
  ** revd_s64_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s64_x_untied, svint64_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_s8_m_tied1, svint8_
*** 22,30 ****
  
  /*
  ** revd_s8_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_m_tied2, svint8_t,
--- 22,29 ----
  
  /*
  ** revd_s8_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_m_tied2, svint8_t,
*************** TEST_UNIFORM_Z (revd_s8_m_tied2, svint8_
*** 33,40 ****
  
  /*
  ** revd_s8_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_m_untied, svint8_t,
--- 32,39 ----
  
  /*
  ** revd_s8_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_m_untied, svint8_t,
*************** TEST_UNIFORM_Z (revd_s8_x_tied1, svint8_
*** 67,74 ****
  
  /*
  ** revd_s8_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_x_untied, svint8_t,
--- 66,73 ----
  
  /*
  ** revd_s8_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_s8_x_untied, svint8_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_u16_m_tied1, svuint
*** 22,30 ****
  
  /*
  ** revd_u16_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_m_tied2, svuint16_t,
--- 22,29 ----
  
  /*
  ** revd_u16_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_m_tied2, svuint16_t,
*************** TEST_UNIFORM_Z (revd_u16_m_tied2, svuint
*** 33,40 ****
  
  /*
  ** revd_u16_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_m_untied, svuint16_t,
--- 32,39 ----
  
  /*
  ** revd_u16_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_m_untied, svuint16_t,
*************** TEST_UNIFORM_Z (revd_u16_x_tied1, svuint
*** 67,74 ****
  
  /*
  ** revd_u16_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_x_untied, svuint16_t,
--- 66,73 ----
  
  /*
  ** revd_u16_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u16_x_untied, svuint16_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_u32_m_tied1, svuint
*** 22,30 ****
  
  /*
  ** revd_u32_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_m_tied2, svuint32_t,
--- 22,29 ----
  
  /*
  ** revd_u32_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_m_tied2, svuint32_t,
*************** TEST_UNIFORM_Z (revd_u32_m_tied2, svuint
*** 33,40 ****
  
  /*
  ** revd_u32_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_m_untied, svuint32_t,
--- 32,39 ----
  
  /*
  ** revd_u32_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_m_untied, svuint32_t,
*************** TEST_UNIFORM_Z (revd_u32_x_tied1, svuint
*** 67,74 ****
  
  /*
  ** revd_u32_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_x_untied, svuint32_t,
--- 66,73 ----
  
  /*
  ** revd_u32_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u32_x_untied, svuint32_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_u64_m_tied1, svuint
*** 22,30 ****
  
  /*
  ** revd_u64_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_m_tied2, svuint64_t,
--- 22,29 ----
  
  /*
  ** revd_u64_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_m_tied2, svuint64_t,
*************** TEST_UNIFORM_Z (revd_u64_m_tied2, svuint
*** 33,40 ****
  
  /*
  ** revd_u64_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_m_untied, svuint64_t,
--- 32,39 ----
  
  /*
  ** revd_u64_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_m_untied, svuint64_t,
*************** TEST_UNIFORM_Z (revd_u64_x_tied1, svuint
*** 67,74 ****
  
  /*
  ** revd_u64_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_x_untied, svuint64_t,
--- 66,73 ----
  
  /*
  ** revd_u64_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u64_x_untied, svuint64_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c	Fri Mar 20 22:32:12 2026
*************** TEST_UNIFORM_Z (revd_u8_m_tied1, svuint8
*** 22,30 ****
  
  /*
  ** revd_u8_m_tied2:
! **	mov	(z[0-9]+)\.d, z0\.d
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, \1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_m_tied2, svuint8_t,
--- 22,29 ----
  
  /*
  ** revd_u8_m_tied2:
! **	revd	z1\.q, p0/m, z0\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_m_tied2, svuint8_t,
*************** TEST_UNIFORM_Z (revd_u8_m_tied2, svuint8
*** 33,40 ****
  
  /*
  ** revd_u8_m_untied:
! **	movprfx	z0, z2
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_m_untied, svuint8_t,
--- 32,39 ----
  
  /*
  ** revd_u8_m_untied:
! **	revd	z2\.q, p0/m, z1\.q
! **	mov	z0.d, z2.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_m_untied, svuint8_t,
*************** TEST_UNIFORM_Z (revd_u8_x_tied1, svuint8
*** 67,74 ****
  
  /*
  ** revd_u8_x_untied:
! **	movprfx	z0, z1
! **	revd	z0\.q, p0/m, z1\.q
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_x_untied, svuint8_t,
--- 66,73 ----
  
  /*
  ** revd_u8_x_untied:
! **	revd	z1\.q, p0/m, z1\.q
! **	mov	z0.d, z1.d
  **	ret
  */
  TEST_UNIFORM_Z (revd_u8_x_untied, svuint8_t,
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c	Fri Mar 13 22:32:14 2026
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sme/sme-shrinkwrap.c	Fri Mar 20 22:32:12 2026
***************
*** 1,4 ****
! /* { dg-options "-O3 -fshrink-wrap" } */
  /* { dg-do run { target { aarch64_sme_hw && aarch64_sve_hw } } } */
  /* { dg-do compile { target { ! { aarch64_sme_hw && aarch64_sve_hw } } } } */
  /* { dg-final { check-function-bodies "**" "" } } */
--- 1,4 ----
! /* { dg-options "-O3 -fshrink-wrap -save-temps" } */
  /* { dg-do run { target { aarch64_sme_hw && aarch64_sve_hw } } } */
  /* { dg-do compile { target { ! { aarch64_sme_hw && aarch64_sve_hw } } } } */
  /* { dg-final { check-function-bodies "**" "" } } */
*************** int foo(int x)
*** 46,51 ****
--- 46,52 ----
  **	...
  */
  
+ [[gnu::noipa]]
  __arm_locally_streaming
  int bar(int x)
  {
*************** int baz(int x)
*** 69,75 ****
      return svcntd();
  }
  
- [[gnu::noipa]]
  int main()
  {
    if (bar(0) != svcntsd())
--- 70,75 ----
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sve2/pr123775.c gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sve2/pr123775.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/aarch64/sve2/pr123775.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/aarch64/sve2/pr123775.c	Fri Mar 20 22:32:12 2026
***************
*** 0 ****
--- 1,37 ----
+ /* { dg-do run { target { aarch64_sve128_hw && aarch64_sve2_hw } } } */
+ /* { dg-additional-options "-O3 -march=armv9-a+sve2 -msve-vector-bits=128 --param aarch64-autovec-preference=sve-only" } */
+ 
+ int main(int argc, char *argv[]) {
+ 
+     __attribute__((vector_size((4) * sizeof(int)))) int i0;
+     __attribute__((vector_size((4) * sizeof(int)))) int i1;
+     __attribute__((vector_size((4) * sizeof(int)))) int ires;
+     int i;
+ 
+     i0 = (__attribute__((vector_size((4) * sizeof(int)))) int){(int)argc, 1, 2,
+                                                                10};
+     i1 = (__attribute__((vector_size((4) * sizeof(int)))) int){0, 3, 2,
+                                                                (int)-23};
+     ;
+     do {
+         ires = (i0 > i1);
+         do {
+             int __i;
+             for (__i = 0; __i < 4; __i++) {
+                 if ((ires)[__i] != ((i0)[__i] > (i1)[__i] ? -1 : 0)) {
+                     __builtin_printf("%i != (("
+                                      "%i"
+                                      " "
+                                      ">"
+                                      " "
+                                      "%i"
+                                      " ? -1 : 0) ",
+                                      (ires)[__i], (i0)[__i], (i1)[__i]);
+                     __builtin_abort();
+                 }
+             }
+         } while (0);
+     } while (0);
+ 
+     return 0;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124138-1.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124138-1.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124138-1.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124138-1.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,24 ----
+ /* PR target/124138 */
+ /* { dg-do run } */
+ /* { dg-options "-mavx512f" } */
+ /* { dg-require-effective-target avx512f } */
+ 
+ #define AVX512F
+ #include "avx512f-helper.h"
+ 
+ typedef __attribute__((__vector_size__ (64))) unsigned long long V;
+ 
+ [[gnu::noipa]] V
+ foo (V x)
+ {
+   return __builtin_shuffle (x, (V) { 0, 1, 2, 5, 4, 5, 6, 7 });
+ }
+ 
+ void
+ TEST ()
+ {
+   V x = foo ((V) { 1, 2, 3, 4, 5, 6, 7, 8 });
+   if (x[0] != 1 || x[1] != 2 || x[2] != 3 || x[3] != 6
+       || x[4] != 5 || x[5] != 6 || x[6] != 7 || x[7] != 8)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124138-2.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124138-2.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124138-2.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124138-2.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,25 ----
+ /* PR target/124138 */
+ /* { dg-do run } */
+ /* { dg-options "-mavx512f" } */
+ /* { dg-require-effective-target avx512f } */
+ 
+ #define AVX512F
+ #include "avx512f-helper.h"
+ 
+ typedef __attribute__((__vector_size__ (64))) unsigned long long V;
+ typedef __attribute__((__vector_size__ (64))) double W;
+ 
+ [[gnu::noipa]] W
+ foo (W x)
+ {
+   return __builtin_shuffle (x, (V) { 0, 1, 2, 5, 4, 5, 6, 7 });
+ }
+ 
+ void
+ TEST ()
+ {
+   W x = foo ((W) { 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5 });
+   if (x[0] != 1.5 || x[1] != 2.5 || x[2] != 3.5 || x[3] != 6.5
+       || x[4] != 5.5 || x[5] != 6.5 || x[6] != 7.5 || x[7] != 8.5)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124315.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124315.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512f-pr124315.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512f-pr124315.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,33 ----
+ /* PR target/124315 */
+ /* { dg-do compile { target masm_intel } } */
+ /* { dg-options "-O2 -mavx512f -masm=intel" } */
+ /* { dg-final { scan-assembler "\tvfmadd231sd\txmm0{k\[0-7]}, xmm1, xmm2, {ru-sae}" } } */
+ /* { dg-final { scan-assembler "\tvfmsub231sd\txmm0{k\[0-7]}, xmm1, xmm2, {ru-sae}" } } */
+ /* { dg-final { scan-assembler "\tvfnmadd231sd\txmm0{k\[0-7]}, xmm1, xmm2, {ru-sae}" } } */
+ /* { dg-final { scan-assembler "\tvfnmsub231sd\txmm0{k\[0-7]}, xmm1, xmm2, {ru-sae}" } } */
+ 
+ #include <x86intrin.h>
+ 
+ __m128d
+ foo (__m128d b, __m128d w, __m128d a,  __mmask8 u)
+ {
+   return _mm_mask3_fmadd_round_sd (w, a, b, u, _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC);
+ }
+ 
+ __m128d
+ bar (__m128d b, __m128d w, __m128d a, __mmask8 u)
+ {
+   return _mm_mask3_fmsub_round_sd (w, a, b, u, _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC);
+ }
+ 
+ __m128d
+ baz (__m128d b, __m128d w, __m128d a,  __mmask8 u)
+ {
+   return _mm_mask3_fnmadd_round_sd (w, a, b, u, _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC);
+ }
+ 
+ __m128d
+ qux (__m128d b, __m128d w, __m128d a,  __mmask8 u)
+ {
+   return _mm_mask3_fnmsub_round_sd (w, a, b, u, _MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512fp16-pr124335.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512fp16-pr124335.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/avx512fp16-pr124335.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/avx512fp16-pr124335.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,13 ----
+ /* PR target/124335 */
+ /* { dg-do assemble } */
+ /* { dg-require-effective-target masm_intel } */
+ /* { dg-options "-mavx512fp16 -masm=intel" } */
+ /* { dg-require-effective-target avx512fp16 } */
+ 
+ #include <x86intrin.h>
+ 
+ __m128h
+ foo (_Float16 const *x, __mmask8 y)
+ {
+   return _mm_maskz_load_sh (y, x);
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/cet-pr124366.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/cet-pr124366.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/cet-pr124366.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/cet-pr124366.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,31 ----
+ /* PR target/124366 */
+ /* { dg-do assemble { target { cet && masm_intel } } } */
+ /* { dg-options "-O2 -mshstk -masm=intel" } */
+ 
+ #include <x86intrin.h>
+ 
+ void
+ wrssd (unsigned int x, void *y)
+ {
+   _wrssd (x, y);
+ }
+ 
+ void
+ wrussd (unsigned int x, void *y)
+ {
+   _wrussd (x, y);
+ }
+ 
+ #ifdef __x86_64__
+ void
+ wrssq (unsigned long long x, void *y)
+ {
+   _wrssq (x, y);
+ }
+ 
+ void
+ wrussq (unsigned long long x, void *y)
+ {
+   _wrussq (x, y);
+ }
+ #endif
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/keylocker-pr123217.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/keylocker-pr123217.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/keylocker-pr123217.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/keylocker-pr123217.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,13 ----
+ /* PR target/123217 */
+ /* { dg-do compile } */
+ /* { dg-options "-mkl -O0" } */
+ 
+ __attribute__((__vector_size__(16))) long long v, w;
+ 
+ unsigned
+ foo (void *p, void *q)
+ {
+   unsigned x = __builtin_ia32_encodekey128_u32 (0U, v, p);
+   unsigned y = __builtin_ia32_encodekey256_u32 (0U, v, w, q);
+   return x + y;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/pr124056.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/pr124056.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/pr124056.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/pr124056.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,61 ----
+ /* PR middle-end/124056 */
+ /* { dg-do run } */
+ /* { dg-options "-O2 -masm=att" } */
+ 
+ int v;
+ 
+ [[gnu::noipa]] void
+ foo (void)
+ {
+   v = 42;
+ }
+ 
+ [[gnu::noipa]] void
+ bar (void)
+ {
+   v = 43;
+ }
+ 
+ [[gnu::noipa]] int
+ baz (void)
+ {
+   _Bool err;
+   __asm goto ("movl %1, %%ecx\n\t"
+ 	       "test %%ecx, %%ecx\n\t"
+ 	       "js 1f\n\t"
+ 	       "jmp %l[lab]\n\t"
+ 	    "1: cmpl $-1, %%ecx"
+ 	       : "=@ccz" (err) : "m" (v) : "ecx" : lab);
+   if (err)
+     {
+       bar ();
+       return -1;
+     }
+   return 0;
+ 
+  lab:
+   if (err)
+     {
+       foo ();
+       return -2;
+     }
+ 
+   return 1;
+ }
+ 
+ int
+ main ()
+ {
+   v = 0;
+   if (baz () != -2 || v != 42)
+     __builtin_abort ();
+   v = 1;
+   if (baz () != 1 || v != 1)
+     __builtin_abort ();
+   v = -1;
+   if (baz () != -1 || v != 43)
+     __builtin_abort ();
+   v = -2;
+   if (baz () != 0 || v != -2)
+     __builtin_abort ();
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gcc.target/i386/user_msr-pr123217.c gcc-14-20260320/gcc/testsuite/gcc.target/i386/user_msr-pr123217.c
*** gcc-14-20260313/gcc/testsuite/gcc.target/i386/user_msr-pr123217.c	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gcc.target/i386/user_msr-pr123217.c	Fri Mar 20 22:32:13 2026
***************
*** 0 ****
--- 1,10 ----
+ /* PR target/123217 */
+ /* { dg-do compile { target { ! ia32 } } } */
+ /* { dg-options "-musermsr -O0" } */
+ 
+ unsigned long long
+ foo (unsigned long long x)
+ {
+   unsigned long long y = __builtin_ia32_urdmsr (x);
+   return y;
+ }
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gfortran.dg/pr106946.f90 gcc-14-20260320/gcc/testsuite/gfortran.dg/pr106946.f90
*** gcc-14-20260313/gcc/testsuite/gfortran.dg/pr106946.f90	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gfortran.dg/pr106946.f90	Fri Mar 20 22:32:14 2026
***************
*** 0 ****
--- 1,30 ----
+ ! { dg-do compile }
+ ! PR fortran/106946
+ ! ICE in resolve_component on invalid CLASS declaration with missing comma.
+ !
+ ! The bad declarations below should diagnose and continue without leaving
+ ! behind dangling CLASS container symbols in the surrounding namespace.
+ 
+ program p
+   type :: u
+   end type
+ 
+   type :: v
+   end type
+ 
+   type :: w
+   end type
+ 
+   type :: t1
+     class(u), allocatable :: a b  ! { dg-error "Syntax error in data declaration" }
+   end type
+ 
+   type :: t2
+     class(v), pointer :: p q  ! { dg-error "Syntax error in data declaration" }
+   end type
+ 
+   type :: t3
+     class(w), allocatable :: ok
+     class(w), allocatable :: x y  ! { dg-error "Syntax error in data declaration" }
+   end type
+ end
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gfortran.dg/pr124161.f90 gcc-14-20260320/gcc/testsuite/gfortran.dg/pr124161.f90
*** gcc-14-20260313/gcc/testsuite/gfortran.dg/pr124161.f90	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gfortran.dg/pr124161.f90	Fri Mar 20 22:32:14 2026
***************
*** 0 ****
--- 1,61 ----
+ ! { dg-do compile }
+ !
+ ! Test the fix for the regression caused by r16-669-gd31ab498b12ebb - See line 59.
+ !
+ ! Contributed by Zaak Beekman  <zbeekman@gmail.com>
+ !
+ module inner_m
+     implicit none
+     type :: dt_t
+         integer, allocatable :: val
+     end type
+     type, abstract :: inner_t
+     contains
+         procedure(summary_i), deferred :: summary
+     end type
+     abstract interface
+         function summary_i(self)
+             import :: inner_t, dt_t
+             class(inner_t), intent(in) :: self
+             type(dt_t) :: summary_i
+         end function
+     end interface
+ end module inner_m
+ 
+ module concrete_m
+     use inner_m, only: inner_t, dt_t
+     implicit none
+     type, extends(inner_t) :: concrete_t
+     contains
+         procedure :: summary
+     end type
+ contains
+     function summary(self)
+         class(concrete_t), intent(in) :: self
+         type(dt_t) :: summary
+     end function
+ end module concrete_m
+ 
+ module outer_m
+     use inner_m, only: inner_t, dt_t
+     use concrete_m, only: concrete_t
+     implicit none
+     type :: outer_t
+         class(inner_t), allocatable :: component
+     contains
+         procedure :: summary
+     end type
+     interface
+         module function summary(self) result(res)
+             class(outer_t), intent(in) :: self
+             type(dt_t) :: res
+         end function
+     end interface
+ end module outer_m
+ 
+ submodule(outer_m) outer_impl
+ contains
+     module procedure summary
+         res = self%component%summary()  ! ICE in trans_scalar_assign here
+     end procedure
+ end submodule outer_impl
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gfortran.dg/pr124450.f90 gcc-14-20260320/gcc/testsuite/gfortran.dg/pr124450.f90
*** gcc-14-20260313/gcc/testsuite/gfortran.dg/pr124450.f90	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gfortran.dg/pr124450.f90	Fri Mar 20 22:32:14 2026
***************
*** 0 ****
--- 1,14 ----
+ ! PR fortran/124450
+ ! { dg-do compile }
+ 
+   type ta
+     integer(kind=4) :: a(1)
+     integer(kind=4) :: b(1)
+   end type ta
+   type tb
+     type(ta) :: c(1) = ta(1, 2)
+   end type tb
+   type(tb) :: e = tb(ta(3, 4))
+ 
+   print *, e
+ end
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gfortran.dg/submodule_34.f90 gcc-14-20260320/gcc/testsuite/gfortran.dg/submodule_34.f90
*** gcc-14-20260313/gcc/testsuite/gfortran.dg/submodule_34.f90	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gfortran.dg/submodule_34.f90	Fri Mar 20 22:32:14 2026
***************
*** 0 ****
--- 1,63 ----
+ ! { dg-do compile }
+ !
+ ! PR fortran/122046
+ ! The check for illegal recursion used to trigger on assertion when resolving
+ ! the array spec of the dummy argument in the submodule
+ !
+ ! Contributed by Tomáš Trnka <trnka@scm.com>
+ 
+ module ChemicalSystemModule
+ 
+    implicit none
+    private
+ 
+    type, public :: ChemicalSystemType
+    contains
+       procedure, public  :: NumAtoms
+    end type
+ 
+ contains
+ 
+    elemental integer function NumAtoms(self)
+       class(ChemicalSystemType), intent(in) :: self
+ 
+       NumAtoms = 123
+ 
+    end function
+ 
+ end module
+ 
+ module ChemicalSystemUtilsModule
+ 
+    use ChemicalSystemModule
+ 
+    implicit none
+    private
+ 
+    public :: ChemicalSystemRMSD
+ 
+    interface
+ 
+       module subroutine ChemicalSystemRMSD(modelSys, rmsdGrad)
+          type(ChemicalSystemType), intent(in)  :: modelSys
+          real                    , intent(out) :: rmsdGrad(3,modelSys%NumAtoms())
+       end subroutine
+ 
+    end interface
+ 
+ end module
+ 
+ submodule(ChemicalSystemUtilsModule) ChemicalSystemUtilsSubModule
+    use ChemicalSystemModule
+ 
+    implicit none
+ 
+ contains
+ 
+    module subroutine ChemicalSystemRMSD(modelSys, rmsdGrad)
+       type(ChemicalSystemType), intent(in)   :: modelSys
+       real                    , intent(out)  :: rmsdGrad(3,modelSys%NumAtoms())
+    end subroutine
+ 
+ end submodule
+ 
diff -Nrcpad gcc-14-20260313/gcc/testsuite/gfortran.dg/vect/vect-pr123741.f90 gcc-14-20260320/gcc/testsuite/gfortran.dg/vect/vect-pr123741.f90
*** gcc-14-20260313/gcc/testsuite/gfortran.dg/vect/vect-pr123741.f90	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/gcc/testsuite/gfortran.dg/vect/vect-pr123741.f90	Fri Mar 20 22:32:15 2026
***************
*** 0 ****
--- 1,50 ----
+ ! { dg-do compile }
+ ! { dg-additional-options "-Ofast" }
+ ! { dg-additional-options "-mavx2" { target avx2 } }
+ 
+ module m1
+ parameter( n1=5,n2=5,n3=5,n4=5 )
+ integer:: p(n1,n2,n3,n4)
+ 
+ contains
+ subroutine s1(i,nn2,nn4)
+ integer:: i(n1,n2,n3,n4)
+ i= p
+ forall (k2=1:nn2,k4=1:nn4,mod(k2,3)/=0 .and. mod(k4,3)/=0) 
+ where( mod(i(:,k2,:,k4),4) /=0 ) &
+  i(:,k2,:,k4) = i(:,k2,:,k4) + 1.0 / real(k2+k4 -1)
+ end forall
+ end subroutine
+ 
+ subroutine s2(i,nn2,nn4)
+ integer:: i(n1,n2,n3,n4)
+ integer,allocatable:: temp(:,:,:,:)
+ i= p
+ allocate(temp(n1,n2,n3,n4))
+ do k4=1,nn4
+ do k2=1,nn2
+ if (mod(k2,3)/=0 .and. mod(k4,3)/=0)then
+ where( mod(i(:,k2,:,k4),4) /=0 ) &
+  temp(:,k2,:,k4) = i(:,k2,:,k4) +1.0 / real(k2+k4 -1)
+ end if
+ end do
+ end do
+ do k4=1,nn4
+ do k2=1,nn2
+ if (mod(k2,3)/=0 .and. mod(k4,3)/=0)then
+ where( mod(i(:,k2,:,k4),4) /=0 ) &
+  i(:,k2,:,k4) = temp(:,k2,:,k4)
+ end if
+ end do
+ end do
+ end subroutine
+ end
+ 
+ use m1
+ integer:: i1(n1,n2,n3,n4),i2(n1,n2,n3,n4)
+ p= reshape([(k,k=1,(n1)*(n2)*(n3)*(n4))],[n1,n2,n3,n4])
+ call s1(i1,n2,n4)
+ call s2(i2,n2,n4)
+ if (any(i1/=i2)) print *,101
+ print *,'OK'
+ end
diff -Nrcpad gcc-14-20260313/gcc/tree-inline.cc gcc-14-20260320/gcc/tree-inline.cc
*** gcc-14-20260313/gcc/tree-inline.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-inline.cc	Fri Mar 20 22:32:15 2026
*************** expand_call_inline (basic_block bb, gimp
*** 5232,5238 ****
    if (use_retvar && gimple_call_lhs (stmt))
      {
        gimple *old_stmt = stmt;
!       stmt = gimple_build_assign (gimple_call_lhs (stmt), use_retvar);
        gimple_set_location (stmt, gimple_location (old_stmt));
        gsi_replace (&stmt_gsi, stmt, false);
        maybe_clean_or_replace_eh_stmt (old_stmt, stmt);
--- 5232,5251 ----
    if (use_retvar && gimple_call_lhs (stmt))
      {
        gimple *old_stmt = stmt;
!       tree lhs = gimple_call_lhs (stmt);
!       if (!is_gimple_reg (lhs)
! 	  && !is_gimple_reg (use_retvar)
! 	  && is_gimple_reg_type (TREE_TYPE (lhs)))
! 	{
! 	  /* If both lhs and use_retvar aren't gimple regs, yet have
! 	     gimple reg type, copy through a temporary SSA_NAME.  */
! 	  gimple *g = gimple_build_assign (make_ssa_name (TREE_TYPE (lhs)),
! 					   use_retvar);
! 	  gimple_set_location (g, gimple_location (old_stmt));
! 	  gsi_insert_before (&stmt_gsi, g, GSI_SAME_STMT);
! 	  use_retvar = gimple_assign_lhs (g);
! 	}
!       stmt = gimple_build_assign (lhs, use_retvar);
        gimple_set_location (stmt, gimple_location (old_stmt));
        gsi_replace (&stmt_gsi, stmt, false);
        maybe_clean_or_replace_eh_stmt (old_stmt, stmt);
diff -Nrcpad gcc-14-20260313/gcc/tree-object-size.cc gcc-14-20260320/gcc/tree-object-size.cc
*** gcc-14-20260313/gcc/tree-object-size.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-object-size.cc	Fri Mar 20 22:32:15 2026
*************** object_sizes_set_temp (struct object_siz
*** 319,327 ****
    tree val = object_sizes_get (osi, varno);
  
    if (size_initval_p (val, osi->object_size_type))
!     object_sizes_set (osi, varno,
! 		      make_ssa_name (sizetype),
! 		      make_ssa_name (sizetype));
  }
  
  /* Initialize OFFSET_LIMIT variable.  */
--- 319,329 ----
    tree val = object_sizes_get (osi, varno);
  
    if (size_initval_p (val, osi->object_size_type))
!     {
!       val = make_ssa_name (sizetype);
!       tree wholeval = make_ssa_name (sizetype);
!       object_sizes_set (osi, varno, val, wholeval);
!     }
  }
  
  /* Initialize OFFSET_LIMIT variable.  */
diff -Nrcpad gcc-14-20260313/gcc/tree-phinodes.h gcc-14-20260320/gcc/tree-phinodes.h
*** gcc-14-20260313/gcc/tree-phinodes.h	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-phinodes.h	Fri Mar 20 22:32:15 2026
*************** phi_arg_index_from_use (use_operand_p us
*** 50,62 ****
  {
    struct phi_arg_d *element, *root;
    size_t index;
!   gimple *phi;
  
    /* Since the use is the first thing in a PHI argument element, we can
       calculate its index based on casting it to an argument, and performing
       pointer arithmetic.  */
  
!   phi = USE_STMT (use);
  
    element = (struct phi_arg_d *)use;
    root = gimple_phi_arg (phi, 0);
--- 50,62 ----
  {
    struct phi_arg_d *element, *root;
    size_t index;
!   gphi *phi;
  
    /* Since the use is the first thing in a PHI argument element, we can
       calculate its index based on casting it to an argument, and performing
       pointer arithmetic.  */
  
!   phi = as_a <gphi *> (USE_STMT (use));
  
    element = (struct phi_arg_d *)use;
    root = gimple_phi_arg (phi, 0);
*************** phi_arg_index_from_use (use_operand_p us
*** 71,74 ****
--- 71,83 ----
   return index;
  }
  
+ /* Return the edge into the PHI node USE.  */
+ 
+ inline edge
+ phi_arg_edge_from_use (use_operand_p use)
+ {
+   gphi *phi = as_a <gphi *> (USE_STMT (use));
+   return gimple_phi_arg_edge (phi, phi_arg_index_from_use (use));
+ }
+ 
  #endif /* GCC_TREE_PHINODES_H */
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-loop-im.cc gcc-14-20260320/gcc/tree-ssa-loop-im.cc
*** gcc-14-20260313/gcc/tree-ssa-loop-im.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-loop-im.cc	Fri Mar 20 22:32:15 2026
*************** can_sm_ref_p (class loop *loop, im_mem_r
*** 3223,3229 ****
       explicitly.  */
    base = get_base_address (ref->mem.ref);
    if ((tree_could_trap_p (ref->mem.ref)
!        || (DECL_P (base) && TREE_READONLY (base)))
        /* ???  We can at least use false here, allowing loads?  We
  	 are forcing conditional stores if the ref is not always
  	 stored to later anyway.  So this would only guard
--- 3223,3230 ----
       explicitly.  */
    base = get_base_address (ref->mem.ref);
    if ((tree_could_trap_p (ref->mem.ref)
!        || (DECL_P (base) && TREE_READONLY (base))
!        || TREE_CODE (base) == STRING_CST)
        /* ???  We can at least use false here, allowing loads?  We
  	 are forcing conditional stores if the ref is not always
  	 stored to later anyway.  So this would only guard
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-loop-ivopts.cc gcc-14-20260320/gcc/tree-ssa-loop-ivopts.cc
*** gcc-14-20260313/gcc/tree-ssa-loop-ivopts.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-loop-ivopts.cc	Fri Mar 20 22:32:15 2026
*************** add_candidate_1 (struct ivopts_data *dat
*** 3273,3278 ****
--- 3273,3284 ----
  static bool
  allow_ip_end_pos_p (class loop *loop)
  {
+   /* Do not allow IP_END when creating the IV would need to split the
+      latch edge as that makes all IP_NORMAL invalid.  */
+   auto pos = gsi_last_bb (ip_end_pos (loop));
+   if (!gsi_end_p (pos) && stmt_ends_bb_p (*pos))
+     return false;
+ 
    if (!ip_normal_pos (loop))
      return true;
  
*************** create_new_iv (struct ivopts_data *data,
*** 7287,7298 ****
      case IP_END:
        incr_pos = gsi_last_bb (ip_end_pos (data->current_loop));
        after = true;
!       if (!gsi_end_p (incr_pos) && stmt_ends_bb_p (gsi_stmt (incr_pos)))
! 	{
! 	  edge e = find_edge (gsi_bb (incr_pos), data->current_loop->header);
! 	  incr_pos = gsi_after_labels (split_edge (e));
! 	  after = false;
! 	}
        break;
  
      case IP_AFTER_USE:
--- 7293,7299 ----
      case IP_END:
        incr_pos = gsi_last_bb (ip_end_pos (data->current_loop));
        after = true;
!       gcc_assert (gsi_end_p (incr_pos) || !stmt_ends_bb_p (*incr_pos));
        break;
  
      case IP_AFTER_USE:
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-loop-unswitch.cc gcc-14-20260320/gcc/tree-ssa-loop-unswitch.cc
*** gcc-14-20260313/gcc/tree-ssa-loop-unswitch.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-loop-unswitch.cc	Fri Mar 20 22:32:15 2026
*************** hoist_guard (class loop *loop, edge guar
*** 1511,1517 ****
  
    if (skip_count > e->count ())
      {
!       fprintf (dump_file, "  Capping count; expect profile inconsistency\n");
        skip_count = e->count ();
      }
    if (dump_enabled_p ())
--- 1511,1518 ----
  
    if (skip_count > e->count ())
      {
!       if (dump_file && (dump_flags & TDF_DETAILS))
! 	fprintf (dump_file, "  Capping count; expect profile inconsistency\n");
        skip_count = e->count ();
      }
    if (dump_enabled_p ())
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-math-opts.cc gcc-14-20260320/gcc/tree-ssa-math-opts.cc
*** gcc-14-20260313/gcc/tree-ssa-math-opts.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-math-opts.cc	Fri Mar 20 22:32:15 2026
*************** convert_plusminus_to_widen (gimple_stmt_
*** 3038,3043 ****
--- 3038,3048 ----
    if (to_mode == from_mode)
      return false;
  
+   /* For fixed point types, the mode classes could be different
+      so reject that case. */
+   if (GET_MODE_CLASS (from_mode) != GET_MODE_CLASS (to_mode))
+     return false;
+ 
    from_unsigned1 = TYPE_UNSIGNED (type1);
    from_unsigned2 = TYPE_UNSIGNED (type2);
    optype = type1;
*************** match_uaddc_usubc (gimple_stmt_iterator
*** 4979,4985 ****
  			TYPE_MODE (type)) == CODE_FOR_nothing
        || (rhs[2]
  	  && optab_handler (code == PLUS_EXPR ? uaddc5_optab : usubc5_optab,
! 			    TYPE_MODE (type)) == CODE_FOR_nothing))
      return false;
    tree arg1, arg2, arg3 = NULL_TREE;
    gimple *re1 = NULL, *re2 = NULL;
--- 4984,4994 ----
  			TYPE_MODE (type)) == CODE_FOR_nothing
        || (rhs[2]
  	  && optab_handler (code == PLUS_EXPR ? uaddc5_optab : usubc5_optab,
! 			    TYPE_MODE (type)) == CODE_FOR_nothing)
!       || !types_compatible_p (type,
! 			      TREE_TYPE (TREE_TYPE (gimple_call_lhs (ovf1))))
!       || !types_compatible_p (type,
! 			      TREE_TYPE (TREE_TYPE (gimple_call_lhs (ovf2)))))
      return false;
    tree arg1, arg2, arg3 = NULL_TREE;
    gimple *re1 = NULL, *re2 = NULL;
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-phiopt.cc gcc-14-20260320/gcc/tree-ssa-phiopt.cc
*** gcc-14-20260313/gcc/tree-ssa-phiopt.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-phiopt.cc	Fri Mar 20 22:32:15 2026
*************** spaceship_replacement (basic_block cond_
*** 2824,2833 ****
  	    {
  	      if (has_cast_debug_uses)
  		{
! 		  tree temp3 = make_node (DEBUG_EXPR_DECL);
! 		  DECL_ARTIFICIAL (temp3) = 1;
! 		  TREE_TYPE (temp3) = TREE_TYPE (orig_use_lhs);
! 		  SET_DECL_MODE (temp3, TYPE_MODE (type));
  		  t = fold_convert (TREE_TYPE (temp3), temp2);
  		  g = gimple_build_debug_bind (temp3, t, phi);
  		  gsi_insert_before (&gsi, g, GSI_SAME_STMT);
--- 2824,2831 ----
  	    {
  	      if (has_cast_debug_uses)
  		{
! 		  tree temp3
! 		    = build_debug_expr_decl (TREE_TYPE (orig_use_lhs));
  		  t = fold_convert (TREE_TYPE (temp3), temp2);
  		  g = gimple_build_debug_bind (temp3, t, phi);
  		  gsi_insert_before (&gsi, g, GSI_SAME_STMT);
*************** cond_removal_in_builtin_zero_pattern (ba
*** 3048,3063 ****
        || arg != gimple_cond_lhs (cond))
      return false;
  
!   /* Canonicalize.  */
!   if ((e2->flags & EDGE_TRUE_VALUE
!        && gimple_cond_code (cond) == NE_EXPR)
!       || (e1->flags & EDGE_TRUE_VALUE
! 	  && gimple_cond_code (cond) == EQ_EXPR))
      {
        std::swap (arg0, arg1);
-       std::swap (e1, e2);
      }
  
    /* Check PHI arguments.  */
    if (lhs != arg0
        || TREE_CODE (arg1) != INTEGER_CST)
--- 3046,3081 ----
        || arg != gimple_cond_lhs (cond))
      return false;
  
!   edge true_edge, false_edge;
!   /* We need to know which is the true edge and which is the false
!      edge so that we know when to invert the condition below.  */
!   extract_true_false_edges_from_block (cond_bb, &true_edge, &false_edge);
! 
!   /* Forward the edges over the middle basic block.  */
!   if (true_edge->dest == middle_bb)
!     true_edge = EDGE_SUCC (true_edge->dest, 0);
!   if (false_edge->dest == middle_bb)
!     false_edge = EDGE_SUCC (false_edge->dest, 0);
! 
!   /* Canonicalize the args with respect to the edges,
!      arg0 is from the true edge and arg1 is from the
!      false edge.
!      That is `cond ? arg0 : arg1`.*/
!   if (true_edge == e1)
!     gcc_assert (false_edge == e2);
!   else
      {
+       gcc_assert (false_edge == e1);
+       gcc_assert (true_edge == e2);
        std::swap (arg0, arg1);
      }
  
+   /* Canonicalize the args such that we get:
+      `arg != 0 ? arg0 : arg1`. So swap arg0/arg1
+      around if cond was an equals.  */
+   if (gimple_cond_code (cond) == EQ_EXPR)
+     std::swap (arg0, arg1);
+ 
    /* Check PHI arguments.  */
    if (lhs != arg0
        || TREE_CODE (arg1) != INTEGER_CST)
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-pre.cc gcc-14-20260320/gcc/tree-ssa-pre.cc
*** gcc-14-20260313/gcc/tree-ssa-pre.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-pre.cc	Fri Mar 20 22:32:15 2026
*************** find_or_generate_expression (basic_block
*** 2795,2801 ****
    if (leader)
      {
        if (leader->kind == NAME)
! 	return PRE_EXPR_NAME (leader);
        else if (leader->kind == CONSTANT)
  	return PRE_EXPR_CONSTANT (leader);
  
--- 2795,2806 ----
    if (leader)
      {
        if (leader->kind == NAME)
! 	{
! 	  tree name = PRE_EXPR_NAME (leader);
! 	  if (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (name))
! 	    return NULL_TREE;
! 	  return name;
! 	}
        else if (leader->kind == CONSTANT)
  	return PRE_EXPR_CONSTANT (leader);
  
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-reassoc.cc gcc-14-20260320/gcc/tree-ssa-reassoc.cc
*** gcc-14-20260313/gcc/tree-ssa-reassoc.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-reassoc.cc	Fri Mar 20 22:32:15 2026
*************** build_and_add_sum (tree type, tree op1,
*** 1568,1574 ****
    if ((!op1def || gimple_nop_p (op1def))
        && (!op2def || gimple_nop_p (op2def)))
      {
!       gsi = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR_FOR_FN (cfun)));
        if (!gsi_end_p (gsi)
  	  && is_gimple_call (gsi_stmt (gsi))
  	  && (gimple_call_flags (gsi_stmt (gsi)) & ECF_RETURNS_TWICE))
--- 1568,1575 ----
    if ((!op1def || gimple_nop_p (op1def))
        && (!op2def || gimple_nop_p (op2def)))
      {
!       gsi = gsi_start_nondebug_after_labels_bb
! 		(single_succ (ENTRY_BLOCK_PTR_FOR_FN (cfun)));
        if (!gsi_end_p (gsi)
  	  && is_gimple_call (gsi_stmt (gsi))
  	  && (gimple_call_flags (gsi_stmt (gsi)) & ECF_RETURNS_TWICE))
diff -Nrcpad gcc-14-20260313/gcc/tree-ssa-strlen.cc gcc-14-20260320/gcc/tree-ssa-strlen.cc
*** gcc-14-20260313/gcc/tree-ssa-strlen.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-ssa-strlen.cc	Fri Mar 20 22:32:15 2026
*************** strlen_pass::handle_builtin_memcmp ()
*** 4011,4018 ****
  	  tree ptrtype = build_pointer_type_for_mode (char_type_node,
  						      ptr_mode, true);
  	  off = build_int_cst (ptrtype, 0);
! 	  arg1 = build2_loc (loc, MEM_REF, type, arg1, off);
! 	  arg2 = build2_loc (loc, MEM_REF, type, arg2, off);
  	  tree tem1 = fold_const_aggregate_ref (arg1);
  	  if (tem1)
  	    arg1 = tem1;
--- 4011,4026 ----
  	  tree ptrtype = build_pointer_type_for_mode (char_type_node,
  						      ptr_mode, true);
  	  off = build_int_cst (ptrtype, 0);
! 
! 	  /* Create unaligned types if needed. */
! 	  tree type1 = type, type2 = type;
! 	  if (TYPE_ALIGN (type1) > align1)
! 	    type1 = build_aligned_type (type1, align1);
! 	  if (TYPE_ALIGN (type2) > align2)
! 	    type2 = build_aligned_type (type2, align2);
! 
! 	  arg1 = build2_loc (loc, MEM_REF, type1, arg1, off);
! 	  arg2 = build2_loc (loc, MEM_REF, type2, arg2, off);
  	  tree tem1 = fold_const_aggregate_ref (arg1);
  	  if (tem1)
  	    arg1 = tem1;
diff -Nrcpad gcc-14-20260313/gcc/tree-switch-conversion.cc gcc-14-20260320/gcc/tree-switch-conversion.cc
*** gcc-14-20260313/gcc/tree-switch-conversion.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-switch-conversion.cc	Fri Mar 20 22:32:15 2026
*************** void
*** 716,722 ****
  switch_conversion::build_arrays ()
  {
    tree arr_index_type;
!   tree tidx, sub, utype, tidxtype;
    gimple *stmt;
    gimple_stmt_iterator gsi;
    gphi_iterator gpi;
--- 716,722 ----
  switch_conversion::build_arrays ()
  {
    tree arr_index_type;
!   tree tidx, uidx, sub, utype, tidxtype;
    gimple *stmt;
    gimple_stmt_iterator gsi;
    gphi_iterator gpi;
*************** switch_conversion::build_arrays ()
*** 741,759 ****
      tidxtype = utype;
  
    arr_index_type = build_index_type (m_range_size);
!   tidx = make_ssa_name (tidxtype);
    sub = fold_build2_loc (loc, MINUS_EXPR, utype,
  			 fold_convert_loc (loc, utype, m_index_expr),
  			 fold_convert_loc (loc, utype, m_range_min));
-   sub = fold_convert (tidxtype, sub);
    sub = force_gimple_operand_gsi (&gsi, sub,
  				  false, NULL, true, GSI_SAME_STMT);
!   stmt = gimple_build_assign (tidx, sub);
  
    gsi_insert_before (&gsi, stmt, GSI_SAME_STMT);
-   update_stmt (stmt);
    m_arr_ref_first = stmt;
  
    for (gpi = gsi_start_phis (m_final_bb), i = 0;
         !gsi_end_p (gpi); gsi_next (&gpi))
      {
--- 741,765 ----
      tidxtype = utype;
  
    arr_index_type = build_index_type (m_range_size);
!   uidx = make_ssa_name (utype);
    sub = fold_build2_loc (loc, MINUS_EXPR, utype,
  			 fold_convert_loc (loc, utype, m_index_expr),
  			 fold_convert_loc (loc, utype, m_range_min));
    sub = force_gimple_operand_gsi (&gsi, sub,
  				  false, NULL, true, GSI_SAME_STMT);
!   stmt = gimple_build_assign (uidx, sub);
  
    gsi_insert_before (&gsi, stmt, GSI_SAME_STMT);
    m_arr_ref_first = stmt;
  
+   tidx = uidx;
+   if (tidxtype != utype)
+     {
+       tidx = make_ssa_name (tidxtype);
+       stmt = gimple_build_assign (tidx, NOP_EXPR, uidx);
+       gsi_insert_before (&gsi, stmt, GSI_SAME_STMT);
+     }
+ 
    for (gpi = gsi_start_phis (m_final_bb), i = 0;
         !gsi_end_p (gpi); gsi_next (&gpi))
      {
diff -Nrcpad gcc-14-20260313/gcc/tree-tailcall.cc gcc-14-20260320/gcc/tree-tailcall.cc
*** gcc-14-20260313/gcc/tree-tailcall.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-tailcall.cc	Fri Mar 20 22:32:15 2026
*************** process_assignment (gassign *stmt,
*** 329,334 ****
--- 329,338 ----
      if (FLOAT_TYPE_P (TREE_TYPE (DECL_RESULT (current_function_decl))))
        return FAIL;
  
+   /* We at least cannot build -1 for all fixed point types.  */
+   if (FIXED_POINT_TYPE_P (TREE_TYPE (DECL_RESULT (current_function_decl))))
+     return FAIL;
+ 
    if (rhs_class == GIMPLE_UNARY_RHS
        && op0 == *ass_var)
      ;
diff -Nrcpad gcc-14-20260313/gcc/tree-vect-loop.cc gcc-14-20260320/gcc/tree-vect-loop.cc
*** gcc-14-20260313/gcc/tree-vect-loop.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-vect-loop.cc	Fri Mar 20 22:32:15 2026
*************** vect_create_epilog_for_reduction (loop_v
*** 6974,6981 ****
            scalar_result = scalar_results[k];
            FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, orig_name)
  	    {
  	      FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
! 		SET_USE (use_p, scalar_result);
  	      update_stmt (use_stmt);
  	    }
          }
--- 6974,6990 ----
            scalar_result = scalar_results[k];
            FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, orig_name)
  	    {
+ 	      gphi *use_phi = dyn_cast <gphi *> (use_stmt);
  	      FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
! 		{
! 		  if (use_phi
! 		      && (phi_arg_edge_from_use (use_p)->flags & EDGE_ABNORMAL))
! 		    {
! 		      gcc_assert (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (orig_name));
! 		      SSA_NAME_OCCURS_IN_ABNORMAL_PHI (scalar_result) = 1;
! 		    }
! 		  SET_USE (use_p, scalar_result);
! 		}
  	      update_stmt (use_stmt);
  	    }
          }
diff -Nrcpad gcc-14-20260313/gcc/tree-vect-slp.cc gcc-14-20260320/gcc/tree-vect-slp.cc
*** gcc-14-20260313/gcc/tree-vect-slp.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-vect-slp.cc	Fri Mar 20 22:32:15 2026
*************** vect_transform_slp_perm_load (vec_info *
*** 8865,8871 ****
  
     otherwise add:
  
!       <new SSA name> = FIRST_DEF.  */
  
  static void
  vect_add_slp_permutation (vec_info *vinfo, gimple_stmt_iterator *gsi,
--- 8865,8875 ----
  
     otherwise add:
  
!       <new SSA name> = VEC_PERM_EXPR <FIRST_DEF, SECOND_DEF,
! 				      { N, N+1, N+2, ... }>
! 
!    where N == IDENTITY_OFFSET which is either zero or equal to the
!    number of elements of the result.  */
  
  static void
  vect_add_slp_permutation (vec_info *vinfo, gimple_stmt_iterator *gsi,
*************** vect_add_slp_permutation (vec_info *vinf
*** 8905,8940 ****
  				       first_def, second_def,
  				       mask_vec);
      }
!   else if (!types_compatible_p (TREE_TYPE (first_def), vectype))
      {
!       /* For identity permutes we still need to handle the case
! 	 of offsetted extracts or concats.  */
!       unsigned HOST_WIDE_INT c;
!       auto first_def_nunits
! 	= TYPE_VECTOR_SUBPARTS (TREE_TYPE (first_def));
!       if (known_le (TYPE_VECTOR_SUBPARTS (vectype), first_def_nunits))
  	{
! 	  unsigned HOST_WIDE_INT elsz
! 	    = tree_to_uhwi (TYPE_SIZE (TREE_TYPE (TREE_TYPE (first_def))));
! 	  tree lowpart = build3 (BIT_FIELD_REF, vectype, first_def,
! 				 TYPE_SIZE (vectype),
! 				 bitsize_int (identity_offset * elsz));
! 	  perm_stmt = gimple_build_assign (perm_dest, lowpart);
  	}
!       else if (constant_multiple_p (TYPE_VECTOR_SUBPARTS (vectype),
! 				    first_def_nunits, &c) && c == 2)
  	{
! 	  tree ctor = build_constructor_va (vectype, 2, NULL_TREE, first_def,
! 					    NULL_TREE, second_def);
! 	  perm_stmt = gimple_build_assign (perm_dest, ctor);
  	}
-       else
- 	gcc_unreachable ();
-     }
-   else
-     {
-       /* We need a copy here in case the def was external.  */
-       perm_stmt = gimple_build_assign (perm_dest, first_def);
      }
    vect_finish_stmt_generation (vinfo, NULL, perm_stmt, gsi);
    /* Store the vector statement in NODE.  */
--- 8909,8955 ----
  				       first_def, second_def,
  				       mask_vec);
      }
!   else
      {
!       auto def_nunits = TYPE_VECTOR_SUBPARTS (TREE_TYPE (first_def));
!       unsigned HOST_WIDE_INT vecno;
!       poly_uint64 eltno;
!       if (!can_div_trunc_p (poly_uint64 (identity_offset), def_nunits,
! 			    &vecno, &eltno))
! 	gcc_unreachable ();
!       tree def = vecno & 1 ? second_def : first_def;
!       if (!types_compatible_p (TREE_TYPE (def), vectype))
  	{
! 	  /* For identity permutes we still need to handle the case
! 	     of offsetted extracts or concats.  */
! 	  unsigned HOST_WIDE_INT c;
! 	  if (known_le (TYPE_VECTOR_SUBPARTS (vectype), def_nunits))
! 	    {
! 	      unsigned HOST_WIDE_INT elsz
! 		= tree_to_uhwi (TYPE_SIZE (TREE_TYPE (TREE_TYPE (def))));
! 	      tree lowpart = build3 (BIT_FIELD_REF, vectype, def,
! 				     TYPE_SIZE (vectype),
! 				     bitsize_int (eltno * elsz));
! 	      perm_stmt = gimple_build_assign (perm_dest, lowpart);
! 	    }
! 	  else if (constant_multiple_p (TYPE_VECTOR_SUBPARTS (vectype),
! 					def_nunits, &c) && c == 2)
! 	    {
! 	      gcc_assert (known_eq (identity_offset, 0U));
! 	      tree ctor = build_constructor_va (vectype, 2,
! 						NULL_TREE, first_def,
! 						NULL_TREE, second_def);
! 	      perm_stmt = gimple_build_assign (perm_dest, ctor);
! 	    }
! 	  else
! 	    gcc_unreachable ();
  	}
!       else
  	{
! 	  /* We need a copy here in case the def was external.  */
! 	  gcc_assert (known_eq (eltno, 0U));
! 	  perm_stmt = gimple_build_assign (perm_dest, def);
  	}
      }
    vect_finish_stmt_generation (vinfo, NULL, perm_stmt, gsi);
    /* Store the vector statement in NODE.  */
diff -Nrcpad gcc-14-20260313/gcc/tree-vect-stmts.cc gcc-14-20260320/gcc/tree-vect-stmts.cc
*** gcc-14-20260313/gcc/tree-vect-stmts.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree-vect-stmts.cc	Fri Mar 20 22:32:15 2026
*************** vectorizable_store (vec_info *vinfo,
*** 8766,8772 ****
  					  memory_access_type, loop_lens);
      }
  
!   if (mask && !costing_p)
      LOOP_VINFO_HAS_MASK_STORE (loop_vinfo) = true;
  
    /* In case the vectorization factor (VF) is bigger than the number
--- 8766,8772 ----
  					  memory_access_type, loop_lens);
      }
  
!   if (loop_vinfo && mask && !costing_p)
      LOOP_VINFO_HAS_MASK_STORE (loop_vinfo) = true;
  
    /* In case the vectorization factor (VF) is bigger than the number
diff -Nrcpad gcc-14-20260313/gcc/tree.cc gcc-14-20260320/gcc/tree.cc
*** gcc-14-20260313/gcc/tree.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/tree.cc	Fri Mar 20 22:32:15 2026
*************** simple_cst_equal (const_tree t1, const_t
*** 6616,6628 ****
  	vec<constructor_elt, va_gc> *v2 = CONSTRUCTOR_ELTS (t2);
  
  	if (vec_safe_length (v1) != vec_safe_length (v2))
! 	  return false;
  
          for (idx = 0; idx < vec_safe_length (v1); ++idx)
! 	  /* ??? Should we handle also fields here? */
! 	  if (!simple_cst_equal ((*v1)[idx].value, (*v2)[idx].value))
! 	    return false;
! 	return true;
        }
  
      case SAVE_EXPR:
--- 6616,6642 ----
  	vec<constructor_elt, va_gc> *v2 = CONSTRUCTOR_ELTS (t2);
  
  	if (vec_safe_length (v1) != vec_safe_length (v2))
! 	  return 0;
  
          for (idx = 0; idx < vec_safe_length (v1); ++idx)
! 	  {
! 	    if ((*v1)[idx].index
! 		&& TREE_CODE ((*v1)[idx].index) == FIELD_DECL)
! 	      {
! 		if ((*v1)[idx].index != (*v2)[idx].index)
! 		  return 0;
! 	      }
! 	    else
! 	      {
! 		cmp = simple_cst_equal ((*v1)[idx].index, (*v2)[idx].index);
! 		if (cmp <= 0)
! 		  return cmp;
! 	      }
! 	    cmp = simple_cst_equal ((*v1)[idx].value, (*v2)[idx].value);
! 	    if (cmp <= 0)
! 	      return cmp;
! 	  }
! 	return 1;
        }
  
      case SAVE_EXPR:
*************** verify_type (const_tree t)
*** 14160,14169 ****
      }
    if (TYPE_MAIN_VARIANT (t) == t && ct && TYPE_MAIN_VARIANT (ct) != ct)
     {
!       error ("%<TYPE_CANONICAL%> of main variant is not main variant");
!       debug_tree (ct);
!       debug_tree (TYPE_MAIN_VARIANT (ct));
!       error_found = true;
     }
  
  
--- 14174,14198 ----
      }
    if (TYPE_MAIN_VARIANT (t) == t && ct && TYPE_MAIN_VARIANT (ct) != ct)
     {
!      /* This can happen when build_type_attribute_variant is called on
! 	C/C++ arrays of qualified types.  volatile int[2] is unqualified
! 	ARRAY_TYPE with volatile int element type.
! 	TYPE_CANONICAL (volatile int) is itself and so is
! 	TYPE_CANONICAL (volatile int[2]).  build_type_attribute_qual_variant
! 	creates a distinct type copy (so TYPE_MAIN_VARIANT is itself) and sets
! 	its TYPE_CANONICAL to the unqualified ARRAY_TYPE (so volatile int[2]).
! 	But this is not the TYPE_MAIN_VARIANT, which is int[2].  So, just
! 	verify that TYPE_MAIN_VARIANT (ct) is already the final type we
! 	need.  */
!       tree mvc = TYPE_MAIN_VARIANT (ct);
!       if (TYPE_CANONICAL (mvc) != mvc)
! 	{
! 	  error ("main variant of %<TYPE_CANONICAL%> of main variant is not"
! 		 " its own %<TYPE_CANONICAL%>");
! 	  debug_tree (ct);
! 	  debug_tree (TYPE_MAIN_VARIANT (ct));
! 	  error_found = true;
! 	}
     }
  
  
*************** valid_new_delete_pair_p (tree new_asm, t
*** 15014,15019 ****
--- 15043,15055 ----
    if ((new_name[2] != 'w' || delete_name[2] != 'l')
        && (new_name[2] != 'a' || delete_name[2] != 'a'))
      return false;
+   if (new_name[3] == 'I' || delete_name[3] == 'I')
+     {
+       /* When ::operator new or ::operator delete are function templates,
+ 	 return uncertain mismatch, we need demangler in that case.  */
+       *pcertain = false;
+       return false;
+     }
    /* 'j', 'm' and 'y' correspond to size_t.  */
    if (new_name[3] != 'j' && new_name[3] != 'm' && new_name[3] != 'y')
      return false;
diff -Nrcpad gcc-14-20260313/gcc/var-tracking.cc gcc-14-20260320/gcc/var-tracking.cc
*** gcc-14-20260313/gcc/var-tracking.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/gcc/var-tracking.cc	Fri Mar 20 22:32:15 2026
*************** val_store (dataflow_set *set, rtx val, r
*** 2519,2525 ****
  	  struct elt_loc_list *l;
  	  for (l = v->locs; l; l = l->next)
  	    {
! 	      fprintf (dump_file, "\n%i: ", INSN_UID (l->setting_insn));
  	      print_inline_rtx (dump_file, l->loc, 0);
  	    }
  	}
--- 2519,2526 ----
  	  struct elt_loc_list *l;
  	  for (l = v->locs; l; l = l->next)
  	    {
! 	      fprintf (dump_file, "\n%i: ",
! 		       l->setting_insn ? INSN_UID (l->setting_insn) : -1);
  	      print_inline_rtx (dump_file, l->loc, 0);
  	    }
  	}
diff -Nrcpad gcc-14-20260313/libcody/ChangeLog gcc-14-20260320/libcody/ChangeLog
*** gcc-14-20260313/libcody/ChangeLog	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcody/ChangeLog	Fri Mar 20 22:32:15 2026
***************
*** 1,3 ****
--- 1,20 ----
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-11-21  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	* cody.hh (S2C): For __cpp_char8_t >= 201811 use char8_t instead of
+ 	char in argument type.
+ 	(MessageBuffer::Space): Revert 2025-11-15 change.
+ 	(MessageBuffer::Append): For __cpp_char8_t >= 201811 add overload
+ 	with char8_t const * type of first argument.
+ 	(Packet::Packet): Similarly for first argument.
+ 	* client.cc (CommunicationError, Client::ProcessResponse,
+ 	Client::Connect, ConnectResponse, PathnameResponse, OKResponse,
+ 	IncludeTranslateResponse): Cast u8 string literals to (const char *)
+ 	where needed.
+ 	* server.cc (Server::ProcessRequests, ConnectRequest): Likewise.
+ 
  2025-05-23  Release Manager
  
  	* GCC 14.3.0 released.
diff -Nrcpad gcc-14-20260313/libcody/client.cc gcc-14-20260320/libcody/client.cc
*** gcc-14-20260313/libcody/client.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcody/client.cc	Fri Mar 20 22:32:15 2026
*************** int Client::CommunicateWithServer ()
*** 97,103 ****
  
  static Packet CommunicationError (int err)
  {
!   std::string e {u8"communication error:"};
    e.append (strerror (err));
  
    return Packet (Client::PC_ERROR, std::move (e));
--- 97,103 ----
  
  static Packet CommunicationError (int err)
  {
!   std::string e {(const char *) u8"communication error:"};
    e.append (strerror (err));
  
    return Packet (Client::PC_ERROR, std::move (e));
*************** Packet Client::ProcessResponse (std::vec
*** 110,142 ****
      {
        if (e == EINVAL)
  	{
! 	  std::string msg (u8"malformed string '");
  	  msg.append (words[0]);
! 	  msg.append (u8"'");
  	  return Packet (Client::PC_ERROR, std::move (msg));
  	}
        else
! 	return Packet (Client::PC_ERROR, u8"missing response");
      }
  
    Assert (!words.empty ());
!   if (words[0] == u8"ERROR")
      return Packet (Client::PC_ERROR,
! 		   words.size () == 2 ? words[1]: u8"malformed error response");
  
    if (isLast && !read.IsAtEnd ())
      return Packet (Client::PC_ERROR,
! 		   std::string (u8"unexpected extra response"));
  
    Assert (code < Detail::RC_HWM);
    Packet result (responseTable[code] (words));
    result.SetRequest (code);
    if (result.GetCode () == Client::PC_ERROR && result.GetString ().empty ())
      {
!       std::string msg {u8"malformed response '"};
  
        read.LexedLine (msg);
!       msg.append (u8"'");
        result.GetString () = std::move (msg);
      }
    else if (result.GetCode () == Client::PC_CONNECT)
--- 110,143 ----
      {
        if (e == EINVAL)
  	{
! 	  std::string msg ((const char *) u8"malformed string '");
  	  msg.append (words[0]);
! 	  msg.append ((const char *) u8"'");
  	  return Packet (Client::PC_ERROR, std::move (msg));
  	}
        else
! 	return Packet (Client::PC_ERROR, (const char *) u8"missing response");
      }
  
    Assert (!words.empty ());
!   if (words[0] == (const char *) u8"ERROR")
      return Packet (Client::PC_ERROR,
! 		   words.size () == 2 ? words[1]
! 		   : (const char *) u8"malformed error response");
  
    if (isLast && !read.IsAtEnd ())
      return Packet (Client::PC_ERROR,
! 		   std::string ((const char *) u8"unexpected extra response"));
  
    Assert (code < Detail::RC_HWM);
    Packet result (responseTable[code] (words));
    result.SetRequest (code);
    if (result.GetCode () == Client::PC_ERROR && result.GetString ().empty ())
      {
!       std::string msg {(const char *) u8"malformed response '"};
  
        read.LexedLine (msg);
!       msg.append ((const char *) u8"'");
        result.GetString () = std::move (msg);
      }
    else if (result.GetCode () == Client::PC_CONNECT)
*************** Packet Client::Connect (char const *agen
*** 199,205 ****
  			  size_t alen, size_t ilen)
  {
    write.BeginLine ();
!   write.AppendWord (u8"HELLO");
    write.AppendInteger (Version);
    write.AppendWord (agent, true, alen);
    write.AppendWord (ident, true, ilen);
--- 200,206 ----
  			  size_t alen, size_t ilen)
  {
    write.BeginLine ();
!   write.AppendWord ((const char *) u8"HELLO");
    write.AppendInteger (Version);
    write.AppendWord (agent, true, alen);
    write.AppendWord (ident, true, ilen);
*************** Packet Client::Connect (char const *agen
*** 211,217 ****
  // HELLO $version $agent [$flags]
  Packet ConnectResponse (std::vector<std::string> &words)
  {
!   if (words[0] == u8"HELLO" && (words.size () == 3 || words.size () == 4))
      {
        char *eptr;
        unsigned long val = strtoul (words[1].c_str (), &eptr, 10);
--- 212,219 ----
  // HELLO $version $agent [$flags]
  Packet ConnectResponse (std::vector<std::string> &words)
  {
!   if (words[0] == (const char *) u8"HELLO"
!       && (words.size () == 3 || words.size () == 4))
      {
        char *eptr;
        unsigned long val = strtoul (words[1].c_str (), &eptr, 10);
*************** Packet Client::ModuleRepo ()
*** 247,253 ****
  // PATHNAME $dir | ERROR
  Packet PathnameResponse (std::vector<std::string> &words)
  {
!   if (words[0] == u8"PATHNAME" && words.size () == 2)
      return Packet (Client::PC_PATHNAME, std::move (words[1]));
  
    return Packet (Client::PC_ERROR, u8"");
--- 249,255 ----
  // PATHNAME $dir | ERROR
  Packet PathnameResponse (std::vector<std::string> &words)
  {
!   if (words[0] == (const char *) u8"PATHNAME" && words.size () == 2)
      return Packet (Client::PC_PATHNAME, std::move (words[1]));
  
    return Packet (Client::PC_ERROR, u8"");
*************** Packet PathnameResponse (std::vector<std
*** 256,262 ****
  // OK or ERROR
  Packet OKResponse (std::vector<std::string> &words)
  {
!   if (words[0] == u8"OK")
      return Packet (Client::PC_OK);
    else
      return Packet (Client::PC_ERROR,
--- 258,264 ----
  // OK or ERROR
  Packet OKResponse (std::vector<std::string> &words)
  {
!   if (words[0] == (const char *) u8"OK")
      return Packet (Client::PC_OK);
    else
      return Packet (Client::PC_ERROR,
*************** Packet Client::IncludeTranslate (char co
*** 319,329 ****
  // PATHNAME $cmifile
  Packet IncludeTranslateResponse (std::vector<std::string> &words)
  {
!   if (words[0] == u8"BOOL" && words.size () == 2)
      {
!       if (words[1] == u8"FALSE")
! 	return Packet (Client::PC_BOOL, 0);
!       else if (words[1] == u8"TRUE")
  	return Packet (Client::PC_BOOL, 1);
        else
  	return Packet (Client::PC_ERROR, u8"");
--- 321,331 ----
  // PATHNAME $cmifile
  Packet IncludeTranslateResponse (std::vector<std::string> &words)
  {
!   if (words[0] == (const char *) u8"BOOL" && words.size () == 2)
      {
!       if (words[1] == (const char *) u8"FALSE")
! 	return Packet (Client::PC_BOOL);
!       else if (words[1] == (const char *) u8"TRUE")
  	return Packet (Client::PC_BOOL, 1);
        else
  	return Packet (Client::PC_ERROR, u8"");
diff -Nrcpad gcc-14-20260313/libcody/cody.hh gcc-14-20260320/libcody/cody.hh
*** gcc-14-20260313/libcody/cody.hh	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcody/cody.hh	Fri Mar 20 22:32:15 2026
*************** namespace Detail  {
*** 47,58 ****
--- 47,67 ----
  
  // C++11 doesn't have utf8 character literals :(
  
+ #if __cpp_char8_t >= 201811
+ template<unsigned I>
+ constexpr char S2C (char8_t const (&s)[I])
+ {
+   static_assert (I == 2, "only single octet strings may be converted");
+   return s[0];
+ }
+ #else
  template<unsigned I>
  constexpr char S2C (char const (&s)[I])
  {
    static_assert (I == 2, "only single octet strings may be converted");
    return s[0];
  }
+ #endif
  
  /// Internal buffering class.  Used to concatenate outgoing messages
  /// and Lex incoming ones.
*************** public:
*** 123,128 ****
--- 132,144 ----
        Space ();
      Append (str, maybe_quote, len);
    }
+ #if __cpp_char8_t >= 201811
+   void AppendWord (char8_t const *str, bool maybe_quote = false,
+ 		   size_t len = ~size_t (0))
+   {
+     AppendWord ((const char *) str, maybe_quote, len);
+   }
+ #endif
    /// Add a word as with AppendWord
    /// @param str the string to append
    /// @param maybe_quote string might need quoting, as for Append
*************** public:
*** 264,269 ****
--- 280,291 ----
      : string (s), cat (STRING), code (c)
    {
    }
+ #if __cpp_char8_t >= 201811
+   Packet (unsigned c, const char8_t *s)
+     : string ((const char *) s), cat (STRING), code (c)
+   {
+   }
+ #endif
    Packet (unsigned c, std::vector<std::string> &&v)
      : vector (std::move (v)), cat (VECTOR), code (c)
    {
diff -Nrcpad gcc-14-20260313/libcody/server.cc gcc-14-20260320/libcody/server.cc
*** gcc-14-20260313/libcody/server.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcody/server.cc	Fri Mar 20 22:32:15 2026
*************** static RequestPair
*** 36,47 ****
    const requestTable[Detail::RC_HWM] =
    {
      // Same order as enum RequestCode
!     RequestPair {u8"HELLO", nullptr},
!     RequestPair {u8"MODULE-REPO", ModuleRepoRequest},
!     RequestPair {u8"MODULE-EXPORT", ModuleExportRequest},
!     RequestPair {u8"MODULE-IMPORT", ModuleImportRequest},
!     RequestPair {u8"MODULE-COMPILED", ModuleCompiledRequest},
!     RequestPair {u8"INCLUDE-TRANSLATE", IncludeTranslateRequest},
    };
  }
  
--- 36,47 ----
    const requestTable[Detail::RC_HWM] =
    {
      // Same order as enum RequestCode
!     RequestPair {(const char *) u8"HELLO", nullptr},
!     RequestPair {(const char *) u8"MODULE-REPO", ModuleRepoRequest},
!     RequestPair {(const char *) u8"MODULE-EXPORT", ModuleExportRequest},
!     RequestPair {(const char *) u8"MODULE-IMPORT", ModuleImportRequest},
!     RequestPair {(const char *) u8"MODULE-COMPILED", ModuleCompiledRequest},
!     RequestPair {(const char *) u8"INCLUDE-TRANSLATE", IncludeTranslateRequest},
    };
  }
  
*************** void Server::ProcessRequests (void)
*** 135,155 ****
  	  std::string msg;
  
  	  if (err > 0)
! 	    msg = u8"error processing '";
  	  else if (ix >= Detail::RC_HWM)
! 	    msg = u8"unrecognized '";
  	  else if (IsConnected () && ix == Detail::RC_CONNECT)
! 	    msg = u8"already connected '";
  	  else if (!IsConnected () && ix != Detail::RC_CONNECT)
! 	    msg = u8"not connected '";
  	  else
! 	    msg = u8"malformed '";
  
  	  read.LexedLine (msg);
! 	  msg.append (u8"'");
  	  if (err > 0)
  	    {
! 	      msg.append (u8" ");
  	      msg.append (strerror (err));
  	    }
  	  resolver->ErrorResponse (this, std::move (msg));
--- 135,155 ----
  	  std::string msg;
  
  	  if (err > 0)
! 	    msg = (const char *) u8"error processing '";
  	  else if (ix >= Detail::RC_HWM)
! 	    msg = (const char *) u8"unrecognized '";
  	  else if (IsConnected () && ix == Detail::RC_CONNECT)
! 	    msg = (const char *) u8"already connected '";
  	  else if (!IsConnected () && ix != Detail::RC_CONNECT)
! 	    msg = (const char *) u8"not connected '";
  	  else
! 	    msg = (const char *) u8"malformed '";
  
  	  read.LexedLine (msg);
! 	  msg.append ((const char *) u8"'");
  	  if (err > 0)
  	    {
! 	      msg.append ((const char *) u8" ");
  	      msg.append (strerror (err));
  	    }
  	  resolver->ErrorResponse (this, std::move (msg));
*************** Resolver *ConnectRequest (Server *s, Res
*** 176,182 ****
      return nullptr;
  
    if (words.size () == 3)
!     words.emplace_back (u8"");
    unsigned version = ParseUnsigned (words[1]);
    if (version == ~0u)
      return nullptr;
--- 176,182 ----
      return nullptr;
  
    if (words.size () == 3)
!     words.emplace_back ((const char *) u8"");
    unsigned version = ParseUnsigned (words[1]);
    if (version == ~0u)
      return nullptr;
diff -Nrcpad gcc-14-20260313/libcpp/ChangeLog gcc-14-20260320/libcpp/ChangeLog
*** gcc-14-20260313/libcpp/ChangeLog	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcpp/ChangeLog	Fri Mar 20 22:32:15 2026
***************
*** 1,3 ****
--- 1,29 ----
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-13  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR preprocessor/105412
+ 	* files.cc (_cpp_stack_file): Call deps_add_dep even on
+ 	empty file path.
+ 	* mkdeps.cc (class mkdeps): Add first_phony_dep member.
+ 	(mkdeps::mkdeps ()): Initialize it to 1.
+ 	(deps_add_dep): When called first with "" argument, decrease
+ 	d->first_phony_dep to 0.
+ 	(make_write): For -MP iterate from d->first_phony_dep
+ 	rather than 1.
+ 
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-01-30  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR preprocessor/123273
+ 	* lex.cc (cpp_directive_only_process): Only go to done_comment
+ 	for '/' if star is true and esc is false.  When seeing '\\' with
+ 	esc set to true, clear esc as well as star instead of keeping esc
+ 	set.
+ 
  2025-05-23  Release Manager
  
  	* GCC 14.3.0 released.
diff -Nrcpad gcc-14-20260313/libcpp/files.cc gcc-14-20260320/libcpp/files.cc
*** gcc-14-20260313/libcpp/files.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcpp/files.cc	Fri Mar 20 22:32:15 2026
*************** _cpp_stack_file (cpp_reader *pfile, _cpp
*** 972,978 ****
        /* Add the file to the dependencies on its first inclusion.  */
        if (CPP_OPTION (pfile, deps.style) > (sysp != 0)
  	  && !file->stack_count
- 	  && file->path[0]
  	  && !(pfile->main_file == file
  	       && CPP_OPTION (pfile, deps.ignore_main_file)))
  	deps_add_dep (pfile->deps, file->path);
--- 972,977 ----
diff -Nrcpad gcc-14-20260313/libcpp/lex.cc gcc-14-20260320/libcpp/lex.cc
*** gcc-14-20260313/libcpp/lex.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcpp/lex.cc	Fri Mar 20 22:32:15 2026
*************** cpp_directive_only_process (cpp_reader *
*** 5369,5375 ****
  		    switch (c)
  		      {
  		      case '\\':
! 			esc = true;
  			break;
  
  		      case '\r':
--- 5369,5381 ----
  		    switch (c)
  		      {
  		      case '\\':
! 			if (esc)
! 			  {
! 			    star = false;
! 			    esc = false;
! 			  }
! 			else
! 			  esc = true;
  			break;
  
  		      case '\r':
*************** cpp_directive_only_process (cpp_reader *
*** 5400,5406 ****
  			break;
  
  		      case '/':
! 			if (star)
  			  goto done_comment;
  			/* FALLTHROUGH  */
  
--- 5406,5412 ----
  			break;
  
  		      case '/':
! 			if (star && !esc)
  			  goto done_comment;
  			/* FALLTHROUGH  */
  
diff -Nrcpad gcc-14-20260313/libcpp/mkdeps.cc gcc-14-20260320/libcpp/mkdeps.cc
*** gcc-14-20260313/libcpp/mkdeps.cc	Fri Mar 13 22:32:17 2026
--- gcc-14-20260320/libcpp/mkdeps.cc	Fri Mar 20 22:32:15 2026
*************** public:
*** 81,88 ****
    };
  
    mkdeps ()
!     : primary_output (NULL), module_name (NULL), cmi_name (NULL)
!     , is_header_unit (false), is_exported (false), quote_lwm (0)
    {
    }
    ~mkdeps ()
--- 81,89 ----
    };
  
    mkdeps ()
!     : primary_output (NULL), module_name (NULL), cmi_name (NULL),
!       is_header_unit (false), is_exported (false), quote_lwm (0),
!       first_phony_dep (1)
    {
    }
    ~mkdeps ()
*************** public:
*** 118,123 ****
--- 119,125 ----
    bool is_header_unit;
    bool is_exported;
    unsigned short quote_lwm;
+   unsigned int first_phony_dep;
  };
  
  /* Apply Make quoting to STR, TRAIL.  Note that it's not possible to
*************** fdeps_add_target (struct mkdeps *d, cons
*** 318,328 ****
  void
  deps_add_dep (class mkdeps *d, const char *t)
  {
!   gcc_assert (*t);
! 
!   t = apply_vpath (d, t);
  
!   d->deps.push (xstrdup (t));
  }
  
  void
--- 320,336 ----
  void
  deps_add_dep (class mkdeps *d, const char *t)
  {
!   if (*t)
!     {
!       t = apply_vpath (d, t);
  
!       d->deps.push (xstrdup (t));
!     }
!   /* When called first with "", remember we should
!      emit for -MP all dependencies rather than just
!      second and following dependency.  See PR105412.  */
!   else if (d->deps.size () == 0)
!     d->first_phony_dep = 0;
  }
  
  void
*************** make_write (const cpp_reader *pfile, FIL
*** 439,445 ****
        make_write_vec (d->deps, fp, column, colmax);
        fputs ("\n", fp);
        if (CPP_OPTION (pfile, deps.phony_targets))
! 	for (unsigned i = 1; i < d->deps.size (); i++)
  	  fprintf (fp, "%s:\n", munge (d->deps[i]));
      }
  
--- 447,453 ----
        make_write_vec (d->deps, fp, column, colmax);
        fputs ("\n", fp);
        if (CPP_OPTION (pfile, deps.phony_targets))
! 	for (unsigned i = d->first_phony_dep; i < d->deps.size (); i++)
  	  fprintf (fp, "%s:\n", munge (d->deps[i]));
      }
  
diff -Nrcpad gcc-14-20260313/libgomp/ChangeLog gcc-14-20260320/libgomp/ChangeLog
*** gcc-14-20260313/libgomp/ChangeLog	Fri Mar 13 22:32:18 2026
--- gcc-14-20260320/libgomp/ChangeLog	Fri Mar 20 22:32:16 2026
***************
*** 1,3 ****
--- 1,10 ----
+ 2026-03-15  Frank Scheiner  <frank.scheiner@web.de>
+ 
+ 	Backported from master:
+ 	2025-11-25  Frank Scheiner  <frank.scheiner@web.de>
+ 
+ 	* affinity-fmt.c: Make char *q a pointer to a const char.
+ 
  2025-05-23  Release Manager
  
  	* GCC 14.3.0 released.
diff -Nrcpad gcc-14-20260313/libgomp/affinity-fmt.c gcc-14-20260320/libgomp/affinity-fmt.c
*** gcc-14-20260313/libgomp/affinity-fmt.c	Fri Mar 13 22:32:18 2026
--- gcc-14-20260320/libgomp/affinity-fmt.c	Fri Mar 20 22:32:16 2026
*************** gomp_display_affinity (char *buffer, siz
*** 327,333 ****
  	      }
  	  if (c == '{')
  	    {
! 	      char *q = strchr (p + 1, '}');
  	      if (q)
  		gomp_fatal ("unsupported long type name '%.*s' in affinity "
  			    "format", (int) (q - (p + 1)), p + 1);
--- 327,333 ----
  	      }
  	  if (c == '{')
  	    {
! 	      const char *q = strchr (p + 1, '}');
  	      if (q)
  		gomp_fatal ("unsupported long type name '%.*s' in affinity "
  			    "format", (int) (q - (p + 1)), p + 1);
diff -Nrcpad gcc-14-20260313/libiberty/ChangeLog gcc-14-20260320/libiberty/ChangeLog
*** gcc-14-20260313/libiberty/ChangeLog	Fri Mar 13 22:32:18 2026
--- gcc-14-20260320/libiberty/ChangeLog	Fri Mar 20 22:32:16 2026
***************
*** 1,3 ****
--- 1,12 ----
+ 2026-03-15  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-05  Jakub Jelinek  <jakub@redhat.com>
+ 
+ 	PR target/124365
+ 	* simple-object.c (handle_lto_debug_sections): Also copy over
+ 	.ARM.attributes section.
+ 
  2025-05-23  Release Manager
  
  	* GCC 14.3.0 released.
diff -Nrcpad gcc-14-20260313/libiberty/simple-object.c gcc-14-20260320/libiberty/simple-object.c
*** gcc-14-20260313/libiberty/simple-object.c	Fri Mar 13 22:32:18 2026
--- gcc-14-20260320/libiberty/simple-object.c	Fri Mar 20 22:32:16 2026
*************** handle_lto_debug_sections (const char *n
*** 310,315 ****
--- 310,319 ----
    /* Copy over .BTF section under the same name if present.  */
    else if (strcmp (name, ".BTF") == 0)
      return strcpy (newname, name);
+   /* Copy over .ARM.attributes section under the same name if present.  AArch64
+      aeabi attributes are present in this section.  */
+   else if (strcmp (name, ".ARM.attributes") == 0)
+     return strcpy (newname, name);
    free (newname);
    return NULL;
  }
diff -Nrcpad gcc-14-20260313/libstdc++-v3/ChangeLog gcc-14-20260320/libstdc++-v3/ChangeLog
*** gcc-14-20260313/libstdc++-v3/ChangeLog	Fri Mar 13 22:32:18 2026
--- gcc-14-20260320/libstdc++-v3/ChangeLog	Fri Mar 20 22:32:17 2026
***************
*** 1,3 ****
--- 1,37 ----
+ 2026-03-16  Tomasz Kamiński  <tkaminsk@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-03-05  Tomasz Kamiński  <tkaminsk@redhat.com>
+ 
+ 	PR libstdc++/124124
+ 	* testsuite/29_atomics/atomic/cons/zero_padding.cc: Limit size of
+ 	test types to four bytes.
+ 
+ 2026-03-16  Tomasz Kamiński  <tkaminsk@redhat.com>
+ 
+ 	PR libstdc++/105580
+ 	* include/std/streambuf (streambuf::gptr, streambuf::egptr)
+ 	(streambuf::gbump): Surround with pragma disabling -Wnull-dereference.
+ 	* testsuite/24_iterators/istreambuf_iterator/105580.cc: New test.
+ 	(cherry picked from commits
+ 	8758503918a91dacff4dbc7126eced21787fbfc9
+ 	bfc2b87f8244a13ab00e8e3fe2af1d6d18fcaa36
+ 	a523d1ecc89dcb7ea205e3de22d00443d4a0d91d)
+ 
+ 2026-03-13  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	Backported from master:
+ 	2026-02-12  Patrick Palka  <ppalka@redhat.com>
+ 
+ 	PR libstdc++/114865
+ 	* include/std/atomic (atomic<_Tp>::atomic(_Tp)) [C++11]:
+ 	Enable __builtin_clear_padding logic.
+ 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc: Enable
+ 	this test in earlier modes, including C++11.
+ 	* testsuite/29_atomics/atomic/cons/zero_padding.cc [C++11]:
+ 	Enable tests verifying cleared padding bits for a non-static-init
+ 	std::atomic object.
+ 
  2026-03-04  Jonathan Wakely  <jwakely@redhat.com>
  
  	Backported from master:
diff -Nrcpad gcc-14-20260313/libstdc++-v3/include/std/streambuf gcc-14-20260320/libstdc++-v3/include/std/streambuf
*** gcc-14-20260313/libstdc++-v3/include/std/streambuf	Fri Mar 13 22:32:19 2026
--- gcc-14-20260320/libstdc++-v3/include/std/streambuf	Fri Mar 20 22:32:17 2026
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 488,493 ****
--- 488,497 ----
        char_type*
        eback() const { return _M_in_beg; }
  
+ // Required to silence false-positive warnings originating from istream_iterator::operator++,
+ // see PR105580.
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Wnull-dereference"
        char_type*
        gptr()  const { return _M_in_cur;  }
  
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 503,508 ****
--- 507,513 ----
        */
        void
        gbump(int __n) { _M_in_cur += __n; }
+ #pragma GCC diagnostic pop
  
        /**
         *  @brief  Setting the three read area pointers.
diff -Nrcpad gcc-14-20260313/libstdc++-v3/src/c++20/tzdb.cc gcc-14-20260320/libstdc++-v3/src/c++20/tzdb.cc
*** gcc-14-20260313/libstdc++-v3/src/c++20/tzdb.cc	Fri Mar 13 22:32:19 2026
--- gcc-14-20260320/libstdc++-v3/src/c++20/tzdb.cc	Fri Mar 20 22:32:17 2026
***************
*** 37,43 ****
  #include <mutex>      // mutex
  #include <filesystem> // filesystem::read_symlink
  
! #ifndef _AIX
  # include <cstdlib>   // getenv
  #endif
  
--- 37,43 ----
  #include <mutex>      // mutex
  #include <filesystem> // filesystem::read_symlink
  
! #ifdef _AIX
  # include <cstdlib>   // getenv
  #endif
  
diff -Nrcpad gcc-14-20260313/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/105580.cc gcc-14-20260320/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/105580.cc
*** gcc-14-20260313/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/105580.cc	Thu Jan  1 00:00:00 1970
--- gcc-14-20260320/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/105580.cc	Fri Mar 20 22:32:17 2026
***************
*** 0 ****
--- 1,16 ----
+ // { dg-compile }
+ // { dg-additional-options "-Wnull-dereference" }
+ // { dg-add-options no_pch }
+ 
+ #include <string>
+ #include <sstream>
+ 
+ int main()
+ {
+   std::istringstream in("Hello, world");
+   std::istreambuf_iterator<char> it(in), end;
+   std::string ss(it, end);
+   return 0;
+ }
+ 
+ // { dg-bogus "null pointer dereference" "" { target *-*-* } 0 }
diff -Nrcpad gcc-14-20260313/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc gcc-14-20260320/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc
*** gcc-14-20260313/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc	Fri Mar 13 22:32:19 2026
--- gcc-14-20260320/libstdc++-v3/testsuite/29_atomics/atomic/cons/zero_padding.cc	Fri Mar 20 22:32:17 2026
***************
*** 6,17 ****
  #include <cstring>
  #include <testsuite_hooks.h>
  
! struct TailPadding { int i; char c; };
  TailPadding ztail{1, 2}; // zeroed-padding
  constexpr std::atomic<TailPadding> ctail(TailPadding{1,2});
  std::atomic<TailPadding> gtail(TailPadding{1,2});
  
! struct MidPadding { char c; int x; };
  MidPadding zmid{1, 2}; // zeroed-padding
  constexpr std::atomic<MidPadding> cmid(MidPadding{1,2});
  std::atomic<MidPadding> gmid(MidPadding{1,2});
--- 6,17 ----
  #include <cstring>
  #include <testsuite_hooks.h>
  
! struct TailPadding { short i; char c; };
  TailPadding ztail{1, 2}; // zeroed-padding
  constexpr std::atomic<TailPadding> ctail(TailPadding{1,2});
  std::atomic<TailPadding> gtail(TailPadding{1,2});
  
! struct MidPadding { char c; short i; };
  MidPadding zmid{1, 2}; // zeroed-padding
  constexpr std::atomic<MidPadding> cmid(MidPadding{1,2});
  std::atomic<MidPadding> gmid(MidPadding{1,2});
*************** struct Ctor
*** 25,36 ****
  {
    Ctor() = default;
  
!   constexpr Ctor(char pc, char pi)
      : c(pc), i(pi)
    {}
  
    char c;
!   int i;
  };
  
  Ctor zctor{1, 2}; // zeroed-padding
--- 25,36 ----
  {
    Ctor() = default;
  
!   constexpr Ctor(char pc, short pi)
      : c(pc), i(pi)
    {}
  
    char c;
!   short i;
  };
  
  Ctor zctor{1, 2}; // zeroed-padding
